Commit Graph

14226 Commits

Author SHA1 Message Date
Vadim Zeitlin
b99450eecb Add wxGrid::RefreshAttr() method to force attribute refresh.
A cached attribute may continue to be used even though the attribute returned
by a custom wxGridCellAttrProvider has changed so add a method to force wxGrid
to update the attribute by forgetting the cached copy.

Closes #12406.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-30 22:18:52 +00:00
Vadim Zeitlin
d20ba5f860 Allow using custom labels for wxGenericMessageDialog buttons.
Custom labels set for wxGenericMessageDialog buttons were simply ignored as it
used CreateSeparatedButtonSizer() to create the actual buttons which in turn
always used the standard labels.

Fix this by explicitly creating the buttons with custom labels if necessary.

This also fixes custom label support in wxGenericRichMessageDialog deriving
from this class.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-30 21:48:21 +00:00
Vadim Zeitlin
b14cca2a84 Extract CreateSeparatedSizer() from wxDialog::CreateSeparatedButtonSizer().
Extract the code adding a separating wxStaticLine to the sizer in its own
function to be able to reuse it in upcoming commits.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-30 21:48:16 +00:00
Jaakko Salli
6f631217a9 Added missing wx/defs.h includes in propgrid headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-26 13:25:07 +00:00
Václav Slavík
a614ffae71 Fix wxListBox selection handling broken by r64500.
r64500 introduced tracking of previous selection in wxMSW's wxListBox so
that an event isn't sent when the user clicks already selected item
again. Unfortunately, it forgot to account for programatic changes of
selection (e.g. when all items are removed, so is the selection) and
didn't update selection book-keeping information in that case. The
result was that the event wasn't sent when it should be in some cases.

Fixed by using UpdateOldSelections() even in single-selection case in
wxMSW.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-25 15:02:30 +00:00
Robert Roebling
625ed74301 Make sorting of wxListBox, wxChoice and wxComboBox identical to the MSW sorting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-24 17:06:15 +00:00
Jouk Jansen
590e326472 wxKeysym problem for wxMOTIF fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-24 11:23:22 +00:00
Vadim Zeitlin
571d991bb3 Merge wxUIActionSimulator fixes from SOC2010_GUI_TEST branch.
Correct a lot of problems with the initial implementation, notably make the
API consistent across all platforms, e.g. all keyboard-related methods now
take just a wxKeyCode.

Add some useful higher-level helpers such as Text() and MouseDragDrop().

Improve documentation.

wxUIActionSimulator now works under MSW, GTK and OS X and is enabled by
default.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:15:42 +00:00
Vadim Zeitlin
acdc8633de Extract X11 Display wrapper class in a private header.
No real changes, just extract a private Dpy class used by wxGTK to a header
and rename it to wxX11Display.

This will allow reusing it from X11 wxUIActionSimulator implementation in the
upcoming commits.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:15:13 +00:00
Vadim Zeitlin
1c9039c352 Add missing header required if wx/mousestate.h is included first.
This header uses wxPoint so it must include wx/gdicmn.h (instead of relying on
it having been already included).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:15:07 +00:00
Robert Roebling
c9248ddbef make Set/GetLabel() set and return something (albeit unused) as per the docs, fixes #12350: wxWindow Get/SetLabel non-functional in GTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-21 09:54:30 +00:00
Robert Roebling
a03b38ef68 make Set/GetLabel() set and return title in wxTLW, fixes #12371: Dialog::GetLabel() Inconsistent behaviour across operating systems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65373 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-21 09:53:25 +00:00
Vadim Zeitlin
c79510ca12 Make the main message of wxGenericMessageDialog stand out.
Use larger bold font for the main message in wxGenericMessageDialog if the
extended message is also given to make it stand out similarly to how it
happens in the native GTK and MSW dialogs.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-19 15:41:18 +00:00
Vadim Zeitlin
8908317871 Compilation fix for STL build in wxGtkCollatableString code.
Include wx/string.h to define wxString used by this class.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-19 00:06:17 +00:00
Vadim Zeitlin
d482d5e468 Compilation fix for non-PCH build in wxGenericRichMessageDialog code.
Move IsCheckBoxChecked() to the .cpp file where wxCheckBox is fully defined
and not just forward declared (at least when not using PCH).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-19 00:06:12 +00:00
Vadim Zeitlin
c31d9c7f60 Use task dialog for wxProgressDialog implementation in wxMSW.
If available, the task dialog is now used for the wxProgressDialog under
Windows. This provides a much more native looking dialog which doesn't look
out of place under modern Windows versions, unlike the generic implementation.

