home *** CD-ROM | disk | FTP | other *** search
- /*
- File: ShlEvtHd.h
-
- Contains: Shell event handlers (and others, for now)
-
- Owned by: Eric House
-
- Copyright: © 1993 - 1995 by Apple Computer, Inc., all rights reserved.
-
- Change History (most recent first):
-
- <5> 8/22/95 eeh 1230007: refbal-inspired cleanup
- <4> 2/20/95 TÇ #1210979 BB: 5-$ Bugs need to be evaluated
- and removed from Shell
- <3> 1/25/95 eeh 1211798: remove FIRSTBYTESFROMHANDLE and
- SETFIRSTBYTESOFHANDLE
- <2> 1/16/95 eeh 1211798: add FIRSTBYTESFROMHANDLE and
- SETFIRSTBYTESOFHANDLE
- <1> 6/30/94 TÇ first checked in
- <0> 6/29/94 SV SOMverted
- <4> 3/24/94 eeh bug# 1151750: scripting support for
- operations on draft
- <3> 2/8/94 JA Minor tweaks for CodeWarrior.
- <2> 1/11/94 eeh nuked FrameEventHandler class
- <1> 11/19/93 eeh first checked in
-
- To Do:
- */
-
- #ifndef _SHLEVTHD_
- #define _SHLEVTHD_
-
- #ifndef _PLFMDEF_
- #include "PlfmDef.h"
- #endif
-
- #ifndef SOM_ODObject_xh
- #include <ODObject.xh>
- #endif
-
- #ifndef SOM_ODFrame_xh
- #include <Frame.xh>
- #endif
-
- //==============================================================================
- // Theory of Operation
- //==============================================================================
-
- /*
- These classes handle events. They represent the DO on which the event
- will act later.
- */
-
- //==============================================================================
- // Constants
- //==============================================================================
-
- //==============================================================================
- // Scalar Types
- //==============================================================================
-
- //==============================================================================
- // Classes defined in this interface
- //==============================================================================
-
- class ShellEventHandler;
- // class ShellSaveEventHandler;
-
- //==============================================================================
- // Classes used by this interface
- //==============================================================================
-
- // class PropAccessor;
- // class RealShell;
- // class ODWindow;
-
- //==============================================================================
- // ShellWinPropAccessor
- //==============================================================================
-
- class HandlerObject
- {
- public:
- HandlerObject( DescType theClass, ODObject* theObject,
- ODSLong refCon ) ;
- DescType GetClass() ;
- ODObject* GetObject() ;
-
- /*virtual*/ void Save( AEDesc* whereFileSpec ) ;
- /*virtual*/ void Close( AEDesc* whereFileSpec, DescType saveOptions ) ;
- #ifdef TO_BE_DELETED
- /*virtual*/ void CountElements( DescType elemClass, AEDesc* result ) ;
- /*virtual*/ void Delete() ;
- /*virtual*/ void Clone( AEDesc* whereto, AEDesc* result ) ;
- #endif /* TO_BE_DELETED */
-
- protected:
- DescType fObjectClass ;
- ODObject* fTheObject ;
- ODSLong fRefcon ;
-
- } ;
-
- class ShellEventHandler : public HandlerObject
- {
- public:
- ShellEventHandler( DescType theClass, ODObject* theObject,
- ODSLong refCon ) ;
-
- void Save( AEDesc* whereFileSpec ) ;
- void Close( AEDesc* whereFileSpec, DescType saveOptions ) ;
- #ifdef TO_BE_DELETED
- void CountElements( DescType elemClass, AEDesc* result ) ;
- void Delete() ;
- void Clone( AEDesc* whereto, AEDesc* result ) ;
- #endif /* TO_BE_DELETED */
- };
-
- #ifdef TO_BE_DELETED
- class PartEventHandler : public HandlerObject
- {
- public:
- PartEventHandler( DescType theClass, ODFrame* frame,
- ODSLong refCon ) ;
-
- };
- #endif /* TO_BE_DELETED */
-
- #ifdef TO_BE_DELETED
- class FrameEventHandler : public HandlerObject
- {
- public:
- FrameEventHandler( DescType theClass, ODFrame* thePart,
- ODSLong refCon ) ;
-
- };
- #endif // TO_BE_DELETED
-
- #endif