Commit Graph

52189 Commits

Author SHA1 Message Date
Jaakko Salli
0306e73e63 Make the wxComboCtrl's wxTextEntry interface more complete and consistent. All text is no longer selected on SetValue(), but only when user selects an item from the drop-down list.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-17 11:20:50 +00:00
Robin Dunn
708cc39462 Use a " " (space) for the menu item if an empty string is used for an item in a wxChoice, in order to avoid an assert in wxMenuItem.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-17 00:56:26 +00:00
Jaakko Salli
2debe2b120 Removed a return statement from void function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 19:25:31 +00:00
Jaakko Salli
eae20c901b Resolve ambiguity with wxOwnerDrawnComboBox::Clear(), virtual method which is derived from two base classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 18:13:43 +00:00
Jaakko Salli
bd0fa687b6 In wxBitmapComboBox dtor, call DoClear() instead of ambiguous Clear()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 18:08:16 +00:00
Jaakko Salli
9ff4b6ccd9 Override wxTextEntry::GetSelection(long *from, long *to) in wxOwnerDrawnComboBox to resolve virtual method hiding issues
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 18:07:05 +00:00
Jaakko Salli
fda6279358 Instead of having wxComboCtrl mimic wxTextEntry interface, make it actually inherit from the class and implement functions to redirect to the embedded wxTextCtrl. This allows us to simplify the code and get rid of the dirty trick of directing wxComboCtrl's validator to the embedded wxTextCtrl. Also see #12779, which issue 1 is fixed by this change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 17:21:49 +00:00
Jaakko Salli
25199f9859 Document how the sign is omitted from wxFloatProperty's displayed value when it is effectively zero (closes #12738).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 16:12:55 +00:00
Vadim Zeitlin
0538419f9e Initialize wxLogWindow::m_pLogFrame in ctor to avoid (rare) crash.
If the log frame creation itself generates log messages, the code using
wxLogWindow could crash because its m_pLogFrame member variable wasn't
initialized yet at this moment.

Do set it to NULL initially now to avoid this.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-15 13:36:44 +00:00
Vadim Zeitlin
66f7556189 Compilation fixes for wx{X11,GTK1,Motif} after making ref data non copyable.
Don't use wrong compiler-generated copy ctors in the other ports neither (see
r66371..66373 for wxGTK fixes). This fixes compilation after r66374 without
reducing functionality but just making it more clear where it is missing.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-15 12:04:13 +00:00
Vadim Zeitlin
10c49955ad Compilation fix for wxMotif PCH build.
We need to include wx/unix/utilsx11.h even when using PCH to get
wxCharCodeXToWX() declaration.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-15 12:04:02 +00:00
Vadim Zeitlin
806b2e1692 Update accelerator unit test to pass after recent changes.
Changes of r66379 broke the unit test as wxAcceleratorEntry::Create() now
requires the TAB to be present in the string passed to it (again).

Update the test to make it pass.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-15 12:03:54 +00:00
Vadim Zeitlin
6fc7a1ad1c Don't pass strings not containing accelerators to ParseAccel().
Check for the presence of accelerator part in the string passed to
wxAcceleratorEntry::Create() and don't call ParseAccel() at all if it's not
there. This avoids the spurious warnings about unrecognized accelerators when
creating menu items that don't have any accelerators at all.

Also update wxAcceleratorEntry::FromString() documentation to mention that
the new code should pass just the accelerator to this function and that it
only accepts full menu item labels for compatibility.

Closes #12770.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-15 11:18:42 +00:00
Jouk Jansen
a67c2d4161 Include compilation of tests for OpenVMS (part2)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-15 10:54:47 +00:00
Jouk Jansen
38e5440573 Include compilation of tests for OpenVMS (part1)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-15 09:51:48 +00:00
Vadim Zeitlin
377c1ba438 Return false, not NULL, from a function returning bool.
Fix a warning (which might be an error with some compilers) about returning
NULL from bool wxRichTextImageBlock::DoMakeImageBlock() function.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-14 18:44:04 +00:00
Vadim Zeitlin
8f6f3a71d8 No real changes, just add a cast to fix a warning.
Fix warning about implicitly converting -1 to CGKeyCode when building wxOSX
with 10.4 SDK.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-14 18:43:57 +00:00
Vadim Zeitlin
fd08ccd246 Make wxRefCounter non copyable.
wxRefCounter copy ctor was wrong as the new object had the same reference
count as the old one instead of starting its life with reference count set to
1 as any new object should.

