Statistiques
| Révision :

root / tmp / org.txm.backtomedia.rcp / src / vlcplayerrcp / Application.java @ 542

Historique | Voir | Annoter | Télécharger (1,3 ko)

1 456 mdecorde
package vlcplayerrcp;
2 456 mdecorde
3 456 mdecorde
import org.eclipse.equinox.app.IApplication;
4 456 mdecorde
import org.eclipse.equinox.app.IApplicationContext;
5 456 mdecorde
import org.eclipse.swt.widgets.Display;
6 456 mdecorde
import org.eclipse.ui.IWorkbench;
7 456 mdecorde
import org.eclipse.ui.PlatformUI;
8 456 mdecorde
9 456 mdecorde
/**
10 456 mdecorde
 * This class controls all aspects of the application's execution
11 456 mdecorde
 */
12 456 mdecorde
public class Application implements IApplication {
13 456 mdecorde
14 456 mdecorde
        public static String PLUGIN_ID = "org.txm.backtomedia"; //$NON-NLS-1$
15 456 mdecorde
16 456 mdecorde
        /* (non-Javadoc)
17 456 mdecorde
         * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext)
18 456 mdecorde
         */
19 456 mdecorde
        public Object start(IApplicationContext context) throws Exception {
20 456 mdecorde
                Display display = PlatformUI.createDisplay();
21 456 mdecorde
                try {
22 456 mdecorde
                        int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
23 456 mdecorde
                        if (returnCode == PlatformUI.RETURN_RESTART)
24 456 mdecorde
                                return IApplication.EXIT_RESTART;
25 456 mdecorde
                        else
26 456 mdecorde
                                return IApplication.EXIT_OK;
27 456 mdecorde
                } finally {
28 456 mdecorde
                        display.dispose();
29 456 mdecorde
                }
30 456 mdecorde
        }
31 456 mdecorde
32 456 mdecorde
        /* (non-Javadoc)
33 456 mdecorde
         * @see org.eclipse.equinox.app.IApplication#stop()
34 456 mdecorde
         */
35 456 mdecorde
        public void stop() {
36 456 mdecorde
                if (!PlatformUI.isWorkbenchRunning())
37 456 mdecorde
                        return;
38 456 mdecorde
                final IWorkbench workbench = PlatformUI.getWorkbench();
39 456 mdecorde
                final Display display = workbench.getDisplay();
40 456 mdecorde
                display.syncExec(new Runnable() {
41 456 mdecorde
                        public void run() {
42 456 mdecorde
                                if (!display.isDisposed())
43 456 mdecorde
                                        workbench.close();
44 456 mdecorde
                        }
45 456 mdecorde
                });
46 456 mdecorde
        }
47 456 mdecorde
}