Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
CGUIImage Class Reference

#include <GUIImage.h>

Inheritance diagram for CGUIImage:
CGUIControl CGUIBorderedImage KODI::GAME::CGUIFeatureSeparator KODI::GAME::CGUIGameController

Classes

class  CFadingTexture
 

Public Member Functions

 CGUIImage (int parentID, int controlID, float posX, float posY, float width, float height, const CTextureInfo &texture)
 
 CGUIImage (const CGUIImage &left)
 
 ~CGUIImage (void) override
 
CGUIImageClone () const override
 
void Process (unsigned int currentTime, CDirtyRegionList &dirtyregions) override
 
void Render () override
 
void UpdateVisibility (const CGUIListItem *item=NULL) override
 
bool OnAction (const CAction &action) override
 
bool OnMessage (CGUIMessage &message) override
 
void AllocResources () override
 
void FreeResources (bool immediately=false) override
 
void DynamicResourceAlloc (bool bOnOff) override
 
bool IsDynamicallyAllocated () override
 
void SetInvalid () override
 
bool CanFocus () const override
 
void UpdateInfo (const CGUIListItem *item=NULL) override
 
virtual void SetInfo (const KODI::GUILIB::GUIINFO::CGUIInfoLabel &info)
 
virtual void SetFileName (const std::string &strFileName, bool setConstant=false, const bool useCache=true)
 
virtual void SetAspectRatio (const CAspectRatio &aspect)
 
void SetWidth (float width) override
 
void SetHeight (float height) override
 
void SetPosition (float posX, float posY) override
 
std::string GetDescription () const override
 
void SetCrossFade (unsigned int time)
 
const std::string & GetFileName () const
 
float GetTextureWidth () const
 
float GetTextureHeight () const
 
CRect CalcRenderRegion () const override
 calculate the render region in parentcontrol coordinates of this control Called during process to update m_renderRegion
 
- Public Member Functions inherited from CGUIControl
 CGUIControl ()
 
 CGUIControl (int parentID, int controlID, float posX, float posY, float width, float height)
 
 CGUIControl (const CGUIControl &)
 
virtual ~CGUIControl (void)
 
virtual void DoProcess (unsigned int currentTime, CDirtyRegionList &dirtyregions)
 
virtual void DoRender ()
 
virtual void RenderEx ()
 
bool HasProcessed () const
 Returns whether or not we have processed.
 
virtual void OnUp ()
 
virtual void OnDown ()
 
virtual void OnLeft ()
 
virtual void OnRight ()
 
virtual bool OnBack ()
 
virtual bool OnInfo ()
 
virtual void OnNextControl ()
 
virtual void OnPrevControl ()
 
virtual void OnFocus ()
 
virtual void OnUnFocus ()
 
virtual EVENT_RESULT SendMouseEvent (const CPoint &point, const KODI::MOUSE::CMouseEvent &event)
 React to a mouse event.
 
virtual EVENT_RESULT OnMouseEvent (const CPoint &point, const KODI::MOUSE::CMouseEvent &event)
 Perform a mouse action.
 
virtual void UnfocusFromPoint (const CPoint &point)
 Unfocus the control if the given point on screen is not within it's boundary.
 
virtual bool HitTest (const CPoint &point) const
 Used to test whether the point is inside a control.
 
virtual int GetID (void) const
 
virtual void SetID (int id)
 
int GetParentID () const
 
virtual bool HasFocus () const
 
virtual bool IsVisible () const
 
bool IsVisibleFromSkin () const
 
virtual bool IsDisabled () const
 
virtual void SetHitRect (const CRect &rect, const KODI::UTILS::COLOR::Color &color)
 
virtual void SetCamera (const CPoint &camera)
 
virtual void SetStereoFactor (const float &factor)
 
bool SetColorDiffuse (const KODI::GUILIB::GUIINFO::CGUIInfoColor &color)
 
CPoint GetRenderPosition () const
 
virtual float GetXPosition () const
 
virtual float GetYPosition () const
 
virtual float GetWidth () const
 
virtual float GetHeight () const
 
virtual void AssignDepth ()
 
void MarkDirtyRegion (const unsigned int dirtyState=DIRTY_STATE_CONTROL)
 
bool IsControlDirty () const
 
const CRectGetRenderRegion () const
 return the render region in screen coordinates of this control
 
void SetActions (const ActionMap &actions)
 
void SetAction (int actionID, const CGUIAction &action, bool replace=true)
 Set actions to perform on navigation Navigations are set if replace is true or if there is no previously set action.
 
CGUIAction GetAction (int actionID) const
 Get an action the control can be perform.
 
bool Navigate (int direction) const
 Start navigating in given direction.
 
