ULIS  dev4.0.7
Utility Library for Imaging Systems
Public Member Functions | Static Public Member Functions | List of all members
TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType > Class Template Referencefinal

The TLayerText class provides a class to store text in a layer of a layer stack for painting applications.

Inheritance diagram for TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >:

Public Member Functions

 TLayerText (BlockType *iBlock, const FString &iName="Untitled Text", bool iLocked=false, bool iVisible=true, const FColor &iPrettyColor=FColor::Transparent, eBlendMode iBlendMode=eBlendMode::Blend_Normal, eAlphaMode iAlphaMode=eAlphaMode::Alpha_Normal, ufloat iOpacity=1.f, const FWString &iText=L"Lorem ipsum dolor sit amet...", const FFont &iFont=FFont::DefaultFont, uint32 iFontSize=12, const ISample &iTextColor=FColor::Black, bool iAntiAliased=true, const FTransformInfo &iTransform={}, const TRoot< ILayer > *iParent=nullptr, const FOnNameChanged &iOnNameChanged=FOnNameChanged(), const FOnBoolChanged &iOnLockChanged=FOnBoolChanged(), const FOnBoolChanged &iOnVisibleChanged=FOnBoolChanged(), const FOnColorChanged &iOnColorChanged=FOnColorChanged(), const FOnUserDataAdded &iOnUserDataAdded=FOnUserDataAdded(), const FOnUserDataChanged &iOnUserDataChanged=FOnUserDataChanged(), const FOnUserDataRemoved &iOnUserDataRemoved=FOnUserDataRemoved(), const FOnParentChanged &iOnParentChanged=FOnParentChanged(), const FOnSelfChanged &iOnSelfChanged=FOnSelfChanged(), const TOnBlockChanged< BlockType > &iOnBlockChanged=TOnBlockChanged< BlockType >(), const FOnBlendInfoChanged &iOnBlendInfoChanged=FOnBlendInfoChanged(), const FOnTextInfoChanged &iOnTextInfoChanged=FOnTextInfoChanged(), const FOnTransformInfoChanged &iOnTransformInfoChanged=FOnTransformInfoChanged())
 
 TLayerText (const FString &iName="Untitled Text", bool iLocked=false, bool iVisible=true, const FColor &iPrettyColor=FColor::Transparent, uint16 iWidth=0, uint16 iHeight=0, eFormat iFormat=Format_RGBA8, const FColorSpace *iColorSpace=nullptr, eBlendMode iBlendMode=eBlendMode::Blend_Normal, eAlphaMode iAlphaMode=eAlphaMode::Alpha_Normal, ufloat iOpacity=1.f, const FWString &iText=L"Lorem ipsum dolor sit amet...", const FFont &iFont=FFont::DefaultFont, uint32 iFontSize=12, const ISample &iTextColor=FColor::Black, bool iAntiAliased=true, const FTransformInfo &iTransform={}, const TRoot< ILayer > *iParent=nullptr, const FOnNameChanged &iOnNameChanged=FOnNameChanged(), const FOnBoolChanged &iOnLockChanged=FOnBoolChanged(), const FOnBoolChanged &iOnVisibleChanged=FOnBoolChanged(), const FOnColorChanged &iOnColorChanged=FOnColorChanged(), const FOnUserDataAdded &iOnUserDataAdded=FOnUserDataAdded(), const FOnUserDataChanged &iOnUserDataChanged=FOnUserDataChanged(), const FOnUserDataRemoved &iOnUserDataRemoved=FOnUserDataRemoved(), const FOnParentChanged &iOnParentChanged=FOnParentChanged(), const FOnSelfChanged &iOnSelfChanged=FOnSelfChanged(), const TOnBlockChanged< BlockType > &iOnBlockChanged=TOnBlockChanged< BlockType >(), const FOnBlendInfoChanged &iOnBlendInfoChanged=FOnBlendInfoChanged(), const FOnTextInfoChanged &iOnTextInfoChanged=FOnTextInfoChanged(), const FOnTransformInfoChanged &iOnTransformInfoChanged=FOnTransformInfoChanged())
 
 TLayerText (const TLayerText &)=delete
 
virtual ~TLayerText () override
 
TLayerTextoperator= (const TLayerText &)=delete
 
tSelfRasterize (FContext &iCtx, FEvent *oEvent=nullptr) override
 
FEvent RenderImage (FContext &iCtx, BlockType &ioBlock, const FRectI &iRect=FRectI::Auto, const FVec2I &iPos=FVec2I(0), const FSchedulePolicy &iPolicy=FSchedulePolicy(), uint32 iNumWait=0, const FEvent *iWaitList=nullptr) override
 
