46 lines
1.3 KiB
C
Raw Normal View History

2026-06-26 17:55:15 +08:00
#ifndef DRONESCREWCTRL_DIALOG_ALGOARG_H
#define DRONESCREWCTRL_DIALOG_ALGOARG_H
#include <QDialog>
#include "IVrConfig.h"
namespace Ui { class DialogAlgoArg; }
2026-07-01 18:16:18 +08:00
class QCheckBox;
2026-06-26 17:55:15 +08:00
class DialogAlgoArg : public QDialog
{
Q_OBJECT
public:
explicit DialogAlgoArg(QWidget* parent = nullptr);
~DialogAlgoArg() override;
void SetParams(const DroneScrewAlgoUiParams& params);
DroneScrewAlgoUiParams GetParams() const;
2026-07-01 18:16:18 +08:00
void SetDisplayOptions(const DroneScrewDisplayOption& options);
DroneScrewDisplayOption GetDisplayOptions() const;
2026-06-26 17:55:15 +08:00
private slots:
void on_btn_ok_clicked();
void on_btn_cancel_clicked();
void on_btn_apply_clicked();
void on_btn_reset_clicked();
private:
2026-07-03 14:19:06 +08:00
bool eventFilter(QObject* watched, QEvent* event) override;
2026-06-26 17:55:15 +08:00
void loadToUi(const DroneScrewAlgoUiParams& p);
DroneScrewAlgoUiParams collectFromUi() const;
2026-07-03 14:19:06 +08:00
void setupInputKeyboard();
2026-07-01 18:16:18 +08:00
void createDisplayRows();
void loadDisplayToUi(const DroneScrewDisplayOption& options);
DroneScrewDisplayOption collectDisplayFromUi() const;
2026-06-26 17:55:15 +08:00
private:
Ui::DialogAlgoArg* ui{nullptr};
DroneScrewAlgoUiParams m_params;
2026-07-01 18:16:18 +08:00
DroneScrewDisplayOption m_displayOptions;
QCheckBox* m_checkDrawBoxes{nullptr};
2026-06-26 17:55:15 +08:00
};
#endif // DRONESCREWCTRL_DIALOG_ALGOARG_H