The internals of the code had to be significantly changed as the task dialog
can only be shown modally so, to emulate wxProgressDialog modeless nature, a
separate thread is used for the progress dialog management.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 22:49:02 +00:00
Vadim Zeitlin
c0938d8506 Only use native wxHyperlinkCtrl in Unicode build under MSW.
The native control is available to Unicode applications only so disable its
use in non-Unicode build.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 22:48:53 +00:00
Vadim Zeitlin
8220f2f145 Don't use native MSW wxCommandLinkButton in wxUniversal.
Test for __WXUNIVERSAL__ when selecting the version of this class to use.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 22:48:48 +00:00
Vadim Zeitlin
a1bdd4ab9b Add wxRichMessageDialog class.
This is a generalization of wxMessageDialog based on the native task dialog
under recent (Vista and later) Windows versions and implemented generically
for the other ports for now.

It provides the possibility to use additional controls in the message boxes
(checkbox useful for the "Don't ask me again" kind of dialogs and collapsible
detailed explanations field) and better look and feel under Windows.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 22:48:41 +00:00
Vadim Zeitlin
ede7b01760 Provide a task-dialog based wxMSW wxMessageDialog implementation.
Use the task dialog instead of the legacy message box for wxMessageDialog
implementation under wxMSW on recent (Vista and later) Windows versions.

As part of this change, remove wxMessageDialogWithCustomLabels and integrate
its functionality in wxMessageDialogBase itself as it's now used by all
platforms.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 22:48:28 +00:00
Robert Roebling
c272f12ff0 make wxChoice and wxComboBox sort in a case insensitive and locale adapted way, fixes #12351: Incorrect sort order in wxChoice / wxComboBox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 21:29:53 +00:00
Julian Smart
a94656538f Use common inline version of wxHexToDec
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 12:59:52 +00:00
Vadim Zeitlin
b815cf68d2 Provide native wxHyperlinkCtrl implementation for wxMSW.
Use the "syslink" native control to implement wxHyperlinkCtrl under (recent
enough, i.e. XP or later) versions of Windows.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-17 16:55:32 +00:00
Vadim Zeitlin
8fe8b421fc Compilation fix: include wx/button.h from wx/commandlinkbutton.h.
Include the base class declaration to fix compilation under non-MSW.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-17 16:12:28 +00:00
Vadim Zeitlin
c6d4b3ce9d Export wxMSWButton::GetFittingSize() private function.
It is now used by wxCommandLinkButton from adv library and so needs to be
exported from core.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-17 15:13:14 +00:00
Vadim Zeitlin
3571e1add4 Add new wxCommandLinkButton class.
A command link button wraps a native MSW control under recent Windows versions
and is implemented generically as a simple bitmap button elsewhere.

In the future, GTK implementation should allow using a different font for the
button label and its note.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-17 14:48:50 +00:00
Robert Roebling
9572bf1d44 Ignore non-existant string selection in wxComboBox::SetValue() in read-only mode, as per the very exact docs, fixes #12329: wxComboBox can set non-existing string in read only mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65324 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-16 17:48:28 +00:00
Vadim Zeitlin
71a0f42d2a Make wxTopLevelWindow::GetDefaultSize() public and document it.
This method is/will be needed by wxNonOwnedWindow in wxOSX but couldn't be
used as long as it was protected, so make it public. And as it seems that it
might be useful outside of wx itself, document it as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-11 16:03:55 +00:00
Vadim Zeitlin
06cfc05269 Add wxPoint::IsFullySpecified() and SetDefaults().
These methods do the same thing as wxSize methods with the same names and are
useful for the same reasons.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-11 16:03:51 +00:00
Vadim Zeitlin
d931703342 Inherit notebook background recursively under wxMSW.
With MSWSetTransparentBackground() hack only the panel which was the immediate
child of wxNotebook (i.e. its page) inherited the notebook background but not
its children. This resulted in jarring background discontinuities when nested
panels were used.

