mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-15 06:09:30 +02:00
IDE: Remember active PageIndex of ComponentList between sessions. Test for NoComponentListTreeExpand.
git-svn-id: trunk@64336 -
This commit is contained in:
parent
858cdf7813
commit
5ea010dc3a
@ -36,6 +36,8 @@ uses
|
||||
// LCL
|
||||
LCLType, Forms, Controls, Graphics, StdCtrls, ExtCtrls, ComCtrls, Menus, Buttons,
|
||||
Dialogs, ImgList,
|
||||
// LazUtils
|
||||
LazLoggerBase,
|
||||
// LazControls
|
||||
TreeFilterEdit,
|
||||
// IdeIntf
|
||||
@ -49,7 +51,6 @@ type
|
||||
|
||||
TComponentListForm = class(TForm)
|
||||
chbKeepOpen: TCheckBox;
|
||||
ListTree: TTreeView;
|
||||
ButtonPanel: TPanel;
|
||||
miCollapse: TMenuItem;
|
||||
miCollapseAll: TMenuItem;
|
||||
@ -59,6 +60,7 @@ type
|
||||
LabelSearch: TLabel;
|
||||
PageControl: TPageControl;
|
||||
FilterPanel: TPanel;
|
||||
ListTree: TTreeView;
|
||||
PalletteTree: TTreeView;
|
||||
InheritanceTree: TTreeView;
|
||||
pnPaletteTree: TPanel;
|
||||
@ -90,7 +92,6 @@ type
|
||||
procedure FormKeyDown(Sender: TObject; var Key: Word; {%H-}Shift: TShiftState);
|
||||
procedure SelectionToolButtonClick(Sender: TObject);
|
||||
private
|
||||
PrevPageIndex: Integer;
|
||||
PrevChangeStamp: Integer;
|
||||
// List for Component inheritence view
|
||||
FClassList: TStringList;
|
||||
@ -154,7 +155,6 @@ begin
|
||||
ListTree.Images := TPkgComponent.Images;
|
||||
PalletteTree.Images := TPkgComponent.Images;
|
||||
InheritanceTree.Images := TPkgComponent.Images;
|
||||
PrevPageIndex := -1;
|
||||
PageControl.ActivePage := TabSheetList;
|
||||
if Assigned(IDEComponentPalette) then
|
||||
begin
|
||||
@ -163,8 +163,8 @@ begin
|
||||
IDEComponentPalette.AddHandlerSelectionChanged(@SelectionWasChanged);
|
||||
IDEComponentPalette.AddHandlerComponentAdded(@ComponentWasAdded);
|
||||
end;
|
||||
|
||||
chbKeepOpen.Checked := EnvironmentOptions.ComponentListKeepOpen;
|
||||
PageControl.PageIndex := EnvironmentOptions.ComponentListPageIndex;
|
||||
end;
|
||||
|
||||
procedure TComponentListForm.AddSelectedComponent;
|
||||
@ -437,9 +437,11 @@ begin
|
||||
DoComponentInheritence(Comp);
|
||||
end;
|
||||
end;
|
||||
PalletteTree.FullExpand;
|
||||
InheritanceTree.AlphaSort;
|
||||
InheritanceTree.FullExpand;
|
||||
{$IFnDEF NoComponentListTreeExpand}
|
||||
InheritanceTree.FullExpand; // Some users may not want the trees expanded.
|
||||
PalletteTree.FullExpand;
|
||||
{$ENDIF}
|
||||
PrevChangeStamp := IDEComponentPalette.ChangeStamp;
|
||||
finally
|
||||
FClassList.Free;
|
||||
@ -501,10 +503,8 @@ end;
|
||||
|
||||
procedure TComponentListForm.PageControlChange(Sender: TObject);
|
||||
begin
|
||||
DebugLn(['TComponentListForm.PageControlChange: Start']);
|
||||
FPageControlChange := True;
|
||||
Assert(PageControl.PageIndex <> PrevPageIndex, Format(
|
||||
'TComponentListForm.PageControlChange: PageControl.PageIndex = PrevPageIndex = %d',
|
||||
[PrevPageIndex]));
|
||||
case PageControl.PageIndex of
|
||||
0: begin
|
||||
TreeFilterEd.FilteredTreeview := ListTree;
|
||||
@ -520,7 +520,7 @@ begin
|
||||
end;
|
||||
end;
|
||||
TreeFilterEd.InvalidateFilter;
|
||||
PrevPageIndex := PageControl.PageIndex;
|
||||
EnvironmentOptions.ComponentListPageIndex := PageControl.PageIndex;
|
||||
FActiveTree.BeginUpdate;
|
||||
tmDeselect.Enabled := True;
|
||||
end;
|
||||
|
@ -715,6 +715,7 @@ type
|
||||
|
||||
//component list
|
||||
FComponentListKeepOpen: Boolean;
|
||||
FComponentListPageIndex: Integer;
|
||||
|
||||
// Desktop
|
||||
FDesktops: TDesktopOptList;
|
||||
@ -1039,6 +1040,7 @@ type
|
||||
|
||||
//component list
|
||||
property ComponentListKeepOpen: Boolean read FComponentListKeepOpen write FComponentListKeepOpen;
|
||||
property ComponentListPageIndex: Integer read FComponentListPageIndex write FComponentListPageIndex;
|
||||
|
||||
// glyphs
|
||||
property ShowButtonGlyphs: TApplicationShowGlyphs read FShowButtonGlyphs write FShowButtonGlyphs;
|
||||
@ -2658,6 +2660,7 @@ begin
|
||||
|
||||
//component list
|
||||
FComponentListKeepOpen:=FXMLCfg.GetValue(Path+'ComponentList/KeepOpen',false);
|
||||
FComponentListPageIndex:=FXMLCfg.GetValue(Path+'ComponentList/PageIndex',0);
|
||||
|
||||
// glyphs
|
||||
FShowButtonGlyphs := TApplicationShowGlyphs(FXMLCfg.GetValue(Path+'ShowButtonGlyphs/Value',
|
||||
@ -3026,6 +3029,7 @@ begin
|
||||
|
||||
//component list
|
||||
FXMLCfg.SetDeleteValue(Path+'ComponentList/KeepOpen',FComponentListKeepOpen,false);
|
||||
FXMLCfg.SetDeleteValue(Path+'ComponentList/PageIndex',FComponentListPageIndex,0);
|
||||
|
||||
// glyphs
|
||||
FXMLCfg.SetDeleteValue(Path+'ShowButtonGlyphs/Value',Ord(FShowButtonGlyphs), Ord(sbgSystem));
|
||||
|
Loading…
Reference in New Issue
Block a user