Commit Graph

316 Commits

Author SHA1 Message Date
Vadim Zeitlin
c0b0562533 Avoid many -Wparentheses warnings from gtk/gtk.h with gcc8
Add wx/gtk/private/wrapgtk.h wrapping gtk/gtk.h in pragmas disabling
these warnings and include it everywhere instead of directly including
gtk/gtk.h.

Also include wx/gtk/private/gtk2-compat.h from this wrapper header as it
was included by 90% of the files including gtk/gtk.h itself and it seems
to be better and simpler to just always include it.
2018-05-21 12:34:04 +02:00
Rafael Kitover
1879293932 GTK4: gtk_init_check() does not take args
In GTK+4 gtk_init_check() takes no arguments, while in GTK+3 you could
pass argc/argv.

I'm not quite sure how to pass any arguments to GTK+4, so just call
gtk_init_check() in GTK+4.
2017-12-12 08:48:36 -08:00
Vadim Zeitlin
04209e3a3e Remove GetStandardCmdLineOptions() from wxGTK
Unfortunately there is no reasonable way to implement this function for all
glibc versions as the information we need is stored in the private
_GOptionGroup struct whose layout has already changed once (in 2.44) and could
change again, so we can't rely on it.

We really need a g_option_group_get_entries() in glib itself, but the request
to add it at http://bugzilla.gnome.org/show_bug.cgi?id=431021 hasn't been
touched since 10 years, so it seems unlikely to happen.

