1 package org.ozoneDB.adminGui.feature; 2 3 import java.awt.*; 4 import java.util.Iterator ; 5 import java.util.List ; 6 import javax.swing.*; 7 8 import org.ozoneDB.adminGui.res.Settings; 9 10 public class FeatureBar extends JPanel implements Settings { 11 12 private static final Dimension PANEL_DIMENSION = new Dimension(FEATURE_BAR_WIDTH, FEATURE_BAR_HEIGHT); 13 14 private List features; 15 16 public FeatureBar(List features) { 17 super(); 18 this.features = features; 19 layoutPanel(); 20 } 21 22 private void layoutPanel() { 23 setPreferredSize(PANEL_DIMENSION); 24 setMaximumSize(PANEL_DIMENSION); 25 setMinimumSize(PANEL_DIMENSION); 26 27 setLayout(new BorderLayout()); 28 setBorder(BorderFactory.createLineBorder(COLOR_COBALT)); 29 30 add(createFeatureButtonPanel(), BorderLayout.CENTER); 31 } 32 33 private JPanel createFeatureButtonPanel() { 34 JPanel panel = new JPanel(); 35 panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); 36 panel.setBackground(Color.WHITE); 37 38 panel.add(Box.createRigidArea(new Dimension(70, 50))); 40 41 Iterator it = features.iterator(); 42 while (it.hasNext()) { 43 Component strut = Box.createVerticalStrut(25); 44 Feature feature = (Feature) it.next(); 45 FeatureButton featureButton = new FeatureButton(feature, strut); 46 feature.setFeatureButton(featureButton); 47 panel.add(featureButton); 48 panel.add(Box.createRigidArea(new Dimension(70, 15))); 49 } 50 panel.add(Box.createVerticalGlue()); 52 53 return panel; 54 } 55 56 public void disableFeatures() { 57 Iterator it = features.iterator(); 58 while (it.hasNext()) { 59 Feature feature = (Feature) it.next(); 60 feature.setEnabled(false); 61 62 } 63 } 64 65 public void enableFeatures() { 66 Iterator it = features.iterator(); 67 while (it.hasNext()) { 68 Feature feature = (Feature) it.next(); 69 feature.setEnabled(true); 70 } 71 } 72 73 } 74 | Popular Tags |