To 0.2.0.0: Refactored GUI

Loads and Saves OK


git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5469 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
gbamber
2016-12-13 12:31:40 +00:00
parent d92495fe69
commit 7f66fa00d3
9 changed files with 734 additions and 497 deletions

View File

@ -27,8 +27,7 @@
<VersionInfo> <VersionInfo>
<UseVersionInfo Value="True"/> <UseVersionInfo Value="True"/>
<AutoIncrementBuild Value="True"/> <AutoIncrementBuild Value="True"/>
<MinorVersionNr Value="1"/> <MinorVersionNr Value="2"/>
<RevisionNr Value="19"/>
<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">
@ -252,7 +251,7 @@
<PackageName Value="LCL"/> <PackageName Value="LCL"/>
</Item1> </Item1>
</RequiredPackages> </RequiredPackages>
<Units Count="3"> <Units Count="4">
<Unit0> <Unit0>
<Filename Value="jsonpackage.lpr"/> <Filename Value="jsonpackage.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
@ -268,6 +267,11 @@
<Filename Value="ugenericcollection.pas"/> <Filename Value="ugenericcollection.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
</Unit2> </Unit2>
<Unit3>
<Filename Value="C:\NewPascal\projects\MDSUM\CryptINI\lockini.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="LockIni"/>
</Unit3>
</Units> </Units>
</ProjectOptions> </ProjectOptions>
<CompilerOptions> <CompilerOptions>

View File

