Bitmap button updates

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17091 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Webster
2002-09-09 03:08:12 +00:00
parent 4147efe9ab
commit db16e5c3aa
7 changed files with 581 additions and 504 deletions

View File

@@ -20,69 +20,83 @@ WXDLLEXPORT_DATA(extern const char*) wxButtonNameStr;
class WXDLLEXPORT wxBitmapButton: public wxBitmapButtonBase
{
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,
public:
inline wxBitmapButton()
{
m_marginX = wxDEFAULT_BUTTON_MARGIN;
m_marginY = wxDEFAULT_BUTTON_MARGIN;
}
inline wxBitmapButton( wxWindow* pParent
,wxWindowID vId
,const wxBitmap& rBitmap
,const wxPoint& rPos = wxDefaultPosition
,const wxSize& rSize = wxDefaultSize
,long lStyle = wxBU_AUTODRAW
#if wxUSE_VALIDATORS
const wxValidator& validator = wxDefaultValidator,
,const wxValidator& rValidator = wxDefaultValidator
#endif
const wxString& name = wxButtonNameStr)
{
Create(parent, id, bitmap, pos, size, style, validator, name);
}
bool Create(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW,
,const wxString& rsName = wxButtonNameStr
)
{
Create( pParent
,vId
,rBitmap
,rPos
,rSize
,lStyle
#if wxUSE_VALIDATORS
const wxValidator& validator = wxDefaultValidator,
,rValidator
#endif
const wxString& name = wxButtonNameStr);
,rsName
);
}
virtual void SetLabel(const wxBitmap& bitmap)
{
SetBitmapLabel(bitmap);
}
bool Create( wxWindow* pParent
,wxWindowID vId
,const wxBitmap& rBitmap
,const wxPoint& rPos = wxDefaultPosition
,const wxSize& rSize = wxDefaultSize
,long lStyle = wxBU_AUTODRAW
#if wxUSE_VALIDATORS
,const wxValidator& rValidator = wxDefaultValidator
#endif
,const wxString& rsName = wxButtonNameStr
);
virtual void SetBitmapLabel(const wxBitmap& bitmap);
virtual void SetLabel(const wxBitmap& rBitmap)
{
SetBitmapLabel(rBitmap);
}
#if WXWIN_COMPATIBILITY
wxBitmap *GetBitmap() const { return (wxBitmap *) & m_buttonBitmap; }
wxBitmap* GetBitmap(void) const
{
return (wxBitmap *)&m_buttonBitmap;
}
#endif
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; }
//
// Implementation
//
virtual void SetDefault();
virtual bool OS2OnDraw(WXDRAWITEMSTRUCT* pItem);
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; }
virtual void SetDefault();
// virtual bool OS2OnDraw(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;
private:
virtual void SetLabel(const wxString& string)
{ wxButton::SetLabel(string); };
};
#endif
// _WX_BMPBUTTN_H_
virtual void DrawFace( wxClientDC& rDC
,bool bSel
);
virtual void DrawButtonFocus(wxClientDC& rDC);
virtual void DrawButtonDisable( wxClientDC& rDC
,wxBitmap& rBmp
);
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
virtual void SetLabel(const wxString& rsString)
{
wxButton::SetLabel(rsString);
}
}; // end of CLASS wxBitmapButton
#endif // _WX_BMPBUTTN_H_

View File

@@ -39,6 +39,7 @@
class WXDLLEXPORT wxFont;
class WXDLLEXPORT wxWindow;
class WXDLLEXPORT wxString;
class WXDLLEXPORT wxBitmap;
// ---------------------------------------------------------------------------
// private constants
@@ -334,9 +335,12 @@ WXDLLEXPORT extern void wxOS2SetFont( HWND hWnd
);
WXDLLEXPORT extern bool wxCheckWindowWndProc( WXHWND hWnd
,WXFARPROC fnWndProc
WXDLLEXPORT extern bool wxCheckWindowWndProc( WXHWND hWnd
,WXFARPROC fnWndProc
);
WXDLLEXPORT extern wxBitmap wxDisableBitmap( const wxBitmap& rBmp
,long lColor
);
#endif // _WX_PRIVATE_H_
#endif
// _WX_PRIVATE_H_