blob: 6dbf015f02ac8a091ffd686f0c549299ee839130 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#ifndef MODORGANIZER_INSTANCEMANAGERDIALOG_INCLUDED
#define MODORGANIZER_INSTANCEMANAGERDIALOG_INCLUDED
#include <QDialog>
namespace Ui { class InstanceManagerDialog; };
class InstanceInfo;
class PluginContainer;
class InstanceManagerDialog : public QDialog
{
Q_OBJECT
public:
explicit InstanceManagerDialog(
const PluginContainer& pc, QWidget *parent = nullptr);
~InstanceManagerDialog();
void select(std::size_t i);
void openSelectedInstance();
private:
static const std::size_t NoSelection = -1;
std::unique_ptr<Ui::InstanceManagerDialog> ui;
const PluginContainer& m_pc;
std::vector<std::unique_ptr<InstanceInfo>> m_instances;
void onSelection();
void createNew();
std::size_t singleSelection() const;
void fill(const InstanceInfo& ii);
};
#endif // MODORGANIZER_INSTANCEMANAGERDIALOG_INCLUDED
|