Just as in wxMSW, it makes sense to put URLs on clipboard (or drag them) in
both URL-specific and plain text formats to facilitate pasting (or dropping)
them into other applications.
So make wxURLDataObject in wxGTK a composite data object containing both its
old data object and wxTextDataObject.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
For some incomprehensible reason, GDK_SELECTION_TYPE_STRING was hard coded for
all non-text formats even though it was clearly never the right format to use.
Use the correct value specified by the format instead.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The delayed destruction mechanism is not MT-safe, so using it for wxSocket
objects destroyed from threads other than main resulted in crashes. Luckily,
it is not necessary to use it for such sockets anyhow as they don't risk
receiving any events -- which are only dispatched in the main thread -- and so
can be destroyed immediately.
So do destroy them directly instead of just scheduling for later destruction
when wxSocket::Destroy() is called.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Extract wxMSW-specific part of src/msw/utilsgui.cpp into a new
src/msw/utilswin.cpp file to allow reuse the rest of the former file in wxGTK.
Closes#14424.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Reuse some functions for both Broadway and X11 backends. Fix invalid casts
from Broadway screen/display types to X11 ones.
Closes#14469.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72079 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Make this method public to fix compilation after the recent changes as
traverser classes can't call it otherwise (no idea why did it compile with
g++). And give it a better name just in case people decide to call it even
though it's not documented and described as private in comment (but perhaps we
could make it really public later).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Added wxRibbonBar::ShowPage(), HidePage() and IsPageShown() methods and show
them in the sample.
Also add GetPageNumber() helper.
Closes#14471.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
When watching a tree recursively, add the files and not only the directories.
Also, add -- and remove in RemoveTree() -- the root directory itself and not
only its children.
Closes#14480.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Store the recently removed file descriptors and don't assert if we get an
event for one of them, this can happen and is normal unlike unexpected events
for completely unknown descriptors for which we still keep an assert.
Closes#14465.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Map items to rows correctly, just using wxPtrToUInt()-1 is not the right thing
to do if any items were deleted or changed.
Closes#14479.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The name of the XPM should be based on the file name but can't always be
exactly equal to it as it's possible (and relatively common, e.g.
"foo-24.xpm") to have characters forbidden in identifiers to appear in the
file names. Ensure that we use a valid C identifier here.
Closes#13905.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Change the order of IOkeInPlaceActiveObject::GetWindow() and
DoVerb(OLEIVERB_INPLACEACTIVATE) calls and do the latter first now as
otherwise GetWindow() returned NULL for standard ActiveX controls created by
MFC.
Closes#14209.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This doesn't work anyhow, so make it explicit by asserting if an attempt to do
it is made. And document this.
Also add a test of SetHint() to the text sample to verify it still works.
Closes#14456.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Refactor the console event loop code into separate files to untangle it from
the GUI version and ensure that it doesn't depend on the GUI at all. It can
now be defined in the base library and simply reused by the core one.
This also makes the console event loop usable for other ports under Windows,
e.g. wxGTK.
Closes#14426.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We already called TreeView_HitTest() above, there is no need to call
wxTreeCtrl::HitTest() again to retrieve exactly the same information.
This also incidentally fixes a warning about unused variable, see #14459.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This warning was harmless as the variable was in fact always initialized if
the code where it was used was reached but g++ 4.6.1 is not smart enough to
see it, just as MSVC for which we already had a workaround. So initialize it
explicitly just to suppress the warning.
See #14459.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Initialize the variables containing the colour components: even though they
should normally be always filled by Palette_GetRGB() call below, this
presumably might not happen for a corrupted image with invalid palette table
entries and g++ correctly complains about it.
See #14459.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775