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

# File Menu
fileMenuItem_text=&Plik
fileNewMenuItem_text=&Nowy
fileOpenMenuItem_text=&Otw\u00f3rz

# Edit Menu
editMenuItem_text=&Edytuj

# Navigate Menu
navigateMenuItem_text=&Nawiguj

# Search Menu
searchMenuItem_text=&Szukaj

# Configuration Menu
configurationMenuItem_text=&Konfiguracja

# Window Menu
windowMenuItem_text=&Okno
windowOpenPerspectiveMenuItem_text=Ot&w\u00f3rz perspektyw\u0119
windowShowViewMenuItem_text=Poka\u017c w&idok

# Help Menu
helpMenuItem_text=&Pomoc

# New Drop Down Menu
newDropDown_tooltip_text=Nowy
otherMenuItem_text=Inne...

# Open Perspective Actions
openAuthoringPerspectiveAction_text=Tworzenie
openBrowsingPerspectiveAction_text=Przegl\u0105danie

# Misc Actions
editAction_text=&Edytuj
upgradeLibraryAction_text=Aktualizuj bibliotek\u0119 metod z I1 do I2...

startup_dir_log_info_text=INFORMACJA: Katalog pocz\u0105tkowy aplikacji =
menu_help_software_updates_manage_software_config_text=&Zarz\u0105dzaj konfiguracj\u0105 oprogramowania...

workspaceCannotLockTitle=Nie mo\u017cna uruchomi\u0107 {0}
workspaceCannotLockMessage=Nie mo\u017cna uruchomi\u0107 {0}, gdy uruchomiono inn\u0105 instancj\u0119. Prze\u0142\u0105cz si\u0119 na uruchomion\u0105 instancj\u0119 lub zamknij j\u0105 i restartuj aplikacj\u0119.
mainActionBarAdvisor_Diagnosis=Narz\u0119dzia diagnostyczne i naprawcze
mainActionBarAdvisor_HealthCheck=Wykonaj sprawdzenie poprawno\u015bci biblioteki...
mainActionBarAdvisor_RemoveReference=Usu\u0144 odniesienia do niepoprawnych obiekt\u00f3w...
