For repainting the code does not "look back", rather, it would "look foward" which you don't want this indicator to do. This means in realtime you'll get more signals with less accuracy, because the ADX will always be comparing itself to the 0 values in the future.
You wait for a cross from one of them, then wait for a cross from the other within the close of the next 3 bars, then enter? Try letting your charts run, then refresh them and see how many entries disappear. SSL Channel will remain the same, but your original ADX crosses will probably show a lot of changes.
As for iCustom I mentioned this on another post, and FerruFx provided a more clear explaination
use this syntax:
adxcrossup[i] = iCustom(NULL,0,"ADXcrosses",0,i);
adxcrossdown[i] = iCustom(NULL,0,"ADXcrosses",1,i);
This will call the first 2 buffers of the indicator you name in "". Do the same with SSL Channel. It is case sensitive!
Just a thought if someone reads and wants to test this, could FFT be applied to repainting indicators to provide some sort of future projection to draw possible future bars?