Commit Graph

70 Commits

Author SHA1 Message Date
Peinthor Rene
3b992e7337 executesql: use a different open sql file icon
The current one always looks to me as if the button is disabled.
2015-02-08 11:12:24 +01:00
Peinthor Rene
46cfc99031 browsetab: change go to begin/end button text so its more obvious begin and end is meant 2014-12-08 11:43:08 +01:00
yunfzhan
71cf0531fe Add two buttons to navigate to the head and the tail. 2014-12-02 18:23:52 -08:00
Peinthor Rene
1ce33792c5 exportcsv: allow to select more than 1 table at a time to export 2014-11-23 11:38:46 +01:00
Martin Kleusberg
f829f06050 Distinguish Save and Save As when saving SQL files in the Execute SQL tab
When saving a SQL file in the Execute Query tab don't always ask for a
new file name but use the file name used when last saving the tab or
used when a file was opened. Add a 'Save As' menu option with the old
behaviour of always asking for a file name.

See issue #152.
2014-11-15 12:32:30 +01:00
Martin Kleusberg
a22ed6f9d3 cipher: Add option for changing the encryption used for the current file
Add a new menu option to the main window (only visible when built with
the sqlcipher option enabled) which opens a dialog asking for new
encryption settings. These are then applied to a new database to which
all contents of the current one are exported. The old database is then
replaced by the new one.

This adds support for encrypting plaintext databases, decrypting
encrypted databases and changing the password or other settings of
encrypted databases.

If this turns out to work well enough we have functional SQLCipher
encryption support with only details missing.
2014-11-02 19:06:06 +01:00
Justin Clift
05207b0b9f Renamed project to "DB Browser for SQLite" 2014-09-21 11:14:39 +01:00
Martin Kleusberg
6c52ac7368 Add menu item to allow attaching other databases
Add a new menu option which allows attaching other databases. Doing so
by running the SQL code by yourself using the Execute SQL tab won't work
because the SQL tab creates a restorepoint and attaching databases while
being in a transaction is not allowed.

Note that this commit misses quite a few features: In case of name
conflicts the UI may break, there is no way to tell which databases have
been attached and the attached databases are not stored in the project
files.

See issue #100.
2014-09-16 19:19:00 +02:00
Martin Kleusberg
beae69296c MainWindow: Add new dock showing the DB schema
See issue #75.
2014-08-22 15:05:23 +02:00
Martin Kleusberg
547a4d87a7 MainWindow: Change window title of toolbar from "toolBar" to "DB Toolbar"
Change the window title of the toolbar to the same name it has in the
View menu as the window title actually is visible in the UI when right
clicking on the toolbar or menu.
2014-08-22 14:45:14 +02:00
Martin Kleusberg
5f4066c351 MainWindow: Show line numbers in SQL log 2014-07-31 21:19:41 +02:00
Sergey Muratov
87bda982c1 I18N was improved. Translation GUI to Russian was made. 2014-07-15 22:33:17 +04:00
Martin Kleusberg
2136813bd6 MainWindow: Add Ctrl+Return shortcut for executing SQL and add tooltips
Add the Ctrl+Return shortcut for executing the current SQL again. This
needs to be done using C++ code instead of setting it in Qt Designer
because setting multiple shortcuts in the latter means defining a key
sequence row.

Also add the keyboard shortcuts to the tooltips of the buttons as they
didn't appear anywhere in the program.
2014-06-14 13:51:12 +02:00
Peinthor Rene
25fe80f5f9 remove Ctrl+Return shortcut from executing sql
somehow neither F5 nor Ctrl+Return would work in that combination
2014-06-13 18:02:17 +02:00
Martin Kleusberg
8c8187740d MainWindow: Increase default size, tabify docks by default
Increase the default size of the main window a bit.

Move the SQL log dock to the right side and tabify it with the plot
dock. This way there is much more space for actual information by
default.

The idea behind both changes is to make it easier for first time users
to find their way around and offer them a more appropriate window layout
for the usual tasks. The layout is still entirely configurable and
non-first-time users are not affected at all.
2014-06-07 00:14:50 +02:00
Martin Kleusberg
62622ae8e8 Add support for basic project files
This add support for saving and loading of SQLiteBrowser project files.
As of now these files contain a reference to the used database file,
store some window and widget settings as well as the content of the SQL
tabs.

