Files
gcs-nf/App/mainwindow.h
T
2025-03-11 16:43:38 +08:00

206 lines
3.9 KiB
C++

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "QApplication"
#include "QElapsedTimer"
#include "Config/Config.h"
#include "Cockpit.h"
#include "mavlinknode.h"
#include "QThread"
#include "opmapwidget.h"
#include "Cockpit.h"
#include "dlink.h"
#include "skin.h"
#include "StatusUI/StatusUI.h"
#include "InspectUI/InspectUI.h"
#include "ToolsUI/ToolsUI.h"
#include "HealthUI/HealthUI.h"
#include "pureprojection.h"
//sub widget
#include "About/About.h"
#include "Help/Help.h"
#include "Setting/Setting.h"
#include "QTextToSpeech"
//cmd ui
#include "QQuickWidget"
#include "QQuickView"
#include "CommandUI/CommandUI.h"
//mission ui
#include "MissionUI/propertyui.h"
//menubar ui
#include "MenuBarUI/MenuBarUI.h"
//selfcheck
#include "CheckUI/CheckUI.h"
QT_BEGIN_MOC_NAMESPACE
//#pragma execution_character_set("utf-8")
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
public slots:
void showMessage(const QString &message,int TimeOut = 0);
void setCommunicationLostState(bool flag);
void beep(int id);
void setBeep(QVariant state);
void TTSsay(QString str);
void setTTS(QVariant state);
void setServoOffset(QVariant dirla, QVariant dirra, QVariant dirle, QVariant dirre, QVariant dirru,
QVariant maxla, QVariant maxra, QVariant maxle, QVariant maxre, QVariant maxru,
QVariant scalela, QVariant scalera, QVariant scalele, QVariant scalere, QVariant scaleru,
QVariant la, QVariant ra,QVariant le, QVariant re,QVariant ru);
void RTCM_Byte(uint32_t count);
protected slots:
bool event(QEvent *event);
void closeEvent(QCloseEvent *event);
void resizeEvent(QResizeEvent *event);
void mousePressEvent(QMouseEvent* event);
void keyPressEvent(QKeyEvent *event);
//void mouseMoveEvent();
private slots:
void onTabIndexChanged(const int &index);
void cmd_longSlot(float param1,float param2,float param3,float param4,float param5,float param6,float param7,uint16_t command,uint8_t confirmation);
void updateUI();
void TotalDistance(double value);
void Timer_1s_out(void);
void updateDlink(float rssi, uint64_t in, uint64_t out);
void dlinkCount(int in,int out);
protected slots:
signals:
void currentGroup(int value);
protected:
int group_old;
int group;
int MainIndex = 0;
int dlinkout = 0;
Config *config = nullptr;
StatusUI *statusui = nullptr;
HealthUI *healthui = nullptr;
MenuBarUI *menuBarUI = nullptr;
CommandUI *commandUI = nullptr;
Cockpit *copk = nullptr;
CheckUI *checkUI = nullptr;
propertyui *missionUI = nullptr;
mapcontrol::OPMapWidget *map = nullptr;
DLink *dlink = nullptr;
ToolsUI *toolsui = nullptr;
Setting *setting = nullptr;
QQuickWidget *quick = nullptr;
QTimer *updateTimer = nullptr;
QTextToSpeech *tts = nullptr;
bool isCommunicationLost = true;
internals::PointLatLng StartPoint;
QTimer *Timer_1s = nullptr;
QDateTime *FlightTime = nullptr;
QDateTime *StartupTime = nullptr;
bool isEngineStartUp = false;
bool isEnableBeep = true;
bool isEnableTTS = true;
QVariant dir_la;
QVariant dir_ra;
QVariant dir_le;
QVariant dir_re;
QVariant dir_ru;
QVariant max_la;
QVariant max_ra;
QVariant max_le;
QVariant max_re;
QVariant max_ru;
QVariant scale_la;
QVariant scale_ra;
QVariant scale_le;
QVariant scale_re;
QVariant scale_ru;
QVariant bias_la;
QVariant bias_ra;
QVariant bias_le;
QVariant bias_re;
QVariant bias_ru;
};
#endif // MAINWINDOW_H