#ifndef QMPCHANNELSWINDOW_H #define QMPCHANNELSWINDOW_H #include #include #include #include #include #include #include "qmppresetselect.hpp" #include "qmpchanneleditor.hpp" namespace Ui { class qmpChannelsWindow; } class QDCLabel:public QLabel { Q_OBJECT private: int id; protected: void mouseDoubleClickEvent(QMouseEvent *event){event->accept();emit onDoubleClick(id);} public: QDCLabel(QString s):QLabel(s){id=-1;} void setID(int _id){id=_id;} signals: void onDoubleClick(int id); }; class QDCPushButton:public QPushButton { Q_OBJECT private: int id; protected: void mousePressEvent(QMouseEvent *event){QPushButton::mousePressEvent(event);emit onClick(id);} public: QDCPushButton(QString s):QPushButton(s){id=-1;} void setID(int _id){id=_id;} signals: void onClick(int id); }; class qmpChannelsWindow:public QDialog { Q_OBJECT public: explicit qmpChannelsWindow(QWidget *parent = 0); ~qmpChannelsWindow(); void showEvent(QShowEvent *event); void closeEvent(QCloseEvent *event); void moveEvent(QMoveEvent *event); signals: void dialogClosing(); public slots: void channelWindowsUpdate(); void channelMSChanged(); void showPresetWindow(int chid); void showChannelEditorWindow(int chid); void on_pbUnmute_clicked(); void on_pbUnsolo_clicked(); private: Ui::qmpChannelsWindow *ui; qmpPresetSelector *pselectw; qmpChannelEditor *ceditw; }; #endif // QMPCHANNELSWINDOW_H