/src/wxwidgets/include/wx/listimpl.cpp
Line | Count | Source (jump to first uncovered line) |
1 | | ///////////////////////////////////////////////////////////////////////////// |
2 | | // Name: wx/listimpl.cpp |
3 | | // Purpose: second-part of macro based implementation of template lists |
4 | | // Author: Vadim Zeitlin |
5 | | // Modified by: |
6 | | // Created: 16/11/98 |
7 | | // Copyright: (c) 1998 Vadim Zeitlin |
8 | | // Licence: wxWindows licence |
9 | | ///////////////////////////////////////////////////////////////////////////// |
10 | | |
11 | | #if wxUSE_STD_CONTAINERS |
12 | | |
13 | | #undef WX_DEFINE_LIST |
14 | | #define WX_DEFINE_LIST(name) \ |
15 | | void _WX_LIST_HELPER_##name::DeleteFunction( _WX_LIST_ITEM_TYPE_##name X )\ |
16 | | { \ |
17 | | delete X; \ |
18 | | } \ |
19 | | _WX_LIST_HELPER_##name::BaseListType _WX_LIST_HELPER_##name::EmptyList; |
20 | | |
21 | | #else // !wxUSE_STD_CONTAINERS |
22 | | #undef WX_DEFINE_LIST_2 |
23 | | #define WX_DEFINE_LIST_2(T, name) \ |
24 | | void wx##name##Node::DeleteData() \ |
25 | 0 | { \ |
26 | 0 | delete (T *)GetData(); \ |
27 | 0 | } Unexecuted instantiation: wxwxZipEntryList_Node::DeleteData() Unexecuted instantiation: wxwxTimerListNode::DeleteData() Unexecuted instantiation: wxwxAnyListNode::DeleteData() Unexecuted instantiation: wxwxVariantListNode::DeleteData() |
28 | | |
29 | | // redefine the macro so that now it will generate the class implementation |
30 | | // old value would provoke a compile-time error if this file is not included |
31 | | #undef WX_DEFINE_LIST |
32 | | #define WX_DEFINE_LIST(name) WX_DEFINE_LIST_2(_WX_LIST_ITEM_TYPE_##name, name) |
33 | | |
34 | | #endif // wxUSE_STD_CONTAINERS/!wxUSE_STD_CONTAINERS |
35 | | |