CairoCanvas: make the canvas handle a real cairo context instead of a dummy value

git-svn-id: http://svn.freepascal.org/svn/lazarus/trunk@40982 4005530d-fff6-0310-9dd1-cebe43e6787f
CairoCanvas: refactored TranslateBufferByIntfImage->GraphicToARGB32 to be useful in other parts

git-svn-id: http://svn.freepascal.org/svn/lazarus/trunk@40983 4005530d-fff6-0310-9dd1-cebe43e6787f