#ifndef CHECKUI_H #define CHECKUI_H #include #include "QFile" #include "QDebug" #include "QPushButton" #include "QJsonArray" #include "QJsonDocument" #include "QJsonObject" #include "QJsonParseError" #include "QDir" #include #include "QStyle" #include "mavlinknode.h" #include "multiselector.h" #include "Selector.h" #include "Inputter.h" #include "CharInputter.h" namespace Ui { class CheckUI; } class CheckUI : public QWidget { Q_OBJECT public: explicit CheckUI(QWidget *parent = nullptr); ~CheckUI(); enum CheckState{ Init = 0, Pass, Fail, }; Q_ENUM(CheckState) signals: void cmd_int(float param1, float param2, float param3, float param4, int x, int y, float z); void cmd_long( float param1,float param2,float param3,float param4,float param5,float param6,float param7,uint16_t command,uint8_t confirmation); public slots: void RecieveMsg(mavlink_message_t msg); void addVehicles(int sysid, int compid); void commandAccepted(bool flag,uint16_t command,uint8_t result); private slots: void setVehicle(QVariant value); void on_commandClicked(); void on_pushButton_Vehicle_clicked(); void on_pushButton_Previous_clicked(); void on_pushButton_Next_clicked(); protected: QJsonObject parseCheckfiles(const QString& jsonFilename); void LoadCheckFiles(QString path); void reBuild(void); void loadCommandJson(QJsonObject jsonFilename); private: uint8_t sysid; /* ID of message sender system/aircraft */ uint8_t compid; /* ID of the message sender component */ mavlink_autopilot_version_t autopilot_version; mavlink_sys_status_t sys_status; mavlink_heartbeat_t heartbeat; mavlink_ping_t ping; mavlink_attitude_t attitude; mavlink_gps_raw_int_t gps_raw_int; mavlink_global_position_int_t global_position_int; mavlink_servo_output_raw_t servo_output_raw; mavlink_rc_channels_raw_t rc_channels_raw; mavlink_nav_controller_output_t nav_controller_output; mavlink_airspeed_autocal_t airspeed_autocal; mavlink_rpm_t rpm; mavlink_scaled_pressure_t scaled_pressure; mavlink_extended_sys_state_t extended_sys_state; mavlink_battery_status_t battery_status; mavlink_vibration_t vibration; mavlink_enginestate_t enginestate; mavlink_vfr_hud_t vfr_hud; static const char* _versionJsonKey; static const char* _spacingJsonKey; static const char* _commentJsonKey; static const char* _vehicleJsonKey; static const char* _ButtonJsonKey; static const char* _WidthJsonKey; static const char* _HeightJsonKey; static const char* _TextJsonKey; static const char* _rowJsonKey; static const char* _descriptionJsonKey; static const char* _columnJsonKey; static const char* _param1JsonKey; static const char* _param2JsonKey; static const char* _param3JsonKey; static const char* _param4JsonKey; static const char* _param5JsonKey; static const char* _param6JsonKey; static const char* _param7JsonKey; static const char* _commandJsonKey; static const char* _confirmJsonKey; QJsonArray infoArray; int spacing = 10; int width = 60; int height = 60; int version; QHash CheckFiles;// vehicle,check QHash Vehicles; Ui::CheckUI *ui; }; #endif // CHECKUI_H