Fix this by inheriting notebook background in all child panels by testing for
the return value of the parents MSWHasInheritableBackground() method in
wxPanel::HasTransparentBackground() recursively.

Closes #12317.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-10 21:48:17 +00:00
Vadim Zeitlin
80ce465c64 Add wxDataViewCtrl::{Set,Get}CurrentItem().
Current item is the same as the selected item in single selection mode but in
multiple selection mode there was no way to neither get this item nor change
it before so add the new functions to allow doing this now.

The new methods are implemented for the generic, GTK and OS X/Cocoa versions
but only stubs are provided for OS X/Carbon.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-10 12:53:03 +00:00
Jaakko Salli
6c78066f22 Moved wxPGProperty::SetFlag() to protected API since it does not have any side-effects that are usually desired in the user code. Added wxPGProperty::SetAutoUnspecified() since wxPG_PROP_AUTO_UNSPECIFIED can no longer be set (conveniently) with SetFlag().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-08 12:22:08 +00:00
Jaakko Salli
346f3fd640 Removed spurious semicolon that prevented compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-08 11:59:34 +00:00
Jaakko Salli
9ceed261f8 Added wxPGProperty::Enable() for conveniency. Refactored related code and improved related documentation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65216 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-08 11:41:20 +00:00
Vadim Zeitlin
62e9285aba Add name argument to wxDataViewCtrl ctor for consistency.
As all the other wxWidgets controls take the parameter in their ctor/Create()
it's unexpected that wxDataViewCtrl does not. Add the name parameter and pass
it to wxWindowBase::CreateBase() as usual.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-08 11:37:57 +00:00
Vadim Zeitlin
17d98558b3 Add wxDataViewCtrl::GTKPathToItem() function and use it.
No real changes, just refactor the code to use a function mapping GtkTreeIter
to our wxDataViewItem and use it instead of duplicating its code everywhere.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65211 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-08 11:37:37 +00:00
Vadim Zeitlin
91012d561d Include wx/defs.h before testing for wxUSE_CHECKLISTBOX.
We need to include wx/defs.h that (indirectly) defines wxUSE_CHECKLISTBOX
before testing for it in wx/checklst.h, otherwise the test may fail if the
latter header is the first wx header included by the user code.

Closes #12306.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-08 11:35:55 +00:00
Václav Slavík
0826c4d39a Fix Tab navigation when focused control is disabled.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-01 10:11:53 +00:00
Václav Slavík
ce5abbf9f5 Fix wxDataViewCtrl to omit expander space for all kinds of lists.
List-only models don't have expanders and so the control shouldn't
reserve any space for them; the notion of expander column doesn't make
sense here.

Previously, this was done correctly only for wxDataViewVirtualListModel;
"ordinary" list models, such as the one used by wxDataViewListCtrl, were
treated as generic tree models and 0th column had ugly empty space
reserved for (never used) expander.

This patch fixes it by adding IsListModel() helper function in
addition to existing IsVirtualListModel(). Some of the
IsVirtualListModel() tests were changed into IsListModel() checks as
appropriate.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-29 20:54:00 +00:00
Václav Slavík
780e4fd003 Fix gcc warning in wxDataViewListCtrl::ItemToRow().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-29 15:30:11 +00:00
Vadim Zeitlin
c072b9ec8a Add association between wxOSX wxTextWidgetImpl and wxTextEntry.
This allows to always find the correct wxTextEntry to use in the
implementation of text-related widgets without using any casts. Notably, the
wrong up-cast of wxWindow to wxTextCtrl in wxNSTextFieldControl::controlAction()
which resulted in a crash when the window was actually a wxComboBox can now be
fixed.

