Commit Graph

13922 Commits

Author SHA1 Message Date
Stefan Csomor
2f30930a09 streamlining code for extra controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-18 13:17:16 +00:00
Jaakko Salli
0aaed451fd Fix wxAny for VC6 by removing 'wxAny& operator=(const wxVariant &variant)' for it. This will break some cases of implicit wxVariant->wxAny conversion (for VC6).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64022 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-18 11:15:26 +00:00
Vadim Zeitlin
cdc48273b4 Fix bug with using uninitialized flags in GetParentForModalDialog().
GetParentForModalDialog() was called from the ctor initialized list before
m_windowStyle could be initialized by the base class ctor in several different
places, meaning that the check for wxDIALOG_NO_PARENT in this function was
using uninitialized variable.

Fix this by passing the style parameter explicitly to this function to allow
using it from derived class ctors. Still keep an overload which uses the
actual window parent and flags which is simpler to use for later calls to this
function.

Thanks valgrind for finding this one.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-18 00:05:37 +00:00
Robert Roebling
2a227e8c9f Added virtual destructor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-17 12:34:32 +00:00
Jaakko Salli
901abd5953 Removed two instances of 'template<>' - looks like VC6 did not need it after all, but was just really picky about the order of constructors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-17 12:03:18 +00:00
Jaakko Salli
ea412ac4eb Fixed VC6 compilation - wxAny(const wxVariant&) ctor required a specific 'template<>')
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-17 08:59:13 +00:00
Vadim Zeitlin
d15946384a Don't define wxADJUST_MINSIZE if it had been already defined.
Defining wxADJUST_MINSIZE as 0 may be a simple way to make the old code to
compile and while it works without WXWIN_COMPATIBILITY_2_8 it paradoxically
doesn't work with it because this results in errors when wxADJUST_MINSIZE is
defined as 0 by wx itself.

Avoid this problem by only defining wxADJUST_MINSIZE ourselves if it hadn't
been defined yet.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 20:52:59 +00:00
Vadim Zeitlin
e79f02bdde Add wxToolBar::GetToolByPos() method to access tools by their index.
This is a trivial accessor which somehow was never added before even though we
had GetToolsCount() and even DeleteToolByPos().

Closes #11120.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 20:52:53 +00:00
Václav Slavík
1be1262444 Fix build breakage caused by bConvertEncoding deprecation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 20:09:00 +00:00
Jaakko Salli
4e0bdd562d Adapted wxPropertyGrid documentation, samples, tests, and wxVariantData-macros to the new wxAny<->wxVariant conversions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 14:36:32 +00:00
Jaakko Salli
0bf14ab8b1 wxVariant <-> wxAny conversion functionality. Includes implicit construction of wxAny from wxVariant, and vice versa. wxVariant->wxAny conversion is implemented by adding new virtual member function into wxVariantData. wxAny->wxVariant conversion is implemented by associating wxAnyValueTypes with functions that generate wxVariantData instances (using a hash map).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 14:33:52 +00:00
Vadim Zeitlin
3017880eff Don't rely on __GXX_RTTI being defined with g++ < 4.3.
__GXX_RTTI is only defined since g++ 4.3.2 and so we can't rely on its absence
as indicating the use of -fno-rtti switch with the older versions of the
compiler, only do this for g++ 4.3+.

Also define wxNO_RTTI from configure if --enable-no_rtti was used as we can't
always detect it automatically.

Closes #11955.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 12:44:30 +00:00
Václav Slavík
3acf8a8d9b Remove wxLOCALE_CONV_ENCODING flag.
This doesn't affect Unicode builds, only the legacy ANSI one.

PO files are now always converted to the appropriate charset according
to current locale. This was the default behavior for long time; not
doing the conversion was always a fragile hack that didn't work well.
Removing this flag simplifies wxLocale code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 11:29:22 +00:00
Václav Slavík
f30bd8f262 Add wxLOCALE_DONT_LOAD_DEFAULT (=0) for clarity.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 11:29:09 +00:00
Václav Slavík
8d94819c43 Remove wxUSE_WCHAR_T checks.
wxWidgets requires wchar_t for some time now; wx/chartype.h has a check
to fail complation without it. Simplify code by removing now-dead code
for the !wxUSE_WCHAR_T case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 10:43:18 +00:00
Stefan Csomor
bc5c09a3aa translating background style BG_PAINT into opaqueness for speed-up of OS redraws, supporting positioning for native carbon controls also on non-composited windows (custom pane in navservices dialogs)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 06:18:16 +00:00
Vadim Zeitlin
7f2468e96a Fix using weak references to incomplete classes.
wxWeakRef can work with forward-declared classes provided dynamic_cast<> is
available but this wasn't detected as being the case due to the use of the
obsolete HAVE_DYNAMIC_CAST in its code.

