removed old anchordocking example

git-svn-id: trunk@25969 -
This commit is contained in:
mattias 2010-06-08 13:34:31 +00:00
parent bdb7a1945e
commit 2a40dfe235
9 changed files with 0 additions and 570 deletions

8
.gitattributes vendored
View File

@ -2746,14 +2746,6 @@ examples/affinetransforms/unit1.lfm svneol=native#text/plain
examples/affinetransforms/unit1.lrs svneol=native#text/plain
examples/affinetransforms/unit1.pas svneol=native#text/plain
examples/anchordocking/README.txt svneol=native#text/plain
examples/anchordocking/dockform1unit.lfm svneol=native#text/plain
examples/anchordocking/dockform1unit.lrs svneol=native#text/pascal
examples/anchordocking/dockform1unit.pas svneol=native#text/plain
examples/anchordocking/dockform2unit.lfm svneol=native#text/plain
examples/anchordocking/dockform2unit.lrs svneol=native#text/pascal
examples/anchordocking/dockform2unit.pas svneol=native#text/plain
examples/anchordocking/docking1.lpi svneol=native#text/plain
examples/anchordocking/docking1.lpr svneol=native#text/plain
examples/autosize/childsizinglayout/childsizinglayout.lpi svneol=native#text/plain
examples/autosize/childsizinglayout/childsizinglayout.lpr svneol=native#text/plain
examples/autosize/childsizinglayout/mainunit.lfm svneol=native#text/plain

View File

@ -1,102 +0,0 @@
object MainForm: TMainForm
Left = 292
Height = 331
Top = 209
Width = 400
HorzScrollBar.Page = 399
VertScrollBar.Page = 330
ActiveControl = CreateNewFormButton
Caption = 'MainForm'
ClientHeight = 331
ClientWidth = 400
OnCreate = FormCreate
OnDestroy = FormDestroy
OnPaint = FormPaint
PopupMenu = MainPopupMenu
object CreateNewFormButton: TButton
Left = 8
Height = 29
Top = 32
Width = 130
AutoSize = True
Caption = 'Create a new form'
OnClick = CreateNewFormButtonClick
TabOrder = 0
end
object SaveLayoutButton: TButton
Left = 8
Height = 29
Top = 64
Width = 177
AutoSize = True
Caption = 'Save Layout to config.xml'
OnClick = SaveLayoutButtonClick
TabOrder = 1
end
object CreateLayoutGroupBox: TGroupBox
Left = 16
Height = 200
Top = 104
Width = 115
AutoSize = True
Caption = 'Create Layout'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.HorizontalSpacing = 6
ChildSizing.VerticalSpacing = 6
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ClientHeight = 181
ClientWidth = 111
TabOrder = 2
object ClearLayoutsButton: TButton
Left = 6
Height = 29
Top = 6
Width = 99
Caption = 'Clear Layouts'
OnClick = ClearLayoutsButtonClick
TabOrder = 1
end
object TwoSiblingsButton: TButton
Left = 6
Height = 29
Top = 41
Width = 99
Caption = 'Two Siblings'
OnClick = TwoSiblingsButtonClick
TabOrder = 4
end
object TwoPagesButton: TButton
Left = 6
Height = 29
Top = 76
Width = 99
AutoSize = True
Caption = 'Two Pages'
OnClick = TwoPagesButtonClick
TabOrder = 0
end
object ThreePagesButton: TButton
Left = 6
Height = 29
Top = 111
Width = 99
Caption = 'Three Pages'
OnClick = ThreePagesButtonClick
TabOrder = 2
end
object SpiralButton: TButton
Left = 6
Height = 29
Top = 146
Width = 99
Caption = 'Spiral'
OnClick = SpiralButtonClick
TabOrder = 3
end
end
object MainPopupMenu: TPopupMenu
left = 192
top = 24
end
end

View File

