###############################################################################
# Copyright (c) 2009 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
###############################################################################
#
# RCP Mail Plug-in Resources
#
Update.command=Check for Updates
Update.command.mnemonic=U
Install.command=Install New Software...
Install.command.mnemonic=S
provisioningPrefPage = Install/Update
sitesPrefPage = Available Software Sites
installedSoftwarePage = Installed Software
installHistoryPage = Installation History
preferenceKeywords.general=automatic update schedule download site software install import bundle
preferences=Update and Install Preferences