54 #ifndef _MGUI_NCSCTRL_ASTLST_H 55 #define _MGUI_NCSCTRL_ASTLST_H 83 #define NCSS_ASTLST_AUTOSORT (0x0001<<NCSS_SWGT_SHIFT) 89 #define NCSS_ASTLST_SHIFT (NCSS_SWGT_SHIFT+1) 91 static inline int _ncs_defcmp_node(
mNode *node1,
mNode *node2)
93 const char* str1 =
_c(node1)->getText(node1);
94 const char* str2 =
_c(node2)->getText(node2);
96 return strcasecmp(str1, str2);
99 #define mAbstractListHeader(clsName)\ 100 mScrollWidgetHeader(clsName) \ 101 NCS_CB_CMPNODE nodeCmp; \ 123 struct _mAbstractList
128 #define mAbstractListClassHeader(clsName, superCls) \ 129 mScrollWidgetClassHeader(clsName, superCls) \ 130 int (*addNode)(clsName*, mNode *node); \ 131 int (*insertNode)(clsName*, mNode *node, mNode *prev,mNode *next, int index);\ 132 int (*removeNode)(clsName*, mNode *node); \ 133 mNode* (*getNode)(clsName*, int index); \ 134 int (*indexOf)(clsName*, mNode *node); \ 135 BOOL (*isFrozen)(clsName*); \ 136 BOOL (*showNode)(clsName*, mNode *node); \ 137 void (*refreshNode)(clsName*, mNode *node, const RECT *rcInv); \ 138 mNode* (*findNode)(clsName*, DWORD info, int type, BOOL recursion, int startIndex); \ 140 BOOL (*setCurSel)(clsName*, int index); \ 141 mNode* (*getCurSel)(clsName*); \ 142 BOOL (*selectNode)(clsName*, mNode *node, BOOL select); \ 144 int (*getRect)(clsName*, mNode *node, RECT *rcNode, BOOL bConv); \ 145 void (*freeze)(clsName*, BOOL locked); \ 146 void (*sortNodes)(clsName*, NCS_CB_CMPNODE func, mNode *parentNode);\ 147 void (*notifyEvent)(clsName*, int eventId, DWORD eventInfo); 225 struct _mAbstractListClass
230 #define mAbstractListRendererHeader(clsName, parentClass) \ 231 mScrollWidgetRendererHeader(clsName, parentClass) 238 struct _mAbstractListRenderer {
290 NCSP_ASTLST_TEXTINDENT,
292 NCSP_ASTLST_IMAGEINDENT,
The virtual function table of mAbstractList, which derived from mScrollWidgetClass.
#define _c(ths)
the marco get the class of a object
The structure of mNode. It is the basic class of all nodes occur within specific controls. For example, a list can contain it.
The structure of mAbstractList renderer, which inheried from mScrollWidgetRenderer.
The structure of mAbstractList, which derived from mScrollWidget. It is the abstract superclass of al...