unit DPolicyView; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Imaging.pngimage, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Vcl.ExtCtrls, Vcl.Buttons, System.Actions, Vcl.ActnList, Vcl.PlatformDefaultStyleActnCtrls, Vcl.ActnMan, System.ImageList, Vcl.ImgList, PngImageList, FPolicyView; type TDlgPolicyView = class(TForm) pnTop: TPanel; pnClient: TPanel; pcMain: TPageControl; tabSecu: TTabSheet; tabSleep: TTabSheet; tabVul: TTabSheet; btnRefresh: TSpeedButton; imgList: TPngImageList; tabMg: TTabSheet; procedure acRefreshExecute(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } FrmPViewMg_, FrmPViewSecu_, FrmPViewSleep_, FrmPViewVul_: TFrmPolicyView; public { Public declarations } Constructor Create(aOwner: TComponent); override; procedure CreateParams(var Params: TCreateParams); override; procedure RefreshList; end; var DlgPolicyView: TDlgPolicyView; implementation uses ManagerService; {$R *.dfm} Constructor TDlgPolicyView.Create(aOwner: TComponent); begin Inherited Create(aOwner); FrmPViewMg_ := TFrmPolicyView.Create(tabMg); FrmPViewMg_.Parent := tabMg; FrmPViewMg_.Align := alClient; FrmPViewMg_.Visible := true; FrmPViewSecu_ := TFrmPolicyView.Create(tabSecu); FrmPViewSecu_.Parent := tabSecu; FrmPViewSecu_.Align := alClient; FrmPViewSecu_.Visible := true; FrmPViewSleep_ := TFrmPolicyView.Create(tabSleep); FrmPViewSleep_.Parent := tabSleep; FrmPViewSleep_.Align := alClient; FrmPViewSleep_.Visible := true; FrmPViewVul_ := TFrmPolicyView.Create(tabVul); FrmPViewVul_.Parent := tabVul; FrmPViewVul_.Align := alClient; FrmPViewVul_.Visible := true; pcMain.ActivePageIndex := 0; RefreshList; end; procedure TDlgPolicyView.CreateParams(var Params: TCreateParams); begin Inherited CreateParams(Params); Params.ExStyle := WS_EX_APPWINDOW; end; procedure TDlgPolicyView.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TDlgPolicyView.RefreshList; begin FrmPViewMg_.AddModePolicy(gMgSvc.PrefModel, true, true, true); FrmPViewSecu_.AddModePolicy(gMgSvc.PrefModel, true, true, false); FrmPViewSleep_.AddModePolicy(gMgSvc.SleepPolicy, true, true, false); FrmPViewVul_.AddModePolicy(gMgSvc.VulPolicy, true, true, false); end; procedure TDlgPolicyView.acRefreshExecute(Sender: TObject); begin RefreshList; end; end.