#ifndef M_TOPTOOLBAR_H #define M_TOPTOOLBAR_H //button flags #define TTBBF_DISABLED 1 #define TTBBF_VISIBLE 2 #define TTBBF_PUSHED 4 #define TTBBF_SHOWTOOLTIP 8 #define TTBBF_DRAWBORDER 16//draw border for bitmap,bitmap must be WxH 16x12 #define TTBBF_ISSEPARATOR 32 //for internal launch buttons #define TTBBF_ISLBUTTON 64 typedef struct { int cbSize; HBITMAP hbBitmapUp; HBITMAP hbBitmapDown; char *pszServiceUp; char *pszServiceDown; DWORD dwFlags; LPARAM lParamUp; WPARAM wParamUp; LPARAM lParamDown; WPARAM wParamDown; char *name; } TTBButton, * lpTTBButton; typedef struct { int cbSize; HBITMAP hbBitmapUp; HBITMAP hbBitmapDown; char *pszServiceUp; char *pszServiceDown; DWORD dwFlags; LPARAM lParamUp; WPARAM wParamUp; LPARAM lParamDown; WPARAM wParamDown; char *name; HICON hIconUp,hIconDn; char *tooltipUp; char *tooltipDn; } TTBButtonV2, * lpTTBButtonV2; //=== EVENTS === /* toptoolbar/moduleloaded event wParam = lParam = 0 Called when the toolbar services are available !!!Warning you may work with TTB services only in this event or later. */ #define ME_TTB_MODULELOADED "TopToolBar/ModuleLoaded" //=== SERVICES === /* toptoolbar/addbutton service wparam = (TTBButton*)lpTTBButton lparam = 0 returns: hTTBButton - handle of added button on success, -1 on failure. */ #define MS_TTB_ADDBUTTON "TopToolBar/AddButton" /* toptoolbar/removebutton service wparam = (HANDLE)hTTButton lparam = 0 returns: 0 on success, -1 on failure. */ #define MS_TTB_REMOVEBUTTON "TopToolBar/RemoveButton" /* toptoolbar/setstate service wparam = (HANDLE)hTTButton lparam = (LPARAM) state returns: 0 on success, -1 on failure. */ #define TTBST_PUSHED 1 #define TTBST_RELEASED 2 #define MS_TTB_SETBUTTONSTATE "TopToolBar/SetState" /* toptoolbar/getstate service wparam = (HANDLE)hTTButton lparam = 0 returns: state on success, -1 on failure. */ #define MS_TTB_GETBUTTONSTATE "TopToolBar/GetState" /* toptoolbar/getoptions service (HIWORD)wparam = (HANDLE)hTTButton (LOWORD)wparam = TTBO_FLAG lparam = 0,or lparam=lpTTBButton if flag=TTBO_ALLDATA returns: value on success, -1 on failure. */ #define TTBO_FLAGS 0 //get/set all flags #define TTBO_POS 1 //position #define TTBO_WIDTH 2 //not impemented #define TTBO_HEIGHT 3 //not impemented #define TTBO_TIPNAME 4 //tool tip name #define TTBO_ALLDATA 5 //change all data via lparam=lpTTBButton #define MS_TTB_GETBUTTONOPTIONS "TopToolBar/GetOptions" /* toptoolbar/setoptions service (HIWORD)wparam = (HANDLE)hTTButton (LOWORD)wparam = TTBO_FLAG lparam = value returns: 1 on success, -1 on failure. */ #define MS_TTB_SETBUTTONOPTIONS "TopToolBar/SetOptions" #endif