FEvent RenderImageCache (FContext &iCtx) override
 
virtual const FString Type () const override
 
virtual const uint32 TypeID () const override
 
- Public Member Functions inherited from TAbstractLayerDrawable< BlockType >
virtual ~TAbstractLayerDrawable () override=0
 
 ILayer (const FString &iName="Untitled", bool iLocked=false, bool iVisible=true, const FColor &iPrettyColor=FColor::Transparent, const TRoot< ILayer > *iParent=nullptr, const FOnNameChanged &iOnNameChanged=FOnNameChanged(), const FOnBoolChanged &iOnLockChanged=FOnBoolChanged(), const FOnBoolChanged &iOnVisibleChanged=FOnBoolChanged(), const FOnColorChanged &iOnColorChanged=FOnColorChanged(), const FOnUserDataAdded &iOnUserDataAdded=FOnUserDataAdded(), const FOnUserDataChanged &iOnUserDataChanged=FOnUserDataChanged(), const FOnUserDataRemoved &iOnUserDataRemoved=FOnUserDataRemoved(), const FOnParentChanged &iOnParentChanged=FOnParentChanged(), const FOnSelfChanged &iOnSelfChanged=FOnSelfChanged())
 
void OnChangeNotifiedInternal () override
 
- Public Member Functions inherited from ILayer
 ILayer (const FString &iName="Untitled", bool iLocked=false, bool iVisible=true, const FColor &iPrettyColor=FColor::Transparent, const TRoot< ILayer > *iParent=nullptr, const FOnNameChanged &iOnNameChanged=FOnNameChanged(), const FOnBoolChanged &iOnLockChanged=FOnBoolChanged(), const FOnBoolChanged &iOnVisibleChanged=FOnBoolChanged(), const FOnColorChanged &iOnColorChanged=FOnColorChanged(), const FOnUserDataAdded &iOnUserDataAdded=FOnUserDataAdded(), const FOnUserDataChanged &iOnUserDataChanged=FOnUserDataChanged(), const FOnUserDataRemoved &iOnUserDataRemoved=FOnUserDataRemoved(), const FOnParentChanged &iOnParentChanged=FOnParentChanged(), const FOnSelfChanged &iOnSelfChanged=FOnSelfChanged())
 
virtual ~ILayer () override=0
 
- Public Member Functions inherited from TNode< ILayer >
 TNode (const tParent *iParent=nullptr, const TOnParentChanged< ILayer > &iParentChangedDelegate=TOnParentChanged< ILayer >(), const TOnSelfChanged< ILayer > &iSelfChangedDelegate=TOnSelfChanged< ILayer >())
 
virtual ~TNode ()
 
ILayerDef (std::function< void(ILayer &) > iFunc)
 
void NotifyChange () const
 
const tParentParent () const
 
ILayerSelf ()
 
const ILayerSelf () const
 
void SetParent (const tParent *iParent)
 
const tParentTopLevelParent () const
 
- Public Member Functions inherited from TCallbackCapable< DelegateType, _ID >
 TCallbackCapable (const DelegateType &iDelegate=DelegateType())
 
 TCallbackCapable (typename DelegateType::tFptr iDelegateFPTR)
 
const DelegateType & GetDelegate () const
 
template<typename ... Args>
void Invoke (Args ... args) const
 
void SetDelegate (const DelegateType &iDelegate)
 
void SetDelegate (const TCallbackCapable< DelegateType, _ID > &iOther)
 
void SetDelegate (typename DelegateType::tFptr iDelegateFPTR)
 
- Public Member Functions inherited from IHasUserData
void AddOrSetUserData (IUserData *iData)
 
template<class TUserData >
const TUserData * GetUserData () const
 
const IUserDataGetUserData (uint32 iTypeID) const
 
const TArray< IUserData * > & GetUserDataArray () const
 
template<class TUserData >
bool HasUserData () const
 
template<class TUserData >
void RemoveUserData ()
 
void RemoveUserData (uint32 iTypeID)
 
void ResetUserData ()
 
bool UserDataExists (uint32 iTypeID) const
 
- Public Member Functions inherited from IHasName
 IHasName (const FString &iValue, const FOnNameChanged &iDelegate=FOnNameChanged())
 
const FStringName () const
 
void SetName (const FString &iValue)
 
- Public Member Functions inherited from IHasLock
bool IsLocked () const
 
void SetLocked (bool i)
 
