git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.jvcl@12 7f62d464-2af8-f54e-996c-e91b33f51cbe
90 lines
2.1 KiB
ObjectPascal
90 lines
2.1 KiB
ObjectPascal
unit DocFm;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, StdCtrls, ExtCtrls, Grids, JvComponent, JvDockControlForm;
|
|
|
|
type
|
|
TMsgEvent = procedure(msg:String) of object;
|
|
|
|
TDocForm = class(TForm)
|
|
sg: TStringGrid;
|
|
DockClient: TJvDockClient;
|
|
Bevel1: TBevel;
|
|
CheckBox1: TCheckBox;
|
|
procedure DockClientFormHide(Sender: TObject);
|
|
procedure DockClientFormShow(Sender: TObject);
|
|
procedure DockClientCheckIsDockable(DockClient: TJvDockClient;
|
|
DockForm: TForm; DockServer: TJvDockServer; DockPanel: TJvDockPanel;
|
|
var CanDock: Boolean);
|
|
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
private
|
|
{ Private declarations }
|
|
FOnTrace:TMsgEvent;
|
|
|
|
procedure Trace(msg:String);
|
|
|
|
public
|
|
{ Public declarations }
|
|
property OnTrace:TMsgEvent read FOnTrace write FOnTrace;
|
|
end;
|
|
|
|
var
|
|
DocForm: TDocForm;
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
procedure TDocForm.Trace(msg:String);
|
|
begin
|
|
if Assigned(FOnTrace) then begin
|
|
FOnTrace( msg );
|
|
end;
|
|
|
|
end;
|
|
procedure TDocForm.DockClientFormHide(Sender: TObject);
|
|
begin
|
|
Trace( Self.Caption + ' HIDE ' );
|
|
end;
|
|
|
|
procedure TDocForm.DockClientFormShow(Sender: TObject);
|
|
begin
|
|
Trace( Self.Caption + ' SHOW ' );
|
|
|
|
end;
|
|
|
|
|
|
|
|
procedure TDocForm.DockClientCheckIsDockable(DockClient: TJvDockClient;
|
|
DockForm: TForm; DockServer: TJvDockServer; DockPanel: TJvDockPanel;
|
|
var CanDock: Boolean);
|
|
var
|
|
s,n:String;
|
|
begin
|
|
if Assigned(FOnTrace) then begin
|
|
s := BoolToStr( CanDock,true );
|
|
if Assigned(DockPanel) then begin
|
|
n := DockPanel.Name;
|
|
end else begin
|
|
n := '<nil>';
|
|
end;
|
|
Trace( Self.Caption + ' DockClient.CheckIsDockable DockPanel='+n+', CanDock='+s );
|
|
end;
|
|
end;
|
|
|
|
procedure TDocForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
|
begin
|
|
CanClose := CheckBox1.Checked;
|
|
end;
|
|
|
|
procedure TDocForm.FormClose(Sender: TObject; var Action: TCloseAction);
|
|
begin
|
|
Action := caFree;
|
|
end;
|
|
|
|
end.
|