# Chapter 2 NIFFeditor for SGI

### (4) Mouse Operation

> Place the [Edit]-[Edit Mode] command in the ON status to modify data using the mouse. If this is OFF, the changes will not be reflected in the data.
> - Left button

> > ### Select link

> > When you click on a link with the left mouse button, the link will turn red indicating that it has been selected. You can then delete the selected link by choosing Delete Link from the Edit menu.

> > ### Display node dialog box

> > When you double-click the left mouse button on a node, the dialog box corresponding to that node will be displayed. You can edit the name or flags of that node in this dialog box. It is possible to display a dialog box for all of the currently displayed nodes.

> > ### Select area

> > When you drag the mouse while pressing the left mouse button, a rectangle will be displayed, which enables you to select the entire area surrounded by the rectangle. The selected nodes can be collectively moved, or commands can be simultaneously executed for them from a pop-up menu.

> > ### Select all nodes from that point down

> > When you click the left mouse button on a node while holding down the Shift key, all nodes subsequent to that node (inclusive) can be selected. The selected nodes can be collectively moved, or commands can be simultaneously executed for them from a pop-up menu.

> > ### Select additional links, nodes

> > When you click the left mouse button on a node while holding down the Ctrl key, you can select nodes in addition to the one currently selected. The selected nodes can be collectively moved, or commands can be simultaneously executed for them from a pop-up menu.

> > When you click the left mouse button on a link while holding down the Ctrl key, you can select links in addition to the one currently selected. However, even if multiple links are selected, no more than one link can be manipulated at a time.

> - Middle button

> > ### Move link (paste)

> > You can paste a link by dragging the link with the center mouse button. The mouse pointer will become a (P) or a (C) depending on the location at which the center button was pressed. For links, when the pointer is a (P), the parent node is changed; if it is a (C), the child node is changed. (The link arrow indicates parent -> child.)

> > If a link is moved while pressing the center button (dragged), and then the center button is released on the node where you want to paste, that node will become a parent/child according to the (P)/(C) display. In the current version, this applies to the pasting of only some of the links (see the Limitations section). A warning will appear if you attempt to move a link that cannot be pasted.

> > ### Move node

> > Nodes can be moved by dragging them with the middle mouse button. If multiple nodes are selected, those nodes can be moved simultaneously.

> > ### Create new link

> > A new link can be created by dragging with the middle mouse button depressed while holding down the Shift key.

> > To create a link, click the middle button on the node that you want to be the parent while holding down the Shift key. Then while still holding down the buttons, drag to the node that you want to be the child and release the buttons.

> > Links cannot be created where there is a restriction in the NIFF specification. In addition, a duplicate link cannot be created where a link already exists.

> > Links can be created between scene-obj, obj-obj, obj-shape, obj-mat, obj-anim, shape-mat, part-mat, and mat-texture.

> > ### Move window

> > When the size of the window displaying node attributes exceeds screen size, the window can be moved by dragging it with the middle mouse button on the frame of the window.

> - Right button

> > ##### When you click the right button on a node

> > [Hide Node]

> > That node will not be displayed. When the link to a hidden node has disappeared, a left parenthesis "(" character will be displayed on the right edge of the node that actually has the child.

> > [Collapse Subgraph]
> > The entire tree below that node will be hidden. A left parenthesis "(" character will be displayed as above.

> > [Show Immediate Children]
> > All child nodes immediately below that node are displayed.

> > ##### When you click at a location other than a node

> > [Hide]
> > This hides the selected node.

> > [Collapse]
> > This hides all nodes below the selected node.

> > [Expand]
> > This displays the child nodes immediately below the selected node.

> NEXT