Commit Graph

36 Commits

Author SHA1 Message Date
Robin Dunn
ba8540022f Move a couple standard virtuals to protected sections so they can be overridden in derived classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-30 20:59:46 +00:00
Vadim Zeitlin
9de49b112f Explicitly cast size_t to int to suppress MSVC warnings.
Implicit size_t-to-int conversions provoke warnings when building 64 bit
version (in which sizeof(size_t) > sizeof(int)) with MSVC, so make them
explicit as the size_t values used here will always fit in int range.

Closes #14113.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-19 12:53:21 +00:00
Václav Slavík
5313727812 Make column width calculations in wxDataViewCtrl and wxHeaderCtrl consistent.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-14 16:51:57 +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
9b11752c4f require semicolon after wxDECLARE/DEFINE_EVENT() (closes #10456)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-07 18:59:25 +00:00
Vadim Zeitlin
3c77890141 add more flexible and safer template Connect() overloads (#10000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-12 14:26:13 +00:00
Vadim Zeitlin
8a2e3f80f6 correct typo: s/wxUSE_MENU/&S/
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-11 00:57:48 +00:00
Vadim Zeitlin
e721a2a2a4 added wxUSE_HEADERCTRL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-11 00:57:08 +00:00
Vadim Zeitlin
faef508f6a fix build with wxUSE_MENU==0 (closes #10330)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-11 00:34:09 +00:00
Vadim Zeitlin
ddd0db9619 extract AddColumnsItems() from ShowColumnsMenu() to make it possible to reuse it in custom menu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-30 23:19:06 +00:00
Vadim Zeitlin
482d06f8b5 made wxHeaderCtrl::GetColumn() const to get rid of the const_cast<>s
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-17 00:11:57 +00:00
Vadim Zeitlin
af67f39da8 added wxRearrange{List,Ctrl,Dialog} and use it in wxHeaderCtrl and wxGrid to provide a way to interactively customize the columns
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-16 23:56:56 +00:00
Vadim Zeitlin
613de0e89e handle actions of the columns popup menu in wxHeaderCtrl itself (but the derived class must implement UpdateColumnVisibility()); also renamed wxHD_DRAGDROP to wxHD_ALLOW_REORDER as it will be possible to reorder columns interactively using a customization dialog and not just by dragging them soon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-15 22:42:37 +00:00
Vadim Zeitlin
e8f25dbbce added a helper function to show the popup menu allowing to configure the columns in header control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-15 11:03:59 +00:00
Vadim Zeitlin
f665539195 no changes, just refactoring: extracted the code to update the column indices array when the number of columns changes to the common code to be able to reuse it from the MSW version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-14 21:56:38 +00:00
Vadim Zeitlin
da5a641fc8 added wxHeaderCtrl::ResetColumnsOrder() function; use it from wxGrid
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-14 20:02:44 +00:00
Vadim Zeitlin
1bb7462687 don't duplicate the column reordering in generic wxHeaderCtrl and wxGrid, extract it into a (public) helper function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-11 22:27:02 +00:00
Vadim Zeitlin
4635abaca6 added wxHeaderCtrl::OnColumnCountChanging()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57255 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-11 17:15:43 +00:00
Vadim Zeitlin
dcb6cbecc8 extract setters from wxHeaderColumnBase into a separate wxSettableHeaderColumn class as we don't always need to implement them in order to use this class; also renamed wxHeaderColumnBase to just wxHeaderColumn as we didn't have any wxHeaderColumn at all
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-11 13:05:48 +00:00
Vadim Zeitlin
70405f7e3d undo accidental change of r57233
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-10 16:24:54 +00:00
Vadim Zeitlin
565804f2b9 added EVT_HEADER_DRAGGING_CANCELLED event sent when either resizing or reordering operation is cancelled instead of having a special cancelled flag in normal END_RESIZE/REORDER events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-10 16:05:21 +00:00
Vadim Zeitlin
702f5349c6 implement column reordering support in wxMSW wxHeaderCtrl; use it in wxDataViewCtrl (and make difference between column indices and positions more clear in it)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57232 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-10 15:56:11 +00:00
Vadim Zeitlin
396825dced rename wxHeaderCtrl DRAG events into RESIZE ones as we're also going to have column drag-reodering
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 16:38:56 +00:00
Vadim Zeitlin
aef252d9da implement column resizing events in wxHeaderCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 14:40:42 +00:00
Vadim Zeitlin
e5a1635371 added wxHeaderCtrlSimple::GetBestFittingWidth() for even more automatic column resizing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57187 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 12:28:41 +00:00
Vadim Zeitlin
3bfaa5a7e4 add wxEVT_COMMAND_HEADER_SEPARATOR_DCLICK and semi-automatic header resizing support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 12:15:17 +00:00
Vadim Zeitlin
056d5a89ff correct WXDLLIMPEXP symbols for the event constants
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 11:20:51 +00:00
Vadim Zeitlin
0c02fc7765 undo accidental change to always use generic version in r57178
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 07:52:19 +00:00
Vadim Zeitlin
fa3d4aaf0f implement click events in wxHeaderCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 00:57:53 +00:00
Vadim Zeitlin
e2bfe6731e - Rewrite wxHeaderCtrl to be virtual-like: even if we don't need an infinite
number of columns in it, it turns out that getting column information from
  the associated control is much easier than copying it into the control.
- Provide wxHeaderCtrlSimple derived class which can be used easily if
  callback approach of wxHeaderCtrl is not needed.
- Because of wxHeaderCtrl virtualization, port-specific implementations of
  wxHeaderColumn are not needed any more and were removed.
- Use wxHeaderCtrl in the generic wxDataViewCtrl: this means that column
  events are broken right now in it as they haven't been implemented by
  wxHeaderCtrl yet, this will be fixed a.s.a.p.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-07 14:47:55 +00:00
Vadim Zeitlin
b63f9a3330 generic implementation of wxHeaderCtrl API so far
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-05 22:44:54 +00:00
Vadim Zeitlin
d8fc3398ac move ScrollWindow() implementation to the base class and call private DoScrollHorz() from it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57135 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-05 22:43:37 +00:00
Vadim Zeitlin
a3e0efb6a4 override GetDefaultBorder() to not use border by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-05 22:34:29 +00:00
Vadim Zeitlin
a000920547 add Show/HideColumn() methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57132 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-05 21:50:30 +00:00
Vadim Zeitlin
bd93de46e9 disable generic version, it's not ready to be committed just yet
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-03 21:54:34 +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