javaeditor.cpp 2.51 KB
Newer Older
1 2
/****************************************************************************
**
3 4
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
5 6 7 8 9 10 11
**
** This file is part of Qt Creator.
**
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
12 13 14
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
15
**
16 17 18 19 20 21 22
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
23 24 25 26 27 28 29 30
**
****************************************************************************/

#include "javaeditor.h"
#include "javaindenter.h"
#include "androidconstants.h"
#include "javacompletionassistprovider.h"

31
#include <coreplugin/editormanager/ieditorfactory.h>
32 33
#include <texteditor/normalindenter.h>
#include <texteditor/textdocument.h>
34
#include <texteditor/texteditoractionhandler.h>
35
#include <texteditor/texteditorconstants.h>
36 37
#include <texteditor/texteditor.h>

38
#include <extensionsystem/pluginmanager.h>
39 40
#include <utils/fileutils.h>
#include <utils/uncommentselection.h>
41 42 43

#include <QFileInfo>

44 45
namespace Android {
namespace Internal {
46

47
static TextEditor::TextDocument *createJavaDocument()
48
{
49 50 51 52 53
    auto doc = new TextEditor::TextDocument;
    doc->setId(Constants::JAVA_EDITOR_ID);
    doc->setMimeType(QLatin1String(Constants::JAVA_MIMETYPE));
    doc->setIndenter(new JavaIndenter);
    return doc;
54 55
}

56 57 58 59 60 61
//
// JavaEditorFactory
//

JavaEditorFactory::JavaEditorFactory()
{
62
    setId(Constants::JAVA_EDITOR_ID);
63
    setDisplayName(tr("Java Editor"));
64
    addMimeType(Constants::JAVA_MIMETYPE);
65

66
    setDocumentCreator(createJavaDocument);
67
    setUseGenericHighlighter(true);
68
    setCommentStyle(Utils::CommentDefinition::CppStyle);
69
    setEditorActionHandlers(TextEditor::TextEditorActionHandler::UnCommentSelection);
70
    setCompletionAssistProvider(new JavaCompletionAssistProvider);
hjk's avatar
hjk committed
71
    setMarksVisible(true);
72 73 74 75
}

} // namespace Internal
} // namespace Android