mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2025-08-06 18:24:26 +08:00
Kill option to manually specify value of initial limit (DataLimitEnd) in preferences. Keeping the checkbox for autocalculating while rephrasing its caption. Now the limit number is set either automatically by GetCalculatedLimit() or not at all if the option is disabled. (Un-)checking the CheckboxLimit in Mainform now toggles this option permanently.
This commit is contained in:
@ -76,8 +76,6 @@ const
|
||||
DEFAULT_DEFAULTCOLWIDTH = 100;
|
||||
REGNAME_DATALIMIT = 'DataLimit';
|
||||
DEFAULT_DATALIMIT = True;
|
||||
REGNAME_DATALIMITEND = 'DataLimitEnd';
|
||||
DEFAULT_DATALIMITEND = 50;
|
||||
REGNAME_REMEMBERFILTERS = 'RememberFilters';
|
||||
DEFAULT_REMEMBERFILTERS = True;
|
||||
REGNAME_LOGTOFILE = 'LogToFile';
|
||||
|
@ -1493,8 +1493,7 @@ var
|
||||
limit : Int64;
|
||||
ds : TDataSet;
|
||||
sl_query : TStringList;
|
||||
manualLimit : boolean;
|
||||
manualLimitEnd : integer;
|
||||
DoAutoLimit : Boolean;
|
||||
DisplayedColumnsList : TStringList;
|
||||
tmp : TDataSet;
|
||||
begin
|
||||
@ -1503,15 +1502,11 @@ begin
|
||||
try
|
||||
// limit number of rows automatically if first time this table is shown
|
||||
if not dataselected then begin
|
||||
manualLimit := Mainform.GetRegValue(REGNAME_DATALIMIT, DEFAULT_DATALIMIT);
|
||||
manualLimitEnd := Mainform.GetRegValue(REGNAME_DATALIMITEND, DEFAULT_DATALIMITEND);
|
||||
|
||||
limit := -1;
|
||||
DoAutoLimit := Mainform.GetRegValue(REGNAME_DATALIMIT, DEFAULT_DATALIMIT);
|
||||
// limit number of rows fetched according to preferences
|
||||
if manualLimit then begin
|
||||
// manual limit set in preferences
|
||||
limit := manualLimitEnd;
|
||||
end else begin
|
||||
// no tick in preferences check box - auto-limit:
|
||||
if DoAutoLimit then begin
|
||||
// tick in preferences check box - auto-limit:
|
||||
// limit number of rows fetched if more than ~ 5 MB of data
|
||||
limit := GetCalculatedLimit( SelectedTable );
|
||||
end;
|
||||
|
@ -819,8 +819,15 @@ end;
|
||||
|
||||
|
||||
procedure TMainForm.ButtonOKClick(Sender: TObject);
|
||||
var
|
||||
reg: TRegistry;
|
||||
begin
|
||||
// Set Filter
|
||||
// Set auto limit option after manual checking "Limit"
|
||||
reg := TRegistry.Create;
|
||||
if reg.OpenKey( REGPATH, true ) then begin
|
||||
reg.WriteBool( REGNAME_DATALIMIT, CheckboxLimit.Checked );
|
||||
end;
|
||||
FreeAndNil(reg);
|
||||
ChildWin.DBTree.SetFocus;
|
||||
ChildWin.viewdata(self);
|
||||
end;
|
||||
|
@ -416,13 +416,6 @@ object optionsform: Toptionsform
|
||||
BorderWidth = 5
|
||||
Caption = 'Data-Appearance'
|
||||
ImageIndex = 4
|
||||
object Label26: TLabel
|
||||
Left = 257
|
||||
Top = 40
|
||||
Width = 36
|
||||
Height = 13
|
||||
Caption = 'records'
|
||||
end
|
||||
object Label19: TLabel
|
||||
Left = 8
|
||||
Top = 68
|
||||
@ -446,7 +439,7 @@ object optionsform: Toptionsform
|
||||
Caption =
|
||||
'Change this font in order to view special language characters in' +
|
||||
' data-grids:'
|
||||
TabOrder = 6
|
||||
TabOrder = 4
|
||||
object Label21: TLabel
|
||||
Left = 20
|
||||
Top = 24
|
||||
@ -516,40 +509,20 @@ object optionsform: Toptionsform
|
||||
object CheckBoxlimit: TCheckBox
|
||||
Left = 8
|
||||
Top = 40
|
||||
Width = 169
|
||||
Width = 397
|
||||
Height = 17
|
||||
Caption = 'View data by default limited to'
|
||||
Anchors = [akLeft, akTop, akRight]
|
||||
Caption = 'Automatically calculate data limit to avoid huge net loads'
|
||||
Checked = True
|
||||
State = cbChecked
|
||||
TabOrder = 1
|
||||
OnClick = CheckBoxlimitClick
|
||||
end
|
||||
object EditLimit: TEdit
|
||||
Left = 189
|
||||
Top = 37
|
||||
Width = 41
|
||||
Height = 21
|
||||
TabOrder = 2
|
||||
Text = '50'
|
||||
OnChange = Modified
|
||||
end
|
||||
object UpDownLimit: TUpDown
|
||||
Left = 230
|
||||
Top = 37
|
||||
Width = 16
|
||||
Height = 21
|
||||
Associate = EditLimit
|
||||
Max = 32767
|
||||
Position = 50
|
||||
TabOrder = 3
|
||||
OnChanging = anyUpDownLimitChanging
|
||||
end
|
||||
object editDefaultColWidth: TEdit
|
||||
Left = 188
|
||||
Top = 65
|
||||
Width = 42
|
||||
Height = 21
|
||||
TabOrder = 4
|
||||
TabOrder = 2
|
||||
Text = '0'
|
||||
OnChange = Modified
|
||||
end
|
||||
@ -560,7 +533,7 @@ object optionsform: Toptionsform
|
||||
Height = 21
|
||||
Associate = editDefaultColWidth
|
||||
Max = 1000
|
||||
TabOrder = 5
|
||||
TabOrder = 3
|
||||
OnChanging = anyUpDownLimitChanging
|
||||
end
|
||||
object chkRememberFilters: TCheckBox
|
||||
|
@ -71,9 +71,6 @@ type
|
||||
EditFontSize: TEdit;
|
||||
UpDownFontSize: TUpDown;
|
||||
CheckBoxlimit: TCheckBox;
|
||||
EditLimit: TEdit;
|
||||
UpDownLimit: TUpDown;
|
||||
Label26: TLabel;
|
||||
Label19: TLabel;
|
||||
Label20: TLabel;
|
||||
Label28: TLabel;
|
||||
@ -103,7 +100,6 @@ type
|
||||
procedure FontsChange(Sender: TObject);
|
||||
procedure CallColorDialog(Sender: TObject);
|
||||
procedure DataFontsChange(Sender: TObject);
|
||||
procedure CheckBoxlimitClick(Sender: TObject);
|
||||
procedure anyUpDownLimitChanging(Sender: TObject;
|
||||
var AllowChange: Boolean);
|
||||
procedure btnOpenLogFolderClick(Sender: TObject);
|
||||
@ -180,7 +176,6 @@ begin
|
||||
reg.WriteString(REGNAME_CSV_TERMINATOR, Edit3.Text);
|
||||
reg.WriteInteger(REGNAME_DEFAULTCOLWIDTH, updownDefaultColWidth.Position);
|
||||
reg.WriteBool(REGNAME_DATALIMIT, CheckBoxLimit.Checked);
|
||||
reg.WriteInteger(REGNAME_DATALIMITEND, UpDownLimit.Position);
|
||||
reg.WriteString(REGNAME_DATAFONTNAME, Panel8.Font.Name);
|
||||
reg.WriteInteger(REGNAME_DATAFONTSIZE, UpDownDataFontSize.Position);
|
||||
reg.WriteBool(REGNAME_REMEMBERFILTERS, chkRememberFilters.Checked);
|
||||
@ -226,10 +221,6 @@ begin
|
||||
cwin.prefConvertHTMLEntities := self.CheckBoxConvertHTMLEntities.Checked;
|
||||
end;
|
||||
|
||||
// Set relevant properties in mainform
|
||||
Mainform.CheckBoxLimit.Checked := CheckBoxLimit.Checked;
|
||||
Mainform.UpDownLimitEnd.Position := UpDownLimit.Position;
|
||||
|
||||
// Settings have been applied, send a signal to the user
|
||||
ButtonApply.Enabled := false;
|
||||
|
||||
@ -270,8 +261,6 @@ begin
|
||||
CheckBoxConvertHTMLEntities.Checked := Mainform.GetRegValue(REGNAME_CONVERTHTMLENTITIES, DEFAULT_CONVERTHTMLENTITIES);
|
||||
CheckBoxRestoreLastUsedDB.Checked := Mainform.GetRegValue(REGNAME_RESTORELASTUSEDDB, DEFAULT_RESTORELASTUSEDDB);
|
||||
CheckBoxLimit.Checked := Mainform.GetRegValue(REGNAME_DATALIMIT, DEFAULT_DATALIMIT);
|
||||
UpDownLimit.Position := Mainform.GetRegValue(REGNAME_DATALIMITEND, DEFAULT_DATALIMITEND);
|
||||
CheckBoxLimit.OnClick(self);
|
||||
updownLogSQLNum.Position := Mainform.GetRegValue(REGNAME_LOGSQLNUM, DEFAULT_LOGSQLNUM);
|
||||
updownLogSnip.Position := Mainform.GetRegValue(REGNAME_LOGSQLWIDTH, DEFAULT_LOGSQLWIDTH);
|
||||
chkUpdatecheck.Checked := Mainform.GetRegValue(REGNAME_DO_UPDATECHECK, DEFAULT_DO_UPDATECHECK);
|
||||
@ -365,13 +354,6 @@ begin
|
||||
Modified(self);
|
||||
end;
|
||||
|
||||
procedure Toptionsform.CheckBoxlimitClick(Sender: TObject);
|
||||
begin
|
||||
UpDownLimit.Enabled := CheckBoxLimit.Checked;
|
||||
EditLimit.Enabled := CheckBoxLimit.Checked;
|
||||
Modified(sender);
|
||||
end;
|
||||
|
||||
procedure Toptionsform.anyUpDownLimitChanging(Sender: TObject;
|
||||
var AllowChange: Boolean);
|
||||
begin
|
||||
|
Reference in New Issue
Block a user