disable the "reload new version" message on main form close

This commit is contained in:
Basile Burg 2016-04-11 06:58:12 +02:00
parent e10c323c74
commit 87bffb06fc
4 changed files with 150 additions and 2 deletions

View File

@ -304,6 +304,7 @@ begin
if doc.isNil then exit(false);
if (doc.modified or (doc.fileName = doc.tempFilename)) and
(dlgFileChangeClose(doc.fileName) = mrCancel) then exit(false);
doc.disableFileDateCheck:=true;
pageControl.pageIndex:=index;
doc.Free;
result := true;

View File

@ -1914,6 +1914,42 @@ object CEMainForm: TCEMainForm
end
object MenuItem72: TMenuItem
Action = actFileCompile
Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000330000003300000000000000000000000000000000000000070000
0033000000330000003300000033000000330000003300000033000000330000
00337C7C81FF7E7D7DFF0000000E00000033000000338886840060440E44B881
14FFB67E0FFFB57D0DFFB57D0CFFB67E0CFFBC7F06FF7F8188FF86878AFFA87F
2DFFA8A8ABFFAAA8A8FF52504F698A8886FF868482FF88868400AC7A14CADCC1
89FFF5F0E0FFF4EDDBFFF4EDDBFFF6EFDBFFFDF4DCFF878789FFCECDCEFF9696
98FFC6C5C6FFC7C5C5FF989695FFD1CFCEFF8B8988FF0000000AB78012FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3E3DFFFC2C1BBFF959493FFB5B3
B4FF8D8C8CFF8D8C8BFFB6B4B3FF999796FF646260894847465BB98419FFB67E
0EFFB67F0FFFC0902EFFC08E29FFC59128FF747578FFAAA8A9FFCAC8C7FF8F8D
8EFFFFF2D2FFFFFFF5FF8F8D8DFFCBC9C9FFB0AEADFF8E8C8AFFBB871E00B984
1900B8831BEFFFFFFFFFF2E9D3FFF7EDD4FF747577FFABA9AAFFCCCACAFF9290
8FFFDCD2B9FFE9E7E2FF918F8EFFCECCCBFFB1AFAEFF8F8D8BFFBB871F00BA85
1C00B0790BD2FFFFFFFFF1E9D2FFF4EBD2FFFCF2D7FFB4AFA2FF9B9997FFBCBA
BAFF939191FF929191FFBCBABAFF9E9C9AFF6C6B699B908E8C00BB871F00BA85
1C00AA760C9BF0E4CCFFF6EFE0FFF4ECD7FFFAF2DCFF8B8A8AFFD7D6D6FF9A99
97FFD0CECEFFD0CFCFFF9C9A9AFFDBDADBFF918F8EFF94929000BB871F00BA86
1D00AD790E73EADBBBFFFAF7EEFFF6EFDEFFFCF4E2FF7B797AFF8B8A89FFD2CC
BFFFB1AFAEFFB1B1B1FFC3B28EFF939499FF8C8B8EFF8E8E8E00BB871F00BB86
1D00B07B1134DBBF88FFFFFFFFFFF7F2E5FFFAF4E6FFFEF7E9FFFFF9EAFFFFFC
EDFF767574FF777778FFF8E9CAFFAA7200A8888D99008B8E9700BB871F00BB86
1E00B882150CCCA556FFFFFFFFFFF9F6EBFFF9F5EAFFFAF6ECFFFBF7EDFFFDF9
EEFFFFFCF1FFFFFFFCFFFFFFFFFFAB7405CE0000003300000033BB871F00BB87
1E00B9831800C89E49FFFFFFFFFFFCF9F3FFFBF8F1FFFBF8F1FFFBF8F1FFFBF8
F1FFFCF9F3FFFDFBF6FFFFFFFFFFB27701FFBA851BFFBC8921FFBB871F00BB87
1F00B9851B00B27A09E5FFFFFFFFFFFFFFFFFEFEFBFFFEFEFBFFFEFEFCFFFEFE
FCFFFEFEFCFFFFFFFEFFFFFFFFFFC69941FFECDFC2FFC19234FFBB871F00BB87
1F00BA861D00B7801283E4CFA7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFE9DABAFFEEE2C9FFB67F14BFBB871F00BB87
1F00BB871E00B9841A00B67E0FEAC4973BFFC79D49FFC39538FFB37904FFB47A
07FFB47A07FFB47A08FFB57C0AFFB67F0FFFB88114FFBA851B23
}
end
object MenuItem37: TMenuItem
Action = actFileCompAndRun
@ -2034,6 +2070,42 @@ object CEMainForm: TCEMainForm
end
object MenuItem73: TMenuItem
Action = actFileRun
Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000330000003300000000000000000000000000000000000000070000
0033000000330000003300000033000000330000003300000033000000330000
00337C7C81FF7E7D7DFF0000000E00000033000000338886840060440E44B881
14FFB67E0FFFB57D0DFFB57D0CFFB67E0CFFBC7F06FF7F8188FF86878AFFA87F
2DFFA8A8ABFFAAA8A8FF52504F698A8886FF868482FF88868400AC7A14CADCC1
89FFF5F0E0FFF4EDDBFFF4EDDBFFF6EFDBFFFDF4DCFF878789FFCECDCEFF9696
98FFC6C5C6FFC7C5C5FF989695FFD1CFCEFF8B8988FF0000000AB78012FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3E3DFFFC2C1BBFF959493FFB5B3
B4FF8D8C8CFF8D8C8BFFB6B4B3FF999796FF646260894847465BB98419FFB67E
0EFFB67F0FFFC0902EFFC08E29FFC59128FF747578FFAAA8A9FFCAC8C7FF8F8D
8EFFFFF2D2FFFFFFF5FF8F8D8DFFCBC9C9FFB0AEADFF8E8C8AFFBB871E00B984
1900B8831BEFFFFFFFFFF2E9D3FFF7EDD4FF747577FFABA9AAFFCCCACAFF9290
8FFFDCD2B9FFE9E7E2FF918F8EFFCECCCBFFB1AFAEFF8F8D8BFFBB871F00BA85
1C00B0790BD2FFFFFFFFF1E9D2FFF4EBD2FFFCF2D7FFB4AFA2FF9B9997FFBCBA
BAFF939191FF929191FFBCBABAFF9E9C9AFF6C6B699B908E8C00BB871F00BA85
1C00AA760C9BF0E4CCFFF6EFE0FFF4ECD7FFFAF2DCFF8B8A8AFFD7D6D6FF9A99
97FFD0CECEFFD0CFCFFF9C9A9AFFDBDADBFF918F8EFF94929000BB871F00BA86
1D00AD790E73EADBBBFFFAF7EEFFF6EFDEFFFCF4E2FF7B797AFF8B8A89FFD2CC
BFFFB1AFAEFFB1B1B1FFC3B28EFF939499FF8C8B8EFF8E8E8E00BB871F00BB86
1D00B07B1134DBBF88FFFFFFFFFFF7F2E5FFFAF4E6FFFEF7E9FFFFF9EAFFFFFC
EDFF767574FF777778FFF8E9CAFFAA7200A8888D99008B8E9700BB871F00BB86
1E00B882150CCCA556FFFFFFFFFFF9F6EBFFF9F5EAFFFAF6ECFFFBF7EDFFFDF9
EEFFFFFCF1FFFFFFFCFFFFFFFFFFAB7405CE0000003300000033BB871F00BB87
1E00B9831800C89E49FFFFFFFFFFFCF9F3FFFBF8F1FFFBF8F1FFFBF8F1FFFBF8
F1FFFCF9F3FFFDFBF6FFFFFFFFFFB27701FFBA851BFFBC8921FFBB871F00BB87
1F00B9851B00B27A09E5FFFFFFFFFFFFFFFFFEFEFBFFFEFEFBFFFEFEFCFFFEFE
FCFFFEFEFCFFFFFFFEFFFFFFFFFFC69941FFECDFC2FFC19234FFBB871F00BB87
1F00BA861D00B7801283E4CFA7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFE9DABAFFEEE2C9FFB67F14BFBB871F00BB87
1F00BB871E00B9841A00B67E0FEAC4973BFFC79D49FFC39538FFB37904FFB47A
07FFB47A07FFB47A08FFB57C0AFFB67F0FFFB88114FFBA851B23
}
end
object MenuItem63: TMenuItem
Action = actFileUnittest
@ -3284,6 +3356,42 @@ object CEMainForm: TCEMainForm
Caption = 'Run'
object MenuItem74: TMenuItem
Action = actFileCompile
Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000330000003300000000000000000000000000000000000000070000
0033000000330000003300000033000000330000003300000033000000330000
00337C7C81FF7E7D7DFF0000000E00000033000000338886840060440E44B881
14FFB67E0FFFB57D0DFFB57D0CFFB67E0CFFBC7F06FF7F8188FF86878AFFA87F
2DFFA8A8ABFFAAA8A8FF52504F698A8886FF868482FF88868400AC7A14CADCC1
89FFF5F0E0FFF4EDDBFFF4EDDBFFF6EFDBFFFDF4DCFF878789FFCECDCEFF9696
98FFC6C5C6FFC7C5C5FF989695FFD1CFCEFF8B8988FF0000000AB78012FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3E3DFFFC2C1BBFF959493FFB5B3
B4FF8D8C8CFF8D8C8BFFB6B4B3FF999796FF646260894847465BB98419FFB67E
0EFFB67F0FFFC0902EFFC08E29FFC59128FF747578FFAAA8A9FFCAC8C7FF8F8D
8EFFFFF2D2FFFFFFF5FF8F8D8DFFCBC9C9FFB0AEADFF8E8C8AFFBB871E00B984
1900B8831BEFFFFFFFFFF2E9D3FFF7EDD4FF747577FFABA9AAFFCCCACAFF9290
8FFFDCD2B9FFE9E7E2FF918F8EFFCECCCBFFB1AFAEFF8F8D8BFFBB871F00BA85
1C00B0790BD2FFFFFFFFF1E9D2FFF4EBD2FFFCF2D7FFB4AFA2FF9B9997FFBCBA
BAFF939191FF929191FFBCBABAFF9E9C9AFF6C6B699B908E8C00BB871F00BA85
1C00AA760C9BF0E4CCFFF6EFE0FFF4ECD7FFFAF2DCFF8B8A8AFFD7D6D6FF9A99
97FFD0CECEFFD0CFCFFF9C9A9AFFDBDADBFF918F8EFF94929000BB871F00BA86
1D00AD790E73EADBBBFFFAF7EEFFF6EFDEFFFCF4E2FF7B797AFF8B8A89FFD2CC
BFFFB1AFAEFFB1B1B1FFC3B28EFF939499FF8C8B8EFF8E8E8E00BB871F00BB86
1D00B07B1134DBBF88FFFFFFFFFFF7F2E5FFFAF4E6FFFEF7E9FFFFF9EAFFFFFC
EDFF767574FF777778FFF8E9CAFFAA7200A8888D99008B8E9700BB871F00BB86
1E00B882150CCCA556FFFFFFFFFFF9F6EBFFF9F5EAFFFAF6ECFFFBF7EDFFFDF9
EEFFFFFCF1FFFFFFFCFFFFFFFFFFAB7405CE0000003300000033BB871F00BB87
1E00B9831800C89E49FFFFFFFFFFFCF9F3FFFBF8F1FFFBF8F1FFFBF8F1FFFBF8
F1FFFCF9F3FFFDFBF6FFFFFFFFFFB27701FFBA851BFFBC8921FFBB871F00BB87
1F00B9851B00B27A09E5FFFFFFFFFFFFFFFFFEFEFBFFFEFEFBFFFEFEFCFFFEFE
FCFFFEFEFCFFFFFFFEFFFFFFFFFFC69941FFECDFC2FFC19234FFBB871F00BB87
1F00BA861D00B7801283E4CFA7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFE9DABAFFEEE2C9FFB67F14BFBB871F00BB87
1F00BB871E00B9841A00B67E0FEAC4973BFFC79D49FFC39538FFB37904FFB47A
07FFB47A07FFB47A08FFB57C0AFFB67F0FFFB88114FFBA851B23
}
end
object MenuItem9: TMenuItem
Action = actFileCompAndRun
@ -3404,6 +3512,42 @@ object CEMainForm: TCEMainForm
end
object MenuItem75: TMenuItem
Action = actFileRun
Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000330000003300000000000000000000000000000000000000070000
0033000000330000003300000033000000330000003300000033000000330000
00337C7C81FF7E7D7DFF0000000E00000033000000338886840060440E44B881
14FFB67E0FFFB57D0DFFB57D0CFFB67E0CFFBC7F06FF7F8188FF86878AFFA87F
2DFFA8A8ABFFAAA8A8FF52504F698A8886FF868482FF88868400AC7A14CADCC1
89FFF5F0E0FFF4EDDBFFF4EDDBFFF6EFDBFFFDF4DCFF878789FFCECDCEFF9696
98FFC6C5C6FFC7C5C5FF989695FFD1CFCEFF8B8988FF0000000AB78012FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3E3DFFFC2C1BBFF959493FFB5B3
B4FF8D8C8CFF8D8C8BFFB6B4B3FF999796FF646260894847465BB98419FFB67E
0EFFB67F0FFFC0902EFFC08E29FFC59128FF747578FFAAA8A9FFCAC8C7FF8F8D
8EFFFFF2D2FFFFFFF5FF8F8D8DFFCBC9C9FFB0AEADFF8E8C8AFFBB871E00B984
1900B8831BEFFFFFFFFFF2E9D3FFF7EDD4FF747577FFABA9AAFFCCCACAFF9290
8FFFDCD2B9FFE9E7E2FF918F8EFFCECCCBFFB1AFAEFF8F8D8BFFBB871F00BA85
1C00B0790BD2FFFFFFFFF1E9D2FFF4EBD2FFFCF2D7FFB4AFA2FF9B9997FFBCBA
BAFF939191FF929191FFBCBABAFF9E9C9AFF6C6B699B908E8C00BB871F00BA85
1C00AA760C9BF0E4CCFFF6EFE0FFF4ECD7FFFAF2DCFF8B8A8AFFD7D6D6FF9A99
97FFD0CECEFFD0CFCFFF9C9A9AFFDBDADBFF918F8EFF94929000BB871F00BA86
1D00AD790E73EADBBBFFFAF7EEFFF6EFDEFFFCF4E2FF7B797AFF8B8A89FFD2CC
BFFFB1AFAEFFB1B1B1FFC3B28EFF939499FF8C8B8EFF8E8E8E00BB871F00BB86
1D00B07B1134DBBF88FFFFFFFFFFF7F2E5FFFAF4E6FFFEF7E9FFFFF9EAFFFFFC
EDFF767574FF777778FFF8E9CAFFAA7200A8888D99008B8E9700BB871F00BB86
1E00B882150CCCA556FFFFFFFFFFF9F6EBFFF9F5EAFFFAF6ECFFFBF7EDFFFDF9
EEFFFFFCF1FFFFFFFCFFFFFFFFFFAB7405CE0000003300000033BB871F00BB87
1E00B9831800C89E49FFFFFFFFFFFCF9F3FFFBF8F1FFFBF8F1FFFBF8F1FFFBF8
F1FFFCF9F3FFFDFBF6FFFFFFFFFFB27701FFBA851BFFBC8921FFBB871F00BB87
1F00B9851B00B27A09E5FFFFFFFFFFFFFFFFFEFEFBFFFEFEFBFFFEFEFCFFFEFE
FCFFFEFEFCFFFFFFFEFFFFFFFFFFC69941FFECDFC2FFC19234FFBB871F00BB87
1F00BA861D00B7801283E4CFA7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFE9DABAFFEEE2C9FFB67F14BFBB871F00BB87
1F00BB871E00B9841A00B67E0FEAC4973BFFC79D49FFC39538FFB37904FFB47A
07FFB47A07FFB47A08FFB57C0AFFB67F0FFFB88114FFBA851B23
}
end
object MenuItem64: TMenuItem
Action = actFileUnittest

