|
@@ -85,3 +85,52 @@ class colourButton extends JButton
|
|
|
return this.getBackground().toString();
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+class previewPanel extends JPanel
|
|
|
+{
|
|
|
+ private Model model;
|
|
|
+ private JSlider slider;
|
|
|
+ private previewLine preview;
|
|
|
+
|
|
|
+ public previewPanel(Model m)
|
|
|
+ {
|
|
|
+ this.model = m;
|
|
|
+ this.slider = new JSlider(1, 50, model.getThiccness());
|
|
|
+ this.slider.addChangeListener(new ChangeListener()
|
|
|
+ {
|
|
|
+ public void stateChanged(ChangeEvent e)
|
|
|
+ {
|
|
|
+ this.model.changeThiccness(slider.getValue());
|
|
|
+ }
|
|
|
+ });
|
|
|
+ this.preview = new previewLine(m);
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class previewLine
|
|
|
+{
|
|
|
+ private int xpos;
|
|
|
+ private int ypos;
|
|
|
+ private Model model;
|
|
|
+
|
|
|
+ public previewLine(Model m)
|
|
|
+ {
|
|
|
+ this.model = m;
|
|
|
+ model.addObserver(this);
|
|
|
+ }
|
|
|
+
|
|
|
+ public void update(Object observable)
|
|
|
+ {
|
|
|
+ revalidate();
|
|
|
+ repaint();
|
|
|
+ }
|
|
|
+
|
|
|
+ public void paintComponent(Graphics g)
|
|
|
+ {
|
|
|
+ super.paintComponent(g);
|
|
|
+ Graphics2D gtemp = (Graphics2D) g;
|
|
|
+ gtemp.setColor(model.getColour());
|
|
|
+ gtemp.setStroke(new BasicStroke(model.getThiccness(), BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
|
|
|
+ gtemp.drawLine(xpos, ypos, xpos, ypos);
|
|
|
+ }
|
|
|
+}
|