mirror of
https://github.com/OMGeeky/ATCS.git
synced 2026-01-05 11:06:18 +01:00
v0.6.0 released! Weblate integration is complete. New icons (created for
weblate integration) now replace to old ugly ones for the notification area.
This commit is contained in:
@@ -75,6 +75,9 @@ public class AboutEditor extends Editor {
|
||||
"A slightly modified version of <a href=\"https://github.com/zackehh/siphash-java\">SipHash for Java</a> by Isaac Whitfield.<br/>" +
|
||||
"License: <a href=\"https://github.com/zackehh/siphash-java/blob/master/LICENSE\">MIT License</a><br/>" +
|
||||
"<br/>" +
|
||||
"<a href=\"https://jsoup.org/\">jsoup</a> by Jonathan Hedley<br/>" +
|
||||
"License: <a href=\"https://jsoup.org/license\">MIT License</a><br/>" +
|
||||
"<br/>" +
|
||||
"See the tabs below to find the full license text for each of these.<br/>" +
|
||||
"<br/>" +
|
||||
"The Windows installer was created with:<br/>" +
|
||||
@@ -125,6 +128,7 @@ public class AboutEditor extends Editor {
|
||||
editorTabsHolder.add("prefuse License", getInfoPane(new Scanner(ATContentStudio.class.getResourceAsStream("/license-prefuse.txt"), "UTF-8").useDelimiter("\\A").next(), "text/text"));
|
||||
editorTabsHolder.add("BeanShell License", getInfoPane(new Scanner(ATContentStudio.class.getResourceAsStream("/LICENSE.LGPLv3.txt"), "UTF-8").useDelimiter("\\A").next(), "text/text"));
|
||||
editorTabsHolder.add("SipHash for Java License", getInfoPane(new Scanner(ATContentStudio.class.getResourceAsStream("/LICENSE.siphash-zackehh.txt"), "UTF-8").useDelimiter("\\A").next(), "text/text"));
|
||||
editorTabsHolder.add("jsoup License", getInfoPane(new Scanner(ATContentStudio.class.getResourceAsStream("/LICENSE.jsoup.txt"), "UTF-8").useDelimiter("\\A").next(), "text/text"));
|
||||
editorTabsHolder.add("ATCS License", getInfoPane(new Scanner(ATContentStudio.class.getResourceAsStream("/LICENSE.GPLv3.txt"), "UTF-8").useDelimiter("\\A").next(), "text/text"));
|
||||
|
||||
}
|
||||
|
||||
@@ -231,6 +231,27 @@ public class DefaultIcons {
|
||||
public static Image getZoomImage() { return getImage(ZOOM_RES); }
|
||||
public static Image getZoomIcon() { return getIcon(ZOOM_RES); }
|
||||
|
||||
private static String STATUS_RED_RES = "/com/gpl/rpg/atcontentstudio/img/status_red.png";
|
||||
public static Image getStatusRedImage() { return getImage(STATUS_RED_RES); }
|
||||
public static Image getStatusRedIcon() { return getIcon(STATUS_RED_RES); }
|
||||
|
||||
private static String STATUS_ORANGE_RES = "/com/gpl/rpg/atcontentstudio/img/status_orange.png";
|
||||
public static Image getStatusOrangeImage() { return getImage(STATUS_ORANGE_RES); }
|
||||
public static Image getStatusOrangeIcon() { return getIcon(STATUS_ORANGE_RES); }
|
||||
|
||||
private static String STATUS_GREEN_RES = "/com/gpl/rpg/atcontentstudio/img/status_green.png";
|
||||
public static Image getStatusGreenImage() { return getImage(STATUS_GREEN_RES); }
|
||||
public static Image getStatusGreenIcon() { return getIcon(STATUS_GREEN_RES); }
|
||||
|
||||
private static String STATUS_BLUE_RES = "/com/gpl/rpg/atcontentstudio/img/status_blue.png";
|
||||
public static Image getStatusBlueImage() { return getImage(STATUS_BLUE_RES); }
|
||||
public static Image getStatusBlueIcon() { return getIcon(STATUS_BLUE_RES); }
|
||||
|
||||
private static String STATUS_UNKNOWN_RES = "/com/gpl/rpg/atcontentstudio/img/status_unknown.png";
|
||||
public static Image getStatusUnknownImage() { return getImage(STATUS_UNKNOWN_RES); }
|
||||
public static Image getStatusUnknownIcon() { return getIcon(STATUS_UNKNOWN_RES); }
|
||||
|
||||
|
||||
private static Image getImage(String res) {
|
||||
if (imageCache.get(res) == null) {
|
||||
try {
|
||||
|
||||
@@ -121,12 +121,45 @@ public abstract class Editor extends JPanel implements ProjectElementListener {
|
||||
labelPane.setLayout(new JideBoxLayout(labelPane, JideBoxLayout.LINE_AXIS));
|
||||
final JLabel translateLinkLabel = new JLabel(getWeblateLabelLink(initialValue));
|
||||
labelPane.add(translateLinkLabel, JideBoxLayout.FIX);
|
||||
final JLabel translationStatus = new JLabel(" - Status: unknown - Retrieving...");
|
||||
labelPane.add(new JLabel(" "), JideBoxLayout.FIX);
|
||||
final JLabel translationStatus = new JLabel("Retrieving...");
|
||||
translationStatus.setIcon(new ImageIcon(DefaultIcons.getStatusUnknownIcon()));
|
||||
translationStatus.setToolTipText("Connecting to weblate...");
|
||||
labelPane.add(translationStatus, JideBoxLayout.VARY);
|
||||
new Thread() {
|
||||
public void run() {
|
||||
WeblateIntegration.WeblateTranslationUnit unit = WeblateIntegration.getTranslationUnit(initialValue);
|
||||
translationStatus.setText(" - Status: "+unit.status.toString()+" - "+unit.translatedText);
|
||||
switch (unit.status) {
|
||||
case absent:
|
||||
translationStatus.setIcon(new ImageIcon(DefaultIcons.getStatusRedIcon()));
|
||||
translationStatus.setToolTipText("This string isn't managed by weblate (yet).");
|
||||
break;
|
||||
case done:
|
||||
translationStatus.setIcon(new ImageIcon(DefaultIcons.getStatusGreenIcon()));
|
||||
translationStatus.setToolTipText("This string is translated on weblate.");
|
||||
break;
|
||||
case fuzzy:
|
||||
translationStatus.setIcon(new ImageIcon(DefaultIcons.getStatusOrangeIcon()));
|
||||
translationStatus.setToolTipText("This string is translated on weblate, but needs a review.");
|
||||
break;
|
||||
case notTranslated:
|
||||
translationStatus.setIcon(new ImageIcon(DefaultIcons.getStatusRedIcon()));
|
||||
translationStatus.setToolTipText("This string isn't translated in your language on weblate yet.");
|
||||
break;
|
||||
case warning:
|
||||
translationStatus.setIcon(new ImageIcon(DefaultIcons.getStatusOrangeIcon()));
|
||||
translationStatus.setToolTipText("This string is translated on weblate, but triggered some weblate checks.");
|
||||
break;
|
||||
case error:
|
||||
translationStatus.setIcon(new ImageIcon(DefaultIcons.getStatusRedIcon()));
|
||||
translationStatus.setToolTipText("Cannot connect to weblate. Check internet connection and firewall settings.");
|
||||
break;
|
||||
case notAllowed:
|
||||
translationStatus.setIcon(new ImageIcon(DefaultIcons.getStatusBlueIcon()));
|
||||
translationStatus.setToolTipText("You have not allowed ATCS to access to internet. You can change this in the workspace settings.");
|
||||
break;
|
||||
}
|
||||
translationStatus.setText(unit.translatedText);
|
||||
};
|
||||
}.start();
|
||||
pane.add(labelPane, JideBoxLayout.FIX);
|
||||
|
||||
@@ -8,7 +8,6 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.ItemEvent;
|
||||
import java.awt.event.ItemListener;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
|
||||
@@ -3,14 +3,11 @@ package com.gpl.rpg.atcontentstudio.ui;
|
||||
import java.awt.Color;
|
||||
import java.awt.Component;
|
||||
import java.awt.Font;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
import javax.imageio.ImageIO;
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.Icon;
|
||||
import javax.swing.ImageIcon;
|
||||
@@ -30,22 +27,13 @@ public class NotificationsPane extends JList {
|
||||
|
||||
private static final long serialVersionUID = -1100364214372392608L;
|
||||
|
||||
public static final String success_img_name = "/com/gpl/rpg/atcontentstudio/img/success.png";
|
||||
public static final String info_img_name = "/com/gpl/rpg/atcontentstudio/img/info.png";
|
||||
public static final String warn_img_name = "/com/gpl/rpg/atcontentstudio/img/warn.png";
|
||||
public static final String error_img_name = "/com/gpl/rpg/atcontentstudio/img/error.png";
|
||||
|
||||
public static final Map<Notification.Type, Icon> icons = new LinkedHashMap<Notification.Type, Icon>(Notification.Type.values().length);
|
||||
|
||||
static {
|
||||
try {
|
||||
icons.put(Notification.Type.SUCCESS, new ImageIcon(ImageIO.read(NotificationsPane.class.getResourceAsStream(success_img_name))));
|
||||
icons.put(Notification.Type.INFO, new ImageIcon(ImageIO.read(NotificationsPane.class.getResourceAsStream(info_img_name))));
|
||||
icons.put(Notification.Type.WARN, new ImageIcon(ImageIO.read(NotificationsPane.class.getResourceAsStream(warn_img_name))));
|
||||
icons.put(Notification.Type.ERROR, new ImageIcon(ImageIO.read(NotificationsPane.class.getResourceAsStream(error_img_name))));
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
icons.put(Notification.Type.SUCCESS, new ImageIcon(DefaultIcons.getStatusGreenIcon()));
|
||||
icons.put(Notification.Type.INFO, new ImageIcon(DefaultIcons.getStatusBlueIcon()));
|
||||
icons.put(Notification.Type.WARN, new ImageIcon(DefaultIcons.getStatusOrangeIcon()));
|
||||
icons.put(Notification.Type.ERROR, new ImageIcon(DefaultIcons.getStatusRedIcon()));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -9,7 +9,6 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
|
||||
@@ -7,7 +7,6 @@ import java.awt.Toolkit;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
|
||||
@@ -12,7 +12,6 @@ import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.ConcurrentSkipListSet;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
import javax.swing.Action;
|
||||
|
||||
@@ -33,6 +33,7 @@ public class WorkspaceSettingsEditor extends JDialog {
|
||||
|
||||
JCheckBox translatorModeBox;
|
||||
JComboBox<String> translatorLanguagesBox;
|
||||
JCheckBox useInternetBox;
|
||||
|
||||
|
||||
|
||||
@@ -167,15 +168,20 @@ public class WorkspaceSettingsEditor extends JDialog {
|
||||
translatorLanguagesBox = new JComboBox<String>(WorkspaceSettings.LANGUAGE_LIST);
|
||||
langPane.add(translatorLanguagesBox);
|
||||
pane.add(langPane, JideBoxLayout.FIX);
|
||||
|
||||
pane.add(new JLabel("If your language isn't here, complain on the forums at https://andorstrail.com/"), JideBoxLayout.FIX);
|
||||
|
||||
useInternetBox = new JCheckBox("Allow connecting to internet to retrieve data from weblate.");
|
||||
pane.add(useInternetBox, JideBoxLayout.FIX);
|
||||
|
||||
translatorModeBox.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
translatorLanguagesBox.setEnabled(translatorModeBox.isSelected());
|
||||
useInternetBox.setEnabled(translatorModeBox.isSelected());
|
||||
}
|
||||
});
|
||||
|
||||
pane.add(new JLabel("If your language isn't here, complain on the forums at https://andorstrail.com/"), JideBoxLayout.FIX);
|
||||
|
||||
return pane;
|
||||
}
|
||||
@@ -194,10 +200,15 @@ public class WorkspaceSettingsEditor extends JDialog {
|
||||
if (settings.translatorLanguage.getCurrentValue() != null) {
|
||||
translatorModeBox.setSelected(true);
|
||||
translatorLanguagesBox.setSelectedItem(settings.translatorLanguage.getCurrentValue());
|
||||
translatorLanguagesBox.setEnabled(true);
|
||||
useInternetBox.setEnabled(true);
|
||||
} else {
|
||||
translatorModeBox.setSelected(false);
|
||||
translatorLanguagesBox.setSelectedItem(null);
|
||||
translatorLanguagesBox.setEnabled(false);
|
||||
useInternetBox.setEnabled(false);
|
||||
}
|
||||
useInternetBox.setSelected(settings.useInternet.getCurrentValue());
|
||||
}
|
||||
|
||||
public void pushToModel() {
|
||||
@@ -214,6 +225,7 @@ public class WorkspaceSettingsEditor extends JDialog {
|
||||
} else {
|
||||
settings.translatorLanguage.resetDefault();
|
||||
}
|
||||
settings.useInternet.setCurrentValue(useInternetBox.isSelected());
|
||||
settings.save();
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ import java.awt.Dimension;
|
||||
import java.awt.Toolkit;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ import java.awt.Dimension;
|
||||
import java.awt.Toolkit;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.gpl.rpg.atcontentstudio.ui.tools;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.gpl.rpg.atcontentstudio.ui.tools;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user