Contrary to the comment in wx/wxcrtbase.h, wcsftime() doesn't seem to be
available under quite all the systems, notably it doesn't seem to be present
in OpenBSD at all, even in the very latest version.
Add a configure test for this function and fall back to our own implementation
if the system doesn't have it.
Closes#12766.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxWidgets 2.9 doesn't support building without wchar_t any more so always
define wxUSE_WCHAR_T and give an error from configure if wchar_t is really not
available.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
WINDRES_CPU_DEFINE is just another resource compiler flag which should be part
of RESFLAGS instead of being added to RESCOMP definition itself. This is not
only more logical but also fixes the problem with matching RESCOMP against
"windres" or "wrc" in wx-config.
See #12356.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Check for Cairo in configure for wxX11 too.
Fix compilation of wxCairoContext for non-{GTK,MSW} platforms.
Also make wxUSE_CAIRO a "normal" option, i.e. add it to all wx/setup.h files
instead of defining it as 1 unconditionally for wxGTK and 0 for everything
else.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This undoes the hack of r35357 which surreptitiously removed all Cairo
libraries from the GTK libraries list. This shouldn't be necessary any more as
we use Cairo calls in our own code and so can't run without it anyhow and in
fact is even actively harmful as it results in linking errors under Fedora 13
(which seems to use a slightly different linker?).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
ctl3d32 was used for Win16 development and is not used by wxMSW since many
years, don't link with it unnecessarily when using MinGW.
Also remove a FIXME comment about an issue which doesn't seem to need any
fixing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Correct a lot of problems with the initial implementation, notably make the
API consistent across all platforms, e.g. all keyboard-related methods now
take just a wxKeyCode.
Add some useful higher-level helpers such as Text() and MouseDragDrop().
Improve documentation.
wxUIActionSimulator now works under MSW, GTK and OS X and is enabled by
default.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This is a generalization of wxMessageDialog based on the native task dialog
under recent (Vista and later) Windows versions and implemented generically
for the other ports for now.
It provides the possibility to use additional controls in the message boxes
(checkbox useful for the "Don't ask me again" kind of dialogs and collapsible
detailed explanations field) and better look and feel under Windows.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
A command link button wraps a native MSW control under recent Windows versions
and is implemented generically as a simple bitmap button elsewhere.
In the future, GTK implementation should allow using a different font for the
button label and its note.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We never defined wxDEBUG_LEVEL as 0 meaning that debugging code in wxWidgets
was always enabled, even if --disable-debug_flag or --disable-debug (which
implies it) was given.
Fix this now by adding -DwxDEBUG_LEVEL=0 to CPPFLAGS if necessary.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use "wxWindows licence" and not "wxWidgets licence" (the latter doesn't
exist) and consistently spell "licence" using British spelling.
See #12165.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Implements checks similar to gcc's compile-time checks: verify that the
arguments are of correct types. This works partially at compile time
(e.g. passing an object as argument fails to compile) and partially at
runtime (assert if the specifier doesn't match the type).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
__GXX_RTTI is only defined since g++ 4.3.2 and so we can't rely on its absence
as indicating the use of -fno-rtti switch with the older versions of the
compiler, only do this for g++ 4.3+.
Also define wxNO_RTTI from configure if --enable-no_rtti was used as we can't
always detect it automatically.
Closes#11955.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
MinGW doesn't include gdiplus.h but it can be installed independently by the
user. Allow to use it if it's available:
- Include windows.h when checking for it in configure as this is apparently
needed for its compilation.
- Don't reset wxUSE_GRAPHICS_CONTEXT to 0 for non-Microsoft compilers, instead
just define it as 0 by default for them, allowing the user to simply change
the definition in wx/msw/setup.h.
Closes#11892.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The uiaction sample was never built under Unix, do add it to SAMPLES_SUBDIRS
to enable building it if wxUSE_UIACTIONSIMULATOR==1.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Recognize QNX and define __QNX__ under it.
Don't use -lpthreads as the thread functions are in libc under QNX.
Use wxX11 by default.
See #11790.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Previous mipsPro versions don't give this warning but do warn about "unknown
warning number 3970" if we use this -woff which is even more annoying than
original warning we tried to suppress.
This is a forward port of r45896 which somehow was only applied to 2.8 branch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Don't define wxUSE_FSWATCHER as 1 in configure if we can't implement it.
Also add a check to wx/unix/chkconf.h to verify that we didn't end up with an
inconsistent configuration somehow.
Closes#11670.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We tested for png_check_sig() which was deprecated and is not available in the
latest libpng 1.4 any more. Just use another, not deprecated and not new,
function for the test.
See #11625.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63137 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
sw_vers outputs e.g. 10.4.11 under 10.4 so comparing its result with just 10.4
is wrong, match it against "10.4*" using case instead to ensure that 10.4.11
is indeed recognized as 10.4.
Closes#11579.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
TOOLKIT is never set to "MAC" at all (it is one of OSX_{CARBON,COCOA,IPHONE})
so it is not necessary to test for it. And for the other cases the special
logic for OS X ports was the same as the general case so it seems to be
unnecessary as well.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62871 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This is another Mac (wxUSE_MAC is defined) port with TOOLKIT=OSX_IPHONE.
Also use this port by default for arm-apple-darwin platforms.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
There is no sw_vers when cross-compiling, just assume 10.4 system in this
case and point the user to --with-macosx-version-min which can be used to
override this.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Change --with-cocoa to be synonym for --with-osx_cocoa, add --with-carbon as a
synonym for --with-osx_carbon for consistency and --with-osx as a synonym for
--with-mac.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
For MSW, check for gdiplus.h availability when using configure but only
support it for MSVC 7+ otherwise. For the other platforms, always support it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Merges everything from the branch with only some minor changes, mostly renamed
wxUSE_FSWATCHER_{INOTIFY,KQUEUE} to wxHAS_{INOTIFY,KQUEUE}.
Add wxFileSystemWatcher and related classes.
Also introduces wxEventLoopSource.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use a separate WXCONFIG_LDFLAGS variable for the flags which should be used
when linking applications using wxWidgets and not wxWidgets itself.
The only intentional effect this change is supposed to have right now is that
-arch options added to LDFLAGS when building wx for multiple architectures
under OS X are not used for building the applications any more.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We must explicitly define WX_CPU_AMD64 when compiling using mingw64 and
configure as wx/msw/genrcdefs.h is not used in this case and even if it were,
it wouldn't work because g++ doesn't define _M_AMD64 (unlike MSVC).
So just add the flag directly to windres command line in configure.
Closes#11336.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We need to define __WXGTK218__ symbol in configure instead of simply checking
if we are compiled with 2.18 in wx/infobar.h because GTK_CHECK_VERSION() can't
be used when compiling user code which can't even include gtk/gtkversion.h
defining it because it doesn't necessarily use `pkg-config --cflags gtk+-2.0`
at all in its CFLAGS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Although __WXMAC__ and __WXMAC__ were already defined in wx/platform.h if
__WXOSX_XXX__ was defined, they couldn't be used for checks done before
including this header, which was surprising and, in case of __WXMAC__,
backwards incompatible. Define them now on the compiler command line to ensure
that they are always defined.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Remove "d" suffix from the libraries and the BUILD variable which is not used
any longer.
Also ignore (but still support, for compatibility) --debug option in wx-config.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775