|
||
class MCoeLayoutManager;
Base class for layout managers.
A layout manager can be attached to one, or many (depending on the concrete layout manager), compound controls. The layout manager handles the layout of the components of the attached compound controls, and calculates the attached compound controls' minimum size.
Defined in MCoeLayoutManager
:
AttachL(CCoeControl &)
Attaches aCompoundControl to the layout manager. Is normally not called manuall...CalcMinimumSize(const CCoeControl &)const
Calculates the minimum size of aCompoundControl Is normally not called manually...CalcTextBaselineOffset(const CCoeControl &,const TSize &)const
Gets the offset to the first text baseline relative to the top of the control.CanAttach()const
Determines if it is possible to attach another control to the layout manager. Detach(CCoeControl &)
Detaches aCompoundControl from the layout manager. Is normally not called manua...HandleAddedControlL(const CCoeControl &,const CCoeControl &)
Handles when a component control is added to an attached compound control Is nor...HandleControlReplaced(const CCoeControl &,const CCoeControl &)
Handles when a component control is replaced by another component control in an ...HandleRemovedControl(const CCoeControl &,const CCoeControl &)
Handles when a component control is removed from an attached compound control Is...MCoeLayoutManager()
PerformLayout()
Performs the layout of the attached controls Is normally not called manually sin...Reserved_MCoeLayoutManager_1()
Reserved_MCoeLayoutManager_10()
Reserved_MCoeLayoutManager_11()
Reserved_MCoeLayoutManager_2()
Reserved_MCoeLayoutManager_3()
Reserved_MCoeLayoutManager_4()
Reserved_MCoeLayoutManager_5()
Reserved_MCoeLayoutManager_6()
Reserved_MCoeLayoutManager_7()
Reserved_MCoeLayoutManager_8()
Reserved_MCoeLayoutManager_9()
SetTextBaselineSpacing(TInt)
Sets the spacing between text baselines.TextBaselineSpacing()const
Returns the baseline spacing. virtual TBool CanAttach() const=0;
Determines if it is possible to attach another control to the layout manager.
|
virtual void AttachL(CCoeControl &aCompoundControl)=0;
Attaches aCompoundControl
to the layout manager. Is normally not called manually since CCoeControl::SetLayoutManagerL()
calls this function. Once a compound control is attached to a layout manager, the layout manager owns itself.
|
MCoeLayoutManager::Detach(CCoeControl &)
Detaches aCompoundControl from the layout manager. Is normally not called manua...CCoeControl::SetLayoutManagerL(MCoeLayoutManager *)
Sets the layout managervirtual void Detach(CCoeControl &aCompoundControl)=0;
Detaches aCompoundControl
from the layout manager. Is normally not called manually since CCoeControl::SetLayoutManagerL()
calls this function when you switch layout managers on a control. It is also called from CCoeControl::~CCoeControl
When the last attached compound control detaches, the layout manager deletes itself.
|
CCoeControl::SetLayoutManagerL(MCoeLayoutManager *)
Sets the layout managervirtual TSize CalcMinimumSize(const CCoeControl &aCompoundControl) const=0;
Calculates the minimum size of aCompoundControl
Is normally not called manually since CCoeControl::MinimumSize()
calls this function in the default implementation on controls with layout managers.
To calculate the minimum size is almost as time consuming as performing an actual layout and should be used with caution.
The minimum size depends on aCompoundControl
's maximum width.
|
|
CCoeControl::MaximumWidth()const
Gets the control's maximum widthvirtual void PerformLayout()=0;
Performs the layout of the attached controls Is normally not called manually since CCoeControl::SizeChanged()
calls this function in the default implementation on controls with layout managers.
The layout is generally performed by calling the component controls' SetMaximumWidth()
, followed by MinimumSize()
, and then the layout manager tries to place the component controls according to their minimum sizes and the settings.
CCoeControl::SetMaximumWidth(TInt)
Sets the controls maximum width.CCoeControl::MinimumSize()
Sets the control's minimum required size.virtual TInt CalcTextBaselineOffset(const CCoeControl &aCompoundControl, const TSize &aSize) const=0;
Gets the offset to the first text baseline relative to the top of the control.
|
|
CCoeControl::TextBaselineOffset(const TSize &)const
Gets the offset to the first text baseline relative to the top of the control.virtual void SetTextBaselineSpacing(TInt aBaselineSpacing)=0;
Sets the spacing between text baselines.
|
virtual TInt TextBaselineSpacing() const=0;
Returns the baseline spacing.
|
virtual void HandleAddedControlL(const CCoeControl &aCompoundControl, const CCoeControl &aAddedControl)=0;
Handles when a component control is added to an attached compound control Is normally not called manually since CCoeControlArray::InsertLC()
calls this function for controls with layout managers. Is used by layout managers to prepare to layout one more component
control.
|
CCoeControlArray::InsertLC(TCursor &,CCoeControl *,TInt)
Inserts a control at the given position.virtual void HandleRemovedControl(const CCoeControl &aCompoundControl, const CCoeControl &aRemovedControl)=0;
Handles when a component control is removed from an attached compound control Is normally not called manually since CCoeControlArray::Remove()
calls this function for controls with layout managers. Is used by layout managers to remove all settings and similar that
are specific for aRemovedControl
.
|
CCoeControlArray::Remove(const CCoeControl *)
Removes a control but does NOT delete the control itself. The ownership of the c...virtual TInt HandleControlReplaced(const CCoeControl &aOldControl, const CCoeControl &aNewControl)=0;
Handles when a component control is replaced by another component control in an attached compound control
Is not called by CCoeControl
. Is used by layout managers to move settings and similar that are specified for aOldControl
to aNewControl
If this function is called, neither HandleAddedControlL
nor HandleRemovedControl
is allowed to be called.
|
|
private: IMPORT_C virtual void Reserved_MCoeLayoutManager_11();