Ignore:
Timestamp:
Apr 27, 2014, 1:49:43 PM (10 years ago)
Author:
chronos
Message:
  • Added: Some new concept forms and actions.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • platform/trunk/LDPlatform.Core.pas

    r10 r11  
    55uses
    66  System.SysUtils, System.Classes, Vcl.Forms, LDPlatform.FormMain, LDPlatform.FormOptions,
    7   System.Actions, Vcl.ActnList, Vcl.ImgList, Vcl.Controls;
     7  System.Actions, Vcl.ActnList, Vcl.ImgList, Vcl.Controls, LDPlatform.FormNew,
     8  Generics.Collections, Vcl.Dialogs, UProject;
    89
    910type
     11  TOpenedFile = class
     12    FileName: string;
     13  end;
     14
    1015  TCore = class(TDataModule)
    1116    ActionList1: TActionList;
     
    1318    AOptions: TAction;
    1419    AQuit: TAction;
     20    AFileOpen: TAction;
     21    AFileClose: TAction;
     22    AFileSave: TAction;
     23    AFileSaveAs: TAction;
     24    ANew: TAction;
     25    AFileCloseAll: TAction;
     26    AFileSaveAll: TAction;
     27    AHelpAbout: TAction;
     28    OpenDialog1: TOpenDialog;
     29    SaveDialog1: TSaveDialog;
    1530    procedure DataModuleCreate(Sender: TObject);
     31    procedure DataModuleDestroy(Sender: TObject);
    1632    procedure AOptionsExecute(Sender: TObject);
    1733    procedure AQuitExecute(Sender: TObject);
     34    procedure ANewExecute(Sender: TObject);
     35    procedure AFileOpenExecute(Sender: TObject);
     36    procedure AFileSaveAsExecute(Sender: TObject);
     37    procedure AFileSaveExecute(Sender: TObject);
    1838  private
    1939    { Private declarations }
    2040  public
     41    Project: TProject;
     42    OpenedFiles: TList<TOpenedFile>;
     43    FormNew: TFormNew;
    2144    FormMain: TFormMain;
    2245    FormOptions: TFormOptions;
     
    3154
    3255{$R *.dfm}
     56
     57procedure TCore.AFileOpenExecute(Sender: TObject);
     58begin
     59  if OpenDialog1.Execute then begin
     60    Project.LoadFromFile(OpenDialog1.FileName);
     61  end;
     62end;
     63
     64procedure TCore.AFileSaveAsExecute(Sender: TObject);
     65begin
     66  SaveDialog1.FileName := Project.FileName;
     67  if SaveDialog1.Execute then begin
     68    Project.SaveToFile(SaveDialog1.FileName);
     69  end;
     70end;
     71
     72procedure TCore.AFileSaveExecute(Sender: TObject);
     73begin
     74  if Project.Modified then AFileSaveAs.Execute
     75    else Project.Save; 
     76end;
     77
     78procedure TCore.ANewExecute(Sender: TObject);
     79begin
     80  try
     81    FormNew := TFormNew.Create(nil);
     82    //FormNew.Load;
     83    if FormNew.ShowModal = mrOk then begin
     84      //FormOptions.Save;
     85    end;
     86  finally
     87    FreeAndNil(FormNew);
     88  end;
     89end;
    3390
    3491procedure TCore.AOptionsExecute(Sender: TObject);
     
    52109procedure TCore.DataModuleCreate(Sender: TObject);
    53110begin
     111  Project := TProject.Create;
     112  OpenedFiles := TList<TOpenedFile>.Create;
    54113  Application.CreateForm(TFormMain, FormMain);
    55114  FormMain.Show;
    56115end;
    57116
     117procedure TCore.DataModuleDestroy(Sender: TObject);
     118begin
     119  Project.Free;
     120  OpenedFiles.Free;
     121end;
     122
    58123end.
Note: See TracChangeset for help on using the changeset viewer.