X Tutup
Skip to content

Commit d7d63a9

Browse files
committed
Continue e3 core expression example
1 parent 4415417 commit d7d63a9

File tree

4 files changed

+163
-5
lines changed

4 files changed

+163
-5
lines changed

com.vogella.eclipse.e3.coreexpressions/plugin.xml

Lines changed: 58 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,12 @@
2626
class="simplee3app.View"
2727
id="SimpleE3App.view">
2828
</view>
29+
<view
30+
class="simplee3app.View2"
31+
id="com.vogella.eclipse.e3.coreexpression.view1"
32+
name="Parts2"
33+
restorable="true">
34+
</view>
2935
</extension>
3036
<extension
3137
point="org.eclipse.ui.perspectiveExtensions">
@@ -38,6 +44,13 @@
3844
relationship="left"
3945
id="SimpleE3App.view">
4046
</view>
47+
<view
48+
id="com.vogella.eclipse.e3.coreexpression.view1"
49+
minimized="false"
50+
relationship="right"
51+
relative="org.eclipse.ui.editorss"
52+
standalone="false">
53+
</view>
4154
</perspectiveExtension>
4255
</extension>
4356
<extension
@@ -76,6 +89,11 @@
7689
commandId="org.eclipse.ui.file.exit"
7790
label="Exit visible"
7891
style="push">
92+
</command>
93+
<command
94+
commandId="org.eclipse.ui.file.exit"
95+
label="Exit hidden"
96+
style="push">
7997
<visibleWhen
8098
checkEnabled="false">
8199
<reference
@@ -84,18 +102,53 @@
84102
</visibleWhen>
85103
</command>
86104
<command
87-
commandId="org.eclipse.ui.file.exit"
88-
label="Exit hidden"
105+
commandId="com.vogella.eclipse.e3.coreexpression.command5"
106+
label="Source Provider"
89107
style="push">
90108
<visibleWhen
91109
checkEnabled="false">
92-
<reference
93-
definitionId="oneElementSelected">
94-
</reference>
110+
<with
111+
variable="com.example.someVariable">
112+
<equals
113+
value="someValue2">
114+
</equals>
115+
</with>
95116
</visibleWhen>
96117
</command>
97118
</toolbar>
98119
</menuContribution>
99120
</extension>
121+
<extension
122+
point="org.eclipse.ui.services">
123+
<sourceProvider
124+
provider="com.vogella.eclipse.e3.coreexpression.AbstractSourceProvider">
125+
<variable
126+
name="mysources"
127+
priorityLevel="workbench">
128+
</variable>
129+
</sourceProvider>
130+
</extension>
131+
<extension
132+
point="org.eclipse.core.expressions.propertyTesters">
133+
<propertyTester
134+
class="com.vogella.eclipse.e3.coreexpression.PropertyTester2"
135+
id="lars"
136+
namespace="com.vogella"
137+
properties="exampleproperty"
138+
type="java.lang.Object">
139+
</propertyTester>
140+
</extension>
141+
<extension
142+
point="org.eclipse.core.expressions.definitions">
143+
<definition
144+
id="isPerspectiveInstance">
145+
<with
146+
variable="org.eclipse.e4.ui.model.application.ui.advanced.MPerspective">
147+
<instanceof
148+
value="org.eclipse.e4.ui.model.application.ui.advanced.MPerspective">
149+
</instanceof>
150+
</with>
151+
</definition>
152+
</extension>
100153

101154
</plugin>
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package com.vogella.eclipse.e3.coreexpression;
2+
3+
import java.util.HashMap;
4+
import java.util.Map;
5+
6+
public class AbstractSourceProvider extends org.eclipse.ui.AbstractSourceProvider {
7+
8+
private static final String SOME_VAR = "com.example.someVariable";
9+
10+
public AbstractSourceProvider() {
11+
}
12+
13+
@Override
14+
public void dispose() {
15+
}
16+
17+
@Override
18+
public Map getCurrentState() {
19+
System.out.println("getCurrentState");
20+
HashMap<String, String> values = new HashMap<String, String>();
21+
values.put(SOME_VAR, "someValue");
22+
return values;
23+
}
24+
25+
@Override
26+
public String[] getProvidedSourceNames() {
27+
System.out.println("getProvidedSourceNames");
28+
return new String[] { SOME_VAR };
29+
}
30+
31+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package com.vogella.eclipse.e3.coreexpression;
2+
3+
import org.eclipse.core.expressions.PropertyTester;
4+
5+
public class PropertyTester2 extends PropertyTester {
6+
7+
public PropertyTester2() {
8+
System.out.println("Hubbabuba");
9+
}
10+
11+
@Override
12+
public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
13+
return false;
14+
}
15+
16+
}
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package simplee3app;
2+
3+
import java.util.*;
4+
import org.eclipse.jface.viewers.ArrayContentProvider;
5+
import org.eclipse.jface.viewers.ColumnLabelProvider;
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.graphics.Image;
10+
import org.eclipse.swt.widgets.Composite;
11+
import org.eclipse.ui.ISharedImages;
12+
import org.eclipse.ui.PlatformUI;
13+
import org.eclipse.ui.part.ViewPart;
14+
15+
public class View2 extends ViewPart {
16+
public static final String ID = "SimpleE3App.view";
17+
18+
private TableViewer viewer;
19+
20+
private class StringLabelProvider extends ColumnLabelProvider {
21+
@Override
22+
public String getText(Object element) {
23+
return super.getText(element);
24+
}
25+
26+
@Override
27+
public Image getImage(Object obj) {
28+
return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_ELEMENT);
29+
}
30+
31+
}
32+
33+
@Override
34+
public void createPartControl(Composite parent) {
35+
viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
36+
viewer.getTable().setLinesVisible(true);
37+
38+
TableViewerColumn column = new TableViewerColumn(viewer, SWT.NONE);
39+
column.setLabelProvider(new StringLabelProvider());
40+
41+
viewer.getTable().getColumn(0).setWidth(200);
42+
43+
viewer.setContentProvider(ArrayContentProvider.getInstance());
44+
45+
// Provide the input to the ContentProvider
46+
viewer.setInput(createInitialDataModel());
47+
}
48+
49+
50+
@Override
51+
public void setFocus() {
52+
viewer.getControl().setFocus();
53+
}
54+
55+
private List<String> createInitialDataModel() {
56+
return Arrays.asList("One", "Two", "Three");
57+
}
58+
}

0 commit comments

Comments
 (0)
X Tutup