###############################################################################
# Copyright (c) 2000, 2005 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
#
# Update UI plugin.xml resources
#
pluginName = Install/Update UI
providerName = Eclipse.org
fragmentNameWin = Install/Update UI for Windows

updateMenu.label = &Software Updates
actionSets.softwareUpdates.label = Software Updates
actionSets.updates.label = &Find and Install...
actionSets.configManager.label = &Manage Configuration...
actionSets.webSites.label = &Update Sites (experimental)

searchCategory.name = Search Category
searchCategories.updates = Available Updates
searchCategories.updates.desc = <form><p>Search for updates to \
features currently installed in this application. Updates are \
features that have the same identifier as the installed features, \
but newer versions.</p>\
<p>Use scope settings to control the \
extent of the search and the update sites that will be visited.</p>\
<p>Note that the settings in <b>Preferences</b> affect whether the new feature \
versions will be considered valid as updates.</p></form>

searchCategories.expression = Regular Expressions
searchCategories.expression.desc = <form><p>Search for features that \
contain desired text or reqular expression. Use the query settings \
to configure search options.</p></form>

searchCategories.plugin = Plug-ins in Features
searchCategories.plugin.desc = <form><p>Look for plug-ins that \
are packaged in the features. This search category is useful \
when required plug-ins of the feature you wanted to install \
were not found in this application.</p></form>

mainPreference.name = Install/Update

properties.general-info.label = General Information
properties.license.label = License Agreement
properties.copyright.label = Copyright
properties.status.label = Status
properties.currentConfig.activities = Activities

preferenceKeywords.general=update install proxy digital signature