View File

@ -2128,7 +2128,7 @@ begin
for i := 0 to lst.Count-1 do
if lst[i][1..7] = '0000000' then
begin
fMsgs.message(format('%s(%d): %s',[fDoc.fileName, i+1,
fMsgs.message(format('%s(%d): %s', [fDoc.fileName, i+1,
'not covered by the unittests']), fDoc, amcEdit, amkWarn);
fullcov := false;
end;

View File

@ -143,6 +143,7 @@ type
fOverrideColMode: boolean;
fAutoCloseCurlyBrace: TBraceAutoCloseStyle;
fLexToks: TLexTokenList;
fDisableFileDateCheck: boolean;
procedure setMatchOpts(value: TIdentifierMatchOptions);
function getMouseFileBytePos: Integer;
procedure changeNotify(Sender: TObject);
@ -219,6 +220,7 @@ type
property isTemporary: boolean read getIfTemp;
property TextView;
//
property disableFileDateCheck: boolean read fDisableFileDateCheck write fDisableFileDateCheck;
property MouseStart: Integer read getMouseFileBytePos;
property D2Highlighter: TSynD2Syn read fD2Highlighter;
property TxtHighlighter: TSynTxtSyn read fTxtHighlighter;
@ -1376,12 +1378,13 @@ var
str: TStringList;
begin
if fFilename = fTempFileName then exit;
if fDisableFileDateCheck then exit;
if not FileAge(fFilename, newDate) then exit;
if fFileDate = newDate then exit;
if fFileDate <> 0.0 then
begin
// note: this could cause a bug during the DST switch.
// e.g: save at 2h59, at 3h00 clock is reset to 2h00, set the focus on the doc: new version message.
// e.g: save at 2h59, 3h00 reset to 2h00, set the focus on the doc: new version message.
if dlgOkCancel(format('"%s" has been modified by another program, load the new version ?',
[shortenPath(fFilename, 25)])) = mrOk then
begin