yFiles FLEX Web Application

This web application provides some demo applications that demonstrate the versatility of the yFiles FLEX API in combination with a yFiles powered server.

Demo Categories

Use the categories to filter the demo applications.

The Auxiliary Component Demo

top

Category: Visual Aspects

Auxiliary Component Demo Application

The Auxiliary Component Demo demonstrates how to add an arbitrary auxiliary component to nodes using a custom style implementation.

The example dialog that is attached to each node allows to add parent and child nodes and siblings.

The Bridge Demo

top

Category: Visual Aspects

Bridge Demo Application

The Bridge Demo demonstrates how to create bridges when edges cross an obstacle. In addition to bridges for edge/edge intersections, this demo also shows how to create bridges for other obstacles like group node boundaries.

The Business Process Diagram Demo

top

Category: Example Application

Business Process Diagram Demo Application

The Business Process Diagram Demo shows how an editor for business process diagrams can be created using yFiles FLEX. The visualization and business logic is based on the BPMN 1.1 specification, but isn't meant to implement all aspects of the specification. Instead, it demonstrates what techniques offered by yFiles FLEX can be used to create such an editor:

The Callout Demo

top

Categories: User Interaction, Visual Aspects

Callout Demo Application

The Callout Demo demonstrates how to add callouts (persistent, expandable tooltips) that provide additional information about graph items.

The Collapsible Tree Demo

top

Category: Expand/Collapse Navigation

Collapsible Tree Demo Application

The Collapsible Tree Demo is an example yFiles FLEX application that provides some functionality beyond the standard navigation and editing functions contained in the yFiles FLEX API.

For the tree that is loaded into the editor, each inner node may either be collapsed or expanded. The children of collapsed nodes are not visible in the editor. In addition, the layout algorithm may be changed.

The application demonstrates custom behavior of both the view shown in the client and the servlets the client communicates with. In addition, the nodes are rendered with custom icons that indicate their current state.

The Custom Snapping Demo

top

Category: User Interaction

Custom Snapping Demo Application

The Custom Snapping Demo demonstrates how the snapping feature can be customized.

It demonstrates how to add additional snap lines at labels and how to add additional graph independent snap lines that are visualized and can be moved around the canvas.

The Custom Style Demo

top

Categories: Visual Aspects, Client-Server Communication

Custom Style Demo Application

The Custom Style Demo demonstrates how to implement a custom style for nodes.

It shows how to properly serialize and deserialize the custom style instance to and from GraphML files and demonstrates the roundtripping capability of the yFiles FLEX server component.

The user may create a graph using the common graph editing gestures and press the Roundtrip button to send the graph to the server. The server will calculate a new layout for the graph and additionally determine the centrality values for the nodes in the graph. The results of running that algorithm is encoded visually into the custom style and transferred back to the client.

The Delegating Style Demo

top

Category: Visual Aspects

Delegating Style Demo Application

The Delegating Style Demo demonstrates how to decorate existing styles with additional visual features such as effects, transparency, or filters.

Moreover, it demonstrates how to hide elements temporarily from the user using an invisible style.

The DOM Tree Demo

top

Categories: Client-Server Communication, Visual Aspects

DOM Tree Demo Application

The DOM Tree Demo demonstrates the powerful combination of a yFiles powered server, the yFiles FLEX API, and standard Flash animation and effect capabilities.

The demo provides a text input field for entering URLs. The HTML page that is found at the given location is parsed into a tree structure on the server. In addition, the server calculates a layout for the resulting tree structure and annotates the nodes with their HTML tag type.

The client then displays the generated tree. When the user hovers over a node, a Flash effect is triggered which enlarges the node and displays the corresponding HTML tag type as a label.

Links (indicated by red circles) can be followed by using the context menu. Note that this will work only for standard links that link to pages with standard HTML content.

The Drag and Drop Demo

top

Category: User Interaction

Drag and Drop Demo Application

The Drag and Drop Demo demonstrates the interaction of the yFiles FLEX client library and the Flex Component and Drag and Drop framework.

The demo features a Flex Accordion component containing three palettes each holding different kinds of node styles.

