]> git.saurik.com Git - wxWidgets.git/log
wxWidgets.git
14 years agoFix warnings about signed/unsigned comparisons inside wxMax() and friends.
Vadim Zeitlin [Wed, 27 Oct 2010 20:23:55 +0000 (20:23 +0000)] 
Fix warnings about signed/unsigned comparisons inside wxMax() and friends.

wxMax, wxMin and wxClip work correctly when called with a mix of signed and
unsigned arguments but give warnings about comparing them when compiled with
g++.

Cast both arguments to the result type, which is defined consistently with
standard C rules for implicit promotion, before comparing them to avoid this.

Also add more tests to check that using these functions in this case doesn't
provoke warnings.

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

14 years agoUse window-state-event to send ICONIZE events under GTK+, probably fixes #10973:...
Robert Roebling [Wed, 27 Oct 2010 19:42:38 +0000 (19:42 +0000)] 
Use window-state-event to send ICONIZE events under GTK+, probably fixes #10973: Iconize event triggered when switching workspaces with Ctrl+Alt+[Arrow Key]

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

14 years agoRefactor: use wxBookCtrlBase::m_selection in all derived classes.
Vadim Zeitlin [Wed, 27 Oct 2010 16:54:36 +0000 (16:54 +0000)] 
Refactor: use wxBookCtrlBase::m_selection in all derived classes.

All book control classes with the exception of wxGTK wxNotebook stored the
currently selected page in m_selection or m_nSelection (or, in wxUniv
wxNotebook case, m_sel) variable. Remove all of them and add m_selection
directly to the base class itself so that it can be reused everywhere.

Closes #12622.

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

14 years agoNo real changes, just replace -1 with wxNOT_FOUND in wxBookCtrl code.
Vadim Zeitlin [Wed, 27 Oct 2010 16:54:24 +0000 (16:54 +0000)] 
No real changes, just replace -1 with wxNOT_FOUND in wxBookCtrl code.

Make the code consistently use wxNOT_FOUND instead of -1 everywhere.

See #12622.

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

14 years agoDon't dispatch messages while waiting in worker thread in wxMSW.
Vadim Zeitlin [Tue, 26 Oct 2010 15:11:06 +0000 (15:11 +0000)] 
Don't dispatch messages while waiting in worker thread in wxMSW.

We only want to continue dispatching messages while waiting for another thread
to terminate if we are waiting in the main thread.

Closes #12618.

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

14 years agoCompilation fix for wxUSE_UNICODE_WCHAR && !wxUSE_STL_BASED_WXSTRING.
Vadim Zeitlin [Tue, 26 Oct 2010 15:11:00 +0000 (15:11 +0000)] 
Compilation fix for wxUSE_UNICODE_WCHAR && !wxUSE_STL_BASED_WXSTRING.

Construct wxScopedWCharBuffer using CreateNonOwned() in
wxString::ToStdWstring() in this case, creating it directly from wc_str()
doesn't work (intentionally, as this doesn't tell if the buffer owns the
string or not).

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

14 years agoBetter document wxAutomationObject::GetDispatchPtr() return value.
Vadim Zeitlin [Tue, 26 Oct 2010 15:10:54 +0000 (15:10 +0000)] 
Better document wxAutomationObject::GetDispatchPtr() return value.

This function returns IDispatch pointer as a void one, mention that the user
code needs to upcast it itself.

Closes #12617.

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

14 years agoRebake to add wx/meta/implicitconversion.h to the makefiles.
Vadim Zeitlin [Tue, 26 Oct 2010 15:10:48 +0000 (15:10 +0000)] 
Rebake to add wx/meta/implicitconversion.h to the makefiles.

Rebake after the addition of a new public header in r65920.

Closes #12616.

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

14 years agoMention that resource forks are deprecated under Mac in wxCursor docs.
Vadim Zeitlin [Mon, 25 Oct 2010 21:52:19 +0000 (21:52 +0000)] 
Mention that resource forks are deprecated under Mac in wxCursor docs.

See #12614.

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

14 years agoUse the correct accelerator for the "Preferences" Apple menu item.
Vadim Zeitlin [Mon, 25 Oct 2010 20:46:18 +0000 (20:46 +0000)] 
Use the correct accelerator for the "Preferences" Apple menu item.

Use the standard Command-, accelerator for the standard "Preferences" item in
the Apple menu.

Closes #12121.

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

14 years agoUse the application name in the "About" item of the Apple menu.
Vadim Zeitlin [Mon, 25 Oct 2010 20:46:11 +0000 (20:46 +0000)] 
Use the application name in the "About" item of the Apple menu.

To conform to Apple UI guidelines the application name should be included in
the "About" menu item label in the Apple menu.

See #12121.

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

14 years agoAdd wxImplicitConversionType tests.
Václav Slavík [Mon, 25 Oct 2010 09:43:04 +0000 (09:43 +0000)] 
Add wxImplicitConversionType tests.

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

14 years agoMake wxMin, wxMax and wxClip template functions.
Václav Slavík [Mon, 25 Oct 2010 09:43:00 +0000 (09:43 +0000)] 
Make wxMin, wxMax and wxClip template functions.

Previously used macro's arguments were evaluated twice, but there were
many occurences of their use in our code that didn't account for this
and used expensive-to-evaluate arguments as if they were functions.

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

