#include "wx/button.h"
#include "wx/string.h"
+// defaults
+#define NB_DEFAULT_MARGIN 2
+
// button label-text alignment types
#define NB_ALIGN_TEXT_RIGHT 0
bool mDragStarted;
bool mIsPressed;
bool mIsInFocus;
- bool mPrevPressedState;
- bool mPrevInFocusState;
bool mHasFocusedBmp;
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
);
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
);
// 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 a left mouse button double click.
+ void OnLButtonDClick( 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 );
// Responds to a kill focus event.
void OnKillFocus( wxFocusEvent& event );
+ // Maps bitmap to current system colours on Windows
+#ifdef __WXMSW__
+ WXHBITMAP MapBitmap(WXHBITMAP bitmap, int width, int height);
+#endif
+
DECLARE_EVENT_TABLE()
};