As mentioned, something like this is much easier added by original coder.
Looks like your dealing w/draw objects, and those are not likely exposed.
Complicated w/dll, but ChartScale.ChartObjects.CollectionChanged might work.
On CollectionChanged Add Event, run check for your drawobject type and tag.
(Hopefully originator used standardized naming convention for tag names)
//Example Adding CollectionChanged Event from OnState = State.DataLoaded
if (ChartControl != null)
{
int csccAdd = 0;
foreach (ChartScale cs in ChartControl.ChartPanels.Where(x => x != null).SelectMany(cp => cp.Scales))
{
csccAdd++;
Print("Subscribing to ChartScale.ChartObjects.CollectionChanged = " + csccAdd);
cs.ChartObjects.CollectionChanged += OnChartObjectsChanged;
}
}
//Example Removing CollectionChanged Event from OnState = State.Terminated
if (ChartControl != null)
{
int csccDel = 0;
foreach (ChartScale cs in ChartControl.ChartPanels.Where(x => x != null).SelectMany(cp => cp.Scales))
{
csccDel++;
Print("Un-Subscribing to ChartScale.ChartObjects.CollectionChanged = " + csccDel);
cs.ChartObjects.CollectionChanged -= OnChartObjectsChanged;
}
}
//Example ChartScale.ChartObjects.CollectionChanged Event
private void OnChartObjectsChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
{
if (e.Action == System.Collections.Specialized.NotifyCollectionChangedAction.Add && e.NewItems[0].GetType().Namespace == "NinjaTrader.NinjaScript.DrawingTools")
{
dynamic cssdt = e.NewItems[0];
if(cssdt != null && !cssdt.IsUserDrawn) Print(cssdt.GetType().ToString() + " " + cssdt.Tag.ToString())
}
}
An old thread of mine from back in the beta days (days I’d like to forget )
https://forum.ninjatrader.com/forum/historical-beta-archive/version-8-beta/76389-insertcomplete
Couple other threads found with simple browser search
https://forum.ninjatrader.com/forum/ninjatrader-8/indicator-development/1293029-running-code-when-objects-are-drawn
https://forum.ninjatrader.com/forum/ninjatrader-8/indicator-development/1188276-events-for-objects-drawn-on-the-chart
Be Safe in this Crazy World!