Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "JFace Data Binding"
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | {{Warning|This page has been migrated to to https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/docs/JFaceDataBinding.md.}} | ||
+ | |||
__NOTOC__ | __NOTOC__ | ||
JFace Data Binding is a multi-threaded set of abstractions that allow for automated validation and synchronization of values between objects. This is commonly used for, but not limited to, the binding of user interface components to model attributes. The core concepts behind the project are [[Observables]] and [[Binding | Bindings]]. We provide IObservable implementations for SWT, JFace, and JavaBeans but the core is void of references to these in anticipation of implementations for other projects (e.g. EMF, Swing, etc.). | JFace Data Binding is a multi-threaded set of abstractions that allow for automated validation and synchronization of values between objects. This is commonly used for, but not limited to, the binding of user interface components to model attributes. The core concepts behind the project are [[Observables]] and [[Binding | Bindings]]. We provide IObservable implementations for SWT, JFace, and JavaBeans but the core is void of references to these in anticipation of implementations for other projects (e.g. EMF, Swing, etc.). | ||
Line 8: | Line 10: | ||
<h3>Tutorials & Presentations</h3> | <h3>Tutorials & Presentations</h3> | ||
* [[/Getting started | Getting Started]] | * [[/Getting started | Getting Started]] | ||
− | * [ | + | * [http://www.vogella.com/articles/EclipseDataBinding/article.html Tutorial] |
* [[/Snippets | Snippets]] | * [[/Snippets | Snippets]] | ||
− | |||
* [[JFace Data Binding Introduction|High-Level Description of Data Binding]] | * [[JFace Data Binding Introduction|High-Level Description of Data Binding]] | ||
− | |||
<h3>Concepts</h3> | <h3>Concepts</h3> | ||
Line 23: | Line 23: | ||
* [[/TrackedGetter|Tracked Getter]]: makes the system aware of observables that a piece of code depends on | * [[/TrackedGetter|Tracked Getter]]: makes the system aware of observables that a piece of code depends on | ||
* [[/Master_Detail|Master-Detail]]: used when you want to bind to attributes of the currently selected object, rather than a fixed object | * [[/Master_Detail|Master-Detail]]: used when you want to bind to attributes of the currently selected object, rather than a fixed object | ||
− | |||
</td> | </td> | ||
<td valign="top" width="33%"> | <td valign="top" width="33%"> | ||
Line 31: | Line 30: | ||
* [http://fire-change-event.blogspot.com/ fireChangeEvent() Blog] | * [http://fire-change-event.blogspot.com/ fireChangeEvent() Blog] | ||
* [[/How to Contribute | How to Contribute]] | * [[/How to Contribute | How to Contribute]] | ||
− | |||
* [[/Conformance Tests|Conformance Tests]] | * [[/Conformance Tests|Conformance Tests]] | ||
* [[/EMF|Binding to EMF]] | * [[/EMF|Binding to EMF]] | ||
Line 37: | Line 35: | ||
* [[/DOM|Binding to DOM (experimental work)]] | * [[/DOM|Binding to DOM (experimental work)]] | ||
* [[/SSE|Binding to SSE (DOM, EMF, CSS) (experimental work)]] | * [[/SSE|Binding to SSE (DOM, EMF, CSS) (experimental work)]] | ||
− | |||
* [[/PojoBindable|Binding to Pojo (by using NOT BeansObservable) (experimental work)]] | * [[/PojoBindable|Binding to Pojo (by using NOT BeansObservable) (experimental work)]] | ||
* [[/JSR303BeanJFaceDatabindingValidation|JFace Databinding Validation with JSR-303 (experimental work)]] | * [[/JSR303BeanJFaceDatabindingValidation|JFace Databinding Validation with JSR-303 (experimental work)]] | ||
Line 63: | Line 60: | ||
* [[/Original Design | Original Design Document]] | * [[/Original Design | Original Design Document]] | ||
* [[/Scenarios | Scenarios Document]] | * [[/Scenarios | Scenarios Document]] | ||
+ | * [[/The New Binding API|Bind]]: A prototype for a new and improved binding API, which was never finished | ||
== Project Release Status == | == Project Release Status == |
Latest revision as of 10:30, 12 January 2024
JFace Data Binding is a multi-threaded set of abstractions that allow for automated validation and synchronization of values between objects. This is commonly used for, but not limited to, the binding of user interface components to model attributes. The core concepts behind the project are Observables and Bindings. We provide IObservable implementations for SWT, JFace, and JavaBeans but the core is void of references to these in anticipation of implementations for other projects (e.g. EMF, Swing, etc.).
JFace Data Binding |
Home |
How to Contribute |
FAQ |
Snippets |
Concepts |
Binding |
Converter |
Observable |
Realm |
Tutorials & PresentationsConcepts
|
Miscellaneous
|
Contact Us
The JFace newsgroup is the place for discussions and questions relating to JFace Data Binding. When posting please prefix the subject with "[DataBinding]" to allow us to easily find posts related to the project.
Design discussions and bugs are located on Eclipse bugzilla with a the values...
- Classification
- Eclipse
- Product
- Platform
- Component
- UI
Like posts to the newsgroup when logging bugs please prefix the summary with "[DataBinding]" to allow for easier identification.
Getting Involved
There are many ways to get involved with JFace Data Binding. To find out how you can contribute see How to Contribute.
Historical Documents
- JFace Data Binding Webinar (The code in this presentation is slightly out of date - converters and validators are set up differently in the final 1.0 API.)
- Dave and Boris's EclipseCon 2007 long talk and slides(Slightly out of date)
- Dave Orme's EclipseCon 2006 Lightning Talk slides (This presentation is outdated. The concepts are still relevant though.)
- Original Design Document
- Scenarios Document
- Bind: A prototype for a new and improved binding API, which was never finished
Project Release Status
JFace Data Binding 1.0 was released with Eclipse 3.3, Europa. The Eclipse 3.3.1 release (Europa Fall Maintenance Release) contains a number of bug fixes.