home *** CD-ROM | disk | FTP | other *** search
/ QBasic & Borland Pascal & C / Delphi5.iso / Runimage / Delphi50 / Demos / Activex / Oleauto / Autoserv / MAINFRM.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1999-08-11  |  2.6 KB  |  101 lines

  1. unit MainFrm;
  2.  
  3. { MemoEdit is a simple OLE Automation enabled MDI-style text editor. The
  4.   application contains the following units:
  5.  
  6.   MainFrm    The MDI main form.
  7.   EditFrm    The MDI child form class and its automation class.
  8.   MemoAuto   The Application automation object.
  9.  
  10.   To register the MemoEdit application as an OLE Automation server, run it
  11.   using the command line "MemoEdit /regserver". To unregister the application,
  12.   use "MemoEdit /unregserver".  You may also do this by running the application
  13.   from the IDE by specifying the command line parameters using the
  14.   Run|Parameters dialog. }
  15.  
  16. interface
  17.  
  18. uses
  19.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  20.   Menus, EditFrm;
  21.  
  22. type
  23.   TMainForm = class(TForm)
  24.     MainMenu: TMainMenu;
  25.     FileMenu: TMenuItem;
  26.     FileNewItem: TMenuItem;
  27.     FileOpenItem: TMenuItem;
  28.     FileExitItem: TMenuItem;
  29.     WindowMenu: TMenuItem;
  30.     WindowCascadeItem: TMenuItem;
  31.     WindowTileItem: TMenuItem;
  32.     WindowArrangeIconsItem: TMenuItem;
  33.     OpenDialog: TOpenDialog;
  34.     SaveDialog: TSaveDialog;
  35.     procedure FileNewItemClick(Sender: TObject);
  36.     procedure FileOpenItemClick(Sender: TObject);
  37.     procedure FileExitItemClick(Sender: TObject);
  38.     procedure WindowTileItemClick(Sender: TObject);
  39.     procedure WindowCascadeItemClick(Sender: TObject);
  40.     procedure WindowArrangeIconsItemClick(Sender: TObject);
  41.   public
  42.     Local: Boolean;
  43.     NewFileName: string;
  44.     function CreateMemo(const FileName: string): TEditForm;
  45.     function CreateMemoLocal(const FileName: string): TEditForm;
  46.  
  47.  
  48.   end;
  49.  
  50. var
  51.   MainForm: TMainForm;
  52.  
  53. implementation
  54.  
  55. {$R *.DFM}
  56.  
  57. procedure TMainForm.FileNewItemClick(Sender: TObject);
  58. begin
  59.   CreateMemoLocal('');
  60. end;
  61.  
  62. procedure TMainForm.FileOpenItemClick(Sender: TObject);
  63. begin
  64.   OpenDialog.FileName := '';
  65.   if OpenDialog.Execute then CreateMemo(OpenDialog.FileName);
  66. end;
  67.  
  68. procedure TMainForm.FileExitItemClick(Sender: TObject);
  69. begin
  70.   Close;
  71. end;
  72.  
  73. procedure TMainForm.WindowTileItemClick(Sender: TObject);
  74. begin
  75.   Tile;
  76. end;
  77.  
  78. procedure TMainForm.WindowCascadeItemClick(Sender: TObject);
  79. begin
  80.   Cascade;
  81. end;
  82.  
  83. procedure TMainForm.WindowArrangeIconsItemClick(Sender: TObject);
  84. begin
  85.   ArrangeIcons;
  86. end;
  87.  
  88. function TMainForm.CreateMemo(const FileName: string): TEditForm;
  89. begin
  90.   NewFileName := ExpandFileName(FileName);
  91.   Result := TEditForm.Create(Application);
  92. end;
  93.  
  94. function TMainForm.CreateMemoLocal(const FileName: string): TEditForm;
  95. begin
  96.   Local := true;
  97.   NewFileName := ExpandFileName(FileName);
  98.   Result := TEditForm.Create(Application);
  99. end;
  100. end.
  101.