The node styles can be selected as the default node style for node creation or nodes can be created by dragging a node style from the palette to the view.

In addition, automatic layouts can be calculated for the manually created graph.

The Drill Down Demo

top

Category: Expand/Collapse Navigation

Drill Down Demo Application

The Drill Down Demo demonstrates drill-down navigation behavior: Single nodes in a graph represent distinct graphs that can be loaded by clicking the nodes.

The demo also features a modified overview component that facilitates navigation in the graph hierarchy.

The Edge Labeling Demo

top

Categories: Layout, Visual Aspects

Edge Labeling Demo Application

The Edge Labeling Demo shows how to configure edge labels and the corresponding edge label models as well as how to apply the generic labeling algorithm.

The Folding Demo

top

Categories: Grouping and Folding, Client-Server Communication

Folding Demo Application

The Folding Demo demonstrates "folding", an extension of the grouping concept which provides additional functionality on top of it. Basically, folding provides support for collapsing group nodes and for the reverse operation, expanding previously collapsed group nodes. Collapsing a group node means hiding away all of its contents, expanding a previously collapsed group node results in the contents being visible again.

This demo shows how to navigate through a graph hierarchy, opening and closing of group nodes, and navigating into the contents of group nodes.

The Graph Canvas Demo

top

Category: Example Application

Graph Canvas Demo Application

The Graph Canvas Demo demonstrates graph parsing, layout, navigation, and editing with yFiles FLEX. You can load various GraphML files that are located in a predefined directory on the server using the provided combo box.

The files will be sent from the server to the client and stored in the client application. The server implementation for this demo is stateless.

At first, the graph will be loaded with the node coordinates specified in the GraphML file. The layout can be changed using the layout combo box. This will tell the server to compute a new layout for the current graph. For this to work the graph is sent to the stateless server that computes the layout and sends back the layout data to the client.

On the second tab, labeled "GraphML," the GraphML file format can be explored in a simple roundtrip fashion. As soon as a graph has been created on the first tab, the GraphML representation can be loaded into the second tab using the corresponding button. The text area then displays the GraphML code which can be modified directly. Clicking the second button will load the GraphML file back into the editor.

Additionally, there is a Save button that downloads the GraphML file to the client. Due to limitations of the Flex sandbox, this is done via the server.

The graph can be moved by pressing the Shift button and moving the mouse. For additional navigation and editing functionality see the integrated help in the demo application.

If the currently loaded graph provides descriptions for any nodes or edges, this data will be shown in tooltips that appear when hovering over the graph items. If the graph provides URLs, the context menu for the corresponding items will contain an option that will load the corresponding URL in a new browser window.

The Graph Wiki Demo

top

Category: Client-Server Communication

Graph Wiki Demo Application

The Graph Wiki Demo is a simple demo that implements a Wiki-like graph repository.

Users may load, edit, and save graph instances, add descriptions and urls to the nodes in the graphs, and share them with other users simply by telling them the name of the graph.

Create nodes and edges using the common graph editing gestures of all demos and attach a description or a URL to the nodes by right-clicking on them and using the action in the provided popup menu.

The graphs are stored on the server under the name that can be entered at the top of the form.

The Grid Demo

top

Categories: User Interaction, Visual Aspects

Grid Demo Application

The Grid Demo demonstrates how to use a grid in the yFiles FLEX canvas. The grid restricts creation and repositioning of graph items to discrete coordinates.

The Grouping Demo

top

Category: Grouping and Folding

Grouping Demo Application

The Grouping Demo demonstrates the handling of grouped graphs with yFiles FLEX.

Nodes can be grouped and ungrouped using the toolbar buttons. A node can also be added to a group node or removed from a group node by dragging it with the Shift key held down. The group which will be the node's parent is indicated by highlighted corners.

It features the yFiles FLEX hierarchy tree view component that allows to easily navigate the nesting structure of the graph.

The Incremental Hierarchic Grouping Demo

top

Categories: Expand/Collapse Navigation, Grouping and Folding

Incremental Hierarchic Grouping Demo Application

The Incremental Hierarchic Grouping Demo demonstrates expand/collapse functionality for grouped graphs.

The Incremental Hierarchic Layouter Demo

