New check box in the Find and Replace dialog for Scintilla editors. The
new option uses the feature in QScintilla for finding text in the
selection only.
The implementation has been changed to use findFirst(InSelection) and
findNext so it works exactly as designed by QScintilla. Consequently the
finding process has to be cancel whenever any of the parameters have
changed.
The last line of the selection is considered part of the block, even if it
is not completely selected. At the same time, we have to discard this last
line of the selection, if the index is 0, since in that case there is no
actual selected character in the line.
Additionally all the steps in the replacement are considered a single
action for history, so that user can undo the change in a single undo
action.
See issue #1614
Delete patches that have already been applied upstream and add new ones
for build related files that were not registered.
See commits:
209120c01e43134caa2d
and issue #1621
QScintilla is returning strings with text(line) with line terminator and
they are also counted by lineLength, so the Windows version has to
substract one for setSelection.
This solves various problems resulting in characters being removed at the
beginning of lines when commenting or uncommenting blocks of code with
Windows line terminators.
Summary from NEWS file:
- Control-wheel scroll will now zoom in and out of the document.
- Added accessibility support.
- Added setScrollWidth() , scrollWidth, setScrollWidthTracking() and
scrollWidthTracking() to QsciScintilla. (one of our patches)
- Bug fixes.
This is to deal with building on Ubuntu 18.04 and seeing the message:
Could not find a package configuration file provided by "Qt5LinguistTools"
with any of the following names:
Qt5LinguistToolsConfig.cmake
qt5linguisttools-config.cmake
* As mentioned in one of previous commits, dump wrapper was causing problem with launchpad CI/CD for snap packages. Content of this wrapper file resemble snapcraft-desktop-helpers for gtk application.
Signed-off-by: Navdeep Singh Sidhu <deepsidhu1313@users.noreply.github.com>
* Added qt5-gtk-platformtheme in comments, this can be uncommented if snap is build on base 18 to support gtk theme for QT app.
Signed-off-by: Navdeep Singh Sidhu <deepsidhu1313@users.noreply.github.com>
A new command is added for commenting or uncommenting SQL code (depending
of the state of the first line of the block).
It is bound to "Ctrl+/" as used by many IDEs ("Ctrl+-" is more standard as
Zoom out). Unusual Scintilla binding for "Ctrl+/" is removed for avoiding
interference.
If there is no selection, the current line is un/commented.
See issue #1614
Each time the searched term or the dialog is closed, the find process in
the QScintilla widget is cancelled. This avoids the problem mentioned in
issue #1612 and similar others, like finding, then changing the searched
term and pressing Replace. In all these cases Replace only finds the next
term to be replaced without performing any actual replacement.
This commit fixes the SQL export which did not quote the field names in
the INSERT statements.
This also simplifies the code for escaping SQL identifiers.
In the Edit Table dialog we used to call our alterTable function (which
works around SQLite's missing full ALTER TABLE support by - besided
other things - copying all the data of the table) for pretty much every
change immediately. This was taking a lot of time for larger tables.
Our alterTable function allowed any number of changes if they affect
only one field of the table at once. So we could have reduced the number
of calls a lot by just using that capability. Instead however, this
commit improves the alterTable function to make possible transforming a
table completely in just one call. It does so by taking the new table
schema and using that without further modification. It also takes a new
parameter to keep track of what column in the old table becomes what
column in the new table, so the data can be preserved.
This commit obviously also changes the Edit Table dialog to make proper
use of the new features. This means that whatever changes you make to a
table, you will only have to wait once until for the alterTable call,
and that's when clicking the OK button.
See issue #1444.
waitForDbRelease receives a parameter for waiting, cancelling the other
operation or asking the user; defaulting to ask.
The wait option is used for the conditional formatting, so it doesn't
interfere with the loading. This avoid opening a dialog when scrolling
the table over a still not fetched area with conditional formats.
And it is done independently of the threading model supported by SQLite.
This adds support for the REGEXP operator using the syntax /regexp/ in the
filter line boxes.
A new helper option for a not-containing filter is added using this new
syntax. This could be simplified using a NOT LIKE filter, but we don't
currently support that.
The "Use in Filter Expression > Containing" option escapes a possible
slash in the beginning, so it is not interpreted as a regexp filter.
See issue #1522
This slightly changes the behaviour regarding the read-only mode in
project files. It makes sure that we always respect the user's choice to
open a file in read-only mode, even if the project file says it wasn't
opened in read-only mode before.
When opening a database in read-only mode and creating a project file,
save the read-only flag in the project file.
When loading a project file with a read only flag set, open the database
in read-only mode.
See issue #1598.
This adds a label to the status bar which becomes visible whenever the
database is busy. It also specifies the currently running action. Also
add a button which allows you to cancel this action at the next
opportunity.
Note that this doesn't work for the Execute SQL tab yet which requires
some more rewriting of the code there.