=================
VDKGrid component
=================
VDKGrid is a wrapper of gtksheet widget
made by Adrian E. Feiguin <adrian@ifir.ifir.edu.ar>

Basically is a table of cells that can be editable or contain
others widget as well. Table can be done with or without
column/row headers.


=============
VDKCell class
============
DESCRIPTION
Represent a single grid cell

PUBLIC MEMBERS
none

PROPERTIES
----------
VDKString		Text
GtkJustification	Align
VDKObject*		AttachedWidget (read-only)

METHODS
-------

void SetBackground(VDKRgb& rgb);
Set cell background

void SetForeground(VDKRgb& rgb);
Set cell foreground

void Attach(VDKObject* object,float x_align, float y_align);
Attach a generic widget to cell

int Row()
Returns cell row

int Column()
Returns cell column

void SetBorder(int mask, int width, int line_style);
Set cell border
- <mask> can be any ored combination of:
GTK_SHEET_LEFT_BORDER, GTK_SHEET_RIGHT_BORDER, 
GTK_SHEET_TOP_BORDER,  GTK_SHEET_BOTTOM_BORDER
- <width> is line thickness in pixels
- <line_style> can be one of:
GDK_LINE_SOLID, GDK_LINE_ON_OFF_DASH, GDK_LINE_DOUBLE_DASH


===================
VDKGridColumn class
===================
Represents a grid column header

PROPERTIES
----------
VDKString		Title
int			Width
bool			Enabled
VDKRgb			Background
VDKRgb			Foreground
bool			Visible

METHODS
-------
none

USING PROPERTIES
----------------
Width
Setting this prop to 0 makes each row width to be adapted to
contained text and used font dimensions

Enabled
Enable/disable columns titles, disabling makes them to act as titles
only, enabling makes them to act as buttons, grid_select_column signal
can be handled.

VDKGridRow class
===================
Represents a grid column header

PROPERTIES
----------
VDKString	Title
int		Height
bool		Enabled
bool		Visible


METHODS
-------
none

USING PROPERTIES
----------------
Height	
Setting this prop to 0 makes each row height to be adapted to
used font dimensions

Enabled
Enable/disable row titles, disabling makes them to act as titles
only, enabling makes them to act as buttons, grid_select_row signal
can be handled.

=============
VDKGrid class
=============

The wrapper


PROPERTIES
----------
VDKGridCell		*ActiveCell
VDKGridCell		*PreviousActiveCell
VDKGridCell		*ChangedCell
int			SelectedRow
int			SelectedColumn
bool			RowTitleVisible
bool			ColumnTitleVisible
int			MaxRows
int			MaxColumns

METHODS
-------
VDKGrid(VDKForm* owner, int row, int cols, 
		 bool editable = false,
		 char* title = "title");

Constructor, makes a VDKGrid of <row> rows and <cols> columns.
If <editable> is true cells can be edited.
<title> refers to grid title.

virtual ~VDKGrid() 

Destructor


VDKGridCell* Cell(int row, int col)
VDKGridCell* Cell(VDKPoint p)

Return a VDKGrid cell at <row,col> or <p>  position.

VDKGridColumn* Column(int col);
VDKGridRow* Row(int row);

Returns grid columns or row

void Clear()
Clear all cell contents.

void AddRow(StringArray& array);
Add a row getting values form a string array

void AddBlankRows(int n);
Add <n> rows to table

void Flush()
Delete all grid rows.


SIGNALS
-------

grid_select_cell
Emitted when a cell become selected (gain focus)

grid_unselect_cell
Emitted when a cell become unselected (looses focus)

grid_changed_cell
Emitted when a cell content is changed by user

grid_select_row
Emitted when a row is selected

grid_select_column
Emitted when a column is selected

EXAMPLE:
See at /testvdk/vdkgridwin.cc/.h

