Mercurial > projects > dwt2
annotate org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet008ComputedValue.d @ 99:5d5bd660917f
build some databind snippets
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Wed, 22 Apr 2009 18:59:26 +0200 |
parents | 6086085e153d |
children | e884642ad36e |
rev | line source |
---|---|
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
1 /******************************************************************************* |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
2 * Copyright (c) 2006 Brad Reynolds and others. |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
3 * All rights reserved. This program and the accompanying materials |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
4 * are made available under the terms of the Eclipse Public License v1.0 |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
5 * which accompanies this distribution, and is available at |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
6 * http://www.eclipse.org/legal/epl-v10.html |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
7 * |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
8 * Contributors: |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
9 * Brad Reynolds - initial API and implementation |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
10 * Matthew Hall - bug 260329 |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
11 ******************************************************************************/ |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
12 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
13 module org.eclipse.jface.examples.databinding.snippets.Snippet008ComputedValue; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
14 |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
15 import java.lang.all; |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
16 |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
17 import org.eclipse.core.databinding.DataBindingContext; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
18 import org.eclipse.core.databinding.UpdateValueStrategy; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
19 import org.eclipse.core.databinding.observable.ObservableTracker; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
20 import org.eclipse.core.databinding.observable.Realm; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
21 import org.eclipse.core.databinding.observable.value.ComputedValue; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
22 import org.eclipse.core.databinding.observable.value.IObservableValue; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
23 import org.eclipse.core.databinding.observable.value.WritableValue; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
24 import org.eclipse.jface.databinding.swt.SWTObservables; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
25 import org.eclipse.jface.layout.GridDataFactory; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
26 import org.eclipse.jface.layout.GridLayoutFactory; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
27 import org.eclipse.swt.SWT; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
28 import org.eclipse.swt.layout.FillLayout; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
29 import org.eclipse.swt.widgets.Composite; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
30 import org.eclipse.swt.widgets.Display; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
31 import org.eclipse.swt.widgets.Label; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
32 import org.eclipse.swt.widgets.Shell; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
33 import org.eclipse.swt.widgets.Text; |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
34 |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
35 /** |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
36 * Snippet that demostrates a simple use case using ComputedValue to format a |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
37 * name as the user enters first and last name. |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
38 * |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
39 * @since 3.2 |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
40 */ |
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
41 public class Snippet008ComputedValue { |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
42 /** |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
43 * @param args |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
44 */ |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
45 public static void main(String[] args) { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
46 final Display display = new Display(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
47 Realm.runWithDefault(SWTObservables.getRealm(display), new Runnable() { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
48 public void run() { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
49 Shell shell = new Shell(display); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
50 shell.setLayout(new FillLayout()); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
51 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
52 final UI ui = new UI(shell); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
53 final Data data = new Data(); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
54 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
55 // Bind the UI to the Data. |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
56 DataBindingContext dbc = new DataBindingContext(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
57 dbc.bindValue(SWTObservables.observeText(ui.firstName, |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
58 SWT.Modify), data.firstName); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
59 dbc.bindValue(SWTObservables.observeText(ui.lastName, |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
60 SWT.Modify), data.lastName); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
61 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
62 // Construct the formatted name observable. |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
63 FormattedName formattedName = new FormattedName(data.firstName, |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
64 data.lastName); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
65 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
66 // Bind the formatted name Text to the formatted name |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
67 // observable. |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
68 dbc.bindValue(SWTObservables.observeText(ui.formattedName, |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
69 SWT.None), formattedName, new UpdateValueStrategy(false, UpdateValueStrategy.POLICY_NEVER), null); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
70 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
71 shell.pack(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
72 shell.open(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
73 while (!shell.isDisposed()) { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
74 if (!display.readAndDispatch()) |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
75 display.sleep(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
76 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
77 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
78 }); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
79 display.dispose(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
80 } |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
81 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
82 /** |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
83 * Creates the formatted name on change of the first or last name |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
84 * observables. |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
85 * <p> |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
86 * The key to understanding ComputedValue is understanding that it knows of |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
87 * the observables that are queried without being told. This is done with |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
88 * {@link ObservableTracker} voodoo. When calculate() is invoked |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
89 * <code>ObservableTracker</code> records the observables that are |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
90 * queried. It then exposes those observables and <code>ComputedValue</code> |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
91 * can listen to changes in those objects and react accordingly. |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
92 * </p> |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
93 * |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
94 * @since 3.2 |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
95 */ |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
96 static class FormattedName extends ComputedValue { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
97 private IObservableValue firstName; |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
98 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
99 private IObservableValue lastName; |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
100 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
101 FormattedName(IObservableValue firstName, IObservableValue lastName) { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
102 this.firstName = firstName; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
103 this.lastName = lastName; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
104 } |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
105 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
106 protected Object calculate() { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
107 String lastName = (String) this.lastName.getValue(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
108 String firstName = (String) this.firstName.getValue(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
109 lastName = (lastName != null && lastName.length() > 0) ? lastName |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
110 : "[Last Name]"; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
111 firstName = (firstName != null && firstName.length() > 0) ? firstName |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
112 : "[First Name]"; |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
113 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
114 StringBuffer buffer = new StringBuffer(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
115 buffer.append(lastName).append(", ").append(firstName); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
116 |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
117 return buffer.toString(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
118 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
119 } |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
120 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
121 static class Data { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
122 final WritableValue firstName; |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
123 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
124 final WritableValue lastName; |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
125 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
126 Data() { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
127 firstName = new WritableValue("", String.class); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
128 lastName = new WritableValue("", String.class); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
129 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
130 } |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
131 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
132 /** |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
133 * Composite that creates the UI. |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
134 * |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
135 * @since 3.2 |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
136 */ |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
137 static class UI extends Composite { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
138 final Text firstName; |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
139 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
140 final Text lastName; |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
141 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
142 final Text formattedName; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
143 |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
144 UI(Composite parent) { |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
145 super(parent, SWT.NONE); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
146 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
147 GridLayoutFactory.swtDefaults().numColumns(2).applyTo(this); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
148 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
149 new Label(this, SWT.NONE).setText("First Name:"); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
150 new Label(this, SWT.NONE).setText("Last Name"); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
151 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
152 GridDataFactory gdf = GridDataFactory.swtDefaults().align(SWT.FILL, |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
153 SWT.FILL).grab(true, false); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
154 firstName = new Text(this, SWT.BORDER); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
155 gdf.applyTo(firstName); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
156 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
157 lastName = new Text(this, SWT.BORDER); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
158 gdf.applyTo(lastName); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
159 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
160 gdf = GridDataFactory.swtDefaults().span(2, 1).grab(true, false) |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
161 .align(SWT.FILL, SWT.BEGINNING); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
162 Label label = new Label(this, SWT.NONE); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
163 label.setText("Formatted Name:"); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
164 gdf.applyTo(label); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
165 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
166 formattedName = new Text(this, SWT.BORDER); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
167 formattedName.setEditable(false); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
168 gdf.applyTo(formattedName); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
169 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
170 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
171 } |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
172 |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
173 void main( String[] args ){ |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
90
diff
changeset
|
174 Snippet008ComputedValue.main(args); |
90
6086085e153d
Added databinding snippets. unmodified java sources.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
175 } |