mGNCS API Reference
v1.5.0
A new control set and a new framework for MiniGUI apps
|
Go to the documentation of this file.
54 #ifndef _MGUI_CTRL_ITEMMANAGER_H
55 #define _MGUI_CTRL_ITEMMANAGER_H
67 typedef struct _mItemManagerRenderer mItemManagerRenderer;
86 typedef int (*NCS_CB_CMPSTR) (
const char* s1,
const char* s2,
size_t n);
92 #define NCSF_ITMMNG_AUTOSORT (0x01<<NCSF_ITEM_SHIFT)
98 #define NCSF_ITMMNG_FROZEN (0x02<<NCSF_ITEM_SHIFT)
104 #define NCSF_ITMMNG_SHIFT (NCSF_ITEM_SHIFT+2)
107 #define mItemManagerHeader(className) \
108 mItemHeader(className) \
109 NCS_CB_CMPITEM itemCmp; \
113 HITEM pItemHilighted; \
116 NCS_CB_CMPSTR strCmp;
152 #define mItemManagerClassHeader(clsName, superCls) \
153 mItemClassHeader(clsName, superCls) \
154 NCS_CB_CMPITEM (*setItemCmpFunc)(clsName*, NCS_CB_CMPITEM func); \
155 int (*moveItem)(clsName*, mItem *curItem, int count, mItem* prevItem); \
156 int (*insertItem)(clsName*, HITEM hItem, HITEM prev, HITEM next, int index, int *pos); \
157 HITEM (*createItem)(clsName*, HITEM prev, HITEM next, int index, int *pos); \
158 int (*inItem)(clsName*, int mouseX, int mouseY, HITEM *pRet, POINT *pt); \
159 NCS_CB_CMPSTR (*setStrCmpFunc)(clsName*, NCS_CB_CMPSTR func); \
160 NCS_CB_CMPSTR (*getStrCmpFunc)(clsName*); \
161 int (*getItemYPos)(clsName*, HITEM hItem); \
162 void (*setAutoSortItem) (clsName*, BOOL sort); \
163 int (*getTotalHeight)(clsName*); \
164 int (*adjustItemsHeight)(clsName*, int diff); \
165 BOOL (*freeze)(clsName*, BOOL lock); \
166 BOOL (*isFrozen)(clsName*); \
167 HITEM (*getFirstItem)(clsName*); \
168 list_t* (*getQueue)(clsName*); \
169 HITEM (*getListEntry)(list_t* entry); \
170 int (*isEmpty)(clsName*); \
171 int (*removeItem)(clsName*, HITEM hItem); \
172 int (*sortItems)(clsName*, NCS_CB_CMPITEM pfn); \
173 BOOL (*removeAll)(clsName*); \
174 int (*indexOf)(clsName*, HITEM hItem); \
175 int (*setHeight)(clsName*, HITEM hItem, int height); \
176 int (*getHeight)(clsName*, HITEM hItem); \
177 HITEM (*getItem)(clsName*, int index); \
178 HITEM (*getNext)(clsName*, HITEM hItem); \
179 HITEM (*getPrev)(clsName*, HITEM hItem); \
180 BOOL (*isSelected)(clsName*, HITEM hItem); \
181 BOOL (*isEnabled)(clsName*, HITEM hItem); \
182 BOOL (*enable)(clsName*, HITEM hItem, BOOL enable); \
183 void (*selectAll)(clsName*); \
184 void (*deselectAll)(clsName*); \
185 BOOL (*select)(clsName*, HITEM hItem, BOOL sel); \
186 HITEM (*hilight)(clsName*, HITEM hItem); \
187 HITEM (*getHilight)(clsName*); \
188 BOOL (*isHilight)(clsName*, HITEM hItem); \
189 int (*getItemCount)(clsName*); \
190 void (*setAddData)(clsName*, HITEM hItem, DWORD addData); \
191 void (*setImage)(clsName*, HITEM hItem, DWORD image); \
192 DWORD (*getAddData)(clsName*, HITEM hItem); \
193 DWORD (*getImage)(clsName*, HITEM hItem); \
194 void (*setFlags)(clsName*, HITEM hItem, DWORD flags); \
195 DWORD (*getFlags)(clsName*, HITEM hItem); \
196 BOOL (*setText)(clsName*, HITEM hItem, const char* text); \
197 const char* (*getText)(clsName*, HITEM hItem); \
198 int (*getTextLen)(clsName*, HITEM hItem); \
199 BOOL (*getSelection)(clsName*, HITEM *pRet, int count); \
200 int (*getSelectionCount)(clsName*);
415 struct _mItemManagerClass
The virtual function table of mItemManager, which derived from mItemClass.
The structure of mItemManager control, which derived from mItem. It is the abstract superclass of all...
The structure of mItem. It is the abstract superclass of all items occur within specific controls....