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

37 lines
965 B
C++

#pragma once
#include "core/domain/Project.h"
#include "props/PropertySectionWidget.h"
#include <QString>
class QComboBox;
class QListWidget;
class QPushButton;
namespace gui {
class HotspotPropertySection final : public PropertySectionWidget {
Q_OBJECT
public:
explicit HotspotPropertySection(QWidget* parent = nullptr);
void clearDisconnected();
void applyState(const QVector<core::Project::PresentationHotspot>& hotspots,
const QString& selectedHotspotId,
const QVector<QPair<QString, QString>>& animIdToLabelNonNone);
signals:
void hotspotSelected(const QString& hotspotId);
void targetAnimationChanged(const QString& hotspotId, const QString& animationId);
void deleteRequested(const QString& hotspotId);
private:
QString m_hotspotId;
QListWidget* m_hotspotList = nullptr;
QComboBox* m_targetAnim = nullptr;
QPushButton* m_btnDelete = nullptr;
};
} // namespace gui