QUESTION: what has to happen so that a non-parameter property will also be persisted?
TRACE info to illustrate:
(#40, INITIALIZED)getting EnableUpperLine: value=True (#40, INITIALIZED) 01/01/00 10:57:793 CurrentBar=-1 ^NDX (Weekly) Entered VsaTiming.ToString(): isInitialized=True (#40, INITIALIZED) 01/01/00 10:57:793 CurrentBar=-1 ^NDX (Weekly) Leaving VsaTiming.ToString() <Note: above here was when the Indicator dialog was up; below here after clicking "OK"> (#40, INITIALIZED)getting EnableUpperLine: value=True (#40, INITIALIZED)getting EnableUpperLine: value=True <Note: below here is constructing the new object> (#44, constructing)Entered VsaTiming.VsaTiming() (#44, constructing)Leaving VsaTiming.VsaTiming() <Note: Below here is copying EnableUpperLine from the old to the new.> <Note: Notice the copy overrides the default value (false), which is correct behavior> (#40, INITIALIZED)getting EnableUpperLine: value=True (#44, CONSTRUCTED)Setting EnableUpperLine: from=False to=True <Note: now that parameter properties have been copied over Initialize() is called for the new object> (#44, initializing) 20:11:16 11:16:008 CurrentBar=n/a ^NDX (Weekly) Entered VsaTiming.Initialize(): (VsaIndicator:Initialize) (#44, initializing) 20:11:16 11:16:008 CurrentBar=n/a ^NDX (Weekly) Leaving VsaTiming.Initialize(): (VsaIndicator:Initialize) (#44, initializing) 20:11:16 11:16:008 CurrentBar=n/a ^NDX (Weekly) Entered VsaTiming.Initialize() User colors: upper=Color [DodgerBlue] center=Color [DarkGray] lower=Color [DodgerBlue] enableUpperLine=True
The #'s are object IDs I keep just to allow clarity in understanding cases like this.
#40 was the original indicator object.
#44 is the new object NT is making
"EnableUpperLine" is a parameter that *does* get propagated
Non-parameter properties do not participate. How can I set one up so that it will participate, but not show up in the Indicators dialog?
Thanks,
EV
Comment