#/*******************************************************************************
# * Copyright (c) 2008, 2011 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
# *******************************************************************************/

pluginName = STEM Image Writer Logger
providerName = Eclipse.org


dc_identifier=org.eclipse.stem.loggers.imagewriter.dublin_core
dc_publisher = The Eclipse Foundation
dc_license = Eclipse Public License (EPL)
dc_creator_stemteam = STEM team
dc_source = http://wiki.eclipse.org/STEM_Loggers

dc_title_mapview = Map View Logger
dc_descr_mapview = Logs the STEM Map View to a file

dc_title_equirect = Equirectangular Map Logger
dc_descr_equirect = Logs map to an image using an equirectangular map projection

dc_title_mercator = Mercator Map Logger
dc_descr_mercator = Logs map to an image using the Mercator map projection

dc_title_ortho = Orthographic Map Logger
dc_descr_ortho = Logs map to an image using an orthographic map projection

dc_title_azeq = Azimuthal Equidistant Map Logger
dc_descr_azeq = Logs map to an image using an azimuthal equidistant map projection

_UI_CreateChild_text = {0}
_UI_CreateChild_text2 = {1} {0}
_UI_CreateChild_text3 = {1}
_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
_UI_PropertyDescriptor_description = The {0} of the {1}
_UI_ImageWriterLogger_type = Image Writer Logger
_UI_Unknown_type = Object
_UI_Unknown_datatype= Value
_UI_ImageWriterLogger_useDefaultLogDirectory_feature = Use Default Log Directory
_UI_ImageWriterLogger_logDirectory_feature = Log Directory
_UI_ImageWriterLogger_projection_feature = Projection
_UI_Unknown_feature = Unspecified
_UI_MAP_PROJECTIONS_EQUIRECTANGULAR_literal = EQUIRECTANGULAR
_UI_MAP_PROJECTIONS_MERCATOR_literal = MERCATOR
_UI_ImageWriterLogger_dataPath_feature = Data Path
_UI_ImagewriterEditor_menu = &Imagewriter Editor
_UI_CreateChild_menu_item = &New Child
_UI_CreateSibling_menu_item = N&ew Sibling
_UI_ShowPropertiesView_menu_item = Show &Properties View
_UI_RefreshViewer_menu_item = &Refresh
_UI_SelectionPage_label = Selection
_UI_ParentPage_label = Parent
_UI_ListPage_label = List
_UI_TreePage_label = Tree
_UI_TablePage_label = Table
_UI_TreeWithColumnsPage_label = Tree with Columns
_UI_ObjectColumn_label = Object
_UI_SelfColumn_label = Self
_UI_NoObjectSelected = Selected Nothing
_UI_SingleObjectSelected = Selected Object: {0}
_UI_MultiObjectSelected = Selected {0} Objects
_UI_OpenEditorError_label = Open Editor
_UI_Wizard_category = Example EMF Model Creation Wizards
_UI_CreateModelError_message = Problems encountered in file "{0}"
_UI_ImagewriterModelWizard_label = Imagewriter Model
_UI_ImagewriterModelWizard_description = Create a new Imagewriter model
_UI_ImagewriterEditor_label = Imagewriter Model Editor
_UI_ImagewriterEditorFilenameDefaultBase = My
_UI_ImagewriterEditorFilenameExtensions = imagewriter
_UI_Wizard_label = New
_WARN_FilenameExtension = The file name must end in ''.{0}''
_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
_UI_ModelObject = &Model Object
_UI_XMLEncoding = &XML Encoding
_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
_UI_Wizard_initial_object_description = Specify a file name and select a model object to create
_UI_FileConflict_label = File Conflict
_WARN_FileConflict = The file "{0}" already exists.  Do you want to replace the existing file?
_UI_ImageWriterLoggerEditorAdvisor_ActionSet_label = ImageWriterLogger Action Set
_UI_Perspective_label = ImageWriterLogger
_UI_Browse_label = &Browse...
_UI_File_label = &File
_UI_Question_title = Question
_UI_Error_title = Error
_WARN_No_Editor = There is no editor registered for the file "{0}".
_UI_Application_title = ImageWriterLogger Application
_UI_Menu_File_label = &File
_UI_Menu_New_label = &New
_UI_Menu_Open_label = &Open...
_UI_Menu_Open_description = Opens a model object file
_UI_Menu_OpenURI_label = &Open URI...
_UI_Menu_OpenURI_description = Opens a model object loading it from a URI
_UI_Menu_Edit_label = &Edit
_UI_Menu_Window_label = &Window
_UI_Menu_Help_label = &Help
_UI_Menu_About_label = ImageWriterLogger &About...
_UI_About_title = ImageWriterLogger Application
_UI_About_text = ImageWriterLogger Application about box goes here.
_UI_ImagewriterModelWizard_ActionSet_label = Imagewriter Model Action Set
_UI_MapViewImageWriterLogger_type = Map View Image Writer Logger
_UI_MapViewImageWriterLogger_openMapView_feature = Open Map View
_UI_ProjectedMapImageLogger_type = Projected Map Image Logger
_UI_ProjectedMapImageLogger_projection_feature = Projection
_UI_ProjectedMapImageLogger_useLogScaling_feature = Use Log Scaling
_UI_ProjectedMapImageLogger_gain_feature = Gain
_UI_ProjectedMapImageLogger_logAllDecorators_feature = Log All Decorators
_UI_ProjectedMapImageLogger_colorProvider_feature = Color Provider
_UI_ProjectedMapImageLogger_decorator_feature = Decorator
_UI_ProjectedMapImageLogger_decoratorProperties_feature = Decorator Properties
_UI_EquirectangularMapLogger_type = Equirectangular Map Logger
_UI_ProjectedMapImageLogger_width_feature = Width
_UI_ProjectedMapImageLogger_height_feature = Height
_UI_ProjectedMapImageLogger_forceAspectRatio_feature = Force Aspect Ratio
_UI_ProjectedMapImageLogger_fitToShapeBounds_feature = Fit To Shape Bounds
_UI_ProjectedMapImageLogger_logScaling_feature = Log Scaling
_UI_ProjectedMapImageLogger_transparentBackground_feature = Transparent Background
_UI_ProjectedMapImageLogger_borderTransparency_feature = Border Transparency
_UI_MercatorMapLogger_type = Mercator Map Logger
_UI_OrthographicMapLogger_type = Orthographic Map Logger
_UI_AzimuthalEquidistantMapLogger_type = Azimuthal Equidistant Map Logger
_UI_OrthographicMapLogger_originLatitude_feature = Origin Latitude
_UI_OrthographicMapLogger_originLongitude_feature = Origin Longitude
_UI_AzimuthalEquidistantMapLogger_originLatitude_feature = Origin Latitude
_UI_AzimuthalEquidistantMapLogger_originLongitude_feature = Origin Longitude
_UI_OriginDependentProjectedMapImageLogger_type = Origin Dependent Projected Map Image Logger
_UI_OrthogonalMapLogger_type = Orthogonal Map Logger
_UI_OriginDependentProjectedMapImageLogger_originLatitude_feature = Origin Latitude
_UI_OriginDependentProjectedMapImageLogger_originLongitude_feature = Origin Longitude
_UI_ImageWriterLogger_logFileDataPath_feature = Log File Data Path
_UI_ImageWriterLogger_dataPathLogFiles_feature = Data Path Log Files
