60 lines
1.5 KiB
C++
60 lines
1.5 KiB
C++
#ifndef MAINWINDOW_HPP
|
|
#define MAINWINDOW_HPP
|
|
|
|
#include <QDoubleSpinBox>
|
|
#include <QMainWindow>
|
|
#include <QMap>
|
|
#include <QSystemTrayIcon>
|
|
#include <functional>
|
|
|
|
#include <recording/recordingcontroller.hpp>
|
|
#include <uploaders/uploader.hpp>
|
|
|
|
namespace Ui {
|
|
class MainWindow;
|
|
}
|
|
|
|
class MainWindow : public QMainWindow {
|
|
Q_OBJECT
|
|
private slots:
|
|
void quit();
|
|
void toggleVisible();
|
|
void newUploader(Uploader *u);
|
|
|
|
void on_actionQuit_triggered();
|
|
void on_actionFullscreen_triggered();
|
|
void on_actionArea_triggered();
|
|
void on_uploaderList_clicked(const QModelIndex &);
|
|
void on_nameScheme_textEdited(const QString &arg1);
|
|
void on_delay_valueChanged(double arg1);
|
|
void on_hotkeys_doubleClicked(const QModelIndex &index);
|
|
void on_settingsButton_clicked();
|
|
void on_quickMode_clicked(bool checked);
|
|
void on_hideToTray_clicked(bool checked);
|
|
void on_actionColor_Picker_triggered();
|
|
void on_captureCursor_clicked(bool checked);
|
|
void on_formatBox_currentIndexChanged(int index);
|
|
void on_imageFormatBox_currentIndexChanged(const QString &arg1);
|
|
|
|
public:
|
|
explicit MainWindow(QWidget *parent = 0);
|
|
~MainWindow();
|
|
Ui::MainWindow *ui;
|
|
|
|
QSystemTrayIcon *tray;
|
|
void setScheme(QString scheme);
|
|
QDoubleSpinBox *delay();
|
|
|
|
static MainWindow *inst();
|
|
QMap<QString, std::function<void()>> fncs;
|
|
|
|
private:
|
|
static MainWindow *instance;
|
|
RecordingController *controller = new RecordingController;
|
|
|
|
protected:
|
|
void closeEvent(QCloseEvent *event);
|
|
};
|
|
|
|
#endif // MAINWINDOW_HPP
|