@ -1,31 +0,0 @@
LazarusResources.Add('TMainForm','FORMDATA',[
'TPF0'#9'TMainForm'#8'MainForm'#4'Left'#3'$'#1#6'Height'#3'K'#1#3'Top'#3#209#0
+#5'Width'#3#144#1#18'HorzScrollBar.Page'#3#143#1#18'VertScrollBar.Page'#3'J'
+#1#13'ActiveControl'#7#19'CreateNewFormButton'#7'Caption'#6#8'MainForm'#12'C'
+'lientHeight'#3'K'#1#11'ClientWidth'#3#144#1#8'OnCreate'#7#10'FormCreate'#9
+'OnDestroy'#7#11'FormDestroy'#7'OnPaint'#7#9'FormPaint'#9'PopupMenu'#7#13'Ma'
+'inPopupMenu'#0#7'TButton'#19'CreateNewFormButton'#4'Left'#2#8#6'Height'#2#29
+#3'Top'#2' '#5'Width'#3#130#0#8'AutoSize'#9#7'Caption'#6#17'Create a new for'
+'m'#7'OnClick'#7#24'CreateNewFormButtonClick'#8'TabOrder'#2#0#0#0#7'TButton'
+#16'SaveLayoutButton'#4'Left'#2#8#6'Height'#2#29#3'Top'#2'@'#5'Width'#3#177#0
+#8'AutoSize'#9#7'Caption'#6#25'Save Layout to config.xml'#7'OnClick'#7#21'Sa'
+'veLayoutButtonClick'#8'TabOrder'#2#1#0#0#9'TGroupBox'#20'CreateLayoutGroupB'
+'ox'#4'Left'#2#16#6'Height'#3#200#0#3'Top'#2'h'#5'Width'#2's'#8'AutoSize'#9#7
+'Caption'#6#13'Create Layout'#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildS'
+'izing.TopBottomSpacing'#2#6#29'ChildSizing.HorizontalSpacing'#2#6#27'ChildS'
+'izing.VerticalSpacing'#2#6#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTo'
+'pToBottom'#12'ClientHeight'#3#181#0#11'ClientWidth'#2'o'#8'TabOrder'#2#2#0#7
+'TButton'#18'ClearLayoutsButton'#4'Left'#2#6#6'Height'#2#29#3'Top'#2#6#5'Wid'
+'th'#2'c'#7'Caption'#6#13'Clear Layouts'#7'OnClick'#7#23'ClearLayoutsButtonC'
+'lick'#8'TabOrder'#2#1#0#0#7'TButton'#17'TwoSiblingsButton'#4'Left'#2#6#6'He'
+'ight'#2#29#3'Top'#2')'#5'Width'#2'c'#7'Caption'#6#12'Two Siblings'#7'OnClic'
+'k'#7#22'TwoSiblingsButtonClick'#8'TabOrder'#2#4#0#0#7'TButton'#14'TwoPagesB'
+'utton'#4'Left'#2#6#6'Height'#2#29#3'Top'#2'L'#5'Width'#2'c'#8'AutoSize'#9#7
+'Caption'#6#9'Two Pages'#7'OnClick'#7#19'TwoPagesButtonClick'#8'TabOrder'#2#0
+#0#0#7'TButton'#16'ThreePagesButton'#4'Left'#2#6#6'Height'#2#29#3'Top'#2'o'#5
+'Width'#2'c'#7'Caption'#6#11'Three Pages'#7'OnClick'#7#21'ThreePagesButtonCl'
+'ick'#8'TabOrder'#2#2#0#0#7'TButton'#12'SpiralButton'#4'Left'#2#6#6'Height'#2
+#29#3'Top'#3#146#0#5'Width'#2'c'#7'Caption'#6#6'Spiral'#7'OnClick'#7#17'Spir'
+'alButtonClick'#8'TabOrder'#2#3#0#0#0#10'TPopupMenu'#13'MainPopupMenu'#4'lef'
+'t'#3#192#0#3'top'#2#24#0#0#0
]);

View File

