Vadim Zeitlin
5cb3a695e0
Add wxTreeCtrl::SelectChildren() method.
...
Add MSW and generic implementation, documentation and change to the sample
showing it.
Closes #11620 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-26 12:43:39 +00:00
Vadim Zeitlin
f19259fce0
Invalidate stored wxTreeItemIds when the corresponding item is deleted in wxMSW.
...
m_htSelStart and m_htClickedItem stored in wxTreeCtrl must be invalidated when
the item they point to is deleted (which also happens when all the items are
deleted), otherwise the selection doesn't behave correctly after doing it.
Closes #11619 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-18 00:28:47 +00:00
Vadim Zeitlin
d6d857b124
Generate wxEVT_KEY_DOWN events for navigation keys in wxMSW wxTreeCtrl.
...
We only generated wxEVT_COMMAND_TREE_KEY_DOWN events for the keys which can be
used for tree control navigation and which are handled specially in the code
but not the wxEVT_KEY_DOWN ones. This was inconsistent with the other keys and
incompatible with wx 2.8 and other ports, so generate both events unless the
wxEVT_KEY_DOWN one was handled by the user code.
Closes #11621 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-18 00:28:41 +00:00
Vadim Zeitlin
3c8cbc12ca
Improve hit detection in wxMSW wxTreeCtrl with wxTR_FULL_ROW_HIGHLIGHT style.
...
When wxTR_FULL_ROW_HIGHLIGHT is used, the item visually takes up the entire
breadth of the window so clicking both to the left or to the right of the item
should have the same effect as clicking on it.
So add a MSWIsOnItem() helper which tests for whether a point is above the
item correctly and use it in order to:
1. In multi selection mode, allow clicking anywhere to select the item(s)
when Ctrl or Shift is pressed (Closes #11598 ).
2. Generate activation event when clicking to the right of the item too
(Closes #11602 ).
3. Detect item bounds correctly in WM_LBUTTONUP handler (although it's
not really clear what does this code do and hence what problem does this
fix...).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-07 13:16:01 +00:00
Vadim Zeitlin
d301c44093
Fix selection events generation in multi-select wxTreeCtrl.
...
Only deselect the items when the mouse is released if really necessary: add a
flag indicating when it is instead of trying to deduce it in the mouse up
handler.
Closes #11099 (thanks to Jonathan Liu).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-30 17:24:53 +00:00
Vadim Zeitlin
f2fec40d2c
Don't generate duplicated events for clicks on tree +/- buttons.
...
In multiple selection mode we process mouse events manually in wxTreeCtrl
itself and already take care of mouse clicks on the buttons there so don't
pass them on to the base class which would generate another event.
Closes #11098 (thanks to Jonathan Liu).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-30 17:24:45 +00:00
Vadim Zeitlin
9a83f86094
Globally replace _T() with wxT().
...
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660 ).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
3c01c59511
implement wxTreeCtrl::GetFocusedItem() for wxMSW too (see #10859 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-19 23:48:50 +00:00
Vadim Zeitlin
8664669368
make wxTreeCtrl::SelectItem(false) work in single selection controls under MSW (fixing the recently added unit test); also set the previously selected item in the selection changing/changed messages
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-06 22:56:57 +00:00
Vadim Zeitlin
d2f434e428
(harmless) Borland release build warning fixes
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-25 14:07:38 +00:00
Vadim Zeitlin
7dac12efa7
more bug fixes to multiple selection mode (see #626 , comment 47)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-18 10:01:36 +00:00
Vadim Zeitlin
47e105413f
fix generation of key events with Alt pressed broken by r59369 (see #626 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-07 14:07:45 +00:00
Vadim Zeitlin
aa8166dd51
fix duplicate events for selection keys after the last change (see #626 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-06 16:13:23 +00:00
Vadim Zeitlin
25f701e632
don't use WPARAM in the header (build fix after r59336)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-05 16:32:56 +00:00
Vadim Zeitlin
c7d9c476ea
fix multiple problems with selection in controls with wxTR_MULTIPLE style ( closes #626 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-05 14:13:19 +00:00
Vadim Zeitlin
2ec94d6b96
add missing stdcall to fix crash when using state image lists after r58572
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-17 09:57:10 +00:00
Vadim Zeitlin
c0c133e13b
add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Vadim Zeitlin
c27dce1818
load ImageList_Copy() dynamically to allow wx apps to start up under Win95 (state image display in wxTreeCtrl still won't work though)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-31 21:54:11 +00:00
Vadim Zeitlin
d57f1dd7fe
undo r58380 as it breaks tree control background repainting (see #9832 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-25 19:07:11 +00:00
Vadim Zeitlin
838ab05ede
allow using wxBG_STYLE_CUSTOM even with the native controls and use it in wxTreeCtrl (see #9832 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-25 11:40:41 +00:00
Vadim Zeitlin
fa97ee2490
implement wxTreeCtrl::ItemHasChildren() properly for virtual root item; added unit test for it
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-17 13:16:25 +00:00
Vadim Zeitlin
ae322a4870
undid change accidentally committed as part of r57093 but which didn't have anything to do with it and resulted in #10253
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-22 13:34:12 +00:00
Vadim Zeitlin
56873923f3
extract (and expand and clean up and document) the header window implementation used inside the generic wxDataViewCtrl in a separate wxHeaderCtrl class which could be reused in (generic) wxListCtrl and, most importantly, wxGrid later
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-03 21:53:10 +00:00
Vadim Zeitlin
0e2ad3233b
don't reuse the double click handled in activation event handler for toggling the item ( #9761 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-29 14:49:47 +00:00
Robert Roebling
4754ab1630
Next part of tree state icon patches
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-24 12:48:01 +00:00
Robert Roebling
03966fcb3f
#9591 : Item state (icons) for wxTreeCtrl on any platform
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54267 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-16 17:50:40 +00:00
Vadim Zeitlin
4a36036eb2
don't ask for bounding rectangle of a hidden root, this fixes a crash introduced by the previous patch
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-07 20:12:57 +00:00
Vadim Zeitlin
7e45c15989
refresh the item after adding its first child as, apparently, otherwise the '+' is not always drawn immediately (patch 1927179)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-06 15:37:52 +00:00
Benjamin Williams
396f85bac5
vista tree crash fix
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-17 22:05:01 +00:00
Václav Slavík
937013e0fd
1. added wxEvtHandler::SafelyProcessEvent() and wxWindow::HandleWindowEvent() to correctly handle exceptions in even handlers in wxGTK
...
2. use HandleWindowEvent() everywhere as more obvious and convenient shortcut for GetEventHandler()->ProcessEvent(); also for consistency with wxGTK where it's required
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-29 17:00:58 +00:00
Vadim Zeitlin
6719c06a97
no real changes, just some cleanup: add wxIsAltDown() in addition to the existing wxIsShift/CtrlDown() and wxIsAnyModifiedDown() to test for all of them at once (slightly modified patch 1833235)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-17 00:24:07 +00:00
Julian Smart
20bdddadd5
Don't suppress accelerators that include Enter just because a tree control is focused
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-16 13:12:20 +00:00
Vadim Zeitlin
e0bf68d697
unselect all selected items, not just the currently focused one, when the mouse is right clicked outside of selection to minimize user confusion (patch 1702201, bug 1676471)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-13 17:18:58 +00:00
Benjamin Williams
5fe302ef74
bug fix for vista in multi-selection tree
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-04 21:26:56 +00:00
Vadim Zeitlin
cb776b6671
set the focus to the tree before generating the selection change events to have a more expected (and compatible with other platforms) order of tree and focus events
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-01 20:26:11 +00:00
Vadim Zeitlin
5188000b1d
refresh the item being collapsed when using comctl32.dll v6 as otherwise parts of its selection rectangle may be left on screen
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-26 23:24:06 +00:00
Vadim Zeitlin
f73eddd2a5
made wxTreeCtrl::GetNextVisible() behave in the same way in Win32 as in the generic version and implemented GetPrevVisible() in the generic version
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-07 21:58:51 +00:00
Vadim Zeitlin
0edeeb6d96
use wxWindow::NewControlId() instead of wxNewId() to avoid clashes with user-defined ids; bug fixes in wxMSW for negative menu and toolbar items ids
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-20 22:58:55 +00:00
Václav Slavík
e0a050e347
more changes to make wx compile without implicit wxString->char* conversion (for STL build)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-20 07:44:45 +00:00
Vadim Zeitlin
c4cd8712cd
cancel dragging if Esc is pressed (patch 1733657)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-09 10:50:40 +00:00
Paul Cornett
68d9be05da
build fix for wxUSE_DRAGIMAGE==0
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-05 18:48:56 +00:00
Vadim Zeitlin
7549148b56
fix SelectItem() for single selection case which was broken by recent changes
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-23 22:08:41 +00:00
Vadim Zeitlin
b8e3f1cfb7
don't let def window proc start another drag operation if we just started one ourselves for a multiselection tree (replaces patch 1702133)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-21 21:14:59 +00:00
Stefan Csomor
70cab5b769
compile guard
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-11 15:37:40 +00:00
Vadim Zeitlin
cc87a04c9d
send selection events when Ctrl-clicking an item repeeatedly in a multiselection tree
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-10 23:56:20 +00:00
Vadim Zeitlin
8a536fa330
don't crash when attempting to select hidden tree root (bug 1681118)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-30 12:57:15 +00:00
Vadim Zeitlin
2a69b4e849
assert if AddRoot() is called twice for a wxTR_HIDE_ROOT tree
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-26 13:07:15 +00:00
Václav Slavík
c9f7896861
first phase of transition to unified Unicode build:
...
1. changed c_str() to return wxCStrData (implicitly convertible to wxChar*)
2. added template type-safe wrappers for vararg functions
3. added wxUniChar class representing single Unicode character
4. changed wxString::operator[] and wxString::iterator to return wxUniChar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-17 10:26:10 +00:00
Vadim Zeitlin
c1dc9f8394
removed WXWIN_COMPATIBILITY_2_4 from common and wxMSW files (patch 1675546)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-07 11:35:04 +00:00
Julian Smart
72e610241a
Restored drag position mysteriously removed in revision 1.233
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-02-05 14:14:46 +00:00