def resize(self, w, h): Base.resize(self, w, h) self.vscroll.resize(11, h-10) self.vscroll.moveto(w-10, 0) self.hscroll.resize(w-10, 11) self.hscroll.moveto(0, h-10) self.updateScrollBars()
def destroy(self): for menu in self.menus: menu.destroy() del menu self.menus = None self.hitList = None Base.destroy(self)
def setDirty(self, collide = 1): #self.dirty = 1 if self.dirty: return if collide: getDesktop().dirtyCollidingWindows(self.rect) Base.setDirty(self)
def __init__(self, onSelected = None, onDouble = None): Base.__init__(self) self.items = [] if self.font: font = self.font else: font = getTheme().defaultFont self.numVisible = self.height / ( font.getTextSize("x")[1] ) self.numItems = 0 self.topItem = 0 self.selected = -1 self.vscroll = VScroll() self.addChild(self.vscroll) self.registerEvent(pyui2.locals.SCROLLPOS, self._pyui2ScrollPos) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2LButtonDown) self.registerEvent(pyui2.locals.RMOUSEBUTTONDOWN, self._pyui2LButtonDown) self.registerEvent(pyui2.locals.LMOUSEBUTTONUP, self._pyui2LButtonUp) self.registerEvent(pyui2.locals.RMOUSEBUTTONUP, self._pyui2LButtonUp) self.registerEvent(pyui2.locals.LMOUSEDBLCLICK, self._pyui2DoubleClick) self.registerEvent(pyui2.locals.LIST_SELECTED, self._pyui2SelectEvent) self.registerEvent(pyui2.locals.LIST_DBLCLICK, self._pyui2DoubleEvent) self.resize(100,100) self.selectHandler = onSelected self.doubleHandler = onDouble
def __init__( self, text = '' ): Base.__init__(self) self.text = text self.caretPos = 0 self.selectPos = 0 self.dragging = 0 self.readonly = 0 self.font = getTheme().getProperty("DEFAULT FONT") #self.font = getRenderer().createFont("courier", 12, 0) self.scroll = 0, 0 self.vscroll = pyui2.widgets.VScroll() self.addChild( self.vscroll ) self.hscroll = pyui2.widgets.HScroll() self.addChild( self.hscroll ) self.registerEvent(pyui2.locals.SCROLLPOS, self._pyui2ScrollPos) self.registerEvent(pyui2.locals.KEYDOWN, self._pyui2KeyDown) self.registerEvent(pyui2.locals.KEYUP, self._pyui2KeyUp) self.registerEvent(pyui2.locals.CHAR, self._pyui2Char) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.registerEvent(pyui2.locals.LMOUSEBUTTONUP, self._pyui2MouseUp) self.registerEvent(pyui2.locals.MOUSEMOVE, self._pyui2MouseMotion) self.registerEvent(pyui2.locals.CLICKED, self._pyui2Clicked) self.resize( 100, 100 )
def __init__(self, text, closeBtn = True, minimizeBtn = False, maximizeBtn = False): Base.__init__(self) self.setText(text) self.closeBtn = closeBtn self.minimizeBtn = minimizeBtn self.maximizeBtn = maximizeBtn self.moving = False self.mouseDown = False self.captionCursorSet = False self._closeBtn = None if self.closeBtn == True: self._closeBtn = CloseButton(self.onCloseButton) self.addChild(self._closeBtn) self._minimizeBtn = None if self.minimizeBtn == True: self._minimizeBtn = MinimizeButton(self.onMinimizeButton) self.addChild(self._minimizeBtn) self._maximizeBtn = None if self.maximizeBtn == True: self._maximizeBtn = MaximizeButton(self.onMaximizeButton) self.addChild(self._maximizeBtn) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.registerEvent(pyui2.locals.LMOUSEBUTTONUP, self._pyui2MouseUp) self.registerEvent(pyui2.locals.MOUSEMOVE, self._pyui2MouseMotion)
def resize(self, w, h): if w < 64: w = 64 if h < 64: h = 64 Base.resize(self, w, h) self.calcInnerRect() self.placeInnerObjects()
def __init__(self, text, color = None, font = None, shadow=0, align=0): Base.__init__(self) self.font = font self.shadow = shadow self.align = align self.color = color self.setText(text) self.border = False
def __init__(self, text, buttonGroup, onCheck = None, checked=0): Base.__init__(self) self.checkState = checked self.text = text self._pyui2Check = onCheck self.buttonGroup = buttonGroup self.buttonGroup.addRadioButton(self) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown)
def resize(self, w, h): Base.resize(self, w, h) if self.font: font = self.font else: font = getTheme().defaultFont self.numVisible = int (self.height / font.getTextSize("x")[1] ) self.vscroll.setNumItems(self.numItems, self.numVisible) self.vscroll.resize(getTheme().getScrollerSize(), h) self.vscroll.moveto(self.posX + w - getTheme().getScrollerSize(), self.posY)
def __init__(self, numVisible = 5, onSelected = None, listItems = None, selection = None, editable = True): Base.__init__(self) self.numVisible = numVisible self.selectionList = ListBox(self._pyui2SelectedEvent) self.selectionList.setShow(0) self.addChild(self.selectionList) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.selectHandler = onSelected self.addItems(listItems) self.setSelectedItem(selection)
def __init__(self, onSlide=None, range = 1, initialPos = 1): self.range = range self.position = initialPos self.sliding = 0 self.slidePos = 0 self.stepInterval = 1 self._pyui2Slide = onSlide Base.__init__(self) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.registerEvent(pyui2.locals.LMOUSEBUTTONUP, self._pyui2MouseUp) self.registerEvent(pyui2.locals.MOUSEMOVE, self._pyui2MouseMotion)
def setShow(self, show): if show: self.getFocus() self.recalcSize() if self.subActive: self.subActive.setShow(0) self.subActive = None self.active = None Base.setShow(self,show)
def __init__(self): Base.__init__(self) self.resize( 0, getTheme().defaultTextHeight + 4 ) self.setShow(1) self.menus = [] self.hitList = [] self.active = None self.highlight = None self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.registerEvent(pyui2.locals.LMOUSEBUTTONUP, self._pyui2MouseUp) self.registerEvent(pyui2.locals.MOUSEMOVE, self._pyui2MouseMotion) self.registerEvent(pyui2.locals.MENU_EXIT, self._pyui2MenuExit)
def setCaptionBar(self, captionBar): if self._captionBar: Base.removeChild(self, self._captionBar) self._captionBar = captionBar Base.addChild(self, self._captionBar) self._captionBar.setWindow(self) self._captionBar.moveto(self.theme.getFrameBorderLeft(), self.theme.getFrameBorderTop()) self._captionBar.resize(self.innerRect[2], self._captionBar.height) self.calcInnerRect() self.placeInnerObjects()
def __init__(self, callback): Base.__init__(self) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.registerEvent(pyui2.locals.KEYDOWN, self._pyui2KeyDown) self.callback = callback self.activeTab = None self.lScroll = TabScrollButton(TabScrollButton.DIRECT_LEFT, self.moveTabsLeft) self.rScroll = TabScrollButton(TabScrollButton.DIRECT_RIGHT, self.moveTabsRight) self.addChild(self.lScroll) self.addChild(self.rScroll) self.needScrollButtons = False self.tabButtons = [] self.firstVisibleTab = 0
def replacePanel(self, panel): for c in self.children: if c.id == self._panel.id: self.children.remove(c) self._panel = panel Base.addChild(self, self._panel) self._panel.setWindow(self) self.calcInnerRect() self.placeInnerObjects() self._panel.moveto(self.innerRect[0], self.innerRect[1]) self._panel.resize(self.innerRect[2], self.innerRect[3]) self._panel.calcInnerRect() self._panel.placeInnerObjects()
def __init__(self): Base.__init__(self) self.selectedNode = None self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self.onMouseDown) self.registerEvent(pyui2.locals.SCROLLPOS, self.onScrollPos) self.registerEvent(pyui2.locals.TREENODE_SELECTED, self.onSelection) self.vscroll = pyui2.widgets.VScroll() self.addChild(self.vscroll) self.top = 0 self.numNodes = 0 #number of visible nodes self.topNode = TreeNode(None, None) self.topNode.tree = self self.topNode.parent = None self.topNode.status = Tree.OPEN self.drawRootNode = False
def __init__(self): self.scrollPos = 0 # pixel position of scroll bar self.currentItem = 0 self.status = 0 self.barSize = 1 self.barSpace = 1 self.numItems = 1 self.numVisible = 1 self.interval = 1 Base.__init__(self) self.setupBar() self.setupPos() self.start = 0 self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.registerEvent(pyui2.locals.LMOUSEBUTTONUP, self._pyui2MouseUp) self.registerEvent(pyui2.locals.MOUSEMOVE, self._pyui2MouseMotion)
def addChild(self, child, option = None): if child.getID() == "": self.createChildID(child) Base.addChild(self, child) self.childOptions[child.id] = option if child.width > self.width: self.width = child.width if child.height > self.height: self.height = child.height # panel cannot be larger than parent if self.parent: if self.width > self.parent.width: self.width = self.parent.width if self.height > self.parent.height: self.height = self.parent.height
def __init__(self, x, y, w, h, topmost = 0): self._panel = Panel() Base.__init__(self) self.topMost = topmost # the content panel is added as a child through Base::addChild to avoid recursively adding it to itself Base.addChild(self, self._panel) self._panel.setWindow(self) self._panel.setParent(self) self.placeInnerObjects() self.drawCommands = [] # these are drawing callbacks to draw _after_ all the widgets are drawn self.drawLastCallbacks = [] self.moveto(x, y) self.resize(w, h) getDesktop().addWindow(self) # Create the graphics context that will be used to display this window self.graphicsContext = getPresenter().getDeviceContext().createGraphicsContext((w, h))
def __init__(self, text, handler = None, font=None, shadow=0, fgColor=None, bgColor=None, roColor=None): Base.__init__(self) self.handler = handler self.font=font self.shadow=shadow self.fgColor=fgColor self.bgColor=bgColor self.roColor=roColor self.setText(text) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.registerEvent(pyui2.locals.LMOUSEBUTTONUP, self._pyui2MouseUp) self.registerEvent(pyui2.locals.KEYDOWN, self._pyui2KeyDown) self.registerEvent(pyui2.locals.KEYUP, self._pyui2KeyUp) self.registerEvent(pyui2.locals.MOUSEMOVE, self._pyui2MouseMotion) self.registerEvent(pyui2.locals.CLICKED, self._pyui2Clicked) self.status = Button.IDLE self.capture = 0 self.enabled = 1 self.tooltipText = text
def __init__(self,text, maxSize, handler = None, readOnly = 0): Base.__init__(self) self.handler = handler self.caretPos = None self.selectPos = None self.setText(text) self.dragging = 0 self.maxSize = maxSize self.readOnly = readOnly self.font = getTheme().getAggProperty(("EDIT", "font")) if self.font == None: self.font = getTheme().getProperty("DEFAULT FONT") self.resize(self.width, int(self.font.getTextSize("x")[1] * 1.5) ) #print "Edit widget sized to", self.width, self.height self.registerEvent(pyui2.locals.KEYDOWN, self._pyui2KeyDown) self.registerEvent(pyui2.locals.CHAR, self._pyui2Char) self.registerEvent(pyui2.locals.LMOUSEBUTTONDOWN, self._pyui2MouseDown) self.registerEvent(pyui2.locals.LMOUSEBUTTONUP, self._pyui2MouseUp) self.registerEvent(pyui2.locals.MOUSEMOVE, self._pyui2MouseMotion) self.registerEvent(pyui2.locals.CLICKED, self._pyui2Clicked)
def resize(self, w, h): """ resize absolute size of the widget """ Base.resize(self, w, h) self.placeInnerObjects()
def move(self, dx, dy): """move relative to current position. """ Base.move(self, dx, dy) self.placeInnerObjects()
def moveto(self, x, y): """move to absolute position. """ Base.moveto(self, x, y) self.placeInnerObjects()
def __init__(self): Base.__init__(self) self.childOptions = {} self.widgetIDs = {} self.registerEvent(pyui2.locals.KEYDOWN, self._pyui2KeyDown) self.setLayout(layouts.FlowLayoutManager())
def destroy(self): del self.layout self.layout = None Base.destroy(self)
def resize(self, w, h): Base.resize(self, w, h) self.pack()
def resize(self, w, h): Base.resize(self, w, h) self.vscroll.moveto(self.posX + self.width - 10, self.posY) self.vscroll.resize(10, self.height) self.vscroll.setNumItems(self.numNodes, self.height / itemHeight)