mhotpiece.h

00001 
00002 #ifndef _MGNCS_HOT_PIECEC_H
00003 #define _MGNCS_HOT_PIECEC_H
00004 
00005 #ifdef __cplusplus
00006 extern "C" {
00007 #endif
00008 
00009 #include "piece-id.h"
00010 
00011 typedef struct _mHotPieceClass mHotPieceClass;
00012 typedef struct _mHotPiece mHotPiece;
00013 
00014 #define mHotPieceClassHeader(clss, superCls) \
00015         mObjectClassHeader(clss, superCls) \
00016         mHotPiece* (*hitTest)(clss *,  int x, int y); \
00017         void (*paint)(clss *, HDC hdc, mObject * owner, DWORD add_data); \
00018         int (*processMessage)(clss *, int message, WPARAM, LPARAM, mObject *owner); \
00019         BOOL (*setProperty)(clss *, int id, DWORD value); \
00020         DWORD(*getProperty)(clss *, int id); \
00021         BOOL (*enable)(clss *, BOOL benable); \
00022         BOOL (*isEnabled)(clss *); \
00023         BOOL (*setRenderer)(clss *, const char* rdr_name); \
00024         BOOL (*setRect)(clss *, const RECT * prc); \
00025         BOOL (*getRect)(clss *, RECT * prc);  \
00026         BOOL (*autoSize)(clss *, mObject *owner, const SIZE *pszMin, const SIZE *pszMax);
00027 
00028 struct _mHotPieceClass
00029 {
00030         mHotPieceClassHeader(mHotPiece, mObject)
00031 };
00032 
00033 MGNCS_EXPORT extern mHotPieceClass g_stmHotPieceCls;
00034 
00035 #define mHotPieceHeader(clss) \
00036         mObjectHeader(clss)
00037 
00038 struct _mHotPiece
00039 {
00040         mHotPieceHeader(mHotPiece)
00041 };
00042 
00043 typedef void (*PHotPieceRdrFunc)(mHotPiece*, HDC hdc, mObject* owner, DWORD add_data);
00044 
00045 
00046 #define SET_BIT(flag, mask)         ((flag)|=(mask))
00047 #define IS_BIT_SET(flag, mask)      (((flag)&(mask)) == (mask))
00048 #define CLEAR_BIT(flag, mask)       ((flag)&=~(mask))
00049 
00050 
00051 MGNCS_EXPORT mHotPiece * ncsNewPiece(mHotPieceClass *_class, DWORD add_data);
00052 #define NEWPIECEEX(Piece,add_data)   (Piece*)(ncsNewPiece((mHotPieceClass*)((void *)&(Class(Piece))),(DWORD)(add_data)))
00053 #define NEWPIECE(Piece)  NEWPIECEEX(Piece, 0)
00054 MGNCS_EXPORT void ncsDelPiece(mHotPiece* piece);
00055 #define DELPIECE(p)  ncsDelPiece((mHotPiece*)p)
00056 
00057 
00058 MGNCS_EXPORT void mHotPiece_update(mHotPiece *self, mObject *onwer, BOOL bUpdate);
00059 
00060 
00061 #ifdef __cplusplus
00062 }
00063 #endif
00064 
00065 #endif
00066 
00067 
Generated on Fri Jun 10 11:18:06 2011 for New Control Set V1.0.0 API Reference by  doxygen 1.6.3