###############################################################################
# Copyright (c) 2003, 2004 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
###############################################################################
pluginName=Photran Managed Builder UI Plug-in
providerName=Eclipse.org

#The Resource Property page
MngBuildProp.name=Fortran Build
MngResourceProp.name=Fortran Build



page.c.general=Fortran General

## New CDT project model - property pages names
page.c.build=Fortran Build
CDTPathSymbolsProperty.name=Paths and Symbols
CDTExpPathSymbolsProperty.name=Export Settings
CDTBuildProperty.name=Settings
CDTToolchainProperty.name=Tool Chain Editor
CDTVariablesProperty.name=Variables
Discovery.options=Discovery Options
Environment=Environment
