aboutsummaryrefslogtreecommitdiffstats
path: root/netx/net/sourceforge
diff options
context:
space:
mode:
authorSaad Mohammad <[email protected]>2012-12-05 12:29:24 -0500
committerSaad Mohammad <[email protected]>2012-12-05 12:29:24 -0500
commit32d774ac5311656b21576bc3259ad0abff0b7f56 (patch)
treef5a41e54abc90f9335e3d940a5556422566043b6 /netx/net/sourceforge
parent7be1687bb1c3dc011805824509a1765518506590 (diff)
PR1217: Add command line arguments for plugins
Diffstat (limited to 'netx/net/sourceforge')
-rw-r--r--netx/net/sourceforge/jnlp/config/Defaults.java6
-rw-r--r--netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java5
-rw-r--r--netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java5
-rw-r--r--netx/net/sourceforge/jnlp/controlpanel/JVMPanel.java85
-rw-r--r--netx/net/sourceforge/jnlp/resources/Messages.properties3
5 files changed, 104 insertions, 0 deletions
diff --git a/netx/net/sourceforge/jnlp/config/Defaults.java b/netx/net/sourceforge/jnlp/config/Defaults.java
index 48bec09..8b9785a 100644
--- a/netx/net/sourceforge/jnlp/config/Defaults.java
+++ b/netx/net/sourceforge/jnlp/config/Defaults.java
@@ -378,6 +378,12 @@ public class Defaults {
DeploymentConfiguration.KEY_UPDATE_TIMEOUT,
BasicValueValidators.getRangedIntegerValidator(0, 10000),
String.valueOf(500)
+ },
+ //JVM arguments for plugin
+ {
+ DeploymentConfiguration.KEY_PLUGIN_JVM_ARGUMENTS,
+ null,
+ null
}
};
diff --git a/netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java b/netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java
index 0d4875b..c7e3e33 100644
--- a/netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java
+++ b/netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java
@@ -158,6 +158,11 @@ public final class DeploymentConfiguration {
public static final String KEY_BROWSER_PATH = "deployment.browser.path";
public static final String KEY_UPDATE_TIMEOUT = "deployment.javaws.update.timeout";
+ /*
+ * JVM arguments for plugin
+ */
+ public static final String KEY_PLUGIN_JVM_ARGUMENTS= "deployment.plugin.jvm.arguments";
+
public enum ConfigType {
System, User
}
diff --git a/netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java b/netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java
index f1eb003..a53bb81 100644
--- a/netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java
+++ b/netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java
@@ -226,6 +226,7 @@ public class ControlPanel extends JFrame {
// new SettingsPanel(Translator.R("CPTabClassLoader"), createClassLoaderSettingsPanel()),
new SettingsPanel(Translator.R("CPTabDebugging"), createDebugSettingsPanel()),
new SettingsPanel(Translator.R("CPTabDesktopIntegration"), createDesktopSettingsPanel()),
+ new SettingsPanel(Translator.R("CPTabJVMSettings"), createJVMSettingsPanel()),
new SettingsPanel(Translator.R("CPTabNetwork"), createNetworkSettingsPanel()),
// TODO: This is commented out since this is not implemented yet
// new SettingsPanel(Translator.R("CPTabRuntimes"), createRuntimesSettingsPanel()),
@@ -319,6 +320,10 @@ public class ControlPanel extends JFrame {
return new SecuritySettingsPanel(this.config);
}
+ private JPanel createJVMSettingsPanel() {
+ return new JVMPanel(this.config);
+ }
+
/**
* This is a placeholder panel.
*
diff --git a/netx/net/sourceforge/jnlp/controlpanel/JVMPanel.java b/netx/net/sourceforge/jnlp/controlpanel/JVMPanel.java
new file mode 100644
index 0000000..91f5b1c
--- /dev/null
+++ b/netx/net/sourceforge/jnlp/controlpanel/JVMPanel.java
@@ -0,0 +1,85 @@
+/* PluginPanel.java
+Copyright (C) 2012, Red Hat, Inc.
+
+This file is part of IcedTea.
+
+IcedTea is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License as published by
+the Free Software Foundation, version 2.
+
+IcedTea is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with IcedTea; see the file COPYING. If not, write to
+the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version.
+*/
+package net.sourceforge.jnlp.controlpanel;
+
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+
+import javax.swing.Box;
+import javax.swing.JLabel;
+import javax.swing.JTextField;
+
+import net.sourceforge.jnlp.config.DeploymentConfiguration;
+import net.sourceforge.jnlp.runtime.Translator;
+
+@SuppressWarnings("serial")
+public class JVMPanel extends NamedBorderPanel {
+ private DeploymentConfiguration config;
+
+ JVMPanel(DeploymentConfiguration config) {
+ super(Translator.R("CPHeadJVMSettings"), new GridBagLayout());
+ this.config = config;
+ addComponents();
+ }
+
+ private void addComponents() {
+ JLabel description = new JLabel("<html>" + Translator.R("CPJVMPluginArguments") + "<hr /></html>");
+ JTextField testFieldArguments = new JTextField(25);
+
+ testFieldArguments.getDocument().addDocumentListener(new DocumentAdapter(config, DeploymentConfiguration.KEY_PLUGIN_JVM_ARGUMENTS));
+ testFieldArguments.setText(config.getProperty(DeploymentConfiguration.KEY_PLUGIN_JVM_ARGUMENTS));
+
+ // Filler to pack the bottom of the panel.
+ GridBagConstraints c = new GridBagConstraints();
+ c.fill = GridBagConstraints.BOTH;
+ c.weightx = 1;
+ c.gridx = 0;
+ c.gridy = 0;
+
+ this.add(description, c);
+ c.gridy++;
+ this.add(testFieldArguments, c);
+
+ // This is to keep it from expanding vertically if resized.
+ Component filler = Box.createRigidArea(new Dimension(1, 1));
+ c.gridy++;
+ c.weighty++;
+ this.add(filler, c);
+ }
+}
diff --git a/netx/net/sourceforge/jnlp/resources/Messages.properties b/netx/net/sourceforge/jnlp/resources/Messages.properties
index 2d91f55..1fde3d3 100644
--- a/netx/net/sourceforge/jnlp/resources/Messages.properties
+++ b/netx/net/sourceforge/jnlp/resources/Messages.properties
@@ -300,6 +300,7 @@ CPCertificatesDescription=Use certificates to positively identify yourself, cert
CPSecurityDescription=Use this to configure security settings.
CPDebuggingDescription=Enable options here to help with debugging
CPDesktopIntegrationDescription=Set whether or not to allow creation of desktop shortcut.
+CPJVMPluginArguments=Set JVM arguments for plugin.
# Control Panel - Buttons
CPButAbout=About...
@@ -318,6 +319,7 @@ CPHeadCertificates=Certificates
CPHeadDebugging=Debugging Settings
CPHeadDesktopIntegration=Desktop Integrations
CPHeadSecurity=Security Settings
+CPHeadJVMSettings=JVM Settings
# Control Panel - Tabs
CPTabAbout=About IcedTea-Web
@@ -329,6 +331,7 @@ CPTabDesktopIntegration=Desktop Integration
CPTabNetwork=Network
CPTabRuntimes=Runtimes
CPTabSecurity=Security
+CPTabJVMSettings=JVM Settings
# Control Panel - AboutPanel
CPAboutInfo=This is the control panel for setting deployments.properties.<br/>Not all options will take effect until implemented.<br/>The use of multiple JREs is currently unsupported.<br/>