From cb4a46e7fbe62d788e66ed6121c717a2d22a4d7c Mon Sep 17 00:00:00 2001 From: watcherhd Date: Thu, 21 Apr 2011 14:14:52 +0000 Subject: svn.miranda.im is moving to a new home! git-svn-id: http://miranda-plugins.googlecode.com/svn/trunk@7 e753b5eb-9565-29b2-b5c5-2cc6f99dfbcb --- useactions/ExternalAPI/m_msg_buttonsbar.h | 120 ++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 useactions/ExternalAPI/m_msg_buttonsbar.h (limited to 'useactions/ExternalAPI/m_msg_buttonsbar.h') diff --git a/useactions/ExternalAPI/m_msg_buttonsbar.h b/useactions/ExternalAPI/m_msg_buttonsbar.h new file mode 100644 index 0000000..1ab6651 --- /dev/null +++ b/useactions/ExternalAPI/m_msg_buttonsbar.h @@ -0,0 +1,120 @@ +#ifndef M_MSG_BUTTONSBAR_H__ +#define M_MSG_BUTTONSBAR_H__ + +////////////////////////////////////////////////////////////////////////// +// Services +// +////////////////////////////////////////////////////////////////////////// +// Adding a button +// +// wParam = 0 +// lParam = (BBButton *) &description +#define MS_BB_ADDBUTTON "TabSRMM/ButtonsBar/AddButton" + +////////////////////////////////////////////////////////////////////////// +// Remove button +// +// wParam = 0 +// lParam = (BBButton *) &description, only button ID and ModuleName used +#define MS_BB_REMOVEBUTTON "TabSRMM/ButtonsBar/RemoveButton" + +////////////////////////////////////////////////////////////////////////// +// ModifyButton(global) +// +// wParam = 0 +// lParam = (BBButton *) &description +#define MS_BB_MODIFYBUTTON "TabSRMM/ButtonsBar/ModifyButton" + + +#define BBSF_HIDDEN (1<<0) +#define BBSF_DISABLED (1<<1) +#define BBSF_PUSHED (1<<2) +#define BBSF_RELEASED (1<<3) + +////////////////////////////////////////////////////////////////////////// +// GetButtonState(local) +// +// wParam = hContact +// lParam = (BBButton *) &description , only ModuleName and ID used +// Returns BBButton struct with BBSF_ bbbFlags: +#define MS_BB_GETBUTTONSTATE "TabSRMM/ButtonsBar/GetButtonState" + +////////////////////////////////////////////////////////////////////////// +// SetButtonState (local) +// +// wParam = hContact +// lParam = (BBButton *) &description , ModuleName, ID,hIcon,Tooltip, and BBSF_ bbbFlags are used +#define MS_BB_SETBUTTONSTATE "TabSRMM/ButtonsBar/SetButtonState" + + +//////////////////////////////////////////////////////////////// +//Events +// +/////////////////////////////////////////////////// +// ToolBar loaded event +// wParam = 0; +// lParam = 0; +// This event will be send after module loaded and after each toolbar reset +// You should add your buttons on this event +#define ME_MSG_TOOLBARLOADED "TabSRMM/ButtonsBar/ModuleLoaded" + +/////////////////////////////////////////////////// +// ButtonClicked event +// wParam = (HANDLE)hContact; +// lParam = (CustomButtonClickData *)&CustomButtonClickData; +// catch to show a popup menu, etc. +#define ME_MSG_BUTTONPRESSED "TabSRMM/ButtonsBar/ButtonPressed" + + +//event flags +#define BBCF_RIGHTBUTTON (1<<0) +#define BBCF_SHIFTPRESSED (1<<1) +#define BBCF_CONTROLPRESSED (1<<2) +#define BBCF_ARROWCLICKED (1<<3) + +typedef struct { + int cbSize; + POINT pt; // screen coordinates for menus + char* pszModule; // button owners name + DWORD dwButtonId; // registered button ID + HWND hwndFrom; // button parents HWND + HANDLE hContact; // + DWORD flags; // BBCF_ flags + } CustomButtonClickData; + + +//button flags +#define BBBF_DISABLED (1<<0) +#define BBBF_HIDDEN (1<<1) +#define BBBF_ISPUSHBUTTON (1<<2) +#define BBBF_ISARROWBUTTON (1<<3) +#define BBBF_ISCHATBUTTON (1<<4) +#define BBBF_ISIMBUTTON (1<<5) +#define BBBF_ISLSIDEBUTTON (1<<6) +#define BBBF_ISRSIDEBUTTON (1<<7) +#define BBBF_CANBEHIDDEN (1<<8) +#define BBBF_ISDUMMYBUTTON (1<<9) +#define BBBF_ANSITOOLTIP (1<<10) + +#define BBBF_CREATEBYID (1<<11) //only for tabsrmm internal use + +typedef struct _tagBBButton + { + int cbSize; // size of structure + + DWORD dwButtonID; // your button ID, will be combined with pszModuleName for storing settings, etc... + + char* pszModuleName; //module name without spaces and underline symbols (e.g. "tabsrmm") + union{ + char* pszTooltip; //button's tooltip + TCHAR* ptszTooltip; + }; + DWORD dwDefPos; // default order pos of button, counted from window edge (left or right) + // use value >100, because internal buttons using 10,20,30... 80, etc + int iButtonWidth; // must be 0 + DWORD bbbFlags; // combine of BBBF_ flags above + HANDLE hIcon; //Handle to icolib registered icon, it's better to register with pszSection = "TabSRMM/Toolbar" + }BBButton; + + +#endif //M_MSG_BUTTONSBAR_H__ \ No newline at end of file -- cgit v1.2.3