#pragma once #include #include #include class QDialog; class QLineEdit; class QListWidgetItem; class QLabel; class QPushButton; class ScriptPickerDialog : public QObject { Q_OBJECT public: enum CompletedState { Abandoned, Completed }; void runModal(QWidget* parent, QString suggestedName, CompletedState* state, QString* newName); private: QDialog* dialog; QLineEdit* nameEdit; CompletedState* picked; QString* newName; std::vector usedNames; private Q_SLOTS: void acceptLineEditValue(); };