I was tinkering with the source code to OwnPaint from https://github.com/voleksa/OwnPaint
and sorted out a few of the bugs, but I cannot seem to get rid of the access violation error.
I get the error when trying to change properties of all the shapes and also when clicking on the rounded rectangle icon initially.
I can get the color, line width, fill style, fill color to change but only after pressing OK to ignore the error.
Graphics gurus badly needed for much needed help on this one.
The problem seems to be calls to a procedure called "Invalidate_". In the entire project, there is only one place where there is an instruction to check whether this pointer is empty. Elsewhere it is simply called without checking.
I did a little test using the debugger:
1. I compiled and ran the program,
2. I drew a rectangle in black (default),
3. I displayed the fill color change dialog for this rectangle,
4. an error message window appeared.
While tracing, when the color of the rectangle changes, the "TBrushColorParam.ChangeBrushColor(Sender: TObject)" procedure is called. While tracing the code contained in it, I receive information from the debugger that the pointer to the called procedure "Invalidate_" is empty.