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

# Plug-in
pluginName=Import EPF
providerName=Eclipse.org

# Import Wizard Category
importCategoryName=Metoda 
# Import Library Configuration Wizard
importLibraryConfigurationWizardName=Konfiguracja biblioteki
importLibraryConfigurationWizardText=Importowanie konfiguracji biblioteki.

# Import Method Plug-ins Wizard
importMethodPluginsWizardName=Wtyczki metod
importMethodPluginsWizardText=Importuj jedn\u0105 lub wi\u0119cej wtyczek metod.



               
