I took some Custom Indicator code from out there that was drawing lines across the chart window. Even though the lines "belong" to the indicator, when I right-clicked in the chart to place orders, it simply worked. Wherever I right-clicked, even if the cursor was directly at one of the lines drawn by the CI, I would get the long drop-down menu (which has a Buy/Sell at the very top, and "Properties" at the very bottom, with a bunch of options in between).
I did some re-working of the code, and now whenever I right-click even away from one the CI-drawn lines, I get the short drop down menu which gives me access to the Indicator properties (the menu only has the CI's properties at the top, then a "Delete Indicator" command, then a dimmed-out "Delete Indicator Window" option, and lastly "Indicator List").
This happens not just when the cursor is close to a line drawn by the CI, but almost anywhere in the chart unless it's a significant distance away from the CI's lines.
This means that I can't place orders on the charts, and I can't move/delete orders that are on it. Very frustrating!
The only way to get rid of this behaviour is to click realllllly close to the Price Axis, well away from the last candle/bar on the chart. The same applies if I use "Shift end of the chart from right border", resulting in lots of empty space away from the chart's candles, and indicator I suppose.
Trying to find where the problem was, I found that the code I borrowed was "topical", where as my code is "historical". The old code was performing calculations only based on the very last candle in the chart, and then drawing lines across the chart based on that last bar's calculations.
My code, on the other hand, uses buffers/indicators extensively. In other words, I keep a historical record of each candle's calculations in a buffer.
Could this be the problem? If so, is there a way around it?