Commit Graph

49 Commits (56c5637230bad56429bfba6fd363b8046bf513f7)

Author SHA1 Message Date
David Nadlinger 56c5637230 gui: Fix crash when quickly opening/closing applets
Quickly closing/reopening applets (e.g. quickly clicking the checkbox
on an entire folder of applets) would previously lead to an occasional
KeyError on the self.dock_to_item access in on_dock_closed, as close()
would be invoked more than once.

The geometry/checked state handling can potentially be cleaned up
further, but at least this avoid the crash.
2019-03-11 20:39:37 +08:00
Sebastien Bourdeauducq c5b55c1dfe applets: compatibility with older Qt. Closes #629 2016-11-29 10:45:07 +08:00
Sebastien Bourdeauducq 4bdbc5b259 applets: use a different workaround to disable editing
True to itself, Qt did not miss the opportunity to trash widgets inside
QTreeWidgetItems when they are moved by drag-and-drop. Problem known for
more than 6 years and still not fixed as of Qt 5.7.
2016-09-09 12:55:01 +08:00
Sebastien Bourdeauducq 6144839beb applets: support group-level CCB policies 2016-09-09 11:38:55 +08:00
Sebastien Bourdeauducq ff20ed2710 applets: two column table, remove spurious Qt text editors 2016-09-09 09:07:31 +08:00
Sebastien Bourdeauducq b982832ddc gui/applets: support passing command line arguments to code applets 2016-09-07 00:56:39 +08:00
Sebastien Bourdeauducq 5d293d14c6 gui/applets: fix teardown of half-initialized applets 2016-09-06 23:06:31 +08:00
Sebastien Bourdeauducq f6b5d6d20f gui/applets: fix handling of process creation failure 2016-09-06 23:01:04 +08:00
Sebastien Bourdeauducq 56e3c80623 dashboard: support for code applets 2016-09-06 22:38:34 +08:00
Sebastien Bourdeauducq 549e09e06b applets: simplify command lines 2016-09-04 23:32:09 +08:00
Sebastien Bourdeauducq 8f6c4451ac gui/applets: support groups, creating and deleting applet groups, renaming groups, moving applets from one group to another and reordering applets and groups via drag-and-drop 2016-09-04 23:09:26 +08:00
Sebastien Bourdeauducq 8a243d322f gui/applets: hack completer model to block noxious dataChanged signal. Closes #464 2016-08-07 18:57:08 +08:00
Sebastien Bourdeauducq 591e44b227 gui/applets: capture applet stdout/stderr and redirect to log. Closes #472 2016-08-04 17:53:42 +08:00
Sebastien Bourdeauducq 03eeec55b2 gui: better log levels 2016-05-30 15:04:49 -05:00
Robert Jördens f24f7380f5 gui: fix new() being called with arguments by qt (closes #444) 2016-05-25 23:13:00 +02:00
Sebastien Bourdeauducq dec323b097 gui/applets: catch duplicate applet UIDs (#430) 2016-05-07 11:47:17 +08:00
Sebastien Bourdeauducq 063639662e applets: also accept '/' as dataset path separator for completion 2016-04-25 00:04:40 +08:00
Sebastien Bourdeauducq e91961fbae applets: dataset name completion 2016-04-24 23:51:55 +08:00
Sebastien Bourdeauducq f530815305 gui/applets: use templates instead of formats 2016-04-06 17:02:26 +08:00
Sebastien Bourdeauducq 1d94cfd8ed gui: save/restore geometry of applets when they are disabled/enabled. Closes #375 2016-04-06 15:18:21 +08:00
Sebastien Bourdeauducq deb9a60ca3 gui: setParent(None) before deleteLater() to remove dock appears unnecessary and causes memory corruption on Windows. Closes #362 2016-03-30 11:40:00 +08:00
Sebastien Bourdeauducq b59283f85e gui/applets: use a better default size, make minimum size proportional to font 2016-03-29 17:10:37 +08:00
Sebastien Bourdeauducq befbab5571 gui: add image applet 2016-03-23 17:04:22 +08:00
Sebastien Bourdeauducq 7f501820de gui: delete log/applet docks instead of hiding them 2016-03-10 10:35:44 +08:00
Robert Jördens fef72506e4 ctlmgr/gui/master: start subprocesses in new pgroup
This only makes a difference on POSIX. It prevents subprocesses
from receiving the signals that the parent receives. For ctlmgr
and master is cuts down on spam on the console (KeyboardInterrupt
tracebacks from all controllers) and enforces that proper
termination is followed.

This does not help if the parent gets SIGKILL (subprocesses
may linger).
2016-02-18 23:51:12 +01:00
Sebastien Bourdeauducq 2ce3c08697 gui/applets: escape backslashes in {python} and {ipc_address} 2016-02-16 12:52:11 +01:00
Sebastien Bourdeauducq d30fe60edd gui: remove pyqtgraph 2016-02-15 00:23:47 +01:00
Sebastien Bourdeauducq 9797acc964 gui/applets: prevent size from shrinking to zero when docked 2016-02-14 23:27:59 +01:00
Sebastien Bourdeauducq 489f69f991 gui: reliable detection of dock close 2016-02-14 22:22:07 +01:00
Sebastien Bourdeauducq 3c12c13a67 gui: dock state save/restore 2016-02-14 13:46:15 +01:00
Sebastien Bourdeauducq daf49efa04 gui: rough conversion to the Qt docking system 2016-02-14 12:15:57 +01:00
Sebastien Bourdeauducq 29d4755567 gui/applets: prevent concurrent process start/stop 2016-02-11 16:25:44 +01:00
Sebastien Bourdeauducq 92c0ede689 applets: workaround for Qt window embedding initial size bug 2016-02-11 16:19:34 +01:00
Sebastien Bourdeauducq cd9467a8df gui/applets: properly destroy container widget when process is terminated 2016-02-11 16:02:10 +01:00
Sebastien Bourdeauducq d1e54c86b1 gui/applets: log warning if IPC address not in command 2016-02-08 22:39:47 +01:00
Sebastien Bourdeauducq 67327b1e61 applets: avoid argparse subparser mess 2016-02-08 22:25:02 +01:00
Sebastien Bourdeauducq 4733c4ba1e gui/applets: save dock UID in state 2016-02-08 21:57:07 +01:00
Sebastien Bourdeauducq 7584b02d66 applets: fix error message text 2016-02-08 19:23:50 +01:00
Sebastien Bourdeauducq de99e7f830 applets: handle dataset mutations 2016-02-08 19:20:07 +01:00
Sebastien Bourdeauducq f25b5442e7 applets: properly name docks to support state save/restore 2016-02-08 16:26:02 +01:00
Sebastien Bourdeauducq 8844fba4c9 applets: clean shutdown 2016-02-08 14:35:37 +01:00
Sebastien Bourdeauducq 741b11c26d applets: basic embedding OK 2016-02-08 09:59:15 +01:00
Sebastien Bourdeauducq f9a6ba1884 gui/applets: add shortcuts 2016-01-16 13:12:16 -07:00
Sebastien Bourdeauducq 9acf8b7c1a gui/applets: templates 2016-01-15 10:15:06 -07:00
Sebastien Bourdeauducq cc3a45d4e4 gui/applets: fix applet removal 2016-01-15 10:11:13 -07:00
Sebastien Bourdeauducq 2199eadb99 gui/applets: save/restore state 2016-01-09 19:32:50 +08:00
Sebastien Bourdeauducq 1ea73be56d gui/applets: all basic functionality, no state save/restore 2016-01-08 20:07:02 +08:00
Sebastien Bourdeauducq 597c2e4b17 gui/applets: startup and embedding working 2016-01-08 13:04:36 +08:00
Sebastien Bourdeauducq e106ee3f90 gui: basic applet dock editing 2016-01-07 20:23:17 +08:00