GEF/GEF4/Cloudio

Note to non-wiki readers: This documentation is generated from the Eclipse wiki - if you have corrections or additions it would be awesome if you added them in the original wiki page.

Introduction

The GEF4 Cloudio component provides support for visualizing tag clouds within a dedicated SWT Canvas or JFace viewer. It is internally decomposed into the single Cloudio.UI module. There are also a couple of undeployed Cloudio UI Examples that demonstrate usage of the (still internal) API. The user documentation is provided in terms of the GEF4 Cloudio User Guide.

Cloudio.UI

feature: org.eclipse.gef4.cloudio.ui

bundle: org.eclipse.gef4.cloudio.ui

The Cloudio.UI module of GEF4 Cloudio realizes the Tag cloud view end-user features, as outlined in the GEF4 Cloudio User Guide. It does not provide any public API yet, but exposes its internal API (guarded by an x-friends directive).

Cloudio.UI

feature: org.eclipse.gef4.cloudio.ui

bundle: org.eclipse.gef4.cloudio.ui

The Cloudio.UI module of GEF4 Cloudio provides SWT- and JFace-based support for rendering tag clouds.

{Root}

TagCloud, Word

A TagCloud is a special org.eclipse.swt.widgets.Canvas, dedicated to display a tag cloud. It expects the to be rendered words and related properties (weight, angle, color, font) to be represented as Word input elements and can be created as follows:

The result should look similar to this (String positions are assigned by random):

TagCloudViewer, ICloudLabelProvider

A TagCloudViewer is a special org.eclipse.jface.viewers.ContentViewer, that renders a tag cloud. It is internally based on a TagCloud and enhances the functionality of the tag cloud: it is possible to select
and deselect elements by mouse click, to zoom in or out using the mouse wheel and to display tool tips on words. The TagCloudViewer expects an org.eclipse.jface.viewers.IStructuredContentProvider and an ICloudLabelProvider. The words that are to be rendered in the TagCloud are inferred by queuing the ICloudLabelProvider for labels of the elements returned by the org.eclipse.jface.viewers.IStructuredContentProvider. The properties of the words (weight, color, font, angle) are retrieved via the ICloudLabelProvider for each word as well.

RectTree, RectNode, SmallRect

A RectTree is a two-dimensional tree structure to store non-overlapping rectangles that are represented through RectNodes, which are internally based on a short-precision rectangle representation (SmallRect).

CloudMatrix

A CloudMatrix represents the drawable area within a tag cloud (and information about which word is placed at which coordinate), internally based on a RectTree.