@ -3,14 +3,14 @@
<ProjectSession> <ProjectSession>
<PathDelim Value="\"/> <PathDelim Value="\"/>
<Version Value="10"/> <Version Value="10"/>
<BuildModes Active="Win64"/> <BuildModes Active="DEBUG Win64"/>
<Units Count="34"> <Units Count="47">
<Unit0> <Unit0>
<Filename Value="jsonpackage.lpr"/> <Filename Value="jsonpackage.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<EditorIndex Value="5"/> <EditorIndex Value="3"/>
<CursorPos Y="30"/> <CursorPos X="15" Y="19"/>
<UsageCount Value="84"/> <UsageCount Value="128"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit0> </Unit0>
<Unit1> <Unit1>
@ -20,12 +20,13 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<IsVisibleTab Value="True"/> <IsVisibleTab Value="True"/>
<TopLine Value="403"/> <TopLine Value="40"/>
<CursorPos X="43" Y="421"/> <CursorPos X="26" Y="65"/>
<UsageCount Value="84"/> <UsageCount Value="128"/>
<Bookmarks Count="2"> <Bookmarks Count="3">
<Item0 Y="552" ID="1"/> <Item0 Y="819" ID="1"/>
<Item1 Y="836"/> <Item1 X="44" Y="765"/>
<Item2 Y="631" ID="2"/>
</Bookmarks> </Bookmarks>
<Loaded Value="True"/> <Loaded Value="True"/>
<LoadedDesigner Value="True"/> <LoadedDesigner Value="True"/>
@ -33,9 +34,17 @@
<Unit2> <Unit2>
<Filename Value="ugenericcollection.pas"/> <Filename Value="ugenericcollection.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UsageCount Value="84"/> <UsageCount Value="128"/>
</Unit2> </Unit2>
<Unit3> <Unit3>
<Filename Value="C:\NewPascal\projects\MDSUM\CryptINI\lockini.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="LockIni"/>
<EditorIndex Value="-1"/>
<CursorPos X="40" Y="9"/>
<UsageCount Value="46"/>
</Unit3>
<Unit4>
<Filename Value="D:\Lazarusprojects\golfml\egacalculator\source\umainform.pas"/> <Filename Value="D:\Lazarusprojects\golfml\egacalculator\source\umainform.pas"/>
<ComponentName Value="mainform"/> <ComponentName Value="mainform"/>
<HasResources Value="True"/> <HasResources Value="True"/>
@ -43,174 +52,174 @@
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="541"/> <TopLine Value="541"/>
<CursorPos X="3" Y="544"/> <CursorPos X="3" Y="544"/>
<UsageCount Value="12"/> <UsageCount Value="10"/>
</Unit3>
<Unit4>
<Filename Value="D:\Lazarusprojects\MDSUM\CryptINI\trunk\cryptinilpk\cryptini.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="9"/>
</Unit4> </Unit4>
<Unit5> <Unit5>
<Filename Value="D:\Lazarusprojects\MDSUM\CryptINI\trunk\cryptinilpk\cryptini.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="7"/>
</Unit5>
<Unit6>
<Filename Value="D:\Lazarusprojects\MDSUM\CryptINI\trunk\latest_stable\cryptinilpk\ucryptini.pas"/> <Filename Value="D:\Lazarusprojects\MDSUM\CryptINI\trunk\latest_stable\cryptinilpk\ucryptini.pas"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="1376"/> <TopLine Value="1376"/>
<CursorPos X="55" Y="1411"/> <CursorPos X="55" Y="1411"/>
<UsageCount Value="14"/> <UsageCount Value="12"/>
</Unit5> </Unit6>
<Unit6> <Unit7>
<Filename Value="..\..\lazarus\lcl\defaulttranslator.pas"/> <Filename Value="..\..\lazarus\lcl\defaulttranslator.pas"/>
<UnitName Value="DefaultTranslator"/> <UnitName Value="DefaultTranslator"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<CursorPos X="53" Y="29"/> <CursorPos X="53" Y="29"/>
<UsageCount Value="13"/> <UsageCount Value="11"/>
</Unit6> </Unit7>
<Unit7> <Unit8>
<Filename Value="..\..\lazarus\lcl\lcltranslator.pas"/> <Filename Value="..\..\lazarus\lcl\lcltranslator.pas"/>
<UnitName Value="LCLTranslator"/> <UnitName Value="LCLTranslator"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="517"/> <TopLine Value="517"/>
<UsageCount Value="13"/> <UsageCount Value="11"/>
</Unit7> </Unit8>
<Unit8> <Unit9>
<Filename Value="..\..\NewPascal\lazarus\packager\registration\registerfcl.pas"/> <Filename Value="..\..\NewPascal\lazarus\packager\registration\registerfcl.pas"/>
<UnitName Value="RegisterFCL"/> <UnitName Value="RegisterFCL"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="24"/> <TopLine Value="24"/>
<CursorPos X="42" Y="37"/> <CursorPos X="42" Y="37"/>
<UsageCount Value="9"/> <UsageCount Value="7"/>
</Unit8> </Unit9>
<Unit9> <Unit10>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_mainfrm.pas"/> <Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_mainfrm.pas"/>
<HasResources Value="True"/> <HasResources Value="True"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="22"/> <TopLine Value="22"/>
<CursorPos X="12" Y="23"/> <CursorPos X="12" Y="23"/>
<UsageCount Value="9"/> <UsageCount Value="7"/>
</Unit9> </Unit10>
<Unit10> <Unit11>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_mainfrm.lfm"/> <Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_mainfrm.lfm"/>
<ComponentName Value="MainFrm"/> <ComponentName Value="MainFrm"/>
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<CursorPos X="6"/> <CursorPos X="6"/>
<UsageCount Value="9"/> <UsageCount Value="7"/>
<DefaultSyntaxHighlighter Value="LFM"/> <DefaultSyntaxHighlighter Value="LFM"/>
</Unit10> </Unit11>
<Unit11> <Unit12>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\grids.pas"/> <Filename Value="C:\NewPascalDarwin\lazarus\lcl\grids.pas"/>
<UnitName Value="Grids"/> <UnitName Value="Grids"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="10428"/> <TopLine Value="10428"/>
<CursorPos X="33" Y="10448"/> <CursorPos X="33" Y="10448"/>
<UsageCount Value="16"/> <UsageCount Value="14"/>
</Unit11>
<Unit12>
<Filename Value="C:\NewPascalDarwin\fpc\rtl\objpas\classes\classesh.inc"/>
<EditorIndex Value="3"/>
<TopLine Value="1563"/>
<CursorPos X="14" Y="1794"/>
<UsageCount Value="15"/>
<Loaded Value="True"/>
</Unit12> </Unit12>
<Unit13> <Unit13>
<Filename Value="C:\NewPascalDarwin\fpc\rtl\objpas\classes\classesh.inc"/>
<EditorIndex Value="-1"/>
<TopLine Value="1563"/>
<CursorPos X="14" Y="1794"/>
<UsageCount Value="14"/>
</Unit13>
<Unit14>
<Filename Value="X:\MainForm\MainForm\umain.pas"/> <Filename Value="X:\MainForm\MainForm\umain.pas"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="200"/> <TopLine Value="200"/>
<CursorPos X="21" Y="383"/> <CursorPos X="21" Y="383"/>
<UsageCount Value="13"/> <UsageCount Value="11"/>
</Unit13> </Unit14>
<Unit14> <Unit15>
<Filename Value="D:\lazarustrunk\common_components\kcontrols_1.7\source\kgrids.pas"/> <Filename Value="D:\lazarustrunk\common_components\kcontrols_1.7\source\kgrids.pas"/>
<UnitName Value="KGrids"/> <UnitName Value="KGrids"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="5883"/> <TopLine Value="5883"/>
<CursorPos X="19" Y="5885"/> <CursorPos X="19" Y="5885"/>
<UsageCount Value="14"/> <UsageCount Value="12"/>
</Unit14> </Unit15>
<Unit15> <Unit16>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\lcltype.pp"/> <Filename Value="C:\NewPascalDarwin\lazarus\lcl\lcltype.pp"/>
<UnitName Value="LCLType"/> <UnitName Value="LCLType"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="1619"/> <TopLine Value="1619"/>
<CursorPos X="21" Y="1643"/> <CursorPos X="21" Y="1643"/>
<UsageCount Value="14"/> <UsageCount Value="12"/>
</Unit15> </Unit16>
<Unit16> <Unit17>
<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="63"/>
<CursorPos X="21" Y="94"/> <CursorPos X="21" Y="94"/>
<UsageCount Value="14"/> <UsageCount Value="12"/>
</Unit16> </Unit17>
<Unit17> <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"/>
<UnitName Value="KMemo"/> <UnitName Value="KMemo"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="1501"/> <TopLine Value="1501"/>
<CursorPos X="78" Y="1525"/> <CursorPos X="78" Y="1525"/>
<UsageCount Value="9"/> <UsageCount Value="7"/>
</Unit17>
<Unit18>
<Filename Value="D:\lazarustrunk\common_components\cryptini\ucryptini.pas"/>
<EditorIndex Value="-1"/>
<CursorPos X="30" Y="1045"/>
<UsageCount Value="10"/>
</Unit18> </Unit18>
<Unit19> <Unit19>
<Filename Value="D:\lazarustrunk\common_components\cryptini\ucryptini.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="1402"/>
<CursorPos X="74" Y="346"/>
<UsageCount Value="16"/>
</Unit19>
<Unit20>
<Filename Value="C:\NewPascalDarwin\lazarus\ide\revision.inc"/> <Filename Value="C:\NewPascalDarwin\lazarus\ide\revision.inc"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<CursorPos X="28" Y="2"/> <CursorPos X="28" Y="2"/>
<UsageCount Value="14"/> <UsageCount Value="12"/>
</Unit19> </Unit20>
<Unit20> <Unit21>
<Filename Value="D:\lazarustrunk\common_components\bgrabitmap-master\bgrabitmap\bgrasse.pas"/> <Filename Value="D:\lazarustrunk\common_components\bgrabitmap-master\bgrabitmap\bgrasse.pas"/>
<UnitName Value="BGRASSE"/> <UnitName Value="BGRASSE"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="405"/> <TopLine Value="405"/>
<CursorPos X="9" Y="429"/> <CursorPos X="9" Y="429"/>
<UsageCount Value="12"/> <UsageCount Value="10"/>
</Unit20> </Unit21>
<Unit21> <Unit22>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\translations.pas"/> <Filename Value="C:\NewPascalDarwin\lazarus\lcl\translations.pas"/>
<UnitName Value="Translations"/> <UnitName Value="Translations"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="76"/> <TopLine Value="76"/>
<CursorPos X="36" Y="82"/> <CursorPos X="36" Y="82"/>
<UsageCount Value="12"/>
</Unit21>
<Unit22>
<Filename Value="translate.lrs"/>
<EditorIndex Value="-1"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit22> </Unit22>
<Unit23> <Unit23>
<Filename Value="translate.lrs"/>
<EditorIndex Value="-1"/>
<UsageCount Value="8"/>
</Unit23>
<Unit24>
<Filename Value="C:\NewPascalDarwin\fpc\rtl\win\wininc\defines.inc"/> <Filename Value="C:\NewPascalDarwin\fpc\rtl\win\wininc\defines.inc"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<CursorPos X="64" Y="1204"/> <CursorPos X="64" Y="1204"/>
<UsageCount Value="10"/> <UsageCount Value="8"/>
</Unit23> </Unit24>
<Unit24> <Unit25>
<Filename Value="C:\trunklatest\fpc\rtl\objpas\fgl.pp"/> <Filename Value="C:\trunklatest\fpc\rtl\objpas\fgl.pp"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="1527"/> <TopLine Value="1527"/>
<CursorPos Y="1547"/> <CursorPos Y="1547"/>
<UsageCount Value="10"/> <UsageCount Value="8"/>
</Unit24> </Unit25>
<Unit25> <Unit26>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_updates.pas"/> <Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_updates.pas"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<CursorPos X="45" Y="8"/> <CursorPos X="45" Y="8"/>
<UsageCount Value="10"/> <UsageCount Value="8"/>
</Unit25> </Unit26>
<Unit26> <Unit27>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_options.pas"/> <Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_options.pas"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="70"/> <TopLine Value="70"/>
<UsageCount Value="10"/> <UsageCount Value="8"/>
</Unit26> </Unit27>
<Unit27> <Unit28>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_createrepositorypackage.pas"/> <Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_createrepositorypackage.pas"/>
<ComponentName Value="CreateRepositoryPackagesFrm"/> <ComponentName Value="CreateRepositoryPackagesFrm"/>
<HasResources Value="True"/> <HasResources Value="True"/>
@ -218,57 +227,138 @@
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="9"/> <TopLine Value="9"/>
<CursorPos X="26" Y="23"/> <CursorPos X="26" Y="23"/>
<UsageCount Value="10"/> <UsageCount Value="8"/>
</Unit27>
<Unit28>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_createrepositorypackage.lfm"/>
<EditorIndex Value="-1"/>
<UsageCount Value="10"/>
<DefaultSyntaxHighlighter Value="LFM"/>
</Unit28> </Unit28>
<Unit29> <Unit29>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_createrepositorypackage.lfm"/>
<EditorIndex Value="-1"/>
<UsageCount Value="8"/>
<DefaultSyntaxHighlighter Value="LFM"/>
</Unit29>
<Unit30>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_common.pas"/> <Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_common.pas"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<TopLine Value="212"/> <TopLine Value="212"/>
<CursorPos X="65" Y="218"/> <CursorPos X="65" Y="218"/>
<UsageCount Value="10"/> <UsageCount Value="8"/>
</Unit29>
<Unit30>
<Filename Value="C:\trunklatest\lazarus\ide\lazarus.pp"/>
<UnitName Value="Lazarus"/>
<EditorIndex Value="4"/>
<TopLine Value="116"/>
<CursorPos X="54" Y="133"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit30> </Unit30>
<Unit31> <Unit31>
<Filename Value="C:\trunklatest\lazarus\ide\lazarus.pp"/>
<UnitName Value="Lazarus"/>
<EditorIndex Value="-1"/>
<TopLine Value="101"/>
<CursorPos X="38" Y="51"/>
<UsageCount Value="10"/>
</Unit31>
<Unit32>
<Filename Value="C:\trunklatest\lazarus\components\pochecker\pocheckermain.pp"/> <Filename Value="C:\trunklatest\lazarus\components\pochecker\pocheckermain.pp"/>
<ComponentName Value="PoCheckerForm"/> <ComponentName Value="PoCheckerForm"/>
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<EditorIndex Value="-1"/> <EditorIndex Value="-1"/>
<CursorPos X="46" Y="18"/> <CursorPos X="46" Y="18"/>
<UsageCount Value="10"/> <UsageCount Value="8"/>
</Unit31>
<Unit32>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\controls.pp"/>
<UnitName Value="Controls"/>
<EditorIndex Value="2"/>
<TopLine Value="2131"/>
<CursorPos X="3" Y="1900"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit32> </Unit32>
<Unit33> <Unit33>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\controls.pp"/>
<UnitName Value="Controls"/>
<EditorIndex Value="-1"/>
<TopLine Value="2131"/>
<CursorPos X="3" Y="1900"/>
<UsageCount Value="9"/>
</Unit33>
<Unit34>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\stdctrls.pp"/> <Filename Value="C:\NewPascalDarwin\lazarus\lcl\stdctrls.pp"/>
<UnitName Value="StdCtrls"/> <UnitName Value="StdCtrls"/>
<EditorIndex Value="1"/> <EditorIndex Value="-1"/>
<TopLine Value="129"/> <TopLine Value="129"/>
<CursorPos X="38" Y="159"/> <CursorPos X="38" Y="159"/>
<UsageCount Value="10"/> <UsageCount Value="9"/>
</Unit34>
<Unit35>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_serializablepackages.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="219"/>
<CursorPos X="74" Y="222"/>
<UsageCount Value="14"/>
</Unit35>
<Unit36>
<Filename Value="C:\trunklatest\fpc\packages\fcl-base\src\inifiles.pp"/>
<UnitName Value="IniFiles"/>
<EditorIndex Value="-1"/>
<TopLine Value="1357"/>
<CursorPos X="31" Y="21"/>
<UsageCount Value="8"/>
</Unit36>
<Unit37>
<Filename Value="C:\trunklatest\lazarus\lcl\grids.pas"/>
<UnitName Value="Grids"/>
<EditorIndex Value="-1"/>
<TopLine Value="202"/>
<CursorPos X="20" Y="11529"/>
<UsageCount Value="15"/>
</Unit37>
<Unit38>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_packagelistfrm.pas"/>
<ComponentName Value="PackageListFrm"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<EditorIndex Value="-1"/>
<CursorPos X="28" Y="12"/>
<UsageCount Value="8"/>
</Unit38>
<Unit39>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_updates.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="299"/>
<CursorPos X="24" Y="319"/>
<UsageCount Value="9"/>
</Unit39>
<Unit40>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_packagedetailsfrm.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="9"/>
</Unit40>
<Unit41>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_common.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="9"/>
</Unit41>
<Unit42>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_downloader.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="9"/>
</Unit42>
<Unit43>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_visualtree.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="997"/>
<CursorPos X="57" Y="1024"/>
<UsageCount Value="9"/>
</Unit43>
<Unit44>
<Filename Value="C:\NewPascal\projects\MDSUM\CryptINI\latest_stable\ucryptini.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="363"/>
<CursorPos Y="378"/>
<UsageCount Value="20"/>
</Unit44>
<Unit45>
<Filename Value="C:\trunklatest\lazarus\lcl\include\customform.inc"/>
<EditorIndex Value="2"/>
<TopLine Value="992"/>
<CursorPos Y="1012"/>
<UsageCount Value="12"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit33> </Unit45>
<Unit46>
<Filename Value="C:\trunklatest\fpc\packages\fcl-base\src\fileinfo.pp"/>
<EditorIndex Value="1"/>
<TopLine Value="88"/>
<CursorPos X="26" Y="110"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit46>
</Units> </Units>
<OtherDefines Count="1"> <OtherDefines Count="1">
<Define0 Value="IGNOREPICTURE"/> <Define0 Value="IGNOREPICTURE"/>
@ -276,123 +366,123 @@
<JumpHistory Count="30" HistoryIndex="29"> <JumpHistory Count="30" HistoryIndex="29">
<Position1> <Position1>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="60" Column="56" TopLine="34"/> <Caret Line="612" Column="25" TopLine="589"/>
</Position1> </Position1>
<Position2> <Position2>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="433" Column="3" TopLine="428"/> <Caret Line="503" TopLine="478"/>
</Position2> </Position2>
<Position3> <Position3>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="960" Column="18" TopLine="952"/> <Caret Line="495" Column="35" TopLine="483"/>
</Position3> </Position3>
<Position4> <Position4>
<Filename Value="C:\trunklatest\lazarus\ide\lazarus.pp"/> <Filename Value="umain.pas"/>
<Caret Line="154" TopLine="116"/> <Caret Line="510" Column="21" TopLine="486"/>
</Position4> </Position4>
<Position5> <Position5>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="919" Column="60" TopLine="899"/> <Caret Line="480" Column="27" TopLine="471"/>
</Position5> </Position5>
<Position6> <Position6>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="921" Column="85" TopLine="902"/> <Caret Line="482" TopLine="455"/>
</Position6> </Position6>
<Position7> <Position7>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="923" TopLine="904"/> <Caret Line="414" Column="47" TopLine="402"/>
</Position7> </Position7>
<Position8> <Position8>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="882" Column="52" TopLine="866"/> <Caret Line="478" Column="56" TopLine="452"/>
</Position8> </Position8>
<Position9> <Position9>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="64" Column="36" TopLine="40"/> <Caret Line="496" Column="23" TopLine="465"/>
</Position9> </Position9>
<Position10> <Position10>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="332" TopLine="298"/> <Caret Line="558" Column="22" TopLine="532"/>
</Position10> </Position10>
<Position11> <Position11>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="309" Column="33" TopLine="294"/> <Caret Line="552" Column="56" TopLine="533"/>
</Position11> </Position11>
<Position12> <Position12>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="312" Column="33" TopLine="287"/> <Caret Line="551" TopLine="516"/>
</Position12> </Position12>
<Position13> <Position13>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="311" Column="52" TopLine="286"/> <Caret Line="826" Column="9" TopLine="806"/>
</Position13> </Position13>
<Position14> <Position14>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="310" Column="80" TopLine="286"/> <Caret Line="209" Column="44" TopLine="199"/>
</Position14> </Position14>
<Position15> <Position15>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="311" Column="82" TopLine="287"/> <Caret Line="206" Column="24" TopLine="193"/>
</Position15> </Position15>
<Position16> <Position16>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="307" Column="49" TopLine="287"/> <Caret Line="878" Column="3" TopLine="876"/>
</Position16> </Position16>
<Position17> <Position17>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="309" Column="40" TopLine="287"/> <Caret Line="841" Column="25" TopLine="817"/>
</Position17> </Position17>
<Position18> <Position18>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\stdctrls.pp"/> <Filename Value="umain.pas"/>
<Caret Line="159" Column="38" TopLine="129"/> <Caret Line="814" TopLine="811"/>
</Position18> </Position18>
<Position19> <Position19>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="311" Column="64" TopLine="287"/> <Caret Line="454" TopLine="436"/>
</Position19> </Position19>
<Position20> <Position20>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="315" Column="57" TopLine="293"/> <Caret Line="70" Column="54" TopLine="43"/>
</Position20> </Position20>
<Position21> <Position21>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="310" Column="75" TopLine="286"/> <Caret Line="909" TopLine="906"/>
</Position21> </Position21>
<Position22> <Position22>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="309" Column="72" TopLine="286"/> <Caret Line="846" Column="11" TopLine="827"/>
</Position22> </Position22>
<Position23> <Position23>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="312" Column="47" TopLine="288"/> <Caret Line="919" Column="40" TopLine="910"/>
</Position23> </Position23>
<Position24> <Position24>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="314" Column="57" TopLine="291"/> <Caret Line="850" Column="25" TopLine="824"/>
</Position24> </Position24>
<Position25> <Position25>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="313" Column="42" TopLine="291"/> <Caret Line="844" Column="42" TopLine="825"/>
</Position25> </Position25>
<Position26> <Position26>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="312" Column="67" TopLine="289"/> <Caret Line="852" TopLine="833"/>
</Position26> </Position26>
<Position27> <Position27>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="325" Column="68" TopLine="307"/> <Caret Line="1165" Column="49" TopLine="1153"/>
</Position27> </Position27>
<Position28> <Position28>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="331" Column="67" TopLine="312"/> <Caret Line="1113" Column="8" TopLine="1112"/>
</Position28> </Position28>
<Position29> <Position29>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="418" Column="71" TopLine="405"/> <Caret Line="850" TopLine="817"/>
</Position29> </Position29>
<Position30> <Position30>
<Filename Value="umain.pas"/> <Filename Value="umain.pas"/>
<Caret Line="53" Column="70" TopLine="32"/> <Caret Line="458" Column="25" TopLine="451"/>
</Position30> </Position30>
</JumpHistory> </JumpHistory>
</ProjectSession> </ProjectSession>

