Commit Graph

31126 Commits

Author SHA1 Message Date
Stefan Csomor
f5f0774124 fixing build with wxUSE_PROTOCOL = 1 and wxUSE_SOCKETS = 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-30 04:20:59 +00:00
Robin Dunn
5ad24e6dbb Adjust the client area origin and the client size of the MSW wxStaticBox according to the guidelines on http://msdn.microsoft.com/en-us/library/aa511279.aspx. This is so widgets that are children of the static box will not overlap the label or box borders.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-30 03:13:35 +00:00
Stefan Csomor
09e7316547 adapting char event handling to msw / gtk, see #13415, see #14197
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-29 15:26:27 +00:00
Stefan Csomor
f0d3d77b97 clang compat.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-29 15:24:50 +00:00
Stefan Csomor
81f94bb54e clang compat.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-29 15:18:52 +00:00
Vadim Zeitlin
2060e34cd2 Improve wxDatePickerCtrlGeneric best size calculation.
Make the control just wide enough to fully show the contents of its text part.

This is still not ideal as we don't take into account wxComboCtrl internal
complications but better than before.

Closes #14342.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-28 19:38:02 +00:00
Vadim Zeitlin
5d8cdb5d1c Fix bug in wxAutomationObject introduced by r71574.
Check that we have any arguments, expression oleArgs[0] is invalid otherwise.

Closes #14343.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-28 12:52:03 +00:00
Vadim Zeitlin
779e28da63 Add wxGrid::Render() for drawing the grid to any wxDC.
In particular, this allows to print the grid contents easily.

Closes #14294.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-27 13:00:19 +00:00
Vadim Zeitlin
b55d57aa24 Add wxGrid::DrawRangeGridLines().
This method draws only the grid lines for the cells in the specified range and
not for all of them.

It is not used yet but will be by the upcoming wxGrid::Render(), see #14294.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-27 13:00:13 +00:00
Vadim Zeitlin
f31d3faf7a No changes, just refactor wxGrid::DrawAllGridLines().
Extract the actual drawing of the lines into a new DoDrawGridLines() method.

This will be used by the upcoming commits for drawing grid lines for a part of
the grid only, see #14294.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-27 13:00:09 +00:00
Vadim Zeitlin
cf1a582ab9 Fix memory leaks in wxAutomationObject::Invoke().
Use wxVector<>, wxBasicString and wxOleVariantArg instead of raw arrays, BSTR
and VARIANT to ensure that different objects allocated by this function are
always freed when it exits.

Closes #14293.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71574 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-27 13:00:04 +00:00
Julian Smart
4ba36292f4 Added full scaling to wxRTC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-26 14:17:46 +00:00
Vadim Zeitlin
7ed9cd2891 Fix bug with unloading wxPluginLibrary objects in "wrong" order.
wxPluginLibrary objects had to be unloaded in exactly the reverse order to
which they were loaded in. This was not documented and was a serious
limitation for any realistic use of plugins anyhow, so fix it and allow
unloading them in any order now.

Instead of keeping a pointer to the last wxClassInfo not created by this
plugin, now keep a pointer to the first wxClassInfo that was created by it.
This makes the code slightly more complex but this pointer, unlike the old
one, remains valid even if another plugin was unloaded.

Closes #14261.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-26 12:29:54 +00:00
Vadim Zeitlin
f0d38b659f Refactor SAFEARRAY creation code in wxConvertStringFromOle().
No changes, just make the code simpler and more obviously correct by using a
helper class to create and fill the SAFEARRAY that we create.

Closes #14296.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-26 12:29:50 +00:00
Vadim Zeitlin
252255e852 Fix DrawChoice() behaviour in wxRendererXP.
The implementation of wxRendererXP::DrawChoice() inadvertently used
wxRendererMSW::DrawComboBoxDropButton() and so drew the button in the classic
and not themed style.

Fix this by defining DrawChoice() in the base wxRendererMSWBase class and
reusing it in wxRendererXP via inheritance and not composition.

Closes #14337.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-26 12:29:46 +00:00
Vadim Zeitlin
5fb4b6cd65 Add wxDataViewListCtrl::GetItemCount().
This method is convenient and (almost, except for the return value) compatible
with wxListCtrl.

See #11088.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 17:02:40 +00:00
Vadim Zeitlin
518cef0470 Add wxDataViewListCtrl::{Set,Get}ItemData() methods.
These methods are convenient when migrating the code that previously used
wxListCtrl to wxDataViewCtrl.

Closes #11088.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 17:02:35 +00:00
Vadim Zeitlin
41abc29aa6 Use wxUIntPtr instead of wxClientData in wxDataViewListCtrl.
Do not delete the client data in wxDataViewListCtrl, this class mainly exists
for compatibility with wxListCtrl and as the latter doesn't delete its client
data, neither should the former.

See #11088.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 17:02:31 +00:00
Vadim Zeitlin
dbec0fc8d8 Remove redundant wxAuiNotebook methods already present in wxBookCtrlBase.
wxAuiNotebook already inherits perfectly workable AdvanceSelection() and
GetCurrentPage() methods from wxBookCtrlBase, no need to reimplement them in
it.

See #14309.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 09:48:26 +00:00
Vadim Zeitlin
44f4f7dda0 Don't send a huge number of unneeded wxChildFocusEvents.
wxControlContainer::SetLastFocus() propagated wxChildFocusEvent explicitly to
its parent but this is not needed because wxChildFocusEvents propagate by
default, being derived from wxCommandEvent. And doing it again resulted in the
total number of events increasing exponentially with the depth of the window
hierarchy and real performance problems due to processing all of them.

Closes #14310.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71559 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 09:48:22 +00:00
Vadim Zeitlin
005a8a4c77 Suppress warnings about gnome_print_dialog_get_range() return type.
This function seems to be declared incorrectly and while it actually does
return the values we compare its return value with, it's prototyped with a
wrong enum as return type, so explicitly cast it to int to avoid warnings
from recent g++ versions.

See http://thread.gmane.org/gmane.comp.lib.wxwidgets.devel/115782/focus=115955

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 09:48:20 +00:00
Vadim Zeitlin
0cd7db14f0 Fully implement wxStyledTextCtrl::PositionToXY().
Fill in the column parameter too now.

Closes #14332.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 09:48:16 +00:00
Vadim Zeitlin
6094165c4e Fix calculation of wxStyledTextCtrl selection size in GetSelectedText().
Do the same changes as were done in r71540 to GetSelectedTextRaw() in
GetSelectedText() itself by modifying the code in gen_iface.py that generates
it.

Closes #14331.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 09:48:12 +00:00
Vadim Zeitlin
fd5cfba711 Several fixes for wxAffineMatrix2D transformations.
Correct errors in TransformPoint() and TransformDistance().

Change Rotate() to interpret positive angles as rotating clockwise, for
consistency with wxGraphicsContext::Rotate().

Improve the unit test to verify that all the transformations work correctly.