virtual void SetFocus (bool focus)
 
virtual void SetVisible (bool bVisible, bool setVisState=false)
 
void SetVisibleCondition (const std::string &expression, const std::string &allowHiddenFocus="")
 
bool HasVisibleCondition () const
 
void SetEnableCondition (const std::string &expression)
 
virtual void SetInitialVisibility ()
 
virtual void SetEnabled (bool bEnable)
 
virtual void SetPulseOnSelect (bool pulse)
 
virtual std::string GetDescriptionByIndex (int index) const
 
void SetAnimations (const std::vector< CAnimation > &animations)
 
const std::vector< CAnimation > & GetAnimations () const
 
virtual void QueueAnimation (ANIMATION_TYPE anim)
 
virtual bool IsAnimating (ANIMATION_TYPE anim)
 
virtual bool HasAnimation (ANIMATION_TYPE anim)
 
CAnimationGetAnimation (ANIMATION_TYPE type, bool checkConditions=true)
 
virtual void ResetAnimation (ANIMATION_TYPE type)
 
virtual void ResetAnimations ()
 
virtual void SetPushUpdates (bool pushUpdates)
 
virtual bool IsGroup () const
 
virtual bool IsContainer () const
 
virtual bool GetCondition (int condition, int data) const
 
void SetParentControl (CGUIControl *control)
 
CGUIControlGetParentControl (void) const
 
virtual void SaveStates (std::vector< CControlState > &states)
 
virtual CGUIControlGetControl (int id, std::vector< CGUIControl * > *idCollector=nullptr)
 
void SetControlStats (GUICONTROLSTATS *controlStats)
 
virtual void UpdateControlStats ()
 
GUICONTROLTYPES GetControlType () const
 
bool IsControlRenderable ()
 Test whether the control is "drawable" (not a group or similar)
 

Protected Member Functions

virtual void AllocateOnDemand ()
 
virtual void FreeTextures (bool immediately=false)
 
void FreeResourcesButNotAnims ()
 
unsigned char GetFadeLevel (unsigned int time) const
 
std::string GetFallback (const std::string &currentName)
 
void ProcessState ()
 
void ProcessAllocation ()
 
void ProcessNoTransition (unsigned int currentTime)
 
void ProcessInstantTransition (unsigned int currentTime)
 
void ProcessFadingTransition (unsigned int currentTime)
 
void UpdateDiffuseColor (const CGUIListItem *item)
 Update the diffuse color based on the current item infos.
 
- Protected Member Functions inherited from CGUIControl
virtual CPoint GetPosition () const
 Return the coordinates of the top left of the control, in the control's parent coordinates.
 
virtual bool OnMouseOver (const CPoint &point)
 Called when the mouse is over the control. Default implementation selects the control.
 
virtual bool CanFocusFromPoint (const CPoint &point) const
 Test whether we can focus a control from a point on screen.
 
virtual bool UpdateColors (const CGUIListItem *item)
 
virtual bool Animate (unsigned int currentTime)
 
virtual bool CheckAnimation (ANIMATION_TYPE animType)
 
void UpdateStates (ANIMATION_TYPE type, ANIMATION_PROCESS currentProcess, ANIMATION_STATE currentState)
 
bool SendWindowMessage (CGUIMessage &message) const
 

Protected Attributes

bool m_bDynamicResourceAlloc
 
CTextureInfo m_image
 
KODI::GUILIB::GUIINFO::CGUIInfoLabel m_info
 
bool m_isTransitioning {false}
 
bool m_hasNewStagingTexture {false}
 
std::unique_ptr< CGUITexturem_textureCurrent
 
std::unique_ptr< CGUITexturem_textureNext
 
std::string m_nameCurrent {}
 
std::string m_nameNext {}
 
std::string m_nameStaging {}
 
std::string m_currentFallback
 
unsigned int m_crossFadeTime
 
unsigned int m_currentFadeTime
 
unsigned int m_lastRenderTime
 
- Protected Attributes inherited from CGUIControl
ActionMap m_actions
 
float m_posX
 
float m_posY
 
float m_height
 
float m_width
 
CRect m_hitRect
 
KODI::UTILS::COLOR::Color m_hitColor = 0xffffffff
 
KODI::GUILIB::GUIINFO::CGUIInfoColor m_diffuseColor
 
int m_controlID
 
int m_parentID
 
bool m_bHasFocus
 
bool m_bInvalidated
 
bool m_bAllocated
 
bool m_pulseOnSelect
 
GUICONTROLTYPES ControlType
 
GUICONTROLSTATSm_controlStats
 
CGUIControlm_parentControl
 
INFO::InfoPtr m_visibleCondition
 
GUIVISIBLE m_visible
 
