Hi there, I managed to get the Zoom Out to work, Don't mind the border I already have a fix for this, I just didn't include it in this example.
Pretty much the problem is that when I zoom out you'll notice that the blue indicator shows that the cursors actual position on the layer is not equal to that of the actual mouse cursor on the screen.
Zoom increments at 0.05 (or 5% of the actual frame width and height per scroll down). I don't exactly know how to correct this. I thought about splitting the screen into 4 parts using the center as the base, and then adding and subtracting from X or/and Y where the offset is greater or less, however as the offset is less effected near the center, so I suspect it requires something a bit more complex than that (because if the cursor is dead center, it lines up perfectly fine).
The main reason for this being needed in my game is because my graphics are quite large, and I need to be able to zoom all the way out to see things, as a result, I need the cursor to be able to click on everything even when zoomed out. Also this same problem occurs for Zooming In as well. Thankyou to who ever assists.