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

type_activity=Diagram dzia\u0142ania
defaultBaseName=Nowy {0}
type_WPD=Diagram zale\u017cno\u015bci produktu pracy
type_activityDetail=Diagram szczeg\u00f3\u0142owych informacji o dzia\u0142aniu
addFreeTxt=Dodaj dowolny tekst
type_unknown=Nieznane
