I have modified equates.clw to include a few more COLOR: equates for text and panels (regions) etc.
Is the flow of values from an EQUATE uni-directional? For example:
I created a new equate in equates.clw - COLOR:InfoText EQUATE(0AE5F16H)
I then assign the color of a string property to be COLOR:InfoText
So far so good, the string changes color as expected.
I modify the the color in equates.clw thus - COLOR:InfoText EQUATE(0F9F9F9H)
I close Clarion, start it up and open the app but the string has retained the original color, it no longer has the EQUATE name COLOR:InfoText in the color property, it has 0AE5F16H instead. If I type in COLOR:InfoText it changes to the new color.
I assume then that the color property in the STRING control 'looks up' the EQUATE to try and match it, otherwise it uses the value it has stored somewhere. Is that correct?
It was my intention to have the color of 'informational text' EQUATEd to a particular value. If I needed/wanted to change it all I needed to do was change the value of the EQUATE and recompile. This doesn't seem to be the case.
Is that the correct method or have I misunderstood the purpose of an EQUATE?
Is there a better method to achieve my objective?