Commit Graph

56396 Commits

Author SHA1 Message Date
Vadim Zeitlin
75b2220eba Fix crashes after using "wildcard" wxEvtHandler::Disconnect().
When not specifying the function to disconnect, the associated event sink was
destroyed too early resulting in crashes later. Fix this and add unit tests
verifying that things work as expected and at least don't crash.

Closes #14563.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 12:22:32 +00:00
Vadim Zeitlin
4677003143 No changes, just fix a harmless warning in FileSystemWatcherTestCase.
Fix an unused parameter warning under non-Unix platforms.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 12:22:09 +00:00
Vadim Zeitlin
9ff99cb543 Fix filename test compilation with VC6.
Just disable tests resulting in an internal compiler error.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 12:21:46 +00:00
Vadim Zeitlin
1bc5ddea15 Fix link errors with VC 11 in DLL STL build.
Don't declare wxWindowList as DLL-exported. It's unnecessary and appears to
create problems for VC 11.

Closes #14741.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:53:42 +00:00
Vadim Zeitlin
4ca30c7d65 Simplify wxEVT_PAINT handling in wxScrollHelperBase.
Just always call the virtual OnDraw() if wxEVT_PAINT wasn't handled. This is
much simpler than connecting our own special handler just to set a flag saying
whether the event was processed which was very complicated and didn't work
anyhow for the statically connected wxEVT_PAINT handlers.

See #14757.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:53:17 +00:00
Vadim Zeitlin
ddc8faa9e1 Cache HDC used for painting for the entire duration of WM_PAINT processing.
This fixes a long standing problem with 2 wxPaintDC created one after another
(and not with nested lifetimes, which was handled by the caching mechanism
previously used) not working correctly. And as this was exactly what happened
when handling wxEVT_PAINT for wxScrolled, it also fixes drawing artefacts when
using scrolled windows.

Closes #14757.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:52:54 +00:00
Vadim Zeitlin
80791c37b5 Fix incorrect wxSizerFlags::Border() call in the scroll sample.
Using 20 instead of a wxDirection resulted in an assert, fix the syntax.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:52:31 +00:00
Vadim Zeitlin
d148c294f7 Set ID correctly for wxScrollWinEvents generated by wxScrollHelper.
Add forgotten wxEvent::SetId() calls.

See #14757.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:52:08 +00:00
Vadim Zeitlin
7a78a93782 Add wxControl::GetSizeFromTextSize() to size the control to its text.
This function can be used to size a, say, wxTextCtrl to be exactly of the size
needed to enter the given amount of text in it.

This patch adds wxGTK implementation for wxTextCtrl, wxChoice and wxCombobox;
changes to the samples and the documentation.

Closes #14812.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-09 21:11:37 +00:00
Paul Cornett
c017416682 avoid deprecated functions with GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-09 06:17:11 +00:00
Robin Dunn
d4cb624111 wxBrushList and wxFontList do not derive from wxList.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-09 05:02:52 +00:00
Paul Cornett
c0a2b7180e don't assign NULL to wxUIntPtr, wxUIntPtr is not a pointer, closes #14811
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-08 17:47:16 +00:00
Paul Cornett
5e1f70e13f avoid using deprecated gdk_cursor_unref() with GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-08 17:34:04 +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
Stefan Csomor
2ab3802522 support for freeze and thaw under cocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-08 15:46:23 +00:00
Vadim Zeitlin
346634a0d3 No changes, just remove unnecessary forward declarations.
wxToggleBitmapButton doesn't exist any more, don't forward declare it.