Replace HAVE_DYNAMIC_CAST with !wxNO_RTTI to fix this.

Also add a unit test checking that this does work.

Closes #11916.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-15 22:47:37 +00:00
Stefan Csomor
7d53220e14 fixing constants to be of the expected parameter type (float instead of double)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-14 12:16:42 +00:00
Stefan Csomor
61ad44c7a9 adding support for extraControl on osx_carbon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-13 20:27:04 +00:00
Stefan Csomor
17e2694c59 adding wrapping possibility for native tlws
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-13 20:24:59 +00:00
Stefan Csomor
b61b8371b0 correcting alpha and removing window shadow for overlay
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-12 20:39:51 +00:00
Stefan Csomor
59d866ad85 name change to correctly reflect the autorelease nature of the methods, removing double release, fixes #11547, fixes #11760
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-12 16:29:35 +00:00
Vadim Zeitlin
946ceed9cd Fix VC6 compilation which was somehow broken by adding wxWeakRef ctor.
For some mysterious reason, adding non-template wxWeakRef ctor breaks VC6
build with the apparently completely unrelated errors:

include\wx/toplevel.h(223) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'class wxWindow *' (or there is no acceptable conversion)
include\wx/toplevel.h(231) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'class wxWindow *' (or there is no acceptable conversion)
src\common\dummy.cpp(27) : error C2856: #pragma hdrstop cannot be inside an #if block

Simply don't define it for VC6 to at least allow the code not using wxWeakRef
to compile.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-12 13:08:01 +00:00
Stefan Csomor
82f8ea8547 change grow box implementation - was incorrectly getting the focus in panels before
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-12 11:59:47 +00:00
Vadim Zeitlin
476de5ea9a Fix crash in wxListbook if image list is assigned after adding pages.
The generic wxListCtrl didn't properly support switching between report and
non-report modes without invalidating the control contents, the required in
non report view geometry info pointers were not allocated when the control was
switched to a, say, list mode and not created in it.

Fix this by updating all list control lines when the report mode changes.

Closes #11698.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-12 00:37:08 +00:00
Vadim Zeitlin
8dd13d0fa1 Fix return value of wxList::insert() in non-STL builds.
The returned value was the same as the iterator that was passed in which could
even be invalid when appending.

Fix the wrong use of postfix decrement instead of prefix one and handle the
case of appending correctly.

Closes #11808.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-12 00:36:36 +00:00
Vadim Zeitlin
89e1de6441 Fix compilation of wxIconBundle in some particular minimal builds.
Let the code compile when wxUSE_STREAMS==1 but wxUSE_FILE and wxUSE_FFILE are
both 0.

Closes #10900.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-12 00:36:31 +00:00
Vadim Zeitlin
d8eff331e2 Use template class instead of template function in wxVectorSort().
This allows the code to compile with VC6 which has trouble with explicit
specification of the template functions instantiation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-11 17:38:01 +00:00
Jaakko Salli
5caf524dff Fixed typo in documentation string
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-11 13:20:10 +00:00
Vadim Zeitlin
e3ab69523b Add wxString::ToStdString() and ToStdWstring().
These trivial helper functions are available in all builds (provided that
wxUSE_STD_STRING is not explicitly set to non-default 0 value) unlike implicit
conversions to std::[w]string which are only available when wxUSE_STL==1.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-11 11:08:49 +00:00
Stefan Csomor
13f0c85aa4 cocoa implementation for overlay
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-11 09:26:31 +00:00
Vadim Zeitlin
43aecc4dd7 Add non-template wxWeakRef<T> constructor from T*.
We need a non-template ctor to make the code initializing wxWeakRef with
literal NULL to compile.

Closes #11916.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-10 18:13:29 +00:00
Vadim Zeitlin
fc4e23d7c1 Add wxWeakRef::element_type, remove unnecessary assignment operator.
Define element_type for consistency with other classes (wxSharedPtr, weak_ptr)
and to allow accessing the type from the template code.

