Commit Graph

15734 Commits

Author SHA1 Message Date
Vadim Zeitlin
dcb16c298b Undo "Forward events to active child at MSW, not wx, level in wxMDIParentFrame."
Unfortunately, forwarding MSW messages only takes care of the menu events but
not the toolbar ones -- which should be handled in the same way but were not.

So restore the old behaviour, the problem with menu items disabled in the
parent frame but enabled in the child one will be fixed differently.

This reverts r73927.

See #14314.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-23 13:07:55 +00:00
Vadim Zeitlin
540dacb643 Add WX_ATTRIBUTE_UNUSED and use it for typedefs to avoid g++ 4.8 warnings.
g++ 4.8 warns about unused typedef's in local scope resulting in hundreds of
warnings when building wx, suppress them by using WX_ATTRIBUTE_UNUSED for
these typedefs.

Closes #15137.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74272 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-23 00:53:15 +00:00
Stefan Csomor
f082dcd598 using common GetContentScaleFactor throughout part 1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74255 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-19 20:28:01 +00:00
Stefan Csomor
f86190702b adding magnification API into the wxWindow classes for best retina support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-17 17:41:34 +00:00
Vadim Zeitlin
0ec98fd6c9 Improve wxGrid cell wrapping in wxGridCellAutoWrapStringRenderer.
Wrap the words too long to be shown on one line on several lines.

Also take the line breaks and TABs into account.

Closes #15249.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-16 10:50:54 +00:00
Stefan Csomor
68d5ce9099 adding new constructor for best dc-compatibility of bitmaps
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-15 16:29:04 +00:00
Stefan Csomor
e535481318 reusing existing API
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-13 14:04:41 +00:00
Vadim Zeitlin
56d85ddeec Remove the unused code instead of commenting it out.
Just clean up the fixes of r74197.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-13 13:58:15 +00:00
Vadim Zeitlin
1c25a4c2ae Use two step creation of wxListHeaderWindow to avoid reentrancy under OSX.
This improves the solution of the problem already solved in r74197 by
separating setting of m_headerWin variable from the window creation instead of
using an explicit recursion check.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-13 13:57:28 +00:00
Stefan Csomor
053f5a55da supporting max len event
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-12 22:04:38 +00:00
Stefan Csomor
0afeb753e0 guarding open combo box against AppDefined NSEvents issued by wxEventLoop::WakeUp, fixes 15115
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-12 21:18:52 +00:00
Stefan Csomor
13167e72d6 exposing useful typedefs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-12 20:41:04 +00:00
Stefan Csomor
d4e5c5b98a adding hook, but unfortunately no solution yet for wxComboBox::SetEditable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-12 06:51:24 +00:00
Stefan Csomor
fde8374482 cocoa needs a special implementation for read-only combo box
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-12 05:45:35 +00:00
Stefan Csomor
12bb29f543 missing commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-11 23:14:20 +00:00
Stefan Csomor
d60957aac5 better support for ui action simulation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-11 17:54:07 +00:00
Václav Slavík
31f125ed00 Use correct extensions in wxDynamicLibrary::CanonicalizeName() on OS X.
Contrary to the documentation, this function incorrectly appended the
.bundle extension on OS X for libraries as well as modules.

Fixed to use .dylib for libraries (wxDL_LIBRARY) and continue to use
.bundle for loadable modules (wxDL_MODULE). Change GetDllExt() to take optional wxDynamicLibearyCategory argument.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-11 16:46:49 +00:00
Vadim Zeitlin
5833988cb7 Add wxMouseEvent::GetColumnsPerAction().
This is similar to the existing GetLinesPerAction() but is for, surprise,
columns.

Also change the documentation to say that the value returned by both of these
methods is 3 under "most platforms" as some wxOSX currently uses 1 and not 3.

