Charmed Quark Systems, Ltd. - Support Forums and Community

Full Version: Global find/replace
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I'm moving from an Insteon PLM to using an ISY99 for my insteon control. I was hoping I could just use the same drivername with the ISY and all would be good. Unfortunately, thats not the case.

Now what used to be Insteon.* is Insteon.*_Status. For example : Insteon.FamilyRoom is now Insteon.FamilyRoom_Status

I have a screen that has a ton of boolean images on it. I can't use XLat on the template because each set of images relies on a different field.

Any ideas? Should I create a Variable driver called Insteon with all the same field names I have now. Then I would create a driver called ISY instead of Insteon. Lastly, I'd need to set triggers on all the ISY *_Status fields to update the appropriate Variable driver field? This seems like a pain but still so much better than going through 5 images for each of 26 buttons/fields. I really don't want to click and update a total of 130 controls.

Ideas?
A global search/replace has been requested a few times. Dunno if it moved up the list when I wasn't lookin'.
well, guess I'll go with my hack. Seems much easier than having to manuall find and replace all the instances where the name changed.

Now I just need to find out how to use the eventing system to have a single handler take care of all changes for the INSTEON drive, then get the field name that was changed, and update the new driver. But i don't know how to get (1) the name of the field that was changed or (2) the new value of the field. Advice?

// Pseudo code
SetVariable(%(LVar:FieldName),???????)
SetVariable(%(LVar:NewValue),???????)
ISY.%(LVar:FieldName)_Status = %(LVar:NewValue).