# NLS_ENCODING=UNICODE
#-------------------------------------------------------------------------------
# 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=Cofni\u0119cie zmiany nazwy jest niedozwolone, je\u015bli poprzednia nazwa ma warto\u015b\u0107 NULL.
err_name_empty=Nazwa nie mo\u017ce by\u0107 pusta. Podaj poprawn\u0105 nazw\u0119.
moveAction_label=Przenie\u015b

AbstractDiagram_Select_text=Wyb\u00f3r
AbstractDiagram_Select_tooltip=Wybierz w\u0119ze\u0142 lub powi\u0105zanie
AbstractDiagram_AddNode_title=Dodawanie w\u0119z\u0142a
AbstractDiagram_AddNode_err_msg=IXRD0002W: Nie powiod\u0142o si\u0119 dodanie w\u0119z\u0142a do diagramu
AbstractDiagram_Link_text=Powi\u0105zanie
AbstractDiagram_Link_select=Wybierz powi\u0105zanie
AbstractDiagram_Link_tooltip=Utw\u00f3rz nowe powi\u0105zanie
ActivityDiagram_StartNode_text=W\u0119ze\u0142 pocz\u0105tkowy
ActivityDiagram_StartNode_tooltip=Utw\u00f3rz w\u0119ze\u0142 pocz\u0105tkowy
AbstractDiagram_FreeText_text=Pe\u0142notekstowe
AbstractDiagram_FreeText_tooltip=Utw\u00f3rz nowy dowolny tekst
ActivityDiagram_SyncBar_text=Pasek synchronizacji
ActivityDiagram_SyncBar_tooltip=Utw\u00f3rz nowy pasek synchronizacji
ActivityDiagram_DecisionNode_text=W\u0119ze\u0142 decyzji
ActivityDiagram_DecisionNode_tooltip=Utw\u00f3rz w\u0119ze\u0142 decyzyjny
ActivityDiagram_EndNode_text=W\u0119ze\u0142 ko\u0144cowy
ActivityDetailDiagram_prefix=Szczeg\u00f3\u0142owe informacje o dzia\u0142aniu:
ActivityDiagram_EndNode_tooltip=Utw\u00f3rz w\u0119ze\u0142 ko\u0144cowy
ActivityDiagram_Activity_text=Dzia\u0142anie
ActivityDiagram_Activity_tooltip=Utw\u00f3rz dzia\u0142anie
ActivityDiagram_Iteration_text=Iteracja
ActivityDiagram_Iteration_tooltip=Utw\u00f3rz iteracj\u0119
ActivityDiagram_Phase_text=Etap
ActivityDiagram_Phase_tooltip=Utw\u00f3rz etap
AbstractDiagram_TaskDescriptor_text=Deskryptor zadania
AbstractDiagram_RoleDescriptor_text=Deskryptor roli
WorkProductDependencyDiagram_prefix=Diagram zale\u017cno\u015bci produktu pracy:
AbstractDiagram_RoleDescriptor_tooltip=Utw\u00f3rz deskryptor roli
AbstractDiagram_TaskDescriptor_tooltip=Utw\u00f3rz deskryptor zadania
ActvitivityDiagram_DeliveryProcess_text=Proces dostarczania
ActvitivityDiagram_CapabilityPattern_text=Wzorzec mo\u017cliwo\u015bci
ActvitivityDiagram_Phase_tex=Etap
ActvitivityDiagram_Iteration_text=Iteracja
ActvitivityDiagram_Activity_text=Dzia\u0142anie
AbstractDiagram_WorkProductDescriptor_text=Deskryptor produktu pracy
AbstractDiagram_WorkProductDescriptor_tooltip=Utw\u00f3rz deskryptor produktu pracy

AbstractDiagramEditor_alignMenu_text=Wyr\u00f3wnaj
AbstractDiagramEditor_refreshFromBaseActivity_text=Od\u015bwie\u017c z dzia\u0142ania podstawowego
AbstractDiagramEditor_formatTextBoxActivity_text=Formatuj pole tekstowe...
AbstractDiagramEditor_hAlignAverageAction_text=Poziomo do \u015bredniej
AbstractDiagramEditor_hAlignFirstSelectedAction_text=Poziomo do pierwszej wybranej
AbstractDiagramEditor_vAlignAverageAction_text=Pionowo do \u015bredniej
AbstractDiagramEditor_vAlignFirstSelectedAction_text=Pionowo do pierwszej wybranej
AbstractDiagramEditor_Save_text=Zapisz
AbstractDiagramEditor_Save_message=Zapisywanie {0}
AbstractDiagramEditor_MoveNode_label=Przenie\u015b w\u0119ze\u0142
AbstractDiagramEditorrefreshfrombase=Od\u015bwie\u017c z podstawy
AbstractDiagram_BendPoint_create=Utw\u00f3rz punkt zmiany

ActivityDiagram_openActivityDetailDiagram_text=Otw\u00f3rz diagram szczeg\u00f3\u0142\u00f3w dzia\u0142ania
refreshAction_label=Od\u015bwie\u017c
refreshFromBaseCmd_label=Od\u015bwie\u017c z podstawy
diagram_saveError=IUPD0001W: Nie powiod\u0142o si\u0119 zapisanie diagramu

