Jaakko Salli
0cc226ad75
Use scoped ptrs to managed wxAnyValueType instances. This fixes deallocation issues in some dynamic library use cases.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-30 13:32:41 +00:00
Jaakko Salli
d1358fcbd7
Added parenthesis around macro arguments
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-22 14:06:00 +00:00
Jaakko Salli
153107b402
Allow wxAny to contain 'const char*' or 'const wchar_t*'. This was previously not possible since these pointers were converted to wxString, as convenient means to work with string literals. Now pointers (to string literals) are stored instead, and As<wxString>(), comparison operators do the type conversion.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-22 13:51:38 +00:00
Jaakko Salli
49efebe247
Fix VC6 compilation by changing the order of assignment operators in wxAny
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-20 12:55:34 +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
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
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
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
Jaakko Salli
1237a25bc4
Resolve GCC's 'type-punned pointer will break strict-aliasing rules' warning by breaking up code in wxAny GetValue() and SetValue() functions into several lines ( fixes #11865 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-04 15:22:43 +00:00
Paul Cornett
2a32b8071b
check for self assignment in operator=
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-02 16:36:50 +00:00
Jaakko Salli
7db064f60f
Added typeinfo.h which implements wxTypeId, using C++ RTTI if available. wxAny and Unbind<>() code are updated to use it. Added and updated related unit tests.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-19 19:27:24 +00:00
Jaakko Salli
c5fe6a5bee
Added wxDECLARE_ANY_TYPE(CLS, DECL) and documented for what kind of situation it is intended: wxAny used across DLL and EXE boundaries.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-10-03 10:43:21 +00:00
Jaakko Salli
24985a9b5b
Removed dst buffer delete responsibility from wxAnyValueType::CopyBuffer(), clarified documentation regarding it.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-29 13:38:20 +00:00
Jaakko Salli
ca5a36146e
Use long double instead of double in wxAnyValueBuffer, moved alignment-specific values into sub-union
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-27 16:30:26 +00:00
Jaakko Salli
62d7be2066
Added function and member function pointers in wxAnyValueBuffer to make memory alignment problems even less likely.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-27 15:28:06 +00:00
Jaakko Salli
0411067998
Make sure there are no memory alignment issues with wxAnyValueBuffer
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-27 14:52:34 +00:00
Vadim Zeitlin
45de347c10
Put wxAny implementation entirely in the header.
...
This allows to remove WXDLLIMPEXP_BASE from the class declaration and should
hopefully fix VC6 linking errors when building the unit test.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-20 12:37:16 +00:00
Vadim Zeitlin
0193727824
Add curly braces around wxFAIL_MSG() to avoid g++ 4.3 warning.
...
g++ 4.3 warns about lack of explicit braces to make it happy.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-19 16:29:42 +00:00
Vadim Zeitlin
39601a7f74
Set svn properties correctly for the newly added files.
...
Set svn:keyword and, most importantly, svn:eol-style, to avoid having files
with DOS line endings in svn, for the new files added by r61971.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-19 15:41:08 +00:00
Jaakko Salli
178c77606f
wxAny initial commit ( closes #10932 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-19 08:51:11 +00:00