Keep cursor position on save

I've been using openscad a lot these days to start using my reprap 3D printer. Every time I hit "CTRL+S" for save my progress and see what changed, I was frustated by the fact that the cursos reset to the start of the file every time.

This patch aim to solve that problem. Before set the new file content via setPlainText I save the cursor position and the vertical scrollbar position and after the new text is set, I'm restoring that values to the original ones, so the cursor keeps in place and you can continue editing and the preview is updated at the same time.

When opening a new file, y set the content to an empty string, so the call on refreshDocument put the cursor at the start on the new file. Alto I'm doing boundary check to avoid putting the cursor past the last character.

I'm not used to user QT, so I hope the methos used to override the setPlainText is right, if not let me know.