0.2.6.0: Added feature - Help menu/AutoLoad Last File

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5507 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
gbamber
2016-12-15 18:43:36 +00:00
parent 77fd6e5a30
commit 2b35678018
13 changed files with 147 additions and 75 deletions

View File

@ -1,6 +1,6 @@
[Setup] [Setup]
AppName=External OPM JSON package Editor AppName=External OPM JSON package Editor
AppVersion=0.2.5.0 AppVersion=0.2.6.0
DefaultDirName={pf}\OPMUtilities DefaultDirName={pf}\OPMUtilities
DefaultGroupName=OPM DefaultGroupName=OPM
UninstallDisplayIcon={app}\jsoneditor.exe UninstallDisplayIcon={app}\jsoneditor.exe

View File

@ -144,6 +144,10 @@ msgstr "&Help"
msgid "About.." msgid "About.."
msgstr "About.." msgstr "About.."
#: tfrmmain.mnu_helpautoloadlastfile.caption
msgid "Auto-load last saved file"
msgstr ""
#: tfrmmain.mnu_helpdisablewarnings.caption #: tfrmmain.mnu_helpdisablewarnings.caption
msgid "Disable warnings" msgid "Disable warnings"
msgstr "Disable warnings" msgstr "Disable warnings"

View File

@ -145,6 +145,10 @@ msgstr "&Ayuda"
msgid "About.." msgid "About.."
msgstr "Acerca de.." msgstr "Acerca de.."
#: tfrmmain.mnu_helpautoloadlastfile.caption
msgid "Auto-load last saved file"
msgstr "Carga automática último archivo guardado"
#: tfrmmain.mnu_helpdisablewarnings.caption #: tfrmmain.mnu_helpdisablewarnings.caption
msgid "Disable warnings" msgid "Disable warnings"
msgstr "Deshabilitar advertencias" msgstr "Deshabilitar advertencias"
@ -376,4 +380,3 @@ msgstr "¿Quieres copiar %s a la carpeta %s?"
#: umain.rsyoumayneedto #: umain.rsyoumayneedto
msgid "(You may need to restart the app to see the change)" msgid "(You may need to restart the app to see the change)"
msgstr "(Quizás necesites reiniciar la aplicación para ver los cambios)" msgstr "(Quizás necesites reiniciar la aplicación para ver los cambios)"

View File

@ -28,8 +28,7 @@
<UseVersionInfo Value="True"/> <UseVersionInfo Value="True"/>
<AutoIncrementBuild Value="True"/> <AutoIncrementBuild Value="True"/>
<MinorVersionNr Value="2"/> <MinorVersionNr Value="2"/>
<RevisionNr Value="5"/> <RevisionNr Value="6"/>
<BuildNr Value="1"/>
<StringTable Comments="Buld configured for Win Linux and Darwin" FileDescription="An editor for OnlinePackageManager update JSON files" InternalName="jsoneditor" LegalCopyright="(c)2016 usernames lainz and minesadorada @ forum.lazarus.freepascal.org" LegalTrademarks="GPL code" OriginalFilename="jsoneditor" ProductName="Lazarus and Freepascal" ProductVersion="1.x and 3.x"/> <StringTable Comments="Buld configured for Win Linux and Darwin" FileDescription="An editor for OnlinePackageManager update JSON files" InternalName="jsoneditor" LegalCopyright="(c)2016 usernames lainz and minesadorada @ forum.lazarus.freepascal.org" LegalTrademarks="GPL code" OriginalFilename="jsoneditor" ProductName="Lazarus and Freepascal" ProductVersion="1.x and 3.x"/>
</VersionInfo> </VersionInfo>
<BuildModes Count="6"> <BuildModes Count="6">

View File

