home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / QuickTime VR / Windows / Interfaces / QD3DUIView.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-05-03  |  5.1 KB  |  180 lines  |  [TEXT/MPS ]

  1. /******************************************************************************
  2.  **                                                                             **
  3.  **     Module:        QD3DUIView.h                                             **
  4.  **                                                                          **
  5.  **                                                                          **
  6.  **     Purpose:                                                              **
  7.  **                                                                          **
  8.  **                                                                          **
  9.  **                                                                          **
  10.  **     Copyright (C) 1992-1995 Apple Computer, Inc.  All rights reserved.     **
  11.  **                                                                          **
  12.  **                                                                          **
  13.  *****************************************************************************/
  14. #if defined(ESCHER_VER_15) && ESCHER_VER_15
  15.  
  16. #ifndef UIView_h
  17. #define UIView_h
  18.  
  19. #if PRAGMA_ONCE
  20.     #pragma once
  21. #endif
  22.  
  23. #if defined(WINDOW_SYSTEM_MACINTOSH) && WINDOW_SYSTEM_MACINTOSH
  24.  
  25. #include <Quickdraw.h>
  26. #include <Windows.h>
  27. #include <FixMath.h>
  28. #include <GXTypes.h>
  29.  
  30. #endif  /*  WINDOW_SYSTEM_MACINTOSH  */
  31.  
  32. #include "QD3DMapping.h"
  33.  
  34. #if defined(THINK_C) || defined(__SC__)
  35.     #pragma options(!pack_enums, !align_arrays)
  36.     #pragma SC options align=power
  37. #elif defined(__MWERKS__)
  38.     #pragma enumsalwaysint on
  39.     #pragma align_array_members off
  40.     #pragma options align=native
  41. #elif defined(__PPCC__)
  42.     #pragma options align=power
  43. #elif defined(__xlc) || defined(__xlC) || defined(__xlC__) || defined(__XLC121__)
  44.     #pragma options enum=int
  45. #endif
  46.  
  47. #ifdef __cplusplus
  48. extern "C" {
  49. #endif    /* __cplusplus */
  50.  
  51. /******************************************************************************
  52.  **                                                                             **
  53.  **                            User Interface View API                             **
  54.  **                                                                             **
  55.  *****************************************************************************/
  56.  
  57. QD3D_EXPORT TQ3UIViewObject Q3UIView_New(
  58.     void);
  59.  
  60. QD3D_EXPORT TQ3Status Q3UIView_SetScale(
  61.     TQ3UIViewObject                uiViewObject,
  62.     float                        scaleFactor);
  63.  
  64. QD3D_EXPORT TQ3Status Q3UIView_SetScaleAtDistance(
  65.     TQ3UIViewObject                uiViewObject,
  66.     float                        distance);
  67.  
  68. QD3D_EXPORT TQ3Status Q3UIView_GetScale(
  69.     TQ3UIViewObject                uiViewObject,
  70.     float                        *scaleFactor);
  71.  
  72. QD3D_EXPORT TQ3Status Q3UIView_SetColorScheme(
  73.     TQ3UIViewObject                uiViewObject,
  74.     TQ3ColorSchemeObject            colorScheme);
  75.  
  76. QD3D_EXPORT TQ3Status Q3UIView_GetColorScheme(
  77.     TQ3UIViewObject                uiViewObject,
  78.     TQ3ColorSchemeObject            *colorScheme);
  79.  
  80.  
  81. QD3D_EXPORT TQ3Status Q3UIView_SetMapping(
  82.     TQ3UIViewObject        uiViewObject,
  83.     TQ3MappingObject    mapping);
  84.  
  85. QD3D_EXPORT TQ3Status Q3UIView_GetMapping(
  86.     TQ3UIViewObject        uiViewObject,
  87.     TQ3MappingObject    *mapping);
  88.  
  89. QD3D_EXPORT TQ3Status Q3UIView_TrackMapping(
  90.     TQ3UIViewObject        uiViewObject,
  91.     TQ3Point2D            *screenPoint,
  92.     TQ3MappingInfoMask    requestInfo,
  93.     TQ3MappingInfo        *info);
  94.  
  95. QD3D_EXPORT TQ3Status Q3UIView_EmptyMapping(
  96.     TQ3MappingInfo        *info);
  97.     
  98.     
  99. #if defined(WINDOW_SYSTEM_MACINTOSH) && WINDOW_SYSTEM_MACINTOSH
  100.  
  101. /******************************************************************************
  102.  **                                                                             **
  103.  **                                     Routines                                 **
  104.  **                                                                             **
  105.  *****************************************************************************/
  106.  
  107. QD3D_EXPORT void Q3UIView_SetQDDisplay(
  108.     TQ3UIViewObject        uiViewObject,
  109.     WindowPtr            window,
  110.     const Rect            *bounds);
  111.  
  112. QD3D_EXPORT void Q3UIView_SetQDGXDisplay(
  113.     TQ3UIViewObject        uiViewObject,
  114.     gxViewPort            viewPort,
  115.     gxShape                shape);
  116.  
  117.  
  118. #endif    /*  WINDOW_SYSTEM_MACINTOSH  */
  119.  
  120. /******************************************************************************
  121.  **                                                                             **
  122.  **                                Type Definitions                             **
  123.  **                                                                             **
  124.  *****************************************************************************/
  125.  
  126. typedef enum TQ3ColorSchemeAttributeSet{
  127.     kQ3ColorSchemeAttributeSetCursor,
  128.     kQ3ColorSchemeAttributeSetSparkle,
  129.     kQ3ColorSchemeAttributeSetHandle,
  130.     kQ3ColorSchemeAttributeSetStructure,
  131.     kQ3ColorSchemeAttributeSetRoomFloor1,
  132.     kQ3ColorSchemeAttributeSetRoomFloor2,
  133.     kQ3ColorSchemeAttributeSetRoomWall,
  134.     kQ3ColorSchemeAttributeSetRoomCeiling,
  135.     kQ3ColorSchemeAttributeSetConstraint,
  136.     kQ3ColorSchemeAttributeSetConstraint2,
  137.     kQ3ColorSchemeAttributeSetCOUNT
  138. } TQ3ColorSchemeAttributeSet;
  139.  
  140.  
  141. /******************************************************************************
  142.  **                                                                             **
  143.  **                                     Routines                                 **
  144.  **                                                                             **
  145.  *****************************************************************************/
  146.  
  147. QD3D_EXPORT TQ3Status Q3ColorScheme_Next(
  148.     TQ3ColorSchemeObject        colorSchemeObject,
  149.     TQ3ColorSchemeObject        *nextColorScheme);
  150.  
  151. QD3D_EXPORT TQ3Status Q3ColorScheme_GetInfo(
  152.     TQ3ColorSchemeObject        colorSchemeObject,
  153.     char                        *name,
  154.     unsigned long                nameLength);
  155.  
  156. QD3D_EXPORT TQ3Status Q3ColorScheme_GetAttributeSet(
  157.     TQ3ColorSchemeObject        colorSchemeObject,
  158.     TQ3ColorSchemeAttributeSet    attributeSetIndex,
  159.     TQ3AttributeSet                *attributeSet);
  160.  
  161. QD3D_EXPORT TQ3ColorSchemeObject Q3ColorScheme_New(
  162.     const char                    *name,
  163.     unsigned long                attributeSetCount,
  164.     TQ3AttributeSet                attributeSetArray[]);
  165.  
  166.  
  167. #ifdef __cplusplus
  168. }
  169. #endif    /* __cplusplus */
  170.  
  171. #if defined(__MWERKS__)
  172.     #pragma enumsalwaysint reset
  173. #elif defined(__xlc) || defined(__xlC) || defined(__xlC__) || defined(__XLC121__)
  174.     #pragma options enum=reset
  175. #endif
  176.  
  177. #endif  /*  UIView_h  */
  178.  
  179. #endif    /* ESCHER_VER_15 */
  180.