]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Java/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/far/createui/CreateStepThree.java
1. Fix EDKT215: [Wizard] "Previous" button is not supported in step 4 of Create FAR
[mirror_edk2.git] / Tools / Java / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / far / createui / CreateStepThree.java
CommitLineData
5a24e806 1/** @file\r
2\r
3 Copyright (c) 2006, Intel Corporation\r
4 All rights reserved. This program and the accompanying materials\r
5 are licensed and made available under the terms and conditions of the BSD License\r
6 which accompanies this distribution. The full text of the license may be found at\r
7 http://opensource.org/licenses/bsd-license.php\r
8 \r
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11 \r
12 **/\r
13package org.tianocore.frameworkwizard.far.createui;\r
14\r
15import java.awt.event.MouseEvent;\r
16import java.awt.event.MouseListener;\r
17import java.util.Iterator;\r
18import java.util.LinkedHashSet;\r
19import java.util.Set;\r
20import java.util.Vector;\r
21\r
22import javax.swing.JPanel;\r
23import javax.swing.JTextArea;\r
24import javax.swing.JButton;\r
25import javax.swing.JLabel;\r
26\r
27import org.tianocore.frameworkwizard.common.ui.IDialog;\r
28import org.tianocore.frameworkwizard.common.ui.iCheckBoxList.ICheckBoxList;\r
2e39c718 29import org.tianocore.frameworkwizard.far.FarStringDefinition;\r
30\r
5a24e806 31import javax.swing.JScrollPane;\r
32import javax.swing.JTextField;\r
33\r
34public class CreateStepThree extends IDialog implements MouseListener {\r
35\r
36 /**\r
37 * \r
38 */\r
39 private static final long serialVersionUID = 7559888600474043337L;\r
40\r
41 private JPanel jContentPane = null;\r
42\r
43 private JTextArea jTextArea = null;\r
44\r
45 private JButton jButtonNext = null;\r
46\r
47 private JButton jButtonCancel = null;\r
48\r
49 private JButton jButtonPrevious = null;\r
50\r
51 private JLabel jLabel = null;\r
52\r
53 private ICheckBoxList jComboBoxFileFilter = null;\r
54\r
55 private JScrollPane jScrollPane = null;\r
56\r
57 private JLabel jLabel1 = null;\r
58\r
59 private JTextField jTextField = null;\r
60\r
61 Vector<String> v = new Vector<String>();\r
62\r
63 private CreateStepTwo stepTwo = null;\r
64\r
65 private CreateStepFour stepFour = null;\r
66\r
67 public CreateStepThree(IDialog iDialog, boolean modal, CreateStepTwo stepTwo) {\r
68 this(iDialog, modal);\r
69 this.stepTwo = stepTwo;\r
70 }\r
71\r
72 /**\r
73 * This method initializes jTextArea \r
74 * \r
75 * @return javax.swing.JTextArea \r
76 */\r
77 private JTextArea getJTextArea() {\r
78 if (jTextArea == null) {\r
79 jTextArea = new JTextArea();\r
80 jTextArea.setBounds(new java.awt.Rectangle(30, 7, 642, 50));\r
156ed4d0 81 jTextArea.setText("Add additional file filter regular expressions in the text field, separated by space characters.\n");\r
82 jTextArea.append("Note, for additional information about regular expressions, please reference PERL language regular expressions.");\r
5a24e806 83 jTextArea.setEditable(false);\r
84 }\r
85 return jTextArea;\r
86 }\r
87\r
88 /**\r
89 * This method initializes jButtonNext \r
90 * \r
91 * @return javax.swing.JButton \r
92 */\r
93 private JButton getJButtonNext() {\r
94 if (jButtonNext == null) {\r
95 jButtonNext = new JButton();\r
96 jButtonNext.setBounds(new java.awt.Rectangle(470, 330, 90, 20));\r
97 jButtonNext.setText("Next");\r
98 jButtonNext.addMouseListener(this);\r
99 }\r
100 return jButtonNext;\r
101 }\r
102\r
103 /**\r
104 * This method initializes jButtonCancel \r
105 * \r
106 * @return javax.swing.JButton \r
107 */\r
108 private JButton getJButtonCancel() {\r
109 if (jButtonCancel == null) {\r
110 jButtonCancel = new JButton();\r
111 jButtonCancel.setBounds(new java.awt.Rectangle(570, 330, 90, 20));\r
112 jButtonCancel.setText("Cancel");\r
113 jButtonCancel.addMouseListener(this);\r
114 }\r
115 return jButtonCancel;\r
116 }\r
117\r
118 /**\r
119 * This method initializes jButtonPrevious \r
120 * \r
121 * @return javax.swing.JButton \r
122 */\r
123 private JButton getJButtonPrevious() {\r
124 if (jButtonPrevious == null) {\r
125 jButtonPrevious = new JButton();\r
126 jButtonPrevious.setBounds(new java.awt.Rectangle(370, 330, 90, 20));\r
127 jButtonPrevious.setText("Previous");\r
128 jButtonPrevious.addMouseListener(this);\r
129 }\r
130 return jButtonPrevious;\r
131 }\r
132\r
133 /**\r
134 * This method initializes jComboBox \r
135 * \r
136 * @return javax.swing.JComboBox \r
137 */\r
138 private ICheckBoxList getJComboBoxFileFilter() {\r
139 if (jComboBoxFileFilter == null) {\r
140 jComboBoxFileFilter = new ICheckBoxList();\r
141 v.addElement(".svn");\r
142 v.addElement("CVS");\r
143 jComboBoxFileFilter.setAllItems(v);\r
144 jComboBoxFileFilter.initCheckedItem(true, v);\r
145 }\r
146 return jComboBoxFileFilter;\r
147 }\r
148\r
149 /**\r
150 * This method initializes jScrollPane \r
151 * \r
152 * @return javax.swing.JScrollPane \r
153 */\r
154 private JScrollPane getJScrollPane() {\r
155 if (jScrollPane == null) {\r
156 jScrollPane = new JScrollPane();\r
a45e9a40 157 jScrollPane.setBounds(new java.awt.Rectangle(30, 85, 640, 130));\r
5a24e806 158 jScrollPane.setViewportView(getJComboBoxFileFilter());\r
159 }\r
160 return jScrollPane;\r
161 }\r
162\r
163 /**\r
164 * This method initializes jTextField \r
165 * \r
166 * @return javax.swing.JTextField \r
167 */\r
168 private JTextField getJTextField() {\r
169 if (jTextField == null) {\r
170 jTextField = new JTextField();\r
a45e9a40 171 jTextField.setBounds(new java.awt.Rectangle(30, 250, 640, 20));\r
5a24e806 172 }\r
173 return jTextField;\r
174 }\r
175\r
176 /**\r
177 * @param args\r
178 */\r
179 public static void main(String[] args) {\r
180 // TODO Auto-generated method stub\r
181 }\r
182\r
183 /**\r
184 * This is the default constructor\r
185 */\r
186 public CreateStepThree(IDialog iDialog, boolean modal) {\r
187 super(iDialog, modal);\r
188 initialize();\r
189 }\r
190\r
191 /**\r
192 * This method initializes this\r
193 * \r
194 * @return void\r
195 */\r
196 private void initialize() {\r
197 this.setSize(700, 400);\r
198 this.setContentPane(getJContentPane());\r
2e39c718 199 this.setTitle(FarStringDefinition.CREATE_STEP_THREE_TITLE);\r
5a24e806 200 this.centerWindow();\r
201 }\r
202\r
203 /**\r
204 * This method initializes jContentPane\r
205 * \r
206 * @return javax.swing.JPanel\r
207 */\r
208 private JPanel getJContentPane() {\r
209 if (jContentPane == null) {\r
210 jLabel1 = new JLabel();\r
211 jLabel1.setBounds(new java.awt.Rectangle(30, 220, 260, 20));\r
156ed4d0 212 jLabel1.setText("Input File Filter Pattern (regular expressions)");\r
5a24e806 213 jLabel = new JLabel();\r
214 jLabel.setBounds(new java.awt.Rectangle(30, 64, 160, 20));\r
215 jLabel.setText("File Filter Pattern: ");\r
216 jContentPane = new JPanel();\r
217 jContentPane.setLayout(null);\r
218 jContentPane.add(getJTextArea(), null);\r
219 jContentPane.add(getJButtonNext(), null);\r
220 jContentPane.add(getJButtonCancel(), null);\r
221 jContentPane.add(getJButtonPrevious(), null);\r
222 jContentPane.add(jLabel, null);\r
223 jContentPane.add(getJScrollPane(), null);\r
224 jContentPane.add(jLabel1, null);\r
225 jContentPane.add(getJTextField(), null);\r
226 }\r
227 return jContentPane;\r
228 }\r
229\r
230 public void mouseClicked(MouseEvent e) {\r
231 if (e.getSource() == jButtonCancel) {\r
232 this.setVisible(false);\r
233 } else if (e.getSource() == jButtonNext) {\r
234 //\r
235 // Add some logic process here\r
236 //\r
237\r
238 if (stepFour == null) {\r
239 stepFour = new CreateStepFour(this, true, this);\r
5a24e806 240 }\r
e2249194 241 \r
5a24e806 242 this.setVisible(false);\r
e2249194 243 stepFour.setVisible(true);\r
5a24e806 244 } else if (e.getSource() == jButtonPrevious) {\r
245 this.setVisible(false);\r
246 stepTwo.setVisible(true);\r
247 }\r
248 }\r
249\r
250 public void mousePressed(MouseEvent e) {\r
251 // TODO Auto-generated method stub\r
252\r
253 }\r
254\r
255 public void mouseReleased(MouseEvent e) {\r
256 // TODO Auto-generated method stub\r
257\r
258 }\r
259\r
260 public void mouseEntered(MouseEvent e) {\r
261 // TODO Auto-generated method stub\r
262\r
263 }\r
264\r
265 public void mouseExited(MouseEvent e) {\r
266 // TODO Auto-generated method stub\r
267\r
268 }\r
269\r
270 public Set<String> getFileFilter() {\r
271 Set<String> result = new LinkedHashSet<String>();\r
272 Vector<Integer> selected = jComboBoxFileFilter.getAllCheckedItemsIndex();\r
273\r
274 Iterator<Integer> iter = selected.iterator();\r
275\r
276 while (iter.hasNext()) {\r
277 result.add(v.get(iter.next().intValue()));\r
278 }\r
279\r
280 String[] userdefined = jTextField.getText().split(" ");\r
281\r
282 for (int i = 0; i < userdefined.length; i++) {\r
283 if (!userdefined[i].trim().equalsIgnoreCase("")) {\r
284 result.add(userdefined[i]);\r
285 }\r
286 }\r
287\r
288 return result;\r
289 }\r
290\r
291 public CreateStepTwo getPreviousStep() {\r
292 return stepTwo;\r
293 }\r
294}\r