@ -3,14 +3,14 @@
<ProjectSession> <ProjectSession>
<PathDelim Value="\"/> <PathDelim Value="\"/>
<Version Value="10"/> <Version Value="10"/>
<BuildModes Active="DEBUG Win64"/> <BuildModes Active="Win64"/>
<Units Count="47"> <Units Count="49">
<Unit0> <Unit0>
<Filename Value="jsonpackage.lpr"/> <Filename Value="jsonpackage.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<EditorIndex Value="3"/> <EditorIndex Value="2"/>
<CursorPos X="15" Y="19"/> <CursorPos X="15" Y="19"/>
<UsageCount Value="164"/> <UsageCount Value="165"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit0> </Unit0>
<Unit1> <Unit1>
@ -20,8 +20,8 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<IsVisibleTab Value="True"/> <IsVisibleTab Value="True"/>
<TopLine Value="67"/> <TopLine Value="54"/>
<CursorPos X="58" Y="66"/> <CursorPos X="44" Y="80"/>
<ExtraEditorCount Value="1"/> <ExtraEditorCount Value="1"/>
<ExtraEditor1> <ExtraEditor1>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
@ -29,11 +29,11 @@
<TopLine Value="311"/> <TopLine Value="311"/>
<CursorPos Y="498"/> <CursorPos Y="498"/>
</ExtraEditor1> </ExtraEditor1>
<UsageCount Value="164"/> <UsageCount Value="165"/>
<Bookmarks Count="3"> <Bookmarks Count="3">
<Item0 Y="880" ID="1"/> <Item0 Y="892" ID="1"/>
<Item1 Y="818"/> <Item1 Y="666" ID="2"/>
<Item2 Y="661" ID="2"/> <Item2 X="56" Y="1211"/>
</Bookmarks> </Bookmarks>
<Loaded Value="True"/> <Loaded Value="True"/>
<LoadedDesigner Value="True"/> <LoadedDesigner Value="True"/>
@ -41,7 +41,7 @@
<Unit2> <Unit2>
<Filename Value="ugenericcollection.pas"/> <Filename Value="ugenericcollection.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UsageCount Value="164"/> <UsageCount Value="165"/>
</Unit2> </Unit2>
<Unit3> <Unit3>
<Filename Value="C:\NewPascal\projects\MDSUM\CryptINI\lockini.pas"/> <Filename Value="C:\NewPascal\projects\MDSUM\CryptINI\lockini.pas"/>
@ -49,7 +49,7 @@
<UnitName Value="LockIni"/> <UnitName Value="LockIni"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<CursorPos X="40" Y="9"/> <CursorPos X="40" Y="9"/>
<UsageCount Value="82"/> <UsageCount Value="83"/>
</Unit3> </Unit3>
<Unit4> <Unit4>
<Filename Value="D:\Lazarusprojects\golfml\egacalculator\source\umainform.pas"/> <Filename Value="D:\Lazarusprojects\golfml\egacalculator\source\umainform.pas"/>
@ -155,9 +155,9 @@
<Filename Value="C:\NewPascalDarwin\lazarus\ide\lazarus.pp"/> <Filename Value="C:\NewPascalDarwin\lazarus\ide\lazarus.pp"/>
<UnitName Value="Lazarus"/> <UnitName Value="Lazarus"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="63"/> <TopLine Value="108"/>
<CursorPos X="21" Y="94"/> <CursorPos Y="154"/>
<UsageCount Value="9"/> <UsageCount Value="10"/>
</Unit17> </Unit17>
<Unit18> <Unit18>
<Filename Value="D:\lazarustrunk\common_components\kcontrols_1.7\source\kmemo.pas"/> <Filename Value="D:\lazarustrunk\common_components\kcontrols_1.7\source\kmemo.pas"/>
@ -352,20 +352,32 @@
</Unit44> </Unit44>
<Unit45> <Unit45>
<Filename Value="C:\trunklatest\lazarus\lcl\include\customform.inc"/> <Filename Value="C:\trunklatest\lazarus\lcl\include\customform.inc"/>
<EditorIndex Value="1"/> <EditorIndex Value="-1"/>
<TopLine Value="910"/> <TopLine Value="910"/>
<CursorPos Y="932"/> <CursorPos Y="932"/>
<UsageCount Value="30"/> <UsageCount Value="30"/>
<Loaded Value="True"/>
</Unit45> </Unit45>
<Unit46> <Unit46>
<Filename Value="C:\trunklatest\fpc\packages\fcl-base\src\fileinfo.pp"/> <Filename Value="C:\trunklatest\fpc\packages\fcl-base\src\fileinfo.pp"/>
<EditorIndex Value="2"/> <EditorIndex Value="1"/>
<TopLine Value="88"/> <TopLine Value="88"/>
<CursorPos X="26" Y="110"/> <CursorPos X="26" Y="110"/>
<UsageCount Value="29"/> <UsageCount Value="30"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit46> </Unit46>
<Unit47>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\interfaces\fpgui\fpguiint.pp"/>
<EditorIndex Value="-1"/>
<TopLine Value="9"/>
<CursorPos X="39" Y="35"/>
<UsageCount Value="10"/>
</Unit47>
<Unit48>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\interfaces\fpgui\fpguiwsprivate.pp"/>
<EditorIndex Value="-1"/>
<CursorPos X="29" Y="1099"/>
<UsageCount Value="10"/>
</Unit48>
</Units> </Units>
<OtherDefines Count="1"> <OtherDefines Count="1">
<Define0 Value="IGNOREPICTURE"/> <Define0 Value="IGNOREPICTURE"/>
@ -373,123 +385,123 @@
<JumpHistory Count="30" HistoryIndex="29"> <JumpHistory Count="30" HistoryIndex="29">
<Position1> <Position1>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="774" TopLine="753"/> <Caret Line="778" TopLine="766"/>
</Position1> </Position1>
<Position2> <Position2>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="775" Column="44" TopLine="753"/> <Caret Line="779" TopLine="766"/>
</Position2> </Position2>
<Position3> <Position3>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="815" TopLine="778"/> <Caret Line="780" TopLine="766"/>
</Position3> </Position3>
<Position4> <Position4>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="813" TopLine="781"/> <Caret Line="770" TopLine="762"/>
</Position4> </Position4>
<Position5> <Position5>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="777" TopLine="755"/> <Caret Line="771" TopLine="762"/>
</Position5> </Position5>
<Position6> <Position6>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="805" Column="17" TopLine="779"/> <Caret Line="772" TopLine="762"/>
</Position6> </Position6>
<Position7> <Position7>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="777" Column="5" TopLine="755"/> <Caret Line="793" Column="10" TopLine="762"/>
</Position7> </Position7>
<Position8> <Position8>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="813" TopLine="792"/> <Caret Line="840" Column="27" TopLine="779"/>
</Position8> </Position8>
<Position9> <Position9>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="794" Column="7" TopLine="773"/> <Caret Line="226" TopLine="193"/>
</Position9> </Position9>
<Position10> <Position10>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="813" TopLine="776"/> <Caret Line="1266" Column="35" TopLine="1186"/>
</Position10> </Position10>
<Position11> <Position11>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="814" TopLine="777"/> <Caret Line="1000" TopLine="975"/>
</Position11> </Position11>
<Position12> <Position12>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="804" Column="34" TopLine="783"/> <Caret Line="771" Column="29" TopLine="745"/>
</Position12> </Position12>
<Position13> <Position13>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="813" TopLine="783"/> <Caret Line="66" Column="58" TopLine="91"/>
</Position13> </Position13>
<Position14> <Position14>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="814" TopLine="783"/> <Caret Line="194" Column="59" TopLine="666"/>
</Position14> </Position14>
<Position15> <Position15>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="772" Column="14" TopLine="759"/> <Caret Line="196" Column="27" TopLine="186"/>
</Position15> </Position15>
<Position16> <Position16>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="821" TopLine="760"/> <Caret Line="1190" Column="24" TopLine="1167"/>
</Position16> </Position16>
<Position17> <Position17>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="772" TopLine="760"/> <Caret Line="878" TopLine="847"/>
</Position17> </Position17>
<Position18> <Position18>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="777" TopLine="766"/> <Caret Line="910" Column="48" TopLine="888"/>
</Position18> </Position18>
<Position19> <Position19>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="778" TopLine="766"/> <Caret Line="877" Column="12" TopLine="851"/>
</Position19> </Position19>
<Position20> <Position20>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="779" TopLine="766"/> <Caret Line="215" Column="15" TopLine="515"/>
</Position20> </Position20>
<Position21> <Position21>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="780" TopLine="766"/> <Caret Line="1182" Column="3" TopLine="1141"/>
</Position21> </Position21>
<Position22> <Position22>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="770" TopLine="762"/> <Caret Line="856" Column="71" TopLine="855"/>
</Position22> </Position22>
<Position23> <Position23>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="771" TopLine="762"/> <Caret Line="1232" Column="13" TopLine="1208"/>
</Position23> </Position23>
<Position24> <Position24>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="772" TopLine="762"/> <Caret Line="1032" Column="23" TopLine="1030"/>
</Position24> </Position24>
<Position25> <Position25>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="793" Column="10" TopLine="762"/> <Caret Line="855" Column="68" TopLine="826"/>
</Position25> </Position25>
<Position26> <Position26>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="840" Column="27" TopLine="779"/> <Caret Line="1050" Column="4" TopLine="1025"/>
</Position26> </Position26>
<Position27> <Position27>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="226" TopLine="193"/> <Caret Line="857" Column="58" TopLine="841"/>
</Position27> </Position27>
<Position28> <Position28>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="1266" Column="35" TopLine="1186"/> <Caret Line="1230" Column="15" TopLine="1214"/>
</Position28> </Position28>
<Position29> <Position29>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="1000" TopLine="975"/> <Caret Line="877" TopLine="853"/>
</Position29> </Position29>
<Position30> <Position30>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="771" Column="29" TopLine="745"/> <Caret Line="898" Column="17" TopLine="887"/>
</Position30> </Position30>
</JumpHistory> </JumpHistory>
</ProjectSession> </ProjectSession>

