Commit graph

74 commits

Author SHA1 Message Date
Vadim Zeitlin
dede4b9326 Use "= default" for all trivial default ctors and dtors
Replace user-specified empty constructors and destructors with the
compiler-generated versions, which has a number of advantages for code
generation, in addition to being more clear.

Closes #22965.

Closes #24058.
2023-11-17 01:33:32 +01:00
Ian McInerney
b8d3b37c9e Add new macro for standard library header inclusion
Newer standard library headers should only be included when the compiler
is targetting that standard, otherwise some compilers (like MSVC) will
warn that you are using a newer C++ include on an older version.
2023-07-24 16:54:14 +01:00
Ivan Sorokin
8a01942f1a Add WXK_NUMPAD_CENTER to refer to numpad "5" in portable code
This key produces events with different key codes in wxMSW (WXK_CLEAR)
and the other ports (WXK_NUMPAD_BEGIN), so add a new constant to allow
to refer to it under the same name everywhere.

Also generate a key event for it in wxOSX where it previously wasn't
generated at all.

Closes #23478.

Closes #23491.
2023-05-06 21:57:47 +01:00
Vadim Zeitlin
20bbc43a20 Redefine wxTRANSPARENT_WINDOW as 0 and stop using it
This style never did anything useful in wxMSW and did nothing at all in
all the other ports, so always was rather useless, but became actively
harmful not that WS_EX_COMPOSITED is used in wxMSW because using it and
WS_EX_TRANSPARENT, enabled by wxTRANSPARENT_WINDOW, together doesn't
work and results in an endless stream of WM_PAINT messages being sent to
the _siblings_ of the window with wxTRANSPARENT_WINDOW style.
2022-11-28 19:04:56 +00:00
Vadim Zeitlin
99c52403f9 Use usual half-open interval for wxID_LOWEST..wxID_HIGHEST
The reserved wx IDs were previously in (wxID_LOWEST, wxID_HIGHEST]
range, which was very unusual, as C++ always uses intervals half-open in
the other direction, i.e. [begin, end).

