[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[nebula-dev] Contributing
|
Dear Nebula Team,
I have been working on custom widgets and am interested in pursuing a
contribution to the Nebula project.
the initial items:
- CTableTree
- CTableTreeViewer
- CButton
- SearchHelper
the code presently resides on SourceForge:
Project Page: http://sourceforge.net/projects/calypsorcp
CVS:
calypsorcp.cvs.sourceforge.net
/cvsroot/calypsorcp
pserver
anonymous / no password
Eclipse projects (most relevant):
- org.aspencloud.widgets & org.aspencloud.viewers
- org.aspencloud.widgets.test shows some example use code
- org.aspencloud.calypso.ui contains more subclasses of CTableTreeCell
a description of each:
CTableTree is a "Tree with Columns" as is the SWT Tree widget, and is
designed to be as pin-compatible with it, as possible. It is not
intended to be used as a grid, like KTable.
Key differences with SWT Tree:
- the tree hierarchy can be in any column ( setTreeColumn(int) )
- it can optionally display a string when empty (
setEmptyMessage(String) )
- it is built upon CTableTreeCells which can be easily customized,
subclassed, and maintained separately from the use of the actual
CTableTree. There are three base styles to start from: 1. Normal, is
like a regular SWT cell to which you set icons and text; 2. DropDown,
which creates a toggle in the "regular" cell area, along with settable
icons and text, and adds a child SWT Composite, to contain other SWT
Controls, which will expand and collapse just like an
ExpandableComposite; and 3. Simple, which puts a SWT Composite in the
main cell area to contain other SWT Controls.
- it uses CTableTreeItems to separate the cells from the table so that
CTableTreeItems can be added to the CTableTree just as SWT TreeItems are
added to an SWT Tree, with the exception that an array of CTableTreeCell
Classes are passed to the constructor to tell it how to build its cells
- what cells to use, and in what order (if there are nulls in this
array, or the length of the array is less than the number of columns,
the item automatically fills it in with "Normal"-type cells).
CTableTreeViewer provides a JFace style viewer for using the CTableTree,
and is designed to be as pin-compatible with JFace's TableViewer and
TreeViewer as possible. With it, come some new providers:
ICTableTreeLabelProvider extends ITableLabelProvider to allow multiple
icons to be set for each column (though an ITableLabelProvider can be
used if you don't want more than one image per cell), and
ICTableTreeCellProvider which permits dynamic creation of
CTableTreeItems with the appropriate cells for the data and column.
CButton is a button that acts visibly similar to a ToolItem - the button
is drawn only when the mouse is over it - and allows the drawing of
images, text, and polygons.
SearchHelper is an auto-complete delegate that can be attached to a
Combo, ComboViewer, or Text (with the additional input of a String[]
through which to search), with a single line of code: new
SearchHelper(Combo, boolean);
sincerely,
Jeremy Dowdall