top

Categories: Layout, User Interaction,

Incremental Hierarchic Layouter Demo Application

The Incremental Hierarchic Layouter Demo shows how to use the IncrementalHierarchicLayouter together with sophisticated customized user interaction functionality.

The application will automatically perform a new layout whenever the user makes changes to the graph. The layout does not change the layer assignment of the nodes. Moreover, the sequence of nodes within each layer is preserved.

The Layer Constraints Demo

top

Category: Layout

Layer Constraints Demo Application

The Layer Constraints Demo shows how to use layer constraints with the IncrementalHierarchicLayouter to restrict the node layering.

The Layout Module Demo

top

Categories: Example Application, Layout, Client-Server Communication

Layout Module Demo Application

The Layout Module Demo demonstrates the most important layout algorithms available with yFiles. It also shows how complex configurations for yFiles layout algorithms can be created interactively and executed remotely.

When a layout algorithm is selected, a form is shown that allows to configure the individual properties of the layout algorithm. The properties are set on a data object that is sent to the server, using the automatic serialization capabilities of yFiles FLEX.

The API that is used for editing the layouter properties is part of the demo source code.

Supported layout styles are:

The Lookup Decorator Demo

top

Category: User Interaction

Lookup Decorator Demo Application

The Lookup Decorator Demo demonstrates how to customize aspects of display and user interaction by modifying the item-specific lookup mechanism. In this example, the repositioning and resizing behavior of nodes and bends is changed.

The Mixed Layout Demo

top

Categories: Layout, Client-Server Communication

Mixed Layout Demo Application

The Mixed Layout Demo shows how to use the recursive group layouter to apply different layouts to the contents of group nodes.

The Organization Chart Demo

top

Categories: Example Application, Expand/Collapse Navigation, Visual Aspects

Organization Chart Demo Application

The Organization Chart Demo shows how an interactive view for an organization chart can be created using yFiles FLEX. The displayed graph is generated using XML data models. The user can switch between organization chart example of different sizes, where one of these also features group nodes to illustrate departments.

The demo uses the following techniques offered by/using the yFiles FLEX library:

The Orthogonal Edges Demo

top

Category: User Interaction

Orthogonal Edges Demo Application

The Orthogonal Edges Demo shows how orthogonal edge editing can be customized by implementing the IOrthogonalEdgeHelper interface and adding instances to the lookup chain of the edges in the graph via the ILookupDecorator mechanism.

The Port Candidate Demo

top

Categories: Layout, Client-Server Communication

Port Candidate Demo Application

The Port Candidate Demo shows how PortCandidateSets can be used with IncrementalHierarchicLayouter to control from what side edges connect to certain node types in the automatic layout process.

The Sequence Constraints Demo

top

Categories: Layout, User Interaction

Sequence Constraints Demo Application

The Sequence Constraints Demo shows how to use sequence constraints with the IncrementalHierarchicLayouter to restrict the node sequencing.

The Snap Line Demo

top

Category: User Interaction

Snap Line Demo Application

The Snap Line Demo demonstrates the snapping feature.

It demonstrates how the snapping behavior can be influenced by diverse setting options.

The Template Style Demo

top

Categories: Visual Aspects, Client-Server Communication

Template Style Demo Application

The Template Style Demo shows how to use the TemplateNodeStyle and TemplateLabelStyle for creating complex node and label visualizations using Flex MXML components.

The yFiles FLEX template styles allow to use arbitrary MXML components for graph item visualization, while being able to access all relevant context information from the component implementation.
Most context properties can be used with data binding.

This demo uses so-called "user-tags" to associate complex custom data objects with graph items.

In addition, the demo features proper (de)serialization of the template styles and user tags for client-server communication.

The yFiles for Java Compatibility Demo

top

Category: Client-Server Communication

yFiles for Java Compatibility Demo Application

The yFiles for Java Compatibility Demo demonstrates the yFiles FLEX client support for visual features of yFiles for Java.

The yFiles for Java Export Demo

top

Category: Client-Server Communication

yFiles for Java Export Demo Application

The yFiles for Java Export Demo demonstrates how to export a Flex graph to an image file using a yFiles for Java server.