@ -1,239 +0,0 @@
unit DockForm1Unit;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LCLProc, LResources, Forms, Controls, Graphics, Dialogs,
FileUtil, DockForm2Unit, Buttons, Menus, LDockCtrl, XMLPropStorage, StdCtrls;
type
{ TMainForm }
TMainForm = class(TForm)
TwoSiblingsButton: TButton;
SpiralButton: TButton;
ThreePagesButton: TButton;
ClearLayoutsButton: TButton;
TwoPagesButton: TButton;
CreateLayoutGroupBox: TGroupBox;
SaveLayoutButton: TButton;
CreateNewFormButton: TButton;
MainPopupMenu: TPopupMenu;
procedure ClearLayoutsButtonClick(Sender: TObject);
procedure CreateNewFormButtonClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FormPaint(Sender: TObject);
procedure SaveLayoutButtonClick(Sender: TObject);
procedure SpiralButtonClick(Sender: TObject);
procedure ThreePagesButtonClick(Sender: TObject);
procedure TwoPagesButtonClick(Sender: TObject);
procedure TwoSiblingsButtonClick(Sender: TObject);
private
function CreateNewForm: TCustomForm;
procedure ClearLayout;
public
ControlDocker1: TLazControlDocker;
DockingManager: TLazDockingManager;
end;
var
MainForm: TMainForm;
implementation
{ TMainForm }
procedure TMainForm.FormPaint(Sender: TObject);
begin
if Sender=nil then ;
PaintBoundaries(Self,clBlue);
end;
procedure TMainForm.SaveLayoutButtonClick(Sender: TObject);
var
Config: TXMLConfigStorage;
begin
Config:=TXMLConfigStorage.Create('config.xml',false);
DockingManager.SaveToConfig(Config);
Config.WriteToDisk;
Config.Free;
end;
procedure TMainForm.SpiralButtonClick(Sender: TObject);
var
Form1: TCustomForm;
Form2: TCustomForm;
Form3: TCustomForm;
Form4: TCustomForm;
Form5: TCustomForm;
begin
debugln;
ClearLayout;
Form1:=CreateNewForm;
with Form1 do SetBounds(Left,Top,600,450);
Form2:=CreateNewForm;
with Form2 do SetBounds(Left,Top,150,150);
DockingManager.Manager.InsertControl(Form2,alRight,Form1);
Form3:=CreateNewForm;
with Form3 do SetBounds(Left,Top,150,150);
DockingManager.Manager.InsertControl(Form3,alLeft,Form1);
Form4:=CreateNewForm;
with Form4 do SetBounds(Left,Top,150,150);
DockingManager.Manager.InsertControl(Form4,alTop,Form1);
DockingManager.Manager.EnlargeControl(Form4,akLeft);
Form5:=CreateNewForm;
with Form5 do SetBounds(Left,Top,150,150);
DockingManager.Manager.InsertControl(Form5,alBottom,Form1);
DockingManager.Manager.EnlargeControl(Form5,akRight);
end;
procedure TMainForm.ThreePagesButtonClick(Sender: TObject);
var
Form1: TCustomForm;
Form2: TCustomForm;
Form3: TCustomForm;
begin
debugln;
ClearLayout;
Form1:=CreateNewForm;
Form1.Width:=500;
Form2:=CreateNewForm;
DockingManager.Manager.InsertControl(Form2,alClient,Form1);
Form3:=CreateNewForm;
DockingManager.Manager.InsertControl(Form3,alClient,Form1);
end;
procedure TMainForm.TwoPagesButtonClick(Sender: TObject);
var
Form1: TCustomForm;
Form2: TCustomForm;
begin
debugln;
ClearLayout;
Form1:=CreateNewForm;
with Form1 do SetBounds(Left,Top,400,200);
Form2:=CreateNewForm;
DockingManager.Manager.InsertControl(Form2,alClient,Form1);
end;
procedure TMainForm.TwoSiblingsButtonClick(Sender: TObject);
var
Form1: TCustomForm;
Form2: TCustomForm;
begin
debugln;
ClearLayout;
Form1:=CreateNewForm;
with Form1 do SetBounds(Left,Top,400,200);
Form2:=CreateNewForm;
DockingManager.Manager.InsertControl(Form2,alRight,Form1);
end;
function TMainForm.CreateNewForm: TCustomForm;
var
DockForm: TDockFormX;
begin
// create a form with a TLazControlDocker
DockForm:=TDockFormX.Create(Self);
Result:=DockForm;
// connect the TLazControlDocker of the new form to our DockingManager
// this will automatically create a unique name for the forms layout.
DockForm.Docker.Manager:=DockingManager;
// assign the unique name, so that the user can distinguish the forms
// This is only done here for demonstration purpose.
DockForm.Name:=DockForm.Docker.DockerName;
DockForm.Caption:=DockForm.Name;
DockForm.Docker.Name:='Docker'+DockForm.Name;
// finally: show the form
// If a form with this layout was already shown in the past, then
// the DockingManager will automatically restore the layout.
DockForm.Visible:=true;
DebugLn('TMainForm.CreateNewForm ',DockForm.Name,' ',DockingManager.FindDockerByControl(DockForm,nil).DockerName,' ',DockingManager.GetControlConfigName(DockForm));
end;
procedure TMainForm.ClearLayout;
var
i: Integer;
begin
// free all forms and layouts
for i:=ComponentCount-1 downto 0 do begin
if Components[i] is TDockFormX then
Components[i].Free;
end;
DockingManager.ClearConfigs;
end;
procedure TMainForm.CreateNewFormButtonClick(Sender: TObject);
begin
if Sender=nil then ;
CreateNewForm;
end;
procedure TMainForm.ClearLayoutsButtonClick(Sender: TObject);
begin
ClearLayout;
end;
procedure TMainForm.FormCreate(Sender: TObject);
var
Form2: TCustomForm;
Form3: TCustomForm;
Config: TXMLConfigStorage;
UseConfig: Boolean;
begin
Form2:=nil;
Form3:=nil;
DockingManager:=TLazDockingManager.Create(Self);
UseConfig:=FileExistsUTF8('config.xml');
if UseConfig then begin
Config:=TXMLConfigStorage.Create('config.xml',true);
DockingManager.LoadFromConfig(Config);
Config.Free;
end;
ControlDocker1:=TLazControlDocker.Create(Self);
ControlDocker1.Name:='DockerForm1';
ControlDocker1.Manager:=DockingManager;
DockingManager.WriteDebugReport;
Form2:=CreateNewForm;
DebugLn(['TMainForm.FormCreate =============================================================']);
//Form3:=CreateNewForm;
if not UseConfig then begin
DebugLn(['TMainForm.FormCreate Creating default docking layout']);
if Form2<>nil then begin
DebugLn(['TMainForm.FormCreate AAA1 Form2=',dbgs(Form2.BoundsRect)]);
DockingManager.Manager.InsertControl(Form2,alLeft,Self);
DebugLn(['TMainForm.FormCreate AAA2 Form2=',dbgs(Form2.BoundsRect)]);
end;
if Form3<>nil then
DockingManager.Manager.InsertControl(Form3,alBottom,Self);
end;
//DockingManager.WriteDebugReport;
//ControlDocker1.GetLayoutFromControl;
end;
procedure TMainForm.FormDestroy(Sender: TObject);
begin
DockingManager.Free;
end;
initialization
{$I dockform1unit.lrs}
end.

