mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-26 15:33:46 +02:00
157 lines
4.8 KiB
ObjectPascal
157 lines
4.8 KiB
ObjectPascal
{
|
|
*****************************************************************************
|
|
This file is part of the EducationLaz package
|
|
|
|
See the file COPYING.modifiedLGPL.txt, included in this distribution,
|
|
for details about the license.
|
|
*****************************************************************************
|
|
|
|
Author: Mattias Gaertner
|
|
|
|
Abstract:
|
|
Options for Lazarus package system.
|
|
}
|
|
unit EduPkgSystem;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, FileUtil, LResources, Forms, Controls, StdCtrls, EduOptions,
|
|
LazConfigStorage, IDEOptionsIntf;
|
|
|
|
type
|
|
|
|
{ TEduPkgSystemOptions }
|
|
|
|
TEduPkgSystemOptions = class(TEduOptionsNode)
|
|
private
|
|
FHideConfigureInstalledPkgs: boolean;
|
|
FHideCreatePackage: boolean;
|
|
FHideOpenPackage: boolean;
|
|
FHidePackageGraph: boolean;
|
|
procedure SetHideConfigureInstalledPkgs(const AValue: boolean);
|
|
procedure SetHideCreatePackage(const AValue: boolean);
|
|
procedure SetHideOpenPackage(const AValue: boolean);
|
|
procedure SetHidePackageGraph(const AValue: boolean);
|
|
public
|
|
function Load(Config: TConfigStorage): TModalResult; override;
|
|
function Save(Config: TConfigStorage): TModalResult; override;
|
|
property HideCreatePackage: boolean read FHideCreatePackage write SetHideCreatePackage;
|
|
property HideOpenPackage: boolean read FHideOpenPackage write SetHideOpenPackage;
|
|
property HidePackageGraph: boolean read FHidePackageGraph write SetHidePackageGraph;
|
|
property HideConfigureInstalledPkgs: boolean read FHideConfigureInstalledPkgs write SetHideConfigureInstalledPkgs;
|
|
end;
|
|
|
|
{ TEduPkgSystemFrame }
|
|
|
|
TEduPkgSystemFrame = class(TAbstractIDEOptionsEditor)
|
|
HideCreatePackageCheckBox: TCheckBox;
|
|
HideOpenPackageCheckBox: TCheckBox;
|
|
HidePackageGraphCheckBox: TCheckBox;
|
|
HideConfigureInstalledPkgsCheckBox: TCheckBox;
|
|
private
|
|
public
|
|
function GetTitle: String; override;
|
|
procedure Setup({%H-}ADialog: TAbstractOptionsEditorDialog); override;
|
|
procedure ReadSettings(AOptions: TAbstractIDEOptions); override;
|
|
procedure WriteSettings(AOptions: TAbstractIDEOptions); override;
|
|
class function SupportedOptionsClass: TAbstractIDEOptionsClass; override;
|
|
end;
|
|
|
|
procedure Register;
|
|
|
|
implementation
|
|
|
|
procedure Register;
|
|
begin
|
|
//EducationOptions.Root.Add(TEduPkgSystemOptions.Create);
|
|
//RegisterIDEOptionsEditor(GroupEducation,TEduPkgSystemFrame,EduOptionPackagesID);
|
|
end;
|
|
|
|
{ TEduPkgSystemFrame }
|
|
|
|
function TEduPkgSystemFrame.GetTitle: String;
|
|
begin
|
|
Result:='Packages';
|
|
end;
|
|
|
|
procedure TEduPkgSystemFrame.Setup(ADialog: TAbstractOptionsEditorDialog);
|
|
begin
|
|
HideCreatePackageCheckBox.Caption:='Hide menu items to create new packages';
|
|
HideOpenPackageCheckBox.Caption:='Hide menu items to open package';
|
|
HidePackageGraphCheckBox.Caption:='Hide menu item package graph';
|
|
HideConfigureInstalledPkgsCheckBox.Caption:='Hide "Configure installed packages"';
|
|
end;
|
|
|
|
procedure TEduPkgSystemFrame.ReadSettings(AOptions: TAbstractIDEOptions);
|
|
begin
|
|
if AOptions=EducationOptions then begin
|
|
end;
|
|
end;
|
|
|
|
procedure TEduPkgSystemFrame.WriteSettings(AOptions: TAbstractIDEOptions);
|
|
begin
|
|
if AOptions=EducationOptions then begin
|
|
end;
|
|
end;
|
|
|
|
class function TEduPkgSystemFrame.SupportedOptionsClass: TAbstractIDEOptionsClass;
|
|
begin
|
|
Result:=EducationIDEOptionsClass;
|
|
end;
|
|
|
|
{ TEduPkgSystemOptions }
|
|
|
|
procedure TEduPkgSystemOptions.SetHideConfigureInstalledPkgs(
|
|
const AValue: boolean);
|
|
begin
|
|
if FHideConfigureInstalledPkgs=AValue then exit;
|
|
FHideConfigureInstalledPkgs:=AValue;
|
|
Changed;
|
|
end;
|
|
|
|
procedure TEduPkgSystemOptions.SetHideCreatePackage(const AValue: boolean);
|
|
begin
|
|
if FHideCreatePackage=AValue then exit;
|
|
FHideCreatePackage:=AValue;
|
|
Changed;
|
|
end;
|
|
|
|
procedure TEduPkgSystemOptions.SetHideOpenPackage(const AValue: boolean);
|
|
begin
|
|
if FHideOpenPackage=AValue then exit;
|
|
FHideOpenPackage:=AValue;
|
|
Changed;
|
|
end;
|
|
|
|
procedure TEduPkgSystemOptions.SetHidePackageGraph(const AValue: boolean);
|
|
begin
|
|
if FHidePackageGraph=AValue then exit;
|
|
FHidePackageGraph:=AValue;
|
|
Changed;
|
|
end;
|
|
|
|
function TEduPkgSystemOptions.Load(Config: TConfigStorage): TModalResult;
|
|
begin
|
|
FHideConfigureInstalledPkgs:=Config.GetValue('HideConfigureInstalledPackages',false);
|
|
FHideCreatePackage:=Config.GetValue('HideCreatePackage',false);
|
|
FHideOpenPackage:=Config.GetValue('HideOpenPackage',false);
|
|
FHidePackageGraph:=Config.GetValue('HidePackageGraph',false);
|
|
Result:=inherited Load(Config);
|
|
end;
|
|
|
|
function TEduPkgSystemOptions.Save(Config: TConfigStorage): TModalResult;
|
|
begin
|
|
Config.SetDeleteValue('HideConfigureInstalledPackages',FHideConfigureInstalledPkgs,false);
|
|
Config.SetDeleteValue('HideCreatePackage',FHideCreatePackage,false);
|
|
Config.SetDeleteValue('HideOpenPackage',FHideOpenPackage,false);
|
|
Config.SetDeleteValue('HidePackageGraph',FHidePackageGraph,false);
|
|
Result:=inherited Save(Config);
|
|
end;
|
|
|
|
{$R *.lfm}
|
|
|
|
end.
|