Commit Graph

51810 Commits

Author SHA1 Message Date
Vadim Zeitlin
b37e255c36 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
2010-10-16 23:05:15 +00:00
Vadim Zeitlin
a9544d0014 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
2010-10-16 18:11:32 +00:00
Vadim Zeitlin
9e19da0f2a 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
2010-10-16 18:11:27 +00:00
Vadim Zeitlin
34b2bc598b 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
2010-10-16 18:11:21 +00:00
Vadim Zeitlin
820ec9bbc2 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
2010-10-16 18:11:15 +00:00
Vadim Zeitlin
676184202d 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
2010-10-16 18:11:06 +00:00
Vadim Zeitlin
dd5ab30d6a 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
2010-10-16 18:10:58 +00:00
Vadim Zeitlin
817b7b0e87 Add wxHAS_3STATE_CHECKBOX symbol.
This symbol is defined for the ports that support wxCHK_3STATE style. While
most of the ports do support it, a couple still do not and having this symbol
makes it more convenient to exclude 3-state-checkbox-specific code, like in
CheckBoxTestCase.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-16 18:10:51 +00:00
Vadim Zeitlin
f254e2424a Improve validation of wxCheckBox styles.
Detect when incompatible styles are used (this required changing the value of
wxCHK_2STATE to be non-null) and sanitize the styles (after asserting) in this
case.

Put the validation code in wxCheckBoxBase instead of having slightly different
versions of it in port-specific wxCheckBox implementations.

Add a unit test checking that the expected asserts are indeed generated.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-16 18:10:42 +00:00
Vadim Zeitlin
a9df18b4e4 Put libraries in %{_libdir} when building wxGTK RPMs.
Using the default libdir value ${_prefix}/lib is not always appropriate,
notably this takes care of systems using /usr/lib64 instead of /usr/lib.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-16 18:10:32 +00:00
Julian Smart
9be7f47cf4 Disabled wxRTC tests that don't work in wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-16 10:24:42 +00:00
Vadim Zeitlin
97e5b0645e Clear selection when generic wxDataViewCtrl is cleared.
Selection could retain its old value and become invalid after calling Reset()
before.

Closes #12559.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:51 +00:00
Vadim Zeitlin
e6777e6575 Add wx{Pen,Brush}::Is[Non]Transparent() methods and use them.
Using GetStyle() == wx{PEN,BRUSH}STYLE_TRANSPARENT doesn't work for
uninitialized pen or brush objects so add convenient helpers which do work for
them.

Use the new helper functions everywhere instead of explicitly checking for
style. This makes the code shorter and more clear and also fixes some bugs (at
least those in GTK printing code).

Notice that this patch removes the main reason for explicitly initializing
m_pen and m_brush in wxGTKDCImpl ctor but this initialization still can't be
removed, at least for the latter, as doing this somehow breaks GetPixel(). It
would be nice to understand why and do remove this initialization so that a
newly created DC doesn't have any non-default pen nor brush.

Closes #12522.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:46 +00:00
Vadim Zeitlin
f8ce98ded0 Use wxDCPenChanger instead of setting/resetting pen explicitly.
No real changes, just use wxDCPenChanger instead of manual calls to SetPen()
in wxDCImpl::DrawPolygon(). This makes the code shorter and more clear.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:37 +00:00
Vadim Zeitlin
bce926c580 Add "GTK" prefix to wxChoice::{Dis,En}ableEvents() methods in wxGTK.
This is more than a cosmetic change: adding "GTK" prefix in wxComboBox and not
doing it in wxChoice in r64436 broke the event generation for wxComboBox as it
didn't override wxChoice methods any longer but defined its own (useless) ones.

Using the same name for the methods in both classes notably fixes unexpected
event generation from wxComboBox::SetSelection().

Closes #12568.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:32 +00:00
Vadim Zeitlin
489f5a3d2e Include wx_presets.py in the distribution made by "make dist".
This file is required by "make install".

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:24 +00:00
Vadim Zeitlin
5b1985a920 Check for task dialog availability even under Vista and later.
Task dialogs are not always available under Vista and later Windows versions
because we might not be using the right (i.e. 6+) version of comctl32.dll.

