Mercurial > libervia-desktop-kivy
diff src/libs/garden/garden.contextmenu/examples/simple_app_menu.py @ 83:741a7d6d8c28
garden: added contextmenu
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 24 Dec 2016 14:16:58 +0100 |
parents | |
children | c439c271ecdd |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/libs/garden/garden.contextmenu/examples/simple_app_menu.py Sat Dec 24 14:16:58 2016 +0100 @@ -0,0 +1,84 @@ +import kivy +from kivy.app import App +from kivy.lang import Builder +from kivy.logger import Logger +import logging + +kivy.require('1.9.0') +# Logger.setLevel(logging.DEBUG) + +import kivy.garden.contextmenu + + +kv = """ +FloatLayout: + id: layout + AppMenu: + id: app_menu + top: root.height + cancel_handler_widget: layout + + AppMenuTextItem: + text: "Menu #1" + ContextMenu: + ContextMenuTextItem: + text: "Item #11" + ContextMenuTextItem: + text: "Item #12" + AppMenuTextItem: + text: "Menu Menu Menu #2" + ContextMenu: + ContextMenuTextItem: + text: "Item #21" + ContextMenuTextItem: + text: "Item #22" + ContextMenuTextItem: + text: "ItemItemItem #23" + ContextMenuTextItem: + text: "Item #24" + ContextMenu: + ContextMenuTextItem: + text: "Item #241" + ContextMenuTextItem: + text: "Hello, World!" + on_release: app.say_hello(self.text) + ContextMenuTextItem: + text: "Item #243" + ContextMenuTextItem: + text: "Item #244" + ContextMenuTextItem: + text: "Item #5" + AppMenuTextItem: + text: "Menu Menu #3" + ContextMenu: + ContextMenuTextItem: + text: "SubMenu #31" + ContextMenuTextItem: + text: "SubMenu #32" + ContextMenuTextItem: + text: "SubMenu #33" + ContextMenuDivider: + ContextMenuTextItem: + text: "SubMenu #34" + AppMenuTextItem: + text: "Menu #4" + + Label: + pos: 10, 10 + text: "Left click anywhere outside the context menu to close it" + size_hint: None, None + size: self.texture_size +""" + +class MyApp(App): + + def build(self): + self.title = 'Simple app menu example' + return Builder.load_string(kv) + + def say_hello(self, text): + print(text) + self.root.ids['app_menu'].close_all() + +if __name__ == '__main__': + MyApp().run() \ No newline at end of file