View File

@ -144,6 +144,10 @@ msgstr "&Help"
msgid "About.." msgid "About.."
msgstr "About.." msgstr "About.."
#: tfrmmain.mnu_helpautoloadlastfile.caption
msgid "Auto-load last saved file"
msgstr ""
#: tfrmmain.mnu_helpdisablewarnings.caption #: tfrmmain.mnu_helpdisablewarnings.caption
msgid "Disable warnings" msgid "Disable warnings"
msgstr "Disable warnings" msgstr "Disable warnings"

View File

@ -145,6 +145,10 @@ msgstr "&Ayuda"
msgid "About.." msgid "About.."
msgstr "Acerca de.." msgstr "Acerca de.."
#: tfrmmain.mnu_helpautoloadlastfile.caption
msgid "Auto-load last saved file"
msgstr "Carga automática último archivo guardado"
#: tfrmmain.mnu_helpdisablewarnings.caption #: tfrmmain.mnu_helpdisablewarnings.caption
msgid "Disable warnings" msgid "Disable warnings"
msgstr "Deshabilitar advertencias" msgstr "Deshabilitar advertencias"
@ -376,4 +380,3 @@ msgstr "¿Quieres copiar %s a la carpeta %s?"
#: umain.rsyoumayneedto #: umain.rsyoumayneedto
msgid "(You may need to restart the app to see the change)" msgid "(You may need to restart the app to see the change)"
msgstr "(Quizás necesites reiniciar la aplicación para ver los cambios)" msgstr "(Quizás necesites reiniciar la aplicación para ver los cambios)"

