Java源码示例:org.eclipse.jface.preference.IPersistentPreferenceStore

示例1
@Override
public boolean performOk() {
	IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
	if (!processChanges(container)) {
		return false;
	}
	boolean retVal = super.performOk();

	if (retVal && isProjectPreferencePage()) {
		try {
			IPreferenceStore preferenceStore = preferenceStoreAccessImpl.getWritablePreferenceStore(getProject());
			if (preferenceStore instanceof IPersistentPreferenceStore) {
				((IPersistentPreferenceStore) preferenceStore).save();
			}
		} catch (Exception e) {
			System.err.println(e);
			retVal = false;
		}
	}
	return retVal;
}
 
示例2
protected void toggle() {
	boolean newState = !isPropertySet();
	IPreferenceStore store = preferenceStoreAccess.getWritablePreferenceStore();
	store.setValue(getPreferenceKey(), newState);
	if (store instanceof IPersistentPreferenceStore) {
		try {
			((IPersistentPreferenceStore) store).save();
		} catch (IOException e) {
			// log and ignore
			logger.debug(e.getMessage(), e);
		}
	}
	// Prevent sending state change event twice, already called by the propertyChangeListener
	if (propertyChangeListener == null)
		stateChanged(newState);
}
 
示例3
public static Date getLastUpdateCheckDate() {
	IPersistentPreferenceStore configuration = CppcheclipsePlugin
			.getConfigurationPreferenceStore();

	String dateString = configuration
			.getString(IPreferenceConstants.P_LAST_UPDATE_CHECK);
	if (dateString.length() == 0) {
		return null;
	}

	DateFormat format = new SimpleDateFormat(DATE_PATTERN);
	Date lastUpdateDate = null;
	try {
		lastUpdateDate = format.parse(dateString);
	} catch (ParseException e) {
		CppcheclipsePlugin.logError("Could not parse date from last update check", e);
	}
	return lastUpdateDate;
}
 
示例4
private static boolean needUpdateCheck() {
	IPersistentPreferenceStore configuration = CppcheclipsePlugin
			.getConfigurationPreferenceStore();
	if (!configuration
			.getBoolean(IPreferenceConstants.P_USE_AUTOMATIC_UPDATE_CHECK)) {
		return false;
	}

	Date lastUpdateDate = getLastUpdateCheckDate();
	if (lastUpdateDate == null) {
		return true;
	}

	Date today = new Date();

	long timeDifferenceMS = today.getTime() - lastUpdateDate.getTime();
	String updateInterval = configuration
			.getString(IPreferenceConstants.P_AUTOMATIC_UPDATE_CHECK_INTERVAL);
	for (int i = 0; i < INTERVALS.length; i++) {
		if (updateInterval.equals(INTERVALS[i][1])) {
			return timeDifferenceMS >= INTERVALS_IN_MS[i];
		}
	}
	return false;
}
 
示例5
@Override
public void run() {
    PromptOverlay overlay = promptOverlay.get();
    if (overlay == null || preferences == null) {
        return;
    }
    Integer newSize = DialogHelpers.openAskInt("Percentual size for console prompt.",
            "Please enter the relative size for the console prompt (0-100)",
            preferences.getInt(PydevDebugPreferencesInitializer.RELATIVE_CONSOLE_HEIGHT));
    if (newSize != null) {
        if (newSize < 0) {
            newSize = 0;
        }
        if (newSize > 100) {
            newSize = 100;
        }
    }
    preferences.setValue(PydevDebugPreferencesInitializer.RELATIVE_CONSOLE_HEIGHT, newSize);
    if (preferences instanceof IPersistentPreferenceStore) {
        try {
            ((IPersistentPreferenceStore) preferences).save();
        } catch (IOException e) {
            Log.log(e);
        }
    }
}
 
示例6
/**
 * Saves the underlying {@link IPersistentPreferenceStore}.
 *
 * @throws IOException
 */
private void save() throws IOException {
	IPreferenceStore store = getPreferenceStore();
	if (store instanceof IPersistentPreferenceStore) {
		((IPersistentPreferenceStore) store).save();
	}
}
 
示例7
/**
 * If the preference store is persistable, it will serialized here.
 *
 * This method has been copied and adapted from org.eclipse.xtext.ui.preferences.OptionsConfigurationBlock.
 */
protected void savePreferences() {
	try {
		if (getPreferenceStore() instanceof IPersistentPreferenceStore) {
			((IPersistentPreferenceStore) getPreferenceStore()).save();
		}
	} catch (IOException e) {
		IStatus status = new Status(IStatus.ERROR, N4JSActivator.getInstance().getBundle().getSymbolicName(),
				"Unexpected internal error: ", e); //$NON-NLS-1$
		N4JSActivator.getInstance().getLog().log(status);
	}
}
 
