Ignore:
Timestamp:
Nov 15, 2012, 2:01:43 PM (12 years ago)
Author:
chronos
Message:
  • Přidáno: Vkládání, úprava a mazání položek jsou nyní funkční.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Forms/UFormList.pas

    r9 r16  
    6969    procedure ADuplicateExecute(Sender: TObject);
    7070    procedure AModifyExecute(Sender: TObject);
     71    procedure AReloadExecute(Sender: TObject);
    7172    procedure FormCreate(Sender: TObject);
    7273    procedure FormDestroy(Sender: TObject);
     
    99100  SDoYouWantToDeleteItem = 'Do you want to really delete item?';
    100101  SItemCount = 'Item count: %s';
     102  SModifyItem = 'Modify item';
     103  SAddItem = 'Add item';
    101104
    102105{ TDataViewList }
     
    149152  Index: Integer;
    150153begin
    151   Index := FormMain.DataViewLists.IndexOf(View);
    152   FormEdit := TFormEdit.Create(FormMain);
    153   FormEdit.ItemId := Integer(ListView1.Selected.Data);
    154   FormEdit.View := TDataViewForm(FormMain.DataViewForms[Index]);
    155   Core.CoolTranslator1.TranslateComponentRecursive(FormEdit);
    156   if FormEdit.ShowModal = mrOk then begin
    157   end;
    158   FormEdit.Free;
     154  try
     155    FormEdit := TFormEdit.Create(FormMain);
     156    Index := FormMain.DataViewLists.IndexOf(View);
     157    FormEdit.ItemId := Integer(ListView1.Selected.Data);
     158    FormEdit.View := TDataViewForm(FormMain.DataViewForms[Index]);
     159    FormEdit.LoadFromDatabase;
     160    FormEdit.Caption := SModifyItem;
     161    Core.CoolTranslator1.TranslateComponentRecursive(FormEdit);
     162    if FormEdit.ShowModal = mrOk then begin
     163      FormEdit.SaveToDatabase;
     164      UpdateData;
     165    end;
     166  finally
     167    FormEdit.Free;
     168  end;
     169end;
     170
     171procedure TFormList.AReloadExecute(Sender: TObject);
     172begin
     173  UpdateData;
    159174end;
    160175
    161176procedure TFormList.AAddExecute(Sender: TObject);
    162 begin
    163   if FormEdit.ShowModal = mrOk then begin
     177var
     178  Index: Integer;
     179begin
     180  try
     181    FormEdit := TFormEdit.Create(FormMain);
     182    Index := FormMain.DataViewLists.IndexOf(View);
     183    FormEdit.ItemId := 0;
     184    FormEdit.View := TDataViewForm(FormMain.DataViewForms[Index]);
     185    FormEdit.ClearData;
     186    FormEdit.Caption := SAddItem;
     187    Core.CoolTranslator1.TranslateComponentRecursive(FormEdit);
     188    if FormEdit.ShowModal = mrOk then begin
     189      FormEdit.SaveToDatabase;
     190      UpdateData;
     191    end;
     192  finally
     193    FormEdit.Free;
    164194  end;
    165195end;
     
    167197procedure TFormList.ADeleteExecute(Sender: TObject);
    168198begin
    169   if FormEdit.ShowModal = mrOk then begin
    170     if MessageDlg(SItemDeletion, SDoYouWantToDeleteItem, mtConfirmation,
    171       [mbYes, mbNo], 0) = mrYes then begin
    172       Core.Database.Query(nil, 'DELETE FROM `' + View.Name +
    173         '` WHERE `Id` = ' + IntToStr(Integer(ListView1.Selected.Data)));
    174     end;
     199  if MessageDlg(SItemDeletion, SDoYouWantToDeleteItem, mtConfirmation,
     200    [mbYes, mbNo], 0) = mrYes then begin
     201    Core.Database.Delete(View.Name, '`Id` = ' + IntToStr(Integer(ListView1.Selected.Data)));
     202    UpdateData;
    175203  end;
    176204end;
     
    200228    for I := 0 to View.Columns.Count - 1 do begin
    201229      Item.Data := Pointer(StrToInt(DbRows[Item.Index].Values['Id']));
    202       if I = 0 then Item.Caption := DbRows[Item.Index].Items[0].Value
     230      if I = 0 then Item.Caption := DbRows[Item.Index].Values[TDbColumn(View.Columns[I]).Name]
    203231        else Item.SubItems.Add(DbRows[Item.Index].Values[TDbColumn(View.Columns[I]).Name]);
    204232    end;
Note: See TracChangeset for help on using the changeset viewer.