Files
Sourcetrail/src/lib/component/ComponentManager.h
T
Eberhard Graether 2c90b75a9f ui: Indexing UI
* Added DialogView with QtDialogView implementation to handle information dialogs
* Implemented QtIndexingDialog class that covers all different dialogs for indexing
* Directly communicate with DialogView from Prpject and all Tasks involved in indexing
* Block QtMainWindow UI while indexing
2016-08-23 23:45:45 +02:00

45 lines
911 B
C++

#ifndef COMPONENT_MANAGER_H
#define COMPONENT_MANAGER_H
#include <memory>
#include <vector>
#include "component/Component.h"
#include "component/ComponentFactory.h"
class CompositeView;
class DialogView;
class NetworkFactory;
class StorageAccess;
class View;
class ViewFactory;
class ViewLayout;
class ComponentManager
{
public:
static std::shared_ptr<ComponentManager> create(ViewFactory* viewFactory, StorageAccess* graphAccess);
~ComponentManager();
void setup(ViewLayout* viewLayout);
void clearComponents();
void refreshViews();
DialogView* getDialogView() const;
private:
ComponentManager();
ComponentManager(const ComponentManager&);
std::shared_ptr<ComponentFactory> m_componentFactory;
std::vector<std::shared_ptr<CompositeView>> m_compositeViews;
std::vector<std::shared_ptr<Component>> m_components;
std::shared_ptr<DialogView> m_dialogView;
};
#endif // COMPONENT_MANAGER_H