Commit Graph

51540 Commits

Author SHA1 Message Date
Robert Roebling
a6856aa899 Reenable sorting tests for GTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-24 17:22:12 +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
Vadim Zeitlin
16e4586527 Remove unused wxDisplay implementation using DirectDraw from wxMSW.
Remove commented out version of DirectDraw-based wxDisplayFactory
implementation. It doesn't seem to have any advantages compared to the
currently used version and nobody uses it anyhow.

Closes #12387.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-24 11:36:43 +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
39f3816783 Compilation fix: forward declare wxTextEntry in unit tests code.
This should fix tests compilation on the build bot Mac OS X slaves.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-23 18:54:59 +00:00
Jouk Jansen
0772565873 Update openVMS compile support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-23 07:50:00 +00:00
Vadim Zeitlin
8859c7293e Use "C" locale for locale-dependent part of TextCtrlTestCase.
As we expect to get decimal points in the text control when we stream floating
point numbers into it, we must do it in a locale which uses decimal point,
e.g. "C" one. Otherwise the test failed when ran in e.g. French locale.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 23:46:02 +00:00
Vadim Zeitlin
83527a0ab2 Document that wxFD_FILE_MUST_EXIST is implied under OS X.
Mention in the documentation that the standard file open dialog under OS X
can't be used to select a non-existing file.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 23:45:58 +00:00
Vadim Zeitlin
2edda9670b Remove unused src/osx/cocoa/bmpbuttn.mm file.
This file was empty and unused any more so simply remove it and all references
to it in the makefiles.

This avoids warnings about empty object files in static builds of the library.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 23:45:53 +00:00
Vadim Zeitlin
453296e78b Don't use uninitialized variable in wxCharCodeWXToOSX().
If an unsupported wxKeyCode was passed to this function, an undefined value
was returned. Return -1 instead to indicate failure.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:58:25 +00:00
Vadim Zeitlin
232fdc630c Merge the new GUI tests from SOC2010_GUI_TEST branch.
Add a lot of tests for many wx GUI classes.

Add tests using the new wxUIActionSimulator class but disable them under OS X
as too many of them currently fail there.

Refactor the test suite to make organizing the existing tests and adding the
new ones easier.

Improve documentation using the information gathered while testing the
classes. Also update the documentation of the testing system itself.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:16:05 +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
6f07c007a5 Fix selection corner cases in wxOSX wxComboBox.
Don't crash in wxComboBox::GetString() if it's passed an invalid index.

Don't call GetString() with invalid index from GetStringSelection() if there
is no selection.

Do accept wxNOT_FOUND in SetSelectedItem() as it means, according to the docs,
that the existing selection should be reset.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:15:32 +00:00
Vadim Zeitlin
5623dce7cd Don't crash in wxOSX::wxClipboard::Clear() if initialization failed.
Creating the clipboard may fail (e.g. when running from a ssh session to an OS
X machine), don't crash by passing NULL pointer to PasteboardClear() if this
happens but assert and return instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:15:27 +00:00
Vadim Zeitlin
45d1c40a91 Work around a crash on starting editing in wxGrid under wxOSX/Cocoa.
wxOSX/Cocoa currently generates unexpected focus loss events with the window
gaining focus being the same one as losing it. This is wrong and shouldn't
happen but as long as it does, filter these events out to at least allow
editing the grid to work.

See #12267.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:15:22 +00:00
Vadim Zeitlin
4b97af90bf Don't send event from wxMSW::wxListCtrl::DeleteAllItems() if it did nothing.
wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS should only be sent if the control hadn't
been empty before. Document this behaviour and adjust wxMSW to match the
other platforms.

Also document the return value better.

Closes #12336.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:15:17 +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
Vadim Zeitlin
686d0cc0a6 Don't report spurious errors from wxSocket in "no wait" mode.
In wxSOCKET_NOWAIT mode wxSOCKET_WOULDBLOCK is not a real error as it's
expected and should be just discarded. Failing to do this could result in the
following scenario:

1. Try to read a big buffer with wxSOCKET_NOWAIT (setting wxSocket error to
   wxSOCKET_WOULDBLOCK).
