]> git.saurik.com Git - wxWidgets.git/log
wxWidgets.git
14 years agoNo changes, just simplify docview sample a bit.
Vadim Zeitlin [Wed, 10 Nov 2010 00:36:39 +0000 (00:36 +0000)] 
No changes, just simplify docview sample a bit.

Remove some unnecessary function arguments and m_frame member variable.

Closes #12374.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66079 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoCorrect wxID_SEPARATOR description in menu documentation.
Vadim Zeitlin [Wed, 10 Nov 2010 00:36:30 +0000 (00:36 +0000)] 
Correct wxID_SEPARATOR description in menu documentation.

Also correct a typo in Delete() function links.

Closes #12666.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix preprocessor definitions for wxBase build under OS X.
Vadim Zeitlin [Tue, 9 Nov 2010 23:53:42 +0000 (23:53 +0000)] 
Fix preprocessor definitions for wxBase build under OS X.

Define __WXOSX__ for non-GUI build under Darwin. Ensure that the rest of the
code compiles correctly when just __WXOSX__ is defined but neither of
__WXOSX_{CARBON,COCOA,IPHONE}__ is. This ensures that wxBase can actually be
built under Mac.

Move OS X symbols definitions in wx/platform.h after wx/setup.h inclusion as
they rely on __DARWIN__ and wxUSE_GUI values which are both define in that
file now. Still keep them before wx/chkconf.h inclusion which relies on
__WXOSX_XXX__ being defined. Yes, it's a mess and should be cleaned up more
permanently some day.

Also remove some redundancy from wx/osx/{carbon,cocoa}/private.h by factoring
out common parts into wx/osx/core/private.h. Also include this header itself
from wx/osx/private.h directly instead of including it thrice from different
sub-ports headers.

Closes #12660.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix timeval struct initialization in wxSelectDispatcher.
Vadim Zeitlin [Tue, 9 Nov 2010 23:53:33 +0000 (23:53 +0000)] 
Fix timeval struct initialization in wxSelectDispatcher.

The tv_usec field could overflow its maximal value while tv_sec was always
left 0.

It would be even better to reuse SetTimeValFromMS() from socket.cpp here in
the future.

See #11542.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix crash in wxCFEventLoop::AddSourceForFD().
Vadim Zeitlin [Tue, 9 Nov 2010 23:53:28 +0000 (23:53 +0000)] 
Fix crash in wxCFEventLoop::AddSourceForFD().

Don't reset CFFileDescriptorRef before passing it to
CFFileDescriptorCreateRunLoopSource(), this resulted in a crash inside this
function.

Closes #11542.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRemove non-existent functions declarations from wxOSX/Carbon.
Vadim Zeitlin [Tue, 9 Nov 2010 23:53:21 +0000 (23:53 +0000)] 
Remove non-existent functions declarations from wxOSX/Carbon.

wxMacSetupConverters() and wxMacCleanupConverters() don't seem to exist any
more so don't declare them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDocument wxRenameFile() behaviour when destination is a directory.
Vadim Zeitlin [Mon, 8 Nov 2010 16:28:57 +0000 (16:28 +0000)] 
Document wxRenameFile() behaviour when destination is a directory.

Document that the source file is moved to the destination if it's a directory,
apparently this is not obvious.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUnload bogus XRC resources in "garbage" unit test.
Vadim Zeitlin [Mon, 8 Nov 2010 16:28:51 +0000 (16:28 +0000)] 
Unload bogus XRC resources in "garbage" unit test.

Leaving invalid XRC entries in wxXmlResource internal list of loaded resources
resulted in failures in the XRC unit test which executed after this one.

It seems that loading an invalid resource shouldn't prevent the other ones
from loading correctly later and this probably should be corrected at
wxXmlResource level but for now work around this problem in the test itself.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix crash in XRC ID range support code.
Vadim Zeitlin [Mon, 8 Nov 2010 13:50:46 +0000 (13:50 +0000)] 
Fix crash in XRC ID range support code.

Really fix removing the record from the linked list. This code was modified by
r66064 but was still wrong because the wrong pointer was updated.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoCompilation fix for STL build after ID range changes in XRC.
Vadim Zeitlin [Sun, 7 Nov 2010 22:13:55 +0000 (22:13 +0000)] 
Compilation fix for STL build after ID range changes in XRC.

Fix compilation of the new code which relied on implicit conversion of
wxString to "const char *" which is unavailable when wxUSE_STL==1.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFactor our hash function used for XRC ids hash map.
Vadim Zeitlin [Sun, 7 Nov 2010 19:34:05 +0000 (19:34 +0000)] 
Factor our hash function used for XRC ids hash map.

Define the hash function in a separate function instead of duplicating it in
XRCID_Lookup() and RemoveXRCIDEntry().

The hash function is extremely simplistic and inefficient right now, it should
be replaced with wxStringHash::stringHash().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix memory leak of XRC ids introduced by the ID range support patch.
Vadim Zeitlin [Sun, 7 Nov 2010 19:33:55 +0000 (19:33 +0000)] 
Fix memory leak of XRC ids introduced by the ID range support patch.

