Commit Graph

1817 Commits

Author SHA1 Message Date
Martin Kleusberg
4f18de856d plot: Fix labels for 'Row #' columns
See issue #950.
2017-05-08 13:19:59 +02:00
Martin Kleusberg
4706dd7dd7 plot: Correctly disable signals when needed
In the plot code use the blockSignals() method instead of connecting and
disconnecting signals and slots every time. The disconnects didn't
really work using the new C++11 connection code, so this commit restored
the functionality as it was intended.

This means that *a ton* of calls to updatePlot() are eliminated which
improves the performance.

It also avoid messing up the graph selection table in the Plot Dock in
certain cases.

See issue #950.
2017-05-08 13:05:30 +02:00
Martin Kleusberg
e1fbc98ef2 Fix default path in Save file as dialog
Actually use the default path settings from the Preferences dialog when
showing a Save dialog.
2017-05-08 12:22:44 +02:00
Martin Kleusberg
ef0ae8d549 Implement page-wise scrolling in Browse Data tab
Don't scroll by 100 records when using the scroll buttons but scroll by
one screen page.

See issue #232.
2017-05-08 12:06:56 +02:00
Justin Clift
06398be884 Updated CentOS/Fedora instructions
Tested and working on Fedora 25
2017-05-07 23:33:41 +01:00
Justin Clift
c8dba296df Add note about -DFORCE_INTERNAL_QSCINTILLA=ON to BUILDING.md 2017-05-07 19:42:17 +01:00
Martin Kleusberg
715074e0c6 Revert "tests: Fix build"
This reverts commit a436901d12.
2017-05-05 15:12:33 +02:00
Martin Kleusberg
0c8cb4ec1d Revert "Move fetching data for data browsing to a separate thread"
This reverts commit 6da71b6788.

This was causing just too many problems for one. The ones I noticed
were:
- Messing up the table view when scrolling down very large table where
the prefetching code is triggered.
- Crashing when setting an auto increment PK in the Edit Table dialog
because the sqlitetablemodel is used for a check in there.
- Probably more crashed in other places but for the same reason.
- Easy to fix but an issue nonetheless: when doing plotting a number of
empty rows would be inserted into the data browser.
- It just feels a little laggy.
2017-05-05 15:08:51 +02:00
Martin Kleusberg
e205f77e6a Use platform specific path separators in window caption
For displaying the path to the currently opened database file use
platform specific path separators.

See issue #735.
2017-05-05 14:19:50 +02:00
Martin Kleusberg
8c5650a63f libs: Update qcustomplot to version 2.0-beta 2017-05-04 21:51:43 +02:00
Martin Kleusberg
bddae31bf1 libs: Update qscintilla2 to version 2.10 2017-05-04 21:22:56 +02:00
Martin Kleusberg
9a171e0621 Avoid sorting twice in Browse Data tab
When browsing a table and changing the sort order, then switching to
another table, and then switching back, we would sort the table twice:
once using the default sort order and then again using the previously
used sort order. This results in four instead of two queries for those
tables (including the COUNT queries). This commit fixes this so that
only two queries are executed which should cut the run time for these
cases in half.

See issue #1007.
2017-05-04 19:54:03 +02:00
Martin Kleusberg
a436901d12 tests: Fix build 2017-05-04 19:26:44 +02:00
Martin Kleusberg
478ddc6da4 Simplify code 2017-05-04 19:21:17 +02:00
Martin Kleusberg
b5651d8b4d Keep the UI responsive when executing many statements in Execute SQL tab 2017-05-04 19:08:38 +02:00
Martin Kleusberg
6da71b6788 Move fetching data for data browsing to a separate thread
This moves the data fetching code into a separate thread for
asynchronous execution. The Browse Data and the Execute SQL tabs are
affected by this.