bool m_visibleFromSkinCondition
 
bool m_forceHidden
 
KODI::GUILIB::GUIINFO::CGUIInfoBool m_allowHiddenFocus
 
bool m_hasProcessed
 
INFO::InfoPtr m_enableCondition
 
bool m_enabled
 
bool m_pushedUpdates
 
std::vector< CAnimationm_animations
 
CPoint m_camera
 
bool m_hasCamera
 
float m_stereo
 
TransformMatrix m_transform
 
TransformMatrix m_cachedTransform
 
bool m_isCulled {true}
 
unsigned int m_controlDirtyState
 
CRect m_renderRegion
 

Additional Inherited Members

- Public Types inherited from CGUIControl
enum  GUICONTROLTYPES {
  GUICONTROL_UNKNOWN , GUICONTAINER_EPGGRID , GUICONTAINER_FIXEDLIST , GUICONTAINER_LIST ,
  GUICONTAINER_PANEL , GUICONTAINER_WRAPLIST , GUICONTROL_BORDEREDIMAGE , GUICONTROL_BUTTON ,
  GUICONTROL_COLORBUTTON , GUICONTROL_EDIT , GUICONTROL_FADELABEL , GUICONTROL_GAME ,
  GUICONTROL_GAMECONTROLLER , GUICONTROL_GAMECONTROLLERLIST , GUICONTROL_GROUP , GUICONTROL_GROUPLIST ,
  GUICONTROL_IMAGE , GUICONTROL_LABEL , GUICONTROL_LISTGROUP , GUICONTROL_LISTLABEL ,
  GUICONTROL_MOVER , GUICONTROL_MULTI_IMAGE , GUICONTROL_PROGRESS , GUICONTROL_RADIO ,
  GUICONTROL_RANGES , GUICONTROL_RENDERADDON , GUICONTROL_RESIZE , GUICONTROL_RSS ,
  GUICONTROL_SCROLLBAR , GUICONTROL_SETTINGS_SLIDER , GUICONTROL_SLIDER , GUICONTROL_SPIN ,
  GUICONTROL_SPINEX , GUICONTROL_TEXTBOX , GUICONTROL_TOGGLEBUTTON , GUICONTROL_VIDEO ,
  GUICONTROL_VISUALISATION
}
 
enum  GUIVISIBLE { HIDDEN = 0 , DELAYED , VISIBLE }
 
enum  GUISCROLLVALUE { FOCUS = 0 , NEVER , ALWAYS }
 
typedef std::map< int, CGUIActionActionMap
 Set actions to perform on navigation.
 
- Static Protected Attributes inherited from CGUIControl
static const unsigned int DIRTY_STATE_CONTROL = 1
 
static const unsigned int DIRTY_STATE_CHILD = 2
 

Constructor & Destructor Documentation

◆ CGUIImage() [1/2]

CGUIImage::CGUIImage ( int parentID,
int controlID,
float posX,
float posY,
float width,
float height,
const CTextureInfo & texture )

◆ CGUIImage() [2/2]

CGUIImage::CGUIImage ( const CGUIImage & left)

◆ ~CGUIImage()

CGUIImage::~CGUIImage ( void )
overridedefault

Member Function Documentation

◆ AllocateOnDemand()

void CGUIImage::AllocateOnDemand ( )
protectedvirtual

◆ AllocResources()

void CGUIImage::AllocResources ( )
overridevirtual

Reimplemented from CGUIControl.

◆ CalcRenderRegion()

CRect CGUIImage::CalcRenderRegion ( ) const
overridevirtual

calculate the render region in parentcontrol coordinates of this control Called during process to update m_renderRegion

Reimplemented from CGUIControl.

◆ CanFocus()

bool CGUIImage::CanFocus ( ) const
overridevirtual

Reimplemented from CGUIControl.

◆ Clone()

CGUIImage * CGUIImage::Clone ( void ) const
inlineoverridevirtual

Implements CGUIControl.

◆ DynamicResourceAlloc()

void CGUIImage::DynamicResourceAlloc ( bool bOnOff)
overridevirtual

Reimplemented from CGUIControl.

◆ FreeResources()

void CGUIImage::FreeResources ( bool immediately = false)
overridevirtual

Reimplemented from CGUIControl.

◆ FreeResourcesButNotAnims()

void CGUIImage::FreeResourcesButNotAnims ( )
protected

◆ FreeTextures()

void CGUIImage::FreeTextures ( bool immediately = false)
protectedvirtual

◆ GetDescription()

std::string CGUIImage::GetDescription ( void ) const
overridevirtual

Reimplemented from CGUIControl.

◆ GetFadeLevel()

unsigned char CGUIImage::GetFadeLevel ( unsigned int time) const
protected

