From 5d3291fd9e3ae96630e4e3a263e6b30afeeea195 Mon Sep 17 00:00:00 2001
From: jvergara <jvergara@localhost>
Date: Wed, 02 Sep 2009 09:40:05 +0000
Subject: [PATCH] Fix for issue 4201 (Java settings are saved, although I pressed Cancel) Reset the contents of the panel when the user clicks Cancel.

---
 opends/src/guitools/org/opends/guitools/controlpanel/ui/JavaPropertiesPanel.java |   40 +++++++++++++++++++++++++++++++---------
 1 files changed, 31 insertions(+), 9 deletions(-)

diff --git a/opends/src/guitools/org/opends/guitools/controlpanel/ui/JavaPropertiesPanel.java b/opends/src/guitools/org/opends/guitools/controlpanel/ui/JavaPropertiesPanel.java
index 090ecff..85415cd 100644
--- a/opends/src/guitools/org/opends/guitools/controlpanel/ui/JavaPropertiesPanel.java
+++ b/opends/src/guitools/org/opends/guitools/controlpanel/ui/JavaPropertiesPanel.java
@@ -667,15 +667,7 @@
       {
         if (t == null)
         {
-          javaHome.setText(readJavaHome);
-          useOpenDSJavaHome.setSelected(readUseOpenDSJavaHome);
-          useSpecifiedJavaHome.setSelected(!readUseOpenDSJavaHome);
-          useOpenDSJavaArgs.setSelected(readUseOpenDSJavaArgs);
-          useSpecifiedJavaArgs.setSelected(!readUseOpenDSJavaArgs);
-          currentJavaArguments.clear();
-          currentJavaArguments.addAll(readJavaArguments);
-          argumentsTableModel.setData(
-              filterJavaArguments(currentJavaArguments));
+          updateContentsOfPanelWithReadValues();
           Utilities.updateTableSizes(argumentsTable, 7);
         }
         else
@@ -741,6 +733,16 @@
    * {@inheritDoc}
    */
   @Override
+  public void cancelClicked()
+  {
+    updateContentsOfPanelWithReadValues();
+    super.cancelClicked();
+  }
+
+  /**
+   * {@inheritDoc}
+   */
+  @Override
   public void okClicked()
   {
     editor.stopCellEditing();
@@ -1019,6 +1021,26 @@
     return propertiesFile;
   }
 
+  private void updateContentsOfPanelWithReadValues()
+  {
+    if (readJavaHome != null)
+    {
+      javaHome.setText(readJavaHome);
+    }
+    else
+    {
+      javaHome.setText("");
+    }
+    useOpenDSJavaHome.setSelected(readUseOpenDSJavaHome);
+    useSpecifiedJavaHome.setSelected(!readUseOpenDSJavaHome);
+    useOpenDSJavaArgs.setSelected(readUseOpenDSJavaArgs);
+    useSpecifiedJavaArgs.setSelected(!readUseOpenDSJavaArgs);
+    currentJavaArguments.clear();
+    currentJavaArguments.addAll(readJavaArguments);
+    argumentsTableModel.setData(
+        filterJavaArguments(currentJavaArguments));
+  }
+
   /**
    * Class containing the command-name and the associated java
    * arguments.

--
Gitblit v1.10.0