35 Commits

Author SHA1 Message Date
Vladimir Markelov
4848282327 UX improvement - separate close window icon from other icons 2019-05-10 21:01:21 -07:00
Vladimir Markelov
17ae50e353 style and typo fixes 2019-05-07 21:47:56 -07:00
Leandro Dorileo
97f58ec224 window: fix event processing
Avoid invalid memory address access by no trying to get parent's
control if next control is nil on event processing.

Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
2018-11-14 09:49:07 -08:00
Mark D Horn
7097e0a5f9 Allow for No Border on Window
Keeps current API as-is by defaulting to the new BorderAuto BorderStyle
which keeps the default borders on Windows and defaults on none on Frames.

Allows setting a Window Border to BorderNone for a frameless Window.

Need to allow setting the border default in the Window Manager to avoid
the border from being drawn and then removed.

Signed-off-by: Mark D Horn <mark.d.horn@intel.com>
2018-09-19 18:26:19 -07:00
Leandro Dorileo
9153ec6718 frame: scrollable frame
This patch introduce internal changes in order to #1 actually clip
content avoid growing parent's size and keeping controls with their
own pre-set sizes and also #2 add a scrollable feature to frame control.

Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
2018-09-06 14:44:21 -07:00
Leandro Dorileo
e259a9d776 add context to OnKeyDown
In order to keep caller's context this patch introduces a interface{}
argument to carry on arbitrary data and pass it back based on the
registered callback.

Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
2018-09-06 14:44:21 -07:00
Leandro Dorileo
6cede82cb7 add custom theme support
With this change users can specify custom theme extensions.

Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
2018-09-06 14:44:15 -07:00
Leandro Dorileo
212c6b3a41 clui: control selection
Implements the control selection with keyUp and keyDown besides the
KeyTab selection.
2018-04-19 10:33:10 -07:00
Leandro Dorileo
1f44a01230 BaseControl: add refID
In order to guarantee BaseControl and Control are fully comparable in the
BaseControl level this patch introduces a refID interface, so the objects
can safely be comparable based on this interface.
2018-03-23 14:34:01 -07:00
Vladimir Markelov
5d3a40175d #79 - allow Windows to handle terminal resize event 2018-01-26 21:36:46 -08:00
Vladimir Markelov
c7750d4e42 #78 - fix some data races 2018-01-25 21:49:43 -08:00
Vladimir Markelov
0c6821caf3 #72 - introduce public function WindowManager to access internal Composer to call low level function to manipulate Windows 2018-01-23 13:59:25 -08:00
Vladimir Markelov
e4adbb3a84 #73 - add method to set visible title buttons 2018-01-23 11:25:00 -08:00
Vladimir Markelov
a2ed5db396 #74 - new Window properties: Movable and Sizable that allow a user to forbid Window moving and resizing with mouse or keyboard 2018-01-23 11:15:43 -08:00
Vladimir Markelov
dbc2b92312 add a way to hide a window instead of destroying it 2017-07-04 18:04:58 -07:00
Vladimir Markelov
a326a48318 add custom key processing for window and new widget TextReader 2017-06-26 17:20:33 -07:00
Vladimir Markelov
7cbba07780 Support termbox mouse move events and huge refactoring 2016-10-13 14:16:05 -07:00
Vladimir Markelov
a225b5047b closes #38 - only vital panic calls are remained 2015-12-08 16:25:31 -08:00
Vladimir Markelov
7b9e30b8c7 closes #25 - maximize+restore view 2015-10-30 15:12:35 -07:00
Vladimir Markelov
221b3bc613 #24 - add docs for Window 2015-10-29 16:13:31 -07:00
Vladimir Markelov
303b14ab7c fix interface a bit 2015-10-27 17:47:53 -07:00
Vladimir Markelov
66d670edea fix lint issues 2015-10-26 13:58:54 -07:00
Vladimir Markelov
79fa8a5d05 closes #7 - added select dialog 2015-10-22 14:44:19 -07:00
Vladimir Markelov
6e94c635ab closes #22 - basic dialog support 2015-10-21 17:04:57 -07:00
Vladimir Markelov
30d8edcb20 closes #8 - modality 2015-10-21 09:38:43 -07:00
Vladimir Markelov
2430ca0bda closes #11 - autosize implemented 2015-10-20 09:43:56 -07:00
Vladimir Markelov
92a3c3b9f1 closes #6 - use DoNotChange constant 2015-10-19 16:54:26 -07:00
Vladimir Markelov
6233b42e76 move paddings to top level 2015-10-19 15:09:25 -07:00
Vladimir Markelov
dcf1c50b5c closes #3 - label text alignment and direction 2015-10-19 14:51:18 -07:00
Vladimir Markelov
1913bf2c61 closes #20 closes #19 2015-10-19 12:05:43 -07:00
Vladimir Markelov
d9160a6e02 fix crash on mouse click 2015-10-17 16:38:08 -07:00
Vladimir Markelov
189788fcd6 Fix crash on TAB 2015-10-17 01:16:19 -07:00
Vladimir Markelov
0078d1ed0b refactoring and crossplatform patch 2015-10-16 10:27:43 -07:00
Vladimir Markelov
64334b127f fixes #16 - invalid title display if text is longer than control width 2015-09-23 16:09:01 -07:00
Vladimir Markelov
f5d0aca2bd Initial source commit 2015-09-21 20:54:39 -07:00