You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
963 B

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. #ifndef SCREEN_RECORDER_MAIN_WINDOW_HPP
  2. #define SCREEN_RECORDER_MAIN_WINDOW_HPP
  3. #include "obs-manager.hpp"
  4. #include "settings-window.hpp"
  5. #include "preview-window.hpp"
  6. #include <gtkmm.h>
  7. class MainWindow : public Gtk::Window
  8. {
  9. public:
  10. MainWindow(Glib::RefPtr<Gtk::Application> app, OBSManager *obs);
  11. virtual ~MainWindow();
  12. private:
  13. Glib::RefPtr<Gtk::Application> mApp;
  14. OBSManager *mOBS;
  15. void onPreviewClicked();
  16. void onStartClicked();
  17. void onSettingsClicked();
  18. void onExitClicked();
  19. void onCleanupDone();
  20. Gtk::Box mBoxMain;
  21. Gtk::Box mBoxSpacer;
  22. Gtk::Button mButtonPreview;
  23. Gtk::Button mButtonStart;
  24. Gtk::Button mButtonSettings;
  25. Gtk::Button mButtonExit;
  26. Gtk::Label mLabelVersion;
  27. SettingsWindow mSettingsWindow;
  28. PreviewWindow mPreviewWindow;
  29. // Signals
  30. void onPreviewStarted();
  31. void onRecordingStarted();
  32. void onRecordingStopped();
  33. void on_show();
  34. };
  35. #endif