#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 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 implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# Complete new strings need translation.
previous_name_null1=N\u00e3o \u00e9 permitido desfazer uma altera\u00e7\u00e3o de nome se o nome anterior for nulo.
err_name_empty=O nome n\u00e3o pode estar vazio. Especifique um nome v\u00e1lido.
moveAction_label=Mover

AbstractDiagram_Select_text=Selecionar
AbstractDiagram_Select_tooltip=Selecionar n\u00f3 ou link
AbstractDiagram_AddNode_title=Incluir N\u00f3
AbstractDiagram_AddNode_err_msg=IXRD0002W: A inclus\u00e3o de um n\u00f3 no diagrama falhou
AbstractDiagram_Link_text=Link
AbstractDiagram_Link_select=Selecionar Link
AbstractDiagram_Link_tooltip=Criar novo Link
ActivityDiagram_StartNode_text=N\u00f3 de In\u00edcio
ActivityDiagram_StartNode_tooltip=Criar um N\u00f3 de In\u00edcio
AbstractDiagram_FreeText_text=Texto Livre
AbstractDiagram_FreeText_tooltip=Criar Novo Texto Livre
ActivityDiagram_SyncBar_text=Barra de Sincroniza\u00e7\u00e3o
ActivityDiagram_SyncBar_tooltip=Criar Nova Barra de Sincroniza\u00e7\u00e3o
ActivityDiagram_DecisionNode_text=N\u00f3 de Decis\u00e3o
ActivityDiagram_DecisionNode_tooltip=Criar um N\u00f3 de Decis\u00e3o
ActivityDiagram_EndNode_text=N\u00f3 de Extremidade
ActivityDetailDiagram_prefix=Detalhe da Atividade:
ActivityDiagram_EndNode_tooltip=Criar um N\u00f3 de Extremidade
ActivityDiagram_Activity_text=Atividade
ActivityDiagram_Activity_tooltip=Criar uma Atividade
ActivityDiagram_Iteration_text=Itera\u00e7\u00e3o
ActivityDiagram_Iteration_tooltip=Criar uma Itera\u00e7\u00e3o
ActivityDiagram_Phase_text=Fase
ActivityDiagram_Phase_tooltip=Criar uma Fase
AbstractDiagram_TaskDescriptor_text=Descritor de Tarefas
AbstractDiagram_RoleDescriptor_text=Descritor de Fun\u00e7\u00f5es
WorkProductDependencyDiagram_prefix=Diagrama de Depend\u00eancia de Produto de Trabalho:
AbstractDiagram_RoleDescriptor_tooltip=Criar um Descritor de Fun\u00e7\u00f5es
AbstractDiagram_TaskDescriptor_tooltip=Criar um Descritor de Tarefas
ActvitivityDiagram_DeliveryProcess_text=Processo de Entrega
ActvitivityDiagram_CapabilityPattern_text=Padr\u00e3o de Recurso
ActvitivityDiagram_Phase_tex=Fase
ActvitivityDiagram_Iteration_text=Itera\u00e7\u00e3o
ActvitivityDiagram_Activity_text=Atividade
AbstractDiagram_WorkProductDescriptor_text=Descritor de Produtos de Trabalho
AbstractDiagram_WorkProductDescriptor_tooltip=Criar um Descritor de Produtos de Trabalho

AbstractDiagramEditor_alignMenu_text=Alinhar
AbstractDiagramEditor_refreshFromBaseActivity_text=Atualizar a partir da Atividade de Base
AbstractDiagramEditor_formatTextBoxActivity_text=Formatar Caixa de Texto...
AbstractDiagramEditor_hAlignAverageAction_text=Horizontalmente para a M\u00e9dia
AbstractDiagramEditor_hAlignFirstSelectedAction_text=Horizontalmente para o Primeiro Selecionado
AbstractDiagramEditor_vAlignAverageAction_text=Verticalmente para a M\u00e9dia
AbstractDiagramEditor_vAlignFirstSelectedAction_text=Verticalmente para o Primeiro Selecionado
AbstractDiagramEditor_Save_text=Salvar
AbstractDiagramEditor_Save_message=Salvando {0}
AbstractDiagramEditor_MoveNode_label=Mover N\u00f3
AbstractDiagramEditorrefreshfrombase=Atualizar a Partir da Base
AbstractDiagram_BendPoint_create=Criar Ponto de Curvatura

