ReadoutGui -- ReadoutGui elements.


package require ReadoutGui

ProviderList widget-path ?options?

provider-list method ?args?

ProviderListDialog widget-path ?options?

pld method ?args?

ProviderSelectDialog widget-path ?args?

psd method ?args?

ReadoutGuiApp %AUTO% | app-name


the ReadoutGUI package provides a set of dialog widgets for interrogating/selecting the running data sources as well as an 'overall application' class that, when instantiated creates the entire ReadoutShell's GUI and threads together all of the components that make up the system.

Normally, you only need the ReadoutGuiApp and then only if you need a highly customized start up. The other widgets are documente for the sake of completeness.


Subsections of this section provide reference material for the megawidgets that are provided by this package:


A megawidget that displays the data sources in a scrollable list. The list displays the source id, the provider name and the parameterization of that instance of the data source.


Encapsulate the ProviderList in a dialog for display purposes only.


Encapsulates ProviderList in a dialog that also permits selection of a data source from the list.


This megawidget provides a four column scrolling table that lists data sources and their descriptions. The columns provided are:

  1. The id of the source.

  2. The provider name (source type).

  3. Parameter names for each parameter in the source parameterization.

  4. Parametr values for each parameter in the source parameterization.

Since each source can have several parameters in its parameterization, a data source will show up as several lines in the table. The first line is just the source id and source type while subsequent lines give parameter name/value pairs.


-sources list-of-source-dicts

The data in this option determines what the widget displays. See the sources method of DataSourceManager for the form of this data.



The widget allows for single items to be selected. This method returns the source Id of the selected data source.


This megawidget wraps a ProviderList in a dialog that is suited for inspecting the list of data sources. The dialog has an Ok button which dismisses the dialog. No access is provided to the selected item.

If you want to allow the user to select a data source for you to operate on in your code, see the ProviderSelectDialog below.


The -sources list from the ProviderList widget is exposed and has the same meaning.


All methods from the DialogWrapper megawidget described in ui are supported. Use the modal method to block until the dialog is either destroyed by the user or you need to destroy it due to an Ok click.


This dialog wraps a ProviderList widget in a dialog that provides an Ok and a Cancel button. Access to the selected data source is provided to allow you to retrieve and operate on the selected data source in the event the user clicks the Ok button.


The -sources option from the wrapped ProviderList widget is exposed and has the same meaning as for that widget.


All methods of the DialogWrapper megawidget described in ui are supported. Use the modal method to block until the user clicks Ok or Cancel or simply destroys the widget.

The getSelected method of the ProviderList is also exposed. Normally if the modal method returns Ok your application would use getSelected to determine which data source was selected prior to destroying the dialog widget.


The application class ReadoutGuiApp is not a widget, however it does instantiate the entire widget tree that makes up the ReadoutShell application and ensures that it has the appropriate default behavior.

ReadoutShell is simply a script that creates an instance of ReadoutGuiApp