###############################################################################
#  Copyright (c) 2000, 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
#     Manumitting Technologies Inc - Added Solstice theme (bug 466370)
###############################################################################

# ==============================================
# Universal Welcome plugin.xml properties file
# ==============================================

plugin_name = Universal Welcome
provider_name = Eclipse.org

theme.name.circles = Circles
theme.name.purpleMesh = Purple Mesh (Classic Eclipse)
theme.name.slate = Slate
theme.name.solstice = Solstice