fpc/utils/fpdoc/fpde/frmlink.pp
2003-03-17 23:52:11 +00:00

86 lines
2.0 KiB
ObjectPascal

{$mode objfpc}
{$h+}
unit frmlink;
interface
uses fpgtk,gtk,classes,sysutils;
Type
TLinkForm = Class (TFPGtkWindow)
FTable : TFPGtkTable;
FLLinkTarget,
FLLinkText : TFPGtkLabel;
FLinkText : TFPGtkEntry;
FLinkTarget : TFPGtkCombo;
FSeparator : TFPGtkHSeparator;
FVBox : TFPgtkVBox;
FOK,
FCancel : TFPGtkButton;
FButtonBox: TFPgtkHBox;
Constructor Create;
Procedure CreateWindow;
Procedure OnShow(Sender : TFpGtkObject;Data : Pointer);
end;
Implementation
uses fpdemsg;
Constructor TLinkForm.Create;
begin
Inherited Create(GTK_WINDOW_DIALOG);
CreateWindow;
end;
Procedure TLinkForm.CreateWindow;
Var
OH,OV : TgtkAttachOPtions;
begin
FVBox:=TFPGtkVBox.Create;
FVBox.Spacing:=4;
FVBox.Border:=8;
Add(FVBox);
// Table area
FTable:=TFPGtkTable.Create(2,2);
FLLinktarget:=TFPGtkLabel.Create(SLinkTarget);
FLLinktarget.Justify:=GTK_JUSTIFY_RIGHT;
FLLinkText:=TFPGtkLabel.Create(SLinkText);
FLLinktext.Justify:=GTK_JUSTIFY_RIGHT;
FLinkText:=TFPgtkEntry.Create;
FlinkTarget:=TFPGtkCombo.Create;
OH:=GTK_EXPAND or GTK_FILL;
FTable.Attach(FLLinkTarget,0,1,0,1,0,GTK_FILL,4,4);
FTable.Attach(FLLinkText,0,1,1,2,0,GTK_FILL,4,4);
FTable.Attach(FLinkTarget,1,2,0,1,OH,0,4,4);
FTable.Attach(FLinkText,1,2,1,2,OH,0,4,4);
// button area
FOK:=TFpGtkButton.CreateWithLabel(SOK);
FOK.ConnectClicked(@CloseWithResult,IntToPointer(drOK));
FCancel:=TFPgtkButton.CreateWithLabel(SCancel);
FCancel.ConnectCLicked(@CloseWithResult,IntToPointer(drCancel));
FSeparator:=TFPgtkHSeparator.Create;
FButtonBox:=TfpGtkHBox.Create;
FButtonBox.Spacing:=4;
FButtonBox.PackEnd(FOK,false,false,4);
FButtonBox.PackEnd(FCancel,false,false,4);
// Add to window
FVBox.PackStart(FTable,False,False,0);
FVBox.PackStart(FSeparator,False,False,4);
FVBox.PackStart(FButtonBox,false,false,0);
// Some events;
ConnectShow(@OnShow,Nil);
end;
Procedure TLinkForm.OnShow(Sender : TFpgtkObject; Data : Pointer);
begin
FocusedWidget(FLinkTarget.entry);
end;
end.