#ifndef PROPERTIES_PANEL_H #define PROPERTIES_PANEL_H #include namespace uLib { class Object; namespace Qt { class PropertyEditor; } } class QVBoxLayout; class QLabel; /** * @class PropertiesPanel * @brief A panel dedicated to inspecting and editing properties of a selected uLib::Object. */ class PropertiesPanel : public QWidget { Q_OBJECT public: explicit PropertiesPanel(QWidget* parent = nullptr); virtual ~PropertiesPanel(); /** @brief Sets the object to be inspected. */ void setObject(uLib::Object* obj); signals: void propertyUpdated(); private: QVBoxLayout* m_layout; QWidget* m_titleBar; QLabel* m_titleLabel; uLib::Qt::PropertyEditor* m_editor; }; #endif // PROPERTIES_PANEL_H