View File

@ -37,19 +37,9 @@ msgstr ""
"Remove Package File:\n" "Remove Package File:\n"
"Deletes the last entry from the list\n" "Deletes the last entry from the list\n"
#: tfrmmain.cbforcenotify.caption #: tfrmmain.chk_disableinopm.caption
msgid "Force Notify" msgid "Disable in OPM"
msgstr "Force Notify"
#: tfrmmain.cbforcenotify.hint
msgid ""
"Force Notify check box:\n"
"If this is checked the OPM user will be notified\n"
"of your update. Only check this if the update is important.\n"
msgstr "" msgstr ""
"Force Notify check box:\n"
"If this is checked the OPM user will be notified\n"
"of your update. Only check this if the update is important.\n"
#: tfrmmain.cmd_close.caption #: tfrmmain.cmd_close.caption
msgid "&Close" msgid "&Close"
@ -117,23 +107,14 @@ msgstr "Update Zip Name:"
msgid "Package Files:" msgid "Package Files:"
msgstr "Package Files:" msgstr "Package Files:"
#: tfrmmain.lbl_internalversion.caption
msgid "Internal Version"
msgstr "Internal Version"
#: tfrmmain.lbl_internalversion.hint
msgctxt "tfrmmain.lbl_internalversion.hint"
msgid ""
"Internal Version:\n"
"Increase internal version when you have made changes in the source. It works only combined with ForceNotify.\n"
msgstr ""
"Internal Version:\n"
"Increase internal version when you have made changes in the source. It works only combined with ForceNotify.\n"
#: tfrmmain.loaditem.caption #: tfrmmain.loaditem.caption
msgid "Load..." msgid "Load..."
msgstr "Load..." msgstr "Load..."
#: tfrmmain.mnu_fileexit.caption
msgid "E&xit"
msgstr ""
#: tfrmmain.mnu_filenew.caption #: tfrmmain.mnu_filenew.caption
msgid "New" msgid "New"
msgstr "New" msgstr "New"
@ -196,27 +177,6 @@ msgstr "Check URL"
msgid "Attempting to Open URL" msgid "Attempting to Open URL"
msgstr "Attempting to Open URL" msgstr "Attempting to Open URL"
#: tfrmmain.spin_internalversion.hint
msgctxt "tfrmmain.spin_internalversion.hint"
msgid ""
"Internal Version:\n"
"Increase internal version when you have made changes in the source. It works only combined with ForceNotify.\n"
msgstr ""
#: tfrmmain.stringpackagefiles.hint
msgid ""
"Package Files:\n"
"[Add]: to make a new entry\n"
"[Remove]: Remove last entry\n"
"lpk filename: i.e. mycontrol.lpk\n"
"Version: The FULL version (i.e. not 1.0 but 1.0.0.0)\n"
msgstr ""
"Package Files:\n"
"[Add]: to make a new entry\n"
"[Remove]: Remove last entry\n"
"lpk filename: i.e. mycontrol.lpk\n"
"Version: The FULL version (i.e. not 1.0 but 1.0.0.0)\n"
#: umain.rsabout #: umain.rsabout
msgid "About" msgid "About"
msgstr "About" msgstr "About"
@ -342,6 +302,7 @@ msgid "- Update zip name missing extension \".zip\""
msgstr "- Update zip name missing extension \".zip\"" msgstr "- Update zip name missing extension \".zip\""
#: umain.rsversion0000 #: umain.rsversion0000
msgctxt "umain.rsversion0000"
msgid "Version (n.n.n.n)" msgid "Version (n.n.n.n)"
msgstr "Version (n.n.n.n)" msgstr "Version (n.n.n.n)"
@ -360,3 +321,4 @@ msgstr "Would you like to copy %s to the %s folder?"
#: 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 "(You may need to restart the app to see the change)" msgstr "(You may need to restart the app to see the change)"

View File

@ -38,19 +38,9 @@ msgstr ""
"Quitar archivo de paquete:\n" "Quitar archivo de paquete:\n"
"Elimina la última entrada de la lista\n" "Elimina la última entrada de la lista\n"
#: tfrmmain.cbforcenotify.caption #: tfrmmain.chk_disableinopm.caption
msgid "Force Notify" msgid "Disable in OPM"
msgstr "Forzar Notificación"
#: tfrmmain.cbforcenotify.hint
msgid ""
"Force Notify check box:\n"
"If this is checked the OPM user will be notified\n"
"of your update. Only check this if the update is important.\n"
msgstr "" msgstr ""
"Forzar Notificación casilla de verificación:\n"
"Si esto es marcado el usuario del OPM será notificado\n"
"de tu actualización. Solo marca esto si la actualización es importante.\n"
#: tfrmmain.cmd_close.caption #: tfrmmain.cmd_close.caption
msgid "&Close" msgid "&Close"
@ -118,23 +108,14 @@ msgstr "Nombre del Zip de actualización:"
msgid "Package Files:" msgid "Package Files:"
msgstr "Archivos de Paquete:" msgstr "Archivos de Paquete:"
#: tfrmmain.lbl_internalversion.caption
msgid "Internal Version"
msgstr "Versión interna"
#: tfrmmain.lbl_internalversion.hint
msgctxt "tfrmmain.lbl_internalversion.hint"
msgid ""
"Internal Version:\n"
"Increase internal version when you have made changes in the source. It works only combined with ForceNotify.\n"
msgstr ""
"Versión interno:\n"
"Aumenta versión interna cuando se han hecho cambios en la fuente. Sólo funciona combina con ForceNotify.\n"
#: tfrmmain.loaditem.caption #: tfrmmain.loaditem.caption
msgid "Load..." msgid "Load..."
msgstr "Cargar..." msgstr "Cargar..."
#: tfrmmain.mnu_fileexit.caption
msgid "E&xit"
msgstr ""
#: tfrmmain.mnu_filenew.caption #: tfrmmain.mnu_filenew.caption
msgid "New" msgid "New"
msgstr "Nuevo" msgstr "Nuevo"
@ -197,27 +178,6 @@ msgstr "Verificar URL"
msgid "Attempting to Open URL" msgid "Attempting to Open URL"
msgstr "Intentando Abrir URL" msgstr "Intentando Abrir URL"
#: tfrmmain.spin_internalversion.hint
msgctxt "tfrmmain.spin_internalversion.hint"
msgid ""
"Internal Version:\n"
"Increase internal version when you have made changes in the source. It works only combined with ForceNotify.\n"
msgstr ""
#: tfrmmain.stringpackagefiles.hint
msgid ""
"Package Files:\n"
"[Add]: to make a new entry\n"
"[Remove]: Remove last entry\n"
"lpk filename: i.e. mycontrol.lpk\n"
"Version: The FULL version (i.e. not 1.0 but 1.0.0.0)\n"
msgstr ""
"Archivos de paquete:\n"
"[Agregar]: para crear una nueva entrada\n"
"[Quitar]: eliminar última entrada\n"
"Archivo .lpk: ejemplo micontrol.lpk\n"
"Versión: La versión COMPLETA (ejemplo no 1.0 pero si 1.0.0.0)\n"
#: umain.rsabout #: umain.rsabout
msgid "About" msgid "About"
msgstr "Acerca de" msgstr "Acerca de"
@ -343,6 +303,7 @@ msgid "- Update zip name missing extension \".zip\""
msgstr "- El nombre del zip no tiene la extensión \".zip\"" msgstr "- El nombre del zip no tiene la extensión \".zip\""
#: umain.rsversion0000 #: umain.rsversion0000
msgctxt "umain.rsversion0000"
msgid "Version (n.n.n.n)" msgid "Version (n.n.n.n)"
msgstr "Versión (n.n.n.n)" msgstr "Versión (n.n.n.n)"
@ -361,3 +322,4 @@ 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

@ -33,15 +33,8 @@ msgid ""
"Deletes the last entry from the list\n" "Deletes the last entry from the list\n"
msgstr "" msgstr ""
#: tfrmmain.cbforcenotify.caption #: tfrmmain.chk_disableinopm.caption
msgid "Force Notify" msgid "Disable in OPM"
msgstr ""
#: tfrmmain.cbforcenotify.hint
msgid ""
"Force Notify check box:\n"
"If this is checked the OPM user will be notified\n"
"of your update. Only check this if the update is important.\n"
msgstr "" msgstr ""
#: tfrmmain.cmd_close.caption #: tfrmmain.cmd_close.caption
@ -103,21 +96,14 @@ msgstr ""
msgid "Package Files:" msgid "Package Files:"
msgstr "" msgstr ""
#: tfrmmain.lbl_internalversion.caption
msgid "Internal Version"
msgstr ""
#: tfrmmain.lbl_internalversion.hint
msgctxt "tfrmmain.lbl_internalversion.hint"
msgid ""
"Internal Version:\n"
"Increase internal version when you have made changes in the source. It works only combined with ForceNotify.\n"
msgstr ""
#: tfrmmain.loaditem.caption #: tfrmmain.loaditem.caption
msgid "Load..." msgid "Load..."
msgstr "" msgstr ""
#: tfrmmain.mnu_fileexit.caption
msgid "E&xit"
msgstr ""
#: tfrmmain.mnu_filenew.caption #: tfrmmain.mnu_filenew.caption
msgid "New" msgid "New"
msgstr "" msgstr ""
@ -177,22 +163,6 @@ msgstr ""
msgid "Attempting to Open URL" msgid "Attempting to Open URL"
msgstr "" msgstr ""
#: tfrmmain.spin_internalversion.hint
msgctxt "tfrmmain.spin_internalversion.hint"
msgid ""
"Internal Version:\n"
"Increase internal version when you have made changes in the source. It works only combined with ForceNotify.\n"
msgstr ""
#: tfrmmain.stringpackagefiles.hint
msgid ""
"Package Files:\n"
"[Add]: to make a new entry\n"
"[Remove]: Remove last entry\n"
"lpk filename: i.e. mycontrol.lpk\n"
"Version: The FULL version (i.e. not 1.0 but 1.0.0.0)\n"
msgstr ""
#: umain.rsabout #: umain.rsabout
msgid "About" msgid "About"
msgstr "" msgstr ""
@ -318,6 +288,7 @@ msgid "- Update zip name missing extension \".zip\""
msgstr "" msgstr ""
#: umain.rsversion0000 #: umain.rsversion0000
msgctxt "umain.rsversion0000"
msgid "Version (n.n.n.n)" msgid "Version (n.n.n.n)"
msgstr "" msgstr ""

