#-------------------------------------------------------------------------------
# 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

# Method Element Names (Singular)
activity_text=Dzia\u0142anie
artifact_text=Artefakt
capabilityPattern_text=Wzorzec mo\u017cliwo\u015bci
checklist_text=Lista kontrolna
checkItem_text=Element kontrolny
compositeRole_text=Rola z\u0142o\u017cona
concept_text=Poj\u0119cie
contentPackage_text=Pakiet z tre\u015bci\u0105
customCategory_text=Kategoria niestandardowa
deliverable_text=Produkt cz\u0105stkowy
deliveryProcess_text=Proces dostarczania
descriptor_text=Deskryptor
discipline_text=Regu\u0142a
disciplineGrouping_text=Grupowanie regu\u0142
domain_text=Domena
estimate_text=Oszacowanie
estimatingMetric_text=Charakterystyka oszacowania
estimationConsiderations_text=Zagadnienia dotycz\u0105ce szacowania
example_text=Przyk\u0142ad
guidance_text=Wskaz\u00f3wki
guideline_text=Wytyczna
iteration_text=Iteracja
methodConfiguration_text=Konfiguracja metody
methodContent_text=Tre\u015b\u0107 metody
methodLibrary_text=Biblioteka metody
methodPackage_text=Pakiet metody
methodPlugin_text=Wtyczka metody
milestone_text=Kamie\u0144 milowy
outcome_text=Wynik
phase_text=Etap
practice_text=Procedura
process_text=Proces
processContribution_text=Proces r\u00f3\u017cnicowy
processFamily_text=Rodzina procesu
processPackage_text=Pakiet procesu
report_text=Raport
reusableAsset_text=Zas\u00f3b wielokrotnego u\u017cytku
roadmap_text=Przewodnik
roleDescriptor_text=Deskryptor roli
role_text=Rola
roleSet_text=Zestaw r\u00f3l
roleSetGrouping_text=Grupowanie zestaw\u00f3w r\u00f3l
standardCategory_text=Kategoria standardowa
step_text=Krok
supportingMaterial_text=Materia\u0142 pomocniczy
task_text=Zadanie
taskDescriptor_text=Deskryptor zadania
teamProfile_text=Profil zespo\u0142u
template_text=Szablon
termDefinition_text=Definicja terminu
tool_text=Narz\u0119dzie
toolMentor_text=Mentor narz\u0119dzia
whitepaper_text=Raport
workProduct_text=Produkt pracy
workProductDescriptor_text=Deskryptor produktu pracy
workProductElement_text=Sk\u0142adnik produktu pracy
workProductType_text=Typ produktu pracy

# Method Element Names (Plural)
activity_text_plural=Dzia\u0142ania
artifact_text_plural=Artefakty
capabilityPattern_text_plural=Wzorce mo\u017cliwo\u015bci
checklist_text_plural=Listy kontrolne
checkItem_text_plural=Elementy kontrolne
compositeRole_text_plural=Role z\u0142o\u017cone
concept_text_plural=Poj\u0119cia
contentPackage_text_plural=Pakiety tre\u015bci
customCategory_text_plural=Kategorie niestandardowe
deliverable_text_plural=Produkty cz\u0105stkowe
deliveryProcess_text_plural=Procesy dostarczania
descriptor_text_plural=Deskryptory
discipline_text_plural=Regu\u0142y
disciplineGrouping_text_plural=Grupowania regu\u0142
domain_text_plural=Domeny
estimate_text_plural=Oszacowania
estimatingMetric_text_plural=Charakterystyki oszacowa\u0144
estimationConsiderations_text_plural=Zagadnienia dotycz\u0105ce szacowania
example_text_plural=Przyk\u0142ady
guidance_text_plural=Wskaz\u00f3wki
guideline_text_plural=Wytyczne
iteration_text_plural=Iteracje
methodConfiguration_text_plural=Konfiguracje metod
methodContent_text_plural=Tre\u015bci metod
methodLibrary_text_plural=Biblioteki metod
methodPackage_text_plural=Pakiety metod
methodPlugin_text_plural=Wtyczki metod
milestone_text_plural=Kamienie milowe
outcome_text_plural=Wyniki
phase_text_plural=Etapy
practice_text_plural=Procedury
process_text_plural=Procesy
processContribution_text_plural=Procesy r\u00f3\u017cnicowe
processFamily_text_plural=Rodziny proces\u00f3w
processPackage_text_plural=Pakiety proces\u00f3w
report_text_plural=Raporty
reusableAsset_text_plural=Zasoby wielokrotnego u\u017cytku
roadmap_text_plural=Przewodniki
roleDescriptor_text_plural=Deskryptory r\u00f3l
role_text_plural=Role
roleSet_text_plural=Zestawy r\u00f3l
roleSetGrouping_text_plural=Grupowania zestaw\u00f3w r\u00f3l
standardCategory_text_plural=Kategorie standardowe
step_text_plural=Kroki
supportingMaterial_text_plural=Materia\u0142y pomocnicze
task_text_plural=Zadania
taskDescriptor_text_plural=Deskryptory zada\u0144
teamProfile_text_plural=Profile zespo\u0142\u00f3w
template_text_plural=Szablony
termDefinition_text_plural=Definicje termin\u00f3w
tool_text_plural=Narz\u0119dzia
toolMentor_text_plural=Mentory narz\u0119dzi
whitepaper_text_plural=Raporty
workProduct_text_plural=Produkty pracy
workProductDescriptor_text_plural=Deskryptory produkt\u00f3w pracy
workProductElement_text_plural=Sk\u0142adniki produktu pracy
workProductType_text_plural=Typy produkt\u00f3w pracy

# Application title.
application_title={0} - {1}

# Open Method Library Wizard
openLibraryWizard_title=Otw\u00f3rz bibliotek\u0119 metod
openLibraryMainWizardPage_title=Podaj \u015bcie\u017ck\u0119 do biblioteki metod
openLibraryMainWizardPage_title_2=Wybierz bibliotek\u0119 metod
openLibraryMainWizardPage_text={0} zapisuje metody i procesy w folderze okre\u015blanym jako\nbiblioteka metod. Wybierz folder biblioteki metod, kt\u00f3ry ma by\u0107 u\u017cywany podczas tej sesji.
pathLabel_text=\u015acie\u017cka:
nameLabel_text=Nazwa:
uriLabel_text=Identyfikator URI:
openUnlistedLibraryCheckbox_text=Otw\u00f3rz bibliotek\u0119 metod, kt\u00f3ra nie jest wy\u015bwietlona poni\u017cej
libraryTypeLabel_text=Wprowad\u017a nast\u0119puj\u0105c\u0105 komend\u0119:
libraryLabel_text=Biblioteka:
browseButton_text=Przegl\u0105daj...
promptForLibraryCheckbox_text=U\u017cyj tego ustawienia jako domy\u015blnego i nie pytaj ponownie.
openLibraryDialog_newLibrary_text=W katalogu ''{0}'' nie istnieje \u017cadna biblioteka metod.\nNowa biblioteka metod zostanie utworzona i otwarta w okre\u015blonym katalogu.\n\nKliknij przycisk OK, aby kontynuowa\u0107, albo przycisk Anuluj w celu okre\u015blenia innej \u015bcie\u017cki do biblioteki metod.

# Select Method Library Folder Dialog
selectLibraryFolderDialog_title=Wyb\u00f3r biblioteki metod
selectLibraryFolderDialog_text=Wybierz folder biblioteki metod.

# Open Library Progress Message
openingLibraryTask_name=Otwieranie biblioteki metod...

# Open Method Library Error Dialog
openLibraryError_msg=IUPL0301E: Nie mo\u017cna utworzy\u0107 biblioteki metod.
openLibraryInternlError_reason=Wyst\u0105pi\u0142 b\u0142\u0105d wewn\u0119trzny.
openLibraryError_reason1=Podana \u015bcie\u017cka do biblioteki metod ''{0}'' jest niepoprawna.
openLibraryError_reason2=Biblioteka metod ju\u017c istnieje w katalogu ''{0}''.
openLibraryError_reason3=Nie mo\u017cna utworzy\u0107 podanego folderu biblioteki metod ''{0}''.
openLibraryError_reason4=Podany folder biblioteki metod jest wtyczk\u0105 lub folderem eksportu specyfikacji konfiguracji.
openLibraryError_advice=Kliknij przycisk OK, aby poda\u0107 inn\u0105 \u015bcie\u017ck\u0119 do biblioteki metod.

# Open Method Library Error Messages
invalidLibraryPath_msg=IUPL0302E: Nie mo\u017cna otworzy\u0107 podanej biblioteki metod.
invalidLibraryPath_reason=Wybrany folder biblioteki metod jest niepoprawny, nie istnieje lub brak odpowiednich uprawnie\u0144 dost\u0119pu do tego folderu.\n\nKliknij przycisk OK, aby wybra\u0107 inny folder.

