# This properties file is used to create a PropertyResourceBundle
# It contains Locale specific strings used be the Motif Look and Feel.
# Currently, the following components need this for support:
#
#    FileChooser
#
# When this file is read in, the strings are put into the 
# defaults table.  This is an implementation detail of the current
# workings of Swing.  DO NOT DEPEND ON THIS.  
# This may change in future versions of Swing as we improve localization 
# support.
#
# Refer to the note in basic.properties for a description as to what
# the mnemonics correspond to and how to calculate them.
#
# @author Steve Wilson


############ FILE CHOOSER STRINGS #############

FileChooser.acceptAllFileFilterText=*
FileChooser.cancelButtonText=Avbryt
FileChooser.saveButtonText=Spara
FileChooser.openButtonText=OK
FileChooser.saveDialogTitleText=Spara
FileChooser.openDialogTitleText=\u00d6ppna
FileChooser.updateButtonText=Uppdatera
FileChooser.helpButtonText=Hj\u00e4lp
FileChooser.pathLabelText=Ange s\u00f6kv\u00e4g eller mappnamn:
FileChooser.filterLabelText=Filter
FileChooser.foldersLabelText=Mappar
FileChooser.filesLabelText=Filer
FileChooser.enterFileNameLabelText=Ange filnamn:
FileChooser.enterFolderNameLabelText=Enter folder name:

FileChooser.cancelButtonToolTipText=Avbryt \u00d6ppna fil.
FileChooser.saveButtonToolTipText=Spara markerad fil.
FileChooser.openButtonToolTipText=\u00d6ppna markerad fil.
FileChooser.updateButtonToolTipText=Uppdatera kataloglistan.
FileChooser.helpButtonToolTipText=Hj\u00e4lp - Filv\u00e4ljare.
