Commit Graph

64 Commits (002325be176ec638d7c010435ceadba528e422e7)

Author SHA1 Message Date
Simon Renblad 002325be17 applets: rename params 2024-02-27 15:26:37 +08:00
Simon Renblad 4f3e58db52 gui.applets: add EntryArea 2023-10-04 15:35:52 +08:00
David Nadlinger 2eb89cb168 dashboard: Fix occasional "unexpected action" applet errors on startup
This turned out to be a race between the dashboard's dataset db
subscriber being initialised and the applet "embed" request, with
artiq.applet.simple not being able to handle the unexpected "mod"
message. We were only handling the other ordering outcome of this
race before.
2023-09-30 00:27:25 +01:00
Simon Renblad 40ac2e03ab set_argument_value in applets 2023-09-21 16:26:11 +08:00
David Nadlinger fc74b78a45 dashboard: Make Ctrl-Alt-W close non-docked applets only
I had introduced this in f11aef74b as a means of quickly cleaning up
after e.g. an exploratory session where a lot of transient applets were
opened from ndscan, or for a dashboard that has been running for a while
with CCBs enabled but without anybody actually working there.

It turns out that one usually wants the few docked applets to stay open,
as they were necessarily arranged manually at some prior point. And as a
corollary to the latter, if one did want to close them as well, doing so
manually would not be too onerous either.
2023-09-16 23:47:23 +01:00
Simon Renblad 16a3ce274f applets: add metadata param to set_dataset 2023-07-12 08:28:28 +00:00
Florian Agbuya c298ec4c2e applets: add update_dataset for dataset mods 2023-06-02 14:56:00 +00:00
Florian Agbuya e12219e803
gui: add handler for applet set_dataset 2023-05-31 14:08:14 +00:00
Sebastien Bourdeauducq 444bab2186 gui: datasets_sub -> dataset_sub (nfc) 2023-05-30 15:44:30 +08:00
Sebastien Bourdeauducq 5f77d4f5fa applets: fix asyncio loop management 2023-01-12 12:35:02 +08:00
David Nadlinger 2d6fc154db applets: Allow wildcard subscription to all datasets matching prefix via IPC
This allows ndscan v0.3+ to use the IPC interface for efficiency;
previously, the non-upstreamed RID dataset namespace feature allowed
the applets to somewhat efficient subscribe directly to the master
process via the socket interface.
2022-06-18 15:45:57 +08:00
David Nadlinger 4c42f65909 applets: Add ${server}, ${port_control}, ${port_notify} command substitutions
This facilitates applets that connect back to the master
(e.g. to update datasets on user request, as used by ndscan).
2022-06-18 15:19:35 +08:00
Suthep Pomjaksilp 06ad76b6ab
applets: add progress bar applet
Signed-off-by: Suthep Pomjaksilp <pomjaksi@physik.uni-kl.de>
2022-04-22 09:27:28 +08:00
David Nadlinger f11aef74b4 gui: Add context menu entry to close all applets
This is occasionally very useful if a large number of
applets were left open (e.g. spawned via CCB).
2021-01-17 11:56:03 +01:00
Sebastien Bourdeauducq 3fd6962bd2 use sipyco (#585) 2019-11-10 15:55:17 +08:00
David Nadlinger 5fd92a6175 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-10 20:57:10 +00: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