Commit Graph

94 Commits

Author SHA1 Message Date
Michael Drake
9a59103c6a Polish node deletion. 2013-08-30 13:29:19 +01:00
Michael Drake
09f5b0e95f Improve callback suppression options. Reduce unnecessary callback usage. 2013-08-30 12:51:40 +01:00
Michael Drake
e2fbd3a266 Avoid copying rectangle for redraw_request calls. 2013-08-30 11:38:02 +01:00
Michael Drake
b4a3c94cf0 Various redraw improvements. 2013-08-29 20:43:25 +01:00
Michael Drake
67cbc779be Make client-requested node deletions issue a redraw request. 2013-08-29 19:58:43 +01:00
Michael Drake
db2f47ab27 Use treeview height instead of REDRAW_MAX for rectangle's y1. 2013-08-29 19:12:49 +01:00
Michael Drake
8cc6ac8980 Redraw on node creation, unless suppressed. 2013-08-29 19:05:04 +01:00
Michael Drake
7a25b6aaee Fix one px missmatch between click and drag handling of node selection. 2013-08-28 15:59:00 +01:00
Michael Drake
bc14d492d2 Add height getter. 2013-08-28 14:12:30 +01:00
Michael Drake
28dec67c64 Remove select all and clear selection functions from public API. Clients can send KEY_SELECT_ALL and KEY_CLEAR_SELECTION to the keypress handler. 2013-08-28 13:36:15 +01:00
Michael Drake
826b392b57 Simple treeview_edit_selection implementation. 2013-08-28 12:58:41 +01:00
Michael Drake
43d1e777df Function to get releations for node entry. 2013-08-27 20:56:20 +01:00
Michael Drake
1212f1d321 Expose leaving node callback in public treeview walker interface. 2013-08-22 16:05:03 +01:00
Michael Drake
1e27299cf1 Inform when textarea drag is happening. 2013-08-21 13:54:00 +01:00
Michael Drake
71676165c1 Add folder node update function. 2013-08-20 20:04:42 +01:00
Michael Drake
9e29ef4bdd Pass edit message to treeview client, when editing ends. 2013-08-20 15:44:24 +01:00
Michael Drake
a9e92e335c Fix node insertion ancestor height updating having cumulative effect. 2013-08-20 15:02:09 +01:00
Michael Drake
9f3a83da66 Tidy edit start click behaviour, with existing selections. 2013-08-19 14:41:12 +01:00
Michael Drake
385af23fbe Start of treeview node edit support. Internal treeview part is mostly done. It now needs to inform the client (only hotlist allows edit), of the change. And the hotlist needs to handle the change request message and update the node. 2013-08-19 14:23:44 +01:00
Michael Drake
fd961c6dfa Ensure ctrl modifier is handled, by dealing with it before no-modifiers case. 2013-08-18 13:22:57 +01:00
Michael Drake
5aa5eb9d6f Ensure nodes within contracted nodes are unselected. 2013-08-17 23:52:48 +01:00
Michael Drake
5f32ac1858 Fix clang warning. 2013-08-17 20:20:49 +01:00
Michael Drake
4ab7ad6bd2 Implement node moving drags. 2013-08-17 19:39:17 +01:00
Michael Drake
e5a4c3d4c9 Find the top y value of selections for indicator pos. 2013-08-17 14:37:24 +01:00
Michael Drake
d1cd950327 Improve keyboard nav slightly. 2013-08-17 13:40:05 +01:00
Michael Drake
e1468a78df Fix keyboard nav redraw when treeview height decreases as a result of keypress. Reduce some variable name lengths. 2013-08-17 13:27:38 +01:00
Michael Drake
e17e56b0cc Move drops over selection target top of selected run. 2013-08-17 13:22:40 +01:00
Michael Drake
59ea55ef3d Propagate selection to visible descendant nodes when a move drag is started with folder selected. 2013-08-17 12:51:08 +01:00
Michael Drake
dee0cb0380 Optimise drop indicator redraw area. 2013-08-17 11:48:16 +01:00
Michael Drake
d8bf6c2216 Remove unused structure member. 2013-08-16 23:13:25 +01:00
Michael Drake
29b6185ab1 Do indicator redraw after everything else is done, to simplify things. 2013-08-16 23:08:57 +01:00
Michael Drake
b699169d0b Group the move details, for clarity. 2013-08-16 21:40:45 +01:00
Michael Drake
304523553c Start optimising drop indicator redraw. 2013-08-16 20:34:41 +01:00
Michael Drake
a9cad3cfa8 Begin move handling. Currently only moves the drop target indicator during drags. Nothing actually gets moved. 2013-08-16 20:06:08 +01:00
Michael Drake
5f4c624c5b Slight refactor of drag end handling, for future handling of more types of drag. 2013-08-16 12:23:37 +01:00
Michael Drake
2dc8b64153 Add comment. 2013-08-16 11:17:45 +01:00
Michael Drake
285fe734bc Rename "section" to "part". 2013-08-16 11:15:16 +01:00
Michael Drake
9d624ce17f Inform front end when drag starts below nodes too. 2013-08-16 08:25:26 +01:00
Michael Drake
eaae716989 Move old hotlist out of the way. 2013-08-13 12:41:04 +01:00
Michael Drake
4697d1ccc1 Expose treeview walker. 2013-07-25 16:06:34 +01:00
Michael Drake
ec9608c4de Make node delete callback msg differentiate between deletes caused by user interaction and other deletes (e.g. treeview destruction). 2013-07-15 14:34:56 +01:00
Michael Drake
ed557f090a Cursor down moves to next after noncontinuous selections. 2013-07-09 14:24:48 +01:00
Michael Drake
0df23dda20 Cursor right toggles expansion. 2013-07-09 13:47:06 +01:00
Michael Drake
11eed50de4 A couple of tidyups. 2013-07-09 12:46:30 +01:00
Michael Drake
541bc8e283 Initial keyboard navigation support. 2013-07-09 12:42:22 +01:00
Michael Drake
e9401de768 Move mix_colour macro out of treeview for other stuff to use. 2013-07-08 17:41:06 +01:00
Michael Drake
81a1506c5c Launch selection launches entries within contracted folders. 2013-07-08 15:22:25 +01:00
Michael Drake
e8f2297d0f Improve doc comments. 2013-07-08 13:01:00 +01:00
Michael Drake
7bd01a0e75 Return key launches current selection. 2013-07-08 12:53:19 +01:00
Michael Drake
de1f0afde2 Change how nodes are deleted. 2013-07-06 23:00:43 +01:00