private boolean save() {
		if (dic == null) {
			return false;
		}
		File f;
		if (defaultFile == null) {
			CostumFileChooser chooser = new CostumFileChooser();
			FileNameExtensionFilter filter = new FileNameExtensionFilter(Localization.getInstance().get("dictionaryFiletypeFilterName"), "dict");
			chooser.setFileFilter(filter);
			chooser.setSelectedFile(new File(dic.getName() + ".dict"));
			chooser.setDialogType(JFileChooser.SAVE_DIALOG);
			
			if (chooser.showSaveDialog(frmDictionaryEditor) == CostumFileChooser.APPROVE_OPTION) {
				f = chooser.getSelectedFile();
				System.out.println(f);
			} else {
				return false;
			}
		} else {
			f = defaultFile;
		}
		try {
			setStatus("Saving", true);
			dic.save(f);
			defaultFile = f;
			setStatus(Localization.getInstance().get("statusTextFileSaved"), false);
			
			changed = false;
			return true;
		} catch (Exception ex) {
			showError(Localization.getInstance().get("dictionarySaveError"), ex);
			return false;
		}
	}