1998-05-20 14:12:05 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: tbar95.h
|
|
|
|
// Purpose: wxToolBar95 (Windows 95 toolbar) class
|
|
|
|
// Author: Julian Smart
|
|
|
|
// Modified by:
|
|
|
|
// Created: 01/02/97
|
|
|
|
// RCS-ID: $Id$
|
1998-08-07 23:52:45 +00:00
|
|
|
// Copyright: (c) Julian Smart
|
|
|
|
// Licence: wxWindows licence
|
1998-05-20 14:12:05 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
1998-08-07 23:52:45 +00:00
|
|
|
#ifndef _WX_TBAR95_H_
|
|
|
|
#define _WX_TBAR95_H_
|
1998-05-20 14:12:05 +00:00
|
|
|
|
|
|
|
#ifdef __GNUG__
|
|
|
|
#pragma interface "tbar95.h"
|
|
|
|
#endif
|
|
|
|
|
1998-09-25 13:28:52 +00:00
|
|
|
#if wxUSE_BUTTONBAR && wxUSE_TOOLBAR
|
1998-05-20 14:12:05 +00:00
|
|
|
#include "wx/tbarbase.h"
|
|
|
|
|
1999-04-19 17:47:19 +00:00
|
|
|
WXDLLEXPORT_DATA(extern const wxChar*) wxToolBarNameStr;
|
1998-05-20 14:12:05 +00:00
|
|
|
|
|
|
|
class WXDLLEXPORT wxToolBar95: public wxToolBarBase
|
|
|
|
{
|
|
|
|
DECLARE_DYNAMIC_CLASS(wxToolBar95)
|
|
|
|
public:
|
|
|
|
/*
|
|
|
|
* Public interface
|
|
|
|
*/
|
|
|
|
|
|
|
|
wxToolBar95(void);
|
|
|
|
|
1998-07-04 15:17:59 +00:00
|
|
|
inline wxToolBar95(wxWindow *parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
1998-07-27 09:47:57 +00:00
|
|
|
long style = wxNO_BORDER|wxTB_HORIZONTAL,
|
|
|
|
const wxString& name = wxToolBarNameStr)
|
1998-05-20 14:12:05 +00:00
|
|
|
{
|
1998-07-27 09:47:57 +00:00
|
|
|
Create(parent, id, pos, size, style, name);
|
1998-05-20 14:12:05 +00:00
|
|
|
}
|
|
|
|
~wxToolBar95(void);
|
|
|
|
|
1998-07-04 15:17:59 +00:00
|
|
|
bool Create(wxWindow *parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
1998-07-27 09:47:57 +00:00
|
|
|
long style = wxNO_BORDER|wxTB_HORIZONTAL,
|
|
|
|
const wxString& name = wxToolBarNameStr);
|
1998-05-20 14:12:05 +00:00
|
|
|
|
|
|
|
// Call default behaviour
|
1999-01-19 18:23:02 +00:00
|
|
|
void OnPaint(wxPaintEvent& WXUNUSED(event)) { Default() ; }
|
|
|
|
void OnSize(wxSizeEvent& WXUNUSED(event)) { Default() ; }
|
|
|
|
void OnKillFocus(wxFocusEvent& WXUNUSED(event)) { Default() ; }
|
1998-11-30 12:52:58 +00:00
|
|
|
void OnMouseEvent(wxMouseEvent& event);
|
1998-05-20 14:12:05 +00:00
|
|
|
|
|
|
|
// Handle wxToolBar95 events
|
|
|
|
|
|
|
|
// If pushedBitmap is NULL, a reversed version of bitmap is
|
|
|
|
// created and used as the pushed/toggled image.
|
|
|
|
// If toggle is TRUE, the button toggles between the two states.
|
1998-07-04 15:17:59 +00:00
|
|
|
wxToolBarTool *AddTool(int toolIndex, const wxBitmap& bitmap, const wxBitmap& pushedBitmap = wxNullBitmap,
|
|
|
|
bool toggle = FALSE, long xPos = -1, long yPos = -1, wxObject *clientData = NULL,
|
1998-05-20 14:12:05 +00:00
|
|
|
const wxString& helpString1 = "", const wxString& helpString2 = "");
|
|
|
|
|
|
|
|
// Set default bitmap size
|
1998-07-27 09:47:57 +00:00
|
|
|
void SetToolBitmapSize(const wxSize& size);
|
1998-07-04 15:17:59 +00:00
|
|
|
void EnableTool(int toolIndex, bool enable); // additional drawing on enabling
|
|
|
|
void ToggleTool(int toolIndex, bool toggle); // toggle is TRUE if toggled on
|
1998-05-20 14:12:05 +00:00
|
|
|
void ClearTools(void);
|
|
|
|
|
|
|
|
// The button size is bigger than the bitmap size
|
1998-07-27 09:47:57 +00:00
|
|
|
wxSize GetToolSize(void) const;
|
1998-05-20 14:12:05 +00:00
|
|
|
|
|
|
|
wxSize GetMaxSize(void) const;
|
1998-11-28 13:38:40 +00:00
|
|
|
|
1998-05-20 14:12:05 +00:00
|
|
|
void GetSize(int *w, int *y) const;
|
|
|
|
|
1998-08-13 10:19:16 +00:00
|
|
|
virtual bool GetToolState(int toolIndex) const;
|
|
|
|
|
1998-05-20 14:12:05 +00:00
|
|
|
// Add all the buttons: required for Win95.
|
|
|
|
virtual bool CreateTools(void);
|
1998-07-04 15:17:59 +00:00
|
|
|
virtual void SetRows(int nRows);
|
1999-05-10 00:42:57 +00:00
|
|
|
virtual void LayoutButtons(void) {}
|
1998-05-20 14:12:05 +00:00
|
|
|
|
1998-07-27 09:47:57 +00:00
|
|
|
// The post-tool-addition call
|
|
|
|
bool Realize() { return CreateTools(); };
|
|
|
|
|
1998-05-20 14:12:05 +00:00
|
|
|
// IMPLEMENTATION
|
1998-11-24 23:30:50 +00:00
|
|
|
virtual bool MSWCommand(WXUINT param, WXWORD id);
|
|
|
|
virtual bool MSWNotify(WXWPARAM wParam, WXLPARAM lParam, WXLPARAM *result);
|
1998-05-20 14:12:05 +00:00
|
|
|
|
|
|
|
// Responds to colour changes
|
|
|
|
void OnSysColourChanged(wxSysColourChangedEvent& event);
|
|
|
|
|
|
|
|
protected:
|
|
|
|
WXHBITMAP m_hBitmap;
|
|
|
|
|
|
|
|
DECLARE_EVENT_TABLE()
|
|
|
|
};
|
|
|
|
|
1998-09-25 13:28:52 +00:00
|
|
|
#endif // wxUSE_TOOL/BUTTONBAR
|
1998-05-20 14:12:05 +00:00
|
|
|
#endif
|
1998-08-07 23:52:45 +00:00
|
|
|
// _WX_TBAR95_H_
|