marked the most important backwards incompatible changes with an exclamantion sign
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -4,13 +4,17 @@ wxWindows 2 Change Log
|
|||||||
INCOMPATIBLE CHANGES SINCE 2.2.x
|
INCOMPATIBLE CHANGES SINCE 2.2.x
|
||||||
================================
|
================================
|
||||||
|
|
||||||
|
Please take a few minutes to read the following list, especially
|
||||||
|
paying attention to the most important changes which are marked
|
||||||
|
with '!' in the first column.
|
||||||
|
|
||||||
wxBase:
|
wxBase:
|
||||||
|
|
||||||
- wxArray<T>::Remove(size_t) has been removed to fix compilation problems
|
! wxArray<T>::Remove(size_t) has been removed to fix compilation problems
|
||||||
under 64 bit architectures, please replace it with RemoveAt() in your
|
under 64 bit architectures, please replace it with RemoveAt() in your
|
||||||
code.
|
code.
|
||||||
|
|
||||||
- wxArray<T> macros have been changed to fix runtime problems under 64 bit
|
! wxArray<T> macros have been changed to fix runtime problems under 64 bit
|
||||||
architectures and as a side effect of this WX_DEFINE_ARRAY() can only be
|
architectures and as a side effect of this WX_DEFINE_ARRAY() can only be
|
||||||
used now for the pointer types, WX_DEFINE_ARRAY_INT should be used for the
|
used now for the pointer types, WX_DEFINE_ARRAY_INT should be used for the
|
||||||
arrays containing non-pointers.
|
arrays containing non-pointers.
|
||||||
@@ -22,10 +26,6 @@ wxBase:
|
|||||||
by all derived classes, if you have user-defined event classes please
|
by all derived classes, if you have user-defined event classes please
|
||||||
add "wxEvent *Clone() const { return new MyEvent(*this); }" line to them
|
add "wxEvent *Clone() const { return new MyEvent(*this); }" line to them
|
||||||
|
|
||||||
- wxCondition now must be used with a mutex, please read the (updated) class
|
|
||||||
documentation for details and revise your code accordingly: this change was
|
|
||||||
unfortunately needed as the old class didn't behave correctly in all cases
|
|
||||||
|
|
||||||
- small change to wxStopWatch::Pause() semantics, please see the documentation
|
- small change to wxStopWatch::Pause() semantics, please see the documentation
|
||||||
|
|
||||||
- unlikely but possible incompatibility: the definition of TRUE has changed
|
- unlikely but possible incompatibility: the definition of TRUE has changed
|
||||||
@@ -36,7 +36,7 @@ wxBase:
|
|||||||
|
|
||||||
All (GUI):
|
All (GUI):
|
||||||
|
|
||||||
- the event type constants are not constants any more but are dynamically
|
! the event type constants are not constants any more but are dynamically
|
||||||
allocated during run-time which means that they can't be used as case labels
|
allocated during run-time which means that they can't be used as case labels
|
||||||
in the switch()es, you must rewrite them to use if()s instead
|
in the switch()es, you must rewrite them to use if()s instead
|
||||||
|
|
||||||
@@ -44,10 +44,14 @@ All (GUI):
|
|||||||
but this is strongly discouraged, please consider changing your codei
|
but this is strongly discouraged, please consider changing your codei
|
||||||
instead!
|
instead!
|
||||||
|
|
||||||
- wxDialog does not derive from wxPanel any longer - if you were using it in
|
! wxDialog does not derive from wxPanel any longer - if you were using it in
|
||||||
your code, please update it. The quick fix for the most cases is to replace
|
your code, please update it. The quick fix for the most cases is to replace
|
||||||
the occurences of wxPanel with wxWindow.
|
the occurences of wxPanel with wxWindow.
|
||||||
|
|
||||||
|
! if you handle (and don't skip) EVT_KEY_DOWN, the EVT_CHAR event is not
|
||||||
|
generated at all, so you must call event.Skip() in your OnKeyDown() if
|
||||||
|
you want to get OnChar() as well
|
||||||
|
|
||||||
- wxYES_NO is now wxYES | wxNO and the manifest values of both wxYES and wxNO
|
- wxYES_NO is now wxYES | wxNO and the manifest values of both wxYES and wxNO
|
||||||
have changed (to fix some unfortunate clashes), please check your code to
|
have changed (to fix some unfortunate clashes), please check your code to
|
||||||
ensure that no tests for wxYES or wxNO are broken: for example, the following
|
ensure that no tests for wxYES or wxNO are broken: for example, the following
|
||||||
@@ -60,9 +64,6 @@ All (GUI):
|
|||||||
|
|
||||||
- wxGLCanvas now derives directly from wxWindow, not wxScrolledWindow
|
- wxGLCanvas now derives directly from wxWindow, not wxScrolledWindow
|
||||||
|
|
||||||
- if you handle (and don't skip) EVT_KEY_DOWN, the EVT_CHAR event is not
|
|
||||||
generated at all
|
|
||||||
|
|
||||||
- wxGridCellAttrProvider class API changed, you will need to update your code
|
- wxGridCellAttrProvider class API changed, you will need to update your code
|
||||||
if you derived any classes from it
|
if you derived any classes from it
|
||||||
|
|
||||||
@@ -82,7 +83,7 @@ All (GUI):
|
|||||||
|
|
||||||
wxMSW:
|
wxMSW:
|
||||||
|
|
||||||
- build system changed: setup.h is not a static file in include/wx any more
|
! build system changed: setup.h is not a static file in include/wx any more
|
||||||
but is created as part of the build process under lib/<toolkit>/wx/include
|
but is created as part of the build process under lib/<toolkit>/wx/include
|
||||||
where <toolkit> is of the form (msw|univ)[dll][u][d]. You'll need to update
|
where <toolkit> is of the form (msw|univ)[dll][u][d]. You'll need to update
|
||||||
the include path in your make/project files appropriately. Furthermore,
|
the include path in your make/project files appropriately. Furthermore,
|
||||||
@@ -106,12 +107,32 @@ wxMSW:
|
|||||||
|
|
||||||
Unix ports:
|
Unix ports:
|
||||||
|
|
||||||
- You should use `wx-config --cxxflags` in your makefiles instead of
|
! You should use `wx-config --cxxflags` in your makefiles instead of
|
||||||
`wx-config --cflags` for compiling C++ files. CXXFLAGS contains CFLAGS
|
`wx-config --cflags` for compiling C++ files. CXXFLAGS contains CFLAGS
|
||||||
and the compiler flags for C++ files only, CFLAGS should still be used
|
and the compiler flags for C++ files only, CFLAGS should still be used
|
||||||
to compile pure C files.
|
to compile pure C files.
|
||||||
|
|
||||||
|
|
||||||
|
wxThread and related classes:
|
||||||
|
|
||||||
|
- The thread-related classes have been heavily changed since 2.2.x versions
|
||||||
|
as the old code had many serious problems. This could have resulted in
|
||||||
|
semantical changes other than those mentioned here, please review use of
|
||||||
|
wxThread, wxMutex and wxCondition classes in your code.
|
||||||
|
|
||||||
|
! wxCondition now *must* be used with a mutex, please read the (updated) class
|
||||||
|
documentation for details and revise your code accordingly: this change was
|
||||||
|
unfortunately needed as it was impossible to ensure the correct behaviour
|
||||||
|
(i.e. absense of race conditions) using the old API.
|
||||||
|
|
||||||
|
- wxMutex is not recursive any more in POSIX implementation (it hasn't been
|
||||||
|
recursive in 2.2.x but was in 2.3.1 and 2.3.2), please refer to the class
|
||||||
|
documentation for the discussion of the recursive mutexes.
|
||||||
|
|
||||||
|
- wxMutex::IsLocked() doesn't exist any more and should have never existed:
|
||||||
|
this is was unique example of a thread-unsafe-by-design method.
|
||||||
|
|
||||||
|
|
||||||
OTHER CHANGES
|
OTHER CHANGES
|
||||||
=============
|
=============
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user