19 lines
483 B
C++
19 lines
483 B
C++
// dataModel.h
|
|
#pragma once
|
|
#include "diagramEditor/editItems.h"
|
|
#include "diagramEditor/dataModel.h"
|
|
#include <QGraphicsLinearLayout>
|
|
|
|
class EditItemFactory {
|
|
public:
|
|
virtual ~EditItemFactory() = default;
|
|
|
|
virtual EditBaseItem* createItem(BlockDataPtr blockData) = 0;
|
|
virtual QGraphicsLinearLayout* createLayerLayout() = 0;
|
|
|
|
static EditItemFactory* getFactory(int itemType);
|
|
|
|
protected:
|
|
virtual void setupItem(EditBaseItem* item, BlockDataPtr blockData) = 0;
|
|
};
|