Commit Graph

2155 Commits

Author SHA1 Message Date
Justin Clift
09e170f75d Fix typo in German translation. Thanks @weldwatcher :) 2017-11-20 15:58:25 +00:00
SourceTrigger
de2131daea Improve 4k/5k resolution rendering speed on macOS/OSX (#1233)
Initialize OpenGL rendering on macOS by add a hidden QOpenGLWidget.
2017-11-20 14:44:37 +00:00
Justin Clift
12ee94cee9 Adding our license files to the Win install list 2017-11-19 21:29:41 +00:00
mgrojo
b26948da14 Fix white over grey at invalid JSON in current line
The default style for invalid JSON or unclosed strings uses red
background and white foreground, but the current line has
precedence, so it is by default white over grey. We change the
default to something more readable for the current line at
invalid JSON. See issue #1173.
2017-11-19 21:20:33 +01:00
mgrojo
24a573dc68 Minor icon changes
New icons in resources from our icon set: Silk from
famfamfam.com

Icon for close. Applied to the find bar (see issue #191).

New icon for special copy. Applied to the "Copy with
Headers" option.

Removed the execution permission from some icon files.
2017-11-19 14:59:55 +01:00
mgrojo
a457d29fe2 Fix one case for the error visual hint in the SQL results pane 2017-11-19 01:11:20 +01:00
mgrojo
87e1b9bc7c Usability improvements for Extended Table Widget and SQL
results pane

Copy for multi-line text data surrounds the text with the
<pre> tag in the HTML version for avoiding line white-space
adjustments in the pasted text. See #1058

Do not use binary data in the "Use as Filter" option.

Indicate the existence of an error in the background of the
SQL results frame. The error-indicators is reused for
disabling this functionality.

When nothing is shown, a placeholder text hints the
objective of the results pane.

The preference label for the font size of this pane is
modified for consistency (SQL Log is another widget).
2017-11-19 00:57:42 +01:00
mgrojo
e60e9ffc75 Clipboard improvements: HTML and avoid pasting image from LibreCalc
Both "Copy" and "Copy with Headers" write in HTML and text format to the
system clipboard, when the selection includes more than one cell. This lets
the pasting application choose the most appropriate format.

Images have now no precedence over text when requesting the clipboard
content, so pasting from applications like LibreCalc, that set both formats
in the clipboard, works as expected, instead of pasting an image of the
copied text.

Copying and pasting inside the DB4S should not be affected, since the
application requests the text format and uses the internal buffer when
necessary (binary data included).

Related issue: #1058
2017-11-18 21:39:54 +01:00
Martin Kleusberg
28d53ef990 Fix qmake build
See issue #1231.
2017-11-18 18:24:21 +01:00
mgrojo
2da8fa7347 Merge branch 'master' of https://github.com/sqlitebrowser/sqlitebrowser 2017-11-18 16:47:59 +01:00
mgrojo
934ee7808a Added files to fix the build for JSON editor mode 2017-11-18 16:47:31 +01:00
mgrojo
c80b8452cc Merge branch 'json_cell_edit' 2017-11-18 16:29:06 +01:00
mgrojo
3c910a9e59 JSON mode for cell editor
Support for JSON in the Database Cell editor using the QScintilla library.

The lexJSON lexer has been added to the compilation, including the
necessary files from the QScintilla source package.

See issue #1173
2017-11-18 16:28:38 +01:00
mgrojo
71091b5cb3 Merge branch 'json_cell_edit' 2017-11-18 16:11:43 +01:00
mgrojo
279c419df9 JSON mode for cell editor
Support for JSON in the Database Cell editor using the QScintilla library.

The lexJSON lexer has been added to the compilation, including the
necessary files from the QScintilla source package.

See issue #1173
2017-11-18 16:10:07 +01:00
mgrojo
ae55de4aee Merge branch 'json_cell_edit' 2017-11-18 15:00:15 +01:00
mgrojo
c832d8a58c JSON mode for cell editor
Support for JSON in the Database Cell editor using the QScintilla library.

The lexJSON has been added to the compilation.

See issue #1173
2017-11-18 14:57:36 +01:00
Martin Kleusberg
73946400c3 Work around a bug in Qt which causes high pings for Wifi connections
See issue #1209.
2017-11-18 11:47:56 +01:00
Martin Kleusberg
514d5b703b Add "Date as dd/mm/yyyy" display format
Also reorganise the format functions to match the order of the dropbox
items.

See issue #1213.
2017-11-18 11:34:49 +01:00
Martin Kleusberg
2b68afb664 Rename function
Rename the DBBrowserDB::renameColumn() function to alterTable() because
it can do a lot more than just renaming a column.
2017-11-18 11:24:05 +01:00
Martin Kleusberg
c502c2e819 Set default tab back to Database Structure
This was changed by accident (I think) in commit
9ce4b232ba.
2017-11-17 23:56:38 +01:00
Martin Kleusberg
5fbf5ca1b2 Change label of "Delete record" button to reflect number of records
Change the label of the "Delete record" button in the Browse Data tab to
"Delete records" when multiple records are selected.

See issue #856.
2017-11-17 23:46:13 +01:00
Justin Clift
75d35c6301 Typo fix 2017-11-17 22:26:49 +00:00
Justin Clift
b7057bfa1f Include TIFF and WebP image formats with our Windows builds 2017-11-17 22:24:45 +00:00
mgr
1d701adec7 Merge branch 'master' of https://github.com/sqlitebrowser/sqlitebrowser 2017-11-17 23:07:30 +01:00
mgr
ccc332c1bb Merge branch 'master' of https://github.com/sqlitebrowser/sqlitebrowser 2017-11-17 22:57:54 +01:00
Justin Clift
e0be4d86c2 Add TIFF and WebP license info 2017-11-17 21:57:52 +00:00
mgr
e242fc84ee Search bar improvements
New button and key sequence (ESC) to close the search bar.

Clear selection (by not avoiding the search) when the text to search is
deleted, as expected by @pamtbaau at #1220.
2017-11-17 22:56:15 +01:00
Martin Kleusberg
3b511f83c3 Fix crash when exporting SQL files
Exporting SQL files crashed because of the multi-threaded loading of
data which also affects the SQL export. Because the table models were
destructed relatively quickly during the export's progress estimation,
their threads were still running and trying to access invalid data
structures.

See issue #1228.
2017-11-17 13:36:44 +01:00
Martin Kleusberg
ccb1fd4ca8 Fix loading settings in Export SQL dialog
Due to a copy-paste error we weren't loading the values of the
checkboxes in the Export SQL dialog correctly.
2017-11-17 13:35:40 +01:00
Martin Kleusberg
dd85634f81 Also emit loading finished signal when fetching an empty table set
When fetching data from an empty table or from an SQL query which
doesn't return any rows, we didn't emit the finishedFetch() signal which
is used to indicate that the fetching is completed. This is fixed by
this commit, so that the signal is always emitted no matter the number
of rows returned.

This fixes (probably besides other things) the current row numbers at
the bottom of the Browse Data tab when changing from a non-empty table
to an empty one.
2017-11-17 13:25:04 +01:00
Martin Kleusberg
d0771cb4bd Fix possible crashes when using context menu in Browse Data tab
Deactivate all menu actions in the context menu in the Browse Data tab
if no database file is opened. Without a database the read-only actions
were still enabled and would lead to a crash.

See issue #1228.
2017-11-17 13:20:08 +01:00
Martin Kleusberg
011f7edd1f Remove unused variable 2017-11-17 12:33:52 +01:00
mgr
23155a72d4 Fix bug in the incremental search and in find previous occurrence
Fixed the bug reported by @pamtbaau for the incremental search and the
bug noted by @MKleusberg for the find-previous, both described at #1220
2017-11-16 22:38:16 +01:00
mgr
ade562769a Minor improvements in Plot Dock columns
The Column Field is resized to the content.

The dummy column has been removed and the header no longer stretches the
last section property.

The table has alternating row colors for easy following of the field
checks.
2017-11-13 23:59:36 +01:00
mgr
124b209fa8 Add myself to the list of recipients for Travis notifications. 2017-11-12 23:05:02 +01:00
mgr
9ce4b232ba New shortcut for Copy with Headers and some self-documented shortcuts
Ctrl+H invokes the Copy with Headersers action in the Extended Table Widget
as suggested in #1058.

The following options in context menu display now their shortcuts:
Set to Null, Copy, Copy with Headers and Paste.

Some other shortcuts are now displayed in the corresponding tooltips.
2017-11-12 19:26:39 +01:00
mgr
d8aeae1a6f Avoid displaying an unnecessary horizontal scrollbar in SQL editor widgets
The following scroll width functionalities are added to QScintilla:
setScrollWidth, getScrollWidth, setScrollWidthTracking and
getScrollWidthTracking.

This allows setting a lower value for the initial scroll width (default is
2000 pixels).  Consequently, the horizontal scroll is only visible if the
SQL lines become bigger than window width.

The scroll width, though, is never reduced by Scintilla for performance
reasons.

See this for explanation:
https://github.com/jacobslusser/ScintillaNET/issues/216

And see this for a possible implementation of a fully adjusted scroll
width with fixed-width fonts:
https://groups.google.com/forum/#!topic/scintilla-interest/ly8u7mVDgyQ
2017-11-12 14:32:14 +01:00
mgr
e8e5671588 Range of plot points can be selected in graph and in table
The user is now able of selecting a range of contiguous points in any of
the graphs of the plot, through rectangle selection or click in single
point. This selection triggers automatically the selection of the
corresponding lines in the browsed table. In this way the user can analyse
the plot in detail.

Two other minor improvements: spelling error fixed and the dummy column in
the plot selection table has now transparent foreground (intends to avoid
wondering of the user about what functionality provides this column).
2017-11-11 23:10:11 +01:00
Martin Kleusberg
0c30659b6a Apply find bar visibility to all SQL tabs
If multiple SQL tabs are opened, show or hide the find bar for all of
them when changing the check state of the button. Also apply the find
bar state to newly opened SQL tabs.

This also fixes a crash which would happen if you click the Find button
prior to opening any SQL tabs, i.e. before opening the first database
file.
2017-11-11 19:31:33 +01:00
Martin Kleusberg
bbc1954f16 Fine-tune layout of the search bar
Remove the splitter between editor and find bar.
2017-11-11 19:31:33 +01:00
Martin Kleusberg
75e3171d61 Change SQL search icon 2017-11-11 19:31:33 +01:00
mgr
5b6cdf231e Execute SQL tab: Add search bar for SQL code #191
The find operations in QScintilla are used for implementing a find frame
in the SQL Editor of the main window. A checkable tool button is added
in the SQL Editor toolbar for showing and hiding this frame.

There are check boxes for Whole Words, Case Sensitive and Regular
Expressions. The QScintilla facilities in the findFirst method are used
for the implementation.
2017-11-11 19:31:33 +01:00
Martin Kleusberg
ed9fda28ea Speed up CSV import by not querying the stream position
Avoid querying the position in the text stream using Qt's pos() function
to update the progress dialog. Instead keep track of the stream position
manually. This is possible here because we don't ever seek in the file.
In result, this speeds up the CSV import dramatically.
2017-11-05 12:40:32 +01:00
mgr
a03a901051 Copy rows + header to clipboard
A new option in the context menu of the table widget is added for copying
to clipboard the content of the selected cells prepended with the
appropiate column names.

See issue #1058
2017-11-04 19:53:36 +01:00
Justin Clift
9016bf6dc7 Include Qt image format plugins with the Windows installers 2017-11-03 17:53:49 +00:00
Martin Kleusberg
4d2845c028 Add separate patch file for commit 3a0e29cf28
This way we can keep track of the changed we did to the included third
party libraries.
2017-11-02 23:10:02 +01:00
mgrojo
31e499d9fa Retain display formats (#1202)
The Colum Display Format Dialog recognizes now the current format in the
combo instead of falling back to Custom.

The display format items have been reorganized in groups with separators
in between. This is because the strict alphabetical order looses sense in
the translations.
2017-11-02 23:02:55 +01:00
Martin Kleusberg
60ce9c869b Fix progress dialog for imports of very large CSV files
QProgressDialog only takes an int as the maximum value and the current
value. So using the number of bytes parsed so far isn't going to work
for very large files when an int will overflow. This commit changes this
by precalculating a progress indicator and handing that over to the
QProgressDialog object.

See issue #1212.
2017-11-02 22:56:39 +01:00
Martin Kleusberg
fae7235548 Fix regression introduced by 1ca92cdde3
Turns out this doesn work as expected. So we have to convert the
QVariant to int and then case it to char instead.
2017-11-02 22:39:31 +01:00