Never mark the DB dirty if it is read-only. Issue #1514
Setting save points does not make sense for read-only databases, so
do never set a save-point while executing a user query if the database has
been opened in read-only mode.
If setSavePoint is ever called in read-only mode, a warning is printed and
the save-point is not set.
If ever a read-write query is executed, it would be rejected by SQLite so
there is no risk of immediately committing any change to the DB.
Enhancement #1435: pragmas invoked from Tools menu
Pragmas integrity_check, quick_check, foreign_key_check and optimize are
integrated in the Tools menu. The actions open a confirmation dialog
(with Help button that opens the corresponding reference page in
sqlite.org) and, after confirmation, opens a new SQL editor tab and runs
there the pragma, showing the possible results.
Sender in executeQuery is null in this case, so a check is added.
Added accelerator to Tools menu entry, which lacked one.
Printing support: print dialog from QScintilla widgets
Add printing support for QScintilla widgets (SQL, JSON and XML). It can be
access through the contextual menu, shortcut (Ctrl+P) or (in the case of
the "Execute SQL" tab) from a button in the toolbar.
Ctrl+P was previously assigned to Plot Dock since
63c338c3595ef4c828f75d40d598eccf9ee24ec5 but, as it was foreseen in that
commit, it should be assign to print is ever supported. This change must
be mentioned in release notes.
Allow exporting the textual representation of binary data
For binary data, the file save dialog allows to select text files. When
the user saves to a text file (*.txt) the visual representation of the
hex buffer is saved to the file (addresses, hexadecimal bytes and ASCII
view). In this dump, only US-ASCII seems to be considered printable, while
in screen, Latin-1 is also considered.
This was one of the enhancement suggestions in issue #1438.
Improvements for drag and drop of items from the DB Schema dock to editor
Two new options editable from a new context menu of the dock:
- Drag & Drop Qualified Names: add table name to fields and schema name
to other objects (except for "main" schema)
- Drag & Drop Enquoted Names: whether to surround the identifiers by the
configured quoting characters for identifiers.
Support for dragging & dropping of attached databases names.
Add "." as separator for multiple dropped objects other than fields (since
they are not usually used in SQL as a list). This allows to compose
qualified names by dropping the parent and the child items together. This
is only generally useful when the "Qualified Names" option is disabled.