summary refs log blame commit diff stats
path: root/test/test.py
blob: 5e8a9b9eb41e6f4a0093e7d6e9f258a5e2567509 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15














                                 
# Copyright (C) 2009, 2010  Roman Zimbelmann <romanz@lavabit.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

"""Workaround to allow running single test cases directly"""
try:
	from __init__ import init, Fake, OK, raise_ok
except:
	from test import init, Fake, OK, raise_ok
">:= &ExLine{ cancel: cancel, commit: commit, input: input, } input.OnInvalidate(func(d ui.Drawable) { exline.Invalidate() }) return exline } func (ex *ExLine) Invalidate() { ex.DoInvalidate(ex) } func (ex *ExLine) Draw(ctx *ui.Context) { ex.input.Draw(ctx) } func (ex *ExLine) Focus(focus bool) { ex.input.Focus(focus) } func (ex *ExLine) Event(event tcell.Event) bool { switch event := event.(type) { case *tcell.EventKey: switch event.Key() { case tcell.KeyEnter: ex.input.Focus(false) ex.commit(ex.input.String()) case tcell.KeyEsc, tcell.KeyCtrlC: ex.input.Focus(false) ex.cancel() default: return ex.input.Event(event) } } return true }