Closes #14334.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-25 09:48:09 +00:00
Robin Dunn
016a3d4cee Changes to allow these build scripts to use python3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-24 23:26:34 +00:00
Vadim Zeitlin
b2b6da49e2 Fix wxBase compilation with UTF-8-based wxString under MSW.
Use wxString::t_str() instead of wx_str() in Windows API function calls.

Closes #14325.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-23 21:16:45 +00:00
Vadim Zeitlin
ff7dbb27d4 No real changes, just slightly simplify HasAppKit_10_6() function.
Remove redundant check for version == -1.

See #13831.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-23 21:16:38 +00:00
Vadim Zeitlin
da94537c64 Compilation fix for wxUSE_STL && !wxUSE_STL_BASED_WXSTRING build.
Don't rely on implicit wxString to "const char*" conversion in Replace().

Closes #14327.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-23 21:16:35 +00:00
Vadim Zeitlin
1a692f0f22 Fix calculation of the wxStyledTextCtrl selection size.
Use SCI_GETSELTEXT to compute the size of the buffer instead of doing it
ourselves, especially as we do it incorrectly in case of rectangular
selection.

Closes #14331.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-23 21:16:24 +00:00
Vadim Zeitlin
0bcbf72bdc No real changes, just backwards propagate the changes to stc.cpp.
Apply the changes done directly to stc.cpp in r71428 and r71429 to the script
generating this code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-23 21:16:22 +00:00
Vadim Zeitlin
956b1c8553 Fix removing event handler filters in wxEvtHandler.
Removal from the simply linked list of event filters wasn't done correctly as
the pointer to the previous node was never updated.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-23 20:36:08 +00:00
Jouk Jansen
55e0100847 Fix compilation when wxUSE_DRAG_AND_DROP=0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-22 07:37:10 +00:00
Jouk Jansen
d4df01f140 Allow for compilation with wxUSE_TOOLTIPS=0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-21 08:39:03 +00:00
Vadim Zeitlin
11716cbe14 Fix 62 harmless but annoying Clang warnings in wxOSX build.
Clang warns about using letters and digits in a switch on wxKeyCode enum which
doesn't include them as elements. This is generally useful but really annoying
in this case, especially due to the sheer number of warnings, so disable it
using Clang-specific pragma.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 20:29:56 +00:00
Vadim Zeitlin
445eaabd3e Add support for task bar icon tooltips to wxOSX version.
Set the tooltip used for the icon in wxOSX/Cocoa version of wxTaskBarIcon.

Closes #14298.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 20:29:41 +00:00
Vadim Zeitlin
632e509309 Improve check for OS X version in Cocoa wxFileDialog implementation.
A library using wxWidgets linked with 10.6 SDK might be loaded into an
application loading 10.5 version of AppKit in which case 10.6-specific
functions shouldn't be used. Check for the AppKit version effectively in use
instead of just checking for the system version.

Closes #13831.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 20:29:35 +00:00
Vadim Zeitlin
4be7f29aa7 Reset wxDialog::m_modality sooner in wxOSX.
Change the internal flag to wxDIALOG_MODALITY_NONE before sending
wxEVT_WINDOW_MODAL_DIALOG_CLOSED event. This ensures that if the dialog is
shown again from this event handler it works correctly.

Closes #13951.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 20:29:29 +00:00
Vadim Zeitlin
abf99aad2d Implement wxStackWalker for wxOSX.
Use atos(1) to map address to their symbolic names.

Closes #10067.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 20:29:22 +00:00
Vadim Zeitlin
a2c3fc7c75 Fix crash on destruction of wxDataViewCtrl in wxOSX.
The control remained associated to the model so a dangling pointer could be
used if the model was destroyed after the control.

Fix this by removing the control from the model list of notifiers when it is
destroyed.

Closes #14124.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 20:29:09 +00:00
Vadim Zeitlin
e779f09357 Really fix compilation in !wxUSE_LOG_DEBUG && !HAVE_VARIADIC_MACROS case.
Fix the fix of r71502, we need the variable declaration when not using
HAVE_VARIADIC_MACROS.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 19:47:32 +00:00
Julian Smart
5a0e33afa9 Don't use deprecated font family style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 13:06:43 +00:00
Vadim Zeitlin
b42e4b3e5a Compilation fix for wxRichTextCtrl.
Don't use wxDEFAULT, there is no match for wxFont ctor taking wxSize and it,
use wxFONTFAMILY_DEFAULT instead.

Also remove the unnecessary .c_str() from the same wxFont ctor call, there is
really no reason at all to have it there.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 13:04:26 +00:00
Julian Smart
32423dd824 Added pixel size capability to wxTextAttr and wxRichTextCtrl.
Fixed composite object positioning in centred and right-aligned
paragraphs.
Added field example to sample, and enabled pixel font size selection.
Added custom text and dimension scaling.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-20 12:25:22 +00:00
Vadim Zeitlin
c564ca3c97 Fix compilation in !wxUSE_LOG_DEBUG && !HAVE_VARIADIC_MACROS case.
Define the "unused" variable unless wxLogDebug() calls are variadic macros
(not evaluating their arguments at all) and not functions.

Fixes compilation broken since r71466.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-19 16:49:11 +00:00
Vadim Zeitlin
c3b0697e28 Fix compilation in wxUSE_STL=1 build after r71467.
Restore explicit conversion of wxString to char*, there is no implicit
conversion in wxUSE_STL build.

Use utf8_str() instead of c_str() removed by r71467 however as this is what we
need for wxGTK.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-19 16:49:07 +00:00
Stefan Csomor
a9946c4e6b removing unnecessary - and incorrect - override, fixes #14319
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-19 14:24:13 +00:00
Stefan Csomor
0601befc27 fixing c++11 build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-18 09:56:33 +00:00
Stefan Csomor
5f35207b7d fixing c++11 build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-18 09:56:06 +00:00
Paul Cornett
f2c757c5cc mark virtual overrides as virtual
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-17 15:46:26 +00:00
Paul Cornett
f069ac4801 remove some unnecessary c_str() calls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-17 15:46:08 +00:00
Paul Cornett
e2cb99c856 eliminate unused variable warning with wxUSE_LOG_DEBUG==0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-17 15:45:50 +00:00
Paul Cornett
3b7067a05d Remove use of "size-request" signal for wxWindow sizing.
This signal has been removed from GTK3. Instead have wxPizza keep track of child
size, and use gtk_widget_set_size_request() for wxWindows in native containers.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-17 15:29:50 +00:00
Vadim Zeitlin
c4239f1920 Fix wxWakeUpIdle() in Unix console application broken by r71089.
Initialize m_pipeIsEmpty to true as we don't have anything in the pipe
initially and if this variable was false, nothing was ever written to the wake
up pipe and it was never set to true as nothing was read from it neither.

Closes #14166.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-16 15:10:01 +00:00
Julian Smart
d87098c062 The object size page now has full position attribute editing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-16 10:59:30 +00:00
Vadim Zeitlin
5e4bbd0f45 Fix pasting large amounts of text in wxGTK.
We need to process GDK_PROPERTY_NOTIFY events when yielding for
wxEVT_CATEGORY_CLIPBOARD, otherwise we never receive large selections.

