Colour trend spare pens like the legend background; Micro Trend is intermittent (ISS-055)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
e98322d165
commit
de55132dbf
4 changed files with 59 additions and 51 deletions
|
|
@ -117,6 +117,7 @@ rotation, zoom. Outputs (⇨): *Hairline value[n]*, *Time range begin/end*, *Upd
|
||||||
- **Workaround** (verified 2026-10-02): pad the trend to 50 pens with
|
- **Workaround** (verified 2026-10-02): pad the trend to 50 pens with
|
||||||
`displays/add_trend_spares.ps1 -Path <display>.xml`. Spares copy the first pen's source,
|
`displays/add_trend_spares.ps1 -Path <display>.xml`. Spares copy the first pen's source,
|
||||||
are scaled to 1E30–2E30 (clipped), hidden from the legend and get blank unique legend texts
|
are scaled to 1E30–2E30 (clipped), hidden from the legend and get blank unique legend texts
|
||||||
|
in the legend background colour
|
||||||
(the web legend ignores *Show in legend*, ISS-056). Run it again after editing the trend; do
|
(the web legend ignores *Show in legend*, ISS-056). Run it again after editing the trend; do
|
||||||
not keep hidden real pens (they count against the 50). Cost: 50 history requests per trend.
|
not keep hidden real pens (they count against the 50). Cost: 50 history requests per trend.
|
||||||
- Working on the web as on the desktop: value axis, last/current time range, update interval,
|
- Working on the web as on the desktop: value axis, last/current time range, update interval,
|
||||||
|
|
@ -127,4 +128,5 @@ rotation, zoom. Outputs (⇨): *Hairline value[n]*, *Time range begin/end*, *Upd
|
||||||
`<property type="componentProperty"><name>itemName[0]</name><value>…</value></property>`,
|
`<property type="componentProperty"><name>itemName[0]</name><value>…</value></property>`,
|
||||||
`scaleMin[n]`, `scaleMax[n]`; elements `numberOfPens`, `realTime`, `fillWithHistory`,
|
`scaleMin[n]`, `scaleMax[n]`; elements `numberOfPens`, `realTime`, `fillWithHistory`,
|
||||||
`timeRange` (s, default 300), `sampleCount` (default 300)): drew on desktop and web the first
|
`timeRange` (s, default 300), `sampleCount` (default 300)): drew on desktop and web the first
|
||||||
time, then stayed blank on every later open (ISS-055, open).
|
time, then stayed blank on several later opens and later drew again; after an in-page reload
|
||||||
|
sometimes only part of a pen shows (intermittent, ISS-055, open).
|
||||||
|
|
|
||||||
|
|
@ -280,7 +280,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -326,7 +326,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -372,7 +372,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -418,7 +418,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -464,7 +464,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -510,7 +510,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -556,7 +556,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -602,7 +602,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -648,7 +648,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -694,7 +694,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -740,7 +740,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -786,7 +786,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -832,7 +832,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -878,7 +878,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -924,7 +924,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -970,7 +970,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1016,7 +1016,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1062,7 +1062,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1108,7 +1108,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1154,7 +1154,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1200,7 +1200,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1246,7 +1246,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1292,7 +1292,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1338,7 +1338,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1384,7 +1384,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1430,7 +1430,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1476,7 +1476,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1522,7 +1522,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1568,7 +1568,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1614,7 +1614,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1660,7 +1660,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1706,7 +1706,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1752,7 +1752,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1798,7 +1798,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1844,7 +1844,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1890,7 +1890,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1936,7 +1936,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -1982,7 +1982,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2028,7 +2028,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2074,7 +2074,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2120,7 +2120,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2166,7 +2166,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2212,7 +2212,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2258,7 +2258,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2304,7 +2304,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2350,7 +2350,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2396,7 +2396,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
@ -2442,7 +2442,7 @@
|
||||||
</pen>
|
</pen>
|
||||||
<pen type="pen">
|
<pen type="pen">
|
||||||
<type>1</type>
|
<type>1</type>
|
||||||
<color type="colorSet" r="65" g="105" b="225"/>
|
<color type="colorSet" r="240" g="240" b="240"/>
|
||||||
<stroke type="stroke" width="0.0"/>
|
<stroke type="stroke" width="0.0"/>
|
||||||
<paint>@NULL</paint>
|
<paint>@NULL</paint>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,8 @@
|
||||||
#
|
#
|
||||||
# Spare pens copy the first real pen's source, are scaled far outside the data (manual scale
|
# Spare pens copy the first real pen's source, are scaled far outside the data (manual scale
|
||||||
# 1E30..2E30, so the line is clipped), hidden from the legend and get blank, unique legend texts
|
# 1E30..2E30, so the line is clipped), hidden from the legend and get blank, unique legend texts
|
||||||
# (1, 2, 3 ... spaces) because the web legend ignores "Show in legend". Empty pens are removed.
|
# (1, 2, 3 ... spaces) in the legend background colour, because the web legend ignores
|
||||||
|
# "Show in legend". Empty pens are removed; do not keep hidden real pens (they count against 50).
|
||||||
# Run it again after editing the trend in the Edit Module (it only adds what is missing).
|
# Run it again after editing the trend in the Edit Module (it only adds what is missing).
|
||||||
#
|
#
|
||||||
# Usage: powershell -ExecutionPolicy Bypass -File add_trend_spares.ps1 -Path <display>.xml
|
# Usage: powershell -ExecutionPolicy Bypass -File add_trend_spares.ps1 -Path <display>.xml
|
||||||
|
|
@ -42,6 +43,10 @@ $text = $panelRx.Replace($text, {
|
||||||
$need = $target - $visibleReal
|
$need = $target - $visibleReal
|
||||||
if ($need -lt 0) { $need = 0 }
|
if ($need -lt 0) { $need = 0 }
|
||||||
$template = $real[0]
|
$template = $real[0]
|
||||||
|
# spare colour = legend background, so their (blank) web legend entries do not show
|
||||||
|
$bg = (New-Object Text.RegularExpressions.Regex '<legendBackgroundColor type="colorSet" r="\d+" g="\d+" b="\d+"/>').Match($panel)
|
||||||
|
$spareColor = '<color type="colorSet" r="240" g="240" b="240"/>'
|
||||||
|
if ($bg.Success) { $spareColor = $bg.Value.Replace('<legendBackgroundColor ', '<color ') }
|
||||||
$spares = @()
|
$spares = @()
|
||||||
for ($i = 1; $i -le $need; $i++) {
|
for ($i = 1; $i -le $need; $i++) {
|
||||||
$s = $template
|
$s = $template
|
||||||
|
|
@ -57,6 +62,7 @@ $text = $panelRx.Replace($text, {
|
||||||
$s = Set-Tag $s 'procentual' 'false'
|
$s = Set-Tag $s 'procentual' 'false'
|
||||||
$s = Set-Tag $s 'annotationVisible' 'false'
|
$s = Set-Tag $s 'annotationVisible' 'false'
|
||||||
foreach ($g in @('majorGridVisible', 'minorGridVisible', 'lowHighLimitGridVisible', 'lowHighLimitGridAreaVisible', 'lowLowHighHighLimitGridVisible')) { $s = Set-Tag $s $g 'false' }
|
foreach ($g in @('majorGridVisible', 'minorGridVisible', 'lowHighLimitGridVisible', 'lowHighLimitGridAreaVisible', 'lowLowHighHighLimitGridVisible')) { $s = Set-Tag $s $g 'false' }
|
||||||
|
$s = (New-Object Text.RegularExpressions.Regex '<color type="colorSet" r="\d+" g="\d+" b="\d+"/>').Replace($s, $spareColor, 1)
|
||||||
$s = (New-Object Text.RegularExpressions.Regex '<stroke type="stroke" width="[^"]*"').Replace($s, '<stroke type="stroke" width="0.0"', 1)
|
$s = (New-Object Text.RegularExpressions.Regex '<stroke type="stroke" width="[^"]*"').Replace($s, '<stroke type="stroke" width="0.0"', 1)
|
||||||
$s = (New-Object Text.RegularExpressions.Regex '<paint type="paint">.*?</paint>(?=\s*<visible>)', 'Singleline').Replace($s, '<paint>@NULL</paint>', 1)
|
$s = (New-Object Text.RegularExpressions.Regex '<paint type="paint">.*?</paint>(?=\s*<visible>)', 'Singleline').Replace($s, '<paint>@NULL</paint>', 1)
|
||||||
$spares += $s
|
$spares += $s
|
||||||
|
|
|
||||||
|
|
@ -74,5 +74,5 @@ development system (see "Test system" in `progress.md`); they do not exist on ot
|
||||||
| ISS-052 | 2026-10-01 | GRAPHICS (stale item id) | The HTML display `CIENG_Tank` showed **0** in its number field on `CI-Eng-Sample.TANK1.LEVEL` (live value 50) and the popup `ITM-E-NO_MAIN, No main item found`, in a fresh session after a CI Server restart. The display XML stores `<itemName>` **and** `<itemId>1.1.268.0.0.1.1.7</itemId>` from when it was built; after today's sample reloads the item has `ID_NUMBER` 357. Phase 10 had seen live values after a reload, so the id is not always used, but here it broke the field. | closed | Fixed in the sample: removed the `<itemId>` line from `displays/CIENG_Tank.xml`, redeployed; the field shows 50 and the popup is gone (binding by name). Documented in `create-display.md`. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `examples/CI-Eng-Sample/displays/CIENG_Tank.xml`; `.claude/skills/graphics/tasks/create-display.md`; `.claude/skills/graphics/tasks/deploy-displays.md` |
|
| ISS-052 | 2026-10-01 | GRAPHICS (stale item id) | The HTML display `CIENG_Tank` showed **0** in its number field on `CI-Eng-Sample.TANK1.LEVEL` (live value 50) and the popup `ITM-E-NO_MAIN, No main item found`, in a fresh session after a CI Server restart. The display XML stores `<itemName>` **and** `<itemId>1.1.268.0.0.1.1.7</itemId>` from when it was built; after today's sample reloads the item has `ID_NUMBER` 357. Phase 10 had seen live values after a reload, so the id is not always used, but here it broke the field. | closed | Fixed in the sample: removed the `<itemId>` line from `displays/CIENG_Tank.xml`, redeployed; the field shows 50 and the popup is gone (binding by name). Documented in `create-display.md`. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `examples/CI-Eng-Sample/displays/CIENG_Tank.xml`; `.claude/skills/graphics/tasks/create-display.md`; `.claude/skills/graphics/tasks/deploy-displays.md` |
|
||||||
| ISS-053 | 2026-10-01 | HAC (manual vs installed) | IM 36K10J20 vs the installed `hac.sup`/scripts: (1) *Start in manual mode*: §1.3 says HAC starts in manual by default, §1.5 and the `hac.sup` help say automatic; the installed template sets `START_MANUAL = YES`. (2) `MAXOPNDB` default: help 500, manual 50 (§1.5) and 5 (§4.8). (3) `QUESIZE` default: help 100 K, manual 2000 K (file sets 2000). (4) §4.5 says `tls\com` and `tls\exe` cannot be mirrored, but the template mirrors `12 COM` (excluding `ci_command.cmd`). (5) §4.4 says the critical processes are already in the queue/CPU check lists; the installed file has no `MAX_QUEUE`/`MAX_CPU`/`INACTIVE` lines. (6) `hacw_standby` uses `TLS_LST_PATH` when `TLS_BACKUP_PATH` is unset (manual: `TLS_ALLUSERS_PATH`). (7) The template `IP_DEVICE` is `localhost` (priority 0), which §1.3 says to remove after testing. (8) HMI properties have `communicationInterval`/`Timeout`/`RetryCount`, not in the manual. | closed | Installed software is the reference (standing user decision); documented in the J20 summary §5 and the `high-availability` skill. Not testable on one server. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10J20-01EN.md`; `.claude/skills/high-availability/tasks/*.md` |
|
| ISS-053 | 2026-10-01 | HAC (manual vs installed) | IM 36K10J20 vs the installed `hac.sup`/scripts: (1) *Start in manual mode*: §1.3 says HAC starts in manual by default, §1.5 and the `hac.sup` help say automatic; the installed template sets `START_MANUAL = YES`. (2) `MAXOPNDB` default: help 500, manual 50 (§1.5) and 5 (§4.8). (3) `QUESIZE` default: help 100 K, manual 2000 K (file sets 2000). (4) §4.5 says `tls\com` and `tls\exe` cannot be mirrored, but the template mirrors `12 COM` (excluding `ci_command.cmd`). (5) §4.4 says the critical processes are already in the queue/CPU check lists; the installed file has no `MAX_QUEUE`/`MAX_CPU`/`INACTIVE` lines. (6) `hacw_standby` uses `TLS_LST_PATH` when `TLS_BACKUP_PATH` is unset (manual: `TLS_ALLUSERS_PATH`). (7) The template `IP_DEVICE` is `localhost` (priority 0), which §1.3 says to remove after testing. (8) HMI properties have `communicationInterval`/`Timeout`/`RetryCount`, not in the manual. | closed | Installed software is the reference (standing user decision); documented in the J20 summary §5 and the `high-availability` skill. Not testable on one server. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10J20-01EN.md`; `.claude/skills/high-availability/tasks/*.md` |
|
||||||
| ISS-054 | 2026-10-01 | AD (manual vs installed) | IM 36K10J40 vs the installed `dssana.sup`: the *Active Directory* tab has keywords the manual does not describe — `AD_SERVER`, `AD_SERVER_BACKUP` (host[:port], 389/636), `AD_SECURE` (LDAPS; installed `NO`, help says default yes), `AD_ACCESS_USER`/`AD_ACCESS_PASSWORD` (blank = the CI Server service account). The manual's *Profile priority* is `USER_DF.MERGE_PRIORITY`; *Directory group* is `DIRECTORY_GROUP` (68 characters). The SSO keytab path is given as `%TLS_WAP_PATH%\webapps\auth\WEB-INF` (§2.5.1) and `%TLS_ALLUSERS_PATH%\wap\webapps\auth\WEB-INF` (§3.4.3) — the same folder on the test system. | closed | Installed software is the reference; documented in the J40 summary §5 and `authorization/tasks/active-directory.md`. Not testable without a domain. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10J40-01EN.md`; `.claude/skills/authorization/tasks/active-directory.md` |
|
| ISS-054 | 2026-10-01 | AD (manual vs installed) | IM 36K10J40 vs the installed `dssana.sup`: the *Active Directory* tab has keywords the manual does not describe — `AD_SERVER`, `AD_SERVER_BACKUP` (host[:port], 389/636), `AD_SECURE` (LDAPS; installed `NO`, help says default yes), `AD_ACCESS_USER`/`AD_ACCESS_PASSWORD` (blank = the CI Server service account). The manual's *Profile priority* is `USER_DF.MERGE_PRIORITY`; *Directory group* is `DIRECTORY_GROUP` (68 characters). The SSO keytab path is given as `%TLS_WAP_PATH%\webapps\auth\WEB-INF` (§2.5.1) and `%TLS_ALLUSERS_PATH%\wap\webapps\auth\WEB-INF` (§3.4.3) — the same folder on the test system. | closed | Installed software is the reference; documented in the J40 summary §5 and `authorization/tasks/active-directory.md`. Not testable without a domain. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10J40-01EN.md`; `.claude/skills/authorization/tasks/active-directory.md` |
|
||||||
| ISS-055 | 2026-10-02 | GRAPHICS (Micro Trend) | A Micro Trend written into `CIENG_TrendLab` (`itemName[0..1]` = `TANK1.LEVEL`/`INFLOW`, `numberOfPens` 2, `realTime`, `fillWithHistory`) drew both pens on the desktop and in the browser the first time (about 13:33), then stayed **blank** on every later open on both clients: with and without the 48 spare trend pens, and with explicit `timeRange` 600 / `sampleCount` 60. No console error; CI Server running. Code: `MicroTrend.js` only starts when all properties are set (`startTrendIfAllPropertiesAreSet`; it also compares `scaleMax[i]` with `scaleMin[1]`). | open | Still to try: build the Micro Trend in the Edit Module (compare the XML), connect `itemName[n]` instead of a fixed value (as in factory/test displays), a display with only the Micro Trend, a CI Server restart. | `.claude/skills/graphics/tasks/trend.md` §6; `examples/CI-Eng-Sample/displays/CIENG_TrendLab.xml` |
|
| ISS-055 | 2026-10-02 | GRAPHICS (Micro Trend) | A Micro Trend written into `CIENG_TrendLab` (`itemName[0..1]` = `TANK1.LEVEL`/`INFLOW`, `numberOfPens` 2, `realTime`, `fillWithHistory`) drew both pens on the desktop and in the browser the first time (about 13:33), then stayed **blank** on every later open on both clients: with and without the 48 spare trend pens, and with explicit `timeRange` 600 / `sampleCount` 60. No console error; CI Server running. Code: `MicroTrend.js` only starts when all properties are set (`startTrendIfAllPropertiesAreSet`; it also compares `scaleMax[i]` with `scaleMin[1]`). | open | Later 2026-10-02 the clean sample file (no explicit `timeRange`/`sampleCount`, 48 spare trend pens) drew both pens on the desktop and in the browser after a fresh login; after a *View > Reload* in the browser only LEVEL showed fully, INFLOW only a short piece: the behaviour is intermittent. Still to try: build the Micro Trend in the Edit Module (compare the XML), connect `itemName[n]` instead of a fixed value (as in factory/test displays), a display with only the Micro Trend, a CI Server restart. | `.claude/skills/graphics/tasks/trend.md` §6; `examples/CI-Eng-Sample/displays/CIENG_TrendLab.xml` |
|
||||||
| ISS-056 | 2026-10-02 | GRAPHICS (trend, manual vs installed) | (1) IM 36K10C50 Table 2.27-28 lists *Appearance - Show in Legend* as supported in the HTML display, but the web legend listed pens with `visibleLegend` false (the desktop hides them). (2) The legend position (`PositionSouthWest`) was not applied in the browser (not supported per the table). (3) The manual says a trend has up to 20 pens; the component property sheet has 20 slots, but the web code reserves 50 and `maximumPens` 50 works on the desktop. (4) Desktop: pen `title`/`titlePlacement`, pen limit values `lowLimit`… and chart `backgroundPaint` had no visible effect; time-axis minor ticks/grid showed nothing at a 10-minute range. | open | Documented in `trend.md`; installed software is the reference. Close when the user confirms. | `.claude/skills/graphics/tasks/trend.md` |
|
| ISS-056 | 2026-10-02 | GRAPHICS (trend, manual vs installed) | (1) IM 36K10C50 Table 2.27-28 lists *Appearance - Show in Legend* as supported in the HTML display, but the web legend listed pens with `visibleLegend` false (the desktop hides them). (2) The legend position (`PositionSouthWest`) was not applied in the browser (not supported per the table). (3) The manual says a trend has up to 20 pens; the component property sheet has 20 slots, but the web code reserves 50 and `maximumPens` 50 works on the desktop. (4) Desktop: pen `title`/`titlePlacement`, pen limit values `lowLimit`… and chart `backgroundPaint` had no visible effect; time-axis minor ticks/grid showed nothing at a 10-minute range. | open | Documented in `trend.md`; installed software is the reference. Close when the user confirms. | `.claude/skills/graphics/tasks/trend.md` |
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue