mledstaticpiece.h
00001 #ifdef _MGNCSCTRL_LEDLABEL
00002
00003 #ifndef _MGUI_NCSCTRL_LEDLABELPIECE_H
00004 #define _MGUI_NCSCTRL_LEDLABELPIECE_H
00005
00006 #ifdef __cplusplus
00007 extern "C" {
00008 #endif
00009
00010 typedef struct _mLedstaticPieceClass mLedstaticPieceClass;
00011 typedef struct _mLedstaticPiece mLedstaticPiece;
00012
00013 #define mLedstaticPieceClassHeader(clss, superCls) \
00014 mStaticPieceClassHeader(clss, superCls)
00015
00016 struct _mLedstaticPieceClass
00017 {
00018 mLedstaticPieceClassHeader(mLedstaticPiece, mStaticPiece)
00019 };
00020
00021 MGNCS_EXPORT extern mLedstaticPieceClass g_stmLedstaticPieceCls;
00022
00023 #define mLedstaticPieceHeader(clss) \
00024 mStaticPieceHeader(clss) \
00025 char *text; \
00026 unsigned int width:16; \
00027 unsigned int height:16; \
00028 DWORD color; \
00029 unsigned int format;
00030
00031 struct _mLedstaticPiece
00032 {
00033 mLedstaticPieceHeader(mLedstaticPiece)
00034 };
00035
00036 #define mLedstaticPiece_setFlag(self, bitmask) ((self)->format = (((bitmask) << 8) | (self->format & 0xFFFF00FF)))
00037 #define mLedstaticPiece_clearFlag(self, bitmask) (((self)->format) &= (~(bitmask << 8)))
00038 #define mLedstaticPiece_isFlag(self, bitmask) (((self->format) & (bitmask << 8)))
00039
00040 #define mLedstaticPiece_setAutoWrap(self, autoWrap) ((autoWrap)?mLedstaticPiece_setFlag(self, 0x1):mLedstaticPiece_clearFlag(self, 0x1))
00041 #define mLedstaticPiece_isAutoWrap(self) mLedstaticPiece_isFlag(self, 0x1)
00042
00043 enum mLedstaticPieceProps {
00044 NCSP_LEDLBLPIECE_TEXT = LEDLBLPIECE_PROP_BEGIN,
00045 NCSP_LEDLBLPIECE_COLOR,
00046 NCSP_LEDLBLPIECE_ALIGN = PIECECOMM_PROP_ALIGN,
00047 NCSP_LEDLBLPIECE_VALIGN = PIECECOMM_PROP_VALIGN,
00048 NCSP_LEDLBLPIECE_AUTOWRAP = PIECECOMM_PROP_AUTOWRAP,
00049 NCSP_LEDLBLPIECE_WIDTH,
00050 NCSP_LEDLBLPIECE_HEIGHT,
00051 NCSP_LEDLBLPIECE_GAP,
00052 };
00053
00054 #ifdef __cplusplus
00055 }
00056 #endif
00057
00058 #endif
00059 #endif //_MGNCSCTRL_LEDLABEL