]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Java/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/packaging/ui/SpdLibClassDecls.java
Make opening dialogs re-gain focus when user switch back to main UI from other window...
[mirror_edk2.git] / Tools / Java / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / packaging / ui / SpdLibClassDecls.java
index 9dac18480a16a426a2fd3f8952c5aa4fe2b48a24..9aac2464c94d8f23b38f5055679d12de32110e8c 100644 (file)
@@ -70,7 +70,7 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
      */\r
     private static final long serialVersionUID = 1L;\r
 \r
-    static JFrame frame;\r
+    private JFrame topFrame;\r
     \r
     private JTable jTable = null;\r
 \r
@@ -249,7 +249,7 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
            model.addColumn("Supported Architectures");\r
            model.addColumn("Supported Module Types");\r
            \r
-           jTable.getColumnModel().getColumn(cnHelpText).setCellEditor(new LongTextEditor());\r
+           jTable.getColumnModel().getColumn(cnHelpText).setCellEditor(new LongTextEditor(topFrame));\r
            \r
            jTable.removeColumn(jTable.getColumnModel().getColumn(3));\r
            jTable.removeColumn(jTable.getColumnModel().getColumn(3));\r
@@ -261,7 +261,7 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
            vArch.add("EBC");\r
            vArch.add("ARM");\r
            vArch.add("PPC");\r
-           jTable.getColumnModel().getColumn(cnSupArch - 2).setCellEditor(new ListEditor(vArch));\r
+           jTable.getColumnModel().getColumn(cnSupArch - 2).setCellEditor(new ListEditor(vArch, topFrame));\r
            \r
            Vector<String> vModule = new Vector<String>();\r
            vModule.add("BASE");\r
@@ -277,7 +277,7 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
            vModule.add("UEFI_APPLICATION");\r
            vModule.add("USER_DEFINED");\r
 \r
-           jTable.getColumnModel().getColumn(cnSupMod - 2).setCellEditor(new ListEditor(vModule));\r
+           jTable.getColumnModel().getColumn(cnSupMod - 2).setCellEditor(new ListEditor(vModule, topFrame));\r
            \r
            TableColumn column = jTable.getColumnModel().getColumn(this.cnClassName);\r
            column.setMinWidth(this.classNameMinWidth);\r
@@ -435,21 +435,22 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
     /**\r
       This is the default constructor\r
      **/\r
-    public SpdLibClassDecls() {\r
+    public SpdLibClassDecls(JFrame frame) {\r
         super();\r
+        topFrame = frame;\r
         initialize();\r
         init();\r
         \r
     }\r
 \r
-    public SpdLibClassDecls(PackageSurfaceAreaDocument.PackageSurfaceArea inPsa){\r
-        this();\r
+    public SpdLibClassDecls(PackageSurfaceAreaDocument.PackageSurfaceArea inPsa, JFrame frame){\r
+        this(frame);\r
         sfc = new SpdFileContents(inPsa);\r
         init(sfc);\r
     }\r
     \r
-    public SpdLibClassDecls(OpeningPackageType opt) {\r
-        this(opt.getXmlSpd());\r
+    public SpdLibClassDecls(OpeningPackageType opt, JFrame frame) {\r
+        this(opt.getXmlSpd(), frame);\r
         docConsole = opt;\r
     }\r
     /**\r
@@ -475,7 +476,7 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
     private void init(SpdFileContents sfc) {\r
 \r
         if (sfc.getSpdPkgDefsRdOnly().equals("true")) {\r
-            JOptionPane.showMessageDialog(frame, "This is a read-only package. You will not be able to edit contents in table.");\r
+            JOptionPane.showMessageDialog(topFrame, "This is a read-only package. You will not be able to edit contents in table.");\r
         }\r
         initFrame();\r
         \r
@@ -662,15 +663,15 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
 \r
     private boolean dataValidation(String[] row) {\r
         if (!DataValidation.isKeywordType(row[cnClassName])) {\r
-            JOptionPane.showMessageDialog(frame, "Library Class name entered does not match KeyWord datatype.");\r
+            JOptionPane.showMessageDialog(this, "Library Class name entered does not match KeyWord datatype.");\r
             return false;\r
         }\r
         if (!DataValidation.isPathAndFilename(row[cnHdrFile])) {\r
-            JOptionPane.showMessageDialog(frame, "Include Header does not match the PathAndFilename datatype.");\r
+            JOptionPane.showMessageDialog(this, "Include Header does not match the PathAndFilename datatype.");\r
             return false;\r
         }\r
         if (row[cnHelpText].length() == 0) {\r
-            JOptionPane.showMessageDialog(frame, "Help Text must be entered!");\r
+            JOptionPane.showMessageDialog(this, "Help Text must be entered!");\r
             return false;\r
         }\r
 //        if (row[cnRecInstVer] != null && row[cnRecInstVer].length() > 0) {\r
@@ -737,13 +738,13 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
                     \r
                     chooser.setMultiSelectionEnabled(false);\r
                     chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);\r
-                    int retval = chooser.showOpenDialog(frame);\r
+                    int retval = chooser.showOpenDialog(topFrame);\r
                     if (retval == JFileChooser.APPROVE_OPTION) {\r
 \r
                         theFile = chooser.getSelectedFile();\r
                         String file = theFile.getPath();\r
                         if (!file.startsWith(dirPrefix)) {\r
-                            JOptionPane.showMessageDialog(frame, "You can only select files in current package directory structure!");\r
+                            JOptionPane.showMessageDialog(topFrame, "You can only select files in current package directory structure!");\r
                             return;\r
                         }\r
                         \r