GEF 3.0 - New and Noteworthy


Rulers and Guides GEF viewers can now display accessible rulers along their top and left edges. A ruler can display pixels, centimeters or inches. Guides can be created on the ruler by clicking on an empty spot on the ruler or via its context menu. Parts in the graphical editor can be dragged and attached to the guides. They can also be attached when resizing. Alternatively, snapping can be disabled by holding down the Alt key while dragging. Feedback is shown in the form of a red line when a part is being attached to a guide.

Screenshot showing a circuit being attached to a guide

Parts that are attached to a guide will then move with the guide.

Screenshot showing parts being dragged with a guide

A mechanism is available to show or hide rulers.

Screenshot showing rulers enabled on the view menu


Grid GEF now provides a grid. Parts can be snapped to a grid during creation, moving or resizing. It is also possible to have connection bendpoints snap to it. (Note that snapping during creation and snapping of connection bendpoints, although possible, have not been implemented in the logic example.) Alternatively, snapping can be disabled by holding down the Alt key while dragging. Grid snapping and visibility are two distinct properties, and it is possible to enable one without the other. Like the rulers, the grid can be turned off, if so desired.

Screenshot showing a resized part snapping to grid


Snap to Geometry The Snap to Geometry feature allows you to quickly align parts being dragged to other parts in the diagram. Edges of parts being resized can be snapped as well. A blue feedback line shows what the part is snapping to. In the screenshot below, the circuit being dragged is aligning to the vertical center of the topmost circuit, and the bottom of the other two circuits.

Screenshot showing the Snap to Geometry feature

As with the other snapping features, it can be disabled by holding down Alt while dragging, or can be permanently turned off.


Constrained Move and Resize Holding down the Shift key while moving a part will restrict that part's movement to one of the primary eight directions (N, S, E, W and the intermediaries). Doing the same while resizing will cause a proportionate resize: the height to width ratio will be maintained.


Centered Resize Holding down the Ctrl key while resizing will cause a resize to happen in the opposite direction of the drag as well, such that the center of the part being resized will not change after the resize is done.

Screenshot showing centered resize


Cloning Holding down the Ctrl key while dragging activates cloning. Instead of moving the parts being dragged, copies of those parts will be created at the new location.  During cloning, the cursor will also change to indicate creation.

Palette View GEF 3.0 introduces the Palette View. This allows users to customize the size and placement of the palette, and even close it when not needed. Moreover, that size and placement remains the same between multiple GEF-based editors.

Fly-out Palette For clients that require the palette to be always visible, and to provide further customizability to the end-user, the fly-out palette is also being introduced. The palette flies out over the top of the editor when the user hovers over it (or clicks on it), and auto-hides when not in use.

Screenshot showing the hidden flyout palette

The user can also pin it open, if so desired.

Screenshot showing the fly-out palette pinned open and its context menu

It can be resized, docked on either size of the editor, and is completely accessible. The fly-out is only visible when the palette view is not. It automatically comes up when the palette view is closed (or when the user switches to a perspective in which the view is not open), and disappears when the palette view is opened. The palette state (selection, drawer expansion, etc.) is maintained when switching from the view to the fly-out and vice-versa.


Palette Stacks

It is now possible to create stacks of entries on the palette. The active entry in the stack is the one visible on the top. A drop-down menu allows changing the active entry. When the palette is in any layout other than list, the drop-down can only be accessed via Alt+Down .

Screenshot showing a palette stack and its drop-down menu


Shortest Path Connection Routing An automatic connection routing technique, that employs the shortest path algorithm to find paths around obstacles, is now available in GEF.

Screenshot showing automatic connection routing

This feature can be activated in the logic example by deselecting everything in the diagram and then changing the connection router via the property sheet.

Screenshot showing the connection router in the property sheet


Panning With the PanningSelectionTool, it is possible to pan by moving the mouse while holding down spacebar and mouse button 1 (left mouse button).  This is demonstrated in the logic example, which uses the PanningSelectionTool as the default tool, instead of the SelectionTool.

Match Size of Figures New actions are available that can, with more than one part selected, resize all selected parts to have the same height or width as that of the primary selection (the part that was last selected).

Screenshot showing the actoins on the view menu



Copyright 2000, 2004 IBM Corporation and others.