X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7c78e7c70271608b076b1dbed201b1204e6898d4..73974df1f951f176f592fd900352c41281eb5df2:/include/wx/qt/bmpbuttn.h diff --git a/include/wx/qt/bmpbuttn.h b/include/wx/qt/bmpbuttn.h index 659e9443dc..defe39e438 100644 --- a/include/wx/qt/bmpbuttn.h +++ b/include/wx/qt/bmpbuttn.h @@ -1,62 +1,83 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: bmpbutton.h -// Purpose: -// Author: Robert Roebling -// Created: 01/02/97 -// Id: -// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem +// Name: bmpbuttn.h +// Purpose: wxBitmapButton class +// Author: AUTHOR +// Modified by: +// Created: ??/??/98 +// RCS-ID: $Id$ +// Copyright: (c) AUTHOR // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// - -#ifndef __BMPBUTTONH__ -#define __BMPBUTTONH__ +#ifndef _WX_BMPBUTTN_H_ +#define _WX_BMPBUTTN_H_ #ifdef __GNUG__ -#pragma interface +#pragma interface "bmpbuttn.h" #endif -#include "wx/defs.h" -#include "wx/object.h" -#include "wx/list.h" -#include "wx/control.h" +#include "wx/button.h" + +WXDLLEXPORT_DATA(extern const char*) wxButtonNameStr; -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- +#define wxDEFAULT_BUTTON_MARGIN 4 -class wxBitmapButton; +class WXDLLEXPORT wxBitmapButton: public wxButton +{ + DECLARE_DYNAMIC_CLASS(wxBitmapButton) + public: + inline wxBitmapButton() { m_marginX = wxDEFAULT_BUTTON_MARGIN; m_marginY = wxDEFAULT_BUTTON_MARGIN; } + inline wxBitmapButton(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxButtonNameStr) + { + Create(parent, id, bitmap, pos, size, style, validator, name); + } -//----------------------------------------------------------------------------- -// global data -//----------------------------------------------------------------------------- + bool Create(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxButtonNameStr); -extern const char *wxButtonNameStr; + virtual void SetLabel(const wxBitmap& bitmap) + { + SetBitmapLabel(bitmap); + } -//----------------------------------------------------------------------------- -// wxBitmapButton -//----------------------------------------------------------------------------- + virtual void SetBitmapLabel(const wxBitmap& bitmap); -class wxBitmapButton: public wxControl -{ - DECLARE_DYNAMIC_CLASS(wxBitmapButton) + inline wxBitmap& GetBitmapLabel() const { return (wxBitmap&) m_buttonBitmap; } + inline wxBitmap& GetBitmapSelected() const { return (wxBitmap&) m_buttonBitmapSelected; } + inline wxBitmap& GetBitmapFocus() const { return (wxBitmap&) m_buttonBitmapFocus; } + inline wxBitmap& GetBitmapDisabled() const { return (wxBitmap&) m_buttonBitmapDisabled; } - public: - - wxBitmapButton(void); - wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap &bitmap, - const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, - long style = 0, const wxString &name = wxButtonNameStr ); - bool Create( wxWindow *parent, wxWindowID id, const wxBitmap &bitmap, - const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, - long style = 0, const wxString &name = wxButtonNameStr ); - void SetDefault(void); - void SetLabel( const wxString &label ); - wxString GetLabel(void) const; - - public: - - wxBitmap m_bitmap; - + inline void SetBitmapSelected(const wxBitmap& sel) { m_buttonBitmapSelected = sel; }; + inline void SetBitmapFocus(const wxBitmap& focus) { m_buttonBitmapFocus = focus; }; + inline void SetBitmapDisabled(const wxBitmap& disabled) { m_buttonBitmapDisabled = disabled; }; + + inline void SetMargins(int x, int y) { m_marginX = x; m_marginY = y; } + inline int GetMarginX() { return m_marginX; } + inline int GetMarginY() { return m_marginY; } + +/* + // TODO: Implementation + virtual bool MSWOnDraw(WXDRAWITEMSTRUCT *item); + virtual void DrawFace( WXHDC dc, int left, int top, int right, int bottom, bool sel ); + virtual void DrawButtonFocus( WXHDC dc, int left, int top, int right, int bottom, bool sel ); + virtual void DrawButtonDisable( WXHDC dc, int left, int top, int right, int bottom, bool with_marg ); +*/ + + protected: + wxBitmap m_buttonBitmap; + wxBitmap m_buttonBitmapSelected; + wxBitmap m_buttonBitmapFocus; + wxBitmap m_buttonBitmapDisabled; + int m_marginX; + int m_marginY; }; -#endif // __BMPBUTTONH__ + +#endif + // _WX_BMPBUTTN_H_