[nostalgia] Update Studio to handle tabs and open directory dialog on Mac, Update core::init

This commit is contained in:
2021-10-31 13:31:12 -05:00
parent e29f65f351
commit ad743565b2
28 changed files with 416 additions and 155 deletions
+9 -17
View File
@@ -10,33 +10,25 @@
#include <functional>
#include <QVector>
#include <QWizardPage>
#include <ox/std/string.hpp>
#include <ox/std/vector.hpp>
#include "wizard.hpp"
#include <nostalgia/core/context.hpp>
namespace nostalgia::studio {
struct EditorMaker {
QStringList fileTypes;
std::function<class Editor*(QString)> make;
using Func = std::function<class Editor*(ox::String)>;
ox::Vector<ox::String> fileTypes;
Func make;
};
class Module {
public:
virtual ~Module() = default;
virtual ~Module() noexcept = default;
virtual QVector<WizardMaker> newWizards(const class Context *ctx);
virtual QVector<WizardMaker> importWizards(const Context *ctx);
virtual QVector<EditorMaker> editors(const class Context *ctx);
virtual ox::Vector<EditorMaker> editors(core::Context *ctx);
};
}
#define PluginInterface_iid "net.drinkingtea.nostalgia.studio.Module"
Q_DECLARE_INTERFACE(nostalgia::studio::Module, PluginInterface_iid)
}