eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'Layout':

Home

Documentation
www.exept.de
Everywhere
for:
[back]

Class: Layout


Inheritance:

   Object
   |
   +--Layout
      |
      +--LayoutOrigin

Package:
stx:libview2
Category:
Graphics-Geometry
Version:
rev: 1.22 date: 2019/07/17 08:15:54
user: cg
file: Layout.st directory: libview2
module: stx stc-classLibrary: libview2
Author:
Claus Gittinger

Description:


This is an abstract superclass for geometry controlling objects.
While old smalltalks used relative origin/extent/corner and absolute
origin/corner/extents, these mechanisms are now being removed from the
view itself into geometry controlling objects, which are given a superview's
size and are to return a component's size upon request.
This allows more flexible geometry management, since any algorithm can
be implemented (if the existing ones are not sufficient, add you own subclass
and install it as layout-object in your view).

Notice: 
    this class was implemented using protocol information
    from alpha testers - 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:

    View
    LayoutOrigin
    LayoutFrame
    AlignmentOrigin

Class protocol:

instance creation
o  new
return a new initialized instance

queries
o  isAbstract
Return if this class is an abstract class.
True is returned here for myself only; false for subclasses.
Abstract subclasses must redefine this again.


Instance protocol:

computing
o  rectangleRelativeTo: superRectangle preferred: prefRectHolder
compute the rectangle represented by the receiver,
given the superView's rectangle and the view's preferredExtent.
Must be implemented by concrete subclasses.

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

converting
o  asLayout
return the receiver

initialization
o  initialize
setup the instance - to be redefined by concrete subclasses

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

queries
o  isAlignmentOrigin
return true, if this is an alignmentOrigin

o  isLayout
return true, if the receiver is a layout object.
Always return true here.

o  isLayoutFrame
return true, if this is a layoutFrame

o  isLayoutOrigin
return true, if this is a layoutOrigin



ST/X 7.2.0.0; WebServer 1.670 at bd0aa1f87cdd.unknown:8081; Tue, 19 Mar 2024 07:21:11 GMT