author | Eugene Ostroukhov <eugeneo@symbian.org> |
Fri, 13 Aug 2010 17:26:00 -0700 | |
changeset 464 | 0b02f3d6f52c |
parent 463 | aea4c83725d8 |
child 465 | 87920e15f8eb |
permissions | -rw-r--r-- |
463
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
1 |
package org.symbian.tools.tmw.internal.ui.wizard; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
2 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
3 |
import java.beans.PropertyChangeListener; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
4 |
import java.beans.PropertyChangeSupport; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
5 |
import java.io.InputStream; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
6 |
import java.text.MessageFormat; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
7 |
import java.util.Map; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
8 |
import java.util.Set; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
9 |
import java.util.TreeMap; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
10 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
11 |
import org.eclipse.core.databinding.DataBindingContext; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
12 |
import org.eclipse.core.databinding.UpdateValueStrategy; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
13 |
import org.eclipse.core.databinding.beans.BeansObservables; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
14 |
import org.eclipse.core.databinding.observable.Observables; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
15 |
import org.eclipse.core.databinding.observable.map.IObservableMap; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
16 |
import org.eclipse.core.databinding.observable.value.IObservableValue; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
17 |
import org.eclipse.core.databinding.validation.IValidator; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
18 |
import org.eclipse.core.resources.IContainer; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
19 |
import org.eclipse.core.resources.IFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
20 |
import org.eclipse.core.resources.IFolder; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
21 |
import org.eclipse.core.resources.IProject; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
22 |
import org.eclipse.core.runtime.CoreException; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
23 |
import org.eclipse.core.runtime.IPath; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
24 |
import org.eclipse.core.runtime.IProgressMonitor; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
25 |
import org.eclipse.core.runtime.NullProgressMonitor; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
26 |
import org.eclipse.core.runtime.SubProgressMonitor; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
27 |
import org.eclipse.jface.databinding.swt.ISWTObservableValue; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
28 |
import org.eclipse.jface.databinding.swt.SWTObservables; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
29 |
import org.eclipse.swt.SWT; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
30 |
import org.eclipse.swt.layout.GridData; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
31 |
import org.eclipse.swt.widgets.Composite; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
32 |
import org.eclipse.swt.widgets.Label; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
33 |
import org.eclipse.swt.widgets.Text; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
34 |
import org.symbian.tools.tmw.core.TMWCore; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
35 |
import org.symbian.tools.tmw.core.runtimes.IMobileWebRuntime; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
36 |
import org.symbian.tools.tmw.internal.util.Util; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
37 |
import org.symbian.tools.tmw.ui.TMWCoreUI; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
38 |
import org.symbian.tools.tmw.ui.project.IProjectTemplate; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
39 |
import org.symbian.tools.tmw.ui.project.IProjectTemplateContext; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
40 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
41 |
public class WizardContext implements IProjectTemplateContext { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
42 |
// public static final String CSS_FILE = "cssFile"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
43 |
// public static final String HTML_FILE = "htmlFile"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
44 |
// public static final String JS_FILE = "jsFile"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
45 |
public static final String TEMPLATE = "template"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
46 |
public static final String WIDGET_ID = "widgetId"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
47 |
public static final String WIDGET_NAME = "widgetName"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
48 |
// public static final String HOME_SCREEN = "homeScreen"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
49 |
public static final String RUNTIME = "runtime"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
50 |
// public static final String LIBRARIES = "libraries"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
51 |
public static final String PROJECT_NAME = "projectName"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
52 |
public static final String TEMPLATES = "templates"; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
53 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
54 |
// private String cssFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
55 |
private String projectName = ""; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
56 |
// private String htmlFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
57 |
// private String jsFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
58 |
private final PropertyChangeSupport propertySupport = new PropertyChangeSupport(this); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
59 |
private IProjectTemplate template = null; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
60 |
private String widgetId; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
61 |
private String widgetName; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
62 |
private Map<String, String> extensions = new TreeMap<String, String>(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
63 |
// private boolean homeScreen; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
64 |
private IMobileWebRuntime runtime; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
65 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
66 |
// private Set<JSLibrary> libraries = new HashSet<JSLibrary>(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
67 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
68 |
public WizardContext() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
69 |
IMobileWebRuntime[] runtimes = TMWCore.getRuntimesManager().getAllRuntimes(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
70 |
if (runtimes.length > 0) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
71 |
runtime = runtimes[0]; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
72 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
73 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
74 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
75 |
public void addPropertyChangeListener(PropertyChangeListener arg0) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
76 |
propertySupport.addPropertyChangeListener(arg0); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
77 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
78 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
79 |
public void addPropertyChangeListener(String arg0, PropertyChangeListener arg1) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
80 |
propertySupport.addPropertyChangeListener(arg0, arg1); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
81 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
82 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
83 |
public String getProjectName() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
84 |
return projectName; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
85 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
86 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
87 |
public void setProjectName(String projectName) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
88 |
String prev = getProjectName(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
89 |
String prevId = getWidgetId(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
90 |
String prevName = getWidgetName(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
91 |
this.projectName = projectName; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
92 |
propertySupport.firePropertyChange(PROJECT_NAME, getProjectName(), prev); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
93 |
if (widgetName == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
94 |
propertySupport.firePropertyChange(WIDGET_NAME, getWidgetName(), prevName); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
95 |
if (widgetId == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
96 |
propertySupport.firePropertyChange(WIDGET_ID, getWidgetId(), prevId); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
97 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
98 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
99 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
100 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
101 |
// public String getCssFile() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
102 |
// if (cssFile == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
103 |
// if (template != null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
104 |
// return template.getDefaultCssFile(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
105 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
106 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
107 |
// return cssFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
108 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
109 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
110 |
private String getDefaultWidgetId() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
111 |
String name = Util.removeSpaces(getWidgetName()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
112 |
return MessageFormat.format("com.company.{0}", name.length() > 0 ? name : "ApplicationName"); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
113 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
114 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
115 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
116 |
// public String getHtmlFile() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
117 |
// if (htmlFile == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
118 |
// if (template != null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
119 |
// return template.getDefaultHtmlFile(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
120 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
121 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
122 |
// return htmlFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
123 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
124 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
125 |
// public String getJsFile() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
126 |
// if (jsFile == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
127 |
// if (template != null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
128 |
// return template.getDefaultJsFile(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
129 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
130 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
131 |
// return jsFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
132 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
133 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
134 |
public IProjectTemplate getTemplate() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
135 |
if (template == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
136 |
return getDefaultTemplate(getRuntime()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
137 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
138 |
return template; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
139 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
140 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
141 |
private IProjectTemplate getDefaultTemplate(IMobileWebRuntime runtime) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
142 |
return TMWCoreUI.getProjectTemplateManager().getDefaultTemplate(runtime); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
143 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
144 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
145 |
public String getWidgetId() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
146 |
if (widgetId == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
147 |
return getDefaultWidgetId(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
148 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
149 |
return widgetId; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
150 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
151 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
152 |
public String getWidgetName() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
153 |
return widgetName == null ? getProjectName() : widgetName; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
154 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
155 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
156 |
public void removePropertyChangeListener(PropertyChangeListener arg0) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
157 |
propertySupport.removePropertyChangeListener(arg0); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
158 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
159 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
160 |
public void removePropertyChangeListener(String arg0, PropertyChangeListener arg1) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
161 |
propertySupport.removePropertyChangeListener(arg0, arg1); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
162 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
163 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
164 |
// public void setCssFile(String cssFile) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
165 |
// if (template != null && template.getDefaultCssFile().equals(cssFile)) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
166 |
// cssFile = null; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
167 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
168 |
// String prev = this.cssFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
169 |
// this.cssFile = cssFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
170 |
// propertySupport.firePropertyChange(CSS_FILE, cssFile, prev); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
171 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
172 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
173 |
// public void setHtmlFile(String htmlFile) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
174 |
// if (template != null && template.getDefaultHtmlFile().equals(htmlFile)) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
175 |
// htmlFile = null; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
176 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
177 |
// String prev = this.htmlFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
178 |
// this.htmlFile = htmlFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
179 |
// propertySupport.firePropertyChange(HTML_FILE, htmlFile, prev); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
180 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
181 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
182 |
// public void setJsFile(String jsFile) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
183 |
// if (template != null && template.getDefaultJsFile().equals(jsFile)) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
184 |
// jsFile = null; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
185 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
186 |
// String prev = this.jsFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
187 |
// this.jsFile = jsFile; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
188 |
// propertySupport.firePropertyChange(JS_FILE, jsFile, prev); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
189 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
190 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
191 |
public void setTemplate(IProjectTemplate template) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
192 |
// String html = getHtmlFile(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
193 |
// String js = getJsFile(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
194 |
// String css = getCssFile(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
195 |
IProjectTemplate prev = this.template; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
196 |
this.template = template; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
197 |
propertySupport.firePropertyChange(TEMPLATE, template, prev); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
198 |
// if (htmlFile == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
199 |
// propertySupport.firePropertyChange(HTML_FILE, getHtmlFile(), html); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
200 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
201 |
// if (jsFile == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
202 |
// propertySupport.firePropertyChange(JS_FILE, getJsFile(), js); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
203 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
204 |
// if (cssFile == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
205 |
// propertySupport.firePropertyChange(CSS_FILE, getCssFile(), css); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
206 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
207 |
// if (cssFile == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
208 |
// propertySupport.firePropertyChange(LIBRARIES, getLibraries(), libraries); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
209 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
210 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
211 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
212 |
public void setWidgetId(String widgetId) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
213 |
String prev = getWidgetId(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
214 |
if (getDefaultWidgetId().equals(widgetId)) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
215 |
widgetId = null; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
216 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
217 |
this.widgetId = widgetId; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
218 |
propertySupport.firePropertyChange(WIDGET_ID, getWidgetId(), prev); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
219 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
220 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
221 |
public void setWidgetName(String widgetName) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
222 |
String prevId = getWidgetId(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
223 |
String prev = getWidgetName(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
224 |
if (widgetName == getProjectName()) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
225 |
this.widgetName = null; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
226 |
} else { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
227 |
this.widgetName = widgetName; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
228 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
229 |
propertySupport.firePropertyChange(WIDGET_NAME, getWidgetName(), prev); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
230 |
if (widgetId == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
231 |
propertySupport.firePropertyChange(WIDGET_ID, getWidgetId(), prevId); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
232 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
233 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
234 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
235 |
public void setExtensions(Map<String, String> extensions) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
236 |
this.extensions = extensions; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
237 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
238 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
239 |
public Map<String, String> getExtensions() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
240 |
return extensions; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
241 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
242 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
243 |
private Map<String, String> getTemplateVars() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
244 |
Map<String, String> vars = new TreeMap<String, String>(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
245 |
|
464
0b02f3d6f52c
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
463
diff
changeset
|
246 |
if (runtime != null) { |
0b02f3d6f52c
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
463
diff
changeset
|
247 |
vars.putAll(TMWCoreUI.getProjectTemplateManager().getDefaultTemplateParameterValues(runtime)); |
0b02f3d6f52c
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
463
diff
changeset
|
248 |
} |
0b02f3d6f52c
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
463
diff
changeset
|
249 |
final IProjectTemplate t = getTemplate(); |
0b02f3d6f52c
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
463
diff
changeset
|
250 |
if (t != null) { |
0b02f3d6f52c
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
463
diff
changeset
|
251 |
vars.putAll(t.getDefaultParameterValues()); |
0b02f3d6f52c
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
463
diff
changeset
|
252 |
} |
0b02f3d6f52c
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
463
diff
changeset
|
253 |
|
463
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
254 |
vars.put("widgetName", getWidgetName()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
255 |
vars.put("widgetId", getWidgetId()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
256 |
// vars.put("mainHtml", getHtmlFileName()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
257 |
// vars.put("mainCss", getCssFileName()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
258 |
// vars.put("mainJs", getJsFileName()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
259 |
// vars.put("homeScreen", String.valueOf(isHomeScreen())); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
260 |
vars.putAll(extensions); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
261 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
262 |
return vars; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
263 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
264 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
265 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
266 |
// public boolean isHomeScreen() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
267 |
// return homeScreen; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
268 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
269 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
270 |
// public void setHomeScreen(boolean homeScreen) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
271 |
// boolean old = homeScreen; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
272 |
// this.homeScreen = homeScreen; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
273 |
// propertySupport.firePropertyChange(HOME_SCREEN, old, homeScreen); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
274 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
275 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
276 |
// public String getHtmlFileName() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
277 |
// return stripExtension(getHtmlFile(), "htm", "html"); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
278 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
279 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
280 |
// public String getJsFileName() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
281 |
// return stripExtension(getJsFile(), "js"); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
282 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
283 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
284 |
// public String getCssFileName() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
285 |
// return stripExtension(getCssFile(), "css"); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
286 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
287 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
288 |
// private String stripExtension(String fileName, String... extensions) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
289 |
// for (String extension : extensions) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
290 |
// String extensionAndDot = "." + extension; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
291 |
// if (fileName.endsWith(extensionAndDot)) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
292 |
// return fileName.substring(0, fileName.length() - extensionAndDot.length()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
293 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
294 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
295 |
// return fileName; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
296 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
297 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
298 |
// public boolean isRequiredLibrary(JSLibrary element) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
299 |
// return template != null && template.requires(element); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
300 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
301 |
// |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
302 |
// public Set<JSLibrary> getLibraries() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
303 |
// final Set<JSLibrary> set = new HashSet<JSLibrary>(libraries); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
304 |
// if (template != null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
305 |
// set.addAll(Arrays.asList(template.getRequiredLibraries())); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
306 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
307 |
// return set; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
308 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
309 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
310 |
// public void setLibraries(Set<JSLibrary> libraries) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
311 |
// Set<JSLibrary> prev = this.libraries; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
312 |
// this.libraries = libraries; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
313 |
// propertySupport.firePropertyChange(LIBRARIES, prev, libraries); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
314 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
315 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
316 |
// public Map<String, String> getLibraryParameters(JSLibrary library) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
317 |
// return Collections.emptyMap(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
318 |
// } |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
319 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
320 |
protected Text createText(Composite root, String property, String propertyName, DataBindingContext bindingContext, |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
321 |
AbstractDataBindingPage page, IValidator... validators) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
322 |
return createText(root, BeansObservables.observeValue(this, property), propertyName, bindingContext, page, |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
323 |
validators); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
324 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
325 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
326 |
protected Text createTextForExt(Composite root, String property, String propertyName, |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
327 |
DataBindingContext bindingContext, AbstractDataBindingPage page) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
328 |
IObservableMap map = BeansObservables.observeMap(this, "extensions"); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
329 |
IObservableValue entry = Observables.observeMapEntry(map, property, String.class); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
330 |
return createText(root, entry, propertyName, bindingContext, page); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
331 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
332 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
333 |
private Text createText(Composite root, IObservableValue model, String propertyName, |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
334 |
DataBindingContext bindingContext, AbstractDataBindingPage page, IValidator... validators) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
335 |
Text text = new Text(root, SWT.BORDER); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
336 |
text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
337 |
ISWTObservableValue view = SWTObservables.observeText(text, SWT.Modify); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
338 |
UpdateValueStrategy strategy = new UpdateValueStrategy(UpdateValueStrategy.POLICY_UPDATE); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
339 |
NonEmptyStringValidator validator = new NonEmptyStringValidator(propertyName, page); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
340 |
strategy.setBeforeSetValidator(validators.length == 0 ? validator |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
341 |
: new CompoundValidator(validator, validators)); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
342 |
bindingContext.bindValue(view, model, strategy, null); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
343 |
return text; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
344 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
345 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
346 |
protected void createLabel(Composite root, String text) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
347 |
Label label = new Label(root, SWT.NONE); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
348 |
label.setText(text); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
349 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
350 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
351 |
public void setRuntime(IMobileWebRuntime runtime) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
352 |
final IProjectTemplate[] prevTemplates = getTemplates(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
353 |
final IProjectTemplate prevTemplate; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
354 |
if (template == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
355 |
prevTemplate = getTemplate(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
356 |
} else { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
357 |
prevTemplate = null; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
358 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
359 |
final IMobileWebRuntime prev = this.runtime; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
360 |
this.runtime = runtime; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
361 |
propertySupport.firePropertyChange(RUNTIME, prev, runtime); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
362 |
propertySupport.firePropertyChange(TEMPLATES, prevTemplates, getTemplates()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
363 |
if (prevTemplate == null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
364 |
propertySupport.firePropertyChange(TEMPLATE, prevTemplate, getTemplate()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
365 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
366 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
367 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
368 |
public IMobileWebRuntime getRuntime() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
369 |
return runtime; |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
370 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
371 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
372 |
public IProjectTemplate[] getTemplates() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
373 |
return TMWCoreUI.getProjectTemplateManager().getProjectTemplates(getRuntime()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
374 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
375 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
376 |
public void initialize(IProject project, IProgressMonitor monitor) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
377 |
final IProjectTemplate template = getTemplate(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
378 |
if (template != null) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
379 |
template.init(project, this, monitor); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
380 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
381 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
382 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
383 |
public Object getParameter(String parameter) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
384 |
return getTemplateVars().get(parameter); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
385 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
386 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
387 |
public String[] getParameterNames() { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
388 |
Set<String> keys = getTemplateVars().keySet(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
389 |
return keys.toArray(new String[keys.size()]); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
390 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
391 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
392 |
public void putParameter(String key, Object value) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
393 |
if (value instanceof String) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
394 |
extensions.put(key, (String) value); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
395 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
396 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
397 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
398 |
public void addFile(IProject project, IPath name, InputStream contents, IProgressMonitor monitor) |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
399 |
throws CoreException { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
400 |
monitor.beginTask(name.toOSString(), 100); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
401 |
final IFile file = project.getFile(name); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
402 |
if (!file.exists()) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
403 |
create(file.getParent()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
404 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
405 |
file.create(contents, false, new SubProgressMonitor(monitor, 100)); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
406 |
monitor.done(); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
407 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
408 |
|
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
409 |
private void create(IContainer parent) throws CoreException { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
410 |
if (!parent.exists() && parent instanceof IFolder) { |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
411 |
create(parent.getParent()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
412 |
((IFolder) parent).create(false, true, new NullProgressMonitor()); |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
413 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
414 |
} |
aea4c83725d8
Project template work-in-progress
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
415 |
} |