# Copyright (c) 2013 QNX Software Systems and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0

pluginName=C/C++ Qt Support UI
providerName=Eclipse CDT

qmlEditor.name=QML Editor
qtProjectFileEditor.name=Qt Project File Editor

qtHighlighting.extName=Qt Semantic Highlighting
qtHighlighting.displayName=Qt Keywords

newProject.name=Qt Project

preferences.qt.name=Qt