View File

@ -133,6 +133,10 @@ msgstr ""
msgid "About.." msgid "About.."
msgstr "" msgstr ""
#: tfrmmain.mnu_helpautoloadlastfile.caption
msgid "Auto-load last saved file"
msgstr ""
#: tfrmmain.mnu_helpdisablewarnings.caption #: tfrmmain.mnu_helpdisablewarnings.caption
msgid "Disable warnings" msgid "Disable warnings"
msgstr "" msgstr ""

View File

@ -1,7 +1,7 @@
object frmMain: TfrmMain object frmMain: TfrmMain
Left = 450 Left = 930
Height = 398 Height = 398
Top = 207 Top = 221
Width = 618 Width = 618
Anchors = [] Anchors = []
BorderIcons = [biSystemMenu] BorderIcons = [biSystemMenu]
@ -250,6 +250,11 @@ object frmMain: TfrmMain
Caption = 'Disable warnings' Caption = 'Disable warnings'
OnClick = mnu_helpDisableWarningsClick OnClick = mnu_helpDisableWarningsClick
end end
object mnu_helpAutoloadLastFile: TMenuItem
AutoCheck = True
Caption = 'Auto-load last saved file'
OnClick = mnu_helpAutoloadLastFileClick
end
object mnu_lang: TMenuItem object mnu_lang: TMenuItem
Caption = 'Languages..' Caption = 'Languages..'
object mnu_lang_en: TMenuItem object mnu_lang_en: TMenuItem

View File