While we could fix its copy ctor, it seems to be better to forbid copying
wxRefCounter objects at all because the semantics of doing this is not obvious
and the compiler-generated copy ctor in the derived classes often doesn't do
what the code using it expects it to do, as was discovered by making
wxRefCounter non copyable: see the fixes in the previous commits.

To uncover all such bugs, make wxRefCounter and classes deriving from it non
copyable. If this uncovers more problems, they should be fixed by implementing
copying properly (and explicitly) in the derived classes.

Closes #12768.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-14 18:43:49 +00:00
Vadim Zeitlin
f9b4d680d7 Fail in CloneGDIRefData() instead of implementing it incorrectly in wxOSX.
wxIcon and wxMetaFile implemented CloneGDIRefData() using copy ctors of the
corresponding ref data classes but the copy ctors were either wrong (for
wxIconRefData as using it would result in messing up IconRef reference count)
or had wrong semantics (wxMetafileRefData copy ctor performed shallow copy
only while CloneGDIRefData() supposes a deep copy is done).

Replace the wrong implementations of these functions with assert that will be
triggered if they are ever used (which doesn't seem to be the case so far).

See #12768.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66373 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-14 18:43:39 +00:00
Vadim Zeitlin
fc684792c6 Don't use implicit wxBitmapRefData copy ctor in wxGTK code.
wxBitmapRefData didn't have a proper copy ctor but the code in wxGTK wxBitmap
implementation used it nevertheless and then manually patched the newly copied
object to avoid double pointer deletion and other unpleasantness.

Make the code more obviously correct by not using (nor providing) copy ctor at
all. There are no real changes otherwise.

See #12768.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-14 18:43:32 +00:00
Vadim Zeitlin
51bf928d02 Fail instead of crashing in wxGTK wxCursor::CloneGDIRefData().
CloneGDIRefData() used wxCursorRefData copy ctor which wasn't implemented
correctly and simply copied its internal m_cursor member without incrementing
its reference count which resulted in a crash when it was then dereferenced
twice.

Unfortunately there doesn't seem to be any simple way to clone GDK cursors but
as this should be something only rarely (if ever?) needed, simply don't
implement CloneGDIRefData() at all for now and just leave an assert in it if
it's ever really called. Also don't define wxCursorRefData copy ctor at all as
it can't be done correctly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-14 18:43:25 +00:00
Vadim Zeitlin
5cb160c564 Improve wxImage handlers documentation, especially ownership aspect.
Correct wxImage::RemoveHandler() documentation which was plain wrong.

Also mention that the handler will be deleted by wxImage in AddHandler()
documentation.

And add an example of using AddHandler() as well as fix the broken text in
wxInitAllImageHandlers() description.

Closes #12772.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-14 18:43:17 +00:00
Vadim Zeitlin
d383f40e7b Preserve value when changing range of inverted wxSlider in wxMSW.
The logical value of wxSlider was changed when its range was changed in wxMSW
if the slider had wxSL_INVERSE style because the logical value was actually
computed using the range and the actual physical control value and we forgot
to update the latter when changing the range.

Do update it now in SetRange() to fix this.

Also add unit tests checking for this and, more generally, for other
operations with inversed sliders.

Closes #12765.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-13 18:10:02 +00:00
Jaakko Salli
bac635ede2 Have wxPropertyGrid::DoubleToString() to also take comma into account as a decimal separator. In addition, the function now returns target wxString (makes writing tests easier).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-13 16:07:49 +00:00
Jaakko Salli
0b4e4c3937 Added code to remove sign from zero in wxPropertyGrid::DoubleToString(). Fixes #12738.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-11 11:57:26 +00:00
Stefan Csomor
954c66fafc changing compositing mode for Clear, see #12756
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-11 11:48:38 +00:00
Stefan Csomor
54ea28348c adding support for layout coordinates via insets from framecoordinates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-07 15:46:12 +00:00
Stefan Csomor
2a2064f895 fixing redraw debugging
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-07 15:41:33 +00:00
Stefan Csomor
9cb50d3a2c attempt at making the line continuation characters stay correct
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-07 13:28:32 +00:00
Stefan Csomor
b7e15982d3 updating files list for iphone opengl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-07 10:11:53 +00:00
Stefan Csomor
9b0fdac056 updated comment was not saved in former commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-07 09:45:54 +00:00
Stefan Csomor
bacea49718 updated comment was not saved in former commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-07 09:10:02 +00:00
Stefan Csomor
5397ea5338 reverting content area calculation for iphone as translucent status bars get ignored otherwise
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-07 08:53:11 +00:00
Stefan Csomor
edb31724bc fixing osx iphone build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66332 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-04 13:34:19 +00:00
Stefan Csomor
0ef18b97a3 guarding compile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66331 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-04 13:33:45 +00:00
Stefan Csomor
f400feb528 adapting inheritance to other osx ports
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66330 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-04 13:33:20 +00:00
Stefan Csomor
b213ba752c guarding against non-implemented parts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-04 13:32:51 +00:00
Vadim Zeitlin
ef57807f27 Rename wxGenericDirCtrl::ExpandDir() to PopulateNode().
This function doesn't really expand anything (unlike CollapseDir()) so give it
a better name while keeping the old one too for compatibility.

See #12735.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 14:12:23 +00:00
Vadim Zeitlin
81ebc04192 Set the window in focus event sent by wxComboCtrl correctly.
The window parameter wasn't copied correctly in the forwarded event. Fix this
and avoid future problems of the same kind by using the copy ctor for creating
the new event and then override the fields that we need to change from the
original event instead of recreating the new event from bits and pieces of the
original one.

Closes #12741.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 14:00:31 +00:00
Vadim Zeitlin
cae374efb9 Update AUI bitmaps when its colours change.
Extract the bitmaps initialization in wxAuiDefaultDockArt::InitBitmaps() and
call it from SetColour() to ensure that the bitmaps are updated when the
colour scheme changes.

Closes #12532.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:40:28 +00:00
Vadim Zeitlin
a310c91c7c No changes, just clean up duplicate colour functions in wxAUI.
Reuse wxcolour::AlphaBlend() and ChangeLightness() methods instead of
duplicating them in wxAUI-specific wxAui{Blend,Step}Colour().

See #12532.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:40:23 +00:00
Vadim Zeitlin
c72fa1cd62 Update the directory icon in wxGenericDirCtrl::ExpandDir().
Calling ExpandDir() to notify the control that a new item was added in a
previously empty directory didn't work as wxTreeCtrl::SetItemHasChildren()
wasn't called.

Fix this by moving SetItemHasChildren() to ExpandDir() from OnExpandItem(), it
must be always done and not just in response to an interactive action.

Closes #12735.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:40:15 +00:00
Vadim Zeitlin
c892ae145c No changes, just clean up duplicate colour functions in wxSearchCtrl.
Use wxColor::ChangeLightness() instead of private wxStepColour() that
duplicates it.

Close #12744.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:40:08 +00:00
Vadim Zeitlin
4776c0b783 Optimize pixels rotation in wxImage::Rotate90().
Rotate the image by entire strips instead of doing it pixel by pixel.

This seems to result in about 50% performance gain.

Closes #12739.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:40:03 +00:00
Vadim Zeitlin
944f641cf9 Don't require leading TAB in wxAcceleratorEntry::FromString().
FromString() should parse string returned by ToString() successfully but this
wasn't the case because the accelerator parsing functions always insisted on
having a TAB in the string.

Fix this, document the string format and add a unit test checking for the
correct behaviour.

Closes #12745.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:39:57 +00:00
Vadim Zeitlin
238ecc7c52 Don't try to extract accelerators from menu items which don't have any.
We don't need to call wxAcceleratorEntry::Create() in wxMenuItem::GetAccel()
if the menu item doesn't have any accelerator at all, i.e. if there is no TAB
in its label.

Calling wxAcceleratorEntry::Create() is useless and won't work correctly any
more when Create() is updated to allow passing it strings without TAB in them
in the next commit.

See #12745.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:39:48 +00:00
Vadim Zeitlin
afa111d52c Fix wxRect::SetRightTop() which set the wrong corner.
SetRightTop() erroneously forwarded to SetTopLeft() instead of SetTopRight().

Closes #12746.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:39:43 +00:00
Vadim Zeitlin
9d6196a91e Mention in wxHashSet documentation that its contents is not sorted.
The documentation gave a wrong impression that this class was a std::set
replacement which it isn't.

See #12727.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-03 12:39:34 +00:00
Stefan Csomor
8915e40ce9 fixing missing return value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-01 07:42:13 +00:00
Paul Cornett
b61cc19c06 merge libpng 1.4.4 to trunk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-11-30 18:41:25 +00:00