示例8
@Override
public boolean performOk() {
  for (PreferenceArea area : areas) {
    area.performApply();
    if (area.getPreferenceStore() instanceof IPersistentPreferenceStore) {
      try {
        ((IPersistentPreferenceStore) area.getPreferenceStore()).save();
      } catch (IOException ex) {
        logger.log(Level.SEVERE, "Unable to persist preferences for " + area, ex);
        return false;
      }
    }
  }
  return true;
}
 
示例9
protected void savePreferences() {
	try {
		if (preferenceStore instanceof IPersistentPreferenceStore) {
			((IPersistentPreferenceStore) preferenceStore).save();
		}
	} catch (IOException e) {
		logError("Unexpected internal error: ", e); //$NON-NLS-1$
	}
}
 
示例10
public static IPersistentPreferenceStore getProjectPreferenceStore(IProject project) {
	// Create an overlay preference store and fill it with properties
	ProjectScope ps = new ProjectScope(project);
	ScopedPreferenceStore scoped = new ScopedPreferenceStore(ps, getId());
	PreferenceInitializer.initializePropertiesDefault(scoped);
	return scoped;
}
 
示例11
public void save() throws IOException {
	StringBuffer suppressions = new StringBuffer();
	for (Suppression suppression : suppressionList) {
		suppressions.append(suppression.serialize()).append(DELIMITER);
	}

	projectPreferences.setValue(IPreferenceConstants.P_SUPPRESSIONS,
			suppressions.toString());

	if (projectPreferences instanceof IPersistentPreferenceStore) {
		((IPersistentPreferenceStore) projectPreferences).save();
	}
}
 
示例12
public void save() throws IOException {
	StringBuffer symbolsSerialization = new StringBuffer();
	for (Symbol symbol : symbols) {
		// only serialize user-defined symbols
		if (!symbol.isCDTDefined())
			symbolsSerialization.append(symbol.serialize()).append(DELIMITER);
	}

	projectPreferences.setValue(IPreferenceConstants.P_SYMBOLS,
			symbolsSerialization.toString());

	if (projectPreferences instanceof IPersistentPreferenceStore) {
		((IPersistentPreferenceStore) projectPreferences).save();
	}
}
 
示例13
@Override
protected IStatus run(IProgressMonitor monitor) {
	monitor.beginTask(getName(), 1);
	if (monitor.isCanceled())
		return Status.CANCEL_STATUS;

	UpdateCheckCommand updateCheck = new UpdateCheckCommand();
	Version newVersion;
	try {
		newVersion = updateCheck.run(monitor, Console.getInstance(), binaryPath);
		DateFormat format = new SimpleDateFormat(DATE_PATTERN);
		IPersistentPreferenceStore configuration = CppcheclipsePlugin
				.getConfigurationPreferenceStore();
		configuration.setValue(
				IPreferenceConstants.P_LAST_UPDATE_CHECK, format
						.format(new Date()));
		configuration.save();
		Display display = Display.getDefault();
		display.syncExec(new UpdateCheckNotifier(newVersion));
	} catch (Exception e) {
		if (!isSilent) {
			CppcheclipsePlugin
					.showError("Error checking for update", e); //$NON-NLS-1$
		} else {
			CppcheclipsePlugin.logError("Error checking for update", e);
		}
	}
	return Status.OK_STATUS;
}
 
示例14
public void save() {
    if (store.needsSaving() && store instanceof IPersistentPreferenceStore) {
        try {
            ((IPersistentPreferenceStore)store).save();
        } catch (IOException e) {
            Activator.logError(Activator.getResourceString("easyshell.message.error.store.save"), e);
        }
    }
}
 
示例15
public void save( ) throws IOException
{
	if ( this.preferenceType == SPECIAL_TYPE && project != null )
		prefs.saveReportPreference( project );
	else if ( prefsStore instanceof IPersistentPreferenceStore )
		( (IPersistentPreferenceStore) prefsStore ).save( );

}
 
示例16
@Override
public boolean performOk() {
    boolean ret = super.performOk();
    IPreferenceStore preferenceStore2 = getPreferenceStore();
    // When the user presses apply, make sure we try to persist now, not when the IDE is closed.
    if (preferenceStore2 instanceof IPersistentPreferenceStore) {
        IPersistentPreferenceStore iPersistentPreferenceStore = (IPersistentPreferenceStore) preferenceStore2;
        try {
            iPersistentPreferenceStore.save();
        } catch (IOException e) {
            Log.log(e);
        }
    }
    return ret;
}
 
