Commit Graph

65089 Commits

Author SHA1 Message Date
Kolya Kosenko
eb3971c199 Move GTK+/Win32 libraries list to toolkit.cmake file 2018-03-01 01:16:06 +02:00
Stefan Csomor
c4a4d95ad1 using wx translations for window menu 2018-02-28 21:09:41 +01:00
Stefan Csomor
0fc53016a9 making NSString conversion functions available in private.h 2018-02-28 21:08:27 +01:00
Danny Scott
5e61527c04 Fix typos and shell syntax in the release instructions
Closes #18095.
2018-02-28 18:48:52 +01:00
Vadim Zeitlin
e87544ae70 Fix possible hang after clearing wxTAB_TRAVERSAL style in wxMSW
Clearing this style by calling SetWindowStyleFlag() could reset
WS_EX_CONTROLPARENT extended flags bit, breaking the invariant that the
parent of any window with this bit set has it as well and resulting in
hangs due to infinite loops inside Windows own code iterating over the
controls.

Prevent this from happening by always preserving this style bit if it
was previously set in MSWUpdateStyle(). This is a bit ugly, but there
doesn't seem to be any obviously better way to do it.

Closes #18091.
2018-02-28 16:58:27 +01:00
Stefan Csomor
6b3b05e5f7 fixing classname 2018-02-28 16:24:43 +01:00
Stefan Csomor
a7505356a4 supporting Window Menu as Carbon did 2018-02-28 16:10:33 +01:00
Kolya Kosenko
d6a284783a Fix wxGTK/Win32 CMake build 2018-02-27 23:47:27 +02:00
Vadim Zeitlin
9f77a4f674 Merge branch 'iter-concepts'
Make wxList and wxVector iterators really iterators from C++ point of
view, by defining all the expected types in them.

See https://github.com/wxWidgets/wxWidgets/pull/744
2018-02-26 13:20:09 +01:00
Xaviou
813fdca24c Fix Wrong method name in wxAddRemoveCtrl documentation
Use the correct CanRemove() instead of the non-existent CanRename().

Closes https://github.com/wxWidgets/wxWidgets/pull/747
2018-02-26 13:19:04 +01:00
Xaviou
b1db1bc0bb Wrong method name in wxAddRemoveCtrl documentation sample code 2018-02-25 18:39:59 +01:00
Vadim Zeitlin
cc8fccf0bc Make wxVector reverse iterators conform to iterator requirements
This is similar to a recent commit adding the missing typedefs to wxList
iterators and defines the types required by the iterator concept in
wxVector::reverse_iterator and const_reverse_iterator classes (simple
iterators are just pointers and are already covered by the standard
iterator_traits specialization).
2018-02-23 16:14:03 +01:00
Vadim Zeitlin
382a5a156e Use ptrdiff_t as wxVector::difference_type instead of size_t
difference_type must be signed, using size_t was clearly a mistake.
2018-02-23 16:10:07 +01:00
Vadim Zeitlin
7e0ca8357e Also remove wxList::const_iterator::const_reference typedef
This typedef is redundant with the "reference" one and doesn't seem to
be used anywhere.

As with the previous commit, this one could be reverted later if it
turns out it does break any existing code, but this seems unlikely.
2018-02-23 16:03:36 +01:00
Vadim Zeitlin
9edf06794e Remove ptr_type typedef from wxList iterator classes
This typedef is completely redundant with pointer_type which had been
also available in these classes since the very beginning and seems to
have been meant to be private originally, so it should be safe to just
remove it, especially because I couldn't find any existing code using
it.

If we do find such code in the wild later, this commit could be reverted
as it's not really indispensable.
2018-02-23 16:03:33 +01:00
Vadim Zeitlin
fdbe357e4b Make wxList iterators conform to input iterator requirements
Define "pointer", "reference", "difference_type" and "iterator_category"
typedefs to ensure that wxList iterator classes are seen as iterators by
the standard library in C++11 and later, as otherwise standard container
template ctors taking iterators couldn't be used with them because
they're only available if input iterator requirements are satisfied.

