###############################################################################
# Copyright (c) 2000, 2003 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-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