14 years agoCompilation fix: don't use "environ" under OS X.
Vadim Zeitlin [Mon, 25 Oct 2010 09:22:19 +0000 (09:22 +0000)] 
Compilation fix: don't use "environ" under OS X.

The global environ variable is not directly accessible under OS X, use
_NSGetEnviron() instead.

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

14 years agoMake wxUString compilable with VC6.
Vadim Zeitlin [Sun, 24 Oct 2010 23:06:11 +0000 (23:06 +0000)] 
Make wxUString compilable with VC6.

Provide replacements for std::basic_string functionality missing from this
compiler standard library.

Closes #12357.

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

14 years agoFix typo in wxFILTER_NUMERIC documentation.
Vadim Zeitlin [Sun, 24 Oct 2010 23:03:43 +0000 (23:03 +0000)] 
Fix typo in wxFILTER_NUMERIC documentation.

Replace wxFILTER_SIMPLE_NUMBER with wxFILTER_DIGITS.

Closes #12341.

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

14 years agoAdd wxDocManager::FindTemplate() method.
Vadim Zeitlin [Sun, 24 Oct 2010 23:03:38 +0000 (23:03 +0000)] 
Add wxDocManager::FindTemplate() method.

This allows to find the template corresponding to the document of the given
class.

Closes #12170.

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

14 years agoDon't handle RPC_E_CHANGED_MODE return of OleInitialize() as an error.
Vadim Zeitlin [Sun, 24 Oct 2010 23:03:31 +0000 (23:03 +0000)] 
Don't handle RPC_E_CHANGED_MODE return of OleInitialize() as an error.

This error means that OLE had already been initialized so from our point of
view it counts as a success.

Closes #12516.

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

14 years agoDo nothing in wxMemoryDC::SelectObject() if the bitmap is already selected.
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:46 +0000 (22:41 +0000)] 
Do nothing in wxMemoryDC::SelectObject() if the bitmap is already selected.

It doesn't make sense to make a copy of the bitmap in order to select it into
wxMemoryDC if it's already selected into it.

See #11640.

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

14 years agoAlways create new OLE objects with reference count of 1, not 0.
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:41 +0000 (22:41 +0000)] 
Always create new OLE objects with reference count of 1, not 0.

There are no real changes but ensure that the new objects of classes using
DECLARE_OLE_UNKNOWN() macro are created with valid reference count of 1
instead of being created in phantom state with reference count of 0.

Remove the now unnecessary AddRef() and add the now required DecRef() calls.

See #11566.

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

14 years agoFix problems with reference counting in wxActiveXContainer.
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:36 +0000 (22:41 +0000)] 
Fix problems with reference counting in wxActiveXContainer.

Ensure that the IFrameSite object is created with valid (i.e. non-zero)
reference count by calling AddRef() on it immediately after creation and
remove the weird QueryInterface() call which was used to work around this bug.

Closes #11566.

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

14 years agoDon't consider lack of connection points an error in wxActiveXContainer.
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:29 +0000 (22:41 +0000)] 
Don't consider lack of connection points an error in wxActiveXContainer.

Handle CONNECT_E_NOCONNECTION return value from IConnectionPointContainer::
FindConnectionPoint() as an expected error and don't complain about it.

See #11566.

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

14 years agoDon't activate the window when updating its styles in wxMSW.
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:24 +0000 (22:41 +0000)] 
Don't activate the window when updating its styles in wxMSW.

Add SWP_NOACTIVATE to the flags used by wxWindow::MSWUpdateStyle(). This
allows to change the style of a window without necessarily activating it.

Closes #11560.

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

14 years agoFix wrong wxLogDebug() call in fswatcher sample.
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:18 +0000 (22:41 +0000)] 
Fix wrong wxLogDebug() call in fswatcher sample.

Replace wxLogDebug() with wxLogTrace() as was probably intended. This fixes
the assert which happened when running the sample because of the wrong number
of parameters passed to wxLogDebug().

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

14 years agoAllow specifying the directory to watch on command line of fswatcher sample.
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:13 +0000 (22:41 +0000)] 
Allow specifying the directory to watch on command line of fswatcher sample.

This makes it more convenient to run the sample repeatedly as the directory to
watch can be specified only once instead of having to choose it interactively
after the sample startup every time.

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

14 years agoAvoid duplicate wxEVT_COMMAND_TREE_SEL_CHANG{ING,ED} events in wxMSW.
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:08 +0000 (22:41 +0000)] 
Avoid duplicate wxEVT_COMMAND_TREE_SEL_CHANG{ING,ED} events in wxMSW.

When changing the selected item programmatically 2 CHANGING and CHANGED events
were sent because the assumption that comctl32.dll didn't send these events
itself was not correct any more, it does send them at least since XP. However
to avoid the tests for its exact version it's simpler to just ignore the
events it generates and continue sending our own ones.

Closes #11274.

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

14 years agoDon't grab focus when calling wxTreeCtrl::SelectItem().
Vadim Zeitlin [Sun, 24 Oct 2010 22:41:03 +0000 (22:41 +0000)] 
Don't grab focus when calling wxTreeCtrl::SelectItem().