示例17
@Override
public void run(IAction action) {
    preferences.setValue(PydevDebugPreferencesInitializer.SHOW_CONSOLE_PROMPT_ON_DEBUG,
            !preferences.getBoolean(PydevDebugPreferencesInitializer.SHOW_CONSOLE_PROMPT_ON_DEBUG));

    if (preferences instanceof IPersistentPreferenceStore) {
        try {
            ((IPersistentPreferenceStore) preferences).save();
        } catch (IOException e) {
            Log.log(e);
        }
    }
}
 
示例18
@Override
public void run() {
    PromptOverlay overlay = promptOverlay.get();
    if (overlay == null || preferences == null) {
        return;
    }
    int relativeConsoleHeight = overlay.getRelativeConsoleHeight();
    int newSize;
    if (relativeConsoleHeight < 100) {
        previousConsoleHeight = relativeConsoleHeight;
        newSize = 100;
        preferences.setValue(PydevDebugPreferencesInitializer.CONSOLE_PROMPT_OUTPUT_MODE,
                PydevDebugPreferencesInitializer.MODE_NOT_ASYNC_SAME_CONSOLE);
    } else {
        newSize = previousConsoleHeight;
        preferences.setValue(PydevDebugPreferencesInitializer.CONSOLE_PROMPT_OUTPUT_MODE,
                PydevDebugPreferencesInitializer.MODE_ASYNC_SEPARATE_CONSOLE);
    }
    preferences.setValue(PydevDebugPreferencesInitializer.RELATIVE_CONSOLE_HEIGHT, newSize);
    if (preferences instanceof IPersistentPreferenceStore) {
        try {
            ((IPersistentPreferenceStore) preferences).save();
        } catch (IOException e) {
            Log.log(e);
        }
    }
    updateText();
}
 
示例19
private void savePrefs() {
    if (preferences instanceof IPersistentPreferenceStore) {
        try {
            ((IPersistentPreferenceStore) preferences).save();
        } catch (IOException e) {
            Log.log(e);
        }
    }

}
 
示例20
public TestPrefArea(String preferenceName, String preferenceValue,
    IPersistentPreferenceStore preferences) {
  this.preferenceName = preferenceName;
  this.preferenceValue = preferenceValue;
  setPreferenceStore(preferences);
}
 
示例21
public IPersistentPreferenceStore getXtendPreferencesStore() {
  IPreferenceStore _writablePreferenceStore = this.prefStoreAccess.getWritablePreferenceStore(this.testHelper.getProject());
  return ((IPersistentPreferenceStore) _writablePreferenceStore);
}
 
示例22
private IPersistentPreferenceStore getPreferenceStore() {
  IPreferenceStore _writablePreferenceStore = this.preferenceStoreAccess.getWritablePreferenceStore(this._workbenchTestHelper.getProject());
  return ((IPersistentPreferenceStore) _writablePreferenceStore);
}
 
示例23
public static IPersistentPreferenceStore getWorkspacePreferenceStore() {
	return getDefault().getInternalWorkspacePreferenceStore();
}
 
示例24
public static IPersistentPreferenceStore getConfigurationPreferenceStore() {
	return getDefault().getInternalConfigurationPreferenceStore();
}
 
示例25
public void run() {
	Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
			.getShell();
	// if no new version found, just display a dialog if not in silent mode
	if (newVersion == null) {
		if (!isSilent) {
			MessageDialog.openInformation(shell,
					Messages.UpdateCheck_NoUpdateTitle,
					Messages.UpdateCheck_NoUpdateMessage);
		}
	} else {
		boolean downloadUpdate = false;
		// only have toggle switch for update check if silent (not
		// started from preferences)
		if (isSilent) {
			MessageDialogWithToggle msgDialog = MessageDialogWithToggle
					.openYesNoQuestion(shell,
							Messages.UpdateCheck_UpdateTitle,
							Messages.bind(
									Messages.UpdateCheck_UpdateMessage,
									newVersion),
							Messages.UpdateCheck_NeverCheckAgain,
							false, null, null);
			IPersistentPreferenceStore configuration = CppcheclipsePlugin
					.getConfigurationPreferenceStore();
			configuration.setValue(
					IPreferenceConstants.P_USE_AUTOMATIC_UPDATE_CHECK,
					!msgDialog.getToggleState());
			if (msgDialog.getReturnCode() == IDialogConstants.YES_ID) {
				downloadUpdate = true;
			}
			try {
				configuration.save();
			} catch (IOException e1) {
				CppcheclipsePlugin.logError("Could not save changes for update checks", e1);
			}
		} else {
			downloadUpdate = MessageDialog.openQuestion(shell,
					Messages.UpdateCheck_UpdateTitle, Messages.bind(
							Messages.UpdateCheck_UpdateMessage,
							newVersion));
		}

		if (downloadUpdate) {
			try {
				Utils.openUrl(DOWNLOAD_URL);
			} catch (Exception e) {
				CppcheclipsePlugin.logError("Could not open cppcheck download page", e);
			}
		}
	}
}