Commit Graph

55860 Commits

Author SHA1 Message Date
Vadim Zeitlin
226fa6db3d Improve SAFEARRAY support in wxMSW OLE Automation code.
Add a new wxSafeArray<> class wrapping SAFEARRAY.

Also add support for converting VARIANTs containing other, previously
unsupported, standard types.

Closes #14637.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-23 22:49:50 +00:00
Vadim Zeitlin
2abce4af22 Explain EVT_CONTEXT_MENU generation in more details.
Document that you should not count on specific order of mouse right button and
context menu events.

Closes #12535.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-23 22:49:24 +00:00
Vadim Zeitlin
0079c032f5 No changes, just reuse a bit of code in wxMSW wxMDIParentFrame.
Call wxMDIChildFrame::Activate() instead of redoing the same thing. This also
ensures that iconized MDI children are restored before being activated (see
previous commit).

See #13946.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-23 22:49:01 +00:00
Vadim Zeitlin
254dceaaab Restore an iconized MDI child frame when activating it.
Without doing this activating an iconized frame doesn't do anything at all,
i.e. doesn't present it to the user as presumably intended.

Closes #13946.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-23 22:48:39 +00:00
Vadim Zeitlin
e380ca3cf8 Correct best size computation for wxCheckBox with borders under MSW.
As wxCheckBox can now have borders (see previous commit), we must override
DoGetBestClientSize() and not DoGetBestSize() in it to take account of them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-23 22:48:16 +00:00
Vadim Zeitlin
687823a157 Respect styles translated to WS_EX_XXX in wxMSW wxCheckBox and wxRadioButton.
Take into account the window styles that translate to extended Windows styles
at MSW level.

Also override MSWGetStyle() in these classes, just as in most (all?) other
ones, for consistency instead of doing wx-to-MSW styles translation directly
in Create().

Notice that as a side effect of this change, border styles now work for
wxCheckBox which wasn't the case before. It's not clear if this is really
wanted but OTOH there doesn't seem to be any real reason to forbid them
neither.

Closes #14674.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-23 22:47:52 +00:00
Vadim Zeitlin
863dc042da Allow wxWrapSizer to request more size than it used previously.
The code in wxWrapSizer::CalcMin() ensured that the sizer never requested more
space than what it had been already given which, while clearly done
intentionally, seems to be wrong because it can never end up with enough space
for all its rows/columns unless it is set to up to expand in the containing
sizer.

In other words, the old code could return the size which was not enough to
show the sizer contents fully which is against CalcMin() contract.

Change this by simply removing the check for the new minimal size being less
than the old one. This allows the wrap sizer demo in the layout sample to work
correctly whereas before the sizer contents was completely invisible initially.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-22 16:16:52 +00:00
Vadim Zeitlin
73eb7ca93f Make wxWrapSizer demo in the layout sample more dynamic.
Allow adding checkboxes to and removing them from the wrap sizer to
demonstrate how it adjusts to its contents dynamically.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72536 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-22 16:16:30 +00:00
Vadim Zeitlin
3e8cba9f8e Credit "sodev" with correct full name.
Amend the change log entry of r71701.

