home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-09-17 | 3.1 KB | 114 lines | [TEXT/MPS ] |
- //========================================================================================
- //
- // File: SLPoly.h
- // Release Version: $ ODF 2 $
- //
- // Copyright: (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
- //
- //========================================================================================
-
- #ifndef SLPOLY_H
- #define SLPOLY_H
-
- #ifndef FWSTDDEF_H
- #include "FWStdDef.h"
- #endif
-
- #ifndef SLGRDEF_H
- #include "SLGrDef.h"
- #endif
-
- #ifndef SLPTRECT_H
- #include "SLPtRect.h"
- #endif
-
- #ifndef SLSTRMRW_H
- #include "SLStrmRW.h"
- #endif
-
- //========================================================================================
- // Forward Declarations
- //========================================================================================
-
- class ODTransform;
-
- //========================================================================================
- // Polygon
- //========================================================================================
-
- class FW_CPrivPolygonRep;
- typedef FW_CPrivPolygonRep* FW_HPolygon;
-
- // Export or Import functions for CFM-68K [sfu]
-
- #if defined(FW_ODFLIB_IMPORT)
- #pragma import on
- #elif defined(FW_ODFLIB)
- #pragma export on
- #endif
-
- FW_EXTERN_C_BEGIN
-
- // Creation
-
- FW_HPolygon SL_API FW_PrivPolygon_CreateFromPoints(
- long count,
- const FW_SPoint* points,
- FW_PlatformError* error);
-
- FW_HPolygon SL_API FW_PrivPolygon_Copy(FW_HPolygon poly, FW_PlatformError* error);
-
- // Reference counting
-
- void SL_API FW_PrivPolygon_Acquire(FW_HPolygon poly);
- long SL_API FW_PrivPolygon_GetRefCount(FW_HPolygon poly);
- void SL_API FW_PrivPolygon_Release(FW_HPolygon poly);
-
- // Geometric Operations
-
- void SL_API FW_PrivPolygon_Transform(FW_HPolygon poly, Environment *ev, ODTransform* transform);
- void SL_API FW_PrivPolygon_InverseTransform(FW_HPolygon poly, Environment *ev, ODTransform* transform);
-
- FW_PlatformError SL_API FW_PrivPolygon_Move(FW_HPolygon poly, FW_Fixed deltaX, FW_Fixed deltaY);
- FW_PlatformError SL_API FW_PrivPolygon_MoveTo(FW_HPolygon poly, FW_Fixed x, FW_Fixed y);
-
- FW_PlatformError SL_API FW_PrivPolygon_Inset(FW_HPolygon poly, FW_Fixed x, FW_Fixed y);
-
- FW_PlatformError SL_API FW_PrivPolygon_GetBounds(FW_HPolygon poly, FW_SRect& rect);
-
- // Point access
-
- FW_PlatformError SL_API FW_PrivPolygon_SetPoints(
- FW_HPolygon poly,
- const FW_SPoint* points,
- long startIndex,
- long pointCount);
-
- FW_PlatformError SL_API FW_PrivPolygon_GetPoints(
- FW_HPolygon poly,
- FW_SPoint* points,
- long startIndex,
- long pointCount);
-
- long SL_API FW_PrivPolygon_GetCount(FW_HPolygon poly);
- FW_SPoint* SL_API FW_PrivPolygon_GetPointArray(FW_HPolygon poly);
-
- FW_Boolean SL_API FW_PrivPolygon_IsEqual(FW_HPolygon poly, FW_HPolygon poly2);
-
- // Streaming
-
- void SL_API FW_PrivPolygon_Write(FW_HPolygon poly, FW_HWritableStream stream, FW_PlatformError* error);
- FW_HPolygon SL_API FW_PrivPolygon_Read(FW_HReadableStream stream, FW_PlatformError* error);
-
- FW_EXTERN_C_END
-
- // For CFM-68K [sfu]
-
- #if defined(FW_ODFLIB_IMPORT)
- #pragma import off
- #elif defined(FW_ODFLIB)
- #pragma export off
- #endif
-
- #endif // SLPOLY_H
-