]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - src/tim/prune/gui/colour/PatchListener.java
Moved source into separate src directory due to popular request
[GpsPrune.git] / src / tim / prune / gui / colour / PatchListener.java
diff --git a/src/tim/prune/gui/colour/PatchListener.java b/src/tim/prune/gui/colour/PatchListener.java
new file mode 100644 (file)
index 0000000..732e543
--- /dev/null
@@ -0,0 +1,36 @@
+package tim.prune.gui.colour;
+
+import java.awt.Color;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+
+
+/**
+ * Listener class to react to patch clicks
+ */
+public class PatchListener extends MouseAdapter
+{
+       /** Associated patch */
+       private ColourPatch _patch = null;
+       /** Colour chooser object, shared between listeners */
+       private ColourChooser _colourChooser = null;
+
+       /**
+        * Constructor
+        * @param inPatch patch object to listen to
+        * @param inChooser colour chooser to use for selection
+        */
+       public PatchListener(ColourPatch inPatch, ColourChooser inChooser)
+       {
+               _patch = inPatch;
+               _colourChooser = inChooser;
+       }
+
+       /** React to mouse clicks */
+       public void mouseClicked(MouseEvent e)
+       {
+               _colourChooser.showDialog(_patch.getBackground());
+               Color colour = _colourChooser.getChosenColour();
+               if (colour != null) _patch.setColour(colour);
+       }
+}