summaryrefslogtreecommitdiff
path: root/asciifarm/client/display/textinput.py
diff options
context:
space:
mode:
authortroido <troido@hotmail.com>2018-04-18 23:59:40 +0200
committertroido <troido@hotmail.com>2018-04-18 23:59:40 +0200
commit1bf981b4836dc7d48535fcfcdf0d1a4e6d8ffb84 (patch)
treecc52a29decf1721002aa27c4b9d144ab40a0b7a0 /asciifarm/client/display/textinput.py
parent757ad925b47d24b1d0714671b8f04147a5748480 (diff)
client can now read strings from chat input
Diffstat (limited to 'asciifarm/client/display/textinput.py')
-rw-r--r--asciifarm/client/display/textinput.py29
1 files changed, 12 insertions, 17 deletions
diff --git a/asciifarm/client/display/textinput.py b/asciifarm/client/display/textinput.py
index 621214e..38d69ed 100644
--- a/asciifarm/client/display/textinput.py
+++ b/asciifarm/client/display/textinput.py
@@ -4,28 +4,23 @@ import curses
class TextInput:
def __init__(self):
- self.reading = False
self.widget = None
+ self.text = ""
+ self.cursor = 0
def setWidget(self, widget):
self.widget = widget
- def getString(self):
+ def setText(self, text, cursor):
+ self.text = text
+ self.cursor = cursor
+ self.widget.change()
+
+ def update(self):
win = self.widget.getWin()
- if not win:
- return None
- self.reading = True
- curses.echo()
- curses.nocbreak()
- win.addLine((0, 0), ">")
- string = win.getStr((2,0))
- curses.noecho()
- curses.cbreak()
- self.reading = False
+ width, height = win.getSize()
win.erase()
+ win.addLine((0, 0), self.text)
+ if self.cursor >= 0 and self.cursor <= len(self.text):
+ win.setAttr((self.cursor, 0), curses.A_REVERSE)
win.noutrefresh()
- self.widget.doUpdate()
- return string
-
- def update(self):
- pass