View File

@ -1,18 +1,17 @@
object frmMain: TfrmMain object frmMain: TfrmMain
Left = 503 Left = 588
Height = 425 Height = 330
Top = 226 Top = 157
Width = 339 Width = 613
AutoSize = True Anchors = []
BorderIcons = [biSystemMenu] BorderIcons = [biSystemMenu]
BorderStyle = bsSingle BorderStyle = bsSingle
BorderWidth = 8 BorderWidth = 8
ClientHeight = 405 ClientHeight = 310
ClientWidth = 339 ClientWidth = 613
DefaultMonitor = dmPrimary DefaultMonitor = dmPrimary
Menu = MainMenu1 Menu = MainMenu1
OnClick = mnu_fileSaveClick OnClick = mnu_fileSaveClick
OnClose = FormClose
OnCloseQuery = FormCloseQuery OnCloseQuery = FormCloseQuery
OnCreate = FormCreate OnCreate = FormCreate
OnDestroy = FormDestroy OnDestroy = FormDestroy
@ -29,13 +28,15 @@ object frmMain: TfrmMain
ParentColor = False ParentColor = False
end end
object editName: TEdit object editName: TEdit
AnchorSideLeft.Control = Owner
AnchorSideRight.Control = sb_editName AnchorSideRight.Control = sb_editName
Left = 8 Left = 12
Height = 23 Height = 23
Hint = 'Update Zip Name:'#13#10'This is just the filename (not including the path)'#13#10'of your update zip. Type, or click the [...]' Hint = 'Update Zip Name:'#13#10'This is just the filename (not including the path)'#13#10'of your update zip. Type, or click the [...]'
Top = 32 Top = 32
Width = 291 Width = 561
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 4
BorderSpacing.Right = 6 BorderSpacing.Right = 6
Color = clWindow Color = clWindow
TabOrder = 0 TabOrder = 0
@ -43,99 +44,87 @@ object frmMain: TfrmMain
object lblDownloadZipURL: TLabel object lblDownloadZipURL: TLabel
Left = 8 Left = 8
Height = 15 Height = 15
Top = 112 Top = 64
Width = 81 Width = 81
Caption = 'Download URL:' Caption = 'Download URL:'
ParentColor = False ParentColor = False
end end
object editDownloadZipURL: TEdit object editDownloadZipURL: TEdit
Left = 8 AnchorSideLeft.Control = Owner
AnchorSideRight.Control = spd_CheckURL
Left = 12
Height = 28 Height = 28
Hint = 'Download URL:'#13#10'Include the FULL url needed to download the package Zip file' Hint = 'Download URL:'#13#10'Include the FULL url needed to download the package Zip file'
Top = 136 Top = 88
Width = 322 Width = 411
Anchors = [akTop, akLeft, akRight]
AutoSize = False AutoSize = False
BorderSpacing.Left = 4
Color = clWindow Color = clWindow
TabOrder = 1 TabOrder = 1
end end
object lblPackageFiles: TLabel object lblPackageFiles: TLabel
AnchorSideRight.Control = btnAdd
Left = 8 Left = 8
Height = 15 Height = 15
Top = 173 Top = 130
Width = 73 Width = 399
Alignment = taRightJustify
Anchors = [akTop, akLeft, akRight]
AutoSize = False
BorderSpacing.Right = 8
Caption = 'Package Files:' Caption = 'Package Files:'
ParentColor = False ParentColor = False
end end
object stringPackageFiles: TStringGrid
Left = 8
Height = 144
Hint = 'Package Files:'#13#10'[Add]: to make a new entry'#13#10'[Remove]: Remove last entry'#13#10'lpk filename: i.e. mycontrol.lpk'#13#10'Version: The FULL version (i.e. not 1.0 but 1.0.0.0)'
Top = 208
Width = 323
Anchors = [akTop, akLeft, akRight]
AutoFillColumns = True
ColCount = 2
Columns = <
item
Title.Caption = ''
Width = 159
end
item
Title.Caption = ''
Width = 160
end>
FixedCols = 0
Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goEditing, goThumbTracking, goSmoothScroll]
RowCount = 1
TabOrder = 2
TitleStyle = tsNative
ColWidths = (
159
160
)
end
object btnAdd: TButton object btnAdd: TButton
AnchorSideRight.Control = btnRemove AnchorSideRight.Control = btnRemove
Left = 176 Left = 415
Height = 25 Height = 25
Hint = 'Add Package File:'#13#10'The update zip can contain more than one lpk file'#13#10'deployed to the same place.' Hint = 'Add Package File:'#13#10'The update zip can contain more than one lpk file'#13#10'deployed to the same place.'
Top = 173 Top = 128
Width = 65 Width = 97
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akRight]
BorderSpacing.Right = 5 BorderSpacing.Right = 8
Caption = 'Add' Caption = 'Add'
OnClick = btnAddClick OnClick = btnAddClick
TabOrder = 3 TabOrder = 2
end end
object btnRemove: TButton object btnRemove: TButton
Left = 246 Left = 520
Height = 25 Height = 25
Hint = 'Remove Package File:'#13#10'Deletes the last entry from the list' Hint = 'Remove Package File:'#13#10'Deletes the last entry from the list'
Top = 173 Top = 128
Width = 75 Width = 75
Anchors = [akTop, akRight] Anchors = [akTop]
BorderSpacing.Right = 8
Caption = 'Remove' Caption = 'Remove'
OnClick = btnRemoveClick OnClick = btnRemoveClick
TabOrder = 4 TabOrder = 3
end end
object cmd_Close: TBitBtn object cmd_Close: TBitBtn
Left = 253 Left = 520
Height = 30 Height = 30
Top = 368 Top = 270
Width = 76 Width = 83
Anchors = [akTop, akLeft, akRight] Anchors = []
BorderSpacing.Top = 30
BorderSpacing.Right = 10
Cancel = True Cancel = True
Caption = '&Close' Caption = '&Close'
Kind = bkClose Kind = bkClose
ModalResult = 11 ModalResult = 11
TabOrder = 5 OnClick = cmd_CloseClick
TabOrder = 4
end end
object cmd_save: TBitBtn object cmd_save: TBitBtn
Left = 134 AnchorSideTop.Control = btnAdd
Left = 269
Height = 30 Height = 30
Hint = 'Save the current configuration to disk'#13#10'as a JSON update file' Hint = 'Save the current configuration to disk'#13#10'as a JSON update file'
Top = 368 Top = 270
Width = 75 Width = 75
Anchors = []
BorderSpacing.Top = 30
Caption = '&Save' Caption = '&Save'
Default = True Default = True
Glyph.Data = { Glyph.Data = {
@ -175,10 +164,10 @@ object frmMain: TfrmMain
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00 FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
} }
OnClick = mnu_fileSaveClick OnClick = mnu_fileSaveClick
TabOrder = 6 TabOrder = 5
end end
object sb_editName: TSpeedButton object sb_editName: TSpeedButton
Left = 305 Left = 579
Height = 22 Height = 22
Hint = 'Update Zip Name:'#13#10'Click this to browse your system to find'#13#10' an existing Update Zip' Hint = 'Update Zip Name:'#13#10'Click this to browse your system to find'#13#10' an existing Update Zip'
Top = 32 Top = 32
@ -188,65 +177,28 @@ object frmMain: TfrmMain
OnClick = sb_editNameClick OnClick = sb_editNameClick
end end
object spd_CheckURL: TSpeedButton object spd_CheckURL: TSpeedButton
Left = 257 AnchorSideRight.Control = chk_DisableInOPM
Left = 433
Height = 19 Height = 19
Hint = 'Attempting to Open URL' Hint = 'Attempting to Open URL'
Top = 112 Top = 88
Width = 61 Width = 61
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
AutoSize = True BorderSpacing.Left = 10
BorderSpacing.Right = 8
Caption = 'Check URL' Caption = 'Check URL'
OnClick = spd_CheckURLClick OnClick = spd_CheckURLClick
end end
object grp_ForceNotify: TGroupBox object chk_DisableInOPM: TCheckBox
Left = 8 Left = 502
Height = 48
Top = 56
Width = 321
Anchors = [akTop, akLeft, akRight]
ClientHeight = 28
ClientWidth = 317
TabOrder = 7
object cbForceNotify: TCheckBox
Left = 8
Height = 19 Height = 19
Hint = 'Force Notify check box:'#13#10'If this is checked the OPM user will be notified'#13#10'of your update. Only check this if the update is important.' Top = 88
Top = 0 Width = 101
Width = 85 Anchors = [akTop, akRight]
Anchors = [akLeft] AutoSize = False
Caption = 'Force Notify' BorderSpacing.Right = 10
Color = clWindow Caption = 'Disable in OPM'
OnMouseUp = cbForceNotifyMouseUp TabOrder = 6
ParentColor = False
TabOrder = 0
end
object Spin_InternalVersion: TSpinEdit
AnchorSideTop.Control = grp_ForceNotify
AnchorSideRight.Control = grp_ForceNotify
Left = 256
Height = 23
Hint = 'Internal Version:'#13#10'Increase internal version when you have made changes in the source. It works only combined with ForceNotify.'
Top = 0
Width = 51
Anchors = []
BorderSpacing.Right = 7
MaxValue = 364
TabOrder = 1
end
object lbl_InternalVersion: TLabel
AnchorSideRight.Control = Spin_InternalVersion
Left = 104
Height = 15
Hint = 'Internal Version:'#13#10'Increase internal version when you have made changes in the source. It works only combined with ForceNotify.'
Top = 2
Width = 147
Alignment = taRightJustify
Anchors = [akLeft, akRight]
BorderSpacing.Right = 5
Caption = 'Internal Version'
ParentColor = False
OnClick = lbl_InternalVersionClick
end
end end
object MainMenu1: TMainMenu object MainMenu1: TMainMenu
Left = 200 Left = 200
@ -268,6 +220,10 @@ object frmMain: TfrmMain
Caption = 'Save As...' Caption = 'Save As...'
OnClick = SaveAsItemClick OnClick = SaveAsItemClick
end end
object mnu_fileExit: TMenuItem
Caption = 'E&xit'
OnClick = mnu_fileExitClick
end
end end
object mnu_help: TMenuItem object mnu_help: TMenuItem
Caption = '&Help' Caption = '&Help'

View File

