Depp pages - general principles behind menu items

"Depp pages" window commands (MENUS) are spread over 10 PAGES. You can scroll through the pages clicking left and right arrows at the top of each page. Only a single MENU PAGE is displayed at a time. EACH MENU PAGE can be composed of various MENU BLOCKS following each other in a defined order. Some BLOCKS are embedded inside the program, some are loaded and organized during the program run.

What is a menu block and what an item

A MENU BLOCK is a group of ITEMS displayed in the block color. Each ITEM is the visible string you actually see and click. A clicked ITEM actually submits command(s) to the command sentence interpreter. A submitted command can also be a macro call.

When an ITEM is clicked the cursor is changed from an arrow to a clock pointing that MAIN is executing the submitted commands. The arrow shape of the cursor is retrieved when the program again awaits events from the interactive devices (mouse, dials and keyboard).

Some items have filled or empty squares in front of them. This squares are modes. Clicking on one of them usually does not result in anything, except the change of the square patterns. Actions happen by clicking other (not-square-headed) related items within the same menu block.

Loading menu blocks

The file MAIN_CMDS:load_depp_page.com loads the initial menu setup. MAIN_CMDS: directory includes macros of menu items (".cmds files) and the "load_...com" files, which load the additional menu blocks. Each menu item command that starts with a "?" checks weather the file with that name is present in your working directory, and when found it is processed, otherwise the default MAIN installation file is taken.

The DEPP (moron) page 9 provides you with the essential menu items necessary for work. When clicking menu item results in an error message telling that a local file name ".cmds" was not found, copy the missing file from the MAIN_CMDS: directory into your working directory and tailor it to your case.

If you want to create your menus, look at the "load" files as examples and see MAIN_COM:menu.html for further instructions.

Menu blocks documentation and documentation mode

Documentation files of menu blocks are stored in MAIN_MENU: directory and are accessible also via MAIN_DOC:dialog_manual.HTML.

When the "Depp pages" window is in the DOCUMENTATION mode, short description of the pressed BLOCK and ITEM is written to the standard output window. The DOCUMENT mode can be turned on or off either by pressing 'h' on the keyboard or by typing the command


> MENU DOCUMENT ON/OFF.

Using menu items

Clicking an item does not necessarily mean that something will happen. It is also possible that something will happen, however, you will not notice the change, as the image or whatever was not updated the way you expected.

Some items require arguments, some don't. The arguments are in passed to an time in a form of

The general philosophy is that you first define an argument and afterwards activate the function. This way the same argument can be applied in many functions with no need to redefine it again, the argument list can be edited so that the atom clicked by mistake can be removed with no need to cancel the function. This way also an execute command is not necessary, since after the argument list is completed we only want to execute the function immediately. This is a drawback for beginners and an advantage for experienced users: as the arguments are first defined as potential arguments that will turn into applied arguments as a function is activated (an ITEM is clicked) it is for an unexperienced user not immediately clear which form and which potential argument will be taken with a certain function. So browsing the manual can be of help - in particular the documentation related to the menu items in "Dialog Mode Accessories" manual (MAIN_DOC:dialog_manual.HTML).

Menu arguments: History list

Atoms are arguments. more precisely they become potential arguments, by clicking. When clicked, an atom is pushed on the top of the history list. The last one clicked is always the first one on the list. The last atom can be dropped from the list ("HIS_DROP"). The whole history list can be erased with "HIS_ERAS". The "HIS_DIST" allows you to measure and monitor interatomic distances when moving the atoms around. For more about history items see MAIN_MENU:history.html.

"IMAGE HISTORY" commands manipulate the history list and history functions. See MAIN_COM:image.html.

Menu arguments: Selection keys

The history list is created by clicking atoms. Atomic selections are usually created by providing history atoms to the "SELECT NICE" and "SELECT LONG" menu blocks. You can, however, at any moment choose to use the command language to define or redefine any of the keyed arguments. The most commonly used keys are "active", "passive" and ""image"".

Key "active" tells that something will happen with the selection of atoms (MINIMIZE, for example, will allow to move only active atoms). the key "image" contains the list of pickable atoms, ...

"KEY something SELECT ... END" commands manipulate the keys. See MAIN_COM:select.html.

There is also "WORK_REFL" key, which does not mark a list of atoms but reflections. It is a key, in contrast to "WORK_SEGM", which is a variable.

Menu arguments: inquired variables

Some arguments are inquired. You have to respond with a typed an answer, which can be either an integer or real number or a string. The resulting variables are either immediately applied ("LOAD_PDB") and also deleted after their use, or stored as GLOBAL variables to be used later in combination with other items ("MAP_ACT" and other map related menu items). Command


> show vari

reveals the current variable list and their values. For instructions how to set variables see "SET VARIABLE" in MAIN_COM:set.html.

Menu arguments: predefined variables

Some variables are defined in the initial macros as global variables and then used throughout the MAIN macros environment to pass some common arguments.

The variable "WORK_SEGM" contains a list of working SEGMENT NAMES. It is used to pass the list to various macros, which then use the list in their SELECT commands. "RE_IMAGE", "SYMMETRY", "REFINE" are only some of such menu items. The variable is defined in a "read.com" file and can be verified with "SHW_SEGM" updated with "UPD_SEGM" menu items. If the variable doesn't exist, or contains the wrong segment names, essentially nothing will work, unless you have created your own environment almost entirely.

In a "read.com" map variables "MAP_2FOFC", "MAP_FOBS" are defined in order to differentiate among various created maps.

The "DEF_ALL" variable is defined in a MAIN_UTILS:get_top_par_19_csd.com or similar script and it points to a macro, which assigns atom types and creates lists necessary for energy calculations.