/***** * TWindow.h * * Copyright © 1991 Symantec Corporation * * Class definition of window class. * This class is intended to demonstrate the new * object-oriented features of THINK C 5.0. It is not * intended to be a general purpose window class for use * in commerical-quaility applications. * *****/ #pragma once // include this header // only once per source file #define TWINDOWKIND 'TW' // Windows whose windowKind is // TWINDOWKIND have a TWindow // object stored in their refCon. // If it's any other windowKind, // it's not one of ours. #define TWinRSRC 128 // Resource ID of WIND resource // for TWindow windows #if __cplusplus class TWindow { // Using Symantec C++ #else class TWindow : indirect { // ...or THINK C's oop extensions #endif private: Rect drag; Rect smallest; WindowPtr theWindow; // the window record static short windowCounter; // counter for the stacker public: TWindow(void); // constructor ~TWindow(void); // destructor virtual void Close(void); short GetWindowNumber(void); virtual void Draw(void); virtual void Hit(Point where); virtual long Grow(Point where); virtual void Zoom(short part); virtual void Update(void); virtual void Activate(short active); virtual void Drag(Point where); virtual void Select(void); virtual void Show(void); virtual void Hide(void); virtual void TrackClose(Point where); virtual void TrackZoom(Point where, short part); virtual short IsVisible(void); virtual void GetWindowTitle (Str255 theTitle); virtual void SetWindowTitle (Str255 theTitle); virtual void GetWindowRect(Rect *theRect, Boolean entireWindow); virtual void RefreshWindow(Boolean entireWindow); virtual void ZoomContent(short z); };