Files
hfut-bishe/client/gui/dialogs/AnimationSchemeSettingsDialog.h
2026-05-14 13:30:06 +08:00

38 lines
788 B
C++

#pragma once
#include <QDialog>
#include <QString>
namespace core {
class ProjectWorkspace;
}
class QCheckBox;
class QLineEdit;
class QSpinBox;
class AnimationSchemeSettingsDialog final : public QDialog {
Q_OBJECT
public:
enum class Mode { Create, Edit };
AnimationSchemeSettingsDialog(Mode mode, core::ProjectWorkspace& workspace, QWidget* parent = nullptr);
void setEditTarget(const QString& animationId);
QString createdNewId() const { return m_createdNewId; }
private:
void accept() override;
Mode m_mode = Mode::Create;
core::ProjectWorkspace& m_workspace;
QString m_editId;
QString m_createdNewId;
QLineEdit* m_name = nullptr;
QSpinBox* m_frames = nullptr;
QSpinBox* m_fps = nullptr;
QCheckBox* m_loop = nullptr;
};