Note that while working this is a first draft only. Especially the
parsing code still might contain a bug or two and there is a lot more
information to be added to these files later (like filters, plot
settings, etc.).

Also note that the main intention behind these project files was to make
the life of users easier while not getting into the way of those who don't
need them. The program still remains a database browser and doesn't
become a visual database studio thing.
2014-06-06 23:32:35 +02:00
Martin Kleusberg
2fcb131c25 MainWindow: Add keyboard shortcut for 'Write Changes' action
Closes #22.
2014-05-27 09:56:02 +02:00
Martin Kleusberg
297bfbce0a Move filter header from window to table widget and show sort indicators
Move the FilterTableHeader object from the MainWindow to the
ExtendedTableWidget class because it actually is a part of the latter,
not the former.

Show sort order arrows in the table header of the Browse Data tab after
clicking it.
2014-05-25 14:35:56 +02:00
Peinthor Rene
f7315f5f90 add a few more help menu entries
website, wiki, bug report
2014-05-25 12:58:01 +02:00
Martin Kleusberg
42501d31fe Fix some strings in the MainWindow form file
Change the tool tips and help texts for the navigation buttons in the
Browse Data tab. They were still referring to the old concept of pages
of 1000 records.
2014-05-24 20:24:20 +02:00
Peinthor Rene
1126b6f7cd plot: windows or qt4 doesn't like empty column headers 2014-05-17 10:31:45 +02:00
Peinthor Rene
a4f8ee7721 plot: swap Y and X column
also add a dummy column so the color isn't shown the rest of the row
2014-05-16 17:37:12 +02:00
Peinthor Rene
4ed5d9a778 plot: add a button to save the current plot as different file formats 2014-05-10 09:23:16 +02:00
Martin Kleusberg
69df819687 Update the application icon
Replace the application icon by a much better looking version made by
John Haller of portableapps.com
2014-05-09 13:48:03 +02:00
Rene Peinthor
0ecff2caa2 cmake: build qcustomplot as static lib and fix windows build 2014-04-23 08:31:53 +02:00
Peinthor Rene
88ccd48173 plotting: add a simple mechanism to visualize data
added a plotting dock, where you can select x and y axis
and it will draw a chart out of it
2014-04-19 22:19:32 +02:00
Peinthor Rene
75de1fa795 fix a bug in our mainwindow ui design
it wasn't possible to add new tab pages from the qt designer
added a QWidget container with a vertical layout as this is
done also if you create a new empty mainwindow
2014-03-07 21:04:57 +01:00
Martin Kleusberg
30cef84f09 Add CSV export to context menu of the Database Structure tab
Add an entry for the CSV export to the context menu of the Database
Structure tab of the main windows as well which preselects the currently
selected table.

