Drawing windows respond to a number of button operations and key presses to pan and zoom. See the sections on button and key operations for a complete description. In addition, drawing windows respond to mouse wheel events. The basic action is vertical scrolling, however if Shift is held, the window will scroll horizontally. If Ctrl is held (which overrides Shift) the display will zoom in or out. The mouse wheel sensitivity can be changed with the MouseWheel variable.
Xic supports standard drag and drop protocols. One is able to drag files from many file manager programs into the main window of Xic, and that file will be loaded into Xic. The File Selection panel from the File Select button in the File Menu, and the Files Listing pop-up from the Files List button in the File Menu, participate in the protocols as sources and receivers. The text editor and mail client pop-ups, among others, are drop receivers. While in text editing mode, the prompt line is a drop receiver, and drops in the main window are redirected to the prompt line when editing mode is active. Most of the pop-ups in Xic which solicit a text string are also drop receivers.
The file must be a standard file on the same machine. If it is from a tar file, or on a different machine, first drag it to the desktop or to a directory, then into Xic. The GNOME gmc file manager allows one to view the contents of tar files, etc. as a ``virtual file system''. Window Maker and Enlightenment window managers, at least, are drag/drop aware.
Most of the listing pop-ups in Xic are drag sources, i.e., one can drag the name from the listing and drop it in a drawing window.
When a window is displaying cells from a Cell Hierarchy Digest (CHD), meaning that the Display button in the Cell Hierarchy Digests panel is engaged, the dropped cell name must match a cell name in the CHD. If not, an error message will appear. Otherwise, the display will switch to the dropped cell as the root. Changing the display root does not change the default cell of the CHD. In this mode, nothing new is brought into program memory.
In normal display mode, the window will open the cell or file dropped. The dropped object can be of various types, depending on the source: file names, cell names from memory, cell names from a CHD, and library references are all possible. If the dropped object does not suggest an unambiguous cell, a pop-up will appear requesting that the user make a selection from a given listing. This may happen, for example, when a dropped file name contains more than one top-level cell, or the dropped name is a library containing multiple references.
A dropped file name will cause the file to be read into memory, and the top-level cell will be displayed. A cell name from a CHD will cause the cell and its hierarchy to be extracted from the CHD's source and loaded into memory, and the given cell will be displayed. Library references that point to a cell will likewise be brought into memory, and the referenced cell will be displayed. A cell name will simply display that cell, which if not already in memory, will be opened through the library and search path mechanism, or created internally as an empty cell if unresolved.
If dropped into the main drawing window, the displayed cell becomes the current cell for editing and selections. If dropped in a sub-window, the cell will be displayed, but can not be edited if it is different from the current cell (the cell shown in the main drawing window).