ActivityDiagram_openActivityDetailDiagram_text=Abrir Diagrama de Detalhes de Atividades
refreshAction_label=Atualizar
refreshFromBaseCmd_label=Atualizar a Partir da Base
diagram_saveError=IUPD0001W: Ocorreu uma falha ao salvar o diagrama

DeleteDiagram_text=Excluir Diagrama
DeleteDiagram_prompt=Tem certeza de que quer fechar e excluir este diagrama?\nEsta altera\u00e7\u00e3o \u00e9 permanente e n\u00e3o pode ser desfeita.
align_bend_point_text=Alinhar Ponto de Curvatura
ConfigurationEditorInput_configeditor0=Editor de Configura\u00e7\u00e3o
diagram_node_property_value_problem_msg=Erro no valor da propriedade do n\u00f3.
diagram_errorDialog_title=Erro

ActivityDetailDiagramEditor_ResetDiagramLayout_text=Reconfigurar Layout do Diagrama
errorDialog_title=Erro
command_cannotEdit=IUPD0003E: N\u00e3o \u00e9 poss\u00edvel editar o diagrama

AbstractDiagramEditor_ParentEditorClose_title=Editor Pai Fechado
AbstractDiagramEditor_ParentEditorClose_text=O {0} foi fechado. Deseja fechar {1}?

#Below three strings moved from AuthoringUI resources.properties.
DiagramValidation_err_cannot_connect_text=IUPA0032W: Imposs\u00edvel conectar
DiagramValidation_err_samepredandsuc_text=IUPA0033W: N\u00e3o \u00e9 poss\u00edvel ter o mesmo elemento de divis\u00e3o como predecessor e sucessor
DiagramValidation_err_cannot_delete_text=Imposs\u00edvel excluir
deleteCommand_label=Excluir
deleteLinkCommand_label=Excluir Conex\u00e3o

ActivityDiagram_Milestone_text=Marco
ActivityDiagram_Milestone_tooltip=Criar um Marco
ActivityDiagram_Join_Node_text=N\u00f3 de Jun\u00e7\u00e3o
ActivityDiagram_Join_Node_tooltip=Criar um N\u00f3 de Jun\u00e7\u00e3o
ActivityDiagram_Merge_Node_text=N\u00f3 de Combina\u00e7\u00e3o
ActivityDiagram_Merge_Node_tooltip=Criar um N\u00f3 de Mesclagem
ActivityDiagram_Fork_Node_text=N\u00f3 de Bifurca\u00e7\u00e3o
ActivityDiagram_Fork_Node_tooltip=Criar um N\u00f3 de Bifurca\u00e7\u00e3o
ActivityDiagram_Partition_Node_text=Parti\u00e7\u00e3o de Atividade
ActivityDiagram_Palette_flows_title=Fluxos
ActivityDiagram_Palette_nodes_titles=N\u00f3s
ActivityDiagram_Palette_flows_create_text=Ferramentas de cria\u00e7\u00e3o para os fluxos
ActivityDiagram_Palette_nodes_group_text=Grupo de ferramentas de cria\u00e7\u00e3o para os n\u00f3s
ActivityDiagram_Palette_control_flow_text=Fluxo de Controle
ActivityDiagram_Palette_control_flow_create_text=Criar um Fluxo de Controle
ActivityDiagram_Partition_Node_tooltip=Criar uma Parti\u00e7\u00e3o de Atividade

ActivityDiagram_New_Task_Descriptor=Novo Descritor de Tarefa
ActivityDiagram_New_Milestone=Novo Marco
WPDD_New_WorkProductDescriptor=Novo Descritor de Produto de Trabalho
ActivityDiagram_New_Activity=Nova Atividade
ActivityDiagram_New_Phase=Nova Fase
ActivityDiagram_New_Iteration=Nova Itera\u00e7\u00e3o
Progress_Saving_message=Salvando {0}
Warning_Saving_Diagram=IUPD0001W: Ocorreu uma falha ao salvar o diagrama

ActivityDiagram_kind=Diagrama de Atividades
ActivityDetail_Diagram_kind=Diagrama de Detalhes de Atividades
WorkProductDependency_Diagram_kind=Diagrama de Depend\u00eancia de Produto de Trabalho
WPDD_Palette_control_flow_text=Depend\u00eancia de Produto de Trabalho
WPDD_Palette_control_flow_create_text=Criar uma Depend\u00eancia de Produto de Trabalho 