Fix bug in linked list processing in RemoveXRCIDEntry() added in r66059: it
incorrectly overwrote the XRC id table entry with the next element in the list
instead of just updating the pointer used during iteration.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoReformat long lines in the new part of the xrc sample.
Vadim Zeitlin [Sun, 7 Nov 2010 19:33:38 +0000 (19:33 +0000)] 
Reformat long lines in the new part of the xrc sample.

No changes, just break the too long lines.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUse Connect() of Bind() in the new part of xrc sample.
Vadim Zeitlin [Sun, 7 Nov 2010 19:33:30 +0000 (19:33 +0000)] 
Use Connect() of Bind() in the new part of xrc sample.

Use Connect() for compatibility (notably with VC6 which doesn't support
Bind()). Also connect the event handlers on loading the dialog instead of
waiting until the relevant page is selected, this makes the code slightly
simpler as we don't need to remember whether we connected them or not any
longer.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoTest both ChangeSelection() and SetSelection() in notebook sample.
Vadim Zeitlin [Sun, 7 Nov 2010 19:33:22 +0000 (19:33 +0000)] 
Test both ChangeSelection() and SetSelection() in notebook sample.

Test wxBookCtrl::SetSelection() too to be able to check that it does generate
events as expected.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDon't require skipping "page changed" event in wxMSW wxNotebook.
Vadim Zeitlin [Sun, 7 Nov 2010 19:33:10 +0000 (19:33 +0000)] 
Don't require skipping "page changed" event in wxMSW wxNotebook.

wxMSW wxNotebook implementation used to handle EVT_NOTEBOOK_PAGE_CHANGED event
to update the currently shown page which meant that page changing was broken
if the user code handled and didn't skip this event.

As the other ports don't require the user code to skip this event, don't do
this in wxMSW neither and always update the selected page unconditionally.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd support for id ranges to XRC.
Vadim Zeitlin [Sun, 7 Nov 2010 14:00:59 +0000 (14:00 +0000)] 
Add support for id ranges to XRC.

Allow to declare ranges of consecutive IDs in XRC by using the "id[n]" syntax.
Show this functionality in the xrc sample and test it in the new unit test.

Also show and test the "object reference" XRC functionality.

Closes #11431.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoMake wxXmlResource::ReportError() wxXmlNode parameter const.
Vadim Zeitlin [Sun, 7 Nov 2010 14:00:43 +0000 (14:00 +0000)] 
Make wxXmlResource::ReportError() wxXmlNode parameter const.

This function (and the related DoReportError()) doesn't need to modify its
"context" argument so take a const-pointer in it.

See #11431.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoMention the GUI test in the unit test tech note.
Vadim Zeitlin [Sun, 7 Nov 2010 14:00:31 +0000 (14:00 +0000)] 
Mention the GUI test in the unit test tech note.

Update the tech note to mention the (relatively) new GUI test program too.

See #11431.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUpdate and reorganize XRC overview to make it more useful.
Vadim Zeitlin [Sun, 7 Nov 2010 14:00:19 +0000 (14:00 +0000)] 
Update and reorganize XRC overview to make it more useful.

Emphasize the parts most useful for the new users instead of more advanced
concepts and generally make the text more readable.

Closes #12661.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd support for toggle buttons to wxRibbonButtonBar.
Peter Cawley [Sun, 7 Nov 2010 13:44:22 +0000 (13:44 +0000)] 
Add support for toggle buttons to wxRibbonButtonBar.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix build with Borland C++ compiler.
Vadim Zeitlin [Sun, 7 Nov 2010 13:16:20 +0000 (13:16 +0000)] 
Fix build with Borland C++ compiler.

Disable some parts of the code that this compiler had problems with. Add
parentheses to work around its bugs elsewhere.

Closes #12558.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUpdate all windows associated with the tooltip when it changes in wxMSW.
Vadim Zeitlin [Sun, 7 Nov 2010 13:12:16 +0000 (13:12 +0000)] 
Update all windows associated with the tooltip when it changes in wxMSW.

Although the tooltip was initially correctly set for all windows associated
with it, it was only updated for the main one if its text changed later. This
resulted in leaving the old tooltip for the composite controls such as
wxComboBox or controls with sub-windows such as wxRadioBox.

Fix this by storing all windows associated with the tooltip (for space
efficiency, only allocate the array if necessary however as it will be empty
in the majority of cases) and apply SetTip() to all of them, not just the main
one.