- Public Member Functions inherited from IHasVisibility
bool IsVisible () const
 
void SetVisible (bool i)
 
- Public Member Functions inherited from IHasPrettyColor
const FColorPrettyColor () const
 
void SetPrettyColor (const FColor &iValue)
 
- Public Member Functions inherited from TDrawable< BlockType >
virtual void InvalidImageCache ()
 
bool IsImageCacheValid () const
 
- Public Member Functions inherited from THasBlock< BlockType, BlockAllocatorType >
BlockType * Block ()
 
const BlockType * Block () const
 
- Public Member Functions inherited from IHasBlendInfo
eAlphaMode AlphaMode () const
 
eBlendMode BlendMode () const
 
ufloat Opacity () const
 
void SetAlphaMode (eAlphaMode iValue)
 
void SetBlendMode (eBlendMode iValue)
 
void SetOpacity (ufloat iValue)
 
- Public Member Functions inherited from IHasText
FFont Font () const
 
int FontSize () const
 
bool IsAntiAliased () const
 
void SetAntiAliased (bool iValue)
 
void SetFont (const FFont &iValue)
 
void SetFontSize (int iValue)
 
void SetText (const FWString &iValue)
 
void SetTextColor (const FColor &iValue)
 
FWString Text () const
 
FColor TextColor () const
 
- Public Member Functions inherited from IHasTransform
void DeltaScale (const FVec2F &iValues)
 
void DeltaScale (float iX, float iY)
 
void DeltaScaleUniform (float iValue)
 
void DeltaScaleX (float iValue)
 
void DeltaScaleY (float iValue)
 
FVec2F Down () const
 
FVec2F ExternalXAxis () const
 
FVec2F ExternalYAxis () const
 
FVec3F FromLocal (const FVec3F &iHPoint) const
 
FMat3F InverseMatrix () const
 
FVec2F LocalXAxis () const
 
FVec2F LocalYAxis () const
 
FMat3F Matrix () const
 
void Move (const FVec2F &iDelta)
 
void Move (float iDeltaRight, float iDeltaDown)
 
void MoveDown (float iDelta)
 
void MovePivot (const FVec2F &iDelta)
 
void MovePivot (float iDeltaX, float iDeltaY)
 
void MovePivotDown (float iDelta)
 
void MovePivotRight (float iDelta)
 
void MovePivotX (float iDelta)
 
void MovePivotY (float iDelta)
 
void MoveRight (float iDelta)
 
const FVec2FPivot () const
 
FMat3F PivotMatrix () const
 
float PivotX () const
 
float PivotY () const
 
FVec2F PointFromLocal (const FVec2F &iPoint) const
 
FVec2F PointToLocal (const FVec2F &iPoint) const
 
void ResetPivot ()
 
void ResetRotation ()
 
void ResetScale ()
 
void ResetTranslation ()
 
FVec2F Right () const
 
void Rotate (float iAngleRad)
 
float Rotation () const
 
FMat3F RotationMatrix () const
 
const FVec2FScale () const
 
FMat3F ScaleMatrix () const
 
float ScaleX () const
 
float ScaleY () const
 
void SetPivot (const FVec2F &iValues)
 
void SetPivot (float iX, float iY)
 
void SetPivotX (float iValue)
 
void SetPivotY (float iValue)
 
void SetRotation (float iAngleRad)
 
void SetScale (const FVec2F &iValues)
 
void SetScale (float iX, float iY)
 
void SetScaleuniform (float iValue)
 
void SetScaleX (float iValue)
 
void SetScaleY (float iValue)
 
void SetTranslation (const FVec2F &iValues)
 
void SetTranslation (float iX, float iY)
 
void SetTranslationX (float iValue)
 
void SetTranslationY (float iValue)
 
void Stretch (const FVec2F &iValues)
 
void Stretch (float iX, float iY)
 
void StretchUniform (float iValue)
 
void StretchX (float iValue)
 
void StretchY (float iValue)
 
void Target (const FVec2F &iTarget)
 
void TargetLocal (const FVec2F &iTarget)
 
FVec3F ToLocal (const FVec3F &iHPoint) const
 
void Translate (const FVec2F &iDelta)
 
void Translate (float iDeltaX, float iDeltaY)
 
void TranslateX (float iDelta)
 
void TranslateY (float iDelta)
 
const FVec2FTranslation () const
 
FMat3F TranslationMatrix () const
 
float TranslationX () const
 
float TranslationY () const
 
FVec2F VecFromLocal (const FVec2F &iVec) const
 
