def __init__(self, **kw): if (not hasattr(self, 'attached')) or kw: Widget.__init__(self, **kw) MouseHandler.__init__(self) self.addMouseListener(DNDHelper.dndHelper) DragHandler.__init__(self) self.addDragListener(self)
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 __init__(self, element, **kwargs): self.setElement(element) Widget.__init__(self, **kwargs) FocusHandler.__init__(self) KeyboardHandler.__init__(self) ClickHandler.__init__(self) MouseHandler.__init__(self)
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 __init__(self, element, min_value, max_value, start_value_xy=None, step_xy=None, **kwargs): self.min_value_x = min_value[0] self.min_value_y = min_value[1] self.max_value_x = max_value[0] self.max_value_y = max_value[1] if start_value_xy is None: self.start_value_x = self.min_value_x self.start_value_y = self.min_value_y else: self.start_value_x = start_value_xy[0] self.start_value_y = start_value_xy[1] if step_xy is None: self.step_x = (self.max_value_x - self.min_value_x) / 20 self.step_y = (self.max_value_y - self.min_value_y) / 20 else: self.step_x = step_xy[0] self.step_y = step_xy[1] self.value_x = self.start_value_x self.value_y = self.start_value_y self.valuechange_listeners = [] self.dragging = False self.drag_enabled = False if not kwargs.has_key("TabIndex"): kwargs['TabIndex'] = 0 FocusWidget.__init__(self, element, **kwargs) MouseHandler.__init__(self)
def __init__(self, values, block): BooleanArgument.__init__(self) MouseHandler.__init__(self) self.values = values self.block = block drawDropdownBooleanArgument(self, self.values, self.ButtonDown, self.ItenClick) RootPanel().addMouseListener(self) DOM.sinkEvents(RootPanel().getElement(), ONMOUSEDOWN | DOM.getEventsSunk(RootPanel().getElement()))
def __init__(self, text, listener, classIcon=""): Element.__init__(self, Element=DOM.createElement('li'), StyleName='btn') ClickHandler.__init__(self) MouseHandler.__init__(self) self.text = text self.classIcon = classIcon self.draw() if listener is not None: self.addClickListener(listener)
def __init__(self, **kwargs): """ pass in Widget={the widget} so that Applier will call setWidget. """ SimplePanel.__init__(self, Focus.createFocusable(), **kwargs) FocusHandler.__init__(self) KeyboardHandler.__init__(self) ClickHandler.__init__(self) MouseHandler.__init__(self)
def __init__(self, splitPanel, **kwargs): # keep a ref to our parent panel for event callback self._splitpanel = splitPanel SimplePanel.__init__(self, **kwargs) MouseHandler.__init__(self) self.addMouseListener(self) # set some constant styles elem = self.getElement() # the following allows splitter to be small enough in IE DOM.setStyleAttribute(elem, "overflow", "hidden")
def __init__(self, url="", **kwargs): if not kwargs.has_key('StyleName'): kwargs['StyleName']="gwt-Image" if url: kwargs['Url'] = url self.setElement(kwargs.pop('Element', None) or DOM.createImg()) Widget.__init__(self, **kwargs) MouseHandler.__init__(self) ClickHandler.__init__(self) self.sinkEvents(Event.ONLOAD | Event.ONERROR) self.loadListeners = []
def __init__(self, text=None, wordWrap=True, **kwargs): kwargs['StyleName'] = kwargs.get('StyleName', "gwt-Label") kwargs['WordWrap'] = kwargs.get('WordWrap', wordWrap) kwargs['HorizontalAlignment'] = kwargs.get('HorizontalAlignment', "") if text: kwargs['Text'] = text self.setElement(kwargs.pop('Element', None) or DOM.createDiv()) self.horzAlign = "" Widget.__init__(self, **kwargs) MouseHandler.__init__(self) ClickHandler.__init__(self)
def __init__(self, values, block): StringArgument.__init__(self) MouseHandler.__init__(self) self.values = values self.block = block self.input.setReadonly(True) drawDropdownStringArgument(self, self.values, self.ButtonDown, self.ItenClick) RootPanel().addMouseListener(self) DOM.sinkEvents( RootPanel().getElement(), ONMOUSEDOWN | DOM.getEventsSunk(RootPanel().getElement()))
def __init__(self, Shape, Coords, **kwargs): if not kwargs.has_key('Href'): kwargs['Href'] = "" kwargs['Shape'] = Shape kwargs['Coords'] = Coords if kwargs.has_key('Element'): element = kwargs.pop('Element') else: element = DOM.createElement("area") self.setElement(element) Widget.__init__(self, **kwargs) MouseHandler.__init__(self, preventDefault=True) ClickHandler.__init__(self, preventDefault=True)
def __init__(self, vertical=False, **kwargs): # set defaults if not 'StyleName' in kwargs: if vertical: # vertical split panel kwargs['StyleName'] = "gwt-VerticalSplitPanel" else: kwargs['StyleName'] = "gwt-HorizontalSplitPanel" # splitter drag state vars self._drag_start = None self._pos = "50%" # orientation self._vertical = vertical # now init the bases AbsolutePanel.__init__(self, **kwargs) MouseHandler.__init__(self) # add our event support? self.addListenedEvent("Resize") # create the top/left widget container self._container1 = ScrollPanel() # create the bottom/right widget container self._container2 = ScrollPanel() # create the splitter self._splitter = SplitPanelSplitter(self) # add splitter handling self._splitter.addMouseListener(self) # add mouse event handling self.addMouseListener(self) # add the parts AbsolutePanel.add(self, self._container1, 0, 0) AbsolutePanel.add(self, self._splitter, 0, 0) AbsolutePanel.add(self, self._container2, 0, 0) # set the layout if vertical: # vertical split panel self._splitter.setStyleName("vsplitter") self._splitter.setWidth("100%") self._container1.setWidth("100%") self._container2.setWidth("100%") # set drag cursor DOM.setStyleAttribute(self._splitter.getElement(), "cursor", "n-resize") else: # horizontal split panel self._splitter.setStyleName("hsplitter") self._splitter.setHeight("100%") self._container1.setHeight("100%") self._container2.setHeight("100%") # set drag cursor DOM.setStyleAttribute(self._splitter.getElement(), "cursor", "e-resize")
def __init__(self, text, menuClick, itemClick, classIcon="", rootPanel=None, **kw): Element.__init__(self, Element=DOM.createElement('li'), **kw) ClickHandler.__init__(self) MouseHandler.__init__(self) self.text = text self.itemClick = itemClick self.menuClick = menuClick self.addClickListener(self) self.classIcon = classIcon self.rootPanel = rootPanel self.draw()
def __init__(self, **kwargs): self.glassListeners = [] self.showing = False self.mousehandler = False if not 'StyleName' in kwargs: kwargs['StyleName'] = "gwt-GlassWidget" if 'Element' in kwargs: element = kwargs.pop('Element') else: element = DOM.createDiv() self.setElement(element) Widget.__init__(self, **kwargs) MouseHandler.__init__(self) self.setzIndex(1000000) self.addMouseListener(self)
def __init__(self, element, min_value, max_value, start_value=None, step=None, **kwargs): self.min_value = min_value self.max_value = max_value if start_value is None: start_value = min_value if step is None: step = (self.max_value - self.min_value) / 20 self.step = step self.value = start_value self.valuechange_listeners = [] self.dragging = False self.drag_enabled = False kwargs['TabIndex'] = kwargs.get("TabIndex", 0) FocusWidget.__init__(self, element, **kwargs) MouseHandler.__init__(self) MouseWheelHandler.__init__(self, True) self.addMouseWheelListener(self)
def __init__(self, target, mi, ma, invert=False, horizontal=True): FocusWidget.__init__(self, Element=DOM.createDiv(), StyleName='control_bar') MouseHandler.__init__(self) self.horizontal = horizontal if self.horizontal: self.addStyleName('horizontal_resize') else: self.addStyleName('vertical_resize') self.target = target self.min = mi self.max = ma self.invert = invert self.mouse = 'up' self.vectorX = 0 self.vectorY = 0 self.addMouseListener(self) RootPanel().addMouseListener(self) DOM.sinkEvents( RootPanel().getElement(), ONMOUSEUP | ONMOUSEMOVE | DOM.getEventsSunk(RootPanel().getElement()))
def __init__(self, worksheet, id): SimplePanel.__init__(self) MouseHandler.__init__(self) self._id = id self._worksheet = worksheet insert_new_cell = HTML("", StyleName="insert_new_cell") insert_new_cell.addClickListener(InsertListener(worksheet, self._id)) input_prompt = HTML("In [%d]:" % self._id, Element=DOM.createSpan(), StyleName="input_prompt") cell_input = InputArea(worksheet, self._id, StyleName='cell_input') evaluate_button = HTML("evaluate", Element=DOM.createAnchor(), StyleName="eval_button", Visible=False) evaluate_button.getElement().setAttribute("href", "") evaluate_button.addClickListener(EvaluateListener(self)) evaluate_button.addMouseListener(self) output_delimiter = HTML("", StyleName="output_delimiter") output_prompt = HTML("Out[%d]:" % self._id, Element=DOM.createSpan(), StyleName="output_prompt") cell_output = HTML("", Element=DOM.createSpan(), StyleName="cell_output") output_prompt.setVisible(False) p = FlowPanel(StyleName="cell") p.add(insert_new_cell) p.add(input_prompt) p.add(cell_input) p.add(evaluate_button) p.add(output_delimiter) p.add(output_prompt) p.add(cell_output) self.add(p) self._cell_input = cell_input self._cell_output = cell_output self._output_prompt = output_prompt self._evaluate_button = evaluate_button self._mouse_in = False
def __init__(self, name, blockType, original=True, **kw): Element.__init__(self, Element=DOM.createDiv(), **kw) DragWidget.__init__(self) ClickHandler.__init__(self) MouseHandler.__init__(self) self.blockType = blockType self.addStyleName('block') self.ge = GroupElement() self.addDoubleClickListener(self) self.addMouseListener(self) self.holderArguments = [] self.holderSiblingUp = None self.holderSiblingDown = None self.holderChildren = [] self.isStartingDrag = False self.original = original # identifica se o bloco sera copiado ou movido quando arrastado self.name = name # nome do metodo que criou o bloco self.varName = '' #nome da variavel OU #nome do bloco self.componetHardware = None # nome do harware correspondente, p tratamento de erro self.dropDownVarName = None # combobox para escolher a var ou o comp self.color = None self.blockPad = None self.custom = False # indica se o bloco eh um bloco personalizado self.buttonRightDown = None
def onBrowserEvent(self, event): BooleanArgument.onBrowserEvent(self, event)#serve tb para controlar se pode ou nao encaixar if DOM.eventGetType(event) == "mousedown": if self._event_targets_btn(event): DOM.eventStopPropagation(event) MouseHandler.onBrowserEvent(self, event)
def onBrowserEvent(self, event): StringArgument.onBrowserEvent(self, event) if DOM.eventGetType(event) == "mousedown": if self._event_targets_btn(event): DOM.eventStopPropagation(event) MouseHandler.onBrowserEvent(self, event)
def __init__(self, *args, **kwargs): RootPanelCls.__init__(self, *args, **kwargs) ClickHandler.__init__(self) KeyboardHandler.__init__(self) MouseHandler.__init__(self) DOM.setStyleAttribute(doc().body, 'margin', '0px')
def __init__(self, feedBack, **kw): Element.__init__(self, Element=DOM.createDiv(), **kw) MouseHandler.__init__(self) self.addMouseListener(self) self.feedBack = feedBack