Changeset 7 for trunk/FormMain.pas


Ignore:
Timestamp:
Apr 13, 2026, 7:11:03 PM (2 weeks ago)
Author:
chronos
Message:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/FormMain.pas

    r6 r7  
    77  EditBtn, Menus, TAGraph, TASeries, Generics.Collections, Generics.Defaults,
    88  DateUtils, Ean, Translator, ApplicationInfo, RegistryEx, PersistentForm,
    9   Theme, Common, XML, DOM, XMLRead, EdcProject;
     9  Theme, Common, XML, EdcProject;
    1010
    1111type
     
    4545    MainMenu1: TMainMenu;
    4646    Memo1: TMemo;
    47     MenuItem1: TMenuItem;
    48     MenuItem2: TMenuItem;
    49     MenuItem3: TMenuItem;
     47    MenuItemRemove: TMenuItem;
     48    MenuItemLoad: TMenuItem;
     49    MenuItemSave: TMenuItem;
     50    MenuItemTools: TMenuItem;
     51    MenuItemImportReports: TMenuItem;
     52    MenuItemImportSpotPrices: TMenuItem;
     53    MenuItemFile: TMenuItem;
    5054    PageControl1: TPageControl;
    5155    PersistentForm1: TPersistentForm;
     56    PopupMenuOverview: TPopupMenu;
    5257    TabSheetOverview: TTabSheet;
    5358    TabSheetData: TTabSheet;
     
    6469    procedure ComboBoxUnitSelect(Sender: TObject);
    6570    procedure DateEdit1Change(Sender: TObject);
     71    procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
    6672    procedure FormCreate(Sender: TObject);
    6773    procedure FormDestroy(Sender: TObject);
    6874    procedure FormShow(Sender: TObject);
    69     procedure MenuItem2Click(Sender: TObject);
    70     procedure MenuItem3Click(Sender: TObject);
     75    procedure MenuItemImportReportsClick(Sender: TObject);
     76    procedure MenuItemImportSpotPricesClick(Sender: TObject);
     77    procedure MenuItemLoadClick(Sender: TObject);
     78    procedure MenuItemRemoveClick(Sender: TObject);
     79    procedure MenuItemSaveClick(Sender: TObject);
    7180    procedure TabSheetOverviewShow(Sender: TObject);
    7281    procedure TabSheetChartShow(Sender: TObject);
     
    8190    Period: TPeriod;
    8291    ReportsDir: string;
    83     OwnersFileName: string;
     92    ProjectFileName: string;
    8493    ShowResult: Boolean;
    8594    EdcProject: TEdcProject;
    86     procedure LoadReports;
    8795    function MeasureToFloat(Value: Double; Interval: Double): Double;
    8896    function MeasureToStr(Value: Double): string;
     
    110118{$R *.lfm}
    111119
    112 uses
    113   csvdocument, BufferedFileStream;
    114 
    115120resourcestring
    116121  SEAN = 'EAN';
     
    174179end;
    175180
     181procedure TFormMain.FormClose(Sender: TObject; var CloseAction: TCloseAction);
     182begin
     183end;
     184
    176185procedure TFormMain.FormCreate(Sender: TObject);
    177186begin
     
    189198procedure TFormMain.FormShow(Sender: TObject);
    190199begin
    191   LoadReports;
    192 end;
    193 
    194 procedure TFormMain.MenuItem2Click(Sender: TObject);
    195 begin
    196   LoadReports;
    197 end;
    198 
    199 procedure TFormMain.MenuItem3Click(Sender: TObject);
     200  MenuItemLoad.Click;
     201end;
     202
     203procedure TFormMain.MenuItemImportReportsClick(Sender: TObject);
     204begin
     205  EdcProject.Import(ReportsDir);
     206
     207  if (EdcProject.Eans.Count > 0) and (EdcProject.Eans[0].Values.Count > 0) then
     208    IntervalTo := EdcProject.Eans[0].Values.Last.Time + 15 * OneMinute;
     209  UpdateInterval;
     210  UpdateInterface;
     211end;
     212
     213procedure TFormMain.MenuItemImportSpotPricesClick(Sender: TObject);
    200214begin
    201215  EdcProject.SpotPrices.LoadSpotPrices(StrToDate('1.4.2026'));
     216end;
     217
     218procedure TFormMain.MenuItemLoadClick(Sender: TObject);
     219begin
     220  EdcProject.LoadFromFile(ProjectFileName);
     221
     222  if (EdcProject.Eans.Count > 0) and (EdcProject.Eans[0].Values.Count > 0) then
     223    IntervalTo := EdcProject.Eans[0].Values.Last.Time + 15 * OneMinute;
     224  UpdateInterval;
     225  UpdateInterface;
     226end;
     227
     228procedure TFormMain.MenuItemRemoveClick(Sender: TObject);
     229begin
     230  if Assigned(ListView1.Selected) then
     231    EdcProject.Eans.Remove(ListView1.Selected.Data);
     232  ReloadListViewOverview;
     233end;
     234
     235procedure TFormMain.MenuItemSaveClick(Sender: TObject);
     236begin
     237  EdcProject.SaveToFile(ProjectFileName);
    202238end;
    203239
     
    248284  ComboBoxPeriod.Items[Integer(prYear)] := SYear;
    249285  Ean.Translate;
    250 end;
    251 
    252 procedure TFormMain.LoadReports;
    253 begin
    254   EdcProject.LoadFromFile(OwnersFileName);
    255   EdcProject.Import(ReportsDir);
    256 
    257   if (EdcProject.Eans.Count > 0) and (EdcProject.Eans[0].Values.Count > 0) then
    258     IntervalTo := EdcProject.Eans[0].Values.Last.Time + 15 * OneMinute;
    259   UpdateInterval;
    260   UpdateInterface;
    261286end;
    262287
     
    314339      ListItem := ListView1.Items.Add;
    315340      ListItem.Caption := Number;
     341      ListItem.Data := EdcProject.Eans[I];
    316342      ListItem.SubItems.Add(Owner);
    317343      ListItem.SubItems.Add(MeasureToStr(GetTotalIn(IntervalFrom, IntervalTo)));
     
    470496    Period := TPeriod(ReadIntegerWithDefault('Period', Integer(Period)));
    471497    ReportsDir := ReadStringWithDefault('ReportsDir', ReportsDir);
    472     OwnersFileName := ReadStringWithDefault('OwnersFileName', OwnersFileName);
     498    ProjectFileName := ReadStringWithDefault('ProjectFileName', ProjectFileName);
    473499    PageControl1.TabIndex := ReadIntegerWithDefault('ActiveTab', PageControl1.TabIndex);
    474500    ShowResult := ReadBoolWithDefault('ShowResult', ShowResult);
     
    492518    WriteInteger('Period', Integer(Period));
    493519    WriteString('ReportsDir', ReportsDir);
    494     WriteString('OwnersFileName', OwnersFileName);
     520    WriteString('ProjectFileName', ProjectFileName);
    495521    WriteInteger('ActiveTab', PageControl1.TabIndex);
    496522    WriteBool('ShowResult', ShowResult);
Note: See TracChangeset for help on using the changeset viewer.