@ -26,6 +26,7 @@
{"hash":2812976,"name":"tfrmmain.mnu_help.caption","sourcebytes":[38,72,101,108,112],"value":"&Help"}, {"hash":2812976,"name":"tfrmmain.mnu_help.caption","sourcebytes":[38,72,101,108,112],"value":"&Help"},
{"hash":186260755,"name":"tfrmmain.mnu_helpshowhints.caption","sourcebytes":[83,104,111,119,32,80,111,112,117,112,32,72,105,110,116,115],"value":"Show Popup Hints"}, {"hash":186260755,"name":"tfrmmain.mnu_helpshowhints.caption","sourcebytes":[83,104,111,119,32,80,111,112,117,112,32,72,105,110,116,115],"value":"Show Popup Hints"},
{"hash":253903779,"name":"tfrmmain.mnu_helpdisablewarnings.caption","sourcebytes":[68,105,115,97,98,108,101,32,119,97,114,110,105,110,103,115],"value":"Disable warnings"}, {"hash":253903779,"name":"tfrmmain.mnu_helpdisablewarnings.caption","sourcebytes":[68,105,115,97,98,108,101,32,119,97,114,110,105,110,103,115],"value":"Disable warnings"},
{"hash":213647893,"name":"tfrmmain.mnu_helpautoloadlastfile.caption","sourcebytes":[65,117,116,111,45,108,111,97,100,32,108,97,115,116,32,115,97,118,101,100,32,102,105,108,101],"value":"Auto-load last saved file"},
{"hash":187646702,"name":"tfrmmain.mnu_lang.caption","sourcebytes":[76,97,110,103,117,97,103,101,115,46,46],"value":"Languages.."}, {"hash":187646702,"name":"tfrmmain.mnu_lang.caption","sourcebytes":[76,97,110,103,117,97,103,101,115,46,46],"value":"Languages.."},
{"hash":206450904,"name":"tfrmmain.mnu_lang_en.caption","sourcebytes":[69,110,103,108,105,115,104],"value":"English"}, {"hash":206450904,"name":"tfrmmain.mnu_lang_en.caption","sourcebytes":[69,110,103,108,105,115,104],"value":"English"},
{"hash":174974108,"name":"tfrmmain.mnu_lang_es.caption","sourcebytes":[69,115,112,97,195,177,111,108],"value":"Espa\u00F1ol"}, {"hash":174974108,"name":"tfrmmain.mnu_lang_es.caption","sourcebytes":[69,115,112,97,195,177,111,108],"value":"Espa\u00F1ol"},

View File