When opening the CSV export dialog via the standard menu also preselect
the currently selected table when the Database Structure tab is active.
2014-02-14 16:40:44 +01:00
Peinthor Rene
9f811e18dd qt4 still has activated for combobox, too much search and replace 2014-01-18 19:47:35 +01:00
Peinthor Rene
f373340c0b activated() is old qt3 support signal use triggered() 2014-01-18 19:28:25 +01:00
Martin Kleusberg
6e0c68a1a0 DbStructureModel: Allow dropping of database objects
Make it possible to drop database objects (i.e. SQL code) on the tree
view in the Database Structure tab. This is far from being perfect as of
now but enables you to drag and drop entire objects between databases.
2013-07-19 21:47:19 +02:00
Martin Kleusberg
0e880cc4e6 DbStructureModel: Enable dragging of DB objects
Allow dragging (as in Drag & Drop) of database objects like tables and
views into other applications by sending the SQL code used to create
them.
2013-07-19 20:55:48 +02:00
Martin Kleusberg
64a938716f Add custom model for tree view in Database Structure tab
Use a custom model for the tree view in the "Database Structure" tab in
the main window, i.e. change from a QTreeWidget to a QTreeView and do
all the item management stuff manually. This might add some code and
complexity but also offers some more flexibility for us.
2013-07-19 20:36:48 +02:00
Martin Kleusberg
2fceab31b7 MainWindow: Reduce minimum width of some spacers
Reduce the minimum width of two horizontal spacers, the one next to the
table drop down box and the one in the SQL log dock. This way the combo
boxes can take up a bit more space when the window is not that big.
2013-07-01 19:13:32 +02:00
Justin Clift
da3e356bd8 Typo fix in help tooltip 2013-06-08 20:11:38 +01:00
Martin Kleusberg
1c19defbe9 ExtendedTableWidget: Always scroll per pixel horizonzally
Always use per pixel scrolling when scrolling in horizontal direction.
This changes the scrolling in the SqlExecutionArea and makes some
settings in the MainWindow dispensable.
2013-05-09 18:05:25 +02:00
Martin Kleusberg
f3f340f83e Add single step execution to the SQL tab
Add a new action to allow the execution of the SQL statement in the
current line. This also supports multi-line SQL statement.
2013-05-08 21:44:08 +02:00
Martin Kleusberg
a39325830c MainWindow: Don't use bold print for write and revert actions
At least for me it looks a bit odd to use a bold font for these actions.
They are not that much more important than the other ones.
2013-05-08 21:19:02 +02:00
Martin Kleusberg
61ee8b4871 MainWindow: Fix menu entry for log dock widget
Simplify the log window handling a little bit.

Fix a bug that caused the log window to disappear when the window was
minimised.
2013-05-06 19:11:06 +02:00
Martin Kleusberg
e36b17a485 Add support for SQLite extension loading
Enable the extension support in SQLite.

Add code to allow loading of extension.

Add menu entry for easy extension loading.
2013-05-03 15:26:34 +02:00
Martin Kleusberg
d52a6be86f Add buttons to open and save SQL files to SQL tab in main window 2013-05-03 12:13:17 +02:00
Martin Kleusberg
23d929ec0e First version of multiple SQL scripts support in main window
Allow multiple SQL scripts in different tabs in the SQL tab of the main
window.

Auto completion support is still missing, the rest is working fine.
2013-05-02 21:15:23 +02:00
Martin Kleusberg
2463cf3d5d Get rid of the find dialog
Remove the old find dialog. It's fully replaced by the new filter row
now. Good riddance!
2013-04-09 19:36:17 +02:00
Martin Kleusberg
00b9f40271 SqliteTableModel: Make editing of data possible again 2013-04-06 23:12:53 +02:00
Martin Kleusberg
f25892d6d2 SqliteTableModel: Do a few fixes and add sorting again
Fix empty rows being shown in the main window when changing to a table
with less rows than the old one.

Add sorting in the browse tab again.

Do some minor clean ups.
2013-04-06 22:09:36 +02:00
Peinthor Rene
7644364130 partial selects and a hotkey for execute query
show the correct queryPart
also add some thoughts of me
2013-03-27 08:12:56 +01:00
Peinthor Rene
5289adaab8 Remove the editfield dialog and the edit options outside of edittable dialog 2013-03-19 17:18:52 +01:00
Martin Kleusberg
e548224bd9 Add proper copy support to the SQL tab table view widget
Allow copying data from the result table view widget in the SQL tab of
the main window.
2013-03-16 19:24:08 +01:00
Martin Kleusberg
5e8c14e942 Make the QTableWidget a QTableView
Rewrite some code to use a QTableView widget instead of a QTableWidget
in the browse tab of the main window, or more presicely in the new
extended table widget class. This way the widget and the data model are
separated which on the one hand means a bit more work on our side but on
the other hand also gives us a bit more flexibility. And more
importantly at the moment: This means both, the browse tab and the sql
tab, use a table view now - that's going to be helpful for the next
commit...
2013-03-16 19:10:03 +01:00
Martin Kleusberg
d9cd62ba49 Implement an extended table widget to add proper copy to clipboard support
Extend the standard table widget class to make it possible to copy
multiple cells to the clipboard.
2013-03-16 18:31:12 +01:00