hydrogen 1.1.1
Button Class Reference

Generic Button with pixmaps and text. More...

#include <Button.h>

Inheritance diagram for Button:
Object MidiLearnable ToggleButton

Signals

void clicked (Button *pBtn)
 
void rightClicked (Button *pBtn)
 
void mousePress (Button *pBtn)
 

Public Member Functions

 Button (QWidget *pParent, const QString &sOnImg, const QString &sOffImg, const QString &sOverImg, QSize size, bool use_skin_style=false, bool enable_press_hold=false)
 
virtual ~Button ()
 
 Button (const Button &)=delete
 
Buttonoperator= (const Button &rhs)=delete
 
bool isPressed ()
 
void setPressed (bool pressed)
 
void setText (const QString &sText)
 
void setFontSize (int size)
 
- Public Member Functions inherited from Object
 ~Object ()
 destructor More...
 
 Object (const Object &obj)
 copy constructor More...
 
 Object (const char *class_name)
 constructor More...
 
const char * class_name () const
 return the class name More...
 
virtual QString toQString (const QString &sPrefix, bool bShort=true) const
 Formatted string version for debugging purposes. More...
 
void Print (bool bShort=true) const
 Prints content of toQString() via DEBUGLOG. More...
 
- Public Member Functions inherited from MidiLearnable
 MidiLearnable ()
 
 ~MidiLearnable ()
 
void setAction (Action *action)
 
ActiongetAction ()
 

Protected Slots

void buttonPressed_timer_timeout ()
 

Protected Attributes

bool m_bPressed
 
QFont m_textFont
 
QString m_sText
 
QPixmap m_onPixmap
 
QPixmap m_offPixmap
 
QPixmap m_overPixmap
 

Private Member Functions

void mousePressEvent (QMouseEvent *ev)
 
void mouseReleaseEvent (QMouseEvent *ev)
 
void enterEvent (QEvent *ev)
 
void leaveEvent (QEvent *ev)
 
void paintEvent (QPaintEvent *ev)
 
bool loadImage (const QString &sFilename, QPixmap &pixmap)
 

Private Attributes

bool m_bMouseOver
 
bool __use_skin_style
 
bool __enable_press_hold
 
QTimer * m_timer
 
int m_timerTimeout
 

Additional Inherited Members

- Static Public Member Functions inherited from Object
static void set_count (bool flag)
 enable/disable class instances counting More...
 
static bool count_active ()
 return true if class instances counting is enabled More...
 
static unsigned objects_count ()
 return the number of objects More...
 
static void write_objects_map_to (std::ostream &out)
 output the full objects map to a given ostream More...
 
static void write_objects_map_to_cerr ()
 output objects map to stderr More...
 
static int bootstrap (Logger *logger, bool count=false)
 must be called before any Object instantiation ! More...
 
static Loggerlogger ()
 return the logger instance More...
 
- Static Public Attributes inherited from Object
static QString sPrintIndention = " "
 String used to format the debugging string output of some core classes. More...
 
- Static Protected Attributes inherited from Object
static Logger__logger = nullptr
 logger instance pointer More...
 

Detailed Description

Generic Button with pixmaps and text.

Constructor & Destructor Documentation

◆ Button() [1/2]

Button ( QWidget *  pParent,
const QString &  sOnImg,
const QString &  sOffImg,
const QString &  sOverImg,
QSize  size,
bool  use_skin_style = false,
bool  enable_press_hold = false 
)

◆ ~Button()

~Button ( )
virtual

◆ Button() [2/2]

Button ( const Button )
delete

Member Function Documentation

◆ buttonPressed_timer_timeout

void buttonPressed_timer_timeout ( )
protectedslot

◆ clicked

void clicked ( Button pBtn)
signal

◆ enterEvent()

void enterEvent ( QEvent *  ev)
private

◆ isPressed()

bool isPressed ( )
inline

◆ leaveEvent()

void leaveEvent ( QEvent *  ev)
private

◆ loadImage()

bool loadImage ( const QString &  sFilename,
QPixmap &  pixmap 
)
private

◆ mousePress

void mousePress ( Button pBtn)
signal

◆ mousePressEvent()

void mousePressEvent ( QMouseEvent *  ev)
private

◆ mouseReleaseEvent()

void mouseReleaseEvent ( QMouseEvent *  ev)
private

◆ operator=()

Button & operator= ( const Button rhs)
delete

◆ paintEvent()

void paintEvent ( QPaintEvent *  ev)
private

◆ rightClicked

void rightClicked ( Button pBtn)
signal

◆ setFontSize()

void setFontSize ( int  size)

◆ setPressed()

void setPressed ( bool  pressed)

◆ setText()

void setText ( const QString &  sText)

Field Documentation

◆ __enable_press_hold

bool __enable_press_hold
private

◆ __use_skin_style

bool __use_skin_style
private

◆ m_bMouseOver

bool m_bMouseOver
private

◆ m_bPressed

bool m_bPressed
protected

◆ m_offPixmap

QPixmap m_offPixmap
protected

◆ m_onPixmap

QPixmap m_onPixmap
protected

◆ m_overPixmap

QPixmap m_overPixmap
protected

◆ m_sText

QString m_sText
protected

◆ m_textFont

QFont m_textFont
protected

◆ m_timer

QTimer* m_timer
private

◆ m_timerTimeout

int m_timerTimeout
private