Sign in Join
FPDoc Onlineexperiment

TComponentMediator class

In unit fpObserver

General-purpose mediator for any TComponent-based view

Declaration

pascal
TComponentMediator = class(TBaseMediator)

Inheritance

  1. TComponentMediator
  2. TBaseMediator
  3. TComponent
  4. TPersistent
  5. TObject

Description

The TComponentMediator class provides mediation capabilities for any TComponent-based view. It extends TBaseMediator to work with components that can be set at design time or runtime.

This mediator is useful for creating flexible data binding scenarios where the specific view component type is not known at compile time, or when working with various types of input controls. You can also create descendants from this class which introduce more specific behaviour

See also

Properties

ViewComponentpublishedComponent serving as the view in the mediation
ViewPropertyNamepublishedName of property in view component to mediate

Methods

GetViewprotected
SetComponentprotected
NotificationprotectedHandles component free notification events

Inherited

From TBaseMediator (30)

Active CheckPropertyName CheckViewSubject CompositeMediator Destroy DoObjectToView DoViewToObject FPOObservedChanged MaybeObjectToView MaybeViewToObject ObjectToView OnObjectToView OnViewToObject PublishedSubjectProperty PublishedViewProperty RaiseMediatorError ReadOnly SetActive SetSubject SetSubjectPropertyName Subject SubjectPropertyName Transferring Valuelist ValuelistChanged View ViewChanged ViewChangedHandler ViewClass ViewToObject

From TComponent (74)

_AddRef _Release BeforeDestruction CanObserve ChangeName ComObject ComponentCount ComponentIndex Components ComponentState ComponentStyle Create DefineProperties DesignInfo DestroyComponents Destroying ExecuteAction FindComponent FreeNotification FreeOnRelease GetChildOwner GetChildParent GetChildren GetDeltaStreams GetEnumerator GetIDsOfNames GetNamePath GetObservers GetOwner GetParentComponent GetTypeInfo GetTypeInfoCount HasParent iicrGetComponent InsertComponent Invoke IsImplementorOf Loaded Loading Name ObserverAdded Observers OnGetDeltaStreams Owner PaletteCreated QueryInterface ReadDeltaState ReadDeltaStream ReadState ReferenceInterface RemoveComponent RemoveFreeNotification RemoveFreeNotifications SafeCallException SetAncestor SetChildOrder SetDesigning SetDesignInstance SetInline SetName SetParentComponent SetSubComponent Tag ToString TToStringNameMode UpdateAction Updated UpdateRegistry Updating ValidateContainer ValidateInsert ValidateRename VCLComObject WriteState

From TPersistent (5)

Assign AssignTo FPOAttachObserver FPODetachObserver FPONotifyObservers

From TObject (37)

AfterConstruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandler DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName newinstance QualifiedClassName StringMessageTable SystemHasExtendedRTTI UnitName

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.