Fix #ifdef
Disallow constructing SyntaxHighlighter without a parent

The parent parameter is mandatory in QSyntaxHighlighter.
Rewrite LineNumberArea
Suppress the Save as dialog in some cases

When the file is new (hasn't been saved to disk yet) and consists of
space characters only, it's almost certainly useless to the user and
she wouldn't want to save it anyway.

This also comes in handy when testing EditorLineNumberArea.