1 31 32 package org.antlr.xjlib.appkit.gview.event; 33 34 import org.antlr.xjlib.appkit.gview.GView; 35 import org.antlr.xjlib.appkit.gview.object.GElement; 36 37 import java.awt.*; 38 import java.awt.event.MouseEvent ; 39 40 public class GEventFocusElement extends GAbstractEvent { 41 42 public GElement focusedElement = null; 43 44 public GEventFocusElement(GView view) { 45 super(view); 46 } 47 48 public void mouseDragged(MouseEvent e, Point mousePosition) { 49 focusOnElement(delegate.eventQueryElementAtPoint(mousePosition)); 50 } 51 52 public void mouseMoved(MouseEvent e, Point mousePosition) { 53 focusOnElement(delegate.eventQueryElementAtPoint(mousePosition)); 54 } 55 56 public void setFocusedElement(GElement element) { 57 if(focusedElement != null) { 58 focusedElement.setFocused(false); 59 delegate.eventRemoveFocusedElement(focusedElement); 60 delegate.eventShouldRepaint(); 61 } 62 focusedElement = element; 63 if(focusedElement != null) { 64 focusedElement.setFocused(true); 65 delegate.eventAddFocusedElement(focusedElement); 66 delegate.eventShouldRepaint(); 67 } 68 } 69 70 public void focusOnElement(GElement element) { 71 if(element != null) { 72 if(manager.canFocusOnElement(element)) 73 setFocusedElement(element); 74 } else 75 setFocusedElement(null); 76 } 77 } 78 | Popular Tags |