Skip to main content
Fig. 1 | BMC Bioinformatics

Fig. 1

From: BioLegato: a programmable, object-oriented graphic user interface

Fig. 1

A The Biolegato work cycle. (Top) User selects a sequence and chooses to run Shuffle from the Similarity menu. (Middle) The Shuffle menu lets the user set two numerical parameters and a Yes/No parameter. After clicking on ‘Run’, the selected sequence is exported to a file, used as input for Shuffle. Because the user answered ‘Yes’ to “Output to new blprotein window?“, the output file is loaded into a new instance of blprotein, which pops up on the screen (Bottom). B PCD code which implements the Shuffle menu. The first 3 lines specify a title for the menu window, an icon to identify the package from which the program is derived, and a tool tip. Note that “$BIRCH” refers to an environment variable listing the path to the BIRCH directory, in which the BioLegato directories are found. This illustrates the point that any part of a PCD menu item may contain references to environment variables to be substituted into the menu. Each “var” item declares a parameter to be used for calling the program. For example, “window” refers to the size of the sliding window for randomization. “in1” and “out1” respectively are the names of temporary files to be used for input and output of by xylem_shuffle.py. In the “panel” section, the “Run” button will execute the command found on the shell line. This is a command template, into which the values of the variables will be substituted. Thus %in1% will be substituted with an automatically generated name for a temporary input file, and %WINDOW% will be substituted with the number set in the WINDOW parameter. %BLOUTPUT% is a placeholder which will be substituted with the command fragment specified in the “bloutput” variable. In the example, the user chose “Yes”, so the shell command will be substituted with the command fragment from “bloutput”, which opens the output file in a new instance of blprotein. If “No” had been chosen, the temporary output file would be renamed to %out1%, causing the output to be read into the current BioLegato object. If the var definition for “out1” had included “overwrite true”, the entire contents of the canvas would be replaced by the contents of the out1 temporary file. These features make conditional execution of code possible, allowing for more complex behavior

Back to article page