@ -4,9 +4,6 @@
{"hash":202110442,"name":"tfrmmain.lbldownloadzipurl.caption","sourcebytes":[68,111,119,110,108,111,97,100,32,85,82,76,58],"value":"Download URL:"}, {"hash":202110442,"name":"tfrmmain.lbldownloadzipurl.caption","sourcebytes":[68,111,119,110,108,111,97,100,32,85,82,76,58],"value":"Download URL:"},
{"hash":265021141,"name":"tfrmmain.editdownloadzipurl.hint","sourcebytes":[68,111,119,110,108,111,97,100,32,85,82,76,58,13,10,73,110,99,108,117,100,101,32,116,104,101,32,70,85,76,76,32,117,114,108,32,110,101,101,100,101,100,32,116,111,32,100,111,119,110,108,111,97,100,32,116,104,101,32,112,97,99,107,97,103,101,32,90,105,112,32,102,105,108,101],"value":"Download URL:\r\nInclude the FULL url needed to download the package Zip file"}, {"hash":265021141,"name":"tfrmmain.editdownloadzipurl.hint","sourcebytes":[68,111,119,110,108,111,97,100,32,85,82,76,58,13,10,73,110,99,108,117,100,101,32,116,104,101,32,70,85,76,76,32,117,114,108,32,110,101,101,100,101,100,32,116,111,32,100,111,119,110,108,111,97,100,32,116,104,101,32,112,97,99,107,97,103,101,32,90,105,112,32,102,105,108,101],"value":"Download URL:\r\nInclude the FULL url needed to download the package Zip file"},
{"hash":57627770,"name":"tfrmmain.lblpackagefiles.caption","sourcebytes":[80,97,99,107,97,103,101,32,70,105,108,101,115,58],"value":"Package Files:"}, {"hash":57627770,"name":"tfrmmain.lblpackagefiles.caption","sourcebytes":[80,97,99,107,97,103,101,32,70,105,108,101,115,58],"value":"Package Files:"},
{"hash":168058793,"name":"tfrmmain.stringpackagefiles.hint","sourcebytes":[80,97,99,107,97,103,101,32,70,105,108,101,115,58,13,10,91,65,100,100,93,58,32,32,116,111,32,109,97,107,101,32,97,32,110,101,119,32,101,110,116,114,121,13,10,91,82,101,109,111,118,101,93,58,32,82,101,109,111,118,101,32,108,97,115,116,32,101,110,116,114,121,13,10,108,112,107,32,102,105,108,101,110,97,109,101,58,32,105,46,101,46,32,109,121,99,111,110,116,114,111,108,46,108,112,107,13,10,86,101,114,115,105,111,110,58,32,84,104,101,32,70,85,76,76,32,118,101,114,115,105,111,110,32,40,105,46,101,46,32,110,111,116,32,49,46,48,32,98,117,116,32,49,46,48,46,48,46,48,41],"value":"Package Files:\r\n[Add]: to make a new entry\r\n[Remove]: Remove last entry\r\nlpk filename: i.e. mycontrol.lpk\r\nVersion: The FULL version (i.e. not 1.0 but 1.0.0.0)"},
{"hash":4294967295,"name":"tfrmmain.stringpackagefiles.columns[0].title.caption","sourcebytes":[],"value":""},
{"hash":4294967295,"name":"tfrmmain.stringpackagefiles.columns[1].title.caption","sourcebytes":[],"value":""},
{"hash":61051198,"name":"tfrmmain.btnadd.hint","sourcebytes":[65,100,100,32,80,97,99,107,97,103,101,32,70,105,108,101,58,13,10,84,104,101,32,117,112,100,97,116,101,32,122,105,112,32,99,97,110,32,99,111,110,116,97,105,110,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,108,112,107,32,102,105,108,101,13,10,100,101,112,108,111,121,101,100,32,116,111,32,116,104,101,32,115,97,109,101,32,112,108,97,99,101,46],"value":"Add Package File:\r\nThe update zip can contain more than one lpk file\r\ndeployed to the same place."}, {"hash":61051198,"name":"tfrmmain.btnadd.hint","sourcebytes":[65,100,100,32,80,97,99,107,97,103,101,32,70,105,108,101,58,13,10,84,104,101,32,117,112,100,97,116,101,32,122,105,112,32,99,97,110,32,99,111,110,116,97,105,110,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,108,112,107,32,102,105,108,101,13,10,100,101,112,108,111,121,101,100,32,116,111,32,116,104,101,32,115,97,109,101,32,112,108,97,99,101,46],"value":"Add Package File:\r\nThe update zip can contain more than one lpk file\r\ndeployed to the same place."},
{"hash":18340,"name":"tfrmmain.btnadd.caption","sourcebytes":[65,100,100],"value":"Add"}, {"hash":18340,"name":"tfrmmain.btnadd.caption","sourcebytes":[65,100,100],"value":"Add"},
{"hash":3931908,"name":"tfrmmain.btnremove.hint","sourcebytes":[82,101,109,111,118,101,32,80,97,99,107,97,103,101,32,70,105,108,101,58,13,10,68,101,108,101,116,101,115,32,116,104,101,32,108,97,115,116,32,101,110,116,114,121,32,102,114,111,109,32,116,104,101,32,108,105,115,116],"value":"Remove Package File:\r\nDeletes the last entry from the list"}, {"hash":3931908,"name":"tfrmmain.btnremove.hint","sourcebytes":[82,101,109,111,118,101,32,80,97,99,107,97,103,101,32,70,105,108,101,58,13,10,68,101,108,101,116,101,115,32,116,104,101,32,108,97,115,116,32,101,110,116,114,121,32,102,114,111,109,32,116,104,101,32,108,105,115,116],"value":"Remove Package File:\r\nDeletes the last entry from the list"},
@ -18,16 +15,13 @@
{"hash":12558,"name":"tfrmmain.sb_editname.caption","sourcebytes":[46,46,46],"value":"..."}, {"hash":12558,"name":"tfrmmain.sb_editname.caption","sourcebytes":[46,46,46],"value":"..."},
{"hash":60451052,"name":"tfrmmain.spd_checkurl.hint","sourcebytes":[65,116,116,101,109,112,116,105,110,103,32,116,111,32,79,112,101,110,32,85,82,76],"value":"Attempting to Open URL"}, {"hash":60451052,"name":"tfrmmain.spd_checkurl.hint","sourcebytes":[65,116,116,101,109,112,116,105,110,103,32,116,111,32,79,112,101,110,32,85,82,76],"value":"Attempting to Open URL"},
{"hash":194843532,"name":"tfrmmain.spd_checkurl.caption","sourcebytes":[67,104,101,99,107,32,85,82,76],"value":"Check URL"}, {"hash":194843532,"name":"tfrmmain.spd_checkurl.caption","sourcebytes":[67,104,101,99,107,32,85,82,76],"value":"Check URL"},
{"hash":147876574,"name":"tfrmmain.cbforcenotify.hint","sourcebytes":[70,111,114,99,101,32,78,111,116,105,102,121,32,99,104,101,99,107,32,98,111,120,58,13,10,73,102,32,116,104,105,115,32,105,115,32,99,104,101,99,107,101,100,32,116,104,101,32,79,80,77,32,117,115,101,114,32,119,105,108,108,32,98,101,32,110,111,116,105,102,105,101,100,13,10,111,102,32,121,111,117,114,32,117,112,100,97,116,101,46,32,32,79,110,108,121,32,99,104,101,99,107,32,116,104,105,115,32,105,102,32,116,104,101,32,117,112,100,97,116,101,32,105,115,32,105,109,112,111,114,116,97,110,116,46],"value":"Force Notify check box:\r\nIf this is checked the OPM user will be notified\r\nof your update. Only check this if the update is important."}, {"hash":108520077,"name":"tfrmmain.chk_disableinopm.caption","sourcebytes":[68,105,115,97,98,108,101,32,105,110,32,79,80,77],"value":"Disable in OPM"},
{"hash":27272873,"name":"tfrmmain.cbforcenotify.caption","sourcebytes":[70,111,114,99,101,32,78,111,116,105,102,121],"value":"Force Notify"},
{"hash":43793310,"name":"tfrmmain.spin_internalversion.hint","sourcebytes":[73,110,116,101,114,110,97,108,32,86,101,114,115,105,111,110,58,13,10,73,110,99,114,101,97,115,101,32,105,110,116,101,114,110,97,108,32,118,101,114,115,105,111,110,32,119,104,101,110,32,121,111,117,32,104,97,118,101,32,109,97,100,101,32,99,104,97,110,103,101,115,32,105,110,32,116,104,101,32,115,111,117,114,99,101,46,32,73,116,32,32,119,111,114,107,115,32,111,110,108,121,32,99,111,109,98,105,110,101,100,32,119,105,116,104,32,70,111,114,99,101,78,111,116,105,102,121,46],"value":"Internal Version:\r\nIncrease internal version when you have made changes in the source. It works only combined with ForceNotify."},
{"hash":43793310,"name":"tfrmmain.lbl_internalversion.hint","sourcebytes":[73,110,116,101,114,110,97,108,32,86,101,114,115,105,111,110,58,13,10,73,110,99,114,101,97,115,101,32,105,110,116,101,114,110,97,108,32,118,101,114,115,105,111,110,32,119,104,101,110,32,121,111,117,32,104,97,118,101,32,109,97,100,101,32,99,104,97,110,103,101,115,32,105,110,32,116,104,101,32,115,111,117,114,99,101,46,32,73,116,32,32,119,111,114,107,115,32,111,110,108,121,32,99,111,109,98,105,110,101,100,32,119,105,116,104,32,70,111,114,99,101,78,111,116,105,102,121,46],"value":"Internal Version:\r\nIncrease internal version when you have made changes in the source. It works only combined with ForceNotify."},
{"hash":5825966,"name":"tfrmmain.lbl_internalversion.caption","sourcebytes":[73,110,116,101,114,110,97,108,32,86,101,114,115,105,111,110],"value":"Internal Version"},
{"hash":315429,"name":"tfrmmain.filemenu.caption","sourcebytes":[70,105,108,101],"value":"File"}, {"hash":315429,"name":"tfrmmain.filemenu.caption","sourcebytes":[70,105,108,101],"value":"File"},
{"hash":21703,"name":"tfrmmain.mnu_filenew.caption","sourcebytes":[78,101,119],"value":"New"}, {"hash":21703,"name":"tfrmmain.mnu_filenew.caption","sourcebytes":[78,101,119],"value":"New"},
{"hash":56062302,"name":"tfrmmain.loaditem.caption","sourcebytes":[76,111,97,100,46,46,46],"value":"Load..."}, {"hash":56062302,"name":"tfrmmain.loaditem.caption","sourcebytes":[76,111,97,100,46,46,46],"value":"Load..."},
{"hash":366789,"name":"tfrmmain.mnu_filesave.caption","sourcebytes":[83,97,118,101],"value":"Save"}, {"hash":366789,"name":"tfrmmain.mnu_filesave.caption","sourcebytes":[83,97,118,101],"value":"Save"},
{"hash":122542542,"name":"tfrmmain.saveasitem.caption","sourcebytes":[83,97,118,101,32,65,115,46,46,46],"value":"Save As..."}, {"hash":122542542,"name":"tfrmmain.saveasitem.caption","sourcebytes":[83,97,118,101,32,65,115,46,46,46],"value":"Save As..."},
{"hash":4710148,"name":"tfrmmain.mnu_fileexit.caption","sourcebytes":[69,38,120,105,116],"value":"E&xit"},
{"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"},

View File

