]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Java/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/dialog/SourceFilesDlg.java
Retiring the ANT/JAVA build and removing the older EDK II packages that required...
[mirror_edk2.git] / Tools / Java / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / module / ui / dialog / SourceFilesDlg.java
diff --git a/Tools/Java/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/dialog/SourceFilesDlg.java b/Tools/Java/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/dialog/SourceFilesDlg.java
deleted file mode 100644 (file)
index 238c000..0000000
+++ /dev/null
@@ -1,547 +0,0 @@
-/** @file\r
\r
- The file is used to create, update SourceFiles section of the MSA file\r
\r
- Copyright (c) 2006, Intel Corporation\r
- All rights reserved. This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution.  The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php\r
\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
- **/\r
-package org.tianocore.frameworkwizard.module.ui.dialog;\r
-\r
-import java.awt.event.ActionEvent;\r
-import java.io.File;\r
-import java.util.Vector;\r
-\r
-import javax.swing.JButton;\r
-import javax.swing.JFileChooser;\r
-import javax.swing.JLabel;\r
-import javax.swing.JPanel;\r
-import javax.swing.JScrollPane;\r
-import javax.swing.JTextField;\r
-\r
-import org.tianocore.frameworkwizard.common.DataType;\r
-import org.tianocore.frameworkwizard.common.DataValidation;\r
-import org.tianocore.frameworkwizard.common.EnumerationData;\r
-import org.tianocore.frameworkwizard.common.Log;\r
-import org.tianocore.frameworkwizard.common.Tools;\r
-import org.tianocore.frameworkwizard.common.ui.ArchCheckBox;\r
-import org.tianocore.frameworkwizard.common.ui.IComboBox;\r
-import org.tianocore.frameworkwizard.common.ui.IDialog;\r
-import org.tianocore.frameworkwizard.common.ui.IFrame;\r
-import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
-import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
-import org.tianocore.frameworkwizard.module.Identifications.SourceFiles.SourceFilesIdentification;\r
-import org.tianocore.frameworkwizard.workspace.WorkspaceTools;\r
-\r
-/**\r
- * The class is used to create, update SourceFiles section of the MSA file\r
- *\r
- * It extends IDialog\r
- * \r
- **/\r
-public class SourceFilesDlg extends IDialog {\r
-\r
-    ///\r
-    /// Define class Serial Version UID\r
-    ///\r
-    private static final long serialVersionUID = -6765742852142775378L;\r
-\r
-    //\r
-    // Define class members\r
-    //\r
-    private JPanel jContentPane = null;\r
-\r
-    private JLabel jLabelFileName = null;\r
-\r
-    private JTextField jTextFieldFileName = null;\r
-\r
-    private JButton jButtonOpenFile = null;\r
-\r
-    private JLabel jLabelToolChainFamily = null;\r
-\r
-    private StarLabel jStarLabel1 = null;\r
-\r
-    private JLabel jLabelArch = null;\r
-\r
-    private JScrollPane jScrollPane = null;\r
-\r
-    private JLabel jLabelTagName = null;\r
-\r
-    private JTextField jTextFieldTagName = null;\r
-\r
-    private JLabel jLabelToolCode = null;\r
-\r
-    private JTextField jTextFieldToolCode = null;\r
-\r
-    private IComboBox iComboBoxToolCode = null;\r
-\r
-    private JTextField jTextFieldToolChainFamily = null;\r
-\r
-    private JLabel jLabelFeatureFlag = null;\r
-\r
-    private JTextField jTextFieldFeatureFlag = null;\r
-\r
-    private ArchCheckBox jArchCheckBox = null;\r
-\r
-    private JButton jButtonOk = null;\r
-\r
-    private JButton jButtonCancel = null;\r
-\r
-    //\r
-    // Not used by UI\r
-    //\r
-    private SourceFilesIdentification sfid[] = null;\r
-\r
-    private String msaFileName = "";\r
-\r
-    private EnumerationData ed = new EnumerationData();\r
-    \r
-    private WorkspaceTools wt = new WorkspaceTools();\r
-\r
-    /**\r
-     This method initializes jTextFieldFileName \r
-     \r
-     @return javax.swing.JTextField jTextFieldFileName\r
-     \r
-     **/\r
-    private JTextField getJTextFieldSourceFilesDirectory() {\r
-        if (jTextFieldFileName == null) {\r
-            jTextFieldFileName = new JTextField();\r
-            jTextFieldFileName.setBounds(new java.awt.Rectangle(168, 12, 250, 20));\r
-            jTextFieldFileName.setPreferredSize(new java.awt.Dimension(250, 20));\r
-            jTextFieldFileName.setToolTipText("Path is relative to the MSA file and must include the file name");\r
-        }\r
-        return jTextFieldFileName;\r
-    }\r
-\r
-    /**\r
-     This method initializes jButtonOpenFile \r
-     \r
-     @return javax.swing.JButton jButtonOpenFile\r
-     \r
-     **/\r
-    private JButton getJButtonOpenFile() {\r
-        if (jButtonOpenFile == null) {\r
-            jButtonOpenFile = new JButton();\r
-            jButtonOpenFile.setText("Browse");\r
-            jButtonOpenFile.setBounds(new java.awt.Rectangle(422, 12, 85, 20));\r
-            jButtonOpenFile.setPreferredSize(new java.awt.Dimension(85, 20));\r
-            jButtonOpenFile.addActionListener(this);\r
-        }\r
-        return jButtonOpenFile;\r
-    }\r
-\r
-    /**\r
-     This method initializes jScrollPane  \r
-     \r
-     @return javax.swing.JScrollPane  \r
-     */\r
-    private JScrollPane getJScrollPane() {\r
-        if (jScrollPane == null) {\r
-            jScrollPane = new JScrollPane();\r
-            jScrollPane.setViewportView(getJContentPane());\r
-        }\r
-        return jScrollPane;\r
-    }\r
-\r
-    /**\r
-     * This method initializes jTextFieldTagName       \r
-     *         \r
-     * @return javax.swing.JTextField  \r
-     */\r
-    private JTextField getJTextFieldTagName() {\r
-        if (jTextFieldTagName == null) {\r
-            jTextFieldTagName = new JTextField();\r
-            jTextFieldTagName.setBounds(new java.awt.Rectangle(168, 37, 340, 20));\r
-            jTextFieldTagName.setPreferredSize(new java.awt.Dimension(340, 20));\r
-            jTextFieldTagName.setToolTipText("You may specify a specific tool chain tag name, such as BILL1");\r
-        }\r
-        return jTextFieldTagName;\r
-    }\r
-\r
-    private IComboBox getIComboBoxToolCode() {\r
-        if (iComboBoxToolCode == null) {\r
-            iComboBoxToolCode = new IComboBox();\r
-            iComboBoxToolCode.setBounds(new java.awt.Rectangle(168, 62, 340, 20));\r
-            iComboBoxToolCode.setPreferredSize(new java.awt.Dimension(340, 20));\r
-            iComboBoxToolCode.setToolTipText("<html>You may select a specific tool command from drop down list,<br>"\r
-                                             + "or you can DOUBLE-CLICK this field to enter your customized<br>"\r
-                                             + "tool command.<br>"\r
-                                             + "Press ENTER to save your input or press ESCAPE to quit</html>");\r
-        }\r
-        return iComboBoxToolCode;\r
-    }\r
-\r
-    /**\r
-     * This method initializes jTextFieldToolCode      \r
-     *         \r
-     * @return javax.swing.JTextField  \r
-     */\r
-    private JTextField getJTextFieldToolCode() {\r
-        if (jTextFieldToolCode == null) {\r
-            jTextFieldToolCode = new JTextField();\r
-            jTextFieldToolCode.setBounds(new java.awt.Rectangle(168, 62, 340, 20));\r
-            jTextFieldToolCode.setPreferredSize(new java.awt.Dimension(340, 20));\r
-            jTextFieldToolCode.setToolTipText("You may specify a specific tool command, such as ASM");\r
-            jTextFieldToolCode.setVisible(false);\r
-        }\r
-        return jTextFieldToolCode;\r
-    }\r
-\r
-    /**\r
-     * This method initializes jTextFieldToolChainFamily       \r
-     *         \r
-     * @return javax.swing.JTextField  \r
-     */\r
-    private JTextField getJTextFieldToolChainFamily() {\r
-        if (jTextFieldToolChainFamily == null) {\r
-            jTextFieldToolChainFamily = new JTextField();\r
-            jTextFieldToolChainFamily.setBounds(new java.awt.Rectangle(168, 87, 340, 20));\r
-            jTextFieldToolChainFamily.setPreferredSize(new java.awt.Dimension(340, 20));\r
-            jTextFieldToolChainFamily.setToolTipText("You may specify a specific tool chain family, such as GCC");\r
-        }\r
-        return jTextFieldToolChainFamily;\r
-    }\r
-\r
-    /**\r
-     * This method initializes jTextFieldFeatureFlag   \r
-     *         \r
-     * @return javax.swing.JTextField  \r
-     */\r
-    private JTextField getJTextFieldFeatureFlag() {\r
-        if (jTextFieldFeatureFlag == null) {\r
-            jTextFieldFeatureFlag = new JTextField();\r
-            jTextFieldFeatureFlag.setBounds(new java.awt.Rectangle(168, 137, 340, 20));\r
-            jTextFieldFeatureFlag.setPreferredSize(new java.awt.Dimension(340, 20));\r
-            jTextFieldFeatureFlag.setToolTipText("RESERVED FOR FUTURE USE");\r
-            jTextFieldFeatureFlag.setEnabled(false);\r
-        }\r
-        return jTextFieldFeatureFlag;\r
-    }\r
-\r
-    /**\r
-     This method initializes jButtonOk    \r
-     \r
-     @return javax.swing.JButton  \r
-     \r
-     **/\r
-    private JButton getJButtonOk() {\r
-        if (jButtonOk == null) {\r
-            jButtonOk = new JButton();\r
-            jButtonOk.setBounds(new java.awt.Rectangle(317, 172, 90, 20));\r
-            jButtonOk.setText("Ok");\r
-            jButtonOk.addActionListener(this);\r
-        }\r
-        return jButtonOk;\r
-    }\r
-\r
-    /**\r
-     This method initializes jButtonCancel    \r
-     \r
-     @return javax.swing.JButton  \r
-     \r
-     **/\r
-    private JButton getJButtonCancel() {\r
-        if (jButtonCancel == null) {\r
-            jButtonCancel = new JButton();\r
-            jButtonCancel.setBounds(new java.awt.Rectangle(412, 172, 90, 20));\r
-            jButtonCancel.setText("Cancel");\r
-            jButtonCancel.addActionListener(this);\r
-        }\r
-        return jButtonCancel;\r
-    }\r
-\r
-    public static void main(String[] args) {\r
-\r
-    }\r
-\r
-    /**\r
-     This is the default constructor\r
-     \r
-     **/\r
-    public SourceFilesDlg(SourceFilesIdentification inSourceFilesIdentification, IFrame iFrame, ModuleIdentification mid) {\r
-        super(iFrame, true);\r
-        init(inSourceFilesIdentification, mid);\r
-    }\r
-\r
-    /**\r
-     This method initializes this\r
-     \r
-     **/\r
-    private void init() {\r
-        this.setSize(525, 240);\r
-        this.setContentPane(getJScrollPane());\r
-        this.setTitle("Source Files");\r
-        this.setViewMode(false);\r
-        this.centerWindow();\r
-        Tools.generateComboBoxByVector(iComboBoxToolCode, ed.getVToolCode());\r
-    }\r
-\r
-    /**         \r
-     This method initializes this\r
-     Fill values to all fields if these values are not empty\r
-     \r
-     \r
-     @param inSourceFiles The input data of SourceFilesDocument.SourceFiles\r
-     \r
-     **/\r
-    private void init(SourceFilesIdentification inSourceFilesIdentifications, ModuleIdentification mid) {\r
-        init();\r
-        this.msaFileName = mid.getPath();\r
-        \r
-        //\r
-        // Init arch with module's arch\r
-        //\r
-        this.jArchCheckBox.setEnabledItems(wt.getModuleArch(mid));\r
-\r
-        if (inSourceFilesIdentifications != null) {\r
-            this.jTextFieldFileName.setText(inSourceFilesIdentifications.getFilename());\r
-            this.jTextFieldTagName.setText(inSourceFilesIdentifications.getTagName());\r
-\r
-//            //\r
-//            // Generate Tool Code selection list\r
-//            //\r
-//            Vector<String> v = ed.getVToolCode();\r
-//            boolean isFind = false;\r
-//            String strToolCode = inSourceFilesIdentifications.getToolCode();\r
-//\r
-//            //\r
-//            // If the input value is not in the default list, add it to the list\r
-//            //\r
-//            if (strToolCode != null) {\r
-//                for (int index = 0; index < v.size(); index++) {\r
-//                    if (v.elementAt(index).equals(strToolCode)) {\r
-//                        isFind = true;\r
-//                        break;\r
-//                    }\r
-//                }\r
-//                if (!isFind && !isEmpty(strToolCode)) {\r
-//                    v.addElement(strToolCode);\r
-//                }\r
-//            }\r
-\r
-            Tools.generateComboBoxByVector(iComboBoxToolCode, ed.getVToolCode());\r
-            this.iComboBoxToolCode.setSelectedItem(inSourceFilesIdentifications.getToolCode());\r
-\r
-            this.jTextFieldToolChainFamily.setText(inSourceFilesIdentifications.getToolChainFamily());\r
-            jTextFieldFeatureFlag.setText(inSourceFilesIdentifications.getFeatureFlag());\r
-            this.jArchCheckBox.setSelectedItems(inSourceFilesIdentifications.getSupArchList());\r
-        }\r
-    }\r
-\r
-    /**\r
-     Disable all components when the mode is view\r
-     \r
-     @param isView true - The view mode; false - The non-view mode\r
-     \r
-     **/\r
-    public void setViewMode(boolean isView) {\r
-        if (isView) {\r
-            this.jTextFieldFileName.setEnabled(!isView);\r
-            this.jButtonOpenFile.setEnabled(!isView);\r
-        }\r
-    }\r
-\r
-    /**\r
-     This method initializes jContentPane\r
-     \r
-     @return javax.swing.JPanel jContentPane\r
-     \r
-     **/\r
-    private JPanel getJContentPane() {\r
-        if (jContentPane == null) {\r
-            jArchCheckBox = new ArchCheckBox();\r
-            jArchCheckBox.setBounds(new java.awt.Rectangle(168, 112, 340, 20));\r
-            jArchCheckBox.setPreferredSize(new java.awt.Dimension(340, 20));\r
-            jLabelFeatureFlag = new JLabel();\r
-            jLabelFeatureFlag.setBounds(new java.awt.Rectangle(12, 137, 155, 20));\r
-            jLabelFeatureFlag.setText("Feature Flag Expression");\r
-            jLabelFeatureFlag.setEnabled(false);\r
-            jLabelToolCode = new JLabel();\r
-            jLabelToolCode.setBounds(new java.awt.Rectangle(12, 62, 155, 20));\r
-            jLabelToolCode.setText("Tool Code");\r
-            jLabelTagName = new JLabel();\r
-            jLabelTagName.setBounds(new java.awt.Rectangle(12, 37, 155, 20));\r
-            jLabelTagName.setText("Tag Name");\r
-            jLabelArch = new JLabel();\r
-            jLabelArch.setBounds(new java.awt.Rectangle(12, 112, 155, 20));\r
-            jLabelArch.setText("Supported Architectures");\r
-            jLabelToolChainFamily = new JLabel();\r
-            jLabelToolChainFamily.setBounds(new java.awt.Rectangle(12, 87, 155, 20));\r
-            jLabelToolChainFamily.setText("Tool Chain Family");\r
-            jLabelFileName = new JLabel();\r
-            jLabelFileName.setText("File Name");\r
-            jLabelFileName.setBounds(new java.awt.Rectangle(12, 12, 155, 20));\r
-\r
-            jContentPane = new JPanel();\r
-            jContentPane.setLayout(null);\r
-            jContentPane.setPreferredSize(new java.awt.Dimension(505, 192));\r
-\r
-            jContentPane.add(jLabelFileName, null);\r
-            jContentPane.add(getJTextFieldSourceFilesDirectory(), null);\r
-            jContentPane.add(getJButtonOpenFile(), null);\r
-            jContentPane.add(jLabelToolChainFamily, null);\r
-            jStarLabel1 = new StarLabel();\r
-            jStarLabel1.setLocation(new java.awt.Point(0, 10));\r
-\r
-            jContentPane.add(jStarLabel1, null);\r
-            jContentPane.add(jLabelArch, null);\r
-            jContentPane.add(jLabelTagName, null);\r
-            jContentPane.add(getJTextFieldTagName(), null);\r
-            jContentPane.add(jLabelToolCode, null);\r
-            jContentPane.add(getJTextFieldToolCode(), null);\r
-            jContentPane.add(getIComboBoxToolCode(), null);\r
-            jContentPane.add(getJTextFieldToolChainFamily(), null);\r
-            jContentPane.add(jLabelFeatureFlag, null);\r
-            jContentPane.add(getJTextFieldFeatureFlag(), null);\r
-            jContentPane.add(jArchCheckBox, null);\r
-            jContentPane.add(getJButtonOk(), null);\r
-            jContentPane.add(getJButtonCancel(), null);\r
-        }\r
-        return jContentPane;\r
-    }\r
-\r
-    /* (non-Javadoc)\r
-     * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
-     *\r
-     * Override actionPerformed to listen all actions\r
-     *  \r
-     */\r
-    public void actionPerformed(ActionEvent arg0) {\r
-        if (arg0.getSource() == jButtonOpenFile) {\r
-            selectFile();\r
-        }\r
-\r
-        if (arg0.getSource() == jButtonOk) {\r
-            if (checkAdd()) {\r
-                getCurrentSourceFiles();\r
-                this.returnType = DataType.RETURN_TYPE_OK;\r
-                this.setVisible(false);\r
-            }\r
-        }\r
-\r
-        if (arg0.getSource() == jButtonCancel) {\r
-            this.returnType = DataType.RETURN_TYPE_CANCEL;\r
-            this.setVisible(false);\r
-        }\r
-    }\r
-\r
-    private SourceFilesIdentification[] getCurrentSourceFiles() {\r
-        String name = this.jTextFieldFileName.getText();\r
-        String s[] = name.split(";");\r
-        String tagName = this.jTextFieldTagName.getText();\r
-        String toolCode = this.iComboBoxToolCode.getSelectedItem().toString();\r
-        if (toolCode.equals(DataType.EMPTY_SELECT_ITEM)) {\r
-            toolCode = "";\r
-        }\r
-        String tcf = this.jTextFieldToolChainFamily.getText();\r
-        String featureFlag = this.jTextFieldFeatureFlag.getText();\r
-        Vector<String> arch = this.jArchCheckBox.getSelectedItemsVector();\r
-        sfid = new SourceFilesIdentification[s.length];\r
-        for (int index = 0; index < s.length; index++) {\r
-            sfid[index] = new SourceFilesIdentification(s[index], tagName, toolCode, tcf, featureFlag, arch);\r
-        }\r
-        return sfid;\r
-    }\r
-\r
-    /**\r
-     Data validation for all fields\r
-     \r
-     @retval true - All datas are valid\r
-     @retval false - At least one data is invalid\r
-     \r
-     **/\r
-    public boolean checkAdd() {\r
-        //\r
-        // Check Filename\r
-        //\r
-        if (isEmpty(this.jTextFieldFileName.getText())) {\r
-            Log.wrn("Update Source Files", "File Name must be entered!");\r
-            return false;\r
-        }\r
-        if (!DataValidation.isFilename(this.jTextFieldFileName.getText())) {\r
-            Log.wrn("Update Source Files", "Incorrect data type for File Name");\r
-            return false;\r
-        }\r
-\r
-        //\r
-        // Check TagName \r
-        //\r
-        if (!isEmpty(this.jTextFieldTagName.getText())) {\r
-            if (!DataValidation.isTagName(this.jTextFieldTagName.getText())) {\r
-                Log.wrn("Update Source Files", "Incorrect data type for Tag Name");\r
-                return false;\r
-            }\r
-        }\r
-\r
-        //\r
-        // Check ToolCode \r
-        //\r
-        if (!isEmpty(this.jTextFieldToolCode.getText())) {\r
-            if (!DataValidation.isToolCode(this.jTextFieldToolCode.getText())) {\r
-                Log.wrn("Update Source Files", "Incorrect data type for Tool Code");\r
-                return false;\r
-            }\r
-        }\r
-\r
-        //\r
-        // Check ToolChainFamily \r
-        //\r
-        if (!isEmpty(this.jTextFieldToolChainFamily.getText())) {\r
-            if (!DataValidation.isToolChainFamily(this.jTextFieldToolChainFamily.getText())) {\r
-                Log.wrn("Update Source Files", "Incorrect data type for Tool Chain Family");\r
-                return false;\r
-            }\r
-        }\r
-\r
-        //\r
-        // Check FeatureFlag\r
-        //\r
-        if (!isEmpty(this.jTextFieldFeatureFlag.getText())) {\r
-            if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) {\r
-                Log.wrn("Update Source Files", "Incorrect data type for Feature Flag");\r
-                return false;\r
-            }\r
-        }\r
-\r
-        return true;\r
-    }\r
-\r
-    /**\r
-     Display a file open browser to let user select file\r
-     \r
-     **/\r
-    private void selectFile() {\r
-        JFileChooser fc = new JFileChooser();\r
-        fc.setCurrentDirectory(new File(Tools.getFilePathOnly(msaFileName)));\r
-        fc.setMultiSelectionEnabled(true);\r
-        int result = fc.showOpenDialog(new JPanel());\r
-        if (result == JFileChooser.APPROVE_OPTION) {\r
-            File f[] = fc.getSelectedFiles();\r
-            String s = "";\r
-            for (int index = 0; index < f.length; index++) {\r
-                String relativePath = "";\r
-                relativePath = Tools.getRelativePath(Tools.getFilePathOnly(f[index].getPath()), Tools.getFilePathOnly(msaFileName));\r
-                if (!Tools.isEmpty(relativePath)) {\r
-                    relativePath = relativePath + DataType.UNIX_FILE_SEPARATOR;\r
-                }\r
-                s = s + relativePath + f[index].getName() + ";";\r
-            }\r
-            this.jTextFieldFileName.setText(s);\r
-        }\r
-    }\r
-\r
-    public SourceFilesIdentification[] getSfid() {\r
-        return sfid;\r
-    }\r
-\r
-    public void setSfid(SourceFilesIdentification[] sfid) {\r
-        this.sfid = sfid;\r
-    }\r
-}\r