0.2.2.0: Hints and Validation updated

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5477 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
gbamber
2016-12-14 07:14:38 +00:00
parent d68a23ef91
commit a707a8e666
5 changed files with 190 additions and 171 deletions

View File

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

View File

@ -28,7 +28,7 @@
<UseVersionInfo Value="True"/>
<AutoIncrementBuild Value="True"/>
<MinorVersionNr Value="2"/>
<RevisionNr Value="1"/>
<RevisionNr Value="2"/>
<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>
<BuildModes Count="6">

View File

@ -3,14 +3,14 @@
<ProjectSession>
<PathDelim Value="\"/>
<Version Value="10"/>
<BuildModes Active="Win64"/>
<BuildModes Active="Win32"/>
<Units Count="47">
<Unit0>
<Filename Value="jsonpackage.lpr"/>
<IsPartOfProject Value="True"/>
<EditorIndex Value="3"/>
<CursorPos X="15" Y="19"/>
<UsageCount Value="130"/>
<UsageCount Value="156"/>
<Loaded Value="True"/>
</Unit0>
<Unit1>
@ -20,13 +20,20 @@
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<IsVisibleTab Value="True"/>
<TopLine Value="58"/>
<CursorPos X="13" Y="63"/>
<UsageCount Value="130"/>
<TopLine Value="34"/>
<CursorPos X="48" Y="60"/>
<ExtraEditorCount Value="1"/>
<ExtraEditor1>
<IsVisibleTab Value="True"/>
<WindowIndex Value="1"/>
<TopLine Value="491"/>
<CursorPos X="21" Y="508"/>
</ExtraEditor1>
<UsageCount Value="156"/>
<Bookmarks Count="3">
<Item0 Y="822" ID="1"/>
<Item1 X="44" Y="768"/>
<Item2 Y="634" ID="2"/>
<Item0 Y="844" ID="1"/>
<Item1 X="44" Y="790"/>
<Item2 Y="656" ID="2"/>
</Bookmarks>
<Loaded Value="True"/>
<LoadedDesigner Value="True"/>
@ -34,7 +41,7 @@
<Unit2>
<Filename Value="ugenericcollection.pas"/>
<IsPartOfProject Value="True"/>
<UsageCount Value="130"/>
<UsageCount Value="156"/>
</Unit2>
<Unit3>
<Filename Value="C:\NewPascal\projects\MDSUM\CryptINI\lockini.pas"/>
@ -42,7 +49,7 @@
<UnitName Value="LockIni"/>
<EditorIndex Value="-1"/>
<CursorPos X="40" Y="9"/>
<UsageCount Value="48"/>
<UsageCount Value="74"/>
</Unit3>
<Unit4>
<Filename Value="D:\Lazarusprojects\golfml\egacalculator\source\umainform.pas"/>
@ -52,33 +59,33 @@
<EditorIndex Value="-1"/>
<TopLine Value="541"/>
<CursorPos X="3" Y="544"/>
<UsageCount Value="10"/>
<UsageCount Value="7"/>
</Unit4>
<Unit5>
<Filename Value="D:\Lazarusprojects\MDSUM\CryptINI\trunk\cryptinilpk\cryptini.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="7"/>
<UsageCount Value="4"/>
</Unit5>
<Unit6>
<Filename Value="D:\Lazarusprojects\MDSUM\CryptINI\trunk\latest_stable\cryptinilpk\ucryptini.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="1376"/>
<CursorPos X="55" Y="1411"/>
<UsageCount Value="12"/>
<UsageCount Value="9"/>
</Unit6>
<Unit7>
<Filename Value="..\..\lazarus\lcl\defaulttranslator.pas"/>
<UnitName Value="DefaultTranslator"/>
<EditorIndex Value="-1"/>
<CursorPos X="53" Y="29"/>
<UsageCount Value="11"/>
<UsageCount Value="8"/>
</Unit7>
<Unit8>
<Filename Value="..\..\lazarus\lcl\lcltranslator.pas"/>
<UnitName Value="LCLTranslator"/>
<EditorIndex Value="-1"/>
<TopLine Value="517"/>
<UsageCount Value="11"/>
<UsageCount Value="8"/>
</Unit8>
<Unit9>
<Filename Value="..\..\NewPascal\lazarus\packager\registration\registerfcl.pas"/>
@ -86,7 +93,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="24"/>
<CursorPos X="42" Y="37"/>
<UsageCount Value="7"/>
<UsageCount Value="4"/>
</Unit9>
<Unit10>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_mainfrm.pas"/>
@ -94,7 +101,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="22"/>
<CursorPos X="12" Y="23"/>
<UsageCount Value="7"/>
<UsageCount Value="4"/>
</Unit10>
<Unit11>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_mainfrm.lfm"/>
@ -103,7 +110,7 @@
<ResourceBaseClass Value="Form"/>
<EditorIndex Value="-1"/>
<CursorPos X="6"/>
<UsageCount Value="7"/>
<UsageCount Value="4"/>
<DefaultSyntaxHighlighter Value="LFM"/>
</Unit11>
<Unit12>
@ -112,21 +119,21 @@
<EditorIndex Value="-1"/>
<TopLine Value="10428"/>
<CursorPos X="33" Y="10448"/>
<UsageCount Value="14"/>
<UsageCount Value="11"/>
</Unit12>
<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"/>
<UsageCount Value="11"/>
</Unit13>
<Unit14>
<Filename Value="X:\MainForm\MainForm\umain.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="200"/>
<CursorPos X="21" Y="383"/>
<UsageCount Value="11"/>
<UsageCount Value="8"/>
</Unit14>
<Unit15>
<Filename Value="D:\lazarustrunk\common_components\kcontrols_1.7\source\kgrids.pas"/>
@ -134,7 +141,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="5883"/>
<CursorPos X="19" Y="5885"/>
<UsageCount Value="12"/>
<UsageCount Value="9"/>
</Unit15>
<Unit16>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\lcltype.pp"/>
@ -142,7 +149,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="1619"/>
<CursorPos X="21" Y="1643"/>
<UsageCount Value="12"/>
<UsageCount Value="9"/>
</Unit16>
<Unit17>
<Filename Value="C:\NewPascalDarwin\lazarus\ide\lazarus.pp"/>
@ -150,7 +157,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="63"/>
<CursorPos X="21" Y="94"/>
<UsageCount Value="12"/>
<UsageCount Value="9"/>
</Unit17>
<Unit18>
<Filename Value="D:\lazarustrunk\common_components\kcontrols_1.7\source\kmemo.pas"/>
@ -158,20 +165,20 @@
<EditorIndex Value="-1"/>
<TopLine Value="1501"/>
<CursorPos X="78" Y="1525"/>
<UsageCount Value="7"/>
<UsageCount Value="4"/>
</Unit18>
<Unit19>
<Filename Value="D:\lazarustrunk\common_components\cryptini\ucryptini.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="1402"/>
<CursorPos X="74" Y="346"/>
<UsageCount Value="16"/>
<UsageCount Value="13"/>
</Unit19>
<Unit20>
<Filename Value="C:\NewPascalDarwin\lazarus\ide\revision.inc"/>
<EditorIndex Value="-1"/>
<CursorPos X="28" Y="2"/>
<UsageCount Value="12"/>
<UsageCount Value="9"/>
</Unit20>
<Unit21>
<Filename Value="D:\lazarustrunk\common_components\bgrabitmap-master\bgrabitmap\bgrasse.pas"/>
@ -179,7 +186,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="405"/>
<CursorPos X="9" Y="429"/>
<UsageCount Value="10"/>
<UsageCount Value="7"/>
</Unit21>
<Unit22>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\translations.pas"/>
@ -187,37 +194,37 @@
<EditorIndex Value="-1"/>
<TopLine Value="76"/>
<CursorPos X="36" Y="82"/>
<UsageCount Value="10"/>
<UsageCount Value="7"/>
</Unit22>
<Unit23>
<Filename Value="translate.lrs"/>
<EditorIndex Value="-1"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit23>
<Unit24>
<Filename Value="C:\NewPascalDarwin\fpc\rtl\win\wininc\defines.inc"/>
<EditorIndex Value="-1"/>
<CursorPos X="64" Y="1204"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit24>
<Unit25>
<Filename Value="C:\trunklatest\fpc\rtl\objpas\fgl.pp"/>
<EditorIndex Value="-1"/>
<TopLine Value="1527"/>
<CursorPos Y="1547"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit25>
<Unit26>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_updates.pas"/>
<EditorIndex Value="-1"/>
<CursorPos X="45" Y="8"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit26>
<Unit27>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_options.pas"/>
<EditorIndex Value="-1"/>
<TopLine Value="70"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit27>
<Unit28>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_createrepositorypackage.pas"/>
@ -227,12 +234,12 @@
<EditorIndex Value="-1"/>
<TopLine Value="9"/>
<CursorPos X="26" Y="23"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit28>
<Unit29>
<Filename Value="C:\trunklatest\lazarus\components\onlinepackagemanager\opkman_createrepositorypackage.lfm"/>
<EditorIndex Value="-1"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
<DefaultSyntaxHighlighter Value="LFM"/>
</Unit29>
<Unit30>
@ -240,7 +247,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="212"/>
<CursorPos X="65" Y="218"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit30>
<Unit31>
<Filename Value="C:\trunklatest\lazarus\ide\lazarus.pp"/>
@ -248,7 +255,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="101"/>
<CursorPos X="38" Y="51"/>
<UsageCount Value="10"/>
<UsageCount Value="7"/>
</Unit31>
<Unit32>
<Filename Value="C:\trunklatest\lazarus\components\pochecker\pocheckermain.pp"/>
@ -257,7 +264,7 @@
<ResourceBaseClass Value="Form"/>
<EditorIndex Value="-1"/>
<CursorPos X="46" Y="18"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit32>
<Unit33>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\controls.pp"/>
@ -265,7 +272,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="2131"/>
<CursorPos X="3" Y="1900"/>
<UsageCount Value="9"/>
<UsageCount Value="6"/>
</Unit33>
<Unit34>
<Filename Value="C:\NewPascalDarwin\lazarus\lcl\stdctrls.pp"/>
@ -273,14 +280,14 @@
<EditorIndex Value="-1"/>
<TopLine Value="129"/>
<CursorPos X="38" Y="159"/>
<UsageCount Value="9"/>
<UsageCount Value="6"/>
</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"/>
<UsageCount Value="11"/>
</Unit35>
<Unit36>
<Filename Value="C:\trunklatest\fpc\packages\fcl-base\src\inifiles.pp"/>
@ -288,7 +295,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="1357"/>
<CursorPos X="31" Y="21"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</Unit36>
<Unit37>
<Filename Value="C:\trunklatest\lazarus\lcl\grids.pas"/>
@ -296,7 +303,7 @@
<EditorIndex Value="-1"/>
<TopLine Value="202"/>
<CursorPos X="20" Y="11529"/>
<UsageCount Value="15"/>
<UsageCount Value="12"/>
</Unit37>
<Unit38>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_packagelistfrm.pas"/>
@ -305,50 +312,50 @@
<ResourceBaseClass Value="Form"/>
<EditorIndex Value="-1"/>
<CursorPos X="28" Y="12"/>
<UsageCount Value="8"/>
<UsageCount Value="5"/>
</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"/>
<UsageCount Value="6"/>
</Unit39>
<Unit40>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_packagedetailsfrm.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="9"/>
<UsageCount Value="6"/>
</Unit40>
<Unit41>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_common.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="9"/>
<UsageCount Value="6"/>
</Unit41>
<Unit42>
<Filename Value="D:\lazarustrunk\common_components\onlinepackagemanager\onlinepackagemanager\opkman_downloader.pas"/>
<EditorIndex Value="-1"/>
<UsageCount Value="9"/>
<UsageCount Value="6"/>
</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"/>
<UsageCount Value="6"/>
</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"/>
<UsageCount Value="17"/>
</Unit44>
<Unit45>
<Filename Value="C:\trunklatest\lazarus\lcl\include\customform.inc"/>
<EditorIndex Value="2"/>
<TopLine Value="992"/>
<CursorPos Y="1012"/>
<UsageCount Value="13"/>
<UsageCount Value="26"/>
<Loaded Value="True"/>
</Unit45>
<Unit46>
@ -356,7 +363,7 @@
<EditorIndex Value="1"/>
<TopLine Value="88"/>
<CursorPos X="26" Y="110"/>
<UsageCount Value="12"/>
<UsageCount Value="25"/>
<Loaded Value="True"/>
</Unit46>
</Units>
@ -366,123 +373,123 @@
<JumpHistory Count="30" HistoryIndex="29">
<Position1>
<Filename Value="umain.pas"/>
<Caret Line="496" Column="23" TopLine="465"/>
<Caret Line="826" Column="9" TopLine="806"/>
</Position1>
<Position2>
<Filename Value="umain.pas"/>
<Caret Line="558" Column="22" TopLine="532"/>
<Caret Line="209" Column="44" TopLine="199"/>
</Position2>
<Position3>
<Filename Value="umain.pas"/>
<Caret Line="552" Column="56" TopLine="533"/>
<Caret Line="206" Column="24" TopLine="193"/>
</Position3>
<Position4>
<Filename Value="umain.pas"/>
<Caret Line="551" TopLine="516"/>
<Caret Line="878" Column="3" TopLine="876"/>
</Position4>
<Position5>
<Filename Value="umain.pas"/>
<Caret Line="826" Column="9" TopLine="806"/>
<Caret Line="841" Column="25" TopLine="817"/>
</Position5>
<Position6>
<Filename Value="umain.pas"/>
<Caret Line="209" Column="44" TopLine="199"/>
<Caret Line="814" TopLine="811"/>
</Position6>
<Position7>
<Filename Value="umain.pas"/>
<Caret Line="206" Column="24" TopLine="193"/>
<Caret Line="454" TopLine="436"/>
</Position7>
<Position8>
<Filename Value="umain.pas"/>
<Caret Line="878" Column="3" TopLine="876"/>
<Caret Line="70" Column="54" TopLine="43"/>
</Position8>
<Position9>
<Filename Value="umain.pas"/>
<Caret Line="841" Column="25" TopLine="817"/>
<Caret Line="909" TopLine="906"/>
</Position9>
<Position10>
<Filename Value="umain.pas"/>
<Caret Line="814" TopLine="811"/>
<Caret Line="846" Column="11" TopLine="827"/>
</Position10>
<Position11>
<Filename Value="umain.pas"/>
<Caret Line="454" TopLine="436"/>
<Caret Line="919" Column="40" TopLine="910"/>
</Position11>
<Position12>
<Filename Value="umain.pas"/>
<Caret Line="70" Column="54" TopLine="43"/>
<Caret Line="850" Column="25" TopLine="824"/>
</Position12>
<Position13>
<Filename Value="umain.pas"/>
<Caret Line="909" TopLine="906"/>
<Caret Line="844" Column="42" TopLine="825"/>
</Position13>
<Position14>
<Filename Value="umain.pas"/>
<Caret Line="846" Column="11" TopLine="827"/>
<Caret Line="852" TopLine="833"/>
</Position14>
<Position15>
<Filename Value="umain.pas"/>
<Caret Line="919" Column="40" TopLine="910"/>
<Caret Line="1165" Column="49" TopLine="1153"/>
</Position15>
<Position16>
<Filename Value="umain.pas"/>
<Caret Line="850" Column="25" TopLine="824"/>
<Caret Line="1113" Column="8" TopLine="1112"/>
</Position16>
<Position17>
<Filename Value="umain.pas"/>
<Caret Line="844" Column="42" TopLine="825"/>
<Caret Line="850" TopLine="817"/>
</Position17>
<Position18>
<Filename Value="umain.pas"/>
<Caret Line="852" TopLine="833"/>
<Caret Line="458" Column="25" TopLine="451"/>
</Position18>
<Position19>
<Filename Value="umain.pas"/>
<Caret Line="1165" Column="49" TopLine="1153"/>
<Caret Line="53" Column="42" TopLine="40"/>
</Position19>
<Position20>
<Filename Value="umain.pas"/>
<Caret Line="1113" Column="8" TopLine="1112"/>
<Caret Line="255" Column="12" TopLine="234"/>
</Position20>
<Position21>
<Filename Value="umain.pas"/>
<Caret Line="850" TopLine="817"/>
<Caret Line="900" Column="3" TopLine="898"/>
</Position21>
<Position22>
<Filename Value="umain.pas"/>
<Caret Line="458" Column="25" TopLine="451"/>
<Caret Line="1124" TopLine="1104"/>
</Position22>
<Position23>
<Filename Value="umain.pas"/>
<Caret Line="53" Column="42" TopLine="40"/>
<Caret Line="839" Column="9" TopLine="831"/>
</Position23>
<Position24>
<Filename Value="umain.pas"/>
<Caret Line="255" Column="12" TopLine="234"/>
<Caret Line="580" Column="39" TopLine="566"/>
</Position24>
<Position25>
<Filename Value="umain.pas"/>
<Caret Line="900" Column="3" TopLine="898"/>
<Caret Line="255" Column="17" TopLine="254"/>
</Position25>
<Position26>
<Filename Value="umain.pas"/>
<Caret Line="1124" TopLine="1104"/>
<Caret Line="480" Column="67" TopLine="471"/>
</Position26>
<Position27>
<Filename Value="umain.pas"/>
<Caret Line="839" Column="9" TopLine="831"/>
<Caret Line="647" Column="23" TopLine="629"/>
</Position27>
<Position28>
<Filename Value="umain.pas"/>
<Caret Line="580" Column="39" TopLine="566"/>
<Caret Line="1090" Column="18" TopLine="1065"/>
</Position28>
<Position29>
<Filename Value="umain.pas"/>
<Caret Line="255" Column="17" TopLine="254"/>
<Caret Line="697" Column="69" TopLine="683"/>
</Position29>
<Position30>
<Filename Value="umain.pas"/>
<Caret Line="480" Column="67" TopLine="471"/>
<Caret Line="695" Column="9" TopLine="675"/>
</Position30>
</JumpHistory>
</ProjectSession>

