-class STPTextPaneVars {
-public :
- /* OS records referenced */
- TXNObject fTXNRec; /* the txn record */
- TXNFrameID fTXNFrame; /* the txn frame ID */
- ControlRef fUserPaneRec; /* handle to the user pane control */
- WindowPtr fOwner; /* window containing control */
- GrafPtr fDrawingEnvironment; /* grafport where control is drawn */
- /* flags */
- Boolean fInFocus; /* true while the focus rect is drawn around the control */
- Boolean fIsActive; /* true while the control is drawn in the active state */
- Boolean fTXNObjectActive; /* reflects the activation state of the text edit record */
- Boolean fFocusDrawState; /* true if focus is drawn (default: true) */
- /* calculated locations */
- Rect fRBounds; /* control bounds */
- Rect fRTextArea; /* area where the text is drawn */
- Rect fRFocusOutline; /* rectangle used to draw the focus box */
- Rect fRTextOutline; /* rectangle used to draw the border */
- RgnHandle fRTextOutlineRegion; /* background region for the text, erased before calling TEUpdate */
- /* our focus advance override routine */
- EventHandlerUPP handlerUPP;
- EventHandlerRef handlerRef;
- bool fNoBorders ;
- bool fMultiline ;
- bool fVisible ;
-} ;
-
-/* Univerals Procedure Pointer variables used by the
-mUP Control. These variables are set up
-the first time that mUPOpenControl is called. */
-ControlUserPaneDrawUPP gTPDrawProc = NULL;
-ControlUserPaneHitTestUPP gTPHitProc = NULL;
-ControlUserPaneTrackingUPP gTPTrackProc = NULL;
-ControlUserPaneIdleUPP gTPIdleProc = NULL;
-ControlUserPaneKeyDownUPP gTPKeyProc = NULL;
-ControlUserPaneActivateUPP gTPActivateProc = NULL;
-ControlUserPaneFocusUPP gTPFocusProc = NULL;
-
-// one place for calculating all
-static void TPCalculateBounds(STPTextPaneVars *varsp, const Rect& bounds)