#ifndef __NEWBMPBTN_G__
#define __NEWBMPBTN_G__
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "newbmpbtn.h"
#endif
#include "wx/button.h"
#include "wx/string.h"
+#include "wx/fl/fldefs.h"
+
+// defaults
+#define NB_DEFAULT_MARGIN 2
// button label-text alignment types
// classes declared in this header file
-class wxNewBitmapButton;
-class wxBorderLessBitmapButton;
+class WXDLLIMPEXP_FL wxNewBitmapButton;
+class WXDLLIMPEXP_FL wxBorderLessBitmapButton;
/*
This is an alternative class to wxBitmapButton. It is used
bool mDragStarted;
bool mIsPressed;
bool mIsInFocus;
- bool mPrevPressedState;
- bool mPrevInFocusState;
bool mHasFocusedBmp;
// Constructor.
wxNewBitmapButton( const wxBitmap& labelBitmap = wxNullBitmap,
- const wxString& labelText = "",
+ const wxString& labelText = wxT(""),
int alignText = NB_ALIGN_TEXT_BOTTOM,
bool isFlat = TRUE,
// this is the default type of fired events
int firedEventType = wxEVT_COMMAND_MENU_SELECTED,
- int marginX = 2,
- int marginY = 2,
+ int marginX = NB_DEFAULT_MARGIN,
+ int marginY = NB_DEFAULT_MARGIN,
int textToLabelGap = 2,
bool isSticky = FALSE
);
// Use this constructor if buttons have to be persistant
wxNewBitmapButton( const wxString& bitmapFileName,
const wxBitmapType bitmapFileType = wxBITMAP_TYPE_BMP,
- const wxString& labelText = "",
+ const wxString& labelText = wxT(""),
int alignText = NB_ALIGN_TEXT_BOTTOM,
bool isFlat = TRUE,
// this is the default type of fired events
int firedEventType = wxEVT_COMMAND_MENU_SELECTED,
- int marginX = 2,
- int marginY = 2,
+ int marginX = NB_DEFAULT_MARGIN,
+ int marginY = NB_DEFAULT_MARGIN,
int textToLabelGap = 2,
bool isSticky = FALSE
);
virtual void Reshape();
// Sets the label and optionally label text.
- virtual void SetLabel(const wxBitmap& labelBitmap, const wxString& labelText = "" );
+ virtual void SetLabel(const wxBitmap& labelBitmap, const wxString& labelText = wxT("") );
// Sets the text alignment and margins.
virtual void SetAlignments( int alignText = NB_ALIGN_TEXT_BOTTOM,
- int marginX = 2,
- int marginY = 2,
+ int marginX = NB_DEFAULT_MARGIN,
+ int marginY = NB_DEFAULT_MARGIN,
int textToLabelGap = 2);
// Draws the decorations.
// Renders label images.
virtual void RenderAllLabelImages();
+ // Enables/disables button
+ virtual bool Enable(bool enable);
+
// Responds to a left mouse button down event.
void OnLButtonDown( wxMouseEvent& event );
// Responds to a left mouse button up event.
void OnLButtonUp( wxMouseEvent& event );
- // Responds to a mouse move event.
- void OnMouseMove( wxMouseEvent& event );
+ // Responds to mouse enter to window.
+ void OnMouseEnter( wxMouseEvent& event );
+
+ // Responds to mouse leave from window.
+ void OnMouseLeave( wxMouseEvent& event );
// Responds to a size event.
void OnSize( wxSizeEvent& event );