See 99367a1530 (commitcomment-25789514)
2017-11-22 22:02:36 +01:00
Paul Cornett
142004884f Build fixes for wxUSE_UNICODE==0 2017-11-12 09:35:12 -08:00
Vadim Zeitlin
70a499f635 Don't rely on argv being NULL-terminated under MSW
Since the changes of c9a458bfe8 ("Use Win32
::CommandLineToArgvW() to tokenize command line"), this is not guaranteed any
more as this Win32 function doesn't necessarily ensure it under older MSW
versions such as XP.

Just use "argc" explicitly instead of relying on this in wxCmdLineArgsArray to
fix crashing under XP.
2017-04-16 17:50:22 +02:00
Vadim Zeitlin
4dfde501df Add support for returning item location to wxGTK wxMimeTypesManager.
This is a squash merge of gtk_mimetype branch from
https://github.com/Hanmac/wxWidgets.git with some extra minor cleanup.

Closes https://github.com/wxWidgets/wxWidgets/pull/293
2016-06-07 14:29:52 +02:00
Vadim Zeitlin
c2c2b4a7e0 Disable deprecation warning for g_thread_init()
We still must use it for older glib versions, presumably, so just disable the
warning about it being deprecated in non-ancient glib.
2016-02-23 17:02:38 +01:00
Paul Cornett
d4d209dd39 Fix generation of wxEVT_ACTIVATE_APP
Avoid spurious events when showing most native dialogs
See #17260
2015-12-06 20:10:32 -08:00
Bronek Kozicki
4ce23e5217 Fix GTK error wxApp::CleanUp() when GUI is not initialised
For the programs that use wxWidgets but can also run using just CLI, exiting
the program would show a bogus GTK error

GLib-GObject-CRITICAL **: g_type_class_unref: assertion 'g_class != NULL' failed

Fix this by only releasing the references to GTK_TYPE_WIDGET if we had
acquired it in the first place.

Closes https://github.com/wxWidgets/wxWidgets/pull/129
2015-11-15 00:56:04 +01:00
Tobias Taschner
5f75b7506f Remove Hildon framework support.
The Hildon framework was used for Nokia 770 and other Maemo devices.
This platform discontinued and hasn't seen a new release since 2011.
2015-08-26 22:49:53 +02:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Paul Cornett
a0f10ec1d6 Implement access to a global toplevel GdkWindow in a way that does not require always having an extra GtkWindow.
And don't use "RootWindow" in the name, it is not a root window in the X11 sense.
Also add wxGetPangoContext() to get access to a PangoContext.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-05 15:53:27 +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
Paul Cornett
ffc28384ca Get DC size from GDK window if possible, client size can unfortunately be wrong
This should fix wxDC::Clear() not clearing the whole window on Ubuntu 12.04 with overlay scrollbars
see #14871


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-14 06:25:00 +00:00
Paul Cornett
e871f02a68 disable Ubuntu "overlay scrollbar", see #14871
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-06 05:33:43 +00:00
Vadim Zeitlin
f8115cdc62 Handle UBUNTU_MENUPROXY=0 as "not using global menu".
Although the correct way to disable the global menu bar under Ubuntu is to
set UBUNTU_MENUPROXY to an empty string, many guides on the web advise setting
it to "0", so handle this special case in wxApp::GTKIsUsingGlobalMenu() too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-25 11:51:21 +00:00
Vadim Zeitlin
93c609c737 Add wxApp::GTKIsUsingGlobalMenu() helper to wxGTK.
This allows to check whether the global menu is being used and will be mostly
useful for working around various bugs/problems uncovered by it.

See #14302.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-25 00:15:26 +00:00
Vadim Zeitlin
b51014176a Don't call setlocale("") on startup by default any longer.
This undoes the changes of r44773 because calling setlocale() resulted in C
locale being set differently from C++ locale which was confusing and led to
huge slowdowns in any code using std::stream with at least MinGW. And setting
the C++ locale to be the same, as r72719 tried to do, doesn't seem to be
practical as it results in immediate crashes under OS X and MinGW when used
under XP.

Do provide wxApp::SetCLocale() helper to explicitly do what was previously
done implicitly, even though currently it is a trivial wrapper for setlocale()
and we don't even need to call gtk_set_locale() as it has never done anything
else and is deprecated since GTK+ 2.24.

Closes #14780.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-14 13:46:50 +00:00
Paul Cornett
9f7405d073 Disable GTK2-specific code to change theme when building wxGTK3.
It doesn't work with GTK3, it causes deprecation warnings, and allowing
an app to change its theme is a dumb idea


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-08 17:18:40 +00:00
Paul Cornett
8a48b920f6 fix WakeUpIdle() when called from another thread while idle processing is in progress
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-31 05:43:01 +00:00
Paul Cornett
9dc44eff02 support for GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-30 20:39:06 +00:00
Paul Cornett
d5027818a4 fix warnings about conversion to bool, closes #14381
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-07 05:18:30 +00:00
Vadim Zeitlin
c282e47d8f Always use UTF-8 for file names passed to GTK+ functions under MSW.
When building wxGTK under MSW, always use UTF-8 as file name encoding because
GTK+ doesn't use G_FILENAME_ENCODING there.

Add a helper wxGTK_CONV_FN() macro to hide the difference between the
platforms.

Closes #14035.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-08 18:10:29 +00:00
Vadim Zeitlin
3b81515cb1 Fix wxGTK compilation when using non X11-based GDK.
Only use X11-specific GDK functions inside "#ifdef GDK_WINDOWING_X11" checks.

Closes #14044.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-26 17:18:41 +00:00
Dimitri Schoolwerth
4c51a665c6 Fixed various typos.
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
2011-03-22 14:17:38 +00:00
Vadim Zeitlin
f32848c53f Improve check for ASCII locale in wxGTK initialization code.
Use wxFontMapper::GetEncodingFromName() to check if the current locale
encoding is ASCII instead of just comparing the name with "US-ASCII" which is
not the name used by most platforms (e.g. current Linux systems call this
encoding "ANSI_X3.4-1968").

This avoid creating a wxCSConv object for ASCII encoding unnecessarily on
startup.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-11-11 12:09:30 +00:00
Vadim Zeitlin
ce00f59b5b No changes whatsoever, just remove trailing whitespace.
There are no real changes in this commit but it removes all trailing white
space from our source files. This avoids problems when applying patches and
making diffs and it would be nice to prevent it from reappearing.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-30 11:44:45 +00:00
Paul Cornett
31f4ed4aa3 remove unused function GetGdkVisual()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63091 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-07 18:30:18 +00:00
Paul Cornett
4d4ec2a507 Make m_idleMutex an object instead of a pointer. Use bool for hook-installed flag, the actual hook id is not needed.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-10-13 15:40:35 +00:00
Julian Smart
426d19f139 Applied patch #9058 (add Hildon 2.0 support)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-24 12:36:34 +00:00
Vadim Zeitlin
f9837e4693 Define wxSetDetectableAutoRepeat() for X11-based ports only.
This function is not needed in wxGTK2 as GTK+ sets detectable auto-repeat on
its own in gdk_display_open() anyhow, so move its implementation to
src/x11/utilsx.cpp where it can be used by wxX11 and wxMotif which do need it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-22 00:22:44 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
26bacb82ff Dispatch pending events without waiting for idle time (closes #10994).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-20 12:14:42 +00:00
Vadim Zeitlin
657a8a3598 first round of debug/release merge: introduce wxDEBUG_LEVEL, for now defined as 1 if __WXDEBUG__ is defined, i.e. no real changes; don't use __WXDEBUG__ in the headers to keep debug and release builds ABI-compatible; add functions to customize or disable asserts handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-21 23:36:37 +00:00
Francesco Montorsi
dde19c2180 second part of #10320: move wxApp event handling functions to wxEventLoopBase (in particular move Yield() functions); add backward compatible redirections to wxApp; update docs; remove global lists wxPendingEvents and wxPendingEventsLocker
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-15 14:25:08 +00:00
Francesco Montorsi
d48b06bd90 check in the 'selective yield' patch (see ticket #10320):
- implements YieldFor() with event filtering for wxMSW and wxGTK,
  adds TODO markers in other ports;
- replaces wxYield() in GTK's clipboard code with a wxTheApp->YieldFor() call, thus fixing possible reentrancies 
(and modifies clipboard sample to test synchronous IsSupported calls)
- replaces wxYieldIfNeeded() calls in wxProgressDialog with wxTheApp->YieldFor() calls, so that it processes only 
UI/user-input events, thus fixing the race condition visible in the "thread" sample
- documents the new functions


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-04 17:42:28 +00:00
Vadim Zeitlin
d3b9f782ef don't use annoying and unneeded in C++ casts of NULL to "T *" in all other files neither
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-19 13:55:27 +00:00
Francesco Montorsi
d181e877b0 use a common m_isInsideYield flag instead of static booleans in all ports; add a IsYielding() test which can help to fix unwanted re-entrancies
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57637 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-29 15:03:39 +00:00
Václav Slavík
7e38638c34 removed no longer needed wxOKlibc() helper
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53239 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-16 22:35:25 +00:00
Paul Cornett
81a2edf9a9 fix for idle processing stopping without processing all pending events, replaces patch 1912157
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-13 04:37:03 +00:00
Vadim Zeitlin
4f6b94a33a fix handling of native toolkit command line options broken by wxCmdLineArgsArray change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-10 19:40:21 +00:00
Vadim Zeitlin
c50c6fb23b add SetNativeTheme() (slightly modified patch 1884553)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-02-27 17:46:14 +00:00
Paul Cornett
24377c4681 remove old thread debugging code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-20 06:25:12 +00:00
Paul Cornett
d254213eb2 add MutexGuiEnter/Leave to wxAppTraits, integrate native GTK+ GUI locking
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-17 05:37:00 +00:00
Vadim Zeitlin
c114eb7a9f delete m_idleMutex later to avoid crashes if any windows are still left when the application exits
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-13 00:15:53 +00:00
Vadim Zeitlin
e2f3bc4110 some Hildon integration work: use HildonProgram (for integration with the OS), HildonWindow (which has native appearance) and more native-like menus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-12 00:25:09 +00:00
Paul Cornett
08f53168ac New "pizza" widget implementation. Window border widths now match the GtkStyle they are drawn with.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-06 18:14:15 +00:00
Vadim Zeitlin
4b4e81ee65 include vms_jackets.h directly from wx/platform.h instead of doing it before wx/wxprec.h as this breaks PCH usage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-21 11:34:19 +00:00
Paul Cornett
0728199b91 process pending wx events before sending idle events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-08 05:31:32 +00:00
Vadim Zeitlin
291b0f5b14 fix warnings about parameters shadowing member variables
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-22 18:22:20 +00:00