The workaround for the unexpected events order introduced in r49588 should
only apply to the situation when the user selects an item in the tree, not
when it's done programmatically as this results in unexpected focus changes
(see #11274).

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

14 years agoAllow to use space to toggle spinning of the cube in OpenGL sample.
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:58 +0000 (22:40 +0000)] 
Allow to use space to toggle spinning of the cube in OpenGL sample.

Small enhancement to the cube OpenGL sample.

Closes #11545.

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

14 years agoDon't send wxEVT_COMMAND_TREE_ITEM_MENU event without valid item in wxMSW.
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:52 +0000 (22:40 +0000)] 
Don't send wxEVT_COMMAND_TREE_ITEM_MENU event without valid item in wxMSW.

The generic wxTreeCtrl version only sends this event when the mouse is right
clicked on a valid item so do the same in wxMSW version too for consistency.

This is also consistent with wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK event and
avoids strange problems with unexpected wxEVT_COMMAND_TREE_ITEM_MENU events
generated on right double click.

Finally, replace the checks for item validity in the event handler in the
sample with asserts which should loudly complain if it happens to be invalid.

Closes #11226.

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

14 years agoNo real changes, just cleanup week days handling in wxGenericCalendarCtrl.
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:47 +0000 (22:40 +0000)] 
No real changes, just cleanup week days handling in wxGenericCalendarCtrl.

Use helper GetWeek{Start,End}() functions instead of repeating tests for
wxCAL_MONDAY_FIRST over and over again.

Also replace some occurrences of GetWindowStyle() with shorter and more clear
HasFlag().

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

14 years agoKeep displayed month and year in sync in wxGenericCalendarCtrl.
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:41 +0000 (22:40 +0000)] 
Keep displayed month and year in sync in wxGenericCalendarCtrl.

When the date was constrained to a range in wxGenericCalendarCtrl, the display
of the month in the month combobox could get out of sync with its real value.

Ensure that the correct month is always displayed and also simplify the code
by removing the apparently unnecessarily complex logic in ChangeYear() and
ChangeMonth() functions.

Closes #11060.

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

14 years agoNo real changes, just inline wxDIB::Create().
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:34 +0000 (22:40 +0000)] 
No real changes, just inline wxDIB::Create().

After removing wxDIB::m_hasAlpha in the previous commit, this method became
completely trivial so put it inline in the header.

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

14 years agoRemove wxDIB::m_hasAlpha from wxMSW.
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:27 +0000 (22:40 +0000)] 
Remove wxDIB::m_hasAlpha from wxMSW.

This field can't be set reliably as we don't know if LoadImage() Windows
function loaded an 0RGB or an RGB bitmap so remove it completely to avoid the
risk of using it wrongly.

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

14 years agoFix conversion of 32 bit ARGB bitmaps to wxImage in wxMSW.
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:22 +0000 (22:40 +0000)] 
Fix conversion of 32 bit ARGB bitmaps to wxImage in wxMSW.

wxDIB::m_hasAlpha can't be trusted when the DIB was loaded from a file so
don't rely on it in wxDIB::ConvertToImage(). Instead, suppose that 32 bpp
bitmaps do have alpha channel and only get rid of it at the end of conversion
if it turns out that all alpha values were 0.

Closes #10133.

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

14 years agoDon't hard code "open" verb in wxMSW wxLaunchDefaultApplication().
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:17 +0000 (22:40 +0000)] 
Don't hard code "open" verb in wxMSW wxLaunchDefaultApplication().

Don't choose the verb explicitly and let ShellExecuteEx() choose the default
one. In the vast majority of cases this will do the same thing but if some
file type doesn't have an "open" verb the new version will still open it
correctly using its default verb while the old version failed.

See #10707.

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

14 years agoAdd support for specifying child process cwd and env to wxExecute().
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:11 +0000 (22:40 +0000)] 
Add support for specifying child process cwd and env to wxExecute().

Add an optional wxExecuteEnv parameter to wxExecute() which allows to specify
the initial working directory and custom environment for the child process.

Closes #12163.

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

14 years agoTreat wxToolbook symmetrically with others in the notebook sample.
Vadim Zeitlin [Sun, 24 Oct 2010 22:40:01 +0000 (22:40 +0000)] 
Treat wxToolbook symmetrically with others in the notebook sample.

Use wxToolbook as the default notebook type if the other ones are not
available.

Closes #12610.

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

14 years agoDon't reserve space for hidden controller in wxBookCtrl.
Vadim Zeitlin [Sun, 24 Oct 2010 22:39:55 +0000 (22:39 +0000)] 
Don't reserve space for hidden controller in wxBookCtrl.

Even when the controller was hidden, space was still allocated for it by
wxBookCtrl. Fix this by only reserving extra space when the controller is
shown.

Closes #12609.

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

14 years agoSet wxKeyEvent::m_rawFlags to hardware key code in wxGTK.
Vadim Zeitlin [Sun, 24 Oct 2010 14:34:45 +0000 (14:34 +0000)] 
Set wxKeyEvent::m_rawFlags to hardware key code in wxGTK.

The raw flags were previously unused in wxGTK but hardware key code is an
important information which may be useful to the application, so pass it in
the flags (this is rather symmetric with passing lParam in it under MSW as
lParam contains the scan code, among other things).

Also document the meaning of raw key code and flags in all the major ports.

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