View File

@ -1,31 +0,0 @@
object DockFormX: TDockFormX
Left = 305
Height = 119
Top = 220
Width = 199
HorzScrollBar.Page = 198
VertScrollBar.Page = 118
Caption = 'DockFormX'
ChildSizing.LeftRightSpacing = 1
ChildSizing.TopBottomSpacing = 1
ClientHeight = 119
ClientWidth = 199
OnCreate = FormCreate
OnPaint = FormPaint
PopupMenu = PopupMenu1
object Shape1: TShape
Left = 31
Height = 71
Top = 25
Width = 57
Shape = stDiamond
end
object PopupMenu1: TPopupMenu
left = 8
top = 16
object HideMenuItem: TMenuItem
Caption = 'Hide'
OnClick = HideMenuItemClick
end
end
end

View File

@ -1,13 +0,0 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TDockFormX','FORMDATA',[
'TPF0'#10'TDockFormX'#9'DockFormX'#4'Left'#3'1'#1#6'Height'#2'w'#3'Top'#3#220
+#0#5'Width'#3#199#0#18'HorzScrollBar.Page'#3#198#0#18'VertScrollBar.Page'#2
+'v'#7'Caption'#6#9'DockFormX'#28'ChildSizing.LeftRightSpacing'#2#1#28'ChildS'
+'izing.TopBottomSpacing'#2#1#12'ClientHeight'#2'w'#11'ClientWidth'#3#199#0#8
+'OnCreate'#7#10'FormCreate'#7'OnPaint'#7#9'FormPaint'#9'PopupMenu'#7#10'Popu'
+'pMenu1'#0#6'TShape'#6'Shape1'#4'Left'#2#31#6'Height'#2'G'#3'Top'#2#25#5'Wid'
+'th'#2'9'#5'Shape'#7#9'stDiamond'#0#0#10'TPopupMenu'#10'PopupMenu1'#4'left'#2
+#8#3'top'#2#16#0#9'TMenuItem'#12'HideMenuItem'#7'Caption'#6#4'Hide'#7'OnClic'
+'k'#7#17'HideMenuItemClick'#0#0#0#0
]);

