For example, I want to draw a rectangle on one chart and have it appear on all other charts that are linked to the same instrument.
Question #1. Is there a mechanism to broadcast messages to different panels? Or to listen to messages in an indicator?
Option # A. Since the data in my case actually gets loaded and saved to the cloud, I build a mechanism to serialize and deserialize all the relevant drawing tools to an xml file that I temporarily save and load from the local file system.
If there were a good place to hook it, I could check to see if the file has been modified since one panel last loaded or saved it.
pseudo code:
DateTime lastLoaded; OnBarUpdate() if (lastLoaded < File.GetModifiedDate("myData_GC-12-20.xml") update my drawing tools with an invoker lastLoaded = DateTime.Now
Question #2. Is there some function besides OnBarUpdate() or OnRender() that would be a good place to check if my data needs to be reloaded?
related...
Question #3. Is there now a way to force a reload of a chart? Basically, a way to run the 'F5' functionality without sending keystrokes.
Question #4. Has anyone actually made an 'F5' function work using the sending of keys?
I have heard it speculated about but I haven't seen any code.
Any other ideas for how I can make edits in one window appear in another window?
-- -- -- -- -- -- -- -- -- -- -- --
More info:
I didn't want to confuse the question with too many details but what I actually built is a system so that storage for these "edits" are stored in the cloud so the edits don't always even come from the machine, location, etc. That all works although you need to press a button to "load/save to the cloud." I'd just like a way for different panels to stay in sync on the same machine.
Comment