mg2enums.h

Go to the documentation of this file.
00001 /******************************************************************************,
00002  *
00003  * \file mi32/mg2enums.h
00004  * \brief enums used by the MGD code
00005  *
00006  * \if NODOC
00007  * $Log: mg2enums.h_v $
00008  * Revision 1.1  2004/05/25 19:26:41  dwilliss
00009  * Initial revision
00010  *
00011  * \endif
00012  */
00013 
00014 #ifndef INC_MI32_MG2ENUMS_H
00015 #define INC_MI32_MG2ENUMS_H
00016 
00017 #ifndef INC_MI32_STDDEFNS_H
00018 #include <mi32/stddefns.h>
00019 #endif
00020 
00021 
00022 namespace MGD {
00023 
00024 
00025 enum FONTTYPE {
00026    FONTTYPE_OF = 0,
00027    FONTTYPE_TTF = 1
00028    };
00029 
00030 enum ARROWTYPE {
00031    ARROWTYPE_FilledTriangle = 0,
00032    ARROWTYPE_UnfilledTriangle,
00033    ARROWTYPE_Open,
00034    ARROWTYPE_FilledArc
00035    };
00036 
00037 //! XXX How much of this is actually used?  I don't think it's really
00038 //! even implemented except perhaps in the X implementation
00039 //! SetPixelFunc is used in etext.c, but sets GXinvert and GXxor, not
00040 //! these constants.
00041 //! mdview sets it to PIXELFUNC_Copy, which is the default anyway.
00042 enum PIXELFUNC {
00043    PIXELFUNC_Clear = 0,       //!< 0
00044    PIXELFUNC_And,             //!< src AND dst
00045    PIXELFUNC_AndReverse,      //!< src AND NOT dst
00046    PIXELFUNC_Copy,            //!< src
00047    PIXELFUNC_AndInverted,     //!< NOT src AND dst
00048    PIXELFUNC_NoOp,            //!< dst
00049    PIXELFUNC_ExclusiveOr,     //!< src XOR dst
00050    PIXELFUNC_Or,              //!< src OR dst
00051    PIXELFUNC_Nor,             //!< NOT src AND NOT dst
00052    PIXELFUNC_Equiv,           //!< NOT src XOR dst
00053    PIXELFUNC_Invert,          //!< NOT dst
00054    PIXELFUNC_OrReverse,       //!< src OR NOT dst
00055    PIXELFUNC_CopyInverted,    //!< NOT src
00056    PIXELFUNC_OrInverted,      //!< NOT src OR dst
00057    PIXELFUNC_NotAnd,          //!< NOT src OR NOT dst
00058    PIXELFUNC_Set              //!< 1
00059    };
00060 
00061 enum SHAPECLOSE {
00062    SHAPECLOSE_None = 0, 
00063    SHAPECLOSE_Direct,
00064    SHAPECLOSE_ViaCenter
00065    };
00066 
00067 enum DEPTHTEST {
00068    DEPTHTEST_None = 0,
00069    DEPTHTEST_SetOnly = 1,
00070    DEPTHTEST_CheckAndSet = 2
00071    };
00072 
00073 enum LINECAP {
00074    LINECAP_NotLast = 0,
00075    LINECAP_Butt,
00076    LINECAP_Round,
00077    LINECAP_Projecting
00078    };
00079 
00080 enum LINEJOIN {
00081    LINEJOIN_Miter = 0,
00082    LINEJOIN_Round,
00083    LINEJOIN_Bevel
00084    };
00085 
00086 enum POLYSHAPE {
00087    POLYSHAPE_Complex = 0,     //!< Polygon may or may not be convex
00088    POLYSHAPE_NonConvex,       //!< Polygon is known to be non-convex
00089    POLYSHAPE_Convex           //!< Polygon is convex (doesn't double back on itself)
00090    };
00091 
00092 enum CAPABILITY {
00093    CAPABILITY_None               = 0,
00094    CAPABILITY_Transparency       = 0x00000001,  //!< Can do transparency
00095    CAPABILITY_3D                 = 0x00000002,
00096    CAPABILITY_InterfaceText      = 0x00000004,
00097    CAPABILITY_ScanColorUse       = 0x00000008,
00098    CAPABILITY_CopyRect           = 0x00000010,
00099    CAPABILITY_GetImage           = 0x00000020,
00100    CAPABILITY_MaskInImageSpan    = 0x00000040,  //!< PutImageSpan can use a mask array 
00101    CAPABILITY_TransparencyIsExpensive = 0x00000080,   //!< Can do it, but don't bother for anti-aliasing text.
00102    CAPABILITY_ComplexClip        = 0x00000100,  //!< Device handles clip regions
00103    CAPABILITY_BitmapFill         = 0x00000200   //!< Implements its own, optimized bitmap pattern fill in FillSpan
00104    };
00105 
00106 DEFINE_ENUM_OPERATORS(CAPABILITY);
00107 
00108 enum BASELINE {
00109    BASELINE_Unspecified    = 0,
00110    BASELINE_Straight       = 0x00000001,
00111    BASELINE_Spline         = 0x00000002,
00112    BASELINE_Nonconvex      = 0x00000004
00113    };
00114 DEFINE_ENUM_OPERATORS(BASELINE);
00115 
00116 enum TEXTBORDER {
00117    TEXTBORDER_None         = 0,
00118    TEXTBORDER_SingleLine   = 1,
00119    TEXTBORDER_DoubleLine   = 2
00120    };
00121 
00122 
00123 //! Flags for DrawXxxxStyleSample()
00124 enum STYLESAMPLEFLAGS {
00125    STYLESAMPLE_Default =         0x0000,
00126    STYLESAMPLE_ShrinkToFit =     0x0001,
00127    STYLESAMPLE_ForceToFit =      0x0002,
00128    STYLESAMPLE_ZigZag =          0x0004,  //!< /\/ line sample
00129    STYLESAMPLE_RoundRect =       0x0008,  //!< "rounded" rectangles
00130    STYLESAMPLE_NoScaleToMap =    0x0010,  //!< Disable scaling to map, use symbol/pattern design scale
00131    STYLESAMPLE_CenterSymbol =    0x0020   //!< Center symbol
00132    };
00133 DEFINE_ENUM_OPERATORS(STYLESAMPLEFLAGS);
00134 
00135 
00136 enum EMBEDPERMISSION {
00137    EMBEDPERMISSION_All           = 0,
00138    EMBEDPERMISSION_Restricted    = 0x00000002,
00139    EMBEDPERMISSION_PreviewPrint  = 0x00000004,
00140    EMBEDPERMISSION_Editable      = 0x00000008,
00141    EMBEDPERMISSION_NoSubset      = 0x00000100
00142    };
00143 
00144 DEFINE_ENUM_OPERATORS(EMBEDPERMISSION);
00145 
00146 enum INTERFACETEXTSTYLE {
00147    INTERFACETEXTSTYLE_Normal     = 0,
00148    INTERFACETEXTSTYLE_Bold       = 0x00000001,
00149    INTERFACETEXTSTYLE_Italic     = 0x00000002,
00150    INTERFACETEXTSTYLE_Fixed      = 0x00000004   // Fixed width font
00151    };
00152 
00153 DEFINE_ENUM_OPERATORS(INTERFACETEXTSTYLE);
00154 
00155 enum ICONFLAGS {
00156    ICON_OriginTop             = 0x00000000,
00157    ICON_OriginLeft            = 0x00000000,
00158    ICON_OriginBottom          = 0x00000001,
00159    ICON_OriginRight           = 0x00000002,
00160    ICON_OriginCenterX         = 0x00000004,
00161    ICON_OriginCenterY         = 0x00000008,
00162    ICON_OriginTopLeft         = (ICON_OriginTop|ICON_OriginLeft),
00163    ICON_OriginTopCenter       = (ICON_OriginTop|ICON_OriginCenterX),
00164    ICON_OriginTopRight        = (ICON_OriginTop|ICON_OriginRight),
00165    ICON_OriginCenterLeft      = (ICON_OriginCenterY|ICON_OriginLeft),
00166    ICON_OriginCenter          = (ICON_OriginCenterY|ICON_OriginCenterX),
00167    ICON_OriginCenterRight     = (ICON_OriginCenterY|ICON_OriginRight),
00168    ICON_OriginBottomLeft      = (ICON_OriginBottom|ICON_OriginLeft),
00169    ICON_OriginBottomCenter    = (ICON_OriginBottom|ICON_OriginCenterX),
00170    ICON_OriginBottomRight     = (ICON_OriginBottom|ICON_OriginRight),
00171    ICON_Dimmed                = 0x00000010   //!< Draw "dimmed" (stippled) icon
00172    };
00173 DEFINE_ENUM_OPERATORS(ICONFLAGS);
00174 
00175 enum BUILTINFILLSTYLE {
00176    BUILTINFILLSTYLE_Solid  = 0,
00177    BUILTINFILLSTYLE_50pct,       //!<  Every other pixel in a checkerboard pattern
00178    BUILTINFILLSTYLE_OneIn2x2,    //!<     2x2 pattern with one pixel on
00179    BUILTINFILLSTYLE_OneIn4x4,    //!<     4x4 pattern with one pixel on
00180    BUILTINFILLSTYLE_OneIn6x6,    //!<     6x6 pattern with one pixel on
00181    BUILTINFILLSTYLE_OneIn8x8,    //!<     8x8 pattern with one pixel on
00182    BUILTINFILLSTYLE_Hatch8L,     //!< 45 degree hatch every 8 pixels (going down to the left)
00183    BUILTINFILLSTYLE_Hatch8R,     //!< 45 degree hatch every 8 pixels (going down to the right)
00184 
00185    };
00186 
00187 //! These constants are defined by the TrueType spec and are used for TextGetTTFName()
00188 enum TTFNAMEID {
00189    TTFNAMEID_Copyright     = 0,  //!< eg: "Copyright Apple Computer, Inc. 1992"
00190    TTFNAMEID_Family        = 1,  //!< eg: "New York"
00191    TTFNAMEID_Style         = 2,  //!< eg: "Bold"
00192    TTFNAMEID_ID            = 3,  //!< eg: "Apple Computer New York Bold version 1.0"
00193    TTFNAMEID_FullName      = 4,  //!< eg: "New York Bold"
00194    TTFNAMEID_Version       = 5,  //!< eg: "August 10, 1991, 1.08d21"
00195    TTFNAMEID_PostScript    = 6,  //!< eg: "Times-Bold"
00196    TTFNAMEID_Trademark     = 7,
00197    TTFNAMEID_Designer      = 8
00198    };
00199 
00200 
00201 
00202 } // End of namespace MGD
00203 
00204 
00205 #endif   // INC_MI32_MG2ENUMS_H
00206 
00207 

Generated on Tue Dec 14 13:18:26 2004 for TNTsdk by  doxygen 1.3.8-20040913