View File

@ -1,65 +0,0 @@
unit DockForm2Unit;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LCLProc, LResources, Forms, Controls, Graphics, Dialogs,
Buttons, LDockCtrl, StdCtrls, Menus, ExtCtrls;
type
{ TDockFormX }
TDockFormX = class(TForm)
HideMenuItem: TMenuItem;
PopupMenu1: TPopupMenu;
Shape1: TShape;
procedure FormCreate(Sender: TObject);
procedure FormPaint(Sender: TObject);
procedure HideMenuItemClick(Sender: TObject);
private
public
Docker: TLazControlDocker;
end;
procedure PaintBoundaries(AForm: TCustomForm; const AColor: TColor);
implementation
procedure PaintBoundaries(AForm: TCustomForm; const AColor: TColor);
begin
AForm.Canvas.Brush.Color:=AColor;
AForm.Canvas.FrameRect(Rect(0,0,AForm.ClientWidth-1,AForm.ClientHeight-1));
AForm.Canvas.Pen.Color:=AColor;
AForm.Canvas.Line(0,0,AForm.ClientWidth-1,AForm.ClientHeight-1);
AForm.Canvas.Line(0,AForm.ClientHeight-1,AForm.ClientWidth-1,0);
AForm.Canvas.TextOut(10,10,DbgSName(AForm));
end;
{ TDockFormX }
procedure TDockFormX.FormPaint(Sender: TObject);
begin
if Sender=nil then ;
PaintBoundaries(Self,clRed);
end;
procedure TDockFormX.HideMenuItemClick(Sender: TObject);
begin
if Sender=nil then ;
Hide;
end;
procedure TDockFormX.FormCreate(Sender: TObject);
begin
if Sender=nil then ;
Docker:=TLazControlDocker.Create(Self);
end;
initialization
{$I dockform2unit.lrs}
end.

View File

@ -1,66 +0,0 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<Version Value="7"/>
<General>
<Flags>
<LRSInOutputDirectory Value="False"/>
</Flags>
<SessionStorage Value="InProjectDir"/>
<MainUnit Value="0"/>
<TargetFileExt Value=""/>
</General>
<PublishOptions>
<Version Value="2"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
</local>
</RunParams>
<RequiredPackages Count="1">
<Item1>
<PackageName Value="LCL"/>
</Item1>
</RequiredPackages>
<Units Count="4">
<Unit0>
<Filename Value="docking1.lpr"/>
<IsPartOfProject Value="True"/>
<UnitName Value="Docking1"/>
</Unit0>
<Unit1>
<Filename Value="dockform1unit.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="MainForm"/>
<UnitName Value="DockForm1Unit"/>
</Unit1>
<Unit2>
<Filename Value="dockform2unit.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="DockFormX"/>
<UnitName Value="DockForm2Unit"/>
</Unit2>
<Unit3>
<Filename Value="README.txt"/>
<IsPartOfProject Value="True"/>
</Unit3>
</Units>
</ProjectOptions>
<CompilerOptions>
<Version Value="8"/>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
</CONFIG>

View File

@ -1,15 +0,0 @@
program Docking1;
{$mode objfpc}{$H+}
uses
Interfaces, // this includes the LCL widgetset
Forms
{ add your units here }, DockForm1Unit, DockForm2Unit;
begin
Application.Initialize;
Application.CreateForm(TMainForm, MainForm);
Application.Run;
end.