FVec2F VecToLocal (const FVec2F &iVec) const
 

Static Public Member Functions

constexpr static const char * StaticType ()
 
constexpr static const uint32 StaticTypeID ()
 

Additional Inherited Members

- Public Types inherited from TNode< ILayer >
using InnerType = ILayer
 
- Public Types inherited from TCallbackCapable< DelegateType, _ID >
using Delegate = DelegateType
 
- Protected Member Functions inherited from IHasUserData
 IHasUserData (const FOnUserDataAdded &iDelegateAdd=FOnUserDataAdded(), const FOnUserDataChanged &iDelegateChanged=FOnUserDataChanged(), const FOnUserDataRemoved &iDelegateRemoved=FOnUserDataRemoved())
 
 IHasUserData (const IHasUserData &)=delete
 
 ~IHasUserData ()
 
IHasUserDataoperator= (const IHasUserData &)=delete
 
- Protected Member Functions inherited from IHasLock
 IHasLock (bool i=false, const FOn_bool_Changed &d=FOn_bool_Changed())
 
- Protected Member Functions inherited from IHasVisibility
 IHasVisibility (bool i=true, const FOn_bool_Changed &d=FOn_bool_Changed())
 
- Protected Member Functions inherited from IHasPrettyColor
 IHasPrettyColor (const FColor &iColor=FColor::Transparent, const FOnColorChanged &iDelegate=FOnColorChanged())
 
- Protected Member Functions inherited from TDrawable< BlockType >
 TDrawable ()
 
void ValidateImageCache ()
 
- Protected Member Functions inherited from THasBlock< BlockType, BlockAllocatorType >
 THasBlock (BlockType *iBlock, const TOnBlockChanged< BlockType > &iDelegate=TOnBlockChanged< BlockType >())
 
 THasBlock (uint16 iWidth, uint16 iHeight, eFormat iFormat=eFormat::Format_RGBA8, const FColorSpace *iColorSpace=nullptr, const TOnBlockChanged< BlockType > &iDelegate=TOnBlockChanged< BlockType >())
 
 ~THasBlock ()
 
void Realloc (uint16 iWidth, uint16 iHeight, eFormat iFormat=eFormat::Format_RGBA8, const FColorSpace *iColorSpace=nullptr)
 
void Replace (BlockType *iValue)
 
- Protected Member Functions inherited from IHasBlendInfo
 IHasBlendInfo (eBlendMode iBlendMode=Blend_Normal, eAlphaMode iAlphaMode=Alpha_Normal, ufloat iOpacity=1.f, const FOnBlendInfoChanged &iDelegate=FOnBlendInfoChanged())
 
- Protected Member Functions inherited from IHasText
 IHasText (const FWString &iString=L"Lorem ipsum dolor sit amet...", const FFont &iFont=FFont::DefaultFont, int iSize=12, const FColor &iColor=FColor::Black, bool iAntiAliased=true, const FOnTextInfoChanged &iDelegate=FOnTextInfoChanged())
 
- Protected Member Functions inherited from IHasTransform
 IHasTransform (const FVec2F &iPivot=FVec2F(0.f), const FVec2F &iTranslation=FVec2F(0.f), ufloat iRotation=0.f, const FVec2F &iScale=FVec2F(1.f), const FOnTransformInfoChanged &iDelegate=FOnTransformInfoChanged())
 

Constructor & Destructor Documentation

◆ ~TLayerText()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
virtual TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::~TLayerText ( )
overridevirtual

◆ TLayerText() [1/3]

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::TLayerText ( const FString iName = "Untitled Text",
bool  iLocked = false,
bool  iVisible = true,
const FColor iPrettyColor = FColor::Transparent,
uint16  iWidth = 0,
uint16  iHeight = 0,
eFormat  iFormat = Format_RGBA8,
const FColorSpace iColorSpace = nullptr,
eBlendMode  iBlendMode = eBlendMode::Blend_Normal,
eAlphaMode  iAlphaMode = eAlphaMode::Alpha_Normal,
ufloat  iOpacity = 1.f,
const FWString iText = L"Lorem ipsum dolor sit amet...",
const FFont iFont = FFont::DefaultFont,
uint32  iFontSize = 12,
const ISample iTextColor = FColor::Black,
bool  iAntiAliased = true,
const FTransformInfo iTransform = {},
const TRoot< ILayer > *  iParent = nullptr,
const FOnNameChanged iOnNameChanged = FOnNameChanged(),
const FOnBoolChanged iOnLockChanged = FOnBoolChanged(),
const FOnBoolChanged iOnVisibleChanged = FOnBoolChanged(),
const FOnColorChanged iOnColorChanged = FOnColorChanged(),
const FOnUserDataAdded iOnUserDataAdded = FOnUserDataAdded(),
const FOnUserDataChanged iOnUserDataChanged = FOnUserDataChanged(),
const FOnUserDataRemoved iOnUserDataRemoved = FOnUserDataRemoved(),
const FOnParentChanged iOnParentChanged = FOnParentChanged(),
const FOnSelfChanged iOnSelfChanged = FOnSelfChanged(),
const TOnBlockChanged< BlockType > &  iOnBlockChanged = TOnBlockChanged< BlockType >(),
const FOnBlendInfoChanged iOnBlendInfoChanged = FOnBlendInfoChanged(),
const FOnTextInfoChanged iOnTextInfoChanged = FOnTextInfoChanged(),
const FOnTransformInfoChanged iOnTransformInfoChanged = FOnTransformInfoChanged() 
)

