Commit Graph

28618 Commits

Author SHA1 Message Date
Vadim Zeitlin
e19dbcf76b Use minimal required process access mask in wxMSW wxKill().
We don't need PROCESS_TERMINATE permission if we are not going to call
TerminateProcess() for it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-09 21:48:48 +00:00
Vadim Zeitlin
83a7613b71 Use the same logic for closing dialogs as for handling Escape key.
Pressing "Esc" key closed the dialog with only wxID_OK button (but no
wxID_CANCEL one) by default but pressing the "close window" button only closed
it if wxID_CANCEL was present.

Fix this by using the same code in OnCloseWindow() as in OnCharHook(), after
extracting it into the new SendCloseButtonClickEvent() method.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-09 20:53:26 +00:00
Vadim Zeitlin
0b94182cdc Remove the unused "monolithic" MSW wxMediaCtrl file.
The contents of this file was split over src/msw/mediactrl_{am,qt,wmp10}.cpp a
long time ago and this file is unused and not compiled into the library so
having it in the repository is useless and confusing -- remove it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-09 20:34:00 +00:00
Vadim Zeitlin
6161dd2d48 No real changes, just don't use obsolete FORCE_LINK_ME in wxMediaCtrl.
Use wxFORCE_LINK_THIS_MODULE() instead of the obsolete FORCE_LINK_ME.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-09 20:33:56 +00:00
Vadim Zeitlin
beea183b40 Remove debugging wxLogMessage from wxMediaCtrl::Create().
This was added apparently by mistake in r45478 and resulted in showing the
backend being used by the control in a message box whenever it was created
ever since.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-09 20:33:41 +00:00
Robert Roebling
89b6b731b6 Unregister configure callback,part of #12447: wxGTK patch: Segfault on Drag&Drop
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-08 20:00:44 +00:00
Stefan Csomor
77eb08cc36 resetting the wrapper flag later, otherwise the native destructors dealloc too much, fixes #12448
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-07 16:05:01 +00:00
Stefan Csomor
d623e8b18a modeling subclassing along msw, unsubclassing filedialog at end of ShowModal, fixes #12236
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-07 06:51:13 +00:00
Stefan Csomor
a94c4b8529 using non-sleep version for GUI mutex, solves #12411
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-06 13:50:12 +00:00
Vadim Zeitlin
8297e64b31 Remove unused wxProgressDialogTaskRunner::m_parent field.
This seems to be a left over from old version of the code and is not used any
longer.

See #12414.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-04 13:33:40 +00:00
Vadim Zeitlin
a5655d37db Fix crash in wxMSW wxProgressDialog without wxPD_APP_MODAL style.
Use the correct method to retrieve the parent window to disable and check that
this pointer is not NULL before dereferencing it.

Closes #12414.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-04 13:33:36 +00:00
Vadim Zeitlin
aebe0d3b6c Improve main and extended messages handling in new wxMSW wxMessageDialog.
Don't use the main message if there is no extended message: this looks bad as
the main message is emphasized to contrast with the extended one which doesn't
make sense visually if there is no extended message.

Also recognize the common use of wxMessageBox() with a multiline text composed
of the first string that plays the role of the main message with the rest
being the extended one and handle this appropriately automatically. This
results in a better appearance by default for a lot of message boxes,
including even the one in our own minimal sample.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-04 13:33:29 +00:00
Václav Slavík
71dd05d58a Fix wxOwnerDrawnComboBox keyboard navigation with duplicate items.
If the combobox contained duplicate strings (i.e. multiple items with the
same string value, but differing indexes), then navigating to the second
and subsequent ones skipped to the first occurence instead. We need to
preserve the index.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-03 19:33:18 +00:00
Steve Lamerton
5bb302a7aa Fix compilation under MinGW, also add missing SVN properties.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-01 15:25:01 +00:00
Julian Smart
edae63b076 wxRichTextCtrl::ApplyStyle now applies a paragraph style at the cursor
without needing a selection, and setting the default style now avoids duplicating
character attributes in subsequently typed text when they exist in the paragraph style.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-01 14:48:54 +00:00
Václav Slavík
8138f406a2 Reduce flicker when removing wxNotebook page.
wxMSW implementation hides all pages except the selected one. But when
removing selected page from the control, this invariant is temporarily
broken and this results in visible flicker. Hiding the page as soon as
it gets removed fixes it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-01 13:28:43 +00:00
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
bb612373c0 Don't center wxGenericMessageDialog elements.
Centering doesn't seem to be appropriate on neither of the major platforms and
makes wxGenericMessageDialog and wxGenericRichMessageDialog which uses it look
even less native than otherwise.

Simply don't do it neither for the text nor, especially, for the buttons where
wxStdDialogButtonSizer already exists to take care of their alignment.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-30 21:48:25 +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
Vadim Zeitlin
a01d6442f4 Fix button order in wxStdDialogButtonSizer in all cases under GTK.
The order of Yes/No/Cancel was recently fixed by the changes in r65346 but it
broke the order of the buttons in Ok/Cancel case. Ensure the correct order is
used in all cases now: the one described by GNOME HIG by default but different
order for the special case of Yes/No/Cancel which follows the native message
box.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65447 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-30 21:48:11 +00:00
Vadim Zeitlin
4c624eb1e5 Rewrite GTK section of wxStdDialogButtonSizer using wxSizerFlags.
Using wxSizerFlags makes the code shorter and more understandable but
otherwise there are no real changes in behaviour except for a minor fix to one
of the border which was wrong before.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-30 21:48:06 +00:00
Julian Smart
8f0e43661a Fixed wrong line spacing calculation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-30 11:27:42 +00:00
Julian Smart
602a592c22 Don't add space before para twice in paragraph layout
Discard attributes from empty text object when merging


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-30 08:47:23 +00:00
Robert Roebling
e9a680ccc5 include wx/sizer.h as buildbot complained
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-29 12:24:44 +00:00
Robert Roebling
66ddc77b88 Add possibility to use sizers in ribbon panel, fixes #12404: wxRibbonPanel and wxSizer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-29 09:42:55 +00:00
Václav Slavík
c063e45035 Scale sizes more accurately in generic SetWindowVariant().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-28 17:05:02 +00:00
Jaakko Salli
aae9e5bd56 Changed wxArrayStringProperty default delimiter to comma. It should allow for better looking and more easily editable property values for common cases.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-26 13:51:45 +00:00
Jouk Jansen
be82fa6989 correcting wxX11 for wxkeysym as was done for wxMOTIF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-26 06:53:51 +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
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
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
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
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
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
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
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
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