Closes #15239.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-10 15:53:29 +00:00
Robin Dunn
3174a8a92a More docs cleanup and fixes for richtextbuffer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-08 23:24:04 +00:00
Vadim Zeitlin
c1818df912 Remove duplicate WXMAKINGDLL_RIBBON-related code.
For some reason both the definition of and test for WXMAKINGDLL_RIBBON was
duplicated.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-08 02:23:55 +00:00
Stefan Csomor
ba0cf6af6d exposing wxOSXGetViewFromResponder
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-04 07:06:19 +00:00
Stefan Csomor
09ffaca3a6 adding a more extensive version to arrive at the impl when given a native control, taking into account eg the composited controls of a scrollview
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74105 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-04 06:54:50 +00:00
Stefan Csomor
19736e6452 make sure we don't execute pending deletes either when in runModel, otherwise reentrancy problems occur
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-03 14:57:56 +00:00
Stefan Csomor
04a123c642 using ordinary Show for popup windows as on MSW which activates it as well, I'll rewire ShowWithoutActivating for the other use case, fixes #15008
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-03 13:21:10 +00:00
Stefan Csomor
cf83b0cfb6 refactoring SizeEvent sending
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74096 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-03 12:58:29 +00:00
Stefan Csomor
a002ae4e50 forgot to commit ...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-03 11:47:53 +00:00
Stefan Csomor
60d66be369 attempt to get the 'new focus' window parameter of a focus kill event set correctly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-03 10:37:01 +00:00
Stefan Csomor
c34cd96a33 deal with Cocoa as we do with Carbon, see #15008
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-03 09:40:50 +00:00
Vadim Zeitlin
4e1e8dc51b Change wxMSW wxTreeCtrl::DoFreeze() to not hide the tree any more.
Hiding the tree when it's frozen, as done in r72665, results in its own
problems, e.g. loss of focus. So don't do this but resize the control to a
very small size when freezing it and restore it to its old size afterwards.

Closes #15166.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-31 23:21:36 +00:00
Vadim Zeitlin
926df8a162 Add wxFileDialog::GetCurrentlySelectedFilename().
Also send wxEVT_UPDATE_UI events for the extra controls in wxFileDialog.

The combination of these changes allows extra controls to update their state
depending on the current selection in the dialog. Show a simple example of
doing it in the dialogs sample.

Closes #15235.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-31 23:21:27 +00:00
Vadim Zeitlin
1054bcb21f Fix wxStyledTextCtrl::SetInsertionPointEnd().
This relied on SetInsertionPoint(-1) working like in wxTextCtrl but it didn't.
Add an explicit check to it for consistency with the other classes and to make
SetInsertionPointEnd() work.

Closes #15234.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-31 23:21:16 +00:00
Vadim Zeitlin
0a72cae73d Improve horizontal scrolling in wxRibbonControl.
Scroll by entire "sections", i.e. panes of the ribbon, instead of scrolling by
a fixed number of pixels as it's much more useful and user-friendly to uncover
the next section entirely instead of asking the user to press on the arrow
several times before being able to use it.

Closes #15232.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-31 23:21:11 +00:00
Vadim Zeitlin
1a986642f5 Add wxWindow::BeginRepositioningChildren() and EndRepositioningChildren().
This is just a refactoring of wxMSW code to make it possible to use deferred
window positioning from other places in subsequent commits.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-31 23:21:03 +00:00
Vadim Zeitlin
4300317631 Make wxSharedPtr::Release() really MT-safe.
Using wxAtomicDec() is not enough, its result also must be checked as it will
return 0 only in one of the threads if multiple threads call it in parallel,
while the old test for m_count==0 could pass for more than one thread,
resulting in deleting the same pointer more than once.

Closes #15227.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-31 23:20:58 +00:00
Julian Smart
4c86168d9a Applied patch for #15189 - avoid crash when deleting focused cell (dghart)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-26 15:32:12 +00:00
Robin Dunn
3fc2ee048d Add wxRTTI for the wxFileSystemWatcherEvent class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-24 16:05:33 +00:00
Vadim Zeitlin
4a8e979925 Add ctor and assign() taking an iterator range to wxVector<>.
Do it for consistency with wxArray and std::vector<>, even if the current
implementation is suboptimal.

See #15216.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-22 14:13:26 +00:00
Vadim Zeitlin
41da7d974a Add ctor from two input iterators to wxArray in STL build too.
This ctor already existed in non-STL build but was omitted from the STL
version.

