home *** CD-ROM | disk | FTP | other *** search
/ Delphi 2.0 - Programmer's Utilities Power Pack / Delphi 2.0 Programmer's Utilities Power Pack.iso / a_to_d / clipbrd / ccp_demo.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1996-09-15  |  6.1 KB  |  257 lines

  1. unit Ccp_demo;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, Tbar1, StdCtrls, extCtrls, Buttons, DBCtrls, DB,
  8.   DBTables, Grids, DBGrids, Menus, TabNotBk, Spin,clipBrd, Mask;
  9.  
  10. type
  11.   TForm1 = class(TForm)
  12.     Table1: TTable;
  13.     DataSource1: TDataSource;
  14.     MainMenu1: TMainMenu;
  15.     File1: TMenuItem;
  16.     N1: TMenuItem;
  17.     Exit1: TMenuItem;
  18.     Edit3: TMenuItem;
  19.     Paste1: TMenuItem;
  20.     Cut1: TMenuItem;
  21.     Copy1: TMenuItem;
  22.     TabbedNotebook1: TTabbedNotebook;
  23.     Label2: TLabel;
  24.     Edit1: TEdit;
  25.     DBGrid1: TDBGrid;
  26.     StringGrid1: TStringGrid;
  27.     DBImage1: TDBImage;
  28.     Memo1: TMemo;
  29.     myTBar: TcwClpBoardBar;
  30.     butCut: TcwClpBoardButton;
  31.     butCopy: TcwClpBoardButton;
  32.     butPaste: TcwClpBoardButton;
  33.     Button1: TButton;
  34.     DBGrid2: TDBGrid;
  35.     Edit4: TEdit;
  36.     Memo2: TMemo;
  37.     DBImage2: TDBImage;
  38.     Bevel1: TBevel;
  39.     BitBtn2: TBitBtn;
  40.     BitBtn3: TBitBtn;
  41.     BitBtn4: TBitBtn;
  42.     BitBtn5: TBitBtn;
  43.     BitBtn6: TBitBtn;
  44.     Bevel2: TBevel;
  45.     SpinEdit1: TSpinEdit;
  46.     toolBar2: TcwToolBar;
  47.     BitBtn7: TBitBtn;
  48.     BitBtn8: TBitBtn;
  49.     BitBtn9: TBitBtn;
  50.     BitBtn10: TBitBtn;
  51.     Button3: TButton;
  52.     Bevel3: TBevel;
  53.     Label1: TLabel;
  54.     Button2: TButton;
  55.     A: TLabel;
  56.     B: TLabel;
  57.     butHelp: TBitBtn;
  58.     Button4: TButton;
  59.     Button5: TButton;
  60.     Label3: TLabel;
  61.     Label4: TLabel;
  62.     Button6: TButton;
  63.     Memo3: TMemo;
  64.     lblAuto: TLabel;
  65.     Bevel4: TBevel;
  66.     SpeedButton1: TSpeedButton;
  67.     Memo4: TMemo;
  68.     DBEdit1: TDBEdit;
  69.     SpeedButton2: TSpeedButton;
  70.     procedure Paste1Click(Sender: TObject);
  71.     procedure Exit1Click(Sender: TObject);
  72.     procedure Cut1Click(Sender: TObject);
  73.     procedure Copy1Click(Sender: TObject);
  74.     procedure SpeedButton3Click(Sender: TObject);
  75.     procedure DBImage1KeyDown(Sender: TObject; var Key: Word;
  76.       Shift: TShiftState);
  77.     procedure Button1Click(Sender: TObject);
  78.     procedure SpeedButton1Click(Sender: TObject);
  79.     procedure BitBtn2Click(Sender: TObject);
  80.     procedure BitBtn3Click(Sender: TObject);
  81.     procedure BitBtn4Click(Sender: TObject);
  82.     procedure BitBtn5Click(Sender: TObject);
  83.     procedure BitBtn6Click(Sender: TObject);
  84.     procedure SpinEdit1Change(Sender: TObject);
  85.     procedure Button3Click(Sender: TObject);
  86.     procedure Button2Click(Sender: TObject);
  87.     procedure butHelpClick(Sender: TObject);
  88.     procedure FormCreate(Sender: TObject);
  89.     procedure Button4Click(Sender: TObject);
  90.     procedure Button5Click(Sender: TObject);
  91.     procedure Button6Click(Sender: TObject);
  92.     procedure SpeedButton2Click(Sender: TObject);
  93.  
  94.   private
  95.     { Private declarations }
  96.   public
  97.     { Public declarations }
  98.    procedure AppIdle(Sender: TObject; var Done: Boolean);
  99.   end;
  100.  
  101. var
  102.   Form1: TForm1;
  103.  
  104. implementation
  105.  
  106. {$R *.DFM}
  107.  
  108. procedure TForm1.Paste1Click(Sender: TObject);
  109. begin
  110.  butPaste.Click;
  111. end;
  112.  
  113. procedure TForm1.Exit1Click(Sender: TObject);
  114. begin
  115.  close;
  116. end;
  117.  
  118. procedure TForm1.Cut1Click(Sender: TObject);
  119. begin
  120.  butCut.Click;
  121. end;
  122.  
  123. procedure TForm1.Copy1Click(Sender: TObject);
  124. begin
  125.  butCopy.Click;
  126. end;
  127.  
  128. procedure TForm1.SpeedButton3Click(Sender: TObject);
  129. begin
  130.  messageDlg('This button is added and programmed by the developer',
  131.        mtInformation,[mbOK],0);
  132. end;
  133.  
  134. procedure TForm1.DBImage1KeyDown(Sender: TObject; var Key: Word;
  135.   Shift: TShiftState);
  136. begin
  137. if (shift = [ssShift]) and ( Key = VK_Delete) then begin
  138.  Key := 0; {Prevent windows from seeing it}
  139.  {butCut.Click;}
  140. end;
  141. end;
  142.  
  143. procedure TForm1.Button1Click(Sender: TObject);
  144. begin
  145.  butCut.Visible   := Not butCut.Visible;
  146.  butCopy.Visible  := butCut.Visible;
  147.  butPaste.Visible := butCut.Visible;
  148.  
  149. end;
  150.  
  151. procedure TForm1.SpeedButton1Click(Sender: TObject);
  152. begin
  153.  messageDlg('Button added by developer',mtInformation,[mbOK],0);
  154. end;
  155.  
  156. procedure TForm1.BitBtn2Click(Sender: TObject);
  157. begin
  158.  dbImage2.Stretch := Not dbImage2.Stretch;
  159. end;
  160.  
  161. procedure TForm1.BitBtn3Click(Sender: TObject);
  162. begin
  163.  myTBar.Dock := tdTop;
  164. end;
  165.  
  166. procedure TForm1.BitBtn4Click(Sender: TObject);
  167. begin
  168.   myTBar.Dock := tdBottom;
  169. end;
  170.  
  171. procedure TForm1.BitBtn5Click(Sender: TObject);
  172. begin
  173.  myTBar.Dock := tdLeft;
  174. end;
  175.  
  176. procedure TForm1.BitBtn6Click(Sender: TObject);
  177. begin
  178.   myTBar.Dock := tdRight;
  179. end;
  180.  
  181. procedure TForm1.SpinEdit1Change(Sender: TObject);
  182. begin
  183.  toolBar2.width := SpinEdit1.value;
  184. end;
  185.  
  186. procedure TForm1.Button3Click(Sender: TObject);
  187. begin
  188.  toolBar2.AutoSizeButtons := Not ToolBar2.AutosizeButtons;
  189.  if toolBar2.AutoSizeButtons then
  190.   A.caption := 'On'
  191.  else
  192.   A.caption := 'Off'
  193. end;
  194.  
  195. procedure TForm1.Button2Click(Sender: TObject);
  196. begin
  197.  toolBar2.KeepSquare := Not ToolBar2.KeepSquare;
  198.   if toolBar2.KeepSquare then
  199.    B.caption := 'On'
  200.  else
  201.   B.caption := 'Off'
  202. end;
  203.  
  204. procedure TForm1.butHelpClick(Sender: TObject);
  205. begin
  206.  messageDlg('The Edit menu items are linked to these buttons'+#13#10+
  207.             'If you make them invisible you will find that they'+ #13#10+
  208.             'still work. In other words they can be used as hidden components'+#13#10+
  209.             'if buttons are not wanted in the GUI',mtInformation,[mbOK],0);
  210. end;
  211.  
  212. procedure TForm1.FormCreate(Sender: TObject);
  213. begin
  214.  butHelp.caption := '';
  215.  Application.OnIdle := AppIdle;
  216. end;
  217.  
  218. procedure TForm1.AppIdle(Sender: TObject; var Done: Boolean);
  219. Begin
  220. Try
  221.  butCut.setEnabledState;
  222.  butCopy.setEnabledState;
  223.  butPaste.setEnabledState;
  224.  myTBar.setEnabledState;
  225. except
  226.  on E:Exception do
  227.   messageDlg(E.Message,mtError,[mbOK],0);
  228. end;
  229. end;
  230.  
  231. procedure TForm1.Button4Click(Sender: TObject);
  232. begin
  233.  DataSource1.AutoEdit := NOT DataSource1.AutoEdit;
  234.  if DataSource1.AutoEdit then
  235.   lblAuto.Caption := 'On'
  236.  else
  237.   lblAuto.Caption := 'Off'
  238. end;
  239.  
  240. procedure TForm1.Button5Click(Sender: TObject);
  241. begin
  242.  Table1.Edit;
  243. end;
  244.  
  245. procedure TForm1.Button6Click(Sender: TObject);
  246. begin
  247.  Table1.Post;
  248. end;
  249.  
  250. procedure TForm1.SpeedButton2Click(Sender: TObject);
  251. begin
  252.   Application.HelpFile := 'CWC.HLP';
  253.   Application.HelpCommand(HELP_CONTENTS, 0);
  254. end;
  255.  
  256. end.
  257.