Commit Graph

282 Commits

Author SHA1 Message Date
Vadim Zeitlin
6d54c49b2a Fix build with classic MinGW in strict ANSI mode when using PCH
The hack used in cc774bb301 to include some
standard headers after undefining __STRICT_ANSI__ doesn't work when
precompiled headers are used because the headers had been already included
from wx/wxprec.h then.

So instead bite the bullet and just reproduce MinGW stdlib.h declarations to
define "environ" ourselves, it's not that bad and hopefully won't need much
maintenance as later versions won't need the strict ANSI workarounds at all.
As for tzset(), wxDECL_FOR_STRICT_MINGW32() can be used for it without any
problems at all, not sure why hasn't it been done like this since the
beginning.

See #16984.
2016-05-30 19:30:14 +02:00
Vadim Zeitlin
026659297b Fix path/URL confusion in wxLaunchDefaultBrowser()
Add a helper wxLaunchBrowserParams struct with clearly distinct "url" and
"path" fields and GetPathOrURL() accessor which returns whichever is
appropriate.

This makes the code more clear and ensures that we never pass URLs (but only
file paths) to xdg-open under Unix as it doesn't handle them.

See #17227.
2016-02-07 19:32:18 +01:00
Tobias Taschner
1f0a82b6a7 Update outdated year references to 2016.
Use 2016 instead of 2015, mostly in version info files.
2016-01-18 14:30:54 +01:00
Tobias Taschner
8282c1be0f Remove Windows CE support
Windows CE doesn't seem to be supported by Microsoft any longer. Last CE
release was in early 2013 and the PocketPC and Smartphone targets supported by
wxWidgets are long gone.

The build files where already removed in an earlier cleanup this commit
removes all files, every #ifdef and all documentation regarding the Windows CE
support.

Closes https://github.com/wxWidgets/wxWidgets/pull/81
2015-09-23 00:52:30 +02:00
Vadim Zeitlin
cc774bb301 Fix building and using the library with MinGW -std=c++{98,11} options.
These options enable "strict ANSI" mode in MinGW which omits declarations of
POSIX functions from the standard headers. To allow the library and, possibly
even more importantly, the user code including our headers, to compile with
these options, declare the functions that we need ourselves.

This might appear to go against the spirit of "strict ANSI" mode, but the only
alternative would be to not use such functions at all and silently cripple the
library when -std=c++NN is used, compared to -std=g++NN case, and this doesn't
seem appealing neither.

Closes #16984.
2015-06-14 19:52:26 +02:00
Dimitri Schoolwerth
6ca759b20b Update outdated year references to 2015.
Use 2015 insteaf of 201x, mostly in the manual and .plist files.
2015-04-30 16:11:30 +04:00
Vadim Zeitlin
df13791078 Merge wxQT branch into the trunk.
This merges in the latest sources from GSoC 2014 wxQt project with just a few
minor corrections, mostly undoing wrong changes to common files in that branch
(results of a previous bad merge?) and getting rid of whitespace-only changes.
Also remove debug logging from wxGrid.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 01:50:11 +00:00
Vadim Zeitlin
e871a2157d Add wxGCD() helper function.
It is needed in wxMSW code and it looks like it could be useful to the library
users, so make it public.

See #16254.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-07 21:03:25 +00:00
Vadim Zeitlin
fb99672f62 Hopefully finish removing the old wxCocoa port.
Get rid of the rest of __WXCOCOA__ tests in the sources.

Drop configure option for using it.

Also remove the documentation for this port.

This should have also been part of r76735.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-03 22:03:21 +00:00
Václav Slavík
7a25cf4932 Don't use the deprecated 'register' storage specifier.
It is not only useless with any modern C++ compiler, but also deprecated
in C++11.  Removing it fixes Clang warnings on the subject.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-19 17:23:02 +00:00
Vadim Zeitlin
49b8d79c87 Remove (Open)Watcom support.
This compiler is not being developed since several years and almost certainly
can't be used to build the current wxWidgets sources anyhow, so remove all
support for it, including a lot of extremely ugly workarounds for its bugs
with template functions.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-16 13:01:06 +00:00
Vadim Zeitlin
01f9accd19 Remove wxPM, wxWidgets port to OS/2.
This port is not used and is not being worked on, so remove it to reduce the
amount of the code which needs to be updated for every global change.

Also remove tests for VisualAge compiler which isn't used since ages.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-15 23:56:58 +00:00
Vadim Zeitlin
aeadb41900 Update copyright year in the library versions.
Update the version info dialog and the version info included in MSW DLLs.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-30 03:32:49 +00:00
Paul Cornett
967a94c91a remove WXWIN_COMPATIBILITY_2_6, add WXWIN_COMPATIBILITY_3_0
closes #15792

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 20:07:33 +00:00
Vadim Zeitlin
a7ec1d1cdf Fix crash when setting invalid label with "&" at the end.
We detected that the label was invalid and gave a debug warning message about
it but then still proceeded to crash by accessing the data beyond the end of
the string. Don't do this.

Closes #15665.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-11-13 12:53:10 +00:00
Vadim Zeitlin
a33511aeeb Update the year in the built-in wxWidgets version dialog.
Simply s/2011/2013/

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-10-14 15:07:54 +00:00
Paul Cornett
4d8a4ee70f build fix for wxUSE_UNICODE==0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-10-07 16:06:08 +00:00
Vadim Zeitlin
a05ae051d8 Fix capturing non-ASCII output using wxExecute().
Explicitly use wxConvLibc with wxTextInputStream to make sure we correctly
decode non-ASCII data in the subprocess output.

This is a hack, the real solution would be to make wxTextInputStream work
properly with wxConvAuto.

See #14720.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-10-05 23:30:52 +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
Václav Slavík
19c453d0ac Use int instead of wxWindowID in wxNewId() and friends.
The functions are available in wxBase builds too, but wx/windowid.h
isn't. Rather than always including that header, just use int, for which
wxWindowID is a typedef. This keeps the functions available in wxBase
for compatibility and is consistent with how IDs are handled in other
parts of wxBase, particularly wxEvent.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-11 07:53:35 +00:00
Václav Slavík
1c6a98048b Use wxWindowID in wxNewId() and related functions.
wxNewId(), wxRegisterId() and wxGetCurrentId() functions all work with
window IDs, so they should use the dedicated type. Previously, they
worked with long, which is not even the same type (wxWindowID is int),
causing implicit type conversion warnings.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-11 06:58:35 +00:00
Vadim Zeitlin
d1c063b90f Don't ignore child process output if it exits with -1 exit code.
While this code is used by us if the program couldn't be launched at all, it
doesn't mean that it didn't run as -1 could also be returned by the child
process to indicate an error after outputting something, so we should still
read its output in this case.

Closes #15205.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 00:33:04 +00:00
Paul Cornett
f81bc2ba5e move wxGet{Colour,Font}FromUser() out of utilscmn.cpp so they don't have to be in every app that links statically
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-30 06:56:50 +00:00
Vadim Zeitlin
da0ee16ef9 Use __DARWIN__ instead of __WXOSX__ in non-GUI code.
This fixes compilation of non-wxOSX ports (e.g. wxGTK) under OS X.

Also make the difference between the two symbols more clear in the
documentation.

Closes #14503.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-23 15:03:42 +00:00
Vadim Zeitlin
6f41c10973 Force wide char environment version initialization in wxGetEnvMap().
When using MSVC CRT, the wide character version of the environment is not
always initialized when using main() (and not _wmain()) as entry point, so
force initializing it before using _tenviron.

Closes #14231.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-30 16:33:40 +00:00
Vadim Zeitlin
345c78ca5f Use wxDynamicCast() instead of IsKindOf() checks.
wxDynamicCast() is less verbose (due to the absence of "CLASSINFO") and more
compatible with the standard dynamic_cast<>, so prefer to use it when possible.

See #14356.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-01 11:01:18 +00:00
Vadim Zeitlin
c833f0cdb0 Use iterators instead of indices in wxStripMenuCodes().
Make the function more efficient when using UTF-8 wxStrings by using iterators
instead of indices in the loop searching for "&".

Closes #14307.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-15 10:03:53 +00:00
Vadim Zeitlin
2415cf6725 Remove support for MetroWerks CodeWarrior compiler.
This compiler doesn't exist any more and was probably unsupported even in 2.8,
let alone 2.9, so remove all the __MWERKS__ tests to simplify things.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 18:40:11 +00:00
Vadim Zeitlin
d98a58c543 Use __WINDOWS__ for OS kind checks and reserve __WXMSW__ for GUI toolkit.
This change prepares the way for using wxGTK under Windows as this would
still define __WINDOWS__ but use __WXGTK__ instead of __WXMSW__.