View File

@ -60,7 +60,8 @@ unit umain;
In Laz 1.7 DPIAwareness configured
0.2.0.0: Refactored GUI(minesadorada)
0.2.1.0: Added scrollbox to contain package info (GetMem)
0.2.2.0: ToDo
0.2.2.0: Hints and Validation updated
0.2.3.0: ToDo
- sort out resourcestrings
- Update Validation
- Update hints
@ -332,7 +333,7 @@ end;
procedure TfrmMain.CtrlSetUpPopupHandlers;
// Use different handlers for some controls
var
iCount, jCount,kCount: integer;
iCount: integer;
begin
with frmMain do
begin
@ -340,43 +341,19 @@ begin
begin
if (Controls[iCount].InheritsFrom(TControl) = False) then
continue;
{
// Iterate through the children of TScrollBox
if (Controls[iCount] is TGroupBox) then
// Iterate through the children of GroupBox
for jCount := 0 to Pred(TGroupBox(Controls[iCount]).ControlCount) do
// With TGroupBox(Controls[iCount]).Controls[jCount] do?
begin
if TGroupBox(Controls[iCount]).Controls[jCount] is TSpinEdit then
begin
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter :=
@CtrlShowPopup;
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave :=
@CtrlHidePopup;
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick :=
@CtrlHidePopup;
TSpinEdit(TGroupBox(Controls[iCount]).Controls[jCount]).OnChange :=
@CtrlMakeDirty;
end;
if TGroupBox(Controls[iCount]).Controls[jCount] is TCheckBox then
begin
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter :=
@CtrlShowPopup;
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave :=
@CtrlHidePopup;
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick :=
@CtrlHidePopup;
TCheckBox(TGroupBox(Controls[iCount]).Controls[jCount]).OnEditingDone :=
@CtrlMakeDirty;
end;
if TGroupBox(Controls[iCount]).Controls[jCount] is TLabel then
begin
TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseEnter :=
@CtrlShowPopup;
TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnMouseLeave :=
@CtrlHidePopup;
TLabel(TGroupBox(Controls[iCount]).Controls[jCount]).OnClick :=
@CtrlHidePopup;
end;
end;
}
if (Controls[iCount] is TEdit) then
begin
TEdit(Controls[iCount]).OnMouseEnter := @CtrlShowPopup;
@ -418,13 +395,13 @@ end;
procedure TfrmMain.DestroyControlArrays;
Var i:Integer;
begin
// This could be done with one loop
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
@ -441,7 +418,6 @@ begin
FreeAndNil(ArrayLblPackageFileName[i]);
For i:=0 to High(ArrayGrpBox) do
FreeAndNil(ArrayGrpBox[i]);
end;
procedure TfrmMain.AddNewControlArray;
@ -493,6 +469,10 @@ begin
SetBounds(8,10,50,23);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
OnMouseEnter:=@CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
Hint:='Just the package filename e.g. package.lpk';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// EditBox - Package name
@ -503,6 +483,11 @@ begin
SetBounds(64,8,256,23);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
OnMouseEnter:=@CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
OnEditingDone := @CtrlMakeDirty;
Hint:='Just the package filename e.g. package.lpk';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// Label - Package Version
@ -513,6 +498,10 @@ begin
SetBounds(330,10,50,23);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
OnMouseEnter:=@CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit V1
@ -523,6 +512,10 @@ begin
SetBounds(380,8,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
OnMouseEnter := @CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
OnChange :=@CtrlMakeDirty;
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
@ -535,6 +528,11 @@ begin
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Hint:='Format is: n.n.n.n';
OnMouseEnter := @CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
OnChange :=@CtrlMakeDirty;
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit V3
@ -546,6 +544,11 @@ begin
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Hint:='Format is: n.n.n.n';
OnMouseEnter := @CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
OnChange :=@CtrlMakeDirty;
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit V4
@ -557,6 +560,11 @@ begin
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
Hint:='Format is: n.n.n.n';
OnMouseEnter := @CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
OnChange :=@CtrlMakeDirty;
Hint:='Format is: n.n.n.n';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// ChkBox Notify
@ -568,6 +576,11 @@ begin
SetBounds(8,50,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
OnMouseEnter:=@CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
OnEditingDone := @CtrlMakeDirty;
Hint:='Check this if you don''t want to incrememt the version';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// Label Internal version
@ -578,6 +591,10 @@ begin
SetBounds(160,50,40,23);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
OnMouseEnter:=@CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
Hint:='Use in combination with Notify Update';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// SpinEdit Internal Version
@ -588,6 +605,11 @@ begin
SetBounds(260,48,40,20);
Visible:=True;
Tag:=Pred(iNumLpkFilesVisible);
OnMouseEnter := @CtrlShowPopup;
OnMouseLeave := @CtrlHidePopup;
OnClick := @CtrlHidePopup;
OnChange :=@CtrlMakeDirty;
Hint:='Use in combination with Notify Update';
Parent:=ArrayGrpBox[iNumLpkFilesVisible];
end;
// This sets the subcontrols up correctly
@ -671,13 +693,13 @@ begin
Result := False;
TempStringList := TStringList.Create;
try
//for iCount := 0 to Pred(stringPackageFiles.RowCount) do
//begin
// if TempStringlist.IndexOf(stringPackageFiles.Cells[0, iCount]) = -1 then
// TempStringList.Add(stringPackageFiles.Cells[0, iCount])
// else
// Result := True;
// end;
For iCount := 0 to High(ArrayEdtPackageFileName) do
begin
if TempStringlist.IndexOf(ArrayEdtPackageFileName[iCount].Text) = -1 then
TempStringList.Add(ArrayEdtPackageFileName[iCount].Text)
else
Result := True;
end;
finally
TempStringList.Free;
end;
@ -986,7 +1008,6 @@ function TfrmMain.ValidationFailed: boolean;
// Add checks as needed here
var
iCount: integer;
Quad: TVersionQuad; // fileinfo unit
begin
Result := False;
// Check Zipname and URL http:// length
@ -1003,15 +1024,6 @@ begin
editDownloadZipURL.Color := clYellow;
Result := True;
end;
// No lpk file?
{
if (stringPackageFiles.RowCount = 1) then
begin
slErrorList.Add(rsThereAreNoLp);
stringPackageFiles.Color := clYellow;
Result := True;
end;
}
// Remembered to type 'zip'?
if (Length(editName.Text) > 4) then
if (RightStr(LowerCase(editName.Text), 4) <> '.zip') then
@ -1028,7 +1040,7 @@ begin
editDownloadZipURL.Color := clYellow;
Result := True;
end;
// URL starts with 'http' ?
if ((Length(editDownloadZipURL.Text) > 4) and
(LeftStr(LowerCase(editDownloadZipURL.Text), 4) <> 'http')) then
begin
@ -1036,7 +1048,7 @@ begin
editDownloadZipURL.Color := clYellow;
Result := True;
end;
// URL contains zipfile name?
if (Pos(Lowercase(editName.Text), Lowercase(editDownloadZipURL.Text)) = 0) then
begin
slErrorList.Add(rsDownloadZipURLD);
@ -1045,44 +1057,44 @@ begin
end;
// Check package files entries
{
if (stringPackageFiles.RowCount > 1) then
for iCount := 1 to stringPackageFiles.RowCount - 1 do
For iCount:=0 to High(ArrayGrpBox) do
begin
if (Length(stringPackageFiles.Cells[0, iCount]) = 0) then
// Is package name empty?
If Length(ArrayEdtPackageFileName[iCount].Text)=0 then
begin
slErrorList.Add(Format(rsTheLpkEntryD2, [iCount]));
stringPackageFiles.Color := clYellow;
slErrorList.Add(Format(rsTheLpkEntryD2, [Succ(iCount)]));
ArrayEdtPackageFileName[iCount].Color := clYellow;
Result := True;
end;
if (Length(stringPackageFiles.Cells[1, iCount]) = 0) then
// Does it end with 'lpk'
if (RightStr(LowerCase(ArrayEdtPackageFileName[iCount].Text), 4) <> '.lpk') then
begin
slErrorList.Add(Format(rsVersionEntry, [iCount]));
stringPackageFiles.Color := clYellow;
slErrorList.Add(Format(rsTheLpkEntryD, [Succ(iCount)]));
ArrayEdtPackageFileName[iCount].Color := clYellow;
Result := True;
end;
if (TryStrToVersionQuad(stringPackageFiles.Cells[1, iCount], Quad) = False) then
// Is the version number zero
If (ArraySpinEditV1[iCount].Value = 0)
AND (ArraySpinEditV2[iCount].Value = 0)
AND (ArraySpinEditV3[iCount].Value = 0)
AND (ArraySpinEditV4[iCount].Value = 0)
then
begin
slErrorList.Add(Format(rsVersionEntry2, [iCount]));
stringPackageFiles.Color := clYellow;
slErrorList.Add(Format('Version for package %d is zero', [Succ(iCount)]));
ArraySpinEditV1[iCount].Color := clYellow;
ArraySpinEditV2[iCount].Color := clYellow;
ArraySpinEditV3[iCount].Color := clYellow;
ArraySpinEditV4[iCount].Color := clYellow;
Result := True;
end;
if (RightStr(LowerCase(stringPackageFiles.Cells[0, iCount]), 4) <> '.lpk') then
begin
slErrorList.Add(Format(rsTheLpkEntryD, [iCount]));
stringPackageFiles.Color := clYellow;
Result := True;
end;
end;
// Check for duplicate .lpk entries
if FoundADuplicateLPK then
begin
stringPackageFiles.Color := clYellow;
ArrayEdtPackageFileName[iCount].Color := clYellow;
slErrorList.Add(Format(rsThereAreOneO, [LineEnding]));
Result := True;
end;
}
end;
end;
procedure TfrmMain.SaveAsItemClick(Sender: TObject);