Update demo_input, demo_editor. Update ScrollView: show/hide scrollbars as needed on child size requests.
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import locale
locale.setlocale(locale.LC_ALL, '')
from tuikit.application import Application
from tuikit.scrollview import ScrollView
from tuikit.editbox import EditBox
class MyApplication(Application):
def __init__(self):
Application.__init__(self)
self.text = ''
self.editbox = EditBox(self.text)
scroll = ScrollView()
scroll.add(self.editbox)
self.top.add(scroll, halign='fill', valign='fill')
self.editbox.add_handler('keypress', self.on_any_input)
self.editbox.add_handler('mousedown', self.on_any_input)
self.editbox.add_handler('mouseup', self.on_any_input)
self.editbox.add_handler('mousewheel', self.on_any_input)
self.editbox.add_handler('mousemove', self.on_any_input)
self.editbox.add_handler('mousehover', self.on_any_input)
def on_any_input(self, ev):
if ev.event_name == 'keypress' and ev.keyname == 'escape':
self.terminate()
line = ''.join((ev.event_name.ljust(10), ' : ', repr(ev)))
self.editbox.add_line(line)
return True
if __name__ == '__main__':
app = MyApplication()
app.start()