DeleteDiagram_text=Usu\u0144 diagram
DeleteDiagram_prompt=Czy na pewno chcesz zamkn\u0105\u0107 i usun\u0105\u0107 ten diagram?\nZmiana ta jest trwa\u0142a i nie b\u0119dzie mo\u017cna jej cofn\u0105\u0107.
DeleteDiagram_AD=Diagram dzia\u0142ania
DeleteDiagram_ADD=Diagram szczeg\u00f3\u0142\u00f3w dzia\u0142ania
DeleteDiagram_WPDD=Diagram zale\u017cno\u015bci produktu pracy
DeleteDiagram_prompt_new=Czy na pewno chcesz usun\u0105\u0107 diagram {0}?\nZmiana ta jest trwa\u0142a i nie b\u0119dzie mo\u017cna jej cofn\u0105\u0107.
align_bend_point_text=Przypisz punkt zmiany
ConfigurationEditorInput_configeditor0=Edytor konfiguracji
diagram_node_property_value_problem_msg=B\u0142\u0105d w warto\u015bci w\u0142a\u015bciwo\u015bci w\u0119z\u0142a
diagram_errorDialog_title=B\u0142\u0105d

ActivityDetailDiagramEditor_ResetDiagramLayout_text=Zresetuj uk\u0142ad diagramu
errorDialog_title=B\u0142\u0105d
command_cannotEdit=IUPD0003E: Nie mo\u017cna edytowa\u0107 diagramu

AbstractDiagramEditor_ParentEditorClose_title=Zamkni\u0119to nadrz\u0119dny edytor
AbstractDiagramEditor_ParentEditorClose_text=Edytor {0} zosta\u0142 zamkni\u0119ty. Czy chcesz r\u00f3wnie\u017c zamkn\u0105\u0107 {1}?

#Below three strings moved from AuthoringUI resources.properties.
DiagramValidation_err_cannot_connect_text=IUPA0032W: Nie mo\u017cna po\u0142\u0105czy\u0107
DiagramValidation_err_samepredandsuc_text=IUPA0033W: Nie mo\u017cna mie\u0107 takiego samego sk\u0142adnika podzia\u0142u, jak poprzednik i nast\u0119pca
DiagramValidation_err_cannot_delete_text=Nie mo\u017cna usun\u0105\u0107
deleteCommand_label=Usu\u0144
deleteLinkCommand_label=Usu\u0144 po\u0142\u0105czenie

ActivityDiagram_Milestone_text=Kamie\u0144 milowy
ActivityDiagram_Milestone_tooltip=Utw\u00f3rz kamie\u0144 milowy
ActivityDiagram_Join_Node_text=W\u0119ze\u0142 \u0142\u0105czenia
ActivityDiagram_Join_Node_tooltip=Utw\u00f3rz w\u0119ze\u0142 \u0142\u0105cz\u0105cy
ActivityDiagram_Merge_Node_text=W\u0119ze\u0142 scalenia
ActivityDiagram_Merge_Node_tooltip=Utw\u00f3rz w\u0119ze\u0142 scalaj\u0105cy
ActivityDiagram_Fork_Node_text=W\u0119ze\u0142 rozwidlenia
ActivityDiagram_Fork_Node_tooltip=Utw\u00f3rz w\u0119ze\u0142 rozwidlaj\u0105cy
ActivityDiagram_Partition_Node_text=Partycja dzia\u0142ania
ActivityDiagram_Palette_flows_title=Przep\u0142ywy
ActivityDiagram_Palette_nodes_titles=W\u0119z\u0142y
ActivityDiagram_Palette_flows_create_text=Narz\u0119dzie do tworzenia przep\u0142yw\u00f3w
ActivityDiagram_Palette_nodes_group_text=Grupa narz\u0119dzi do tworzenia w\u0119z\u0142\u00f3w
ActivityDiagram_Palette_control_flow_text=Przep\u0142yw sterowania
ActivityDiagram_Palette_control_flow_create_text=Utw\u00f3rz przep\u0142yw sterowania
ActivityDiagram_Partition_Node_tooltip=Utw\u00f3rz partycj\u0119 dzia\u0142ania

ActivityDiagram_New_Task_Descriptor=Nowy deskryptor zadania
ActivityDiagram_New_Milestone=Nowy kamie\u0144 milowy
WPDD_New_WorkProductDescriptor=Nowy deskryptor produktu pracy
ActivityDiagram_New_Activity=Nowe dzia\u0142anie
ActivityDiagram_New_Phase=Nowy etap
ActivityDiagram_New_Iteration=Nowa iteracja
Progress_Saving_message=Zapisywanie {0}
Warning_Saving_Diagram=IUPD0001W: Nie powiod\u0142o si\u0119 zapisanie diagramu

ActivityDiagram_kind=Diagram dzia\u0142ania
ActivityDetail_Diagram_kind=Diagram szczeg\u00f3\u0142\u00f3w dzia\u0142ania
WorkProductDependency_Diagram_kind=Diagram zale\u017cno\u015bci produktu pracy
WPDD_Palette_control_flow_text=Zale\u017cno\u015b\u0107 produktu pracy
WPDD_Palette_control_flow_create_text=Utw\u00f3rz zale\u017cno\u015b\u0107 produktu pracy