◆ TLayerText() [2/3]

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::TLayerText ( BlockType *  iBlock,
const FString iName = "Untitled Text",
bool  iLocked = false,
bool  iVisible = true,
const FColor iPrettyColor = FColor::Transparent,
eBlendMode  iBlendMode = eBlendMode::Blend_Normal,
eAlphaMode  iAlphaMode = eAlphaMode::Alpha_Normal,
ufloat  iOpacity = 1.f,
const FWString iText = L"Lorem ipsum dolor sit amet...",
const FFont iFont = FFont::DefaultFont,
uint32  iFontSize = 12,
const ISample iTextColor = FColor::Black,
bool  iAntiAliased = true,
const FTransformInfo iTransform = {},
const TRoot< ILayer > *  iParent = nullptr,
const FOnNameChanged iOnNameChanged = FOnNameChanged(),
const FOnBoolChanged iOnLockChanged = FOnBoolChanged(),
const FOnBoolChanged iOnVisibleChanged = FOnBoolChanged(),
const FOnColorChanged iOnColorChanged = FOnColorChanged(),
const FOnUserDataAdded iOnUserDataAdded = FOnUserDataAdded(),
const FOnUserDataChanged iOnUserDataChanged = FOnUserDataChanged(),
const FOnUserDataRemoved iOnUserDataRemoved = FOnUserDataRemoved(),
const FOnParentChanged iOnParentChanged = FOnParentChanged(),
const FOnSelfChanged iOnSelfChanged = FOnSelfChanged(),
const TOnBlockChanged< BlockType > &  iOnBlockChanged = TOnBlockChanged< BlockType >(),
const FOnBlendInfoChanged iOnBlendInfoChanged = FOnBlendInfoChanged(),
const FOnTextInfoChanged iOnTextInfoChanged = FOnTextInfoChanged(),
const FOnTransformInfoChanged iOnTransformInfoChanged = FOnTransformInfoChanged() 
)

◆ TLayerText() [3/3]

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::TLayerText ( const TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType > &  )
delete

Member Function Documentation

◆ operator=()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
TLayerText& TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::operator= ( const TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType > &  )
delete

◆ Rasterize()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
tSelf* TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::Rasterize ( FContext iCtx,
FEvent oEvent = nullptr 
)
overridevirtual

◆ RenderImage()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
FEvent TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::RenderImage ( FContext iCtx,
BlockType &  ioBlock,
const FRectI iRect = FRectI::Auto,
const FVec2I iPos = FVec2I(0),
const FSchedulePolicy iPolicy = FSchedulePolicy(),
uint32  iNumWait = 0,
const FEvent iWaitList = nullptr 
)
overridevirtual

◆ RenderImageCache()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
FEvent TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::RenderImageCache ( FContext iCtx)
overridevirtual

Reimplemented from TDrawable< BlockType >.

◆ StaticType()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
constexpr static const char* TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::StaticType ( )
inlinestaticconstexpr

◆ StaticTypeID()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
constexpr static const uint32 TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::StaticTypeID ( )
inlinestaticconstexpr

◆ Type()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
virtual const FString TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::Type ( ) const
inlineoverridevirtual

Implements ITypeIdentifiable.

◆ TypeID()

template<class BlockType , class RasterizerType , class RendererType , class BlockAllocatorType , class LayerStackType >
virtual const uint32 TLayerText< BlockType, RasterizerType, RendererType, BlockAllocatorType, LayerStackType >::TypeID ( ) const
inlineoverridevirtual

Implements ITypeIdentifiable.