package ch.medshare.mediport; import java.io.IOException; import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.jface.preference.PreferencePage; import org.eclipse.swt.widgets.Shell; import org.eclipse.ui.IWorkbenchPreferencePage; import ch.elexis.core.data.activator.CoreHub; import ch.elexis.core.ui.preferences.SettingsPreferenceStore; import ch.medshare.mediport.config.MPCProperties; public abstract class MediPortAbstractPrefPage extends PreferencePage implements IWorkbenchPreferencePage { public static final String MPC_INSTALL_DIR = "mpc/install_dir"; //$NON-NLS-1$ public static final String MPC_INTERMEDIAER_EAN = "mpc/inter_ean"; // Intermediaer EAN //$NON-NLS-1$ public static final String MPC_AUSGABE = "mpc/ausgabe"; // MediPort; Tarmed-Drucker //$NON-NLS-1$ public static final String MPC_SERVER = "mpc/server"; // production/test //$NON-NLS-1$ public static final String MEDIDATA_EAN = "7601001304307"; // EAN der MediData public static final String LBL_NEW_KEY = Messages.getString("MediPortAbstractPrefPage.lbl.Neu"); // production/test //$NON-NLS-1$ public static final String LBL_DOC_NO_PRINT = Messages.getString("MediPortAbstractPrefPage.lbl.Nein"); //$NON-NLS-1$ public static final String LBL_DOC_PRINT_COPY = Messages.getString("MediPortAbstractPrefPage.lbl.Ja"); //$NON-NLS-1$ public static final String TIER_PAYANT = "Tiers_Payant"; //$NON-NLS-1$ public static final String TIER_GARANT_MANUELL = "Tiers_Garant_Manuell"; //$NON-NLS-1$ public static final String TIER_GARANT_DIRECT = "Tiers_Garant_Direct"; //$NON-NLS-1$ public static final String LBL_DIST_TYPE_B = Messages.getString("MediPortAbstractPrefPage.lbl.BPost"); //$NON-NLS-1$ public static final String LBL_DIST_TYPE_A = Messages.getString("MediPortAbstractPrefPage.lbl.APost"); //$NON-NLS-1$ public static final String LBL_LANGUAGE_D = Messages.getString("MediPortAbstractPrefPage.lbl.Deutsch"); //$NON-NLS-1$ public static final String LBL_LANGUAGE_F = Messages.getString("MediPortAbstractPrefPage.lbl.Franzoesisch"); //$NON-NLS-1$ public static final String LBL_LANGUAGE_I = Messages.getString("MediPortAbstractPrefPage.lbl.Italienisch"); //$NON-NLS-1$ public static final String LBL_SERVER_PRODUCTION = "production"; //$NON-NLS-1$ public static final String LBL_SERVER_TEST = "test"; //$NON-NLS-1$ public static final String VALUE_SERVER_URL_PRODUKTIV = "212.243.92.201"; //$NON-NLS-1$ public static final String VALUE_SERVER_URL_TEST = "212.243.92.199"; //$NON-NLS-1$ public static final String LBL_SERVER_URL_PRODUKTIV = VALUE_SERVER_URL_PRODUKTIV + ":" + Messages.getString("MediPortAbstractPrefPage.lbl.ProduktivServer"); //$NON-NLS-1$ //$NON-NLS-2$ public static final String LBL_SERVER_URL_TEST = VALUE_SERVER_URL_TEST + ":" + Messages.getString("MediPortAbstractPrefPage.lbl.TestServer"); //$NON-NLS-1$ //$NON-NLS-2$ protected final SettingsPreferenceStore prefs = new SettingsPreferenceStore(CoreHub.globalCfg); MPCProperties props; public MediPortAbstractPrefPage(){ super(); try { props = MPCProperties.reload(); } catch (IOException e) { MessageDialog.openError(new Shell(), Messages .getString("MediPortAbstractPrefPage.error.title.LoadConfiguration"), //$NON-NLS-1$ e.getMessage()); } } protected abstract boolean storeAll(); protected void showReloadInfo(){ // Show nothing } protected void refresh(){ // Show nothing } protected String getPrefString(String name){ return prefs.getString(name); } protected void putPrefString(String name, String value){ prefs.putValue(name, value); prefs.setDefault(name, value); } protected void storePrefs(){ prefs.flush(); } @Override public boolean performOk(){ if (storeAll()) { showReloadInfo(); refresh(); return true; } return true; } }