As GDK_PROPERTY_NOTIFY can be also used for non-clipboard stuff, exceptionally
assign 2 categories to it and process it in either case.

Closes #14284.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-15 10:04:11 +00:00
Vadim Zeitlin
82c372a7e2 Add support for wxArrayString to wxVariant-to-OLE conversion.
This allows to call COM methods taking arrays of strings easily.

Also remove support for the old and non-existent any more "stringlist" variant
type.

And add more error checking.

Closes #14296.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-15 10:04:03 +00:00
Vadim Zeitlin
c833f0cdb0 Use iterators instead of indices in wxStripMenuCodes().
Make the function more efficient when using UTF-8 wxStrings by using iterators
instead of indices in the loop searching for "&".

Closes #14307.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-15 10:03:53 +00:00
Julian Smart
3ef12fd203 Clear styles popup if there is no style sheet
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-14 17:23:56 +00:00
Vadim Zeitlin
34c5aaa769 Simplify wxEventLoopManual pending events processing logic.
Don't try to process any remaining pending events in ProcessEvents() itself as
this was inconsistent: we only processed low-level toolkit pending events in
the main event loop itself if the loop was exited from a normal event handler
but only processed the wxApp-level pending events if it was exited from a
pending event handler. It also required more code than the new version that
simply processes all the remaining pending events, of both kinds, after the
main event loop termination.

This corrects changes of r71304 and replaces those of r71329.

Closes #14250.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-13 22:13:43 +00:00
Vadim Zeitlin
2ed48ef81e No changes, just simplify the code using wx2stc() a little.
Assign wx2stc() return value to a suitably const variable instead of using
ugly casts to get rid of constness.

Also use wxCharBuffer/char* explicitly inside explicit wxUSE_UNICODE checks,
using wxWX2MBbuf here doesn't gain us anything and just confuses the reader of
this code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-13 21:37:23 +00:00
Vadim Zeitlin
d7b468788e Fix wxStyledTextCtrl compilation in non-Unicode build.
The value returned by wx2stc() in non-Unicode build is a simple "char*" and we
can't call length() method on it, add a helper wx2stclen() function to get the
length from the original wxString itself in this case.

Closes #14013.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-13 21:37:18 +00:00
Vadim Zeitlin
530a50ecf0 Don't assert if no icon is specified for a wxDataViewCtrl item.
An item in a column using wxDataViewIconTextRenderer might not have any valid
icon associated with it, don't assert in case it doesn't in the native GTK
version.

Notice that the generic wxDataViewCtrl implementation already supports this
but not perfectly: no space is reserved for the icon in the images without
one, so giving the image to only some of them looks ugly. The GTK version
aligns both the items with and without icon properly and simply leaves the
image part blank and it would be better to modify the generic version to do
the same thing in the future.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-13 21:37:16 +00:00
Vadim Zeitlin
f3027fae17 Don't handle branches specially when sorting items in wxDataViewCtrl.
The generic version of wxDataViewCtrl tried to put all branches before the
leaves when sorting. This had a couple of problems: first, it didn't do it
correctly and actually placed the branches after the leaves which didn't make
any sense. Second, this was only done in the generic version and not the
native GTK one making the behaviour inconsistent between platforms. Finally,
this behaviour just doesn't make sense in general (i.e. when items don't
necessarily represent anything in the file system and maybe even sometimes
when they do) and there doesn't seem any good reason to do it by default.

So stop doing it, partially reverting the changes of r47562.

Closes #14100.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-13 21:37:10 +00:00
Julian Smart
d157d142f6 Fixed layout and hit-testing problem particularly with centred lines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-11 22:15:39 +00:00
Vadim Zeitlin
0b61390646 Fix extra event sent by wxTextEntry::ChangeValue() since r71308.
The changes of r71308 sent the event unconditionally in case the text didn't
really change but no events should be sent if the flags don't include
SetValue_SendEvent, add a check for it.

Re-closes #13936.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-11 22:10:25 +00:00
Robin Dunn
8b180bded6 Enable access to the native bitmap object wrapped by wxGraphicsBitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-11 22:06:50 +00:00
Robin Dunn
caf1a3aa68 Ensure a 32-bit cairo surface is created if it is needed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-11 22:06:37 +00:00
Stefan Csomor
8e19598f7f fixes SetFirstItem, Thanks to David Wright
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-11 06:28:54 +00:00
Julian Smart
1aca9fcdfc Added wxRichTextXMLHandler::RegisterNodeName so custom content classes can be added without
breaking XML loading


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-10 11:59:59 +00:00
Vadim Zeitlin
136aafe540 Add missing wx/scopeguard.h include to fix the build.
Closes #14285.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 17:16:26 +00:00
Vadim Zeitlin
902b679a45 Fix wxGenericListCtrl best size calculation in report view.
Just let the base class do it instead of using hard coded default value in
wxGenericListCtrl::DoGetBestClientSize().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71396 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:54 +00:00
Vadim Zeitlin
f797518e8f Unconditionally define IID_IShellItem in wxMSW sources.
This GUID may not be defined in uuid.lib even when
__IShellItem_INTERFACE_DEFINED__ is defined in the headers, so just define it
always to avoid any problems.

Closes #14244.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:51 +00:00
Vadim Zeitlin
1e20681c9e Implement constrained best size calculation in wxMSW wxListCtrl.
This fixes wxListbook controller size to avoid spurious scrollbars.

Closes #13898.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:47 +00:00
Vadim Zeitlin
402dae7b46 Improve wxBookCtrlBase controller size calculations.
Use GetBest{Height,Width}() in wxBookCtrlBase to compute the controller
control size height/width from its known (from wxBookCtrlBase size itself)
width/height. This will allow to correctly compute the size of wxListCtrl used
by wxListbook once it provides the necessary support for width-from-height and
height-from-width calculations.

See #13898.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:44 +00:00
Vadim Zeitlin
d119983947 Add wxWindow::GetBest{Height,Width}().
These functions will be used when it is necessary to determine the best size
of the control if one of its size components is fixed. Currently none of the
classes implements DoGetBestClient{Height,Width}() yet but wxListCtrl will do
it soon, see #13898.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:37 +00:00
Vadim Zeitlin
36b0b09078 Allow entering more digits in wxSpinCtrl in wxMSW than fits into it.
Scroll the control automatically if there is not enough space. This is
consistent with (single line) wxTextCtrl and wxSpinCtrl under the other
platforms.

Closes #14211.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:27 +00:00
Vadim Zeitlin
679dc4e813 Attach MDI "Window" menu to the parent frame menu bar in wxMSW.
This makes sense and fixes the regression with "Window" menu commands not
being processed any more after the changes of r71114.

Closes #14207.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:23 +00:00
Vadim Zeitlin
6e36db5eca Correct the initial value setting in wxMSW wxSpinCtrl.
Always use value argument for the text control contents and also override the
initial numeric value with it if it's numeric.

