Commit Graph

65326 Commits

Author SHA1 Message Date
Sebastian Dröge
d0ef5d7daa Add support for GStreamer 1.x while keeping 0.10 support
Based on a patch by crisb

http://trac.wxwidgets.org/ticket/14976
2016-02-22 00:22:33 +02:00
Catalin
f6a314bd62 Included headers needed by GET_X_LPARAM and GET_Y_LPARAM macros. 2016-02-21 20:12:35 +02:00
Catalin
9afa157d43 Marked some standard keys as obsolete. They should probably be removed too. 2016-02-21 20:12:33 +02:00
Catalin
c69c4e2874 Removed wxNB_FLAT style. 2016-02-21 20:12:32 +02:00
Catalin
1a13f8e5b7 Removed wxTB_3DBUTTONS style 2016-02-21 20:12:31 +02:00
Catalin
f5b78dc76f Do not translate Windows names. 2016-02-21 20:12:29 +02:00
Catalin
8aafec1ace Removed obsolete symbols from comments. 2016-02-21 20:12:28 +02:00
Catalin
b13a8997c6 Log the error if StretchDIBits() fails. 2016-02-21 20:12:27 +02:00
Catalin
180bee9ba8 Use slightly safer FindWindowEx() call. 2016-02-21 20:12:26 +02:00
Catalin
c31d8e81f0 Do not return obsolete OS family names. 2016-02-21 20:12:25 +02:00
Catalin
773ce1d58e Removed comment about non-existing DoDrawEllipticArcRot() function. 2016-02-21 20:12:24 +02:00
Catalin
0d870c5bb3 No longer define GET_X_LPARAM and GET_Y_LPARAM macros. According to MSDN they are available starting with Windows 2000 Professional/Server. 2016-02-21 20:12:23 +02:00
Catalin
77b4e9d7ea Removed obsolete symbols from comments. 2016-02-21 20:12:22 +02:00
Catalin
768aa0aef7 Do not consider info from obsolete Windows versions. 2016-02-21 20:12:20 +02:00
Catalin
11319e0da2 Removed unused file. 2016-02-21 20:12:19 +02:00
Catalin
33ad41a745 Removed obsolete symbols from comments. 2016-02-21 20:12:18 +02:00
Catalin
edc8cd1f74 Do not return OS info for obsolete versions. 2016-02-21 20:12:17 +02:00
Catalin
2d2bb0df39 Removed obsolete symbols from comments. 2016-02-21 20:12:16 +02:00
Catalin
b57531acaa Do not test for obsolete OS versions to determine if it must use owner drawn item. 2016-02-21 20:12:15 +02:00
Catalin
a92baffcec Removed obsolete symbols from comments. 2016-02-21 20:12:14 +02:00
Catalin
13d6419ad0 Changed obsolete OS names to Unknown, but keep the array entries to avoid breaking indexes. 2016-02-21 20:12:12 +02:00
Catalin
338629e314 Removed obsolete symbols from comments. 2016-02-21 20:12:11 +02:00
Catalin
cd4942bf8a Removed obsolete symbols from comments. 2016-02-21 20:12:10 +02:00
Catalin
ed938781b6 Removed obsolete symbols from comments. 2016-02-21 20:12:09 +02:00
Vadim Zeitlin
e5c93ad674 Synchronize access to wxSelectDispatcher from different threads
We reuse the same global dispatcher object (allocated in
wxFDIODispatcher::Get()) for the sockets created in different threads, so it's
perfectly possible for its methods to be called concurrently and this happens
even in our own socket streams unit tests.

Protect against concurrent modification of the select sets and m_maxFD. This
fixes sporadic Travis build failures such as the one at
https://travis-ci.org/wxWidgets/wxWidgets/jobs/110757281 for example and
probably even worse bugs too.
2016-02-21 18:47:46 +01:00
Václav Slavík
513fca5d4c Fix inefficient delayed setting of wxSplitterWindow sash
If setting sash position to a value that cannot be satisfied due to
minimum size constraints, wxSplitterWindow would continue endlessly
trying and failing to set it, causing constant CPU use on OS X. This was
because delayed sash setting was invoked from idle handler and if it
failed, the code would repeat the same action again and again.

