Artur Wieczorek
3000091cd2
Allow columns reordering only if its wxCOL_REORDERABLE flag is set
...
Dragging the column should be allowed only if wxHD_ALLOW_REORDER header
style and wxCOL_REORDERABLE column flag are both set.
Closes #18332 .
2019-01-20 13:22:03 +01:00
Artur Wieczorek
715b25aaf3
Allow columns reordering only if wxHD_ALLOW_REORDER style is set
...
Dragging the column should be allowed only if wxHD_ALLOW_REORDER style
is set.
Closes #18329 .
2019-01-17 23:37:49 +01:00
Maarten Bent
39ff5b90e5
Replace wxDeprecatedGUIConstants enum values
2018-11-25 21:29:32 +01:00
Vadim Zeitlin
65ac801c40
Make separator click sensitivity in wxHeaderCtrl DPI-dependent
...
Sensitivity should be greater for high DPI displays to allow the user
clicking as far from the separator in this case as with standard DPI.
Also define a named constant for this value instead of using it
directly.
See https://github.com/wxWidgets/wxWidgets/pull/972
2018-11-12 00:10:56 +01:00
John Gehrig
b07305234c
Fix dragging beyond the rightmost column in generic wxHeaderCtrl
...
Dragging a column header in a wxHeaderCtrl and dropping it past the
rightmost column resulted in a crash due to accessing a column with
invalid index.
Fix this and correctly move the column to the last position when this
happens instead.
This bug notably affected dragging columns in wxGrid.
Closes https://github.com/wxWidgets/wxWidgets/pull/972
2018-11-12 00:08:13 +01:00
Vadim Zeitlin
9c9e8ef537
Remove wxGTK-specific commented out code in wxHeaderCtrl
...
No real changes, just remove some commented out code add back in 2009 by
6a2a30a8aa .
2018-09-17 23:47:27 +02:00
Anil
0fb97907e1
Fix generic wxHeaderCtrl repainting in scrolled state
...
Clear the device context used for painting the tabs to avoid repainting
issues.
Closes https://github.com/wxWidgets/wxWidgets/pull/908
Closes #18209 .
2018-09-17 23:47:27 +02:00
Anil
ad4296fef4
Fix handling mouse events on scrolled wxHeaderCtrl
...
Fix confusion with the coordinates kind in FindColumnAtPoint(): it was
sometimes passed physical mouse coordinates and sometimes logical ones.
Make it clear now that it expects physical coordinates and adjust its
code accordingly.
Also remove a redundant call to FindColumnAtPoint().
Closes https://github.com/wxWidgets/wxWidgets/pull/889
2018-08-23 15:23:21 +02:00
Anil
24820a5a67
Invalidate "hover" column index in wxHeaderCtrl if necessary
...
Don't leave "m_hover" invalid if the number of columns in wxHeaderCtrl
is reduced, as this would result in a crash later when it is used.
This notably fixes a crash after removing the last column from generic
wxDataViewCtrl.
Closes https://github.com/wxWidgets/wxWidgets/pull/852
2018-07-10 12:33:14 +02:00
Paul Cornett
c70abf23aa
Draw a blank header button in any remaining space after last header column
2016-12-11 23:32:23 -08:00
Vadim Zeitlin
25c9b032a8
Don't call CacheBestSize() from DoGetBestSize() implementations
...
This is unnecessary, wxWindow::GetBestSize() already does this, so calling it
from DoGetBestSize() called by it too is just useless.
2016-04-03 18:04:26 +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
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
ce7fe42e84
Provide shorter synonyms for wxEVT_XXX constants.
...
Use the same short names as are used by the event table macros for the event
type constants themselves. This makes them much more comfortable to use, e.g.
Bind(wxEVT_BUTTON) compared to Bind(wxEVT_COMMAND_BUTTON_CLICKED).
The old long names are still kept for backwards compatibility and shouldn't be
removed as it doesn't really cost anything to continue providing them, but all
new event types should only use the short versions.
Closes #10661 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-25 10:11:03 +00:00
Dimitri Schoolwerth
d13b34d3f2
No code changes, fixed various typos.
...
Applied patch by snowleopard2 fixing typos in interface/. Extended the fixes throughout trunk.
Closes #13076 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-03 20:31:32 +00:00
Vadim Zeitlin
fec911b8c6
Remove unused NO_SORT constant.
...
This fixrs an IRIX mipsPro compiler warning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-02-28 11:08:42 +00:00
Vadim Zeitlin
03647350fc
No changes, just removed hard tabs and trailing white space.
...
This commit is huge but there are no non-white-space changes in it.
Some files containing third-party sources (src/msw/wince/time.cpp,
src/x11/pango*.cpp) were left unchanged.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-21 10:41:26 +00:00
Robert Roebling
58e914f015
Remove remaining bits of marker drawing during resizing
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-12 16:15:35 +00:00
Robert Roebling
e946566e73
Remove ugly flicker during resizing
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-11 15:37:53 +00:00
Robert Roebling
6a2a30a8aa
Don't extend last header column button, as the column itself doesn't do it neither
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-22 14:44:05 +00:00
Robert Roebling
6f91f3a333
Further header button details
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-22 14:28:07 +00:00
Robert Roebling
b047e876e0
Further attempts at getting the header buttons right
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-22 14:09:32 +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
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
22f4180e59
return correct (false) value in onSeparator from FindColumnAtPoint() when the position is beyond the last column
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-15 10:08:50 +00:00
Vadim Zeitlin
59704b49c2
don't mistake a simple click on a column for a reordering drag
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-14 23:12:30 +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
7bf5be6b56
fix best size caching
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-12 16:31:39 +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
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
da678e6c39
don't use MSW-only DEFAULT_ITEM_WIDTH but the width returned by the best class GetBestSize() in wxHeaderCtrl::DoGetBestSize() implementation for empty header
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-11 10:50:59 +00:00
Vadim Zeitlin
6327cdd57c
implement column reordering by dragging in the generic wxHeaderCtrl
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-11 00:49:34 +00:00
Vadim Zeitlin
74d283aac4
properly implement Do[GS]etColumnsOrder() in the generic wxHeaderCtrl
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-10 16:24:08 +00:00
Vadim Zeitlin
20db5469a0
provide Do[GS]etColumnsOrder() stubs for the generic wxHeaderCtrl
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-10 16:09:58 +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
a45caa71bf
honour column min width when resizing in wxHeaderCtrl, no need to do it in wxDataViewCtrl
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 17:33:03 +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
e36dcd10d0
add the possibility to cancel drag-resizing by pressing Esc
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 16:30:09 +00:00
Vadim Zeitlin
10118a24c8
forgot to capture mouse during drag-resizing
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 15:20:10 +00:00
Vadim Zeitlin
8fad69b019
fix another logical/physical coords confusion and update the comment to help with this in the future
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 15:11:21 +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
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
04a33b5031
account for scroll offset correctly in the mouse event handler
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 11:37:42 +00:00
Vadim Zeitlin
6090efab94
update column highlight when mouse hovers over the control
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-08 11:26:50 +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
40dc2ae656
update the generic wxHeaderCtrl implementation after r57161
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-07 16:00:10 +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
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