If the previous radio box size was too small (notably (0,0) as it happened
during AUI relayout), the buttons were positioned without taking the box
margins into account, resulting in visually broken display.
Recompute the full size after setting the new size but before positioning the
buttons in wxRadioBox::DoSetSize() to avoid this.
Closes#14087.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Don't use "%ld" for int argument (this is harmless but unnecessary) and cast
wxUIntPtr to long before using it with "%ld" as otherwise its size is greater
than that of long in Win64 builds.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Previously, keyboard focus indicator was only shown if there were
multiple editable columns. This was confusing to the user in
applications where the number of editable columns changes: somethings
focus would work, sometimes not. (In reality, it worked in both cases,
but wasn't visually indicated.)
Just always show the indicator if there are any editable columns. Notice
that the indicator is only painted after the user pressed left or right
arrows, thus indicating interest in keyboard focus. Without that, only
the regular indicator is shown (this is the same as before this commit).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
If a wxComboBox was created with ID=1000, clicking in its drop down didn't
work.
It turns out that the native combobox control always creates its dropdown
listbox with the ID of 1000 and that when we were getting LBN_SELCHANGE from
it we mishandled this message because our code mistakenly believed that all
messages from the ID of the control itself were, in fact, coming from this
control, which wasn't the case here.
Fix this by adding a special check for this case in wxComboBox. Also
virtualize the dynamic cast which was done in wxWindow::FindItem() as this
makes the code simpler and allows to get rid of __WXUNIVERSAL__ #ifdef as
well.
Closes#15647.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Check whether the parent is not shown instead of checking the window itself
because the window is never shown when we're in process of showing it. We need
to avoid animations in the case when it still won't be shown even after
showing it, and this is achieved by checking its parent visibility.
Closes#15643.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This seems to be still enough to align the static text label and the text
control contents when they are positioned next to each other but reduces the
amount of "lost" space when they are positioned under each other.
Closes#15637.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Handling these events before the initialization was over could result in a
crash because m_categoryDefaultCell wasn't yet initialized when the window was
created. Fix this by ignoring these events during initialization.
Closes#15642.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Make it different from magenta itself, otherwise a colour constructed from
"magenta" string was returning "light magenta" as its name.
The exact value of this colour is not well-defined, another commonly used one
seems to be 0xff80ff, but in a lot of places it is used as a synonym for
fuchsia pink which is pretty unambiguously 0xff77ff.
Closes#15628.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Avoid conflict between wxMSW symbol defined in wx/platinfo.h in this build
configuration and wxMSW namespace by renaming the latter to wxMSWImpl, which
is also consistent with the namespace name used elsewhere.
Closes#15624.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This helps with ensuring that the generated CHM always has the inheritance
diagrams as by default Doxygen creates it successfully even if dot is not
found -- but without any graphs.
Closes#15620.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxSelectionStore::m_count was somehow never initialized, and even although
this seems harmless right now, don't leave it uninitialized if only to avoid
Valgrind warnings about using this.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This results in fatal #errors from the standard <assert.h> which doesn't want
to be included with _CRTBLD defined. Generally speaking, defining _CRTBLD
looks like a very wrong thing to do and it's probably not necessary any more
(considering that it was done in r25683 almost 10 years ago) but only avoid
doing this with VC 12 for now to avoid breaking anything else before 3.0.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
*Lots* of native dialogs don't call SetReturnCode() in their ShowModal()
implementations in wxMSW. Rather than fixing them all - and having them
accidentally broken again and again in the future - fix this just in the
generic ShowWindowModal() implementation. This may not be the most elegant fix,
but it is bullet-proof.
Also revert previous attempt to fix just wxMessageDialog in r74776.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Keep the most important points, remove the obsolete stuff.
Also get rid of 99% of the contents of BuildSVN.txt which simply duplicated
the information from the other files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75080 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This allows to pass extra arguments to windres, which is especially important
when using 64 bit windres for building 32 bit applications as the generated .o
file uses a wrong architecture unless "-F pe-i386" is explicitly specified.
See #15601.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This ensures that the files created by wxTextCtrl::SaveFile() can be read back
by wxTextCtrl::LoadFile() as previously the files were saved using the current
locale encoding but read back using Latin1 (after first trying, and failing,
to read them as UTF-8).
This is a backwards incompatible change but it ensures that wxTextCtrl can
load its own files and is also consistent with the use of UTF-8 by default in
other places. Finally, and perhaps most importantly, this ensures that the
file contents can always be saved, i.e. there is no risk of conversion errors
any more.
Closes#15611.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775