def onContextMenu(self, sender): event = DOM.eventGetCurrentEvent() subMenu = MenuBar(True) subMenu.addItem("<code>Code</code>", True, self) subMenu.addItem("<strike>Strikethrough</strike>", True, self) subMenu.addItem("<u>Underlined</u>", True, self) x = DOM.eventGetClientX(event) + 2 y = DOM.eventGetClientY(event) + 2 popup = ContextMenuPopupPanel(subMenu) popup.showAt(x, y)
def __init__(self): Sink.__init__(self) self.menu = MenuBar() subMenu = MenuBar(True) subMenu.addItem("<code>Code</code>", True, self) subMenu.addItem("<strike>Strikethrough</strike>", True, self) subMenu.addItem("<u>Underlined</u>", True, self) menu0 = MenuBar(True) menu0.addItem("<b>Bold</b>", True, self) menu0.addItem("<i>Italicized</i>", True, self) menu0.addItem("More »", True, subMenu) menu1 = MenuBar(True) menu1.addItem("<font color='#FF0000'><b>Apple</b></font>", True, self) menu1.addItem("<font color='#FFFF00'><b>Banana</b></font>", True, self) menu1.addItem("<font color='#FFFFFF'><b>Coconut</b></font>", True, self) menu1.addItem("<font color='#8B4513'><b>Donut</b></font>", True, self) menu2 = MenuBar(True) menu2.addItem("Bling", self) menu2.addItem("Ginormous", self) menu2.addItem("<code>w00t!</code>", True, self) self.menu.addItem(MenuItem("Style", menu0)) self.menu.addItem(MenuItem("Fruit", menu1)) self.menu.addItem(MenuItem("Term", menu2)) self.menu.setWidth("100%") self.panel = VerticalPanel() self.context = HTML("""Right-Click me<br/>to show a context menu.<br /> Left-click me<br />to do absolutely nothing.""") self.panel.add(self.menu) self.panel.add(self.context) self.initWidget(self.panel) self.context.setContextMenu(self)
class Menus(Sink): def __init__(self): Sink.__init__(self) self.menu = MenuBar() subMenu = MenuBar(True) subMenu.addItem("<code>Code</code>", True, self) subMenu.addItem("<strike>Strikethrough</strike>", True, self) subMenu.addItem("<u>Underlined</u>", True, self) menu0 = MenuBar(True) menu0.addItem("<b>Bold</b>", True, self) menu0.addItem("<i>Italicized</i>", True, self) menu0.addItem("More »", True, subMenu) menu1 = MenuBar(True) menu1.addItem("<font color='#FF0000'><b>Apple</b></font>", True, self) menu1.addItem("<font color='#FFFF00'><b>Banana</b></font>", True, self) menu1.addItem("<font color='#FFFFFF'><b>Coconut</b></font>", True, self) menu1.addItem("<font color='#8B4513'><b>Donut</b></font>", True, self) menu2 = MenuBar(True) menu2.addItem("Bling", self) menu2.addItem("Ginormous", self) menu2.addItem("<code>w00t!</code>", True, self) self.menu.addItem(MenuItem("Style", menu0)) self.menu.addItem(MenuItem("Fruit", menu1)) self.menu.addItem(MenuItem("Term", menu2)) self.menu.setWidth("100%") self.panel = VerticalPanel() self.context = HTML("""Right-Click me<br/>to show a context menu.<br /> Left-click me<br />to do absolutely nothing.""") self.panel.add(self.menu) self.panel.add(self.context) self.initWidget(self.panel) self.context.setContextMenu(self) def onContextMenu(self, sender): event = DOM.eventGetCurrentEvent() subMenu = MenuBar(True) subMenu.addItem("<code>Code</code>", True, self) subMenu.addItem("<strike>Strikethrough</strike>", True, self) subMenu.addItem("<u>Underlined</u>", True, self) x = DOM.eventGetClientX(event) + 2 y = DOM.eventGetClientY(event) + 2 popup = ContextMenuPopupPanel(subMenu) popup.showAt(x, y) def execute(self): Window.alert("Thank you for selecting a menu item.") def onShow(self): pass
def __init__(self): try: MenuBar.__init__(self, vertical=False) self.mFileOpen = MenuCmd() self.mFileSaveAs = MenuCmd() self.mFilePreferences = MenuCmd() self.mViewEdit = MenuCmd() self.mViewSummary = MenuCmd() self.mHelpContents = MenuCmd() self.mHelpAbout = MenuCmd() menuFile = MenuBar(vertical=True) menuFile.addItem("Open ...", self.mFileOpen) menuFile.addItem("Save as ...", self.mFileSaveAs) menuFile.addItem("Preferences", self.mFilePreferences) self.addItem(MenuItem("File", menuFile)) menuView = MenuBar(vertical=True) menuView.addItem("Edit", self.mViewEdit) menuView.addItem("Summary", self.mViewSummary) self.addItem(MenuItem("View", menuView)) menuHelp = MenuBar(vertical=True) menuHelp.addItem("Contents", self.mHelpContents) menuHelp.addItem("About", self.mHelpAbout) self.addItem(MenuItem("Help", menuHelp)) except: raise
def __init__(self): Sink.__init__(self) text="""This is a <code>ScrollPanel</code> contained at the center of a <code>DockPanel</code>. By putting some fairly large contents in the middle and setting its size explicitly, it becomes a scrollable area within the page, but without requiring the use of an IFRAME. Here's quite a bit more meaningless text that will serve primarily to make this thing scroll off the bottom of its visible area. Otherwise, you might have to make it really, really small in order to see the nifty scroll bars!""" contents = HTML(text) scroller = ScrollPanel(contents, StyleName="ks-layouts-Scroller") dock = DockPanel(HorizontalAlignment=HasAlignment.ALIGN_CENTER, Spacing=10) north0 = HTML("This is the <i>first</i> north component", True) east = HTML("<center>This<br>is<br>the<br>east<br>component</center>", True) south = HTML("This is the south component") west = HTML("<center>This<br>is<br>the<br>west<br>component</center>", True) north1 = HTML("This is the <b>second</b> north component", True) dock.add(north0, DockPanel.NORTH) dock.add(east, DockPanel.EAST) dock.add(south, DockPanel.SOUTH) dock.add(west, DockPanel.WEST) dock.add(north1, DockPanel.NORTH) dock.add(scroller, DockPanel.CENTER) #Logger.write("Layouts", "TODO: flowpanel") flow = FlowPanel() for i in range(8): flow.add(CheckBox("Flow %d" % i)) horz = HorizontalPanel(VerticalAlignment=HasAlignment.ALIGN_MIDDLE) horz.add(Button("Button")) horz.add(HTML("<center>This is a<br>very<br>tall thing</center>", True)) horz.add(Button("Button")) vert = VerticalPanel(HorizontalAlignment=HasAlignment.ALIGN_CENTER) vert.add(Button("Small")) vert.add(Button("--- BigBigBigBig ---")) vert.add(Button("tiny")) menu = MenuBar() menu0 = MenuBar(True) menu1 = MenuBar(True) menu.addItem("menu0", menu0) menu.addItem("menu1", menu1) menu0.addItem("child00") menu0.addItem("child01") menu0.addItem("child02") menu1.addItem("child10") menu1.addItem("child11") menu1.addItem("child12") #Logger.write("Layouts", "TODO: htmlpanel") id = HTMLPanel.createUniqueId() text="""This is an <code>HTMLPanel</code>. It allows you to add components inside existing HTML, like this: <span id='%s' /> Notice how the menu just fits snugly in there? Cute.""" % id html = HTMLPanel(text) DOM.setStyleAttribute(menu.getElement(), "display", "inline") html.add(menu, id) disclose = DisclosurePanel("Click to disclose") disclose.add(HTML("""<b>Ta-daaaaa!</b><br />Ok - it could have been<br />more of a surprise.""")) panel = VerticalPanel(Spacing=8, HorizontalAlignment=HasAlignment.ALIGN_CENTER) panel.add(self.makeLabel("Dock Panel")) panel.add(dock) panel.add(self.makeLabel("Flow Panel")) panel.add(flow) panel.add(self.makeLabel("Horizontal Panel")) panel.add(horz) panel.add(self.makeLabel("Vertical Panel")) panel.add(vert) panel.add(self.makeLabel("HTML Panel")) panel.add(html) panel.add(self.makeLabel("Disclosure Panel")) panel.add(disclose) self.initWidget(panel) self.setStyleName("ks-layouts")
def __init__(self): Sink.__init__(self) text = """This is a <code>ScrollPanel</code> contained at the center of a <code>DockPanel</code>. By putting some fairly large contents in the middle and setting its size explicitly, it becomes a scrollable area within the page, but without requiring the use of an IFRAME. Here's quite a bit more meaningless text that will serve primarily to make this thing scroll off the bottom of its visible area. Otherwise, you might have to make it really, really small in order to see the nifty scroll bars!""" contents = HTML(text) scroller = ScrollPanel(contents, StyleName="ks-layouts-Scroller") dock = DockPanel(HorizontalAlignment=HasAlignment.ALIGN_CENTER, Spacing=10) north0 = HTML("This is the <i>first</i> north component", True) east = HTML("<center>This<br>is<br>the<br>east<br>component</center>", True) south = HTML("This is the south component") west = HTML("<center>This<br>is<br>the<br>west<br>component</center>", True) north1 = HTML("This is the <b>second</b> north component", True) dock.add(north0, DockPanel.NORTH) dock.add(east, DockPanel.EAST) dock.add(south, DockPanel.SOUTH) dock.add(west, DockPanel.WEST) dock.add(north1, DockPanel.NORTH) dock.add(scroller, DockPanel.CENTER) #Logger.write("Layouts", "TODO: flowpanel") flow = FlowPanel() for i in range(8): flow.add(CheckBox("Flow %d" % i)) horz = HorizontalPanel(VerticalAlignment=HasAlignment.ALIGN_MIDDLE) horz.add(Button("Button")) horz.add(HTML("<center>This is a<br>very<br>tall thing</center>", True)) horz.add(Button("Button")) vert = VerticalPanel(HorizontalAlignment=HasAlignment.ALIGN_CENTER) vert.add(Button("Small")) vert.add(Button("--- BigBigBigBig ---")) vert.add(Button("tiny")) menu = MenuBar() menu0 = MenuBar(True) menu1 = MenuBar(True) menu.addItem("menu0", menu0) menu.addItem("menu1", menu1) menu0.addItem("child00") menu0.addItem("child01") menu0.addItem("child02") menu1.addItem("child10") menu1.addItem("child11") menu1.addItem("child12") #Logger.write("Layouts", "TODO: htmlpanel") id = HTMLPanel.createUniqueId() text = """This is an <code>HTMLPanel</code>. It allows you to add components inside existing HTML, like this: <span id='%s' /> Notice how the menu just fits snugly in there? Cute.""" % id html = HTMLPanel(text) DOM.setStyleAttribute(menu.getElement(), "display", "inline") html.add(menu, id) disclose = DisclosurePanel("Click to disclose") disclose.add( HTML("""<b>Ta-daaaaa!</b><br />Ok - it could have been<br />more of a surprise.""")) panel = VerticalPanel(Spacing=8, HorizontalAlignment=HasAlignment.ALIGN_CENTER) panel.add(self.makeLabel("Dock Panel")) panel.add(dock) panel.add(self.makeLabel("Flow Panel")) panel.add(flow) panel.add(self.makeLabel("Horizontal Panel")) panel.add(horz) panel.add(self.makeLabel("Vertical Panel")) panel.add(vert) panel.add(self.makeLabel("HTML Panel")) panel.add(html) panel.add(self.makeLabel("Disclosure Panel")) panel.add(disclose) self.initWidget(panel) self.setStyleName("ks-layouts")
def __init__(self, game): self.game = game super(MineMenuBar, self).__init__() body = doc().getElementsByTagName('body').item(0) body.setAttribute('id', 'Beginner') menu_game = MenuBar(True) menu_game.addItem('New', MenuCmd(self, 'New')) menu_game.addItem(self.span_text('Beginner'), True, \ MenuCmd(self, 'Beginner')) menu_game.addItem(self.span_text('Intermediate'), True, \ MenuCmd(self, 'Intermediate')) menu_game.addItem(self.span_text('Expert'), True, \ MenuCmd(self, 'Expert')) menu_game.addItem(self.span_text('Custom'), True, \ MenuCmd(self, 'Custom')) menu_help = MenuBar(True) #menu_help.addItem('Instructions', MenuCmd(self, 'Instructions')) menu_help.addItem('About', MenuCmd(self, 'About')) self.addItem(MenuItem('Game', menu_game)) self.addItem(MenuItem('Help', menu_help))
def __init__(self, game): self.game = game super(MineMenuBar, self).__init__() body = doc().getElementsByTagName("body").item(0) body.setAttribute("id", "Beginner") menu_game = MenuBar(True) menu_game.addItem("New", MenuCmd(self, "New")) menu_game.addItem(self.span_text("Beginner"), True, MenuCmd(self, "Beginner")) menu_game.addItem(self.span_text("Intermediate"), True, MenuCmd(self, "Intermediate")) menu_game.addItem(self.span_text("Expert"), True, MenuCmd(self, "Expert")) menu_game.addItem(self.span_text("Custom"), True, MenuCmd(self, "Custom")) menu_help = MenuBar(True) # menu_help.addItem('Instructions', MenuCmd(self, 'Instructions')) menu_help.addItem("About", MenuCmd(self, "About")) self.addItem(MenuItem("Game", menu_game)) self.addItem(MenuItem("Help", menu_help))
def __init__(self): try: MenuBar.__init__(self, vertical=False) menuFile = MenuBar(vertical=True) menuFile.addItem("Open ...", MenuCmd(self, "onOpen")) menuFile.addItem("Save as ...", MenuCmd(self, "onSaveAs")) menuFile.addItem("Preferences", MenuCmd(self, "onPreferences")) self.addItem(MenuItem("File", menuFile)) menuView = MenuBar(vertical=True) menuView.addItem("Edit", MenuCmd(self, "onEdit")) menuView.addItem("Summary", MenuCmd(self, "onSummary")) self.addItem(MenuItem("View", menuView)) menuHelp = MenuBar(vertical=True) menuHelp.addItem("Contents", MenuCmd(self, "onContents")) menuHelp.addItem("About", MenuCmd(self, "onAbout")) self.addItem(MenuItem("Help", menuHelp)) except: raise
def __init__(self): SimplePanel.__init__(self) menu1 = MenuBar(vertical=True) menu1.addItem("Item 1", MenuCmd(self, "onMenu1Item1")) menu1.addItem("Item 2", MenuCmd(self, "onMenu1Item2")) menu2 = MenuBar(vertical=True) menu2.addItem("Apples", MenuCmd(self, "onMenu2Apples")) menu2.addItem("Oranges", MenuCmd(self, "onMenu2Oranges")) menubar = MenuBar(vertical=False) menubar.addItem(MenuItem("Menu 1", menu1)) menubar.addItem(MenuItem("<i>Menu 2</i>", True, menu2)) self.add(menubar)