ToolbarWindow.h


#pragma once
#include "atlwin.h"
#include "ToolbarButtonCtrl.h"
#include "const.h"

class CToolbarWindow : public CWindowImpl<CToolbarWindow>
{
public:
    DECLARE_WND_SUPERCLASS(TEXT("CTOOLBARWINDOW"), TOOLBARCLASSNAME)

    BEGIN_MSG_MAP ( CToolbarWindow )
        MESSAGE_HANDLER ( WM_CREATE, OnCreate )
        NOTIFY_CODE_HANDLER (TBN_DROPDOWN, OnDropDown )

        //ボタンを押された際の動作を、Rangeで指定
        //IDが1001~2000だったら、ボタンっていうルールにした
        COMMAND_RANGE_HANDLER ( KUMA_BUTTON_ID_MIN, KUMA_BUTTON_ID_MAX, OnKumaButtonCommand )

        //メニューを選択された際の動作を、Rangeで指定
        //IDが2001~3000だったら、メニューっていうルールにした
        COMMAND_RANGE_HANDLER ( KUMA_MENU_ID_MIN,   KUMA_MENU_ID_MAX,   OnKumaMenuCommand )
    END_MSG_MAP()

    LRESULT OnCreate      ( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled  );
    LRESULT OnDropDown    ( int idCtrl, LPNMHDR pnmh, BOOL& bHandled );

    //ボタンを押された際の処理
    LRESULT OnKumaButtonCommand ( WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled );
    //メニューを選択された際の処理
    LRESULT OnKumaMenuCommand   ( WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled );

    CToolbarWindow(void);
    virtual ~CToolbarWindow(void);

    void SetBrowser (CComPtr<IWebBrowser2> spWebBrowser2) { m_spBrowser.Attach(spWebBrowser2); }

private:
    //画像はCToolbarButtonCtrlで管理
    HIMAGELIST m_hImageList;
    
    //ボタン操作用クラス
    CToolbarButtonCtrl m_BtnCtrl;

    CComPtr<IWebBrowser2> m_spBrowser;
};

戻る

コメントスペース