51 lines
1.2 KiB
C
51 lines
1.2 KiB
C
|
#ifndef MAINWINDOWPAGECONTROL_H
|
||
|
#define MAINWINDOWPAGECONTROL_H
|
||
|
|
||
|
/*************该类主要用于管理页面间的切换***************/
|
||
|
#include "dataformate.h"
|
||
|
#include <QObject>
|
||
|
class MainWindowPageControl : public QObject
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
static MainWindowPageControl* getInstance();
|
||
|
|
||
|
/****设置当前页面****
|
||
|
* @int pageIndex 目标页面
|
||
|
* *************/
|
||
|
void setCurrentPage(int pageIndex);
|
||
|
|
||
|
//各个模块是否解锁
|
||
|
void setMainWindowBtnsLock(bool);
|
||
|
|
||
|
//获取当前页面下标
|
||
|
int getCurrentPageIndex();
|
||
|
//只修改页面所以,不发送槽函数
|
||
|
void setPageIndex(int pageIndex);
|
||
|
signals:
|
||
|
void signalSwitchPage(E_PAGENAME pageIndex);
|
||
|
|
||
|
void signalSetBtnsLock(bool);
|
||
|
//关闭当前运行的练习
|
||
|
void signalTurnOffRunning(int pageIndex);
|
||
|
private:
|
||
|
explicit MainWindowPageControl(QObject *parent = nullptr);
|
||
|
|
||
|
static MainWindowPageControl* m_pageControlInterface;
|
||
|
|
||
|
int m_currentPageIndex; //当前页面下标
|
||
|
|
||
|
//各界面状态
|
||
|
struct
|
||
|
{
|
||
|
bool moveRangeFlag;
|
||
|
bool trainModeFlag;
|
||
|
bool gameFlag;
|
||
|
bool evaluateFlag;
|
||
|
bool trainRecordFlag;
|
||
|
}ST_runningFlag;
|
||
|
|
||
|
};
|
||
|
|
||
|
#endif // MAINWINDOWPAGECONTROL_H
|