LOffscreenView is a PowerPlant class that is used for offscreen drawing. It creates a temporary GWorld everytime you draw.
Methods :
The methods in this class are:
Data Members:
The data members in this class are:
Operation:
If you want a view or panes within the view to use a GWorld that lasts for more than one update, use LGWorld instead.
Source files:
Ancestors:
Purpose:
The constructors create objects from the passed-in parameters.
Access:
Prototype:
LOffscreenView();
LOffscreenView(
const SPaneInfo &inPaneInfo,
const SViewInfo &inViewInfo );
LOffscreenView( LStream *inStream );Parameters:
The parameters for these constructors are:
Purpose:
The destructor destroys the object.
Access:
Prototype:
virtual ~LOffscreenView();
Purpose:
Draw contents of View offscreen and then copy them onscreen. First, we try to draw offscreen using temporary memory. If that fails, we try to draw offscreen using application memory. If all else fails, we call the inherited version to draw directly to the screen. This is an override of Draw() in LPane.
Purpose:
Draw contents of View to an Offscreen World, then copy bits all at once to the normal port.
Use the given flags when creating the offscreen GWorld.
Access:
Prototype:
virtual void DrawOffscreen(Parameters:
RgnHandle inSuperDrawRgnH,
GWorldFlags inFlags );
This method has the following parameter:
Return:
Purpose:
Set current port to the OffscreenView.
If this View is being drawn, the current port should be the Offscreen GWorld. Otherwise, some subpane is trying to draw itself directly (not in response to an update event) so we call the inherited function to do the normal thing.
Access:
Prototype:
virtual Boolean EstablishPort();Parameters:
Return:
Purpose:
Notification that the Image of some SubView changed size, location, or scroll units. In this override, we pass the notification up the chain. This is because the LOffscreenView isn't really the logical superview of its subpanes; it's just in the hierarchy to draw offscreen. So, we pass the notification up to the logical superview of its subpanes.
Access:
Prototype:
virtual void SubImageChanged( LView* inSubView );Parameters:
This method has the following parameter:
Return:
Purpose:
Access:
Prototype:
GWorldPtr mOffscreenWorld;
Purpose:
Storage for the information about self drawing.
Access:
Prototype:
Boolean mDrawingSelf;