Introduce wxAnyButton class, a common base class for wxButton and
wxToggleButton, allowing to reuse the same implementation for them.
This also allows to implement support for bitmaps in wxToggleButton for all
platforms and make wxBitmapToggleButton a trivial subclass of it everywhere,
similarly to wxBitmapButton and wxButton.
Closes#13198.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Move src/msw/hyperlink.cpp and include/wx/msw/hyperlink.h to
ADVANCED_MSW_NATIVE_SRC/HDR from ADVANCED_MSW_SRC/HDR respectively to ensure
that these files are not used in wxUniv build that uses its own, generic,
versions.
This should fix wxUniv/MSW build as the native files didn't even compile with
wxUniv.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Sort RICHTEXT_{SRC,HDR} contents in alphabetical order, just as it's done for
all the other files list and to make it easier to check if a file already
occurs in these lists or not.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix binary name inside the framework to be the same as the framework name.
Inject a bit of info about the framework into wx-config, so it can output framework flags/names instead of lib flags/names.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add wxTextCompleter class which allows to return the possible completions
dynamically and wxTextCompleter::AutoComplete() overload using it. So far this
is only implemented for wxMSW.
Also fix calling wxTextEntry::AutoComplete(wxArrayString) multiple times under
MSW, this didn't correctly update the list of shown completions before.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Also move src/msw/panel.cpp to the list of normal wxMSW sources from the list
of low-level ones as it's not needed by wxUniv.
Closes#13103.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Applied patch by snowleopard2 fixing a bunch of typos such as misspellings and double words in the documentation. Combined the patch with some local queued typos waiting to be committed as well as adding new typo fixes inspired by the patch.
Function names with American spelling were not changed nor was third-party code touched. The only code changes involve some changes in strings that are translated ("Can not" -> "Cannot").
Closes#13063 (again).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This method provides a simple way to set a background bitmap without defining
an EVT_ERASE_BACKGROUND handler and, more importantly, one that works
correctly in wxMSW for a window with children as it paints the background of
transparent children too.
Add a test of this method to the erase sample.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
So far we have only wxMSW-specific implementation (and also a trivial
wxUniv-specific one) but it's still tidier to have all platform-specific code
in separate files, especially as we're going to have more of it for wxMSW
soon.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxMarkupText is a private class that implements generic handling of markup
strings, i.e. can measure them and render them onto a wxDC.
This class will be used for markup support in wxMSW wxButton.
Also add wxMarkupParserAttrOutput which will be useful for other wxMarkupText
implementations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This code is not used anywhere yet, this commit only adds the parser for the
markup and the related classes as well as the corresponding unit test.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Move wxUIActionSimulator implementation files to low level sources to ensure
that they are included in wxUniv builds.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
PNG images are used by the main wxWidgets library itself now and so linking
with the monolithic wx library introduces dependencies on PNG as well, even
for the console applications. Link them with linpng to avoid linker errors.
Closes#12889.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Update configure and bakefile.m4 for the new version too.
Also add the missing makefiles and projects for the XTI sample.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add validators for integer and floating point numbers.
Add an example of their use to the validate sample as well as a new unit test
and documentation for them.
Use the new classes instead of wxTextValidator in wxGrid code.
Closes#12166.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxNumberFormatter formats and parses numbers with thousands separators.
Add the class itself as well as documentation and the unit test for it.
See #12166.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This eliminates a linking dependency that would drag in the printing
code for any program that used wxColourDialog or wxFontDialog (which
is currently all of them, due to more link dependencies...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66615 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxCompositeWindow<> is a convenient base class for composite windows, i.e.
windows consisting of several other wxWindows. Currently it just automatically
forwards various attributes setters calls to all of the composite window parts
but it could become more useful in the future.
Similarly, for now it is only used in wxDatePickerCtrlGeneric but it could
(and should) be used for other composite controls later and we probably should
even make this class public to allow its use in the client code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The icons are embedded as PNG images directly in the source code to avoid the
need for installing them. This does make the library larger though so provide
a wxUSE_ARTPROVIDER_TANGO option to turn the new code and associated bloat off.
Also turn it off by default under wxGTK as the native art provider is used
there anyhow.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Running the application binary directly still doesn't work quite the same as
when it's opened from Finder (or executed using open) and some tests involving
event loops fail because of this.
Run it using open even if it means that we lose the detailed log output.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxMSW wxCommandLinkButton implementation shouldn't be used in wxUniv so move
src/msw/commandlinkbutton.cpp and include/wx/msw/commandlinkbutton.h to
ADVANCED_MSW_NATIVE_{SRC,HDR} from ADVANCED_MSW_{SRC,HDR} in files.bkl and
rebake the makefiles.
This fixes wxUniv/MSW compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
OS X build slave used its own commands to run unit tests, add -t to them too
to be (hopefully) able to see better where does the test crash exactly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add simple wxVersionInfo class holding the version information.
Also add GetLibraryVersionInfo() static method to wx{JPEG,PNG,TIFF}Handler,
wxStyledTextCtrl and wxXmlDocument classes and wxGetZlibVersionInfo() and
wxGetLibraryVersionInfo() global functions using it.
Closes#12690.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Finally it's unnecessary to define WXUSINGDLL when building wxScintilla
library as it doesn't use the main DLL, it is simply used as part of it.
This reverts r66222 and finally closes#12626.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxScintilla code uses wxVector<> which brings in wxDEBUG_LEVEL-dependent code
so we must use the wxDEBUG_LEVEL value consistent with the rest of the library
when building it.
Simply pass wxDEBUG_LEVEL definition on the compiler command line if it's
different from the default.
Closes#12626.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We need WXUSINGDLL even in monolithic build because Scintilla references wx
debugging functions (wxOnAssert(), wxTheAssertHandler &c) which still must be
seen as being exported from the (monolithic) DLL in this case.
See #12626.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775