def onBrowserEvent(self, event): if DOM.eventGetType(event) in DROP_EVENTS and not self.block.original: mb = getWorkspace().getMovingBlock() if not DOM.isOrHasChild( mb.getElement(), self.getElement()) and mb.blockType in self.accepts: DropHandler.onBrowserEvent(self, event) elif DOM.eventGetType(event) in KEYBOARD_EVENTS: KeyboardHandler.onBrowserEvent(self, event)
def onBrowserEvent(self, event): etype = DOM.eventGetType(event) if etype in MOUSE_EVENTS: if self._mousePreventDefault: DOM.eventPreventDefault(event) return fireMouseEvent(self._mouseListeners, self, event) return False
def onBrowserEvent(self, event): # farm out the event to convenience handlers. # detect existence by checking for the listener lists of each # type of handler. there's probably a better way to do this... if hasattr(self, "_clickListeners"): ClickHandler.onBrowserEvent(self, event) if hasattr(self, "_keyboardListeners"): KeyboardHandler.onBrowserEvent(self, event) if hasattr(self, "_mouseListeners"): MouseHandler.onBrowserEvent(self, event) if hasattr(self, "_mouseWheelListeners"): MouseWheelHandler.onBrowserEvent(self, event) if hasattr(self, "_focusListeners"): FocusHandler.onBrowserEvent(self, event) if hasattr(self, "_dragListeners"): DragHandler.onBrowserEvent(self, event) if hasattr(self, "_changeListeners"): ChangeHandler.onBrowserEvent(self, event) if hasattr(self, "_inputListeners"): InputHandler.onBrowserEvent(self, event) if hasattr(self, "_dropListeners"): DropHandler.onBrowserEvent(self, event) if self.contextMenu is None: return True type = DOM.eventGetType(event) if type == "contextmenu": DOM.eventCancelBubble(event, True) DOM.eventPreventDefault(event) self.contextMenu.onContextMenu(self) return False return True
def fireMouseEvent(listeners, sender, event): x = DOM.eventGetClientX(event) - DOM.getAbsoluteLeft(sender.getElement()) y = DOM.eventGetClientY(event) - DOM.getAbsoluteTop(sender.getElement()) etype = DOM.eventGetType(event) if etype == "mousedown": for listener in listeners: listener.onMouseDown(sender, x, y) return True elif etype == "mouseup": for listener in listeners: listener.onMouseUp(sender, x, y) return True elif etype == "mousemove": for listener in listeners: listener.onMouseMove(sender, x, y) return True elif etype == "mouseover": from_element = DOM.eventGetFromElement(event) if not DOM.isOrHasChild(sender.getElement(), from_element): for listener in listeners: listener.onMouseEnter(sender) return True elif etype == "mouseout": to_element = DOM.eventGetToElement(event) if not DOM.isOrHasChild(sender.getElement(), to_element): for listener in listeners: listener.onMouseLeave(sender) return True return False
def onEventPreview(self, event): type = DOM.eventGetType(event) if type == "keydown": return (self.onKeyDownPreview( DOM.eventGetKeyCode(event), KeyboardListener.getKeyboardModifiers(event)) and (not self.modal or self._event_targets_popup(event))) elif type == "keyup": return (self.onKeyUpPreview( DOM.eventGetKeyCode(event), KeyboardListener.getKeyboardModifiers(event)) and (not self.modal or self._event_targets_popup(event))) elif type == "keypress": return (self.onKeyPressPreview( DOM.eventGetKeyCode(event), KeyboardListener.getKeyboardModifiers(event)) and (not self.modal or self._event_targets_popup(event))) elif (type == "mousedown" or type == "blur"): if DOM.getCaptureElement() is not None: return True if self.autoHide and not self._event_targets_popup(event): self.hide(True) return True elif (type == "mouseup" or type == "click" or type == "mousemove" or type == "dblclick"): if DOM.getCaptureElement() is not None: return True return not self.modal or self._event_targets_popup(event)
def onEventPreview(self, event): etype = DOM.eventGetType(event) print "control preview", etype, self._event_targets_control(event), \ DOM.getCaptureElement() is not None if etype == "keydown": return self._event_targets_control(event) elif etype == "keyup": return self._event_targets_control(event) elif etype == "keypress": return self._event_targets_control(event) elif ( etype == "mousedown" or etype == "blur" ): if DOM.getCaptureElement() is not None: return True if not self._event_targets_control(event): return True elif ( etype == "mouseup" or etype == "click" or etype == "mousemove" or etype == "dblclick" ): if DOM.getCaptureElement() is not None: return True elif etype == "mouseout": if DOM.getCaptureElement() is not None: return False return self._event_targets_control(event)
def onBrowserEvent(self, event): Widget.onBrowserEvent(self, event) event_type = DOM.eventGetType(event) if event_type == "click": DOM.eventPreventDefault(event) if self.targetHistoryToken is not None: History.newItem(self.targetHistoryToken)
def onBrowserEvent(self, event): # farm out the event to convenience handlers. # detect existence by checking for the listener lists of each # type of handler. there's probably a better way to do this... if hasattr(self, "_clickListeners"): ClickHandler.onBrowserEvent(self, event) if hasattr(self, "_keyboardListeners"): KeyboardHandler.onBrowserEvent(self, event) if hasattr(self, "_mouseListeners"): MouseHandler.onBrowserEvent(self, event) if hasattr(self, "_mouseWheelListeners"): MouseWheelHandler.onBrowserEvent(self, event) if hasattr(self, "_focusListeners"): FocusHandler.onBrowserEvent(self, event) if hasattr(self, "_dragListeners"): DragHandler.onBrowserEvent(self, event) if hasattr(self, "_dropListeners"): DropHandler.onBrowserEvent(self, event) if self.contextMenu is None: return True type = DOM.eventGetType(event) if type == "contextmenu": DOM.eventCancelBubble(event, True) DOM.eventPreventDefault(event) self.contextMenu.onContextMenu(self) return False return True
def onBrowserEvent(self, event): FocusWidget.onBrowserEvent(self, event) type = DOM.eventGetType(event) if type == "change": for listener in self.changeListeners: if hasattr(listener, 'onChange'): listener.onChange(self) else: listener(self)
def onEventPreview(self, event): type = DOM.eventGetType(event) if type == "click": target = DOM.eventGetTarget(event) parentMenuElement = self.item.getParentMenu().getElement() if DOM.isOrHasChild(parentMenuElement, target): return False return PopupPanel.onEventPreview(self, event)
def fireFocusEvent(listeners, sender, event): type = DOM.eventGetType(event) if type == "focus": for listener in listeners: listener.onFocus(sender) elif type == "blur": for listener in listeners: listener.onLostFocus(sender)
def onBrowserEvent(self, event): TextBox.onBrowserEvent(self, event) type = DOM.eventGetType(event) if type == "keyup": for _listener in self._blurListeners: if hasattr(_listener, 'onBlur'): _listener.onBlur(self) else: _listener(self)
def fireChangeEvent(listeners, sender, event): etype = DOM.eventGetType(event) if etype != "change": return for listener in listeners: if hasattr(listener, 'onChange'): listener.onChange(sender) else: listener(sender)
def onBrowserEvent(self, event): etype = DOM.eventGetType(event) if etype == "mousewheel": if self._mouseWheelPreventDefault: DOM.eventPreventDefault(event) velocity = DOM.eventGetMouseWheelVelocityY(event) for listener in self._mouseWheelListeners: listener.onMouseWheel(self, velocity) return True
def fireInputEvent(listeners, sender, event): etype = DOM.eventGetType(event) if etype != "input": return for listener in listeners: if hasattr(listener, 'onInput'): listener.onInput(sender) else: listener(sender)
def onBrowserEvent(self, event): Widget.onBrowserEvent(self, event) type = DOM.eventGetType(event) if type == "load": for listener in self.loadListeners: listener.onImageLoad(self) elif type == "error": for listener in self.loadListeners: listener.onImageError(self)
def onBrowserEvent(self, event): type = DOM.eventGetType(event) if type == 'mousedown' or type == 'mouseup' or type == 'mousemove' or type == 'mouseover' or type == 'mouseout': MouseListener.fireMouseEvent(self.mouseListeners, self, event) # stop event falling through esp. for drag on image DOM.eventPreventDefault(event) else: Hyperlink.onBrowserEvent(self, event)
def onBrowserEvent(self, event) : type = DOM.eventGetType(event) if type == "click": self.onClick(self) elif type == "keydown": modifiers = KeyboardListener.getKeyboardModifiers(event) if hasattr(self.keyDelegate, "onKeyDown"): self.keyDelegate.onKeyDown(self, DOM.eventGetKeyCode(event), modifiers)
def onEventPreview(self, event): etype = DOM.eventGetType(event) if etype == "mousedown" or etype == "blur": if DOM.getCaptureElement() is not None: return True elif etype == "mouseup" or etype == "click" or \ etype == "mousemove" or etype == "dblclick": if DOM.getCaptureElement() is not None: return True return self._event_targets_popup(event)
def onBrowserEvent(self, event): """Listen to events raised by the browser and call the appropriate method of the listener (widget, ..) object. """ type = DOM.eventGetType(event) if type == "dblclick": for listener in self._doubleclickListeners: if hasattr(listener, "onDblClick"): listener.onDblClick(self) else: listener(self)
def onEventPreview(self, event): # preventDefault on mousedown events, outside of the # dialog, to stop text-selection on dragging type = DOM.eventGetType(event) if type == 'mousedown': target = DOM.eventGetTarget(event) elem = self.caption.getElement() event_targets_popup = target and DOM.isOrHasChild(elem, target) if event_targets_popup: DOM.eventPreventDefault(event) return PopupPanel.onEventPreview(self, event)
def onEventPreview(self, event): type = DOM.eventGetType(event) if type == "click": target = DOM.eventGetTarget(event) parentMenuElement = self.item.getElement() if DOM.isOrHasChild(parentMenuElement, target): if self.item.onBrowserEvent(event): self.hide() return True return PopupPanel.onEventPreview(self, event)
def onEventPreview(self, event): # preventDefault on mousedown events, outside of the # dialog, to stop text-selection on dragging type = DOM.eventGetType(event) if type == "mousedown": target = DOM.eventGetTarget(event) elem = self.caption.getElement() event_targets_popup = target and DOM.isOrHasChild(elem, target) if event_targets_popup: DOM.eventPreventDefault(event) return PopupPanel.onEventPreview(self, event)
def onBrowserEvent(self, event): type = DOM.eventGetType(event) #print "Label onBrowserEvent", type, self.clickListeners if type == "click": for listener in self.clickListeners: if hasattr(listener, 'onClick'): listener.onClick(self) else: listener(self, event) elif type == "blur" or type == "focus": FocusListener.fireFocusEvent(self.focusListeners, self, event) elif type == "keydown" or type == "keypress" or type == "keyup": MouseListener.fireMouseEvent(self.mouseListeners, self, event)
def onBrowserEvent(self, event): etype = DOM.eventGetType(event) if etype == "click": e = DOM.eventGetTarget(event) if not self.shouldTreeDelegateFocusToElement(e) and \ self.curSelection is not None: self.setFocus(True) elif etype in MouseListener.MOUSE_EVENTS: if etype == "mousedown": self.elementClicked(self.root, DOM.eventGetTarget(event)) MouseListener.fireMouseEvent(self.mouseListeners, self, event) elif etype == "blur" or etype == "focus": FocusListener.fireFocusEvent(self.focusListeners, self, event) elif etype == "keydown": if self.curSelection is None: if self.root.getChildCount() > 0: self.onSelection(self.root.getChild(0), True) Widget.onBrowserEvent(self, event) return if self.lastEventType == "keydown": return keycode = DOM.eventGetKeyCode(event) if keycode == KeyboardListener.KEY_UP: self.moveSelectionUp(self.curSelection, True) DOM.eventPreventDefault(event) elif keycode == KeyboardListener.KEY_DOWN: self.moveSelectionDown(self.curSelection, True) DOM.eventPreventDefault(event) elif keycode == KeyboardListener.KEY_LEFT: if self.curSelection.getState(): self.curSelection.setState(False) DOM.eventPreventDefault(event) elif keycode == KeyboardListener.KEY_RIGHT: if not self.curSelection.getState(): self.curSelection.setState(True) DOM.eventPreventDefault(event) elif etype == "keyup": if DOM.eventGetKeyCode(event) == KeyboardListener.KEY_TAB: chain = [] self.collectElementChain(chain, self.getElement(), DOM.eventGetTarget(event)) item = self.findItemByChain(chain, 0, self.root) if item != self.getSelectedItem(): self.setSelectedItem(item, True) elif etype == "keypress": KeyboardListener.fireKeyboardEvent(self.keyboardListeners, self, event) Widget.onBrowserEvent(self, event) self.lastEventType = etype
def onEventPreview(self, event): # preventDefault on mousedown events, outside of the # dialog, to stop text-selection on dragging type = DOM.eventGetType(event) print "onEventPreview", event, type if type == 'mousedown': target = DOM.eventGetTarget(event) event_targets_control = target and DOM.isOrHasChild(self.getElement(), target) print "onEventPreview", target, event_targets_control if event_targets_control: DOM.eventPreventDefault(event) return VerticalSliderDemo.onEventPreview(self, event)
def onBrowserEvent(self, event): kind = DOM.eventGetType(event) x = DOM.eventGetClientX(event) - DOM.getAbsoluteLeft(self.getElement()) y = DOM.eventGetClientY(event) - DOM.getAbsoluteTop(self.getElement()) y = HEIGHT - y if kind == "mousedown": self.onMouseDown(x,y) self._dragging = True elif kind == "mousemove" and self._dragging: self.onMouseDrag(x,y) elif (kind == "mouseup" or kind == "mouseout") and self._dragging: self._dragging = False self.onMouseUp(x,y)
def onBrowserEvent(self, event): """Listen to events raised by the browser and call the appropriate method of the listener (widget, ..) object. """ type = DOM.eventGetType(event) if type == "click": if self._clickPreventDefault: DOM.eventPreventDefault(event) for listener in self._clickListeners: if hasattr(listener, "onClick"): listener.onClick(self) else: listener(self)
def onBrowserEvent(self, event): TextBox.onBrowserEvent(self, event) #Window.alert('was I ever called?') type = DOM.eventGetType(event) if type == "blur": for _listener in self._blurListeners: if hasattr(_listener, 'onBlur'): _listener.onBlur(self) else: _listener(self) if self.controller is not None: self.controller.process_msg(CAL_DATE_MSG, self.cal_ID)
def onEventPreview(self, event): type = DOM.eventGetType(event) if type == "click": target = DOM.eventGetTarget(event) parentMenuElement = self.item.getElement() if DOM.isOrHasChild(parentMenuElement, target): if self.item.findItem(target): self.hide() DOM.eventCancelBubble(event, True) DOM.eventStopPropagation(event) return True return PopupPanel.onEventPreview(self, event)
def fireKeyboardEvent(listeners, sender, event): modifiers = getKeyboardModifiers(event) keycode = DOM.eventGetKeyCode(event) type = DOM.eventGetType(event) if type == "keydown": for listener in listeners: listener.onKeyDown(sender, keycode, modifiers) elif type == "keyup": for listener in listeners: listener.onKeyUp(sender, keycode, modifiers) elif type == "keypress": for listener in listeners: listener.onKeyPress(sender, keycode, modifiers)
def onBrowserEvent(self, event): print "Event happened" kind = DOM.eventGetType(event) x = DOM.eventGetClientX(event) - DOM.getAbsoluteLeft(self.canvas.getElement()) y = DOM.eventGetClientY(event) - DOM.getAbsoluteTop(self.canvas.getElement()) print "Type of event: %s" % (kind) if kind == "mousedown": self._dragging = True self.onMouseDown(x,y) elif kind == "mousemove" and self._dragging: self.onMouseDrag(x,y) elif (kind == "mouseup" or kind == "mouseout") and self._dragging: self._dragging = False self.onMouseUp(x,y)
def fireDragEvent(listeners, event): etype = DOM.eventGetType(event) if etype == "dragstart": for listener in listeners: listener.onDragStart(event) return True elif etype == "drag": for listener in listeners: listener.onDrag(event) return True elif etype == "dragend": for listener in listeners: listener.onDragEnd(event) return True return False
def onBrowserEvent(self, event): if DOM.eventGetType(event) == "click": td = self.getEventTargetCell(event) if td is None: return tr = DOM.getParent(td) body = DOM.getParent(tr) row = DOM.getChildIndex(body, tr) column = DOM.getChildIndex(tr, td) for listener in self.tableListeners: if hasattr(listener, 'onCellClicked'): listener.onCellClicked(self, row, column) else: listener(self)
def onBrowserEvent(self, event): Widget.onBrowserEvent(self, event) item = self.findItem(DOM.eventGetTarget(event)) if item is None: return False type = DOM.eventGetType(event) if type == "click": self.doItemAction(item, True) return True elif type == "mouseover": self.itemOver(item) elif type == "mouseout": self.itemOver(None) return False
def fireDropEvent(listeners, event): etype = DOM.eventGetType(event) if etype == "dragenter": for listener in listeners: listener.onDragEnter(event) return True elif etype == "dragover": for listener in listeners: listener.onDragOver(event) return True elif etype == "dragleave": for listener in listeners: listener.onDragLeave(event) return True elif etype == "drop": for listener in listeners: listener.onDrop(event) return True return False
def onBrowserEvent(self, event): """Listen to events raised by the browser and call the appropriate method of the listener (widget, ..) object. """ type = DOM.eventGetType(event) if type == "click": if self._clickPreventDefault: DOM.eventPreventDefault(event) for listener in self._clickListeners: if hasattr(listener, "onClick"): listener.onClick(self) else: listener(self) elif type == "dblclick": if self._clickPreventDefault: DOM.eventPreventDefault(event) for listener in self._doubleclickListeners: if hasattr(listener, "onDoubleClick"): listener.onDoubleClick(self) else: listener(self)
def onBrowserEvent(self, event): DOM.eventPreventDefault(event) if not self.game.started: return td = self.getEventTargetCell(event) if not td: return tr = DOM.getParent(td) table = DOM.getParent(tr) row = DOM.getChildIndex(table, tr) column = DOM.getChildIndex(tr, td) target_cell = self.getCell(row, column) type = DOM.eventGetType(event) event_mapper = {'click': 'onClick', 'contextmenu': 'onRightClick', 'mousedown': 'onMouseDown', 'mouseup': 'onMouseUp', 'mouseout': 'onMouseLeave'} event_handler = event_mapper.get(type) if event_handler: getattr(self, event_handler)(target_cell)
def onBrowserEvent(self, event): typ = DOM.eventGetType(event) if typ == "mousedown": target = DOM.eventGetTarget(event) if DOM.isOrHasChild(self.splitElem, target): self.startResizingFrom( DOM.eventGetClientX(event) - self.getAbsoluteLeft(), DOM.eventGetClientY(event) - self.getAbsoluteTop()) DOM.setCapture(self.getElement()) DOM.eventPreventDefault(event) elif typ == "mouseup": DOM.releaseCapture(self.getElement()) self.stopResizing() elif typ == 'mousemove': if self.isResizing: #assert DOM.getCaptureElement() is not None self.onSplitterResize( DOM.eventGetClientX(event) - self.getAbsoluteLeft(), DOM.eventGetClientY(event) - self.getAbsoluteTop()) DOM.eventPreventDefault(event)