227 Commits

Author SHA1 Message Date
Roi Martin
ea4d0466c4 Rename Gui.ShowCursor to Gui.Cursor for consistency 2016-01-26 09:55:08 +01:00
Roi Martin
260872b0f7 Set cursor on mouse events 2016-01-26 09:40:06 +01:00
Roi Martin
b5f65e10ad Minor refactoring 2016-01-26 00:48:12 +01:00
Roi Martin
4b628e45b2 Add Gui.Execute to safely update the GUI from goroutines. 2016-01-26 00:06:54 +01:00
Roi Martin
639723c288 Rename Gui.EnableMouse to Gui.Mouse 2016-01-23 17:18:30 +01:00
Roi Martin
faa12e105a Full mouse support. Add mouse example. Make golint happy.
- Full mouse support based on hazbo's initial work.
- Add example to show mouse support.
- Fix comments, naming conventions, etc. to make golint happy.
2016-01-23 16:07:42 +01:00
Harry Lawrence
c36dfefa9b Enabled very basic mouse support
I see this as work in progress, for now. In terms of the public API, all the
end user has to do is something like g.EnableMouse = true. I think this is
reasonable and may not have to really change. Although I think the way it's
used with KeyBindings should maybe be changed. We need to expose the X and Y of
the click event - I'm not sure if this is possible currently, although Gui has
an unexported event field of type termbox.Event that I believe contains this
information.

Mouse support is something I need for a project I'm using Gocui, I noticed
there was an issue open in relation to this so I figured I'd send back what
I've started already.

Thanks for making gocui - it's awesome.
2015-12-11 11:51:43 +00:00
Roi Martin
e5bf60e36b Add method View.ViewBuffer 2015-08-16 18:08:34 +02:00
Roi Martin
af4769f30e Remove unnecessary call to runtime.LockOSThread() from stdin.go 2015-08-16 17:48:41 +02:00
Roi Martin
e2590f1300 Decouple edition mode via Editor interface 2015-02-24 13:05:33 +01:00
Roi Martin
4dfc4973e0 Decouple edition mode 2015-02-24 00:26:26 +01:00
Roi Martin
4ad26839aa Mark views as tainted when they are resized 2015-02-23 16:37:49 +01:00
Roi Martin
60388aa361 Add comments to View.editDelete() 2015-02-23 11:13:25 +01:00
Roi Martin
37e2387e4a Minor refactoring 2015-02-23 11:09:31 +01:00
Roi Martin
e009f09eb8 Fix detection of start/end of line in View.editDelete() 2015-02-23 11:07:08 +01:00
Roi Martin
ca0f876ab6 Fix cursor behaviour of View.editDelete() 2015-02-23 10:20:22 +01:00
Roi Martin
e63645a119 Support full edition mode in non-wrapping views 2015-02-23 02:01:49 +01:00
Roi Martin
622e7cbdf9 Initial implementation of the full edition mode 2015-02-23 00:34:41 +01:00
Roi Martin
b1ad4a9fa7 Remove internal call to View.SetCursor() and fix comment 2015-02-16 23:39:37 +01:00
Roi Martin
03998dd72c Refactor View.breakLine() 2015-02-15 02:17:13 +01:00
Roi Martin
f53d985c4e Break lines on enter when needed 2015-02-14 20:17:44 +01:00
Roi Martin
0193dee642 Refactoring of Gui.onKey() 2015-02-13 21:02:56 +01:00
Roi Martin
311dedb655 Move handleEdit to edit.go 2015-02-13 18:40:45 +01:00
Roi Martin
0e85b51ed2 Remove View.WrapPrefix 2015-02-04 10:37:15 +01:00
Roi Martin
0992dc1df0 Fix bug in realPosition() when len(v.viewLines) == 0 2015-02-04 09:25:25 +01:00
Roi Martin
8fa01b0c0e _examples/stdin.go: Disable autoscroll and edition 2015-02-04 02:25:06 +01:00
Roi Martin
4c83f5bfa9 Add example stdin.go 2015-02-04 02:22:54 +01:00
Roi Martin
708261503b Fix edit mode when View.Wrap is enabled 2015-02-04 01:59:03 +01:00
Roi Martin
b1d190d0d7 Convert View.viewLines to []viewLine 2015-02-03 18:29:38 +01:00
Roi Martin
0814e8024f More refactoring of View.draw() 2015-02-03 17:49:15 +01:00
Roi Martin
6279571a82 Fix build 2015-02-03 17:15:41 +01:00
Roi Martin
9b25959056 Optimizations on view redrawing when View.Wrap is enabled.
Refresh internal view buffer only when needed. Do not uses copy's.
2015-02-03 17:09:21 +01:00
Roi Martin
3438be9f43 Minor fix in _examples/demo.go 2015-02-02 01:32:15 +01:00
Roi Martin
f819237d78 Add more details to Gui.Flush()'s documentation 2015-02-02 01:04:33 +01:00
Roi Martin
d786a4aec1 Update Gui.Flush()'s comment. 2015-02-02 00:46:04 +01:00
Roi Martin
c9c982ea9d Protect Gui from being flushed concurrently 2015-02-02 00:42:34 +01:00
Roi Martin
3607eb8e1c Implement autoscroll. Fix scroll when View.Wrap is enabled 2015-02-01 22:49:07 +01:00
Roi Martin
d0c53d8574 Restructure README 2015-02-01 17:27:48 +01:00
Roi Martin
8de3a55f4e Minor aesthetic changes in README 2015-02-01 17:24:10 +01:00
Roi Martin
2e0c0342dc Add screenshots to README 2015-02-01 17:23:04 +01:00
Roi Martin
98a2fe7a6a Add missing LICENSE header. Fix typo in LICENSE headers 2015-01-31 20:39:43 +01:00
Roi Martin
f5cd17c3cc Rename ErrorQuit to Quit 2015-01-30 17:19:11 +01:00
Roi Martin
17f7615184 Handle '\n' and '\r' in View.Write()
Handle '\n' and '\r' in View.Write() so fmt.Print, fmt.Println, etc. work as
expected. This commit closes issue #25.
2015-01-29 16:19:25 +01:00
Roi Martin
c690c51bff _examples/delete: Move legend to layout 2015-01-26 23:23:46 +01:00
Roi Martin
9404aacd27 _examples/delete: Add legend. Fix bug in nextView 2015-01-26 23:19:54 +01:00
Roi Martin
d3c84c7bf4 _examples/delete.go: Refactoring 2015-01-25 14:16:27 +01:00
Roi Martin
2db4573e76 Add function Gui.ViewPosition(). Add example.
The example "delete.go" will be useful to test optimization algorithms.
2015-01-25 14:07:14 +01:00
Roi Martin
45bec2b33c Examples: More simplifications on demo.go 2015-01-24 15:03:03 +01:00
Roi Martin
25ba6858fb _examples/wrap: Minor changes 2015-01-24 14:38:08 +01:00
Roi Martin
8efd767c68 Improve README 2015-01-24 14:35:23 +01:00