Loading...
Searching...
No Matches
InspectorWidgetFactoryInterface.hpp
1#pragma once
2#include <score/plugins/Interface.hpp>
3
4#include <score_lib_inspector_export.h>
5
6class QWidget;
8
9namespace score
10{
11struct DocumentContext;
12}
13
14namespace Inspector
15{
16class InspectorWidgetBase;
31class SCORE_LIB_INSPECTOR_EXPORT InspectorWidgetFactory : public score::InterfaceBase
32{
33 SCORE_INTERFACE(InspectorWidgetFactory, "e7098592-7e2f-400d-9b71-2628d7276f99")
34public:
35 static const constexpr bool ui_interface = true;
36 using InspectedObjects = QList<const IdentifiedObjectAbstract*>;
38
44 virtual QWidget* make(
45 const InspectedObjects& sourceElement, const score::DocumentContext& doc,
46 QWidget* parent) const = 0;
47
48 virtual bool update(QWidget* cur, const InspectedObjects& obj) const;
49
50 virtual bool matches(const InspectedObjects& objects) const = 0;
51};
52}
Base class for IdentifiedObject.
Definition IdentifiedObjectAbstract.hpp:16
The InspectorWidgetFactoryInterface class.
Definition InspectorWidgetFactoryInterface.hpp:32
virtual QWidget * make(const InspectedObjects &sourceElement, const score::DocumentContext &doc, QWidget *parent) const =0
makeWidget Makes a widget for the inspector from an object
Base class for plug-in interfaces.
Definition Interface.hpp:52
Classes used for making and extending the inspector (default right panel).
Definition lib/score/widgets/Layout.hpp:27
Base toolkit upon which the software is built.
Definition Application.cpp:90
Definition ObjectMatches.hpp:6
Definition DocumentContext.hpp:18