Vadim Zeitlin
ea99e8e31e
Return the kind of cells span from wxGrid::GetCellSize().
...
Behaviour of GetCellSize() may be very surprising for the unwary as it can
return negative or null "size" of the cell.
Add CellSpan return value to allow the caller to check what kind of cell are
we dealing with easier.
Also document the new return value as well as the function (and matching
SetCellSize()) itself carefully as its behaviour is far from obvious.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-27 19:40:41 +00:00
Vadim Zeitlin
cfbc15ee04
Allow changing horizontal alignment of numeric cells in wxGrid.
...
wxGridCellAttr didn't provide any way to query its alignment attributes
without falling back to the (always defined) default alignment so the code in
wxGridCellNumberRenderer and similar classes simply always used right
alignment,
Add a new wxGridCellAttr::GetNonDefaultAlignment() function which allows to
retrieve the alignment defined in the attribute and use it to use right
alignment by default but allow overriding it.
Add a test to the sample showing a non right-aligned numeric cell.
Incidentally fix a long-standing bug in wxGridCell{DateTime,Enum}Renderers
which used wxRIGHT instead of wxALIGN_RIGHT and so were not aligned properly
even by default.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 01:47:38 +00:00
Vadim Zeitlin
ba0185b557
Add symbolic constant wxALIGN_INVALID and use it instead of -1 in wxGrid.
...
wxGridCellAttr was using literal -1 to indicate "no alignment" which wasn't
immediately obvious, use a new wxALIGN_INVALID (which has the same value)
instead.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 01:47:30 +00:00
Vadim Zeitlin
670d01778a
Extract default grid header renderers from wxGridCellAttrProvider.
...
We must be able to use them even when we have no attributes at all
and even when we have no associated table, so use default renderers in wxGrid
implementation of Draw{Row,Column}Label()/DrawBorder() in this case.
Closes #11230 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-23 14:28:55 +00:00
Vadim Zeitlin
a8030f0eaa
Really fix VC6 compilation after r61919.
...
The change in r61922 which was supposed to do it somehow forgot the fix itself
and added only a comment explaining why it was needed. Really do name the
struct now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-15 17:05:13 +00:00
Vadim Zeitlin
c9a199c6a6
Add virtual dtor to header renderer classes to avoid g++ warnings.
...
g++ warns about class with virtual functions having non-virtual dtor so make
the dtor of wxGridCornerHeaderRenderer virtual even if it's not really needed.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 23:21:48 +00:00
Vadim Zeitlin
ade40d72f0
Fix VC6 compilation after r61919.
...
Work around VC6 bug which resulted in error C2639 when compiling the
declaration of an unnamed struct inside wxGridCellAttrProvider.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 08:37:28 +00:00
Vadim Zeitlin
ba9574c310
Added support for corner, row and column headers renderers to wxGrid.
...
Make it possible to customize the appearance of wxGrid corner window and its
row and column headers by defining custom renderers for them.
Add demonstration of this new feature to the grid sample and update the
documentation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 00:45:29 +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
Robert Roebling
b42d5f7556
Use wxRefCounter instead of wxObjecrDataRef
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-12 20:18:17 +00:00
Vadim Zeitlin
92ffc98a08
reuse wxObjectRefData for various ref-counted classes ( closes #10886 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-12 17:14:28 +00:00
Vadim Zeitlin
ec86c7ce41
no real changes, just remove unneeded empty dtor
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-05-22 19:54:09 +00:00
Vadim Zeitlin
5c3313a968
return the correct number of columns from wxGridStringTable, even when we don't have any rows ( closes #10818 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-05-22 19:53:32 +00:00
Vadim Zeitlin
c5c1ea9648
rename wxGrid::SendSizeEvent() to SendGridSizeEvent() to avoid warnings about conflicts with base wxWindow class method with the same name
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-05-01 22:59:58 +00:00
Vadim Zeitlin
27bb2c8cb7
generate wxEVT_GRID_{COL,ROW}_SIZE events when the user double clicks the separating line too; do not generate these events if the size didn't really change (further improvements to grid events are possible and remain needed, see #10754 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-29 21:59:10 +00:00
Vadim Zeitlin
82edfbe7d9
add a possibility to disable individual grid rows/columns resizing
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-26 17:02:53 +00:00
Vadim Zeitlin
78e7881208
pass ApplyEdit() arguments to EndEdit() too for better backwards compatibility ( closes #10544 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-06 10:38:45 +00:00
Vadim Zeitlin
574e1c5a03
added wxGrid::{Set,Get}{Row,Col}Sizes() methods allowing to save/restore all grid rows/columns sizes at once
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59144 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-25 23:41:29 +00:00
Kevin Ollivier
a05e6efe61
Fix for deprecated constructor issues, setting a function without a body as inline doesn't work for Mac whether debug is set or not. Since it's a workaround for old versions of gcc, limit its use to those cases to avoid future problems.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-24 22:19: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
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
Francesco Montorsi
29efc6e4a4
split wxGrid implementation in grideditors.cpp (for wxGridCellEditor-derived classes), gridctrl.cpp (for wxGridCellRenderer-derived classes)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-11 15:49:37 +00:00
Vadim Zeitlin
763163a80a
split wxEVT_GRID_CELL_CHANGE into wxEVT_GRID_CELL_CHANGING/ED pair for consistency with all the other controls; provide access to new/old value of the cell in the event object
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-22 22:58:49 +00:00
Vadim Zeitlin
31ec8b4e15
added wxGrid::SetColumnsOrder() too
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-16 15:53:38 +00:00
Vadim Zeitlin
fe79f76ba9
added helper Is{Col,Row}Shown()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-15 10:44:29 +00:00
Vadim Zeitlin
3039ade95d
renamed GetColHeader() to GetGridColHeader() for consistency with the other existing accessors (even if this is redundant) and made it public/documented (also documented the others)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-15 10:34:04 +00:00
Vadim Zeitlin
4797b0145c
refresh the grid after resetting the columns positions to the default order
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-14 20:45:39 +00:00
Vadim Zeitlin
009c72169f
add support for hiding columns when using native header control in wxGrid; also added convenient Hide/ShowCol() methods
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-14 17:28:57 +00:00
Vadim Zeitlin
11393d2900
add support for sorting to grid columns
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-14 00:02:30 +00:00
Vadim Zeitlin
cd68daf58a
support column reordering using drag and drop when using wxHeaderCtrl
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-13 00:24:39 +00:00
Vadim Zeitlin
cd4f6f5f8f
fix compuation of dirty cells when the columns are reordered, this didn't work at all before
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-12 17:34:13 +00:00
Vadim Zeitlin
ad805b9e0d
added wxGrid::UseNativeColHeader() (column reordering doesn't work yet); more wxGrid clean up: refactor Init/InitVars/Create
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-11 19:21:20 +00:00
Vadim Zeitlin
8acad210fa
don't make wxGridTableBase::IsEmptyCell() pure virtual, there is really no point to force all derived table classes to implement it when it has a default implementation which works just fine in 99% of cases
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-30 21:51:51 +00:00
Francesco Montorsi
23318a5358
declare all NameStr[] strings as const char using the correct WXDLLIMPEXP_DATA_ macros; in the process, change wxPropGrid window classes to take 'const wxString& name' arguments instead of 'const wxChar *name'
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56651 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 22:16:14 +00:00
Vadim Zeitlin
5c33522fca
replace wx_{const,static,reinterpret}_cast with their standard C++ equivalents
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 02:39:52 +00:00
Stefan Neis
29fac1f6b1
Workaround for bug in gcc-3.1 through gcc-3.3 in handling deprecation.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-08 12:11:07 +00:00
Vadim Zeitlin
9f7aee0198
added the possibility to draw grid lines across the entire window
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-04 23:23:01 +00:00
Vadim Zeitlin
77d2c45c38
add const synonyms for wxGridTableBase::GetNumberRows/Cols(), using const_cast<> all the time is painful
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-20 22:03:27 +00:00
Vadim Zeitlin
8b5f6d9d47
use a single wxKeyboardEvent parameter instead of 4 bools in tons of places
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-20 00:09:28 +00:00
Vadim Zeitlin
8a3e536cd5
- Main change is the addition of wxGridSelectRowsOrColumns selection mode
...
(which is still probably buggy, wxGridSelection needs to be reviewed)
- Add XYToCell() overloads returning wxGridCellCoords (instead of modifying the
argument passed by reference -- where did this come from?) and document them.
- Added GoToCell() which does make the new current cell visible unlike
SetGridCursor() (which was documented as doing it, but wasn't)
- Changed SetCurrentCell() to only not change the cell if wxEVT_GRID_SELECT_CELL
it generates is vetoed, not just processed as this seems to make more sense
- Split jumbo (~400 lines) ProcessGridCellMouseEvent() function into chunks
- Add many more comments to make reading this code seem less like puzzle
solving for the next unfortunate soul to do it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-19 23:33:04 +00:00
Vadim Zeitlin
10a4531d1d
more grid folding: got rid of duplicate version of methods for finding the closest row/column edge, appending/inserting/deleting rows/columns, and moving cursor vertically/horizontally
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-16 16:31:44 +00:00
Vadim Zeitlin
bec7026270
start of the great grid folding: introduce wxGridOperations class and use it to avoid duplicating the same code for rows and columns in a couple of methods
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55652 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-16 08:32:12 +00:00
Vadim Zeitlin
ff72f628bb
more cleanup (removed some TODOs/FIXMEs); use native header drawing for the corner window too if it is enabled at all
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-15 14:06:28 +00:00
Vadim Zeitlin
02f3ee3d10
remove the now unused GetScroll[XY]
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55643 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-15 13:36:28 +00:00
Vadim Zeitlin
bf2c8b318e
take old (wx 2.2? older?) wxGrid compatibility functions inside WXWIN_COMPATIBILITY_2_8; rearrange some declarations order but no real changes
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55641 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-15 12:18:07 +00:00
Vadim Zeitlin
69367c566e
move the grid-specific workaround for scrollbar hysteresis to wxScrollHelper itself, the scrollbars now should not only appear but also disappear correctly during resizing
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-14 22:44:08 +00:00
Vadim Zeitlin
801a964104
no changes, just removed the unnecessary wxGrid:: qualifiers
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-14 21:28:44 +00:00
Vadim Zeitlin
5d984f5d97
fix the event type in EVT_GRID_[CMD_]COL_MOVE declaration: this event handler receives wxGridEvent and not wxGridSizeEvent
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-12 12:49:11 +00:00
Vadim Zeitlin
1edce33f7e
override SetDropTarget() in wxGrid to associate it with wxGridWindow as this is what things tend to be dropped on (patch 1903103)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-02-27 17:19:42 +00:00