| 1 2 25 26 package org.aspectj.ajde.ui.swing; 27 28 import java.awt.*; 29 import java.awt.event.*; 30 import javax.swing.*; 31 import javax.swing.event.*; 32 import java.util.*; 33 import org.aspectj.ajde.*; 34 import org.aspectj.asm.*; 35 import org.aspectj.asm.views.*; 36 import org.aspectj.ajde.ui.*; 37 import org.aspectj.ajde.ui.swing.*; 38 39 45 public class BrowserViewPanel extends JPanel implements StructureViewRenderer { 46 47 private StructureTreeManager treeManager; 48 private int depthSliderVal = 0; 50 private JComboBox view_comboBox = null; 51 52 private BorderLayout borderLayout1 = new BorderLayout(); 53 private JToolBar view_toolBar = new JToolBar(); 54 private JSlider depth_slider = new JSlider(); 55 JScrollPane tree_ScrollPane = new JScrollPane(); 56 JPanel tree_panel = new JPanel(); 57 BorderLayout borderLayout2 = new BorderLayout(); 58 59 65 public BrowserViewPanel(IconRegistry icons, java.util.List views, StructureViewProperties.Hierarchy visibleViewHierarchy) { 66 try { 67 view_comboBox = new JComboBox(views.toArray()); 68 for (Iterator it = views.iterator(); it.hasNext(); ) { 69 StructureViewProperties.Hierarchy hierarchy = (StructureViewProperties.Hierarchy)it.next(); 70 if (hierarchy == visibleViewHierarchy) { 71 view_comboBox.setSelectedItem(hierarchy); 72 } 73 } 74 treeManager = new StructureTreeManager(); jbInit(); 77 initDepthSlider(); 78 tree_ScrollPane.getViewport().add(treeManager.getStructureTree(), null); 79 80 } 82 catch(Exception e) { 83 Ajde.getDefault().getErrorHandler().handleError("Could not initialize GUI.", e); 84 } 85 } 86 87 public void setActiveNode(StructureViewNode node) { 88 throw new RuntimeException ("not implemented"); 89 } 90 91 public void setActiveNode(StructureViewNode activeNode, int lineOffset) { 92 throw new RuntimeException ("not implemented"); 93 } 94 95 99 105 public void updateView(StructureView structureView) { 106 if (structureView instanceof GlobalStructureView) { 107 treeManager.updateTree((GlobalStructureView)structureView); 108 } 109 } 110 111 void updateTree(String filePath) { 112 } 114 115 private void initDepthSlider() { 116 depth_slider.setMinimum(0); 117 depth_slider.setMaximum(9); 118 depth_slider.setMinorTickSpacing(1); 119 depth_slider.setValue(9); 120 depth_slider.setSnapToTicks(true); 121 depth_slider.setPaintTrack(true); 122 depth_slider.setPaintTicks(true); 123 this.depth_slider.addChangeListener( 124 new ChangeListener() { 125 public void stateChanged(ChangeEvent e) { 126 depthSliderVal = depth_slider.getValue(); 127 } 129 }); 130 depthSliderVal = depth_slider.getValue(); 131 } 132 133 private void view_comboBox_actionPerformed(ActionEvent e) { 134 throw new RuntimeException ("not implemented"); 136 } 137 138 private void jbInit() throws Exception { 139 tree_panel.setLayout(borderLayout2); 140 this.setLayout(borderLayout1); 141 view_comboBox.setPreferredSize(new Dimension(200, 20)); 142 view_comboBox.addActionListener(new java.awt.event.ActionListener () { 143 public void actionPerformed(ActionEvent e) { 144 view_comboBox_actionPerformed(e); 145 } 146 }); 147 view_comboBox.setMinimumSize(new Dimension(40, 20)); 148 view_comboBox.setFont(new java.awt.Font ("SansSerif", 0, 11)); 149 depth_slider.setMaximumSize(new Dimension(32767, 25)); 150 depth_slider.setToolTipText(""); 151 depth_slider.setMinimumSize(new Dimension(30, 20)); 152 depth_slider.setBorder(null); 153 depth_slider.setPreferredSize(new Dimension(30, 25)); 154 depth_slider.setMaximum(3); 155 depth_slider.setPaintTicks(true); 156 depth_slider.setValue(1); 157 depth_slider.setPaintLabels(true); 158 view_toolBar.setFloatable(false); 159 this.add(view_toolBar, BorderLayout.NORTH); 160 view_toolBar.add(view_comboBox, null); 161 view_toolBar.add(depth_slider, null); 162 this.add(tree_panel, BorderLayout.CENTER); 163 tree_panel.add(tree_ScrollPane, BorderLayout.CENTER); 164 } 165 } | Popular Tags |