|
Re: Delete Not working still: msg#00064java.netbeans.modules.graph.user
Hi David! Well this exhibits the same behavior....when I select another widget it won't delete.... Chris public class EnterKeyProcessingTest { private static WidgetAction deleteAction = new KeyEventLoggerAction(); public static void main(String[] args) { ObjectScene scene = new ObjectScene(); LayerWidget main = new LayerWidget(scene); LayerWidget interaction = new LayerWidget(scene); scene.addChild(main); scene.addChild(interaction); main.setLayout(LayoutFactory.createVerticalFlowLayout()); // scene.setLayout(LayoutFactory.createVerticalFlowLayout ()); ComponentWidget label1 = new ComponentWidget(scene,new JTextArea("HI MOM")); label1.getActions().addAction(deleteAction); label1.getActions().addAction(ActionFactory.createSelectAction(new KeySelectProvider())); main.addChild(label1); LabelWidget label2 = new LabelWidget(scene, "Second editable label."); label2.getActions().addAction(deleteAction); label2.getActions().addAction(ActionFactory.createSelectAction(new KeySelectProvider())); main.addChild(label2); LabelWidget label3 = new LabelWidget(scene, "Third non-editable label. Should not receive any key event."); label3.getActions().addAction(deleteAction); label3.getActions().addAction(ActionFactory.createSelectAction(new KeySelectProvider())); main.addChild(label3); scene.setKeyEventProcessingType(EventProcessingType.FOCUSED_WIDGET_AND_ITS_PARENTS); // scene.setFocusedWidget (label2); SceneSupport.show(scene); } private static class KeySelectProvider implements SelectProvider { public boolean isAimingAllowed(Widget widget, Point localLocation, boolean invertSelection) { return false; } public boolean isSelectionAllowed(Widget widget, Point localLocation, boolean invertSelection) { return true; } public void select(Widget widget, Point localLocation, boolean invertSelection) { Scene scene = widget.getScene(); scene.setFocusedWidget(widget); } } private static class KeyEventLoggerAction extends WidgetAction.Adapter { public State keyPressed(Widget widget, WidgetKeyEvent event) { System.out.println("KeyPressed at " + ((LabelWidget) widget).getLabel()); return State.REJECTED; } public State keyReleased(final Widget widget, WidgetKeyEvent event) { if (event.getKeyCode() == KeyEvent.VK_DELETE) { System.out.println("KeyReleased at " + ((LabelWidget) widget).getLabel()); final ObjectScene scene = (ObjectScene)widget.getScene(); scene.findObject(widget); widget.removeFromParent(); return State.CONSUMED; } return State.REJECTED; } public State keyTyped(Widget widget, WidgetKeyEvent event) { System.out.println("KeyTyped at " + ((LabelWidget) widget).getLabel()); return State.REJECTED; } } private static class LabelEditor implements TextFieldInplaceEditor { public boolean isEnabled(Widget widget) { return true; } public String getText(Widget widget) { return ((LabelWidget) widget).getLabel(); } public void setText(Widget widget, String text) { ((LabelWidget) widget).setLabel(text); } } }
|
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Delete Not working still, David Kaspar |
|---|---|
| Next by Date: | Re: Delete Not working still, David Kaspar |
| Previous by Thread: | Re: Delete Not working still, David Kaspar |
| Next by Thread: | Re: Delete Not working still, David Kaspar |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |