Squeak Class Documentation category index | class index  
 
StandardSystemView
  category: ST80-Support
  superclass: View
  subclasses: FormEditorView ColorSystemView ProjectView ModalSystemWindowView

I represent a view that has a label above its top left corner. The text in the label identifies the kind of view. In addition to a label, I add control over the maximum and minimum size of the display box of my instance. My default controller is StandardSystemController. The elements of ScheduledControllers, the sole instance of ControlManager, are usually controllers for instances of me.

instance methods
  clipping box access
  clippingBox

  controller access
  defaultControllerClass

  deEmphasizing
  deEmphasizeView
emphasizeView

  displaying
  cacheBits
cacheBitsAsIs
cacheBitsAsTwoTone
deEmphasizeForDebugger
deEmphasizeLabel
display
displayDeEmphasized
displayEmphasized
displayLabelBackground:
displayLabelBoxes
displayLabelText
displayOn:
displayRacingStripes
displayView
emphasizeLabel
erase
makeMeVisible
uncacheBits
windowBits

  framing
  chooseCollapsePoint
chooseFrame
chooseMoveRectangle
collapse
collapseToPoint:
collapsedFrame
constrainFrame:
expand
expandedFrame
fullScreen
getFrame
initialExtent
initialFrame
moved
newFrame:
reframePanesAdjoining:along:to:
reframeTo:
resize
resizeInitially
resizeMinimumCenteredAt:
resizeTo:
standardWindowOffset
windowBox
windowOrigin

  initialize-release
  initialize
model:
release

  label access
  closeBoxFrame
growBoxFrame
label
label:
labelColor
labelDisplayBox
labelFrame
labelHeight
labelOffset
labelText
labelTextRegion
noLabel
relabel:
setLabel:
setLabelRegion
setLabelTo:

  object fileIn
  convertToCurrentVersion:refStream:

  private
  setTransformation:
subviewWithLongestSide:near:

  size
  maximumSize
maximumSize:
minimumSize
minimumSize:

  testing
  containsPoint:
isCollapsed
labelContainsPoint:

  updating
  setUpdatablePanesFrom:
updatablePanes
update:

class methods
  class initialization
  cachingBits
doCacheBits
dontCacheBits
initialize
setLabelStyle

instance methods
  clipping box access top  
 

clippingBox

Answer the rectangular area in which the receiver can show its label.


  controller access top  
 

defaultControllerClass

Refer to the comment in View|defaultControllerClass.


  deEmphasizing top  
 

deEmphasizeView

Refer to the comment in View|deEmphasizeView.


 

emphasizeView

Refer to the comment in View|emphasizeView.


  displaying top  
 

cacheBits


 

cacheBitsAsIs


 

cacheBitsAsTwoTone


 

deEmphasizeForDebugger

Carefully de-emphasis this window because a debugger is being opened. Care must be taken to avoid invoking potentially buggy window display code that could cause a recursive chain of errors eventually resulting in a virtual machine crash. In particular, do not de-emphasize the subviews.


 

deEmphasizeLabel

Un-Highlight the label.


 

display

Display the receiver's border, display the receiver, then display the
subViews of the receiver. Can be sent to the top View of a structured
picture in order to display the entire structure, or to any particular View
in the structure in order to display that View and its subViews. It is
typically sent in response to an update request to a View.


 

displayDeEmphasized

Display this view with emphasis off.
If windowBits is not nil, then simply BLT if possible,
but force full display for top window so color is preserved.


 

displayEmphasized

Display with label highlighted to indicate that it is active.


 

displayLabelBackground:

Clear or emphasize the inner region of the label


 

displayLabelBoxes

closeBox, growBox.


 

displayLabelText

The label goes in the center of the window


 

displayOn:


 

displayRacingStripes

Display Racing Stripes in the label


 

displayView

Refer to the comment in View|displayView.


 

emphasizeLabel

Highlight the label.


 

erase

Clear the display box of the receiver to be gray, as the screen background.


 

makeMeVisible


 

uncacheBits


 

windowBits


  framing top  
 

chooseCollapsePoint

Answer the point at which to place the collapsed window.


 

chooseFrame

Answer a new frame, depending on whether the view is currently
collapsed or not.


 

chooseMoveRectangle

Ask the user to designate a new window rectangle.


 

collapse

If the receiver is not already collapsed, change its view to be that of its
label only.


 

collapseToPoint:


 

collapsedFrame

Answer the rectangle occupied by this window when collapsed.


 

constrainFrame:

