Views
Data Access Package API Reference Guide
Product Documentation:
Views Documentation Home
List of all members | Public Member Functions
IliTableHook Class Reference

Table class. More...

#include <ilviews/dataccess/tblhook.h>

Inherited by IliDsUsageHook, IliTableContext, and IliTableGraphicHook.

Public Member Functions

 IliTableHook ()
 This constructor creates a table hook.
 
virtual void allRowsDeleted ()
 Called when the IliTable::clearRows member function is called.
 
virtual void cellChanged (IlInt rowno, IlInt colno)
 Called just after the cell has changed. More...
 
virtual void columnChanged (IlInt colno)
 Called when a column has changed. More...
 
virtual void columnDeleted (IlInt colno)
 Called just after a column has been deleted. More...
 
virtual void columnInserted (IlInt colno)
 Called when a new column is inserted. More...
 
virtual void columnMoved (IlInt src, IlInt dest)
 Called just after a column has been moved. More...
 
virtual void columnToBeDeleted (IlInt colno)
 Called just before a column is deleted. More...
 
virtual void endOfBatch ()
 Called to terminate a series of updates to the IliSchema or IliTable objects. More...
 
virtual void raiseError (const IliErrorMessage &msg)
 Verbose Called each time an error occurs. More...
 
virtual void rowChanged (IlInt rowno)
 Called just after a row has been changed. More...
 
virtual void rowDeleted (IlInt rowno)
 Called just after a row has been deleted. More...
 
virtual void rowFetched (IlInt rowno)
 Called just after a new row has been fetched from a remote database and inserted. More...
 
virtual void rowInserted (IlInt rowno)
 Called just after a new row has been inserted. More...
 
virtual void rowMoved (IlInt src, IlInt dest)
 Called just after a row has been moved. More...
 
virtual void rowsExchanged (IlInt rowno1, IlInt rowno2)
 Called just after a row has been exchanged with another row. More...
 
virtual void rowsFetched (IlInt fromRow, IlInt toRow)
 Called when many consecutive rows are fetched at once. More...
 
virtual void rowsInserted (IlInt fromRow, IlInt toRow)
 Called when many consecutive rows are inserted at once. More...
 
virtual void rowToBeChanged (IlInt rowno)
 Called just before a row is changed. More...
 
virtual void rowToBeDeleted (IlInt rowno)
 Called just before a row is deleted. More...
 
virtual void startOfBatch ()
 Called at the start of a series of updates to the IliSchema or IliTable object. More...
 
virtual void tableChanged ()
 Called when the object has undergone a significant number of changes (see the description for the IliTable::tableChanged member function.)
 
virtual void tableDeleted ()
 Called when the IliSchema or IliTable object is deleted.
 

Detailed Description

Table class.

Library: dataccess

The IliTableHook class can be used to monitor updates undergone by instances of the IliSchema or IliTable classes (or of their subclasses). The IliSchema::addHook member function installs a table hook. To install a hook on a table or schema object, you first define a subclass of the IliTableHook class, and override some, or all of its virtual member functions. Instances of this new class can then be created and added to the table or schema object. Be aware that the virtual member functions of a table hook are called in very specific contexts that are elaborated in the description of each member function. Consequently, great care should be taken not to call, directly or indirectly, other member functions on the underlying table that would completely change the context in which the member function was called. For example, you should not call the IliTable::deleteRow member function from inside a rowFetched table hook virtual member function.

See also
IliErrorMessage, IliSchema, IliTable

Member Function Documentation

◆ cellChanged()

virtual void IliTableHook::cellChanged ( IlInt  rowno,
IlInt  colno 
)
virtual

Called just after the cell has changed.

If more than one value has changed in a row, it is likely that the rowChanged member function will be called, instead of this member function.

Parameters
rownoThe row position.
colnoThe column position.

◆ columnChanged()

virtual void IliTableHook::columnChanged ( IlInt  colno)
virtual

Called when a column has changed.

Parameters
colnoThe column position.

◆ columnDeleted()

virtual void IliTableHook::columnDeleted ( IlInt  colno)
virtual

Called just after a column has been deleted.

Parameters
colnoThe column position.

◆ columnInserted()

virtual void IliTableHook::columnInserted ( IlInt  colno)
virtual

Called when a new column is inserted.

Parameters
colnoThe column position.

◆ columnMoved()

virtual void IliTableHook::columnMoved ( IlInt  src,
IlInt  dest 
)
virtual

Called just after a column has been moved.

Parameters
srcThe origin column position.
destThe destination column position.

◆ columnToBeDeleted()

virtual void IliTableHook::columnToBeDeleted ( IlInt  colno)
virtual

Called just before a column is deleted.

Parameters
colnoThe column position.

◆ endOfBatch()

virtual void IliTableHook::endOfBatch ( )
virtual

Called to terminate a series of updates to the IliSchema or IliTable objects.

Calls to startOfBatch and endOfBatch may be nested.

◆ raiseError()

virtual void IliTableHook::raiseError ( const IliErrorMessage msg)
virtual

Verbose Called each time an error occurs.

Parameters
msgThe error message.

◆ rowChanged()

virtual void IliTableHook::rowChanged ( IlInt  rowno)
virtual

Called just after a row has been changed.

Parameters
rownoThe row position.

◆ rowDeleted()

virtual void IliTableHook::rowDeleted ( IlInt  rowno)
virtual

Called just after a row has been deleted.

Parameters
rownoThe row position.

◆ rowFetched()

virtual void IliTableHook::rowFetched ( IlInt  rowno)
virtual

Called just after a new row has been fetched from a remote database and inserted.

In this case, the rowInserted member function will also be called.

Parameters
rownoThe row position.

◆ rowInserted()

virtual void IliTableHook::rowInserted ( IlInt  rowno)
virtual

Called just after a new row has been inserted.

Parameters
rownoThe row position.

◆ rowMoved()

virtual void IliTableHook::rowMoved ( IlInt  src,
IlInt  dest 
)
virtual

Called just after a row has been moved.

Parameters
srcThe origin row position.
destThe destination row position.

◆ rowsExchanged()

virtual void IliTableHook::rowsExchanged ( IlInt  rowno1,
IlInt  rowno2 
)
virtual

Called just after a row has been exchanged with another row.

Parameters
rowno1The first row position.
rowno2The second row position.

◆ rowsFetched()

virtual void IliTableHook::rowsFetched ( IlInt  fromRow,
IlInt  toRow 
)
virtual

Called when many consecutive rows are fetched at once.

By default, this virtual member function repeatedly calls rowFetched with each index between fromRow and toRow.

Parameters
fromRowThe first row position.
toRowThe last row position (inclusive).

◆ rowsInserted()

virtual void IliTableHook::rowsInserted ( IlInt  fromRow,
IlInt  toRow 
)
virtual

Called when many consecutive rows are inserted at once.

By default, this virtual member function repeatedly calls rowInserted with each row index.

Parameters
fromRowThe first row.
toRowThe last row (inclusive).

◆ rowToBeChanged()

virtual void IliTableHook::rowToBeChanged ( IlInt  rowno)
virtual

Called just before a row is changed.

Parameters
rownoThe row position.

◆ rowToBeDeleted()

virtual void IliTableHook::rowToBeDeleted ( IlInt  rowno)
virtual

Called just before a row is deleted.

Parameters
rownoThe row position.

◆ startOfBatch()

virtual void IliTableHook::startOfBatch ( )
virtual

Called at the start of a series of updates to the IliSchema or IliTable object.

A call to this virtual member function will be followed by a call to the endOfBatch virtual member function.