Note that this is a somewhat naive implementation that is meant for some
first testing.
2017-05-04 18:58:38 +02:00
Martin Kleusberg
3ff686d96f Show consistent slashes in recent files menu actions
See issue #735.
2017-05-03 21:11:29 +02:00
Martin Kleusberg
f7421a9d62 Fix messed up table browser
This is to work around a Qt bug which is present in at least version
5.7.1. The problem is this: when you browse a table/view with n
colums, then switch to a table/view with less than n columns, you'll be
able to resize the first (hidden!) column by resizing the section to the
left of the first visible column. By doing so the table view gets messed
up. But even when not resizing the first hidden column, tab-ing through
the fields will stop at the not-so-much-hidden rowid column, too. All
this an be fixed by this line. I haven't managed to find another
workaround or way to fix this yet.

If anybody knows more about this issue please let me know.
2017-05-03 20:43:31 +02:00
Justin Clift
46555bc819 Launch DB4S as user not Admin for Win installer
See #338 for details
2017-05-03 00:53:41 +01:00
Justin Clift
becd385c86 Update Windows build path for Qt 5.8 2017-05-02 22:59:00 +01:00
Martin Kleusberg
3596bf6c8d grammar: Add support for CHECK table constraints
This adds support for CHECK table constraints. We already had support
for CHECK column constraints and still mostly use that but with this
commit there are no more hickups when encountering such a table. It also
adds basic support for editing those tables: the CHECK constraint isn't
removed anymore when editing a different part of the table.

Example:
CREATE TABLE test(
	a int CHECK a IN(1,2,3),	-- This was supported before
	b int,
	CHECK b IN (1,2,3)		-- This is added by this commit
);
2017-04-30 23:35:48 +02:00
Martin Kleusberg
1eece9ef06 tests: Add regex test files to qmake project file 2017-04-29 13:50:57 +02:00
Martin Kleusberg
e72df17bc3 grammar: Support signed default values
This adds support for table definitions with a signed default value,
like this:

CREATE TABLE test(
    a int DEFAULT -1
);
2017-04-29 13:49:00 +02:00
Martin Kleusberg
d52263fc02 Fix crash when trying to show tooltips for views in Browse Data tab
When browsing a view in the Browse Data tab and hovering a cell we would
try to show a foreign key tool tip just like for tables. However, there
was no check if the browsed object is a table or a view, it was just
assumed it is a table. That would cause a crash whenever it actually was
a view. With this commit we check if it is a table first and, if not,
don't even try to show a tool tip.
2017-04-19 11:45:05 +02:00
Martin Kleusberg
760ef092cd Try setting a saner default row height in the data browser
Maybe this helps with issue #419.
2017-04-10 15:07:51 +02:00
Martin Kleusberg
f11c0181ca Improve wording in comment 2017-04-10 14:17:01 +02:00
Justin Clift
ec916226b0 Add dodgy temporary workaround for Qt OSX's missing cert verify() 2017-04-06 20:37:31 +01:00
Genyk
f031f24cdd sqlb_uk_UA_сhange8.ts
Корекція 3054-3510
 3198, 3203, 3208, 3336, 3371, 3386 - ? зміст?
2017-04-06 19:20:29 +01:00
Genyk
db2bad0a8a sqlb_uk_UA_сhange7.ts
Корекція 2013-3049
2017-04-06 19:20:20 +01:00
Genyk
db89568cbd Updated Ukrainian translation 2017-04-06 19:19:56 +01:00
Justin Clift
a3e1ab7ffb Add Ukrainian flag 2017-04-06 19:19:50 +01:00
Андрій Кондратьєв
dd685afef1 Ukrainian translation 2017-04-06 19:19:44 +01:00
Justin Clift
8b2e93d547 Ensure 'File → Export → Table(s) to JSON' is enabled/disabled along with its siblings 2017-04-04 14:07:44 +01:00
Justin Clift
ace89f124d Ensure window title for JSON export dialog is correct
It was still using the default title for the dialog (Export data
as CSV), which was a bit confusing.
2017-04-04 13:53:30 +01:00
Martin Kleusberg
1026e9e777 Allow changing case of column name in Edit Table dialog
Allow changing the case of a column name in the Edit Table dialog
without complaining about the name already being taken. This happened
when for example changing a column called 'A' to 'a', making this sort
of changes impossible.

