def __init__(self, c): PopupPanel.__init__(self, True) p = SimplePanel() p.add(c) c.show(10, 10) p.setWidth("100%") self.setWidget(p)
def __init__(self, c): PopupPanel.__init__(self, True) p = SimplePanel() p.add(c) c.show(10,10) p.setWidth("100%") self.setWidget(p)
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 __init__(self, autoHide=None, modal=True, **kwargs): PopupPanel.__init__(self, autoHide, modal, **kwargs) self.caption = HTML() self.child = None self.dragging = False self.dragStartX = 0 self.dragStartY = 0 self.panel = FlexTable(Height="100%", BorderWidth="0", CellPadding="0", CellSpacing="0") self.panel.setWidget(0, 0, self.caption) self.panel.getCellFormatter().setHeight(1, 0, "100%") self.panel.getCellFormatter().setWidth(1, 0, "100%") self.panel.getCellFormatter().setAlignment(1, 0, HasHorizontalAlignment.ALIGN_CENTER, HasVerticalAlignment.ALIGN_MIDDLE) PopupPanel.setWidget(self, self.panel) self.setStyleName("gwt-DialogBox") self.caption.setStyleName("Caption") self.caption.addMouseListener(self)
def __init__(self, **kwargs): self.choicesPopup = PopupPanel(True, False) self.choices = ListBox() self.items = SimpleAutoCompletionItems() self.popupAdded = False self.visible = False self.choices.addClickListener(self) self.choices.addChangeListener(self) self.choicesPopup.add(self.choices) self.choicesPopup.addStyleName("AutoCompleteChoices") self.choices.setStyleName("list") if not kwargs.has_key('StyleName'): kwargs['StyleName']="gwt-AutoCompleteTextBox" TextBox.__init__(self, **kwargs) self.addKeyboardListener(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 __init__(self, sender, offsetX, offsetY, contents, show_delay, hide_delay, styleName, **kwargs): """ contents may be a text string or it may be a widget """ PopupPanel.__init__(self, True, **kwargs) self.show_delay = show_delay self.hide_delay = hide_delay if isinstance(contents, str): contents = HTML(contents) self.add(contents) left = sender.getAbsoluteLeft() + offsetX top = sender.getAbsoluteTop() + offsetY self.setPopupPosition(left, top) self.setStyleName(styleName) if tooltip_hide_timer: self.tooltip_show_timer = Timer(1, self) else: self.tooltip_show_timer = Timer(self.show_delay, self)
def __init__(self, autoHide=None, modal=True, **kwargs): PopupPanel.__init__(self, autoHide, modal, **kwargs) self.caption = HTML() self.child = None self.dragging = False self.dragStartX = 0 self.dragStartY = 0 self.panel = FlexTable(Height="100%", BorderWidth="0", CellPadding="0", CellSpacing="0") self.panel.setWidget(0, 0, self.caption) self.panel.getCellFormatter().setHeight(1, 0, "100%") self.panel.getCellFormatter().setWidth(1, 0, "100%") self.panel.getCellFormatter().setAlignment( 1, 0, HasHorizontalAlignment.ALIGN_CENTER, HasVerticalAlignment.ALIGN_MIDDLE) PopupPanel.setWidget(self, self.panel) self.setStyleName("gwt-DialogBox") self.caption.setStyleName("Caption") self.caption.addMouseListener(self)
def __init__(self, item, **kwargs): self.item = item kwargs['Widget'] = item PopupPanel.__init__(self, True, **kwargs)
def hide(self, autoClosed=False): self.tooltip_show_timer.cancel() PopupPanel.hide(self, autoClosed)
def __init__(self, item, **kwargs): self.item = item kwargs['Widget'] = item.getSubMenu() PopupPanel.__init__(self, True, **kwargs) item.getSubMenu().onShow()
def doAttachChildren(self): PopupPanel.doAttachChildren(self) self.caption.onAttach()
def doDetachChildren(self): PopupPanel.doDetachChildren(self) self.caption.onDetach()
def show(self): global tooltip_hide_timer # activate fast tooltips tooltip_hide_timer = Timer(self.hide_delay, self) PopupPanel.show(self)
class AutoCompleteTextBox(TextBox): def __init__(self, **kwargs): self.choicesPopup = PopupPanel(True, False) self.choices = ListBox() self.items = SimpleAutoCompletionItems() self.popupAdded = False self.visible = False self.choices.addClickListener(self) self.choices.addChangeListener(self) self.choicesPopup.add(self.choices) self.choicesPopup.addStyleName("AutoCompleteChoices") self.choices.setStyleName("list") if not kwargs.has_key('StyleName'): kwargs['StyleName']="gwt-AutoCompleteTextBox" TextBox.__init__(self, **kwargs) self.addKeyboardListener(self) def setCompletionItems(self, items): if not hasattr(items, 'getCompletionItems'): items = SimpleAutoCompletionItems(items) self.items = items def getCompletionItems(self): return self.items def onKeyDown(self, arg0, arg1, arg2): pass def onKeyPress(self, arg0, arg1, arg2): pass def onKeyUp(self, arg0, arg1, arg2): if arg1 == KeyboardListener.KEY_DOWN: selectedIndex = self.choices.getSelectedIndex() selectedIndex += 1 if selectedIndex > self.choices.getItemCount(): selectedIndex = 0 self.choices.setSelectedIndex(selectedIndex) return if arg1 == KeyboardListener.KEY_UP: selectedIndex = self.choices.getSelectedIndex() selectedIndex -= 1 if selectedIndex < 0: selectedIndex = self.choices.getItemCount() self.choices.setSelectedIndex(selectedIndex) return if arg1 == KeyboardListener.KEY_ENTER: if self.visible: self.complete() return if arg1 == KeyboardListener.KEY_ESCAPE: self.choices.clear() self.choicesPopup.hide() self.visible = False return text = self.getText() matches = [] if len(text) > 0: matches = self.items.getCompletionItems(text) if len(matches) > 0: self.choices.clear() for i in range(len(matches)): self.choices.addItem(matches[i]) if len(matches) == 1 and matches[0] == text: self.choicesPopup.hide() else: self.choices.setSelectedIndex(0) self.choices.setVisibleItemCount(len(matches) + 1) if not self.popupAdded: RootPanel().add(self.choicesPopup) self.popupAdded = True self.choicesPopup.show() self.visible = True self.choicesPopup.setPopupPosition(self.getAbsoluteLeft(), self.getAbsoluteTop() + self.getOffsetHeight()) self.choices.setWidth("%dpx" % self.getOffsetWidth()) else: self.visible = False self.choicesPopup.hide() def onChange(self, arg0): self.complete() def onClick(self, arg0): self.complete() def complete(self): if self.choices.getItemCount() > 0: self.setText(self.choices.getItemText(self.choices.getSelectedIndex())) self.choices.clear() self.choicesPopup.hide() self.setFocus(True)