home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 March / Chip_1998-03_cd.bin / zkuste / delphi / ruzkomp / DOCKD3.ZIP / MAINFRM.PAS < prev    next >
Pascal/Delphi Source File  |  1997-02-23  |  6KB  |  234 lines

  1. unit Mainfrm;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, Buttons, ExtCtrls, Dockbar, StdCtrls, Spin;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     DocPanel1: TDocPanel;
  12.     MainMenu: TDocPanel;
  13.     SpeedButton1: TSpeedButton;
  14.     SpeedButton2: TSpeedButton;
  15.     SpeedButton3: TSpeedButton;
  16.     SpeedButton4: TSpeedButton;
  17.     SpeedButton5: TSpeedButton;
  18.     SpeedButton6: TSpeedButton;
  19.     SpeedButton7: TSpeedButton;
  20.     SpeedButton8: TSpeedButton;
  21.     Docked: TCheckBox;
  22.     Button1: TButton;
  23.     Label1: TLabel;
  24.     ComboBox1: TComboBox;
  25.     Label2: TLabel;
  26.     ComboBox2: TComboBox;
  27.     Label3: TLabel;
  28.     ComboBox3: TComboBox;
  29.     CheckBox1: TCheckBox;
  30.     ComboBox4: TComboBox;
  31.     Label4: TLabel;
  32.     Label5: TLabel;
  33.     left: TCheckBox;
  34.     top: TCheckBox;
  35.     bottom: TCheckBox;
  36.     right: TCheckBox;
  37.     SpinEdit1: TSpinEdit;
  38.     Label6: TLabel;
  39.     CheckBox2: TCheckBox;         
  40.     Panel1: TPanel;
  41.     Memo1: TMemo;
  42.     BitBtn1: TBitBtn;
  43.     FontDialog1: TFontDialog;
  44.     DockFrame: TLabel;
  45.     ComboBox5: TComboBox;
  46.     CheckBox3: TCheckBox;
  47.     CheckBox4: TCheckBox;
  48.     shrink: TCheckBox;
  49.     procedure FormCreate(Sender: TObject);
  50.     procedure DockedClick(Sender: TObject);
  51.     procedure DocPanel1DockChanged(Sender: TObject);
  52.     procedure Button1Click(Sender: TObject);
  53.     procedure ComboBox1Change(Sender: TObject);
  54.     procedure ComboBox2Change(Sender: TObject);
  55.     procedure ComboBox3Change(Sender: TObject);
  56.     procedure CheckBox1Click(Sender: TObject);
  57.     procedure ComboBox4Change(Sender: TObject);
  58.     procedure leftClick(Sender: TObject);
  59.     procedure CheckBox2Click(Sender: TObject);
  60.     procedure SpinEdit1Change(Sender: TObject);
  61.     procedure BitBtn1Click(Sender: TObject);
  62.     procedure ComboBox5Change(Sender: TObject);
  63.     procedure SpeedButton1Click(Sender: TObject);
  64.     procedure CheckBox3Click(Sender: TObject);
  65.     procedure CheckBox4Click(Sender: TObject);
  66.     procedure shrinkClick(Sender: TObject);
  67.   private
  68.     { Private declarations }
  69.   public
  70.     { Public declarations }
  71.   end;
  72.  
  73. var
  74.   Form1: TForm1;
  75.  
  76. implementation
  77.  
  78. {$R *.DFM}
  79.  
  80. procedure TForm1.FormCreate(Sender: TObject);
  81. begin
  82. {$IFDEF Win32}
  83.   combobox3.items.add('ctSmall');
  84. {$ENDIF}
  85.   panel1.align:=alclient;
  86.   combobox1.itemindex:=0;
  87.   combobox2.itemindex:=1;
  88.   combobox3.itemindex:=1;
  89.   combobox4.itemindex:=0;
  90.   combobox5.itemindex:=0;
  91. end;
  92.  
  93. procedure TForm1.DockedClick(Sender: TObject);
  94. begin
  95.   DocPanel1.docked:=docked.checked;
  96. end;
  97.  
  98. procedure TForm1.DocPanel1DockChanged(Sender: TObject);
  99. begin
  100.   docked.checked:=DocPanel1.docked;
  101. end;
  102.  
  103. procedure TForm1.Button1Click(Sender: TObject);
  104. begin
  105.   Docpanel1.visible:=not Docpanel1.visible;
  106.  
  107. end;
  108.  
  109. procedure TForm1.ComboBox1Change(Sender: TObject);
  110. begin
  111.   case combobox1.itemindex of
  112.     0 : Docpanel1.Floatborder:=fbsingle;
  113.     1 : Docpanel1.FloatBorder:=fbsizeable;
  114.   end;
  115. end;
  116.  
  117. procedure TForm1.ComboBox2Change(Sender: TObject);
  118. begin
  119.   case combobox2.itemindex of
  120.     0 : Docpanel1.DockingMethod:=dmboth;
  121.     1 : Docpanel1.DockingMethod:=dmdblclick;
  122.     2 : Docpanel1.DockingMethod:=dmdrag;
  123.     3 : Docpanel1.DockingMethod:=dmnone;
  124.   end;
  125. end;
  126.  
  127. procedure TForm1.ComboBox3Change(Sender: TObject);
  128. begin
  129.   case combobox3.itemindex of
  130.     0 : Docpanel1.captionType:=ctcustom;
  131.     1 : Docpanel1.captiontype:=ctnot3x;
  132.     2 : Docpanel1.captiontype:=ctwindows;
  133. {$IFDEF Win32}
  134.     3 : Docpanel1.captiontype:=ctsmall;
  135. {$ENDIF}
  136.   end;
  137.  
  138. end;
  139.  
  140. procedure TForm1.CheckBox1Click(Sender: TObject);
  141. begin
  142.   Docpanel1.autohide:=checkbox1.checked;
  143.   checkbox4.checked:=docpanel1.dropdown;
  144. end;
  145.  
  146. procedure TForm1.ComboBox4Change(Sender: TObject);
  147. begin
  148.   case combobox4.itemindex of
  149.     0 : Docpanel1.Arrangement:=amAuto;
  150.     1 : Docpanel1.Arrangement:=AmNone;
  151.     2 : Docpanel1.Arrangement:=amwidth;
  152.   end;
  153.  
  154. end;
  155.  
  156. procedure TForm1.leftClick(Sender: TObject);
  157. var tmp : Tdocksides;
  158. begin
  159.   case docpanel1.align of
  160.     alleft : left.checked:=true;
  161.     alright : right.checked:=true;
  162.     altop : top.checked:=true;
  163.     albottom : bottom.checked:=true;
  164.   end;
  165.   tmp:=[];
  166.   if left.checked then
  167.     tmp:=tmp+[dsleft];
  168.   if right.checked then
  169.     tmp:=tmp+[dsright];
  170.   if top.checked then
  171.     tmp:=tmp+[dstop];
  172.   if bottom.checked then
  173.     tmp:=tmp+[dsbottom];
  174.   docpanel1.dockingsides:=tmp;
  175. end;
  176.  
  177. procedure TForm1.CheckBox2Click(Sender: TObject);
  178. begin
  179.   docpanel1.maxwidthrestore:=checkbox2.checked;
  180. end;
  181.  
  182. procedure TForm1.SpinEdit1Change(Sender: TObject);
  183. begin
  184.   docpanel1.maxwidth:=spinedit1.value;
  185. end;
  186.  
  187. procedure TForm1.BitBtn1Click(Sender: TObject);
  188. begin
  189.   fontdialog1.font:=docpanel1.titlefont;
  190.   if fontdialog1.execute then
  191.     docpanel1.titlefont:=fontdialog1.font;
  192. end;
  193.  
  194. procedure TForm1.ComboBox5Change(Sender: TObject);
  195. begin
  196.   case combobox5.itemindex of
  197.     0 : Docpanel1.dockframe:=dfInner;
  198.     1 : Docpanel1.dockframe:=dfOuter;
  199.   end;
  200.  
  201. end;
  202.  
  203. procedure TForm1.SpeedButton1Click(Sender: TObject);
  204. var i : integer;
  205. begin
  206.   docpanel1.prepareforchange;
  207.   try
  208.   for i:=0 to docpanel1.controlcount do
  209.     if odd(i) then
  210.       docpanel1.controls[i].visible:=not docpanel1.controls[i].visible;
  211.  finally
  212.    docpanel1.donechange;
  213.   end;
  214. end;
  215.  
  216. procedure TForm1.CheckBox3Click(Sender: TObject);
  217. begin
  218.   docpanel1.notificationcursor:=checkbox3.checked;
  219. end;
  220.  
  221. procedure TForm1.CheckBox4Click(Sender: TObject);
  222. begin
  223.   Docpanel1.dropdown:=checkbox4.checked;
  224.   checkbox1.checked:=Docpanel1.autohide;
  225. end;
  226.  
  227. procedure TForm1.shrinkClick(Sender: TObject);
  228. begin
  229.   DocPanel1.shrink:=shrink.checked;
  230.  
  231. end;
  232.  
  233. end.
  234.