diff --git a/apps/desktopgui/locale/messages_en.po b/apps/desktopgui/locale/messages_en.po index 46cd8b26edbbc8144200a9891ef67a414ff1f64f..f5e81ed725d63024aecb8d211b231e1507167e1b 100644 --- a/apps/desktopgui/locale/messages_en.po +++ b/apps/desktopgui/locale/messages_en.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P desktopgui\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-02-13 11:54+0000\n" +"POT-Creation-Date: 2011-02-16 17:10+0000\n" "PO-Revision-Date: 2010-06-15 14:09+0100\n" "Last-Translator: duck <duck@mail.i2p>\n" "Language-Team: duck <duck@mail.i2p>\n" @@ -29,14 +29,23 @@ msgstr "" msgid "Starting" msgstr "" -#: src/net/i2p/desktopgui/InternalTrayManager.java:25 +#: src/net/i2p/desktopgui/InternalTrayManager.java:26 msgid "Launch I2P Browser" msgstr "" -#: src/net/i2p/desktopgui/InternalTrayManager.java:49 -msgid "Restart I2P" +#: src/net/i2p/desktopgui/InternalTrayManager.java:50 +msgid "Configure desktopgui" msgstr "" #: src/net/i2p/desktopgui/InternalTrayManager.java:67 +msgid "Restart I2P" +msgstr "" + +#: src/net/i2p/desktopgui/InternalTrayManager.java:85 msgid "Stop I2P" msgstr "" + +#. Translate interface +#: src/net/i2p/desktopgui/gui/DesktopguiConfigurationFrame.java:26 +msgid "Should tray icon be enabled?" +msgstr "" diff --git a/apps/desktopgui/locale/messages_nl.po b/apps/desktopgui/locale/messages_nl.po index ad390cb622ddb09c6dc973c7d160ff58ba1778dd..2e2fbb298866246292f8a534dbc849fe4bb1dab0 100644 --- a/apps/desktopgui/locale/messages_nl.po +++ b/apps/desktopgui/locale/messages_nl.po @@ -1,15 +1,16 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-02-16 17:10+0000\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -# NL +# NL #: src/net/i2p/desktopgui/ExternalTrayManager.java:23 msgid "Start I2P" msgstr "I2P starten" @@ -22,20 +23,29 @@ msgstr "I2P is aan het starten!" msgid "Starting" msgstr "Bezig met starten" -#: src/net/i2p/desktopgui/InternalTrayManager.java:25 +#: src/net/i2p/desktopgui/InternalTrayManager.java:26 msgid "Launch I2P Browser" msgstr "Start I2P Browser" -#: src/net/i2p/desktopgui/InternalTrayManager.java:49 +#: src/net/i2p/desktopgui/InternalTrayManager.java:50 +msgid "Configure desktopgui" +msgstr "" + +#: src/net/i2p/desktopgui/InternalTrayManager.java:67 msgid "Restart I2P" msgstr "I2P herstarten" -#: src/net/i2p/desktopgui/InternalTrayManager.java:67 +#: src/net/i2p/desktopgui/InternalTrayManager.java:85 msgid "Stop I2P" msgstr "I2P stoppen" +#. Translate interface +#: src/net/i2p/desktopgui/gui/DesktopguiConfigurationFrame.java:26 +msgid "Should tray icon be enabled?" +msgstr "" + #~ msgid "Browser not found" #~ msgstr "Browser niet gevonden" + #~ msgid "The default browser for your system was not found." #~ msgstr "De standaard webbrowser voor je systeem werd niet gevonden." - diff --git a/apps/desktopgui/locale/messages_ru.po b/apps/desktopgui/locale/messages_ru.po index a5d936a669c7c5dc094eb634c8536c98a02be4d6..1ac45bc1ba5de7eb04ebd55b0e2ec022df7390c4 100644 --- a/apps/desktopgui/locale/messages_ru.po +++ b/apps/desktopgui/locale/messages_ru.po @@ -8,14 +8,14 @@ msgid "" msgstr "" "Project-Id-Version: I2P desktopgui\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-02-14 18:14+0000\n" +"POT-Creation-Date: 2011-02-16 17:10+0000\n" "PO-Revision-Date: 2011-02-15 00:18+0500\n" "Last-Translator: Hidden Z <hiddenz@mail.i2p>\n" "Language-Team: duck <duck@mail.i2p>\n" -"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Language: \n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" #: src/net/i2p/desktopgui/ExternalTrayManager.java:23 @@ -31,15 +31,23 @@ msgstr "I2P запуÑкаетÑÑ!" msgid "Starting" msgstr "ЗапуÑкаетÑÑ" -#: src/net/i2p/desktopgui/InternalTrayManager.java:25 +#: src/net/i2p/desktopgui/InternalTrayManager.java:26 msgid "Launch I2P Browser" msgstr "ЗапуÑтить I2P браузер" -#: src/net/i2p/desktopgui/InternalTrayManager.java:49 +#: src/net/i2p/desktopgui/InternalTrayManager.java:50 +msgid "Configure desktopgui" +msgstr "" + +#: src/net/i2p/desktopgui/InternalTrayManager.java:67 msgid "Restart I2P" msgstr "ПерезапуÑтить I2P" -#: src/net/i2p/desktopgui/InternalTrayManager.java:67 +#: src/net/i2p/desktopgui/InternalTrayManager.java:85 msgid "Stop I2P" msgstr "ОÑтановить I2P" +#. Translate interface +#: src/net/i2p/desktopgui/gui/DesktopguiConfigurationFrame.java:26 +msgid "Should tray icon be enabled?" +msgstr "" diff --git a/apps/desktopgui/locale/messages_zh.po b/apps/desktopgui/locale/messages_zh.po index 1aed8c46d3c0bb815d84693937151f79ba46d844..5dca9e881eb73c3a6696ee4e3d1840be649379b1 100644 --- a/apps/desktopgui/locale/messages_zh.po +++ b/apps/desktopgui/locale/messages_zh.po @@ -1,41 +1,50 @@ -msgid "" -msgstr "" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-02-12 11:40+0000\n" -"PO-Revision-Date: \n" -"Last-Translator: \n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: src/net/i2p/desktopgui/ExternalTrayManager.java:23 -msgid "Start I2P" -msgstr "å¯åŠ¨ I2P" - -#: src/net/i2p/desktopgui/ExternalTrayManager.java:38 -msgid "I2P is starting!" -msgstr "æ£åœ¨å¯åŠ¨ I2P !" - -#: src/net/i2p/desktopgui/ExternalTrayManager.java:38 -msgid "Starting" -msgstr "æ£åœ¨å¯åŠ¨" - -#: src/net/i2p/desktopgui/InternalTrayManager.java:25 -msgid "Launch I2P Browser" -msgstr "æ£åœ¨å¯åŠ¨I2Pæµè§ˆå™¨" - -#: src/net/i2p/desktopgui/InternalTrayManager.java:49 -msgid "Restart I2P" -msgstr "é‡å¯ I2P" - -#: src/net/i2p/desktopgui/InternalTrayManager.java:67 -msgid "Stop I2P" -msgstr "åœæ¢ I2P" - -#~ msgid "Browser not found" -#~ msgstr "Browser niet gevonden" - -#~ msgid "The default browser for your system was not found." -#~ msgstr "De standaard webbrowser voor je systeem werd niet gevonden." +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-02-16 17:10+0000\n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src/net/i2p/desktopgui/ExternalTrayManager.java:23 +msgid "Start I2P" +msgstr "å¯åŠ¨ I2P" + +#: src/net/i2p/desktopgui/ExternalTrayManager.java:38 +msgid "I2P is starting!" +msgstr "æ£åœ¨å¯åŠ¨ I2P !" + +#: src/net/i2p/desktopgui/ExternalTrayManager.java:38 +msgid "Starting" +msgstr "æ£åœ¨å¯åŠ¨" + +#: src/net/i2p/desktopgui/InternalTrayManager.java:26 +msgid "Launch I2P Browser" +msgstr "æ£åœ¨å¯åŠ¨I2Pæµè§ˆå™¨" + +#: src/net/i2p/desktopgui/InternalTrayManager.java:50 +msgid "Configure desktopgui" +msgstr "" + +#: src/net/i2p/desktopgui/InternalTrayManager.java:67 +msgid "Restart I2P" +msgstr "é‡å¯ I2P" + +#: src/net/i2p/desktopgui/InternalTrayManager.java:85 +msgid "Stop I2P" +msgstr "åœæ¢ I2P" + +#. Translate interface +#: src/net/i2p/desktopgui/gui/DesktopguiConfigurationFrame.java:26 +msgid "Should tray icon be enabled?" +msgstr "" + +#~ msgid "Browser not found" +#~ msgstr "Browser niet gevonden" + +#~ msgid "The default browser for your system was not found." +#~ msgstr "De standaard webbrowser voor je systeem werd niet gevonden." diff --git a/apps/desktopgui/src/net/i2p/desktopgui/InternalTrayManager.java b/apps/desktopgui/src/net/i2p/desktopgui/InternalTrayManager.java index 46cb3deefb9de59257de7d333ab8c3feafae8706..e1247dde6c53a44a8731ffd3446f38763ac077f8 100644 --- a/apps/desktopgui/src/net/i2p/desktopgui/InternalTrayManager.java +++ b/apps/desktopgui/src/net/i2p/desktopgui/InternalTrayManager.java @@ -6,6 +6,7 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.SwingWorker; +import net.i2p.desktopgui.gui.DesktopguiConfigurationFrame; import net.i2p.desktopgui.router.RouterManager; import net.i2p.desktopgui.util.BrowseException; @@ -46,6 +47,23 @@ public class InternalTrayManager extends TrayManager { }.execute(); } }); + MenuItem desktopguiConfigurationLauncher = new MenuItem(_("Configure desktopgui")); + desktopguiConfigurationLauncher.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent arg0) { + new SwingWorker<Object, Object>() { + + @Override + protected Object doInBackground() throws Exception { + new DesktopguiConfigurationFrame().setVisible(true); + return null; + } + + }.execute(); + } + + }); MenuItem restartItem = new MenuItem(_("Restart I2P")); restartItem.addActionListener(new ActionListener() { @@ -85,6 +103,8 @@ public class InternalTrayManager extends TrayManager { popup.add(browserLauncher); popup.addSeparator(); + popup.add(desktopguiConfigurationLauncher); + popup.addSeparator(); popup.add(restartItem); popup.add(stopItem); diff --git a/apps/desktopgui/src/net/i2p/desktopgui/gui/DesktopguiConfigurationFrame.java b/apps/desktopgui/src/net/i2p/desktopgui/gui/DesktopguiConfigurationFrame.java new file mode 100644 index 0000000000000000000000000000000000000000..83711e95d6457ca43b28fa63e6dd2887091e8877 --- /dev/null +++ b/apps/desktopgui/src/net/i2p/desktopgui/gui/DesktopguiConfigurationFrame.java @@ -0,0 +1,128 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +/* + * ConfigurationFrame.java + * + * Created on Feb 16, 2011, 8:03:14 AM + */ + +package net.i2p.desktopgui.gui; + +import java.util.logging.Level; +import java.util.logging.Logger; +import net.i2p.desktopgui.i18n.DesktopguiTranslator; +import net.i2p.desktopgui.router.RouterManager; + +/** + * + * @author mathias + */ +public class DesktopguiConfigurationFrame extends javax.swing.JFrame { + + /** Creates new form ConfigurationFrame */ + public DesktopguiConfigurationFrame() { + initComponents(); + } + + /** This method is called from within the constructor to + * initialize the form. + * WARNING: Do NOT modify this code. The content of this method is + * always regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + desktopguiEnabled = new javax.swing.JCheckBox(); + okButton = new javax.swing.JButton(); + cancelButton = new javax.swing.JButton(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + setTitle(_("Tray icon configuration")); + + desktopguiEnabled.setSelected(true); + desktopguiEnabled.setText(_("Should tray icon be enabled?")); + desktopguiEnabled.setActionCommand("shouldDesktopguiBeEnabled"); + + okButton.setText("OK"); + okButton.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + okButtonMouseClicked(evt); + } + }); + + cancelButton.setText("Cancel"); + cancelButton.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + cancelButtonMouseClicked(evt); + } + }); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(desktopguiEnabled) + .addGroup(layout.createSequentialGroup() + .addComponent(okButton) + .addGap(18, 18, 18) + .addComponent(cancelButton))) + .addContainerGap(237, Short.MAX_VALUE)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(desktopguiEnabled) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(okButton) + .addComponent(cancelButton)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + pack(); + }// </editor-fold>//GEN-END:initComponents + + private void okButtonMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_okButtonMouseClicked + String property = "desktopgui.enabled"; + String value; + if(!desktopguiEnabled.isSelected()) { + value = "false"; + System.out.println("Disabling desktopgui"); + } + else { + value = "true"; + System.out.println("Enabling desktopgui"); + } + try { + RouterManager.getRouterContext().setProperty(property, value); + } catch (Exception ex) { + Logger.getLogger(DesktopguiConfigurationFrame.class.getName()).log(Level.SEVERE, null, ex); + } + System.out.println("Applying desktopgui configuration!"); + this.dispose(); + }//GEN-LAST:event_okButtonMouseClicked + + private void cancelButtonMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_cancelButtonMouseClicked + System.out.println("Cancelling configuration!"); + this.dispose(); + }//GEN-LAST:event_cancelButtonMouseClicked + + protected static String _(String s) { + return DesktopguiTranslator._(s); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton cancelButton; + private javax.swing.JCheckBox desktopguiEnabled; + private javax.swing.JButton okButton; + // End of variables declaration//GEN-END:variables + +} diff --git a/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java b/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java index fe53abdb11f98f8c2bc13a81b58bf04ae32ef343..c50eb96cba586fe8523129362db2adad922310f2 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java @@ -329,7 +329,9 @@ public class RouterConsoleRunner { //TODO: move away from routerconsole into a separate application. //ApplicationManager? VersionComparator v = new VersionComparator(); - if(v.compare(System.getProperty("java.runtime.version"), "1.6") >= 0) { + String desktopguiEnabled = I2PAppContext.getGlobalContext().getProperty("desktopgui.enabled"); + int recentJava = v.compare(System.getProperty("java.runtime.version"), "1.6"); + if(recentJava >= 0 && (desktopguiEnabled == null || desktopguiEnabled.equalsIgnoreCase("true"))) { String[] args = new String[0]; net.i2p.desktopgui.Main.beginStartup(args); }