mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-19 07:29:25 +02:00
IDE: Explode a with-block in code creating component palette buttons. Revealed a bug with PopupMenu.
git-svn-id: trunk@47217 -
This commit is contained in:
parent
00e9e556d4
commit
651c16ed62
@ -49,7 +49,7 @@ const
|
||||
CompPalSelectionToolBtnPrefix = 'PaletteSelectBtn';
|
||||
CompPaletteCompBtnPrefix = 'PaletteBtn';
|
||||
{$IFDEF VerboseComponentPalette}
|
||||
CompPalVerbPgName = 'Standard';
|
||||
CompPalVerbPgName = 'Additional'; //'Standard';
|
||||
{$ENDIF}
|
||||
type
|
||||
TComponentSelectionMode = (
|
||||
@ -504,7 +504,7 @@ end;
|
||||
|
||||
procedure TComponentPage.CreateOrDelButton(aComp: TPkgComponent; aButtonUniqueName: string);
|
||||
var
|
||||
{%H-}Pal: TComponentPalette;
|
||||
Pal: TComponentPalette;
|
||||
Btn: TSpeedButton;
|
||||
begin
|
||||
if aComp.Visible then begin
|
||||
@ -516,22 +516,20 @@ begin
|
||||
Pal := TComponentPalette(Palette);
|
||||
Btn := TSpeedButton.Create(nil);
|
||||
aComp.Button:=Btn;
|
||||
with Btn do begin
|
||||
Name := CompPaletteCompBtnPrefix + aButtonUniqueName + aComp.ComponentClass.ClassName;
|
||||
// Left and Top will be set in ReAlignButtons.
|
||||
SetBounds(Left,Top,ComponentPaletteBtnWidth,ComponentPaletteBtnHeight);
|
||||
Glyph.Assign(aComp.Icon);
|
||||
GroupIndex := 1;
|
||||
Flat := true;
|
||||
OnMouseDown := @Pal.ComponentBtnMouseDown;
|
||||
OnMouseUp := @Pal.ComponentBtnMouseUp;
|
||||
OnDblClick := @Pal.ComponentBtnDblClick;
|
||||
OnMouseWheel := @Pal.OnPageMouseWheel;
|
||||
ShowHint := EnvironmentOptions.ShowHintsForComponentPalette;
|
||||
Hint := aComp.ComponentClass.ClassName + sLineBreak
|
||||
+ '(' + aComp.ComponentClass.UnitName + ')';
|
||||
Btn.PopupMenu:=PopupMenu;
|
||||
end;
|
||||
Btn.Name := CompPaletteCompBtnPrefix + aButtonUniqueName + aComp.ComponentClass.ClassName;
|
||||
// Left and Top will be set in ReAlignButtons.
|
||||
Btn.SetBounds(Btn.Left,Btn.Top,ComponentPaletteBtnWidth,ComponentPaletteBtnHeight);
|
||||
Btn.Glyph.Assign(aComp.Icon);
|
||||
Btn.GroupIndex := 1;
|
||||
Btn.Flat := true;
|
||||
Btn.OnMouseDown := @Pal.ComponentBtnMouseDown;
|
||||
Btn.OnMouseUp := @Pal.ComponentBtnMouseUp;
|
||||
Btn.OnDblClick := @Pal.ComponentBtnDblClick;
|
||||
Btn.OnMouseWheel := @Pal.OnPageMouseWheel;
|
||||
Btn.ShowHint := EnvironmentOptions.ShowHintsForComponentPalette;
|
||||
Btn.Hint := aComp.ComponentClass.ClassName + sLineBreak
|
||||
+ '(' + aComp.ComponentClass.UnitName + ')';
|
||||
Btn.PopupMenu:=Pal.PopupMenu;
|
||||
{$IFDEF VerboseComponentPalette}
|
||||
if aComp.RealPage.PageName = CompPalVerbPgName then
|
||||
DebugLn(['TComponentPalette.CreateOrDelButton Created Button: ',aComp.ComponentClass.ClassName,' ',aComp.Button.Name]);
|
||||
|
Loading…
Reference in New Issue
Block a user