JFace Data Binding/Snippets
|JFace Data Binding|
|How to Contribute|
Snippets show how common use cases can be implemented using the JFace Data Binding framework. They are typically a single self-contained Java class with a main method. See the bottom of this page for instructions on how to get and run the snippets.
- Hello World - the most basic of bindings
- Wizard Dialog - Shows how to use data binding in a wizard dialog so that validation results are displayed in the dialog's title area
- Spreadsheet - fills a Table updating cells upon change
- Name Formatter - observable value that updates when the first or last name changes
- Master detail - display the detail of the selection of a ListViewer in a Text widget
- Nested Selection With ComboViewer
- Model to TableViewer binding - basic binding to a TableViewer
- TableViewer binding with colors - label provider that provides Colors and auto updates the viewer
- TableViewer inline editing - TableViewer editing with the Eclipse 3.3 JFace viewer APIs. (requires Eclipse 3.3)
- ComputedList and Combo - Filter the elements in one viewer based on the selection in another
Running the Snippets
A great way to learn is to look at concrete examples that you can run and experiment with. You can copy any of the snippets (see below) into a scratch project within Eclipse, or using CVS, check out the complete examples project. Just open the CVS Perspective (Window > Open Perspective > CVS) and add a new Repository Location (File > New > Other > CVS > CVS Repository Location). When done, your settings should look like this:
Expand the HEAD branch and browse for org.eclipse.jface.examples.databinding. You can check out the plug-in [RMB: Check out] into your Workspace as a new project.
When checked out, you'll find the examples under org.eclipse.jface.examples.databinding.snippets. Most of the examples provide a main method, you can run it as a Java Application to see what happens.
If you are copying single snippets into a scratch project, make sure that it is set up with the correct dependencies. You will need org.eclipse.core.databinding, org.eclipse.core.databinding.beans, and org.eclipse.jface.databinding.