/** * Copyright (c) 2009 Nikolaj Hald Nielsen * Copyright (c) 2009 Mark Kretschmann * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 2 of the License, or (at your option) any later * version. * * This program is distributed in the hope that it will be useful, but WITHOUT ANY * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A * PARTICULAR PURPOSE. See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ #ifndef VOLUMEPOPUPBUTTON_H #define VOLUMEPOPUPBUTTON_H #include class QAction; class QEvent; class QLabel; class QMenu; class QMouseEvent; class QWheelEvent; class VolumeSlider; class VolumePopupButton : public QToolButton { Q_OBJECT public: VolumePopupButton( QWidget * parent ); void refresh(); protected: virtual void mouseReleaseEvent( QMouseEvent * event ); virtual void wheelEvent( QWheelEvent * event ); private slots: void volumeChanged( float newVolume ); void muteStateChanged( bool muted ); private: QLabel * m_volumeLabel; QMenu * m_volumeMenu; VolumeSlider * m_volumeSlider; QAction * m_muteAction; float m_volumeBeforeMute; }; #endif // VOLUMEPOPUPBUTTON_H