CMGDK r49-rc2
|
00001 # i f n d e f H G L _ T I L E _ F O N T _ I N C L U D E 00002 00003 # d e f i n e H G L _ T I L E _ F O N T _ I N C L U D E 00004 00005 00006 00007 # i n c l u d e < h g l / o b j e c t / O b j e c t . H > 00008 00009 # i n c l u d e < h g l / 2 d / T i l e D a t a . H > 00010 00011 # i n c l u d e < h g l / t y p e / F i n U s e D a t a . H > 00012 00013 # i n c l u d e < h g l / 2 d / F o n t . H > 00014 00015 # i n c l u d e < h g l / t y p e / R e c t S c o p e . H > 00016 00017 n a m e s p a c e h g l 00018 00019 { 00020 00021 e n u m T e x t A l i g n m e n t ; 00022 00023 00024 00025 / * * 00026 00027 * cHr{t 00028 00029 * / 00030 00031 s t r u c t M a k e u p 00032 00033 { 00034 00035 L i s t < R e c t S c o p e 2 f > S c o p e ; 00036 00037 L i s t < C o l o r 4 f > C o l o r ; 00038 00039 00040 00041 R e c t S c o p e 2 f E n d ; 00042 00043 00044 00045 i n t L e f t ; / / teSOX OPy 00046 00047 i n t T o p ; / / teSOY OPy 00048 00049 00050 00051 i n t W i d t h ; / / e,gWWv[^ 00052 00053 i n t H e i g h t ; / / e,gWWvؚ^ 00054 00055 00056 00057 b o o l U s e C o l o r ; / / O(ȗُvr 00058 00059 00060 00061 p u b l i c : 00062 00063 00064 00065 _ _ i n l i n e R e c t S c o p e 2 f & G e t S c o p e ( i n t n ) 00066 00067 { 00068 00069 i f ( n > = S c o p e . C o u n t ) 00070 00071 r e t u r n E n d ; 00072 00073 e l s e 00074 00075 r e t u r n S c o p e [ n ] ; 00076 00077 } 00078 00079 00080 00081 _ _ i n l i n e i n t G e t O f f s e t ( i n t n ) 00082 00083 { 00084 00085 r e t u r n G e t S c o p e ( n ) . L e f t ; 00086 00087 } 00088 00089 00090 00091 p u b l i c : 00092 00093 00094 00095 M a k e u p ( ) 00096 00097 { 00098 00099 L e f t = T o p = W i d t h = H e i g h t = 0 ; 00100 00101 E n d . S e t ( 0 , 0 , 0 , 0 ) ; 00102 00103 U s e C o l o r = f a l s e ; 00104 00105 } 00106 00107 00108 00109 v o i d S e t C o l o r ( f l o a t r , f l o a t g , f l o a t b , f l o a t a ) 00110 00111 { 00112 00113 i n t n = S c o p e . C o u n t ; 00114 00115 00116 00117 C o l o r . C o u n t = n ; 00118 00119 00120 00121 w h i l e ( n - - ) 00122 00123 C o l o r [ n ] . S e t ( r , g , b , a ) ; 00124 00125 } 00126 00127 00128 00129 v o i d S e t C o l o r ( c o n s t C o l o r 4 f c ) 00130 00131 { 00132 00133 S e t C o l o r ( c . r , c . g , c . b , c . a ) ; 00134 00135 } 00136 00137 00138 00139 v o i d P r o c E n d ( i n t d w ) 00140 00141 { 00142 00143 i f ( S c o p e . C o u n t ) 00144 00145 { 00146 00147 E n d = S c o p e [ S c o p e . C o u n t - 1 ] ; / / S gT N*NW[&{vMOn 00148 00149 00150 00151 E n d . L e f t + = E n d . W i d t h ; / / TTy 00152 00153 E n d . W i d t h = d w ; 00154 00155 00156 00157 H e i g h t = E n d . G e t B o t t o m ( ) ; 00158 00159 } 00160 00161 e l s e 00162 00163 E n d . S e t ( 0 , 0 , d w , 0 ) ; 00164 00165 } 00166 00167 } ; 00168 00169 00170 00171 / * * 00172 00173 * O(uk*NT i l e Nh N*NW[&{v{t!jWW< b r > 00174 00175 * sSSNO(u|~W[SO1uz^[eubW[&{_NSNO(u1u/g6R\O}YvW[SOVGr0 00176 00177 * / 00178 00179 c l a s s T i l e F o n t : p u b l i c F i n U s e D a t a < w c h a r _ t , T i l e O b j e c t * > / / / T i l e W[SO 00180 00181 { 00182 00183 # i n c l u d e < h g l / 2 d / T i l e F o n t . A t t r i b . H > 00184 00185 00186 00187 p u b l i c : / / ^\'` 00188 00189 00190 00191 T i l e D a t a * t i l e _ d a t a ; / / / < T i l e {thV 00192 00193 00194 00195 C o l o r 4 f C o l o r ; / / / < r 00196 00197 00198 00199 V e r t e x 2 f S c a l e ; / / / < )>e 00200 00201 00202 00203 P r o p e r t y < i n t > W i d t h ; / / / < W[SO[^ 00204 00205 P r o p e r t y < i n t > H e i g h t ; / / / < W[SOؚ^ 00206 00207 P r o p e r t y < i n t > L i n e D i s t a n c e ; / / / < Lݍ 00208 00209 00210 00211 u i n t C h a r W i d t h ( w c h a r _ t ) ; / / / < c[W[&{[^ 00212 00213 00214 00215 p u b l i c : 00216 00217 00218 00219 T i l e F o n t ( T i l e D a t a * , i n t ) ; 00220 00221 v i r t u a l ~ T i l e F o n t ( ) ; 00222 00223 00224 00225 f l o a t G e t S t r i n g W i d t h ( c o n s t w c h a r _ t * , i n t = - 1 ) ; / / / < BlW[&{2N[^ 00226 00227 00228 00229 f l o a t D r a w C h a r ( f l o a t , f l o a t , c o n s t w c h a r _ t ) ; / / / < ~6R N*NW[&{ 00230 00231 00232 00233 f l o a t D r a w S t r i n g ( f l o a t , f l o a t , c o n s t w c h a r _ t * , i n t = - 1 ) ; / / / < ~6R N*NW[&{2N, SP6RW[pe, v^NYt\ n 00234 00235 v o i d D r a w S t r i n g S c o p e ( f l o a t , f l o a t , c o n s t w c h a r _ t * , i n t ) ; / / / < ~6R N*NW[&{2N, SP6R[^, 00236 NYt\ n 00237 00238 f l o a t D r a w F o r m a t ( f l o a t , f l o a t , c o n s t w c h a r _ t * , . . . ) ; / / / < ~6R N*N<h_SvW[&{2N 00239 00240 00241 00242 f l o a t D r a w S t r i n g ( f l o a t x , f l o a t y , c o n s t C o l o r 3 f & c , f l o a t a , c o n s t w c h a r _ t * s t r , i n t l i m i t = - 1 ) { C o l o r . M e r g e A l p h a ( c , a ) ; r e t u r n ( D r a w S t r i n g ( x , y , s t r , l i m i t ) ) ; } 00243 00244 f l o a t D r a w S t r i n g ( f l o a t x , f l o a t y , c o n s t C o l o r 4 f & c , c o n s t w c h a r _ t * s t r , i n t l i m i t = - 1 ) { C o l o r = c ; r e t u r n ( D r a w S t r i n g ( x , y , s t r , l i m i t ) ) ; } 00245 00246 f l o a t D r a w S t r i n g ( f l o a t x , f l o a t y , c o n s t C o l o r 4 f & c , f l o a t a , c o n s t w c h a r _ t * s t r , i n t l i m i t = - 1 ) { C o l o r = c ; C o l o r . a * = a ; r e t u r n ( D r a w S t r i n g ( x , y , s t r , l i m i t ) ) ; } 00247 00248 00249 00250 f l o a t D r a w F o r m a t ( f l o a t x , f l o a t y , c o n s t C o l o r 3 f & c , f l o a t a , c o n s t w c h a r _ t * s t r , i n t l i m i t = - 1 ) { C o l o r . M e r g e A l p h a ( c , a ) ; r e t u r n ( D r a w F o r m a t ( x , y , s t r , l i m i t ) ) ; } 00251 00252 f l o a t D r a w F o r m a t ( f l o a t x , f l o a t y , c o n s t C o l o r 4 f & c , c o n s t w c h a r _ t * s t r , i n t l i m i t = - 1 ) { C o l o r = c ; r e t u r n ( D r a w F o r m a t ( x , y , s t r , l i m i t ) ) ; } 00253 00254 f l o a t D r a w F o r m a t ( f l o a t x , f l o a t y , c o n s t C o l o r 4 f & c , f l o a t a , c o n s t w c h a r _ t * s t r , i n t l i m i t = - 1 ) { C o l o r = c ; C o l o r . a * = a ; r e t u r n ( D r a w F o r m a t ( x , y , s t r , l i m i t ) ) ; } 00255 00256 00257 00258 p u b l i c : 00259 00260 00261 00262 v o i d D r a w S t r i n g ( f l o a t , f l o a t , M a k e u p & , c o n s t w c h a r _ t * , i n t = - 1 ) ; / / / < 9hnccHrۏL~6R 00263 00264 v o i d D r a w S t r i n g ( M a k e u p & m a k e u p , c o n s t w c h a r _ t * s t r , i n t l i m i t = - 1 ) / / / < 9hnccHrۏL~6R 00265 00266 { D r a w S t r i n g ( 0 , 0 , m a k e u p , s t r , l i m i t ) ; } 00267 00268 00269 00270 v o i d M a k e u p S t r i n g ( L i s t < R e c t S c o p e 2 f > & , i n t , i n t , c o n s t w c h a r _ t * , i n t ) ; / / / < cHrW[&{2N 00271 00272 v o i d M a k e u p S t r i n g ( M a k e u p & , c o n s t w c h a r _ t * , i n t = - 1 ) ; / / / < cHrW[&{2N 00273 00274 v o i d M a k e u p S t r i n g ( M a k e u p & , c o n s t w c h a r _ t * , i n t , T e x t A l i g n m e n t ) ; / / / < cHrW[&{2N 00275 00276 } ; 00277 00278 00279 00280 T i l e F o n t * C r e a t e T i l e F o n t ( F o n t & , F o n t & , i n t = - 1 ) ; / / / < R^ N*NW[SO, O(u|~W[SO 00281 00282 00283 00284 / * * 00285 00286 * Ǐ|~W[SOR^ N*NT i l e W[SO 00287 00288 * @ p a r a m c h s _ f o n t n a m e -NeW[SO 00289 Ty 00290 00291 * @ p a r a m e n g _ f o n t n a m e eW[SO 00292 Ty 00293 00294 * @ p a r a m w i d t h [, SN:N0 , h:y؞0 00295 00296 * @ p a r a m h e i g h t ؚ 00297 00298 * @ p a r a m b o l d R|, ؞f a l s e 00299 00300 * @ p a r a m i t a l i c eSO, ؞f a l s e 00301 00302 * @ p a r a m c o u n t Q:SQOX[vW[&{*Npe 00303 00304 * / 00305 00306 _ _ i n l i n e T i l e F o n t * C r e a t e T i l e F o n t ( c o n s t w c h a r _ t * c h s _ f o n t n a m e , c o n s t w c h a r _ t * e n g _ f o n t n a m e , i n t w i d t h , i n t h e i g h t , b o o l b o l d , b o o l i t a l i c , i n t c o u n t ) 00307 00308 { 00309 00310 F o n t c h s _ f n t ( c h s _ f o n t n a m e , w i d t h , h e i g h t , b o l d , i t a l i c ) ; 00311 00312 F o n t e n g _ f n t ( e n g _ f o n t n a m e , w i d t h , h e i g h t , b o l d , i t a l i c ) ; 00313 00314 00315 00316 r e t u r n C r e a t e T i l e F o n t ( c h s _ f n t , e n g _ f n t , c o u n t ) ; 00317 00318 } 00319 00320 00321 00322 / * * 00323 00324 * Ǐ|~W[SOR^ N*NT i l e W[SO, -NeW[SOvT 00325 00326 * @ p a r a m f o n t n a m e W[SO 00327 Ty 00328 00329 * @ p a r a m w i d t h [, SN:N0 , h:y؞0 00330 00331 * @ p a r a m h e i g h t ؚ 00332 00333 * @ p a r a m b o l d R|, ؞f a l s e 00334 00335 * @ p a r a m i t a l i c eSO, ؞f a l s e 00336 00337 * @ p a r a m c o u n t Q:SQOX[vW[&{*Npe 00338 00339 * / 00340 00341 _ _ i n l i n e T i l e F o n t * C r e a t e T i l e F o n t ( c o n s t w c h a r _ t * f o n t n a m e , i n t w i d t h , i n t h e i g h t , b o o l b o l d = f a l s e , b o o l i t a l i c = f a l s e , i n t n u m = - 1 ) 00342 00343 { 00344 00345 r e t u r n C r e a t e T i l e F o n t ( f o n t n a m e , f o n t n a m e , w i d t h , h e i g h t , b o l d , i t a l i c , n u m ) ; 00346 00347 } 00348 00349 00350 00351 / * * 00352 00353 * Ǐ|~W[SOR^ N*NT i l e W[SO, eeSOeR| 00354 00355 * @ p a r a m c h s _ f o n t n a m e -NeW[SO 00356 Ty 00357 00358 * @ p a r a m e n g _ f o n t n a m e eW[SO 00359 Ty 00360 00361 * @ p a r a m w i d t h [, SN:N0 , h:y؞0 00362 00363 * @ p a r a m h e i g h t ؚ 00364 00365 * @ p a r a m c o u n t Q:SQOX[vW[&{*Npe 00366 00367 * / 00368 00369 _ _ i n l i n e T i l e F o n t * C r e a t e T i l e F o n t ( c o n s t w c h a r _ t * c h s _ f o n t n a m e , c o n s t w c h a r _ t * e n g _ f o n t n a m e , i n t w i d t h , i n t h e i g h t , i n t n u m = - 1 ) 00370 00371 { 00372 00373 r e t u r n C r e a t e T i l e F o n t ( c h s _ f o n t n a m e , e n g _ f o n t n a m e , w i d t h , h e i g h t , f a l s e , f a l s e , n u m ) ; 00374 00375 } 00376 00377 } / / n a m e s p a c e h g l 00378 00379 # e n d i f / / H G L _ T I L E _ F O N T _ I N C L U D E 00380 00381