PanelDevice aangepast.

This commit is contained in:
Bram Veenboer
2011-03-04 16:23:20 +00:00
parent a93950f608
commit b38f9541d5
2 changed files with 67 additions and 66 deletions

View File

@@ -1,27 +1,17 @@
package pm.device.panel; package pm.device.panel;
import java.awt.BorderLayout; import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout; import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.net.URL; import java.net.URL;
import java.util.concurrent.TimeUnit;
import javax.swing.ImageIcon; import javax.swing.ImageIcon;
import javax.swing.JButton; import javax.swing.JButton;
import javax.swing.JFrame; import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel; import javax.swing.JPanel;
import javax.swing.JProgressBar; import javax.swing.JTextField;
import javax.swing.JSlider;
import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener; import javax.swing.event.ChangeListener;
import pm.Device;
import pm.macro.state.Press;
public class Panel extends JFrame implements ChangeListener, HoldButtonListener { public class Panel extends JFrame implements ChangeListener, HoldButtonListener {
protected static final long serialVersionUID = 1L; protected static final long serialVersionUID = 1L;
protected final static String TITLE = "MIMIS Panel Device"; protected final static String TITLE = "MIMIS Panel Device";
@@ -29,13 +19,6 @@ public class Panel extends JFrame implements ChangeListener, HoldButtonListener
protected PanelButtonListener panelButtonListener; protected PanelButtonListener panelButtonListener;
protected ClassLoader classLoader; protected ClassLoader classLoader;
protected JLabel timeLabel;
protected JLabel chapterLabel;
protected JProgressBar positionProgressBar;
protected JSlider positionSlider;
protected JSlider volumeSlider;
protected JButton previousButton; protected JButton previousButton;
protected JButton rewindButton; protected JButton rewindButton;
protected JButton stopButton; protected JButton stopButton;
@@ -75,20 +58,6 @@ public class Panel extends JFrame implements ChangeListener, HoldButtonListener
} }
protected void createControls() { protected void createControls() {
timeLabel = new JLabel("hh:mm:ss");
chapterLabel = new JLabel("00/00");
positionProgressBar = new JProgressBar();
positionProgressBar.setToolTipText("Time");
positionSlider = new JSlider();
positionSlider.setToolTipText("Position");
volumeSlider = new JSlider();
volumeSlider.setOrientation(JSlider.HORIZONTAL);
volumeSlider.setPreferredSize(new Dimension(100, 40));
volumeSlider.setToolTipText("Change volume");
previousButton = getButton("icons/previous.png", "Go to previous track"); previousButton = getButton("icons/previous.png", "Go to previous track");
rewindButton = getButton("icons/rewind.png", "Skip backward"); rewindButton = getButton("icons/rewind.png", "Skip backward");
stopButton = getButton("icons/stop.png", "Stop"); stopButton = getButton("icons/stop.png", "Stop");
@@ -102,44 +71,64 @@ public class Panel extends JFrame implements ChangeListener, HoldButtonListener
} }
protected void layoutControls() { protected void layoutControls() {
setLayout(new BorderLayout()); //setLayout(new BorderLayout());
JPanel positionPanel = new JPanel(); //JPanel positionPanel = new JPanel();
positionPanel.setLayout(new GridLayout(1, 1)); // was 2, 1
//positionPanel.add(positionProgressBar); /* Feedback panel */
//positionPanel.add(positionSlider); JPanel feedbackPanel = new JPanel();
JTextField feedbackField = new JTextField("Hier komt allerlei feedback te staan!", 64);
feedbackField.setEditable(false);
feedbackPanel.add(feedbackField);
add(feedbackPanel, BorderLayout.NORTH);
/* Control panel */
JPanel controlPanel = new JPanel();
JPanel topPanel = new JPanel(); controlPanel.add(previousButton);
topPanel.setLayout(new BorderLayout(8, 0)); controlPanel.add(rewindButton);
controlPanel.add(stopButton);
controlPanel.add(pauseButton);
controlPanel.add(playButton);
controlPanel.add(forwardButton);
controlPanel.add(nextButton);
controlPanel.add(volumeDownButton);
controlPanel.add(muteButton);
controlPanel.add(volumeUpButton);
topPanel.add(timeLabel, BorderLayout.WEST); add(controlPanel, BorderLayout.CENTER);
topPanel.add(positionPanel, BorderLayout.CENTER); /* TODO: zorg dat de knoppen 4x3 of 3x4 staan, voeg shuffle en repeat toe
topPanel.add(chapterLabel, BorderLayout.EAST); JPanel controlPanel = new JPanel();
add(topPanel, BorderLayout.NORTH);
JPanel seekPanel = new JPanel();
seekPanel.add(previousButton);
seekPanel.add(rewindButton);
seekPanel.add(forwardButton);
seekPanel.add(nextButton);
JPanel modePanel = new JPanel();
controlPanel.add(stopButton);
controlPanel.add(pauseButton);
controlPanel.add(playButton);
JPanel volumePanel = new JPanel();
controlPanel.add(volumeDownButton);
controlPanel.add(muteButton);
controlPanel.add(volumeUpButton);
JPanel bottomPanel = new JPanel(); controlPanel.add(seekPanel);
bottomPanel.setLayout(new FlowLayout()); controlPanel.add(modePanel);
controlPanel.add(volumePanel);
bottomPanel.add(previousButton);
bottomPanel.add(rewindButton); add(controlPanel, BorderLayout.CENTER);
bottomPanel.add(stopButton); */
bottomPanel.add(pauseButton);
bottomPanel.add(playButton);
bottomPanel.add(forwardButton);
bottomPanel.add(nextButton);
bottomPanel.add(volumeDownButton);
bottomPanel.add(muteButton);
bottomPanel.add(volumeUpButton);
//bottomPanel.add(volumeSlider);
add(bottomPanel, BorderLayout.SOUTH);
//positionSlider.addChangeListener(this);
//volumeSlider.addChangeListener(this);
} }
/* Listeners */ /* Listeners */
public void stateChanged(ChangeEvent event) { public void stateChanged(ChangeEvent event) {
/* Wordt niet meer gebruikt
Object source = event.getSource(); Object source = event.getSource();
if (positionSlider.equals(source)) { if (positionSlider.equals(source)) {
if (!setPositionValue) { if (!setPositionValue) {
@@ -148,7 +137,8 @@ public class Panel extends JFrame implements ChangeListener, HoldButtonListener
} }
} else if (volumeSlider.equals(source)) { } else if (volumeSlider.equals(source)) {
} }
*/
} }
public void buttonPressed(HoldButton button) { public void buttonPressed(HoldButton button) {
@@ -199,7 +189,7 @@ public class Panel extends JFrame implements ChangeListener, HoldButtonListener
} }
} }
/* Update */ /* Update, is niet meer nodig? Alle informatie wordt in het TextField geprint
public void updateTime(long millis) { public void updateTime(long millis) {
String s = String.format( String s = String.format(
"%02d:%02d:%02d", "%02d:%02d:%02d",
@@ -227,4 +217,5 @@ public class Panel extends JFrame implements ChangeListener, HoldButtonListener
public void updateVolume(int value) { public void updateVolume(int value) {
volumeSlider.setValue(value); volumeSlider.setValue(value);
} }
*/
} }