Closes #12284.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-28 11:27:01 +00:00
Václav Slavík
fa629adae4 Add index-based selection functions to wxDataViewListCtrl.
These are convenience functions for work working with indexes, for
consistency with other wxDataViewListCtrl methods.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65122 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-27 21:45:50 +00:00
Václav Slavík
17de95e4e0 Add item<->row mapping helpers to wxDataViewListCtrl.
These are commonly needed when using wxDataViewListCtrl, yet they were
only available in wxDataViewIndexListModel.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-27 21:45:45 +00:00
Vadim Zeitlin
128eed6c64 Build fix: don't test for __WXMSW__ using #if in wx/defs.h.
__WXMSW__ should be tested using #ifdef but in fact there doesn't seem to be
any need to test for it at all here as __CYGWIN__ implies __WXMSW__ anyhow.

Closes #12266.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-25 11:42:43 +00:00
Jaakko Salli
7197bbad21 Refactored validation of numeric properties (wxIntProperty, wxUIntProperty and wxFloatProperty). They now use (basically) a single template function instead of three separate ones.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-25 10:36:19 +00:00
Jaakko Salli
5eedcd5eee Added wxVariant::Convert() implementations for wx(U)LongLong_t, so that wxVariant can be converted to native 64-bit integer types on the same terms as it is converted to other numeric types (useful in e.g. template functions)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-25 09:30:50 +00:00
Jaakko Salli
ed8f00db2c Make SetFont() public (fixes #9641)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65091 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-25 07:39:17 +00:00
Robert Roebling
9ca2afd1db Make calls wxDataViewModel::ItemDeleted() etc. non-virtual as they are not supposed to be overridden
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-24 15:30:03 +00:00
Vadim Zeitlin
1aff4201c3 Add EVT_RIBBONGALLERY_CLICKED event.
This event is sent whenever an item is clicked, even if it's already selected,
unlike the existing EVT_RIBBONGALLERY_SELECTED.

Closes #12128.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-24 12:27:25 +00:00
Vadim Zeitlin
9899a70bc0 Remove hard limit on number of pages in wxHtmlPrintout.
This seems to be a leftover from an old version in which the page breaks
positions were stored in a fixed size array. As the code uses a dynamic array
now there doesn't seem to be any reason to impose any limit on the number of
pages and some people did run into the old 999 pages limitation apparently.

Closes #11159.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-24 12:27:18 +00:00
Vadim Zeitlin
f3cf14a905 Fix AUI compilation without PCH after recent changes.
r65061 broke PCH-less compilation as it used wxClientDC without (forward)
declaring it. Fix this and also correct wxAuiPaneInfo forward declaration.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-24 11:23:17 +00:00
Vadim Zeitlin
4026f044ee Ensure that wxAuiNotebook::SetArtProvider() always does set it.
It used to only set the provider if the height of the tabs defined by the new
provider was different from the one used by the old one, otherwise the call
was optimized away. Fix this by explicitly setting the art provider for all
tabs in SetArtProvider() itself if UpdateTabCtrlHeight() didn't do it.

Closes #9738.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-23 23:33:46 +00:00
Vadim Zeitlin
e5dcae09e6 Add support for auto-orientable toolbars to AUI.
Allow wxAUI to change the toolbar orientation depending on where is it docked.
It is also now possible to specify wxAUI_TB_VERTICAL or HORIZONTAL to force
the toolbar to be always oriented in the given sense and to prevent it from
being docked at the sides incompatible with it.

Closes #11712.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-23 23:33:10 +00:00
Vadim Zeitlin
715e4f7e3e Fix Cygwin 1.7 build.
Avoid using Cygwin sockets as our code assumes that we use WinSock API under
Windows currently (this might change in the future) by defining
__USE_W32_SOCKETS.

Use new, safer and more efficient cygwin_conv_path() function.

Use t_str() instead of fn_str() with Windows API taking file names, under
Cygwin they are different and using fn_str() is incorrect.

A few other minor fixes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-23 23:32:46 +00:00
Vadim Zeitlin
3d4e20dd0b Added wxFONTENCODING_EUC_KR alias for wxFONTENCODING_CP949.
Although CP949 might not be exactly the same as EUC-KR it appears to be
similar enough and having a more familiar name for it is helpful for people
unfamiliar with Windows nomenclature.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-23 23:32:40 +00:00
Vadim Zeitlin
f675b4f521 Fix harmless unused parameter warnings in wxDEBUG_LEVEL==0 build.
These warnings were harmless as they concerned the parameters used inside
wxASSERTs only but there were hundreds if not thousands of them in
wx/strvararg.h alone so all the rest of build output was completely lost in
them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-22 13:42:49 +00:00
Vadim Zeitlin
fda43a0e01 Fix compilation of wxSpinCtrlGenericBase when PCH are not used.
This fixes PCH-less compilation broken by r65043.

Closes #12259 (again).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-22 13:42:38 +00:00
Vadim Zeitlin
713c7336f2 Fix explicitly setting focus to generic wxSpinCtrl.
The control itself can't accept focus as its window is disabled so set the
focus to its text part instead if SetFocus() is explicitly called.

Closes #12259.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-22 12:16:26 +00:00
Vadim Zeitlin
ab9893576c Add wxItemContainer::DetachClientObject() and use it in wxRearrangeList.
Add a method to detach the item from an item control without deleting it and
use it in wxRearrangeList to correctly swap object client data without
deleting the pointers in the process.

Closes #12201.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-22 12:09:15 +00:00
Vadim Zeitlin
f203de0cc4 Replace 2.9.1 version with 2.9.2.
Also update the inc_release script to take src/wxWindows.xcodeproj into
account.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-22 12:09:04 +00:00
Vadim Zeitlin
4b6d82c739 Ensure that validators work even in presence of pushed event handlers.
Call pre-processing hooks for each of the handlers in the chain and not only
the first one. This ensures that a validator (which is invoked during the
pre-processing stage) of a window is used even if a window has an event
handler pushed on top of it.

Closes #12177.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-18 11:53:08 +00:00
Vadim Zeitlin
d886c20e22 Don't redefine wxNO_EXCEPTIONS in wx/except.h if it's already defined.
This symbol can be defined on compiler command line already, don't redefine it
in this case to avoid a warning.

Closes #12235.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-17 11:55:10 +00:00
Vadim Zeitlin
c5895661ca Remove dllexport declaration from a nested struct.
Try a blind fix for VC6 linking problems in DLL build related to
wxFileTypeInfo ctor. This is unlikely to fix it but DLL-exporting a nested
struct which, moreover, has only inline methods, seems unnecessary and it just
might help too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-14 23:06:20 +00:00
Vadim Zeitlin
2cd36ea032 Don't compile platform-specific methods when using wxUniversal.
Various wxTextEntry::GetEditXXX() methods shouldn't be used in wxUniv build.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-14 22:43:19 +00:00
Vadim Zeitlin
233f573883 Fix file paths in the header comments.
Consistently use only "wx/foo.h" instead of "include/wx/foo.h" ("include" is
always implicit anyhow).

Also use "src/osx" instead of "src/mac" for the files in this directory.

See #12165.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 13:29:58 +00:00
Vadim Zeitlin
f64d951535 Fix a few minor typos in comments.
See #12165.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 13:29:44 +00:00
Vadim Zeitlin
c1098adfe2 Globally rename all occurrences of "XCode" to "Xcode".
The official spelling of the Apple IDE doesn't capitalize "C" so neither
should we.

See #12165.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 13:29:38 +00:00
Vadim Zeitlin
526954c596 Globally use "wxWindows licence" consistently.
Use "wxWindows licence" and not "wxWidgets licence" (the latter doesn't
exist) and consistently spell "licence" using British spelling.

See #12165.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 13:29:13 +00:00
Vadim Zeitlin
4a07d70634 Send right and double click events in wxGrid when using native header.
Previously only simple left click event was sent in this case, now also
generate right and double click ones.

Closes #12156.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 12:38:00 +00:00
Vadim Zeitlin
e5805c0fde Only compile wxStd{Input,Output}Stream if wxUSE_STREAMS==1.
This fixes compilation of minimal wxWidgets build.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-12 22:50:51 +00:00
Vadim Zeitlin
fd76c6a77d Remove scroll units duplication in wxGrid to fix setting them.
For some unknown reason wxGrid decided to store its scroll units in its own
m_scrollLine[XY] variables instead of just using the base wxScrollWindow class
m_[xy]ScrollPixelsPerLine ones. And, of course, the two could get out of sync
because wxGrid didn't update the base class version correctly.

Just don't duplicate these values at all and use the base class fields. This
makes the code simpler and also fixes changing the size of the scroll units.

Closes #12221.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-12 22:50:23 +00:00
Vadim Zeitlin
b526f9d64d Fix text updated event generation in wxGTK wxComboBox.
The changes (cosmetic renaming, no less) in r64436 broke unit tests checking
for wxComboBox event generation because the extra text updated events were not
suppressed correctly any longer because wrong {Enable,Disable}Events() were
called instead of the correct GTK{Enable,Disable}Events().

Fix and slightly improve the code by disabling the events in overridden
EnableTextChangedEvents() itself and reuse its code from GTK-specific event
enabling functions.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-12 22:50:14 +00:00
Jaakko Salli
c6aabd1ca9 Fix non-PCH builds (closes #12217)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 20:00:44 +00:00
Jaakko Salli
525b29124a Added 'Delimiter' attribute for wxArrayStringProperty. Moved static ArrayStringToString() to wxArrayStringProperty.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 17:04:23 +00:00
Jaakko Salli
895e26a04b Have the new incarnation of wxPGArrayEditorDialog support the old-style 'custom button' event as something that happens when the wxEditableListBox's 'New Item' button is pressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 16:06:03 +00:00
Vadim Zeitlin
6dc6bcd8ab No real changes, just fix unused parameter warning.
Wrap dc parameter of wxRichTextCtrl::PaintAboveContent() in a WXUNUSED().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 10:44:27 +00:00
Vadim Zeitlin
679ab0b315 Optionally set the window name in wxPersistentRegisterAndRestore().
In practice names are not often used so typically whenever you want to make a
window settings persistent you also need to set its name and the it's
convenient to let a single function do both tasks, so add an overload taking
the name string (this is a separate function instead of optional parameter to
avoid compilation errors if this is ever used with non-wxWindow-derived
objects which don't have SetName() method).

Also expand the documentation slightly and add @since tags.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 10:44:23 +00:00
Vadim Zeitlin
3dea8ba7ac Account for largest item in wxGenericListCtrl::GetBestSize().
Don't just return a hard-coded value but at least return something big
enough to show the largest item in the control in non-report mode.

This fixes the appearance of wxListbook which simply truncated its items
before if they didn't fit in 80 pixels horizontally.

Also switch to implementing DoGetBestClientSize() instead of DoGetBestSize()
as this method doesn't account for the control borders (it does account for
the scrollbars however).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 10:44:08 +00:00
Vadim Zeitlin
89b799cccf Add wxSize::IncBy() and DecBy() overloads taking wxPoint.
It seems to make at least as much sense to extend a wxSize by wxPoint than by
another wxSize (which doesn't make much size to me...) so add Inc/DecBy()
overloads doing this.

We might also add operator+=() overloads taking wxPoint for consistency but
for now don't add more operator overloads unnecessarily, let's wait if anybody
asks about this first.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 10:44:03 +00:00
Vadim Zeitlin
b35549525f Implement wxWindow::DoGetBorderSize() for all ports.
Implement DoGetBorderSize() properly for wxGTK and use the difference between
the full window size and the client size for all the ports not implementing
this method. The latter is incorrect in the presence of the scrollbars but is
the best we can do in general.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 10:43:49 +00:00
Vadim Zeitlin
d6a658ff0c Allow user code to override key events in generic wxListCtrl.
The changes of r58323 ("Restore keyboard navi") fixed the handling of cursor
keys in the generic wxListCtrl implementation but at the price of not sending
keyboard events for the cursor keys to wxListCtrl itself any more. This made
it impossible to override their handling in user code, something that used to
work in previous wx versions and still works in wxMSW.

Revert the changes of this revision now and fix the original code by simply
disabling the handling of the cursor keys in wxScrollHelperBase using a newly
added DisableKeyboardScrolling() method. This ensures that the keyboard events
for cursor keys are not used to scroll the window when they are forwarded to
wxListCtrl from wxListMainWindow.

The fix is conceptually ugly as it would be better to avoid the need for such
ad hoc functions as DisableKeyboardScrolling() but it is very simple and there
just doesn't seem to be any sane way to do it otherwise with wxScrollHelperBase.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 10:43:35 +00:00
Jaakko Salli
2906967c4a wxArrayEditorDialog now uses wxEditableListBox. It has also been renamed to wxPGArrayEditorDialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-10 15:30:35 +00:00
Julian Smart
6494f8d142 iPhone SDK 2.2 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-08 17:35:45 +00:00
Julian Smart
4e8d90a7ce Respect wxUSE_MENUS in toolbar base classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-08 17:35:04 +00:00
Julian Smart
7304f3850d Avoid warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-08 13:32:34 +00:00
Václav Slavík
281448385a Add std::[w]string support to wxVariant.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-05 14:23:21 +00:00
Jaakko Salli
88f47aa770 Make m_inDoPropertyChanged and m_inCommitChangesFromEditor bools; Manage m_inDoPropertyChanged using wxON_BLOCK_EXIT_SET()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-04 11:21:27 +00:00
Jaakko Salli
96bffa1288 m_inDoSelectProperty: make it bool and use wxON_BLOCK_EXIT_SET() on it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-04 10:30:13 +00:00
Jaakko Salli
03d47fcf07 Redundant wxPropertyGrid validation failure message boxes should no longer be shown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-04 09:46:43 +00:00
Jaakko Salli
4fb5dadb13 Changed wxPropertyGrid default property validation failure behavior to more user-friendly wxPG_VFB_MARK_CELL | wxPG_VFB_SHOW_MESSAGEBOX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-04 08:53:07 +00:00
Jaakko Salli
0ea0604a1e Added new wxPropertyGrid property validation failure flags wxPG_VFB_SHOW_MESSAGEBOX and wxPG_VFB_SHOW_MESSAGE_ON_STATUSBAR, which allow defining the default message display behavior more accurately
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-04 08:22:52 +00:00
Václav Slavík
b113edcdd7 Fix format strings parsing to understand C99 %zu etc.
The parser used to understand only 'Z' specifier for size_t/ptrdiff_t,
which is non-standard libc5 extension. C99 defines 'z' for this purpose,
so use that. Compatibility with 'Z' is preserved.

Also support Visual C++'s non-standard 'I' modifier with the same
meaning.

Fixes #12192.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-03 14:24:23 +00:00
Václav Slavík
16c15822fe wxFileOffsetFmtSpec isn't translatable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-03 14:24:17 +00:00
Václav Slavík
3b12da351c Fix vararg type checking to accept ints for %c.
It's perfectly legitimate to format int values as %c, so don't assert in
this case.

Fixes #12192.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-03 14:24:12 +00:00
Václav Slavík
5b4a88f4db Simply varargs type checking by adding subtypes to check mask.
Instead of always declaraing that a C++ type corresponds to either
Arg_String or Arg_Pointer, make Arg_String superset of Arg_Pointer.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-03 14:24:06 +00:00
Jaakko Salli
2d8d109b6c Eliminated lingering validation failure message on the status bar. Added wxPropertyGrid virtual member functions DoHidePropertyError() and GetStatusBar().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-03 12:22:58 +00:00
Jaakko Salli
8915141c1e wxPropertyGrid validation failure was not (always) reset when a valid value was entered after an invalid one.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-03 11:43:49 +00:00
Václav Slavík
afc1f37c65 Fix printf arguments validation code for ANSI build.
char arguments weren't recognized as allowed variadic types. Unlike in
Unicode build, where chars are treated specially, they are primitive
types in ANSI build.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-01 15:28:35 +00:00
Václav Slavík
908c405611 Use wxScopedCharBuffer in To8BitData() in ANSI build too.
This allows one to write code compatible with both Unicode and ANSI
builds.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-01 15:28:30 +00:00
Václav Slavík
227c030f98 Don't assume size_t is either int- or long-sized.
On 64bit Windows systems, sizeof(int)==sizeof(long)=4, but size_t is 8
bytes large.

Fixes #12179.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-01 14:30:29 +00:00