52 #ifndef __MGNCS4TOUCH_PCK_H__
53 #define __MGNCS4TOUCH_PCK_H__
59 #define NCSCTRL_PICKER NCSCLASSNAME("picker")
61 typedef struct _mPicker mPicker;
62 typedef struct _mPickerClass mPickerClass;
63 typedef struct _mPickerRenderer mPickerRenderer;
65 #define mPickerHeader(clsName) \
66 mAnimationHeader(clsName) \
67 PRIVATE MGEFF_ANIMATION handle; \
71 PRIVATE unsigned char itemAlign; \
72 PRIVATE unsigned int hMargin; \
73 PRIVATE unsigned int vMargin; \
74 PUBLIC unsigned int itemVisible; \
75 PUBLIC int maxValue; \
76 PUBLIC int minValue; \
77 PUBLIC unsigned int span; \
78 PUBLIC unsigned int numBits; \
79 PUBLIC unsigned int showBits; \
83 mPickerHeader(mPicker)
86 #define mPickerClassHeader(clsName, parentClass) \
87 mAnimationClassHeader(clsName, parentClass) \
88 PRIVATE void (*runAnimation)(clsName*, float startvalue, float endvalue); \
89 PRIVATE void (*endAnimation)(clsName*); \
90 PUBLIC BOOL (*addItem)(clsName*, int index, const char* string); \
91 PUBLIC BOOL (*addItems)(clsName*, const char** strings, int len); \
92 PUBLIC BOOL (*rmItem)(clsName*, int index); \
93 PUBLIC BOOL (*setRange)(clsName*, int min, int max); \
94 PUBLIC BOOL (*setSpan)(clsName*, int span); \
95 PUBLIC void (*enableItems)(clsName*, int idxFrom, int count); \
96 PUBLIC void (*disableItems)(clsName*, int idxFrom, int count);
98 struct _mPickerClass {
102 #define mPickerRendererHeader(clsName, parentClass) \
103 mAnimationRendererHeader(clsName, parentClass)
105 struct _mPickerRenderer {
109 #define NCSS_PCK_NUMBER (0x01 << NCSS_ICONV_SHIFT)
110 #define NCSS_PCK_STRINGS (0x02 << NCSS_ICONV_SHIFT)
111 #define NCSS_PCK_LOOP (NCSS_ICONV_LOOP)
113 #define NCSS_PCK_LRC (0x04 << NCSS_ICONV_SHIFT)
115 #define NCSS_PCK_RRC (0x08 << NCSS_ICONV_SHIFT)
117 #define NCSS_PCK_BRC (0x10 << NCSS_ICONV_SHIFT)
119 #define NCSS_PCK_SHIFT (NCSS_ICONV_SHIFT + 5)
122 NCSP_PCK_ALIGN = NCSP_ICONV_MAX + 1,
129 NCSP_PCK_SHOWBERBITS,
134 NCSN_PCK_SELCHANGED = NCSN_ICONV_MAX + 1,
140 MTOUCH_EXPORT
extern mPickerClass g_stmPickerCls;