In wxPropertyGridPageState::PropagateColSizeDec recursion is replaced with iteration and there is handled PG with more then 2 columns.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Current best size (especially width) of wxPropertyGrid Manager is too small. wxPG manager should be wide enough to hold wxPG with two columns and scroll bar.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxPG manager is now created with proper size (based on its best size) even if default size is requested. (r78149 is a prerequisite for this patch.)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Modify wxPropertyGridManager::RecreateControls() to allow adding/removing categorized/alphabetic mode buttons to/from wxPG manager tool bar at any time (not only when creating the tool bar).
Modify wxPropertyGridManager::SetExtraStyle() to fully support manipulating these buttons via wxPG_EX_MODE_BUTTONS flag.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This assert seems to be quite useless and can be triggered if a key is
(perhaps accidentally) sent to a small (e.g. not yet fully laid out)
wxDataViewCtrl window.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Changes in r78107 would reset control's color to gray if it was disabled
more than once in a row. Guard against this and only remember the color
of an enabled control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78144 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This makes the code slightly simpler (no more need for the scope guard) and
avoids memory leaks when not using wxEntry() (but calling wxEntryStart()
instead).
Closes#16664.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78135 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This is done in preparation for adding a new wxCursor method and will allow us
to define it in a single place by default instead of having to provide stubs
for all ports.
See #16539.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78133 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This ensures that we never forget to delete the handles returned by
GetIconInfo() and also centralizes the error message given if it fails in a
single place.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78132 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This was supposed to be done in r78066, but after introducing this new
wxUSE_XXX symbol I forgot to actually use it in the place it was intended to
be used.
Fixes compilation with wxUSE_STD_DEFAULT==0 and closes#16673.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
These events are supposed to carry a pointer to the menu which was opened or
closed, but wxMenuEvent::GetMenu() always returned NULL for the menus opened
when a child MDI frame was active, as its menu bar, containing the menu, was
not searched for it.
Fix this by overriding MSWFindMenuFromHMENU() at wxMDIParentFrame level, just
as we already do for FindItemInMenuBar().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Show the menu associated with the event, if any, directly in the sample to
make comparing the behaviour of the different ports easier.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add the bitmap margins to the bitmap size, not the total button size.
This fixes the buttons becoming unnecessarily tall as soon as they were
assigned even a tiny bitmap.
Closes#16536.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The comment didn't correspond to the code since the changes of r62842, the
asserts don't result in an immediate trap now even if they happen in non-main
thread.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The text control was left empty if the string value was not specified, but
it should use the numeric initial value instead in this case.
This notably affected wxSpinCtrlDouble under non-GTK platforms.
Closes#16621.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This is a compromise solution between r78040, which handled monochrome bitmaps
correctly, but broke drawing bitmaps without using their mask, and r78054
which simply reverted it: this version preserves the old behaviour when not
using the mask, but draws at least the shape (if not the colour) correctly
for the monochrome bitmaps.
Notice that this also reverts r78039 which is not needed any more without
r78040.
Closes#16512.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Calling SetHICON() is not enough, the icon size already needs to be set or,
even better, CreateFromHICON(), which does both atomically, should be used.
Closes#16672.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxStaticText emulates disabled state on OS X by changing text color to
light grey. When re-enabling the control, though, it always set the
color to the standard text color, which broke static texts with a custom
color.
Fix this by keeping track of the original color and restoring it back
when setEnabled:YES is called.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78107 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775