The Toplevel Widget

The toplevel widget is displayed in figure 6.1. It is divided into the frame containing the menu buttons, including the status information, the listbox, a log widget, a command entry field and the button line.

Figure 6.1: The TkI Toplevel Menu
Image toplevel

The listbox displays a table which contains information about the devices. The table type can be selected by a menu button, see 6.7. If motor positions are displayed in the listbox, the program execution might slow down considerably depending on the number of motors and how they are connected. Section 6.7 gives hints how to avoid this behaviour.

The status information: in the upper right corner is a string that displays the motor status. It can be Idle, Moving, etc. At the left side of this status string is a user status string which is optional. Whether it is displayed depends on an assignment in /online_dir/TkIRc.pl. If the variable $Spc::res_h{ user_status} exists it will be evaluated and the return value is displayed, example:

# file: /online_dir/TkIrc.pl
$Spc::res_h{ user_status} = sub { return "UserStatus";};

The explanation of the buttons:

 Move: Calls the Move widget for the motor that has been moved before (section 11).

 Scan: Calls the Scan widget for the device that has been used before (section 7.1).

 MCA: Calls the MCA widget (section 12).

 Zoom: Invokes a widget that zooms the displayed data (6.2). The buttons + and - zoom in and out, < and > move the window left and right. Zoom changes the axes settings of all displayed SCANs.

Figure 6.2: The Zoom Menu
Image zoom

 Display Refreshes the graphical screen.

 Viewer Launches the FIOViewer. The instance of this viewer adresses the same memory as the Online process.

 Stop Stops all motor movements and interrupts scans. the stop_function is called if defined, see 6.11.



Subsections