See issue #985.
2017-03-25 22:19:22 +01:00
Martin Kleusberg
43a5175af1 dbhub: Keep track of the cloned databases
This adds a local database to keep track of all the cloned databases.
For now we only use this information to prevent exactly the same
database being downloaded twice.
2017-03-23 19:08:26 +01:00
Martin Kleusberg
b5d352bcdc Fix includes 2017-03-20 23:19:57 +01:00
Martin Kleusberg
f1194d845e Rename all the settings accessor functions
Rename the settings accessor functions from Settings::getSettingsValue()
(and similar) to Settings::getValue() (and similar). The 'Settings' bit
seems a bit redundant and costs a lot of screen space.
2017-03-20 23:16:52 +01:00
Martin Kleusberg
e6390b4d22 dbhub: Automatically generate a file name to save a database under
When fetching a remote database automatically generate a file name to
save the database as instead of asking the user for a path and name.

Also add a preferences option to set the directory for all cloned remote
databases.

This is obviously a trade-off: on the one hand this makes opening remote
databases simpler (it's just a double click), on the other hand it takes
control away from the users. The main reason for doing this, however, is
to indicate to the user that the cloned databases are going to be
controlled by DB4S. We have to keep track of the local databases in
order to update them from the right place, push them back to the right
place, etc. And because the local copies are under DB4S control we don't
want the user to move, rename, or delete them.
2017-03-20 23:06:58 +01:00
Martin Kleusberg
1e9fec270b Merge automatic update check into dbhub.io code
Move the network part of the automatic version check code into the
dbhub.io parts. While semantically this doesn't make a lot of sense it
simplifies the code a bit, reduces the size of the main window class,
and avoids duplication of code e.g. when introducing proxy support.
2017-03-19 17:29:20 +01:00
Martin Kleusberg
dec1c6acb1 dbhub: Code refactoring 2017-03-19 16:56:14 +01:00
Martin Kleusberg
7426e2c143 dbhub: Fix progress dialog
Fix progress dialog interfering with the save file dialog.

Fix cancelling of progress dialog. Before this you couldn't download a
file anymore after cancelling a download.
2017-03-18 21:36:09 +01:00
Martin Kleusberg
d2dc1870a9 Fix compiler warnings 2017-03-18 21:25:07 +01:00
Martin Kleusberg
22791e5b26 Fix possible build error 2017-03-18 21:21:07 +01:00
Martin Kleusberg
0f75ad54b2 Fix possible build error 2017-03-18 21:09:43 +01:00
Martin Kleusberg
3e4f3fc3d2 dbhub: Add remote dock with directory browsing support
This adds a new dock to the main window that contains all the remote
functionality (or is supposed to contain it all in the future).

It also adds a directory browsing feature which allows you to browse
through the folders and files on the dbhub server.

By double clicking a database you can download and open it. The Open
Remote menu action isn't needed anymore and has been removed.

This also fixes an issue with pushing databases where, after sending the
file is completed, the save dialog was opened.

Note that this is still WIP and is far from polished.
2017-03-18 20:40:59 +01:00
Martin Kleusberg
dc3550ee6a dbhub: Add another root CA for testing 2017-03-16 20:59:59 +01:00
Martin Kleusberg
cf08c26e21 grammar: Fix assignment of table information
See issue #975.
2017-03-16 17:10:00 +01:00
Martin Kleusberg
f67817ee68 Simplify code for reloading settings
This simplifies the code for reloading the settings in the Execute SQL
area.

It might also fix a bug where setting a new font for the success/error
message at the bottom of each Execute SQL tab would be overwritten to
Monospace immediately after setting it.
2017-03-16 16:59:23 +01:00
Justin Clift
836966dcf5 Merge pull request #972 from prutz1311/master
Fix plotting with datetimes on x axis (#738)
2017-03-05 13:50:29 +00:00