@ -58,7 +58,11 @@ unit umain;
0.1.19.0: Added IntrnalVersion integer field to json (getmem/minesadorada) 0.1.19.0: Added IntrnalVersion integer field to json (getmem/minesadorada)
Added SpinEdit to control the above (minesadorada) Added SpinEdit to control the above (minesadorada)
In Laz 1.7 DPIAwareness configured In Laz 1.7 DPIAwareness configured
0.1.20.0: ?? 0.2.0.0: Refactored GUI
0.2.1.0: ToDo
- sort out resourcestrings
- Update Validation
- Update hints
} }
{$mode objfpc}{$H+} {$mode objfpc}{$H+}
@ -83,9 +87,13 @@ type
private private
FName: string; FName: string;
FVersion: string; FVersion: string;
FForceNotify: boolean;
FInternalVersion: integer;
published published
property Name: string read FName write FName; property Name: string read FName write FName;
property Version: string read FVersion write FVersion; property Version: string read FVersion write FVersion;
property ForceNotify: boolean read FForceNotify write FForceNotify;
property InternalVersion: integer read FInternalVersion write FInternalVersion;
end; end;
TPackageFilesList = specialize TGenericCollection<TUpdatePackageFiles>; TPackageFilesList = specialize TGenericCollection<TUpdatePackageFiles>;
@ -95,16 +103,14 @@ type
TUpdatePackageData = class(TPersistent) TUpdatePackageData = class(TPersistent)
private private
FDownloadZipURL: string; FDownloadZipURL: string;
FForceNotify: boolean; FDisableInOPM: Boolean;
FName: string; FName: string;
FInternalVersion:Integer;
public public
constructor Create; constructor Create;
published published
property Name: string read FName write FName; property Name: string read FName write FName;
property ForceNotify: boolean read FForceNotify write FForceNotify;
property DownloadZipURL: string read FDownloadZipURL write FDownloadZipURL; property DownloadZipURL: string read FDownloadZipURL write FDownloadZipURL;
property InternalVersion: integer read FInternalVersion write FInternalVersion; property DisableInOPM:Boolean read FDisableInOPM write FDisableInOPM;
end; end;
{ TUpdatePackage } { TUpdatePackage }
@ -129,7 +135,7 @@ type
TfrmMain = class(TForm) TfrmMain = class(TForm)
ActionList1: TActionList; ActionList1: TActionList;
cbForceNotify: TCheckBox; chk_DisableInOPM: TCheckBox;
cmd_Close: TBitBtn; cmd_Close: TBitBtn;
cmd_save: TBitBtn; cmd_save: TBitBtn;
btnAdd: TButton; btnAdd: TButton;
@ -138,14 +144,13 @@ type
editDownloadZipURL: TEdit; editDownloadZipURL: TEdit;
FileOpen1: TFileOpen; FileOpen1: TFileOpen;
FileSaveAs1: TFileSaveAs; FileSaveAs1: TFileSaveAs;
grp_ForceNotify: TGroupBox;
lbl_InternalVersion: TLabel;
lblPackageFiles: TLabel; lblPackageFiles: TLabel;
lblName: TLabel; lblName: TLabel;
lblDownloadZipURL: TLabel; lblDownloadZipURL: TLabel;
MainMenu1: TMainMenu; MainMenu1: TMainMenu;
FileMenu: TMenuItem; FileMenu: TMenuItem;
LoadItem: TMenuItem; LoadItem: TMenuItem;
mnu_fileExit: TMenuItem;
mnu_fileNew: TMenuItem; mnu_fileNew: TMenuItem;
mnu_helpDisableWarnings: TMenuItem; mnu_helpDisableWarnings: TMenuItem;
mnu_lang_es: TMenuItem; mnu_lang_es: TMenuItem;
@ -159,19 +164,17 @@ type
SaveAsItem: TMenuItem; SaveAsItem: TMenuItem;
sb_editName: TSpeedButton; sb_editName: TSpeedButton;
spd_CheckURL: TSpeedButton; spd_CheckURL: TSpeedButton;
Spin_InternalVersion: TSpinEdit;
stringPackageFiles: TStringGrid;
procedure btnAddClick(Sender: TObject); procedure btnAddClick(Sender: TObject);
procedure btnRemoveClick(Sender: TObject); procedure btnRemoveClick(Sender: TObject);
procedure cbForceNotifyMouseUp(Sender: TObject; Button: TMouseButton; procedure cbForceNotifyMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: integer); Shift: TShiftState; X, Y: integer);
procedure FormClose(Sender: TObject; var CloseAction: TCloseAction); procedure cmd_CloseClick(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: boolean); procedure FormCloseQuery(Sender: TObject; var CanClose: boolean);
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject); procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
procedure lbl_InternalVersionClick(Sender: TObject);
procedure LoadItemClick(Sender: TObject); procedure LoadItemClick(Sender: TObject);
procedure mnu_fileExitClick(Sender: TObject);
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);
@ -191,6 +194,26 @@ type
slErrorList: TStrings; slErrorList: TStrings;
CFG: TIniFile; CFG: TIniFile;
INIFilePath: string; INIFilePath: string;
// Start of Package Information controls
ArrayGrpBox:Array of TGroupBox;
ArrayLblPackageFileName:Array of TLabel;
ArrayEdtPackageFileName:Array of TEdit;
ArrayLblPackageVersion:Array of TLabel;
ArraySpinEditV1:Array of TSpinEdit;
ArraySpinEditV2:Array of TSpinEdit;
ArraySpinEditV3:Array of TSpinEdit;
ArraySpinEditV4:Array of TSpinEdit;
ArrayChkBoxForceNotify:Array of TCheckBox;
ArraySpinEditInternalVersion:Array of TSpinEdit;
ArrayLblPackageInternalVersion:Array of TLabel;
// End of Package Information controls
iNumLpkFilesVisible:Integer;
procedure AddPackageFileToList;
procedure RemovePackageFileFromList;
procedure ResetPackageFileControlsToOne;
procedure AddNewControlArray;
procedure DestroyControlArrays;
procedure RemoveLastControlArray;
function ValidationFailed: boolean; function ValidationFailed: boolean;
procedure CtrlShowPopup(Sender: TObject); procedure CtrlShowPopup(Sender: TObject);
procedure CtrlHidePopup(Sender: TObject); procedure CtrlHidePopup(Sender: TObject);
@ -263,7 +286,7 @@ resourcestring
constructor TUpdatePackageData.Create; constructor TUpdatePackageData.Create;
begin begin
FName := ''; FName := '';
FForceNotify := False; // FForceNotify := False;
FDownloadZipURL := ''; FDownloadZipURL := '';
end; end;
@ -306,7 +329,7 @@ end;
procedure TfrmMain.CtrlSetUpPopupHandlers; procedure TfrmMain.CtrlSetUpPopupHandlers;
// Use different handlers for some controls // Use different handlers for some controls
var var
iCount,jCount: integer; iCount, jCount: integer;
begin begin
with frmMain do with frmMain do
begin begin
@ -317,26 +340,38 @@ begin
if (Controls[iCount] is TGroupBox) then if (Controls[iCount] is TGroupBox) then
// Iterate through the children of GroupBox // Iterate through the children of GroupBox
for jCount := 0 to Pred(TGroupBox(Controls[iCount]).ControlCount) do for jCount := 0 to Pred(TGroupBox(Controls[iCount]).ControlCount) do
Begin // With TGroupBox(Controls[iCount]).Controls[jCount] do?
begin
if TGroupBox(Controls[iCount]).Controls[jCount] is TSpinEdit then if TGroupBox(Controls[iCount]).Controls[jCount] is TSpinEdit then
begin begin
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter := @CtrlShowPopup; TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter :=
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave := @CtrlHidePopup; @CtrlShowPopup;
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick := @CtrlHidePopup; TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave :=
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnChange := @CtrlMakeDirty; @CtrlHidePopup;
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick :=
@CtrlHidePopup;
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnChange :=
@CtrlMakeDirty;
end; end;
if TGroupBox(Controls[iCount]).Controls[jCount] is TCheckBox then if TGroupBox(Controls[iCount]).Controls[jCount] is TCheckBox then
begin begin
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter := @CtrlShowPopup; TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter :=
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave := @CtrlHidePopup; @CtrlShowPopup;
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick := @CtrlHidePopup; TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave :=
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnEditingDone := @CtrlMakeDirty; @CtrlHidePopup;
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick :=
@CtrlHidePopup;
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnEditingDone :=
@CtrlMakeDirty;
end; end;
if TGroupBox(Controls[iCount]).Controls[jCount] is TLabel then if TGroupBox(Controls[iCount]).Controls[jCount] is TLabel then
begin begin
TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter := @CtrlShowPopup; TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter :=
TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave := @CtrlHidePopup; @CtrlShowPopup;
TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick := @CtrlHidePopup; TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave :=
@CtrlHidePopup;
TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick :=
@CtrlHidePopup;
end; end;
end; end;
if (Controls[iCount] is TEdit) then if (Controls[iCount] is TEdit) then
@ -377,10 +412,263 @@ begin
end; end;
end; end;
end; end;
procedure TfrmMain.DestroyControlArrays;
Var i:Integer;
begin
For i:=0 to High(ArraySpinEditInternalVersion) do
FreeAndNil(ArraySpinEditInternalVersion[i]);
For i:=0 to High(ArrayLblPackageInternalVersion) do
FreeAndNil(ArrayLblPackageInternalVersion[i]);
For i:=0 to High(ArrayChkBoxForceNotify) do
FreeAndNil(ArrayChkBoxForceNotify[i]);
For i:=0 to High(ArraySpinEditV4) do
FreeAndNil(ArraySpinEditV4[i]);
For i:=0 to High(ArraySpinEditV3) do
FreeAndNil(ArraySpinEditV3[i]);
For i:=0 to High(ArraySpinEditV2) do
FreeAndNil(ArraySpinEditV2[i]);
For i:=0 to High(ArraySpinEditV1) do
FreeAndNil(ArraySpinEditV1[i]);
For i:=0 to High(ArrayLblPackageVersion) do
FreeAndNil(ArrayLblPackageVersion[i]);
For i:=0 to High(ArrayEdtPackageFileName) do
FreeAndNil(ArrayEdtPackageFileName[i]);
For i:=0 to High(ArrayLblPackageFileName) do
FreeAndNil(ArrayLblPackageFileName[i]);
For i:=0 to High(ArrayGrpBox) do
FreeAndNil(ArrayGrpBox[i]);
end;
procedure TfrmMain.AddNewControlArray;
{
ArrayGrpBox:Array of TGroupBox;
// Line 1
ArrayLblPackageFileName:Array of TLabel;
ArrayEdtPackageFileName:Array of TEdit;
ArrayLblPackageVersion:Array of TLabel;
ArraySpinEditV1:Array of TSpinEdit;
ArraySpinEditV2:Array of TSpinEdit;
ArraySpinEditV3:Array of TSpinEdit;
ArraySpinEditV4:Array of TSpinEdit;
// Line 2
ArrayChkBoxForceNotify:Array of TCheckBox;
ArrayLblPackageInternalVersion:Array of TLabel;
ArraySpinEditInternalVersion:Array of TSpinEdit;
SetBounds(Left,Top,Width,Height);
}
begin
SetLength(ArrayGrpBox,Succ(iNumLpkFilesVisible));
ArrayGrpBox[iNumLpkFilesVisible]:=TGroupBox.Create(Self);
SetLength(ArrayLblPackageFileName,Succ(iNumLpkFilesVisible));
SetLength(ArrayEdtPackageFileName,Succ(iNumLpkFilesVisible));
SetLength(ArrayLblPackageVersion,Succ(iNumLpkFilesVisible));
SetLength(ArraySpinEditV1,Succ(iNumLpkFilesVisible));
SetLength(ArraySpinEditV2,Succ(iNumLpkFilesVisible));
SetLength(ArraySpinEditV3,Succ(iNumLpkFilesVisible));
SetLength(ArraySpinEditV4,Succ(iNumLpkFilesVisible));
SetLength(ArrayChkBoxForceNotify,Succ(iNumLpkFilesVisible));
SetLength(ArrayLblPackageInternalVersion,Succ(iNumLpkFilesVisible));
SetLength(ArraySpinEditInternalVersion,Succ(iNumLpkFilesVisible));
With ArrayGrpBox[iNumLpkFilesVisible] do
begin
Caption:='Package Information';
if (iNumLpkFilesVisible > 0) then
SetBounds(8,ArrayGrpBox[Pred(iNumLpkFilesVisible)].Top + ArrayGrpBox[Pred(iNumLpkFilesVisible)].Height + 10,frmMain.Width - 16,100)
else
SetBounds(8,btnAdd.Top + btnAdd.Height + 10,frmMain.Width - 16,100);
Visible:=False;
Tag:=Pred(iNumLpkFilesVisible);
// Label - Package name
ArrayLblPackageFileName[iNumLpkFilesVisible]:=TLabel.Create(Nil);
With ArrayLblPackageFileName[iNumLpkFilesVisible] do
begin
Caption:='Filename: ';
SetBounds(8,10,50,23);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// EditBox - Package name
ArrayEdtPackageFileName[iNumLpkFilesVisible]:=TEdit.Create(Nil);
With ArrayEdtPackageFileName[iNumLpkFilesVisible] do
begin
Text:=rsMypackagenam;
SetBounds(64,8,256,23);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// Label - Package Version
ArrayLblPackageVersion[iNumLpkFilesVisible]:=TLabel.Create(Nil);
With ArrayLblPackageVersion[iNumLpkFilesVisible] do
begin
Caption:='Version: ';
SetBounds(330,10,50,23);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit V1
ArraySpinEditV1[iNumLpkFilesVisible]:=TSpinEdit.Create(Nil);
With ArraySpinEditV1[iNumLpkFilesVisible] do
begin
Value:=0;
SetBounds(380,8,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit V2
ArraySpinEditV2[iNumLpkFilesVisible]:=TSpinEdit.Create(Nil);
With ArraySpinEditV2[iNumLpkFilesVisible] do
begin
Value:=0;
SetBounds(430,8,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit V3
ArraySpinEditV3[iNumLpkFilesVisible]:=TSpinEdit.Create(Nil);
With ArraySpinEditV3[iNumLpkFilesVisible] do
begin
Value:=0;
SetBounds(480,8,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit V4
ArraySpinEditV4[iNumLpkFilesVisible]:=TSpinEdit.Create(Nil);
With ArraySpinEditV4[iNumLpkFilesVisible] do
begin
Value:=0;
SetBounds(530,8,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// ChkBox Notify
ArrayChkBoxForceNotify[iNumLpkFilesVisible]:=TCheckBox.Create(Nil);
With ArrayChkBoxForceNotify[iNumLpkFilesVisible] do
begin
Checked:=False;
Caption:='Notify Update';
SetBounds(8,50,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// Label Internal version
ArrayLblPackageInternalVersion[iNumLpkFilesVisible]:=TLabel.Create(Nil);
With ArrayLblPackageInternalVersion[iNumLpkFilesVisible] do
begin
Caption:='Internal Version: ';
SetBounds(160,50,40,23);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit Internal Version
ArraySpinEditInternalVersion[iNumLpkFilesVisible]:=TSpinEdit.Create(Nil);
With ArraySpinEditInternalVersion[iNumLpkFilesVisible] do
begin
Value:=0;
SetBounds(260,48,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// This sets the subcontrols up correctly
Parent:=frmMain;
end;
end;
procedure TfrmMain.RemoveLastControlArray;
// Uses iLpkFilesCount
Var iLast:Integer;
begin
iLast:=High(ArrayGrpBox);
// Makes the group control invisible
ArrayGrpBox[iLast].Parent:=nil;
// Tidy up memory
FreeAndNil(ArrayChkBoxForceNotify[iLast]);
FreeAndNil(ArrayLblPackageInternalVersion[iLast]);
FreeAndNil(ArraySpinEditInternalVersion[iLast]);
FreeAndNil(ArraySpinEditV4[iLast]);
FreeAndNil(ArraySpinEditV3[iLast]);
FreeAndNil(ArraySpinEditV2[iLast]);
FreeAndNil(ArraySpinEditV1[iLast]);
FreeAndNil(ArrayLblPackageVersion[iLast]);
FreeAndNil(ArrayEdtPackageFileName[iLast]);
FreeAndNil(ArrayLblPackageFileName[iLast]);
FreeAndNil(ArrayGrpBox[iLast]);
// Tidy up control arrays
SetLength(ArrayChkBoxForceNotify,iLast);
SetLength(ArrayLblPackageInternalVersion,iLast);
SetLength(ArraySpinEditInternalVersion,iLast);
SetLength(ArraySpinEditV4,iLast);
SetLength(ArraySpinEditV3,iLast);
SetLength(ArraySpinEditV2,iLast);
SetLength(ArraySpinEditV1,iLast);
SetLength(ArrayLblPackageVersion,iLast);
SetLength(ArrayEdtPackageFileName,iLast);
SetLength(ArrayLblPackageFileName,iLast);
SetLength(ArrayGrpBox,iLast);
end;
procedure TfrmMain.AddPackageFileToList;
begin
AddNewControlArray; // make another one
// Makes it visible
ArrayGrpBox[High(ArrayGrpBox)].Visible:=TRUE;
Inc(iNumLpkFilesVisible);
// Adjust form
Height:=Height + 108;//ArrayGrpBox[High(ArrayGrpBox)].Height;
cmd_Save.Top:=Height - cmd_Save.Height - cmd_Save.Height;
cmd_Close.Top:=Height - cmd_Close.Height - cmd_Close.Height;
CtrlSetUpPopupHandlers;
Refresh;
end;
procedure TfrmMain.ResetPackageFileControlsToOne;
Var iCount:Integer;
begin
if (iNumLpkFilesVisible = 1) then exit;
For iCount:=iNumLpkFilesVisible downto 1 do
begin
RemovePackageFileFromList;
end;
end;
procedure TfrmMain.RemovePackageFileFromList;
begin
// Always have one set of controls present
if (iNumLpkFilesVisible > 1) then
begin
RemoveLastControlArray;
Dec(iNumLpkFilesVisible);
CtrlSetUpPopupHandlers;
// Adjust form
Height:=Height - 108; //ArrayGrpBox[High(ArrayGrpBox)].Height;
cmd_Save.Top:=Height - cmd_Save.Height - cmd_Save.Height;
cmd_Close.Top:=Height - cmd_Close.Height - cmd_Close.Height;
end;
end;
function TfrmMain.FoundADuplicateLPK: boolean; function TfrmMain.FoundADuplicateLPK: boolean;
// Add lpk entries one-by-one to a temp stringlist looking for a duplicate // Add lpk entries one-by-one to a temp stringlist looking for a duplicate
var var
TempStringList: TStrings; TempStringList: TStrings;
iCount: integer; iCount: integer;
@ -388,13 +676,13 @@ begin
Result := False; Result := False;
TempStringList := TStringList.Create; TempStringList := TStringList.Create;
try try
for iCount := 0 to Pred(stringPackageFiles.RowCount) do //for iCount := 0 to Pred(stringPackageFiles.RowCount) do
begin //begin
if TempStringlist.IndexOf(stringPackageFiles.Cells[0, iCount]) = -1 then // if TempStringlist.IndexOf(stringPackageFiles.Cells[0, iCount]) = -1 then
TempStringList.Add(stringPackageFiles.Cells[0, iCount]) // TempStringList.Add(stringPackageFiles.Cells[0, iCount])
else // else
Result := True; // Result := True;
end; // end;
finally finally
TempStringList.Free; TempStringList.Free;
end; end;
@ -402,35 +690,22 @@ end;
procedure TfrmMain.btnAddClick(Sender: TObject); procedure TfrmMain.btnAddClick(Sender: TObject);
begin begin
stringPackageFiles.RowCount := stringPackageFiles.RowCount + 1; AddPackageFileToList;
end; end;
procedure TfrmMain.btnRemoveClick(Sender: TObject); procedure TfrmMain.btnRemoveClick(Sender: TObject);
begin begin
if stringPackageFiles.RowCount > 1 then RemovePackageFileFromList;
stringPackageFiles.RowCount := stringPackageFiles.RowCount - 1;
end; end;
procedure TfrmMain.cbForceNotifyMouseUp(Sender: TObject; Button: TMouseButton; procedure TfrmMain.cbForceNotifyMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: integer); Shift: TShiftState; X, Y: integer);
var
s: string;
begin begin
if bDisableWarnings then
exit;
if cbForceNotify.Checked then
begin
s := rsThisOptionSh;
if MessageDlg(s, mtConfirmation, [mbOK, mbAbort], 0, mbAbort) = mrAbort then
cbForceNotify.Checked := False
else
If Spin_InternalVersion.Value = 0 then Spin_InternalVersion.Value :=1;
end
else Spin_InternalVersion.Value :=0;
end; end;
procedure TfrmMain.FormClose(Sender: TObject; var CloseAction: TCloseAction); procedure TfrmMain.cmd_CloseClick(Sender: TObject);
begin begin
end; end;
procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: boolean); procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: boolean);
@ -470,27 +745,25 @@ var
sLang: string; sLang: string;
iIniCount: integer; iIniCount: integer;
begin begin
{
Self.AutoAdjustLayout(lapAutoAdjustForDPI, Self.DesignTimeDPI,
Screen.PixelsPerInch, Self.Width, ScaleX(Self.Width, Self.DesignTimeDPI));
}
// Enable AutoSize again to get correct Height // Enable AutoSize again to get correct Height
editName.AutoSize := True; editName.AutoSize := True;
editDownloadZipURL.AutoSize := True; editDownloadZipURL.AutoSize := True;
// Furniture // Furniture
Caption := Application.Title; Caption := Application.Title;
Icon := Application.Icon; Icon := Application.Icon;
Height:=btnAdd.Top + btnAdd.Height + (cmd_Save.Height * 3);
cmd_Save.Top:=Height - cmd_Save.Height - cmd_Save.Height;
cmd_Close.Top:=Height - cmd_Close.Height - cmd_Close.Height;
{$IFNDEF IGNOREPICTURE} {$IFNDEF IGNOREPICTURE}
MyPopup.Icon := TPicture(Application.Icon); MyPopup.Icon := TPicture(Application.Icon);
{$ENDIF} {$ENDIF}
editname.Text := rsMypackagenam; editname.Text := rsMypackagenam;
editDownloadZipURL.Text := rsHttpWwwUpdat; editDownloadZipURL.Text := rsHttpWwwUpdat;
stringPackageFiles.Columns[0].Title.Caption := rsLpkFileName;
stringPackageFiles.Columns[1].Title.Caption := rsVersion0000;
// Defaults // Defaults
slErrorList := TStringList.Create; slErrorList := TStringList.Create;
bForceSaveAs := True; bForceSaveAs := True;
bShowPopupHints := True; bShowPopupHints := True;
iNumLpkFilesVisible:=0;
// Encourage the user to maintain an updates folder // Encourage the user to maintain an updates folder
sUpdateDirectory := ProgramDirectory + 'updates'; sUpdateDirectory := ProgramDirectory + 'updates';
if not FileExistsUTF8(sUpdateDirectory) then if not FileExistsUTF8(sUpdateDirectory) then
@ -503,8 +776,10 @@ begin
if CreateUniqueINI(iIniCount) then if CreateUniqueINI(iIniCount) then
CFG.WriteString('Options', 'AppPath', ProgramDirectory); CFG.WriteString('Options', 'AppPath', ProgramDirectory);
CFG.UpdateFile; CFG.UpdateFile;
if C_DEBUGMESSAGES = True then
if C_DEBUGMESSAGES = True then // Dev only
ShowMessageFmt('Inifile=%s, Count=%d', [INIFilePath, iIniCount]); ShowMessageFmt('Inifile=%s, Count=%d', [INIFilePath, iIniCount]);
// Pop-up hints (show on first run, then not again unless the user chooses) // Pop-up hints (show on first run, then not again unless the user chooses)
bIsVirgin := CFG.ReadBool('Options', 'Virgin', True); bIsVirgin := CFG.ReadBool('Options', 'Virgin', True);
bShowPopupHints := bIsVirgin; bShowPopupHints := bIsVirgin;
@ -512,9 +787,11 @@ begin
// 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;
bDisableWarnings := CFG.ReadBool('Options', 'DiableWarnings', False); bDisableWarnings := CFG.ReadBool('Options', 'DiableWarnings', False);
mnu_helpDisableWarnings.Checked := bDisableWarnings; mnu_helpDisableWarnings.Checked := bDisableWarnings;
CtrlSetUpPopupHandlers; // Set the Hint property of various controls to show a Popup CtrlSetUpPopupHandlers; // Set the Hint property of various controls to show a Popup
// Language translation // Language translation
sLang := CFG.ReadString('Options', 'Language', 'en'); // First default is English sLang := CFG.ReadString('Options', 'Language', 'en'); // First default is English
SetDefaultLang(sLang, 'locale', True); SetDefaultLang(sLang, 'locale', True);
@ -529,6 +806,8 @@ end;
procedure TfrmMain.FormDestroy(Sender: TObject); procedure TfrmMain.FormDestroy(Sender: TObject);
begin begin
// No memory leak!
DestroyControlArrays;
CFG.Free; CFG.Free;
slErrorList.Free; slErrorList.Free;
end; end;
@ -536,22 +815,21 @@ end;
procedure TfrmMain.FormShow(Sender: TObject); procedure TfrmMain.FormShow(Sender: TObject);
begin begin
bDirty := False; bDirty := False;
end; AddPackageFileToList;
procedure TfrmMain.lbl_InternalVersionClick(Sender: TObject);
begin
end; end;
procedure TfrmMain.LoadItemClick(Sender: TObject); procedure TfrmMain.LoadItemClick(Sender: TObject);
var var
i: integer; i: integer;
sVersionString:String;
Quad: TVersionQuad;
begin begin
FileOpen1.Dialog.InitialDir := FileOpen1.Dialog.InitialDir :=
CFG.ReadString('Options', 'LastLoadedJSONPath', sUpdateDirectory); CFG.ReadString('Options', 'LastLoadedJSONPath', sUpdateDirectory);
FileOpen1.Dialog.Filter := 'JSON|*.json'; FileOpen1.Dialog.Filter := 'JSON|*.json';
if FileOpen1.Dialog.Execute then if FileOpen1.Dialog.Execute then
begin begin
ResetPackageFileControlsToOne; // So iNumLpkFilesVisible=1
sJSONFilePath := FileOpen1.Dialog.Filename; sJSONFilePath := FileOpen1.Dialog.Filename;
CFG.WriteString('Options', 'LastLoadedJSONPath', ExtractFileDir(sJSONFilePath)); CFG.WriteString('Options', 'LastLoadedJSONPath', ExtractFileDir(sJSONFilePath));
JSONPackage := TUpdatePackage.Create; JSONPackage := TUpdatePackage.Create;
@ -560,15 +838,20 @@ begin
begin begin
editName.Text := JSONPackage.UpdatePackageData.Name; editName.Text := JSONPackage.UpdatePackageData.Name;
editDownloadZipURL.Text := JSONPackage.UpdatePackageData.DownloadZipURL; editDownloadZipURL.Text := JSONPackage.UpdatePackageData.DownloadZipURL;
cbForceNotify.Checked := JSONPackage.UpdatePackageData.ForceNotify;
Spin_InternalVersion.Value:=JSONPackage.UpdatePackageData.InternalVersion;
stringPackageFiles.RowCount := JSONPackage.UpdatePackageFiles.Count + 1;
for i := 0 to JSONPackage.UpdatePackageFiles.Count - 1 do for i := 0 to JSONPackage.UpdatePackageFiles.Count - 1 do
begin begin
stringPackageFiles.Cells[0, i + 1] := If (i > 0) then AddPackageFileToList;
JSONPackage.UpdatePackageFiles.Items[i].Name; ArrayEdtPackageFileName[i].Text:=JSONPackage.UpdatePackageFiles.Items[i].Name;
stringPackageFiles.Cells[1, i + 1] := sVersionString:=JSONPackage.UpdatePackageFiles.Items[i].Version;
JSONPackage.UpdatePackageFiles.Items[i].Version; If fileinfo.TryStrToVersionQuad(sVersionString,Quad) then
begin
ArraySpinEditV1[i].Value:=Quad[1];
ArraySpinEditV2[i].Value:=Quad[2];
ArraySpinEditV3[i].Value:=Quad[3];
ArraySpinEditV4[i].Value:=Quad[4];
end;
ArrayChkBoxForceNotify[i].Checked:=JSONPackage.UpdatePackageFiles.Items[i].ForceNotify;
ArraySpinEditInternalVersion[i].Value:=JSONPackage.UpdatePackageFiles.Items[i].InternalVersion;
end; end;
if ValidationFailed then if ValidationFailed then
begin begin
@ -592,12 +875,16 @@ begin
end; end;
end; end;
procedure TfrmMain.mnu_fileExitClick(Sender: TObject);
begin
Close;
end;
procedure TfrmMain.mnu_fileNewClick(Sender: TObject); procedure TfrmMain.mnu_fileNewClick(Sender: TObject);
begin begin
editname.Text := rsMypackagenam; editname.Text := rsMypackagenam;
editDownloadZipURL.Text := rsHttpWwwUpdat; editDownloadZipURL.Text := rsHttpWwwUpdat;
cbForceNotify.Checked := False; // stringPackageFiles.RowCount := 1;
stringPackageFiles.RowCount := 1;
sJSONFilePath := ''; sJSONFilePath := '';
sZipDirectory := ''; sZipDirectory := '';
end; end;
@ -631,6 +918,7 @@ begin
s += RightStr(VInfo.VersionStrings[1], Length(VInfo.VersionStrings[1]) - s += RightStr(VInfo.VersionStrings[1], Length(VInfo.VersionStrings[1]) -
EqualsPos) + LineEnding; EqualsPos) + LineEnding;
end; end;
// Comment line below out for JEDI source prettification
s+=Format(rsCompiledWith2, s+=Format(rsCompiledWith2,
[{$I %FPCVERSION%},lcl_major,lcl_minor,LineEnding,{$I %FPCTARGETCPU%},{$I %FPCTARGETOS%},LineEnding,LineEnding]); [{$I %FPCVERSION%},lcl_major,lcl_minor,LineEnding,{$I %FPCTARGETCPU%},{$I %FPCTARGETOS%},LineEnding,LineEnding]);
if VInfo.VersionStrings.Count > 1 then if VInfo.VersionStrings.Count > 1 then
@ -716,12 +1004,14 @@ begin
Result := True; Result := True;
end; end;
// No lpk file? // No lpk file?
{
if (stringPackageFiles.RowCount = 1) then if (stringPackageFiles.RowCount = 1) then
begin begin
slErrorList.Add(rsThereAreNoLp); slErrorList.Add(rsThereAreNoLp);
stringPackageFiles.Color := clYellow; stringPackageFiles.Color := clYellow;
Result := True; Result := True;
end; end;
}
// Remembered to type 'zip'? // Remembered to type 'zip'?
if (Length(editName.Text) > 4) then if (Length(editName.Text) > 4) then
if (RightStr(LowerCase(editName.Text), 4) <> '.zip') then if (RightStr(LowerCase(editName.Text), 4) <> '.zip') then
@ -755,6 +1045,7 @@ begin
end; end;
// Check package files entries // Check package files entries
{
if (stringPackageFiles.RowCount > 1) then if (stringPackageFiles.RowCount > 1) then
for iCount := 1 to stringPackageFiles.RowCount - 1 do for iCount := 1 to stringPackageFiles.RowCount - 1 do
begin begin
@ -791,11 +1082,13 @@ begin
slErrorList.Add(Format(rsThereAreOneO, [LineEnding])); slErrorList.Add(Format(rsThereAreOneO, [LineEnding]));
Result := True; Result := True;
end; end;
}
end; end;
procedure TfrmMain.SaveAsItemClick(Sender: TObject); procedure TfrmMain.SaveAsItemClick(Sender: TObject);
var var
i: integer; i: integer;
Quad:TVersionQuad;
begin begin
if ValidationFailed then if ValidationFailed then
begin begin
@ -822,15 +1115,18 @@ begin
try try
JSONPackage.UpdatePackageData.Name := editName.Text; JSONPackage.UpdatePackageData.Name := editName.Text;
JSONPackage.UpdatePackageData.DownloadZipURL := editDownloadZipURL.Text; JSONPackage.UpdatePackageData.DownloadZipURL := editDownloadZipURL.Text;
JSONPackage.UpdatePackageData.ForceNotify := cbForceNotify.Checked; For i:=0 to High(ArrayGrpBox) do
JSONPackage.UpdatePackageData.InternalVersion:=Spin_InternalVersion.Value;
for i := 1 to stringPackageFiles.RowCount - 1 do
begin begin
with JSONPackage.UpdatePackageFiles.Add do with JSONPackage.UpdatePackageFiles.Add do
begin begin
Name := stringPackageFiles.Cells[0, i]; Name:=ArrayEdtPackageFileName[i].Text;
Version := stringPackageFiles.Cells[1, i]; Quad[1]:=ArraySpinEditV1[i].Value;
Quad[2]:=ArraySpinEditV2[i].Value;
Quad[3]:=ArraySpinEditV3[i].Value;
Quad[4]:=ArraySpinEditV4[i].Value;
Version:=VersionQuadToStr(Quad);
ForceNotify:=ArrayChkBoxForceNotify[i].Checked;
InternalVersion:=ArraySpinEditInternalVersion[i].Value;
end; end;
end; end;
if FileExistsUTF8(sJSONFilePath) and (bDisableWarnings = False) then if FileExistsUTF8(sJSONFilePath) and (bDisableWarnings = False) then
@ -958,15 +1254,16 @@ begin
end; end;
// Use embedded .po resources if not distributed with executable // Use embedded .po resources if not distributed with executable
// Update for more languages
initialization initialization
{$IFDEF PO_BUILTINRES} {$IFDEF PO_BUILTINRES}
sPoPath_en := ProgramDirectory + 'locale' + PathDelim + ExtractFilenameOnly( sPoPath_en := ProgramDirectory + 'locale' + PathDelim + ExtractFilenameOnly(
Application.EXEName) + '.en.po'; Application.EXEName) + '.en.po';
sPoPath_es := ProgramDirectory + 'locale' + PathDelim + ExtractFilenameOnly( sPoPath_es := ProgramDirectory + 'locale' + PathDelim + ExtractFilenameOnly(
Application.EXEName) + '.es.po'; Application.EXEName) + '.es.po';
if (lcl_major > 0) and (lcl_minor > 6) then if (lcl_major > 0) and (lcl_minor > 6) then // Can't use a LazVersion $DEFINE :(
begin begin
// This uses a resource file added via Project/Options // This uses a resource file added via Project/Options (Laz 1.7+)
if not FileExistsUTF8(sPoPath_en) then if not FileExistsUTF8(sPoPath_en) then
begin begin
// create a resource stream which points to the po file // create a resource stream which points to the po file
@ -1002,6 +1299,7 @@ initialization
else else
begin // Older version of laz begin // Older version of laz
// This uses an lrs file generated from lazres // This uses an lrs file generated from lazres
// Can't disable this with a LazVersion $DEFINE :(
{$I translate.lrs} {$I translate.lrs}
if not FileExistsUTF8(sPoPath_es) then if not FileExistsUTF8(sPoPath_es) then
begin begin