1138 Commits

Author SHA1 Message Date
Jinhao
dbfcab912d fix and improve animation(#335) 2020-05-12 03:11:34 +08:00
Jinhao
baa64a1461 fix animation deadlock issues(#530) 2020-05-08 09:19:57 +08:00
Jinhao
419d615505 listbox::hovered now returns absolute position
fix related issue #528
2020-03-27 07:28:48 +08:00
Jinhao
48d54faeed fix textbox rendering issue
wrong background color for selected text of RTL languges
2020-03-24 22:14:08 +08:00
Jinhao
25fe4506fd fix some GCC compilation issues 2020-03-14 01:31:52 +08:00
Jinhao
e8668dbc52 fix place bug that splitter position drifts(#512) 2020-03-13 10:09:55 +08:00
Jinhao
f26d3d0d6c fix issue that wrong caret position in textbox when moving up/down 2020-02-13 15:01:19 +08:00
Jinhao
75d760266a fix issue scrolling in nested_form causes freezing(#505) 2020-02-13 11:56:35 +08:00
Jinhao
4090eb3d75 Merge branch 'hotfix-1.7.2' into develop 2020-02-08 07:32:40 +08:00
besh81
add0af843e added treebox use_entire_line mode
Added new interaction/display mode to treebox control.
Enabling use_entire_line the entire line of the treebox/child is used for mouse interactions and display purposes.
2020-02-07 13:06:34 +01:00
Jinhao
fa659df705 Merge branch 'hotfix-1.7' of https://github.com/ErrorFlynn/nana into ErrorFlynn-hotfix-1.7 2020-02-06 01:34:42 +08:00
ErrorFlynn
ff7fca9311
fix: submenu option items unresponsive to clicks
When the user opens a submenu containing items with the style `menu::checks::option` and clicks an option, the radio button logic doesn't work. This bug was discovered and fixed by nanapro.org forum user "huycan" (I'm just submitting the PR). See this forum post: http://nanapro.org/en-us/forum/index.php?u=/topic/1256/ggleave-a-menu-open

As mentioned in more detail in the forum post linked above, my understanding of why this happens is that `menu_builder::checked` fails because the `menu_window` of the submenu is created with the `menu_builder` object used by the parent menu.
2020-02-03 02:49:20 -05:00
Jinhao
1a91511d64 refactor
make it more readable
2020-01-29 01:29:42 +08:00
Jinhao
462aadcc26 hide treebox node expander if no visible children
improve the new feature based on PR#500
2020-01-28 23:29:10 +08:00
mixael
aa2bfaebaa treebox - allow treebox node to be hidden 2020-01-23 01:27:08 +03:00
qPCR4vir
f88224766d doxy comments, void form::div(std::string div_text); 2019-12-06 01:27:58 +01:00
qPCR4vir
d362f031dd listbox header: ignore auto_draw ??
changing column visibility - too slow.
2019-12-05 00:28:08 +01:00
Jinhao
0ab4225262 Merge branch 'hotfix-1.7.2' into develop 2019-12-04 01:13:44 +08:00
Jinhao
d2ce5fafd2 Merge branch 'filesystem' of https://github.com/qPCR4vir/nana into qPCR4vir-filesystem 2019-12-04 01:09:55 +08:00
Jinhao
139c884ea9 Merge branch 'fix-tabbar-erase-refresh' of https://github.com/mihaizh/nana into mihaizh-fix-tabbar-erase-refresh 2019-12-04 00:27:17 +08:00
Jinhao
36a17566ca Merge branch 'ErrorFlynn-hotfix-1.7' into hotfix-1.7.2 2019-11-17 01:24:19 +08:00
Jinhao
6353a1909b Merge branch 'hotfix-1.7' of https://github.com/ErrorFlynn/nana into ErrorFlynn-hotfix-1.7 2019-11-17 01:23:50 +08:00
qPCR4vir
a8b5e92947 using nana filesystem 2019-11-05 21:00:33 +01:00
ErrorFlynn
6c547276ec
bug fix: nana::drawerbase::listbox::essence::where
This method incorrectly calculates the position of checkboxes in the listbox content area. It uses the formula `new_where.second * item_h + header_visible_px()` to calculate the number of pixels between the top of the viewport and a checkbox.

The problem is that when the first visible item is only partially visible, `new_where.second * item_h` produces an excess of pixels equal to the vertical segment of the first visible item that is not in the viewport. This excess value produces a downward displacement of the calculated checkbox position, so it must be accounted for in the aforementioned formula.

This problem occurs because at some point, the library switched from scrolling in item-sized increments to smooth scrolling (in older versions, it used to be that it was impossible for an item to be only partially visible).

Relevant thread: http://nanapro.org/en-us/forum/index.php?u=/topic/1227/ggnana-listbox-with-a-check-box-for-each-list-item#post-3359
2019-10-05 11:19:42 -04:00
ErrorFlynn
59d3a68485
item_proxy bug fix: postfix increment operator
The behavior of the postfix increment operator is not consistent with the increment operator concept (currently just returns the next sibling node).
2019-09-20 23:38:09 -04:00
Zaha Mihai
35dadaeab6
Fix tabbar drawing not updated when tab is erased
When a tab is deleted using `tabbar::erase`, `trigger::erase` is called. This function does not call `API::refresh_window` if the tab was erased successfully (unlike `trigger::tab_color`, `trigger::tab_image`, etc.), thus the tab is still visible until an interaction is made (like mouse click on `tabbar`).
2019-09-15 23:32:58 +03:00
Jinhao
a65eec2bb9 Merge branch 'hotfix-1.7.2' into develop 2019-09-11 00:54:47 +08:00
Jinhao
0bd0c1f362 Merge branch 'hotfix-1.7.2' of https://github.com/qPCR4vir/nana into qPCR4vir-hotfix-1.7.2 2019-09-11 00:51:03 +08:00
Jinhao
7082456330 Merge branch 'hotfix-1.7.2' of https://github.com/besh81/nana into besh81-hotfix-1.7.2 2019-09-11 00:46:39 +08:00
Jinhao
0f66b0cb26 improve wait of x11 event to avoid blocking 2019-09-11 00:10:11 +08:00
qPCR4vir
d47a7c55bb document it 2019-09-10 14:57:49 +02:00
qPCR4vir
74f42f1778 new feature "fit_width_to_header caption text" for a new header with width=0
(cherry picked from commit 23efa5088d742a48e7ad07f273e84bcf50c2d979)
2019-09-09 19:56:57 +02:00
qPCR4vir
06ba591b66 FIX old bug during resizing of header, when next column spring to second position 2019-09-09 17:23:22 +02:00
besh81
4dd1c0c7ef dock_pane and toolbar bug fix
fixed bug in dock_pane caption drawing function (used a workaround that hide the caption when the dock_pane width become too small)
fixed small bug in toolbar
2019-09-05 17:37:40 +02:00
Jinhao
12e15ce956 Merge branch 'fix_filebox_multi_select' of https://github.com/mihaizh/nana into mihaizh-fix_filebox_multi_select 2019-09-02 05:27:01 +08:00
Zaha Mihai
7c442360ba
Fix inconsistency regarding filebox multi_select
When only one file is selected, the lpstrFile variable contains only the path to that file, without the parent path before that, thus, the targets vector is empty and the path variable contains the actual path to the file. This is inconsistent with the scenario where multiple files are selected, in which targets contains the file paths and path contains the parent directory path.
2019-09-01 17:53:23 +03:00
Jinhao
8323064efc improve the timer that it can be deleted in elapse handler 2019-09-01 18:49:19 +08:00
ErrorFlynn
b7a0874428
fixed bug: listbox::sort_col doesn't update view
Calling listbox::sort_col to change the sort column doesn't update the viewport to reflect the change, forcing the user to call API::refresh_window or otherwise perform stupid tricks to force the listbox to refresh.
2019-08-20 05:32:36 -04:00
Jinhao
e37cc5ec37 fix crash where a shared lib is loaded/unloaded repeatedly
When a shared lib which uses nana is dynamic loaded/unloaded multiple
times, the crash would occur when creating a form after reloading the shared lib
2019-08-14 03:39:26 +08:00
ErrorFlynn
69e559f657
fixed a bug in trigger::dbl_click()
impl_->set_expanded() was called unconditionally, even if the node had no children. This caused the node icon to change to the "expanded" icon if the node had an icon scheme, even when the node didn't have children.
2019-08-11 20:27:16 -04:00
Jinhao
2dd9a376bc Merge branch 'hotfix-1.7' of https://github.com/ErrorFlynn/nana into ErrorFlynn-hotfix-1.7 2019-08-11 02:27:30 +08:00
ErrorFlynn
1b0ac10475
fixes for the listbox bugs described in issue #472 2019-08-05 14:11:02 -04:00
Jinhao
9e653eec0a Merge branch 'patch-2' of https://github.com/qPCR4vir/nana into qPCR4vir-patch-2 2019-08-05 04:02:04 +08:00
qPCR4vir
0a9e69f5de try #define NOMINMAX 2019-08-01 14:38:45 +02:00
qPCR4vir
0b339c1552 FIX https://github.com/cnjinhao/nana/issues/465 2019-08-01 14:00:54 +02:00
이지한
129b83e68f fix the strange behavior of Korean ime composition window.
Because Hangul is a combination character, WM_IME_STARTCOMPOSITION is only called once when the IME input is started, so the position of the composition window is strange.

Therefore, I solved the problem by controlling the state of characters combined using WM_IME_COMPOSITION and WM_IME_CHAR.

We have also improved to support other IME languages such as Chinese and Japanese.
2019-08-01 15:24:46 +09:00
qPCR4vir
96c7a962c9 Merge branch 'develop' into patch-2 2019-07-31 16:59:20 +02:00
qPCR4vir
7a1c299ff7 explicit conversion 2019-07-31 16:56:23 +02:00
Jinhao
de9043e223 fix bug where listbox::item_proxy::empty behaves incorrectly 2019-07-23 04:37:14 +08:00
Jinhao
2e0f29564f fix MinGW warnings of compiling dragdrop.cpp 2019-07-20 11:44:53 +08:00