1 7 8 package com.memoire.vainstall.builder.action; 9 10 import com.memoire.vainstall.VAGlobals; 11 import com.memoire.vainstall.builder.*; 12 import com.memoire.vainstall.builder.event.*; 13 import com.memoire.vainstall.builder.gui.ShowRequirementsFrame; 14 import com.memoire.vainstall.builder.util.*; 15 16 import java.awt.Rectangle ; 17 import java.awt.event.*; 18 import java.util.Enumeration ; 19 20 import javax.swing.*; 21 import javax.swing.event.*; 22 23 32 public class ShowRequirementsAction extends AbstractVAIBuilderAction implements WindowListener, ListSelectionListener, VAIBuilderListener { 33 34 38 ShowRequirementsFrame requirements; 39 40 41 DefaultListModel emptyListModel = new DefaultListModel(); 42 43 46 public ShowRequirementsAction() { 47 super(); 48 } 49 50 53 public void runnit() { 54 55 if (requirements != null) { 57 requirements.setVisible(true); 59 return; 60 } 61 62 requirements = new ShowRequirementsFrame(); 64 requirements.addWindowListener(this); 65 66 getModel().addVAIBuilderListener(this); 68 69 if (getController().getActiveProductController() != null) { 70 71 DefaultListModel model = getController().getActiveProductController().getModel().getRequiredListModel(); 72 73 requirements.getList().setModel(model); 74 if(model.size() > 0) { 75 requirements.getList().addListSelectionListener(this); 76 requirements.getList().setSelectedIndex(0); 77 } 78 } 79 80 if(getModel().getWindowList().get("ShowRequirementsFrame") == null ) { 82 ((ShowRequirementsFrame)requirements).center(); 83 } else { 84 requirements.setBounds((Rectangle )getModel().getWindowList().get("ShowRequirementsFrame")); 85 } 86 87 requirements.setVisible(true); 88 } 89 90 94 public void windowActivated(java.awt.event.WindowEvent e) { 95 } 96 97 101 public void windowClosed(java.awt.event.WindowEvent e) { 102 } 103 104 108 public void windowClosing(java.awt.event.WindowEvent e) { 109 } 110 111 115 public void windowDeactivated(java.awt.event.WindowEvent e) { 116 getModel().getWindowList().put("ShowRequirementsFrame",requirements.getBounds()); 117 } 118 119 123 public void windowDeiconified(java.awt.event.WindowEvent e) { 124 } 125 126 130 public void windowIconified(java.awt.event.WindowEvent e) { 131 } 132 133 137 public void windowOpened(java.awt.event.WindowEvent e) { 138 } 139 140 public void valueChanged(ListSelectionEvent evt) { 141 142 if(((JList)evt.getSource()).getSelectedIndex() != -1) { 143 ProductRequirement req = (ProductRequirement)((JList)evt.getSource()).getSelectedValue(); 144 requirements.getEditorPane().setText(req.getHelp()); 145 } else { 146 requirements.getEditorPane().setText(""); 147 } 148 } 149 150 public void builderChanged(VAIBuilderEvent evt) { 151 152 switch (evt.getType()) { 153 case VAIBuilderEvent.PROJECT_ACTIVATED: 154 155 VAIProductController activeProductController = getController().getActiveProductController(); 156 157 if (activeProductController != null) { 158 159 DefaultListModel model = activeProductController.getModel().getRequiredListModel(); 160 requirements.getList().setModel(model); 161 requirements.getList().addListSelectionListener(this); 162 if(model.size() > 0) { 163 requirements.getList().setSelectedIndex(0); 164 } else { 165 requirements.getEditorPane().setText(""); 166 } 167 } 168 169 break; 170 case VAIBuilderEvent.PROJECT_DEACTIVATED: 171 172 requirements.getList().removeListSelectionListener(this); 173 174 requirements.getList().setModel(emptyListModel); 175 requirements.getEditorPane().setText(""); 176 177 break; 178 } 179 } 180 } 181 | Popular Tags |