# <copyright>
# Copyright (c) 2010-2014 Henshin developers. 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
# </copyright>

pluginName=Henshin Interpreter UI
providerName=Eclipse Modeling Project

_UI_Command_ApplyWithHenshin = Apply Transformation
_UI_Command_GenerateGiraphCode = Generate Giraph Code
_UI_Create_Dynamic_Instance = Create Dynamic Instance

_UI_ApplyTransformation = &Apply Transformation

_UI_CheckResource = Evaluate
_UI_CheckResourceRequired = Please evaluate the resource string.  

_UI_HenshinationException_Title = Transformation Engine Exception 
_UI_HenshinationException_Msg = The unit could not be applied. 

_UI_ParameterColumn_Name = Parameter
_UI_ParameterColumn_Kind = Kind
_UI_ParameterColumn_Value = Value
_UI_ParameterColumn_Type = Type
_UI_ParameterColumn_Unset = Unset

_UI_ParameterType_Clear = <ignore>
_UI_ParameterType_Null = <null>
_UI_ParameterType_String = EString
_UI_ParameterType_Long = ELong
_UI_ParameterType_Int = EInt
_UI_ParameterType_Float = EFloat
_UI_ParameterType_Double = EDouble
_UI_ParameterType_Boolean = EBoolean

_UI_SelectTransformationUnit = Unit / Rule
_UI_InputModel = Input Model
_UI_OutputModel = Output Model
_UI_Parameters = Parameters
_UI_Status_MultipleErrors = Several errors have occurred
_UI_Status_SingleError = An error has occurred

_UI_UndoableOperation_Henshin = Henshin

_UI_Wizard = Apply Henshin Transformation
_UI_Wizard_DefaultDescription = Select a transformation, input and output models, and set parameters.

_UI_BrowseWorkspace_Title = Select model
_UI_BrowseWorkspace_Message = Select the model to be transformed:

_UI_ShowInnerUnits = Show Inner Units