This seems to be the only consistent thing to do, so document this behaviour
and add a unit test checking for it.

Closes #13589.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:20 +00:00
Vadim Zeitlin
8087e6c942 Remove assert checking bitmap size in wxMenuItem drawing code in wxMSW.
This assert was fatal, as usual when asserting from a WM_PAINT handler, as the
function was reentered resulting in nested asserts and program abort, so
remove it to at least let the program continue to run even if there is not
enough space for the bitmap in the menu.

There is, of course, still something wrong with the menu geometry calculations
if this happens but I can't even reproduce this any more so not sure what
exactly.

See #11657.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:16 +00:00
Vadim Zeitlin
2c2138e937 Fix creation of wxBitmap from wxIcon in wxMSW: premultiply the pixels.
wxBitmap in wxMSW is supposed to store its data in alpha-premultiplied format
but didn't do it when it was created from an icon (or a cursor), resulting in
wrong display of wxIcons with alpha channel when they were used for e.g. menu
items.

Fix this by ensuring that the data is always premultiplied. This is not the
best solution as in some cases (e.g. if this wxBitmap is added to wxImageList
later) we could need to undo this premultiplication later which is quite
inefficient but at least it's simple and straightforward.

Closes #11414.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:12 +00:00
Vadim Zeitlin
30ee0b9764 Fix compilation of wxVariant code with VC6.
This was broken by the changes in r71196 as the original VC6 SDK doesn't
define VARIANT::llVal.

See #14210.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:07 +00:00
Vadim Zeitlin
1b63698581 Use better face names first in wxGTK wxNativeFontInfo::SetFamily().
Try better matches and not the most widespread ones first when building a list
of face names to try for the given family. This gives better results when
these better fonts are indeed available and doesn't change anything if they
are not.

See #14126.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:03 +00:00
Vadim Zeitlin
912886949a Check that item ID is initialized when inserting it in wxListCtrl.
Using uninitialized ID happened to work by accident with 2.8 but it doesn't
work any more, try to detect this as early as possible and give a clear
explanation of why it doesn't to help fixing the broken code that used to
accidentally work.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:01 +00:00
Vadim Zeitlin
ae4375b878 Fix wxStaticBitmap best size calculation in wxMSW.
Take the control borders into account by overriding DoGetBestClientSize()
instead of DoGetBestSize().

Also invalidate the default best size computed before we have any valid image
when setting the initial image in Create().

