diff options
Diffstat (limited to 'CSMath/src/bezier/CanvasRepainter.java')
| -rw-r--r-- | CSMath/src/bezier/CanvasRepainter.java | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/CSMath/src/bezier/CanvasRepainter.java b/CSMath/src/bezier/CanvasRepainter.java new file mode 100644 index 0000000..43c16e3 --- /dev/null +++ b/CSMath/src/bezier/CanvasRepainter.java @@ -0,0 +1,40 @@ +package bezier;
+
+import javax.swing.JComponent;
+import javax.swing.event.ListDataEvent;
+import javax.swing.event.ListDataListener;
+
+/**
+ * Listener to repaint a component whenever a list changes.
+ *
+ * @author bjculkin
+ *
+ */
+public class CanvasRepainter implements ListDataListener {
+ private final JComponent comp;
+
+ /**
+ * Create a new repaint listener.
+ *
+ * @param canvas
+ * The component to repaint.
+ */
+ public CanvasRepainter(JComponent canvas) {
+ this.comp = canvas;
+ }
+
+ @Override
+ public void intervalRemoved(ListDataEvent e) {
+ comp.repaint();
+ }
+
+ @Override
+ public void intervalAdded(ListDataEvent e) {
+ comp.repaint();
+ }
+
+ @Override
+ public void contentsChanged(ListDataEvent e) {
+ comp.repaint();
+ }
+}
\ No newline at end of file |