Instead, perform this delayed setting from OnSize handler. If setting
sash position failed in the first place, it must have been due to too
small size of the window. Therefore it's pointless to try again until
the size changes.
2016-02-21 18:43:10 +01:00
Václav Slavík
6a0ea795d5 Don't redraw wxSplitterWindow sash needlessly
Don't draw the sash in SizeWindows() unless its position was changed by
the function.
2016-02-21 18:33:34 +01:00
Václav Slavík
3a7951db2b wxMSW: Fix wxToolBar rendering with double-buffering
An old check - used for reasons that no longer apply - was preventing
correct rendering of wxToolBar background in wxMSW. Fix this by removing
the obsolete check.

See #9666 for the original reason for the check.
2016-02-21 18:32:10 +01:00
Vadim Zeitlin
bd9fb66578 Install wx/osx/carbon/region.h header under OS X
This file was mistakenly removed from the list of wxOSX headers in
602ea92143.

And don't install wx/osx/core/stdpaths.h which doesn't exist any longer (see
abe10b8c00).

Closes #17381.
2016-02-21 17:18:46 +01:00
Vadim Zeitlin
b095c9d7c0 Remove extra CRs from wx_adv.vcxproj.filters
This confused upmake and was just generally strange.
2016-02-21 17:17:23 +01:00
Vadim Zeitlin
f6de4903d5 Document that wxALIGN_RIGHT doesn't work with wxCheckBox under OS X
See #17380.
2016-02-21 17:02:22 +01:00
Vadim Zeitlin
b4e3188876 Add missing "test" to configure check for wxUSE_MEDIACTRL
This was broken by the changes of 536defd91c.

Closes #17370.
2016-02-21 16:58:09 +01:00
gafatoa
c20739313a Fix layout of wxSlider with wxSL_VALUE_LABEL only in wxMSW
Correct the slider geometry calculations to work correctly when the label is
used but min/max labels are not.

Closes #17377.
2016-02-21 14:51:25 +01:00
Andreas Falkenhahn
e4fce9089e Use correct parent for more native modal dialogs in wxMSW
Ensure that the correct parent is used when no parent is explicitly specified
by calling GetParentForModalDialog().