Improve the check for task dialog availability and fall back to the classic
message box if we can't use it.

Closes #12553.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:19 +00:00
Vadim Zeitlin
eead52913d Remove all mentions of non-existent contrib from .spec files.
Remove contrib packages from .spec files.

Closes #12567.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:13 +00:00
Vadim Zeitlin
2f22b9c260 Add libraries new in 2.9 to wxGTK.spec.
Add propgrid, ribbon and stc libraries. Correct the name of the media library
("mmedia" was an old contrib library name that doesn't exist any more).

See #12567.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:09 +00:00
Vadim Zeitlin
1a9e575d79 Fix GTK+ development RPM dependency in wxGTK.spec.
Apparently the standard name for this RPM is gtk2-devel and not
gtk+-2.0-devel, at least rpmfind.net database doesn't have any matches for the
latter and plenty for the former.

See #12567.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:46:04 +00:00
Vadim Zeitlin
5d3056f180 Fix button order in wxGTK wxMessageDialog and wxStdDialogButtonSizer.
The order of buttons in wxGTK wxMessageDialog was accidentally broken since
r55482 and wxStdDialogButtonSizer implementation for wxGTK was subsequently
modified to work in the same way as the broken version of wxMessageDialog.

Fix wxMessageDialog and remove the "compatibility" workarounds from
wxStdDialogButtonSizer to restore correct behaviour in both places.

Closes #12565.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 23:45:58 +00:00
Jaakko Salli
ec31b41de3 Fix non-PCH builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 15:49:00 +00:00
Jaakko Salli
76c722f697 Added the missing DLL export declaration for wxNumericPropertyValidator
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 15:18:40 +00:00
Jaakko Salli
026767c6ae Added wxNumericPropertyValidator, which is a custom wxTextValidator with more accurate filtering of inappropriate input for wxIntProperty, wxFloatProperty and wxUIntProperty (fixes #12563).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-15 15:15:27 +00:00
Julian Smart
5ad9ae3a29 Fixed #12566 (assert on deletion) due to inconsistent commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-14 18:06:02 +00:00
Vadim Zeitlin
eb7a47b7b9 wxUniv/MSW compilation fix.
wxUniv/MSW compilation was broken by r65589, fix it by not assuming that
wxWindowMSW is a wxWindow because wxWindow derives from it in wxUniv.

Closes #12534.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 23:08:47 +00:00
Vadim Zeitlin
0d20ccbd5e Regenerate Makefile.in after recent changes to make_dist.mk.
Rebake with changes of r65800, r65801 and r65802.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 23:02:50 +00:00
Vadim Zeitlin
5b84e5273b Remove obsolete files from "make dist" rules.
Avoid errors due to attempts to copy non-existing files when making Unix
distribution.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 22:53:54 +00:00
Vadim Zeitlin
d5cbcec97d Skip Windows-only samples when making Unix distribution.
Some samples are by definition Windows-only so they don't have Makefile.in
files for Unix at all, skip them when creating the Unix distribution to avoid
errors due to attempts to copy non-existent files.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 22:53:50 +00:00
Vadim Zeitlin
caf019265a Include include/wx/generic/private/*.h files in distribution.
We must include the generic private files into the distribution as well,
otherwise at least wxGTK fails to build.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 22:53:45 +00:00
Vadim Zeitlin
cff48ba847 Fix display of right aligned columns in wxGenericListCtrl.
Take into account the width of the image when drawing the right aligned item
in wxGenericListCtrl.

Closes #12562.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 22:10:45 +00:00
Vadim Zeitlin
71d6cd60ee Pass last page in wxEVT_WIZARD_FINISHED event.
Delay resetting the wizard page to NULL when it terminates to allow
wxEVT_WIZARD_FINISHED event to carry the correct pointer to the last page.

Closes #12537.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 22:10:39 +00:00
Vadim Zeitlin
b7c31456fe Fix print format specifiers used for enum values.
Enums are ints, not longs, so use %d instead of %ld to avoid asserts under LP64
64 bit architectures.

Closes #12556.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 22:10:33 +00:00
Vadim Zeitlin
12f6edffd4 Don't return "false" when a pointer is needed.
Return NULL and not false from wxFileTranslationsLoader::
GetAvailableTranslations().

This is, of course, more correct and also fixes a compilation problem with
Borland, see #12558.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-13 22:10:28 +00:00
Vadim Zeitlin
20d88ec692 Move wxList::Member() to pseudo-template base list class.
Member() should be available in all list classes, not just specially crafted
list of wxObjects (wxList).

See #3616.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-10 12:48:36 +00:00
Jaakko Salli
ed8b46bba3 When wxPGProperty is un-attached from wxPropertyGrid, keep its 'default' cell references invalid/NULL (fixes #12552)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-10 09:34:29 +00:00
Jaakko Salli
b3ecee8d12 Also reset DatePicker property editor's global pointer (fixes #11787)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-10 08:32:58 +00:00
Julian Smart
32742d3d9d Compile fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-08 22:17:14 +00:00
Julian Smart
c06f56dd1a Blind fix for Mac compile problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-08 21:51:44 +00:00
Michael Wetherell
15552854db Fix for wxChm
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-08 11:16:54 +00:00
Vadim Zeitlin
b457256985 Don't use default "Error" title for wxMessageOutputBest message box.
Use the application display name as the message box title if possible andu se
"Message" rather than "Error" otherwise.

See #12548.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-07 20:57:40 +00:00
Vadim Zeitlin
6e91bf4d5b Remove unnecessary check from IPC sample.
No real changes, just remove a check for pointer passed to wxDELETE() bot
being NULL as wxDELETE() already checks for this anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-07 20:43:20 +00:00
Julian Smart
8995db52f3 Don't use wxDC in header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-06 21:27:07 +00:00
Julian Smart
bec80f4f4a Eliminated redundant wxRichTextAnchoredObject class; refactored XML I/O code
so that objects can stream themselves; added a wxXmlDocument-based method
of writing XML, though this turned out to be much slower than writing directly
so the direct approach is retained and is the default (can be changed with wxRICHTEXT_USE_XMLDOCUMENT_OUTPUT).
Loading and saving new attributes implemented. Added custom properties to objects.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-06 20:22:03 +00:00
Julian Smart
2d55af1dfa More efficient access to name and value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65778 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-06 13:15:24 +00:00
Vadim Zeitlin
93f6e00d7b Destroy the in-place edit control in wxGenericListCtrl dtor.
If the in-place text control was still alive when wxGenericListCtrl was
destroyed, it resulted in asserts from wxWindow dtor about child windows still
being alive, so explicitly destroy it from wxListMainWindow dtor.

As this required a slightly different behaviour from wxListTextCtrlWrapper::
EndEdit(), replace its bool argument with an enum one which can take more than
2 values. Not using bool values when calling it also made the code more clear.

Finally, added a unit test verifying that the in-place control is indeed
destroyed correctly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-05 13:38:05 +00:00
Vadim Zeitlin
9a1ff9516c Disable TimerEventTestCase::Multiple() test for ANSI wxGTK build.
This test crashes for unknown reasons on wxGTK ANSI build slave and prevents
the rest of the test suite from running, so disable it for now.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-05 13:37:44 +00:00
Vadim Zeitlin
d275b15d14 Fix harmless unused variables warnings.
Don't initialize the variables we never use in richtext sample, this results
in g++ warnings.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65767 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-05 13:37:25 +00:00
Julian Smart
f13d956e6a Removed test code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-05 06:33:34 +00:00
Julian Smart
30f6914ba1 Added a flag suppressing node content conversion when saving to XML.
This helps improve the extremely poor performance of XML saving if
you have, for example, hex data that does not need conversion.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-05 06:17:22 +00:00