Constrain aRectangle, to the minimum and maximum size
for this window


 

expand

If the receiver is collapsed, change its view to be that of all of its subviews, not its label alone.


 

expandedFrame

Answer the rectangle occupied by this window when expanded.


 

fullScreen

Expand the receiver to fill the screen. Let the model decide how big is full -- allows for flop-out scrollbar on left if desired


 

getFrame

Ask the user to designate a rectangular area in which
the receiver should be displayed.


 

initialExtent

Answer the desired extent for the receiver when it is first opened on the screen.


 

initialFrame

Find a plausible initial screen area for the receiver, taking into account user preference, the size needed, and other windows currently on the screen. 5/22/96 sw: let RealEstateAgent do it for us


 

moved

The user has moved the receiver; after a new view rectangle is chosen, this method is called to allow certain views to take note of the change. 6/10/96 sw


 

newFrame:


 

reframePanesAdjoining:along:to:


 

reframeTo:

Reframe the receiver to the given screen rectangle.
Repaint difference after the change.


 

resize

Determine the rectangular area for the receiver, adjusted to the
minimum and maximum sizes.


 

resizeInitially

Determine the rectangular area for the receiver, adjusted to the
minimum and maximum sizes.


 

resizeMinimumCenteredAt:

Determine the rectangular area for the receiver, adjusted so that it is
centered a position, aPoint.


 

resizeTo:

Resize this view to aRectangle


 

standardWindowOffset


 

windowBox


 

windowOrigin


  initialize-release top  
 

initialize

Refer to the comment in View|initialize.


 

model:

Set the receiver's model. For a Standard System View, we also at this time get the default background color set up. 7/30/96 sw


 

release

Remove the receiver from its model's list of dependents (if the model
exists), and release all of its subViews. It is used to break possible cycles
in the receiver and should be sent when the receiver is no longer needed.
Subclasses should include 'super release.' when redefining release.


  label access top  
 

closeBoxFrame


 

growBoxFrame


 

label

Answer the string that appears in the receiver's label.


 

label:

Set aString to be the receiver's label.


 

labelColor

Answer the color to use as the background for the receiver's label. By default, this is the same as the background color of the window, but need not be. 7/16/96 sw


 

labelDisplayBox

Answer the rectangle that borders the visible parts of the receiver's label
on the display screen.


 

labelFrame


 

labelHeight


 

labelOffset


 

labelText


 

labelTextRegion


 

noLabel

A label of zero height indicates no label


 

relabel:

A new string for the label. Window is assumed to be active.
Window will redisplay only if label bar has to grow.


 

setLabel:

For compatibility with morphic


 

setLabelRegion

Always follows view width


 

setLabelTo:

Force aString to be the new label of the receiver, bypassing any logic about whether it is acceptable and about propagating information about the change.


  object fileIn top  
 

convertToCurrentVersion:refStream:

subclasses should implement if they wish to convert old instances to modern ones


  private top  
 

setTransformation:

Override to support label size changes


 

subviewWithLongestSide:near:


  size top  
 

maximumSize

Answer a point representing the maximum width and height of the
receiver.


 

maximumSize:

Set the argument, aPoint, to be the maximum width and height of the
receiver.


 

minimumSize

Answer a point representing the minimum width and height of the
receiver.


 

minimumSize:

Set the argument, aPoint, to be the minimum width and height of the
receiver.


  testing top  
 

containsPoint:

Refer to the comment in View|containsPoint:.


 

isCollapsed

Answer whether the receiver is collapsed (true) or expanded (false).


 

labelContainsPoint:

Answer TRUE if aPoint is in the label box.


  updating top  
 

setUpdatablePanesFrom:

Set my updatablePanes inst var to the list of panes which are list panes with the given get-list selectors. Order is important here! Note that the method is robust in the face of panes not found, but a warning is printed in the transcript in each such case


 

updatablePanes

Answer the list of panes, in order, which might be sent the #verifyContents message upon window activation or expansion.


 

update:

Normally sent by the receiver's model in order to notify the receiver of
a change in the model's state. Subclasses implement this message to do
particular update actions. A typical action that might be required is to
redisplay the receiver.


class methods
  class initialization top  
 

cachingBits


 

doCacheBits

StandardSystemView doCacheBits - Enable fast window repaint feature


 

dontCacheBits

StandardSystemView dontCacheBits - Disable fast window repaint feature.
Return true iff bits were cached, ie if space was been recovered


 

initialize

StandardSystemView initialize


 

setLabelStyle

StandardSystemView setLabelStyle