mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-07-16 13:16:35 +02:00
IDE: An experimental GUI for saving and switching desktops + other related changes. Define EnableDesktops.
git-svn-id: trunk@49457 -
This commit is contained in:
parent
1fb779c4a5
commit
15df1a216f
@ -317,7 +317,8 @@ const
|
||||
ecCodeToolsDefinesEd = ecFirstLazarus + 823;
|
||||
|
||||
ecExtToolSettings = ecFirstLazarus + 824;
|
||||
ecManageExamples = ecFirstLazarus + 825;
|
||||
ecManageDesktops = ecFirstLazarus + 825;
|
||||
ecManageExamples = ecFirstLazarus + 826;
|
||||
ecConfigBuildLazarus = ecFirstLazarus + 830;
|
||||
ecBuildLazarus = ecFirstLazarus + 831;
|
||||
ecBuildAdvancedLazarus = ecFirstLazarus + 832;
|
||||
|
@ -42,6 +42,7 @@ type
|
||||
procedure SetHeight(const AValue: integer);
|
||||
public
|
||||
constructor Create(const TheName: string; TheList: TIDEDialogLayoutList);
|
||||
procedure Assign(Source: TIDEDialogLayout);
|
||||
function SizeValid: boolean;
|
||||
property Width: integer read FWidth write SetWidth;
|
||||
property Height: integer read FHeight write SetHeight;
|
||||
@ -66,6 +67,7 @@ type
|
||||
public
|
||||
constructor Create;
|
||||
destructor Destroy; override;
|
||||
procedure Assign(Source: TIDEDialogLayoutList);
|
||||
procedure ApplyLayout(ADialog: TControl;
|
||||
DefaultWidth, DefaultHeight: integer;
|
||||
UseAsMin: boolean = true);
|
||||
@ -852,13 +854,20 @@ begin
|
||||
FList:=TheList;
|
||||
end;
|
||||
|
||||
procedure TIDEDialogLayout.Assign(Source: TIDEDialogLayout);
|
||||
begin
|
||||
FName := Source.FName;
|
||||
FWidth := Source.FWidth;
|
||||
FHeight := Source.FHeight;
|
||||
FModified := True;
|
||||
end;
|
||||
|
||||
function TIDEDialogLayout.SizeValid: boolean;
|
||||
begin
|
||||
Result:=(Width>10) and (Height>10);
|
||||
end;
|
||||
|
||||
procedure TIDEDialogLayout.LoadFromConfig(Config: TConfigStorage;
|
||||
const Path: string);
|
||||
procedure TIDEDialogLayout.LoadFromConfig(Config: TConfigStorage; const Path: string);
|
||||
begin
|
||||
FName:=Config.GetValue(Path+'Name/Value','');
|
||||
FWidth:=Config.GetValue(Path+'Size/Width',0);
|
||||
@ -866,8 +875,7 @@ begin
|
||||
Modified:=false;
|
||||
end;
|
||||
|
||||
procedure TIDEDialogLayout.SaveToConfig(Config: TConfigStorage;
|
||||
const Path: string);
|
||||
procedure TIDEDialogLayout.SaveToConfig(Config: TConfigStorage; const Path: string);
|
||||
begin
|
||||
Config.SetValue(Path+'Name/Value',Name);
|
||||
Config.SetValue(Path+'Size/Width',Width);
|
||||
@ -902,6 +910,21 @@ begin
|
||||
inherited Destroy;
|
||||
end;
|
||||
|
||||
procedure TIDEDialogLayoutList.Assign(Source: TIDEDialogLayoutList);
|
||||
var
|
||||
i: Integer;
|
||||
Layout: TIDEDialogLayout;
|
||||
begin
|
||||
FItemClass := Source.FItemClass;
|
||||
Clear;
|
||||
for i:=0 to Source.FItems.Count-1 do begin
|
||||
Layout := TIDEDialogLayout.Create(Source.Items[i].Name, Self);
|
||||
Layout.Assign(Source.Items[i]);
|
||||
FItems.Add(Layout);
|
||||
end;
|
||||
FModified := True;
|
||||
end;
|
||||
|
||||
procedure TIDEDialogLayoutList.ApplyLayout(ADialog: TControl;
|
||||
DefaultWidth, DefaultHeight: integer; UseAsMin: boolean);
|
||||
var
|
||||
|
@ -281,13 +281,16 @@ type
|
||||
FEditorToolBarOptions: TEditorToolBarOptions;
|
||||
// component palette
|
||||
FComponentPaletteOptions: TCompPaletteOptions;
|
||||
|
||||
procedure SetConfig(aXMLCfg: TRttiXMLConfig; aConfigStore: TXMLOptionsStorage);
|
||||
procedure InitLayoutList;
|
||||
procedure Load(Path: String);
|
||||
procedure Save(Path: String);
|
||||
public
|
||||
constructor Create;
|
||||
constructor Create(aName: String);
|
||||
destructor Destroy; override;
|
||||
procedure Assign(Source: TDesktopOpt);
|
||||
|
||||
property Name: String read FName write FName;
|
||||
property IDEDialogLayoutList: TIDEDialogLayoutList read FIDEDialogLayoutList;
|
||||
@ -311,9 +314,10 @@ type
|
||||
property IDECoolBarOptions: TIDECoolBarOptions read FIDECoolBarOptions;
|
||||
property EditorToolBarOptions: TEditorToolBarOptions read FEditorToolBarOptions;
|
||||
property ComponentPaletteOptions: TCompPaletteOptions read FComponentPaletteOptions;
|
||||
|
||||
end;
|
||||
|
||||
TEnvironmentOptions = class;
|
||||
|
||||
{ TDesktopOptList }
|
||||
|
||||
dtol = specialize TFPGObjectList<TDesktopOpt>;
|
||||
@ -321,11 +325,15 @@ type
|
||||
private
|
||||
FXMLCfg: TRttiXMLConfig;
|
||||
FConfigStore: TXMLOptionsStorage;
|
||||
FEnvOpts: TEnvironmentOptions;
|
||||
procedure SetConfig(aXMLCfg: TRttiXMLConfig; aConfigStore: TXMLOptionsStorage);
|
||||
public
|
||||
constructor Create(aEnvOpts: TEnvironmentOptions);
|
||||
destructor Destroy; override;
|
||||
procedure AddFromCfg(Path: String);
|
||||
function IndexOf(aName: string): integer;
|
||||
function Find(aName: string): TDesktopOpt;
|
||||
procedure AddFromCfg(Path: String);
|
||||
function Select(aName: string): Boolean;
|
||||
end;
|
||||
|
||||
{ TEnvironmentOptions - class for storing environment options }
|
||||
@ -747,6 +755,7 @@ type
|
||||
property NewUnitTemplate: string read FNewUnitTemplate write FNewUnitTemplate;
|
||||
property NewFormTemplate: string read FNewFormTemplate write FNewFormTemplate;
|
||||
// Desktop
|
||||
property Desktops: TDesktopOptList read FDesktops;
|
||||
property Desktop: TDesktopOpt read GetDesktop;
|
||||
end;
|
||||
|
||||
@ -864,12 +873,33 @@ end;
|
||||
|
||||
{ TDesktopOptList }
|
||||
|
||||
constructor TDesktopOptList.Create(aEnvOpts: TEnvironmentOptions);
|
||||
begin
|
||||
inherited Create;
|
||||
FEnvOpts := aEnvOpts;
|
||||
end;
|
||||
|
||||
destructor TDesktopOptList.Destroy;
|
||||
begin
|
||||
inherited Destroy;
|
||||
end;
|
||||
|
||||
procedure TDesktopOptList.SetConfig(aXMLCfg: TRttiXMLConfig; aConfigStore: TXMLOptionsStorage);
|
||||
begin
|
||||
FXMLCfg := aXMLCfg;
|
||||
FConfigStore := aConfigStore;
|
||||
end;
|
||||
|
||||
procedure TDesktopOptList.AddFromCfg(Path: String);
|
||||
var
|
||||
dsk: TDesktopOpt;
|
||||
begin
|
||||
dsk := TDesktopOpt.Create;
|
||||
dsk.SetConfig(FXMLCfg, FConfigStore);
|
||||
dsk.Load(Path);
|
||||
Add(dsk);
|
||||
end;
|
||||
|
||||
function TDesktopOptList.IndexOf(aName: string): integer;
|
||||
begin
|
||||
Result:=Count-1;
|
||||
@ -889,14 +919,14 @@ begin
|
||||
Result:=nil;
|
||||
end;
|
||||
|
||||
procedure TDesktopOptList.AddFromCfg(Path: String);
|
||||
function TDesktopOptList.Select(aName: string): Boolean;
|
||||
var
|
||||
dsk: TDesktopOpt;
|
||||
begin
|
||||
dsk := TDesktopOpt.Create;
|
||||
Add(dsk);
|
||||
dsk.SetConfig(FXMLCfg, FConfigStore);
|
||||
dsk.Load(Path);
|
||||
dsk := Find(aName);
|
||||
Result := Assigned(dsk);
|
||||
if Result then
|
||||
FEnvOpts.FDesktop := dsk;
|
||||
end;
|
||||
|
||||
|
||||
@ -904,6 +934,7 @@ end;
|
||||
|
||||
constructor TDesktopOpt.Create;
|
||||
begin
|
||||
inherited Create;
|
||||
FSingleTaskBarButton:=false;
|
||||
FHideIDEOnRun:=false;
|
||||
FComponentPaletteVisible:=true;
|
||||
@ -931,6 +962,12 @@ begin
|
||||
IDEWindowIntf.IDEDialogLayoutList:=FIDEDialogLayoutList;
|
||||
end;
|
||||
|
||||
constructor TDesktopOpt.Create(aName: String);
|
||||
begin
|
||||
Create; // constructor above.
|
||||
FName:=aName;
|
||||
end;
|
||||
|
||||
destructor TDesktopOpt.Destroy;
|
||||
begin
|
||||
if IDEWindowIntf.IDEDialogLayoutList=FIDEDialogLayoutList then
|
||||
@ -942,6 +979,37 @@ begin
|
||||
inherited Destroy;
|
||||
end;
|
||||
|
||||
procedure TDesktopOpt.Assign(Source: TDesktopOpt);
|
||||
begin
|
||||
// Note: FName is not assigned.
|
||||
// ToDo :
|
||||
//FXMLCfg.Assign(Source.FXMLCfg);
|
||||
//FConfigStore.Assign(Source.FConfigStore);
|
||||
|
||||
// window layout
|
||||
FIDEDialogLayoutList.Assign(Source.FIDEDialogLayoutList);
|
||||
FSingleTaskBarButton := Source.FSingleTaskBarButton;
|
||||
FHideIDEOnRun := Source.FHideIDEOnRun;
|
||||
FComponentPaletteVisible := Source.FComponentPaletteVisible;
|
||||
FAutoAdjustIDEHeight := Source.FAutoAdjustIDEHeight;
|
||||
FAutoAdjustIDEHeightFullCompPal := Source.FAutoAdjustIDEHeightFullCompPal;
|
||||
// window menu
|
||||
FIDENameForDesignedFormList := Source.FIDENameForDesignedFormList;
|
||||
// CompletionWindow
|
||||
FCompletionWindowWidth := Source.FCompletionWindowWidth;
|
||||
FCompletionWindowHeight := Source.FCompletionWindowHeight;
|
||||
// title
|
||||
FIDETitleStartsWithProject := Source.FIDETitleStartsWithProject;
|
||||
FIDETitleIncludesBuildMode := Source.FIDETitleIncludesBuildMode;
|
||||
FIDEProjectDirectoryInIdeTitle := Source.FIDEProjectDirectoryInIdeTitle;
|
||||
// IDE Coolbar
|
||||
FIDECoolBarOptions.Assign(Source.FIDECoolBarOptions);
|
||||
// Editor Toolbar
|
||||
FEditorToolBarOptions.Assign(Source.FEditorToolBarOptions);
|
||||
// component palette
|
||||
FComponentPaletteOptions.Assign(Source.FComponentPaletteOptions);
|
||||
end;
|
||||
|
||||
procedure TDesktopOpt.Load(Path: String);
|
||||
begin
|
||||
FName:=FXMLCfg.GetValue(Path+'Name', 'default');
|
||||
@ -1171,7 +1239,7 @@ begin
|
||||
FBuildMatrixOptions:=TBuildMatrixOptions.Create;
|
||||
|
||||
// Desktop collection (FDesktop will point to the active desktop).
|
||||
FDesktops := TDesktopOptList.Create;
|
||||
FDesktops := TDesktopOptList.Create(Self);
|
||||
end;
|
||||
|
||||
destructor TEnvironmentOptions.Destroy;
|
||||
@ -1365,7 +1433,7 @@ procedure TEnvironmentOptions.Load(OnlyDesktop: boolean);
|
||||
end;
|
||||
|
||||
var
|
||||
Path, CurPath: String;
|
||||
Path, CurPath, ActiveDsk: String;
|
||||
i, j: Integer;
|
||||
Rec: PIDEOptionsGroupRec;
|
||||
NodeName: String;
|
||||
@ -1560,7 +1628,9 @@ begin
|
||||
FDesktops.AddFromCfg(CurPath+'Desktop'+IntToStr(i+1)+'/');
|
||||
Assert(FDesktops.Count>0, 'FDesktops.Count=0');
|
||||
// Find active desktop
|
||||
FDesktop:=FDesktops.Find(FXMLCfg.GetValue(CurPath+'Active','default'));
|
||||
ActiveDsk := FXMLCfg.GetValue(CurPath+'Active','default');
|
||||
FDesktop:=FDesktops.Find(ActiveDsk);
|
||||
DebugLn(['TEnvironmentOptions.Load: New desktop, Count=',j,', Active=', ActiveDsk, ', Dsk name=', FDesktop.Name]);
|
||||
end
|
||||
else begin // Old path was under EnvironmentOptions/.
|
||||
FDesktops.AddFromCfg(Path+'Desktop/');
|
||||
@ -1833,7 +1903,8 @@ begin
|
||||
CurPath:='Desktops/';
|
||||
FXMLCfg.SetDeleteValue(CurPath+'Count', FDesktops.Count, 0);
|
||||
FXMLCfg.SetDeleteValue(CurPath+'Active', FDesktop.Name, '');
|
||||
for i := 0 to FDesktops.Count-1 do begin
|
||||
for i := 0 to FDesktops.Count-1 do
|
||||
begin
|
||||
FDesktops[i].SetConfig(FXMLCfg, FConfigStore);
|
||||
FDesktops[i].Save(CurPath+'Desktop'+IntToStr(i+1)+'/');
|
||||
end;
|
||||
@ -2258,8 +2329,7 @@ begin
|
||||
// Can be Nil if desktops are not read from config files -> create a default desktop.
|
||||
if not Assigned(FDesktop) then
|
||||
begin
|
||||
FDesktop := TDesktopOpt.Create;
|
||||
FDesktop.Name := 'default';
|
||||
FDesktop := TDesktopOpt.Create('default');
|
||||
FDesktops.Add(FDesktop);
|
||||
end;
|
||||
Result := FDesktop;
|
||||
|
@ -14,9 +14,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = AutoSaveProjectCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 20
|
||||
Top = 383
|
||||
Width = 189
|
||||
Height = 17
|
||||
Top = 347
|
||||
Width = 164
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
Caption = 'AutoSaveIntervalInSecsLabel'
|
||||
@ -29,9 +29,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = PanelGlyphsButtonsOptions
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 20
|
||||
Top = 206
|
||||
Width = 73
|
||||
Height = 17
|
||||
Top = 184
|
||||
Width = 64
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'lblButtons'
|
||||
Font.Style = [fsBold]
|
||||
@ -43,9 +43,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = PanelGlyphsMenusOptions
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 20
|
||||
Top = 233
|
||||
Width = 64
|
||||
Height = 17
|
||||
Top = 210
|
||||
Width = 56
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'lblMenus'
|
||||
Font.Style = [fsBold]
|
||||
@ -57,9 +57,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = lblCheckAndAutoSave
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 281
|
||||
Width = 296
|
||||
Height = 22
|
||||
Top = 253
|
||||
Width = 260
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'CheckDiskChangesWithLoadingCheckBox'
|
||||
ParentShowHint = False
|
||||
@ -71,9 +71,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = ShowHintsForMainSpeedButtonsCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 151
|
||||
Width = 303
|
||||
Height = 22
|
||||
Top = 133
|
||||
Width = 266
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'ShowHintsForComponentPaletteCheckBox'
|
||||
TabOrder = 1
|
||||
@ -83,9 +83,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = lblHints
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 127
|
||||
Width = 304
|
||||
Height = 22
|
||||
Top = 111
|
||||
Width = 268
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'ShowHintsForMainSpeedButtonsCheckBox'
|
||||
TabOrder = 2
|
||||
@ -97,14 +97,14 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideRight.Control = Owner
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 28
|
||||
Top = 23
|
||||
Height = 23
|
||||
Top = 20
|
||||
Width = 584
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 3
|
||||
BorderSpacing.Right = 6
|
||||
ItemHeight = 20
|
||||
ItemHeight = 17
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
Style = csDropDownList
|
||||
@ -117,13 +117,13 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideRight.Control = Owner
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 28
|
||||
Top = 409
|
||||
Height = 23
|
||||
Top = 370
|
||||
Width = 584
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Enabled = False
|
||||
ItemHeight = 20
|
||||
ItemHeight = 17
|
||||
Items.Strings = (
|
||||
'1200'
|
||||
'600'
|
||||
@ -138,9 +138,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = AutoSaveEditorFilesCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 353
|
||||
Width = 197
|
||||
Height = 22
|
||||
Top = 319
|
||||
Width = 174
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'AutoSaveProjectCheckBox'
|
||||
Enabled = False
|
||||
@ -154,9 +154,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = AskSavingOnlySessionCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 329
|
||||
Width = 220
|
||||
Height = 22
|
||||
Top = 297
|
||||
Width = 193
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'AutoSaveEditorFilesCheckBox'
|
||||
Enabled = False
|
||||
@ -165,40 +165,40 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
TabOrder = 6
|
||||
Visible = False
|
||||
end
|
||||
object LoadDesktopSettingsFromFileButton: TButton
|
||||
AnchorSideLeft.Control = SaveDesktopSettingsToFileButton
|
||||
object ImportDesktopButton: TButton
|
||||
AnchorSideLeft.Control = ExportDesktopButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = SaveDesktopSettingsToFileButton
|
||||
AnchorSideTop.Control = ExportDesktopButton
|
||||
AnchorSideRight.Control = Owner
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 299
|
||||
Height = 30
|
||||
Top = 466
|
||||
Height = 29
|
||||
Top = 419
|
||||
Width = 291
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoSize = True
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'LoadDesktopSettingsFromFileButton'
|
||||
OnClick = LoadDesktopSettingsFromFileButtonClick
|
||||
Caption = 'Import desktop'
|
||||
OnClick = ImportDesktopButtonClick
|
||||
TabOrder = 7
|
||||
end
|
||||
object SaveDesktopSettingsToFileButton: TButton
|
||||
object ExportDesktopButton: TButton
|
||||
AnchorSideLeft.Control = Owner
|
||||
AnchorSideTop.Control = lblDesktopFiles
|
||||
AnchorSideTop.Control = lblImportExport
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideRight.Control = lblCenter
|
||||
Left = 6
|
||||
Height = 30
|
||||
Top = 466
|
||||
Height = 29
|
||||
Top = 419
|
||||
Width = 287
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoSize = True
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 3
|
||||
BorderSpacing.Right = 3
|
||||
Caption = 'SaveDesktopSettingsToFileButton'
|
||||
OnClick = SaveDesktopSettingsToFileButtonClick
|
||||
Caption = 'Export desktop'
|
||||
OnClick = ExportDesktopButtonClick
|
||||
TabOrder = 8
|
||||
end
|
||||
object PanelGlyphsButtonsOptions: TPanel
|
||||
@ -208,10 +208,10 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideRight.Control = Owner
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 85
|
||||
Height = 24
|
||||
Top = 204
|
||||
Width = 505
|
||||
Left = 76
|
||||
Height = 23
|
||||
Top = 181
|
||||
Width = 514
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoSize = True
|
||||
BorderSpacing.Left = 6
|
||||
@ -220,15 +220,15 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
BevelOuter = bvNone
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 3
|
||||
ClientHeight = 24
|
||||
ClientWidth = 505
|
||||
ClientHeight = 23
|
||||
ClientWidth = 514
|
||||
TabOrder = 9
|
||||
object rbBtnGlyphShowSystem: TRadioButton
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 24
|
||||
Height = 23
|
||||
Top = 0
|
||||
Width = 181
|
||||
Width = 161
|
||||
Caption = 'rbBtnGlyphShowSystem'
|
||||
Checked = True
|
||||
TabOrder = 0
|
||||
@ -236,18 +236,18 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
end
|
||||
object rbBtnGlyphShowNever: TRadioButton
|
||||
AnchorSideLeft.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 24
|
||||
Left = 161
|
||||
Height = 23
|
||||
Top = 0
|
||||
Width = 173
|
||||
Width = 154
|
||||
Caption = 'rbBtnGlyphShowNever'
|
||||
TabOrder = 1
|
||||
end
|
||||
object rbBtnGlyphShowAlways: TRadioButton
|
||||
Left = 354
|
||||
Height = 24
|
||||
Left = 315
|
||||
Height = 23
|
||||
Top = 0
|
||||
Width = 180
|
||||
Width = 159
|
||||
Caption = 'rbBtnGlyphShowAlways'
|
||||
TabOrder = 2
|
||||
end
|
||||
@ -258,10 +258,10 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideRight.Control = Owner
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 85
|
||||
Height = 24
|
||||
Top = 231
|
||||
Width = 505
|
||||
Left = 76
|
||||
Height = 23
|
||||
Top = 207
|
||||
Width = 514
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoSize = True
|
||||
BorderSpacing.Top = 3
|
||||
@ -269,16 +269,16 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
BevelOuter = bvNone
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 3
|
||||
ClientHeight = 24
|
||||
ClientWidth = 505
|
||||
ClientHeight = 23
|
||||
ClientWidth = 514
|
||||
TabOrder = 10
|
||||
object rbMenuGlyphShowSystem: TRadioButton
|
||||
AnchorSideRight.Control = PanelGlyphsMenusOptions
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 24
|
||||
Height = 23
|
||||
Top = 0
|
||||
Width = 196
|
||||
Width = 174
|
||||
Caption = 'rbMenuGlyphShowSystem'
|
||||
Checked = True
|
||||
TabOrder = 0
|
||||
@ -286,18 +286,18 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
end
|
||||
object rbMenuGlyphShowNever: TRadioButton
|
||||
AnchorSideLeft.Side = asrCenter
|
||||
Left = 196
|
||||
Height = 24
|
||||
Left = 174
|
||||
Height = 23
|
||||
Top = 0
|
||||
Width = 188
|
||||
Width = 167
|
||||
Caption = 'rbMenuGlyphShowNever'
|
||||
TabOrder = 1
|
||||
end
|
||||
object rbMenuGlyphShowAlways: TRadioButton
|
||||
Left = 384
|
||||
Height = 24
|
||||
Left = 341
|
||||
Height = 23
|
||||
Top = 0
|
||||
Width = 195
|
||||
Width = 172
|
||||
Caption = 'rbMenuGlyphShowAlways'
|
||||
TabOrder = 2
|
||||
end
|
||||
@ -305,11 +305,11 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
object lblCenter: TLabel
|
||||
AnchorSideLeft.Control = Owner
|
||||
AnchorSideLeft.Side = asrCenter
|
||||
AnchorSideTop.Control = lblDesktopFiles
|
||||
AnchorSideTop.Control = lblImportExport
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 296
|
||||
Height = 5
|
||||
Top = 463
|
||||
Top = 416
|
||||
Width = 5
|
||||
AutoSize = False
|
||||
ParentColor = False
|
||||
@ -319,9 +319,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = CheckDiskChangesWithLoadingCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 305
|
||||
Width = 234
|
||||
Height = 22
|
||||
Top = 275
|
||||
Width = 207
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'AskSavingOnlySessionCheckBox'
|
||||
ParentShowHint = False
|
||||
@ -333,9 +333,9 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = lblMouseAction
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 77
|
||||
Width = 207
|
||||
Height = 22
|
||||
Top = 66
|
||||
Width = 183
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'PreferDoubleClickCheckBox'
|
||||
ParentShowHint = False
|
||||
@ -345,10 +345,10 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
object lblLanguage: TDividerBevel
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 0
|
||||
Height = 20
|
||||
Height = 17
|
||||
Top = 0
|
||||
Width = 590
|
||||
Caption = 'lblLanguage'
|
||||
Caption = 'Language'
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
Font.Style = [fsBold]
|
||||
ParentColor = False
|
||||
@ -358,24 +358,24 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = PanelGlyphsMenusOptions
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 20
|
||||
Top = 261
|
||||
Height = 17
|
||||
Top = 236
|
||||
Width = 597
|
||||
Caption = 'lblCheckAndAutoSave'
|
||||
Caption = 'Check and Auto Save Files'
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Top = 6
|
||||
Font.Style = [fsBold]
|
||||
ParentColor = False
|
||||
ParentFont = False
|
||||
end
|
||||
object lblDesktopFiles: TDividerBevel
|
||||
object lblImportExport: TDividerBevel
|
||||
AnchorSideTop.Control = AutoSaveIntervalInSecsComboBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 20
|
||||
Top = 443
|
||||
Height = 17
|
||||
Top = 399
|
||||
Width = 597
|
||||
Caption = 'lblDesktopFiles'
|
||||
Caption = 'Import / Export'
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Top = 6
|
||||
Font.Style = [fsBold]
|
||||
@ -386,10 +386,10 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = ShowHintsForComponentPaletteCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 20
|
||||
Top = 181
|
||||
Height = 17
|
||||
Top = 161
|
||||
Width = 597
|
||||
Caption = 'lblGlyphs'
|
||||
Caption = 'Show Glyphs for'
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Top = 6
|
||||
Font.Style = [fsBold]
|
||||
@ -400,10 +400,10 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = PreferDoubleClickCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 20
|
||||
Top = 107
|
||||
Height = 17
|
||||
Top = 94
|
||||
Width = 597
|
||||
Caption = 'lblHints'
|
||||
Caption = 'Hints'
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Top = 6
|
||||
Font.Style = [fsBold]
|
||||
@ -414,10 +414,10 @@ object DesktopOptionsFrame: TDesktopOptionsFrame
|
||||
AnchorSideTop.Control = LanguageComboBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 20
|
||||
Top = 57
|
||||
Height = 17
|
||||
Top = 49
|
||||
Width = 597
|
||||
Caption = 'lblMouseAction'
|
||||
Caption = 'Mouse Action'
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Top = 6
|
||||
Font.Style = [fsBold]
|
||||
|
@ -25,8 +25,8 @@ unit desktop_options;
|
||||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils, FileUtil, Forms, StdCtrls, Dialogs, LCLProc,
|
||||
ExtCtrls, EnvironmentOpts, LazarusIDEStrConsts, IDETranslations, InputHistory,
|
||||
Classes, SysUtils, FileUtil, Forms, StdCtrls, Dialogs, LCLProc, ExtCtrls,
|
||||
Buttons, EnvironmentOpts, LazarusIDEStrConsts, IDETranslations, InputHistory,
|
||||
IDEProcs, IDEOptionsIntf, IDEWindowIntf, IDEUtils, DividerBevel;
|
||||
|
||||
type
|
||||
@ -40,7 +40,7 @@ type
|
||||
AutoSaveIntervalInSecsLabel: TLabel;
|
||||
AutoSaveProjectCheckBox: TCheckBox;
|
||||
lblCheckAndAutoSave: TDividerBevel;
|
||||
lblDesktopFiles: TDividerBevel;
|
||||
lblImportExport: TDividerBevel;
|
||||
lblGlyphs: TDividerBevel;
|
||||
lblHints: TDividerBevel;
|
||||
lblLanguage: TDividerBevel;
|
||||
@ -51,7 +51,7 @@ type
|
||||
lblCenter: TLabel;
|
||||
lblMenus: TLabel;
|
||||
LanguageComboBox: TComboBox;
|
||||
LoadDesktopSettingsFromFileButton: TButton;
|
||||
ImportDesktopButton: TButton;
|
||||
PanelGlyphsButtonsOptions: TPanel;
|
||||
PanelGlyphsMenusOptions: TPanel;
|
||||
rbMenuGlyphShowAlways: TRadioButton;
|
||||
@ -60,11 +60,11 @@ type
|
||||
rbBtnGlyphShowAlways: TRadioButton;
|
||||
rbBtnGlyphShowNever: TRadioButton;
|
||||
rbBtnGlyphShowSystem: TRadioButton;
|
||||
SaveDesktopSettingsToFileButton: TButton;
|
||||
ExportDesktopButton: TButton;
|
||||
ShowHintsForComponentPaletteCheckBox: TCheckBox;
|
||||
ShowHintsForMainSpeedButtonsCheckBox: TCheckBox;
|
||||
procedure SaveDesktopSettingsToFileButtonClick(Sender: TObject);
|
||||
procedure LoadDesktopSettingsFromFileButtonClick(Sender: TObject);
|
||||
procedure ExportDesktopButtonClick(Sender: TObject);
|
||||
procedure ImportDesktopButtonClick(Sender: TObject);
|
||||
private
|
||||
function LangIDToCaption(const LangID: string): string;
|
||||
function CaptionToLangID(const ACaption: string): string;
|
||||
@ -146,9 +146,9 @@ begin
|
||||
AutoSaveIntervalInSecsLabel.Caption := dlgIntvInSec;
|
||||
|
||||
// desktop files
|
||||
lblDesktopFiles.Caption := dlgDesktopFiles;
|
||||
SaveDesktopSettingsToFileButton.Caption := dlgSaveDFile;
|
||||
LoadDesktopSettingsFromFileButton.Caption := dlgLoadDFile;
|
||||
lblImportExport.Caption := lisImportExport;
|
||||
ExportDesktopButton.Caption := dlgExportDesktop;
|
||||
ImportDesktopButton.Caption := dlgImportDesktop;
|
||||
end;
|
||||
|
||||
procedure TDesktopOptionsFrame.ReadSettings(AOptions: TAbstractIDEOptions);
|
||||
@ -229,19 +229,19 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TDesktopOptionsFrame.SaveDesktopSettingsToFileButtonClick(Sender: TObject);
|
||||
procedure TDesktopOptionsFrame.ExportDesktopButtonClick(Sender: TObject);
|
||||
var
|
||||
AnEnvironmentOptions: TEnvironmentOptions;
|
||||
SaveDialog: TSaveDialog;
|
||||
AFilename: String;
|
||||
begin
|
||||
//debugln('TEnvironmentOptionsDialog.SaveDesktopSettingsToFileButtonClick A');
|
||||
//debugln('TDesktopOptionsFrame.ExportDesktopButtonClick A');
|
||||
SaveDialog := TSaveDialog.Create(nil);
|
||||
try
|
||||
try
|
||||
InputHistories.ApplyFileDialogSettings(SaveDialog);
|
||||
SaveDialog.Filter:=dlgFilterLazarusDesktopSettings+' (*.lds)|*.lds'
|
||||
+'|'+dlgFilterXML+' (*.xml)|*.xml'
|
||||
//+'|'+dlgFilterXML+' (*.xml)|*.xml'
|
||||
+'|'+dlgFilterAll+' ('+GetAllFilesMask+')|' + GetAllFilesMask;
|
||||
if SaveDialog.Execute then
|
||||
begin
|
||||
@ -253,7 +253,7 @@ begin
|
||||
AnEnvironmentOptions.Filename := AFilename;
|
||||
DoSaveSettings(AnEnvironmentOptions);
|
||||
AnEnvironmentOptions.Save(true);
|
||||
ShowMessage(lisSavedSuccessfully);
|
||||
ShowMessageFmt(lisSuccessfullyExported, [SaveDialog.Filename]);
|
||||
finally
|
||||
AnEnvironmentOptions.Free;
|
||||
end;
|
||||
@ -262,7 +262,7 @@ begin
|
||||
except
|
||||
on E: Exception do
|
||||
begin
|
||||
DebugLn('ERROR: [TEnvironmentOptionsDialog.SaveDesktopSettingsToFileButtonClick] ', E.Message);
|
||||
DebugLn('ERROR: [TDesktopOptionsFrame.ExportDesktopButtonClick] ', E.Message);
|
||||
end;
|
||||
end;
|
||||
finally
|
||||
@ -270,18 +270,18 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TDesktopOptionsFrame.LoadDesktopSettingsFromFileButtonClick(Sender: TObject);
|
||||
procedure TDesktopOptionsFrame.ImportDesktopButtonClick(Sender: TObject);
|
||||
var
|
||||
AnEnvironmentOptions: TEnvironmentOptions;
|
||||
OpenDialog: TOpenDialog;
|
||||
begin
|
||||
//debugln('TEnvironmentOptionsDialog.LoadDesktopSettingsFromFileButtonClick A');
|
||||
//debugln('TDesktopOptionsFrame.ImportDesktopButtonClick A');
|
||||
OpenDialog := TOpenDialog.Create(nil);
|
||||
try
|
||||
try
|
||||
InputHistories.ApplyFileDialogSettings(OpenDialog);
|
||||
OpenDialog.Filter:=dlgFilterLazarusDesktopSettings+' (*.lds)|*.lds'
|
||||
+'|'+dlgFilterXML+' (*.xml)|*.xml'
|
||||
//+'|'+dlgFilterXML+' (*.xml)|*.xml'
|
||||
+'|'+dlgFilterAll+' ('+GetAllFilesMask+')|' + GetAllFilesMask;
|
||||
if OpenDialog.Execute then
|
||||
begin
|
||||
@ -292,7 +292,7 @@ begin
|
||||
DoLoadSettings(AnEnvironmentOptions);
|
||||
if IDEDockMaster=nil then
|
||||
IDEWindowCreators.RestoreSimpleLayout;
|
||||
ShowMessage(lisLoadedSuccessfully);
|
||||
ShowMessageFmt(lisSuccessfullyImported, [OpenDialog.Filename]);
|
||||
finally
|
||||
AnEnvironmentOptions.Free;
|
||||
end;
|
||||
@ -302,7 +302,7 @@ begin
|
||||
on E: Exception do
|
||||
begin
|
||||
// ToDo
|
||||
DebugLn('ERROR: [TEnvironmentOptionsDialog.SaveDesktopSettingsToFileButtonClick] ', E.Message);
|
||||
DebugLn('ERROR: [TDesktopOptionsFrame.ImportDesktopButtonClick] ', E.Message);
|
||||
end;
|
||||
end;
|
||||
finally
|
||||
|
@ -61,7 +61,11 @@ type
|
||||
end;
|
||||
|
||||
|
||||
TIDEToolBarOptionList = specialize TFPGObjectList<TIDEToolBarOptions>;
|
||||
{ TIDEToolBarOptionList }
|
||||
Ttbo = specialize TFPGObjectList<TIDEToolBarOptions>;
|
||||
TIDEToolBarOptionList = class(Ttbo)
|
||||
procedure Assign(Source: TIDEToolBarOptionList);
|
||||
end;
|
||||
|
||||
{ TIDECoolBarOptions }
|
||||
TIDECoolBarOptions = class
|
||||
@ -77,6 +81,7 @@ type
|
||||
constructor Create;
|
||||
destructor Destroy; override;
|
||||
procedure Clear;
|
||||
procedure Assign(Source: TIDECoolBarOptions);
|
||||
function EqualToolbars(Opts: TIDECoolBarOptions): boolean;
|
||||
procedure Load(XMLConfig: TXMLConfig; Path: String);
|
||||
procedure Save(XMLConfig: TXMLConfig; Path: String);
|
||||
@ -238,6 +243,22 @@ begin
|
||||
XMLConfig.SetDeleteValue(SubPath + 'Button' + IntToStr(I+1) + '/Name', ButtonNames[I], '');
|
||||
end;
|
||||
|
||||
{ TIDEToolBarOptionList }
|
||||
|
||||
procedure TIDEToolBarOptionList.Assign(Source: TIDEToolBarOptionList);
|
||||
var
|
||||
tbo: TIDEToolBarOptions;
|
||||
i: Integer;
|
||||
begin
|
||||
Clear;
|
||||
for i := 0 to Source.Count-1 do
|
||||
begin
|
||||
tbo := TIDEToolBarOptions.Create;
|
||||
tbo.Assign(Source[i]);
|
||||
Add(tbo);
|
||||
end;
|
||||
end;
|
||||
|
||||
{ TIDECoolBarOptions }
|
||||
constructor TIDECoolBarOptions.Create;
|
||||
begin
|
||||
@ -256,6 +277,16 @@ begin
|
||||
FIDECoolBarToolBars.Clear;
|
||||
end;
|
||||
|
||||
procedure TIDECoolBarOptions.Assign(Source: TIDECoolBarOptions);
|
||||
begin
|
||||
FIDECoolBarVisible := Source.FIDECoolBarVisible;
|
||||
FIDECoolBarWidth := Source.FIDECoolBarWidth;
|
||||
FIDECoolBarGrabStyle := Source.FIDECoolBarGrabStyle;
|
||||
FIDECoolBarGrabWidth := Source.FIDECoolBarGrabWidth;
|
||||
FIDECoolBarBorderStyle := Source.FIDECoolBarBorderStyle;
|
||||
FIDECoolBarToolBars.Assign(Source.FIDECoolBarToolBars);
|
||||
end;
|
||||
|
||||
function TIDECoolBarOptions.EqualToolbars(Opts: TIDECoolBarOptions): boolean;
|
||||
var
|
||||
I: Integer;
|
||||
|
@ -1232,9 +1232,9 @@ resourcestring
|
||||
lisIfOnlySessionInfoChangedThenAsk = 'If only the session info changed, ask about saving it.';
|
||||
dlgEdFiles = 'Editor Files';
|
||||
dlgIntvInSec = 'Interval in secs';
|
||||
dlgDesktopFiles = 'Desktop Files';
|
||||
dlgSaveDFile = 'Save desktop settings to file';
|
||||
dlgLoadDFile = 'Load desktop settings from file';
|
||||
dlgExportDesktop = 'Export desktop';
|
||||
dlgImportDesktop = 'Import desktop';
|
||||
dlgSaveCurrentDesktop = 'Save current desktop';
|
||||
dlgDesktopHints = 'Hints';
|
||||
dlgDesktopButtons = 'Buttons - ';
|
||||
dlgDesktopMenus = 'Menus - ';
|
||||
@ -1244,8 +1244,6 @@ resourcestring
|
||||
dlgPreferDoubleClickOverSingleClick = 'Prefer double-click over single-click';
|
||||
dlgCurrentlyRespectedByMessagesWindow = 'Currently respected by messages window, '
|
||||
+'jump history and search results.';
|
||||
lisSavedSuccessfully = 'Saved successfully';
|
||||
lisLoadedSuccessfully = 'Loaded successfully';
|
||||
|
||||
// Window options
|
||||
dlgShowingWindows = 'Showing Windows';
|
||||
@ -3139,6 +3137,7 @@ resourcestring
|
||||
lisMenuCodeToolsDefinesEditor = 'CodeTools Defines Editor ...';
|
||||
lisMenuRescanFPCSourceDirectory = 'Rescan FPC Source Directory';
|
||||
srkmecMakeResourceString = 'Make Resource String';
|
||||
lisDesktops = 'Desktops ...';
|
||||
lisKMDiffEditorFiles = 'Diff Editor Files';
|
||||
lisKMConvertDFMFileToLFM = 'Convert DFM File to LFM';
|
||||
lisKMConvertDelphiUnitToLazarusUnit = 'Convert Delphi Unit to Lazarus Unit';
|
||||
|
14
ide/main.pp
14
ide/main.pp
@ -146,7 +146,7 @@ uses
|
||||
CodeTemplatesDlg, CodeBrowser, FindUnitDlg, InspectChksumChangedDlg,
|
||||
IdeOptionsDlg, EditDefineTree, PublishModule, EnvironmentOpts, TransferMacros,
|
||||
KeyMapping, IDETranslations, IDEProcs, ExtToolDialog, ExtToolEditDlg,
|
||||
JumpHistoryView, ExampleManager,
|
||||
JumpHistoryView, DesktopManager, ExampleManager,
|
||||
BuildLazDialog, BuildProfileManager, BuildManager, CheckCompOptsForNewUnitDlg,
|
||||
MiscOptions, InputHistory, UnitDependencies,
|
||||
IDEFPCInfo, IDEInfoDlg, IDEInfoNeedBuild, ProcessList, InitialSetupDlgs,
|
||||
@ -356,6 +356,7 @@ type
|
||||
procedure mnuToolConvertDelphiProjectClicked(Sender: TObject);
|
||||
procedure mnuToolConvertDelphiPackageClicked(Sender: TObject);
|
||||
procedure mnuToolConvertEncodingClicked(Sender: TObject);
|
||||
procedure mnuToolManageDesktopsClicked(Sender: TObject);
|
||||
procedure mnuToolManageExamplesClicked(Sender: TObject);
|
||||
procedure mnuToolBuildLazarusClicked(Sender: TObject);
|
||||
procedure mnuToolBuildAdvancedLazarusClicked(Sender: TObject);
|
||||
@ -2735,6 +2736,11 @@ begin
|
||||
itmEnvCodeToolsDefinesEditor.OnClick := @mnuEnvCodeToolsDefinesEditorClicked;
|
||||
|
||||
itmToolConfigure.OnClick := @mnuToolConfigureUserExtToolsClicked;
|
||||
itmToolManageDesktops.OnClick := @mnuToolManageDesktopsClicked;
|
||||
{$IFnDEF EnableDesktops}
|
||||
itmToolManageDesktops.Visible := False;
|
||||
{$ENDIF}
|
||||
itmToolManageExamples.OnClick := @mnuToolManageExamplesClicked;
|
||||
itmToolDiff.OnClick := @mnuToolDiffClicked;
|
||||
|
||||
itmToolCheckLFM.OnClick := @mnuToolCheckLFMClicked;
|
||||
@ -2743,7 +2749,6 @@ begin
|
||||
itmToolConvertDelphiProject.OnClick := @mnuToolConvertDelphiProjectClicked;
|
||||
itmToolConvertDelphiPackage.OnClick := @mnuToolConvertDelphiPackageClicked;
|
||||
itmToolConvertEncoding.OnClick := @mnuToolConvertEncodingClicked;
|
||||
itmToolManageExamples.OnClick := @mnuToolManageExamplesClicked;
|
||||
itmToolBuildLazarus.OnClick := @mnuToolBuildLazarusClicked;
|
||||
itmToolConfigureBuildLazarus.OnClick := @mnuToolConfigBuildLazClicked;
|
||||
// Set initial caption for Build Lazarus item. Will be changed in BuildLazDialog.
|
||||
@ -4551,6 +4556,11 @@ begin
|
||||
ShowConvertEncodingDlg;
|
||||
end;
|
||||
|
||||
procedure TMainIDE.mnuToolManageDesktopsClicked(Sender: TObject);
|
||||
begin
|
||||
ShowDesktopManagerDlg;
|
||||
end;
|
||||
|
||||
procedure TMainIDE.mnuToolManageExamplesClicked(Sender: TObject);
|
||||
begin
|
||||
DoExampleManager();
|
||||
|
@ -332,6 +332,8 @@ type
|
||||
//itmCustomTools: TIDEMenuSection;
|
||||
itmToolConfigure: TIDEMenuCommand;
|
||||
//itmSecondaryTools: TIDEMenuSection;
|
||||
itmToolManageDesktops: TIDEMenuCommand;
|
||||
itmToolManageExamples: TIDEMenuCommand;
|
||||
itmToolDiff: TIDEMenuCommand;
|
||||
//itmDelphiConversion: TIDEMenuSection;
|
||||
itmToolCheckLFM: TIDEMenuCommand;
|
||||
@ -341,7 +343,6 @@ type
|
||||
itmToolConvertDFMtoLFM: TIDEMenuCommand;
|
||||
itmToolConvertEncoding: TIDEMenuCommand;
|
||||
//itmBuildingLazarus: TIDEMenuSection;
|
||||
itmToolManageExamples: TIDEMenuCommand;
|
||||
itmToolBuildLazarus: TIDEMenuCommand;
|
||||
itmToolConfigureBuildLazarus: TIDEMenuCommand;
|
||||
|
||||
|
@ -1011,6 +1011,7 @@ begin
|
||||
|
||||
CreateMenuSeparatorSection(mnuTools,itmSecondaryTools,'itmSecondaryTools');
|
||||
ParentMI:=itmSecondaryTools;
|
||||
CreateMenuItem(ParentMI,itmToolManageDesktops,'itmToolManageDesktops', lisDesktops);
|
||||
CreateMenuItem(ParentMI,itmToolManageExamples,'itmToolManageExamples',lisMenuExampleProjects, 'camera');
|
||||
CreateMenuItem(ParentMI,itmToolDiff,'itmToolDiff',lisMenuCompareFiles, 'menu_tool_diff');
|
||||
|
||||
@ -1294,6 +1295,9 @@ begin
|
||||
itmEnvCodeToolsDefinesEditor.Command:=GetCommand(ecCodeToolsDefinesEd);
|
||||
|
||||
itmToolConfigure.Command:=GetCommand(ecExtToolSettings);
|
||||
|
||||
itmToolManageDesktops.Command:=GetCommand(ecManageDesktops);
|
||||
itmToolManageExamples.Command:=GetCommand(ecManageExamples);
|
||||
itmToolDiff.Command:=GetCommand(ecDiff);
|
||||
|
||||
itmToolConvertDFMtoLFM.Command:=GetCommand(ecConvertDFM2LFM);
|
||||
@ -1302,7 +1306,6 @@ begin
|
||||
itmToolConvertDelphiProject.Command:=GetCommand(ecConvertDelphiProject);
|
||||
itmToolConvertDelphiPackage.Command:=GetCommand(ecConvertDelphiPackage);
|
||||
itmToolConvertEncoding.Command:=GetCommand(ecConvertEncoding);
|
||||
itmToolManageExamples.Command:=GetCommand(ecManageExamples);
|
||||
itmToolBuildLazarus.Command:=GetCommand(ecBuildLazarus);
|
||||
itmToolConfigureBuildLazarus.Command:=GetCommand(ecConfigBuildLazarus);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user