Closes #15216.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-22 14:13:22 +00:00
Vadim Zeitlin
268331f0db Fix regression in wxGTK wxFilePickerCtrl due to wxFileDialog changes.
Revert the changes of r72979 and fix wxFileDialog::GetDirectory() return
value bug (see #14786) differently to avoid breaking wxFilePickerCtrl which
relies on getting wxEVT_BUTTON event when the associated dialog is dismissed.

Closes #15218.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-22 13:36:14 +00:00
Vadim Zeitlin
691745ab41 Add a public wxModalDialogHook class for intercepting modal dialogs.
Extract wxModalDialogHook from wx/testing.h into its own wx/modalhook.h,
extend it to allow to be notified not only about showing modal dialogs but
also about dismissing them and document it and show its use in the dialogs
sample.

Also replace all the WX_TESTING_SHOW_MODAL_HOOK macros occurrences with
WX_HOOK_MODAL_DIALOG.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-20 13:15:41 +00:00
Vadim Zeitlin
9bc3af3e64 Fix return value of wxCountingOutputStream::LastWrite().
Don't reuse m_lastcount in wxCountingOutputStream to store the stream length,
this doesn't make any sense and results in LastWrite() returning completely
wrong results as it expects m_lastcount to be the number of bytes written by
the last operation.

Add m_lastPos member to store the stream length instead.

Also correct wxCountingOutputStream documentation.

Closes #15215.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-20 13:15:26 +00:00
Vadim Zeitlin
cc437b9654 Add wxInputStream::ReadAll() and wxOutputStream::WriteAll().
Unlike Read() and Write(), these functions always transfer exactly the
specified number of bytes or fail.

See #12056.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-20 13:15:16 +00:00
Vadim Zeitlin
0553426814 Delete the associated dialog in wxGTK wx{File,Dir}Button.
The code seemed to rely on Destroy() being called for deleting the dialog, but
it's actually not used for child windows, so do it in dtor instead.

Closes #15156.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-19 12:38:18 +00:00
Vadim Zeitlin
622bc15f11 Add conversions to/from long long to wxUniChar.
Allow conversions to/from long long and unsigned long long values in wxUniChar
for consistency with the other integral types.

Also make the code shorter by using helper wxDO_FOR_INT_TYPES() and
wxDO_FOR_CHAR_INT_TYPES() macros to avoid duplicating the same code for all of
the integral types and having to handle wchar_t (and wxLongLong_t now)
specially because sometimes we may need to overload on it and sometimes not.

Finally, add more tests to check that all the wxUniChar methods compile and
work with all the different types.

Closes #15206.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-19 12:38:12 +00:00
Steve Lamerton
938506b1f7 Use wxCOMPtr throughout the wxWebViewIE Find code.
As well as making the code a bit neater this seems to fix some memory issues.

See #15207.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-18 14:07:58 +00:00
Vadim Zeitlin
e1bf9a5776 Make wxPreferencesEditor dtor virtual.
Mainly just to suppress g++ warnings about a class with virtual functions but
non-virtual dtor, this class isn't really supposed to be used polymorphically.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-17 11:53:43 +00:00
Vadim Zeitlin
8e912ebf47 Initialize wxXmlResourceHandler members in its ctor.
Not sure if this results in any real problems but at the very least memory
checking tools give errors about reading uninitialized memory in
wxXmlResourceHandlerImpl::CreateResource() if we leave them uninitialized, so
do initialize all the pointers.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-16 14:43:13 +00:00
Vadim Zeitlin
615f9ff096 Allow wxPreferencesEditor::Dismiss() to work when using modal dialogs too.
The modal dialog case is not really different, the dialog may still need to be
dismissed if the associated object doesn't exist any longer.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-16 14:43:09 +00:00
Vadim Zeitlin
b5c9627778 Add wxPreferencesEditor::ShownModally().
While this is not necessary to use wxPreferencesEditor in normal scenario, it
can be useful if the program needs to handle modal dialogs in some special way.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-16 14:43:06 +00:00
Vadim Zeitlin
eaa6958861 Make wxPreferencesEditor::Show() virtual.
This allows derived classes to override it to do something before/after
showing the dialog, which can be useful on the platforms where modal dialogs
are used for wxPreferencesEditor implementation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-16 14:43:02 +00:00