next up previous contents
Next: 7.5 Common classes Up: 7 SAM Graphical User Previous: 7.3 AnalysisPlugins   Contents

Subsections

7.4 OutputPlugins

7.4.1 File plugin

The window for the File plugin uses a GtkWindow containing a GtkFixed container in which each of the individual labels and input objects are placed at fixed positions. Fixed positioning is not usually preferable, since it can lead to clipped labels when unexpected font/window sizing combinations are used. However, the typical way of laying out this type of window using a GtkHBox containing GtkFrames has been deprecated (see [1] section 6.18) in favour of a GtkFixed container with clear headings for each section and left-justified, indented items between headings as shown in figure 24. This layout allows the user to easily identify headings and items vertically.

Note the clear exit point provided by the cancel button, and the GtkEntry field which is located immediately to the right of the radio button which enables/disables it for easy identification.

Figure 24: The widgets used in SAM's File output plugin
\includegraphics[width=7.75cm]{diagrams/output_text}

Figure 25: The widget tree for SAM's File output plugin
\includegraphics[width=4.00cm]{diagrams/wtree-output-file}

Widget Name Widget Class Signals Handlers
cancel_button GtkButton clicked self.handleCancel()
combine_radiobutton GtkRadioButton toggled self.handleStreamidToggle()
ok_button GtkButton clicked self.handleSave()
other_radiobutton GtkRadioButton clicked self.handleRadioToggle()
space_radiobutton GtkRadioButton clicked self.handleRadioToggle()
streamid_radiobutton GtkRadioButton toggled self.handleStreamidToggle()
tab_radiobutton GtkRadioButton clicked self.handleRadioToggle()

7.4.2 ScreenTable plugin

The window generated by this plugin is a scrolled table of values, and requires no further features. It uses the windowing system's close window features to close it, which will be familiar to the user.

Figure 26: The widgets used in SAM's ScreenTable output plugin
\includegraphics[width=12.13cm]{diagrams/output_screen}

Figure 27: The widget tree for SAM's ScreenTable output plugin
\includegraphics[width=3.19cm]{diagrams/wtree-output-screentable}

None of the widgets used in this class require handlers.

7.4.3 Graph plugin

The Graph plugin has many settings for the user to enter, each with an example or default entry to make its use easier. Note that in giving example entries in all GtkTextEntries but the entry for Gnuplot Commands, it is clear to the user that the Gnuplot Commands entry is optional. The GtkTextEntry associated with the radio button is disabled until the appropriate radio value is selected, and is placed to the immediate right of the radio butten which enables it so that there is a clear visual link for the user.

Figure 28: The widgets used in SAM's Graph output plugin
\includegraphics[width=11.81cm]{diagrams/output_graph}

Figure 29: The widget tree for SAM's Graph output plugin
\includegraphics[width=5.35cm]{diagrams/wtree-output-graph}

Widget Name Widget Class Signals Handlers
close_button GtkButton clicked self.handleClose()
file_radiobutton GtkRadioButton toggled self.handleGraphToggle()
gnuplot_radiobutton GtkRadioButton toggeled self.handleGraphToggle()
graph_button GtkButton clicked self.handleGraph()
linestyle_comboentry GtkEntry changed self.handleLineStyle()
screen_radiobutton GtkRadioButton toggled self.handleGraphToggle()
stream_list GtkList select_child self.handleSelected()
    unselect_child self.handleSelected()


next up previous contents
Next: 7.5 Common classes Up: 7 SAM Graphical User Previous: 7.3 AnalysisPlugins   Contents