Example usage for org.eclipse.jface.util ISafeRunnableRunner ISafeRunnableRunner

List of usage examples for org.eclipse.jface.util ISafeRunnableRunner ISafeRunnableRunner

Introduction

In this page you can find the example usage for org.eclipse.jface.util ISafeRunnableRunner ISafeRunnableRunner.

Prototype

ISafeRunnableRunner

Source Link

Usage

From source file:org.eclipse.ui.internal.JFaceUtil.java

License:Open Source License

/**
 * Initializes JFace for use by Eclipse.
 *///w w  w . java  2 s . c om
public static void initializeJFace() {
    // Set the SafeRunner to run all SafeRunnables
    SafeRunnable.setRunner(new ISafeRunnableRunner() {
        public void run(ISafeRunnable code) {
            SafeRunner.run(code);
        }
    });

    // Pass all errors and warnings to the status handling facility
    // and the rest to the main runtime log
    Policy.setLog(new ILogger() {
        public void log(IStatus status) {
            if (status.getSeverity() == IStatus.WARNING || status.getSeverity() == IStatus.ERROR) {
                StatusManager.getManager().handle(status);
            } else {
                WorkbenchPlugin.log(status);
            }
        }
    });

    Policy.setStatusHandler(new StatusHandler() {
        public void show(IStatus status, String title) {
            StatusAdapter statusAdapter = new StatusAdapter(status);
            statusAdapter.setProperty(StatusAdapter.TITLE_PROPERTY, title);
            StatusManager.getManager().handle(statusAdapter, StatusManager.SHOW);
        }
    });

    // Get all debug options from Platform
    if ("true".equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/debug"))) { //$NON-NLS-1$ //$NON-NLS-2$
        Policy.DEBUG_DIALOG_NO_PARENT = "true" //$NON-NLS-1$
                .equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/debug/dialog/noparent")); //$NON-NLS-1$
        Policy.TRACE_ACTIONS = "true" //$NON-NLS-1$
                .equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/trace/actions")); //$NON-NLS-1$
        Policy.TRACE_TOOLBAR = "true" //$NON-NLS-1$
                .equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/trace/toolbarDisposal")); //$NON-NLS-1$
        InternalPolicy.DEBUG_LOG_REENTRANT_VIEWER_CALLS = "true".equalsIgnoreCase( //$NON-NLS-1$
                Platform.getDebugOption(Policy.JFACE + "/debug/viewers/reentrantViewerCalls")); //$NON-NLS-1$
        InternalPolicy.DEBUG_LOG_EQUAL_VIEWER_ELEMENTS = "true" //$NON-NLS-1$
                .equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/debug/viewers/equalElements")); //$NON-NLS-1$
    }
}