It also conflicted (in theory, if not in practice, as wxID_HIGHEST
wasn't actually used for anything) with the common practice, used even
by wx own samples, of starting the custom IDs at wxID_HIGHEST rather
than wxID_HIGHEST+1.

So change this to use the standard convention, retroactively making all
the code using wxID_HIGHEST valid -- this seems better than insisting on
starting the IDs from wxID_HIGHEST+1.

Closes #22909.
2022-10-25 23:51:21 +02:00
Vadim Zeitlin
0ef1cdcc21 Remove support for wxMotif
This port hasn't been updated for ages and is not used by anybody any
longer, so remove its code to facilitate maintenance.

Also remove references to this port from the documentation and most of
the other places (VMS-specific descrip.vms files still check for it
because it's not clear how to update them all), including configure.

Regenerate the latter and rebake all makefiles.

Finally document that this port is not available any longer.
2022-10-16 16:39:56 +02:00
Vadim Zeitlin
be5095acdd Update documentation of deprecated C++11-related macros
Still document them for completeness, but mention that they are
deprecated and shouldn't be used.
2022-10-15 18:01:34 +02:00
PB
a2b84d40a0 Prune mentions of no longer supported compilers from the docs
Remove mentions of older MSVC versions and very old gcc versions.
2022-10-11 21:32:27 +02:00
Vadim Zeitlin
bd92523bc5 Fix use of Doxygen @addtogroup command
Put Doxygen grouping constructs ("@{" and "@}") in Doxygen comments
rather than plain C++ ones to make them actually take effect. Some old
Doxygen versions (~1.8.5) did recognize them even in plain comments, but
the currently uses 1.9.1 one does not and @addtogroup didn't have any
effect as the result.

This fixes the problem with the "Functions by Category" pages being
empty in the resulting HTML documentation.

See #22572.
2022-08-03 18:28:06 +02:00
Vadim Zeitlin
57bf9c5af5 Escape all "__" in Doxygen to preserve them in the output
New version of Doxygen interprets __foo__ as Markdown markup and
consumes the underscores, which mangles the identifier.

Prevent this from happening by escaping the leading underscore for all
occurrences of "__" outside of the code blocks, this seems to be the
least intrusive fix.

See #22671.
2022-07-30 14:56:23 +02:00
Vadim Zeitlin
2ba9007d0e Add wxCHECK_CXX_STD() and use it to test for C++17 and C++20
Unlike direct tests of __cplusplus, using this macro also works with
(recent enough, i.e. MSVS 2015.3 or later) MSVC versions, even if
/Zc:__cplusplus is not used.

This simplifies some checks and makes some other ones (notably the check
for C++20 used before wxALLOW_COMBINING_ENUMS macro definition) work
with MSVC versions with C++20 support as intended.
2022-05-11 16:57:18 +01:00
Vadim Zeitlin
6f8bc1018b Avoid -Wdeprecated-copy for many event classes from clang 13
Add new macros wxDECLARE_DYNAMIC_CLASS_NO_ASSIGN_DEF_COPY() and
wxDECLARE_NO_ASSIGN_DEF_COPY() and use them instead of
wxDECLARE_DYNAMIC_CLASS_NO_ASSIGN() and wxDECLARE_NO_ASSIGN_CLASS()
respectively to ensure that we declare a (default, if possible) copy
ctor in the classes declaring an assignment operator to avoid clang
warnings about not doing it.
2021-12-15 17:50:55 +01:00
Vadim Zeitlin
77f81bae07 Improve multimedia key constants documentation
Add "since 3.1.0" for the constants introduced back in abd46cb99a (Add
support for multimedia keys to wxMSW and wxGTK, 2016-01-08) and also for
the new constants added in the previous commit.

Also document that WXK_LAUNCH_n keys are only generated by wxGTK.
2021-11-05 00:42:46 +01:00
Dominique Martinet
61d835d8b3 wxKeyCode: add WXK_LAUNCH_[0-9A-F] for gtk bindings
X11 defines Xf86Launch[0-9a-f], which are then also defined as
GDK_KEY_Launch[0-9A-F].

Unfortunately, keys which are not mapped are just plain ignored and the
application is then not able to receive these keyboard events at all.

The original PR https://github.com/wxWidgets/wxWidgets/pull/157 mapped
only LaunchA/B to WXK_LAUNCH_APP1/2, this patch adds the whole range of
keys and keeps LAUNCH_A/B as aliases for WXK_LAUNCH_APP1/2
2021-11-02 10:18:02 +09:00
Vadim Zeitlin
7a8f2dffbd Use standard [[deprecated]] attribute if available
Add yet another wxDEPRECATED_XXX macro, this one simply expanding to
C++14 [[deprecated]] attribute if it's available and nothing otherwise.

It's a bit ridiculous to have so many different macros for deprecating
things, but the new one is useful because the standard attribute can be
used to deprecated enum elements, which is impossible with MSVC-specific
__declspec(deprecated).
2021-07-11 14:47:47 +02:00
Robin Dunn
0df1d81acd Add missing wxDF_PNG to the interface docs 2021-01-11 12:27:30 -08:00
Satya Das
86a3578a11 Fix syntax error in interface headers
Although these headers are not supposed to be compiled, it's still
better to avoid at least the obvious typos in them.

Closes https://github.com/wxWidgets/wxWidgets/pull/2140
2020-12-10 22:53:11 +01:00
Tobias Taschner
1666f58bc6
Change documentation references from OS X to macOS (#1927)
Since OS X 10.12 it has been named macOS so it makes sense
to reference it in documentation as such, even when it
sometimes refers to older versions which were called (Mac) OS X.
2020-07-04 22:08:24 +02:00
Ian McInerney
577faedb65 Fix docs for wxDEPRECATED_MSG macro
Add the missing macro definition.

Closes https://github.com/wxWidgets/wxWidgets/pull/1689
2019-12-29 15:37:13 +01:00
Vadim Zeitlin
8fbca5cb70 Remove all trailing spaces
No real changes, just clean up sources by removing trailing spaces from
all the non-generated files.

This should hopefully avoid future commits mixing significant changes
with insignificant whitespace ones.
2019-01-30 17:35:54 +01:00
Maarten Bent
a377f0e5f0 Get rid of wxRA_LEFTTORIGHT and wxRA_TOPTOBOTTOM styles
This was only used in wxUniv, wxRA_SPECIFY_[COLS/ROWS] can be used instead.
Do not remove them from the definitions, to not break user code.

Closes #18100.
2019-01-27 15:26:16 +01:00
Scott Talbert
c68e5d0617 Fix some spelling/grammar errors in documentation
Mostly replace ungrammatical "allows to do" with correct "allows doing".

Closes https://github.com/wxWidgets/wxWidgets/pull/1183
2019-01-26 03:50:47 +01:00
Vadim Zeitlin
8dc3024514 Add wxID_{LOWEST,HIGHEST} descriptions to the documentation
Make it more clear what do these ones actually stand for.
2018-08-18 14:49:17 +02:00
Vadim Zeitlin
44efb4e3a4 Fix badly formatted Doxygen references in wxStandardID
@ref label argument must be on the same line.
2018-08-18 11:11:31 +02:00
Vadim Zeitlin
ad224330c0 Improve wxID_AUTO_{LOWEST,HIGHEST} description
Explain that the values of these constants are not 0 and 1, as could be
misconstrued by just looking at the enum declaration.
2018-08-18 11:08:14 +02:00
ARATA Mizuki
8cfc74491a Replace wxEXPLICIT with the 'explicit' keyword
See #17655.
2016-09-14 18:45:12 +09:00
Tobias Taschner
baa47dc435 Drop Mac prefix on remaining instances of OS X in docs.
This should have been part of df33c0c491 but somehow where missed.
2016-02-23 13:05:44 +01:00
Vadim Zeitlin
d50abc2d3e Make wxWS_EX_VALIDATE_RECURSIVELY default (and only) behaviour
In practice, almost everybody using validators also seems to use this style,
so make it the default (this hadn't been done when it was originally
introduced because of compatibility concerns, but now, 15+ years later, it's
probably safe enough to change this).
2016-02-09 23:38:23 +01:00
Jens Göpfert
abd46cb99a Add support for multimedia keys to wxMSW and wxGTK
Add WXK_XXX constants for the standard multimedia keys and generate events
corresponding to them under wxGTK and wxMSW.

Closes https://github.com/wxWidgets/wxWidgets/pull/157
2016-01-08 23:22:24 +01:00
Dimitri Schoolwerth
31145b8e3a Fix some typos, no code changes (besides strings) 2015-06-05 02:54:46 +04:00
Vadim Zeitlin
b5f4eaf6bc Document what wxPrintQuality really is.
Mention that it can be either a predefined constant or a number expressing the
resolution.

See #14085.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-23 00:57:14 +00:00
Vadim Zeitlin
33ad33d447 Add wxOVERRIDE and use it in common and wxOSX code.
Make overriding virtual methods more explicit and enable additional checks
provided by C++11 compilers when "override" is used.

Closes #16100.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 13:26:28 +00:00
Vadim Zeitlin
178635b62a Add wxDEPRECATED_MSG() and use it in a couple of places.
This macro should be used instead of wxDEPRECATED() for the new deprecations
as it allows to give a helpful explanatory message (if supported by the
compiler) and also is simpler to use as it doesn't require wrapping the entire
declaration in it but can be simply used before it.

Also add wxDEPRECATED() support for clang as a side effect.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-09-04 00:14:22 +00: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
Robin Dunn
00658758e0 Add wxICON_AUTH_NEEDED
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-30 20:07:49 +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
Vadim Zeitlin
c9223c4a57 Sort wxPAPER_XXX constants alphabetically in the documentation.
This makes it much simpler to find the one you want.

See #14919.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-22 12:51:21 +00:00
Vadim Zeitlin
a0e5592007 Revert all wxNOEXCEPT-related changes.
This reverts r72978, 72984, 72989 and 72992. Do not use wxNOEXCEPT for
wxTextCtrl dtor as this breaks compilation of any user-defined classes
inheriting from it unless they use wxNOEXCEPT as well and the benefits
(fixing a harmless warning for the niche ICC compiler) are just not worth
the compatibility breakage.

See #14826.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-20 12:49:03 +00:00
Vadim Zeitlin
1d9f819c69 Add wxNOEXCEPT and use it for std::streambuf-derived classes.
This fixes warnings from Intel compiler about overriding function using a
different exception specification than the base one and also incidentally
provides a handy macro that can be useful in other situations.

Closes #14826.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-17 23:56:23 +00:00
Robin Dunn
64ea838d8f Add missing WXK constants for the control keys
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-27 03:15:17 +00:00
Vadim Zeitlin
cda7699df7 Document wxPrintQuality and wxPRINT_QUALITY_XXX constants.
Closes #14081.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-10 14:26:18 +00:00
Vadim Zeitlin
1442168125 Implement wxBG_STYLE_TRANSPARENT support for wxGTK.
Use composited windows if supported by GTK+ for wxWindows with this background
style.

Also add wxWindow::IsTransparentBackgroundSupported() and show how to use it
in the sample.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-11 16:26:52 +00:00
Vadim Zeitlin
bd362275b8 Remove Palm OS port.
The platform targeted by this port doesn't exist any more and the port never
achieved really working state so remove the code to avoid having to maintain
it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-15 01:05:28 +00:00
Dimitri Schoolwerth
d9384bfb6d no code changes, fixed some typos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-09 14:04:25 +00:00
Stefan Csomor
606e096810 fixes #13695
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-03 10:53:12 +00:00
Vadim Zeitlin
e65ae1d36d Change value of wxHELP to avoid clash with wxSTAY_ON_TOP.
Using wxSTAY_ON_TOP with wxMessageDialog resulted in "Help" button appearing
since r68537 because these two constants had the same numeric value.

Avoid this by changing wxHELP value to be the same as wxCLOSE_BOX instead: the
latter can't be used with wxMessageDialog so this should solve the problem,
even if there are still conflicts. Also adjust the other button constants
values to account for wxHELP change.

Closes #13433.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:45 +00:00
Francesco Montorsi
38ea03c936 better links to the stock item ID list
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 11:54:14 +00:00
Robin Dunn
ea8fa3c4e6 More interface updates for Phoenix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-27 03:34:29 +00:00
Robin Dunn
e932127792 fixes for missing or broken interface items for Phoenix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-16 17:03:01 +00:00
Robin Dunn
8ff9b17d57 Fix some broken or add some missing interface declarations for Phoenix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-03 01:39:02 +00:00