Changeset 456 for trunk/Packages
- Timestamp:
- May 30, 2023, 11:31:10 AM (18 months ago)
- Location:
- trunk/Packages
- Files:
-
- 7 added
- 5 edited
- 1 copied
- 52 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/Packages/CevoComponents/CevoComponents.lpk
r396 r456 1 1 <?xml version="1.0" encoding="UTF-8"?> 2 2 <CONFIG> 3 <Package Version=" 4">3 <Package Version="5"> 4 4 <PathDelim Value="\"/> 5 5 <Name Value="CevoComponents"/> … … 103 103 </Item14> 104 104 <Item15> 105 <Filename Value=" UGraphicSet.pas"/>106 <UnitName Value=" UGraphicSet"/>105 <Filename Value="GraphicSet.pas"/> 106 <UnitName Value="GraphicSet"/> 107 107 </Item15> 108 108 <Item16> 109 <Filename Value=" UTexture.pas"/>110 <UnitName Value=" UTexture"/>109 <Filename Value="Texture.pas"/> 110 <UnitName Value="Texture"/> 111 111 </Item16> 112 112 </Files> 113 <CompatibilityMode Value="True"/> 113 114 <RequiredPkgs Count="3"> 114 115 <Item1> -
trunk/Packages/CevoComponents/CevoComponents.pas
r447 r456 10 10 uses 11 11 Area, ButtonA, ButtonB, ButtonC, ButtonN, EOTButton, ButtonBase, DrawDlg, 12 Sound, BaseWin, AsyncProcess2, UGraphicSet, UTexture, LazarusPackageIntf;12 Sound, BaseWin, AsyncProcess2, GraphicSet, Texture, LazarusPackageIntf; 13 13 14 14 implementation … … 29 29 RegisterPackage('CevoComponents', @Register); 30 30 end. 31 -
trunk/Packages/CevoComponents/GraphicSet.pas
r455 r456 1 unit UGraphicSet;1 unit GraphicSet; 2 2 3 3 interface 4 4 5 5 uses 6 Classes, SysUtils, Graphics, Generics.Collections, LCLType, UPixelPointer,DOM,7 XMLRead, XMLWrite, UXMLUtils;6 Classes, SysUtils, Graphics, Generics.Collections, LCLType, DOM, 7 XMLRead, XMLWrite, XML; 8 8 9 9 type -
trunk/Packages/CevoComponents/ScreenTools.pas
r447 r456 8 8 {$ENDIF} 9 9 StringTables, LCLIntf, LCLType, SysUtils, Classes, Graphics, Controls, Math, 10 Forms, Menus, GraphType, UGraphicSet, LazFileUtils, UTexture;10 Forms, Menus, GraphType, GraphicSet, LazFileUtils, Texture; 11 11 12 12 type … … 24 24 function TurnToString(Turn: Integer): string; 25 25 function MovementToString(Movement: Integer): string; 26 procedure BtnFrame( ca: TCanvas; P: TRect; T: TTexture);27 procedure EditFrame( ca: TCanvas; P: TRect; T: TTexture);26 procedure BtnFrame(Canvas: TCanvas; P: TRect; T: TTexture); 27 procedure EditFrame(Canvas: TCanvas; P: TRect; T: TTexture); 28 28 function HexStringToColor(S: string): Integer; 29 29 function ExtractFileNameWithoutExt(const Filename: string): string; … … 54 54 function BitBltBitmap(Dest: TBitmap; DestRect: TRect; 55 55 Src: TBitmap; SrcPos: TPoint; Rop: DWORD = SRCCOPY): Boolean; overload; 56 procedure SLine( ca: TCanvas; x0, x1, Y: Integer; cl: TColor);57 procedure DLine( ca: TCanvas; x0, x1, Y: Integer; cl0, cl1: TColor);58 procedure Frame( ca: TCanvas; x0, y0, x1, y1: Integer; cl0, cl1: TColor);59 procedure RFrame( ca: TCanvas; x0, y0, x1, y1: Integer; cl0, cl1: TColor);60 procedure CFrame( ca: TCanvas; x0, y0, x1, y1, Corner: Integer; cl: TColor);61 procedure FrameImage( ca: TCanvas; Src: TBitmap;56 procedure SLine(Canvas: TCanvas; x0, x1, Y: Integer; cl: TColor); 57 procedure DLine(Canvas: TCanvas; x0, x1, Y: Integer; cl0, cl1: TColor); 58 procedure Frame(Canvas: TCanvas; x0, y0, x1, y1: Integer; cl0, cl1: TColor); 59 procedure RFrame(Canvas: TCanvas; x0, y0, x1, y1: Integer; cl0, cl1: TColor); 60 procedure CFrame(Canvas: TCanvas; x0, y0, x1, y1, Corner: Integer; cl: TColor); 61 procedure FrameImage(Canvas: TCanvas; Src: TBitmap; 62 62 X, Y, Width, Height, xSrc, ySrc: Integer; IsControl: Boolean = False); 63 63 procedure GlowFrame(Dst: TBitmap; x0, y0, Width, Height: Integer; cl: TColor); 64 64 procedure InitOrnament; 65 procedure InitCityMark(T : TTexture);66 procedure Fill( ca: TCanvas; Left, Top, Width, Height, xOffset, yOffset: Integer); overload;65 procedure InitCityMark(Texture: TTexture); 66 procedure Fill(Canvas: TCanvas; Left, Top, Width, Height, xOffset, yOffset: Integer); overload; 67 67 procedure Fill(Canvas: TCanvas; Rect: TRect; Offset: TPoint); overload; 68 procedure FillLarge( ca: TCanvas; x0, y0, x1, y1, xm: Integer);69 procedure FillSeamless( ca: TCanvas; Left, Top, Width, Height, xOffset, yOffset: Integer;68 procedure FillLarge(Canvas: TCanvas; x0, y0, x1, y1, xm: Integer); 69 procedure FillSeamless(Canvas: TCanvas; Left, Top, Width, Height, xOffset, yOffset: Integer; 70 70 const Texture: TBitmap); 71 procedure FillRectSeamless( ca: TCanvas; x0, y0, x1, y1, xOffset, yOffset: Integer;71 procedure FillRectSeamless(Canvas: TCanvas; x0, y0, x1, y1, xOffset, yOffset: Integer; 72 72 const Texture: TBitmap); 73 73 procedure PaintBackground(Form: TForm; Left, Top, Width, Height: Integer); 74 procedure Corner( ca: TCanvas; X, Y, Kind: Integer; T: TTexture);75 procedure BiColorTextOut( ca: TCanvas; clMain, clBack: TColor; X, Y: Integer; S: string);76 procedure LoweredTextOut( ca: TCanvas; cl: TColor; T: TTexture;74 procedure Corner(Canvas: TCanvas; X, Y, Kind: Integer; T: TTexture); 75 procedure BiColorTextOut(Canvas: TCanvas; clMain, clBack: TColor; X, Y: Integer; S: string); 76 procedure LoweredTextOut(Canvas: TCanvas; cl: TColor; T: TTexture; 77 77 X, Y: Integer; S: string); 78 function BiColorTextWidth( ca: TCanvas; S: string): Integer;79 procedure RisedTextOut( ca: TCanvas; X, Y: Integer; S: string);80 procedure LightGradient( ca: TCanvas; X, Y, Width, Color: Integer);81 procedure DarkGradient( ca: TCanvas; X, Y, Width, Kind: Integer);82 procedure VLightGradient( ca: TCanvas; X, Y, Height, Color: Integer);83 procedure VDarkGradient( ca: TCanvas; X, Y, Height, Kind: Integer);78 function BiColorTextWidth(Canvas: TCanvas; S: string): Integer; 79 procedure RisedTextOut(Canvas: TCanvas; X, Y: Integer; S: string); 80 procedure LightGradient(Canvas: TCanvas; X, Y, Width, Color: Integer); 81 procedure DarkGradient(Canvas: TCanvas; X, Y, Width, Kind: Integer); 82 procedure VLightGradient(Canvas: TCanvas; X, Y, Height, Color: Integer); 83 procedure VDarkGradient(Canvas: TCanvas; X, Y, Height, Kind: Integer); 84 84 procedure UnderlinedTitleValue(Canvas: TCanvas; Title, Value: string; X, Y, Width: Integer); 85 85 procedure NumberBar(dst: TBitmap; X, Y: Integer; Cap: string; val: Integer; … … 87 87 procedure CountBar(dst: TBitmap; X, Y, W: Integer; Kind: Integer; 88 88 Cap: string; val: Integer; T: TTexture); 89 procedure PaintProgressBar( ca: TCanvas; Kind, X, Y, Pos, Growth, Max: Integer;89 procedure PaintProgressBar(Canvas: TCanvas; Kind, X, Y, Pos, Growth, Max: Integer; 90 90 T: TTexture); 91 procedure PaintRelativeProgressBar( ca: TCanvas;91 procedure PaintRelativeProgressBar(Canvas: TCanvas; 92 92 Kind, X, Y, size, Pos, Growth, Max: Integer; IndicateComplete: Boolean; 93 93 T: TTexture); … … 199 199 200 200 uses 201 Directories, Sound, UPixelPointer;201 Directories, Sound, PixelPointer; 202 202 203 203 var … … 318 318 end; 319 319 320 procedure BtnFrame( ca: TCanvas; P: TRect; T: TTexture);321 begin 322 RFrame( ca, P.Left - 1, P.Top - 1, P.Right, P.Bottom, T.ColorBevelShade,320 procedure BtnFrame(Canvas: TCanvas; P: TRect; T: TTexture); 321 begin 322 RFrame(Canvas, P.Left - 1, P.Top - 1, P.Right, P.Bottom, T.ColorBevelShade, 323 323 T.ColorBevelLight); 324 324 end; 325 325 326 procedure EditFrame( ca: TCanvas; P: TRect; T: TTexture);327 begin 328 Frame( ca, P.Left - 1, P.Top - 1, P.Right, P.Bottom, $000000, $000000);329 Frame( ca, P.Left - 2, P.Top - 2, P.Right + 1, P.Bottom + 1, $000000, $000000);330 Frame( ca, P.Left - 3, P.Top - 3, P.Right + 2, P.Bottom + 1, $000000, $000000);331 RFrame( ca, P.Left - 4, P.Top - 4, P.Right + 3, P.Bottom + 2, T.ColorBevelShade,326 procedure EditFrame(Canvas: TCanvas; P: TRect; T: TTexture); 327 begin 328 Frame(Canvas, P.Left - 1, P.Top - 1, P.Right, P.Bottom, $000000, $000000); 329 Frame(Canvas, P.Left - 2, P.Top - 2, P.Right + 1, P.Bottom + 1, $000000, $000000); 330 Frame(Canvas, P.Left - 3, P.Top - 3, P.Right + 2, P.Bottom + 1, $000000, $000000); 331 RFrame(Canvas, P.Left - 4, P.Top - 4, P.Right + 3, P.Bottom + 2, T.ColorBevelShade, 332 332 T.ColorBevelLight); 333 333 end; … … 371 371 begin 372 372 Bitmap.BeginUpdate; 373 PixelPtr := PixelPointer(Bitmap);373 PixelPtr := TPixelPointer.Create(Bitmap); 374 374 for Y := 0 to ScaleToNative(Bitmap.Height) - 1 do begin 375 375 for X := 0 to ScaleToNative(Bitmap.Width) - 1 do begin … … 388 388 begin 389 389 //Dst.SetSize(Src.Width, Src.Height); 390 SrcPtr := PixelPointer(Src);391 DstPtr := PixelPointer(Dst);390 SrcPtr := TPixelPointer.Create(Src); 391 DstPtr := TPixelPointer.Create(Dst); 392 392 for Y := 0 to ScaleToNative(Src.Height - 1) do begin 393 393 for X := 0 to ScaleToNative(Src.Width - 1) do begin … … 520 520 Result.Data.BeginUpdate; 521 521 Result.Mask.BeginUpdate; 522 DataPixel := PixelPointer(Result.Data);523 MaskPixel := PixelPointer(Result.Mask);522 DataPixel := TPixelPointer.Create(Result.Data); 523 MaskPixel := TPixelPointer.Create(Result.Mask); 524 524 for Y := 0 to ScaleToNative(Result.Data.Height) - 1 do begin 525 525 for X := 0 to ScaleToNative(Result.Data.Width) - 1 do begin … … 564 564 begin 565 565 Dst.BeginUpdate; 566 PixelPtr := PixelPointer(Dst, ScaleToNative(X), ScaleToNative(Y));566 PixelPtr := TPixelPointer.Create(Dst, ScaleToNative(X), ScaleToNative(Y)); 567 567 for YY := 0 to ScaleToNative(Height) - 1 do begin 568 568 for XX := 0 to ScaleToNative(Width) - 1 do begin … … 583 583 begin 584 584 Dst.BeginUpdate; 585 PixelPtr := PixelPointer(Dst, ScaleToNative(X), ScaleToNative(Y));585 PixelPtr := TPixelPointer.Create(Dst, ScaleToNative(X), ScaleToNative(Y)); 586 586 for yy := 0 to ScaleToNative(Height) - 1 do begin 587 587 for xx := 0 to ScaleToNative(Width) - 1 do begin … … 603 603 begin 604 604 Dst.BeginUpdate; 605 PixelPtr := PixelPointer(Dst, ScaleToNative(X), ScaleToNative(Y));605 PixelPtr := TPixelPointer.Create(Dst, ScaleToNative(X), ScaleToNative(Y)); 606 606 for YY := 0 to ScaleToNative(Height) - 1 do begin 607 607 for XX := 0 to ScaleToNative(Width) - 1 do begin … … 654 654 dst.BeginUpdate; 655 655 Src.BeginUpdate; 656 PixelDst := PixelPointer(Dst, xDst, yDst);657 PixelSrc := PixelPointer(Src, xSrc, ySrc);656 PixelDst := TPixelPointer.Create(Dst, xDst, yDst); 657 PixelSrc := TPixelPointer.Create(Src, xSrc, ySrc); 658 658 for Y := 0 to Height - 1 do begin 659 659 for X := 0 to Width - 1 do begin … … 720 720 Src.BeginUpdate; 721 721 dst.BeginUpdate; 722 SrcPixel := PixelPointer(Src, xSrc, ySrc);723 DstPixel := PixelPointer(Dst, xDst, yDst);722 SrcPixel := TPixelPointer.Create(Src, xSrc, ySrc); 723 DstPixel := TPixelPointer.Create(Dst, xDst, yDst); 724 724 for iy := 0 to Height - 1 do begin 725 725 for ix := 0 to Width - 1 do begin … … 777 777 Src.BeginUpdate; 778 778 Dst.BeginUpdate; 779 SrcPixel := PixelPointer(Src, xSrc, ySrc);780 DstPixel := PixelPointer(Dst, xDst, yDst);779 SrcPixel := TPixelPointer.Create(Src, xSrc, ySrc); 780 DstPixel := TPixelPointer.Create(Dst, xDst, yDst); 781 781 for iy := 0 to Height - 1 do begin 782 782 for ix := 0 to Width - 1 do begin … … 823 823 Assert(bmp.PixelFormat = pf24bit); 824 824 Height := Y + Height; 825 PixelPtr := PixelPointer(Bmp, X, Y);825 PixelPtr := TPixelPointer.Create(Bmp, X, Y); 826 826 while Y < Height do begin 827 827 for I := 0 to Width - 1 do begin … … 890 890 end; 891 891 892 procedure SLine( ca: TCanvas; x0, x1, Y: Integer; cl: TColor);893 begin 894 with cado begin892 procedure SLine(Canvas: TCanvas; x0, x1, Y: Integer; cl: TColor); 893 begin 894 with Canvas do begin 895 895 Pen.Color := cl; 896 896 MoveTo(x0, Y); … … 899 899 end; 900 900 901 procedure DLine( ca: TCanvas; x0, x1, Y: Integer; cl0, cl1: TColor);902 begin 903 with cado begin901 procedure DLine(Canvas: TCanvas; x0, x1, Y: Integer; cl0, cl1: TColor); 902 begin 903 with Canvas do begin 904 904 Pen.Color := cl0; 905 905 MoveTo(x0, Y); … … 913 913 end; 914 914 915 procedure Frame( ca: TCanvas; x0, y0, x1, y1: Integer; cl0, cl1: TColor);916 begin 917 with cado begin915 procedure Frame(Canvas: TCanvas; x0, y0, x1, y1: Integer; cl0, cl1: TColor); 916 begin 917 with Canvas do begin 918 918 MoveTo(x0, y1); 919 919 Pen.Color := cl0; … … 926 926 end; 927 927 928 procedure RFrame( ca: TCanvas; x0, y0, x1, y1: Integer; cl0, cl1: TColor);929 begin 930 with cado begin928 procedure RFrame(Canvas: TCanvas; x0, y0, x1, y1: Integer; cl0, cl1: TColor); 929 begin 930 with Canvas do begin 931 931 Pen.Color := cl0; 932 932 MoveTo(x0, y0 + 1); … … 942 942 end; 943 943 944 procedure CFrame( ca: TCanvas; x0, y0, x1, y1, Corner: Integer; cl: TColor);945 begin 946 with cado begin944 procedure CFrame(Canvas: TCanvas; x0, y0, x1, y1, Corner: Integer; cl: TColor); 945 begin 946 with Canvas do begin 947 947 Pen.Color := cl; 948 948 MoveTo(x0, y0 + Corner - 1); … … 961 961 end; 962 962 963 procedure FrameImage( ca: TCanvas; Src: TBitmap;963 procedure FrameImage(Canvas: TCanvas; Src: TBitmap; 964 964 X, Y, Width, Height, xSrc, ySrc: Integer; IsControl: Boolean = False); 965 965 begin 966 966 if IsControl then begin 967 Frame( ca, X - 1, Y - 1, X + Width, Y + Height, $B0B0B0, $FFFFFF);968 RFrame( ca, X - 2, Y - 2, X + Width + 1, Y + Height + 1, $FFFFFF, $B0B0B0);967 Frame(Canvas, X - 1, Y - 1, X + Width, Y + Height, $B0B0B0, $FFFFFF); 968 RFrame(Canvas, X - 2, Y - 2, X + Width + 1, Y + Height + 1, $FFFFFF, $B0B0B0); 969 969 end else 970 Frame( ca, X - 1, Y - 1, X + Width, Y + Height, $000000, $000000);971 BitBltCanvas( ca, X, Y, Width, Height, Src.Canvas, xSrc, ySrc);970 Frame(Canvas, X - 1, Y - 1, X + Width, Y + Height, $000000, $000000); 971 BitBltCanvas(Canvas, X, Y, Width, Height, Src.Canvas, xSrc, ySrc); 972 972 end; 973 973 … … 984 984 Height := ScaleToNative(Height); 985 985 Dst.BeginUpdate; 986 DstPtr := PixelPointer(Dst, x0 - DpiGlowRange + 1, y0 - DpiGlowRange + 1);986 DstPtr := TPixelPointer.Create(Dst, x0 - DpiGlowRange + 1, y0 - DpiGlowRange + 1); 987 987 for Y := -DpiGlowRange + 1 to Height - 1 + DpiGlowRange - 1 do begin 988 988 for X := -DpiGlowRange + 1 to Width - 1 + DpiGlowRange - 1 do begin … … 1036 1036 MainTexture.ColorBevelLight and $FCFCFC shr 2); 1037 1037 HGrSystem2.Data.BeginUpdate; 1038 PixelPtr := PixelPointer(HGrSystem2.Data, ScaleToNative(Ornament.Left),1038 PixelPtr := TPixelPointer.Create(HGrSystem2.Data, ScaleToNative(Ornament.Left), 1039 1039 ScaleToNative(Ornament.Top)); 1040 1040 if PixelPtr.BytesPerPixel = 3 then begin … … 1063 1063 end; 1064 1064 1065 procedure InitCityMark(T : TTexture);1065 procedure InitCityMark(Texture: TTexture); 1066 1066 var 1067 1067 X: Integer; … … 1076 1076 X, CityMark1.Top + Y] and $FF; 1077 1077 HGrSystem.Data.Canvas.Pixels[CityMark2.Left + X, CityMark2.Top + Y] := 1078 T .ColorMark and $FF * Intensity div $FF + T.ColorMark shr 8 and1079 $FF * Intensity div $FF shl 8 + T .ColorMark shr 16 and1078 Texture.ColorMark and $FF * Intensity div $FF + Texture.ColorMark shr 8 and 1079 $FF * Intensity div $FF shl 8 + Texture.ColorMark shr 16 and 1080 1080 $FF * Intensity div $FF shl 16; 1081 1081 end; … … 1086 1086 end; 1087 1087 1088 procedure Fill( ca: TCanvas; Left, Top, Width, Height, xOffset, yOffset: Integer);1089 begin 1090 Assert((Left + xOffset >= 0) and (Left + xOffset + Width <= MainTexture.Width) and1091 (Top + yOffset >= 0) and (Top + yOffset + Height <= MainTexture.Height));1092 BitBltCanvas( ca, Left, Top, Width, Height, MainTexture.Image.Canvas,1088 procedure Fill(Canvas: TCanvas; Left, Top, Width, Height, xOffset, yOffset: Integer); 1089 begin 1090 //Assert((Left + xOffset >= 0) and (Left + xOffset + Width <= MainTexture.Width) and 1091 // (Top + yOffset >= 0) and (Top + yOffset + Height <= MainTexture.Height)); 1092 BitBltCanvas(Canvas, Left, Top, Width, Height, MainTexture.Image.Canvas, 1093 1093 Left + xOffset, Top + yOffset); 1094 1094 end; … … 1099 1099 end; 1100 1100 1101 procedure FillLarge( ca: TCanvas; x0, y0, x1, y1, xm: Integer);1101 procedure FillLarge(Canvas: TCanvas; x0, y0, x1, y1, xm: Integer); 1102 1102 1103 1103 function Band(I: Integer): Integer; … … 1117 1117 begin 1118 1118 for I := 0 to (x1 - xm) div MainTexture.Width - 1 do 1119 BitBltCanvas( ca, xm + I * MainTexture.Width, y0, MainTexture.Width, y1 - y0,1119 BitBltCanvas(Canvas, xm + I * MainTexture.Width, y0, MainTexture.Width, y1 - y0, 1120 1120 MainTexture.Image.Canvas, 0, MainTexture.Height div 2 + Band(I) * 1121 1121 (y1 - y0)); 1122 BitBltCanvas( ca, xm + ((x1 - xm) div MainTexture.Width) * MainTexture.Width, y0,1122 BitBltCanvas(Canvas, xm + ((x1 - xm) div MainTexture.Width) * MainTexture.Width, y0, 1123 1123 x1 - (xm + ((x1 - xm) div MainTexture.Width) * MainTexture.Width), y1 - y0, 1124 1124 MainTexture.Image.Canvas, 0, MainTexture.Height div 2 + Band( 1125 1125 (x1 - xm) div MainTexture.Width) * (y1 - y0)); 1126 1126 for I := 0 to (xm - x0) div MainTexture.Width - 1 do 1127 BitBltCanvas( ca, xm - (I + 1) * MainTexture.Width, y0, MainTexture.Width, y1 - y0,1127 BitBltCanvas(Canvas, xm - (I + 1) * MainTexture.Width, y0, MainTexture.Width, y1 - y0, 1128 1128 MainTexture.Image.Canvas, 0, MainTexture.Height div 2 + 1129 1129 Band(-I - 1) * (y1 - y0)); 1130 BitBltCanvas( ca, x0, y0, xm - ((xm - x0) div MainTexture.Width) *1130 BitBltCanvas(Canvas, x0, y0, xm - ((xm - x0) div MainTexture.Width) * 1131 1131 MainTexture.Width - x0, y1 - y0, MainTexture.Image.Canvas, 1132 1132 ((xm - x0) div MainTexture.Width + 1) * MainTexture.Width - (xm - x0), … … 1134 1134 end; 1135 1135 1136 procedure FillSeamless( ca: TCanvas; Left, Top, Width, Height, xOffset, yOffset: Integer;1136 procedure FillSeamless(Canvas: TCanvas; Left, Top, Width, Height, xOffset, yOffset: Integer; 1137 1137 const Texture: TBitmap); 1138 1138 var … … 1161 1161 if x1cut < 0 then 1162 1162 x1cut := 0; 1163 BitBltCanvas( ca, X * Texture.Width + x0cut - xOffset,1163 BitBltCanvas(Canvas, X * Texture.Width + x0cut - xOffset, 1164 1164 Y * Texture.Height + y0cut - yOffset, Texture.Width - x0cut - x1cut, 1165 1165 Texture.Height - y0cut - y1cut, Texture.Canvas, x0cut, y0cut); … … 1168 1168 end; 1169 1169 1170 procedure FillRectSeamless( ca: TCanvas; x0, y0, x1, y1, xOffset, yOffset: Integer;1170 procedure FillRectSeamless(Canvas: TCanvas; x0, y0, x1, y1, xOffset, yOffset: Integer; 1171 1171 const Texture: TBitmap); 1172 1172 begin 1173 FillSeamless( ca, x0, y0, x1 - x0, y1 - y0, xOffset, yOffset, Texture);1173 FillSeamless(Canvas, x0, y0, x1 - x0, y1 - y0, xOffset, yOffset, Texture); 1174 1174 end; 1175 1175 … … 1180 1180 end; 1181 1181 1182 procedure Corner( ca: TCanvas; X, Y, Kind: Integer; T: TTexture);1183 begin 1184 { BitBltCanvas( ca,x,y,8,8,T.HGr.Mask.Canvas,1182 procedure Corner(Canvas: TCanvas; X, Y, Kind: Integer; T: TTexture); 1183 begin 1184 { BitBltCanvas(Canvas,x,y,8,8,T.HGr.Mask.Canvas, 1185 1185 T.xGr+29+Kind*9,T.yGr+89,SRCAND); 1186 BitBltCanvas( ca,X,Y,8,8,T.HGr.Data.Canvas,1186 BitBltCanvas(Canvas,X,Y,8,8,T.HGr.Data.Canvas, 1187 1187 T.xGr+29+Kind*9,T.yGr+89,SRCPAINT); } 1188 1188 end; 1189 1189 1190 procedure BiColorTextOut( ca: TCanvas; clMain, clBack: TColor; X, Y: Integer; S: string);1190 procedure BiColorTextOut(Canvas: TCanvas; clMain, clBack: TColor; X, Y: Integer; S: string); 1191 1191 1192 1192 procedure PaintIcon(X, Y, Kind: Integer); 1193 1193 begin 1194 BitBltCanvas( ca, X, Y + 6, 10, 10, HGrSystem.Mask.Canvas,1194 BitBltCanvas(Canvas, X, Y + 6, 10, 10, HGrSystem.Mask.Canvas, 1195 1195 66 + Kind mod 11 * 11, 115 + Kind div 11 * 11, SRCAND); 1196 BitBltCanvas( ca, X, Y + 6, 10, 10, HGrSystem.Data.Canvas,1196 BitBltCanvas(Canvas, X, Y + 6, 10, 10, HGrSystem.Data.Canvas, 1197 1197 66 + Kind mod 11 * 11, 115 + Kind div 11 * 11, SRCPAINT); 1198 1198 end; … … 1207 1207 Inc(Y); 1208 1208 for shadow := True downto False do 1209 with cado1209 with Canvas do 1210 1210 if not shadow or (clBack <> $7F007F) then 1211 1211 begin … … 1221 1221 (sp[P + 1] in ['c', 'f', 'l', 'm', 'n', 'o', 'p', 'r', 't', 'w']) then 1222 1222 begin 1223 ca.Textout(xp, Y, sp);1223 Canvas.Textout(xp, Y, sp); 1224 1224 Break; 1225 1225 end … … 1228 1228 Text := Copy(sp, 1, P - 1); 1229 1229 Textout(xp, Y, Text); 1230 Inc(xp, ca.TextWidth(Text));1230 Inc(xp, Canvas.TextWidth(Text)); 1231 1231 if not shadow then 1232 1232 case sp[P + 1] of … … 1251 1251 end; 1252 1252 1253 function BiColorTextWidth( ca: TCanvas; S: string): Integer;1253 function BiColorTextWidth(Canvas: TCanvas; S: string): Integer; 1254 1254 var 1255 1255 P: Integer; … … 1260 1260 if (P = 0) or (P = Length(S)) then 1261 1261 begin 1262 Inc(Result, ca.TextWidth(S));1262 Inc(Result, Canvas.TextWidth(S)); 1263 1263 Break; 1264 1264 end … … 1267 1267 if not (S[P + 1] in ['c', 'f', 'l', 'm', 'n', 'o', 'p', 'r', 't', 'w']) 1268 1268 then 1269 Inc(Result, ca.TextWidth(Copy(S, 1, P + 1)))1269 Inc(Result, Canvas.TextWidth(Copy(S, 1, P + 1))) 1270 1270 else 1271 Inc(Result, ca.TextWidth(Copy(S, 1, P - 1)) + 10);1271 Inc(Result, Canvas.TextWidth(Copy(S, 1, P - 1)) + 10); 1272 1272 Delete(S, 1, P + 1); 1273 1273 end; … … 1275 1275 end; 1276 1276 1277 procedure LoweredTextOut( ca: TCanvas; cl: TColor; T: TTexture;1277 procedure LoweredTextOut(Canvas: TCanvas; cl: TColor; T: TTexture; 1278 1278 X, Y: Integer; S: string); 1279 1279 begin 1280 1280 if cl = -2 then 1281 BiColorTextOut( ca, (T.ColorBevelShade and $FEFEFE) shr 1,1281 BiColorTextOut(Canvas, (T.ColorBevelShade and $FEFEFE) shr 1, 1282 1282 T.ColorBevelLight, X, Y, S) 1283 1283 else if cl < 0 then 1284 BiColorTextOut( ca, T.ColorTextShade, T.ColorTextLight, X, Y, S)1284 BiColorTextOut(Canvas, T.ColorTextShade, T.ColorTextLight, X, Y, S) 1285 1285 else 1286 BiColorTextOut( ca, cl, T.ColorTextLight, X, Y, S);1287 end; 1288 1289 procedure RisedTextOut( ca: TCanvas; X, Y: Integer; S: string);1290 begin 1291 BiColorTextOut( ca, $FFFFFF, $000000, X, Y, S);1292 end; 1293 1294 procedure Gradient( ca: TCanvas; X, Y, dx, dy, Width, Height, Color: Integer;1286 BiColorTextOut(Canvas, cl, T.ColorTextLight, X, Y, S); 1287 end; 1288 1289 procedure RisedTextOut(Canvas: TCanvas; X, Y: Integer; S: string); 1290 begin 1291 BiColorTextOut(Canvas, $FFFFFF, $000000, X, Y, S); 1292 end; 1293 1294 procedure Gradient(Canvas: TCanvas; X, Y, dx, dy, Width, Height, Color: Integer; 1295 1295 Brightness: array of Integer); 1296 1296 var … … 1313 1313 else if B >= 256 then 1314 1314 B := 255; 1315 ca.Pen.Color := R + G shl 8 + B shl 16;1316 ca.MoveTo(X + dx * I, Y + dy * I);1317 ca.LineTo(X + dx * I + Width, Y + dy * I + Height);1318 end; 1319 ca.Pen.Color := $000000;1320 ca.MoveTo(X + 1, Y + 16 * dy + Height);1321 ca.LineTo(X + 16 * dx + Width, Y + 16 * dy + Height);1322 ca.LineTo(X + 16 * dx + Width, Y);1323 end; 1324 1325 procedure LightGradient( ca: TCanvas; X, Y, Width, Color: Integer);1315 Canvas.Pen.Color := R + G shl 8 + B shl 16; 1316 Canvas.MoveTo(X + dx * I, Y + dy * I); 1317 Canvas.LineTo(X + dx * I + Width, Y + dy * I + Height); 1318 end; 1319 Canvas.Pen.Color := $000000; 1320 Canvas.MoveTo(X + 1, Y + 16 * dy + Height); 1321 Canvas.LineTo(X + 16 * dx + Width, Y + 16 * dy + Height); 1322 Canvas.LineTo(X + 16 * dx + Width, Y); 1323 end; 1324 1325 procedure LightGradient(Canvas: TCanvas; X, Y, Width, Color: Integer); 1326 1326 const 1327 1327 Brightness: array [0 .. 15] of Integer = 1328 1328 (16, 12, 8, 4, 0, -4, -8, -12, -16, -20, -24, -28, -32, -36, -40, -44); 1329 1329 begin 1330 Gradient( ca, X, Y, 0, 1, Width, 0, Color, Brightness);1331 end; 1332 1333 procedure DarkGradient( ca: TCanvas; X, Y, Width, Kind: Integer);1330 Gradient(Canvas, X, Y, 0, 1, Width, 0, Color, Brightness); 1331 end; 1332 1333 procedure DarkGradient(Canvas: TCanvas; X, Y, Width, Kind: Integer); 1334 1334 const 1335 1335 Brightness: array [0 .. 15] of Integer = 1336 1336 (16, 12, 8, 4, 0, -4, -8, -12 - 24, -16 + 16, -20, -24, -28, -32, -36, -40, -44); 1337 1337 begin 1338 Gradient( ca, X, Y, 0, 1, Width, 0, HGrSystem.Data.Canvas.Pixels1338 Gradient(Canvas, X, Y, 0, 1, Width, 0, HGrSystem.Data.Canvas.Pixels 1339 1339 [187, 137 + Kind], Brightness); 1340 1340 end; 1341 1341 1342 procedure VLightGradient( ca: TCanvas; X, Y, Height, Color: Integer);1342 procedure VLightGradient(Canvas: TCanvas; X, Y, Height, Color: Integer); 1343 1343 const 1344 1344 Brightness: array [0 .. 15] of Integer = 1345 1345 (16, 12, 8, 4, 0, -4, -8, -12, -16, -20, -24, -28, -32, -36, -40, -44); 1346 1346 begin 1347 Gradient( ca, X, Y, 1, 0, 0, Height, Color, Brightness);1348 end; 1349 1350 procedure VDarkGradient( ca: TCanvas; X, Y, Height, Kind: Integer);1347 Gradient(Canvas, X, Y, 1, 0, 0, Height, Color, Brightness); 1348 end; 1349 1350 procedure VDarkGradient(Canvas: TCanvas; X, Y, Height, Kind: Integer); 1351 1351 const 1352 1352 Brightness: array [0 .. 15] of Integer = 1353 1353 (16, 12, 8, 4, 0, -4, -8, -12 - 24, -16 + 16, -20, -24, -28, -32, -36, -40, -44); 1354 1354 begin 1355 Gradient( ca, X, Y, 1, 0, 0, Height,1355 Gradient(Canvas, X, Y, 1, 0, 0, Height, 1356 1356 HGrSystem.Data.Canvas.Pixels[187, 137 + Kind], Brightness); 1357 1357 end; … … 1476 1476 end; 1477 1477 1478 procedure PaintProgressBar( ca: TCanvas; Kind, X, Y, Pos, Growth, Max: Integer;1478 procedure PaintProgressBar(Canvas: TCanvas; Kind, X, Y, Pos, Growth, Max: Integer; 1479 1479 T: TTexture); 1480 1480 var … … 1494 1494 else if Pos + Growth > Max then 1495 1495 Growth := Max - Pos; 1496 Frame( ca, X - 1, Y - 1, X + Max, Y + 7, $000000, $000000);1497 RFrame( ca, X - 2, Y - 2, X + Max + 1, Y + 8, T.ColorBevelShade,1496 Frame(Canvas, X - 1, Y - 1, X + Max, Y + 7, $000000, $000000); 1497 RFrame(Canvas, X - 2, Y - 2, X + Max + 1, Y + 8, T.ColorBevelShade, 1498 1498 T.ColorBevelLight); 1499 with cado1499 with Canvas do 1500 1500 begin 1501 1501 for I := 0 to Pos div 8 - 1 do 1502 BitBltCanvas( ca, X + I * 8, Y, 8, 7,1502 BitBltCanvas(Canvas, X + I * 8, Y, 8, 7, 1503 1503 HGrSystem.Data.Canvas, 104, 9 + 8 * Kind); 1504 BitBltCanvas( ca, X + 8 * (Pos div 8), Y, Pos - 8 * (Pos div 8), 7,1504 BitBltCanvas(Canvas, X + 8 * (Pos div 8), Y, Pos - 8 * (Pos div 8), 7, 1505 1505 HGrSystem.Data.Canvas, 104, 9 + 8 * Kind); 1506 1506 if Growth > 0 then 1507 1507 begin 1508 1508 for I := 0 to Growth div 8 - 1 do 1509 BitBltCanvas( ca, X + Pos + I * 8, Y, 8, 7,1509 BitBltCanvas(Canvas, X + Pos + I * 8, Y, 8, 7, 1510 1510 HGrSystem.Data.Canvas, 112, 9 + 8 * Kind); 1511 BitBltCanvas( ca, X + Pos + 8 * (Growth div 8), Y,1511 BitBltCanvas(Canvas, X + Pos + 8 * (Growth div 8), Y, 1512 1512 Growth - 8 * (Growth div 8), 7, HGrSystem.Data.Canvas, 1513 1513 112, 9 + 8 * Kind); … … 1516 1516 begin 1517 1517 for I := 0 to -Growth div 8 - 1 do 1518 BitBltCanvas( ca, X + Pos + I * 8, Y, 8, 7,1518 BitBltCanvas(Canvas, X + Pos + I * 8, Y, 8, 7, 1519 1519 HGrSystem.Data.Canvas, 104, 1); 1520 BitBltCanvas( ca, X + Pos + 8 * (-Growth div 8), Y, -Growth -1520 BitBltCanvas(Canvas, X + Pos + 8 * (-Growth div 8), Y, -Growth - 1521 1521 8 * (-Growth div 8), 7, 1522 1522 HGrSystem.Data.Canvas, 104, 1); … … 1529 1529 1530 1530 // pos and growth are relative to max, set size independent 1531 procedure PaintRelativeProgressBar( ca: TCanvas;1531 procedure PaintRelativeProgressBar(Canvas: TCanvas; 1532 1532 Kind, X, Y, size, Pos, Growth, Max: Integer; IndicateComplete: Boolean; 1533 1533 T: TTexture); 1534 1534 begin 1535 1535 if Growth > 0 then 1536 PaintProgressBar( ca, Kind, X, Y, Pos * size div Max,1536 PaintProgressBar(Canvas, Kind, X, Y, Pos * size div Max, 1537 1537 (Growth * size + Max div 2) div Max, size, T) 1538 1538 else 1539 PaintProgressBar( ca, Kind, X, Y, Pos * size div Max,1539 PaintProgressBar(Canvas, Kind, X, Y, Pos * size div Max, 1540 1540 (Growth * size - Max div 2) div Max, size, T); 1541 1541 if IndicateComplete and (Pos + Growth >= Max) then 1542 Sprite( ca, HGrSystem, X + size - 10, Y - 7, 23, 16, 1, 129);1542 Sprite(Canvas, HGrSystem, X + size - 10, Y - 7, 23, 16, 1, 129); 1543 1543 end; 1544 1544 … … 1591 1591 TexWidth := Texture.Width; 1592 1592 TexHeight := Texture.Height; 1593 DstPixel := PixelPointer(Dest);1594 SrcPixel := PixelPointer(Texture);1593 DstPixel := TPixelPointer.Create(Dest); 1594 SrcPixel := TPixelPointer.Create(Texture); 1595 1595 for Y := 0 to ScaleToNative(Dest.Height) - 1 do begin 1596 1596 for X := 0 to ScaleToNative(Dest.Width) - 1 do begin … … 1614 1614 begin 1615 1615 Bitmap.BeginUpdate; 1616 PicturePixel := PixelPointer(Bitmap);1616 PicturePixel := TPixelPointer.Create(Bitmap); 1617 1617 for Y := 0 to ScaleToNative(Bitmap.Height) - 1 do begin 1618 1618 for X := 0 to ScaleToNative(Bitmap.Width) - 1 do begin -
trunk/Packages/CevoComponents/Texture.pas
r455 r456 1 unit UTexture; 2 3 {$mode objfpc}{$H+} 1 unit Texture; 4 2 5 3 interface -
trunk/Packages/Common/AboutDialog.pas
r455 r456 1 unit UAboutDialog;1 unit AboutDialog; 2 2 3 3 interface … … 5 5 uses 6 6 Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus, 7 ExtCtrls, UApplicationInfo, UCommon, UTranslator, UTheme, UFormAbout;7 ExtCtrls, ApplicationInfo, Common, Translator, Theme, FormAbout; 8 8 9 9 type … … 50 50 51 51 end. 52 53 -
trunk/Packages/Common/ApplicationInfo.pas
r455 r456 1 unit UApplicationInfo;1 unit ApplicationInfo; 2 2 3 3 interface 4 4 5 5 uses 6 SysUtils, Classes, Forms, URegistry, Controls, Graphics, LCLType;6 SysUtils, Classes, Forms, RegistryEx, Controls, Graphics, LCLType; 7 7 8 8 type -
trunk/Packages/Common/Common.Delay.pas
r455 r456 1 unit UDelay;1 unit Common.Delay; 2 2 3 3 interface … … 71 71 72 72 end. 73 -
trunk/Packages/Common/Common.lpk
r424 r456 41 41 Source: https://svn.zdechov.net/PascalClassLibrary/Common/"/> 42 42 <License Value="Copy left."/> 43 <Version Minor="1 0"/>44 <Files Count=" 29">43 <Version Minor="11"/> 44 <Files Count="33"> 45 45 <Item1> 46 46 <Filename Value="StopWatch.pas"/> … … 48 48 </Item1> 49 49 <Item2> 50 <Filename Value=" UCommon.pas"/>51 <UnitName Value=" UCommon"/>50 <Filename Value="Common.pas"/> 51 <UnitName Value="Common"/> 52 52 </Item2> 53 53 <Item3> 54 <Filename Value=" UDebugLog.pas"/>55 <HasRegisterProc Value="True"/> 56 <UnitName Value=" UDebugLog"/>54 <Filename Value="DebugLog.pas"/> 55 <HasRegisterProc Value="True"/> 56 <UnitName Value="DebugLog"/> 57 57 </Item3> 58 58 <Item4> 59 <Filename Value=" UDelay.pas"/>60 <UnitName Value=" UDelay"/>59 <Filename Value="Common.Delay.pas"/> 60 <UnitName Value="Common.Delay"/> 61 61 </Item4> 62 62 <Item5> 63 <Filename Value=" UPrefixMultiplier.pas"/>64 <HasRegisterProc Value="True"/> 65 <UnitName Value=" UPrefixMultiplier"/>63 <Filename Value="PrefixMultiplier.pas"/> 64 <HasRegisterProc Value="True"/> 65 <UnitName Value="PrefixMultiplier"/> 66 66 </Item5> 67 67 <Item6> 68 <Filename Value="U URI.pas"/>69 <UnitName Value="U URI"/>68 <Filename Value="URI.pas"/> 69 <UnitName Value="URI"/> 70 70 </Item6> 71 71 <Item7> 72 <Filename Value=" UThreading.pas"/>73 <UnitName Value=" UThreading"/>72 <Filename Value="Threading.pas"/> 73 <UnitName Value="Threading"/> 74 74 </Item7> 75 75 <Item8> 76 <Filename Value=" UMemory.pas"/>77 <UnitName Value=" UMemory"/>76 <Filename Value="Memory.pas"/> 77 <UnitName Value="Memory"/> 78 78 </Item8> 79 79 <Item9> 80 <Filename Value=" UResetableThread.pas"/>81 <UnitName Value=" UResetableThread"/>80 <Filename Value="ResetableThread.pas"/> 81 <UnitName Value="ResetableThread"/> 82 82 </Item9> 83 83 <Item10> 84 <Filename Value=" UPool.pas"/>85 <UnitName Value=" UPool"/>84 <Filename Value="Pool.pas"/> 85 <UnitName Value="Pool"/> 86 86 </Item10> 87 87 <Item11> 88 <Filename Value=" ULastOpenedList.pas"/>89 <HasRegisterProc Value="True"/> 90 <UnitName Value=" ULastOpenedList"/>88 <Filename Value="LastOpenedList.pas"/> 89 <HasRegisterProc Value="True"/> 90 <UnitName Value="LastOpenedList"/> 91 91 </Item11> 92 92 <Item12> 93 <Filename Value=" URegistry.pas"/>94 <UnitName Value=" URegistry"/>93 <Filename Value="RegistryEx.pas"/> 94 <UnitName Value="RegistryEx"/> 95 95 </Item12> 96 96 <Item13> 97 <Filename Value=" UJobProgressView.pas"/>98 <HasRegisterProc Value="True"/> 99 <UnitName Value=" UJobProgressView"/>97 <Filename Value="JobProgressView.pas"/> 98 <HasRegisterProc Value="True"/> 99 <UnitName Value="JobProgressView"/> 100 100 </Item13> 101 101 <Item14> 102 <Filename Value=" UXMLUtils.pas"/>103 <UnitName Value=" UXMLUtils"/>102 <Filename Value="XML.pas"/> 103 <UnitName Value="XML"/> 104 104 </Item14> 105 105 <Item15> 106 <Filename Value=" UApplicationInfo.pas"/>107 <HasRegisterProc Value="True"/> 108 <UnitName Value=" UApplicationInfo"/>106 <Filename Value="ApplicationInfo.pas"/> 107 <HasRegisterProc Value="True"/> 108 <UnitName Value="ApplicationInfo"/> 109 109 </Item15> 110 110 <Item16> 111 <Filename Value=" USyncCounter.pas"/>112 <UnitName Value=" USyncCounter"/>111 <Filename Value="SyncCounter.pas"/> 112 <UnitName Value="SyncCounter"/> 113 113 </Item16> 114 114 <Item17> 115 <Filename Value=" UListViewSort.pas"/>116 <HasRegisterProc Value="True"/> 117 <UnitName Value=" UListViewSort"/>115 <Filename Value="ListViewSort.pas"/> 116 <HasRegisterProc Value="True"/> 117 <UnitName Value="ListViewSort"/> 118 118 </Item17> 119 119 <Item18> 120 <Filename Value=" UPersistentForm.pas"/>121 <HasRegisterProc Value="True"/> 122 <UnitName Value=" UPersistentForm"/>120 <Filename Value="PersistentForm.pas"/> 121 <HasRegisterProc Value="True"/> 122 <UnitName Value="PersistentForm"/> 123 123 </Item18> 124 124 <Item19> 125 <Filename Value=" UFindFile.pas"/>126 <HasRegisterProc Value="True"/> 127 <UnitName Value=" UFindFile"/>125 <Filename Value="FindFile.pas"/> 126 <HasRegisterProc Value="True"/> 127 <UnitName Value="FindFile"/> 128 128 </Item19> 129 129 <Item20> 130 <Filename Value=" UScaleDPI.pas"/>131 <HasRegisterProc Value="True"/> 132 <UnitName Value=" UScaleDPI"/>130 <Filename Value="ScaleDPI.pas"/> 131 <HasRegisterProc Value="True"/> 132 <UnitName Value="ScaleDPI"/> 133 133 </Item20> 134 134 <Item21> 135 <Filename Value=" UTheme.pas"/>136 <HasRegisterProc Value="True"/> 137 <UnitName Value=" UTheme"/>135 <Filename Value="Theme.pas"/> 136 <HasRegisterProc Value="True"/> 137 <UnitName Value="Theme"/> 138 138 </Item21> 139 139 <Item22> 140 <Filename Value=" UStringTable.pas"/>141 <UnitName Value=" UStringTable"/>140 <Filename Value="StringTable.pas"/> 141 <UnitName Value="StringTable"/> 142 142 </Item22> 143 143 <Item23> 144 <Filename Value=" UMetaCanvas.pas"/>145 <UnitName Value=" UMetaCanvas"/>144 <Filename Value="MetaCanvas.pas"/> 145 <UnitName Value="MetaCanvas"/> 146 146 </Item23> 147 147 <Item24> 148 <Filename Value=" UGeometric.pas"/>149 <UnitName Value=" UGeometric"/>148 <Filename Value="Geometric.pas"/> 149 <UnitName Value="Geometric"/> 150 150 </Item24> 151 151 <Item25> 152 <Filename Value=" UTranslator.pas"/>153 <HasRegisterProc Value="True"/> 154 <UnitName Value=" UTranslator"/>152 <Filename Value="Translator.pas"/> 153 <HasRegisterProc Value="True"/> 154 <UnitName Value="Translator"/> 155 155 </Item25> 156 156 <Item26> 157 <Filename Value=" ULanguages.pas"/>158 <UnitName Value=" ULanguages"/>157 <Filename Value="Languages.pas"/> 158 <UnitName Value="Languages"/> 159 159 </Item26> 160 160 <Item27> 161 <Filename Value=" UFormAbout.pas"/>162 <UnitName Value=" UFormAbout"/>161 <Filename Value="FormAbout.pas"/> 162 <UnitName Value="FormAbout"/> 163 163 </Item27> 164 164 <Item28> 165 <Filename Value=" UAboutDialog.pas"/>166 <HasRegisterProc Value="True"/> 167 <UnitName Value=" UAboutDialog"/>165 <Filename Value="AboutDialog.pas"/> 166 <HasRegisterProc Value="True"/> 167 <UnitName Value="AboutDialog"/> 168 168 </Item28> 169 169 <Item29> 170 <Filename Value=" UPixelPointer.pas"/>171 <UnitName Value=" UPixelPointer"/>170 <Filename Value="PixelPointer.pas"/> 171 <UnitName Value="PixelPointer"/> 172 172 </Item29> 173 <Item30> 174 <Filename Value="DataFile.pas"/> 175 <UnitName Value="DataFile"/> 176 </Item30> 177 <Item31> 178 <Filename Value="TestCase.pas"/> 179 <UnitName Value="TestCase"/> 180 </Item31> 181 <Item32> 182 <Filename Value="Generics.pas"/> 183 <UnitName Value="Generics"/> 184 </Item32> 185 <Item33> 186 <Filename Value="CommonPackage.pas"/> 187 <Type Value="Main Unit"/> 188 <UnitName Value="CommonPackage"/> 189 </Item33> 173 190 </Files> 174 191 <CompatibilityMode Value="True"/> -
trunk/Packages/Common/Common.pas
r455 r456 1 unit UCommon;1 unit Common; 2 2 3 3 interface … … 7 7 {$IFDEF UNIX}baseunix,{$ENDIF} 8 8 Classes, SysUtils, StrUtils, Dialogs, Process, LCLIntf, Graphics, 9 FileUtil ; //, ShFolder, ShellAPI;9 FileUtil, Generics.Collections; //, ShFolder, ShellAPI; 10 10 11 11 type … … 42 42 clLightRed = TColor($8080FF); 43 43 44 function AddLeadingZeroes(const aNumber, Length : Integer) : string;44 function AddLeadingZeroes(const aNumber, Length : integer) : string; 45 45 function BinToInt(BinStr: string): Int64; 46 46 function BinToHexString(Source: AnsiString): string; … … 65 65 function GetFileFilterItemExt(Filter: string; Index: Integer): string; 66 66 function IntToBin(Data: Int64; Count: Byte): string; 67 function Implode(Separator: Char; List: TList<string>): string; 67 68 function LastPos(const SubStr: String; const S: String): Integer; 68 69 function LoadFileToStr(const FileName: TFileName): AnsiString; … … 96 97 function BinToInt(BinStr : string) : Int64; 97 98 var 98 I : Byte;99 i : byte; 99 100 RetVar : Int64; 100 101 begin 101 102 BinStr := UpperCase(BinStr); 102 if BinStr[ Length(BinStr)] = 'B' then Delete(BinStr,Length(BinStr),1);103 if BinStr[length(BinStr)] = 'B' then Delete(BinStr,length(BinStr),1); 103 104 RetVar := 0; 104 for I := 1 to Length(BinStr) do begin105 if not (BinStr[ I] in ['0','1']) then begin105 for i := 1 to length(BinStr) do begin 106 if not (BinStr[i] in ['0','1']) then begin 106 107 RetVar := 0; 107 108 Break; 108 109 end; 109 RetVar := (RetVar shl 1) + ( Byte(BinStr[I]) and 1) ;110 RetVar := (RetVar shl 1) + (byte(BinStr[i]) and 1) ; 110 111 end; 111 112 … … 313 314 end; 314 315 316 function Implode(Separator: Char; List: TList<string>): string; 317 var 318 I: Integer; 319 begin 320 Result := ''; 321 for I := 0 to List.Count - 1 do begin 322 Result := Result + List[I]; 323 if I < List.Count - 1 then Result := Result + Separator; 324 end; 325 end; 326 315 327 {$IFDEF WINDOWS} 316 328 function GetUserName: string; … … 435 447 end; 436 448 437 function AddLeadingZeroes(const aNumber, Length : Integer) : string;449 function AddLeadingZeroes(const aNumber, Length : integer) : string; 438 450 begin 439 451 Result := SysUtils.Format('%.*d', [Length, aNumber]) ; … … 614 626 begin 615 627 for J := ReadFrom to Len do 616 if (S[ J] = C) then628 if (S[j] = C) then 617 629 begin 618 630 Result := J; … … 631 643 Inc(I); 632 644 APos := ReadUntil(I, '<'); 633 Result := Result + Copy(S, I, APos - I);645 Result := Result + Copy(S, I, APos - i); 634 646 I := ReadUntil(APos + 1, '>'); 635 647 end; -
trunk/Packages/Common/CommonPackage.pas
r455 r456 3 3 } 4 4 5 unit Common ;5 unit CommonPackage; 6 6 7 7 {$warn 5023 off : no warning about unused units} … … 9 9 10 10 uses 11 StopWatch, UCommon, UDebugLog, UDelay, UPrefixMultiplier, UURI, UThreading,12 UMemory, UResetableThread, UPool, ULastOpenedList, URegistry,13 UJobProgressView, UXMLUtils, UApplicationInfo, USyncCounter, UListViewSort,14 UPersistentForm, UFindFile, UScaleDPI, UTheme, UStringTable, UMetaCanvas,15 UGeometric, UTranslator, ULanguages, UFormAbout, UAboutDialog,16 UPixelPointer,LazarusPackageIntf;11 StopWatch, Common, DebugLog, Common.Delay, PrefixMultiplier, URI, Threading, 12 Memory, ResetableThread, Pool, LastOpenedList, RegistryEx, JobProgressView, 13 XML, ApplicationInfo, SyncCounter, ListViewSort, PersistentForm, FindFile, 14 ScaleDPI, Theme, StringTable, MetaCanvas, Geometric, Translator, Languages, 15 FormAbout, AboutDialog, PixelPointer, DataFile, TestCase, Generics, 16 LazarusPackageIntf; 17 17 18 18 implementation … … 20 20 procedure Register; 21 21 begin 22 RegisterUnit(' UDebugLog', @UDebugLog.Register);23 RegisterUnit(' UPrefixMultiplier', @UPrefixMultiplier.Register);24 RegisterUnit(' ULastOpenedList', @ULastOpenedList.Register);25 RegisterUnit(' UJobProgressView', @UJobProgressView.Register);26 RegisterUnit(' UApplicationInfo', @UApplicationInfo.Register);27 RegisterUnit(' UListViewSort', @UListViewSort.Register);28 RegisterUnit(' UPersistentForm', @UPersistentForm.Register);29 RegisterUnit(' UFindFile', @UFindFile.Register);30 RegisterUnit(' UScaleDPI', @UScaleDPI.Register);31 RegisterUnit(' UTheme', @UTheme.Register);32 RegisterUnit(' UTranslator', @UTranslator.Register);33 RegisterUnit(' UAboutDialog', @UAboutDialog.Register);22 RegisterUnit('DebugLog', @DebugLog.Register); 23 RegisterUnit('PrefixMultiplier', @PrefixMultiplier.Register); 24 RegisterUnit('LastOpenedList', @LastOpenedList.Register); 25 RegisterUnit('JobProgressView', @JobProgressView.Register); 26 RegisterUnit('ApplicationInfo', @ApplicationInfo.Register); 27 RegisterUnit('ListViewSort', @ListViewSort.Register); 28 RegisterUnit('PersistentForm', @PersistentForm.Register); 29 RegisterUnit('FindFile', @FindFile.Register); 30 RegisterUnit('ScaleDPI', @ScaleDPI.Register); 31 RegisterUnit('Theme', @Theme.Register); 32 RegisterUnit('Translator', @Translator.Register); 33 RegisterUnit('AboutDialog', @AboutDialog.Register); 34 34 end; 35 35 … … 37 37 RegisterPackage('Common', @Register); 38 38 end. 39 -
trunk/Packages/Common/DebugLog.pas
r455 r456 1 unit UDebugLog;1 unit DebugLog; 2 2 3 3 interface … … 134 134 135 135 end. 136 -
trunk/Packages/Common/FindFile.pas
r455 r456 6 6 Tired of using FindFirst, Next and Close? 7 7 Come see how to encapsulate all those functions 8 in A Single "find-files-recursively" component.8 in a single "find-files-recursively" component. 9 9 It's easy to use, free and with code. 10 10 … … 19 19 } 20 20 21 unit UFindFile;21 unit FindFile; 22 22 23 23 interface … … 34 34 TFindFile = class(TComponent) 35 35 private 36 S: TStringList;37 fSubFolder : Boolean;36 s : TStringList; 37 fSubFolder : boolean; 38 38 fAttr: TFileAttrib; 39 39 fPath : string; … … 47 47 published 48 48 property FileAttr: TFileAttrib read fAttr write fAttr; 49 property InSubFolders : Boolean read fSubFolder write fSubFolder;49 property InSubFolders : boolean read fSubFolder write fSubFolder; 50 50 property Path : string read fPath write SetPath; 51 51 property FileMask : string read fFileMask write fFileMask ; … … 79 79 FileMask := FilterAll; 80 80 FileAttr := [ffaAnyFile]; 81 S:= TStringList.Create;81 s := TStringList.Create; 82 82 end; 83 83 84 84 destructor TFindFile.Destroy; 85 85 begin 86 S.Free;87 inherited Destroy;86 s.Free; 87 inherited; 88 88 end; 89 89 … … 101 101 function TFindFile.SearchForFiles: TStringList; 102 102 begin 103 S.Clear;103 s.Clear; 104 104 try 105 105 FileSearch(Path); 106 106 finally 107 Result := S;107 Result := s; 108 108 end; 109 109 end; … … 111 111 procedure TFindFile.FileSearch(const InPath : string); 112 112 var Rec : TSearchRec; 113 Attr : Integer;113 Attr : integer; 114 114 begin 115 115 Attr := 0; … … 125 125 try 126 126 repeat 127 S.Add(inPath + Rec.Name);127 s.Add(inPath + Rec.Name); 128 128 until SysUtils.FindNext(Rec) <> 0; 129 129 finally … … 143 143 SysUtils.FindClose(Rec); 144 144 end; 145 end; 145 end; 146 146 147 147 end. 148 -
trunk/Packages/Common/FormAbout.lfm
r455 r456 1 1 object FormAbout: TFormAbout 2 2 Left = 1014 3 Height = 4023 Height = 349 4 4 Top = 577 5 Width = 7025 Width = 609 6 6 Caption = 'About' 7 ClientHeight = 402 8 ClientWidth = 702 9 DesignTimePPI = 144 10 OnCreate = FormCreate 7 ClientHeight = 349 8 ClientWidth = 609 9 DesignTimePPI = 125 11 10 OnShow = FormShow 12 11 Position = poScreenCenter 13 LCLVersion = '2. 0.10.0'12 LCLVersion = '2.2.4.0' 14 13 object LabelDescription: TLabel 15 Left = 3016 Height = 2 417 Top = 1 3518 Width = 64214 Left = 26 15 Height = 22 16 Top = 117 17 Width = 557 19 18 Align = alTop 20 BorderSpacing.Left = 3021 BorderSpacing.Right = 3022 BorderSpacing.Bottom = 3019 BorderSpacing.Left = 26 20 BorderSpacing.Right = 26 21 BorderSpacing.Bottom = 26 23 22 Caption = 'Description' 24 23 ParentColor = False … … 27 26 end 28 27 object LabelContent: TLabel 29 Left = 3030 Height = 2 431 Top = 1 8932 Width = 64228 Left = 26 29 Height = 22 30 Top = 165 31 Width = 557 33 32 Align = alTop 34 BorderSpacing.Around = 3033 BorderSpacing.Around = 26 35 34 Caption = ' ' 36 35 ParentColor = False … … 39 38 object PanelTop: TPanel 40 39 Left = 0 41 Height = 1 3540 Height = 117 42 41 Top = 0 43 Width = 70242 Width = 609 44 43 Align = alTop 45 44 BevelOuter = bvNone 46 ClientHeight = 1 3547 ClientWidth = 70245 ClientHeight = 117 46 ClientWidth = 609 48 47 FullRepaint = False 49 48 ParentFont = False 50 49 TabOrder = 0 51 50 object LabelAppName: TLabel 52 Left = 10853 Height = 8454 Top = 2055 Width = 56451 Left = 94 52 Height = 73 53 Top = 17 54 Width = 489 56 55 Anchors = [akTop, akLeft, akRight] 57 56 AutoSize = False 58 BorderSpacing.Around = 3057 BorderSpacing.Around = 26 59 58 Caption = 'Title' 60 Font.Height = - 6059 Font.Height = -52 61 60 ParentColor = False 62 61 ParentFont = False … … 64 63 end 65 64 object ImageLogo: TImage 66 Left = 2 467 Height = 7468 Top = 3069 Width = 7265 Left = 21 66 Height = 64 67 Top = 26 68 Width = 62 70 69 Proportional = True 71 70 Stretch = True … … 74 73 object PanelButtons: TPanel 75 74 Left = 0 76 Height = 7577 Top = 32778 Width = 70275 Height = 65 76 Top = 284 77 Width = 609 79 78 Align = alBottom 80 79 BevelOuter = bvNone 81 ClientHeight = 7582 ClientWidth = 70280 ClientHeight = 65 81 ClientWidth = 609 83 82 TabOrder = 1 84 83 object ButtonHomePage: TButton 85 Left = 2 486 Height = 3 887 Top = 2 488 Width = 2 6484 Left = 21 85 Height = 33 86 Top = 21 87 Width = 229 89 88 Anchors = [akLeft, akBottom] 90 89 Caption = 'Home page' … … 94 93 end 95 94 object ButtonClose: TButton 96 Left = 53297 Height = 3 898 Top = 2 499 Width = 1 4095 Left = 461 96 Height = 33 97 Top = 21 98 Width = 122 100 99 Anchors = [akRight, akBottom] 101 100 Caption = 'Close' -
trunk/Packages/Common/FormAbout.pas
r455 r456 1 unit UFormAbout;1 unit FormAbout; 2 2 3 3 interface … … 5 5 uses 6 6 Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus, 7 StdCtrls, ExtCtrls, UApplicationInfo, UCommon, UTranslator, UTheme;7 StdCtrls, ExtCtrls, ApplicationInfo, Common, Translator, Theme; 8 8 9 9 type … … 20 20 PanelButtons: TPanel; 21 21 procedure ButtonHomePageClick(Sender: TObject); 22 procedure FormCreate(Sender: TObject);23 22 procedure FormShow(Sender: TObject); 24 private25 { private declarations }26 23 public 27 24 AboutDialog: TObject; //TAboutDialog … … 35 32 36 33 uses 37 UAboutDialog;34 AboutDialog; 38 35 39 36 resourcestring … … 77 74 end; 78 75 79 procedure TFormAbout.FormCreate(Sender: TObject);80 begin81 end;82 83 76 end. 84 85 -
trunk/Packages/Common/Geometric.pas
r455 r456 1 unit UGeometric;1 unit Geometric; 2 2 3 3 interface … … 8 8 type 9 9 TPointArray = array of TPoint; 10 11 { TVector } 12 13 TVector = record 14 Position: TPoint; 15 Direction: TPoint; 16 function GetLength: Double; 17 function GetAngle: Double; 18 procedure SetLength(Value: Double); 19 class function Create(P1, P2: TPoint): TVector; static; 20 end; 10 21 11 22 function Distance(P1, P2: TPoint): Integer; … … 13 24 function AddPoint(const P1, P2: TPoint): TPoint; 14 25 function SubPoint(const P1, P2: TPoint): TPoint; 15 function PointToLineDistance(const P, V, W: TPoint ): Integer;26 function PointToLineDistance(const P, V, W: TPoint; out Intersect: TPoint): Integer; 16 27 function ComparePoint(P1, P2: TPoint): Boolean; 17 28 function RotatePoint(Center, P: TPoint; Angle: Double): TPoint; … … 50 61 end; 51 62 52 function PointToLineDistance(const P, V, W: TPoint ): Integer;63 function PointToLineDistance(const P, V, W: TPoint; out Intersect: TPoint): Integer; 53 64 var 54 l2, T: Double;65 l2, t: Double; 55 66 tt: TPoint; 56 67 begin … … 68 79 if T < 0 then begin 69 80 Result := Distance(P, V); // Beyond the 'v' end of the segment 70 exit; 81 Intersect := V; 82 Exit; 71 83 end 72 84 else if T > 1 then begin 73 85 Result := Distance(P, W); // Beyond the 'w' end of the segment 86 Intersect := W; 74 87 Exit; 75 88 end; … … 77 90 TT.Y := Trunc(V.Y + T * (W.Y - V.Y)); 78 91 Result := Distance(P, TT); 92 Intersect := TT; 79 93 end; 80 94 … … 162 176 end; 163 177 178 { TVector } 179 180 function TVector.GetLength: Double; 181 begin 182 Result := Sqrt(Sqr(Direction.X) + Sqr(Direction.Y)); 183 end; 184 185 function TVector.GetAngle: Double; 186 begin 187 Result := ArcTan2(Direction.Y, Direction.X); 188 end; 189 190 procedure TVector.SetLength(Value: Double); 191 var 192 Angle: Double; 193 begin 194 Angle := GetAngle; 195 Direction := Point(Round(Cos(Angle) * Value), 196 Round(Sin(Angle) * Value)); 197 end; 198 199 class function TVector.Create(P1, P2: TPoint): TVector; 200 begin 201 Result.Position := P1; 202 Result.Direction := Point(P2.X - P1.X, P2.Y - P1.Y); 203 end; 164 204 165 205 end. 166 167 -
trunk/Packages/Common/JobProgressView.pas
r455 r456 1 unit UJobProgressView;1 unit JobProgressView; 2 2 3 3 interface … … 5 5 uses 6 6 SysUtils, Variants, Classes, Graphics, Controls, Forms, Syncobjs, 7 Dialogs, ComCtrls, StdCtrls, ExtCtrls, Generics.Collections, UThreading, Math,7 Dialogs, ComCtrls, StdCtrls, ExtCtrls, Generics.Collections, Threading, Math, 8 8 DateUtils; 9 9 … … 154 154 end; 155 155 156 //var157 // FormJobProgressView: TFormJobProgressView;158 159 156 procedure Register; 160 157 … … 185 182 try 186 183 try 187 //raise Exception.Create('Exception in job');188 184 ProgressView.CurrentJob.Method(Job); 189 185 except … … 221 217 for I := 0 to ListViewJobs.Items.Count - 1 do 222 218 begin 223 ItemRect := ListViewJobs.Items[ I].DisplayRect(drBounds);219 ItemRect := ListViewJobs.Items[i].DisplayRect(drBounds); 224 220 Maxh := Max(Maxh, ItemRect.Top + (ItemRect.Bottom - ItemRect.Top)); 225 221 end; … … 641 637 begin 642 638 FLock.Free; 643 inherited Destroy;639 inherited; 644 640 end; 645 641 -
trunk/Packages/Common/Languages.pas
r455 r456 1 unit ULanguages;1 unit Languages; 2 2 3 3 interface … … 443 443 444 444 end. 445 -
trunk/Packages/Common/Languages/DebugLog.cs.po
r455 r456 10 10 "Content-Transfer-Encoding: 8bit\n" 11 11 12 #: udebuglog.sfilenamenotdefined 12 #: debuglog.sfilenamenotdefined 13 #, fuzzy 14 msgctxt "debuglog.sfilenamenotdefined" 13 15 msgid "Filename not defined" 14 16 msgstr "Neurčen soubor" -
trunk/Packages/Common/Languages/DebugLog.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: udebuglog.sfilenamenotdefined4 #: debuglog.sfilenamenotdefined 5 5 msgid "Filename not defined" 6 6 msgstr "" -
trunk/Packages/Common/Languages/FindFile.cs.po
r455 r456 12 12 "X-Generator: Poedit 1.8.9\n" 13 13 14 #: ufindfile.sdirnotfound 14 #: findfile.sdirnotfound 15 #, fuzzy 16 msgctxt "findfile.sdirnotfound" 15 17 msgid "Directory not found" 16 18 msgstr "Adresář nenalezen" -
trunk/Packages/Common/Languages/FindFile.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: ufindfile.sdirnotfound4 #: findfile.sdirnotfound 5 5 msgid "Directory not found" 6 6 msgstr "" -
trunk/Packages/Common/Languages/FormAbout.cs.po
r455 r456 12 12 "X-Generator: Poedit 2.4.1\n" 13 13 14 #: uformabout.slicense 14 #: formabout.slicense 15 #, fuzzy 16 msgctxt "formabout.slicense" 15 17 msgid "License" 16 18 msgstr "Licence" 17 19 18 #: uformabout.sreleasedate 20 #: formabout.sreleasedate 21 #, fuzzy 22 msgctxt "formabout.sreleasedate" 19 23 msgid "Release date" 20 24 msgstr "Datum uvolnění" 21 25 22 #: uformabout.sversion 26 #: formabout.sversion 27 #, fuzzy 28 msgctxt "formabout.sversion" 23 29 msgid "Version" 24 30 msgstr "Verze" -
trunk/Packages/Common/Languages/FormAbout.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: uformabout.slicense4 #: formabout.slicense 5 5 msgid "License" 6 6 msgstr "" 7 7 8 #: uformabout.sreleasedate8 #: formabout.sreleasedate 9 9 msgid "Release date" 10 10 msgstr "" 11 11 12 #: uformabout.sversion12 #: formabout.sversion 13 13 msgid "Version" 14 14 msgstr "" -
trunk/Packages/Common/Languages/JobProgressView.cs.po
r455 r456 12 12 "X-Generator: Poedit 2.2\n" 13 13 14 #: ujobprogressview.sestimatedtime 15 #, object-pascal-format 14 #: jobprogressview.sestimatedtime 15 #, object-pascal-format, fuzzy 16 msgctxt "jobprogressview.sestimatedtime" 16 17 msgid "Estimated time: %s" 17 18 msgstr "Odhadovaný čas: %s" 18 19 19 #: ujobprogressview.sexecuted 20 #: jobprogressview.sexecuted 21 #, fuzzy 22 msgctxt "jobprogressview.sexecuted" 20 23 msgid "Executed" 21 24 msgstr "Vykonané" 22 25 23 #: ujobprogressview.sfinished 26 #: jobprogressview.sfinished 27 #, fuzzy 28 msgctxt "jobprogressview.sfinished" 24 29 msgid "Finished" 25 30 msgstr "Dokončené" 26 31 27 #: ujobprogressview.spleasewait 32 #: jobprogressview.spleasewait 33 #, fuzzy 34 msgctxt "jobprogressview.spleasewait" 28 35 msgid "Please wait..." 29 36 msgstr "Prosím čekejte..." 30 37 31 #: ujobprogressview.sterminate 38 #: jobprogressview.sterminate 39 #, fuzzy 40 msgctxt "jobprogressview.sterminate" 32 41 msgid "Termination" 33 42 msgstr "Přerušení" 34 43 35 #: ujobprogressview.stotalestimatedtime 36 #, object-pascal-format 44 #: jobprogressview.stotalestimatedtime 45 #, object-pascal-format, fuzzy 46 msgctxt "jobprogressview.stotalestimatedtime" 37 47 msgid "Total estimated time: %s" 38 48 msgstr "Celkový odhadovaný čas: %s" -
trunk/Packages/Common/Languages/JobProgressView.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: ujobprogressview.sestimatedtime4 #: jobprogressview.sestimatedtime 5 5 #, object-pascal-format 6 6 msgid "Estimated time: %s" 7 7 msgstr "" 8 8 9 #: ujobprogressview.sexecuted9 #: jobprogressview.sexecuted 10 10 msgid "Executed" 11 11 msgstr "" 12 12 13 #: ujobprogressview.sfinished13 #: jobprogressview.sfinished 14 14 msgid "Finished" 15 15 msgstr "" 16 16 17 #: ujobprogressview.spleasewait17 #: jobprogressview.spleasewait 18 18 msgid "Please wait..." 19 19 msgstr "" 20 20 21 #: ujobprogressview.sterminate21 #: jobprogressview.sterminate 22 22 msgid "Termination" 23 23 msgstr "" 24 24 25 #: ujobprogressview.stotalestimatedtime25 #: jobprogressview.stotalestimatedtime 26 26 #, object-pascal-format 27 27 msgid "Total estimated time: %s" -
trunk/Packages/Common/Languages/Languages.cs.po
r455 r456 10 10 "Content-Transfer-Encoding: 8bit\n" 11 11 12 #: ulanguages.slangauto 12 #: languages.slangauto 13 #, fuzzy 14 msgctxt "languages.slangauto" 13 15 msgid "Automatic" 14 16 msgstr "Automaticky" 15 17 16 #: ulanguages.slang_aa 18 #: languages.slang_aa 19 msgctxt "languages.slang_aa" 17 20 msgid "Afar" 18 21 msgstr "" 19 22 20 #: ulanguages.slang_ab 23 #: languages.slang_ab 24 #, fuzzy 25 msgctxt "languages.slang_ab" 21 26 msgid "Abkhazian" 22 27 msgstr "Abcházština" 23 28 24 #: ulanguages.slang_ae 29 #: languages.slang_ae 30 msgctxt "languages.slang_ae" 25 31 msgid "Avestan" 26 32 msgstr "" 27 33 28 #: ulanguages.slang_af 34 #: languages.slang_af 35 #, fuzzy 36 msgctxt "languages.slang_af" 29 37 msgid "Afrikaans" 30 38 msgstr "Afrikánština" 31 39 32 #: ulanguages.slang_ak 40 #: languages.slang_ak 41 msgctxt "languages.slang_ak" 33 42 msgid "Akan" 34 43 msgstr "" 35 44 36 #: ulanguages.slang_am 45 #: languages.slang_am 46 msgctxt "languages.slang_am" 37 47 msgid "Amharic" 38 48 msgstr "" 39 49 40 #: ulanguages.slang_an 50 #: languages.slang_an 51 msgctxt "languages.slang_an" 41 52 msgid "Aragonese" 42 53 msgstr "" 43 54 44 #: ulanguages.slang_ar 55 #: languages.slang_ar 56 #, fuzzy 57 msgctxt "languages.slang_ar" 45 58 msgid "Arabic" 46 59 msgstr "Arabština" 47 60 48 #: ulanguages.slang_as 61 #: languages.slang_as 62 msgctxt "languages.slang_as" 49 63 msgid "Assamese" 50 64 msgstr "" 51 65 52 #: ulanguages.slang_av 66 #: languages.slang_av 67 msgctxt "languages.slang_av" 53 68 msgid "Avaric" 54 69 msgstr "" 55 70 56 #: ulanguages.slang_ay 71 #: languages.slang_ay 72 msgctxt "languages.slang_ay" 57 73 msgid "Aymara" 58 74 msgstr "" 59 75 60 #: ulanguages.slang_az 76 #: languages.slang_az 77 msgctxt "languages.slang_az" 61 78 msgid "Azerbaijani" 62 79 msgstr "" 63 80 64 #: ulanguages.slang_ba 81 #: languages.slang_ba 82 msgctxt "languages.slang_ba" 65 83 msgid "Bashkir" 66 84 msgstr "" 67 85 68 #: ulanguages.slang_be 86 #: languages.slang_be 87 msgctxt "languages.slang_be" 69 88 msgid "Belarusian" 70 89 msgstr "" 71 90 72 #: ulanguages.slang_bg 91 #: languages.slang_bg 92 #, fuzzy 93 msgctxt "languages.slang_bg" 73 94 msgid "Bulgarian" 74 95 msgstr "Maďarština" 75 96 76 #: ulanguages.slang_bh 97 #: languages.slang_bh 98 msgctxt "languages.slang_bh" 77 99 msgid "Bihari" 78 100 msgstr "" 79 101 80 #: ulanguages.slang_bi 102 #: languages.slang_bi 103 msgctxt "languages.slang_bi" 81 104 msgid "Bislama" 82 105 msgstr "" 83 106 84 #: ulanguages.slang_bm 107 #: languages.slang_bm 108 msgctxt "languages.slang_bm" 85 109 msgid "Bambara" 86 110 msgstr "" 87 111 88 #: ulanguages.slang_bn 112 #: languages.slang_bn 113 msgctxt "languages.slang_bn" 89 114 msgid "Bengali" 90 115 msgstr "" 91 116 92 #: ulanguages.slang_bo 117 #: languages.slang_bo 118 #, fuzzy 119 msgctxt "languages.slang_bo" 93 120 msgid "Tibetan" 94 121 msgstr "Tibetština" 95 122 96 #: ulanguages.slang_br 123 #: languages.slang_br 124 msgctxt "languages.slang_br" 97 125 msgid "Breton" 98 126 msgstr "" 99 127 100 #: ulanguages.slang_bs 128 #: languages.slang_bs 129 msgctxt "languages.slang_bs" 101 130 msgid "Bosnian" 102 131 msgstr "" 103 132 104 #: ulanguages.slang_ca 133 #: languages.slang_ca 134 #, fuzzy 135 msgctxt "languages.slang_ca" 105 136 msgid "Catalan" 106 137 msgstr "Katalánština" 107 138 108 #: ulanguages.slang_ce 139 #: languages.slang_ce 140 msgctxt "languages.slang_ce" 109 141 msgid "Chechen" 110 142 msgstr "" 111 143 112 #: ulanguages.slang_ch 144 #: languages.slang_ch 145 msgctxt "languages.slang_ch" 113 146 msgid "Chamorro" 114 147 msgstr "" 115 148 116 #: ulanguages.slang_co 149 #: languages.slang_co 150 msgctxt "languages.slang_co" 117 151 msgid "Corsican" 118 152 msgstr "" 119 153 120 #: ulanguages.slang_cr 154 #: languages.slang_cr 155 #, fuzzy 156 msgctxt "languages.slang_cr" 121 157 msgid "Cree" 122 158 msgstr "Kríjština" 123 159 124 #: ulanguages.slang_cs 160 #: languages.slang_cs 161 #, fuzzy 162 msgctxt "languages.slang_cs" 125 163 msgid "Czech" 126 164 msgstr "Čeština" 127 165 128 #: ulanguages.slang_cv 166 #: languages.slang_cv 167 msgctxt "languages.slang_cv" 129 168 msgid "Chuvash" 130 169 msgstr "" 131 170 132 #: ulanguages.slang_cy 171 #: languages.slang_cy 172 msgctxt "languages.slang_cy" 133 173 msgid "Welsh" 134 174 msgstr "" 135 175 136 #: ulanguages.slang_da 176 #: languages.slang_da 177 #, fuzzy 178 msgctxt "languages.slang_da" 137 179 msgid "Danish" 138 180 msgstr "Dánština" 139 181 140 #: ulanguages.slang_de 182 #: languages.slang_de 183 #, fuzzy 184 msgctxt "languages.slang_de" 141 185 msgid "German" 142 186 msgstr "Němčina" 143 187 144 #: ulanguages.slang_de_at 188 #: languages.slang_de_at 189 #, fuzzy 190 msgctxt "languages.slang_de_at" 145 191 msgid "Austrian German" 146 192 msgstr "Australská němčina" 147 193 148 #: ulanguages.slang_de_ch 194 #: languages.slang_de_ch 195 #, fuzzy 196 msgctxt "languages.slang_de_ch" 149 197 msgid "Swiss German" 150 198 msgstr "Švédská němčina" 151 199 152 #: ulanguages.slang_dv 200 #: languages.slang_dv 201 msgctxt "languages.slang_dv" 153 202 msgid "Divehi" 154 203 msgstr "" 155 204 156 #: ulanguages.slang_dz 205 #: languages.slang_dz 206 msgctxt "languages.slang_dz" 157 207 msgid "Dzongkha" 158 208 msgstr "" 159 209 160 #: ulanguages.slang_ee 210 #: languages.slang_ee 211 msgctxt "languages.slang_ee" 161 212 msgid "Ewe" 162 213 msgstr "" 163 214 164 #: ulanguages.slang_el 215 #: languages.slang_el 216 #, fuzzy 217 msgctxt "languages.slang_el" 165 218 msgid "Greek" 166 219 msgstr "Řečtina" 167 220 168 #: ulanguages.slang_en 221 #: languages.slang_en 222 #, fuzzy 223 msgctxt "languages.slang_en" 169 224 msgid "English" 170 225 msgstr "Angličtina" 171 226 172 #: ulanguages.slang_en_au 227 #: languages.slang_en_au 228 #, fuzzy 229 msgctxt "languages.slang_en_au" 173 230 msgid "Australian English" 174 231 msgstr "Australská angličtina" 175 232 176 #: ulanguages.slang_en_ca 233 #: languages.slang_en_ca 234 #, fuzzy 235 msgctxt "languages.slang_en_ca" 177 236 msgid "Canadian English" 178 237 msgstr "Kanadská angličtina" 179 238 180 #: ulanguages.slang_en_gb 239 #: languages.slang_en_gb 240 #, fuzzy 241 msgctxt "languages.slang_en_gb" 181 242 msgid "British English" 182 243 msgstr "Britská angličtina" 183 244 184 #: ulanguages.slang_en_us 245 #: languages.slang_en_us 246 #, fuzzy 247 msgctxt "languages.slang_en_us" 185 248 msgid "American English" 186 249 msgstr "Americká angličtina" 187 250 188 #: ulanguages.slang_eo 251 #: languages.slang_eo 252 #, fuzzy 253 msgctxt "languages.slang_eo" 189 254 msgid "Esperanto" 190 255 msgstr "Esperanto" 191 256 192 #: ulanguages.slang_es 257 #: languages.slang_es 258 #, fuzzy 259 msgctxt "languages.slang_es" 193 260 msgid "Spanish" 194 261 msgstr "Španělština" 195 262 196 #: ulanguages.slang_et 263 #: languages.slang_et 264 #, fuzzy 265 msgctxt "languages.slang_et" 197 266 msgid "Estonian" 198 267 msgstr "Estonština" 199 268 200 #: ulanguages.slang_eu 269 #: languages.slang_eu 270 msgctxt "languages.slang_eu" 201 271 msgid "Basque" 202 272 msgstr "" 203 273 204 #: ulanguages.slang_fa 274 #: languages.slang_fa 275 #, fuzzy 276 msgctxt "languages.slang_fa" 205 277 msgid "Persian" 206 278 msgstr "Perština" 207 279 208 #: ulanguages.slang_ff 280 #: languages.slang_ff 281 msgctxt "languages.slang_ff" 209 282 msgid "Fulah" 210 283 msgstr "" 211 284 212 #: ulanguages.slang_fi 285 #: languages.slang_fi 286 #, fuzzy 287 msgctxt "languages.slang_fi" 213 288 msgid "Finnish" 214 289 msgstr "Finština" 215 290 216 #: ulanguages.slang_fj 291 #: languages.slang_fj 292 msgctxt "languages.slang_fj" 217 293 msgid "Fijian" 218 294 msgstr "" 219 295 220 #: ulanguages.slang_fo 296 #: languages.slang_fo 297 msgctxt "languages.slang_fo" 221 298 msgid "Faroese" 222 299 msgstr "" 223 300 224 #: ulanguages.slang_fr 301 #: languages.slang_fr 302 #, fuzzy 303 msgctxt "languages.slang_fr" 225 304 msgid "French" 226 305 msgstr "Francouzština" 227 306 228 #: ulanguages.slang_fr_be229 msgctxt " ulanguages.slang_fr_be"307 #: languages.slang_fr_be 308 msgctxt "languages.slang_fr_be" 230 309 msgid "Walloon" 231 310 msgstr "" 232 311 233 #: ulanguages.slang_fy 312 #: languages.slang_fy 313 msgctxt "languages.slang_fy" 234 314 msgid "Frisian" 235 315 msgstr "" 236 316 237 #: ulanguages.slang_ga 317 #: languages.slang_ga 318 #, fuzzy 319 msgctxt "languages.slang_ga" 238 320 msgid "Irish" 239 321 msgstr "Irština" 240 322 241 #: ulanguages.slang_gd 323 #: languages.slang_gd 324 msgctxt "languages.slang_gd" 242 325 msgid "Gaelic" 243 326 msgstr "" 244 327 245 #: ulanguages.slang_gl 328 #: languages.slang_gl 329 msgctxt "languages.slang_gl" 246 330 msgid "Gallegan" 247 331 msgstr "" 248 332 249 #: ulanguages.slang_gn 333 #: languages.slang_gn 334 msgctxt "languages.slang_gn" 250 335 msgid "Guarani" 251 336 msgstr "" 252 337 253 #: ulanguages.slang_gu 338 #: languages.slang_gu 339 msgctxt "languages.slang_gu" 254 340 msgid "Gujarati" 255 341 msgstr "" 256 342 257 #: ulanguages.slang_gv 343 #: languages.slang_gv 344 msgctxt "languages.slang_gv" 258 345 msgid "Manx" 259 346 msgstr "" 260 347 261 #: ulanguages.slang_ha 348 #: languages.slang_ha 349 msgctxt "languages.slang_ha" 262 350 msgid "Hausa" 263 351 msgstr "" 264 352 265 #: ulanguages.slang_he 353 #: languages.slang_he 354 #, fuzzy 355 msgctxt "languages.slang_he" 266 356 msgid "Hebrew" 267 357 msgstr "Hebrejština" 268 358 269 #: ulanguages.slang_hi 359 #: languages.slang_hi 360 msgctxt "languages.slang_hi" 270 361 msgid "Hindi" 271 362 msgstr "" 272 363 273 #: ulanguages.slang_ho 364 #: languages.slang_ho 365 msgctxt "languages.slang_ho" 274 366 msgid "Hiri Motu" 275 367 msgstr "" 276 368 277 #: ulanguages.slang_hr 369 #: languages.slang_hr 370 #, fuzzy 371 msgctxt "languages.slang_hr" 278 372 msgid "Croatian" 279 373 msgstr "Chorvatština" 280 374 281 #: ulanguages.slang_ht 375 #: languages.slang_ht 376 msgctxt "languages.slang_ht" 282 377 msgid "Haitian" 283 378 msgstr "" 284 379 285 #: ulanguages.slang_hu 380 #: languages.slang_hu 381 #, fuzzy 382 msgctxt "languages.slang_hu" 286 383 msgid "Hungarian" 287 384 msgstr "Maďarština" 288 385 289 #: ulanguages.slang_hy 386 #: languages.slang_hy 387 #, fuzzy 388 msgctxt "languages.slang_hy" 290 389 msgid "Armenian" 291 390 msgstr "Arménština" 292 391 293 #: ulanguages.slang_hz 392 #: languages.slang_hz 393 msgctxt "languages.slang_hz" 294 394 msgid "Herero" 295 395 msgstr "" 296 396 297 #: ulanguages.slang_ia 397 #: languages.slang_ia 398 msgctxt "languages.slang_ia" 298 399 msgid "Interlingua" 299 400 msgstr "" 300 401 301 #: ulanguages.slang_id 402 #: languages.slang_id 403 msgctxt "languages.slang_id" 302 404 msgid "Indonesian" 303 405 msgstr "" 304 406 305 #: ulanguages.slang_ie 407 #: languages.slang_ie 408 msgctxt "languages.slang_ie" 306 409 msgid "Interlingue" 307 410 msgstr "" 308 411 309 #: ulanguages.slang_ig 412 #: languages.slang_ig 413 msgctxt "languages.slang_ig" 310 414 msgid "Igbo" 311 415 msgstr "" 312 416 313 #: ulanguages.slang_ii 417 #: languages.slang_ii 418 msgctxt "languages.slang_ii" 314 419 msgid "Sichuan Yi" 315 420 msgstr "" 316 421 317 #: ulanguages.slang_ik 422 #: languages.slang_ik 423 msgctxt "languages.slang_ik" 318 424 msgid "Inupiaq" 319 425 msgstr "" 320 426 321 #: ulanguages.slang_io 427 #: languages.slang_io 428 msgctxt "languages.slang_io" 322 429 msgid "Ido" 323 430 msgstr "" 324 431 325 #: ulanguages.slang_is 432 #: languages.slang_is 433 #, fuzzy 434 msgctxt "languages.slang_is" 326 435 msgid "Icelandic" 327 436 msgstr "Islandština" 328 437 329 #: ulanguages.slang_it 438 #: languages.slang_it 439 #, fuzzy 440 msgctxt "languages.slang_it" 330 441 msgid "Italian" 331 442 msgstr "Italština" 332 443 333 #: ulanguages.slang_iu 444 #: languages.slang_iu 445 msgctxt "languages.slang_iu" 334 446 msgid "Inuktitut" 335 447 msgstr "" 336 448 337 #: ulanguages.slang_ja 449 #: languages.slang_ja 450 #, fuzzy 451 msgctxt "languages.slang_ja" 338 452 msgid "Japanese" 339 453 msgstr "Japonština" 340 454 341 #: ulanguages.slang_jv 455 #: languages.slang_jv 456 msgctxt "languages.slang_jv" 342 457 msgid "Javanese" 343 458 msgstr "" 344 459 345 #: ulanguages.slang_ka 460 #: languages.slang_ka 461 #, fuzzy 462 msgctxt "languages.slang_ka" 346 463 msgid "Georgian" 347 464 msgstr "Gruzínština" 348 465 349 #: ulanguages.slang_kg 466 #: languages.slang_kg 467 #, fuzzy 468 msgctxt "languages.slang_kg" 350 469 msgid "Kongo" 351 470 msgstr "Konžština" 352 471 353 #: ulanguages.slang_ki 472 #: languages.slang_ki 473 msgctxt "languages.slang_ki" 354 474 msgid "Kikuyu" 355 475 msgstr "" 356 476 357 #: ulanguages.slang_kj 477 #: languages.slang_kj 478 msgctxt "languages.slang_kj" 358 479 msgid "Kuanyama" 359 480 msgstr "" 360 481 361 #: ulanguages.slang_kk 482 #: languages.slang_kk 483 msgctxt "languages.slang_kk" 362 484 msgid "Kazakh" 363 485 msgstr "" 364 486 365 #: ulanguages.slang_kl 487 #: languages.slang_kl 488 #, fuzzy 489 msgctxt "languages.slang_kl" 366 490 msgid "Greenlandic" 367 491 msgstr "Grónština" 368 492 369 #: ulanguages.slang_km 493 #: languages.slang_km 494 msgctxt "languages.slang_km" 370 495 msgid "Khmer" 371 496 msgstr "" 372 497 373 #: ulanguages.slang_kn 498 #: languages.slang_kn 499 #, fuzzy 500 msgctxt "languages.slang_kn" 374 501 msgid "Kannada" 375 502 msgstr "Kannadština" 376 503 377 #: ulanguages.slang_ko 504 #: languages.slang_ko 505 #, fuzzy 506 msgctxt "languages.slang_ko" 378 507 msgid "Korean" 379 508 msgstr "Korejština" 380 509 381 #: ulanguages.slang_kr 510 #: languages.slang_kr 511 msgctxt "languages.slang_kr" 382 512 msgid "Kanuri" 383 513 msgstr "" 384 514 385 #: ulanguages.slang_ks 515 #: languages.slang_ks 516 msgctxt "languages.slang_ks" 386 517 msgid "Kashmiri" 387 518 msgstr "" 388 519 389 #: ulanguages.slang_ku 520 #: languages.slang_ku 521 msgctxt "languages.slang_ku" 390 522 msgid "Kurdish" 391 523 msgstr "" 392 524 393 #: ulanguages.slang_kv 525 #: languages.slang_kv 526 msgctxt "languages.slang_kv" 394 527 msgid "Komi" 395 528 msgstr "" 396 529 397 #: ulanguages.slang_kw 530 #: languages.slang_kw 531 #, fuzzy 532 msgctxt "languages.slang_kw" 398 533 msgid "Cornish" 399 534 msgstr "Kornština" 400 535 401 #: ulanguages.slang_ky 536 #: languages.slang_ky 537 msgctxt "languages.slang_ky" 402 538 msgid "Kirghiz" 403 539 msgstr "" 404 540 405 #: ulanguages.slang_la 541 #: languages.slang_la 542 #, fuzzy 543 msgctxt "languages.slang_la" 406 544 msgid "Latin" 407 545 msgstr "Latina" 408 546 409 #: ulanguages.slang_lb 547 #: languages.slang_lb 548 #, fuzzy 549 msgctxt "languages.slang_lb" 410 550 msgid "Luxembourgish" 411 551 msgstr "Lucemburština" 412 552 413 #: ulanguages.slang_lg 553 #: languages.slang_lg 554 msgctxt "languages.slang_lg" 414 555 msgid "Ganda" 415 556 msgstr "" 416 557 417 #: ulanguages.slang_li 558 #: languages.slang_li 559 msgctxt "languages.slang_li" 418 560 msgid "Limburgan" 419 561 msgstr "" 420 562 421 #: ulanguages.slang_ln 563 #: languages.slang_ln 564 msgctxt "languages.slang_ln" 422 565 msgid "Lingala" 423 566 msgstr "" 424 567 425 #: ulanguages.slang_lo 568 #: languages.slang_lo 569 #, fuzzy 570 msgctxt "languages.slang_lo" 426 571 msgid "Lao" 427 572 msgstr "Laoština" 428 573 429 #: ulanguages.slang_lt 574 #: languages.slang_lt 575 #, fuzzy 576 msgctxt "languages.slang_lt" 430 577 msgid "Lithuanian" 431 578 msgstr "Litevština" 432 579 433 #: ulanguages.slang_lu 580 #: languages.slang_lu 581 msgctxt "languages.slang_lu" 434 582 msgid "Luba-Katanga" 435 583 msgstr "" 436 584 437 #: ulanguages.slang_lv 585 #: languages.slang_lv 586 #, fuzzy 587 msgctxt "languages.slang_lv" 438 588 msgid "Latvian" 439 589 msgstr "Lotyština" 440 590 441 #: ulanguages.slang_mg 591 #: languages.slang_mg 592 msgctxt "languages.slang_mg" 442 593 msgid "Malagasy" 443 594 msgstr "" 444 595 445 #: ulanguages.slang_mh 596 #: languages.slang_mh 597 msgctxt "languages.slang_mh" 446 598 msgid "Marshallese" 447 599 msgstr "" 448 600 449 #: ulanguages.slang_mi 601 #: languages.slang_mi 602 msgctxt "languages.slang_mi" 450 603 msgid "Maori" 451 604 msgstr "" 452 605 453 #: ulanguages.slang_mk 606 #: languages.slang_mk 607 #, fuzzy 608 msgctxt "languages.slang_mk" 454 609 msgid "Macedonian" 455 610 msgstr "Makedonština" 456 611 457 #: ulanguages.slang_ml 612 #: languages.slang_ml 613 msgctxt "languages.slang_ml" 458 614 msgid "Malayalam" 459 615 msgstr "" 460 616 461 #: ulanguages.slang_mn 617 #: languages.slang_mn 618 #, fuzzy 619 msgctxt "languages.slang_mn" 462 620 msgid "Mongolian" 463 621 msgstr "Mongolština" 464 622 465 #: ulanguages.slang_mo 623 #: languages.slang_mo 624 #, fuzzy 625 msgctxt "languages.slang_mo" 466 626 msgid "Moldavian" 467 627 msgstr "Moldavština" 468 628 469 #: ulanguages.slang_mr 629 #: languages.slang_mr 630 msgctxt "languages.slang_mr" 470 631 msgid "Marathi" 471 632 msgstr "" 472 633 473 #: ulanguages.slang_ms 634 #: languages.slang_ms 635 msgctxt "languages.slang_ms" 474 636 msgid "Malay" 475 637 msgstr "" 476 638 477 #: ulanguages.slang_mt 639 #: languages.slang_mt 640 msgctxt "languages.slang_mt" 478 641 msgid "Maltese" 479 642 msgstr "" 480 643 481 #: ulanguages.slang_my 644 #: languages.slang_my 645 msgctxt "languages.slang_my" 482 646 msgid "Burmese" 483 647 msgstr "" 484 648 485 #: ulanguages.slang_na 649 #: languages.slang_na 650 msgctxt "languages.slang_na" 486 651 msgid "Nauru" 487 652 msgstr "" 488 653 489 #: ulanguages.slang_nb 654 #: languages.slang_nb 655 msgctxt "languages.slang_nb" 490 656 msgid "Norwegian Bokmaal" 491 657 msgstr "" 492 658 493 #: ulanguages.slang_nd 659 #: languages.slang_nd 660 msgctxt "languages.slang_nd" 494 661 msgid "Ndebele, North" 495 662 msgstr "" 496 663 497 #: ulanguages.slang_ne 664 #: languages.slang_ne 665 msgctxt "languages.slang_ne" 498 666 msgid "Nepali" 499 667 msgstr "" 500 668 501 #: ulanguages.slang_ng 669 #: languages.slang_ng 670 msgctxt "languages.slang_ng" 502 671 msgid "Ndonga" 503 672 msgstr "" 504 673 505 #: ulanguages.slang_nl 674 #: languages.slang_nl 675 #, fuzzy 676 msgctxt "languages.slang_nl" 506 677 msgid "Dutch" 507 678 msgstr "Němčina" 508 679 509 #: ulanguages.slang_nl_be 680 #: languages.slang_nl_be 681 msgctxt "languages.slang_nl_be" 510 682 msgid "Flemish" 511 683 msgstr "" 512 684 513 #: ulanguages.slang_nn 685 #: languages.slang_nn 686 msgctxt "languages.slang_nn" 514 687 msgid "Norwegian Nynorsk" 515 688 msgstr "" 516 689 517 #: ulanguages.slang_no 690 #: languages.slang_no 691 #, fuzzy 692 msgctxt "languages.slang_no" 518 693 msgid "Norwegian" 519 694 msgstr "Norština" 520 695 521 #: ulanguages.slang_nr 696 #: languages.slang_nr 697 msgctxt "languages.slang_nr" 522 698 msgid "Ndebele, South" 523 699 msgstr "" 524 700 525 #: ulanguages.slang_nv 701 #: languages.slang_nv 702 #, fuzzy 703 msgctxt "languages.slang_nv" 526 704 msgid "Navajo" 527 705 msgstr "Navažština" 528 706 529 #: ulanguages.slang_ny 707 #: languages.slang_ny 708 msgctxt "languages.slang_ny" 530 709 msgid "Chichewa" 531 710 msgstr "" 532 711 533 #: ulanguages.slang_oc 712 #: languages.slang_oc 713 msgctxt "languages.slang_oc" 534 714 msgid "Occitan" 535 715 msgstr "" 536 716 537 #: ulanguages.slang_oj 717 #: languages.slang_oj 718 msgctxt "languages.slang_oj" 538 719 msgid "Ojibwa" 539 720 msgstr "" 540 721 541 #: ulanguages.slang_om 722 #: languages.slang_om 723 msgctxt "languages.slang_om" 542 724 msgid "Oromo" 543 725 msgstr "" 544 726 545 #: ulanguages.slang_or 727 #: languages.slang_or 728 msgctxt "languages.slang_or" 546 729 msgid "Oriya" 547 730 msgstr "" 548 731 549 #: ulanguages.slang_os 732 #: languages.slang_os 733 msgctxt "languages.slang_os" 550 734 msgid "Ossetian" 551 735 msgstr "" 552 736 553 #: ulanguages.slang_pa 737 #: languages.slang_pa 738 msgctxt "languages.slang_pa" 554 739 msgid "Panjabi" 555 740 msgstr "" 556 741 557 #: ulanguages.slang_pi 742 #: languages.slang_pi 743 msgctxt "languages.slang_pi" 558 744 msgid "Pali" 559 745 msgstr "" 560 746 561 #: ulanguages.slang_pl 747 #: languages.slang_pl 748 #, fuzzy 749 msgctxt "languages.slang_pl" 562 750 msgid "Polish" 563 751 msgstr "Polština" 564 752 565 #: ulanguages.slang_ps 753 #: languages.slang_ps 754 msgctxt "languages.slang_ps" 566 755 msgid "Pushto" 567 756 msgstr "" 568 757 569 #: ulanguages.slang_pt 758 #: languages.slang_pt 759 #, fuzzy 760 msgctxt "languages.slang_pt" 570 761 msgid "Portuguese" 571 762 msgstr "Portugalština" 572 763 573 #: ulanguages.slang_pt_br 764 #: languages.slang_pt_br 765 #, fuzzy 766 msgctxt "languages.slang_pt_br" 574 767 msgid "Brazilian Portuguese" 575 768 msgstr "Brazislká portugalština" 576 769 577 #: ulanguages.slang_qu 770 #: languages.slang_qu 771 msgctxt "languages.slang_qu" 578 772 msgid "Quechua" 579 773 msgstr "" 580 774 581 #: ulanguages.slang_rm 775 #: languages.slang_rm 776 msgctxt "languages.slang_rm" 582 777 msgid "Raeto-Romance" 583 778 msgstr "" 584 779 585 #: ulanguages.slang_rn 780 #: languages.slang_rn 781 msgctxt "languages.slang_rn" 586 782 msgid "Rundi" 587 783 msgstr "" 588 784 589 #: ulanguages.slang_ro 785 #: languages.slang_ro 786 #, fuzzy 787 msgctxt "languages.slang_ro" 590 788 msgid "Romanian" 591 789 msgstr "Romština" 592 790 593 #: ulanguages.slang_ru 791 #: languages.slang_ru 792 #, fuzzy 793 msgctxt "languages.slang_ru" 594 794 msgid "Russian" 595 795 msgstr "Ruština" 596 796 597 #: ulanguages.slang_rw 797 #: languages.slang_rw 798 msgctxt "languages.slang_rw" 598 799 msgid "Kinyarwanda" 599 800 msgstr "" 600 801 601 #: ulanguages.slang_sa 802 #: languages.slang_sa 803 msgctxt "languages.slang_sa" 602 804 msgid "Sanskrit" 603 805 msgstr "" 604 806 605 #: ulanguages.slang_sc 807 #: languages.slang_sc 808 msgctxt "languages.slang_sc" 606 809 msgid "Sardinian" 607 810 msgstr "" 608 811 609 #: ulanguages.slang_sd 812 #: languages.slang_sd 813 msgctxt "languages.slang_sd" 610 814 msgid "Sindhi" 611 815 msgstr "" 612 816 613 #: ulanguages.slang_se 817 #: languages.slang_se 818 msgctxt "languages.slang_se" 614 819 msgid "Northern Sami" 615 820 msgstr "" 616 821 617 #: ulanguages.slang_sg 822 #: languages.slang_sg 823 msgctxt "languages.slang_sg" 618 824 msgid "Sango" 619 825 msgstr "" 620 826 621 #: ulanguages.slang_si 827 #: languages.slang_si 828 msgctxt "languages.slang_si" 622 829 msgid "Sinhalese" 623 830 msgstr "" 624 831 625 #: ulanguages.slang_sk 832 #: languages.slang_sk 833 #, fuzzy 834 msgctxt "languages.slang_sk" 626 835 msgid "Slovak" 627 836 msgstr "Slovenština" 628 837 629 #: ulanguages.slang_sl 838 #: languages.slang_sl 839 #, fuzzy 840 msgctxt "languages.slang_sl" 630 841 msgid "Slovenian" 631 842 msgstr "Slovinština" 632 843 633 #: ulanguages.slang_sm 844 #: languages.slang_sm 845 msgctxt "languages.slang_sm" 634 846 msgid "Samoan" 635 847 msgstr "" 636 848 637 #: ulanguages.slang_sn 849 #: languages.slang_sn 850 msgctxt "languages.slang_sn" 638 851 msgid "Shona" 639 852 msgstr "" 640 853 641 #: ulanguages.slang_so 854 #: languages.slang_so 855 msgctxt "languages.slang_so" 642 856 msgid "Somali" 643 857 msgstr "" 644 858 645 #: ulanguages.slang_sq 859 #: languages.slang_sq 860 #, fuzzy 861 msgctxt "languages.slang_sq" 646 862 msgid "Albanian" 647 863 msgstr "Albánština" 648 864 649 #: ulanguages.slang_sr 865 #: languages.slang_sr 866 msgctxt "languages.slang_sr" 650 867 msgid "Serbian" 651 868 msgstr "" 652 869 653 #: ulanguages.slang_ss 870 #: languages.slang_ss 871 msgctxt "languages.slang_ss" 654 872 msgid "Swati" 655 873 msgstr "" 656 874 657 #: ulanguages.slang_st 875 #: languages.slang_st 876 msgctxt "languages.slang_st" 658 877 msgid "Sotho, Southern" 659 878 msgstr "" 660 879 661 #: ulanguages.slang_su 880 #: languages.slang_su 881 #, fuzzy 882 msgctxt "languages.slang_su" 662 883 msgid "Sundanese" 663 884 msgstr "Sundština" 664 885 665 #: ulanguages.slang_sv 886 #: languages.slang_sv 887 #, fuzzy 888 msgctxt "languages.slang_sv" 666 889 msgid "Swedish" 667 890 msgstr "Švédština" 668 891 669 #: ulanguages.slang_sw 892 #: languages.slang_sw 893 msgctxt "languages.slang_sw" 670 894 msgid "Swahili" 671 895 msgstr "" 672 896 673 #: ulanguages.slang_ta 897 #: languages.slang_ta 898 msgctxt "languages.slang_ta" 674 899 msgid "Tamil" 675 900 msgstr "" 676 901 677 #: ulanguages.slang_te 902 #: languages.slang_te 903 msgctxt "languages.slang_te" 678 904 msgid "Telugu" 679 905 msgstr "" 680 906 681 #: ulanguages.slang_tg 907 #: languages.slang_tg 908 msgctxt "languages.slang_tg" 682 909 msgid "Tajik" 683 910 msgstr "" 684 911 685 #: ulanguages.slang_th 912 #: languages.slang_th 913 msgctxt "languages.slang_th" 686 914 msgid "Thai" 687 915 msgstr "" 688 916 689 #: ulanguages.slang_ti 917 #: languages.slang_ti 918 msgctxt "languages.slang_ti" 690 919 msgid "Tigrinya" 691 920 msgstr "" 692 921 693 #: ulanguages.slang_tk 922 #: languages.slang_tk 923 msgctxt "languages.slang_tk" 694 924 msgid "Turkmen" 695 925 msgstr "" 696 926 697 #: ulanguages.slang_tl 927 #: languages.slang_tl 928 msgctxt "languages.slang_tl" 698 929 msgid "Tagalog" 699 930 msgstr "" 700 931 701 #: ulanguages.slang_tn 932 #: languages.slang_tn 933 msgctxt "languages.slang_tn" 702 934 msgid "Tswana" 703 935 msgstr "" 704 936 705 #: ulanguages.slang_to 937 #: languages.slang_to 938 msgctxt "languages.slang_to" 706 939 msgid "Tonga" 707 940 msgstr "" 708 941 709 #: ulanguages.slang_tr 942 #: languages.slang_tr 943 #, fuzzy 944 msgctxt "languages.slang_tr" 710 945 msgid "Turkish" 711 946 msgstr "Turečtina" 712 947 713 #: ulanguages.slang_ts 948 #: languages.slang_ts 949 msgctxt "languages.slang_ts" 714 950 msgid "Tsonga" 715 951 msgstr "" 716 952 717 #: ulanguages.slang_tt 953 #: languages.slang_tt 954 #, fuzzy 955 msgctxt "languages.slang_tt" 718 956 msgid "Tatar" 719 957 msgstr "Tatarština" 720 958 721 #: ulanguages.slang_tw 959 #: languages.slang_tw 960 msgctxt "languages.slang_tw" 722 961 msgid "Twi" 723 962 msgstr "" 724 963 725 #: ulanguages.slang_ty 964 #: languages.slang_ty 965 msgctxt "languages.slang_ty" 726 966 msgid "Tahitian" 727 967 msgstr "" 728 968 729 #: ulanguages.slang_ug 969 #: languages.slang_ug 970 msgctxt "languages.slang_ug" 730 971 msgid "Uighur" 731 972 msgstr "" 732 973 733 #: ulanguages.slang_uk 974 #: languages.slang_uk 975 #, fuzzy 976 msgctxt "languages.slang_uk" 734 977 msgid "Ukrainian" 735 978 msgstr "Ukrajinština" 736 979 737 #: ulanguages.slang_ur 980 #: languages.slang_ur 981 msgctxt "languages.slang_ur" 738 982 msgid "Urdu" 739 983 msgstr "" 740 984 741 #: ulanguages.slang_uz 985 #: languages.slang_uz 986 msgctxt "languages.slang_uz" 742 987 msgid "Uzbek" 743 988 msgstr "" 744 989 745 #: ulanguages.slang_ve 990 #: languages.slang_ve 991 msgctxt "languages.slang_ve" 746 992 msgid "Venda" 747 993 msgstr "" 748 994 749 #: ulanguages.slang_vi 995 #: languages.slang_vi 996 #, fuzzy 997 msgctxt "languages.slang_vi" 750 998 msgid "Vietnamese" 751 999 msgstr "Vietnamština" 752 1000 753 #: ulanguages.slang_vo 1001 #: languages.slang_vo 1002 msgctxt "languages.slang_vo" 754 1003 msgid "Volapuk" 755 1004 msgstr "" 756 1005 757 #: ulanguages.slang_wa758 msgctxt " ulanguages.slang_wa"1006 #: languages.slang_wa 1007 msgctxt "languages.slang_wa" 759 1008 msgid "Walloon" 760 1009 msgstr "" 761 1010 762 #: ulanguages.slang_wo 1011 #: languages.slang_wo 1012 msgctxt "languages.slang_wo" 763 1013 msgid "Wolof" 764 1014 msgstr "" 765 1015 766 #: ulanguages.slang_xh 1016 #: languages.slang_xh 1017 msgctxt "languages.slang_xh" 767 1018 msgid "Xhosa" 768 1019 msgstr "" 769 1020 770 #: ulanguages.slang_yi 1021 #: languages.slang_yi 1022 msgctxt "languages.slang_yi" 771 1023 msgid "Yiddish" 772 1024 msgstr "" 773 1025 774 #: ulanguages.slang_yo 1026 #: languages.slang_yo 1027 msgctxt "languages.slang_yo" 775 1028 msgid "Yoruba" 776 1029 msgstr "" 777 1030 778 #: ulanguages.slang_za 1031 #: languages.slang_za 1032 msgctxt "languages.slang_za" 779 1033 msgid "Zhuang" 780 1034 msgstr "" 781 1035 782 #: ulanguages.slang_zh 1036 #: languages.slang_zh 1037 #, fuzzy 1038 msgctxt "languages.slang_zh" 783 1039 msgid "Chinese" 784 1040 msgstr "Čínština" 785 1041 786 #: ulanguages.slang_zu 1042 #: languages.slang_zu 1043 #, fuzzy 1044 msgctxt "languages.slang_zu" 787 1045 msgid "Zulu" 788 1046 msgstr "Zuluština" -
trunk/Packages/Common/Languages/Languages.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: ulanguages.slangauto4 #: languages.slangauto 5 5 msgid "Automatic" 6 6 msgstr "" 7 7 8 #: ulanguages.slang_aa8 #: languages.slang_aa 9 9 msgid "Afar" 10 10 msgstr "" 11 11 12 #: ulanguages.slang_ab12 #: languages.slang_ab 13 13 msgid "Abkhazian" 14 14 msgstr "" 15 15 16 #: ulanguages.slang_ae16 #: languages.slang_ae 17 17 msgid "Avestan" 18 18 msgstr "" 19 19 20 #: ulanguages.slang_af20 #: languages.slang_af 21 21 msgid "Afrikaans" 22 22 msgstr "" 23 23 24 #: ulanguages.slang_ak24 #: languages.slang_ak 25 25 msgid "Akan" 26 26 msgstr "" 27 27 28 #: ulanguages.slang_am28 #: languages.slang_am 29 29 msgid "Amharic" 30 30 msgstr "" 31 31 32 #: ulanguages.slang_an32 #: languages.slang_an 33 33 msgid "Aragonese" 34 34 msgstr "" 35 35 36 #: ulanguages.slang_ar36 #: languages.slang_ar 37 37 msgid "Arabic" 38 38 msgstr "" 39 39 40 #: ulanguages.slang_as40 #: languages.slang_as 41 41 msgid "Assamese" 42 42 msgstr "" 43 43 44 #: ulanguages.slang_av44 #: languages.slang_av 45 45 msgid "Avaric" 46 46 msgstr "" 47 47 48 #: ulanguages.slang_ay48 #: languages.slang_ay 49 49 msgid "Aymara" 50 50 msgstr "" 51 51 52 #: ulanguages.slang_az52 #: languages.slang_az 53 53 msgid "Azerbaijani" 54 54 msgstr "" 55 55 56 #: ulanguages.slang_ba56 #: languages.slang_ba 57 57 msgid "Bashkir" 58 58 msgstr "" 59 59 60 #: ulanguages.slang_be60 #: languages.slang_be 61 61 msgid "Belarusian" 62 62 msgstr "" 63 63 64 #: ulanguages.slang_bg64 #: languages.slang_bg 65 65 msgid "Bulgarian" 66 66 msgstr "" 67 67 68 #: ulanguages.slang_bh68 #: languages.slang_bh 69 69 msgid "Bihari" 70 70 msgstr "" 71 71 72 #: ulanguages.slang_bi72 #: languages.slang_bi 73 73 msgid "Bislama" 74 74 msgstr "" 75 75 76 #: ulanguages.slang_bm76 #: languages.slang_bm 77 77 msgid "Bambara" 78 78 msgstr "" 79 79 80 #: ulanguages.slang_bn80 #: languages.slang_bn 81 81 msgid "Bengali" 82 82 msgstr "" 83 83 84 #: ulanguages.slang_bo84 #: languages.slang_bo 85 85 msgid "Tibetan" 86 86 msgstr "" 87 87 88 #: ulanguages.slang_br88 #: languages.slang_br 89 89 msgid "Breton" 90 90 msgstr "" 91 91 92 #: ulanguages.slang_bs92 #: languages.slang_bs 93 93 msgid "Bosnian" 94 94 msgstr "" 95 95 96 #: ulanguages.slang_ca96 #: languages.slang_ca 97 97 msgid "Catalan" 98 98 msgstr "" 99 99 100 #: ulanguages.slang_ce100 #: languages.slang_ce 101 101 msgid "Chechen" 102 102 msgstr "" 103 103 104 #: ulanguages.slang_ch104 #: languages.slang_ch 105 105 msgid "Chamorro" 106 106 msgstr "" 107 107 108 #: ulanguages.slang_co108 #: languages.slang_co 109 109 msgid "Corsican" 110 110 msgstr "" 111 111 112 #: ulanguages.slang_cr112 #: languages.slang_cr 113 113 msgid "Cree" 114 114 msgstr "" 115 115 116 #: ulanguages.slang_cs116 #: languages.slang_cs 117 117 msgid "Czech" 118 118 msgstr "" 119 119 120 #: ulanguages.slang_cv120 #: languages.slang_cv 121 121 msgid "Chuvash" 122 122 msgstr "" 123 123 124 #: ulanguages.slang_cy124 #: languages.slang_cy 125 125 msgid "Welsh" 126 126 msgstr "" 127 127 128 #: ulanguages.slang_da128 #: languages.slang_da 129 129 msgid "Danish" 130 130 msgstr "" 131 131 132 #: ulanguages.slang_de132 #: languages.slang_de 133 133 msgid "German" 134 134 msgstr "" 135 135 136 #: ulanguages.slang_de_at136 #: languages.slang_de_at 137 137 msgid "Austrian German" 138 138 msgstr "" 139 139 140 #: ulanguages.slang_de_ch140 #: languages.slang_de_ch 141 141 msgid "Swiss German" 142 142 msgstr "" 143 143 144 #: ulanguages.slang_dv144 #: languages.slang_dv 145 145 msgid "Divehi" 146 146 msgstr "" 147 147 148 #: ulanguages.slang_dz148 #: languages.slang_dz 149 149 msgid "Dzongkha" 150 150 msgstr "" 151 151 152 #: ulanguages.slang_ee152 #: languages.slang_ee 153 153 msgid "Ewe" 154 154 msgstr "" 155 155 156 #: ulanguages.slang_el156 #: languages.slang_el 157 157 msgid "Greek" 158 158 msgstr "" 159 159 160 #: ulanguages.slang_en160 #: languages.slang_en 161 161 msgid "English" 162 162 msgstr "" 163 163 164 #: ulanguages.slang_en_au164 #: languages.slang_en_au 165 165 msgid "Australian English" 166 166 msgstr "" 167 167 168 #: ulanguages.slang_en_ca168 #: languages.slang_en_ca 169 169 msgid "Canadian English" 170 170 msgstr "" 171 171 172 #: ulanguages.slang_en_gb172 #: languages.slang_en_gb 173 173 msgid "British English" 174 174 msgstr "" 175 175 176 #: ulanguages.slang_en_us176 #: languages.slang_en_us 177 177 msgid "American English" 178 178 msgstr "" 179 179 180 #: ulanguages.slang_eo180 #: languages.slang_eo 181 181 msgid "Esperanto" 182 182 msgstr "" 183 183 184 #: ulanguages.slang_es184 #: languages.slang_es 185 185 msgid "Spanish" 186 186 msgstr "" 187 187 188 #: ulanguages.slang_et188 #: languages.slang_et 189 189 msgid "Estonian" 190 190 msgstr "" 191 191 192 #: ulanguages.slang_eu192 #: languages.slang_eu 193 193 msgid "Basque" 194 194 msgstr "" 195 195 196 #: ulanguages.slang_fa196 #: languages.slang_fa 197 197 msgid "Persian" 198 198 msgstr "" 199 199 200 #: ulanguages.slang_ff200 #: languages.slang_ff 201 201 msgid "Fulah" 202 202 msgstr "" 203 203 204 #: ulanguages.slang_fi204 #: languages.slang_fi 205 205 msgid "Finnish" 206 206 msgstr "" 207 207 208 #: ulanguages.slang_fj208 #: languages.slang_fj 209 209 msgid "Fijian" 210 210 msgstr "" 211 211 212 #: ulanguages.slang_fo212 #: languages.slang_fo 213 213 msgid "Faroese" 214 214 msgstr "" 215 215 216 #: ulanguages.slang_fr216 #: languages.slang_fr 217 217 msgid "French" 218 218 msgstr "" 219 219 220 #: ulanguages.slang_fr_be221 msgctxt " ulanguages.slang_fr_be"220 #: languages.slang_fr_be 221 msgctxt "languages.slang_fr_be" 222 222 msgid "Walloon" 223 223 msgstr "" 224 224 225 #: ulanguages.slang_fy225 #: languages.slang_fy 226 226 msgid "Frisian" 227 227 msgstr "" 228 228 229 #: ulanguages.slang_ga229 #: languages.slang_ga 230 230 msgid "Irish" 231 231 msgstr "" 232 232 233 #: ulanguages.slang_gd233 #: languages.slang_gd 234 234 msgid "Gaelic" 235 235 msgstr "" 236 236 237 #: ulanguages.slang_gl237 #: languages.slang_gl 238 238 msgid "Gallegan" 239 239 msgstr "" 240 240 241 #: ulanguages.slang_gn241 #: languages.slang_gn 242 242 msgid "Guarani" 243 243 msgstr "" 244 244 245 #: ulanguages.slang_gu245 #: languages.slang_gu 246 246 msgid "Gujarati" 247 247 msgstr "" 248 248 249 #: ulanguages.slang_gv249 #: languages.slang_gv 250 250 msgid "Manx" 251 251 msgstr "" 252 252 253 #: ulanguages.slang_ha253 #: languages.slang_ha 254 254 msgid "Hausa" 255 255 msgstr "" 256 256 257 #: ulanguages.slang_he257 #: languages.slang_he 258 258 msgid "Hebrew" 259 259 msgstr "" 260 260 261 #: ulanguages.slang_hi261 #: languages.slang_hi 262 262 msgid "Hindi" 263 263 msgstr "" 264 264 265 #: ulanguages.slang_ho265 #: languages.slang_ho 266 266 msgid "Hiri Motu" 267 267 msgstr "" 268 268 269 #: ulanguages.slang_hr269 #: languages.slang_hr 270 270 msgid "Croatian" 271 271 msgstr "" 272 272 273 #: ulanguages.slang_ht273 #: languages.slang_ht 274 274 msgid "Haitian" 275 275 msgstr "" 276 276 277 #: ulanguages.slang_hu277 #: languages.slang_hu 278 278 msgid "Hungarian" 279 279 msgstr "" 280 280 281 #: ulanguages.slang_hy281 #: languages.slang_hy 282 282 msgid "Armenian" 283 283 msgstr "" 284 284 285 #: ulanguages.slang_hz285 #: languages.slang_hz 286 286 msgid "Herero" 287 287 msgstr "" 288 288 289 #: ulanguages.slang_ia289 #: languages.slang_ia 290 290 msgid "Interlingua" 291 291 msgstr "" 292 292 293 #: ulanguages.slang_id293 #: languages.slang_id 294 294 msgid "Indonesian" 295 295 msgstr "" 296 296 297 #: ulanguages.slang_ie297 #: languages.slang_ie 298 298 msgid "Interlingue" 299 299 msgstr "" 300 300 301 #: ulanguages.slang_ig301 #: languages.slang_ig 302 302 msgid "Igbo" 303 303 msgstr "" 304 304 305 #: ulanguages.slang_ii305 #: languages.slang_ii 306 306 msgid "Sichuan Yi" 307 307 msgstr "" 308 308 309 #: ulanguages.slang_ik309 #: languages.slang_ik 310 310 msgid "Inupiaq" 311 311 msgstr "" 312 312 313 #: ulanguages.slang_io313 #: languages.slang_io 314 314 msgid "Ido" 315 315 msgstr "" 316 316 317 #: ulanguages.slang_is317 #: languages.slang_is 318 318 msgid "Icelandic" 319 319 msgstr "" 320 320 321 #: ulanguages.slang_it321 #: languages.slang_it 322 322 msgid "Italian" 323 323 msgstr "" 324 324 325 #: ulanguages.slang_iu325 #: languages.slang_iu 326 326 msgid "Inuktitut" 327 327 msgstr "" 328 328 329 #: ulanguages.slang_ja329 #: languages.slang_ja 330 330 msgid "Japanese" 331 331 msgstr "" 332 332 333 #: ulanguages.slang_jv333 #: languages.slang_jv 334 334 msgid "Javanese" 335 335 msgstr "" 336 336 337 #: ulanguages.slang_ka337 #: languages.slang_ka 338 338 msgid "Georgian" 339 339 msgstr "" 340 340 341 #: ulanguages.slang_kg341 #: languages.slang_kg 342 342 msgid "Kongo" 343 343 msgstr "" 344 344 345 #: ulanguages.slang_ki345 #: languages.slang_ki 346 346 msgid "Kikuyu" 347 347 msgstr "" 348 348 349 #: ulanguages.slang_kj349 #: languages.slang_kj 350 350 msgid "Kuanyama" 351 351 msgstr "" 352 352 353 #: ulanguages.slang_kk353 #: languages.slang_kk 354 354 msgid "Kazakh" 355 355 msgstr "" 356 356 357 #: ulanguages.slang_kl357 #: languages.slang_kl 358 358 msgid "Greenlandic" 359 359 msgstr "" 360 360 361 #: ulanguages.slang_km361 #: languages.slang_km 362 362 msgid "Khmer" 363 363 msgstr "" 364 364 365 #: ulanguages.slang_kn365 #: languages.slang_kn 366 366 msgid "Kannada" 367 367 msgstr "" 368 368 369 #: ulanguages.slang_ko369 #: languages.slang_ko 370 370 msgid "Korean" 371 371 msgstr "" 372 372 373 #: ulanguages.slang_kr373 #: languages.slang_kr 374 374 msgid "Kanuri" 375 375 msgstr "" 376 376 377 #: ulanguages.slang_ks377 #: languages.slang_ks 378 378 msgid "Kashmiri" 379 379 msgstr "" 380 380 381 #: ulanguages.slang_ku381 #: languages.slang_ku 382 382 msgid "Kurdish" 383 383 msgstr "" 384 384 385 #: ulanguages.slang_kv385 #: languages.slang_kv 386 386 msgid "Komi" 387 387 msgstr "" 388 388 389 #: ulanguages.slang_kw389 #: languages.slang_kw 390 390 msgid "Cornish" 391 391 msgstr "" 392 392 393 #: ulanguages.slang_ky393 #: languages.slang_ky 394 394 msgid "Kirghiz" 395 395 msgstr "" 396 396 397 #: ulanguages.slang_la397 #: languages.slang_la 398 398 msgid "Latin" 399 399 msgstr "" 400 400 401 #: ulanguages.slang_lb401 #: languages.slang_lb 402 402 msgid "Luxembourgish" 403 403 msgstr "" 404 404 405 #: ulanguages.slang_lg405 #: languages.slang_lg 406 406 msgid "Ganda" 407 407 msgstr "" 408 408 409 #: ulanguages.slang_li409 #: languages.slang_li 410 410 msgid "Limburgan" 411 411 msgstr "" 412 412 413 #: ulanguages.slang_ln413 #: languages.slang_ln 414 414 msgid "Lingala" 415 415 msgstr "" 416 416 417 #: ulanguages.slang_lo417 #: languages.slang_lo 418 418 msgid "Lao" 419 419 msgstr "" 420 420 421 #: ulanguages.slang_lt421 #: languages.slang_lt 422 422 msgid "Lithuanian" 423 423 msgstr "" 424 424 425 #: ulanguages.slang_lu425 #: languages.slang_lu 426 426 msgid "Luba-Katanga" 427 427 msgstr "" 428 428 429 #: ulanguages.slang_lv429 #: languages.slang_lv 430 430 msgid "Latvian" 431 431 msgstr "" 432 432 433 #: ulanguages.slang_mg433 #: languages.slang_mg 434 434 msgid "Malagasy" 435 435 msgstr "" 436 436 437 #: ulanguages.slang_mh437 #: languages.slang_mh 438 438 msgid "Marshallese" 439 439 msgstr "" 440 440 441 #: ulanguages.slang_mi441 #: languages.slang_mi 442 442 msgid "Maori" 443 443 msgstr "" 444 444 445 #: ulanguages.slang_mk445 #: languages.slang_mk 446 446 msgid "Macedonian" 447 447 msgstr "" 448 448 449 #: ulanguages.slang_ml449 #: languages.slang_ml 450 450 msgid "Malayalam" 451 451 msgstr "" 452 452 453 #: ulanguages.slang_mn453 #: languages.slang_mn 454 454 msgid "Mongolian" 455 455 msgstr "" 456 456 457 #: ulanguages.slang_mo457 #: languages.slang_mo 458 458 msgid "Moldavian" 459 459 msgstr "" 460 460 461 #: ulanguages.slang_mr461 #: languages.slang_mr 462 462 msgid "Marathi" 463 463 msgstr "" 464 464 465 #: ulanguages.slang_ms465 #: languages.slang_ms 466 466 msgid "Malay" 467 467 msgstr "" 468 468 469 #: ulanguages.slang_mt469 #: languages.slang_mt 470 470 msgid "Maltese" 471 471 msgstr "" 472 472 473 #: ulanguages.slang_my473 #: languages.slang_my 474 474 msgid "Burmese" 475 475 msgstr "" 476 476 477 #: ulanguages.slang_na477 #: languages.slang_na 478 478 msgid "Nauru" 479 479 msgstr "" 480 480 481 #: ulanguages.slang_nb481 #: languages.slang_nb 482 482 msgid "Norwegian Bokmaal" 483 483 msgstr "" 484 484 485 #: ulanguages.slang_nd485 #: languages.slang_nd 486 486 msgid "Ndebele, North" 487 487 msgstr "" 488 488 489 #: ulanguages.slang_ne489 #: languages.slang_ne 490 490 msgid "Nepali" 491 491 msgstr "" 492 492 493 #: ulanguages.slang_ng493 #: languages.slang_ng 494 494 msgid "Ndonga" 495 495 msgstr "" 496 496 497 #: ulanguages.slang_nl497 #: languages.slang_nl 498 498 msgid "Dutch" 499 499 msgstr "" 500 500 501 #: ulanguages.slang_nl_be501 #: languages.slang_nl_be 502 502 msgid "Flemish" 503 503 msgstr "" 504 504 505 #: ulanguages.slang_nn505 #: languages.slang_nn 506 506 msgid "Norwegian Nynorsk" 507 507 msgstr "" 508 508 509 #: ulanguages.slang_no509 #: languages.slang_no 510 510 msgid "Norwegian" 511 511 msgstr "" 512 512 513 #: ulanguages.slang_nr513 #: languages.slang_nr 514 514 msgid "Ndebele, South" 515 515 msgstr "" 516 516 517 #: ulanguages.slang_nv517 #: languages.slang_nv 518 518 msgid "Navajo" 519 519 msgstr "" 520 520 521 #: ulanguages.slang_ny521 #: languages.slang_ny 522 522 msgid "Chichewa" 523 523 msgstr "" 524 524 525 #: ulanguages.slang_oc525 #: languages.slang_oc 526 526 msgid "Occitan" 527 527 msgstr "" 528 528 529 #: ulanguages.slang_oj529 #: languages.slang_oj 530 530 msgid "Ojibwa" 531 531 msgstr "" 532 532 533 #: ulanguages.slang_om533 #: languages.slang_om 534 534 msgid "Oromo" 535 535 msgstr "" 536 536 537 #: ulanguages.slang_or537 #: languages.slang_or 538 538 msgid "Oriya" 539 539 msgstr "" 540 540 541 #: ulanguages.slang_os541 #: languages.slang_os 542 542 msgid "Ossetian" 543 543 msgstr "" 544 544 545 #: ulanguages.slang_pa545 #: languages.slang_pa 546 546 msgid "Panjabi" 547 547 msgstr "" 548 548 549 #: ulanguages.slang_pi549 #: languages.slang_pi 550 550 msgid "Pali" 551 551 msgstr "" 552 552 553 #: ulanguages.slang_pl553 #: languages.slang_pl 554 554 msgid "Polish" 555 555 msgstr "" 556 556 557 #: ulanguages.slang_ps557 #: languages.slang_ps 558 558 msgid "Pushto" 559 559 msgstr "" 560 560 561 #: ulanguages.slang_pt561 #: languages.slang_pt 562 562 msgid "Portuguese" 563 563 msgstr "" 564 564 565 #: ulanguages.slang_pt_br565 #: languages.slang_pt_br 566 566 msgid "Brazilian Portuguese" 567 567 msgstr "" 568 568 569 #: ulanguages.slang_qu569 #: languages.slang_qu 570 570 msgid "Quechua" 571 571 msgstr "" 572 572 573 #: ulanguages.slang_rm573 #: languages.slang_rm 574 574 msgid "Raeto-Romance" 575 575 msgstr "" 576 576 577 #: ulanguages.slang_rn577 #: languages.slang_rn 578 578 msgid "Rundi" 579 579 msgstr "" 580 580 581 #: ulanguages.slang_ro581 #: languages.slang_ro 582 582 msgid "Romanian" 583 583 msgstr "" 584 584 585 #: ulanguages.slang_ru585 #: languages.slang_ru 586 586 msgid "Russian" 587 587 msgstr "" 588 588 589 #: ulanguages.slang_rw589 #: languages.slang_rw 590 590 msgid "Kinyarwanda" 591 591 msgstr "" 592 592 593 #: ulanguages.slang_sa593 #: languages.slang_sa 594 594 msgid "Sanskrit" 595 595 msgstr "" 596 596 597 #: ulanguages.slang_sc597 #: languages.slang_sc 598 598 msgid "Sardinian" 599 599 msgstr "" 600 600 601 #: ulanguages.slang_sd601 #: languages.slang_sd 602 602 msgid "Sindhi" 603 603 msgstr "" 604 604 605 #: ulanguages.slang_se605 #: languages.slang_se 606 606 msgid "Northern Sami" 607 607 msgstr "" 608 608 609 #: ulanguages.slang_sg609 #: languages.slang_sg 610 610 msgid "Sango" 611 611 msgstr "" 612 612 613 #: ulanguages.slang_si613 #: languages.slang_si 614 614 msgid "Sinhalese" 615 615 msgstr "" 616 616 617 #: ulanguages.slang_sk617 #: languages.slang_sk 618 618 msgid "Slovak" 619 619 msgstr "" 620 620 621 #: ulanguages.slang_sl621 #: languages.slang_sl 622 622 msgid "Slovenian" 623 623 msgstr "" 624 624 625 #: ulanguages.slang_sm625 #: languages.slang_sm 626 626 msgid "Samoan" 627 627 msgstr "" 628 628 629 #: ulanguages.slang_sn629 #: languages.slang_sn 630 630 msgid "Shona" 631 631 msgstr "" 632 632 633 #: ulanguages.slang_so633 #: languages.slang_so 634 634 msgid "Somali" 635 635 msgstr "" 636 636 637 #: ulanguages.slang_sq637 #: languages.slang_sq 638 638 msgid "Albanian" 639 639 msgstr "" 640 640 641 #: ulanguages.slang_sr641 #: languages.slang_sr 642 642 msgid "Serbian" 643 643 msgstr "" 644 644 645 #: ulanguages.slang_ss645 #: languages.slang_ss 646 646 msgid "Swati" 647 647 msgstr "" 648 648 649 #: ulanguages.slang_st649 #: languages.slang_st 650 650 msgid "Sotho, Southern" 651 651 msgstr "" 652 652 653 #: ulanguages.slang_su653 #: languages.slang_su 654 654 msgid "Sundanese" 655 655 msgstr "" 656 656 657 #: ulanguages.slang_sv657 #: languages.slang_sv 658 658 msgid "Swedish" 659 659 msgstr "" 660 660 661 #: ulanguages.slang_sw661 #: languages.slang_sw 662 662 msgid "Swahili" 663 663 msgstr "" 664 664 665 #: ulanguages.slang_ta665 #: languages.slang_ta 666 666 msgid "Tamil" 667 667 msgstr "" 668 668 669 #: ulanguages.slang_te669 #: languages.slang_te 670 670 msgid "Telugu" 671 671 msgstr "" 672 672 673 #: ulanguages.slang_tg673 #: languages.slang_tg 674 674 msgid "Tajik" 675 675 msgstr "" 676 676 677 #: ulanguages.slang_th677 #: languages.slang_th 678 678 msgid "Thai" 679 679 msgstr "" 680 680 681 #: ulanguages.slang_ti681 #: languages.slang_ti 682 682 msgid "Tigrinya" 683 683 msgstr "" 684 684 685 #: ulanguages.slang_tk685 #: languages.slang_tk 686 686 msgid "Turkmen" 687 687 msgstr "" 688 688 689 #: ulanguages.slang_tl689 #: languages.slang_tl 690 690 msgid "Tagalog" 691 691 msgstr "" 692 692 693 #: ulanguages.slang_tn693 #: languages.slang_tn 694 694 msgid "Tswana" 695 695 msgstr "" 696 696 697 #: ulanguages.slang_to697 #: languages.slang_to 698 698 msgid "Tonga" 699 699 msgstr "" 700 700 701 #: ulanguages.slang_tr701 #: languages.slang_tr 702 702 msgid "Turkish" 703 703 msgstr "" 704 704 705 #: ulanguages.slang_ts705 #: languages.slang_ts 706 706 msgid "Tsonga" 707 707 msgstr "" 708 708 709 #: ulanguages.slang_tt709 #: languages.slang_tt 710 710 msgid "Tatar" 711 711 msgstr "" 712 712 713 #: ulanguages.slang_tw713 #: languages.slang_tw 714 714 msgid "Twi" 715 715 msgstr "" 716 716 717 #: ulanguages.slang_ty717 #: languages.slang_ty 718 718 msgid "Tahitian" 719 719 msgstr "" 720 720 721 #: ulanguages.slang_ug721 #: languages.slang_ug 722 722 msgid "Uighur" 723 723 msgstr "" 724 724 725 #: ulanguages.slang_uk725 #: languages.slang_uk 726 726 msgid "Ukrainian" 727 727 msgstr "" 728 728 729 #: ulanguages.slang_ur729 #: languages.slang_ur 730 730 msgid "Urdu" 731 731 msgstr "" 732 732 733 #: ulanguages.slang_uz733 #: languages.slang_uz 734 734 msgid "Uzbek" 735 735 msgstr "" 736 736 737 #: ulanguages.slang_ve737 #: languages.slang_ve 738 738 msgid "Venda" 739 739 msgstr "" 740 740 741 #: ulanguages.slang_vi741 #: languages.slang_vi 742 742 msgid "Vietnamese" 743 743 msgstr "" 744 744 745 #: ulanguages.slang_vo745 #: languages.slang_vo 746 746 msgid "Volapuk" 747 747 msgstr "" 748 748 749 #: ulanguages.slang_wa750 msgctxt " ulanguages.slang_wa"749 #: languages.slang_wa 750 msgctxt "languages.slang_wa" 751 751 msgid "Walloon" 752 752 msgstr "" 753 753 754 #: ulanguages.slang_wo754 #: languages.slang_wo 755 755 msgid "Wolof" 756 756 msgstr "" 757 757 758 #: ulanguages.slang_xh758 #: languages.slang_xh 759 759 msgid "Xhosa" 760 760 msgstr "" 761 761 762 #: ulanguages.slang_yi762 #: languages.slang_yi 763 763 msgid "Yiddish" 764 764 msgstr "" 765 765 766 #: ulanguages.slang_yo766 #: languages.slang_yo 767 767 msgid "Yoruba" 768 768 msgstr "" 769 769 770 #: ulanguages.slang_za770 #: languages.slang_za 771 771 msgid "Zhuang" 772 772 msgstr "" 773 773 774 #: ulanguages.slang_zh774 #: languages.slang_zh 775 775 msgid "Chinese" 776 776 msgstr "" 777 777 778 #: ulanguages.slang_zu778 #: languages.slang_zu 779 779 msgid "Zulu" 780 780 msgstr "" -
trunk/Packages/Common/Languages/Pool.cs.po
r455 r456 10 10 "Content-Transfer-Encoding: 8bit\n" 11 11 12 #: upool.sobjectpoolempty 12 #: pool.sobjectpoolempty 13 #, fuzzy 14 msgctxt "pool.sobjectpoolempty" 13 15 msgid "Object pool is empty" 14 16 msgstr "Zásobník objektů je prázdný" 15 17 16 #: upool.sreleaseerror 18 #: pool.sreleaseerror 19 #, fuzzy 20 msgctxt "pool.sreleaseerror" 17 21 msgid "Unknown object for release from pool" 18 22 msgstr "Neznýmý objekt pro uvolnění ze zásobníku" -
trunk/Packages/Common/Languages/Pool.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: upool.sobjectpoolempty4 #: pool.sobjectpoolempty 5 5 msgid "Object pool is empty" 6 6 msgstr "" 7 7 8 #: upool.sreleaseerror8 #: pool.sreleaseerror 9 9 msgid "Unknown object for release from pool" 10 10 msgstr "" -
trunk/Packages/Common/Languages/ResetableThread.cs.po
r455 r456 10 10 "Content-Transfer-Encoding: 8bit\n" 11 11 12 #: uresetablethread.swaiterror 12 #: resetablethread.swaiterror 13 #, fuzzy 14 msgctxt "resetablethread.swaiterror" 13 15 msgid "WaitFor error" 14 16 msgstr "Chyba WaitFor" -
trunk/Packages/Common/Languages/ResetableThread.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: uresetablethread.swaiterror4 #: resetablethread.swaiterror 5 5 msgid "WaitFor error" 6 6 msgstr "" -
trunk/Packages/Common/Languages/ScaleDPI.cs.po
r455 r456 12 12 "X-Generator: Poedit 1.8.9\n" 13 13 14 #: uscaledpi.swrongdpi 15 #, object-pascal-format 14 #: scaledpi.swrongdpi 15 #, object-pascal-format, fuzzy 16 msgctxt "scaledpi.swrongdpi" 16 17 msgid "Wrong DPI [%d,%d]" 17 18 msgstr "Chybné DPI [%d,%d]" -
trunk/Packages/Common/Languages/ScaleDPI.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: uscaledpi.swrongdpi4 #: scaledpi.swrongdpi 5 5 #, object-pascal-format 6 6 msgid "Wrong DPI [%d,%d]" -
trunk/Packages/Common/Languages/Threading.cs.po
r455 r456 10 10 "Content-Transfer-Encoding: 8bit\n" 11 11 12 #: uthreading.scurrentthreadnotfound 13 #, object-pascal-format 12 #: threading.scurrentthreadnotfound 13 #, object-pascal-format, fuzzy 14 msgctxt "threading.scurrentthreadnotfound" 14 15 msgid "Current thread ID %d not found in virtual thread list." 15 16 msgstr "Aktuální vlákno ID %d nenalezeno v seznamu virtuálních vláken." -
trunk/Packages/Common/Languages/Threading.pot
r455 r456 2 2 msgstr "Content-Type: text/plain; charset=UTF-8" 3 3 4 #: uthreading.scurrentthreadnotfound4 #: threading.scurrentthreadnotfound 5 5 #, object-pascal-format 6 6 msgid "Current thread ID %d not found in virtual thread list." -
trunk/Packages/Common/LastOpenedList.pas
r455 r456 1 unit ULastOpenedList;1 unit LastOpenedList; 2 2 3 3 interface 4 4 5 5 uses 6 Classes, SysUtils, Registry, URegistry, Menus, XMLConf, DOM;6 Classes, SysUtils, Registry, RegistryEx, Menus, XMLConf, DOM; 7 7 8 8 type … … 194 194 195 195 end. 196 -
trunk/Packages/Common/ListViewSort.pas
r455 r456 1 unit UListViewSort;1 unit ListViewSort; 2 2 3 3 // Date: 2019-05-17 … … 149 149 destructor TListViewEx.Destroy; 150 150 begin 151 inherited Destroy;151 inherited; 152 152 end; 153 153 -
trunk/Packages/Common/Memory.pas
r455 r456 1 unit UMemory;1 unit Memory; 2 2 3 3 interface … … 49 49 procedure TPositionMemory.SetSize(AValue: Integer); 50 50 begin 51 inherited SetSize(AValue);51 inherited; 52 52 if FPosition > FSize then FPosition := FSize; 53 53 end; … … 106 106 begin 107 107 Size := 0; 108 inherited Destroy;108 inherited; 109 109 end; 110 110 … … 120 120 121 121 end. 122 -
trunk/Packages/Common/MetaCanvas.pas
r455 r456 1 unit UMetaCanvas;1 unit MetaCanvas; 2 2 3 3 interface … … 63 63 64 64 TCanvasPolygon = class(TCanvasObject) 65 Pen: TPen; 66 Brush: TBrush; 67 Points: array of TPoint; 68 procedure Paint(Canvas: TCanvas); override; 69 procedure Zoom(Factor: Double); override; 70 procedure Move(Delta: TPoint); override; 71 constructor Create; 72 destructor Destroy; override; 73 end; 74 75 { TCanvasPolyline } 76 77 TCanvasPolyline = class(TCanvasObject) 78 Pen: TPen; 79 Brush: TBrush; 80 Points: array of TPoint; 81 procedure Paint(Canvas: TCanvas); override; 82 procedure Zoom(Factor: Double); override; 83 procedure Move(Delta: TPoint); override; 84 constructor Create; 85 destructor Destroy; override; 86 end; 87 88 { TCanvasPolyBezier } 89 90 TCanvasPolyBezier = class(TCanvasObject) 65 91 Pen: TPen; 66 92 Brush: TBrush; … … 124 150 procedure SetWidth(AValue: Integer); override; 125 151 function GetWidth: Integer; override; 126 procedure DoLine (x1,y1,x2,y2: Integer); override;152 procedure DoLine (x1,y1,x2,y2:integer); override; 127 153 procedure DoTextOut(X, Y: Integer; Text: string); override; 128 154 procedure DoRectangle(const Bounds: TRect); override; … … 133 159 procedure DoMoveTo(X, Y: Integer); override; 134 160 procedure DoLineTo(X, Y: Integer); override; 161 procedure DoPolyline(const Points: array of TPoint); override; 162 procedure DoPolyBezier(Points: PPoint; NumPts: Integer; 163 Filled: Boolean = False; Continuous: Boolean = False); override; 135 164 public 136 165 Objects: TCanvasObjects; … … 141 170 procedure TextOut(X,Y: Integer; const Text: String); override; 142 171 procedure Polygon(Points: PPoint; NumPts: Integer; Winding: Boolean = False); override; 172 procedure Polyline(Points: PPoint; NumPts: Integer); override; 173 procedure PolyBezier(Points: PPoint; NumPts: Integer; 174 Filled: Boolean = False; Continuous: Boolean = True); override; 143 175 procedure Ellipse(x1, y1, x2, y2: Integer); override; 144 176 procedure StretchDraw(const DestRect: TRect; SrcGraphic: TGraphic); override; … … 159 191 160 192 uses 161 UGeometric, LCLIntf; 193 Geometric, LCLIntf; 194 195 { TCanvasPolyBezier } 196 197 procedure TCanvasPolyBezier.Paint(Canvas: TCanvas); 198 begin 199 Canvas.Pen.Assign(Pen); 200 Canvas.Brush.Assign(Brush); 201 Canvas.PolyBezier(Points); 202 end; 203 204 procedure TCanvasPolyBezier.Zoom(Factor: Double); 205 var 206 I: Integer; 207 begin 208 for I := 0 to High(Points) do 209 Points[I] := Point(Trunc(Points[I].X * Factor), 210 Trunc(Points[I].Y * Factor)); 211 Pen.Width := Trunc(Pen.Width * Factor); 212 end; 213 214 procedure TCanvasPolyBezier.Move(Delta: TPoint); 215 var 216 I: Integer; 217 begin 218 for I := 0 to High(Points) do 219 Points[I] := AddPoint(Points[I], Delta); 220 end; 221 222 constructor TCanvasPolyBezier.Create; 223 begin 224 Pen := TPen.Create; 225 Brush := TBrush.Create; 226 end; 227 228 destructor TCanvasPolyBezier.Destroy; 229 begin 230 FreeAndNil(Brush); 231 FreeAndNil(Pen); 232 inherited; 233 end; 234 235 { TCanvasPolyline } 236 237 procedure TCanvasPolyline.Paint(Canvas: TCanvas); 238 begin 239 Canvas.Pen.Assign(Pen); 240 Canvas.Brush.Assign(Brush); 241 Canvas.Polyline(Points); 242 end; 243 244 procedure TCanvasPolyline.Zoom(Factor: Double); 245 var 246 I: Integer; 247 begin 248 for I := 0 to High(Points) do 249 Points[I] := Point(Trunc(Points[I].X * Factor), 250 Trunc(Points[I].Y * Factor)); 251 Pen.Width := Trunc(Pen.Width * Factor); 252 end; 253 254 procedure TCanvasPolyline.Move(Delta: TPoint); 255 var 256 I: Integer; 257 begin 258 for I := 0 to High(Points) do 259 Points[I] := AddPoint(Points[I], Delta); 260 end; 261 262 constructor TCanvasPolyline.Create; 263 begin 264 Pen := TPen.Create; 265 Brush := TBrush.Create; 266 end; 267 268 destructor TCanvasPolyline.Destroy; 269 begin 270 FreeAndNil(Brush); 271 FreeAndNil(Pen); 272 inherited; 273 end; 162 274 163 275 { TCanvasPie } … … 304 416 destructor TCanvasPolygon.Destroy; 305 417 begin 306 Brush.Free;307 Pen.Free;418 FreeAndNil(Brush); 419 FreeAndNil(Pen); 308 420 inherited; 309 421 end; … … 451 563 end; 452 564 453 procedure TMetaCanvas.DoLine(x1, y1, x2, y2: Integer);565 procedure TMetaCanvas.DoLine(x1, y1, x2, y2: integer); 454 566 var 455 567 NewObj: TCanvasLine; … … 511 623 APoints[I] := Points[I]; 512 624 DoPolygon(APoints); 625 end; 626 627 procedure TMetaCanvas.Polyline(Points: PPoint; NumPts: Integer); 628 var 629 APoints: array of TPoint; 630 I: Integer; 631 begin 632 APoints := nil; 633 SetLength(APoints, NumPts); 634 for I := 0 to High(APoints) do 635 APoints[I] := Points[I]; 636 DoPolyline(APoints); 637 end; 638 639 procedure TMetaCanvas.PolyBezier(Points: PPoint; NumPts: Integer; 640 Filled: Boolean; Continuous: Boolean); 641 begin 642 DoPolyBezier(Points, NumPts, Filled, Continuous); 513 643 end; 514 644 … … 580 710 end; 581 711 712 procedure TMetaCanvas.DoPolyline(const Points: array of TPoint); 713 var 714 NewObj: TCanvasPolyline; 715 I: Integer; 716 begin 717 NewObj := TCanvasPolyline.Create; 718 NewObj.Brush.Assign(Brush); 719 NewObj.Pen.Assign(Pen); 720 SetLength(NewObj.Points, Length(Points)); 721 for I := 0 to High(Points) do 722 NewObj.Points[I] := Points[I]; 723 Objects.Add(NewObj); 724 end; 725 726 procedure TMetaCanvas.DoPolyBezier(Points: PPoint; NumPts: Integer; 727 Filled: Boolean; Continuous: Boolean); 728 var 729 NewObj: TCanvasPolyBezier; 730 I: Integer; 731 begin 732 NewObj := TCanvasPolyBezier.Create; 733 NewObj.Brush.Assign(Brush); 734 NewObj.Pen.Assign(Pen); 735 SetLength(NewObj.Points, NumPts); 736 for I := 0 to High(NewObj.Points) do 737 NewObj.Points[I] := Points[I]; 738 Objects.Add(NewObj); 739 end; 740 582 741 procedure TMetaCanvas.FillRect(const ARect: TRect); 583 742 begin … … 664 823 665 824 end. 666 667 -
trunk/Packages/Common/PersistentForm.pas
r455 r456 1 unit UPersistentForm; 2 3 // Date: 2020-11-26 1 unit PersistentForm; 4 2 5 3 interface 6 4 7 5 uses 8 Classes, SysUtils, Forms, URegistry, LCLIntf, Registry, Controls, ComCtrls,6 Classes, SysUtils, Forms, RegistryEx, LCLIntf, Registry, Controls, ComCtrls, 9 7 ExtCtrls, LCLType; 10 8 … … 21 19 procedure SaveControl(Control: TControl); 22 20 public 23 FormNormalSize: TRect;24 21 FormRestoredSize: TRect; 25 22 FormWindowState: TWindowState; … … 155 152 RootKey := RegistryContext.RootKey; 156 153 OpenKey(RegistryContext.Key + '\Forms\' + Form.Name, True); 157 // Normal size 158 FormNormalSize.Left := ReadIntegerWithDefault('NormalLeft', FormNormalSize.Left); 159 FormNormalSize.Top := ReadIntegerWithDefault('NormalTop', FormNormalSize.Top); 160 FormNormalSize.Right := ReadIntegerWithDefault('NormalWidth', FormNormalSize.Right - FormNormalSize.Left) 161 + FormNormalSize.Left; 162 FormNormalSize.Bottom := ReadIntegerWithDefault('NormalHeight', FormNormalSize.Bottom - FormNormalSize.Top) 163 + FormNormalSize.Top; 154 164 155 // Restored size 165 156 FormRestoredSize.Left := ReadIntegerWithDefault('RestoredLeft', FormRestoredSize.Left); … … 169 160 FormRestoredSize.Bottom := ReadIntegerWithDefault('RestoredHeight', FormRestoredSize.Bottom - FormRestoredSize.Top) 170 161 + FormRestoredSize.Top; 162 171 163 // Other state 172 164 FormWindowState := TWindowState(ReadIntegerWithDefault('WindowState', Integer(FormWindowState))); … … 183 175 RootKey := RegistryContext.RootKey; 184 176 OpenKey(RegistryContext.Key + '\Forms\' + Form.Name, True); 185 // Normal state 186 WriteInteger('NormalWidth', FormNormalSize.Right - FormNormalSize.Left); 187 WriteInteger('NormalHeight', FormNormalSize.Bottom - FormNormalSize.Top); 188 WriteInteger('NormalTop', FormNormalSize.Top); 189 WriteInteger('NormalLeft', FormNormalSize.Left); 190 // Restored state 177 178 // Restored size 191 179 WriteInteger('RestoredWidth', FormRestoredSize.Right - FormRestoredSize.Left); 192 180 WriteInteger('RestoredHeight', FormRestoredSize.Bottom - FormRestoredSize.Top); 193 181 WriteInteger('RestoredTop', FormRestoredSize.Top); 194 182 WriteInteger('RestoredLeft', FormRestoredSize.Left); 183 195 184 // Other state 196 185 WriteInteger('WindowState', Integer(FormWindowState)); … … 257 246 begin 258 247 Self.Form := Form; 248 259 249 // Set default 260 FormNormalSize := Bounds((Screen.Width - Form.Width) div 2,261 (Screen.Height - Form.Height) div 2, Form.Width, Form.Height);262 250 FormRestoredSize := Bounds((Screen.Width - Form.Width) div 2, 263 251 (Screen.Height - Form.Height) div 2, Form.Width, Form.Height); … … 267 255 LoadFromRegistry(RegistryContext); 268 256 269 if not EqualRect(FormNormalSize, FormRestoredSize) or 270 DefaultMaximized then begin 257 if (FormWindowState = wsMaximized) or DefaultMaximized then begin 271 258 // Restore to maximized state 272 259 Form.WindowState := wsNormal; … … 277 264 // Restore to normal state 278 265 Form.WindowState := wsNormal; 279 if FEntireVisible then Form NormalSize := CheckEntireVisible(FormNormalSize)266 if FEntireVisible then FormRestoredSize := CheckEntireVisible(FormRestoredSize) 280 267 else if FMinVisiblePart > 0 then 281 FormNormalSize := CheckPartVisible(FormNormalSize, FMinVisiblePart);282 if not EqualRect(Form NormalSize, Form.BoundsRect) then283 Form.BoundsRect := Form NormalSize;268 FormRestoredSize := CheckPartVisible(FormRestoredSize, FMinVisiblePart); 269 if not EqualRect(FormRestoredSize, Form.BoundsRect) then 270 Form.BoundsRect := FormRestoredSize; 284 271 end; 285 272 if FormFullScreen then SetFullScreen(True); … … 290 277 begin 291 278 Self.Form := Form; 292 FormNormalSize := Bounds(Form.Left, Form.Top, Form.Width, Form.Height); 293 if not FormFullScreen then 294 FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth, 295 Form.RestoredHeight); 296 FormWindowState := Form.WindowState; 279 if not FormFullScreen then begin 280 FormWindowState := Form.WindowState; 281 if FormWindowState = wsMaximized then begin 282 FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth, 283 Form.RestoredHeight); 284 end else 285 if FormWindowState = wsNormal then begin 286 FormRestoredSize := Bounds(Form.Left, Form.Top, Form.Width, Form.Height); 287 end; 288 end; 297 289 SaveToRegistry(RegistryContext); 298 290 SaveControl(Form); … … 312 304 if State then begin 313 305 FormFullScreen := True; 314 FormNormalSize := Form.BoundsRect; 315 FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth, 316 Form.RestoredHeight); 306 if Form.WindowState = wsMaximized then begin 307 FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth, 308 Form.RestoredHeight); 309 end else 310 if Form.WindowState = wsNormal then begin 311 FormRestoredSize := Bounds(Form.Left, Form.Top, Form.Width, Form.Height); 312 end; 317 313 FormWindowState := Form.WindowState; 314 Form.WindowState := wsMaximized; 315 Form.WindowState := wsNormal; 318 316 ShowWindow(Form.Handle, SW_SHOWFULLSCREEN); 319 317 {$IFDEF WINDOWS} … … 327 325 ShowWindow(Form.Handle, SW_SHOWNORMAL); 328 326 if FormWindowState = wsNormal then begin 329 Form.BoundsRect := FormNormalSize; 327 Form.WindowState := wsNormal; 328 Form.BoundsRect := FormRestoredSize; 330 329 end else 331 330 if FormWindowState = wsMaximized then begin … … 337 336 338 337 end. 339 -
trunk/Packages/Common/PixelPointer.pas
r455 r456 1 unit UPixelPointer;1 unit PixelPointer; 2 2 3 3 interface … … 15 15 private 16 16 procedure SetRGB(AValue: Cardinal); 17 function GetRGB: Cardinal; 17 function GetRGB: Cardinal; 18 18 public 19 19 property RGB: Cardinal read GetRGB write SetRGB; … … 41 41 procedure SetXY(X, Y: Integer); inline; // Set pixel position relative to base 42 42 procedure SetX(X: Integer); inline; // Set horizontal pixel position relative to base 43 class function Create(Bitmap: TRasterImage; BaseX: Integer = 0; BaseY: Integer = 0): TPixelPointer; inline; static; 43 44 end; 44 45 PPixelPointer = ^TPixelPointer; 45 46 46 function PixelPointer(Bitmap: TRasterImage; BaseX: Integer = 0; BaseY: Integer = 0): TPixelPointer; inline;47 47 function SwapRedBlue(Color: TColor32): TColor32; 48 48 procedure BitmapCopyRect(DstBitmap: TRasterImage; DstRect: TRect; SrcBitmap: TRasterImage; SrcPos: TPoint); … … 120 120 SrcBitmap.BeginUpdate(True); 121 121 DstBitmap.BeginUpdate(True); 122 SrcPtr := PixelPointer(SrcBitmap, SrcPos.X, SrcPos.Y);123 DstPtr := PixelPointer(DstBitmap, DstRect.Left, DstRect.Top);122 SrcPtr := TPixelPointer.Create(SrcBitmap, SrcPos.X, SrcPos.Y); 123 DstPtr := TPixelPointer.Create(DstBitmap, DstRect.Left, DstRect.Top); 124 124 for Y := 0 to DstRect.Height - 1 do begin 125 125 for X := 0 to DstRect.Width - 1 do begin … … 150 150 SrcBitmap.BeginUpdate(True); 151 151 DstBitmap.BeginUpdate(True); 152 SrcPtr := PixelPointer(SrcBitmap, SrcRect.Left, SrcRect.Top);153 DstPtr := PixelPointer(DstBitmap, DstRect.Left, DstRect.Top);152 SrcPtr := TPixelPointer.Create(SrcBitmap, SrcRect.Left, SrcRect.Top); 153 DstPtr := TPixelPointer.Create(DstBitmap, DstRect.Left, DstRect.Top); 154 154 for Y := 0 to DstRect.Height - 1 do begin 155 155 for X := 0 to DstRect.Width - 1 do begin … … 181 181 begin 182 182 Bitmap.BeginUpdate(True); 183 Ptr := PixelPointer(Bitmap);183 Ptr := TPixelPointer.Create(Bitmap); 184 184 for Y := 0 to Bitmap.Height - 1 do begin 185 185 for X := 0 to Bitmap.Width - 1 do begin … … 198 198 begin 199 199 Bitmap.BeginUpdate(True); 200 Ptr := PixelPointer(Bitmap, Rect.Left, Rect.Top);200 Ptr := TPixelPointer.Create(Bitmap, Rect.Left, Rect.Top); 201 201 for Y := 0 to Rect.Height - 1 do begin 202 202 for X := 0 to Rect.Width - 1 do begin … … 215 215 begin 216 216 Bitmap.BeginUpdate(True); 217 Ptr := PixelPointer(Bitmap);217 Ptr := TPixelPointer.Create(Bitmap); 218 218 for Y := 0 to Bitmap.Height - 1 do begin 219 219 for X := 0 to Bitmap.Width - 1 do begin … … 232 232 begin 233 233 Bitmap.BeginUpdate(True); 234 Ptr := PixelPointer(Bitmap);234 Ptr := TPixelPointer.Create(Bitmap); 235 235 for Y := 0 to Bitmap.Height - 1 do begin 236 236 for X := 0 to Bitmap.Width - 1 do begin … … 252 252 Pixel := Color32ToPixel32(Color); 253 253 Bitmap.BeginUpdate(True); 254 Ptr := PixelPointer(Bitmap);254 Ptr := TPixelPointer.Create(Bitmap); 255 255 for Y := 0 to Bitmap.Height - 1 do begin 256 256 for X := 0 to Bitmap.Width - 1 do begin … … 295 295 end; 296 296 297 function PixelPointer(Bitmap: TRasterImage; BaseX: Integer;297 class function TPixelPointer.Create(Bitmap: TRasterImage; BaseX: Integer; 298 298 BaseY: Integer): TPixelPointer; 299 299 begin … … 310 310 end; 311 311 312 313 312 end. 314 -
trunk/Packages/Common/Pool.pas
r455 r456 1 unit UPool;1 unit Pool; 2 2 3 3 interface 4 4 5 5 uses 6 Classes, SysUtils, syncobjs, Generics.Collections, UThreading;6 Classes, SysUtils, syncobjs, Generics.Collections, Threading; 7 7 8 8 type … … 106 106 constructor TThreadedPool.Create; 107 107 begin 108 inherited Create;108 inherited; 109 109 Lock := TCriticalSection.Create; 110 110 end; … … 114 114 TotalCount := 0; 115 115 Lock.Free; 116 inherited Destroy;116 inherited; 117 117 end; 118 118 … … 199 199 200 200 end. 201 -
trunk/Packages/Common/PrefixMultiplier.pas
r455 r456 1 unit UPrefixMultiplier;1 unit PrefixMultiplier; 2 2 3 3 // Date: 2010-06-01 … … 30 30 BasePrefixMultipliers: TPrefixMultiplierDef = 31 31 ( 32 (ShortText: 'y'; FullText: 'yocto'; Value: 1 E-24),33 (ShortText: 'z'; FullText: 'zepto'; Value: 1E-21),34 (ShortText: 'a'; FullText: 'atto'; Value: 1 E-18),35 (ShortText: 'f'; FullText: 'femto'; Value: 1 E-15),36 (ShortText: 'p'; FullText: 'piko'; Value: 1 E-12),37 (ShortText: 'n'; FullText: 'nano'; Value: 1 E-9),38 (ShortText: 'u'; FullText: 'mikro'; Value: 1 E-6),39 (ShortText: 'm'; FullText: 'mili'; Value: 1 E-3),32 (ShortText: 'y'; FullText: 'yocto'; Value: 1e-24), 33 (ShortText: 'z'; FullText: 'zepto'; Value: 1e-21), 34 (ShortText: 'a'; FullText: 'atto'; Value: 1e-18), 35 (ShortText: 'f'; FullText: 'femto'; Value: 1e-15), 36 (ShortText: 'p'; FullText: 'piko'; Value: 1e-12), 37 (ShortText: 'n'; FullText: 'nano'; Value: 1e-9), 38 (ShortText: 'u'; FullText: 'mikro'; Value: 1e-6), 39 (ShortText: 'm'; FullText: 'mili'; Value: 1e-3), 40 40 (ShortText: ''; FullText: ''; Value: 1e0), 41 41 (ShortText: 'k'; FullText: 'kilo'; Value: 1e3), … … 51 51 TimePrefixMultipliers: TPrefixMultiplierDef = 52 52 ( 53 (ShortText: 'ys'; FullText: 'yocto'; Value: 1 E-24),54 (ShortText: 'zs'; FullText: 'zepto'; Value: 1E-21),55 (ShortText: 'as'; FullText: 'atto'; Value: 1 E-18),56 (ShortText: 'fs'; FullText: 'femto'; Value: 1 E-15),57 (ShortText: 'ps'; FullText: 'piko'; Value: 1 E-12),58 (ShortText: 'ns'; FullText: 'nano'; Value: 1 E-9),59 (ShortText: 'us'; FullText: 'mikro'; Value: 1 E-6),60 (ShortText: 'ms'; FullText: 'mili'; Value: 1 E-3),53 (ShortText: 'ys'; FullText: 'yocto'; Value: 1e-24), 54 (ShortText: 'zs'; FullText: 'zepto'; Value: 1e-21), 55 (ShortText: 'as'; FullText: 'atto'; Value: 1e-18), 56 (ShortText: 'fs'; FullText: 'femto'; Value: 1e-15), 57 (ShortText: 'ps'; FullText: 'piko'; Value: 1e-12), 58 (ShortText: 'ns'; FullText: 'nano'; Value: 1e-9), 59 (ShortText: 'us'; FullText: 'mikro'; Value: 1e-6), 60 (ShortText: 'ms'; FullText: 'mili'; Value: 1e-3), 61 61 (ShortText: 's'; FullText: 'sekunda'; Value: 1), 62 62 (ShortText: 'min'; FullText: 'minuta'; Value: 60), … … 124 124 125 125 end. 126 -
trunk/Packages/Common/RegistryEx.pas
r455 r456 1 unit URegistry;1 unit RegistryEx; 2 2 3 3 interface -
trunk/Packages/Common/ResetableThread.pas
r455 r456 1 unit UResetableThread;1 unit ResetableThread; 2 2 3 3 interface 4 4 5 5 uses 6 Classes, SysUtils, syncobjs, UThreading, UPool;6 Classes, SysUtils, syncobjs, Threading, Pool; 7 7 8 8 type … … 165 165 FreeAndNil(FStopEvent); 166 166 FreeAndNil(FLock); 167 inherited Destroy;167 inherited; 168 168 end; 169 169 … … 284 284 constructor TThreadPool.Create; 285 285 begin 286 inherited Create;286 inherited; 287 287 end; 288 288 … … 291 291 TotalCount := 0; 292 292 WaitForEmpty; 293 inherited Destroy;293 inherited; 294 294 end; 295 295 296 296 end. 297 298 -
trunk/Packages/Common/ScaleDPI.pas
r455 r456 1 unit UScaleDPI;1 unit ScaleDPI; 2 2 3 3 { See: http://wiki.lazarus.freepascal.org/High_DPI } … … 259 259 begin 260 260 ImgList.Add(Temp[I], nil); 261 Temp[ I].Free;261 Temp[i].Free; 262 262 end; 263 263 finally -
trunk/Packages/Common/StopWatch.pas
r447 r456 35 35 implementation 36 36 37 constructor TStopWatch.Create(const startOnCreate : Boolean = False) ;37 constructor TStopWatch.Create(const startOnCreate : boolean = false) ; 38 38 begin 39 39 inherited Create; … … 72 72 begin 73 73 dt := ElapsedMiliseconds / MSecsPerSec / SecsPerDay; 74 Result := Format('%d days, %s', [Trunc(dt), FormatDateTime('hh:nn:ss.z', Frac(dt))]) ;74 result := Format('%d days, %s', [Trunc(dt), FormatDateTime('hh:nn:ss.z', Frac(dt))]) ; 75 75 end; 76 76 … … 93 93 94 94 end. 95 -
trunk/Packages/Common/StringTable.pas
r455 r456 1 unit UStringTable;1 unit StringTable; 2 2 3 3 interface … … 39 39 function TStringTable.GetColCount: Integer; 40 40 begin 41 Result := Size. X;41 Result := Size.x; 42 42 end; 43 43 … … 69 69 end; 70 70 71 72 71 end. 73 -
trunk/Packages/Common/SyncCounter.pas
r455 r456 1 unit USyncCounter;1 unit SyncCounter; 2 2 3 3 interface … … 68 68 begin 69 69 Lock.Free; 70 inherited Destroy;70 inherited; 71 71 end; 72 72 … … 78 78 79 79 end. 80 -
trunk/Packages/Common/Theme.pas
r455 r456 1 unit UTheme;1 unit Theme; 2 2 3 3 interface … … 186 186 end; 187 187 188 189 188 end. 190 -
trunk/Packages/Common/Threading.pas
r455 r456 1 unit UThreading;1 unit Threading; 2 2 3 3 interface … … 292 292 end; 293 293 FThread.Free; 294 inherited Destroy;294 inherited; 295 295 end; 296 296 … … 366 366 367 367 end. 368 -
trunk/Packages/Common/Translator.pas
r455 r456 1 unit UTranslator;1 unit Translator; 2 2 3 3 interface … … 5 5 uses 6 6 Classes, SysUtils, Forms, ExtCtrls, Controls, LazFileUtils, LazUTF8, 7 Translations, TypInfo, Dialogs, FileUtil, LCLProc, ULanguages, LCLType,7 Translations, TypInfo, Dialogs, FileUtil, LCLProc, Languages, LCLType, 8 8 LCLVersion, Generics.Collections; 9 9 … … 420 420 421 421 if Lang = '' then begin 422 for I:= 1 to Paramcount - 1 do423 if (ParamStr( I) = '--LANG') or (ParamStr(I) = '-l') or424 (ParamStr( I) = '--lang') then425 Lang := ParamStr( I+ 1);422 for i := 1 to Paramcount - 1 do 423 if (ParamStr(i) = '--LANG') or (ParamStr(i) = '-l') or 424 (ParamStr(i) = '--lang') then 425 Lang := ParamStr(i + 1); 426 426 end; 427 427 if Lang = '' then begin … … 473 473 DirectorySeparator + ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), LCExt); 474 474 if FileExistsUTF8(Result) then 475 Exit;475 exit; 476 476 477 477 Result := ExtractFilePath(ParamStrUTF8(0)) + 'languages' + DirectorySeparator + LangID + 478 478 DirectorySeparator + ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), LCExt); 479 479 if FileExistsUTF8(Result) then 480 Exit;480 exit; 481 481 482 482 Result := ExtractFilePath(ParamStrUTF8(0)) + 'locale' + DirectorySeparator 483 483 + LangID + DirectorySeparator + ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), LCExt); 484 484 if FileExistsUTF8(Result) then 485 Exit;485 exit; 486 486 487 487 Result := ExtractFilePath(ParamStrUTF8(0)) + 'locale' + DirectorySeparator … … 489 489 ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), LCExt); 490 490 if FileExistsUTF8(Result) then 491 Exit;491 exit; 492 492 493 493 {$IFDEF UNIX} … … 496 496 ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), LCExt); 497 497 if FileExistsUTF8(Result) then 498 Exit;498 exit; 499 499 {$ENDIF} 500 500 // Let us search for reducted files 501 LangShortID := Copy(LangID, 1, 2);501 LangShortID := copy(LangID, 1, 2); 502 502 // At first, check all was checked 503 503 Result := ExtractFilePath(ParamStrUTF8(0)) + LangShortID + 504 504 DirectorySeparator + ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), LCExt); 505 505 if FileExistsUTF8(Result) then 506 Exit;506 exit; 507 507 508 508 Result := ExtractFilePath(ParamStrUTF8(0)) + 'languages' + DirectorySeparator + … … 510 510 ExtractFileName(ParamStrUTF8(0)), LCExt); 511 511 if FileExistsUTF8(Result) then 512 Exit;512 exit; 513 513 514 514 Result := ExtractFilePath(ParamStrUTF8(0)) + 'locale' + DirectorySeparator … … 516 516 ExtractFileName(ParamStrUTF8(0)), LCExt); 517 517 if FileExistsUTF8(Result) then 518 Exit;518 exit; 519 519 520 520 Result := ExtractFilePath(ParamStrUTF8(0)) + 'locale' + DirectorySeparator … … 522 522 ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), LCExt); 523 523 if FileExistsUTF8(Result) then 524 Exit;524 exit; 525 525 526 526 // Full language in file name - this will be default for the project … … 529 529 Result := ExtractFilePath(ParamStrUTF8(0)) + ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), Format(FormatLang, [LangID])) + LCExt; 530 530 if FileExistsUTF8(Result) then 531 Exit;531 exit; 532 532 // Common location (like in Lazarus) 533 533 Result := ExtractFilePath(ParamStrUTF8(0)) + 'locale' + DirectorySeparator + 534 534 ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), Format(FormatLang, [LangID])) + LCExt; 535 535 if FileExistsUTF8(Result) then 536 Exit;536 exit; 537 537 538 538 Result := ExtractFilePath(ParamStrUTF8(0)) + 'languages' + 539 539 DirectorySeparator + ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), Format(FormatLang, [LangID])) + LCExt; 540 540 if FileExistsUTF8(Result) then 541 Exit;541 exit; 542 542 except 543 543 Result := ''; // Or do something else (useless) … … 548 548 ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), LCExt); 549 549 if FileExistsUTF8(Result) then 550 Exit;550 exit; 551 551 {$ENDIF} 552 552 Result := ExtractFilePath(ParamStrUTF8(0)) + ChangeFileExt( 553 553 ExtractFileName(ParamStrUTF8(0)), Format(FormatLang, [LangShortID])) + LCExt; 554 554 if FileExistsUTF8(Result) then 555 Exit;555 exit; 556 556 557 557 Result := ExtractFilePath(ParamStrUTF8(0)) + 'locale' + DirectorySeparator + 558 558 ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), Format(FormatLang, [LangShortID])) + LCExt; 559 559 if FileExistsUTF8(Result) then 560 Exit;560 exit; 561 561 562 562 Result := ExtractFilePath(ParamStrUTF8(0)) + 'languages' + DirectorySeparator + 563 563 ChangeFileExt(ExtractFileName(ParamStrUTF8(0)), Format(FormatLang, [LangShortID])) + LCExt; 564 564 if FileExistsUTF8(Result) then 565 Exit;565 exit; 566 566 end; 567 567 … … 569 569 end; 570 570 571 572 571 end. 573 -
trunk/Packages/Common/URI.pas
r455 r456 1 unit U URI;1 unit URI; 2 2 3 3 // Date: 2011-04-04 … … 182 182 begin 183 183 Items.Free; 184 inherited Destroy;184 inherited; 185 185 end; 186 186 … … 231 231 begin 232 232 Path.Free; 233 inherited Destroy;233 inherited; 234 234 end; 235 235 … … 242 242 Fragment := TURI(Source).Fragment; 243 243 Query := TURI(Source).Query; 244 end else inherited Assign(Source);244 end else inherited; 245 245 end; 246 246 … … 290 290 destructor TURL.Destroy; 291 291 begin 292 inherited Destroy;292 inherited; 293 293 end; 294 294 … … 343 343 begin 344 344 Directory.Free; 345 inherited Destroy; 346 end; 347 345 inherited; 346 end; 348 347 349 348 end. 350 -
trunk/Packages/Common/XML.pas
r455 r456 1 unit UXMLUtils;1 unit XML; 2 2 3 3 interface … … 14 14 procedure WriteString(Node: TDOMNode; Name: string; Value: string); 15 15 procedure WriteDateTime(Node: TDOMNode; Name: string; Value: TDateTime); 16 procedure WriteDouble(Node: TDOMNode; Name: string; Value: Double); 16 17 function ReadInteger(Node: TDOMNode; Name: string; DefaultValue: Integer): Integer; 17 18 function ReadInt64(Node: TDOMNode; Name: string; DefaultValue: Int64): Int64; … … 19 20 function ReadString(Node: TDOMNode; Name: string; DefaultValue: string): string; 20 21 function ReadDateTime(Node: TDOMNode; Name: string; DefaultValue: TDateTime): TDateTime; 22 function ReadDouble(Node: TDOMNode; Name: string; DefaultValue: Double): Double; 21 23 procedure ReadXMLFileParser(out Doc: TXMLDocument; FileName: string); 22 24 23 25 24 26 implementation 27 28 function ReadDouble(Node: TDOMNode; Name: string; DefaultValue: Double): Double; 29 var 30 NewNode: TDOMNode; 31 begin 32 Result := DefaultValue; 33 NewNode := Node.FindNode(DOMString(Name)); 34 if Assigned(NewNode) then 35 Result := StrToFloat(string(NewNode.TextContent)); 36 end; 25 37 26 38 procedure ReadXMLFileParser(out Doc: TXMLDocument; FileName: string); … … 200 212 end; 201 213 214 procedure WriteDouble(Node: TDOMNode; Name: string; Value: Double); 215 var 216 NewNode: TDOMNode; 217 begin 218 NewNode := Node.OwnerDocument.CreateElement(DOMString(Name)); 219 NewNode.TextContent := DOMString(FloatToStr(Value)); 220 Node.AppendChild(NewNode); 221 end; 222 202 223 function ReadInteger(Node: TDOMNode; Name: string; DefaultValue: Integer): Integer; 203 224 var … … 252 273 253 274 end. 254
Note:
See TracChangeset
for help on using the changeset viewer.