The edm widget set was designed to be extensible by individuals who do not possess the resources (time,motivation,etc.) to become intimately acquainted with the vast amount of code associated with a typical display manager. As such, edm widgets are cleanly separated from the edm display engine, even being packaged as independent shared library files. This document attempts to provide the aspiring widget developer with sufficient information to build a new edm widget.
The document is therefore primarily organized as a tutorial in which the reader will examine the code of a working widget and hopefully infer the various ideas and patterns that may be applied to building other widgets. Before such code will be palatable, the following concepts and topics need to be addressed:
Interaction between the edm display engine and a widget
Auxillery helper classes
X Window concepts
Using Color
Using Fonts
Process variable access (e.g. Channel Access) concepts
Display manager event processing