@ -64,7 +64,8 @@ unit umain;
0.2.3.0: ResourceStrings Updated (minesadorada) 0.2.3.0: ResourceStrings Updated (minesadorada)
0.2.4.0: Bugfix: regression error: DisableInOPM (minesadorada) 0.2.4.0: Bugfix: regression error: DisableInOPM (minesadorada)
0.2.5.0: BugFix: regression error: CreateUniqueINIFile (minesadorada) 0.2.5.0: BugFix: regression error: CreateUniqueINIFile (minesadorada)
0.2.6.0: ?? 0.2.6.0: Added feature - Help menu/AutoLoad Last File
0.2.7.0: ??
} }
{$mode objfpc}{$H+} {$mode objfpc}{$H+}
@ -78,7 +79,7 @@ uses
lclintf, lclVersion, LResources, Spin, {$IFDEF PO_BUILTINRES}LazUTF8Classes{$ENDIF}; lclintf, lclVersion, LResources, Spin, {$IFDEF PO_BUILTINRES}LazUTF8Classes{$ENDIF};
const const
C_DEBUGMESSAGES = False; C_DEBUGMESSAGES = False; // TRUE ONLY IN DEV MODE!
type type
@ -152,6 +153,7 @@ type
MainMenu1: TMainMenu; MainMenu1: TMainMenu;
FileMenu: TMenuItem; FileMenu: TMenuItem;
LoadItem: TMenuItem; LoadItem: TMenuItem;
mnu_helpAutoloadLastFile: TMenuItem;
mnu_fileExit: TMenuItem; mnu_fileExit: TMenuItem;
mnu_fileNew: TMenuItem; mnu_fileNew: TMenuItem;
mnu_helpDisableWarnings: TMenuItem; mnu_helpDisableWarnings: TMenuItem;
@ -180,6 +182,7 @@ type
procedure mnu_fileNewClick(Sender: TObject); procedure mnu_fileNewClick(Sender: TObject);
procedure mnu_fileSaveClick(Sender: TObject); procedure mnu_fileSaveClick(Sender: TObject);
procedure mnu_helpAboutClick(Sender: TObject); procedure mnu_helpAboutClick(Sender: TObject);
procedure mnu_helpAutoloadLastFileClick(Sender: TObject);
procedure mnu_helpDisableWarningsClick(Sender: TObject); procedure mnu_helpDisableWarningsClick(Sender: TObject);
procedure mnu_helpShowHintsClick(Sender: TObject); procedure mnu_helpShowHintsClick(Sender: TObject);
procedure mnu_lang_enClick(Sender: TObject); procedure mnu_lang_enClick(Sender: TObject);
@ -190,7 +193,8 @@ type
private private
{ private declarations } { private declarations }
JSONPackage: TUpdatePackage; JSONPackage: TUpdatePackage;
bForceSaveAs, bShowPopupHints, bDisableWarnings, bDirty, bIsVirgin: boolean; bForceSaveAs, bShowPopupHints, bDisableWarnings,bAutoLoadLast,
bDirty, bIsVirgin: boolean;
sJSONFilePath: string; sJSONFilePath: string;
sUpdateDirectory, sZipDirectory: string; sUpdateDirectory, sZipDirectory: string;
slErrorList: TStrings; slErrorList: TStrings;
@ -210,6 +214,7 @@ type
ArrayLblPackageInternalVersion: array of TLabel; ArrayLblPackageInternalVersion: array of TLabel;
// End of Package Information controls // End of Package Information controls
iNumLpkFilesVisible: integer; iNumLpkFilesVisible: integer;
procedure LoadJSONFromFile(sFileName:String);
procedure AddPackageFileToList; procedure AddPackageFileToList;
procedure RemovePackageFileFromList; procedure RemovePackageFileFromList;
procedure ResetPackageFileControlsToOne; procedure ResetPackageFileControlsToOne;
@ -846,6 +851,13 @@ begin
bIsVirgin := CFG.ReadBool('Options', 'Virgin', True); bIsVirgin := CFG.ReadBool('Options', 'Virgin', True);
bShowPopupHints := bIsVirgin; bShowPopupHints := bIsVirgin;
mnu_helpShowHints.Checked := bShowPopupHints; mnu_helpShowHints.Checked := bShowPopupHints;
// On startup, default to FALSE
bAutoLoadLast:=CFG.ReadBool('Options', 'AutoLoadLastFile',FALSE);
mnu_helpAutoloadLastFile.Checked:=bAutoLoadLast;
sJSONFilePath:=CFG.ReadString('Options','LastSavedJSON','unknown');
if C_DEBUGMESSAGES = True then // Dev only
ShowMessage(sJSONFilePath);
// Override here if the user has re-enabled them // Override here if the user has re-enabled them
bShowPopupHints := CFG.ReadBool('Options', 'ShowPopupHints', bShowPopupHints); bShowPopupHints := CFG.ReadBool('Options', 'ShowPopupHints', bShowPopupHints);
mnu_helpShowHints.Checked := bShowPopupHints; mnu_helpShowHints.Checked := bShowPopupHints;
@ -878,24 +890,20 @@ procedure TfrmMain.FormShow(Sender: TObject);
begin begin
bDirty := False; bDirty := False;
AddPackageFileToList; AddPackageFileToList;
end; If sJSONFilePath <> 'unknown' then
If (FileExistsUTF8(sJSONFilePath)) AND (bAutoLoadLast=TRUE) then
LoadJSONFromFile(sJSONFilePath);
procedure TfrmMain.LoadItemClick(Sender: TObject); end;
procedure TfrmMain.LoadJSONFromFile(sFileName:String);
var var
i: integer; i: integer;
Quad: TVersionQuad; Quad: TVersionQuad;
begin begin
FileOpen1.Dialog.InitialDir := ResetPackageFileControlsToOne; // So iNumLpkFilesVisible=1
CFG.ReadString('Options', 'LastLoadedJSONPath', sUpdateDirectory); JSONPackage := TUpdatePackage.Create;
FileOpen1.Dialog.Filter := 'JSON|*.json';
if FileOpen1.Dialog.Execute then
begin
ResetPackageFileControlsToOne; // So iNumLpkFilesVisible=1
sJSONFilePath := FileOpen1.Dialog.Filename;
CFG.WriteString('Options', 'LastLoadedJSONPath', ExtractFileDir(sJSONFilePath));
JSONPackage := TUpdatePackage.Create;
try try
if JSONPackage.LoadFromFile(FileOpen1.Dialog.FileName) then if JSONPackage.LoadFromFile(sFileName) then
begin begin
edt_UpdateZipName.Text := JSONPackage.UpdatePackageData.Name; edt_UpdateZipName.Text := JSONPackage.UpdatePackageData.Name;
edt_DownloadZipURL.Text := JSONPackage.UpdatePackageData.DownloadZipURL; edt_DownloadZipURL.Text := JSONPackage.UpdatePackageData.DownloadZipURL;
@ -934,10 +942,23 @@ begin
end end
else else
ShowMessageFmt(rsThereWasAPro, ShowMessageFmt(rsThereWasAPro,
[ExtractFilename(FileOpen1.Dialog.FileName)]); [ExtractFilename(sFileName)]);
finally finally
JSONPackage.Free; JSONPackage.Free;
end; end;
end;
procedure TfrmMain.LoadItemClick(Sender: TObject);
begin
FileOpen1.Dialog.InitialDir :=
CFG.ReadString('Options', 'LastLoadedJSONPath', sUpdateDirectory);
FileOpen1.Dialog.Filter := 'JSON|*.json';
if FileOpen1.Dialog.Execute then
begin
sJSONFilePath := FileOpen1.Dialog.Filename;
CFG.WriteString('Options', 'LastLoadedJSONPath', ExtractFileDir(sJSONFilePath));
ResetPackageFileControlsToOne; // So iNumLpkFilesVisible=1
LoadJSONFromFile(sJSONFilePath);
end; end;
end; end;
@ -1009,6 +1030,13 @@ begin
MessageDlg(rsAbout + ' ' + Application.Title, s, mtInformation, [mbOK], 0); MessageDlg(rsAbout + ' ' + Application.Title, s, mtInformation, [mbOK], 0);
end; end;
procedure TfrmMain.mnu_helpAutoloadLastFileClick(Sender: TObject);
begin
bAutoLoadLast:= NOT bAutoLoadLast;
mnu_helpAutoloadLastFile.Checked:=bAutoLoadLast;
CFG.WriteBool('Options', 'AutoLoadLastFile',bAutoLoadLast);
end;
procedure TfrmMain.mnu_helpDisableWarningsClick(Sender: TObject); procedure TfrmMain.mnu_helpDisableWarningsClick(Sender: TObject);
begin begin
bDisableWarnings := not bDisableWarnings; bDisableWarnings := not bDisableWarnings;
@ -1177,8 +1205,11 @@ begin
FileSaveAs1.Dialog.InitialDir := sUpdateDirectory; FileSaveAs1.Dialog.InitialDir := sUpdateDirectory;
FileSaveAs1.Dialog.FileName := FileSaveAs1.Dialog.FileName :=
'update_' + ExtractFilenameOnly(edt_UpdateZipName.Text) + '.json'; 'update_' + ExtractFilenameOnly(edt_UpdateZipName.Text) + '.json';
if FileSaveAs1.Dialog.Execute then if FileSaveAs1.Dialog.Execute then
sJSONFilePath := FileSaveAs1.Dialog.FileName begin
sJSONFilePath := FileSaveAs1.Dialog.FileName;
end
else else
Exit; Exit;
end; end;
@ -1207,11 +1238,17 @@ begin
if MessageDlg(rsOverwrite + ' ' + sJSONFilePath + '?', mtConfirmation, if MessageDlg(rsOverwrite + ' ' + sJSONFilePath + '?', mtConfirmation,
[mbYes, mbNo], 0, mbYes) = mrYes then [mbYes, mbNo], 0, mbYes) = mrYes then
if JSONPackage.SaveToFile(sJSONFilePath) then if JSONPackage.SaveToFile(sJSONFilePath) then
ShowMessage(sJSONFilePath + ' ' + rsSavedOK); begin
ShowMessage(sJSONFilePath + ' ' + rsSavedOK);
CFG.WriteString('Options','LastSavedJSON',sJSONFilePath);
end;
end end
else else
if JSONPackage.SaveToFile(sJSONFilePath) then if JSONPackage.SaveToFile(sJSONFilePath) then
ShowMessage(sJSONFilePath + rsSavedOK) begin
ShowMessage(sJSONFilePath + rsSavedOK);
CFG.WriteString('Options','LastSavedJSON',sJSONFilePath);
end
else else
ShowMessage(rsSaveUnsucces); ShowMessage(rsSaveUnsucces);
bDirty := False; bDirty := False;