]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/ToolChainConfig.java
1. Make SPD editor tables bigger.and table now focus the entry added.
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / ToolChainConfig.java
index 8d0055a4033f5c3f2c8358dfad9473d9be42cfb6..ddfb479cc40ce1ae56694bf2b85d7ec275fa3058 100644 (file)
@@ -15,6 +15,7 @@
 package org.tianocore.frameworkwizard;\r
 \r
 import java.awt.event.ActionEvent;\r
+import java.awt.event.WindowEvent;\r
 import java.io.File;\r
 import java.io.IOException;\r
 \r
@@ -38,11 +39,10 @@ import org.tianocore.frameworkwizard.common.Log;
 import org.tianocore.frameworkwizard.common.Tools;\r
 import org.tianocore.frameworkwizard.common.Identifications.ToolChainConfigId;\r
 import org.tianocore.frameworkwizard.common.Identifications.ToolChainConfigVector;\r
-import org.tianocore.frameworkwizard.common.ui.IDialog;\r
 import org.tianocore.frameworkwizard.common.ui.IFrame;\r
 import org.tianocore.frameworkwizard.workspace.Workspace;\r
 \r
-public class ToolChainConfig extends IDialog implements ListSelectionListener, TableModelListener{\r
+public class ToolChainConfig extends IFrame implements ListSelectionListener, TableModelListener{\r
 \r
     ///\r
     /// Define Class Members\r
@@ -86,6 +86,10 @@ public class ToolChainConfig extends IDialog implements ListSelectionListener, T
 \r
     private JButton jButtonHelp = null;\r
     \r
+    private static ToolChainConfig tcc = null;\r
+    \r
+    private ToolChainConfigHelp tcch = null;\r
+    \r
     /**\r
      This method initializes jScrollPane       \r
      \r
@@ -109,12 +113,7 @@ public class ToolChainConfig extends IDialog implements ListSelectionListener, T
      **/\r
     private JTable getJTable() {\r
         if (jTable == null) {\r
-//            Vector<String> vTableHeader = new Vector<String>();\r
-//            vTableHeader.addElement("Name");\r
-//            vTableHeader.addElement("Value");\r
-//            \r
             model = new DefaultTableModel();\r
-            //model = new DefaultTableModel(vTableHeader);\r
             jTable = new JTable(model);\r
             jTable.setRowHeight(20);\r
 \r
@@ -260,12 +259,19 @@ public class ToolChainConfig extends IDialog implements ListSelectionListener, T
         // TODO Auto-generated method stub\r
 \r
     }\r
+    \r
+    public static ToolChainConfig getInstance() {\r
+        if (tcc == null) {\r
+            tcc = new ToolChainConfig();\r
+        }\r
+        return tcc;\r
+    }\r
 \r
     /**\r
      * This is the default constructor\r
      */\r
-    public ToolChainConfig(IFrame parentFrame, boolean modal) {\r
-        super(parentFrame, modal);\r
+    public ToolChainConfig() {\r
+        super();\r
         init();\r
     }\r
 \r
@@ -337,8 +343,7 @@ public class ToolChainConfig extends IDialog implements ListSelectionListener, T
      */\r
     public void actionPerformed(ActionEvent arg0) {\r
         if (arg0.getSource() == jButtonClose) {\r
-            this.setVisible(false);\r
-            this.returnType = DataType.RETURN_TYPE_CANCEL;\r
+            this.exit();\r
         }\r
 \r
         if (arg0.getSource() == jButtonOpen) {\r
@@ -400,7 +405,7 @@ public class ToolChainConfig extends IDialog implements ListSelectionListener, T
         }\r
         \r
         if (arg0.getSource() == jButtonHelp) {\r
-            ToolChainConfigHelp tcch = new ToolChainConfigHelp();\r
+            tcch = ToolChainConfigHelp.getInstance();\r
             tcch.setVisible(true);\r
         }\r
     }\r
@@ -477,4 +482,21 @@ public class ToolChainConfig extends IDialog implements ListSelectionListener, T
             this.vtcc.getToolChainConfigs(row).setValue(m.getValueAt(row, 1).toString());\r
         }\r
     }\r
+    \r
+    /* (non-Javadoc)\r
+     * @see java.awt.event.WindowListener#windowClosing(java.awt.event.WindowEvent)\r
+     *\r
+     * Override windowClosing to popup warning message to confirm quit\r
+     * \r
+     */\r
+    public void windowClosing(WindowEvent arg0) {\r
+        this.exit();\r
+    }\r
+    \r
+    private void exit() {\r
+        this.setVisible(false);\r
+        if (tcch != null) {\r
+            tcch.dispose();\r
+        }\r
+    }\r
 }\r