Closes #4099.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:23:57 +00:00
Julian Smart
7c9fdebe5f Added field implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 11:06:04 +00:00
Julian Smart
f819ed5d42 Moved default margins to buffer class Init; reduced chance of accidental selection when clicking
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-08 17:31:06 +00:00
Julian Smart
20d09da5f8 Corrected top-level object layout in paragraphs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-07 15:47:23 +00:00
Julian Smart
a70eb13eb2 Fixed inconsistent calculation of line height in paragraph layout
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-07 13:13:30 +00:00
Vadim Zeitlin
37424888b8 No real changes, just fix some typos in comments.
Closes #14276.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-07 13:12:27 +00:00
Julian Smart
bea12bf084 Added non-breaking space to whitespace check
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-07 13:12:27 +00:00
Vadim Zeitlin
25cc08c07b Use XkbKeycodeToKeysym() instead of deprecated XKeycodeToKeysym().
XKeycodeToKeysym() is deprecated in new X11 headers because it doesn't work
correctly with all symbols (https://bugs.freedesktop.org/show_bug.cgi?id=5349).
Use XkbKeycodeToKeysym() instead, this should help with some keys and also
avoids deprecation warnings during compilation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71373 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-07 13:12:23 +00:00
Vadim Zeitlin
814028444d Create a wrapper file for X11/XKBlib.h header.
We need some hacks for the older systems before including this header, extract
them from src/x11/utilsx.cpp into a new private header to be able to reuse it
from wxGTK in the next commit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-07 13:12:20 +00:00
Václav Slavík
319ff5745e Make wxDocTemplate::CreateDocument() exceptions-safe.
Don't create the document object if InitDocument() throws.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-07 12:23:09 +00:00
Václav Slavík
e4f762f416 Fix performance of wxHtmlParser::SkipCommentTag() in UTF-8 build.
Avoid computing the difference between two potentially distant
iterators, which is O(1) in wchar_t build, but O(n) in UTF-8 one.

See #13445.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-07 11:15:31 +00:00
Václav Slavík
2a715bcb3c Fix r71367: don't set bgCol twice needlessly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-06 16:56:38 +00:00
Václav Slavík
b7f37d6d86 Fix wxOwnerDrawnComboBox background on with classic theme.
In wxMSW, if the classic theme was used, read-only wxOwnerDrawnComboBox
had gray background, but native look should be the same for both
editable and read-only combo boxes: white text entry-like rectangle.

Apparently, a similar problem existed with non-classic themes too
before, as there was a workaround in place. Fixed by moving the
workaround into code used by both themed and classic rendering.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-06 13:10:34 +00:00
Vadim Zeitlin
25e3f0c69e No changes, just spelling corrections in the comments.
Closes #14275.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-05 14:09:59 +00:00
Vadim Zeitlin
8e8d910979 Update the field widths on demand in wxStatusBarGeneric.
This ensures that the value returned from GetFieldRect() is always up to date,
even when this method is called from the user-defined wxEVT_SIZE handler, i.e.
before our own OnSize() could run.

Also remove the now unneeded hack with calling the base class OnSize() from
the statbar sample.

Closes #14268.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-05 11:22:09 +00:00
Stefan Csomor
71940de693 fixes crashes with embedded controls in toolbars after toolbar destruction, code was moved in r62988, but apparently Destroy doesn't have to be called, so do a last check, fixes #14258
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-05 05:32:19 +00:00
Vadim Zeitlin
5804d539be Derive wxGenericFileCtrl from wxControl.
wxFileCtrl -- which can be #define'd as wxGenericFileCtrl -- is documented to
inherit from wxControl and does derive from it in the native GTK version, so
do it for the generic version too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-04 22:20:55 +00:00
Vadim Zeitlin
e762ef8f53 Fix precompiled headers use with MSVC in wxGTK sources.
Don't use PCH for C sources, do include wx/wxprec.h from all wxGTK C++
sources.

Closes #14224.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-04 20:35:48 +00:00
Vadim Zeitlin
982a0fcd28 Declare variables before doing anything else in C code.
Don't put statements before variable declaration in C source file. This fixes
compilation with non C99-compliant C compilers such as MSVC.

See #14224.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-04 20:35:44 +00:00
Vadim Zeitlin
c9f6f0a8cd Add wxDir::GetNameWithSep() and use it to avoid consecutive slashes.
It is wrong to use dir.GetName()+"/" to obtain a slash-terminated directory
name as this results in (usually harmless but at best ugly) double slashes at
at the beginning of the string for the root directory. Add GetNameWithSep() to
obtain the correct result in all cases.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-04 20:35:31 +00:00
Vadim Zeitlin
bb91ff63bc Don't remove the last slash from "/" directory name under Unix.
This was totally wrong as it returned empty string as (invalid) directory
name.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-04 18:31:48 +00:00
Vadim Zeitlin
2ebef6d174 No changes, just remove duplicate flags checks in wxUniv wxTLW.
For some reason (rename of the old wxTHICK_FRAME to wxRESIZE_BORDER?) we
tested for wxRESIZE_BORDER twice in a couple of places. Don't do it for
clarity.

Closes #14264.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-03 10:17:15 +00:00
Stefan Csomor
18a7376a34 use explicit WakeUp variant, too many errors using heuristics, fixes #14176
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-02 19:38:58 +00:00
Stefan Csomor
4b0a48dbac make WakeUp variant explicit, too many errors using heuristics, like #14176
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-02 19:30:11 +00:00
Dimitri Schoolwerth
ae580de376 Fixed parts of toolbar background not being drawn with older comctl32.dll.
When using comctl32.dll versions older than 6.0 toolbar icons would not have their background drawn. Fix this in a rough way by always completely erasing the background like was done before. Regression since r62971.

Closes #13512.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-02 14:44:45 +00:00
Václav Slavík
dea9430d44 Fix destruction of wxDataViewCtrl's editor control.
Don't pop event handler from the control more than once.

See r70002 and r70005 (which this reverts) for reference.

Fixes #14215.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-30 14:51:52 +00:00
Václav Slavík
840fc4d170 wxDataViewCtrl: always update the header when col best width changes.
Have an explicit per-column dirty flag and use that to determine whether
we need to call wxHeaderCtrl::UpdateColumn(). Previously, the lack of
computed best width was used as an indicator, but this didn't work
correctly if some code called GetWidth() after invalidation but before
wxDataViewCtrl::UpdateColWidths() was called at idle time. This resulted
in header's column widths getting out of sync with the control itself.

Fixes #14167.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-30 09:33:30 +00:00
Václav Slavík
b6b171522b Invalidate wxDataViewCtrl bests widths on expand/collapse.
The best column widths are computed from "realized" items that are
available as rows in wxDataViewCtrl. This information changes when a
previously collapsed node is expanded and new items become available for
column width calculation.

Fixes #14167.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-30 09:33:25 +00:00
Václav Slavík
f0630187ea Respect minimal width in wxDataViewCtrl::GetBestColumnWidth().
See #14167.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-30 09:33:21 +00:00
Vadim Zeitlin
1b29603d20 Work around the problem with not exiting event loop under MSW.
Changes of r71304 broke the event loop termination under MSW, limit them to
only the case in which they were really needed, i.e. when loop is really
exited by a pending event handler.

This is only a temporary solution, we need something better in longer term.

See #14250.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-29 23:48:20 +00:00
Vadim Zeitlin
f330dce9b7 No changes, just refactor common IsSorted() tests in wxGTK wxDataViewCtrl.
Add wxDataViewCtrlInternal::ShouldBeSorted() helper instead of testing for
both IsSorted() and wxDataViewModel::HasDefaultCompare() in several places.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-29 23:22:34 +00:00
Vadim Zeitlin
87cf085e96 No real changes, just make wxDataViewCtrlInternal::IsSorted() const.
This is a simple accessor, should have been const since the beginning.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-29 23:22:32 +00:00
Vadim Zeitlin
c04be1a29f Added wxDataViewEvent::SetDragFlags() and GetDropEffect() methods.
Allow specifying the drag operation flags and retrieving the drop effect when
it's over for wxDataViewCtrl drag-and-drop.

Currently this is only implemented in the generic version.

Closes #12583.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71324 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-29 23:22:25 +00:00
Vadim Zeitlin
167fc10e3b Set the data size in wxEVT_COMMAND_DATAVIEW_ITEM_DROP_POSSIBLE in wxGTK.
Allow wxEVT_COMMAND_DATAVIEW_ITEM_DROP_POSSIBLE handler to examine the data
being dragged by setting not only the pointer to it but also its size, as
otherwise it's impossible to do anything with it.

See #12583.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-29 23:22:21 +00:00
Vadim Zeitlin
165e563dca Restore 2.8 stock labels for wxID_PREVIEW inadvertently changed in 2.9.
The wxID_PREVIEW labels were accidentally removed in r68641 and added back
with a wrong/different label later. Restore the same one (or almost, just add
an ellipsis at the end) that was used in 2.8.

Closes #13906.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71320 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-29 23:22:13 +00:00
Vadim Zeitlin
af184f1d2f Work around wxDateTime::ParseFormat() problem in generic wxDateTimePickerCtrl.
Due to a bug in wxDateTime::ParseFormat(), calling it with wxString::c_str()
currently just crashes, so don't do this in generic wxDateTimePickerCtrl code.
The real fix is, of course, to correct the bug in wxDateTime itself but for
now this at least prevents the crash when executing the test suite. And using
c_str() here is unnecessary anyhow.

See #14214.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-29 23:22:05 +00:00
Vadim Zeitlin
182cad34aa Preserve wxComboBox selection when modifying the selected item in wxGTK too.
This does the same thing as r70018 did for wxMSW but for wxGTK, i.e. it keeps
the combo box item selected when its text is modified.

This fixes [Bitmap]ComboBox unit tests under wxGTK.

See #13769.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71316 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-29 23:22:01 +00:00
Vadim Zeitlin
39258ad796 Make wxGTK code returning correct focus in popup menu presence more robust.
Replace the changes of r69938 with an alternative and simpler solution:
instead of playing games with gs_pendingFocus, which could break down if its
old value became invalid while the menu was shown as happened if one of the
menu commands resulted in this window being destroyed, just take the currently
shown popup menu into account in DoFindFocus() itself.

This should be safer as there is no danger of any dangling pointers here and
is also simpler and more obviously correct.

Closes #14103.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:25:26 +00:00
Vadim Zeitlin
a610eb7369 Fix crash in wxFileConfig when deleting last entry of the root group.
This resulted in keeping a dangling pointer to the group line in
wxFileConfigGroup and any attempt to use it after this resulted in a crash.
Fix this by explicitly resetting the last line in this case.

Also add a unit test for this scenario.

Closes #14243.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:25:19 +00:00
Vadim Zeitlin
6ce2b9f11f Use generic wxAboutBox() in wxUniv/GTK.
The native GTK implementation is not used in wxUniv/GTK, so don't exclude the
generic one as well.

Notice that the same should be done for wxMSW and wxOSX too but we currently
seem to use the native version even in wxUniv there. It would be better to
consistently use the generic version in all wxUniv ports.

Closes #14236.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:25:07 +00:00
Vadim Zeitlin
c87df234ac Don't change wxTextEntry value if it didn't really change.
This is not only unnecessary but also can result in a kind of infinite loop
when wxTextEntry::SetValue() is called from wxEVT_IDLE handler as really
modifying the text results in another wxEVT_IDLE being generated and another
call to SetValue() and so on while not doing it in the first place completely
works around the problem and is also more efficient.

Closes #13936.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:25:03 +00:00
Vadim Zeitlin
586c455167 Don't block in wxEventLoopManual::Dispatch() if loop was exited.
If Exit() was called from a handler for one of the pending events we could
reenter Dispatch() and block there indefinitely if no other events were coming
and this was exactly what happened in wxFileSystemWatcher unit test,
preventing it from ever running to completion under Unix.

Fix this by checking m_shouldExit after executing the pending handlers and
before calling Dispatch().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:24:54 +00:00
Vadim Zeitlin
a55602fafa Don't use too big width for wxHtmlHelpWindow navigation panel.
The width of the navigation panel in wxHtmlHelpWindow could become arbitrarily
high if long items used. Avoid this by using a reasonably large but not too
big minimal width instead of determining it automatically from the items width.

Closes #13754.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:24:47 +00:00
Vadim Zeitlin
49b489e80f Fix erasing wxHtmlWindow background in wxUniv.
Prevent the default wxWindow-level wxEVT_ERASE_BACKGROUND handler from being
used in wxUniv for wxHtmlWindow. This is unnecessary as it has its own handler
anyhow and also doesn't work for some reason as erasing wxMemoryDC by drawing
a solid rectangle over it seems to be broken in at least wxX11.

Work around this problem by erasing the background in wxHtmlWindow itself if
no user-defined (as opposed to any, including one defined in wxWindow itself)
handler for this event exists.

Closes #13880.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71300 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:24:43 +00:00
Vadim Zeitlin
4fbb421ba9 Handle kCGImageAlphaNoneSkipFirst correctly in wxOSX wxBitmap code.
The code tested twice for kCGImageAlphaNoneSkipLast which was clearly wrong.
The original intention was probably to check for both it and
kCGImageAlphaNoneSkipFirst, so fix it to this now.

Closes #14019.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:24:40 +00:00
Vadim Zeitlin
93be446f3a Fix wxBitmapButton best size calculation in wxOSX/Carbon.
wxAnyButton refactoring broke the best size computation for Carbon, fix it to
work as it did before.

Closes #13830.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:24:36 +00:00
Julian Smart
d022fa4e45 Restored the exact-fit-button horizontal margin calculation from 2.8 since it was too cramped.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-27 11:39:52 +00:00
Julian Smart
23698b123b Fixed floating image layout when typing in subsequent paragraph
Now makes use of max size for images and keeps the image size reasonable
Added original image size so can usually avoid reloading image when recomputing
cached bitmap size
Takes into account bottom of the last floating image so scrollbars are
set correctly
Original image size is shown in disabled size controls


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-25 11:42:31 +00:00
Julian Smart
c6182d489c Added custom properties to style definitions and style sheets
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-24 11:22:18 +00:00
Paul Cornett
ee1787872d Remove code to find topmost X window in SetTransparent().
The purpose of this code is unknown, but it may be intended to make WM
decorations transparent. But it causes a crash when docking an AUI panel.
And in my testing the decorations are transparent even without this code.
Fixes #4841


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-24 05:38:12 +00:00
Julian Smart
e059e1bb33 Added flags to SetStyle with specific object
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-23 16:54:52 +00:00
Paul Cornett
3cc04de73e defer queue-resize until after size-allocate processing, to keep it from being ignored by GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-20 16:05:13 +00:00
Robin Dunn
70175534bf Make wxTaskBarIcon's ctor have the same API on all platforms even though setting the icon type can only be done on wxOSX-cocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-20 05:41:54 +00:00
Paul Cornett
01a49fd4c4 move widget resize handling from DoSetSize to DoMoveWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-19 17:15:40 +00:00
Paul Cornett
0604cfd7b9 simplify default border code in DoSetSize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-19 16:51:06 +00:00
Paul Cornett
4d711190c7 rearrange some code in DoSetSize to facilitate upcoming changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-19 16:44:59 +00:00
Vadim Zeitlin
34670bdafe Fix for wxUniv/GTK compilation.
wxWindowBase needs to be explicitly cast to wxWindow in wxUniv/GTK build but
this wasn't done in the changes of r70597.

Cloes #14235.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-19 16:14:18 +00:00
Paul Cornett
90dcb0d968 Adjust x,y parameters by pizza scroll offset in DoSetSize
This should cause no change in behavior, and is merely preparation for further changes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-18 16:30:11 +00:00
Vadim Zeitlin
6ca243fc75 Don't set focus to hidden window in wxSetFocusToChild().
The window that had focus previously could be hidden now, but its parent could
be hidden as well so it's not enough to set focus to it but we need to loop
until we find a visible ancestor.

Closes #14230.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-18 09:23:05 +00:00
Stefan Csomor
38274d1de3 avoiding potential mismatch between true and expected state of wxGraphicsContext because it might have been changed through its direct API meanwhile, fixes #14226
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-17 16:57:12 +00:00
Stefan Csomor
95cb88191c building on 10.5
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-17 06:13:16 +00:00
Paul Cornett
86e73b4397 remove AdjustForParentClientOrigin call, it does nothing in wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71211 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 15:45:52 +00:00
Vadim Zeitlin
c22118113a Reset hover item when mouse leaves wxAuiToolBar.
The hover item was not reset properly in some circumstances, do it now.

Also check for the item being disabled in SetHoverItem() itself instead of
doing it several times before calling it.

Closes #14189.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 14:33:35 +00:00
Vadim Zeitlin
365d11bec3 Fix wxCairoContext creation from wxWindow under MSW.
cairo_win32_surface_create() must be passed the window HDC and not HWND
itself, the old code calling it was broken.

Add WindowHDC object and pass its HDC to this function now to make it work.

Closes #14194.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 14:30:02 +00:00
Vadim Zeitlin
45cecdf943 Fix type mismatch in wxLogTrace() call in wxSocket.
Cast socket handle to a 32 bit value as we use it with "%d" (or "%u" now as it
makes more sense) format specifier to avoid problems with type mismatches
under Win64.

Closes #14204.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 14:19:13 +00:00
Vadim Zeitlin
b7775a521f Add wxFSInputStream providing stream interface to wxFileSystem.
This class allows using virtual wxFSFiles with any wx functions taking
streams. E.g. it makes it possible to load images and animations from
wxFileSystem.

Closes #14185.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 13:53:49 +00:00
Vadim Zeitlin
f5ef4d69b7 Added wxWrapperInputStream class.
This stream allows to wrap another stream. This is a useful base class for
adapter classes providing stream interface on top of something else, like the
upcoming wxFSInputStream.

See #14185.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 13:53:45 +00:00
Vadim Zeitlin
11527fc9f0 Added support for page tooltips to wxAuiNotebook.
Allow setting tooltips for the tabs of the individual pages of wxAuiNotebook.

Closes #14216.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71204 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 12:12:26 +00:00
Vadim Zeitlin
86f5e64bb1 Added wxAcceleratorEntry::ToRawString().
This function can be used to obtain language/locale-independent representation
of an accelerator. This is particularly useful for storing it in configuration
files.

Closes #14228.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 12:12:19 +00:00
Vadim Zeitlin
6f3320bf3d No real changes, just some typo fixes for previous commits.
Fix wxCOMPtr comment and don't use "s_" for non-static variable.

Closes #14227.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-16 12:12:15 +00:00
Vadim Zeitlin
580ffdf4c0 Use new style directory selection dialog under Vista and later.
Use IFileDialog in wxDirDialog implementation if possible, it shows a much
more user-friendly dialog than the one used by SHBrowseForFolder().

Closes #11401.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-15 23:18:12 +00:00
Vadim Zeitlin
23b9814f80 Fix WXK_MENU handling in wxStyledTextCtrl.
Map it to SCK_MENU instead of treating it as a modifier and simply swallowing
it.

Closes #14205.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-15 23:18:05 +00:00
Vadim Zeitlin
eccace042d No real changes, just fix misspellings in comments in wxGTK code.
Also remove a couple of wrong $Id$ expansions.

Closes #14203.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-15 23:18:01 +00:00
Vadim Zeitlin
66180c31f6 Call wxThread::OnExit() from wxThread::Exit() in wxMSW too.
Exit() is documented to call OnExit() and the pthreads version of wxThread did
behave as documented, so make wxMSW follow it as well and explicitly call
OnExit() before exiting the thread.

Closes #14212.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-14 22:37:34 +00:00
Vadim Zeitlin
4b666be659 Add support for VT_I8 (long long) values to wxAutomationObject.
Just map VT_I8 to wxLongLong.

Closes #14210.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-14 22:31:57 +00:00
Vadim Zeitlin
4eeceb1573 Add support for horizontal mouse wheel events to wxGTK too.
Handle GDK_SCROLL_{RIGHT,LEFT} directions in scroll-event handler in wxGTK.

Closes #14221.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-14 22:27:34 +00:00
Vadim Zeitlin
15e42bb781 Fix the check for wxUSE_DATETIME in wxGenericValidator code.
The #endif was somehow added at a wrong place and too much
wxDateTime-unrelated code was disabled when wxUSE_DATETIME was off.

Closes #14222.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-14 22:27:31 +00:00
Stefan Csomor
4e30a4ce57 make sure status item rect in bar is highlighted when clicked, fixes #13630
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-14 07:33:06 +00:00
Steve Lamerton
601d0ba7c6 Always check that we get a valid IDispatch* from get_Document as sometimes the call can succeed but return NULL.
Fixes #14182

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-12 21:15:16 +00:00
Vadim Zeitlin
c282e47d8f Always use UTF-8 for file names passed to GTK+ functions under MSW.
When building wxGTK under MSW, always use UTF-8 as file name encoding because
GTK+ doesn't use G_FILENAME_ENCODING there.

Add a helper wxGTK_CONV_FN() macro to hide the difference between the
platforms.

Closes #14035.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-08 18:10:29 +00:00
Vadim Zeitlin
16c0096fef Compilation fixes for Cairo-based wxGraphicsContext code under MSW.
Include MSW-specific headers under MSW to fix various compilation problems
under MinGW.

Closes #14194.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-08 18:10:11 +00:00
Vadim Zeitlin
239e6af724 Fix PCH-less compilation of graphicc.cpp under MSW too.
We need to include wx/window.h in all ports, not just wxGTK.

See #14194.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-08 10:10:20 +00:00
Robin Dunn
895c1bc001 Add a ctor that is compatible with the documented wxHelpController API
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-07 04:18:11 +00:00
Vadim Zeitlin
e5f9b4ae2d Handle Ctrl-O and Ctrl-L MSW wxWebView accelerators too.
Do the same thing for them as for Ctrl-N, Ctrl-F and Ctrl-P, they are also
used by the control.

Closes #14192.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-06 19:51:23 +00:00
Stefan Csomor
396b37294a fixes #14193
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-06 18:07:10 +00:00
Vadim Zeitlin
525454303e Set the menu itself as event object for EVT_MENU_{OPEN,CLOSED} in wxMSW.
Make wxMSW consistent with the other ports and set the menu itself, not the
window it is attached to, as the event object for the menu open/close events.

See #1595.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71115 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 22:27:36 +00:00
Vadim Zeitlin
4936c09982 Reuse wxMenu::SendEvent() from wxFrameBase::ProcessCommand().
Not only this avoids code duplication but it also fixes wrong code in
wxFrameBase version as it set the event object incorrectly to the frame itself
instead of setting it to the menu.

Added event object check to the menu events unit test.

Closes #1595.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 22:27:32 +00:00
Vadim Zeitlin
1ff3e9aae5 Use wxFrame::FindItemInMenuBar() in ProcessCommand().
Don't duplicate FindItemInMenuBar() code in ProcessCommand() and, more
importantly, use the overridden version of FindItemInMenuBar() in MDI parent
frame in wxMSW to allow using ids corresponding to the active child frame menu
items.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 22:27:26 +00:00
Vadim Zeitlin
cdacccaee8 Don't change the icon when editing wxDataViewIconText cells in generic version.
wxDataViewIconTextRenderer changed the icon to that of the last item drawn by
it when editing a cell. Fix this by getting the original icon directly from
the model instead of from the last item.

Closes #14187.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71105 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 18:40:23 +00:00
Vadim Zeitlin
e911dd0a5a Hide combobox popup when it is hidden itself in wxMSW.
It was possible to hide the main part of a combobox control but keep its popup
shown and this notably happened in wxGrid when TAB was pressed while a
wxChoice cell editor was dropped down.

Avoid this Cheshire combobox syndrome by explicitly dismissing the popup when
a combobox is hidden.

Closes #3113.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 18:40:20 +00:00
Vadim Zeitlin
a24fb9f847 Refactor: move wxComboBox::MSWDoPopupOrDismiss() down to wxChoice.
No real changes, just make this method available in wxChoice for the next
commit needs.

See #3113.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 18:40:15 +00:00
Vadim Zeitlin
2415cf6725 Remove support for MetroWerks CodeWarrior compiler.
This compiler doesn't exist any more and was probably unsupported even in 2.8,
let alone 2.9, so remove all the __MWERKS__ tests to simplify things.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 18:40:11 +00:00
Vadim Zeitlin
88ec47bb12 No real changes, just remove wxIsDebuggerRunning() stub from wxOSX.
There is no need to have a stub here when we already have in wx/debug.h, just
remove it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 18:39:57 +00:00
Vadim Zeitlin
5e0b09554d Fix handling of the main window of composite controls in wxMSW wxToolTip.
The main window itself should be added using DoAddHWND() and not
AddOtherWindow() as it is not, precisely, "other". This fixes removing and
updating it twice unnecessarily.

Closes #14184.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71097 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 13:55:56 +00:00
Vadim Zeitlin
f7dd07f64d No real changes, just use clearer names for wxMSW wxToolTip methods.
Rename wxToolTip::DoAddOtherWindow() to DoAddHWND() as it should be used for
adding any window associated with the tooltip, either the main or an auxiliary
one. And rename wxToolTip::Add() to AddOtherWindow() because it shouldn't be
used for the main window.

See #14184.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71096 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 13:55:51 +00:00
Vadim Zeitlin
3caee5cfaa Really fix source coordinates handling in wxDC::Blit() in wxMSW.
It turns out that the changes r71028 were unnecessary (and actually harmful)
in most cases, they're only needed when a DIB is used as a source DC. So move
the manual coordinates adjustments to the branch of code using StretchDIBits()
and don't do it anywhere else.

Also don't list this as an incompatible change as wxMSW actually already
worked as the other ports in the majority of cases and list it as a simple bug
fix instead.

Closes #14188.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 13:55:43 +00:00
Vadim Zeitlin
a45c6a892c Fix wxRadioButtons without explicit wxRB_GROUP styles in wxGTK.
If two radio buttons are created consecutively, they should be part of the
same radio group, even if wxRB_GROUP hadn't been explicitly used for the first
of them.

Do this is for consistency with wxMSW and also because the alternative
behaviour doesn't make much sense.

Also stop iterating too far backwards when searching for the group to be used
for a new radio button and add comments explaining what's going on here.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71091 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-04 22:30:30 +00:00
Vadim Zeitlin
589046c0bd Avoid overflowing the wake up when handling events in Unix console apps.
Generating many wake ups from the worker threads could result in overflowing
the buffer of the pipe used to communicate with the main thread which, in
turn, resulted in other serious problems (deadlocks...).

Avoid this by only writing to the pipe if it is empty.

Closes #14166.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-04 14:36:45 +00:00
Jouk Jansen
733fa10b1a Update Makefile for OpenVMS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-03 06:25:03 +00:00
Vadim Zeitlin
c52f18dfc8 Override DoThaw() in wxAuiNotebook correctly.
Don't "override" Thaw() in wxAuiNotebook as it's not virtual any more.
Override DoThaw() instead.

Also use wxBookCtrlBase instead of wxControl as the base class.

Closes #14179.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71081 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-02 18:26:03 +00:00
Stefan Csomor
b0bb9f2828 correct text drawing with background brush, fixes #14161
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-01 13:37:53 +00:00
Vadim Zeitlin
d02a916ba1 Return run-time zlib version from wxGetZlibVersionInfo().
Return the version really used instead of the version the code was compiled
against.

Incidentally, this avoids the use of ZLIB_VERNUM not available in old (1.1)
versions of zlib, thus fixing compilation under Solaris 10.

Closes #14158.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-30 12:16:58 +00:00
Vadim Zeitlin
33208b4ecb Remove nonsensical custom comparison code from wxDataViewIndexListModel.
This model was comparing its items by their positions in the list instead of
their values for some reason. This broke sorting in wxDataViewListCtrl using
this model and simply didn't make any sense.

Just remove the comparison code from wxDataViewIndexListModel entirely, the
base class version works just fine for it.

Closes #14116.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-29 23:43:46 +00:00
Vadim Zeitlin
be6b31f34f Restore the correct brush in wxGCDC::GradientFill() methods.
Both GradientFillLinear() and GradientFillConcentric() changed the brush on
the underlying wxGraphicsContext but didn't restore the default brush back.

Closes #14131.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-29 23:43:43 +00:00
Vadim Zeitlin
20ebd9ffbf Allow closing wxAuiTabCtrl pages without switching to them.
Clicking on the page "x" close button switched to the page before doing
anything else which was unusual as other tabbed controls don't behave like
this.

Handle clicks on the close button specially and avoid switching to the page
which is about to be closed anyhow.

Closes #14150.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-29 12:08:05 +00:00
Vadim Zeitlin
22930be86c Fix focus handling logic in generic wxListCtrl.
Don't override SetFocus() to set the focus to the main window, this isn't
enough as we can be given the focus by the underlying toolkit itself, without
our SetFocus() being called -- this happened in wxGTK when focus was changed
from the keyboard using TAB and in this case it didn't get to the main window
but remaining on the wxListCtrl itself meaning that keyboard input wasn't
processed at all.

Use wxNavigationEnabled<> now to ensure that OnSetFocus() and related methods
do the right thing instead now.

Also get rid of OnSetFocus() in wxListHeaderWindow, it's better to override
AcceptsFocus() to return false to avoid getting focus in the first place.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-29 00:10:53 +00:00
Steve Lamerton
34326da778 Minor changes, just trim trailing spaces in webview code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-28 18:00:30 +00:00
Stefan Csomor
1e9e4113e9 adding correct behavior for move events as the are issued under OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-28 09:13:40 +00:00
Steve Lamerton
e81ef29720 Correctly use QueryInterface in GetDocument to ensure that we only return an IHTMLDocument2 pointer if one is available. Check GetDocument being NULL when used. This fixes the displaying of non-html documents such as pdfs.
Fixes #14060

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-27 19:33:59 +00:00
Vadim Zeitlin
6f26e88002 Honour source wxDC coordinate system in wxDC::Blit() in wxMSW.
wxGTK and wxOSX already did this so do it in wxMSW as well.

Update the documentation to make this explicit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-27 12:28:04 +00:00
Vadim Zeitlin
90761420ee Set wxTextAreaBase::m_filename in the methods of this class itself.
m_filename member was declared in wxTextAreaBase but set only in the
overridden wxTextCtrlBase methods. This meant that it wasn't updated correctly
in wxStyledTextCtrl which also derives from wxTextAreaBase and so saving
SaveFile() with empty file name didn't work there even when the control had
been originally loaded from a file.

Move the code updating m_filename to wxTextAreaBase itself to fix this. This
also simplifies the code as it's now not necessary to override
Do{Load,Save}File() in wxTextCtrlBase at all.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-27 11:58:09 +00:00
Vadim Zeitlin
8b2f64c6c1 Added wxWindow::IsDescendant() helper.
This function checks if another window is a direct or indirect child of this
one, which can be needed in a number of situations.

See #3063.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-27 11:58:02 +00:00
Julian Smart
ed98f424de Corrected scale factor for the use of DC PPI instead of printer PPI in wxRTC code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-26 16:57:05 +00:00
Vadim Zeitlin
ba3b628e8f No changes, just small cleanup in AUI GTK tab art drawing code.
Use more clear variable names; remove commented out assignments to inexistent
variables.

Closes #14139.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-26 11:24:01 +00:00
Vadim Zeitlin
ce0092d71f Fix gap box coordinates in GTK AUI tab art code.
Closes #14138.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-26 11:23:58 +00:00
Vadim Zeitlin
0d57a51305 Minor fix to wxGraphicsContext::SetInterpolationQuality() in wxMSW.
Only update the internal variable if we really succeeded in changing the
interpolation mode.

See #14134.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-26 11:23:54 +00:00
Paul Cornett
a99e147a5c remove unused variable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-25 23:33:43 +00:00