ProFileEditorFactory::ProFileEditorFactory() { setId(Constants::PROFILE_EDITOR_ID); setDisplayName(qApp->translate("OpenWith::Editors", Constants::PROFILE_EDITOR_DISPLAY_NAME)); addMimeType(Constants::PROFILE_MIMETYPE); addMimeType(Constants::PROINCLUDEFILE_MIMETYPE); addMimeType(Constants::PROFEATUREFILE_MIMETYPE); addMimeType(Constants::PROCONFIGURATIONFILE_MIMETYPE); addMimeType(Constants::PROCACHEFILE_MIMETYPE); addMimeType(Constants::PROSTASHFILE_MIMETYPE); setDocumentCreator([]() { return new ProFileDocument; }); setEditorWidgetCreator([]() { return new ProFileEditorWidget; }); ProFileCompletionAssistProvider *pcap = new ProFileCompletionAssistProvider; setCompletionAssistProvider(pcap); setCommentStyle(Utils::CommentDefinition::HashStyle); setEditorActionHandlers(TextEditorActionHandler::UnCommentSelection | TextEditorActionHandler::JumpToFileUnderCursor); Keywords keywords(pcap->variables(), pcap->functions(), QMap<QString, QStringList>()); addHoverHandler(new ProFileHoverHandler(keywords)); setSyntaxHighlighterCreator([keywords]() { return new ProFileHighlighter(keywords); }); const QString defaultOverlay = QLatin1String(QtSupport::Constants::ICON_QT_PROJECT); Core::FileIconProvider::registerIconOverlayForSuffix( creatorTheme()->imageFile(Theme::IconOverlayPro, defaultOverlay).toLatin1().data(), "pro"); Core::FileIconProvider::registerIconOverlayForSuffix( creatorTheme()->imageFile(Theme::IconOverlayPri, defaultOverlay).toLatin1().data(), "pri"); Core::FileIconProvider::registerIconOverlayForSuffix( creatorTheme()->imageFile(Theme::IconOverlayPrf, defaultOverlay).toLatin1().data(), "prf"); }
NimEditorFactory::NimEditorFactory() { setId(Constants::C_NIMEDITOR_ID); setDisplayName(tr(Nim::Constants::C_EDITOR_DISPLAY_NAME)); addMimeType(QLatin1String(Nim::Constants::C_NIM_MIMETYPE)); addMimeType(QLatin1String(Nim::Constants::C_NIM_SCRIPT_MIMETYPE)); setEditorActionHandlers(TextEditorActionHandler::Format | TextEditorActionHandler::UnCommentSelection | TextEditorActionHandler::UnCollapseAll); setEditorWidgetCreator([]{ auto result = new TextEditorWidget(); result->setLanguageSettingsId(Nim::Constants::C_NIMLANGUAGE_ID); return result; }); setDocumentCreator([]() { return new TextDocument(Constants::C_NIMEDITOR_ID); }); setIndenterCreator([](QTextDocument *doc) { return new NimIndenter(doc); }); setSyntaxHighlighterCreator([]() { return new NimHighlighter; }); setCompletionAssistProvider(new NimCompletionAssistProvider()); setCommentDefinition(CommentDefinition::HashStyle); setParenthesesMatchingEnabled(true); setCodeFoldingSupported(true); }
CppEditorFactory() { setId(Constants::CPPEDITOR_ID); setDisplayName(qApp->translate("OpenWith::Editors", Constants::CPPEDITOR_DISPLAY_NAME)); addMimeType(Constants::C_SOURCE_MIMETYPE); addMimeType(Constants::C_HEADER_MIMETYPE); addMimeType(Constants::CPP_SOURCE_MIMETYPE); addMimeType(Constants::CPP_HEADER_MIMETYPE); setDocumentCreator([]() { return new CppEditorDocument; }); setEditorWidgetCreator([]() { return new CppEditorWidget; }); setEditorCreator([]() { return new CppEditor; }); setAutoCompleterCreator([]() { return new CppAutoCompleter; }); setCommentStyle(Utils::CommentDefinition::CppStyle); setCodeFoldingSupported(true); setMarksVisible(true); setParenthesesMatchingEnabled(true); setEditorActionHandlers(TextEditorActionHandler::Format | TextEditorActionHandler::UnCommentSelection | TextEditorActionHandler::UnCollapseAll | TextEditorActionHandler::FollowSymbolUnderCursor); addHoverHandler(new CppHoverHandler); if (!Utils::HostOsInfo::isMacHost() && !Utils::HostOsInfo::isWindowsHost()) { FileIconProvider::registerIconOverlayForMimeType(creatorTheme()->iconOverlay(Theme::CppSourceMimetype).toLatin1().data(), Constants::CPP_SOURCE_MIMETYPE); FileIconProvider::registerIconOverlayForMimeType(creatorTheme()->iconOverlay(Theme::CSourceMimetype).toLatin1().data(), Constants::C_SOURCE_MIMETYPE); FileIconProvider::registerIconOverlayForMimeType(creatorTheme()->iconOverlay(Theme::CppHeaderMimetype).toLatin1().data(), Constants::CPP_HEADER_MIMETYPE); } }
EditorFactory::EditorFactory() { setId(Constants::EditorId); setDisplayName(qApp->translate("OpenWith::Editors", Constants::EditorDisplayName)); addMimeType(Constants::MimeType); addMimeType(Constants::ProjectMimeType); setDocumentCreator([]() { return new TextEditor::TextDocument(Constants::EditorId); }); setIndenterCreator([]() { return new Indenter; }); setEditorWidgetCreator([]() { return new EditorWidget; }); setEditorCreator([]() { return new Editor; }); setAutoCompleterCreator([]() { return new AutoCompleter; }); setCompletionAssistProvider(new CompletionAssistProvider); setSyntaxHighlighterCreator([]() { return new Highlighter; }); setCommentStyle(Utils::CommentDefinition::HashStyle); setParenthesesMatchingEnabled(true); setCodeFoldingSupported(true); setMarksVisible(true); addHoverHandler(new HoverHandler); setEditorActionHandlers(TextEditor::TextEditorActionHandler::Format | TextEditor::TextEditorActionHandler::UnCommentSelection | TextEditor::TextEditorActionHandler::UnCollapseAll | TextEditor::TextEditorActionHandler::FollowSymbolUnderCursor); }
ProFileEditorFactory::ProFileEditorFactory() { setId(Constants::PROFILE_EDITOR_ID); setDisplayName(QCoreApplication::translate("OpenWith::Editors", Constants::PROFILE_EDITOR_DISPLAY_NAME)); addMimeType(Constants::PROFILE_MIMETYPE); addMimeType(Constants::PROINCLUDEFILE_MIMETYPE); addMimeType(Constants::PROFEATUREFILE_MIMETYPE); addMimeType(Constants::PROCONFIGURATIONFILE_MIMETYPE); addMimeType(Constants::PROCACHEFILE_MIMETYPE); addMimeType(Constants::PROSTASHFILE_MIMETYPE); setDocumentCreator(createProFileDocument); setEditorWidgetCreator([]() { return new ProFileEditorWidget; }); setCompletionAssistProvider(new KeywordsCompletionAssistProvider(qmakeKeywords())); setCommentDefinition(Utils::CommentDefinition::HashStyle); setEditorActionHandlers(TextEditorActionHandler::UnCommentSelection | TextEditorActionHandler::JumpToFileUnderCursor); addHoverHandler(new ProFileHoverHandler); setSyntaxHighlighterCreator([]() { return new ProFileHighlighter; }); const QString defaultOverlay = QLatin1String(ProjectExplorer::Constants::FILEOVERLAY_QT); Core::FileIconProvider::registerIconOverlayForSuffix( creatorTheme()->imageFile(Theme::IconOverlayPro, defaultOverlay), "pro"); Core::FileIconProvider::registerIconOverlayForSuffix( creatorTheme()->imageFile(Theme::IconOverlayPri, defaultOverlay), "pri"); Core::FileIconProvider::registerIconOverlayForSuffix( creatorTheme()->imageFile(Theme::IconOverlayPrf, defaultOverlay), "prf"); }
CMakeEditorFactory::CMakeEditorFactory() { setId(Constants::CMAKE_EDITOR_ID); setDisplayName(tr(Constants::CMAKE_EDITOR_DISPLAY_NAME)); addMimeType(Constants::CMAKEMIMETYPE); addMimeType(Constants::CMAKEPROJECTMIMETYPE); setEditorCreator([]() { return new CMakeEditor; }); setEditorWidgetCreator([]() { return new CMakeEditorWidget; }); setDocumentCreator([]() { return new CMakeDocument; }); setIndenterCreator([]() { return new CMakeIndenter; }); setUseGenericHighlighter(true); setCommentStyle(Utils::CommentDefinition::HashStyle); setCodeFoldingSupported(true); setCompletionAssistProvider(new CMakeFileCompletionAssistProvider); setAutoCompleterCreator([]() { return new CMakeAutoCompleter; }); setEditorActionHandlers(TextEditorActionHandler::UnCommentSelection | TextEditorActionHandler::JumpToFileUnderCursor | TextEditorActionHandler::Format); ActionContainer *contextMenu = ActionManager::createMenu(Constants::M_CONTEXT); contextMenu->addAction(ActionManager::command(TextEditor::Constants::JUMP_TO_FILE_UNDER_CURSOR)); contextMenu->addSeparator(Context(Constants::CMAKE_EDITOR_ID)); contextMenu->addAction(ActionManager::command(TextEditor::Constants::UN_COMMENT_SELECTION)); }
PlainTextEditorFactory::PlainTextEditorFactory() { QTC_CHECK(!m_instance); m_instance = this; setId(Core::Constants::K_DEFAULT_TEXT_EDITOR_ID); setDisplayName(qApp->translate("OpenWith::Editors", Core::Constants::K_DEFAULT_TEXT_EDITOR_DISPLAY_NAME)); addMimeType(QLatin1String(TextEditor::Constants::C_TEXTEDITOR_MIMETYPE_TEXT)); setDocumentCreator([]() { return new TextDocument(Core::Constants::K_DEFAULT_TEXT_EDITOR_ID); }); setEditorWidgetCreator([]() { return new PlainTextEditorWidget; }); setIndenterCreator([]() { return new NormalIndenter; }); setEditorActionHandlers(TextEditorActionHandler::Format | TextEditorActionHandler::UnCommentSelection | TextEditorActionHandler::UnCollapseAll); }
ProFileEditorFactory::ProFileEditorFactory() { setId(Constants::PROFILE_EDITOR_ID); setDisplayName(qApp->translate("OpenWith::Editors", Constants::PROFILE_EDITOR_DISPLAY_NAME)); addMimeType(Constants::PROFILE_MIMETYPE); addMimeType(Constants::PROINCLUDEFILE_MIMETYPE); addMimeType(Constants::PROFEATUREFILE_MIMETYPE); addMimeType(Constants::PROCONFIGURATIONFILE_MIMETYPE); addMimeType(Constants::PROCACHEFILE_MIMETYPE); addMimeType(Constants::PROSTASHFILE_MIMETYPE); setDocumentCreator([]() { return new ProFileDocument; }); setEditorWidgetCreator([]() { return new ProFileEditorWidget; }); setCommentStyle(Utils::CommentDefinition::HashStyle); setEditorActionHandlers(TextEditorActionHandler::UnCommentSelection | TextEditorActionHandler::JumpToFileUnderCursor); Core::FileIconProvider::registerIconOverlayForSuffix(QtSupport::Constants::ICON_QT_PROJECT, "pro"); Core::FileIconProvider::registerIconOverlayForSuffix(QtSupport::Constants::ICON_QT_PROJECT, "pri"); Core::FileIconProvider::registerIconOverlayForSuffix(QtSupport::Constants::ICON_QT_PROJECT, "prf"); }