Changeset 23 for trunk/Core.pas


Ignore:
Timestamp:
Apr 4, 2025, 9:22:05 AM (2 weeks ago)
Author:
chronos
Message:
  • Modified: All unit renamed to names without U prefix.
  • Modified: Removed global form variables.
  • Modified: Code cleanup.
File:
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/Core.pas

    r22 r23  
    1 unit UCore;
     1unit Core;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, XMLConf, LazFileUtils, ActnList, Controls, UVCS, UProject,
    7   LastOpenedList, Forms, Dialogs, Menus, Contnrs, UBackend;
     6  Classes, SysUtils, XMLConf, LazFileUtils, ActnList, Controls, VCS, Project,
     7  LastOpenedList, Forms, Dialogs, Menus, Generics.Collections, Backend, FormMain;
    88
    99type
     
    6565    function DetectBackend(Directory: string): TBackend;
    6666  public
    67     Backends: TObjectList; // TList<TBackend>
     67    Backends: TList<TBackend>;
    6868    Project: TProject;
    6969    ProjectGroup: TProjectGroup;
    7070    UserName: string;
    7171    Email: string;
     72    FormMain: TFormMain;
    7273    procedure LoadConfig;
    7374    procedure SaveConfig;
     
    8788
    8889uses
    89   UFormMain, UFormBrowse, UFormSettings, UFormCommit, UFormCheckout,
    90   USubversion, UBazaar, UCVS, UGit, UFormTest, UFormProjectGroup;
     90  FormBrowse, FormSettings, FormCommit, FormCheckout,
     91  Subversion, Bazaar, CVS, Git, FormTest, FormProjectGroup;
    9192
    9293{ TCore }
     
    9495procedure TCore.AQuitExecute(Sender: TObject);
    9596begin
     97  FormMain.Close;
    9698  Application.Terminate;
    9799end;
     
    123125
    124126procedure TCore.ASettingsExecute(Sender: TObject);
    125 begin
    126   FormSettings.Load(XMLConfig1);
    127   if FormSettings.ShowModal = mrOk then begin
    128     FormSettings.Save(XMLConfig1);
     127var
     128  FormSettings: TFormSettings;
     129begin
     130  FormSettings := TFormSettings.Create(nil);
     131  try
     132    FormSettings.Load(XMLConfig1);
     133    if FormSettings.ShowModal = mrOk then begin
     134      FormSettings.Save(XMLConfig1);
     135    end;
     136  finally
     137    FormSettings.Free;
    129138  end;
    130139end;
    131140
    132141procedure TCore.AViewTestExecute(Sender: TObject);
    133 begin
    134   FormTest.Show;
     142var
     143  FormTest: TFormTest;
     144begin
     145  FormTest := TFormTest.Create(nil);
     146  try
     147    FormTest.Show;
     148  finally
     149    FormTest.Free;
     150  end;
    135151end;
    136152
    137153procedure TCore.DataModuleCreate(Sender: TObject);
    138154begin
    139   Backends := TObjectList.Create;
     155  Backends := TList<TBackend>.Create;
    140156  Project := nil;
     157
     158  Application.CreateForm(TFormMain, FormMain);
     159  FormMain.Show;
    141160end;
    142161
     
    235254    Project.Directory := Directory;
    236255    UpdateInterface;
    237     FormBrowse.Directory := Project.Directory;
    238     FormBrowse.ReloadList;
     256    FormMain.FormBrowse.Directory := Project.Directory;
     257    FormMain.FormBrowse.ReloadList;
    239258    LastOpenedListProject.AddItem(Project.Directory);
    240259  end else ShowMessage('Directory ''' + Directory + ''' not recognized as working copy of any of supported VCS systems');
     
    247266  ProjectGroup.FileName := FileName;
    248267  UpdateInterface;
    249   FormProjectGroup.ReloadTree;
     268  FormMain.FormProjectGroup.ReloadTree;
    250269  LastOpenedListProjectGroup.AddItem(FileName);
    251270end;
     
    266285begin
    267286  FreeAndNil(Project);
    268   FormBrowse.Directory := '';
    269   FormBrowse.ReloadList;
     287  FormMain.FormBrowse.Directory := '';
     288  FormMain.FormBrowse.ReloadList;
    270289  UpdateInterface;
    271290end;
     
    275294  FreeAndNil(ProjectGroup);
    276295  UpdateInterface;
    277   FormProjectGroup.ReloadTree;
     296  FormMain.FormProjectGroup.ReloadTree;
    278297end;
    279298
     
    284303  ProjectGroup.FileName := 'New project group.vcgrp';
    285304  UpdateInterface;
    286   FormProjectGroup.ReloadTree;
     305  FormMain.FormProjectGroup.ReloadTree;
    287306end;
    288307
     
    320339var
    321340  TempProject: TProject;
    322 begin
    323   if LastOpenedListRepoURL.Items.Count > 0 then
    324     FormCheckout.EditURL.Text := LastOpenedListRepoURL.Items[0];
    325   if LastOpenedListNewDir.Items.Count > 0 then
    326     FormCheckout.EditDir.Text := LastOpenedListNewDir.Items[0];
    327   if FormCheckout.ShowModal = mrOk then begin
    328     LastOpenedListRepoURL.AddItem(FormCheckout.EditURL.Text);
    329     LastOpenedListNewDir.AddItem(FormCheckout.EditDir.Text);
    330     TempProject := TProject.Create;
    331     try
    332       TempProject.Backend := TBackend(FormCheckout.ComboBox1.Items.Objects[FormCheckout.ComboBox1.ItemIndex]);
    333       TempProject.Directory := FormCheckout.EditDir.Text;
    334       TempProject.RepositoryURL := FormCheckout.EditURL.Text;
    335       TempProject.WorkingCopy.Checkout;
    336     finally
    337       TempProject.Free;
     341  FormCheckout: TFormCheckout;
     342begin
     343  FormCheckout := TFormCheckout.Create(nil);
     344  try
     345    if LastOpenedListRepoURL.Items.Count > 0 then
     346      FormCheckout.EditURL.Text := LastOpenedListRepoURL.Items[0];
     347    if LastOpenedListNewDir.Items.Count > 0 then
     348      FormCheckout.EditDir.Text := LastOpenedListNewDir.Items[0];
     349    if FormCheckout.ShowModal = mrOk then begin
     350      LastOpenedListRepoURL.AddItem(FormCheckout.EditURL.Text);
     351      LastOpenedListNewDir.AddItem(FormCheckout.EditDir.Text);
     352      TempProject := TProject.Create;
     353      try
     354        TempProject.Backend := TBackend(FormCheckout.ComboBox1.Items.Objects[FormCheckout.ComboBox1.ItemIndex]);
     355        TempProject.Directory := FormCheckout.EditDir.Text;
     356        TempProject.RepositoryURL := FormCheckout.EditURL.Text;
     357        TempProject.WorkingCopy.Checkout;
     358      finally
     359        TempProject.Free;
     360      end;
     361      ProjectOpen(FormCheckout.EditDir.Text);
    338362    end;
    339     ProjectOpen(FormCheckout.EditDir.Text);
     363  finally
     364    FormCheckout.Free;
    340365  end;
    341366end;
     
    347372
    348373procedure TCore.ACommandCommitExecute(Sender: TObject);
    349 begin
    350   if FormCommit.ShowModal = mrOk then begin
    351     Project.WorkingCopy.Commit(FormCommit.MemoMessage.Lines);
     374var
     375  FormCommit: TFormCommit;
     376begin
     377  FormCommit := TFormCommit.Create(nil);
     378  try
     379    if FormCommit.ShowModal = mrOk then begin
     380      Project.WorkingCopy.Commit(FormCommit.MemoMessage.Lines);
     381    end;
     382  finally
     383    FormCommit.Free;
    352384  end;
    353385end;
Note: See TracChangeset for help on using the changeset viewer.