00001 /* 00002 * Copyright (c) 1998 by Tech Soft 3D, LLC. 00003 * The information contained herein is confidential and proprietary to 00004 * Tech Soft 3D, LLC., and considered a trade secret as defined under 00005 * civil and criminal statutes. Tech Soft 3D shall pursue its civil 00006 * and criminal remedies in the event of unauthorized use or misappropriation 00007 * of its trade secrets. Use of this information by anyone other than 00008 * authorized employees of Tech Soft 3D, LLC. is granted only under a 00009 * written non-disclosure agreement, expressly prescribing the scope and 00010 * manner of such use. 00011 * 00012 * $Id: patterns_8h-source.html,v 1.29 2008-03-10 07:09:28 stage Exp $ 00013 */ 00014 00015 00016 #ifndef PATTERNS_DEFINED 00017 00018 /* DO NOT ADD ANY INCLUDES TO THIS FILE */ 00019 /* DO NOT USE ANY HT_ TYPES IN THIS FILE */ 00020 00021 /* IM user face patterns */ 00022 #define UPAT_NORMAL 0 00023 #define UPAT_NO_FACE 1 00024 #define UPAT_NO_CONTRAST 2 00025 00026 00027 /* Legacy Edge and line patterns */ 00028 #define LP_SOLID 0 00029 #define LP_DASHDOT 1 00030 #define LP_DASHED 2 00031 #define LP_DOTTED 3 00032 #define LP_DASH_2DOT 4 00033 #define LP_DASH_3DOT 5 00034 #define LP_LONG_DASH 6 00035 #define LP_CENTER 7 00036 #define LP_PHANTOM 8 00037 #define LP_FINEDOT 9 00038 00039 00040 #define LCAP_BUTT 0x0000 00041 #define LCAP_ROUND 0x0001 00042 #define LCAP_SQUARE 0x0002 00043 #define LCAP_TRIANGLE 0x0004 00044 #define LCAP_END_ROUND 0x0010 00045 #define LCAP_END_SQUARE 0x0020 00046 #define LCAP_END_TRIANGLE 0x0040 00047 #define LCAP_END_BUTT 0x0080 00048 #define LCAP_START_MASK 0x000F 00049 #define LCAP_END_MASK 0x00F0 00050 #define LCAP_MASK 0x00FF 00051 #define LCAP_SHIFT 0 00052 #define LCAP_END_SHIFT 4 00053 #define LCAP_COMPLEX_BITS (LCAP_TRIANGLE|LCAP_END_ROUND|LCAP_END_SQUARE|LCAP_END_TRIANGLE|LCAP_END_BUTT) 00054 00055 #define LJOIN_MITER 0x0000 00056 #define LJOIN_ROUND 0x0100 00057 #define LJOIN_BEVEL 0x0200 00058 #define LJOIN_MASK 0x0F00 00059 #define LJOIN_SHIFT 8 00060 00061 #define LPAT_BUTT 0x0000 00062 #define LPAT_ROUND 0x1000 00063 #define LPAT_SQUARE 0x2000 00064 #define LPAT_TRIANGLE 0x4000 00065 #define LPAT_MASK 0xF000 00066 #define LPAT_SHIFT 12 00067 00068 /* HT_Polygon fill patterns */ 00069 #ifndef FP_SOLID 00070 # define FP_SOLID 0 /* must match driver.h */ 00071 #endif 00072 #define FP_CHECKERBOARD 1 00073 #define FP_CROSSHATCH 2 00074 #define FP_DIAMONDS 3 00075 #define FP_HORIZONTAL_BARS 4 00076 #define FP_SLANT_LEFT 5 00077 #define FP_SLANT_RIGHT 6 00078 #define FP_SQUARE_DOTS 7 00079 #define FP_VERTICAL_BARS 8 00080 #define FP_WINDOW_CHECKERBOARD 9 00081 #define FP_WINDOW_CROSSHATCH 10 00082 #define FP_WINDOW_DIAMONDS 11 00083 #define FP_WINDOW_HORIZONTAL_BARS 12 00084 #define FP_WINDOW_SLANT_LEFT 13 00085 #define FP_WINDOW_SLANT_RIGHT 14 00086 #define FP_WINDOW_SQUARE_DOTS 15 00087 #define FP_WINDOW_VERTICAL_BARS 16 00088 00089 #define FP_WINDOW_TRANSPARENT 17 /* not really a pattern - has no bits */ 00090 00091 #define FP_WINDOW_FIRST_GRADIENT 18 00092 #define FP_WINDOW_GRADIENT_N 18 00093 #define FP_WINDOW_GRADIENT_NE 19 00094 #define FP_WINDOW_GRADIENT_E 20 00095 #define FP_WINDOW_GRADIENT_SE 21 00096 #define FP_WINDOW_GRADIENT_S 22 00097 #define FP_WINDOW_GRADIENT_SW 23 00098 #define FP_WINDOW_GRADIENT_W 24 00099 #define FP_WINDOW_GRADIENT_NW 25 00100 #define FP_WINDOW_LAST_GRADIENT 25 00101 00102 #define FP_BLEND 26 00103 00104 #define FP_WINDOW_TRANS_NO_ZCLEAR 27 00105 00106 #define FP_USER_DEFINED 127 00107 00108 00109 /* Legacy HT_Marker symbols */ 00110 #define MK_CIRCLE 0 00111 #define MK_CIRCLE_WITH_DOT 1 00112 #define MK_CIRCLE_WITH_CROSS 2 00113 #define MK_CIRCLE_WITH_TIMES 3 00114 #define MK_CIRCLE_WITH_CIRCLE 4 00115 #define MK_SOLID_CIRCLE 5 00116 #define MK_DOT 6 00117 #define MK_CROSS 7 00118 #define MK_SPLAT 8 00119 #define MK_TIMES 9 00120 #define MK_BOX 10 00121 #define MK_BOX_WITH_DOT 11 00122 #define MK_BOX_WITH_TIMES 12 00123 #define MK_SOLID_BOX 13 00124 #define MK_DIAMOND 14 00125 #define MK_DIAMOND_WITH_DOT 15 00126 #define MK_DIAMOND_WITH_CROSS 16 00127 #define MK_SOLID_DIAMOND 17 00128 #define MK_TRIANGLE_UP 18 00129 #define MK_TRIANGLE_UP_V 19 00130 #define MK_TRIANGLE_UP_WITH_DOT 20 00131 #define MK_SOLID_TRIANGLE_UP 21 00132 #define MK_SOLID_TRIANGLE_UP_V 22 00133 #define MK_TRIANGLE_DOWN 23 00134 #define MK_TRIANGLE_DOWN_V 24 00135 #define MK_TRIANGLE_DOWN_WITH_DOT 25 00136 #define MK_SOLID_TRIANGLE_DOWN 26 00137 #define MK_SOLID_TRIANGLE_DOWN_V 27 00138 #define MK_TRIANGLE_RIGHT 28 00139 #define MK_TRIANGLE_RIGHT_V 29 00140 #define MK_TRIANGLE_RIGHT_WITH_DOT 30 00141 #define MK_SOLID_TRIANGLE_RIGHT 31 00142 #define MK_SOLID_TRIANGLE_RIGHT_V 32 00143 #define MK_TRIANGLE_LEFT 33 00144 #define MK_TRIANGLE_LEFT_V 34 00145 #define MK_TRIANGLE_LEFT_WITH_DOT 35 00146 #define MK_SOLID_TRIANGLE_LEFT 36 00147 #define MK_SOLID_TRIANGLE_LEFT_V 37 00148 #define MK_POUND 38 00149 #define MK_WIDE_PLUS 39 00150 #define MK_OPEN_ARROW 40 00151 #define MK_CLOSED_ARROW 41 00152 #define MK_VERTICAL_BAR 42 00153 #define MK_HALF_ARROW_LEFT 43 00154 #define MK_HALF_ARROW_RIGHT 44 00155 #define MK_WIDE_ARROW 45 00156 #define MK_DOUBLE_ARROW 46 00157 #define MK_LETTER_Y 47 00158 #define MK_LETTER_Z 48 00159 00160 00161 /* HT_Text [block] alignment */ 00162 #define TALIGN_CENTER 0x00 00163 #define TALIGN_LEFT 0x01 00164 #define TALIGN_RIGHT 0x02 00165 #define TALIGN_LOWER 0x04 00166 #define TALIGN_UPPER 0x08 00167 #define TALIGN_INSERTION_POINT 0x10 00168 #define TALIGN_HORIZONTAL_MASK 0x03 00169 #define TALIGN_VERTICAL_MASK 0x0C 00170 #define TALIGN_UNDEFINED 0x7F 00171 00172 #define TA_CENTERCENTER 0x00 00173 #define TA_CENTERLEFT 0x01 00174 #define TA_CENTERRIGHT 0x02 00175 #define TA_LOWERCENTER 0x04 00176 #define TA_LOWERLEFT 0x05 00177 #define TA_LOWERRIGHT 0x06 00178 #define TA_UPPERCENTER 0x08 00179 #define TA_UPPERLEFT 0x09 00180 #define TA_UPPERRIGHT 0x0A 00181 #define TA_INSERTION_POINT 0x10 00182 00183 /* HT_Text justification (string alignment) goes in "extra" */ 00184 #define TJUST_LEFT 0 00185 #define TJUST_RIGHT 1 00186 #define TJUST_CENTER 2 00187 #define TJUST_UNDEFINED 0x0F 00188 00189 00190 00191 /* Fonts */ 00192 #define TIMES_ROMAN 0 00193 #define MAX_FONT 0 00194 00195 # define FT_NOT_VALID 0x00 00196 # define FT_FULL 0x01 00197 # define FT_NONE 0x02 00198 # define FT_POSITION_ONLY 0x03 00199 00200 #define PATTERNS_DEFINED 00201 #endif