Skip to content

Commit 16e83b7

Browse files
committed
Papyrus example with viewers support uploaded
1 parent a68183d commit 16e83b7

File tree

139 files changed

+7924
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

139 files changed

+7924
-0
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<classpath>
3+
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
4+
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
5+
<classpathentry kind="src" path="src/"/>
6+
<classpathentry kind="src" path="src-gen/"/>
7+
<classpathentry kind="output" path="bin"/>
8+
</classpath>
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>hu.bme.mit.examples.uml.incquery.databinding</name>
4+
<comment></comment>
5+
<projects>
6+
</projects>
7+
<buildSpec>
8+
<buildCommand>
9+
<name>org.eclipse.jdt.core.javabuilder</name>
10+
<arguments>
11+
</arguments>
12+
</buildCommand>
13+
<buildCommand>
14+
<name>org.eclipse.pde.ManifestBuilder</name>
15+
<arguments>
16+
</arguments>
17+
</buildCommand>
18+
<buildCommand>
19+
<name>org.eclipse.pde.SchemaBuilder</name>
20+
<arguments>
21+
</arguments>
22+
</buildCommand>
23+
</buildSpec>
24+
<natures>
25+
<nature>org.eclipse.pde.PluginNature</nature>
26+
<nature>org.eclipse.jdt.core.javanature</nature>
27+
</natures>
28+
</projectDescription>
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
eclipse.preferences.version=1
2+
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3+
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
4+
org.eclipse.jdt.core.compiler.compliance=1.6
5+
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6+
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7+
org.eclipse.jdt.core.compiler.source=1.6
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
eclipse.preferences.version=1
2+
pluginProject.equinox=false
3+
resolve.requirebundle=false
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Manifest-Version: 1.0
2+
Bundle-ManifestVersion: 2
3+
Bundle-Name: hu.bme.mit.examples.uml.incquery.databinding
4+
Bundle-SymbolicName: hu.bme.mit.examples.uml.incquery.databinding;singleton:=true
5+
Bundle-Version: 0.0.1.qualifier
6+
Require-Bundle: hu.bme.mit.examples.uml.incquery,
7+
org.eclipse.uml2.uml,
8+
org.eclipse.core.databinding.property,
9+
org.eclipse.core.databinding.observable,
10+
hu.bme.mit.examples.uml.trace.model,
11+
org.eclipse.core.runtime;bundle-version="3.8.0",
12+
org.eclipse.ui,
13+
org.eclipse.jface.databinding;bundle-version="1.6.0",
14+
org.eclipse.papyrus.editor;bundle-version="0.9.1",
15+
org.eclipse.papyrus.infra.core;bundle-version="0.9.1",
16+
org.eclipse.gmf.runtime.diagram.ui;bundle-version="1.6.0",
17+
org.eclipse.incquery.databinding.runtime,
18+
org.eclipse.incquery.runtime
19+
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
bin.includes = META-INF/,\
2+
.,\
3+
plugin.xml
4+
source.. = src/,\
5+
src-gen/
6+
output.. = bin/
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<plugin>
3+
4+
<extension
5+
id="extension.databinding.uml.sequencediagram.messageEvents"
6+
point="org.eclipse.incquery.databinding.runtime.databinding">
7+
<databinding
8+
message=""
9+
class="uml.sequencediagram.messageevents.MessageEventsDatabindingAdapter"
10+
patternName="uml.sequencediagram.messageEvents"
11+
matcherFactoryClass="uml.sequencediagram.messageevents.MessageEventsMatcherFactory">
12+
</databinding>
13+
</extension>
14+
<extension
15+
id="extension.databinding.uml.sequencediagram.propertyNumberOfClassInPackage"
16+
point="org.eclipse.incquery.databinding.runtime.databinding">
17+
<databinding
18+
message=""
19+
class="uml.sequencediagram.propertynumberofclassinpackage.PropertyNumberOfClassInPackageDatabindingAdapter"
20+
patternName="uml.sequencediagram.propertyNumberOfClassInPackage"
21+
matcherFactoryClass="uml.sequencediagram.propertynumberofclassinpackage.PropertyNumberOfClassInPackageMatcherFactory">
22+
</databinding>
23+
</extension>
24+
<extension
25+
id="extension.databinding.uml.emptyclass.emptyClass"
26+
point="org.eclipse.incquery.databinding.runtime.databinding">
27+
<databinding
28+
message=""
29+
class="uml.emptyclass.emptyclass.EmptyClassDatabindingAdapter"
30+
patternName="uml.emptyclass.emptyClass"
31+
matcherFactoryClass="uml.emptyclass.emptyclass.EmptyClassMatcherFactory">
32+
</databinding>
33+
</extension>
34+
35+
</plugin>
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
package hu.bme.mit.examples.uml.incquery.databinding.demo;
2+
3+
import org.eclipse.core.databinding.property.value.IValueProperty;
4+
import org.eclipse.emf.ecore.resource.ResourceSet;
5+
import org.eclipse.jface.databinding.viewers.ViewerSupport;
6+
import org.eclipse.jface.viewers.TableViewer;
7+
import org.eclipse.jface.viewers.TableViewerColumn;
8+
import org.eclipse.swt.SWT;
9+
import org.eclipse.swt.layout.FillLayout;
10+
import org.eclipse.swt.widgets.Composite;
11+
import org.eclipse.swt.widgets.Group;
12+
import org.eclipse.swt.widgets.Table;
13+
import org.eclipse.swt.widgets.TableColumn;
14+
import org.eclipse.ui.part.ViewPart;
15+
import org.eclipse.incquery.databinding.runtime.collection.ObservablePatternMatchList;
16+
import org.eclipse.incquery.runtime.exception.IncQueryException;
17+
18+
import uml.emptyclass.emptyclass.EmptyClassDatabindingAdapter;
19+
import uml.emptyclass.emptyclass.EmptyClassMatcher;
20+
21+
public class ClassView extends ViewPart {
22+
public ClassView() {
23+
}
24+
25+
public static final String ID = "hu.bme.mit.examples.uml.incquery.databinding.demo.ClassView"; //$NON-NLS-1$
26+
private TableViewer tableViewer;
27+
28+
/**
29+
* Create contents of the view part.
30+
* @param parent
31+
*/
32+
@Override
33+
public void createPartControl(Composite parent) {
34+
Composite container = new Composite(parent, SWT.NONE);
35+
container.setLayout(new FillLayout(SWT.HORIZONTAL));
36+
37+
Group grpEmptyClasses = new Group(container, SWT.NONE);
38+
grpEmptyClasses.setText("Empty Classes");
39+
grpEmptyClasses.setLayout(new FillLayout(SWT.HORIZONTAL));
40+
41+
tableViewer = new TableViewer(grpEmptyClasses, SWT.BORDER | SWT.FULL_SELECTION);
42+
Table table = tableViewer.getTable();
43+
table.setLinesVisible(true);
44+
table.setHeaderVisible(true);
45+
46+
TableViewerColumn tableViewerColumn = new TableViewerColumn(tableViewer, SWT.NONE);
47+
TableColumn tblclmnName = tableViewerColumn.getColumn();
48+
tblclmnName.setWidth(100);
49+
tblclmnName.setText("Name");
50+
51+
TableViewerColumn tableViewerColumn_1 = new TableViewerColumn(tableViewer, SWT.NONE);
52+
TableColumn tblclmnAbstract = tableViewerColumn_1.getColumn();
53+
tblclmnAbstract.setWidth(100);
54+
tblclmnAbstract.setText("Abstract");
55+
56+
TableViewerColumn tableViewerColumn_2 = new TableViewerColumn(tableViewer, SWT.NONE);
57+
TableColumn tblclmnLeaf = tableViewerColumn_2.getColumn();
58+
tblclmnLeaf.setWidth(100);
59+
tblclmnLeaf.setText("Leaf");
60+
61+
}
62+
63+
public void loadModel(ResourceSet resourceSet) throws IncQueryException {
64+
EmptyClassMatcher matcher = new uml.emptyclass.emptyclass.EmptyClassMatcher(resourceSet);
65+
EmptyClassDatabindingAdapter adapter = new uml.emptyclass.emptyclass.EmptyClassDatabindingAdapter();
66+
ViewerSupport.bind(
67+
tableViewer,
68+
new ObservablePatternMatchList(matcher),
69+
new IValueProperty[] { adapter.getProperty("Cl"), adapter.getProperty("abstract"),
70+
adapter.getProperty("leaf") });
71+
}
72+
73+
74+
@Override
75+
public void setFocus() {
76+
// Set the focus
77+
}
78+
}
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
package hu.bme.mit.examples.uml.incquery.databinding.demo.handlers;
2+
3+
import hu.bme.mit.examples.uml.incquery.databinding.demo.ClassView;
4+
5+
import org.eclipse.core.commands.AbstractHandler;
6+
import org.eclipse.core.commands.ExecutionEvent;
7+
import org.eclipse.core.commands.ExecutionException;
8+
import org.eclipse.core.commands.IHandler;
9+
import org.eclipse.emf.ecore.resource.ResourceSet;
10+
import org.eclipse.papyrus.editor.PapyrusMultiDiagramEditor;
11+
import org.eclipse.ui.IWorkbenchPage;
12+
import org.eclipse.ui.PartInitException;
13+
import org.eclipse.ui.handlers.HandlerUtil;
14+
import org.eclipse.incquery.runtime.exception.IncQueryException;
15+
16+
public class LoadUMLModelHandler extends AbstractHandler implements IHandler {
17+
18+
@Override
19+
public Object execute(ExecutionEvent event) throws ExecutionException {
20+
try {
21+
IWorkbenchPage page = HandlerUtil.getActiveSite(event).getPage();
22+
ClassView view = (ClassView) page.findView(ClassView.ID);
23+
if (view == null) {
24+
view = (ClassView) page.showView(ClassView.ID);
25+
}
26+
27+
PapyrusMultiDiagramEditor providerEditor = (PapyrusMultiDiagramEditor) HandlerUtil.getActiveEditor(event);
28+
ResourceSet resourceSet = providerEditor.getDiagramEditPart().getEditingDomain().getResourceSet();
29+
view.loadModel(resourceSet);
30+
return null;
31+
} catch (PartInitException e) {
32+
throw new ExecutionException("Cannot find view", e);
33+
} catch (IncQueryException e) {
34+
throw new ExecutionException("Error initializing Pattern Matcher", e);
35+
}
36+
}
37+
38+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<classpath>
3+
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
4+
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
5+
<classpathentry kind="src" path="src/"/>
6+
<classpathentry kind="src" path="src-gen/"/>
7+
<classpathentry kind="output" path="bin"/>
8+
</classpath>

0 commit comments

Comments
 (0)