From: Marcel B. <jed...@us...> - 2003-09-13 11:27:42
|
Update of /cvsroot/jvcl/dev/JVCL3/run In directory sc8-pr-cvs1:/tmp/cvs-serv5370/dev/JVCL3/run Modified Files: JvDBControls.pas JvDBUtils.pas Log Message: JvDB issues with storage resolved. Index: JvDBControls.pas =================================================================== RCS file: /cvsroot/jvcl/dev/JVCL3/run/JvDBControls.pas,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** JvDBControls.pas 17 Aug 2003 14:26:07 -0000 1.7 --- JvDBControls.pas 13 Sep 2003 11:27:38 -0000 1.8 *************** *** 40,44 **** Messages, Classes, Controls, Forms, Grids, Graphics, Buttons, Menus, StdCtrls, Mask, IniFiles, DB, DBGrids, ! JvToolEdit, JvFormPlacement, JvJCLUtils, DBCtrls, JvxCtrls, JvBaseEdits; { TJvDBGrid } --- 40,44 ---- Messages, Classes, Controls, Forms, Grids, Graphics, Buttons, Menus, StdCtrls, Mask, IniFiles, DB, DBGrids, ! JvAppStore, JvToolEdit, JvFormPlacement, JvJCLUtils, DBCtrls, JvxCtrls, JvBaseEdits; { TJvDBGrid } *************** *** 116,121 **** function ActiveRowSelected: Boolean; function GetSelCount: Longint; - procedure InternalSaveLayout(IniFile: TObject; const Section: string); - procedure InternalRestoreLayout(IniFile: TObject; const Section: string); procedure SaveColumnsLayout(IniFile: TObject; const Section: string); procedure RestoreColumnsLayout(IniFile: TObject; const Section: string); --- 116,119 ---- *************** *** 177,188 **** function ScrollDisabled: Boolean; procedure MouseToCell(X, Y: Integer; var ACol, ARow: Longint); - procedure SaveLayout(IniFile: TIniFile); - procedure RestoreLayout(IniFile: TIniFile); procedure SelectAll; procedure UnselectAll; procedure ToggleRowSelection; procedure GotoSelection(Index: Longint); ! procedure SaveLayoutReg(IniFile: TRegIniFile); ! procedure RestoreLayoutReg(IniFile: TRegIniFile); property SelectedRows; property SelCount: Longint read GetSelCount; --- 175,186 ---- function ScrollDisabled: Boolean; procedure MouseToCell(X, Y: Integer; var ACol, ARow: Longint); procedure SelectAll; procedure UnselectAll; procedure ToggleRowSelection; procedure GotoSelection(Index: Longint); ! procedure LoadFromAppStore(const AppStorage: TJvCustomAppStore; const Path: string); ! procedure SaveToAppStore(const AppStorage: TJvCustomAppStore; const Path: string); ! procedure Load; ! procedure Save; property SelectedRows; property SelCount: Longint read GetSelCount; *************** *** 2121,2146 **** end; ! procedure TJvDBGrid.SaveLayoutReg(IniFile: TRegIniFile); ! begin ! InternalSaveLayout(IniFile, ''); ! end; ! ! procedure TJvDBGrid.RestoreLayoutReg(IniFile: TRegIniFile); ! begin ! InternalRestoreLayout(IniFile, ''); ! end; ! ! procedure TJvDBGrid.InternalSaveLayout(IniFile: TObject; ! const Section: string); ! begin ! if (DataSource <> nil) and (DataSource.DataSet <> nil) then ! if StoreColumns then ! SaveColumnsLayout(IniFile, Section) ! else ! InternalSaveFields(DataSource.DataSet, IniFile, Section); ! end; ! ! procedure TJvDBGrid.InternalRestoreLayout(IniFile: TObject; ! const Section: string); begin if (DataSource <> nil) and (DataSource.DataSet <> nil) then --- 2119,2123 ---- end; ! procedure TJvDBGrid.LoadFromAppStore(const AppStorage: TJvCustomAppStore; const Path: string); begin if (DataSource <> nil) and (DataSource.DataSet <> nil) then *************** *** 2150,2156 **** try if StoreColumns then ! RestoreColumnsLayout(IniFile, Section) else ! InternalRestoreFields(DataSource.DataSet, IniFile, Section, False); finally EndLayout; --- 2127,2133 ---- try if StoreColumns then ! RestoreColumnsLayout(AppStorage, Path) else ! InternalRestoreFields(DataSource.DataSet, AppStorage, Path, False); finally EndLayout; *************** *** 2159,2170 **** end; ! procedure TJvDBGrid.SaveLayout(IniFile: TIniFile); begin ! InternalSaveLayout(IniFile, ''); end; ! procedure TJvDBGrid.RestoreLayout(IniFile: TIniFile); begin ! InternalRestoreLayout(IniFile, ''); end; --- 2136,2156 ---- end; ! procedure TJvDBGrid.SaveToAppStore(const AppStorage: TJvCustomAppStore; const Path: string); begin ! if (DataSource <> nil) and (DataSource.DataSet <> nil) then ! if StoreColumns then ! SaveColumnsLayout(AppStorage, Path) ! else ! InternalSaveFields(DataSource.DataSet, AppStorage, Path); end; ! procedure TJvDBGrid.Load; begin ! IniLoad(nil); ! end; ! ! procedure TJvDBGrid.Save; ! begin ! IniSave(nil); end; *************** *** 2173,2187 **** Section: string; begin ! if (Name <> '') and (FIniLink.IniObject <> nil) then begin if StoreColumns then ! Section := FIniLink.RootSection + GetDefaultSection(Self) else ! if (FIniLink.RootSection <> '') and (DataSource <> nil) and (DataSource.DataSet <> nil) then ! Section := FIniLink.RootSection + DataSetSectionName(DataSource.DataSet) else Section := ''; ! InternalSaveLayout(FIniLink.IniObject, Section); end; end; --- 2159,2173 ---- Section: string; begin ! if (Name <> '') and IniStorage.IsActive then begin if StoreColumns then ! Section := IniStorage.AppStorage.ConcatPaths([IniStorage.AppStoragePath, GetDefaultSection(Self)]) else ! if (DataSource <> nil) and (DataSource.DataSet <> nil) then ! Section := IniStorage.AppStorage.ConcatPaths([IniStorage.AppStoragePath, DataSetSectionName(DataSource.DataSet)]) else Section := ''; ! SaveToAppStore(IniStorage.AppStorage, Section); end; end; *************** *** 2191,2205 **** Section: string; begin ! if (Name <> '') and (FIniLink.IniObject <> nil) then begin if StoreColumns then ! Section := FIniLink.RootSection + GetDefaultSection(Self) else ! if (FIniLink.RootSection <> '') and (DataSource <> nil) and (DataSource.DataSet <> nil) then ! Section := FIniLink.RootSection + DataSetSectionName(DataSource.DataSet) else Section := ''; ! InternalRestoreLayout(FIniLink.IniObject, Section); end; end; --- 2177,2191 ---- Section: string; begin ! if (Name <> '') and IniStorage.IsActive then begin if StoreColumns then ! Section := IniStorage.AppStorage.ConcatPaths([IniStorage.AppStoragePath, GetDefaultSection(Self)]) else ! if (DataSource <> nil) and (DataSource.DataSet <> nil) then ! Section := IniStorage.AppStorage.ConcatPaths([IniStorage.AppStoragePath, DataSetSectionName(DataSource.DataSet)]) else Section := ''; ! LoadFromAppStore(IniStorage.AppStorage, Section); end; end; Index: JvDBUtils.pas =================================================================== RCS file: /cvsroot/jvcl/dev/JVCL3/run/JvDBUtils.pas,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** JvDBUtils.pas 17 Aug 2003 14:26:08 -0000 1.3 --- JvDBUtils.pas 13 Sep 2003 11:27:38 -0000 1.4 *************** *** 34,38 **** uses ! Registry, Classes, SysUtils, DB, IniFiles; type --- 34,39 ---- uses ! Registry, Classes, SysUtils, DB, IniFiles, ! JvAppStore; type *************** *** 91,106 **** const Value, FieldName: string; CaseInsensitive: Boolean): Boolean; function DataSetSectionName(DataSet: TDataSet): string; ! procedure InternalSaveFields(DataSet: TDataSet; IniFile: TObject; ! const Section: string); ! procedure InternalRestoreFields(DataSet: TDataSet; IniFile: TObject; ! const Section: string; RestoreVisible: Boolean); function DataSetLocateThrough(DataSet: TDataSet; const KeyFields: string; const KeyValues: Variant; Options: TLocateOptions): Boolean; procedure SaveFieldsReg(DataSet: TDataSet; IniFile: TRegIniFile); procedure RestoreFieldsReg(DataSet: TDataSet; IniFile: TRegIniFile; RestoreVisible: Boolean); ! procedure SaveFields(DataSet: TDataSet; IniFile: TIniFile); ! procedure RestoreFields(DataSet: TDataSet; IniFile: TIniFile; ! RestoreVisible: Boolean); procedure AssignRecord(Source, Dest: TDataSet; ByName: Boolean); function ConfirmDelete: Boolean; --- 92,108 ---- const Value, FieldName: string; CaseInsensitive: Boolean): Boolean; function DataSetSectionName(DataSet: TDataSet): string; ! procedure InternalSaveFields(DataSet: TDataSet; AppStorage: TJvCustomAppStore; const Path: string); ! procedure InternalRestoreFields(DataSet: TDataSet; AppStorage: TJvCustomAppStore; ! const Path: string; RestoreVisible: Boolean); function DataSetLocateThrough(DataSet: TDataSet; const KeyFields: string; const KeyValues: Variant; Options: TLocateOptions): Boolean; + (* procedure SaveFieldsReg(DataSet: TDataSet; IniFile: TRegIniFile); procedure RestoreFieldsReg(DataSet: TDataSet; IniFile: TRegIniFile; RestoreVisible: Boolean); ! *) ! procedure SaveFields(DataSet: TDataSet; AppStorage: TJvCustomAppStore; const Path: string = ''); ! procedure RestoreFields(DataSet: TDataSet; AppStorage: TJvCustomAppStore; const Path: string = ''; ! RestoreVisible: Boolean = True); procedure AssignRecord(Source, Dest: TDataSet; ByName: Boolean); function ConfirmDelete: Boolean; *************** *** 592,597 **** end; ! procedure InternalSaveFields(DataSet: TDataSet; IniFile: TObject; ! const Section: string); var I: Integer; --- 594,598 ---- end; ! procedure InternalSaveFields(DataSet: TDataSet; AppStorage: TJvCustomAppStore; const Path: string); var I: Integer; *************** *** 601,606 **** for I := 0 to FieldCount - 1 do begin ! IniWriteString(IniFile, CheckSection(DataSet, Section), ! Name + Fields[I].FieldName, Format('%d,%d,%d', [Fields[I].Index, Fields[I].DisplayWidth, Integer(Fields[I].Visible)])); --- 602,607 ---- for I := 0 to FieldCount - 1 do begin ! AppStorage.WriteString(AppStorage.ConcatPaths([CheckSection(DataSet, Path), ! Name + Fields[I].FieldName]), Format('%d,%d,%d', [Fields[I].Index, Fields[I].DisplayWidth, Integer(Fields[I].Visible)])); *************** *** 609,614 **** end; ! procedure InternalRestoreFields(DataSet: TDataSet; IniFile: TObject; ! const Section: string; RestoreVisible: Boolean); type TFieldInfo = record --- 610,615 ---- end; ! procedure InternalRestoreFields(DataSet: TDataSet; AppStorage: TJvCustomAppStore; ! const Path: string; RestoreVisible: Boolean); type TFieldInfo = record *************** *** 631,636 **** for I := 0 to FieldCount - 1 do begin ! S := IniReadString(IniFile, CheckSection(DataSet, Section), ! Name + Fields[I].FieldName, ''); FieldArray^[I].Field := Fields[I]; FieldArray^[I].EndIndex := Fields[I].Index; --- 632,637 ---- for I := 0 to FieldCount - 1 do begin ! S := AppStorage.ReadString(AppStorage.ConcatPaths([CheckSection(DataSet, Path), ! Name + Fields[I].FieldName]), ''); FieldArray^[I].Field := Fields[I]; FieldArray^[I].EndIndex := Fields[I].Index; *************** *** 663,687 **** end; ! procedure SaveFieldsReg(DataSet: TDataSet; IniFile: TRegIniFile); ! begin ! InternalSaveFields(DataSet, IniFile, DataSetSectionName(DataSet)); ! end; ! ! procedure RestoreFieldsReg(DataSet: TDataSet; IniFile: TRegIniFile; ! RestoreVisible: Boolean); ! begin ! InternalRestoreFields(DataSet, IniFile, DataSetSectionName(DataSet), ! RestoreVisible); ! end; ! ! procedure SaveFields(DataSet: TDataSet; IniFile: TIniFile); begin ! InternalSaveFields(DataSet, IniFile, DataSetSectionName(DataSet)); end; ! procedure RestoreFields(DataSet: TDataSet; IniFile: TIniFile; RestoreVisible: Boolean); begin ! InternalRestoreFields(DataSet, IniFile, DataSetSectionName(DataSet), RestoreVisible); end; --- 664,676 ---- end; ! procedure SaveFields(DataSet: TDataSet; AppStorage: TJvCustomAppStore; const Path: string); begin ! InternalSaveFields(DataSet, AppStorage, AppStorage.ConcatPaths([Path, DataSetSectionName(DataSet)])); end; ! procedure RestoreFields(DataSet: TDataSet; AppStorage: TJvCustomAppStore; const Path: string; RestoreVisible: Boolean); begin ! InternalRestoreFields(DataSet, AppStorage, AppStorage.ConcatPaths([DataSetSectionName(DataSet)]), RestoreVisible); end; |