use of org.twak.utils.ui.ColourPicker in project chordatlas by twak.
the class MiniFacade method getMenu.
@Override
public void getMenu(MouseEvent e, PanMouseAdaptor ma, ChangeListener cl) {
mouseDown(e, ma);
SimplePopup2 pop = new SimplePopup2(e);
if (dragging != null)
pop.add("delete", new Runnable() {
@Override
public void run() {
if (dragging != null)
rects.remove(dragging.f, dragging);
cl.stateChanged(null);
}
});
if (dragging != null)
pop.add("duplicate", new Runnable() {
@Override
public void run() {
mouseDown(e, ma);
if (dragging != null) {
FRect rec = new FRect(dragging);
// rec.x += 0.5;
rec.x += rec.width + 0.3;
rects.put(rec.f, rec);
cl.stateChanged(null);
}
}
});
for (Feature f : Feature.values()) {
pop.add("add " + f.name().toLowerCase(), new Runnable() {
@Override
public void run() {
Point2d pt = flip(ma.from(e));
FRect rec = new FRect(pt.x, pt.y, pt.x + 0.5, pt.y + 0.5);
rec.f = f;
rects.put(f, rec);
cl.stateChanged(null);
}
});
}
pop.add("color", new Runnable() {
@Override
public void run() {
new ColourPicker(null, new Color((float) color[0], (float) color[1], (float) color[2])) {
@Override
public void picked(Color color) {
MiniFacade.this.color = new double[] { color.getRed() / 255f, color.getGreen() / 255f, color.getBlue() / 255f, 1 };
cl.stateChanged(null);
}
};
}
});
pop.show();
}
Aggregations