| author | Radek Brich <radek.brich@devl.cz> |
| Sun, 15 Feb 2015 17:50:24 +0100 | |
| changeset 116 | 165b5d65e1cb |
| parent 115 | b4ff7392003a |
| child 117 | 8680c2333546 |
| permissions | -rwxr-xr-x |
|
2
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
1 |
#!/usr/bin/env python3 |
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
2 |
|
|
96
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
3 |
import demobase |
|
2
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
4 |
|
|
96
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
5 |
from tuikit.core.application import Application |
|
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
6 |
#from tuikit.scrollview import ScrollView |
|
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
7 |
from tuikit.widgets.textbox import TextBox |
|
2
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
8 |
|
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
9 |
|
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
10 |
class MyApplication(Application): |
|
106
abcadb7e2ef1
Use Point for mouse events, add them to Container and Widget.
Radek Brich <radek.brich@devl.cz>
parents:
96
diff
changeset
|
11 |
|
|
2
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
12 |
def __init__(self): |
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
13 |
Application.__init__(self) |
|
115
b4ff7392003a
GridLayout: basic implementation.
Radek Brich <radek.brich@devl.cz>
parents:
106
diff
changeset
|
14 |
self.window_manager.sig_keypress.connect(self.on_wm_keypress) |
|
96
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
15 |
#self.top.add_handler('keypress', self.on_top_keypress)
|
|
2
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
16 |
|
|
96
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
17 |
t = open('../tuikit/core/widget.py').read()
|
|
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
18 |
editbox = TextBox(t) |
|
76
fa5301e58eca
Update demo_input, demo_editor. Update ScrollView: show/hide scrollbars as needed on child size requests.
Radek Brich <radek.brich@devl.cz>
parents:
62
diff
changeset
|
19 |
|
|
96
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
20 |
#scroll = ScrollView() |
|
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
21 |
#scroll.add(editbox) |
|
76
fa5301e58eca
Update demo_input, demo_editor. Update ScrollView: show/hide scrollbars as needed on child size requests.
Radek Brich <radek.brich@devl.cz>
parents:
62
diff
changeset
|
22 |
|
|
96
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
23 |
self.root_window.add(editbox) |
|
68c562e0eb1f
Add TextBox, text editor demo. Update demobase.
Radek Brich <radek.brich@devl.cz>
parents:
76
diff
changeset
|
24 |
#self.root_window.add(scroll, halign='fill', valign='fill') |
|
2
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
25 |
|
|
115
b4ff7392003a
GridLayout: basic implementation.
Radek Brich <radek.brich@devl.cz>
parents:
106
diff
changeset
|
26 |
def on_wm_keypress(self, ev): |
|
41
37b7dfc3eae6
Update Emitter: All event handlers now have exactly one argument: object inherited from Event class, which carries any data.
Radek Brich <radek.brich@devl.cz>
parents:
34
diff
changeset
|
27 |
if ev.keyname == 'escape': |
|
115
b4ff7392003a
GridLayout: basic implementation.
Radek Brich <radek.brich@devl.cz>
parents:
106
diff
changeset
|
28 |
self.stop() |
|
45
43b2279b06e1
Clean up Emitter class, simplify event handling. Fix Container.focusnext() method. Add events test (handler auto-registration, order).
Radek Brich <radek.brich@devl.cz>
parents:
41
diff
changeset
|
29 |
return True |
|
2
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
30 |
|
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
31 |
|
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
32 |
if __name__ == '__main__': |
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
33 |
app = MyApplication() |
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
34 |
app.start() |
|
684cdc352562
Menu, Window and other improvements.
Radek Brich <radek.brich@devl.cz>
parents:
diff
changeset
|
35 |