Porting from LogicView2: Difference between revisions

From Axel Public Wiki
Jump to navigation Jump to search
No edit summary
Line 36: Line 36:
  </xs:complexType>
  </xs:complexType>


Add "subidx" definition in Tvalue:
Add "subidx" definition in Trecipe:


  <xs:complexType name="Trecipe">
  <xs:complexType name="Trecipe">

Revision as of 10:18, 24 July 2019

Porting procedure from LogicView2 1.4.0.x to SoftTune 5.0.0.x :

Here follows some operations to do on the SetupKit to use SoftTune redistributable file instead of LogicView2 redistributable files. Customizations (configurator name, extension, splash ecc) can then be applied in the same ways as old LogicView2

  • Backup

Backup SetupKit folder, procedures requires different steps so it is better to save a copy

  • Rename files

LogicView2.pct to SoftTune.pct

LogicView2.js to SoftTune.js

  • Update SetupKit with SoftTune redist file

Download and unzip into configurator folder SoftTune_Redist_1.5.0.x_yymmdd.zip

NB: for retrocompatibility a "LogicView2.pct" that simply includes "SoftTune.pct" file will be automatically added to SetupKit

  • Update SoftTune.pct

In SoftTune.pct search "LogicView2" and replace it with "SoftTune"

Add "subidx" definition in Tvalue:

<xs:complexType name="Tvalue">
	<xs:simpleContent>
		<xs:extension base="xs:string">
			<xs:attribute name="ipa" type="xs:integer"/>
			<xs:attribute name="defval" type="xs:string" />
			<xs:attribute name="subidx" type="xs:integer" />
		</xs:extension>
	</xs:simpleContent>
</xs:complexType>

Add "subidx" definition in Trecipe:

<xs:complexType name="Trecipe">
	<xs:sequence minOccurs="0" maxOccurs="unbounded">
		<xs:element name="value">
			<xs:complexType>
				<xs:simpleContent>
					<xs:extension base="xs:string">
						<xs:attribute name="ipa" type="xs:integer"/>
						<xs:attribute name="subidx" type="xs:integer"/>
						<xs:attribute name="ondeletenode" type="xs:string" fixed="configurator.OnDeleteRecipeNode"/>
					</xs:extension>
				</xs:simpleContent>
			</xs:complexType>
		</xs:element>
	</xs:sequence>
	<xs:attribute name="ipa" type="xs:integer"/>
	<xs:attribute name="caption" type="xs:string"/>
	<xs:attribute name="hasDatalink" type="xs:boolean" fixed="true"/>
	<xs:attribute name="insertable" type="xs:boolean" default="true"/>
	<xs:attribute name="DeleteElementFunc" type="xs:string" fixed="configurator.DeleteRecipe"/>
</xs:complexType>
  • Update other *.js *.html

Search "LogicView2" and replace it with "SoftTune" in all *.js *.html files where it is used as an "extension" keyword

ES: app.CallFunction( "LogicView2.func" ) to app.CallFunction( "SoftTune.func" )

  • Add Configurator_root protocol

Update [youTarget].pct device files into Catalog folder adding "<protocol>Configurator_root</protocol>" in <protocols> node

  • Update common.js

Update [SetupKit]\Common\Script\common.js files with these function definitions required by maingrid.js:

function GridLoadSettings_byColNames(grid, gridName, columns)
{
	for (var colName in columns)
	{
		var colIdx = columns[colName];

		var width = app.ReadINIString(INI_GRIDSETTINGS_PREFIX + gridName, INI_COLWIDTH_PREFIX + "_" + colName, "-1")
		if (width == -1)
			return   // se valore non trovato in ini esce subito, inutile proseguire a cercare anche le altre colonne

		// imposta la dimensione della colonna letta da file solo se la colonna non è già nascosta
		if (grid.ColWidth(colIdx) != 0)
			grid.ColWidth(colIdx) = width
	}
}
function GridSaveSettings_byColName(grid, gridName, columns, originalColumnsWidth)
{
	// effettua salvataggio solo se le colonne sono effettivamente state modificate
	if (!m_gridColumnsChanged)
		return
	
	for (var colName in columns)
	{
		var colIdx = columns[colName];

		// se la colonna era originariamente nascosta non ne salva la dimensione
		if (originalColumnsWidth && originalColumnsWidth[colIdx] == 0)
			continue

		var width = grid.ColWidth(colIdx)
		app.WriteINIString(INI_GRIDSETTINGS_PREFIX + gridName, INI_COLWIDTH_PREFIX + "_" + colName, width)
	}
}
  • Required files

Add to Setup\Shared folder these files

- Shared\redist\2017\vc_redist.x86.exe

- AlCatalogManager5.dll

- ToolkitPro1850vc150U.dll

  • Update iss

Update iss sections adding this

[Files]
Source: shared\AlCatalogManager5.dll; DestDir: {cf}\AlComponents; Flags: regserver sharedfile uninsneveruninstall
Source: Shared\ToolkitPro1850vc150U.dll; DestDir: "{sys}"; Flags: sharedfile
Source: Shared\redist\2017\vc_redist.x86.exe; DestDir: {tmp}; Flags: deleteafterinstall
[Run]
Filename: {tmp}\vc_redist.x86.exe; StatusMsg: "Installing Visual C++ 2017 Redistributable..."; Parameters: "/install /quiet /norestart"; Flags: waituntilterminated
  • Update make custom version file

Replace reference to "LogicView2" as "SoftTune"

es: in LVMakeCustomVersion.bat file

set SRC=%BUILDPATH%\SoftTune.exe"