Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Villiger2013-03-25 12:33:15 +0000
committerMatthias Villiger2013-03-25 12:33:15 +0000
commit70878c547f1a46adb23c42ebaa3c4914a29c49fc (patch)
treed3c402088e168ccbc3c0eb673d03c31031b0c931
parent28e8ae5691f4df7d12e93e156d867dee011548a4 (diff)
downloadorg.eclipse.scout.sdk-70878c547f1a46adb23c42ebaa3c4914a29c49fc.tar.gz
org.eclipse.scout.sdk-70878c547f1a46adb23c42ebaa3c4914a29c49fc.tar.xz
org.eclipse.scout.sdk-70878c547f1a46adb23c42ebaa3c4914a29c49fc.zip
Support for Scout Mobile UI
https://bugs.eclipse.org/bugs/show_bug.cgi?id=394127 new session menu only available, when a desktop is existing
-rw-r--r--org.eclipse.scout.sdk.ui/src/org/eclipse/scout/sdk/ui/action/InstallClientSessionAction.java13
1 files changed, 9 insertions, 4 deletions
diff --git a/org.eclipse.scout.sdk.ui/src/org/eclipse/scout/sdk/ui/action/InstallClientSessionAction.java b/org.eclipse.scout.sdk.ui/src/org/eclipse/scout/sdk/ui/action/InstallClientSessionAction.java
index ffdce3386..05396dc6b 100644
--- a/org.eclipse.scout.sdk.ui/src/org/eclipse/scout/sdk/ui/action/InstallClientSessionAction.java
+++ b/org.eclipse.scout.sdk.ui/src/org/eclipse/scout/sdk/ui/action/InstallClientSessionAction.java
@@ -18,6 +18,7 @@ import org.eclipse.scout.sdk.operation.project.CreateClientPluginOperation;
import org.eclipse.scout.sdk.operation.project.CreateSharedPluginOperation;
import org.eclipse.scout.sdk.operation.template.InstallJavaFileOperation;
import org.eclipse.scout.sdk.ui.internal.ScoutSdkUi;
+import org.eclipse.scout.sdk.util.type.TypeUtility;
import org.eclipse.scout.sdk.util.typecache.ICachedTypeHierarchy;
import org.eclipse.scout.sdk.workspace.IScoutBundle;
import org.eclipse.scout.sdk.workspace.ScoutBundleFilters;
@@ -42,10 +43,14 @@ public class InstallClientSessionAction extends AbstractOperationAction {
if (clientSessions.length == 0) {
IScoutBundle shared = scoutResource.getParentBundle(ScoutBundleFilters.getBundlesOfTypeFilter(IScoutBundle.TYPE_SHARED), false);
if (shared != null) {
- HashMap<String, String> props = new HashMap<String, String>(2);
- props.put(CreateSharedPluginOperation.PROP_BUNDLE_SHARED_NAME, shared.getSymbolicName());
- props.put(CreateClientPluginOperation.PROP_BUNDLE_CLIENT_NAME, scoutResource.getSymbolicName());
- setOperation(new InstallJavaFileOperation("templates/client/src/ClientSession.java", "ClientSession.java", scoutResource, props));
+ String pck = scoutResource.getPackageName("ui.desktop");
+ IType desktopType = TypeUtility.getType(pck + ".Desktop");
+ if (TypeUtility.exists(desktopType)) {
+ HashMap<String, String> props = new HashMap<String, String>(2);
+ props.put(CreateSharedPluginOperation.PROP_BUNDLE_SHARED_NAME, shared.getSymbolicName());
+ props.put(CreateClientPluginOperation.PROP_BUNDLE_CLIENT_NAME, scoutResource.getSymbolicName());
+ setOperation(new InstallJavaFileOperation("templates/client/src/ClientSession.java", "ClientSession.java", scoutResource, props));
+ }
}
}
}

Back to the top