/* Carbon is currently under development and is not yet complete. Any comments related to Carbon are preliminary, and you should confirm that any workarounds we (Metrowerks) implement do work in the latest shipping version of Carbon. If we (Metrowerks) are using an API from the CarbonLib, its version and date that version was current will be identified in a comment using the following format: // Carbon API from CarbonLib vX.X, version current as of MM/DD/YY If we (Metrowerks) are working around the CarbonLib for whatever reason, the version of the CarbonLib we are working around and the date at which that version of the CarbonLib was current will be identified in the comment using the following format: // CarbonLib workaround for CarbonLib vX.X, version current as of MM/DD/YY */ // =========================================================================== // PP_Types.h PowerPlant 1.9.3 ©1993-1998 Metrowerks Inc. // =========================================================================== #ifndef _H_PP_Types #define _H_PP_Types #pragma once #include <PP_Macros.h> #include <Carbon/Carbon.h> // Toolbox data types #if PP_Uses_Pragma_Import #pragma import on #endif //PP_Begin_Namespace_PowerPlant // --------------------------------------------------------------------------- // Integer types // These types are obsolete. Use the equivalent Toolbox types instead. #if PP_Uses_Old_Integer_Types // Toolbox Type typedef signed char Int8; // SInt8 typedef signed short Int16; // SInt16 typedef signed long Int32; // SInt32 typedef unsigned char Uint8; // UInt8 typedef unsigned short Uint16; // UInt16 typedef unsigned long Uint32; // UInt32 typedef UInt16 Char16; // UInt16 typedef unsigned char Uchar; // UInt8 #endif #if UNIVERSAL_INTERFACES_VERSION < 0x0320 // Defined by Universal // Headers 3.2 typedef const unsigned char* ConstStringPtr; #endif // --------------------------------------------------------------------------- // Enumeration for tri-state hierarchical properties enum ETriState { triState_Off, // Setting is OFF triState_Latent, // Setting is ON, but Super's setting is OFF triState_On // Setting is ON, and Super's setting is ON }; // --------------------------------------------------------------------------- // Types for PowerPlant Identifiers typedef SInt32 CommandT; typedef SInt32 MessageT; typedef SInt16 ResIDT; typedef SInt32 PaneIDT; typedef FourCharCode ClassIDT; typedef FourCharCode DataIDT; typedef FourCharCode ObjectIDT; //PP_End_Namespace_PowerPlant // --------------------------------------------------------------------------- // Macros for accessing the top-left and bottom-right corners of a Rect // The original Toolbox specifies these accessors, but Apple no longer // includes them in the Universal Headers. We define them because a lot // of existing code uses them. #ifndef topLeft #define topLeft(r) (((Point *) &(r))[0]) #endif #ifndef botRight #define botRight(r) (((Point *) &(r))[1]) #endif // --------------------------------------------------------------------------- // Definition of type double_t // double_t is the most efficient type at least as wide as double for // the target CPU. fp.h and math.h both define double_t, but we define // it here in case you don't want to include one of those headers. #if !defined(__FP__) && !defined(__cmath__) #if TARGET_CPU_PPC typedef float float_t; typedef double double_t; #elif TARGET_CPU_68K typedef long double float_t; typedef long double double_t; #elif TARGET_CPU_X86 #if NeXT typedef double float_t; typedef double double_t; #else // Changed to match fp.h //typedef long double float_t; //typedef long double double_t; typedef double float_t; typedef double double_t; #endif /* NeXT */ #elif TARGET_CPU_MIPS typedef double float_t; typedef double double_t; #elif TARGET_CPU_ALPHA typedef double float_t; typedef double double_t; #elif TARGET_CPU_SPARC typedef double float_t; typedef double double_t; #else #error unsupported CPU #endif /* */ #endif #if PP_Uses_Pragma_Import #pragma import reset #endif #endif