Closes #14064.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-04 00:29:31 +00:00
Vadim Zeitlin
0e1f8ea4a3 Remove wxMGL port.
The company behind MGL toolkit (SciTech) doesn't exist since several years and
this port is not used by anybody, so remove it to ease maintenance burden.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-15 14:46:41 +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
Vadim Zeitlin
b54a0e3913 Do not declare "environ" variable ourselves under MSW.
The changes of r69564 making "environ" declaration unconditional broke
MinGW 4.6 build, presumably because "environ" is declared differently (as DLL
exported?) there, so avoid declaring it under MSW, we don't need to do it
there anyhow as it's always defined in system headers.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-04 12:26:24 +00:00
Vadim Zeitlin
4878fbb880 Make wxQsort() definition exactly the same as declaration.
Remove the extra "const" in the first parameter.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-04 09:09:54 +00:00
Vadim Zeitlin
449cc35153 Don't make wxQsort() extern "C" nor use any special convention for it.
It doesn't make sense to require passing C functions to wxQsort() that we
define in a C++ library. We also don't need any special calling convention
here.

Notice that the only existing uses of wxQsort() inside wxWidgets itself were
not actually extern "C" and one of them didn't even use the correct calling
convention.

Also avoid using non-wx-prefixed CMPFUNCDATA identifier in a public header,
rename it to wxSortCallback instead.

Finally make wxQsort() documentation slightly more useful.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-27 21:10:48 +00:00
Vadim Zeitlin
14c350dfc7 Explicitly declare environ variable.
While POSIX and SUS both mandate this variable existence, they don't say that
it needs to be declared anywhere and it actually doesn't seem to be declared
under Solaris when using Sun CC and so using it resulted in compilation errors.

Just declare it ourselves to avoid them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-27 21:10:43 +00:00
Vadim Zeitlin
8fcf7cd035 No real changes, just update copyright year in wxInfoMessageBox().
s/2010/2011/

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-24 11:52:57 +00:00
Vadim Zeitlin
7112cdd1f3 Add support for wxHELP button to wxMessageDialog.
Implement support for wxHELP for wxMSW, wxGTK and wxOSX/Cocoa (at least when
showing the message box from the main thread, there doesn't seem to be any way
to show more than three buttons with CFUserNotificationDisplayAlert() so
"Help" button is not supported when using it).

This is useful not only on its own, i.e. to allow the user to ask for help,
but also because it brings the total number of buttons supported by the
message dialog to 4, meaning that more choices can be offered to the user
(which is rarely, but not quite never, useful).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-04 22:53:42 +00:00
Dimitri Schoolwerth
a1b806b982 Replaced Ok() occurrences with IsOk() throughout trunk.
Additionally renamed wxOSX' private wxNativePrinterDC::Ok() function to IsOk().

Didn't deprecate the various Ok() functions: given the amount of changes already introduced in 3.0 a trivial one like this seems more suitable for after 3.0.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-03 16:29:04 +00:00
Stefan Csomor
902ddbfd3e support wxWindowDisabler on osx_cocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-05 12:21:20 +00:00
Stefan Csomor
eeb415ecbe fixes #12935
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-02-18 19:06:11 +00:00
Stefan Csomor
edb31724bc fixing osx iphone build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66332 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-04 13:34:19 +00:00
Vadim Zeitlin
ccec90930c Add wxVersionInfo and functions returning it for 3rd party libraries.
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
2010-11-25 00:53:44 +00:00
Jouk Jansen
04b11eb3fb Create work-around for wxGetEnvMap on OpenVMS (correction)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-11-01 11:58:31 +00:00
Jouk Jansen
cc22153550 Create work-around for wxGetEnvMap on OpenVMS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-11-01 09:48:56 +00:00
Vadim Zeitlin
1f4c7e791b Compilation fix: don't use "environ" under OS X.
The global environ variable is not directly accessible under OS X, use
_NSGetEnviron() instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-25 09:22:19 +00:00
Vadim Zeitlin
164db92c14 Add support for specifying child process cwd and env to wxExecute().
Add an optional wxExecuteEnv parameter to wxExecute() which allows to specify
the initial working directory and custom environment for the child process.

Closes #12163.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-24 22:40:11 +00:00
Julian Smart
a94656538f Use common inline version of wxHexToDec
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 12:59:52 +00:00
Vadim Zeitlin
5276b0a53c Use wxDELETE() and wxDELETEA() when possible.
Use wxDELETE[A]() functions which automatically NULL out their arguments after
deleting them instead of doing it manually.

Closes #9685.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-20 18:18:23 +00:00
Vadim Zeitlin
b326934c03 Change the year in copyright messages to 2010.
Happy new year to all wx-ers!

Closes #11584.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-31 13:36:23 +00:00
Stefan Csomor
766fc09288 avoiding string conversions on 1st param of wxStat, as the latter is having a param of wxString now always and does the conversion internally
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-09 07:38:22 +00:00