Commit Graph

16160 Commits

Author SHA1 Message Date
Paul Cornett
c047751abf Exclude DragAcceptFiles() when wxUSE_DRAG_AND_DROP==0
(backport of 42b2675806)
2016-12-22 22:23:38 -08:00
Václav Slavík
723489e2d9 Fix GetInstallPrefix availability check
Add wxHAS_STDPATHS_INSTALL_PREFIX to make checking for
wxStandardPaths::GetInstallPrefix()'s availability simpler, as the
condition under which it is compiled is nontrivial.

Fixes compilation after 2c24ee9216 on
Cygwin, which is a UNIX, but its wxStandardPaths implementation is a
Windows one.

(cherry picked from commit 13862ad8e6)
2016-12-11 15:19:42 +01:00
Vadim Zeitlin
d57c75a2e5 Make wx/valnum.h self-contained by including wx/textentry.h
This header uses (i.e. forward declaration wouldn't be sufficient)
wxTextEntry, so it must include the header declaring it.

(cherry picked from commit 9db6f6ca1a)
2016-12-09 02:00:31 +01:00
Václav Slavík
87c55ca242 Fix typo in wxABI_VERSION check in 90b12483 2016-12-06 09:55:32 +01:00
Václav Slavík
90b124835e Fix accel handling when removing item from submenu
wxMSW propagates accelerators to the top menu in wxMenu::UpdateAccel(),
but the reverse operation in wxMenu::DoRemove() didn't do it, resulting
in leaked leftover accelerator entries that could prevent the same
accelerator from working if an item using it was later added. Fix by
adding RemoveAccel() helper method that behaves analogously to
UpdateAccel().

(backport of 60542745f6 from master)
2016-12-05 18:03:04 +01:00
Paul Cornett
87289bdc04 Enable choosing paper size and orientation on print dialog, see #17712
(cherry picked from commit 1b0e7c17e3)
2016-11-19 08:49:41 -08:00
Robin Dunn
c9e56dd3e5 Add missing wxPropertySheetDialog methods and fix a typo. 2016-09-30 13:44:38 -07:00
Robin Dunn
9164090b46 Merge branch 'WX_3_0_BRANCH' into wxPy-3.0-branch 2016-09-19 13:43:03 -07:00
Robin Dunn
1d5119acf5 Add the other property classes so wxPython can see them. 2016-08-25 21:01:03 -07:00
Robin Dunn
dcc23ceba8 Change ~wxPGChoicesData from private to protected 2016-08-13 14:51:59 -07:00
Scott Talbert
238a948ed0 Fix wxNativeFontInfo::InitFromFont() when using Pango
Use pango_font_description_copy() to make a lossless copy of the original font
instead of doing it using wxWidgets API which is less direct and, in addition,
currently is completely broken as SetXXX() methods don't create the Pango font
description if it doesn't exist as they ought to.

See https://github.com/wxWidgets/wxWidgets/pull/312

(cherry picked from commit dbe2a1c2fd)
2016-08-10 15:05:10 +02:00
Robin Dunn
8d543d6d3c Add setter methods to wxListEvent 2016-08-03 16:38:32 -07:00
Robin Dunn
95bff5496b Merge branch 'WX_3_0_BRANCH' into wxPy-3.0-branch 2016-06-28 15:46:11 -07:00
Robin Dunn
e93f6dbc0b Fix typos and missing items in the ribbon interface definitions 2016-06-21 14:07:56 -07:00
Andreas Falkenhahn
49d52abb4e Add wxTE_{RIGHT,CENTER} support for multiline wxTextCtrl in wxOSX
Just use -[NSTextView setAlignment].

Closes #13702.

(cherry picked from commit d45ba8ce62)
2016-06-06 01:34:20 +04:00
Benjamin Drung
3cacee9d52 Define wxIsNaN() as std::isnan() in C++11 mode
std::isnan() is always available when using C++11, so just use it.

Also pout the test for C++11 implementations of both wxIsNaN() and wxFinite()
first, eventually the rest of the checks will become obsolete and will be
removed.

See https://github.com/wxWidgets/wxWidgets/pull/283

(cherry picked from commit bc41cbeb25)
2016-05-14 15:49:35 +02:00
Vadim Zeitlin
990ebe2dc2 Null-terminate arrays returned from wxCmdLineArgsArray
This is required for compatibility with the real argv array that this class is
supposed to emulate.

See #17531.

(cherry picked from commit 189e4c5024)
2016-05-13 15:42:45 +02:00
Václav Slavík
e744317d3a Disable warnings in the standard shlobj.h header with MSVC14
There is nothing we can do about these (harmless) warnings, so just
disable them. Also make sure that the header is included via
wx/msw/wrapshl.h  everywhere.

(backported from commit e37f1a84ce)
2016-03-23 14:47:24 +01:00
Vadim Zeitlin
2d6d4868a1 Disable warnings in the standard gdiplus.h header with MSVC14.
There is nothing we can do about these (harmless) warnings, so just disable
them.

(cherry picked from commit a2d6341e4f)
2016-03-23 14:38:09 +01:00
Vadim Zeitlin
234f7ff6e1 Suppress harmless warning in a standard header with VC14
imagehlp.h from 8.1 SDK contains an extraneous "typedef" in an enum
declaration which results in several warnings when building, avoid them.

(cherry picked from commit fbe7fc85b2)
2016-03-22 17:09:32 +01:00
Vadim Zeitlin
4e5e788bae Use correct format (%zu) for printing size_t values.
Fix assert due to using %d for printing 64 bit size_t values under Win64.

See #16974.

(this is a backport of 6c7c8b6d8d from master)
2016-01-14 15:41:44 +01:00
Pete Stieber
eed32268a2 Make wx/dirdlg.h safe to include as first wx header
Include wx/defs.h to get wxUSE_DIRDLG value from it, otherwise it could be
undefined, and hence evaluate to 0 (unfortunately without even a warning with
some compilers), if this header was the first wx header to be included.

(this is a backport of 5948602f4f from master)
2016-01-05 01:32:49 +01:00
Lauri Nurmi
61a3e328ef Add mouse wheel handling to wxGenericCalendarCtrl
Mimics the scrolling behaviour of native MSW and GTK calendars by allowing to
increment/decrement the month by scrolling anywhere on the generic calendar.

Additionally, use horizontal scrolling to increment/decrement the year.

Backport of 50daf1feab + 4177593aef
into WX_3_0_BRANCH.

See also 50daf1feab (commitcomment-13087042)
2015-12-19 16:16:42 +01:00
Paul Cornett
5c4d565a68 check for macro '__sun' rather than 'sun', see #17258 2015-12-03 21:39:19 -08:00
Vadim Zeitlin
e093a3b1b4 Preserve Win32 last error in wxTlsKey::Get()
::TlsGetValue() resets the last error code which means that the previous last
error is lost, but it shouldn't as we might be in the middle of logging it
with wxLogSysError(). So preserve the last error explicitly.

See #17209.

(this is a backport of 5e29b26d9e from master)
2015-10-17 18:25:54 +02:00
Paul Cornett
f1707959d4 add compatibility header for older GTK3 versions
(cherry picked from commit a0173ec13e)
2015-10-10 11:40:07 -07:00
Jan van Dijk
349c905ffc Work around clang warning about side effects inside typeid().
This warning was harmless but very annoying as it was given for each and
every inclusion of this header.

Closes #16968.

(this is a backport of 5aae7c7387,
d2c1fce24e and
ec510a0c4b from master)
2015-10-10 09:52:48 +02:00
Tim Kosse
8be40b6789 include/wx/generic/private/widthcalc.h makes use of wxLogTrace, so wx/log.h needs to be included.
This fixes a regression introduced by commits b64e030f0c and c21ad5d9c2 which break compilation when configured with --disable-precomp-headers.
2015-09-29 10:35:07 +02:00
Kinaou Hervé
b64e030f0c Correct implement wxLIST_AUTOSIZE_XXX in the generic wxListCtrl.
Use both the contents and the header width when wxLIST_AUTOSIZE_USEHEADER is
given instead of just the latter.

Also make both wxLIST_AUTOSIZE_USEHEADER and the previously implemented
wxLIST_AUTOSIZE work efficiently for the virtual list controls by reusing
wxMaxWidthCalculatorBase already used in the generic wxDataViewCtrl.

Closes #10326.

(this is a backport of de7e315557 and
0e2d9e539c from master)
2015-09-27 11:57:13 +02:00
Vadim Zeitlin
c21ad5d9c2 Factor out wxMaxWidthCalculatorBase from wxDataViewCtrl code.
This will allow reusing it elsewhere, notably in the generic wxListCtrl.

See #10326.

(this is a backport of fa1c3ecfa6 from master)
2015-09-27 11:54:40 +02:00
Vadim Zeitlin
f0e67ed517 Allow requesting core OpenGL profile and explicit OpenGL version.
Add WX_GL_CORE_PROFILE and WX_GL_{MAJOR,MINOR}_VERSION attributes which can be
used to use modern OpenGL with wxGLCanvas.

See #16402.

(this is a backport of 3c7ba39135 from master)
2015-09-23 03:18:33 +02:00
Vadim Zeitlin
db56c7bcb8 Merge branch '3.0-osx-fixes' into 3.0
Various fixes for wxOSX back ported from master.
2015-09-11 14:22:42 +02:00
Tobias Taschner
733eae83dc Fix OS X wxWebView ignoring JavaScript window.open() calls
On OS X (tested on 10.10.5) calls to window.open() with a different target
than _self were simply ignored. No navigation and no EVT_WEBVIEW_NEWWINDOW as
expected.

Unfortunately WebKit does not call the decidePolicyForNewWindowAction delegate
method in these cases. A new delegate method createWebViewWithRequest has been
implemented to handle this case and send EVT_WEBVIEW_NEWWINDOW as in other
ports.

Closes https://github.com/wxWidgets/wxWidgets/pull/86

(cherry picked from commit e6b31adefe)
2015-09-11 14:02:10 +02:00
Paul Cornett
a0b56a2675 Implement SetVisited()/GetVisited()
and set the visited state when the link is clicked
(backport of 2fbd2a7800)
2015-09-03 09:40:23 -07:00
Paul Cornett
234f081527 Add gtk_cell_renderer_set_padding() compatibility function
(cherry picked from commit 83ce88402c)
2015-09-01 08:44:23 -07:00
Rob Krakora
76ee2fa0a0 Implement sending wxIconizeEvent in wxOSX.
Translate windowDid{Miniaturize,Deminiaturize} callbacks to calls to
SendIconizeEvent().

Closes #16718.

(this is a backport of 31e1387541 from master)
2015-08-26 15:53:39 +02:00
Paul Cornett
65b17ab188 fix wxHyperlinkCtrl opening URL twice, see #13813
(cherry picked from commit 0ff96c620f)
2015-08-18 23:06:52 -07:00
Paul Cornett
51e766093e IsShown() now returns false for non-selected wxNotebook pages, see #4343 2015-08-15 11:09:03 -07:00
Vadim Zeitlin
e62173c479 Fix using wxHTTP and wxFTP from worker thread in Unix ports.
This backports e18c8fd29a,
d421373c2e and
6c43aa90b6 from master to avoid crashes when
using wxHTTP or wxFTP from threads other than main.

See #17031.
2015-07-09 20:59:38 +02:00
Vadim Zeitlin
b08ca17749 Fix MinGW build with wxUSE_LOG==0.
Don't apply Watcom workaround for empty vararg log functions to MinGW, it
doesn't seem to need it and using it actually breaks compilation of the code
in wxWidgets itself when wxLogSysError() is used with wxString argument.

Closes #17048.
2015-07-07 00:00:49 +02:00
Paul Cornett
4db8d55913 Avoid using gdk_window_freeze_updates() to implement Freeze()
Implement Freeze() by blocking the GtkWindow "expose-event"/"draw" signal
instead. Since the introduction of client-side windows in GTK+ 2.18,
gdk_window_freeze_updates() is unuseable because the impl_window (and thus the
update_freeze_count) for a given GdkWindow can change unpredictably. See #16795
2015-06-24 08:42:49 -07:00
Vadim Zeitlin
432ff59772 Make wxVSCROLL explicitly of int type.
Its value (0x80000000) is outside of the int type range on 32 bit platforms,
but we still want to allow using it as an initializer of int and/or long
variables for consistency with the other types, so cast it to int explicitly
to suppress -Wnarrowing warnings from recent g++ which were given when doing
this before.
2015-06-21 16:00:57 +02:00
Vadim Zeitlin
49fb8c25f5 Check that __cplusplus is defined before checking its value.
Avoids harmless in this case warning about __cplusplus being undefined in
comparison.
2015-06-14 15:55:08 +02:00
Vadim Zeitlin
5ac3c9ac7a Provide empty wxDECL_FOR_STRICT_MINGW32() in non-MinGW case.
Fix the build after aa30a2f97a which forgot to
define wxDECL_FOR_STRICT_MINGW32() macro when MinGW was not used at all.
2015-06-14 15:45:27 +02:00
Vadim Zeitlin
1db615c190 Work around a bug in MinGW math.h.
Including standard math.h header with both -O2 and -std=c++NN options results
in compilation error due to a bug in the header, see MinGW bug report at
https://sourceforge.net/p/mingw/bugs/2250/

Work around this to allow the library to compile in release build with
-std=c++11. This is ugly but better than failing to compile at all.
2015-06-14 15:06:19 +02:00
Vadim Zeitlin
aa30a2f97a 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 15:06:19 +02:00
Vadim Zeitlin
2632977f6b Don't attempt using <type_traits> with g++ 4.9.2 in C++98 mode.
g++ 4.9.2 added support of __has_include() but, unlike clang, refuses to
compile the <type_traits> header that is detected as existing now in C++98
mode, so the build was broken with it when not using configure (i.e. under
MSW).

Fix this by, first, testing for C++11 compilers separately (which seems like a
good idea anyhow as it will allow using these headers with other compilers)
and, second, not trusting g++ __has_include() for C++11 headers in C++98 mode.
2015-06-14 15:06:18 +02:00
Vadim Zeitlin
0e3867c967 Remove default argument value from wxIHTMLElement2::setExpression().
This doesn't make much sense for an interface declaration anyhow and produces
a warning from g++ about assigning string literal to (non-const) BSTR pointer.

(this is a backport of eb18bbc8fd from master)
2015-06-14 15:06:17 +02:00
Vadim Zeitlin
1e2af26e47 Recognize MSVC 14 a.k.a. Visual Studio 2015 compiler.
Interpret internal compiler version value 1900 as VC14. Notice that this
required adjusting the computation of the internal version from the
user-visible one because VC13 was skipped (hopefully no black cats crossed
paths with the manager responsible for this decision).

See #16854.

(this is a backport of f350bab from master)
2015-06-13 18:34:54 +04:00
Stefan Csomor
b67dea6fc0 In order to get all focus set events, store field in editor and catch
becomeFirstResponder there

See #14269.

(this is a backport of cea11b5 from master)
2015-06-08 02:44:11 +04:00