◆ GetFallback()

std::string CGUIImage::GetFallback ( const std::string & currentName)
protected

◆ GetFileName()

const std::string & CGUIImage::GetFileName ( ) const

◆ GetTextureHeight()

float CGUIImage::GetTextureHeight ( ) const

◆ GetTextureWidth()

float CGUIImage::GetTextureWidth ( ) const

◆ IsDynamicallyAllocated()

bool CGUIImage::IsDynamicallyAllocated ( )
inlineoverridevirtual

Reimplemented from CGUIControl.

◆ OnAction()

bool CGUIImage::OnAction ( const CAction & action)
overridevirtual

Reimplemented from CGUIControl.

◆ OnMessage()

bool CGUIImage::OnMessage ( CGUIMessage & message)
overridevirtual

Reimplemented from CGUIControl.

◆ Process()

void CGUIImage::Process ( unsigned int currentTime,
CDirtyRegionList & dirtyregions )
overridevirtual

Reimplemented from CGUIControl.

◆ ProcessAllocation()

void CGUIImage::ProcessAllocation ( )
protected

◆ ProcessFadingTransition()

void CGUIImage::ProcessFadingTransition ( unsigned int currentTime)
protected

◆ ProcessInstantTransition()

void CGUIImage::ProcessInstantTransition ( unsigned int currentTime)
protected

◆ ProcessNoTransition()

void CGUIImage::ProcessNoTransition ( unsigned int currentTime)
protected

◆ ProcessState()

void CGUIImage::ProcessState ( )
protected

◆ Render()

void CGUIImage::Render ( )
overridevirtual

Reimplemented from CGUIControl.

◆ SetAspectRatio()

void CGUIImage::SetAspectRatio ( const CAspectRatio & aspect)
virtual

◆ SetCrossFade()

void CGUIImage::SetCrossFade ( unsigned int time)

◆ SetFileName()

void CGUIImage::SetFileName ( const std::string & strFileName,
bool setConstant = false,
const bool useCache = true )
virtual

◆ SetHeight()

void CGUIImage::SetHeight ( float height)
overridevirtual

Reimplemented from CGUIControl.

◆ SetInfo()

void CGUIImage::SetInfo ( const KODI::GUILIB::GUIINFO::CGUIInfoLabel & info)
virtual

◆ SetInvalid()

void CGUIImage::SetInvalid ( )
overridevirtual

Reimplemented from CGUIControl.

◆ SetPosition()

void CGUIImage::SetPosition ( float posX,
float posY )
overridevirtual

Reimplemented from CGUIControl.

◆ SetWidth()

void CGUIImage::SetWidth ( float width)
overridevirtual

Reimplemented from CGUIControl.

◆ UpdateDiffuseColor()

void CGUIImage::UpdateDiffuseColor ( const CGUIListItem * item)
protected

Update the diffuse color based on the current item infos.

Parameters
itemthe item to for info resolution

◆ UpdateInfo()

void CGUIImage::UpdateInfo ( const CGUIListItem * item = NULL)
overridevirtual

Reimplemented from CGUIControl.

◆ UpdateVisibility()

void CGUIImage::UpdateVisibility ( const CGUIListItem * item = NULL)
overridevirtual

Reimplemented from CGUIControl.

Member Data Documentation

◆ m_bDynamicResourceAlloc

bool CGUIImage::m_bDynamicResourceAlloc
protected

◆ m_crossFadeTime

unsigned int CGUIImage::m_crossFadeTime
protected

◆ m_currentFadeTime

unsigned int CGUIImage::m_currentFadeTime
protected

◆ m_currentFallback

std::string CGUIImage::m_currentFallback
protected

◆ m_hasNewStagingTexture

bool CGUIImage::m_hasNewStagingTexture {false}
protected

◆ m_image

CTextureInfo CGUIImage::m_image
protected

◆ m_info

KODI::GUILIB::GUIINFO::CGUIInfoLabel CGUIImage::m_info
protected

◆ m_isTransitioning

bool CGUIImage::m_isTransitioning {false}
protected

◆ m_lastRenderTime

unsigned int CGUIImage::m_lastRenderTime
protected

◆ m_nameCurrent

std::string CGUIImage::m_nameCurrent {}
protected

◆ m_nameNext

std::string CGUIImage::m_nameNext {}
protected

◆ m_nameStaging

std::string CGUIImage::m_nameStaging {}
protected

◆ m_textureCurrent

std::unique_ptr<CGUITexture> CGUIImage::m_textureCurrent
protected

◆ m_textureNext

std::unique_ptr<CGUITexture> CGUIImage::m_textureNext
protected

The documentation for this class was generated from the following files: