#-------------------------------------------------------------------------------
# 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 implementationCorporation. All Rights Reserved.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# File Name Conflict Dialog
Dialog_fileNameConflict_title=Konflikt nazw plik\u00f3w
Dialog_fileNameConflict_msg=IUPU0200W: Plik ''{0}'' ju\u017c istnieje w folderze zasob\u00f3w biblioteki metody ''{1}''.
Dialog_fileNameConflict_note=Uwaga: Do tego pliku mo\u017ce odwo\u0142ywa\u0107 si\u0119 inny sk\u0142adnik metody.
Dialog_fileName_replace_msg=Zast\u0105p istniej\u0105cy plik nowym plikiem
Dialog_fileName_unique_msg=Podaj unikaln\u0105 nazw\u0119 tego nowego pliku
Dialog_fileName_selectAction_label=Wybierz dzia\u0142anie:

# Error Messages
internalError_reason=Wyst\u0105pi\u0142 b\u0142\u0105d wewn\u0119trzny.\n\nKliknij opcj\u0119 Szczeg\u00f3\u0142y, aby uzyska\u0107 wi\u0119cej informacji.
initializeWizardError_reason=Kreator nie zosta\u0142 poprawnie zainicjowany.
initializeWizardPagesError_reason=Nie zainicjowano poprawnie jednej lub wi\u0119cej stron kreatora.
