Commit Graph

37 Commits

Author SHA1 Message Date
Sebastien Bourdeauducq 5df0721811 dashboard,client: add device argument overrides to expid 2023-12-17 19:43:41 +08:00
Sebastien Bourdeauducq 44a95b5dda dashboard: add repository revision clear button 2023-12-17 16:37:02 +08:00
Simon Renblad 13271cea64
gui: remove copies of _WheelFilter and refactor with parameter 2023-10-04 13:35:01 +08:00
Simon Renblad 40ac2e03ab set_argument_value in applets 2023-09-21 16:26:11 +08:00
Florian Agbuya d73889fb27 gui/experiments: cast Qt timestamp to int preventing float type error 2023-07-14 08:33:27 +00:00
David Nadlinger 32db6ff978
Allow experiments to specify a custom argument editor UI (#1916)
On the master/EnvExperiment side, the only addition is an optional
property `argument_ui` that is made accessible to the dashboard, e.g.

    class Example(EnvExperiment):
        argument_ui = "ndscan"
        def build(self):
           …

Clients – primarily artiq_dashboard, but in principle e.g. a
command-line UI could do the same – can then compare the value to a
list of well-known names and prefer any matching custom UI handlers.

On the dashboard side, this commit adds the mechanism to register
a custom argument editor for a given argument_ui string, i.e. the
widget that displays the parameter values within the wider
experiment UI shell with the submit button, pipeline parameters, and
so on. The registry remains empty by default and would be filled by
out-of-tree plugins such as ndscan.

The UI state readback is implemented somewhat defensively to avoid
needless disruptions to users when upgrading.
2022-06-18 15:55:13 +08:00
David Nadlinger dbc87f08ff dashboard: Add submit/close hooks for custom argument editors
These are used by ndscan, as re-serialising the entire ndscan
parameter metadata tree, which can grow to be quite extensive,
on every single Qt change event is a bit excessive (and would
probably cause a bit of lag while typing for big experiments
on low-end machines).
2022-06-18 15:51:39 +08:00
David Nadlinger c4068e6896 dashboard: Plumb through datasets client to ExperimentManager
This is analogous to the explist/schedule subscribers, and allows
custom argument editors (such as ndscan) to provide hints/defaults/…
from datasets once available.
2022-06-18 15:50:05 +08:00
Sebastien Bourdeauducq 80d412a8bf support submitting experiments by content 2022-03-20 12:58:55 +08:00
Sebastien Bourdeauducq 89c53c35e8 dashboard: style 2020-06-26 10:12:03 +08:00
David Nadlinger f36692638c dashboard: Add "Quick Open" dialog for experiments on global shortcut
This is similar to functionality in Sublime Text, VS Code, etc.
2020-06-26 10:11:33 +08:00
Sebastien Bourdeauducq 3fd6962bd2 use sipyco (#585) 2019-11-10 15:55:17 +08:00
Chris Ballance c56c3e5588 dashboard: add support for experiment pipeline/priority/flush defaults 2019-03-12 10:54:15 +01:00
David Nadlinger c3c13da1a6 dashboard: Restore minimized experiments when trying to open them again
When the user tried to open an experiment from the explorer that
already existed, previously "nothing would happen" (focus change
without the window being restored).
2017-12-15 19:11:09 +00:00
Sebastien Bourdeauducq 2998372d08 browser,dashboard: delete MDI subwindows when they are closed 2017-07-29 20:36:38 +08:00
Sebastien Bourdeauducq e4a631a3d7 scheduler: consider the pipeline flushed if everything has a lower priority than us. Closes #640 2017-05-22 18:43:59 +08:00
Chris Ballance 639066c6d8 Add tooltips to experiment arguments 2017-02-03 17:53:40 +08:00
Sebastien Bourdeauducq 2d6171e8c4 dashboard: make state restore failure on experiment opening non-fatal 2016-09-21 19:23:06 +08:00
Sebastien Bourdeauducq f010a74479 dashboard: remember experiment editor scroll positions 2016-09-14 10:53:24 +08:00
Sebastien Bourdeauducq 55363e2ff9 dashboard: save/restore MDI window states when they are closed. Closes #559 2016-09-14 10:53:24 +08:00
Sebastien Bourdeauducq 89417a47b2 gui: use bare QSpinBox for integer NumberEntries. Closes #558 2016-09-14 10:53:24 +08:00
Sebastien Bourdeauducq 996dfcafc6 dashboard: fix 'disable other scans' 2016-09-06 22:50:12 +08:00
Sebastien Bourdeauducq dbc08bde8a gui: fix layout and scan disable bugs with argument recomputation 2016-09-02 10:50:25 +08:00
Sebastien Bourdeauducq ef2195fe68 dashboard: fix argument recomputation for experiments outside repository. Closes #548 2016-09-02 08:30:42 +08:00
Sebastien Bourdeauducq ea13d00087 dashboard: preserve argeditor state across argument recomputations. Closes #486 2016-07-01 15:23:40 +08:00
Sebastien Bourdeauducq b769403667 dashboard: larger experiment initial window size 2016-06-19 09:31:19 +08:00
Sebastien Bourdeauducq b3b0e19d21 dashboard: compute initial experiment window size from font metrics 2016-06-19 08:50:38 +08:00
Sebastien Bourdeauducq ae914d2611 dashboard/experiments: look improvements 2016-06-18 18:55:25 +08:00
Sebastien Bourdeauducq 60657c30b0 dashboard: add button to disable other scans 2016-06-15 19:06:04 +08:00
Sebastien Bourdeauducq ab749560c2 dashboard: forward local log messages to docks, replace status bar (#411) 2016-05-28 11:10:25 -05:00
Sebastien Bourdeauducq b3e55b753b environment,dashboard: generalize multiple defaults, fix HDF5 argument load 2016-05-24 08:58:34 -05:00
Robert Jördens 904db4923c dashboard/experiments: style 2016-05-08 18:14:01 +02:00
Robert Jördens c5fcb6b8d5 dashboard: use get_open_file_name 2016-05-08 18:14:01 +02:00
Robert Jördens 77b84a7979 browser: move exp mgmt to mdi area 2016-05-07 12:53:37 +02:00
Robert Jördens d99d19dd3a browser: stubs for experiment editors 2016-05-07 12:53:37 +02:00
Sebastien Bourdeauducq 597d7c389e dashboard: support reloading arguments from HDF5 2016-05-05 00:51:30 +08:00
Sebastien Bourdeauducq 7e2e182315 put dashboard-specific files in separate directory 2016-04-06 15:45:02 +08:00