See #14380.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-22 16:16:07 +00:00
Vadim Zeitlin
6e34a9e443 Fix crash on wxMediaCtrl creation in wxMSW.
A valid RECT pointer must be passed to DoVerb(OLEIVERB_INPLACEACTIVATE) but
r72027 (see #14209) broke this and passed it NULL resulting in an instant
crash.

Revert this part of the change and do pass out window client area.

Closes #14682.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-21 10:26:18 +00:00
Vadim Zeitlin
7cc3d0e004 Fix wxPluginLibrary wxClassInfo pointers initialization.
The values of m_ourFirst and m_ourLast were inversed in wxPluginLibrary ctor.
Fix this and explain in a comment that "first" and "last" here refer to the
order in the linked list and not the chronological order.

Closes #14483.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 23:12:51 +00:00
Vadim Zeitlin
89b3361ec2 Fix wrong configure test for abi::__forced_unwind in previous commit.
The previous commit was accidental and contained an initial version of the
patch which didn't test for NPTL abi::__forced_unwind correctly and just
tested whether cxxabi.h header was available.

Tighten the check to work on the other systems and check for __forced_unwind
existence itself.

Also check for cxxabi.h before testing for __cxa_demangle as there is no need
to try to compile another test program if we already know that this entire
header is unavailable anyhow.

See #14626.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 23:12:28 +00:00
Vadim Zeitlin
e02ea2030c Rethrow abi::__forced_unwind in wxThread code under Unix.
We must always rethrow the special abi::__forced_unwind exception when
handling exception in threads under Linux as the NPTL simply terminates the
process at first opportunity if this exception is not rethrown.

See http://udrepper.livejournal.com/21541.html for more details.

Closes #14626.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 23:00:44 +00:00
Vadim Zeitlin
9b9a7c3331 Add public (but not documented) wxCheckBox::MSWMakeOwnerDrawn().
It can be useful to explicitly make a check box owner drawn, so make the
private MakeOwnerDrawn() public and add "MSW" prefix to it to allow doing this
from the user code.

Closes #14679.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 22:15:37 +00:00
Vadim Zeitlin
652aa9360f Fix and enhance support for client data in wxRibbonButtonBar.
Add the possibility to retrieve the client data associated with a button and
not only set it (which wasn't very useful on its own).

Also allow having both typed (owned) and untyped (not owned) client data, as
in the other wxWidgets controls.

To avoid confusion between two different kinds of data, remove "client_data"
argument from the functions adding buttons and provide separate methods with
distinct names for setting and getting client data.

Closes #14630.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 20:02:25 +00:00
Vadim Zeitlin
7f08b8283b Add wxRibbonButtonBarEvent::GetButton().
Allow to retrieve the button associated with the given button bar event.

See #14630.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72528 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 20:02:02 +00:00
Vadim Zeitlin
02a40ac1da Add wxRibbonButtonBar::GetActiveItem() and GetHoveredItem().
Add accessors for the button being currently clicked or hovered over.

See #14630.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 20:01:36 +00:00
Vadim Zeitlin
71a77e77d1 Add wxRibbonButtonBar::GetItem(), GetItemById() and GetItemId().
Allow accessing the ribbon bar buttons either by index or ID.

See #14630.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 20:01:12 +00:00
Vadim Zeitlin
4f97cb83cf Fix alpha handling in Scintilla when not using wxGraphicsContext.
When using raw bitmap data access classes such as wxAlphaPixelData we must
destroy them to ensure that the changes done via them are committed to the
bitmap before drawing the bitmap.

Just add an extra block (the diff should be viewed ignoring white space to see
the only significant change) to ensure that wxAlphaPixelData is destroyed
before DrawBitmap() is called.

Closes #14680.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 20:00:48 +00:00
Robin Dunn
ac896cd53a Document ShowWithoutActivating
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 16:42:27 +00:00
Vadim Zeitlin
9b14c706b2 Make it possible to TAB-navigate among wxStaticBox children.
As wxStaticBox can now contain child windows, derive it from
wxNavigationEnabled<> to allow TAB-navigating among them. Without this, it was
impossible to switch focus from keyboard to any of the controls inside
wxStaticBox.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 16:00:07 +00:00
Vadim Zeitlin
ea6e973ca2 No real changes, just remove an unnecessary variable assignment.
Initialize m_gtk_model with its correct value immediately, without setting it
to NULL first.

Closes #14673.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 15:47:03 +00:00
Vadim Zeitlin
de03c7fec1 Better documentation for wxRect::Set{Left,Top}().
These functions also change the rectangle right/bottom position, unlike
Set{Right,Bottom}() that change its width/height respectively. This is not
very logical but impossible to change for compatibility reasons, so at least
document it clearly.

Closes #14678.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 15:46:40 +00:00
Vadim Zeitlin
4f4c48a89f Quote wxExecute() arguments in wxDebugReportUpload when using curl.
Quote the argument to curl as it might contain spaces.

Closes #14677.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 15:46:18 +00:00
Jouk Jansen
bab5e0d028 backport wxspinctrl::get/setbase form gtk ->gtk1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 12:33:05 +00:00
Vadim Zeitlin
95725e35d8 Add wxStyledTextCtrl::AnnotationClearLine().
Simply set NULL annotation text for the given line.

Closes #12960.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 10:20:42 +00:00
Vadim Zeitlin
33e659d77a Add wxStyledTextCtrl::SelectNone() to the template header file too.
This method was only added to the generated include/wx/stc/stc.h but not to
src/stc/stc.h.in from which it is created in r72490, do update the latter file
too now.

See #12960.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 10:20:18 +00:00
Vadim Zeitlin
f335950b3a Fix incorrect code sorting pages by their widths in wxRibbon.
The "sneaky obj array trickery" wasn't very sneaky but was just plain wrong
and misused object array of pages in a way that was invalid and didn't crash
just because of sheer luck.

Rewrite this code to use a temporary wxVector of pages that can be sorted
independently of the main m_pages array. This is 100% safe and also more
clear.

Closes #14625.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-20 10:19:54 +00:00
Stefan Csomor
0224c1f68b completing the removal of PICT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 21:18:55 +00:00
Steve Lamerton
39d0e65b62 Update the wxSpinCtrlDouble documentation so SetIncrement refers to SetDigits
Closes #12342

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 20:23:53 +00:00
Robin Dunn
b452fd5535 Add define for MAC_OS_X_VERSION_10_7 if there isn't one already
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 18:55:07 +00:00
Stefan Csomor
37d8aa5b68 bracing 10.7+ constant
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 14:09:30 +00:00
Stefan Csomor
359e69fed2 workaround for non-standard icon sizes under 64 bit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 12:36:24 +00:00
Jouk Jansen
1dae0c3b6f Update setup.h for OpenVMS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 11:28:12 +00:00
Stefan Csomor
60cccf23da fixing incorrect scrolling - which happened at least under OSX ...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 08:18:15 +00:00
Vadim Zeitlin
4d1c7a9160 Update wxGTK.spec to work with openSUSE build server.
Changes from Marcin Wojdyr fixing issues for different RPM-using systems:

- added all necessary BuildRequires fields
- for openSuse wxGTK-gl package is named libwx_gtk*_gl... (it's
enforced that package with one shared lib has name matching the
library name)
- added missing '%dir's - on some distros rpms didn't built without it
- Fedora, Suse and Mandriva have all different set of known Groups,
I've changed group from 'X11/Libraries' to 'System/Libraries' -- it's
defined at least in Suse and Mandriva. (in recent distro releases
Group can be skipped, so it's becoming irrelevant).
- removed 'Packager' field and dots ending Summary field - AFAIR these
were errors on Opensuse
- added '= %{version}' to Provides
- for Redhat5 use GCC4.4 (build crashed with default 4.2)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 07:53:13 +00:00
Vadim Zeitlin
089ef0bef7 Let wxWindow::Fit[Inside]() work even for windows without children.
The best [virtual] size of the window is usually determined by its children
but it's also possible to have a min size constraint set on the window sizer
so set the window to its best size in Fit() independently of whether it has
children or not.

Closes #14668.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-19 07:50:07 +00:00
Vadim Zeitlin
4801d9613f More s/loose/lose/ in wxEncodingConverter comments.
Finish the changes started by r72500 and lose the remaining loosely used
words.

Closes #14665.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-18 22:45:38 +00:00
Vadim Zeitlin
fcde720806 Show tooltips for the too long items in generic wxTreeCtrl.
Show the full item text in a tooltip if the entire text can't be shown on
screen.

Closes #14667.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-18 22:45:15 +00:00
Vadim Zeitlin
f45f43cad0 Fix wxMSW compilation in STL build after the changes of r72472,
Call t_str() to explicitly convert wxString to wxChar* as implicit conversion
is not available in STL build.

Closes #14666.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-18 00:03:45 +00:00
Dimitri Schoolwerth
81a887a895 Set svn properties on recently added files.
Added svn:eol-style (set to native) and svn:keywords (set to Id) for .cpp and .h files that were added since r72218.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-17 23:35:26 +00:00
Vadim Zeitlin
410e9d277c Rebake after addition of richtexttabspage.h in r72497.
See #14644.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-17 12:18:52 +00:00
Vadim Zeitlin
6922252d0a Don't show hidden wxGrid rows/columns when they're auto-sized.
Fix the problem introduced in r72491 which resulted in wxGrid rows/columns
being shown after auto-sizing even if they had been hidden.

Closes #14133.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-17 11:07:55 +00:00
Vadim Zeitlin
105b2ca747 No changes, just fix some typos in the comments in the headers.
Closes #14665.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-17 11:07:30 +00:00
Vadim Zeitlin
cdee8c6ddd No real changes, just remove an unneeded variable initialization.
Closes #14664.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-16 23:09:38 +00:00
Julian Smart
c0c51aa3df Updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-16 15:35:39 +00:00
Julian Smart
af71fb72a0 Added include/wx/richtext/richtexttabspage.h to files.bkl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-16 15:31:05 +00:00
Vadim Zeitlin
daa3509726 No changes, just silence some MSVC 11 static analyzer warnings.
This is an aborted attempt to make wxWidgets code compile without warnings
when using MSVC 11 /analyze option, as it was supposed to have become much
better. Unfortunately it still produces way too many false positives to be
really useful, in particular NULL pointer detection is completely broken as
even the code such as (from object.cpp):

        wxClassInfo *info = sm_first;
        while (info)
        {
            if ( info->m_next == this )
                ...
        }

provokes tons of warnings about "info" being NULL inside the loop which is
clearly impossible.

So this commit just fixes a few obvious warnings, mostly about variable
shadowing but also a couple about possibly passing NULL to memcpy().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-15 23:20:23 +00:00
Vadim Zeitlin
42d7394119 Add help button support to wxRibbonBar.
Optionally show standard "Help" question mark button in the ribbon top right
corner and generate the appropriate event for it.

Closes #14576.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-15 23:19:59 +00:00
Vadim Zeitlin
66815259f5 Fix text origin and bounding box computations in wxSVGFileDC.
Text origin was calculated incorrectly for the rotated text and the bounding
box was wrong even in non-rotated case.

Fix this by using correct definition of the text anchor according to the SVG
specification and add a test to the svg sample demonstrating this.

Closes #14489.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-15 23:19:35 +00:00