This notably fixes creation of std::list from wxList iterators; add a
test which didn't compile before to show it.
2018-02-23 16:00:06 +01:00
Vadim Zeitlin
0d5378fb84 Remove unnecessary "list" typedef from wxList iterators
This typedef was simply never used and, as it was private, removing it
shouldn't result in any compatibility problems.
2018-02-23 14:21:05 +01:00
Maarten Bent
3d427a1af1 Fix wxWebView::RunScript() with string containing backslashes
Escape backslashes in wxJSScriptWrapper to allow strings with
backslashes in them to work again -- this was broken while implementing
support for returning values from JavaScript to C++.

See https://github.com/wxWidgets/wxWidgets/pull/741
2018-02-22 13:44:00 +01:00
Tobias Taschner
dd2d62c703 Suppress size event when IsMaximized is called on OSX
IsMaximized internally calls [NSWindow isZoomed] which triggers a
windowWillResize call. Resize events will be ignored while calling
isZoomed.

Closes #17407.

See https://github.com/wxWidgets/wxWidgets/pull/740
2018-02-21 17:08:45 +01:00
Vadim Zeitlin
4e5904a4cc Remove unused buildbot XML configuration files
Buildbot configuration was redone in pure Python (see master.cfg in
https://github.com/wxWidgets/buildbot repository) since several years
already, there is no need to keep these obsolete files.
2018-02-20 14:49:50 +01:00
Tobias Taschner
f3f1819daf Add archive sample
This sample shows usage of wxArchiveStream and wxArchiveFactory.
It also allows for easy testing of wxArchiveStream implementations
outside of the unit tests.

See https://github.com/wxWidgets/wxWidgets/pull/730
2018-02-20 14:39:27 +01:00
Vadim Zeitlin
2ec2837f6d Update version to 3.1.2
Run misc/scripts/inc_release and rebake.
2018-02-20 00:08:01 +01:00
Vadim Zeitlin
26c18da2e4 Fix unreadable example in wxDataViewValueAdjuster documentation
@code tag must be used to make the code readable and using @example
seems to be unnecessary and just results in the creation of an extra
"Examples" page in the documentation containing only this example and an
absolute path (apparently not affected by STRIP_FROM_PATH) to
interface/wx/dataview.h file itself in the generated documentation.
2018-02-18 22:47:46 +01:00
Vadim Zeitlin
0a10bfc63e Fix wrong @subpage usage on the main manual page
Using @subpage multiple times with the pages we wanted to just link to
resulted in them appearing twice in the tree shown in the CHM file.

Just use @ref when a link is wanted instead.
2018-02-18 22:46:35 +01:00
Vadim Zeitlin
c3be5d7550 Use relative path in Doxygen STRIP_FROM_PATH
This seems better than requiring yet another environment variable to be
defined, and should work reliably as Doxygen is always run from
docs/doxygen directory.

Leave WXWIDGETS in STRIP_FROM_INC_PATH which doesn't seem to be used
anywhere anyhow -- and so, perhaps, should be removed entirely?
2018-02-18 22:45:02 +01:00
Vadim Zeitlin
379a404f98 Update release notes for final 3.1.1
Remove all references to RC.
2018-02-18 21:30:31 +01:00
Stefano D. Mtangoo
bf418320b7 Work around crash in wxStyledTextCtrl under Mac
When not using double buffering, double-clicking to select text in the
control results in crashes.

Avoid this by using double-buffering under Mac, even though it shouldn't
be necessary.

This reverts the changes of cb799483b7
under Mac.

See #18085.
2018-02-18 21:22:41 +01:00
Vadim Zeitlin
cad824d089 Let windows with wxWANTS_CHARS have TAB presses under Mac
This notably fixes the use of TAB in wxStyledTextCtrl, where it's
supposed to be handled by the control itself and not as a navigation
key, but is more general than this.

Fixes a regression from 8bca6deda3.

Closes #17999.
2018-02-18 21:22:41 +01:00
Vadim Zeitlin
a4487c056b Preserve style changes in wxGTK wxTextEntry auto-complete code
Don't overwrite the current window style with the style that it had when
AutoComplete() was called in wxGTK code, just turn wxTE_PROCESS_ENTER
off or on, without touching the other bits.

This still can result in setting wxTE_PROCESS_ENTER bit itself
unexpectedly if it somehow is changed while the completion popup is
shown, but this shouldn't happen often (if ever) in practice and, at
least, the other bits are preserved no matter what.

See https://github.com/wxWidgets/wxWidgets/pull/729
2018-02-18 21:22:41 +01:00
Vadim Zeitlin
8278f7b618 Fix crash when changing auto-completer in wxGTK
Recent changes resulted in crashes when handling grab-notify signal in
an already deleted object.

Fix this by disconnecting our grab-notify handler when destroying the
object, unless the entire associated wxTextEntry is being destroyed (in
which case no such signals risk to be generated anyhow).

In order to be able to do this safely, store the widget to whose signal
we had connected and check that the widget is still valid before
disconnecting. This also allows to simplify the code by getting rid of
DisableCompletion() and just doing the cleanup in dtor.

Closes #18084.
2018-02-18 21:22:41 +01:00
New Pagodi
c83ddec75f Fix drawing call tips in wxSTC when using Direct2D
Use the correct window as the containing control in SurfaceD2D.

Closes #18080.
2018-02-17 19:49:48 +01:00
Vadim Zeitlin
1dc1d66fe1 Stop using Fn keys as accelerators in the widgets sample
This prevented them from being used for their usual purposes, e.g. F4
didn't open the combobox dropdown under MSW, which was annoying as it
made testing more difficult.

Just stop using the accelerators, especially as they could be only used
for less than half of pages anyhow.
2018-02-17 14:49:54 +01:00
AliKet
4179375f3e Add custom auto-completer support to wxMSW wxComboBox too
Custom auto-completers didn't work for wxComboBox as it didn't generate
wxEVT_AFTER_CHAR event that the completion code in wxTextEntry relies on
to make them work.

Add this event generation to wxComboBox::MSWProcessEditMsg() to fix
this.

Closes https://github.com/wxWidgets/wxWidgets/pull/732
2018-02-17 14:49:38 +01:00
Vadim Zeitlin
6bb45751e5 Remove redundant ShouldForwardFromEditToCombo() check
No real changes, just avoid calling ShouldForwardFromEditToCombo() in
MSWProcessEditMsg() because this function is only called when the
message should be forwarded.

Also make the comment about the return value more clear.
2018-02-17 14:17:13 +01:00
Vadim Zeitlin
0d640f8510 Add a mailmap entry for Danny Scott
Let Git now about multiple email addresses used by Danny.
2018-02-17 13:44:16 +01:00
Danny Scott
a52b839f66 Use vswhere to set environment variables for MSVS 2017
Allow building official releases with MSVS 2017 without doing it from
its "developer command prompt" by using the vswhere utility to set up
the paths correctly.

Closes #18083.
2018-02-17 13:40:41 +01:00
zonkx
ac608afdfe Round alpha correctly in bilinear image scaling code too
Add 0.5 to round the alpha values correctly too, just as it was already
done in f4c9767b49 for the RGB values.

Closes https://github.com/wxWidgets/wxWidgets/pull/733
2018-02-17 13:33:06 +01:00
Vadim Zeitlin
23c2d67c08 Improve wxDataViewListCtrl::AppendItem() and related methods docs
Explain that the vector passed to {Append,Insert,Prepend}Item() must
have the same number of elements as there are columns in the control and
that no more columns can be added after adding any items.

See https://github.com/wxWidgets/wxWidgets/pull/724
2018-02-17 13:29:57 +01:00
Kvaz1r
3567cd5b00 Check that rows in wxDataViewListCtrl have the right size
Vectors passed to wxDataViewListCtrl::{Append,Insert,Prepend}Item()
functions must have the correct, i.e. equal to the column count, number
of items as otherwise accessing them later would result in a crash.

Add checks verifying that this is indeed the case.

Closes https://github.com/wxWidgets/wxWidgets/pull/724
2018-02-17 13:23:20 +01:00
Vadim Zeitlin
958d0081a5 Close documentation comment accidentally left open
Fix an accidental removal of the closing comment marker in
a3673be155.

See https://github.com/wxWidgets/wxWidgets/pull/730
2018-02-17 13:17:54 +01:00
Hugo Elias
28bf0e8687 Add wxIMAGE_OPTION_GIF_TRANSPARENCY for GIF image loading
Allow to keep the originally defined transparent pixels colour instead
of replacing it with bright pink (which is still the default behaviour).

Closes #18014.
2018-02-16 16:28:33 +01:00
Vadim Zeitlin
1ebc28787c Merge branch 'zip64-fix'
Notably fix ZIP64 creation with individual files larger than 4GB.

See https://github.com/wxWidgets/wxWidgets/pull/730
2018-02-16 16:03:32 +01:00
Vadim Zeitlin
a3673be155 Clarify and improve wording of ZIP64 documentation
Try to make it more clear when SetFormat(wxZIP_FORMAT_ZIP64) needs to be
called and add some missing words.
2018-02-16 16:02:42 +01:00
Vadim Zeitlin
b552efedfc Remove commented out line in wxOSX SetFocus()
No real changes, just remove a "TODO" comment as it seems it's safe to
do it after 5+ years (see f897d9ed1a which
added it).
2018-02-16 15:57:05 +01:00
Maarten Bent
8577d9ddca Fix build warnings in Direct2D related code
Regressions since df1456e4e2 and
b936bfe85e.

See https://github.com/wxWidgets/wxWidgets/pull/731
2018-02-16 15:55:33 +01:00
Vadim Zeitlin
b493b7008b Avoid wxEVT_TEXT_ENTER when completion popup is shown in wxGTK
For consistency with wxMSW, and also because it just makes more sense
from UI point of view, avoid generating wxEVT_TEXT_ENTER events when an
auto-completion popup is shown and just accept the current selection in
it when Enter is pressed instead.

This notably allows to use "Enter" naturally with wxSearchCtrl using
auto-completion, instead of generating wxEVT_SEARCH events when the user
just wants to select a popup entry.

Use grab-notify signal as an indirect way of determining whether the
completion popup is currently shown, as there doesn't seem to be any way
to obtain its state directly from GTK+.

See https://github.com/wxWidgets/wxWidgets/pull/729
2018-02-16 15:52:29 +01:00
Vadim Zeitlin
5b2bb1ab81 Minor cleanup after the previous commit
Make m_origWinFlags const; keep just a single call to
SetWindowStyleFlag() and some space harmonization.

No real changes.
2018-02-16 13:27:13 +01:00
Vadim Zeitlin
4265e671fd Fix wxGTK compilation with Cairo 1.2
Avoid using cairo_clip_extents() function, which was added in 1.4,
unless we have at least this version at both compile- and run-time.

This allows the library to be compiled under CentOS 5, which only has
Cairo 1.2 and which is, unfortunately, still in use.
2018-02-16 13:18:02 +01:00
Vadim Zeitlin
85bb678e54 Merge branch 'cmake_misc3' of https://github.com/TcT2k/wxWidgets
Make: Fix regression when enable samples and Enable MSVC Multiprocessor
Compilation.

See https://github.com/wxWidgets/wxWidgets/pull/725
2018-02-16 13:16:53 +01:00
Tobias Taschner
29f5eeb69d Fix ZIP64 creation with individual files larger 4GB
If single files larger than 4GB where added the recorded file sizes
in the local file header where not updated correctly. Additionally
recorded file sizes in the central directory where in the wrong order
making it impossible to extract.

To enable adding files with unknown size which might be larger than 4GB
the new method wxZipOutputStream::SetFormat() is added.

Additionally a check has been added in case a file larger 4GB has been
written without ZIP64 info.
2018-02-15 20:01:13 +01:00