Also remove the apparently unnecessary template assignment operator:
assignment from an expression convertible to type T* works even without it and
while assigning something implicitly convertible to T* wouldn't work now, it's
for the best as we don't want to rely on such implicit conversions.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-10 18:13:23 +00:00
Vadim Zeitlin
90fbb09ae2 Add wxImage::ClearAlpha().
This simple method can be used to remove alpha channel from the image.

See #10915.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-09 13:15:20 +00:00
Václav Slavík
a9d41efb74 Add system libs in msvc/wx/setup.h too.
This makes it possible to use static build of wx from VC++ by just
including its headers. Even though it's common to have these libs in
your settings, it's not always the case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-09 06:55:19 +00:00
Stefan Csomor
03c281617c trying to simplify and optimize font handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-08 21:39:14 +00:00
Stefan Csomor
7eb8aeb8b1 using statically allocated font objects for speedup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-08 18:47:41 +00:00
Stefan Csomor
cfb0ef701e allowing direct native tlw modal loops
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-08 09:46:36 +00:00
Robin Dunn
0a492dbe7a #include <algorithm>
to fix problem in PCH-less STL builds

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-07 22:23:45 +00:00
Robin Dunn
068c8da4a8 (blind) fix for buildbot breakage with MSVC 6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-07 21:56:08 +00:00
Robin Dunn
38723be1d5 Add wxVectorSort function for sorting wxVector<T> containers. Closes #11889
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-07 20:32:25 +00:00
Vadim Zeitlin
e793ec1449 Fix wxGTK compilation after r63880.
SendTextUpdatedEvent() needs to be public as it's called from GTK callback.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 23:51:13 +00:00
Francesco Montorsi
2febffbac7 fix typos introduced by error in r63870 (see #10673)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 22:51:11 +00:00
Vadim Zeitlin
356fd0b532 Add wxTextEntryBase::ForwardEnableTextChangedEvents().
Use this method to forward the status of text events in the implementation of
wxComboBox in wxOSX/Carbon. This ensures that the events are correctly [not]
generated when various wxComboBox methods are called.

The unit tests now also pass with wxOSX/Carbon.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 18:46:35 +00:00
Vadim Zeitlin
e567904ae6 Fix text text changed events sending in OS X combo box and text control.
Don't duplicate needlessly wxTextEntry functionality in wxTextCtrl.

Don't clear the combobox text entry part twice in wxComboBox::DoClear(), it is
supposed to only clear the item container contents as the base class Clear()
already calls wxTextEntry::Clear().

Do send text updated events from wxTextEntry itself as it applies to
wxComboBox just as well as to wxTextCtrl.

The unit tests now pass under wxOSX/Cocoa, not breaking them again would be
appreciated.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 18:46:29 +00:00
Vadim Zeitlin
501358073b Move SendTextUpdatedEvent() down to wxTextEntryBase from wxTextCtrlBase.
This will allow reusing it in wxComboBox implementation as well.

Also add SendTextUpdatedEventIfAllowed() which can be used to only send the
events if they were not blocked at wxTextEntry level.

No real changes otherwise.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 18:46:24 +00:00
Vadim Zeitlin
005ac806ea Remove duplicated GetTextPeer() definitions from derived classes.
GetTextPeer() may be implemented directly in wxTextEntry under OS X, there is
no need to define it (identically) in wxTextCtrl and wxComboBox.

Also just call this method instead of duplicating its code in wxOSX
wxTextCtrl.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 18:46:14 +00:00
Stefan Csomor
ac349b6e66 adding clipboard events, fixes #11906
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 16:51:12 +00:00
Vadim Zeitlin
b2edb8f3c5 Add support for IEC and SI size units to wxFileName::GetHumanReadableSize().
Allow choosing the multiplier to use (1000 or 1024) and the names of the units
(SI or IEC). By default, still use traditional convention, i.e. multiplier of
1024 but SI unit names. This will probably need to be changed to use IEC units
in the future.

Also added unit test for this function.

Closes #10673.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 14:53:04 +00:00
Vadim Zeitlin
2028c33ab5 Add default constructor to wxGraphicsGradientStop.
It may be convenient to create wxGraphicsGradientStop first and initialize it
later so allow doing this by providing the default argument for constructor
parameters and thus allowing to use it as the default constructor.

See #11897.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-06 13:55:35 +00:00