56 lines
1.7 KiB
C++
56 lines
1.7 KiB
C++
#ifndef MainWidget_H
|
|
#define MainWidget_H
|
|
#include "../Global.h"
|
|
#include "YSGraphic_Core/base/export.h"
|
|
#include <QAudioRecorder>
|
|
#include <QMediaPlayer>
|
|
#include <QMediaRecorder>
|
|
#include <QWidget>
|
|
|
|
class IntermediateFrequencyWidget;
|
|
class SweepFrequencyWidget;
|
|
class RadioWidget;
|
|
class BaseWidget;
|
|
class ShowTime;
|
|
class BaseWidgetMenu;
|
|
class QVBoxLayout;
|
|
class TopMenuBar;
|
|
class ServerSettingWidget;
|
|
class FileExplorer;
|
|
class MainWidget : public QWidget, public YSG::SingletonWidget<MainWidget> {
|
|
public:
|
|
explicit MainWidget(QWidget *parent = nullptr);
|
|
QVBoxLayout *mMainLayout;
|
|
RadioWidget *mRadioWidget;
|
|
SweepFrequencyWidget *mSweepFrequencyWidget;
|
|
IntermediateFrequencyWidget *mIntermediateFrequencyWidget;
|
|
TopMenuBar* mTopMenuBar;
|
|
BaseWidgetMenu *mMainMenu, *mTopMenu;
|
|
ServerSettingWidget* mServerSettingWidget;
|
|
void showIntermediateFrequencyWidget() const;
|
|
void showSweepFrequencyWidget() const;
|
|
void showRadioWidget() const;
|
|
void showServerSettingWidget();
|
|
[[nodiscard]] BaseWidget* getCurrentBaseWidget() const;
|
|
QWidget* currentHoverWidget() {return mCurrentHoverWidget;}
|
|
void setCurrentHoverWidget(QWidget* widget = nullptr);
|
|
void hideCurHoverWidget();
|
|
|
|
|
|
bool mSelectShotScreenDialogFirst = true, mSelectAudioFileFirst = true;
|
|
FileExplorer *mSelectShotScreenDialog, *mSelectAudioFile;
|
|
QAudioRecorder *audioRecorder;
|
|
QMediaPlayer *mediaPlayer;
|
|
protected:
|
|
void paintEvent(QPaintEvent *event) override;
|
|
void resizeEvent(QResizeEvent *event) override;
|
|
void keyPressEvent(QKeyEvent *event) override;
|
|
void wheelEvent(QWheelEvent *event) override;
|
|
private:
|
|
QWidget* mCurrentHoverWidget{};
|
|
};
|
|
#endif
|
|
|
|
|
|
|