From: Darryl L. <py...@us...> - 2000-10-17 06:05:41
|
Update of /cvsroot/pythianproject/PythianProject/Source/Units In directory slayer.i.sourceforge.net:/tmp/cvs-serv25201 Modified Files: glfd.pas Log Message: Fixed up some little things Index: glfd.pas =================================================================== RCS file: /cvsroot/pythianproject/PythianProject/Source/Units/glfd.pas,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** glfd.pas 2000/10/14 19:37:24 1.2 --- glfd.pas 2000/10/17 06:05:28 1.3 *************** *** 23,26 **** --- 23,27 ---- - Kamil Krauspe (main guy) - Michael Hearn (minor changes) + - Darryl Long (teeny little changes) For the Pythian Project *************** *** 60,64 **** //* Font loading/unloading functions */ ! function glfLoadFont(font_name: string): Integer; //* Load font to memory*/ function glfUnloadFont: Integer; //* Unload font from memory */ function glfUnloadFontD(font_descriptor: Integer): Integer; //* Unload font by font_descriptor */ --- 61,65 ---- //* Font loading/unloading functions */ ! function glfLoadFont(const font_name: string): Integer; //* Load font to memory*/ function glfUnloadFont: Integer; //* Unload font from memory */ function glfUnloadFontD(font_descriptor: Integer): Integer; //* Unload font by font_descriptor */ *************** *** 66,90 **** //* Text drawing functions */ procedure glfDrawWiredSymbol(s: Char); //* Draw wired symbol */ ! procedure glfDrawWiredString(s: string); //* Draw wired string */ procedure glfDrawSolidSymbol(s: Char); //* Draw solid symbol */ ! procedure glfDrawSolidString(s: string); //* Draw solid string */ procedure glfDraw3DWiredSymbol(s: Char); //* Draw 3D wired symbol */ ! procedure glfDraw3DWiredString(s: string); //* Draw 3D wired string */ procedure glfDraw3DSolidSymbol(s: Char); //* Draw 3D solid symbol */ ! procedure glfDraw3DSolidString(s: string); //* Draw 3D solid string */ //* Text drawing functions by specified font */ procedure glfDrawWiredSymbolF(font_descriptor: Integer; s: Char); ! procedure glfDrawWiredStringF(font_descriptor: Integer; s: string); procedure glfDrawSolidSymbolF(font_descriptor: Integer; s: Char); ! procedure glfDrawSolidStringF(font_descriptor: Integer; s: string); procedure glfDraw3DWiredSymbolF(font_descriptor: Integer; s: Char); ! procedure glfDraw3DWiredStringF(font_descriptor: Integer; s: string); procedure glfDraw3DSolidSymbolF(font_descriptor: Integer; s: Char); ! procedure glfDraw3DSolidStringF(font_descriptor: Integer; s: string); //* Text control functions */ ! procedure glfGetStringBoundsF(fd: Integer; s: string; var minx, miny, maxx, maxy: Single); ! procedure glfGetStringBounds(s: string; var minx, miny, maxx, maxy: Single); procedure glfSetSymbolSpace(sp: Single); //* Set space between symbols */ --- 67,91 ---- //* Text drawing functions */ procedure glfDrawWiredSymbol(s: Char); //* Draw wired symbol */ ! procedure glfDrawWiredString(const s: string); //* Draw wired string */ procedure glfDrawSolidSymbol(s: Char); //* Draw solid symbol */ ! procedure glfDrawSolidString(const s: string); //* Draw solid string */ procedure glfDraw3DWiredSymbol(s: Char); //* Draw 3D wired symbol */ ! procedure glfDraw3DWiredString(const s: string); //* Draw 3D wired string */ procedure glfDraw3DSolidSymbol(s: Char); //* Draw 3D solid symbol */ ! procedure glfDraw3DSolidString(const s: string); //* Draw 3D solid string */ //* Text drawing functions by specified font */ procedure glfDrawWiredSymbolF(font_descriptor: Integer; s: Char); ! procedure glfDrawWiredStringF(font_descriptor: Integer; const s: string); procedure glfDrawSolidSymbolF(font_descriptor: Integer; s: Char); ! procedure glfDrawSolidStringF(font_descriptor: Integer; const s: string); procedure glfDraw3DWiredSymbolF(font_descriptor: Integer; s: Char); ! procedure glfDraw3DWiredStringF(font_descriptor: Integer; const s: string); procedure glfDraw3DSolidSymbolF(font_descriptor: Integer; s: Char); ! procedure glfDraw3DSolidStringF(font_descriptor: Integer; const s: string); //* Text control functions */ ! procedure glfGetStringBoundsF(fd: Integer; const s: string; var minx, miny, maxx, maxy: Single); ! procedure glfGetStringBounds(const s: string; var minx, miny, maxx, maxy: Single); procedure glfSetSymbolSpace(sp: Single); //* Set space between symbols */ *************** *** 107,114 **** //* Console functions */ procedure glfSetConsoleParam(width, height: Integer); ! function glfSetConsoleFont(Font_Descriptor: Integer): Integer; procedure glfConsoleClear; ! procedure glfPrint(s: string; lenght: Integer); ! procedure glfPrintString(s: string); procedure glfPrintChar(s: Char); --- 108,115 ---- //* Console functions */ procedure glfSetConsoleParam(width, height: Integer); ! function glfSetConsoleFont(Font_Descriptor: Integer): Integer; procedure glfConsoleClear; ! procedure glfPrint(const s: string; lenght: Integer); ! procedure glfPrintString(const s: string); procedure glfPrintChar(s: Char); *************** *** 236,240 **** // 0 - big endian endianTester := 1; ! endianChar := #0; endianChar := Char(endianTester); --- 237,241 ---- // 0 - big endian endianTester := 1; ! // endianChar := #0; endianChar := Char(endianTester); *************** *** 357,361 **** end; ! function glfLoadFont(font_name: string): Integer; var i: Integer; --- 358,362 ---- end; ! function glfLoadFont(const font_name: string): Integer; var i: Integer; *************** *** 393,397 **** // @@mike - FreeAndNil? Don't know about that one. //FreeAndNil(fonts[i]); ! Dispose(fonts[i]); fonts[i] := nil; end; end; --- 394,399 ---- // @@mike - FreeAndNil? Don't know about that one. //FreeAndNil(fonts[i]); ! Dispose(fonts[i]); ! fonts[i] := nil; end; end; *************** *** 489,493 **** end; ! procedure DrawString(s: string; funct: TCharProcedure); var i: Integer; --- 491,495 ---- end; ! procedure DrawString(const s: string; funct: TCharProcedure); var i: Integer; *************** *** 496,506 **** --- 498,512 ---- if s = '' then Exit; + if curfont < 0 then Exit; + glPushMatrix; + for i := 1 to Length(s) do begin if s[i] <> ' ' then funct(s[i]); + if (fonts[curfont]^.symbols[Byte(s[i])] = nil) or (s[i] = ' ') then glTranslatef(SpaceSize, 0, 0) *************** *** 513,516 **** --- 519,523 ---- if fonts[curfont]^.symbols[Byte(s[i+1])] = nil then Continue; + sda := fonts[curfont]^.symbols[Byte(s[i])]^.rightx; sdb := -fonts[curfont]^.symbols[Byte(s[i+1])]^.leftx; *************** *** 519,526 **** end; end; glPopMatrix; end; ! procedure glfDrawWiredString(s: string); begin DrawString(s, glfDrawWiredSymbol); --- 526,534 ---- end; end; + glPopMatrix; end; ! procedure glfDrawWiredString(const s: string); begin DrawString(s, glfDrawWiredSymbol); *************** *** 528,532 **** //* Draw wired string by font_descriptor */ ! procedure glfDrawWiredStringF(font_descriptor: Integer; s: string); var temp: Integer; --- 536,540 ---- //* Draw wired string by font_descriptor */ ! procedure glfDrawWiredStringF(font_descriptor: Integer; const s: string); var temp: Integer; *************** *** 563,568 **** y := vp^[b^[bo]*2+1]; anchor_proc(x, y, ap); if texturing = GLF_YES then ! glTexCoord2f((x+1)/2, (y+1)/2); glVertex2f(x, y); Inc(bo); --- 571,578 ---- y := vp^[b^[bo]*2+1]; anchor_proc(x, y, ap); + if texturing = GLF_YES then ! glTexCoord2f((x + 1) / 2, (y + 1) / 2); ! glVertex2f(x, y); Inc(bo); *************** *** 592,596 **** end; ! procedure glfDrawSolidString(s: string); begin DrawString(s, glfDrawSolidSymbol); --- 602,606 ---- end; ! procedure glfDrawSolidString(const s: string); begin DrawString(s, glfDrawSolidSymbol); *************** *** 598,602 **** //* Draw solid string by font_descriptor */ ! procedure glfDrawSolidStringF(font_descriptor: Integer; s: string); var temp: Integer; --- 608,612 ---- //* Draw solid string by font_descriptor */ ! procedure glfDrawSolidStringF(font_descriptor: Integer; const s: string); var temp: Integer; *************** *** 694,698 **** end; ! procedure glfDraw3DWiredString(s: string); begin DrawString(s, glfDraw3DWiredSymbol); --- 704,708 ---- end; ! procedure glfDraw3DWiredString(const s: string); begin DrawString(s, glfDraw3DWiredSymbol); *************** *** 700,704 **** //* Draw 3D wired string by font_descriptor */ ! procedure glfDraw3DWiredStringF(font_descriptor: Integer; s: string); var temp: Integer; --- 710,714 ---- //* Draw 3D wired string by font_descriptor */ ! procedure glfDraw3DWiredStringF(font_descriptor: Integer; const s: string); var temp: Integer; *************** *** 828,832 **** end; ! procedure glfDraw3DSolidString(s: string); begin DrawString(s, glfDraw3DSolidSymbol); --- 838,842 ---- end; ! procedure glfDraw3DSolidString(const s: string); begin DrawString(s, glfDraw3DSolidSymbol); *************** *** 834,838 **** //* Draw 3D solid string by font_descriptor */ ! procedure glfDraw3DSolidStringF(font_descriptor: Integer; s: string); var temp: Integer; --- 844,848 ---- //* Draw 3D solid string by font_descriptor */ ! procedure glfDraw3DSolidStringF(font_descriptor: Integer; const s: string); var temp: Integer; *************** *** 845,849 **** //* Get the size a string will have on screen */ ! procedure glfGetStringBoundsF(fd: Integer; s: string; var minx, miny, maxx, maxy: Single); var font: Pglf_font; --- 855,859 ---- //* Get the size a string will have on screen */ ! procedure glfGetStringBoundsF(fd: Integer; const s: string; var minx, miny, maxx, maxy: Single); var font: Pglf_font; *************** *** 898,902 **** end; ! procedure glfGetStringBounds(s: string; var minx, miny, maxx, maxy: Single); begin glfGetStringBoundsF(curfont, s, minx, miny, maxx, maxy); --- 908,912 ---- end; ! procedure glfGetStringBounds(const s: string; var minx, miny, maxx, maxy: Single); begin glfGetStringBoundsF(curfont, s, minx, miny, maxx, maxy); *************** *** 986,998 **** procedure glfSetConsoleParam(width, height: Integer); ! var ! e: Integer; begin ! if Length(conData) > 0 then SetLength(conData, 0); conWidth := width; conHeight := height; SetLength(conData, width * height); ! e := Length(conData); glfConsoleClear; end; --- 996,1009 ---- procedure glfSetConsoleParam(width, height: Integer); ! {var ! e: Integer;} begin ! if Length(conData) > 0 then ! SetLength(conData, 0); conWidth := width; conHeight := height; SetLength(conData, width * height); ! // e := Length(conData); glfConsoleClear; end; *************** *** 1015,1021 **** end; ! procedure glfPrint(s: string; lenght: Integer); var ! i, e: Integer; begin for i := 1 to lenght do --- 1026,1032 ---- end; ! procedure glfPrint(const s: string; lenght: Integer); var ! i{, e}: Integer; begin for i := 1 to lenght do *************** *** 1023,1032 **** if s[i] > #31 then begin ! e := Length(conData); conData[cony * conWidth + conx] := s[i]; Inc(conx); ! end else if s[i] = #13 then conx := conWidth; if conx >= conWidth then begin --- 1034,1045 ---- if s[i] > #31 then begin ! // e := Length(conData); conData[cony * conWidth + conx] := s[i]; Inc(conx); ! end ! else if s[i] = #13 then conx := conWidth; + if conx >= conWidth then begin *************** *** 1045,1049 **** end; ! procedure glfPrintString(s: string); begin glfPrint(s, Length(s)); --- 1058,1062 ---- end; ! procedure glfPrintString(const s: string); begin glfPrint(s, Length(s)); |