msimplelistpiece.h
00001 #ifdef _MGNCSCTRL_IMWORDSEL
00002
00003 #ifndef _MGUI_SIMPLE_LIST_H
00004 #define _MGUI_SIMPLE_LIST_H
00005
00006 #ifdef __cplusplus
00007 extern "C" {
00008 #endif
00009
00010 typedef struct _mSimpleListPieceClass mSimpleListPieceClass;
00011 typedef struct _mSimpleListPiece mSimpleListPiece;
00012
00013 #define mSimpleListPieceClassHeader(clss, superCls) \
00014 mContainerPieceClassHeader(clss, superCls) \
00015 void (*reset)(clss*, void(*free_piece)(mHotPiece*));
00016
00017
00018 #define mSimpleListPieceHeader(clss) \
00019 mContainerPieceHeader(clss) \
00020 mLineLayoutPieceNode * cur_node;
00021
00022 struct _mSimpleListPieceClass {
00023 mSimpleListPieceClassHeader(mSimpleListPiece, mContainerPiece)
00024 };
00025
00026 struct _mSimpleListPiece {
00027 mSimpleListPieceHeader(mSimpleListPiece)
00028 };
00029
00030 extern mSimpleListPieceClass g_stmSimpleListPieceCls;
00031
00032 enum mSimpleListPieceProps {
00033 NCSP_SIMPLELISTPIECE_CURINDEX = SIMPLELISTPIECE_PROP_BEGIN,
00034 };
00035
00036 enum mSimpleListPieceEvent {
00037 NCSN_SIMPLELISTPIECE_REACHHEAD = SIMPLELISTPIECE_EVENT_BEGIN,
00038 NCSN_SIMPLELISTPIECE_REACHTAIL,
00039 NCSN_SIMPLELISTPIECE_CHANGED
00040 };
00041
00042 #define mSimpleListPiece_getLineLayout(slp) \
00043 ((mLineLayoutPiece*)((slp)?(slp)->body:NULL))
00044
00045
00046 #ifdef __cplusplus
00047 }
00048 #endif
00049
00050
00051 #endif
00052 #endif //_MGNCSCTRL_IMWORDSEL
00053
00054