def onModuleLoad(self): self.label = Label("Not set yet") self.button = Button("Probe button", self) self.image_up = Image("./images/logo.png") self.image_up3 = Image("./images/logo.png") self.image_down = Image("./images/logo.png") self.image_down3 = Image("./images/logo.png") self.toggle = ToggleButton(self.image_up, self.image_down, self) self.toggle2 = ToggleButton("up", "down", getattr(self, "onToggleUD")) self.push = PushButton(self.image_up3, self.image_down3) self.vpanel = VerticalPanel() self.togglePanel = HorizontalPanel() self.togglePanel.setSpacing(10) self.togglePanel.add(self.toggle) self.togglePanel.add(self.toggle2) self.togglePanel.add(self.push) self.vpanel.add(self.label) self.vpanel.add(self.button) self.vpanel.add(self.togglePanel) RootPanel().add(self.vpanel) self.i = False
class FilterFeedPanel(AlignedPanel): def __init__(self, onFilter=None, align=0, **kwargs): super(FilterFeedPanel, self).__init__(align, **kwargs) self.content.add(Label('Hide Feeds:', wordWrap=False, StyleName=Styles.TOOLBAR_TEXT)) tbstyle = {'StyleName':Styles.TOOLBAR_TOGGLEBUTTON} self.twitbtn = ToggleButton('Twitter', handler=lambda sndr: onFilter(sndr, self._filterPredicate), **tbstyle) self.content.add(self.twitbtn) self.blogbtn = ToggleButton('Blogs', handler=lambda sndr: onFilter(sndr, self._filterPredicate), **tbstyle) self.content.add(self.blogbtn) self.pubbtn = ToggleButton('Published', handler=lambda sndr: onFilter(sndr, self._filterPredicate), **tbstyle) self.content.add(self.pubbtn) self.dislikebtn = ToggleButton('Disliked', handler=lambda sndr: onFilter(sndr, self._filterPredicate), **tbstyle) self.content.add(self.dislikebtn) self.add(self.content) def _filterPredicate(self, contentitemcell): """Return true if item should be shown, false if item should be filtered out.""" result = True if self.twitbtn.isDown(): istwi = 'twitter.com' in contentitemcell.contentitem['url'] result &= not istwi if self.blogbtn.isDown(): isblog = True result &= not isblog if self.pubbtn.isDown(): ispublished = contentitemcell.contentitem['metadata']['is_published'] result &= not ispublished if self.dislikebtn.isDown(): disliked = contentitemcell.contentitem['metadata']['likes'] < 0 result &= not disliked return result
def __init__(self, onFilter=None, align=0, **kwargs): super(FilterFeedPanel, self).__init__(align, **kwargs) self.content.add(Label('Hide Feeds:', wordWrap=False, StyleName=Styles.TOOLBAR_TEXT)) tbstyle = {'StyleName':Styles.TOOLBAR_TOGGLEBUTTON} self.twitbtn = ToggleButton('Twitter', handler=lambda sndr: onFilter(sndr, self._filterPredicate), **tbstyle) self.content.add(self.twitbtn) self.blogbtn = ToggleButton('Blogs', handler=lambda sndr: onFilter(sndr, self._filterPredicate), **tbstyle) self.content.add(self.blogbtn) self.pubbtn = ToggleButton('Published', handler=lambda sndr: onFilter(sndr, self._filterPredicate), **tbstyle) self.content.add(self.pubbtn) self.dislikebtn = ToggleButton('Disliked', handler=lambda sndr: onFilter(sndr, self._filterPredicate), **tbstyle) self.content.add(self.dislikebtn) self.add(self.content)
def addToggleButton(self, panel, imagep, tip): img = Image(imagep) img.setWidth("20px") img.setHeight("20px") tb = ToggleButton(img) self.addAnyButton(panel, tb, tip) return tb
class Toggle: def onModuleLoad(self): self.label = Label("Not set yet") self.button = Button("Probe button", self) self.image_up = Image("./images/logo.png") self.image_up3 = Image("./images/logo.png") self.image_down = Image("./images/logo.png") self.image_down3 = Image("./images/logo.png") self.toggle = ToggleButton(self.image_up, self.image_down, self) self.toggle2 = ToggleButton("up", "down", getattr(self, "onToggleUD")) self.push = PushButton(self.image_up3, self.image_down3) self.vpanel = VerticalPanel() self.togglePanel = HorizontalPanel() self.togglePanel.setSpacing(10) self.togglePanel.add(self.toggle) self.togglePanel.add(self.toggle2) self.togglePanel.add(self.push) self.vpanel.add(self.label) self.vpanel.add(self.button) self.vpanel.add(self.togglePanel) RootPanel().add(self.vpanel) self.i = False def onToggleUD(self, sender): self.label.setText(" Toggle2 isdown: "+str(self.toggle2.isDown())) def onClick(self, sender): if sender == self.button: if self.i: self.i = False text = ">>>>UP<<<<" self.toggle.setCurrentFace(self.toggle.getUpFace()) else: self.i = True text = ">>>DOWN<<<" self.toggle.setCurrentFace(self.toggle.getDownFace()) #self.label.setText("self.toggle.style_name: "+ # self.toggle.style_name+", self.toggle.getStyleName():"+ # self.toggle.getStyleName()+" ") self.label.setText(text) elif sender == self.toggle: text = ">>>DOWN<<<" if self.i: text = ">>>>UP<<<<" self.i = not self.i self.label.setText(text+" isdown: "+str(self.toggle.isDown()))
class Toggle: def onModuleLoad(self): self.label = Label("Not set yet") self.button = Button("Probe button", self) self.image_up = Image("./images/logo.png") self.image_up3 = Image("./images/logo.png") self.image_down = Image("./images/logo.png") self.image_down3 = Image("./images/logo.png") self.toggle = ToggleButton(self.image_up, self.image_down, self) self.toggle2 = ToggleButton("up", "down", getattr(self, "onToggleUD")) self.push = PushButton(self.image_up3, self.image_down3) self.vpanel = VerticalPanel() self.togglePanel = HorizontalPanel() self.togglePanel.setSpacing(10) self.togglePanel.add(self.toggle) self.togglePanel.add(self.toggle2) self.togglePanel.add(self.push) self.vpanel.add(self.label) self.vpanel.add(self.button) self.vpanel.add(self.togglePanel) RootPanel().add(self.vpanel) self.i = False def onToggleUD(self, sender): self.label.setText(" Toggle2 isdown: " + str(self.toggle2.isDown())) def onClick(self, sender): if sender == self.button: if self.i: self.i = False text = ">>>>UP<<<<" self.toggle.setCurrentFace(self.toggle.getUpFace()) else: self.i = True text = ">>>DOWN<<<" self.toggle.setCurrentFace(self.toggle.getDownFace()) #self.label.setText("self.toggle.style_name: "+ # self.toggle.style_name+", self.toggle.getStyleName():"+ # self.toggle.getStyleName()+" ") self.label.setText(text) elif sender == self.toggle: text = ">>>DOWN<<<" if self.i: text = ">>>>UP<<<<" self.i = not self.i self.label.setText(text + " isdown: " + str(self.toggle.isDown()))
def __init__(self, *args, **kwargs): # set defaults if not 'StyleName' in kwargs: kwargs['StyleName'] = "rjw-HorizontalCollapsePanel" FlowPanel.__init__(self, *args, **kwargs) self._containers = [ ScrollPanel(StyleName = self.getStylePrimaryName() + '-left'), ScrollPanel(StyleName = self.getStylePrimaryName() + '-right'), ] self._collapse_widget = ScrollPanel(StyleName = self.getStylePrimaryName() + '-collapse') collapse_button = ToggleButton(StyleName = self.getStylePrimaryName() + '-collapse-button') collapse_button.addClickListener(self._sync_collapse) self._collapse_widget.add(collapse_button) FlowPanel.add(self, self._containers[0]) FlowPanel.add(self, self._collapse_widget) FlowPanel.add(self, self._containers[1]) self._sync_collapse()
def onClick(self, *args, **kwargs): ToggleButton.onClick(self, *args, **kwargs) self.reporter.compute()
def __init__(self, pin, reporter, *args, **kwargs): self.bit = pin - 2 self.reporter = reporter self.reporter.append(self) ToggleButton.__init__(self, "-Pin %d dim-" % pin, "-Pin %d lit-" % pin, *args, **kwargs)
def createToggleButton(self, img, tip): img = Image(img) tb = ToggleButton(img, img, self) tb.setTitle(tip) return tb