--- a/tuikit/editbox.py Tue Mar 15 17:27:09 2011 +0100
+++ b/tuikit/editbox.py Wed Mar 16 15:19:05 2011 +0100
@@ -6,8 +6,6 @@
def __init__(self, width=20, height=20, text=''):
Widget.__init__(self, width, height)
- self.set_text(text)
-
self.xofs = 0
self.yofs = 0
@@ -26,6 +24,8 @@
self.newevent('scroll')
self.newevent('areasize')
+ self.set_text(text)
+
def on_draw(self, screen, x, y):
for j in range(self.height):
@@ -98,6 +98,7 @@
def set_text(self, text):
self.lines = text.split('\n')
+ self.handle('areasize')
def get_text(self):
@@ -115,10 +116,10 @@
def set_yofs(self, yofs):
+ if yofs > len(self.lines) - self.height:
+ yofs = len(self.lines) - self.height
if yofs < 0:
yofs = 0
- if yofs > len(self.lines) - self.height:
- yofs = len(self.lines) - self.height
self.yofs = yofs
self.handle('scroll')
@@ -183,6 +184,16 @@
self.set_yofs(self.cline)
+ def move_pagefirst(self):
+ self.cline = 0
+ self.set_yofs(0)
+
+
+ def move_pagelast(self):
+ self.cline = len(self.lines) - 1
+ self.set_yofs(self.cline)
+
+
def add_char(self, c):
ln = self.lines[self.cline]
cpos = self.get_cpos()