wxToggleButton does exist but is (fully) declared just below, so don't forward
declare it neither.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-08 14:20:53 +00:00
Vadim Zeitlin
8a02b7a41d Another Nepalese translations update from Him Prasad Gautam.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-07 18:10:38 +00:00
Paul Cornett
ae41d74654 update fullscreen state when it is changed by the WM
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-07 17:58:23 +00:00
Jouk Jansen
ac6caeee56 Update OpenVMS make-files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-07 10:02:04 +00:00
Jouk Jansen
67b09eacea Fix for specific filename syntax of OpenVMS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-07 09:00:25 +00:00
Paul Cornett
295683b22f add GTK3 implementations for remaining renderer functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-07 06:32:51 +00:00
Vadim Zeitlin
ac664feae6 Don't leave orphan taskbar icon window alive if setting it up fails.
This fixes a rare bug which happens when we fail to install the task bar icon
under MSW for whatever reason (the only known way to reproduce it is to try to
do it very quickly after resume from suspend but there might be other
situations in which this happens). In this case we must delete the icon as we
are not going to get any timeout expiration notifications for it and so if we
don't delete it immediately, it would remain alive forever, preventing the
application from exiting as it counts as a top level window.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:57:06 +00:00
Vadim Zeitlin
6b0dfbca1d Keep item data in sync with their position in wxEditableListBox.
When swapping the items, we also need to swap their client data and not just
their labels.

Closes #14800.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:56:44 +00:00
Vadim Zeitlin
639dbb6dd6 Restore propagation of EVT_SEARCHCTRL_CANCEL_BTN events to the parent.
This was broken by r72581, add event.Skip() call to the handler for this event
added there.

Also add a handler for this event to the corresponding page of the widgets
sample to be able to test this.

Closes #14799.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:56:21 +00:00
Vadim Zeitlin
51d2b636e8 Fix regression with wxAuiToolBar gripper and overflow members initialization.
The changes of r72785 moved m_gripperVisible and m_overflowVisible
initialization to Init() but this was too early as these fields depend on the
window style only set when it's really created, so re-initialize them to their
proper values in Create().

Closes #14794.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:54:47 +00:00
Vadim Zeitlin
873271f05e Use wxAUI_TB_DEFAULT_STYLE instead of 0 as default style value.
No real changes.

See #14794.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72913 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:54:25 +00:00
Vadim Zeitlin
9cf565e2a2 Minor improvements to wxEVT_COMMAND_DIRCTRL_CHANGED generation.
Set the event object for this event. Also don't skip the original tree event
if the wxEVT_COMMAND_DIRCTRL_CHANGED event was handled and disallowed.

Closes #14792.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:54:02 +00:00
Vadim Zeitlin
83e056ab37 Add wxUSE_BASE checks for wxLog classes in the interface header.
Also rearrange them so that the derived classes always appear after the base
ones, otherwise SWIG can't compile this file.

Closes #14784.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:53:39 +00:00
Vadim Zeitlin
551048c28c Add wxUSE_{BASE,GUI} checks to interface headers.
This allows to define just one of them to run some tool, e.g. SWIG, on only
the classes defined in the base or in the core library (both are defined by
default for Doxygen itself).

Closes #14785.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:53:17 +00:00
Paul Cornett
3cc638ed7f add GTK3-specific code for DrawItemSelectionRect(), fixes drawing selected tree control item
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 17:43:34 +00:00
Vadim Zeitlin
5d2ebe49df No changes, just fix indentation in wxDataViewMainWindow::Expand().
The code was indented two extra levels for some reason.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 16:51:41 +00:00
Vadim Zeitlin
ed3aece5ae Update the current row after item deletion in generic wxDataViewCtrl.
Also change the code changing the current item to collect the range checks
inside OnVerticalNavigation() itself instead of doing them in the caller.

Closes #14802.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72906 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 16:51:18 +00:00
Vadim Zeitlin
ddcc73a762 Never collapse invisible root item in generic wxDataViewCtrl.
Since the changes of r72325, the root item could be collapsed and marked as
not having any children but this was wrong because no items could be added to
it after this.

Just ignore any attempts to collapse it.

Closes #14801.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 16:50:56 +00:00
Vadim Zeitlin
31f2c38d11 Remove __WXMSW__ check around background erasing in generic wxDataViewCtrl.
The background was erased only under MSW for some reason, do it everywhere
now.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 16:25:18 +00:00
Stefan Csomor
0b7a7b8cd6 fixing compile for ios
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 06:35:29 +00:00
Stefan Csomor
e4064cdf08 supporting iOS 6 autorotate
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 06:31:29 +00:00
Vadim Zeitlin
244e36e8e2 Slightly improve the date/time dialogs in the calendar sample.
Use CreateStdDialogButtonSizer() instead of constructing
wxStdDialogButtonSizer directly, not only this is shorter but it also makes
the "OK" button default correctly.

