Commit graph

388 commits

Author SHA1 Message Date
Eelke Klein
2b012b70eb Highlighter verbeterd en uitgebreid. 2017-01-16 19:53:25 +01:00
Eelke Klein
fa9787adfd After an insert, update, delete the number of rows affected is reported.
This also makes it clearer the command was executed succesfully.

Times are now printed with no more then two decimals. This prevents confusion
between thousand and decimal seperators.
2017-01-16 18:57:50 +01:00
Eelke Klein
5831f18008 If there is a selection in the query then only that part is Executed or explained.
Replaced QTextEdit with QPLainTextEdit as it is more efficient and CAN do syntax highlighting.
2017-01-16 17:31:46 +01:00
Eelke Klein
c555182ddd No line wrap in query editbox. 2017-01-16 16:51:06 +01:00
Eelke Klein
81f3d3f1f8 Several shortcuts to query window
Ctrl+O open
Ctrl+S save
F5 run query
Shift+F7 explain analyze
Alt+Pause cancel query/explain
2017-01-16 16:48:40 +01:00
Eelke Klein
cb237b0c52 Fix: some typos and refactoring errors in expected 2017-01-16 16:47:37 +01:00
Eelke Klein
a32e2c83ca Query, explain, cancel buttons are now enabled/disabled when the state of the connection changes. 2017-01-15 21:38:07 +01:00
Eelke Klein
d19741f111 Connection manager can now open a query window for selected connection.
Query window has now buttons with icons made in the designer for better looks.
Depending on received responses from the database the tabcontrol with the message, data and explain tab
now switches to the appropriate tab.
2017-01-15 21:01:40 +01:00
Eelke Klein
88fcc0338d Moved icons into a resource file and adjusted the window that used them accordingly. 2017-01-15 13:49:17 +01:00
Eelke Klein
998389e371 These are build files and shouldn't have been in the project folder anyway. 2017-01-15 13:48:40 +01:00
Eelke Klein
ef620489ee project rename to pglab 2017-01-15 12:58:41 +01:00
Eelke Klein
7181c7f1e7 The list of connections is now saved and loaded on program shutdown and start. 2017-01-15 12:27:36 +01:00
Eelke Klein
cf4d6e769b Expected template for returning a value or exception 2017-01-15 12:26:31 +01:00
Eelke Klein
023d956365 added: scopeguard template a helper class to call code on scope_exit 2017-01-15 12:25:58 +01:00
Eelke Klein
30dbc59e41 Connection manager, editing working, hooked up more widgets. 2017-01-14 22:29:12 +01:00
Eelke Klein
c235169304 First test with QDataWidgetMapper to connect controls to the items in the connection list is working. 2017-01-14 22:03:58 +01:00
Eelke Klein
f5eab84c24 Working on the connection manager.
Made a list model for displaying them in a list. Also added controles to edit
the most important properties.
2017-01-14 20:07:12 +01:00
Eelke Klein
be1892ac52 Wat copy paste code en csvwriter alvast toegevoegd maar nog uitgeschakeld. 2017-01-13 19:09:58 +01:00
Eelke Klein
cc5bbab0f5 Added menu items for saving, loading, export data, closing window and about.
Saving and loading of SQL and close is implemented.
2017-01-09 07:39:09 +01:00
Eelke Klein
2db661b7a6 Fix: crash when closing window while no connection open. 2017-01-09 07:38:13 +01:00
Eelke Klein
5e0b8578e2 Fix: do not join the connection thread if it hasn't been started. 2017-01-08 20:00:34 +01:00
Eelke Klein
726d67bc30 When more then 10 seconds has elapsed the timers switches to a self adjusting
algorithm so it keeps ticking at exactly once a second.
2017-01-08 19:59:55 +01:00
Eelke Klein
5f3ddb80c6 Show elapsed time during queries and show execute and plan time above query explain. 2017-01-08 15:16:16 +01:00
Eelke Klein
30638b11e5 Fix: high cpu loading while waiting for result caused by wrong event selection
Fix: next bug where it wouldn't retrieve all result when using the proper
events causing hangs because it didn't loop isbusy.
2017-01-08 15:15:40 +01:00
Eelke Klein
2502aea9e5 Notices and errors are as before switch might need still some work. 2017-01-08 10:29:52 +01:00
Eelke Klein
a36bf5f7f4 Query, Explain and Cancel are going throught the asyncdbconnection now.
Todo: Notice processing and error reporting.
2017-01-08 09:58:34 +01:00
Eelke Klein
fce51a7b7e The previous async method's are being updated to the ASyncDBConnection class. Connecting is working. 2017-01-06 07:23:40 +01:00
Eelke Klein
2d420c0525 new class: WaitHandleList helper for waiting on multiple events using the Win32 api. 2017-01-06 07:22:35 +01:00
Eelke Klein
f396965797 Win32Event member names are conforming to the naming style of this project now. 2017-01-06 07:21:57 +01:00
Eelke Klein
83064ab86b Added the thread safe TSQueue and using it in mainwindow to replace the adhoc queue implementation. 2017-01-03 07:22:36 +01:00
Eelke Klein
c551d982c6 Also switched explain over to own async framework. 2016-12-30 10:38:46 +01:00
Eelke Klein
4dc55288b5 Asynchronous query execution now depends on my own mostly C++ based parallel
execution framework instead of the QMetaObject::invokeMethod.
2016-12-30 10:25:48 +01:00
Eelke Klein
2432be9d72 Added cpp style mechanisme to queue callables on window thread. 2016-12-30 10:14:26 +01:00
Eelke Klein
8af6bc4ac5 Added explain functionality.
Uses json format with jsoncpp as a parser. Then show it in a QTreeView.
Shows inclusive/exclusive times like explain.despesz does. Also a similar
coloring scheme as applied.
2016-12-29 13:48:35 +01:00
Eelke Klein
0d30dc9080 Query is now executed using std::async 2016-12-27 21:22:49 +01:00
Eelke Klein
3a8cc3d7f0 Het maken van de DB connectie gebeurd nu asynchroon. 2016-12-27 15:41:11 +01:00
Eelke Klein
27abce5a11 Added WSAStartup/Cleanup to main.
This is something libpq also does when opening and closing connections.
This mechanism uses a use count and based on that count dll's are loaded
and unloaded. By adding those calls to main we make sure the use count
stays above zero for the whole duration of the program.
2016-12-27 10:27:44 +01:00
Eelke Klein
edc6df25da Initial commit. Contains a simple query tool. 2016-12-26 16:06:55 +01:00