14 years agoOutput header to the same directory as the .cpp file in wxrc.
Vadim Zeitlin [Sun, 24 Oct 2010 14:34:22 +0000 (14:34 +0000)] 
Output header to the same directory as the .cpp file in wxrc.

If "-o" option is given, generate the output header file in the same directory
as the .cpp file and not in the current directory.

Closes #4054.

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

14 years agoUse wxChoicebook instead of wxNotebook in the xrc sample.
Vadim Zeitlin [Sun, 24 Oct 2010 14:34:12 +0000 (14:34 +0000)] 
Use wxChoicebook instead of wxNotebook in the xrc sample.

wxNotebook was unusable with so many pages under all platforms and completely
unusable under Mac. Replace it with wxChoicebook which allows to select any
page quickly instead of having to do it sequentially (or not being able to do
it at all under Mac).

Another possibility could be to use wxTreebook and organize the pages in
categories, similarly to how it is done in the widgets sample.

Closes #3699.

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

14 years agoRearrange xrc sample controls in alphabetical order.
Vadim Zeitlin [Sun, 24 Oct 2010 14:34:05 +0000 (14:34 +0000)] 
Rearrange xrc sample controls in alphabetical order.

Several new pages were added in random positions, rearrange them to be in
alphabetical order.

Also remove wxToolBar from "The Rest" page as it is shown in one of the other
pages now.

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

14 years agoMake it easier to define custom wxSizerXmlHandler subclasses.
Vadim Zeitlin [Sun, 24 Oct 2010 14:33:58 +0000 (14:33 +0000)] 
Make it easier to define custom wxSizerXmlHandler subclasses.

No real changes but refactor wxSizerXmlHandler to make it easier to derive
from it by adding virtual IsSizerNode() and DoCreateSizer() methods. To add
support for a custom sizer class you only need to override them in
wxSizerXmlHandler subclass now.

Also document wxSizerXmlHandler which was not documented at all previously.

Closes #11845.

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

14 years agoMake wxXmlResourceHandler::IsOfClass() static.
Vadim Zeitlin [Sun, 24 Oct 2010 14:23:56 +0000 (14:23 +0000)] 
Make wxXmlResourceHandler::IsOfClass() static.

This simple helper function doesn't use any wxXmlResourceHandler data as it's
just a trivial wrapper for wxXmlNode::GetAttribute().

