home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-09-17 | 5.3 KB | 172 lines | [TEXT/MPS ] |
- //========================================================================================
- //
- // File: FWSemInt.h
- // Release Version: $ ODF 2 $
- //
- // Copyright: (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
- //
- //========================================================================================
-
- #ifndef FWSEMINT_H
- #define FWSEMINT_H
-
- #ifndef FWDESC_H
- #include "FWDesc.h"
- #endif
-
- #ifndef _ODTYPES_
- #include "ODTypes.h"
- #endif
-
- #ifndef FWEXCLIB_H
- #include "FWExcLib.h"
- #endif
-
- #include "FWTMap.tpp"
-
- //========================================================================================
- // Forward Declarations
- //========================================================================================
-
- class ODExtension;
- class FW_MScriptable;
- class FW_CPart;
- class FW_CAppleEvent;
- class FW_CSemanticInterface;
- class FW_MPartScriptable;
- class FW_OSemanticInterface;
- class ODNameResolver;
- class ODSession;
- class ODOSLToken;
- class FW_CFrame;
-
- //========================================================================================
- // class FW_CSemanticInterface
- //========================================================================================
-
- class FW_CSemanticInterface
- {
- public:
- FW_DECLARE_AUTO(FW_CSemanticInterface)
-
- public:
- FW_CSemanticInterface(Environment* ev, FW_CPart* part);
- virtual ~FW_CSemanticInterface();
-
- //--------------------------------------------------------------------------
- // SOM Semantic Interface Factory
-
- virtual FW_OSemanticInterface* CreateSOMInterface(Environment* ev,
- FW_CPart* part,
- const char* name,
- void* refCon);
-
- FW_OSemanticInterface* AcquireSOMInterface(Environment* ev);
-
- //--------------------------------------------------------------------------
- // Virtual Semantic Interface Methods
-
- virtual void CallEventHandler(Environment* ev,
- FW_CAppleEvent& appleEvent,
- FW_CAppleEvent& reply);
-
- void CallCoercionHandler(Environment* ev,
- const FW_CDesc& theDesc,
- ODDescType toType,
- FW_CDesc& theResult);
-
- virtual void CallPredispatchProc(Environment* ev,
- FW_CAppleEvent& appleEvent,
- FW_CAppleEvent& reply);
-
- virtual void CallObjectAccessor(Environment* ev,
- ODDescType desiredClass,
- ODOSLToken* container,
- ODDescType containerClass,
- ODDescType form,
- FW_CDesc& selectionData,
- ODOSLToken* value);
-
- virtual void CallCompareProc(Environment* ev,
- ODDescType oper,
- ODOSLToken* obj1,
- ODOSLToken* obj2,
- ODBoolean* result);
-
- virtual void CallCountProc(Environment* ev,
- ODDescType desiredType,
- ODDescType containerClass,
- ODOSLToken* container,
- ODSLong* result);
-
- virtual void CallDisposeTokenProc(Environment* ev,
- ODOSLToken* unneededToken);
-
- virtual void CallGetErrDescProc(Environment* ev,
- ODDesc** errDesc);
-
- virtual void CallGetMarkTokenProc(Environment* ev,
- ODOSLToken* dContainerToken,
- ODDescType containerClass,
- ODOSLToken* result);
-
- virtual void CallMarkProc(Environment* ev,
- ODOSLToken* objectToMarkToken,
- ODOSLToken* markingListToken,
- ODSLong index);
-
- virtual void CallAdjustMarksProc(Environment* ev,
- ODSLong newStart,
- ODSLong newStop,
- ODOSLToken* markToken);
-
- ODSShort GetOSLSupportFlags(Environment* ev);
-
- void SetOSLSupportFlags(Environment* ev, ODSShort flags);
-
- virtual void UsingPredispatchProc(Environment* ev, ODBoolean usingNotUsing);
-
- ODDesc* GetDescFromToken(Environment* ev, ODOSLToken* token) const;
-
- virtual FW_MScriptable* AcquireTargetObject(Environment* ev, FW_CAppleEvent& event);
-
- virtual void Resolve(Environment *ev,
- const FW_CDesc& objectSpec,
- FW_CDesc& odfToken,
- ODPart* contextPart = NULL) const;
-
- virtual FW_MScriptable* AcquireScriptableFromToken(Environment* ev, const FW_CDesc& odToken) const;
-
- inline void SetDefaultContainer(FW_MPartScriptable* defaultContainer)
- { fDefaultContainer = defaultContainer; }
-
- inline FW_MPartScriptable* GetDefaultContainer() const { return fDefaultContainer; }
-
- inline FW_CPart* GetPart() const { return fPart; }
-
- //--------------------------------------------------------------------------
- // Private registration and creation
-
- static ODExtension* PrivCreate(Environment* ev, FW_CPart* part, const char* name, void* refCon);
-
- protected:
- FW_MScriptable* CreateCollectionFromList(Environment* ev,
- FW_CPart* part,
- const FW_CDesc& objectList,
- ODDescType whichProperty = keyNoKey) const;
- private:
- FW_MPartScriptable* fDefaultContainer;
- FW_CPart* fPart;
-
- short fOSLFlags;
- FW_Boolean fUsingPredispatchProc;
- };
-
- //========================================================================================
- // Debugging Utilities
- //========================================================================================
-
- void FW_DebugIdentifyPart(Environment* ev, FW_CFrame* frame, const FW_CColor& color);
-
- #endif // FWSEMINT_H
-