git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			123 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			123 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /////////////////////////////////////////////////////////////////////////////
 | |
| // Name:        toolbar.h
 | |
| // Purpose:     wxToolBar class
 | |
| // Author:      David Webster
 | |
| // Modified by:
 | |
| // Created:     10/17/98
 | |
| // RCS-ID:      $Id$
 | |
| // Copyright:   (c) David Webster
 | |
| // Licence:     wxWindows licence
 | |
| /////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
| #ifndef _WX_TOOLBAR_H_
 | |
| #define _WX_TOOLBAR_H_
 | |
| 
 | |
| #if wxUSE_TOOLBAR
 | |
| #include "wx/tbarbase.h"
 | |
| 
 | |
| WXDLLEXPORT_DATA(extern const wxChar*) wxToolBarNameStr;
 | |
| 
 | |
| class WXDLLEXPORT wxToolBar: public wxToolBarBase
 | |
| {
 | |
| public:
 | |
|     /*
 | |
|      * Public interface
 | |
|      */
 | |
| 
 | |
|     wxToolBar() { Init(); }
 | |
| 
 | |
|     inline wxToolBar( wxWindow*       pParent
 | |
|                      ,wxWindowID      vId
 | |
|                      ,const wxPoint&  rPos = wxDefaultPosition
 | |
|                      ,const wxSize&   rSize = wxDefaultSize
 | |
|                      ,long            lStyle = wxNO_BORDER|wxTB_HORIZONTAL
 | |
|                      ,const wxString& rName = wxToolBarNameStr
 | |
|                     )
 | |
|     {
 | |
|         Create( pParent
 | |
|                ,vId
 | |
|                ,rPos
 | |
|                ,rSize
 | |
|                ,lStyle
 | |
|                ,rName
 | |
|               );
 | |
|     }
 | |
|     bool Create( wxWindow*       pParent
 | |
|                 ,wxWindowID      vId
 | |
|                 ,const wxPoint&  rPos = wxDefaultPosition
 | |
|                 ,const wxSize&   rSize = wxDefaultSize
 | |
|                 ,long            lStyle = wxNO_BORDER|wxTB_HORIZONTAL
 | |
|                 ,const wxString& rName = wxToolBarNameStr
 | |
|                );
 | |
| 
 | |
|     virtual ~wxToolBar();
 | |
| 
 | |
|     // override/implement base class virtuals
 | |
|     virtual wxToolBarToolBase* FindToolForPosition( wxCoord x
 | |
|                                                    ,wxCoord y
 | |
|                                                   ) const;
 | |
| 
 | |
|     // The post-tool-addition call
 | |
|     virtual bool Realize(void);
 | |
| 
 | |
|     virtual void SetToolBitmapSize(const wxSize& rSize);
 | |
|     virtual wxSize GetToolSize(void) const;
 | |
| 
 | |
|     virtual void SetRows(int nRows);
 | |
| 
 | |
|     // IMPLEMENTATION
 | |
|     virtual bool OS2Command( WXUINT uParam
 | |
|                             ,WXWORD wId
 | |
|                            );
 | |
|     virtual bool OS2OnNotify( int       nCtrl
 | |
|                              ,WXLPARAM  lParam
 | |
|                              ,WXLPARAM* pResult
 | |
|                             );
 | |
|     void OnMouseEvent(wxMouseEvent& rEvent);
 | |
|     void OnSysColourChanged(wxSysColourChangedEvent& rEvent);
 | |
| 
 | |
| protected:
 | |
|     void Init(void);
 | |
|     // implement base class pure virtuals
 | |
|     virtual bool DoInsertTool(size_t pos, wxToolBarToolBase *tool);
 | |
|     virtual bool DoDeleteTool(size_t pos, wxToolBarToolBase *tool);
 | |
| 
 | |
|     virtual void DoEnableTool(wxToolBarToolBase *tool, bool enable);
 | |
|     virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
 | |
|     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
 | |
| 
 | |
|     virtual wxToolBarToolBase* CreateTool( int             vId
 | |
|                                           ,const wxBitmap& rBitmap1
 | |
|                                           ,const wxBitmap& rBitmap2
 | |
|                                           ,bool            bToggle
 | |
|                                           ,wxObject*       pClientData
 | |
|                                           ,const wxString& rShortHelpString
 | |
|                                           ,const wxString& rLongHelpString
 | |
|                                          );
 | |
|     virtual wxToolBarToolBase* CreateTool(wxControl* pControl);
 | |
| 
 | |
|     // should be called whenever the toolbar size changes
 | |
|     void UpdateSize(void);
 | |
| 
 | |
|     // override WndProc to process WM_SIZE
 | |
|     virtual MRESULT OS2WindowProc( WXUINT   ulMsg
 | |
|                                   ,WXWPARAM wParam
 | |
|                                   ,WXLPARAM lParam
 | |
|                                  );
 | |
| 
 | |
|     // the big bitmap containing all bitmaps of the toolbar buttons
 | |
|     WXHBITMAP                       m_hBitmap;
 | |
| 
 | |
|     // the total number of toolbar elements
 | |
|     size_t                          m_nButtons;
 | |
| 
 | |
| private:
 | |
|     DECLARE_EVENT_TABLE()
 | |
|     DECLARE_DYNAMIC_CLASS(wxToolBar)
 | |
| };
 | |
| 
 | |
| #endif // wxUSE_TOOLBAR
 | |
| 
 | |
| #endif
 | |
|     // _WX_TOOLBAR_H_
 |