mirror of
https://github.com/mirror/jdownloader.git
synced 2025-02-17 02:37:56 +00:00
git-svn-id: svn://svn.jdownloader.org/jdownloader/trunk@14526 ebf7c1c2-ba36-0410-9fe8-c592906822b4
This commit is contained in:
parent
f83d11c344
commit
634fcef8b6
BIN
artwork/psd/logo_ohne_schatten.png
Normal file
BIN
artwork/psd/logo_ohne_schatten.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 306 KiB |
@ -284,9 +284,17 @@ public class PremiumAccountTableModel extends ExtTableModel<Account> implements
|
||||
}
|
||||
|
||||
@Override
|
||||
public void configureRendererComponent(final Account value, final boolean isSelected, final boolean hasFocus, final int row, final int column) {
|
||||
super.configureRendererComponent(value, isSelected, hasFocus, row, column);
|
||||
if (checkRunning) {
|
||||
this.determinatedRenderer.setIndeterminate(AccountChecker.getInstance().contains(value));
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isIndeterminated(final Account value, final boolean isSelected, final boolean hasFocus, final int row, final int column) {
|
||||
if (checkRunning) { return AccountChecker.getInstance().contains(value); }
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -38,6 +38,7 @@ public abstract class AddonPanel<T extends AbstractExtension<? extends Extension
|
||||
}
|
||||
|
||||
});
|
||||
init();
|
||||
|
||||
}
|
||||
|
||||
|
@ -163,10 +163,13 @@ public abstract class AbstractExtension<T extends ExtensionConfigInterface> {
|
||||
return logger;
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* converts old dynamic getConfigName entries to static getID entries, WE
|
||||
* MUST USE STATIC getID to access db
|
||||
*
|
||||
* @deprecated Use {@link #getSettings()}
|
||||
*/
|
||||
|
||||
@Deprecated
|
||||
public synchronized JSonWrapper getPluginConfig() {
|
||||
if (classicConfig != null) return classicConfig;
|
||||
@ -266,6 +269,10 @@ public abstract class AbstractExtension<T extends ExtensionConfigInterface> {
|
||||
return LogController.getInstance().createLogger(class1);
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link #getSettings()}
|
||||
*/
|
||||
@Deprecated
|
||||
public abstract String getConfigID();
|
||||
|
||||
public abstract String getAuthor();
|
||||
|
@ -31,7 +31,6 @@ public class JDChatView extends AddonPanel<ChatExtension> {
|
||||
public JDChatView(ChatExtension chatExtension) {
|
||||
super(chatExtension);
|
||||
|
||||
init();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -1,5 +1,8 @@
|
||||
package org.jdownloader.extensions.shutdown.translate;
|
||||
|
||||
import org.appwork.txtresource.TranslationFactory;
|
||||
|
||||
public class T {
|
||||
public static final ShutdownTranslation _ = TranslationFactory.create(ShutdownTranslation.class);
|
||||
public static final ShutdownTranslation _ = TranslationFactory.create(ShutdownTranslation.class);
|
||||
|
||||
}
|
51
src/org/jdownloader/extensions/translator/TLocale.java
Normal file
51
src/org/jdownloader/extensions/translator/TLocale.java
Normal file
@ -0,0 +1,51 @@
|
||||
package org.jdownloader.extensions.translator;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
import org.appwork.txtresource.TranslationFactory;
|
||||
|
||||
public class TLocale {
|
||||
|
||||
private Locale locale;
|
||||
|
||||
public Locale getLocale() {
|
||||
return locale;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
private String id;
|
||||
|
||||
public String toString() {
|
||||
boolean hasVariant = locale.getVariant().length() > 0;
|
||||
|
||||
final StringBuilder sb = new StringBuilder();
|
||||
sb.append(locale.getDisplayLanguage(Locale.ENGLISH));
|
||||
if (hasVariant) {
|
||||
sb.append(" (");
|
||||
}
|
||||
|
||||
if (hasVariant) {
|
||||
|
||||
String v = locale.getDisplayVariant(Locale.ENGLISH);
|
||||
if (v.equals(locale.getVariant())) {
|
||||
v = new Locale(locale.getLanguage(), v, v).getDisplayCountry(Locale.ENGLISH);
|
||||
}
|
||||
sb.append(v);
|
||||
|
||||
}
|
||||
|
||||
if (hasVariant) {
|
||||
sb.append(")");
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
public TLocale(String id) {
|
||||
locale = TranslationFactory.stringToLocale(id);
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
package org.jdownloader.extensions.translator;
|
||||
|
||||
import jd.plugins.ExtensionConfigInterface;
|
||||
|
||||
import org.jdownloader.settings.AboutConfig;
|
||||
|
||||
public interface TranslatorConfig extends ExtensionConfigInterface {
|
||||
|
||||
@AboutConfig
|
||||
public String getSVNUser();
|
||||
|
||||
public void setSVNUser(String user);
|
||||
|
||||
@AboutConfig
|
||||
public String getSVNPassword();
|
||||
|
||||
public void setSVNPassword(String password);
|
||||
}
|
@ -0,0 +1,109 @@
|
||||
package org.jdownloader.extensions.translator;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
|
||||
import javax.swing.ImageIcon;
|
||||
|
||||
import jd.plugins.AddonPanel;
|
||||
|
||||
import org.appwork.txtresource.TranslateInterface;
|
||||
import org.appwork.txtresource.TranslationFactory;
|
||||
import org.jdownloader.extensions.AbstractExtension;
|
||||
import org.jdownloader.extensions.ExtensionConfigPanel;
|
||||
import org.jdownloader.extensions.StartException;
|
||||
import org.jdownloader.extensions.StopException;
|
||||
import org.jdownloader.extensions.translator.gui.TranslatorGui;
|
||||
import org.jdownloader.images.NewTheme;
|
||||
import org.jdownloader.translate.JdownloaderTranslation;
|
||||
|
||||
public class TranslatorExtension extends AbstractExtension<TranslatorConfig> {
|
||||
|
||||
private TranslatorGui gui;
|
||||
private ArrayList<TLocale> translations;
|
||||
|
||||
public TranslatorExtension() {
|
||||
super("Translator");
|
||||
|
||||
ArrayList<String> ids = TranslationFactory.listAvailableTranslations(JdownloaderTranslation.class);
|
||||
translations = new ArrayList<TLocale>();
|
||||
for (String id : ids) {
|
||||
translations.add(new TLocale(id));
|
||||
}
|
||||
Collections.sort(translations, new Comparator<TLocale>() {
|
||||
|
||||
public int compare(TLocale o1, TLocale o2) {
|
||||
return o1.toString().compareTo(o2.toString());
|
||||
}
|
||||
});
|
||||
|
||||
gui = new TranslatorGui(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ImageIcon getIcon(int size) {
|
||||
return NewTheme.I().getIcon("language", size);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void stop() throws StopException {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void start() throws StartException {
|
||||
|
||||
}
|
||||
|
||||
public ArrayList<TLocale> getTranslations() {
|
||||
return translations;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void initExtension() throws StartException {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ExtensionConfigPanel<?> getConfigPanel() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasConfigPanel() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getConfigID() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAuthor() {
|
||||
return "Coalado";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDescription() {
|
||||
return "This Extension can be used to edit JDownloader translations. You need a developer account to use this extension";
|
||||
}
|
||||
|
||||
@Override
|
||||
public AddonPanel<? extends AbstractExtension<TranslatorConfig>> getGUI() {
|
||||
return gui;
|
||||
}
|
||||
|
||||
public void load(TLocale locale) {
|
||||
|
||||
for (TranslateInterface ti : TranslationFactory.getCachedInterfaces()) {
|
||||
TranslateInterface t = TranslationFactory.create(ti.getClass(), locale.getId());
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public TLocale getLoadedLocale() {
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package org.jdownloader.extensions.translator.gui;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.jdownloader.extensions.translator.TLocale;
|
||||
|
||||
public class LoadTranslationAction extends AbstractAction {
|
||||
|
||||
private TranslatorGui master;
|
||||
private TLocale locale;
|
||||
|
||||
public LoadTranslationAction(TranslatorGui translatorGui, TLocale t) {
|
||||
super(t.toString());
|
||||
locale = t;
|
||||
master = translatorGui;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEnabled() {
|
||||
return master.getLoaded() != locale;
|
||||
}
|
||||
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
master.load(locale);
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package org.jdownloader.extensions.translator.gui;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
public class NewTranslationAction extends AbstractAction {
|
||||
|
||||
private TranslatorGui master;
|
||||
|
||||
public NewTranslationAction(TranslatorGui translatorGui) {
|
||||
super("Create new!");
|
||||
master = translatorGui;
|
||||
}
|
||||
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
package org.jdownloader.extensions.translator.gui;
|
||||
|
||||
import jd.gui.swing.jdgui.views.settings.panels.components.SettingsTable;
|
||||
|
||||
public class TranslateTable extends SettingsTable<TranslatorEntry> {
|
||||
|
||||
public TranslateTable(TranslateTableModel tableModel) {
|
||||
super(tableModel);
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
package org.jdownloader.extensions.translator.gui;
|
||||
|
||||
import org.appwork.utils.swing.table.ExtTableModel;
|
||||
import org.appwork.utils.swing.table.columns.ExtTextColumn;
|
||||
|
||||
public class TranslateTableModel extends ExtTableModel<TranslatorEntry> {
|
||||
|
||||
public TranslateTableModel() {
|
||||
super("TranslateTableModel");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void initColumns() {
|
||||
addColumn(new ExtTextColumn<TranslatorEntry>("Key") {
|
||||
|
||||
@Override
|
||||
public String getStringValue(TranslatorEntry value) {
|
||||
return value + "";
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
package org.jdownloader.extensions.translator.gui;
|
||||
|
||||
public class TranslatorEntry {
|
||||
|
||||
}
|
135
src/org/jdownloader/extensions/translator/gui/TranslatorGui.java
Normal file
135
src/org/jdownloader/extensions/translator/gui/TranslatorGui.java
Normal file
@ -0,0 +1,135 @@
|
||||
package org.jdownloader.extensions.translator.gui;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.InputEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
import javax.swing.Icon;
|
||||
import javax.swing.JMenu;
|
||||
import javax.swing.JMenuBar;
|
||||
import javax.swing.JMenuItem;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JSeparator;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import jd.gui.swing.jdgui.interfaces.SwitchPanel;
|
||||
import jd.plugins.AddonPanel;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.jdownloader.extensions.translator.TLocale;
|
||||
import org.jdownloader.extensions.translator.TranslatorExtension;
|
||||
|
||||
public class TranslatorGui extends AddonPanel<TranslatorExtension> {
|
||||
|
||||
private static final String ID = "TRANSLATORGUI";
|
||||
private TranslateTableModel tableModel;
|
||||
private TranslateTable table;
|
||||
private JMenu mnuLoad;
|
||||
private JMenu mnuFile;
|
||||
private JMenuItem mnuSave;
|
||||
private SwitchPanel panel;
|
||||
|
||||
public TranslatorGui(TranslatorExtension plg) {
|
||||
super(plg);
|
||||
this.panel = new SwitchPanel(new MigLayout("ins 0", "[grow,fill]", "[grow,fill]")) {
|
||||
|
||||
@Override
|
||||
protected void onShow() {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onHide() {
|
||||
}
|
||||
};
|
||||
this.setContent(panel);
|
||||
initComponents();
|
||||
|
||||
layoutPanel();
|
||||
}
|
||||
|
||||
private void layoutPanel() {
|
||||
|
||||
panel.add(new JScrollPane(table));
|
||||
}
|
||||
|
||||
private void initComponents() {
|
||||
tableModel = new TranslateTableModel();
|
||||
table = new TranslateTable(tableModel);
|
||||
}
|
||||
|
||||
protected void initMenu(JMenuBar menubar) {
|
||||
// Load Menu
|
||||
this.mnuLoad = new JMenu("Load");
|
||||
for (TLocale t : getExtension().getTranslations()) {
|
||||
mnuLoad.add(new LoadTranslationAction(this, t));
|
||||
}
|
||||
if (getExtension().getTranslations().size() > 0) mnuLoad.add(new JSeparator());
|
||||
mnuLoad.add(new NewTranslationAction(this));
|
||||
mnuFile = new JMenu("File");
|
||||
this.mnuFile.add(this.mnuLoad);
|
||||
this.mnuFile.addSeparator();
|
||||
this.mnuFile.add(this.mnuSave = new JMenuItem("Save"));
|
||||
mnuSave.addActionListener(new ActionListener() {
|
||||
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
save();
|
||||
}
|
||||
});
|
||||
this.mnuSave.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK));
|
||||
|
||||
// Menu-Bar zusammensetzen
|
||||
menubar.add(this.mnuFile);
|
||||
|
||||
}
|
||||
|
||||
protected void save() {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDeactivated() {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onActivated() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getIcon() {
|
||||
return this.getExtension().getIcon(16);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getID() {
|
||||
return ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTitle() {
|
||||
return "Translator";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTooltip() {
|
||||
return "Translator - Edit JDownloader Translation";
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onShow() {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onHide() {
|
||||
}
|
||||
|
||||
public TLocale getLoaded() {
|
||||
return getExtension().getLoadedLocale();
|
||||
}
|
||||
|
||||
public void load(TLocale locale) {
|
||||
|
||||
getExtension().load(locale);
|
||||
}
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user