#include #include #include QT_BEGIN_NAMESPACE class QAction; class QClipboard; class QMenu; class QSettings; QT_END_NAMESPACE class Window : public QDialog { Q_OBJECT public: Window(); protected: void closeEvent(QCloseEvent *ev) override; private slots: void iconActivated(QSystemTrayIcon::ActivationReason reason); void selectionChanged(); void quit(); private: void makeVisible(); bool startAudio(); QProcess *startPiper(QProcess *p); void play(); void stop(); QSystemTrayIcon *tIcon; QMenu *tMenu; QSettings *settings; QAction *quitAction; QAction *showAction; QProcess *piper, *extra; QClipboard *clip; QString text; bool textChanged; bool playing; };