Closes #12659.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agodisable code because of OS bug, fixes #12478, fixes #12554
Stefan Csomor [Sun, 7 Nov 2010 11:54:09 +0000 (11:54 +0000)] 
disable code because of OS bug, fixes #12478, fixes #12554

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoImprove behaviour of scrolling through a ribbon gallery.
Peter Cawley [Sat, 6 Nov 2010 23:46:25 +0000 (23:46 +0000)] 
Improve behaviour of scrolling through a ribbon gallery.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agorouting the tab, return events for single line fields back to standard wx handler...
Stefan Csomor [Sat, 6 Nov 2010 15:48:48 +0000 (15:48 +0000)] 
routing the tab, return events for single line fields back to standard wx handler (doesn't work for secure fields unfortunately), fixes #12386 and partly #12392

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoimplementing turning off of default button as well
Stefan Csomor [Sat, 6 Nov 2010 15:37:12 +0000 (15:37 +0000)] 
implementing turning off of default button as well

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoMinor cosmetic fix to generic check tools appearance in wxOSX.
Vadim Zeitlin [Fri, 5 Nov 2010 21:43:33 +0000 (21:43 +0000)] 
Minor cosmetic fix to generic check tools appearance in wxOSX.

Use rounded rectangle to indicate the selected tool instead of a plain one.

Closes #12409.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix check toolbar items behaviour in non-native toolbars in wxOSX.
Vadim Zeitlin [Fri, 5 Nov 2010 21:43:28 +0000 (21:43 +0000)] 
Fix check toolbar items behaviour in non-native toolbars in wxOSX.

Update the button state when the tool is toggled. Also use NSToggleButton for
this tool and not NSOnOffButton as the latter doesn't use the alternative
(toggled) image.

Closes #12408.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAvoid using wx GDI classes from non-main thread in wxOSX/Cocoa.
Vadim Zeitlin [Fri, 5 Nov 2010 21:43:18 +0000 (21:43 +0000)] 
Avoid using wx GDI classes from non-main thread in wxOSX/Cocoa.

OS X uses a background thread for pulsing the default button and we intercept
the draw requests from it. As our drawing code is not MT-safe, executing it
from the non-main thread can result in crashes.

Avoid this by simply not doing anything fancy when called from a background
thread and simply deferring to the superclass instead.

Closes #12407.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoReally update tooltip when wxToolBar::SetShortHelp() is called.
Vadim Zeitlin [Fri, 5 Nov 2010 21:43:13 +0000 (21:43 +0000)] 
Really update tooltip when wxToolBar::SetShortHelp() is called.

Changing a toolbar tool tooltip didn't work in wxOSX/Cocoa because the new
value was never propagated to the native control.

See #12362.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRemove trailing comma from an enum.
Vadim Zeitlin [Fri, 5 Nov 2010 21:43:07 +0000 (21:43 +0000)] 
Remove trailing comma from an enum.

Comma after last enum element is not allowed in C++98 and some compilers will
warn about it.

Closes #12591.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoShow the first, not the last, inserted item in wxListBox in wxOSX.
Vadim Zeitlin [Fri, 5 Nov 2010 21:42:49 +0000 (21:42 +0000)] 
Show the first, not the last, inserted item in wxListBox in wxOSX.

The listbox showed its last, not first, item after creation in wxOSX which was
inconsistent with the other ports and generally inconvenient.

Fix this by ensuring that the first item being inserted is shown, and not the
last one as was (implicitly) the case before. A better fix would be to avoid
scrolling entirely but I don't know how to do this with NSClipView.

Closes #12365.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUse CGFloat instead of float for mouse wheel event parameters.
Vadim Zeitlin [Fri, 5 Nov 2010 21:42:28 +0000 (21:42 +0000)] 
Use CGFloat instead of float for mouse wheel event parameters.

This fixes mouse wheel handling in 64 bits where CGFloat has size different
from float.

Closes #12168.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix showing the frames full screen under OS X.
Vadim Zeitlin [Fri, 5 Nov 2010 21:41:56 +0000 (21:41 +0000)] 
Fix showing the frames full screen under OS X.

Don't leave space for the title bar when showing the frame full screen.

Closes #11701.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoImprove default position for new TLWs in wxOSX.
Vadim Zeitlin [Fri, 5 Nov 2010 21:40:30 +0000 (21:40 +0000)] 
Improve default position for new TLWs in wxOSX.

Put the new windows in the upper left corner of the screen but not at (0, 0)
as before, this was rather inconvenient and too different from the normal
application behaviour under OS X.

Closes #11926.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoEnsure that strings returned by wxMBConv_cf are in NFC form.
Vadim Zeitlin [Fri, 5 Nov 2010 21:40:09 +0000 (21:40 +0000)] 
Ensure that strings returned by wxMBConv_cf are in NFC form.

Normalize all Unicode strings used internally even though the Darwin kernel
gives them to us in decomposed (NFD) form.

Closes #11730.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRemove duplicate wxEVT_COMMAND_TEXT_ENTER generation from wxOSX/Cocoa.
Vadim Zeitlin [Fri, 5 Nov 2010 21:39:49 +0000 (21:39 +0000)] 
Remove duplicate wxEVT_COMMAND_TEXT_ENTER generation from wxOSX/Cocoa.

The code in -[wxNSTextField control:textView:doCommandBySelector:] generated a
second copy of this event as it was also generated from
wxNSTextFieldControl::controlAction() for single line text controls.

Closes #11691.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDon't update scrollbars when the window is being destroyed in wxOSX.
Vadim Zeitlin [Fri, 5 Nov 2010 21:39:29 +0000 (21:39 +0000)] 
Don't update scrollbars when the window is being destroyed in wxOSX.

Updating scrollbars for a window that is being destroyed anyhow is useless and
resulted in crashes in the htlbox sample because it used client-to-screen
coordinates conversion which asserted because the TLW was invalid any more and
this unexpected assert during window destruction led to a crash.

Simply don't do it at all to avoid the problem.

Closes #11776.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix crash in wxColour ctor from NSColor in wxOSX/Cocoa.
Vadim Zeitlin [Fri, 5 Nov 2010 21:39:09 +0000 (21:39 +0000)] 
Fix crash in wxColour ctor from NSColor in wxOSX/Cocoa.

wxColour ctor from NSColor added by Kevin Ollivier in r62525 never worked as
it passed NULL pointer to NSColor:getComponents and so always crashed. This
resulted in a crash in the rich text editor of the text sample, for example.

Fix this by passing a valid array containing colour components instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRemove unnecessary wxOSX_USE_COCOA guards in Cocoa-only file.
Vadim Zeitlin [Fri, 5 Nov 2010 21:38:49 +0000 (21:38 +0000)] 
Remove unnecessary wxOSX_USE_COCOA guards in Cocoa-only file.

The #if wxOSX_USE_COCOA seems unnecessary in a file that is used in
wxOSX/Cocoa only so simply remove it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAssume sizeof(wchar_t) is always 4 under OS X.
Vadim Zeitlin [Fri, 5 Nov 2010 21:38:25 +0000 (21:38 +0000)] 
Assume sizeof(wchar_t) is always 4 under OS X.

wchar_t used to be 2 bytes in Mach-O builds but they're not supported any
longer so remove the code checking for sizeof(wchar_t) and just assume it's
always 4.

Closes #10442.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd another test for the insertion point position after SetValue().
Vadim Zeitlin [Fri, 5 Nov 2010 21:37:54 +0000 (21:37 +0000)] 
Add another test for the insertion point position after SetValue().

Verify that setting the value of a previously not empty control resets
the insertion point to its beginning.

See #10051.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDisable keyboard unit test with wxUIActionSimulator under OS X.
Vadim Zeitlin [Fri, 5 Nov 2010 21:37:27 +0000 (21:37 +0000)] 
Disable keyboard unit test with wxUIActionSimulator under OS X.

The test doesn't work because the test window never get any events. This might
be a bug in the test or in wxUIActionSimulator itself but for now I just have
no idea about how to fix it, so disable the test to let the rest of the test
suite run.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoadd execmon to CE exclude (no console)
Chris Elliott [Fri, 5 Nov 2010 16:05:38 +0000 (16:05 +0000)] 
add execmon to CE exclude (no console)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66022 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agomissing namespace
Chris Elliott [Fri, 5 Nov 2010 15:45:51 +0000 (15:45 +0000)] 
missing namespace

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agomissing namespace
Chris Elliott [Fri, 5 Nov 2010 15:24:27 +0000 (15:24 +0000)] 
missing namespace

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRemove test code accidentally committed as part of r66015.
Vadim Zeitlin [Fri, 5 Nov 2010 12:53:44 +0000 (12:53 +0000)] 
Remove test code accidentally committed as part of r66015.

Don't call wxMenuItem::Set{Background,Text}Colour() in the menu sample, this
was for testing only.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUpdate OpenVMS makefiles
Jouk Jansen [Fri, 5 Nov 2010 06:55:31 +0000 (06:55 +0000)] 
Update OpenVMS makefiles

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66017 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoCorrect a trivial typo in wxLog documentation.
Vadim Zeitlin [Thu, 4 Nov 2010 16:13:27 +0000 (16:13 +0000)] 
Correct a trivial typo in wxLog documentation.

Just remove an extra word.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUse explicit menu item background if it's given under MSW.
Vadim Zeitlin [Thu, 4 Nov 2010 10:57:19 +0000 (10:57 +0000)] 
Use explicit menu item background if it's given under MSW.

An explicit item background colour specified in user code should override the
default theme background.

Closes #12652.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoNo changes, just use RAII-based classes in MSW owner drawn menu code.
Vadim Zeitlin [Thu, 4 Nov 2010 10:57:13 +0000 (10:57 +0000)] 
No changes, just use RAII-based classes in MSW owner drawn menu code.

Add helper HDC{TextCol,BgCol,BgMode}Changer classes which ensure that the
corresponding HDC attribute is reset on scope exit instead of manually calling
the corresponding MSW functions to set and reset it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoPas long to _get_timezone() even for VC8.
Vadim Zeitlin [Thu, 4 Nov 2010 10:49:10 +0000 (10:49 +0000)] 
Pas long to _get_timezone() even for VC8.

Apparently the MSDN documentation for VC8 is wrong and _get_timezone()
function expects a long and not int when using it (as is already the case with
VC9 and VC10).

Closes #12653.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUpdating makefiles for OpenVMS
Jouk Jansen [Thu, 4 Nov 2010 07:38:13 +0000 (07:38 +0000)] 
Updating makefiles for OpenVMS

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRemove unused mouse event handler from dataview sample.
Vadim Zeitlin [Wed, 3 Nov 2010 23:48:30 +0000 (23:48 +0000)] 
Remove unused mouse event handler from dataview sample.

The mouse event handler for the frame was never executed because the frame is
entirely covered by other windows in this sample. Not sure what was meant here
but this handler is useless so just remove it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRemove unnecessary tests for m_log from dataview sample.
Vadim Zeitlin [Wed, 3 Nov 2010 23:48:23 +0000 (23:48 +0000)] 
Remove unnecessary tests for m_log from dataview sample.

The sample contained a lot of unnecessary checks for m_log, remove them to
make the code shorter and simpler to understand.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd wxAuiPaneInfo::IsDockable().
Vadim Zeitlin [Wed, 3 Nov 2010 16:36:34 +0000 (16:36 +0000)] 
Add wxAuiPaneInfo::IsDockable().

This function checks if the pane can be docked at any side. It is useful in
its own right but most importantly is needed to fix compilation broken in
r66005 which used it before it was added.

See #12648.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoSet column field of wxDVC ITEM_{ACTIVATED,CONTEXT_MENU} events.
Vadim Zeitlin [Wed, 3 Nov 2010 16:29:36 +0000 (16:29 +0000)] 
Set column field of wxDVC ITEM_{ACTIVATED,CONTEXT_MENU} events.

Add missing calls to wxDataViewEvent::SetColumn() and SetDataViewColumn().

In the future it would be nice to refactor the code to have a common event
object initialization function that would make it impossible to forget to do
this.

Closes #12649.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDon't dock undockable panes in wxAuiManager::LoadPerspective().
Vadim Zeitlin [Wed, 3 Nov 2010 16:29:30 +0000 (16:29 +0000)] 
Don't dock undockable panes in wxAuiManager::LoadPerspective().

All panes were docked when loading a perspective, including those that were
created to be non-dockable. Don't dock the latter ones now.

Closes #12648.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoOptimize wxDataViewMainWindow::FindNode() in generic wxDataViewCtrl.
Vadim Zeitlin [Wed, 3 Nov 2010 16:29:23 +0000 (16:29 +0000)] 
Optimize wxDataViewMainWindow::FindNode() in generic wxDataViewCtrl.

Avoid unnecessary heap allocations and extra indirections and just use the
items pointers directly.

Also avoid copying the (potentially huge) nodes arrays.

Closes #12647.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDon't copy potentially big arrays in generic wxDataViewCtrl.
Vadim Zeitlin [Wed, 3 Nov 2010 16:29:18 +0000 (16:29 +0000)] 
Don't copy potentially big arrays in generic wxDataViewCtrl.

Use reference to hold the array of nodes instead of copying it.

(Really) closes #12587.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoHandle wxLOCALE_DECIMAL_POINT in wxLOCALE_CAT_MONEY correctly in wxMSW.
Vadim Zeitlin [Wed, 3 Nov 2010 16:29:13 +0000 (16:29 +0000)] 
Handle wxLOCALE_DECIMAL_POINT in wxLOCALE_CAT_MONEY correctly in wxMSW.

Use LOCALE_SMONDECIMALSEP and not LOCALE_SDECIMAL when querying for the
decimal separator in money category, it can be different from the usual
numeric one.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoSupport wxLOCALE_THOUSANDS_SEP in wxMSW wxLocale::GetInfo().
Vadim Zeitlin [Wed, 3 Nov 2010 16:29:06 +0000 (16:29 +0000)] 
Support wxLOCALE_THOUSANDS_SEP in wxMSW wxLocale::GetInfo().

Simply use ::GetLocaleInfo(LOCALE_STHOUSAND) for it.

Closes #12643.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoreplace m_nSelection by m_selection
Jouk Jansen [Wed, 3 Nov 2010 14:44:57 +0000 (14:44 +0000)] 
replace m_nSelection by m_selection

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUpdate OpenVMS compile support
Jouk Jansen [Wed, 3 Nov 2010 08:54:52 +0000 (08:54 +0000)] 
Update OpenVMS compile support

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix compilation error in wxImplicitConversionType<> in gcc strict mode.
Václav Slavík [Tue, 2 Nov 2010 22:55:56 +0000 (22:55 +0000)] 
Fix compilation error in wxImplicitConversionType<> in gcc strict mode.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUse _get_timezone() function instead of _timezone with MSVC8+.
Vadim Zeitlin [Tue, 2 Nov 2010 11:57:30 +0000 (11:57 +0000)] 
Use _get_timezone() function instead of _timezone with MSVC8+.

While some (but not all) versions of VC8 CRT still define _timezone variable,
it is deprecated and shouldn't be used and referencing it can result in
linking problems if it pulls in static CRT.

Just use _get_timezone() function instead for the VC versions that support it
(as was already done in r54417 for VC8 in 2.8 branch).

Closes #4691.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoMake write end of the child process pipe non-blocking under Unix.
Vadim Zeitlin [Tue, 2 Nov 2010 11:57:24 +0000 (11:57 +0000)] 
Make write end of the child process pipe non-blocking under Unix.

We need to make at least one end of the pipe used to communicate with
wxExecute() child process non-blocking to avoid deadlocks, so unblock the
write end of the pipe. It seems to be unnecessary to unblock the reading ends
of std{out,err} pipes as we can already check for the presence of input there.
This is also consistent with wxMSW behaviour.

Closes #12636.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRefactor: extract code to make an fd non-clocking into a function.
Vadim Zeitlin [Tue, 2 Nov 2010 11:57:19 +0000 (11:57 +0000)] 
Refactor: extract code to make an fd non-clocking into a function.

Simply extract part of the code from evtloopunix.cpp into a reusable
wxPipe::MakeNonBlocking() function to be able to reuse it elsewhere.

See #12636.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDon't scroll the grid too much to bring selection in view.
Vadim Zeitlin [Tue, 2 Nov 2010 11:57:14 +0000 (11:57 +0000)] 
Don't scroll the grid too much to bring selection in view.

wxGrid scrolled completely to the right in row selection mode as it was always
trying to make the bottom right selection corner visible. This was due to
adjusting the selection block corner to cover the entire row in this mode (of
course, the same was true for the column selection mode too).

Don't do this any more as it's unnecessary, making the real selection block
corner visible is enough for the block selection mode and nothing else is
needed in row/column modes.

See #12638.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoChanged wxImage::ConvertAlphaToMask() return type to bool.
Vadim Zeitlin [Tue, 2 Nov 2010 11:57:09 +0000 (11:57 +0000)] 
Changed wxImage::ConvertAlphaToMask() return type to bool.

Make this function more useful by returning true from it if alpha channel was
really converted to the mask by it.

Closes #12637.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAvoid crash when releasing the mouse in wxRibbonToolBar.
Vadim Zeitlin [Tue, 2 Nov 2010 11:57:03 +0000 (11:57 +0000)] 
Avoid crash when releasing the mouse in wxRibbonToolBar.

The active tool pointer can be changed/set to NULL by the event handler in
wxRibbonToolBar::OnMouseUp() so test for it before using it after processing
the event.

Closes #12640.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd some asserts to ensure cols and rows are >= 0 to avoid crashes
Robin Dunn [Tue, 2 Nov 2010 03:09:27 +0000 (03:09 +0000)] 
Add some asserts to ensure cols and rows are >= 0 to avoid crashes

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix return types on wxRect::Inflate and Deflate
Robin Dunn [Tue, 2 Nov 2010 03:07:35 +0000 (03:07 +0000)] 
Fix return types on wxRect::Inflate and Deflate

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoCreate work-around for wxGetEnvMap on OpenVMS (correction)
Jouk Jansen [Mon, 1 Nov 2010 11:58:31 +0000 (11:58 +0000)] 
Create work-around for wxGetEnvMap on OpenVMS (correction)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoCreate work-around for wxGetEnvMap on OpenVMS
Jouk Jansen [Mon, 1 Nov 2010 09:48:56 +0000 (09:48 +0000)] 
Create work-around for wxGetEnvMap on OpenVMS

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoMake wxMBConv_iconv MT-safe by not using wxString in it.
Vadim Zeitlin [Sun, 31 Oct 2010 13:41:03 +0000 (13:41 +0000)] 
Make wxMBConv_iconv MT-safe by not using wxString in it.

Use just "char *" for wxMBConv_iconv::m_name to avoid MT-safety problems
related to using a wxString (which is not always MT-safe) from multiple
threads.

See #12630.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAvoid events when implicitly selecting first wxBookCtrl page.
Vadim Zeitlin [Sun, 31 Oct 2010 13:33:34 +0000 (13:33 +0000)] 
Avoid events when implicitly selecting first wxBookCtrl page.

The first page added to a wxBookCtrlBase-derived control is always selected,
even if "bSelect" argument of AddPage() was false. This is necessary because
a non-empty book control must always have a selection but the "selection
changed" event generated when doing it is unexpected.

Fix this by not generating any events when the first page is implicitly
selected.

Closes #12075.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoReposition wxSpinCtrl correctly after reparenting it in wxMSW.
Vadim Zeitlin [Sun, 31 Oct 2010 11:37:31 +0000 (11:37 +0000)] 
Reposition wxSpinCtrl correctly after reparenting it in wxMSW.

The position of wxSpinCtrl after reparenting was wrong because we didn't
remember the old position early enough.

There also was a more minor bug which resulted in the position not being set
correctly if (any of its components) was -1 before reparenting.

Closes #12633.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDestroy correct HWND in wxMSW wxSpinCtrl::Reparent().
Vadim Zeitlin [Sun, 31 Oct 2010 11:37:26 +0000 (11:37 +0000)] 
Destroy correct HWND in wxMSW wxSpinCtrl::Reparent().

NULL HWND was passed to ::DestroyWindow() as wxWindow::UnsubclassWin() NULLed
it after unsubclassing.

See #12633.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoDocument wxMessageQueueError.
Vadim Zeitlin [Sat, 30 Oct 2010 23:51:18 +0000 (23:51 +0000)] 
Document wxMessageQueueError.

Document the enum defining the error codes of wxMessageQueue<> class.

Closes #12634.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agowxUniv/MSW compilation fix in wxWindowBase::GetDlgUnitBase().
Vadim Zeitlin [Sat, 30 Oct 2010 23:51:14 +0000 (23:51 +0000)] 
wxUniv/MSW compilation fix in wxWindowBase::GetDlgUnitBase().

This wxWindowBase method can't access protected m_font member of another
wxWindow object -- but can access it in wxWindowBase object.

Closes #12358.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoNo changes, just use AutoHBITMAP instead of manual DeleteObject() in wxMSW.
Vadim Zeitlin [Sat, 30 Oct 2010 23:51:09 +0000 (23:51 +0000)] 
No changes, just use AutoHBITMAP instead of manual DeleteObject() in wxMSW.

Use RAII AutoHBITMAP class instead of manually calling DeleteObject() on
temporary bitmaps in wxMSW wxImageList and wxBitmap code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix conversion of bitmaps with alpha to icons/cursors in wxMSW.
Vadim Zeitlin [Sat, 30 Oct 2010 23:51:04 +0000 (23:51 +0000)] 
Fix conversion of bitmaps with alpha to icons/cursors in wxMSW.

CreateIconIndirect() applies pre-multiplication to the bitmap itself (as can be
seen by experimenting with this or reading WINE sources for it) and so we must
pass it a bitmap with data in non-pre-multiplied format to avoid doing it
twice.

This is similar to the change to wxImageList in the previous commit, see #9050.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd bitmaps in non-premultiplied format to wxImageList in wxMSW.
Vadim Zeitlin [Sat, 30 Oct 2010 23:50:55 +0000 (23:50 +0000)] 
Add bitmaps in non-premultiplied format to wxImageList in wxMSW.

ImageList_Draw() applies pre-multiplication to the bitmap itself (as can be
seen by experimenting with this or reading WINE sources for it) and so the
image list must store bitmaps with data in non-pre-multiplied format to avoid
doing it twice.

Do it by converting wxBitmaps passed to wxImageList::Add() and Replace() to
wxImage and then to non-pre-multiplied DIBs. This is obviously very
inefficient but at least results in correct appearance of images drawn by
wxImageList so it's a step forward.

Closes #9050.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAllow creating DIBs storing pixels in non-premultiplied format in wxMSW.
Vadim Zeitlin [Sat, 30 Oct 2010 23:50:50 +0000 (23:50 +0000)] 
Allow creating DIBs storing pixels in non-premultiplied format in wxMSW.

wxDIB assumed that MSW always uses bitmaps in pre-multiplied pixel format but
this turns out to be wrong: some Windows functions such as ImageList_Draw()
or CreateIconIndirect() apply pre-multiplication internally and so must be
given data in non-pre-multiplied format on input.

This commit adds a possibility to create wxDIB in such format but doesn't use
it anywhere yet, this will be done in subsequent commits.

See #9050.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoMake it impossible to initialize AutoHBITMAP after construction.
Vadim Zeitlin [Sat, 30 Oct 2010 23:50:45 +0000 (23:50 +0000)] 
Make it impossible to initialize AutoHBITMAP after construction.

Add default ctor and Init() method to wxMSW private AutoHBITMAP class.

This doesn't change anything for now but will be used by an upcoming commit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix fatal bug in wxGetWindowFromHWND() for radio buttons.
Vadim Zeitlin [Sat, 30 Oct 2010 23:50:39 +0000 (23:50 +0000)] 
Fix fatal bug in wxGetWindowFromHWND() for radio buttons.

wxGetWindowFromHWND() could crash if it was called for a HWND of a radio
button which was not created by wxWidgets because it blindly dereferenced the
user data associated with the button expecting it to be a pointer to
wxRadioBox and crashed if it was something different. And this actually
happened when using the standard Windows printing dialog which can contain
radio buttons which obviously used their user data field for their own
purposes.

Fix this by maintaining a global hash map with radio buttons HWNDs as keys and
radio boxes as values. This ensures that we can always safely check whether
the given HWND is a radio button in one of our radio boxes or not.

Also change wxSpinCtrl which already did something similar in a different way
(using an array instead or a more efficient hash map) for consistency.

Closes #12083.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoRestore the old logger in wxLogChain dtor instead of deleting it.
Vadim Zeitlin [Sat, 30 Oct 2010 23:50:28 +0000 (23:50 +0000)] 
Restore the old logger in wxLogChain dtor instead of deleting it.

wxLogChain was leaving the global log target pointing to a deleted object,
resulting in crashes when using wxLogWindow without any explicit
SetActiveTarget() calls.

Restore the original logger as the active target in wxLogChain dtor to ensure
that the active log target remains valid.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix confusion with LOGFONT{A,W} parameters to MSW GetTheme[Sys]Font().
Vadim Zeitlin [Sat, 30 Oct 2010 23:50:22 +0000 (23:50 +0000)] 
Fix confusion with LOGFONT{A,W} parameters to MSW GetTheme[Sys]Font().

Change the signature of GetThemeFont() and GetThemeSysFont() methods of
wxUxThemeEngine to take an artificial wxUxThemeFont::Ptr type instead of
LOGFONT which allows the broken code to compile correctly and even work in
Unicode builds but crashed in ANSI ones under Windows Vista/7 as these
functions expect a LOGFONTW and not LOGFONTA even in non-Unicode build under
these systems.

This generalizes the previous fix/workaround for the same problem in
wxStaticBox so remove it now and use wxUxThemeFont both there and in
wxMenuItem to avoid crashes when using owner-drawn menus in ANSI build.

Closes #12364.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoNo real changes, just cleanup of wxMSW MenuDrawData.
Vadim Zeitlin [Sat, 30 Oct 2010 23:50:08 +0000 (23:50 +0000)] 
No real changes, just cleanup of wxMSW MenuDrawData.

Derive MenuDrawData::Margins from Windows MARGINS struct to avoid ugly (and
potentially dangerous) reinterpret_cast<>s when using it.

Also add some helper functions to Margins to make using it less painful.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUse TAbs in debian/rules, not spaces, as it's a makefile.
Vadim Zeitlin [Sat, 30 Oct 2010 19:01:15 +0000 (19:01 +0000)] 
Use TAbs in debian/rules, not spaces, as it's a makefile.

Fix make syntax error in debian/rules.

Closes #12631.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFix order of arguments in wxOSX/Carbon wxListCtrl::ScrollList().
Vadim Zeitlin [Sat, 30 Oct 2010 19:01:10 +0000 (19:01 +0000)] 
Fix order of arguments in wxOSX/Carbon wxListCtrl::ScrollList().

wxMacDataBrowserTableViewControl::SetScrollPosition() takes "top" and "left"
arguments so swap "dx" and "dy" parameters being passed to it.

It might be better to fix SetScrollPosition() to follow the more natural (at
least from wx point of view) convention and as it's used in only a few places
this wouldn't be difficult to do. But let's keep the changes to this code to
the minimum for now.

Closes #12339.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoFor large dataview controls, don't use all items to calculate best column width.
Václav Slavík [Sat, 30 Oct 2010 15:57:59 +0000 (15:57 +0000)] 
For large dataview controls, don't use all items to calculate best column width.

Instead, use just top and bottom N/2 items for some large enough value
of N. N is determined dynamically so that column best width calculation
doesn't take more than 50ms.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd wxDataViewRendererBase::PrepareForItem() helper.
Václav Slavík [Sat, 30 Oct 2010 15:57:55 +0000 (15:57 +0000)] 
Add wxDataViewRendererBase::PrepareForItem() helper.

For calling SetValue() and SetAttr() consistently, instead of having the
same code duplicated all over the place.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAccount for text attrs in generic wxDataViewCtrl's renderers.
Václav Slavík [Sat, 30 Oct 2010 15:57:49 +0000 (15:57 +0000)] 
Account for text attrs in generic wxDataViewCtrl's renderers.

When determining cell content's size, GetSize() measured the text using
wxDataViewCtrl's font, even though it could be renderer in bold or
italics.

Corrected by setting the attributes - and not only the value - prior to
GetSize() calls, and by using the right font in GetTextExtent() calls.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd optional columns autosizing to wxDataViewCtrl.
Václav Slavík [Sat, 30 Oct 2010 15:57:41 +0000 (15:57 +0000)] 
Add optional columns autosizing to wxDataViewCtrl.

Only implemented in the generic and GTK+ versions at the moment, OS X
support will be added later.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoAdd wxRenderer::GetHeaderButtonMargin().
Václav Slavík [Sat, 30 Oct 2010 15:57:32 +0000 (15:57 +0000)] 
Add wxRenderer::GetHeaderButtonMargin().

Used for best size calculations of column width.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agofix iconize event detection, logical operators don't work for testing bits
Paul Cornett [Thu, 28 Oct 2010 16:41:29 +0000 (16:41 +0000)] 
fix iconize event detection, logical operators don't work for testing bits

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

14 years agoUse floating point arithmetic in wxDC::GradientFillConcentric().
Vadim Zeitlin [Thu, 28 Oct 2010 14:23:18 +0000 (14:23 +0000)] 
Use floating point arithmetic in wxDC::GradientFillConcentric().

Use doubles to avoid accumulated rounding errors from using integers in the
generic implementation of wxDC::GradientFillConcentric(). This results in
smoother gradient.

Also avoid using the expensive pow() function inside the inner loop when we
just need to calculate a square.

Closes #12337.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775