# Read-only Project File Error Dialog
readOnlyProjectFile_text=IUPL0304E: Plik ''{0}'' jest tylko do odczytu. Przed wykonaniem dalszych czynno\u015bci usu\u0144 zabezpieczenie przed zapisem.
retryButton_text=Spr\u00f3buj ponownie
cancelButton_text=Anuluj

# Version Mismatch Dialog
versionMismatchDialog_text=IUPL305E: Nie mo\u017cna otworzy\u0107 wybranej biblioteki. Aby otworzy\u0107 t\u0119 bibliotek\u0119, nale\u017cy zaktualizowa\u0107 {0} do wersji {1} lub nowszej.
versionMismatchDialog_text_unknown=IUPL306E: Nie mo\u017cna otworzy\u0107 wybranej biblioteki. Aby otworzy\u0107 t\u0119 bibliotek\u0119, nale\u017cy zaktualizowa\u0107 {0} do nowszej wersji.

# Upgrade Method Library Dialog
upgradeLibraryDialog_title=Aktualizacja biblioteki metod
upgradeLibraryDialog_text=Nale\u017cy zaktualizowa\u0107 wybran\u0105 bibliotek\u0119 do nowej struktury biblioteki.\n\nCzy kontynuowa\u0107 aktualizowanie?
upgradingLibraryTask_name=Aktualizowanie biblioteki metod...

# Upgrade Library Error Dialog
upgradeLibraryError_msg=IUPL0306E: Aktualizowanie biblioteki metod nie powiod\u0142o si\u0119. Szczeg\u00f3\u0142owe informacje zawiera plik dziennika.

# Switch Configuration Dialog
switchConfigDialog_title=Prze\u0142\u0105czanie konfiguracji
switchConfigDialog_text=Czy chcesz prze\u0142\u0105czy\u0107 bie\u017c\u0105c\u0105 konfiguracj\u0119 na konfiguracj\u0119 domy\u015bln\u0105 ''{0}'' powi\u0105zan\u0105 z wybranym procesem?
	
# Configuration Combo
currentConfigLabel_text=Bie\u017c\u0105ca konfiguracja:
selectConfigLabel_text=Wybierz konfiguracj\u0119

# Delete Files Confirmation Message
deleteFilesConfirmation_msg=Podana \u015bcie\u017cka ''{0}'' ju\u017c istnieje. Wszystkie pliki w folderze zostan\u0105 usuni\u0119te. Czy chcesz kontynuowa\u0107?

# Paths/Files Error Messages
deleteFilesError_reason=W \u015bcie\u017cce ''{0}'' znajduje si\u0119 co najmniej jeden plik, kt\u00f3rego nie mo\u017cna usun\u0105\u0107.\n\nWybierz inn\u0105 \u015bcie\u017ck\u0119 i spr\u00f3buj ponownie.
createPathError_reason=Nie mo\u017cna utworzy\u0107 \u015bcie\u017cki ''{0}''.\n\nWybierz inn\u0105 \u015bcie\u017ck\u0119 i spr\u00f3buj ponownie.
invalidPath_msg=Podana \u015bcie\u017cka jest niepoprawna.
overrideCurrentLibraryError_msg0=Nie mo\u017cna eksportowa\u0107 do \u015bcie\u017cki zawieraj\u0105cej bie\u017c\u0105c\u0105 bibliotek\u0119 metod. Wybierz inn\u0105 \u015bcie\u017ck\u0119 i spr\u00f3buj ponownie.

# Backup Library Dialog
backupLibraryDialog_title=Tworzenie kopii zapasowej biblioteki
backupLibraryDialog_text=Zaleca si\u0119 utworzenie kopii zapasowej bie\u017c\u0105cej biblioteki metod przed wykonaniem kolejnych czynno\u015bci.\n\nKliknij przycisk OK, aby utworzy\u0107 kopi\u0119 zapasow\u0105 biblioteki w podanym katalogu. Kliknij przycisk Pomi\u0144, aby kontynuowa\u0107 bez tworzenia kopii zapasowej.
backingUpLibraryTask_name=Tworzenie kopii zapasowej plik\u00f3w biblioteki...

# Copy Library Dialog
copyLibraryDialog_title=Kopiowanie biblioteki
copyLibraryDialog_text_readOnlyLib=Biblioteka nie jest dost\u0119pna do zapisu. Kliknij przycisk Kopiuj, aby utworzy\u0107 dost\u0119pn\u0105 do zapisu kopi\u0119 biblioteki w podanym katalogu. Kliknij przycisk Pomi\u0144, aby kontynuowa\u0107 bez tworzenia kopii.
copyLibraryTask_name=Tworzenie kopii plik\u00f3w biblioteki...
copyLibraryDialog_copyButton_text=Kopiuj

# Path Selection Dialog
pathSelectionError_msg=Nie mo\u017cna utworzy\u0107 katalogu
okButton_text=OK
skipButton_text=Pomi\u0144

# Process Editor preferences
alwaysButton_text=Zawsze
neverButton_text=Nigdy
promptButton_text=Pytaj

# Add Link Dialog
linkToURL_name=Adres URL
linkToFile_name=Plik
elementLink_name=Sk\u0142adnik metody
elementLinkWithType_name=Sk\u0142adnik metody z przedrostkiem typu
elementLinkWithUserText_name=Sk\u0142adnik metody z tekstem niestandardowym

# Convert Activity Type Dialog
convertActivityDialog_title=Przekszta\u0142canie typu dzia\u0142ania
convertActivityDialog_text=Wybierz docelowy typ dzia\u0142ania.
unsupportedActivityType_msg=IUPL0307E: Tego dzia\u0142ania nie mo\u017cna przekszta\u0142ci\u0107 w inny typ.
unsupportedActivityType_reason=Nie istnieje zgodny typ dzia\u0142ania dla {0}.

# Select Process Wizard Page
selectProcessWizardPage_title=Wyb\u00f3r procesu
selectProcessWizardPage_text=Wybierz wzorzec mo\u017cliwo\u015bci lub proces dostarczania do eksportu.
processesLabel_text=Procesy:
briefDescriptionLabel_text=Kr\u00f3tki opis:

# Export Process Wizard Error Message.
noOpenLibraryWarning_msg=IUPL0308E: Obecnie nie jest otwarta \u017cadna biblioteka metod. Kliknij przycisk Anuluj, otw\u00f3rz bibliotek\u0119 metod lub utw\u00f3rz now\u0105 i ponownie uruchom ten kreator. 

# Moved from Authoring UI plug-in to avoid Authoring UI dependency
errorDialog_title=B\u0142\u0105d
MethodElementDeleteAction_deleteconfirm_text=Czy na pewno chcesz usun\u0105\u0107 ''{0}''?
confirmDeleteDialog_title=Potwierdzenie usuni\u0119cia
confirmDeleteDialog_msg=Czy na pewno chcesz usun\u0105\u0107 ''{0}''?
confirmDeleteDialog_msgWithReference=Czy na pewno chcesz usun\u0105\u0107 ''{0}''?\n\nNast\u0119puj\u0105ce sk\u0142adniki zawieraj\u0105 odniesienia do element\u00f3w, kt\u00f3re maj\u0105 zosta\u0107 usuni\u0119te: {1}
ProcessDeleteAction_deletecofirm_text=Spowoduje to zapisanie bie\u017c\u0105cego edytora, a zmiany b\u0119d\u0105 trwa\u0142e. Czy na pewno chcesz usun\u0105\u0107 ''{0}''?

# Save Method Library Dialog
saveLibraryDialog_title=Zapisywanie biblioteki metod
saveLibraryDialog_text=Bie\u017c\u0105ca biblioteka metod zosta\u0142a zmodyfikowana. Czy chcesz zapisa\u0107 zmiany?

# Save Method Library Error Messages
saveLibraryError_msg=IUPL0308E: Nie mo\u017cna zapisa\u0107 biblioteki metod.
error_reason=Wyst\u0105pi\u0142 b\u0142\u0105d.\n\nKliknij opcj\u0119 Szczeg\u00f3\u0142y, aby uzyska\u0107 wi\u0119cej informacji.

# ElementTreeContentProvider Strings
elementTCProvider_methodContent=Tre\u015b\u0107 metody
elementTCProvider_contentPackages=Pakiety tre\u015bci
elementTCProvider_standardCategories=Kategorie standardowe
elementTCProvider_disciplines=Regu\u0142y
elementTCProvider_domains=Domeny
elementTCProvider_workProductTypes=Typy produkt\u00f3w pracy
elementTCProvider_roleSets=Zestawy r\u00f3l
elementTCProvider_tools=Narz\u0119dzia
elementTCProvider_customCategories=Kategorie niestandardowe
elementTCProvider_processes=Procesy
elementTCProvider_capabilityPatterns=Wzorce mo\u017cliwo\u015bci
elementTCProvider_deliveryProcesses=Procesy dostarczania

