#pragma once #include #include class SciEdit : public ScintillaEdit { Q_OBJECT public: explicit SciEdit(QWidget * parent = nullptr); enum FoldType { NoFoldType, BoxFoldType, }; Q_ENUMS(FoldType) void setStyleFont(const QFont & font, int style = STYLE_DEFAULT); void setFolding(FoldType foldType, int margin = 2); void setLexer(Scintilla::ILexer5 * lexer); void sendColor(unsigned int iMessage, uptr_t wParam, const QColor &col) const; signals: void cursorPosChanged(int line, int index); private: void setMarkerDefine(int markerNumber, int markerSymbol); };