sqlite allows to attach the same database file multiple times with
different alias names - as long as you're not running on shared cache
mode. So DB4S should not deny a user to do so.
DbStructureQItemViewFacade provides a simple read only interface to a
QAbstractItemView (e.g. QTreeView) that holds a model() of type
DBStructureModel.
It is designed to simplify the access to the actual selected node.
The Class follows the facade design pattern.
But it doesn't control the lifecycle of the itemView it is connected to.
This changes the different tabs in the Browse Data tab to docks. Docks
can be tabbed as well (which is also the default now) but also allow
free floating windows or split views.
See issues #756, #1465, #1905, #2229, #2283.
In Windows (related issue #1069) and maybe in macOS (related issue #1982)
output to console is inhibited.
This will allow these messages to be seen in our Error Log window.
* Add spin box for max recent files
* Set default value for max recent files
* Implement handling of max recent files value
* Add separator to separate the recent file list and the clear list action
This uses the name of the selected table for the tab titles in the
Browse Data tabs. When setting a custom tab title that title is
preserved.
See issue #2283.
Avoid a possible database busy warning when using the Browse Table
context menu action in the Database Structure tab. This happened because
of an unnecessary schema update.
Also do not refresh the view when changing between the main tabs. This
makes tab switching faster, makes sure the scroll position is not lost,
and avoid two queries instead of one when using the Browse Table action.
See issue #2283.
This adds a new tab widget inside the Browse Data tab which allows you
to create multiple TableBrowser widgets. This way you can browse
multiple tables at the same time and switch between them.
I don't consider this done. The UI for this is likely to change in the
future. This commit is just a first step towards this goal.
See issue #2283.
This adds a button called 'Yes. Don't ask again' to the collation
message box which asks you to confirm adding a default collation when
your database needs a custom collation.
See issue #2356.
When double clicking the currently checked out commit in the commits
list in the Remote dock only open the local file if it has not been
modified. If it was modified show a warning about the modifications and
redownload the file if the user decides to proceed.
See issue #2349.
When introducing custom reply handlers for fetch actions we had to
remove the general reply handler. This left push actions without any
reply handler. This commit reverts the temporary workarounds and makes
sure the general reply handler is called for push actions.
See issue #2359.
This is just a temporary patch until Martin has time to look at
this properly.
This code needs to be commented out (for now), as it's conflicting
with the previous commit. However that one is needed for the
application to function, so I'm giving that one priority.
"Cut" copies the cells to clipboard and then deletes the data taking into
account a possible NOT NULL constraint in the field to leave the cell empty
instead of setting it to NULL. Rowid column is ignored.
See issue #2355
- Avoid editing data in checkable columns or columns with combo-boxes
- Select items to allow navigation with cursor keys in each row
- More edit triggers for editable columns
- Icons for primary and foreign key columns
- Dialog width increased so more columns fit
See issue #598
Fix a bug which made tables from other schemas than the main schema
inaccessible in the Browse Data tab. Most notably this always selects
table "main"."tbl" instead of for example "temp"."tbl".
See issue #2348.
This will close all SQL tabs, asking if they have to be saved and close
the database file.
Fixed a bug when switching between two project files from the Recent Files
list. If the first project had a pending change and it was saved at that
very moment, the database was already closed and the project file was saved
without DB file.
See issue #2289
* Add a new submenu ('File > Recent Files') and move recent file actions inside.
* Add a new menu item to the menu of recent files ('Clear List') and delete divider(QAction *recentSeparatorAct) because that is no longer used.
* Added general function to clear Settings value (including cache)