import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
import org.eclipse.ui.part.EditorInputTransfer;
-/**
- * Set here initial default size of the UI
- *
- * @author bsinou
- *
- */
+/** Set here initial default size of the UI */
public class SlcSecureWorkbenchWindowAdvisor extends
SecureWorkbenchWindowAdvisor {
+ public final static String IN_TRAY_PROPERTY = "org.argeo.slc.ui.inTray";
private TrayItem trayItem;
super(configurer, username);
}
- // public ActionBarAdvisor createActionBarAdvisor(
- // IActionBarConfigurer configurer) {
- // return new ApplicationActionBarAdvisor(configurer);
- // }
-
-
-
public void postWindowOpen() {
- initTray();
+ String inTray = System.getProperty(IN_TRAY_PROPERTY);
+ if (inTray != null && inTray.equals("true")) {
+ initTray();
+ }
}
-
-
@Override
public void preWindowOpen() {
- getWindowConfigurer().addEditorAreaTransfer(EditorInputTransfer.getInstance());
- getWindowConfigurer().configureEditorAreaDropListener(new DropTargetAdapter() {
+ getWindowConfigurer().addEditorAreaTransfer(
+ EditorInputTransfer.getInstance());
+ getWindowConfigurer().configureEditorAreaDropListener(
+ new DropTargetAdapter() {
+
+ @Override
+ public void dragEnter(DropTargetEvent event) {
+ System.out.println("DROP enter!!! " + event);
+ }
- @Override
- public void dragEnter(DropTargetEvent event) {
- System.out.println("DROP enter!!! " + event);
- }
+ @Override
+ public void dragLeave(DropTargetEvent event) {
+ System.out.println("DROP leave!!! " + event);
+ }
- @Override
- public void dragLeave(DropTargetEvent event) {
- System.out.println("DROP leave!!! " + event);
- }
+ public void drop(DropTargetEvent event) {
+ System.out.println("DROP drop!!! " + event);
- public void drop(DropTargetEvent event) {
- System.out.println("DROP drop!!! " + event);
+ }
- }
+ @Override
+ public void dropAccept(DropTargetEvent event) {
+ System.out.println("DROP accept!!! " + event);
+ super.dropAccept(event);
+ }
- @Override
- public void dropAccept(DropTargetEvent event) {
- System.out.println("DROP accept!!! " + event);
- super.dropAccept(event);
- }
+ });
- });
+ // start hidden if in tray
+ String inTray = System.getProperty(IN_TRAY_PROPERTY);
+ if (inTray != null && inTray.equals("true")) {
+ Shell shell = getWindowConfigurer().getWindow().getShell();
+ shell.setVisible(false);
+ }
super.preWindowOpen();
}
/** Init tray support */
protected void initTray() {
IWorkbenchWindow window = getWindowConfigurer().getWindow();
- final Tray tray = window.getShell().getDisplay().getSystemTray();
+ Shell shell = window.getShell();
+ final Tray tray = shell.getDisplay().getSystemTray();
trayItem = new TrayItem(tray, SWT.NONE);
if (trayItem == null)
return;
}
}
});
+
}
@Override