Esempio n. 1
0
 public SpeedSliderPanel(GUIWorkspace workspace, boolean labelsBelow) {
   this.workspace = workspace;
   this.labelsBelow = labelsBelow;
   speedSlider = new SpeedSlider((int) workspace.speedSliderPosition());
   speedSlider.setFocusable(false);
   speedSlider.addChangeListener(this);
   speedSlider.addMouseListener(this);
   speedSlider.setOpaque(false);
   org.nlogo.awt.Fonts.adjustDefaultFont(normal);
   setOpaque(false);
   if (labelsBelow) {
     GridBagLayout gridbag = new GridBagLayout();
     GridBagConstraints c = new GridBagConstraints();
     setLayout(gridbag);
     c.gridwidth = GridBagConstraints.REMAINDER;
     add(speedSlider, c);
     c.gridwidth = 1;
     c.anchor = GridBagConstraints.CENTER;
     add(normal, c);
   } else {
     java.awt.BorderLayout layout = new java.awt.BorderLayout();
     layout.setVgap(0);
     setLayout(layout);
     add(speedSlider, java.awt.BorderLayout.CENTER);
     add(normal, java.awt.BorderLayout.EAST);
   }
   enableLabels(0);
 }
Esempio n. 2
0
 public void stateChanged(javax.swing.event.ChangeEvent e) {
   int value = speedSlider.getValue();
   // adjust the speed reported to the workspace
   // so there isn't a big gap between the snap area
   // and outside the snap area. ev 2/22/07
   if (value < -10) {
     value += 10;
   } else if (value > 10) {
     value -= 10;
   } else {
     value = 0;
   }
   workspace.speedSliderPosition(value / 2);
   if (org.nlogo.api.Version.isLoggingEnabled()) {
     org.nlogo.log.Logger.logSpeedSlider(value);
   }
   enableLabels(value);
   workspace.updateManager().nudgeSleeper();
 }
Esempio n. 3
0
 public void setValue(int speed) {
   if (speedSlider.getValue() != speed) {
     speedSlider.setValue(speed);
   }
   enableLabels((int) workspace.speedSliderPosition());
 }