QtNovelUI/WordsIDE/storyunitsourceedit.h

63 lines
1.9 KiB
C
Raw Normal View History

#ifndef STORYUNITSOURCEEDIT_H
#define STORYUNITSOURCEEDIT_H
#include "SourceEditView.h"
namespace Components {
class StoryUnitSourceEditFactory : public Core::FileExtensionFactory
{
// PluginFactory interface
public:
2022-11-25 01:18:54 +00:00
virtual Core::Extension *newInstance(Core::AppCore *core) override;
virtual QList<Core::Scale> configs() const override;
virtual QWidget *getNewPanel(Config::Configration *config) override;
virtual QString extensionName() const override;
2022-11-25 01:32:42 +00:00
virtual QList<QString> suffixPeers() const override;
};
class StoryUnitSourceEdit : public FormattedTextEdit
{
public:
StoryUnitSourceEdit(Core::FileExtensionFactory *factory);
// Plugin interface
public:
virtual Core::FileExtensionFactory *factory() const override;
virtual void reload(QList<Config::Configration *> configs) override;
// ModeView interface
public:
virtual void modeReset(const QString &type) const override;
virtual QList<QString> modes() const override;
virtual QString currentMode() const override;
virtual QString title() const override;
// FormattedTextEdit interface
protected:
virtual void rehighlighter() override;
// VariedTextView interface
public:
virtual void setSource(Core::AppCore *core, const QFileInfo &src, QWidget *parent=nullptr) override;
private:
QSyntaxHighlighter *const words_highlighter;
Core::FileExtensionFactory *const factory_ins;
QFileInfo source_target;
Core::AppCore *core_ins;
// VariedTextView interface
public:
virtual void jumpTo(const QList<QString> &path) override;
// Extension interface
public:
virtual void resetProcsType(const QString &suffix) override;
};
}
#endif // STORYUNITSOURCEEDIT_H