eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'UISpecification':

Home

everywhere
www.exept.de
for:
[back]

Class: UISpecification


Inheritance:

   Object
   |
   +--UISpecification
      |
      +--ComponentSpec
      |
      +--DividerSpec
      |
      +--NoteBookSpec
      |
      +--RegionSpec
      |
      +--UIEventCallbackSubSpec
      |
      +--UnknownSpec

Package:
stx:libui
Category:
Interface-Support-UI-Specs
Version:
rev: 1.297 date: 2009/10/25 00:12:13
user: cg
file: UISpecification.st directory: libui
module: stx stc-classLibrary: libui
Author:
Claus Gittinger
Claus Atzkern

Description:


Instances (and derived instances) are used temporarily while a view
is created from a spec. They collect attributes from a specArray and
know how to create & initialize a view from those.

They are not normally used by applications.

Notice: 
    this class was implemented using protocol information
    from alpha testers, literature and by read public domain code
    - it may not be complete or compatible to
    the corresponding ST-80 class. 
    If you encounter any incompatibilities, please forward a note 
    describing the incompatibility verbal (i.e. no code) to the ST/X team.


Related information:

    UIBuilder
    UIPainter

Class protocol:

constants
o  flagBorder
return the bit mask of the border flag in the flags instVar

o  flagDisabled
return the bit mask of the initially disabled flag in the flags instVar

o  flagHScroll
return the bit mask of the horizontalScrollable flag in the flags instVar

o  flagHScrollMini
return the bit mask of the miniScrollerHorizontal flag in the flags instVar

o  flagInvisible
return the bit mask of the initially invisible flag in the flags instVar

o  flagMenuBar
return the bit mask of the menuBar flag in the flags instVar

o  flagVScroll
return the bit mask of the verticalScrollable flag in the flags instVar

o  flagVScrollMini
return the bit mask of the miniScrollerVertical flag in the flags instVar

help
o  helpSpec
UIHelpTool openOnClass:UISpecification

instance creation
o  from: aSpecOrSpecArray
create and return a new spec, given a literalArray encoding

o  fromView: aView
create and return a new instance, by walking over a views hierarchy.
(used by the UIPainters pick-a-view function)

o  fromView: aView callBack: aTwoArgCallBackBlock
create and return a new instance, by walking over a views hierarchy.
(used by the UIPainters pick-a-view function).
For every created subSpec-element, the callBackBlock is evaluated,
passing the specElement and the view as arguments.
This can be used to fill in additional information, which cannot be
extracted from the view (for example: names, aspects etc.).
The callBack argument may be nil.

o  fromViewWithLayout: aView

o  label: l layout: ly

o  model: m label: l layout: ly

o  model: m label: l select: s layout: ly

o  model: m layout: ly

o  model: m menu: l layout: ly

o  new

interface specs
o  basicsEditSpec

o  basicsEditSpecWithModel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  basicsEditSpecWithModelAndViewClass
This resource specification was automatically generated
by the UIPainter of ST/X.

o  basicsEditSpecWithViewClass
This resource specification was automatically generated
by the UIPainter of ST/X.

o  basicsEditSpecWithoutModelAndViewClass
This resource specification was automatically generated
by the UIPainter of ST/X.

o  channelsEditSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  dragAndDropEditSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  dragAndDropSpec
returns the drag & drop spec (drag, drop or dragAndDrop spec)

o  dragEditSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  dropEditSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subChannelsEditSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForAcceptCallBack
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForAcceptChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForBGColorChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForDoubleClickCallBack
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForDoubleClickChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForEnableChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForFGColorChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForID
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForIDAndModel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForIDAndModelAndViewClass
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForIDAndViewClass
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForLabelChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForMaxChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForMinChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForModifiedChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForPostBuildCallBack
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForSelectConditionCallBack
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForSelectedValueChangeCallBack
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForValueChangeCallBack
This resource specification was automatically generated
by the UIPainter of ST/X.

o  subSpecForVisibilityChannel
This resource specification was automatically generated
by the UIPainter of ST/X.

interface-painter
o  adapt: aSpec forAspect: anAspect channel: aChannel
generate an aspect adaptor, to access one of
my instance variables

o  adaptApects: aCollectionOfAspects to: aDirectory for: anInstance channel: aChannel
helper - adapting a bunch of aspects is so common ...
generate and install a aspect adaptors, for a list of aspect
(i.e. instance variable). Add each to the binding environment

o  adaptApects: aCollectionOfAspects to: aDirectory for: anInstance channel: aChannel converter: converterSymbol
helper - adapting a bunch of aspects and converting the type is so common ...
for each aspect in the list, generate an aspect adaptor and a typeconverter,
Add each to the binding environment.
converterSymbol is sent to TypeConverter to define the conversion
(typically something like #symbolOrNil)

o  addBindingsTo: aDirectory for: anInstance
not currently used

o  addBindingsTo: env for: anInstance channel: aChannel
add bindings as required to allow the GUI Painter to operate on an instance of me

o  addScrollBarBindingsTo: env for: anInstance channel: aChannel
add bindings as required to allow the GUI Painter to operate on an instance of me

o  commonReplacementClasses

o  helpSpecClass
return the class implementing the help texts of the field attributes

o  icon
This resource specification was automatically generated
by the ImageEditor of ST/X.

o  possiblePrintConverterTypes

o  slices
return the slices for the attribute sections in the GUI Painter

misc
o  newBindingsDictionary
create & return an instance of my private UIBindingsDictionary class.
This has the same functionality like ordinary dictionaries,
put passes the builder as instvars for those specs which need to know about
it.

o  updatedAspectHolderDataList: subAspectHolders forClassNamed: className
update subAspectHolders for aClass;
common helper for SubCanvas and ArbitraryComponents

printing support
o  prettyPrintSpecArray: spec on: aStream indent: i
just for your convenience: prettyPrint a specArray to aStream - it looks better that way

o  prettyPrintSpecArray: spec on: aStream indent: i isArrayElement: isArrayElement
just for your convenience: prettyPrint a specArray to aStream - it looks better that way

o  prettyPrintSpecArray: spec on: aStream tabLevel: i
prettyPrint - ST-80 compatible name

queries
o  canResizeSubComponents
answer whether included sub components can be resized or are handled by the view itself

o  isLayoutContainer
answer whether corresponding view instances of the spec class can contain (and arrange) other view

o  resolveName: aName

o  resolveName: aName in: aBuilder

o  supportsDrag

o  supportsDrop

o  supportsLabel
answer whether corresponding view instances of the spec class can have labels

o  supportsSubComponents
answer whether instances of the spec class support sub components

o  userFriendlyName
answer a good noticeable name of the widget for the GUI Painter and the documentation

o  viewClass
return the corresponding view class of the spec.
This is an instance method, since it may depend on some attribute.

testing
o  testBuild
some specs to play with, extracted from PD code found
in the manchester archives:

The examples below will not fill the view with live
(no appModel provided)


found in a classSelection tool:

|spec builder view|

spec := UISpecification from:
#(#FullSpec
#window:
#(#WindowSpec
#label: 'Unlabeled Canvas'
#min: #(#Point 50 50 )
#bounds: #(#Rectangle 448 407 648 607 ) )
#component:
#(#SpecCollection
#collection:
#(
#(#LabelSpec
#layout: #(#Point 0 2 )
#label: 'Classes:' )
#(#SequenceViewSpec
#layout: #(#LayoutFrame 0 0 27 0 0 1 0 1 )
#model: #classChoice
#tabable: false )
#(#InputFieldSpec
#layout: #(#LayoutFrame 70 0 2 0 0 1 25 0 )
#model: #classPattern ) ) ) ).

builder := UIBuilder new.
view := spec buildViewFor:builder.
view open


Found in a file dialog goody:

|spec builder view|

spec := UISpecification from:
#(#FullSpec
#window:
#(#WindowSpec
#label: 'File Dialog'
#bounds: #(#Rectangle 16 155 485 402 ) )
#component:
#(#SpecCollection
#collection: #(
#(#LabelSpec
#layout: #(#Point 10 7 )
#label: 'File Name:' )
#(#InputFieldSpec
#layout: #(#Rectangle 10 30 168 51 )
#model: #filePatternHolder
#callbacksSpec:
#(#UIEventCallbackSubSpec
#valueChangeSelector: #typedNewFileName ) )
#(#SequenceViewSpec
#layout: #(#Rectangle 10 59 168 181 )
#model: #fileNamesHolder
#callbacksSpec:
#(#UIEventCallbackSubSpec
#valueChangeSelector: #changedFileName
#doubleClickSelector: #acceptedFileName ) )
#(#LabelSpec
#layout: #(#Point 10 186 )
#label: 'List Files of Type:' )
#(#LabelSpec
#layout: #(#Point 192 7 )
#label: 'Directories:' )
#(#SequenceViewSpec
#layout: #(#Rectangle 192 59 350 181 )
#model: #directoriesHolder
#callbacksSpec:
#(#UIEventCallbackSubSpec
#valueChangeSelector: #changedDirectory
#doubleClickSelector: #expandedOrContractedDirectory ) )
#(#LabelSpec
#layout: #(#Point 192 186 )
#label: 'Drives:' )
#(#ActionButtonSpec
#layout: #(#Rectangle 365 11 453 36 )
#model: #clickedOK
#label: 'OK'
#defaultable: true )
#(#ActionButtonSpec
#layout: #(#Rectangle 365 45 453 70 )
#model: #clickedCancel
#label: 'Cancel'
#defaultable: true )
#(#ComboBoxSpec
#layout: #(#Rectangle 10 209 168 230 )
#model: #fileTypesSelectionHolder
#callbacksSpec:
#(#UIEventCallbackSubSpec
#valueChangeSelector: #changedFileType )
#comboList: #fileTypesHolder )
#(#ComboBoxSpec
#layout: #(#Rectangle 192 209 350 230 )
#model: #driveListSelectionHolder
#callbacksSpec:
#(#UIEventCallbackSubSpec
#valueChangeSelector: #changedDrive )
#comboList: #driveListHolder )
#(#InputFieldSpec
#layout: #(#Rectangle 192 30 350 51 )
#flags: 0
#model: #currentDirectoryHolder
#callbacksSpec:
#(#UIEventCallbackSubSpec
#valueChangeSelector: #typedNewFileName )
#isReadOnly: true ) ) ) ).

builder := UIBuilder new.
view := spec buildViewFor:builder.
view open

o  testing
|top|

top := StandardSystemView new.
top extent:200@350.
top label:'hello'.

(WindowSpec fromView:top) inspect



|top spec app|

top := StandardSystemView new.
top extent:200@350.
top label:'hello'.

spec := (FullSpec fromView:top).

app := ApplicationModel new.
app allButOpenFrom:spec.
app builder openWithExtent:nil.



|top l b|

top := StandardSystemView new.
top extent:200@350.
top label:'hello'.

l := Label label:'some label'.
l layout:(10@10) asLayout.
top addComponent:l.

b := Button label:'press me'.
b layout:((0.0@0.5) corner:(1.0@1.0)) asLayout.
top addComponent:b.

(FullSpec fromView:top) inspect



|top|

top := FileBrowser new.
top openAndWait.

(FullSpec fromView:top) inspect


window sub-specs
o  colorBGSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  colorSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  detailsInitSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  fontColorBorderSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  fontColorSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  fontSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  menuSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  modelListSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  scrollerSubSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  visibilityAndBackgroundChannelEditSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

o  visibilityChannelEditSpec
This resource specification was automatically generated
by the UIPainter of ST/X.


Instance protocol:

accessing
o  activeHelpKey

o  activeHelpKey: aKey

o  attributes

o  attributes: something

o  backgroundColor
return nil here, so every component can be asked for it

o  colors

o  colors: something

o  extent: extentPoint
very special - only an extent is specified

o  flags
return the value of the instance variable 'flags' (automatically generated)

o  flags: something
set the value of the instance variable 'flags' (automatically generated)

o  foregroundChannel
return nil here, so every component can be asked for it

o  isOpaque
return the value of the instance variable 'isOpaque' (automatically generated)

o  isOpaque: something
set the value of the instance variable 'isOpaque' (automatically generated)

o  layout

o  layout: aLayout

o  name

o  name: aSymbol

o  postBuildCallback
very special - allow application to hook on component creation

o  postBuildCallback: anActionSelector
very special - allow application to hook on component creation

o  style

o  style: something

o  useDefaultExtent
very special - let view use its default extent

o  useDefaultExtent: aBoolean
very special - let view use its default extent

o  useDynamicPreferredHeight
very special - let view use its dynamic preferred height

o  useDynamicPreferredHeight: aBoolean
very special - let view use its dynamic preferred height

o  useDynamicPreferredWidth
very special - let view use its dynamic preferred width

o  useDynamicPreferredWidth: aBoolean
very special - let view use its dynamic preferred width

o  usePreferredHeight
very special - let view use its preferred height

o  usePreferredHeight: aBoolean
very special - let view use its preferred height

o  usePreferredWidth
very special - let view use its preferred width

o  usePreferredWidth: aBoolean
very special - let view use its preferred width

o  usedBackgroundColor

o  uuid

o  uuid: aUUID

accessing-dummies
o  changeSelector

o  defaultable

o  defaultable: aBoolean

o  initiallyInvisible

o  initiallyInvisible: aBoolean

o  labelSelector

o  listSelector

o  listSelector: aSelector

o  menuSelector

o  menuSelector: something

o  modelSelector
return my model selector

o  tabable

o  tabable: something

o  translateLabel

building
o  addView: aView toMappingOfBuilder: aBuilder

o  basicCreateViewFor: aBuilder in: aParentView
low level create - no attributes are set.
Can be redefined for special creation (see arbitraryComponentSpec)

o  buildViewFor: aBuilder in: aView
create and set attributes.
No need to redefine

o  buildViewWithLayoutFor: aBuilder in: aView

o  callBackActionFor: aSelector with: aBuilder
given a callBack selector, return a corresponding action block

o  channel: aChannelSymbol inBuilder: aBuilder

o  createViewFor: aBuilder in: aParentView
low level create - no attributes are set.
Can be redefined for special creation (see arbitraryComponentSpec)

o  defineCallBackActionFor: aSelector with: aBuilder
cg: renamed - it does not define anything, only return it

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  getBindingIn: aBuilder

o  getBindingIn: aBuilder binding: b

o  getLabel: label translate: translateLabel with: aBuilder
setup a views label; if translate is true, the string is passed
through the resource translation mechanism (national language string)

o  layout: aLayout for: aView

o  modelInBuilder: aBuilder

o  postBuildView: aView for: aBuilder
callback from builder, when a components subComponents
have been built - allows for late fixups ...

o  postCreateView: v for: aBuilder

o  setAcceptAttributesIn: aView with: aBuilder

o  setAttributesIn: aView with: aBuilder
having just built a view, now, set my attributes in aView
(actually, translating ST-80 messages to ST/X messages where required)

o  setChannelsIn: aView with: aBuilder
set channels in aView

o  setColorAttributesIn: v with: aBuilder

o  setKeyboardFocusAttributesIn: aView with: aBuilder

o  setLayoutsInLayoutContainer: aLayoutContainer

o  setModelAttributeIn: aView with: aBuilder
set my model attributes to aView (or its model)

o  setModelIn: aView useIndex: useIndex with: aBuilder

o  setViewBackgroundAttribute: backgroundColor in: aView with: aBuilder
setup a views viewBackground

o  setVisibilityAttribute: invisible in: v

o  setVisibilityChannel: aHolder inView: aView with: aBuilder
set my visibility channel in aView

o  setupInitialLayoutFor: aView

o  validateModel: aModel forView: aView withValue: constantValue
nothing done here - but can be redefined to check
for the model being of correct type for that view,
and return an adapted or converted model, and/or
change the views aspect/changeSelectors as appropriate.
(for example: being a selectionInList in a sequenceView)

o  validateSelectionInListModel: aModel forView: aView withValue: constantList
about to set the model.
If its a plain valueHolder, change the listMessage
to #value

o  wrappedViewOf: aView
redefined in specs, which automatically build a wrapper
(scroller) around a component

converting
o  basicFromLiteralArrayEncoding: aSpecArray
read my attributes from aSpecArray.
Similar to Object>>fromLiteralArrayEncoding: ;
however, does NOT decode the arguments.

o  fromLiteralArrayEncoding: aSpecArray
read my attributes from aSpecArray

o  literalArrayEncoding
generate a literalArrayEncoding array for myself.
This uses #literalArrayEncodingSlotOrder which defines the slots and
order and #skippedInLiteralEncoding which defines slots to skip.
For most subclasses, there is no need to redefine those.

o  literalArrayEncodingSlotOrder
define the order in which inst-slots are saved when generating a literalArrayEncoding

o  prettyPrintString

o  skippedInLiteralEncoding
define the inst-slots which are skipped when generating a literalArrayEncoding;
(to skip the ones with default values.)

copying
o  postCopy
must copy collections as well

drag & drop
o  canDropSelector

o  canDropSelector: aSelector

o  displayObjectSelector

o  displayObjectSelector: aSelector

o  dragAndDropArgumentAt: aKey

o  dragAndDropArgumentAt: aKey put: anArgument

o  dragArgument

o  dragArgument: anArgument

o  dropArgument

o  dropArgument: anArgument

o  dropFeedBackSelector

o  dropFeedBackSelector: aSelector

o  dropObjectSelector

o  dropObjectSelector: aSelector

o  dropSelector

o  dropSelector: aSelector

o  enterSelector

o  enterSelector: aSelector

o  leaveSelector

o  leaveSelector: aSelector

o  overSelector

o  overSelector: aSelector

o  startDragSelector

o  startDragSelector: aSelector

enumerating
o  do: aBlock

o  findSpecForWhich: aBlock
find a spec

o  findSpecNamed: aName
find a spec by name

help
o  helpSpec

helpers
o  resolveColor: colorOrSymbol ifUnknown: relacementValue with: aBuilder
resolve colorOrSymol to a real color

o  resolveColor: colorOrSymbol with: aBuilder
resolve colorOrSymol to a real color

o  sendMessage: selector withOptionalArg: optionalArg to: target

initialization
o  initialize

obsolete
o  feedBackSelector

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  feedBackSelector: aSelector

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  parseArg: argSpec

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  parseSpecCollectionFrom: argArray

** This is an obsolete interface - do not use it (it may vanish in future versions) **

other attributes
o  canUIDrag
true, if I can be dragged out of the UIGallery. All draggable objects are marked
by the UIGalleryView::Canvas as such, to avoid the user from dragging out labels and other decoration.
cg: I think this is a bad design by ca, to place this UIGallery specific, private stuff
into the UISpec here - it ought to be an additional attribute placed onto the view
and handled in the UIGallery alone.

o  canUIDrag: aBool
true, if I can be dragged out of the UIGallery. All draggable objects are marked
by the UIGalleryView::Canvas as such, to avoid the user from dragging out labels and other decoration.
cg: I think this is a bad design by ca, to place this UIGallery specific, private stuff
into the UISpec here - it ought to be an additional attribute placed onto the view
and handled in the UIGallery alone.

o  otherAttributeAt: selector

o  otherAttributeAt: selector put: args
change arguments assigned to a selector; in case of nil arguments,
the selector will be removed from the otherAttributes list.

o  otherAttributesLiteralArrayEncoding: aColl
generate a literalArrayEncoding array for other attributes

o  properties

o  properties: something

o  propertyAt: aKey

o  propertyAt: aKey put: something

o  setPropertiesIn: aView with: aBuilder
set properties; DragAndDrop

o  viewClassName

o  viewClassName: aSymbol

o  viewCreationMessage

o  viewCreationMessage: aSymbol

parsing a view
o  attributesFromView: aView
(try to) extract the attributes from the view

o  dragAndDropArgumentsFromView: aView
(try to) extract the drag & drop attributes from the view

o  fromView: aView

o  fromView: aView callBack: aBlock
extract attributes from aView

o  layoutFromView: aView

o  tabableFromView: aView
(try to) extract the canTab attribute from the view

queries
o  documentFileName
returns the basename of the file, which contains the html documentation for
the widget (shown in the UI-Painters widget-doc).

o  hasApplication: aBuilder

o  hasCharacterOrientedLabel
this is true, if my label is not an image

o  hasKeyboardFocusInitially
this is true, if will catch the focus initially (there should only be one...)

o  resolveName: component

o  resolveName: component in: aBuilder

o  usefulReplacementSpecClassNames
returns a list of possible replacement UISpec-class names.

o  usefulReplacementSpecClasses
returns a list of possible replacement UISpec-classes.

o  userFriendlyName
answer a good noticeable name of the widget for the GUI Painter and the documentation

o  viewClass
returns the view class to be created for that spec
This is an instance method, since it may depend on some attribute.
However, here we ask the class, to allow for class-specific defaults.

queries-UIDefiner
o  actionSelectors
return my action selectors (these generate callBack stub methods in the definer)

o  aspectSelectors
return my aspect selectors (these generate aspect methods in the definer)

o  basicAspectSelectors
add more aspect selectors (these generate aspect methods in the definer)

o  defaultModelClassFor: someAspect
used by the UIPainters aspectGenerator;
Return the default class for some aspects value.

o  defaultModelIsCallBackMethodSelector: someAspect
used by the UIPainters aspectGenerator;
Return true if the aspect specifies an action method
(or callBack) as opposed to a real model value.

o  defaultModelValueFor: someAspect
used by the UIPainters aspectGenerator;
Return the default value for some aspect.

o  defaultModelValueStringFor: someAspect
used by the UIPainters aspectGenerator;
Return the default value-generating string for some aspect.

o  valueSelectors
return my value selectors (these could generate simple value-returning stub methods in the definer)

queries-UIPainter
o  hasLayout
return true, if my view/component optionally has a layout.
All Views and Components except for the lineSegment, spline and polygons, do
support layouts. The other are defined by a set of controlling points.

o  icon

o  nameOfMainAspect
return the name of the main aspect; this is used in the UIPainters tree
to show the aspect of the widget.
For example, for a checkBox, this is the name of the model-aspect;
for a Label, this might be the name of the labelChannel-aspect.

o  needsRebuildForAttributes
return true, if my view must be rebuild
when an attribute changes.
True may be returned by a concrete subclass,
if attribute changes imply a view-class change
(such as horizontal/vertical)

o  realViewClass
returns the real view class to be created for that spec.
That is typically the UISpecs viewClass (i.e. what it thinks),
but can be overwritten per instance in some widgets (and specified in
the UIPainter).

style
o  setStyle: aStyle in: aView
backward compatibility

o  setStyle: aStyle in: aView with: aBuilder
set style for a view

testing
o  isWindowSpec

visiting
o  acceptUISpecVisitor: aVisitor
Double dispatch back to the visitor, passing my type encoded in
the selector (visitor pattern)

** This method raises an error - it must be redefined in concrete classes **


Private classes:

    UIBindingsIdentityDictionary


ST/X 6.1.1; WebServer 1.620 at exept:8081; Tue, 22 May 2012 22:50:44 GMT