#include #include #include ToolBar::ToolBar(void) { mSizeHandler.setCallback(this,&ToolBar::sizeHandler); CommonControlsEx commonControlsEx; commonControlsEx.flags(CommonControlsEx::InitBar); commonControlsEx.initCommonControlsEx(); } ToolBar::ToolBar(const ToolBar &someToolBar) { // private implementation *this=someToolBar; } ToolBar::~ToolBar() { if(mParentWindow.isOkay())mParentWindow->removeHandler(VectorHandler::SizeHandler,&mSizeHandler); destroy(); } ToolBar &ToolBar::operator=(const ToolBar &/*someToolBar*/) { // private implementation return *this; } CallbackData::ReturnType ToolBar::sizeHandler(CallbackData &someCallbackData) { resize(); return (CallbackData::ReturnType)FALSE; } BOOL ToolBar::create(GUIWindow &parentWindow,UINT controlID,const Rect &initRect,UINT styles) { if(isValid())return FALSE; mParentWindow=&parentWindow; mParentWindow->insertHandler(VectorHandler::SizeHandler,&mSizeHandler); createControl(0L,TOOLBARCLASSNAME,String(),WS_CHILD|WS_BORDER|WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS|styles,initRect,parentWindow,controlID); buttonStructSize(); return isValid(); } BOOL ToolBar::addBitmap(const AddBitmap &addBitmap,UINT imageCount)const { if(!isValid())return FALSE; return !(-1==sendMessage(TB_ADDBITMAP,imageCount,(LPARAM)&((AddBitmap&)addBitmap).getTBADDBITMAP())); } BOOL ToolBar::addBitmaps(Block &addBitmaps)const { TBADDBITMAP *pTBADDBITMAP; BOOL result; pTBADDBITMAP=::new TBADDBITMAP[addBitmaps.size()]; for(int bmIndex=0;bmIndex &toolBarButtons)const { BOOL result; TBBUTTON *pTBBUTTONS; pTBBUTTONS=::new TBBUTTON[toolBarButtons.size()]; for(int bmIndex=0;bmIndex