Making it static allows, in particular, to call it from const member functions
of wxXmlResourceHandler-derived classes (making it "const" itself would
achieve this too, of course, but it just doesn't need to be non-static).

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

14 years agoAdd wxIcon::GetSize() to wxIcon in wxOSX.
Vadim Zeitlin [Sat, 23 Oct 2010 21:47:22 +0000 (21:47 +0000)] 
Add wxIcon::GetSize() to wxIcon in wxOSX.

This fixes the compilation errors under OS X after r65884 due to the lack of
this method there.

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

14 years agoDon't use non-existent icon in XRC sample.
Vadim Zeitlin [Sat, 23 Oct 2010 18:56:37 +0000 (18:56 +0000)] 
Don't use non-existent icon in XRC sample.

appicon.xpm was removed so use another icon in the controls demo in the sample
instead, it doesn't matter which one we use anyhow.

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

14 years agoAdd XRC handler for wxToolbook.
Vadim Zeitlin [Sat, 23 Oct 2010 18:56:28 +0000 (18:56 +0000)] 
Add XRC handler for wxToolbook.

Closes #11615.

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

14 years agoDon't assume any particular default size for XRC image lists.
Vadim Zeitlin [Sat, 23 Oct 2010 18:56:13 +0000 (18:56 +0000)] 
Don't assume any particular default size for XRC image lists.

Let the image list deduce its size from the first bitmap in it. This is better
than the old behaviour of using the standard icon size as it allows to omit
the size from the image lists provided they contain the bitmaps of the same
size.

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

14 years agoCorrect wxDialog::SetAffirmativeId() documentation.
Vadim Zeitlin [Sat, 23 Oct 2010 18:56:06 +0000 (18:56 +0000)] 
Correct wxDialog::SetAffirmativeId() documentation.

The return value of ShowModal() is the affirmative id and not wxID_OK, of
course.

See ##11413 (specifically comment 5).

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

14 years agoAdded wxThread::OnKill() and OnDelete() callbacks.
Vadim Zeitlin [Sat, 23 Oct 2010 14:10:12 +0000 (14:10 +0000)] 
Added wxThread::OnKill() and OnDelete() callbacks.

Call OnXXX() from wxThread::Kill() and Delete() respectively to allow the
thread being terminated perform some cleanup.

Closes #9046.

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

14 years agoConstruct paths using wxFileName in wxHTML help.
Vadim Zeitlin [Sat, 23 Oct 2010 14:10:05 +0000 (14:10 +0000)] 
Construct paths using wxFileName in wxHTML help.

Use wxFileName instead of more complicated and error-prone manipulations with
strings.

Closes #12602.

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

14 years agoUse rpmbuild to build the RPMs in "make rpm" target.
Vadim Zeitlin [Sat, 23 Oct 2010 14:09:57 +0000 (14:09 +0000)] 
Use rpmbuild to build the RPMs in "make rpm" target.

In recent versions of rpm rpmbuild must be used for building the RPMs instead
of rpm itself.

See #12567.

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

14 years agoAdd more headers to "make dist" and remove .mo files.
Vadim Zeitlin [Sat, 23 Oct 2010 14:09:49 +0000 (14:09 +0000)] 
Add more headers to "make dist" and remove .mo files.

Add wx/persist headers to the list of files used by "make dist" and remove the
message catalogs which shouldn't be part of the source distribution.

See #12567.

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

14 years agoInclude wxscintilla library in wxGTK RPM.
Vadim Zeitlin [Sat, 23 Oct 2010 14:09:43 +0000 (14:09 +0000)] 
Include wxscintilla library in wxGTK RPM.

Include libwxscintilla.a for static linking.

See #12567.

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

14 years agoGenerate the full list of wxBase headers paths in wxGTK.spec.
Vadim Zeitlin [Sat, 23 Oct 2010 14:09:39 +0000 (14:09 +0000)] 
Generate the full list of wxBase headers paths in wxGTK.spec.

Instead of hardcoding the list of wxBase headers path, build it automatically
from the list of their base names which is generated by bakefile and so is
always up to date.

See #12567.

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

14 years agoForce the use of GNOME printing support and wxMediaCtrl in wxGTK RPMs.
Vadim Zeitlin [Sat, 23 Oct 2010 14:09:34 +0000 (14:09 +0000)] 
Force the use of GNOME printing support and wxMediaCtrl in wxGTK RPMs.

Explicitly enable the use of GNOME printing and media control to ensure that
RPMs are always created with these features enabled.

See #12567.

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

14 years agoRemove "release" suffix from wx-config links used in RPMs.
Vadim Zeitlin [Sat, 23 Oct 2010 14:09:27 +0000 (14:09 +0000)] 
Remove "release" suffix from wx-config links used in RPMs.

We don't distinguish debug and release builds under Unix any more in 2.9 and
don't use "release" and "debug" suffixes in full wx-config names. Remove these
suffixes from the wx-config links created by RPM post-installation step.

See #12567.

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

14 years agoDocument that wxProcess::GetOutputStream() can't be used after CloseOutput().
Vadim Zeitlin [Sat, 23 Oct 2010 14:09:21 +0000 (14:09 +0000)] 
Document that wxProcess::GetOutputStream() can't be used after CloseOutput().

As closing the output stream makes it unusable, it is destroyed as well and so
GetOutputStream() returns NULL after calling CloseOutput().

Closes #12605.

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

14 years agowxDataViewCtrl::Expand() only works on items whose parents are already
Robert Roebling [Sat, 23 Oct 2010 14:03:18 +0000 (14:03 +0000)] 
wxDataViewCtrl::Expand() only works on items whose parents are already
 expanded. The attached patch fixes this by expanding all ancestors of the
 item before expanding the item itself. Closes #12585: wxDataviewCtrl::Expand() needs to expand all ancestors

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

14 years agoSet focus to generic wxDataViewCtrl when clicking with any mouse button, not just...
Robert Roebling [Sat, 23 Oct 2010 14:00:15 +0000 (14:00 +0000)] 
Set focus to generic wxDataViewCtrl when clicking with any mouse button, not just left, closes #12586: wxDataviewCtrl only gets focused on left mouse

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

14 years agoImplement wxDataViewCtrl::HitTest() under GTK+, second part of #12582: enhancing...
Robert Roebling [Sat, 23 Oct 2010 13:53:31 +0000 (13:53 +0000)] 
Implement wxDataViewCtrl::HitTest() under GTK+, second part of #12582: enhancing wxDataViewCtrl, closes #12582

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

14 years agoAlso set mouse position in ITEM_BEGIN_DRAG event in wxDataViewCtrl under GTK+, part...
Robert Roebling [Sat, 23 Oct 2010 13:48:15 +0000 (13:48 +0000)] 
Also set mouse position in ITEM_BEGIN_DRAG event in wxDataViewCtrl under GTK+, part of #12582: enhancing wxDataViewCtrl

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

14 years agoChange the return code of the test program so that aborting a test with an
Michael Wetherell [Fri, 22 Oct 2010 22:15:07 +0000 (22:15 +0000)] 
Change the return code of the test program so that aborting a test with an
exception doesn't count as a failure, to provide a way to skip tests that
can't be performed.

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

14 years agoAdd debugging info to the trunk Linux builds.
Michael Wetherell [Fri, 22 Oct 2010 22:12:00 +0000 (22:12 +0000)] 
Add debugging info to the trunk Linux builds.

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

14 years agoEnable ListBoxTestCase::HitTest() for wxGTK.
Vadim Zeitlin [Fri, 22 Oct 2010 16:33:43 +0000 (16:33 +0000)] 
Enable ListBoxTestCase::HitTest() for wxGTK.

wxListBox::HitTest() does work in wxGTK but we need to realize the control
before using it.

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

14 years agoRestore the note about auto-repeat in key events documentation.
Vadim Zeitlin [Fri, 22 Oct 2010 16:33:38 +0000 (16:33 +0000)] 
Restore the note about auto-repeat in key events documentation.

Closes #12598.

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

14 years agoUse GTK_SELECTION_BROWSE instead of SINGLE for wxListBox in wxGTK.
Vadim Zeitlin [Fri, 22 Oct 2010 16:33:29 +0000 (16:33 +0000)] 
Use GTK_SELECTION_BROWSE instead of SINGLE for wxListBox in wxGTK.

A single-selection listbox must always have a selected item, at least after
initial selection is done, i.e. its selected item can't be deselected. This
behaviour corresponds to GTK_SELECTION_BROWSE style in GTK+.

Closes #2549.

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

14 years agoFixes for calling Enable() on children of a disabled TLW in wxMSW.
Vadim Zeitlin [Fri, 22 Oct 2010 14:17:48 +0000 (14:17 +0000)] 
Fixes for calling Enable() on children of a disabled TLW in wxMSW.

The change of the child window state wasn't reflected immediately if it was
done while the TLW itself was disabled but only happened when it was
reenabled and in some cases the child could not be enabled even then.

Fix this by updating the child state immediately, even when its TLW parent is
disabled and only skip the update of the children state when TLW is being
disabled, not when it's enabled back.

Closes #11622.

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

14 years agoUse single BeforeLast() call in wxConfigPathChanger ctor.
Vadim Zeitlin [Fri, 22 Oct 2010 14:17:42 +0000 (14:17 +0000)] 
Use single BeforeLast() call in wxConfigPathChanger ctor.

Use a single BeforeLast() call with the "rest" argument and avoid calling
AfterLast() laster in wxConfigPathChanger ctor.

This is a small optimization which may count because wxConfigPathChanger is
used in a lot of wxFileConfig functions but, even more importantly, this works
around a bug in g++ 4 optimized build when the name was not filled by
AfterLast() call correctly as apparently the optimizer decided it was not
used. The real cause of this compiler bug was difficult to find as it couldn't
be reproduced in a simple test case but this change avoids it and fixes
wxFileConfig unit test in optimized build.

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

14 years agoAdded "rest" argument to wxString::Before{First,Last}().
Vadim Zeitlin [Fri, 22 Oct 2010 14:17:37 +0000 (14:17 +0000)] 
Added "rest" argument to wxString::Before{First,Last}().

This allows to search the string just once, in BeforeXXX(), when both the
parts of the string before and after some character are needed instead of
having to do it twice in both BeforeXXX() and AfterXXX().

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

14 years agoNo real changes, just use const_cast<> instead of C casts.
Vadim Zeitlin [Fri, 22 Oct 2010 14:17:30 +0000 (14:17 +0000)] 
No real changes, just use const_cast<> instead of C casts.

Replace many comments indicating that the C cast used was really a
const_cast<> with the proper cast itself. There is no reason to not use it any
longer, all the supported compilers understand it.

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

14 years agoDon't add quotes to string representation in gdb.
Vadim Zeitlin [Fri, 22 Oct 2010 14:17:22 +0000 (14:17 +0000)] 
Don't add quotes to string representation in gdb.

gdb adds quotes itself around string values so don't duplicate them.

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

14 years agoAdd missing comparison operator declarations in wxString::iterator.
Vadim Zeitlin [Thu, 21 Oct 2010 19:51:40 +0000 (19:51 +0000)] 
Add missing comparison operator declarations in wxString::iterator.

Fix compilation in !wxUSE_UNICODE_UTF8 case after r65857.

Modify the second declaration of wxString::iterator class which was not
updated by the previous commit in the same way, i.e. add declaration of
comparison operators taking const_iterator to iterator class.

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

14 years agoDocument the meaning of wxToolBar tool id more clearly.
Vadim Zeitlin [Thu, 21 Oct 2010 19:44:23 +0000 (19:44 +0000)] 
Document the meaning of wxToolBar tool id more clearly.

Make it clear that the id is the same one as was passed to AddTool().

Closes #12597.

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

14 years agoImplement comparisons between wxString::iterator and const_iterator.
Vadim Zeitlin [Thu, 21 Oct 2010 19:22:33 +0000 (19:22 +0000)] 
Implement comparisons between wxString::iterator and const_iterator.

Only comparisons between const_iterator and iterator worked before (because of
implicit conversion from the latter to the former), implement the ones in the
other direction explicitly now.

Closes #12594.

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

14 years agoAdd XRC handler for wxCommandLinkButton.
Vadim Zeitlin [Wed, 20 Oct 2010 23:11:20 +0000 (23:11 +0000)] 
Add XRC handler for wxCommandLinkButton.

Added a handler for wxCommandLinkButton class and a demo of it in the xrc sample.

Closes #12593.

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

14 years agoMerge wxBitmapButton and wxButton panels in the xrc sample.
Vadim Zeitlin [Wed, 20 Oct 2010 23:11:09 +0000 (23:11 +0000)] 
Merge wxBitmapButton and wxButton panels in the xrc sample.

There are already way too many pages in the "Controls Example" in the sample,
combine wxBitmapButton and wxButton ones to save some space and make it more
usable.

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

14 years agoCorrect the fix that broke wxRegion::ConvertToBitmap().
Vadim Zeitlin [Wed, 20 Oct 2010 23:11:04 +0000 (23:11 +0000)] 
Correct the fix that broke wxRegion::ConvertToBitmap().

The changes in r64874 were incorrect and made the size of the bitmap even
more wrong than before. Fix it correctly now by just adding 1 extra pixel to
the size of the bitmap used in the original (pre-r64874) version.

Closes #12213.

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

14 years agoImprove support for ribbon panel sizers: panels with sizers should now automatically...
Peter Cawley [Wed, 20 Oct 2010 17:49:42 +0000 (17:49 +0000)] 
Improve support for ribbon panel sizers: panels with sizers should now automatically minimise at small sizes, and behave properly when popping up from a minimised state.
Patch by johnr in trac issue #12580.

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

14 years agoCheck for window manager before running GUI tests on unix.
Michael Wetherell [Wed, 20 Oct 2010 13:08:32 +0000 (13:08 +0000)] 
Check for window manager before running GUI tests on unix.

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

14 years agoChange wxSP_XXX flags values to avoid clashes with wxTE_XXX.
Vadim Zeitlin [Mon, 18 Oct 2010 23:43:25 +0000 (23:43 +0000)] 
Change wxSP_XXX flags values to avoid clashes with wxTE_XXX.

wxSP_ARROW_KEYS conflicted with wxTE_AUTO_URL (which was probably not
important in practice as URLs don't appear in spin controls anyhow) and wxSPWR
conflicted with wxTE_NOHIDESEL (which could conceivably be a problem).

Change their values to reuse the bits of wxTE_CHARWRAP and wxTE_RICH2 neither
of which definitely makes sense for a spin control.

Closes #11461.

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

14 years agoUse unsigned char for XBM bitmaps data.
Vadim Zeitlin [Mon, 18 Oct 2010 23:43:20 +0000 (23:43 +0000)] 
Use unsigned char for XBM bitmaps data.

This fixes compilation with g++ in C++0x mode in which conversions of
constants not fitting into signed char range to char are not permitted.

Closes #12575.

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

14 years agoCorrectly handle S_FALSE return value of IActiveMovie::get_Duration().
Vadim Zeitlin [Mon, 18 Oct 2010 23:43:14 +0000 (23:43 +0000)] 
Correctly handle S_FALSE return value of IActiveMovie::get_Duration().

IActiveMovie::get_Duration() can return S_FALSE in which case outDuration
isn't initialized and so wxAMMediaBackend::GetDuration() would return a
completely wrong value.

Fix this by returning 0 from it instead which seems like the only reasonable
thing to do (in the absence of documentation of this interface it's not really
clear what does S_FALSE return value mean nor why didn't it return it before).

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

14 years agoCorrect recently broken checked state handling in wxRearrangeList.
Vadim Zeitlin [Mon, 18 Oct 2010 23:43:09 +0000 (23:43 +0000)] 
Correct recently broken checked state handling in wxRearrangeList.

The checked state of them wasn't preserved correctly any more since r64875,
correct this by changing the state only after storing the old one.

Closes #12578.

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

14 years agoAdd missing "static" to wxSystemOptions::SetOption() documentation.
Vadim Zeitlin [Mon, 18 Oct 2010 23:43:02 +0000 (23:43 +0000)] 
Add missing "static" to wxSystemOptions::SetOption() documentation.

Closes #12576.

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

14 years agoCall wxScrollHelper::AdjustScrollbars() to fix scroll bar setup that broke after...
Jaakko Salli [Mon, 18 Oct 2010 13:55:40 +0000 (13:55 +0000)] 
Call wxScrollHelper::AdjustScrollbars() to fix scroll bar setup that broke after wxPropertyGrid was changed to inherit from wxScrollHelper instead of wxScrolledWindow

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

14 years agoFix wxSTC compilation without wxUSE_DRAG_AND_DROP after r65827.
Vadim Zeitlin [Sun, 17 Oct 2010 18:17:30 +0000 (18:17 +0000)] 
Fix wxSTC compilation without wxUSE_DRAG_AND_DROP after r65827.

Correct the changes of r65827 to also compile with wxUSE_DRAG_AND_DROP==0
(especially important for the ports without dnd support such as wxX11 and
wxDFB).

Also do the changes in the correct files, i.e. src/stc/stc.{h,cpp}.in and not
in the generated files themselves to prevent them from being overwritten the
next time gen_iface.py is ran.

Finally keep backwards compatibility as SetDragAllowMove(bool) is a public
method so preserve its old semantics and add a new SetDragFlags() instead of
silently breaking the existing code using SetDragAllowMove().

See #11709.

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

14 years agoDisable the Mingw x64 builds as there's no compiler.
Michael Wetherell [Sun, 17 Oct 2010 14:06:30 +0000 (14:06 +0000)] 
Disable the Mingw x64 builds as there's no compiler.

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

14 years agoNo real changes, just fix a warning in the test suite.
Vadim Zeitlin [Sun, 17 Oct 2010 13:59:55 +0000 (13:59 +0000)] 
No real changes, just fix a warning in the test suite.

Don't assign wxNO_LEN to int variable, this results in gcc warnings about
overflow in implicit constant conversion.

Use size_t for the variable containing string length to fix it.

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

14 years agoRevert the changes of r65826 in wxConvertToGTK().
Vadim Zeitlin [Sun, 17 Oct 2010 13:59:48 +0000 (13:59 +0000)] 
Revert the changes of r65826 in wxConvertToGTK().

This is not necessary any longer after the previous commit which changed
cMB2WC() to not return NULL for empty input.

See #12432.

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

14 years agoReturn valid buffer from wxMBConv::c{MB,WC}2{WC,MB} for empty input.
Vadim Zeitlin [Sun, 17 Oct 2010 13:59:42 +0000 (13:59 +0000)] 
Return valid buffer from wxMBConv::c{MB,WC}2{WC,MB} for empty input.

Returning invalid buffer for empty input is unexpected and resulted in e.g.
wxString::utf8_str() returning NULL and not "" in ANSI build for empty strings
(which, in turn, resulted in crashes in the test suite and undoubtedly not
only) as well as crashes when calling GTK+ functions (see #12432). Other uses
of cMB2WC() also show that NULL return value from it is unexpected as it is
often passed to CRT functions not accepting NULL.

So return empty buffer instead for empty input to avoid all these problems.

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

14 years agoFix FileTestCase to really test strings with embedded NULs.
Vadim Zeitlin [Sat, 16 Oct 2010 23:05:26 +0000 (23:05 +0000)] 
Fix FileTestCase to really test strings with embedded NULs.

The test was intended to verify that round trip via wxFile::Write/Read()
worked even for the strings with embedded NULs but as the string wasn't
constructed correctly it didn't actually contain any NULs but was ended by the
first of them.

Fix this by using explicit length of the string as usual when dealing with
strings with embedded NULs. Also fix the conversion back to Unicode to use the
correct length.

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

14 years agoDisable tests for UTF-encoded files in FileTestCase in ANSI build.
Vadim Zeitlin [Sat, 16 Oct 2010 23:05:20 +0000 (23:05 +0000)] 
Disable tests for UTF-encoded files in FileTestCase in ANSI build.

These tests didn't work correctly in ANSI build because the conversion
parameter of wxFile::Write() isn't used there, the contents of an ANSI
wxString is always written to the file as is -- hence reading it back using
UTF-16 or UTF-32 conversion fails.

The test would need to be totally rewritten for ANSI build of wx and it
wouldn't test wxFile but rather conversion functions already tested elsewhere
so just disable it instead.

This fixes a crash (due to passing NULL pointer to memcmp()) which prevented
the test suite from running to completion in ANSI build.

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

14 years agoCompilation fix for STL build after r65830.
Vadim Zeitlin [Sat, 16 Oct 2010 23:05:15 +0000 (23:05 +0000)] 
Compilation fix for STL build after r65830.

Explicit conversion from wxString to "const char *" is needed in STL build.
And even in non-STL build it's wrong to rely on implicit conversion as it
wouldn't work correctly in non-UTF-8 locales.

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

14 years agoAvoid crashes in wxGenericListCtrl client<->screen conversion code.
Vadim Zeitlin [Sat, 16 Oct 2010 18:11:32 +0000 (18:11 +0000)] 
Avoid crashes in wxGenericListCtrl client<->screen conversion code.

At least in wxUniv build, DoScreenToClient() can be called before the main
control window is created which results in a crash when attempting to forward
to its DoScreenToClient() version.

Check for m_mainWin being non-NULL before using it to at least avoid the
crash, even if it's not really clear whether this is a 100% correct fix.

Closes #12390.

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

14 years agoImprove wxGTK print and page setup dialogs.
Vadim Zeitlin [Sat, 16 Oct 2010 18:11:27 +0000 (18:11 +0000)] 
Improve wxGTK print and page setup dialogs.

Handle more fields (notably collation, number of copies and "print to file"
flag) and fix the bug with return value of print dialog ShowModal().

Closes #12499.

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

14 years agoTransfer printer name to/from GTK+ native print setup dialog.
Vadim Zeitlin [Sat, 16 Oct 2010 18:11:21 +0000 (18:11 +0000)] 
Transfer printer name to/from GTK+ native print setup dialog.

Printer name in the GTK+ dialog was neither initialized nor retrieved before.

See #12499.

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

14 years agoCorrectly initialize wxGtkPrintNativeData members.
Vadim Zeitlin [Sat, 16 Oct 2010 18:11:15 +0000 (18:11 +0000)] 
Correctly initialize wxGtkPrintNativeData members.

In particular, create a valid GtkPrintOperation object instead of using an
uninitialized pointer to it in wxGtkPrintDialog::ShowModal(), resulting in
crashes or, at best, GTK errors.

Closes #12483.

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

14 years agoRestore text drag-and-drop in wxSTC broken by Scintilla 2 update.
Vadim Zeitlin [Sat, 16 Oct 2010 18:11:06 +0000 (18:11 +0000)] 
Restore text drag-and-drop in wxSTC broken by Scintilla 2 update.

Drag and drop in wxStyledTextCtrl was broken, apparently since upgrade to
Scintilla 2. Restore it by using the correct wxDrag_XXX constants instead of
boolean values in the code for wxEVT_STC_START_DRAG events generation.

Closes #11709.

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

14 years agoDon't return invalid buffer from wxConvertToGTK("").
Vadim Zeitlin [Sat, 16 Oct 2010 18:10:58 +0000 (18:10 +0000)] 
Don't return invalid buffer from wxConvertToGTK("").

The result of wxConvertToGTK() is often passed to GTK+ functions directly and
not all of them handle NULLs gracefully, e.g. gtk_editable_insert_text() just
crashes.

Return an empty string from wxConvertToGTK() explicitly for empty string input
to avoid such problems.

Another potential solution might have been to change wxMBConv::cMB2WC() to
return empty buffer instead of invalid one for empty input but it's not clear
if this is not going to break something else.

Closes #12432.

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