]> git.jsancho.org Git - kivyforms.git/blob - examples/designer.py
More complete example editor
[kivyforms.git] / examples / designer.py
1 from kivy.app import App
2 from kivy.lang import Builder
3 from kivy.uix.button import Button
4 from kivy.uix.label import Label
5 from kivyforms import FormCanvas
6
7 screen = Builder.load_string('''
8 BoxLayout:
9     orientation: 'horizontal'
10     FormCanvas:
11         id: form_canvas
12     BoxLayout:
13         size_hint: 0.2, 1
14         orientation: 'vertical'
15         Button:
16             text: 'Add button'
17             on_press: app.add_button()
18         Button:
19             text: 'Add label'
20             on_press: app.add_label()
21 ''')
22
23 class DesignerApp(App):
24     button_id = 0
25     label_id = 0
26
27     def on_start(self):
28         self.form_canvas = self.root.ids.form_canvas
29
30     def add_button(self):
31         self.button_id += 1
32         self.form_canvas.add_widget(Button(text='Button ' + str(self.button_id)))
33
34     def add_label(self):
35         self.label_id += 1
36         self.form_canvas.add_widget(Label(text='Label ' + str(self.label_id)))
37
38     def build(self):
39         return screen
40
41 if __name__ == '__main__':
42     app = DesignerApp()
43     app.run()