mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 01:19:16 +02:00
IDE: fixes for High-DPI Image List
git-svn-id: branches/HiDPIImageList@57161 -
This commit is contained in:
parent
83f35c60b3
commit
b4b56d377d
@ -416,6 +416,7 @@ begin
|
|||||||
ImageSize := TIDEImages.ScaledSize;
|
ImageSize := TIDEImages.ScaledSize;
|
||||||
ImageList1.Width := ImageSize;
|
ImageList1.Width := ImageSize;
|
||||||
ImageList1.Height := ImageSize;
|
ImageList1.Height := ImageSize;
|
||||||
|
ImageList1.Scaled := False;
|
||||||
TIDEImages.AddImageToImageList(ImageList1, 'laz_add'); //imageindex 0
|
TIDEImages.AddImageToImageList(ImageList1, 'laz_add'); //imageindex 0
|
||||||
TIDEImages.AddImageToImageList(ImageList1, 'laz_delete'); //imageindex 1
|
TIDEImages.AddImageToImageList(ImageList1, 'laz_delete'); //imageindex 1
|
||||||
TIDEImages.AddImageToImageList(ImageList1, 'arrow_up'); //imadeindex 2
|
TIDEImages.AddImageToImageList(ImageList1, 'arrow_up'); //imadeindex 2
|
||||||
|
@ -591,6 +591,7 @@ begin
|
|||||||
FImageList := TImageList.Create(nil);
|
FImageList := TImageList.Create(nil);
|
||||||
FImageList.Width := TIDEImages.ScaledSize;
|
FImageList.Width := TIDEImages.ScaledSize;
|
||||||
FImageList.Height := TIDEImages.ScaledSize;
|
FImageList.Height := TIDEImages.ScaledSize;
|
||||||
|
FImageList.Scaled := False;
|
||||||
ImgIndexForm := TIDEImages.AddImageToImageList(FImageList, 'oi_form');
|
ImgIndexForm := TIDEImages.AddImageToImageList(FImageList, 'oi_form');
|
||||||
ImgIndexComponent := TIDEImages.AddImageToImageList(FImageList, 'oi_comp');
|
ImgIndexComponent := TIDEImages.AddImageToImageList(FImageList, 'oi_comp');
|
||||||
ImgIndexControl := TIDEImages.AddImageToImageList(FImageList, 'oi_control');
|
ImgIndexControl := TIDEImages.AddImageToImageList(FImageList, 'oi_control');
|
||||||
|
@ -59,7 +59,7 @@ type
|
|||||||
class procedure AssignImage(const ABitmap: TCustomBitmap; ImageName: String;
|
class procedure AssignImage(const ABitmap: TCustomBitmap; ImageName: String;
|
||||||
ImageSize: Integer = 16);
|
ImageSize: Integer = 16);
|
||||||
class function AddImageToImageList(const AImageList: TImageList;
|
class function AddImageToImageList(const AImageList: TImageList;
|
||||||
ImageName: String; ImageSize: Integer = 16): Integer;
|
ImageName: String): Integer;
|
||||||
class function ScaledSize(ImageSize: Integer = 16): Integer;
|
class function ScaledSize(ImageSize: Integer = 16): Integer;
|
||||||
|
|
||||||
function LoadImage(ImageSize: Integer; ImageName: String): Integer; deprecated 'Use the other overload instead.';
|
function LoadImage(ImageSize: Integer; ImageName: String): Integer; deprecated 'Use the other overload instead.';
|
||||||
@ -88,6 +88,7 @@ begin
|
|||||||
FImages_12 := TImageList.Create(nil);
|
FImages_12 := TImageList.Create(nil);
|
||||||
FImages_12.Width := MulDiv(12, GetScalePercent, 100);
|
FImages_12.Width := MulDiv(12, GetScalePercent, 100);
|
||||||
FImages_12.Height := FImages_12.Width;
|
FImages_12.Height := FImages_12.Width;
|
||||||
|
FImages_12.Scaled := False;
|
||||||
end;
|
end;
|
||||||
Result := FImages_12;
|
Result := FImages_12;
|
||||||
end;
|
end;
|
||||||
@ -99,6 +100,7 @@ begin
|
|||||||
FImages_16 := TImageList.Create(nil);
|
FImages_16 := TImageList.Create(nil);
|
||||||
FImages_16.Width := MulDiv(16, GetScalePercent, 100);
|
FImages_16.Width := MulDiv(16, GetScalePercent, 100);
|
||||||
FImages_16.Height := FImages_16.Width;
|
FImages_16.Height := FImages_16.Width;
|
||||||
|
FImages_16.Scaled := False;
|
||||||
end;
|
end;
|
||||||
Result := FImages_16;
|
Result := FImages_16;
|
||||||
end;
|
end;
|
||||||
@ -110,6 +112,7 @@ begin
|
|||||||
FImages_24 := TImageList.Create(nil);
|
FImages_24 := TImageList.Create(nil);
|
||||||
FImages_24.Width := MulDiv(24, GetScalePercent, 100);
|
FImages_24.Width := MulDiv(24, GetScalePercent, 100);
|
||||||
FImages_24.Height := FImages_24.Width;
|
FImages_24.Height := FImages_24.Width;
|
||||||
|
FImages_24.Scaled := False;
|
||||||
end;
|
end;
|
||||||
Result := FImages_24;
|
Result := FImages_24;
|
||||||
end;
|
end;
|
||||||
@ -132,28 +135,8 @@ end;
|
|||||||
|
|
||||||
class function TIDEImages.CreateImage(ImageName: String; ImageSize: Integer
|
class function TIDEImages.CreateImage(ImageName: String; ImageSize: Integer
|
||||||
): TCustomBitmap;
|
): TCustomBitmap;
|
||||||
var
|
|
||||||
Grp: TCustomBitmap;
|
|
||||||
GrpScaledNewInstance: Boolean;
|
|
||||||
ScalePercent, GrpScale: Integer;
|
|
||||||
begin
|
begin
|
||||||
ScalePercent := GetScalePercent;
|
CreateBestBitmapForScalingFromRes(ImageName, GetScalePercent, Result);
|
||||||
|
|
||||||
Grp := nil;
|
|
||||||
try
|
|
||||||
GrpScale := CreateBestBitmapForScalingFromRes(ImageName, ScalePercent, Grp);
|
|
||||||
if Grp<>nil then
|
|
||||||
begin
|
|
||||||
Result := ScaleImage(Grp, GrpScaledNewInstance,
|
|
||||||
MulDiv(ImageSize, ScalePercent, GrpScale), MulDiv(ImageSize, ScalePercent, GrpScale), ScalePercent / GrpScale);
|
|
||||||
if not GrpScaledNewInstance then
|
|
||||||
Grp := nil;
|
|
||||||
Exit; // found
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
Grp.Free;
|
|
||||||
end;
|
|
||||||
Result := nil; // not found
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TIDEImages.AssignImage(const ABitmap: TCustomBitmap;
|
class procedure TIDEImages.AssignImage(const ABitmap: TCustomBitmap;
|
||||||
@ -170,12 +153,12 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
class function TIDEImages.AddImageToImageList(const AImageList: TImageList;
|
class function TIDEImages.AddImageToImageList(const AImageList: TImageList;
|
||||||
ImageName: String; ImageSize: Integer): Integer;
|
ImageName: String): Integer;
|
||||||
var
|
var
|
||||||
xBmp: TCustomBitmap;
|
xBmp: TCustomBitmap;
|
||||||
begin
|
begin
|
||||||
Result := -1;
|
Result := -1;
|
||||||
xBmp := TIDEImages.CreateImage(ImageName, ImageSize);
|
xBmp := TIDEImages.CreateImage(ImageName, AImageList.Width);
|
||||||
try
|
try
|
||||||
Result := AImageList.Add(xBmp, nil);
|
Result := AImageList.Add(xBmp, nil);
|
||||||
finally
|
finally
|
||||||
|
@ -820,6 +820,7 @@ begin
|
|||||||
ImageSize := TIDEImages.ScaledSize;
|
ImageSize := TIDEImages.ScaledSize;
|
||||||
ImageList1.Width := ImageSize;
|
ImageList1.Width := ImageSize;
|
||||||
ImageList1.Height := ImageSize;
|
ImageList1.Height := ImageSize;
|
||||||
|
ImageList1.Scaled := False;
|
||||||
ImgIDDefault := TIDEImages.AddImageToImageList(Imagelist1, 'ce_default');
|
ImgIDDefault := TIDEImages.AddImageToImageList(Imagelist1, 'ce_default');
|
||||||
ImgIDProgramCode := TIDEImages.AddImageToImageList(Imagelist1, 'ce_program');
|
ImgIDProgramCode := TIDEImages.AddImageToImageList(Imagelist1, 'ce_program');
|
||||||
ImgIDUnitCode := TIDEImages.AddImageToImageList(Imagelist1, 'ce_unit');
|
ImgIDUnitCode := TIDEImages.AddImageToImageList(Imagelist1, 'ce_unit');
|
||||||
|
@ -725,6 +725,7 @@ begin
|
|||||||
ImageSize := TIDEImages.ScaledSize;
|
ImageSize := TIDEImages.ScaledSize;
|
||||||
Imagelist1.Width := ImageSize;
|
Imagelist1.Width := ImageSize;
|
||||||
Imagelist1.Height := ImageSize;
|
Imagelist1.Height := ImageSize;
|
||||||
|
Imagelist1.Scaled := False;
|
||||||
ImgIDDefault := TIDEImages.AddImageToImageList(Imagelist1, 'ce_default');
|
ImgIDDefault := TIDEImages.AddImageToImageList(Imagelist1, 'ce_default');
|
||||||
ImgIDProgram := TIDEImages.AddImageToImageList(Imagelist1, 'ce_program');
|
ImgIDProgram := TIDEImages.AddImageToImageList(Imagelist1, 'ce_program');
|
||||||
ImgIDUnit := TIDEImages.AddImageToImageList(Imagelist1, 'ce_unit');
|
ImgIDUnit := TIDEImages.AddImageToImageList(Imagelist1, 'ce_unit');
|
||||||
|
@ -139,8 +139,10 @@ begin
|
|||||||
|
|
||||||
imListPalette.Width := MulDiv(ComponentPaletteImageWidth, TIDEImages.GetScalePercent, 100);
|
imListPalette.Width := MulDiv(ComponentPaletteImageWidth, TIDEImages.GetScalePercent, 100);
|
||||||
imListPalette.Height := MulDiv(ComponentPaletteImageHeight, TIDEImages.GetScalePercent, 100);
|
imListPalette.Height := MulDiv(ComponentPaletteImageHeight, TIDEImages.GetScalePercent, 100);
|
||||||
|
imListPalette.Scaled := False;
|
||||||
imInheritance.Width := MulDiv(ComponentPaletteImageWidth, TIDEImages.GetScalePercent, 100);
|
imInheritance.Width := MulDiv(ComponentPaletteImageWidth, TIDEImages.GetScalePercent, 100);
|
||||||
imInheritance.Height := MulDiv(ComponentPaletteImageHeight, TIDEImages.GetScalePercent, 100);
|
imInheritance.Height := MulDiv(ComponentPaletteImageHeight, TIDEImages.GetScalePercent, 100);
|
||||||
|
imInheritance.Scaled := False;
|
||||||
|
|
||||||
ListTree.Images := imListPalette;
|
ListTree.Images := imListPalette;
|
||||||
PalletteTree.Images := imListPalette;
|
PalletteTree.Images := imListPalette;
|
||||||
|
@ -113,6 +113,7 @@ begin
|
|||||||
|
|
||||||
ImageList1.Width := TIDEImages.ScaledSize;
|
ImageList1.Width := TIDEImages.ScaledSize;
|
||||||
ImageList1.Height := TIDEImages.ScaledSize;
|
ImageList1.Height := TIDEImages.ScaledSize;
|
||||||
|
ImageList1.Scaled := False;
|
||||||
TIDEImages.AddImageToImageList(ImageList1, 'item_package');
|
TIDEImages.AddImageToImageList(ImageList1, 'item_package');
|
||||||
TIDEImages.AddImageToImageList(ImageList1, 'pkg_open');
|
TIDEImages.AddImageToImageList(ImageList1, 'pkg_open');
|
||||||
end;
|
end;
|
||||||
|
@ -550,6 +550,7 @@ begin
|
|||||||
ImgListSize := TIDEImages.ScaledSize(11);
|
ImgListSize := TIDEImages.ScaledSize(11);
|
||||||
ImgList.Width := ImgListSize;
|
ImgList.Width := ImgListSize;
|
||||||
ImgList.Height := ImgListSize;
|
ImgList.Height := ImgListSize;
|
||||||
|
ImgList.Scaled := False;
|
||||||
|
|
||||||
// synedit expects the first 10 icons for the bookmarks
|
// synedit expects the first 10 icons for the bookmarks
|
||||||
for i := 0 to 9 do
|
for i := 0 to 9 do
|
||||||
@ -810,7 +811,7 @@ end;
|
|||||||
|
|
||||||
function TSourceMarks.AddImage(const ResName: string): integer;
|
function TSourceMarks.AddImage(const ResName: string): integer;
|
||||||
begin
|
begin
|
||||||
Result := TIDEImages.AddImageToImageList(ImgList, Resname, 11);
|
Result := TIDEImages.AddImageToImageList(ImgList, Resname);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
initialization
|
initialization
|
||||||
|
Loading…
Reference in New Issue
Block a user