View File

@@ -13,9 +13,18 @@ public class PanelDevice extends Device implements PanelButtonListener {
public void initialise() { public void initialise() {
panel = new Panel(this); panel = new Panel(this);
panel.updateTime(12342398); //panel.updateTime(12342398);
panel.updatePosition(43); //panel.updatePosition(43);
add(new Press(PanelButton.PREVIOUS), new Task(Action.PREVIOUS, Target.APPLICATION));
add(new Press(PanelButton.REWIND), new Task(Action.REWIND, Target.APPLICATION));
add(new Press(PanelButton.STOP), new Task(Action.STOP, Target.APPLICATION));
add(new Press(PanelButton.PAUSE), new Task(Action.PAUSE, Target.APPLICATION));
add(new Press(PanelButton.PLAY), new Task(Action.PLAY, Target.APPLICATION)); add(new Press(PanelButton.PLAY), new Task(Action.PLAY, Target.APPLICATION));
add(new Press(PanelButton.FORWARD), new Task(Action.FORWARD, Target.APPLICATION));
add(new Press(PanelButton.NEXT), new Task(Action.NEXT, Target.APPLICATION));
add(new Press(PanelButton.VOLUME_DOWN), new Task(Action.VOLUME_DOWN, Target.APPLICATION));
add(new Press(PanelButton.MUTE), new Task(Action.MUTE, Target.APPLICATION));
add(new Press(PanelButton.VOLUME_UP), new Task(Action.VOLUME_UP, Target.APPLICATION));
} }
public void exit() { public void exit() {
@@ -23,6 +32,7 @@ public class PanelDevice extends Device implements PanelButtonListener {
} }
public void buttonPressed(PanelButton panelButton) { public void buttonPressed(PanelButton panelButton) {
//Vang hier toggles af om bijvoorbeeld de play/pause en mute knop en veranderen
add(new Press(panelButton)); add(new Press(panelButton));
} }