mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-12 09:16:13 +02:00
lcl, ide: redo LoadGlypFromResource to LoadGlyphFromResourceName with ability to pass an Instance handle
git-svn-id: trunk@42972 -
This commit is contained in:
parent
1f87e24e5e
commit
102a858398
@ -110,9 +110,9 @@ begin
|
||||
CloseButton.Caption:=lisClose;
|
||||
ApplyButton.Caption:=lisConvert;
|
||||
HelpButton.Caption:=lisHelp;
|
||||
CloseButton.LoadGlyphFromResource('btn_close');
|
||||
ApplyButton.LoadGlyphFromResource('btn_ok');
|
||||
HelpButton.LoadGlyphFromResource('btn_help');
|
||||
CloseButton.LoadGlyphFromResourceName(hInstance, 'btn_close');
|
||||
ApplyButton.LoadGlyphFromResourceName(hInstance, 'btn_ok');
|
||||
HelpButton.LoadGlyphFromResourceName(hInstance, 'btn_help');
|
||||
|
||||
PreviewGroupBox.Caption:=dlgWRDPreview;
|
||||
PreviewListView.Column[0].Caption:=dlgEnvFiles;
|
||||
|
@ -274,7 +274,7 @@ begin
|
||||
end;
|
||||
|
||||
// buttons
|
||||
CancelScanningButton.LoadGlyphFromResource('btn_cancel');
|
||||
CancelScanningButton.LoadGlyphFromResourceName(hInstance, 'btn_cancel');
|
||||
CloseButton.Caption:=lisClose;
|
||||
OpenInEditorButton.Caption:=lisDiffDlgOpenDiffInEditor;
|
||||
SaveDiffButton.Caption:=lisDlgSave;
|
||||
|
@ -159,7 +159,7 @@ begin
|
||||
cbAutoCloseOnSuccess.Checked := EnvironmentOptions.AutoCloseCompileDialog;
|
||||
|
||||
ToAbort := True;
|
||||
BClose.LoadGlyphFromResource('btn_ok');
|
||||
BClose.LoadGlyphFromResourceName(hInstance, 'btn_ok');
|
||||
|
||||
SetProjectName('');
|
||||
SetStatus('');
|
||||
|
@ -168,7 +168,7 @@ type
|
||||
constructor Create(TheOwner: TComponent); override;
|
||||
destructor Destroy; override;
|
||||
procedure Click; override;
|
||||
procedure LoadGlyphFromResource(const AName: String);
|
||||
procedure LoadGlyphFromResourceName(Instance: THandle; const AName: String);
|
||||
procedure LoadGlyphFromLazarusResource(const AName: String);
|
||||
procedure LoadGlyphFromStock(idButton: Integer);
|
||||
function CanShowGlyph: Boolean;
|
||||
@ -332,7 +332,7 @@ type
|
||||
destructor Destroy; override;
|
||||
function FindDownButton: TCustomSpeedButton;
|
||||
procedure Click; override; // make Click public
|
||||
procedure LoadGlyphFromResource(const AName: String);
|
||||
procedure LoadGlyphFromResourceName(Instance: THandle; const AName: String);
|
||||
procedure LoadGlyphFromLazarusResource(const AName: String);
|
||||
public
|
||||
property AllowAllUp: Boolean read FAllowAllUp write SetAllowAllUp default false;
|
||||
@ -416,7 +416,7 @@ var
|
||||
GetDefaultBitBtnGlyph: TGetDefaultBitBtnGlyph = nil;
|
||||
|
||||
function GetLCLDefaultBtnGlyph(Kind: TBitBtnKind): TGraphic;
|
||||
procedure LoadGlyphFromResource(AGlyph: TButtonGlyph; const AName: String);
|
||||
procedure LoadGlyphFromResourceName(AGlyph: TButtonGlyph; Instance: THandle; const AName: String);
|
||||
procedure LoadGlyphFromLazarusResource(AGlyph: TButtonGlyph; const AName: String);
|
||||
procedure LoadGlyphFromStock(AGlyph: TButtonGlyph; idButton: Integer);
|
||||
|
||||
@ -480,17 +480,14 @@ begin
|
||||
Result.LoadFromResourceName(hInstance, BitBtnResNames[idButton]);
|
||||
end;
|
||||
|
||||
procedure LoadGlyphFromResource(AGlyph: TButtonGlyph; const AName: String);
|
||||
procedure LoadGlyphFromResourceName(AGlyph: TButtonGlyph; Instance: THandle; const AName: String);
|
||||
var
|
||||
C: TPortableNetworkGraphic;
|
||||
C: TCustomBitmap;
|
||||
begin
|
||||
if AName = '' then
|
||||
C := nil
|
||||
else
|
||||
begin
|
||||
C := TPortableNetworkGraphic.Create;
|
||||
C.LoadFromResourceName(hInstance, AName);
|
||||
end;
|
||||
C := CreateBitmapFromResourceName(Instance, AName);
|
||||
|
||||
try
|
||||
AGlyph.Glyph.Assign(C);
|
||||
|
@ -1367,7 +1367,7 @@ begin
|
||||
Button.ControlStyle := Button.ControlStyle + [csNoDesignSelectable];
|
||||
aGlyph := GetDefaultGlyph;
|
||||
if aGlyph = nil then
|
||||
Button.LoadGlyphFromResource(GetDefaultGlyphName)
|
||||
Button.LoadGlyphFromResourceName(hInstance, GetDefaultGlyphName)
|
||||
else
|
||||
Button.Glyph := aGlyph;
|
||||
Button.Parent:=self;
|
||||
@ -1404,7 +1404,7 @@ begin
|
||||
FButton.ControlStyle := FButton.ControlStyle + [csNoDesignSelectable];
|
||||
B := GetDefaultGlyph;
|
||||
if B = nil
|
||||
then FButton.LoadGlyphFromResource(GetDefaultGlyphName)
|
||||
then FButton.LoadGlyphFromResourceName(hInstance, GetDefaultGlyphName)
|
||||
else FButton.Glyph := B;
|
||||
ControlStyle := ControlStyle - [csSetCaption];
|
||||
end;
|
||||
|
@ -2016,6 +2016,7 @@ function LoadBitmapFromLazarusResource(const ResourceName: String): TBitmap; dep
|
||||
function LoadBitmapFromLazarusResourceHandle(Handle: TLResource): TBitmap; deprecated;
|
||||
|
||||
// technically a bitmap is created and not loaded
|
||||
function CreateBitmapFromResourceName(Instance: THandle; const ResName: String): TCustomBitmap;
|
||||
function CreateBitmapFromLazarusResource(const AName: String): TCustomBitmap;
|
||||
function CreateBitmapFromLazarusResource(const AName: String; AMinimumClass: TCustomBitmapClass): TCustomBitmap;
|
||||
function CreateBitmapFromLazarusResource(AHandle: TLResource): TCustomBitmap;
|
||||
@ -2199,6 +2200,27 @@ begin
|
||||
Result := CreateBitmapFromLazarusResource(AName, TCustomBitmap);
|
||||
end;
|
||||
|
||||
function CreateBitmapFromResourceName(Instance: THandle; const ResName: String): TCustomBitmap;
|
||||
var
|
||||
ResHandle: TFPResourceHandle;
|
||||
begin
|
||||
ResHandle := FindResource(Instance, PChar(ResName), PChar(RT_BITMAP));
|
||||
if ResHandle <> 0 then
|
||||
begin
|
||||
Result := TBitmap.Create;
|
||||
Result.LoadFromResourceName(Instance, ResName);
|
||||
Exit;
|
||||
end;
|
||||
ResHandle := FindResource(Instance, PChar(ResName), PChar(RT_RCDATA));
|
||||
if ResHandle <> 0 then
|
||||
begin
|
||||
Result := TPortableNetworkGraphic.Create;
|
||||
Result.LoadFromResourceName(Instance, ResName);
|
||||
end
|
||||
else
|
||||
Result := nil;
|
||||
end;
|
||||
|
||||
function CreateBitmapFromLazarusResource(const AName: String; AMinimumClass: TCustomBitmapClass): TCustomBitmap;
|
||||
var
|
||||
Stream: TLazarusResourceStream;
|
||||
|
@ -64,9 +64,9 @@ begin
|
||||
inherited Click;
|
||||
end;
|
||||
|
||||
procedure TCustomBitBtn.LoadGlyphFromResource(const AName: String);
|
||||
procedure TCustomBitBtn.LoadGlyphFromResourceName(Instance: THandle; const AName: String);
|
||||
begin
|
||||
Buttons.LoadGlyphFromResource(FButtonGlyph, AName);
|
||||
Buttons.LoadGlyphFromResourceName(FButtonGlyph, Instance, AName);
|
||||
end;
|
||||
|
||||
procedure TCustomBitBtn.LoadGlyphFromLazarusResource(const AName: String);
|
||||
|
@ -281,7 +281,7 @@ begin
|
||||
if CurButtonType in [nbPrior,nbNext] then
|
||||
CurButton.NavStyle:=CurButton.NavStyle+[nsAllowTimer];
|
||||
//Load default images
|
||||
CurButton.LoadGlyphFromResource(DBNavButtonResourceName[CurButtonType]);
|
||||
CurButton.LoadGlyphFromResourceName(hInstance, DBNavButtonResourceName[CurButtonType]);
|
||||
//Apply custom images if available
|
||||
if Assigned(FImages) and (Ord(CurButtontype) < FImages.Count) then
|
||||
FImages.GetBitmap(Ord(CurButtonType), CurButton.Glyph);
|
||||
@ -314,7 +314,7 @@ begin
|
||||
if CurButtonType in [nbPrior,nbNext] then
|
||||
CurFocusableButton.NavStyle:=CurFocusableButton.NavStyle+[nsAllowTimer];
|
||||
//Load default images
|
||||
CurFocusableButton.LoadGlyphFromResource(DBNavButtonResourceName[CurButtonType]);
|
||||
CurFocusableButton.LoadGlyphFromResourceName(hInstance, DBNavButtonResourceName[CurButtonType]);
|
||||
//Apply custom images if available
|
||||
if Assigned(FImages) and (Ord(CurButtontype) < FImages.Count) then
|
||||
FImages.GetBitmap(Ord(CurButtonType), CurFocusableButton.Glyph);
|
||||
|
@ -970,9 +970,9 @@ begin
|
||||
SetDown(FDownLoaded);
|
||||
end;
|
||||
|
||||
procedure TCustomSpeedButton.LoadGlyphFromResource(const AName: String);
|
||||
procedure TCustomSpeedButton.LoadGlyphFromResourceName(Instance: THandle; const AName: String);
|
||||
begin
|
||||
Buttons.LoadGlyphFromResource(FGlyph, AName);
|
||||
Buttons.LoadGlyphFromResourceName(FGlyph, Instance, AName);
|
||||
end;
|
||||
|
||||
procedure TCustomSpeedButton.LoadGlyphFromLazarusResource(const AName: String);
|
||||
|
Loading…
Reference in New Issue
Block a user