Commit Graph

121 Commits

Author SHA1 Message Date
Paul Cornett
9b19a6e529 use wxOVERRIDE in wxMSW sources 2016-09-23 07:59:11 -07:00
Vadim Zeitlin
246ae58c19 Replace wxTreeItemAttr and wxListItemAttr with wxItemAttr
The two existing structs were completely identical, just replace them with a
single wxItemAttr.

Notice that wxDataViewItemAttr is not quite the same, although pretty similar,
so it remains separate for now. It would be nice to combine it with this one
too in the future, e.g. to make it simpler to make items bold in a wxListCtrl.
2016-04-16 19:04:52 +02:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Paul Cornett
967a94c91a remove WXWIN_COMPATIBILITY_2_6, add WXWIN_COMPATIBILITY_3_0
closes #15792

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 20:07:33 +00:00
Vadim Zeitlin
c749d9e638 Fix unwanted focus events when deleting a wxTreeCtrl item in wxMSW.
Disable setting focus in response to TVN_SELCHANGING when deleting an item in
a single selection control too -- this was already done in multi selection
case but not in this one, for some reason.

Also refactor the code to avoid duplicating TreeView_DeleteItem() calls.

Closes #15721.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-11-28 12:43:17 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Vadim Zeitlin
4e1e8dc51b Change wxMSW wxTreeCtrl::DoFreeze() to not hide the tree any more.
Hiding the tree when it's frozen, as done in r72665, results in its own
problems, e.g. loss of focus. So don't do this but resize the control to a
very small size when freezing it and restore it to its old size afterwards.

Closes #15166.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-31 23:21:36 +00:00
Vadim Zeitlin
6754c300cf Freeze wxTreeCtrl in wxMSW by hiding it.
This is far from perfect but better than alternative as freezing this control
by sending WM_SETREDRAW to it can result in completely broken behaviour as
explained in http://support.microsoft.com/kb/130611. And not freezing it at
all shows horrible flicker when adding even a relatively small number of items
at once to the control because it recalculates and repositions its scrollbars
after every parent node addition.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-13 22:52:35 +00:00
Francesco Montorsi
b19b28c8fc Implement wx-prefixed macros versions of DECLARE/IMPLEMENT*CLASS macros.
Implement compatibility aliases for non-prefixed macro names.
Require a final semicolon where possible.
Correct a recurring error in the docs: IMPLEMENT/DECLARE_CLASS are alias to the DYNAMIC macros, not to the ABSTRACT macros.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-09 13:55:48 +00:00
Vadim Zeitlin
5708ae18f2 Add wxTreeCtrl::{Clear,Set}FocusedItem().
Allow changing just the currently focused (not selected) item and also
removing the focus completely.

Closes #11599.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-02 12:01:30 +00:00
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
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
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
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
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
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
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
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
Francesco Montorsi
53a2db124c substitute WXDLLEXPORT with WXDLLIMPEXP_CORE and WXDLLEXPORT_DATA with WXDLLIMPEXP_DATA_CORE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-26 15:06:00 +00:00
Vadim Zeitlin
fb1a478979 use WXDLLIMPEXP_FWD_CORE instead of WXDLLEXPORT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-01 11:54:50 +00:00
Julian Smart
a047aff270 Added wxBORDER_THEME, wxWindow::GetDefaultBorderForControl(), wxWindow::CanApplyThemeBorder().
wxTextCtrl and wxSearchCtrl now get the correct border on wxMSW, and the wxRichTextCtrl sample
also now demonstrates correct borders.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-07 19:22:43 +00:00
Václav Slavík
b5dbe15d0b added WXDLLIMPEXP_FWD_FOO macros in addition to WXDLLIMPEXP_FOO for use with forward declarations (in preparation for GCC visibility support)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-09 10:09:52 +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
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
Paul Cornett
ffdbfc4a76 remove inline from declaration of functions which are not inline
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-01 19:49:10 +00:00
Vadim Zeitlin
0228081ff2 don't crash when EnsureVisible() is called for the hidden root item
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-26 22:26:53 +00:00
Vadim Zeitlin
90c6edd706 TLW default item changes have changed Enter key processing: it was now handled as TAB even for controls such as wxTree/ListCtrl which need it themselves; fix this by checking for VK_RETURN in these classes MSWShouldPreProcessMessage() implementation; also removed specific test for wxTextCtrl in wxWindowMSW::MSWProcessMessage() and simplified its code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-31 22:06:24 +00:00
Vadim Zeitlin
be0e5d699f made wxTree/ListCtrl::HitTest() const
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-06-14 12:00:57 +00:00
Vadim Zeitlin
4523ebb3f1 simplify the client data/non standard images handling code by unconditionally using wxTreeItemParam struct instead of using indirect data only sometimes; also extend it to contain the id which allows to always sort the items correctly (closes bug 1447419) (patch 1449096 from Ryan)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-06 19:17:22 +00:00
Włodzimierz Skiba
989ab1e5a6 Line-up deprecated interface of wxTreeCtrl between ports.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-28 13:11:20 +00:00
Włodzimierz Skiba
027d45e8fc Back to unsigned int count in wxTreeCtrl.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-24 23:46:43 +00:00
Vadim Zeitlin
6f02a879ed make access specifiers for the virtual functions match their access in the base class (patch 1400131)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-08 21:47:09 +00:00
Julian Smart
3f5c62f982 Reverted semicolons patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-18 16:45:41 +00:00
Julian Smart
edef87c827 Applied patch [ 1399013 ] More removals of extraneous semicolons
Wlodek Szafran


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-18 11:46:53 +00:00
Chris Elliott
bb0d2f0379 remove GetImageList(int)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-28 14:05:49 +00:00
Chris Elliott
3f93a7508e avoid hidden GetImageList
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-26 20:09:10 +00:00
Vadim Zeitlin
22574b4a9c renamed DoHitTest() to DoTreeHitTest() to avoid conflict with existing wxWindow method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-17 19:31:40 +00:00
Vadim Zeitlin
46bde8dcf2 removed duplicated members which have been moved to wxTreeCtrlBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-10 21:49:23 +00:00
Vadim Zeitlin
4c2a39bec1 removed deprecated InsertItem() overload because it masked all the other ones
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-10 21:46:24 +00:00
Vadim Zeitlin
8cee4a304f introduced a common base class for both MSW and generic wxTreeCtrl implementations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-10 20:25:02 +00:00
Mattia Barbon
dee1a63ff5 Removed WXWIN_COMPATIBILITY_2_2 together with code guarded by it.
Changed default for WXWIN_COMPATIBILITY_2_4 to 0.
  Added WXWIN_COMPATIBILITY_2_6 (defaults to 1).
  Ran build/update-setup-h.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-09 15:48:42 +00:00
Vadim Zeitlin
96d8f9207f implemented GetBestSize() (TODO: make this available in generic version as well)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-09 13:38:15 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Julian Smart
e3ad57026a Applied patch [ 1212208 ] Fix a bug in wxTreeCtrl with wxTR_MULTIPLE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-06-16 17:01:19 +00:00
Włodzimierz Skiba
e2effeb988 Use treebase.h for enum duplicated in port/treectrl.h.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-05-23 10:28:28 +00:00
Vadim Zeitlin
fbd8ac5236 don't let WM_RBUTTONDOWN reach def window proc as it would enter a local modal message loop waiting for WM_RBUTTONUO and hose our event generation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-04-05 22:59:22 +00:00