Computer Assisted Medical Intervention Tool Kit version 6.0
 
Loading...
Searching...
No Matches
ExtensionBuilderPresenter.h
Go to the documentation of this file.
1/*****************************************************************************
2 * $CAMITK_LICENCE_BEGIN$
3 *
4 * CamiTK - Computer Assisted Medical Intervention ToolKit
5 * (c) 2001-2025 Univ. Grenoble Alpes, CNRS, Grenoble INP - UGA, TIMC, 38000 Grenoble, France
6 *
7 * Visit http://camitk.imag.fr for more information
8 *
9 * This file is part of CamiTK.
10 *
11 * CamiTK is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * CamiTK is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details.
19 *
20 * You should have received a copy of the GNU Lesser General Public License
21 * version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22 *
23 * $CAMITK_LICENCE_END$
24 ****************************************************************************/
25
26#ifndef __CMAKE_PROJECT_MANAGER_PRESENTER__
27#define __CMAKE_PROJECT_MANAGER_PRESENTER__
28
29#include <ExtensionBuilder.h>
30
31#include <QListWidget>
32#include <QTextEdit>
33#include <QVBoxLayout>
34#include <QHBoxLayout>
35#include <QPushButton>
36#include <QLabel>
37
45class ExtensionBuilderPresenter : public QWidget {
46 Q_OBJECT
47
48public:
53 ExtensionBuilderPresenter(const QString& camitkFilePath, const QList<ExtensionBuilder::ExtensionBuilderStage>& stages, QWidget* parent = nullptr);
54
57
58signals:
60 void allStagesFinished(bool status);
63
64private slots:
66 void stageClicked(QListWidgetItem* item);
67
69 void stageStarted(const QString& stage);
70
72 void stageFinished(const QString& stage, bool success, const QString& output);
73
75 void start();
76
78 void closeClicked();
79
80protected:
82 void closeEvent(QCloseEvent* event) override;
83
84private:
86 QListWidget* stageListWidget;
87
89 QTextEdit* outputTextEdit;
90
92 ExtensionBuilder* extensionBuilder;
93
95 QLabel* statusBarLabel;
96
98 QPushButton* startCloseButton;
99
101 QListWidgetItem* getListItem(QString stage);
102};
103
104#endif // __CMAKE_PROJECT_MANAGER_PRESENTER__
Presenter for ExtensionBuilder.
Definition ExtensionBuilderPresenter.h:45
void allStagesFinished(bool status)
sent when all the stages are finished with the resulting status
~ExtensionBuilderPresenter()
Destructor.
Definition ExtensionBuilderPresenter.cpp:83
void closeEvent(QCloseEvent *event) override
called when the user closes the widget's window using the window manager button
Definition ExtensionBuilderPresenter.cpp:103
void cMakeProjectManagerPresenterClosed()
sent when the widget's window is closed
Build an extension from the given CamiTK file.
Definition ExtensionBuilder.h:82
Definition PersistenceManager.h:30