external

Main Interfaces

ulu.view.Item is the core interface in Uncle Unc, defining a node in the Item tree that has the following attributes:

  • it has a name
  • it may have properties that can be read or set
  • it may have methods that can be invoked
  • it may have child nodes and a parent
  • it may have a defined type
  • it may have a reference to a specific object
  • it may handle methods (its own or others)
  • it may link to a stream of 'content' via a java.net.URL

This specification is rather bloated, and individual UI widgets may not need access to the full range of capabilities. As a result, the Item interface has been broken down into a set of lower-level interfaces:

  • ulu.view.Named
  • ulu.view.Propertied
  • ulu.view.Invokable
  • ulu.view.UContainer and ulu.view.UContained
  • ulu.view.Typed
  • ulu.view.Referrer
  • ulu.view.Handler
  • ulu.view.ContentSource

The default implementation of Item supports a core set of these interfaces directly, and the more exotic ones (e.g. UContainer) by delegation. This provides a degree of efficiency - if a Item has no children, it only contains a single null pointer to a delegate class. It also allows lower-level interface implementations to be quickly wrapped as Items simply by slotting them in as a delegate. The ulu.ut.ProcessChain model, which underlies Uncle Unc's Item filters, for example, implement UContainer but not Item.

credits
hosted by
SourceForge Logo
projects
download