Mercurial > projects > dwt-samples
comparison jface/snippets/Snippet014TreeViewerNoMandatoryLabelProvider.d @ 143:42c3056512ba
redirect the jface examples to the new collection wrappers
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Thu, 07 Aug 2008 22:21:50 +0200 |
parents | 2b4e94cafb85 |
children |
comparison
equal
deleted
inserted
replaced
142:7dca96709d29 | 143:42c3056512ba |
---|---|
6 * http://www.eclipse.org/legal/epl-v10.html | 6 * http://www.eclipse.org/legal/epl-v10.html |
7 * | 7 * |
8 * Contributors: | 8 * Contributors: |
9 * Tom Schindl - initial API and implementation | 9 * Tom Schindl - initial API and implementation |
10 * Port to the D programming language: | 10 * Port to the D programming language: |
11 * yidabu at gmail dot com ( D China http://www.d-programming-language-china.org/ ) | 11 * yidabu at gmail dot com ( D China http://www.d-programming-language-china.org/ ) |
12 *******************************************************************************/ | 12 *******************************************************************************/ |
13 | 13 |
14 module jface.snippets.Snippet014TreeViewerNoMandatoryLabelProvider; | 14 module jface.snippets.Snippet014TreeViewerNoMandatoryLabelProvider; |
15 | 15 |
16 | 16 |
34 import dwt.dwthelper.utils; | 34 import dwt.dwthelper.utils; |
35 | 35 |
36 import tango.util.Convert; | 36 import tango.util.Convert; |
37 import tango.util.container.LinkedList; | 37 import tango.util.container.LinkedList; |
38 | 38 |
39 version(JIVE) import jive.stacktrace; | |
39 | 40 |
40 | 41 |
41 void main(String[] args) { | 42 void main(String[] args) { |
42 Display display = new Display(); | 43 Display display = new Display(); |
43 Shell shell = new Shell(display); | 44 Shell shell = new Shell(display); |
53 display.dispose(); | 54 display.dispose(); |
54 } | 55 } |
55 | 56 |
56 /** | 57 /** |
57 * A simple TreeViewer to demonstrate usage | 58 * A simple TreeViewer to demonstrate usage |
58 * | 59 * |
59 * @author Tom Schindl <tom.schindl@bestsolution.at> | 60 * @author Tom Schindl <tom.schindl@bestsolution.at> |
60 * | 61 * |
61 */ | 62 */ |
62 public class Snippet014TreeViewerNoMandatoryLabelProvider { | 63 public class Snippet014TreeViewerNoMandatoryLabelProvider { |
63 alias LinkedList!(MyModel) ArrayList; | 64 alias LinkedList!(MyModel) ArrayList; |
64 | 65 |
65 private class MyContentProvider : ITreeContentProvider { | 66 private class MyContentProvider : ITreeContentProvider { |
66 | 67 |
67 /* | 68 /* |
68 * (non-Javadoc) | 69 * (non-Javadoc) |
69 * | 70 * |
70 * @see dwtx.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object) | 71 * @see dwtx.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object) |
71 */ | 72 */ |
72 public Object[] getElements(Object inputElement) { | 73 public Object[] getElements(Object inputElement) { |
73 return (cast(MyModel) inputElement).child.toArray(); | 74 return (cast(MyModel) inputElement).child.toArray(); |
74 } | 75 } |
75 | 76 |
76 /* | 77 /* |
77 * (non-Javadoc) | 78 * (non-Javadoc) |
78 * | 79 * |
79 * @see dwtx.jface.viewers.IContentProvider#dispose() | 80 * @see dwtx.jface.viewers.IContentProvider#dispose() |
80 */ | 81 */ |
81 public void dispose() { | 82 public void dispose() { |
82 | 83 |
83 } | 84 } |
84 | 85 |
85 /* | 86 /* |
86 * (non-Javadoc) | 87 * (non-Javadoc) |
87 * | 88 * |
88 * @see dwtx.jface.viewers.IContentProvider#inputChanged(dwtx.jface.viewers.Viewer, | 89 * @see dwtx.jface.viewers.IContentProvider#inputChanged(dwtx.jface.viewers.Viewer, |
89 * java.lang.Object, java.lang.Object) | 90 * java.lang.Object, java.lang.Object) |
90 */ | 91 */ |
91 public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { | 92 public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { |
92 | 93 |
93 } | 94 } |
94 | 95 |
95 /* | 96 /* |
96 * (non-Javadoc) | 97 * (non-Javadoc) |
97 * | 98 * |
98 * @see dwtx.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object) | 99 * @see dwtx.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object) |
99 */ | 100 */ |
100 public Object[] getChildren(Object parentElement) { | 101 public Object[] getChildren(Object parentElement) { |
101 return getElements(parentElement); | 102 return getElements(parentElement); |
102 } | 103 } |
103 | 104 |
104 /* | 105 /* |
105 * (non-Javadoc) | 106 * (non-Javadoc) |
106 * | 107 * |
107 * @see dwtx.jface.viewers.ITreeContentProvider#getParent(java.lang.Object) | 108 * @see dwtx.jface.viewers.ITreeContentProvider#getParent(java.lang.Object) |
108 */ | 109 */ |
109 public Object getParent(Object element) { | 110 public Object getParent(Object element) { |
110 if (element is null) { | 111 if (element is null) { |
111 return null; | 112 return null; |
114 return (cast(MyModel) element).parent; | 115 return (cast(MyModel) element).parent; |
115 } | 116 } |
116 | 117 |
117 /* | 118 /* |
118 * (non-Javadoc) | 119 * (non-Javadoc) |
119 * | 120 * |
120 * @see dwtx.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object) | 121 * @see dwtx.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object) |
121 */ | 122 */ |
122 public bool hasChildren(Object element) { | 123 public bool hasChildren(Object element) { |
123 return (cast(MyModel) element).child.size() > 0; | 124 return (cast(MyModel) element).child.size() > 0; |
124 } | 125 } |
153 public class MyLabelProvider : LabelProvider, | 154 public class MyLabelProvider : LabelProvider, |
154 ITableLabelProvider, ITableFontProvider, ITableColorProvider { | 155 ITableLabelProvider, ITableFontProvider, ITableColorProvider { |
155 FontRegistry registry; | 156 FontRegistry registry; |
156 this() | 157 this() |
157 { | 158 { |
158 registry = new FontRegistry(); | 159 registry = new FontRegistry(); |
159 } | 160 } |
160 | 161 |
161 public Image getColumnImage(Object element, int columnIndex) { | 162 public Image getColumnImage(Object element, int columnIndex) { |
162 return null; | 163 return null; |
163 } | 164 } |
190 | 191 |
191 } | 192 } |
192 | 193 |
193 public this(Shell shell) { | 194 public this(Shell shell) { |
194 final TreeViewer v = new TreeViewer(shell); | 195 final TreeViewer v = new TreeViewer(shell); |
195 | 196 |
196 TreeColumn column = new TreeColumn(v.getTree(),DWT.NONE); | 197 TreeColumn column = new TreeColumn(v.getTree(),DWT.NONE); |
197 column.setWidth(200); | 198 column.setWidth(200); |
198 column.setText("Column 1"); | 199 column.setText("Column 1"); |
199 | 200 |
200 column = new TreeColumn(v.getTree(),DWT.NONE); | 201 column = new TreeColumn(v.getTree(),DWT.NONE); |
201 column.setWidth(200); | 202 column.setWidth(200); |
202 column.setText("Column 2"); | 203 column.setText("Column 2"); |
203 | 204 |
204 v.setLabelProvider(new MyLabelProvider()); | 205 v.setLabelProvider(new MyLabelProvider()); |
205 v.setContentProvider(new MyContentProvider()); | 206 v.setContentProvider(new MyContentProvider()); |
206 v.setInput(createModel()); | 207 v.setInput(createModel()); |
207 } | 208 } |
208 | 209 |