Only allow the user to select which tables to export in the Export SQL
dialog instead of tables and views. The selection of views wasn't
respected anyway, so the list including views is just confusing.
When executing multiple SQL statements at once, e.g. when importing an
SQL file (but not in the Execute SQL tab!), and hitting an error save
the error message before reverting the transaction. This preserves the
error message which is otherwise replaced by "not an error" because the
rollback doesn't fail.
Don't commit the current transaction when setting the defer_foreign_keys
pragma in the Execute SQL tab. Not only isn't it required by SQLite but
it's quite contrary to the point of a pragma the purpose of which is
to change the current transaction.
A new setting is added to the 'SQL' tab of the Preferences dialog. It
enables the line wrapping in the editors with none/character/word/
whitespace boundaries.
See comments in issue #1173.
The download and disk usage difference is apparent and should be avoided when possible
```
$ apt show git-core git 2>/dev/null | grep '^Installed-Size'
Installed-Size: 8,192 B
Installed-Size: 24.1 MB
```
Signed-off-by: 林博仁 <Buo.Ren.Lin@gmail.com>
Document the behaviour of the 'Execute SQL' button so users can discover
the feature for executing the statements in the selection.
See related issue #1336
"SQL sentences" to "SQL statements", as that is the standard term.
Add plot feature to list of features in README file and DB4S abbreviation
In order to avoid removing multiple line breaks inside strings, the
replacement is only done when removeCommentsFromQuery has performed some
substitution. Otherwise the query is left as is.
This will improve the problem described in issue #1334 for simple cases.
There will be still problems when the query has comments and multiple line
breaks inside strings.
Browse data table settings are now saved in the project files using a pure
tagged XML format. This would make easier the generation of our project
files by external tools or direct human edition of the project files.
Compatibility with the older format is preserved in the loading. Previous
software versions have been tested with the new format, and they are also
able to load the new project files ignoring these new tags.
See related issue #1306
Quoted values in DELETE FROM and UPDATE SET take into account that value
could have a single quote and they are now doubled.
Detect tables without rowid in order to make invisible the "Show rowid
column"
See issue #1332
Use SQLite3 and Qt APIs to export the table data using appropriate JSON
data types.
See issue #1323: JSON table export converts integer and null values to
string.
All the colour configurations have been reviewed under an operating-system theme
dark theme.
Some hard-coded colours in QScintilla editors and Data Browser have been
replaced by queries of the system palette or reuse of our settings.
New settings for foreground and background colours for QScintilla editors
defaulting to system colours. This is mainly needed because if the user
saves colour settings for a dark theme and then he changes the system theme
back to a light theme, then the foreground colours are preserved while the
background would fall back to the system theme leading to an incompatible
combination. This also gives more freedom to the user in defining his own
colour combinations.
Since only the default colour settings adapt to the system theme, and once
settings are saved this can no longer happen, a 'Restore Defaults' button
is added so the default adapted colour settings can be restored. This is
also useful for restoring default behaviour when wanted.
Other fixes and improvements: waiting cursor while saving; check boxes in
SQL tab for bold, italic and underline when applicable; avoid translation
of hidden colour setting names used in code.
See related issue #1324.
For single cell without-headers copy it is better to not escape the text
since there isn't any gain in trying to escape quotes, end-of-lines or
tabs. Escaping should only be done for table like data for compatibility
to spreadsheets applications.
See issue #1244.
Added some texts to the "What's This" information of some buttons or other
widgets that lacked them. This will help the user to discover the provided
features.
Specifically, help is added for the filter fields and the remote dock.
See discussions in issues #1311 and #1312.
Set breaks in nested switch where missing.
Fix editModeChanged since it was overwriting the dataType for JSON and
SVG.
Additionally, removed unnecessary conversion in fromJson.
Two new options added to the context menu of the plot:
- Stacked bars: switches between stacked bars or grouped bars. The former
overlapped layout is avoided since it doesn't make much sense.
- Show legend: toggles the display of a plot legend with a translucent
background. Possible future improvement is dragging the legend with the
mouse.
Now that we have a proper type column in the plot selection widget, the
internal type storing can be simplified.
If the plot has more than one Y selections for one X of label type (bar
charts) the first bar is opaque, but the additional are translucent in
order to be seen, since they will overlap.
What's This information added to explain all the possible selections for
plotting.
String type columns are now selectable as X axis. In that case a bar chart
is plotted where the column values are used as bar labels.
A new Axis Type column is added to the axis selection table, so the user
knows before-hand how the plot will be drawn.
Line type and point shape combo-boxes are not enabled for bar charts, since
they don't make sense.
Columns that make no sense for the Y axis as strings and date/times are not
selectable for that axis.
Isolated column names are added to the list of possible auto-completions,
so they can be completed without having to enter first the table followed
by dot. "Table.field" completion is still supported for completing only for
fields inside that context.
See issue #1242
The original Create statement formatting is preserved when the menu option
"Copy Create statement" is selected, regardless of the setting that removes
the line breaks in the schema view.
The Edit Role is requested to the model for getting the original text data.
See issue #1300