Also initialize the labels instead of leaving them initially empty.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:55:22 +00:00
Vadim Zeitlin
8effba4f5a Don't move the insertion point if text didn't change in wxTextEntry.
This avoids accidentally resetting the selection if SetValue() is called again
with the same value.

Closes #13728.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:55:00 +00:00
Vadim Zeitlin
ce63f2e9eb Make hack for button creation in wxOSX more robust.
Don't crash when creating a plain wxButton with wxBU_NOTEXT style. This
happened because we skipped creating the peer (real implementation) in this
case entirely on the assumption that we were creating a wxBitmapButton, but
this is not necessarily the case. So now test that the creation of the peer is
really disabled before skipping it (this required adding ShouldCreatePeer()
accessor).

Merging wxWidgetImpl::CreateButton() and CreateBitmapButton() (and the same
thing for toggle buttons) would still be a better solution but while it's
trivial to do for Cocoa, it isn't for Carbon. And we can't use a single
function for Cocoa but different functions for Carbon, so for now just
continue to use this hack.

Closes #13622.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:54:37 +00:00
Vadim Zeitlin
318955603b Ensure that paths used inside wxOSX are always in NFC form.
OSX uses NFKD but this is unexpected for wx applications, so normalize the
string to use the composed form whenever we receive a file system path from OS
X.

Closes #13504.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:54:15 +00:00
Vadim Zeitlin
4ccde09b18 Add wxCFStringRef::AsStringWithNormalizationFormC() Cocoa overload.
Provide an overload taking NSString and casting it to CFStringRef, just as for
AsStringWithNormalizationFormC().

See #13504.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:53:52 +00:00
Vadim Zeitlin
e10972f6c1 Use kCGBlendModeExclusion for wxCOMPOSITION_XOR operation.
The previously used kCGBlendModeXOR doesn't seem to be the right mode to use.

Closes #13095.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:53:29 +00:00
Vadim Zeitlin
1659164a6f Implement setting default wxTextCtrl style in wxOSX.
Use NSTextView setTypingAttributes to change the attributes used for the new
text by default as setting them for the selected region didn't do anything
useful under OS X (and did nothing at all when there was no selection).

Closes #12839.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:53:06 +00:00
Vadim Zeitlin
dfc9124f08 No changes, just remove unnecessary wxTextAttr tests.
If wxTextAttr::HasFoo() returns true, there is no need to test for
GetFoo().IsOk().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:52:43 +00:00
Vadim Zeitlin
529f35ff37 Suppress warnings about NSText not responding to setAllowsUndo.
Cast NSText to NSTextView when sending this message to it. Hopefully it
doesn't change the run-time behaviour but just fixes several lines of warnings
that were given without this cast.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:52:21 +00:00
Vadim Zeitlin
5c299305d4 No changes, just make it easier to tweak splitter sample.
The sample contains disabled code for using other type of windows than
MyCanvas for the splitter children but it didn't compile any more because the
variables were declared as wxScrolledWindow. Fix this by using just wxWindow
for them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:51:58 +00:00
Vadim Zeitlin
c2d4b6971f Create tags for Cocoa, not Carbon, by default under wxOSX.
Just change the default value of the "port" parameter.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:51:36 +00:00
Vadim Zeitlin
187fad412a Fix annoying warning when running the script to generate tags under OS X.
It complained about no matches for src/osx/cocoa/*.cpp.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:51:13 +00:00
Vadim Zeitlin
cabc71dee3 Update the button bezel to account for multi-line labels in wxOSX.
If a button was created using a normal single-line label (including empty one)
and then its label was changed to something multi-line later, its size stayed
wrong in wxOSX as it still used the fixed size bezel used by normal buttons.

Adjust the bezel after each bezel change now to update the size of the button
if necessary.

Closes #12491.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:50:50 +00:00
Vadim Zeitlin
5af80d3112 No changes, just rename OSXSetAcceleratorFromLabel().
Make the name of the function more general and call it
OSXUpdateAfterLabelChange() as it's supposed to be called whenever the label
changes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:50:28 +00:00