Class: MDelegatingTable

Declaration: ScrollingListAdvanced.h

Taxonomy Categories:

Member Functions:


Interface Category:

API.

Inherits From:

None.

Inherited By:

TTableView

Purpose:

MDelegatingTable is a mixin class that defines the protocol for establishing a notification connection with a MTableControlState object. This notification connection allows a TTableView to remain consistent with its corresponding MTableControlState.

Instantiation:

MDelegatingTable is a mixin class and cannot be instantiated.

Deriving Classes:

You can mixin MDelegatingTable with classes derived from TTableView to ensure they remain consistent with their corresponding MTableControlState object.

Concurrency:

Not multithread safe.

Resource Use:

No special requirements.

Other Considerations:

None.

Member Function: MDelegatingTable::MDelegatingTable

  1. MDelegatingTable ()
  2. MDelegatingTable (MTableControlState * delegate)
  3. MDelegatingTable (const MDelegatingTable &)

Interface Category:

API.

Purpose:

  1. Default constructor.
  2. Creates a MDelegatingTable for the specified MTableControlState.
  3. Copy constructor.

Calling Context:

  1. Called to create a MDelegatingTable suitable for streaming into.
  2. Called to create a MDelegatingTable for the specified MTableControlState.
  3. Called to copy an object.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::~MDelegatingTable

virtual ~ MDelegatingTable ()

Interface Category:

API.

Purpose:

Destructor.

Calling Context:

Called to destroy an object.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::operator=

MDelegatingTable & operator =(const MDelegatingTable &)

Interface Category:

API.

Purpose:

Assignment operator.

Calling Context:

Called when an object is assigned to another compatible object.

Parameters:

Return Value:

A non-const reference to the left-hand side object.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::operator>>=

virtual TStream & operator >>=(TStream &) const

Interface Category:

API.

Purpose:

Stream-out operator.

Calling Context:

Called to stream out data.

Parameters:

Return Value:

Returns a reference to the stream the object streams itself out to.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::operator<<=

virtual TStream & operator <<= (TStream &)

Interface Category:

API.

Purpose:

Stream-in operator.

Calling Context:

Called to stream in data.

Parameters:

Return Value:

Returns a reference to the stream the object streams itself in from.

Exceptions:

Throws TInvalidVersionError() if the version of the flattened object is not the original version.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::IsEnabled

virtual bool IsEnabled () const

Interface Category:

API.

Purpose:

Returns true if the control state associated with this delegating table is enabled. False is returned if the control state is not enabled.

Calling Context:

Call this function directly to determine if the control state associated with this delegating table is enabled.

Parameters:

Return Value:

Returns true if the control state associated with this delegating table is enabled.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::AdoptState

virtual void AdoptState (MTableControlState * state)

Interface Category:

API.

Purpose:

Adopts the specified control state, and has ownership of the specified state.

Calling Context:

Call this function directly to adopt a control state.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::SetState

virtual void SetState (MTableControlState * state)

Interface Category:

API.

Purpose:

Sets the specified control state as the current state, and does not have ownership of the specified state.

Calling Context:

Call this function directly to set a control state.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::GetState

virtual MTableControlState * GetState () const

Interface Category:

API.

Purpose:

Returns a pointer to the control state associated with this object. If there is no control state initially, a default control state object is created and returned.

Calling Context:

Call this function directly to obtain the control state associated with this object.

Parameters:

Return Value:

Returns a pointer to the control state associated with this object.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

Return the actual control state, do not delete it.

Member Function: MDelegatingTable::OrphanState

virtual MTableControlState * OrphanState ()

Interface Category:

API.

Purpose:

Orphans the control state associated with this object, and lose the ownership of this control state.

Calling Context:

Call this function directly to orphan the control state associated with this object.

Parameters:

Return Value:

A pointer to the control state that was orphaned.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::SetRequestProcessor

virtual void SetRequestProcessor (TRequestProcessor * proc)

Interface Category:

API.

Purpose:

Sets the specified request processor and establishes a connection with it.

Calling Context:

Call this function directly to establish a connection with the specified request processor.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::StateChanged

virtual void StateChanged (const TNotification &)

Interface Category:

API.

Purpose:

Notifies the control state associated with this object that the state of the table has changes.

Calling Context:

Called whenever the table is changed.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MDelegatingTable::HandleStateChanged

virtual void HandleStateChanged ()

Interface Category:

API.

Purpose:

Notifies the control state associated with this object that the state of the table has changes. The default implementation does nothing.

Calling Context:

Called by StateChanged().

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

Deriving classes must provide an implementation for this member function.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.