1999-11-24 12:30:56 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: wx/toolbar.h
|
|
|
|
// Purpose: wxToolBar interface declaration
|
|
|
|
// Author: Vadim Zeitlin
|
|
|
|
// Modified by:
|
|
|
|
// Created: 20.11.99
|
|
|
|
// RCS-ID: $Id$
|
2004-05-23 14:56:36 +00:00
|
|
|
// Copyright: (c) wxWidgets team
|
2004-05-23 20:53:33 +00:00
|
|
|
// Licence: wxWindows licence
|
1999-11-24 12:30:56 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#ifndef _WX_TOOLBAR_H_BASE_
|
|
|
|
#define _WX_TOOLBAR_H_BASE_
|
|
|
|
|
2003-07-10 10:53:00 +00:00
|
|
|
#include "wx/defs.h"
|
|
|
|
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
// wxToolBar style flags
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
enum
|
|
|
|
{
|
|
|
|
// lay out the toolbar horizontally
|
|
|
|
wxTB_HORIZONTAL = wxHORIZONTAL, // == 0x0004
|
|
|
|
|
|
|
|
// lay out the toolbar vertically
|
|
|
|
wxTB_VERTICAL = wxVERTICAL, // == 0x0008
|
|
|
|
|
|
|
|
// show 3D buttons (wxToolBarSimple only)
|
|
|
|
wxTB_3DBUTTONS = 0x0010,
|
|
|
|
|
|
|
|
// "flat" buttons (Win32/GTK only)
|
|
|
|
wxTB_FLAT = 0x0020,
|
|
|
|
|
|
|
|
// dockable toolbar (GTK only)
|
|
|
|
wxTB_DOCKABLE = 0x0040,
|
|
|
|
|
|
|
|
// don't show the icons (they're shown by default)
|
|
|
|
wxTB_NOICONS = 0x0080,
|
|
|
|
|
|
|
|
// show the text (not shown by default)
|
|
|
|
wxTB_TEXT = 0x0100,
|
|
|
|
|
|
|
|
// don't show the divider between toolbar and the window (Win32 only)
|
|
|
|
wxTB_NODIVIDER = 0x0200,
|
|
|
|
|
|
|
|
// no automatic alignment (Win32 only, useless)
|
|
|
|
wxTB_NOALIGN = 0x0400,
|
|
|
|
|
|
|
|
// show the text and the icons alongside, not vertically stacked (Win32/GTK)
|
|
|
|
wxTB_HORZ_LAYOUT = 0x0800,
|
|
|
|
wxTB_HORZ_TEXT = wxTB_HORZ_LAYOUT | wxTB_TEXT
|
|
|
|
};
|
1999-11-24 12:30:56 +00:00
|
|
|
|
1999-12-15 19:47:54 +00:00
|
|
|
#if wxUSE_TOOLBAR
|
2003-07-10 10:53:00 +00:00
|
|
|
#include "wx/tbarbase.h" // the base class for all toolbars
|
|
|
|
|
2003-08-25 14:10:25 +00:00
|
|
|
// Simple toolbar no longer available, so we will need to have
|
|
|
|
// a generic toolbar at some point (perhaps the wxUniv toolbar)
|
|
|
|
#if 0 // !wxUSE_TOOLBAR_NATIVE && !defined(__WXUNIVERSAL__)
|
1999-12-15 19:47:54 +00:00
|
|
|
#include "wx/tbarsmpl.h"
|
2001-07-04 18:21:47 +00:00
|
|
|
|
|
|
|
class WXDLLEXPORT wxToolBar : public wxToolBarSimple
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
wxToolBar() { }
|
|
|
|
|
|
|
|
wxToolBar(wxWindow *parent,
|
2003-03-21 02:58:55 +00:00
|
|
|
wxWindowID winid,
|
2001-07-04 18:21:47 +00:00
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
|
|
|
const wxString& name = wxToolBarNameStr)
|
2003-03-21 02:58:55 +00:00
|
|
|
: wxToolBarSimple(parent, winid, pos, size, style, name) { }
|
2001-07-04 18:21:47 +00:00
|
|
|
|
2002-02-24 11:06:55 +00:00
|
|
|
// the most commonly used version of AddTool()
|
2003-03-21 02:58:55 +00:00
|
|
|
wxToolBarToolBase *AddTool(int toolid,
|
2002-02-24 11:06:55 +00:00
|
|
|
const wxBitmap& bitmap,
|
|
|
|
const wxString& shortHelpString = wxEmptyString,
|
|
|
|
const wxString& longHelpString = wxEmptyString)
|
|
|
|
{
|
2003-03-21 02:58:55 +00:00
|
|
|
return wxToolBarSimple::AddTool(toolid, bitmap, wxNullBitmap, FALSE, -1, -1, NULL,
|
2002-02-24 11:06:55 +00:00
|
|
|
shortHelpString, longHelpString);
|
|
|
|
}
|
2002-03-15 00:33:05 +00:00
|
|
|
|
2002-02-24 11:06:55 +00:00
|
|
|
// old form
|
|
|
|
wxToolBarToolBase *AddTool
|
|
|
|
(
|
2003-03-21 02:58:55 +00:00
|
|
|
int toolid,
|
2002-02-24 11:06:55 +00:00
|
|
|
const wxBitmap& bitmap,
|
|
|
|
const wxBitmap& pushedBitmap,
|
|
|
|
bool toggle,
|
|
|
|
wxObject *clientData = NULL,
|
|
|
|
const wxString& shortHelpString = wxEmptyString,
|
|
|
|
const wxString& longHelpString = wxEmptyString
|
|
|
|
)
|
|
|
|
{
|
2003-03-21 02:58:55 +00:00
|
|
|
return wxToolBarSimple::AddTool(toolid, bitmap, pushedBitmap, toggle, -1, -1, clientData,
|
2002-02-24 11:06:55 +00:00
|
|
|
shortHelpString, longHelpString);
|
|
|
|
}
|
2002-03-15 00:33:05 +00:00
|
|
|
|
2002-02-24 11:06:55 +00:00
|
|
|
// virtual overridden
|
|
|
|
virtual wxToolBarToolBase *AddTool
|
|
|
|
(
|
2003-03-21 02:58:55 +00:00
|
|
|
int toolid,
|
2002-02-24 11:06:55 +00:00
|
|
|
const wxBitmap& bitmap,
|
|
|
|
const wxBitmap& pushedBitmap,
|
|
|
|
bool toggle,
|
|
|
|
wxCoord xPos,
|
|
|
|
wxCoord yPos = -1,
|
|
|
|
wxObject *clientData = NULL,
|
|
|
|
const wxString& shortHelpString = wxEmptyString,
|
|
|
|
const wxString& longHelpString = wxEmptyString
|
|
|
|
)
|
|
|
|
{
|
2003-03-21 02:58:55 +00:00
|
|
|
return wxToolBarSimple::AddTool(toolid, bitmap, pushedBitmap, toggle, xPos, yPos, clientData,
|
2002-02-24 11:06:55 +00:00
|
|
|
shortHelpString, longHelpString);
|
|
|
|
}
|
2002-03-15 00:33:05 +00:00
|
|
|
|
2001-07-04 18:21:47 +00:00
|
|
|
private:
|
|
|
|
DECLARE_DYNAMIC_CLASS(wxToolBar)
|
|
|
|
};
|
1999-12-15 19:47:54 +00:00
|
|
|
#else // wxUSE_TOOLBAR_NATIVE
|
2002-02-24 19:49:36 +00:00
|
|
|
#if defined(__WXUNIVERSAL__)
|
|
|
|
#include "wx/univ/toolbar.h"
|
2004-05-27 11:31:12 +00:00
|
|
|
#elif defined(__WXMSW__) && (!defined(_WIN32_WCE) || (_WIN32_WCE >= 400 && !defined(__POCKETPC__) && !defined(__SMARTPHONE__)))
|
2003-12-28 01:07:31 +00:00
|
|
|
#include "wx/msw/tbar95.h"
|
2003-07-18 14:12:53 +00:00
|
|
|
#elif defined(__WXWINCE__)
|
|
|
|
#include "wx/msw/wince/tbarwce.h"
|
1999-12-15 19:47:54 +00:00
|
|
|
#elif defined(__WXMSW__)
|
|
|
|
#include "wx/msw/tbarmsw.h"
|
|
|
|
#elif defined(__WXMOTIF__)
|
|
|
|
#include "wx/motif/toolbar.h"
|
|
|
|
#elif defined(__WXGTK__)
|
|
|
|
#include "wx/gtk/tbargtk.h"
|
|
|
|
#elif defined(__WXMAC__)
|
|
|
|
#include "wx/mac/toolbar.h"
|
2003-12-16 15:44:11 +00:00
|
|
|
#elif defined(__WXCOCOA__)
|
|
|
|
#include "wx/cocoa/toolbar.h"
|
1999-12-15 19:47:54 +00:00
|
|
|
#elif defined(__WXPM__)
|
|
|
|
#include "wx/os2/toolbar.h"
|
|
|
|
#endif
|
|
|
|
#endif // !wxUSE_TOOLBAR_NATIVE/wxUSE_TOOLBAR_NATIVE
|
|
|
|
#endif // wxUSE_TOOLBAR
|
1998-05-20 14:01:55 +00:00
|
|
|
|
|
|
|
#endif
|
1999-11-24 12:30:56 +00:00
|
|
|
// _WX_TOOLBAR_H_BASE_
|