# Refer to the note in basic.properties for a description as to what
# the mnemonics correspond to and how to calculate them.



# GTK specific properties

# GTK color chooser properties:
GTKColorChooserPanel.textAndMnemonic=&GTK-f\u00E4rgv\u00E4ljaren
# mnemonic as a VK_ constant

GTKColorChooserPanel.hue.textAndMnemonic=&Nyans:

GTKColorChooserPanel.red.textAndMnemonic=R&\u00F6d:

GTKColorChooserPanel.saturation.textAndMnemonic=&M\u00E4ttnad:

GTKColorChooserPanel.green.textAndMnemonic=&Gr\u00F6n:

GTKColorChooserPanel.value.textAndMnemonic=&V\u00E4rde:

GTKColorChooserPanel.blue.textAndMnemonic=&Bl\u00E5:

GTKColorChooserPanel.color.textAndMnemonic=F\u00E4rg&namn:



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

FileChooser.acceptAllFileFilter.textAndMnemonic=Alla filer
FileChooser.newFolderButton.textAndMnemonic=&Ny mapp
FileChooser.newFolderDialog.textAndMnemonic=Mapp:
FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=Fel
FileChooser.newFolderNoDirectoryError.textAndMnemonic=Ett fel intr\u00E4ffade vid f\u00F6rs\u00F6k att skapa katalogen "{0}": Filen eller katalogen finns inte
FileChooser.deleteFileButton.textAndMnemonic=Ta &bort fil
FileChooser.renameFileButton.textAndMnemonic=&\u00C4ndra namn p\u00E5 filen
FileChooser.cancelButton.textAndMnemonic=&Avbryt
FileChooser.saveButton.textAndMnemonic=&OK
FileChooser.openButton.textAndMnemonic=&OK
FileChooser.saveDialogTitle.textAndMnemonic=Spara
FileChooser.openDialogTitle.textAndMnemonic=\u00D6ppna
FileChooser.pathLabel.textAndMnemonic=&Urval:
FileChooser.filterLabel.textAndMnemonic=Filter:
FileChooser.foldersLabel.textAndMnemonic=Map&par
FileChooser.filesLabel.textAndMnemonic=&Filer

FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt dialogrutan Filv\u00E4ljare.
FileChooser.saveButtonToolTip.textAndMnemonic=Spara vald fil.
FileChooser.openButtonToolTip.textAndMnemonic=\u00D6ppna vald fil.

FileChooser.renameFileDialog.textAndMnemonic=Namn\u00E4ndra fil "{0}" till
FileChooser.renameFileError.titleAndMnemonic=Fel
FileChooser.renameFileError.textAndMnemonic=Fel vid namn\u00E4ndring av fil "{0}" till "{1}"

