###############################################################################
# Copyright (c) 2007, 2016 IBM Corporation 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
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
pluginName = API Tools UI
providerName = Eclipse.org

ApiProfilesPreferencePage.name = API Baselines
ApiProfilesPreferencePage.keywords = API SPI profile baseline
ApiErrorsWarningsPreferencePage.name = API Errors/Warnings
ApiErrorsWarningsPreferencePage.keywords = API SPI profile settings compare delta error warning execution environment references descriptions
ApiErrorsWarningsPage.name = API Errors/Warnings
ApiErrorsWarningsPage.keywords = API errors warnings
ApiFiltersPage.name = API Problem Filters
ApiFiltersPage.keywords = API SPI profile settings search filter error problem
ApiToolingSetup.name = API &Tools Setup...
ApiToolingSetup.tooltip = Configure projects for API usage and compatibility checks
ApiProblemFilters.name = Remove &API Problem Filters...
ApiProblemFilters.tooltip = Remove API problem filters for this project
MarkerCategory.name = API Problems
ApiToolsJavadocProposals.name = API Tools Javadoc Proposals
MarkerGroupingEntryLabel=API Usage and Compatibility
ApiToolsProposalCategory.name = API Tools Proposals
APICompare.name=API Baseline...
Apitoolingview.name=API Tools
Apitoolingview.category.name=API Tools
FilterDeleteParticipant.name = API Problem Filter Delete Participant
FilterRenameParticipant.name = API Problem Filter Rename Participant
FilterMoveParticipant.name = API Problem Filter Move Participant
CompareWithMenu.label=Comp&are With
LaunchConfigurationType.name=API Use Report
LaunchConfigurationTabGroup.name=Creates an API use scan report
ApiUseScanPreferencePage.name=API Use Scans
apiUseScanKeyword.label = API use scan external dependencies search build
APIToolsTrace.name = API Tools Core
quickFixProcessor.name = API Tools quick fix processor
ConvertJavadocCommand.description = Starts a wizard that will allow you to convert existing Javadoc tags to annotations
ConvertJavadocCommand.name = Convert API Tools &Javadoc Tags...
CompareToBaselineCommand.description = Allows to compare the selected resource with the current baseline