2. Process small part of it.
3. Read more data from wxSocket -- which now goes to the data containing
   already cached data without going to the socket itself and this without
   resetting the error.
4. Check wxSocket::Error() which turns out to be (still) true.

And this was exactly what happened in mysteriously failing unit test case
reading wxImage contents from a socket: the failure was difficult to reproduce
because it depended on how much data exactly did we read from the socket in
one go.

Fix this by resetting the error properly and reenable the unit test which was
previously disabled for the build bot, it should pass now.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-21 23:33:40 +00:00
Robert Roebling
2dd62dc008 Allow calling wxGenericDirCtrl::GetPath() in multiple selection mode, fixes #12340 ([wxGenericDirCtrl] conflicts wxDirFilterListCtrl::OnSelFilter())
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-21 10:17:13 +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
Robert Roebling
f6ac1f4b38 Fix crash by checking if icon is valid before drawing it, fixes #12376: PATCH for Ribbon crash
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-21 09:39:09 +00:00
Robert Roebling
f79cf73292 Fix potential crash, fixes #12375: PATCH to fix help controller crash
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-21 09:36:12 +00:00
Robert Roebling
c225708fd4 Properly implement Cleared() by calling row_deleted on every child of root, fixes #12327: wxDataViewListCtrl Crash
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-20 20:51:17 +00:00
Vadim Zeitlin
f3b21e123e Mention that not all standard IDs are stock IDs.
Also add a link to the list of stock IDs from the standard IDs documentation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-20 18:13:51 +00:00
Jouk Jansen
b9d0da6f6f include correct private.h for wxgtk1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-20 15:38:03 +00:00
Robert Roebling
ec080ef187 Make it compile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-20 15:22:52 +00:00
Robert Roebling
0800eb846c Link to wxRichMessageDialog in some places
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-19 18:29:46 +00:00
Robert Roebling
03d291d933 Make it compile a bit more
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-19 18:17:51 +00:00
Vadim Zeitlin
8d5016b18b Slightly improve wx[Generic]RichMessageDialog layout.
Keep the icon at the top instead of centering it, this is more consistent with
the native behaviour under both MSW and GTK.

Get rid of an unnecessary sizer in wxGenericRichMessageDialog and give the
checkbox the right border to align with the rest of the dialog contents.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-19 15:41:24 +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
Julian Smart
9a3551d3f4 Better close button placement on tabs, especially for bottom tab alignment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-19 12:12:59 +00:00
Jouk Jansen
f0dd5fd97d update compile configuration for OpenVMS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-19 07:13:01 +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
84bf3902cf Compilation fix for old SDKs in new native MSW wxHyperLinkCtrl code.
Define WC_LINK ourselves if it's not defined in the headers.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 23:57:26 +00:00
Vadim Zeitlin
b00403b401 VC6 compilation fix for native wxProgressDialog implementation.
Don't use return with a void value, VC6 doesn't support this and it's
unnecessary here anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 23:55:52 +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
Vadim Zeitlin
5a607f8b23 Handle mnemonics correctly in wxGTK::wxCollapsiblePaneSetLabel().
Convert mnemonics in wx format to the one used by GTK+, just as we already do
in the ctor.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 22:48:21 +00:00
Vadim Zeitlin
2afba7c46c Fix Yes/No/Cancel buttons order in wxGTK wxStdDialogButtonSizer.
"Yes" and "No" buttons should be positioned next to each other for consistency
with the native message box instead of separating them with the "Cancel"
button.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 22:48:15 +00:00
Robert Roebling
8eb99915f2 Document recetnyl added name parameter in wxDataViewCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 21:40:24 +00:00
Robert Roebling
343e567e3e Mention that you cannot call wxRadioButton::SetValue(false) if that radiobutton belongs to a group
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 21:36:40 +00:00
Robert Roebling
b8710bbee8 GTK+ just won't let you uncheck any radiobutton that belongs to a group.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 21:32:14 +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
Robert Roebling
1aeaccf310 Make wxListBox sort in a case insensitive way, fixes #12352: Incorrect sort order in wxListBox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-18 21:28:11 +00:00