rendered paste bodypackage source.lib;import source.Model;import source.lib.KEYS;import javax.swing.*;import java.io.*;import java.util.*;public class FileChooser extends JFileChooser { private File ioDatei = null; private String[] langKeys = { "FileChooser.fileDescriptionText", "FileChooser.openDialogTitleText", "FileChooser.saveDialogTitleText", "FileChooser.directoryDescriptionText", "FileChooser.win32.newFolder", "FileChooser.other.newFolder", "FileChooser.newFolderErrorText", "FileChooser.acceptAllFileFilterText", "FileChooser.openButtonText", "FileChooser.openButtonToolTipText", "FileChooser.saveButtonText", "FileChooser.saveButtonToolTipText", "FileChooser.cancelButtonText", "FileChooser.cancelButtonToolTipText", "FileChooser.updateButtonText", "FileChooser.updateButtonToolTipText", "FileChooser.helpButtonText", "FileChooser.helpButtonToolTipText", "FileChooser.directoryDescriptionText", "FileChooser.directoryOpenButtonText", "FileChooser.directoryOpenButtonToolTipText", "FileChooser.lookInLabelText", "FileChooser.saveInLabelText", "FileChooser.fileNameLabelText", "FileChooser.filesOfTypeLabelText", "FileChooser.upFolderToolTipText", "FileChooser.newFolderToolTipText", "FileChooser.listViewButtonToolTipText", "FileChooser.detailsViewButtonToolTipText" }; private String[] mnemonicKeys = { "FileChooser.openButtonMnemonic", "FileChooser.updateButtonMnemonic", "FileChooser.cancelButtonMnemonic", "FileChooser.directoryOpenButtonMnemonic", "FileChooser.helpButtonMnemonic", "FileChooser.saveButtonMnemonic" }; public FileChooser() { setCurrentDirectory(new File(FINALS.WORKDIR)); setFileSelectionMode(JFileChooser.FILES_ONLY); TextFilter tf = new TextFilter( Model.getModel().getIniValue(KEYS.FILTER), Model.getModel().getTranslation("FileChooser.fileDescriptionText") ); setFileFilter(tf); for (int i = 0; i < langKeys.length; ++i) { UIManager.put( langKeys[i], Model.getModel().getTranslation(langKeys[i]) ); } for (int i = 0; i < mnemonicKeys.length; ++i) { UIManager.put( mnemonicKeys[i], Model.getModel().getTranslationInt(mnemonicKeys[i]) ); } updateUI(); } public int chooseFile(JFrame fenster, String titel, int mod) { int auswahl = 0; int antwort = 0; setDialogTitle(titel); if (mod == FINALS.OPEN_DIALOG) { auswahl = showOpenDialog(fenster); } if (mod == FINALS.SAVE_DIALOG) { setApproveButtonText(Model.getModel().getTranslation("FileChooser.saveButtonText")); auswahl = showSaveDialog(fenster); } updateUI(); if (auswahl == JFileChooser.APPROVE_OPTION) { ioDatei = getSelectedFile(); antwort = FINALS.OPEN_SAVE_BUTTON; } if (auswahl == JFileChooser.CANCEL_OPTION | auswahl == JFileChooser.ERROR_OPTION) { antwort = FINALS.CANCEL_BUTTON; } return antwort; } public File getFile() { return ioDatei; } public String getFileName() { return ioDatei.toString(); }}