This generalizes baff0c942b (see #17384) to the
rest of the modal dialogs (wxMessageDialog already did this).

Closes #17146.
2016-02-21 14:44:23 +01:00
ARATA Mizuki
5a92181ac1 Fix the length returned by UTF-32 conversion for non-BMP input
Don't optimize the required length as this is a tiny gain resulting in big
problems with the strings containing surrogates for which the actual result is
shorter than the length returned, resulting in extra NUL bytes at the end of
the converted buffer.

This is similar to 3410aa372f (see #16298) but
for UTF-32 and not UTF-16.

Closes #17070.
2016-02-21 14:38:17 +01:00
Vadim Zeitlin
e417913f46 Reset the wxDataViewItem being edited once it's not edited any more
No real changes, just some cleanup to ensure that the item being edited stored
in wxDataViewRendererBase never refers to an item which is not, actually,
being edited any longer.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
31a10d0355 Fix editing items with custom renderers in wxGTK wxDataViewCtrl
Call FinishEditing() when the cell is done being edited instead of sending
wxEVT_DATAVIEW_ITEM_EDITING_DONE event manually from wxGTK code.

This fixes the bug with not being able to edit an item the second time if the
editor was dismissed by GTK+ itself and not by our own code (which already did
call FinishEditing()) as the old editor still remained alive because
DestroyEditControl(), usually called from FinishEditing(), wasn't executed.

It also removes code duplication and avoids the need to keep a global
s_user_data pointer as the item currently being edited is already stored in
wxDataViewRenderer anyhow.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
7e37c6763f Test custom editor in the dataview sample
Show how to create and use a custom editor in the custom renderer.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
29024e39ca Fix duplicate wxEVT_DATAVIEW_ITEM_EDITING_STARTED under GTK
When using a custom renderer, wxEVT_DATAVIEW_ITEM_EDITING_STARTED was sent
twice: once from the generic base class StartEditing() and another time from
the GTK-specific "editing_started" signal handler. And we must send it from
the latter, because otherwise no event would be generated at all for the
standard renderers (i.e. text cells) for which we don't call StartEditing()
ourselves, so don't call it from the former and instead generate the event by
explicitly calling NotifyEditingStarted() after calling StartEditing() in the
generic version (as for wxOSX version, it doesn't use StartEditing() at all
and so doesn't need to be changed).
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
235e8ebd1a Factor out wxDataViewRendererBase::NotifyEditingStarted()
Reuse the same code from the generic and native GTK and OS X implementations
of wxDataViewCtrl instead of triplicating it.

This fixes a small discrepancy between the wxOSX version, which didn't see the
model pointer correctly in the generated event, and all the others, but mainly
paves way for future improvements.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
40502651f9 Always delete the editor when finishing editing in wxDataViewCtrl
We need to delete the editor control even if GetValueFromEditorCtrl() failed
as otherwise we're never going to be able to edit another item again, at least
with the GTK native implementation, which does nothing when starting to edit
an item if an editor control already exists.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
f9d907a1d4 Just simplify wxPoint/wxSize creation from wxRect
Use the existing wxRect::Get{Position,Size}() methods instead of explicitly
creating the objects from the wxRect components, this is simpler and more
readable.

No real changes.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
4edae7238a Fix skipping the event in wxEVT_TEXT_ENTER handler in wxMSW
Skipping the event is supposed to have the same effect as not handling the
event at all, but in wxMSW wxTE_PROCESS_ENTER style must be specified for a
wxEVT_TEXT_ENTER handler to be executed at all and if this style is used, then
the default handling in MSWProcessMessage() which normally happens before
calling the handler doesn't take place at all.

Work around this by explicitly performing the default "Enter" key action if
the event generated by it wasn't handled to make wxMSW behaviour more
intuitive.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
99a1526ee3 Factor out methods for clicking the default button in wxMSW
This will make it possible to reproduce the default "Enter" key functionality
from elsewhere.

Almost no changes yet, the only minor change is that we now wouldn't try to
"click" any windows using DLGC_DEFPUSHBUTTON dialog code but which are not
really buttons -- but then this shouldn't ever happen anyhow.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
d3e7833a90 No changes, just replace a useless comment with a more helpful one
Don't describe in English what the next line of code does, which is useless,
but rather explain why do we do this.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
9bcaa058a0 Replace wxTextCtrl::MSWWindowProc() with MSWHandleMessage()
Override newer and more flexible virtual method: this doesn't change anything
yet but will allow to provide default handling for some messages in a single
overridden method in the future commits, when it would have required to also
override MSWDefWindowProc() with the old method.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
6b2a6baf2e Allow custom handling of Enter/Tab with modifiers in wxDataViewCtrl
While Enter and Tab on their own should be used to finish cell editing, the
cell editor itself may want to process key combinations involving these keys
with modifiers, e.g. Shift-Enter, so don't intercept those in at least the
generic version of wxDataViewCtrl to allow catching them in the editor.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
5591a20093 Detect attempts to catch wxEVT_TEXT_ENTER without wxTE_PROCESS_ENTER
This is never going to work, so complain about trying to do it to help with
catching this bug.

This is possible thanks to the new OnDynamicBind() method invoked whenever a
dynamic event handler is bound to a control, so this doesn't detect all
possible occurrences of the bug (such as specifying the handler in a static
event table or in a validator), but it's still better than nothing.

In the future OnDynamicBind() should be extended for other invalid calls, e.g.
binding a handler for wxEVT_TEXT_ENTER to a non-text control shouldn't work
neither, ideally.
2016-02-20 17:07:04 +01:00
Vadim Zeitlin
baff0c942b Try to always give wxDirDialog a valid parent in wxMSW
Use the same GetParentForModalDialog() method as for the normal dialogs to
find the parent to use for this native dialog and ensure that it is shown
modally even if no parent is explicitly specified when constructing it.

Closes #17384.
2016-02-20 13:42:12 +01:00
VZ
b4a0ca1ade Merge pull request #219 from vadz/whatever-conv
Fall back on UTF-8 when converting Unicode to multibyte fails

This is not ideal, but better than just losing data entirely.
2016-02-19 17:10:52 +01:00