aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guilib/GUIBorderedImage.cpp16
-rw-r--r--guilib/GUIBorderedImage.h4
-rw-r--r--guilib/GUIControlFactory.cpp37
-rw-r--r--guilib/GUIControlFactory.h6
-rw-r--r--guilib/GUIListItemLayout.cpp2
-rw-r--r--guilib/GUITexture.cpp84
-rw-r--r--guilib/GUITexture.h10
-rw-r--r--guilib/GUIWindow.cpp20
-rw-r--r--guilib/GUIWindow.h2
-rw-r--r--guilib/VisibleEffect.cpp19
-rw-r--r--guilib/VisibleEffect.h9
-rw-r--r--xbmc/ApplicationRenderer.cpp11
12 files changed, 103 insertions, 117 deletions
diff --git a/guilib/GUIBorderedImage.cpp b/guilib/GUIBorderedImage.cpp
index 6ba1c3d931..206fdf2287 100644
--- a/guilib/GUIBorderedImage.cpp
+++ b/guilib/GUIBorderedImage.cpp
@@ -21,18 +21,18 @@
#include "GUIBorderedImage.h"
-CGUIBorderedImage::CGUIBorderedImage(int parentID, int controlID, float posX, float posY, float width, float height, const CTextureInfo& texture, const CTextureInfo& borderTexture, const FRECT &borderSize)
- : CGUIImage(parentID, controlID, posX + borderSize.left, posY + borderSize.top, width - borderSize.left - borderSize.right, height - borderSize.top - borderSize.bottom, texture),
- m_borderImage(posX, posY, width, height, borderTexture)
+CGUIBorderedImage::CGUIBorderedImage(int parentID, int controlID, float posX, float posY, float width, float height, const CTextureInfo& texture, const CTextureInfo& borderTexture, const CRect &borderSize)
+ : CGUIImage(parentID, controlID, posX + borderSize.x1, posY + borderSize.y1, width - borderSize.x1 - borderSize.x2, height - borderSize.y1 - borderSize.y2, texture),
+ m_borderImage(posX, posY, width, height, borderTexture),
+ m_borderSize(borderSize)
{
- memcpy(&m_borderSize, &borderSize, sizeof(FRECT));
ControlType = GUICONTROL_BORDEREDIMAGE;
}
CGUIBorderedImage::CGUIBorderedImage(const CGUIBorderedImage &right)
: CGUIImage(right), m_borderImage(right.m_borderImage)
{
- memcpy(&m_borderSize, &right.m_borderSize, sizeof(FRECT));
+ m_borderSize = right.m_borderSize;
ControlType = GUICONTROL_BORDEREDIMAGE;
}
@@ -46,9 +46,9 @@ void CGUIBorderedImage::Render()
{
CRect rect = CRect(m_texture.GetXPosition(), m_texture.GetYPosition(), m_texture.GetXPosition() + m_texture.GetWidth(), m_texture.GetYPosition() + m_texture.GetHeight());
rect.Intersect(m_texture.GetRenderRect());
- m_borderImage.SetPosition(rect.x1 - m_borderSize.left, rect.y1 - m_borderSize.top);
- m_borderImage.SetWidth(rect.Width() + m_borderSize.left + m_borderSize.right);
- m_borderImage.SetHeight(rect.Height() + m_borderSize.top + m_borderSize.bottom);
+ m_borderImage.SetPosition(rect.x1 - m_borderSize.x1, rect.y1 - m_borderSize.y1);
+ m_borderImage.SetWidth(rect.Width() + m_borderSize.x1 + m_borderSize.x2);
+ m_borderImage.SetHeight(rect.Height() + m_borderSize.y1 + m_borderSize.y2);
m_borderImage.Render();
}
CGUIImage::Render();
diff --git a/guilib/GUIBorderedImage.h b/guilib/GUIBorderedImage.h
index 535b1a00d6..e264b53cd0 100644
--- a/guilib/GUIBorderedImage.h
+++ b/guilib/GUIBorderedImage.h
@@ -29,7 +29,7 @@
class CGUIBorderedImage : public CGUIImage
{
public:
- CGUIBorderedImage(int parentID, int controlID, float posX, float posY, float width, float height, const CTextureInfo& texture, const CTextureInfo& borderTexture, const FRECT &borderSize);
+ CGUIBorderedImage(int parentID, int controlID, float posX, float posY, float width, float height, const CTextureInfo& texture, const CTextureInfo& borderTexture, const CRect &borderSize);
CGUIBorderedImage(const CGUIBorderedImage &right);
virtual ~CGUIBorderedImage(void);
virtual CGUIBorderedImage *Clone() const { return new CGUIBorderedImage(*this); };
@@ -41,7 +41,7 @@ public:
protected:
CGUITexture m_borderImage;
- FRECT m_borderSize;
+ CRect m_borderSize;
};
#endif
diff --git a/guilib/GUIControlFactory.cpp b/guilib/GUIControlFactory.cpp
index 0960ab7b55..adeb9c2efa 100644
--- a/guilib/GUIControlFactory.cpp
+++ b/guilib/GUIControlFactory.cpp
@@ -239,24 +239,24 @@ bool CGUIControlFactory::GetTexture(const TiXmlNode* pRootNode, const char* strT
return true;
}
-void CGUIControlFactory::GetRectFromString(const CStdString &string, FRECT &rect)
+void CGUIControlFactory::GetRectFromString(const CStdString &string, CRect &rect)
{
- // format is rect="left,right,top,bottom"
+ // format is rect="left[,top,right,bottom]"
CStdStringArray strRect;
StringUtils::SplitString(string, ",", strRect);
if (strRect.size() == 1)
{
- g_SkinInfo.ResolveConstant(strRect[0], rect.left);
- rect.top = rect.left;
- rect.right = rect.left;
- rect.bottom = rect.left;
+ g_SkinInfo.ResolveConstant(strRect[0], rect.x1);
+ rect.y1 = rect.x1;
+ rect.x2 = rect.x1;
+ rect.y2 = rect.x1;
}
else if (strRect.size() == 4)
{
- g_SkinInfo.ResolveConstant(strRect[0], rect.left);
- g_SkinInfo.ResolveConstant(strRect[1], rect.top);
- g_SkinInfo.ResolveConstant(strRect[2], rect.right);
- g_SkinInfo.ResolveConstant(strRect[3], rect.bottom);
+ g_SkinInfo.ResolveConstant(strRect[0], rect.x1);
+ g_SkinInfo.ResolveConstant(strRect[1], rect.y1);
+ g_SkinInfo.ResolveConstant(strRect[2], rect.x2);
+ g_SkinInfo.ResolveConstant(strRect[3], rect.y2);
}
}
@@ -339,7 +339,7 @@ bool CGUIControlFactory::GetConditionalVisibility(const TiXmlNode *control, int
return GetConditionalVisibility(control, condition, allowHiddenFocus);
}
-bool CGUIControlFactory::GetAnimations(const TiXmlNode *control, const FRECT &rect, vector<CAnimation> &animations)
+bool CGUIControlFactory::GetAnimations(const TiXmlNode *control, const CRect &rect, vector<CAnimation> &animations)
{
const TiXmlElement* node = control->FirstChildElement("animation");
bool ret = false;
@@ -537,7 +537,7 @@ CStdString CGUIControlFactory::GetType(const TiXmlElement *pControlNode)
return type;
}
-CGUIControl* CGUIControlFactory::Create(int parentID, const FRECT &rect, TiXmlElement* pControlNode, bool insideContainer)
+CGUIControl* CGUIControlFactory::Create(int parentID, const CRect &rect, TiXmlElement* pControlNode, bool insideContainer)
{
// resolve any <include> tag's in this control
g_SkinInfo.ResolveIncludes(pControlNode);
@@ -594,7 +594,7 @@ CGUIControl* CGUIControlFactory::Create(int parentID, const FRECT &rect, TiXmlEl
CTextureInfo textureRadioOn, textureRadioOff;
CTextureInfo imageNoFocus, imageFocus;
CGUIInfoLabel texturePath;
- FRECT borderSize = { 0, 0, 0, 0};
+ CRect borderSize;
float itemWidth = 16, itemHeight = 16;
float sliderWidth = 150, sliderHeight = 16;
@@ -698,10 +698,10 @@ CGUIControl* CGUIControlFactory::Create(int parentID, const FRECT &rect, TiXmlEl
CStdString pos;
XMLUtils::GetString(pControlNode, "posx", pos);
if (pos.Right(1) == "r")
- posX = (rect.right - rect.left) - posX;
+ posX = rect.Width() - posX;
XMLUtils::GetString(pControlNode, "posy", pos);
if (pos.Right(1) == "r")
- posY = (rect.bottom - rect.top) - posY;
+ posY = rect.Height() - posY;
GetFloat(pControlNode, "width", width);
GetFloat(pControlNode, "height", height);
@@ -712,9 +712,9 @@ CGUIControl* CGUIControlFactory::Create(int parentID, const FRECT &rect, TiXmlEl
if (strType == "group" || strType == "grouplist")
{
if (!width)
- width = max(rect.right - posX, 0.0f);
+ width = max(rect.x2 - posX, 0.0f);
if (!height)
- height = max(rect.bottom - posY, 0.0f);
+ height = max(rect.y2 - posY, 0.0f);
}
hitRect.SetRect(posX, posY, posX + width, posY + height);
@@ -740,8 +740,7 @@ CGUIControl* CGUIControlFactory::Create(int parentID, const FRECT &rect, TiXmlEl
GetConditionalVisibility(pControlNode, iVisibleCondition, allowHiddenFocus);
GetCondition(pControlNode, "enable", enableCondition);
- // note: animrect here uses .right and .bottom as width and height respectively (nonstandard)
- FRECT animRect = { posX, posY, width, height };
+ CRect animRect(posX, posY, posX + width, posY + height);
GetAnimations(pControlNode, animRect, animations);
GetInfoColor(pControlNode, "textcolor", labelInfo.textColor);
diff --git a/guilib/GUIControlFactory.h b/guilib/GUIControlFactory.h
index d41d5c17da..018b945eb7 100644
--- a/guilib/GUIControlFactory.h
+++ b/guilib/GUIControlFactory.h
@@ -46,7 +46,7 @@ public:
CGUIControlFactory(void);
virtual ~CGUIControlFactory(void);
static CStdString GetType(const TiXmlElement *pControlNode);
- CGUIControl* Create(int parentID, const FRECT &rect, TiXmlElement* pControlNode, bool insideContainer = false);
+ CGUIControl* Create(int parentID, const CRect &rect, TiXmlElement* pControlNode, bool insideContainer = false);
void ScaleElement(TiXmlElement *element, RESOLUTION fileRes, RESOLUTION destRes);
static bool GetFloat(const TiXmlNode* pRootNode, const char* strTag, float& value);
static bool GetUnsigned(const TiXmlNode* pRootNode, const char* strTag, unsigned int& value);
@@ -55,7 +55,7 @@ public:
static bool GetTexture(const TiXmlNode* pRootNode, const char* strTag, CTextureInfo &image);
static bool GetAlignment(const TiXmlNode* pRootNode, const char* strTag, uint32_t& dwAlignment);
static bool GetAlignmentY(const TiXmlNode* pRootNode, const char* strTag, uint32_t& dwAlignment);
- static bool GetAnimations(const TiXmlNode *control, const FRECT &rect, std::vector<CAnimation> &animation);
+ static bool GetAnimations(const TiXmlNode *control, const CRect &rect, std::vector<CAnimation> &animation);
static void GetInfoLabel(const TiXmlNode *pControlNode, const CStdString &labelTag, CGUIInfoLabel &infoLabel);
static void GetInfoLabels(const TiXmlNode *pControlNode, const CStdString &labelTag, std::vector<CGUIInfoLabel> &infoLabels);
static bool GetColor(const TiXmlNode* pRootNode, const char* strTag, color_t &value);
@@ -63,7 +63,7 @@ public:
static CStdString FilterLabel(const CStdString &label);
static bool GetConditionalVisibility(const TiXmlNode* control, int &condition);
static bool GetMultipleString(const TiXmlNode* pRootNode, const char* strTag, std::vector<CGUIActionDescriptor>& vecStringValue);
- static void GetRectFromString(const CStdString &string, FRECT &rect);
+ static void GetRectFromString(const CStdString &string, CRect &rect);
static bool GetAction(const TiXmlElement* pElement, CGUIActionDescriptor &action);
private:
bool GetNavigation(const TiXmlElement *node, const char *tag, int &direction, std::vector<CGUIActionDescriptor> &actions);
diff --git a/guilib/GUIListItemLayout.cpp b/guilib/GUIListItemLayout.cpp
index 0c41e26dd9..50dab42d85 100644
--- a/guilib/GUIListItemLayout.cpp
+++ b/guilib/GUIListItemLayout.cpp
@@ -122,7 +122,7 @@ void CGUIListItemLayout::LoadControl(TiXmlElement *child, CGUIControlGroup *grou
{
if (!group) return;
- FRECT rect = { group->GetXPosition(), group->GetYPosition(), group->GetXPosition() + group->GetWidth(), group->GetYPosition() + group->GetHeight() };
+ CRect rect(group->GetXPosition(), group->GetYPosition(), group->GetXPosition() + group->GetWidth(), group->GetYPosition() + group->GetHeight());
CGUIControlFactory factory;
CGUIControl *control = factory.Create(0, rect, child, true); // true indicating we're inside a list for the
diff --git a/guilib/GUITexture.cpp b/guilib/GUITexture.cpp
index 7b7f079360..dca00c416d 100644
--- a/guilib/GUITexture.cpp
+++ b/guilib/GUITexture.cpp
@@ -28,28 +28,26 @@
using namespace std;
CTextureInfo::CTextureInfo()
- {
- memset(&border, 0, sizeof(FRECT));
- orientation = 0;
- useLarge = false;
- };
+{
+ orientation = 0;
+ useLarge = false;
+}
CTextureInfo::CTextureInfo(const CStdString &file)
- {
- memset(&border, 0, sizeof(FRECT));
- orientation = 0;
- useLarge = false;
- filename = file;
- }
+{
+ orientation = 0;
+ useLarge = false;
+ filename = file;
+}
void CTextureInfo::operator=(const CTextureInfo &right)
- {
- memcpy(&border, &right.border, sizeof(FRECT));
- orientation = right.orientation;
- diffuse = right.diffuse;
- filename = right.filename;
- useLarge = right.useLarge;
- };
+{
+ border = right.border;
+ orientation = right.orientation;
+ diffuse = right.diffuse;
+ filename = right.filename;
+ useLarge = right.useLarge;
+}
CGUITextureBase::CGUITextureBase(float posX, float posY, float width, float height, const CTextureInfo& texture)
{
@@ -173,11 +171,11 @@ void CGUITextureBase::Render()
// compute the texture coordinates
float u1, u2, u3, v1, v2, v3;
- u1 = m_info.border.left;
- u2 = m_frameWidth - m_info.border.right;
+ u1 = m_info.border.x1;
+ u2 = m_frameWidth - m_info.border.x2;
u3 = m_frameWidth;
- v1 = m_info.border.top;
- v2 = m_frameHeight - m_info.border.bottom;
+ v1 = m_info.border.y1;
+ v2 = m_frameHeight - m_info.border.y2;
v3 = m_frameHeight;
if (!m_texture.m_texCoordsArePixels)
@@ -195,28 +193,28 @@ void CGUITextureBase::Render()
// for flipping
// left segment (0,0,u1,v3)
- if (m_info.border.left)
+ if (m_info.border.x1)
{
- if (m_info.border.top)
- Render(m_vertex.x1, m_vertex.y1, m_vertex.x1 + m_info.border.left, m_vertex.y1 + m_info.border.top, 0, 0, u1, v1, u3, v3);
- Render(m_vertex.x1, m_vertex.y1 + m_info.border.top, m_vertex.x1 + m_info.border.left, m_vertex.y2 - m_info.border.bottom, 0, v1, u1, v2, u3, v3);
- if (m_info.border.bottom)
- Render(m_vertex.x1, m_vertex.y2 - m_info.border.bottom, m_vertex.x1 + m_info.border.left, m_vertex.y2, 0, v2, u1, v3, u3, v3);
+ if (m_info.border.y1)
+ Render(m_vertex.x1, m_vertex.y1, m_vertex.x1 + m_info.border.x1, m_vertex.y1 + m_info.border.y1, 0, 0, u1, v1, u3, v3);
+ Render(m_vertex.x1, m_vertex.y1 + m_info.border.y1, m_vertex.x1 + m_info.border.x1, m_vertex.y2 - m_info.border.y2, 0, v1, u1, v2, u3, v3);
+ if (m_info.border.y2)
+ Render(m_vertex.x1, m_vertex.y2 - m_info.border.y2, m_vertex.x1 + m_info.border.x1, m_vertex.y2, 0, v2, u1, v3, u3, v3);
}
// middle segment (u1,0,u2,v3)
- if (m_info.border.top)
- Render(m_vertex.x1 + m_info.border.left, m_vertex.y1, m_vertex.x2 - m_info.border.right, m_vertex.y1 + m_info.border.top, u1, 0, u2, v1, u3, v3);
- Render(m_vertex.x1 + m_info.border.left, m_vertex.y1 + m_info.border.top, m_vertex.x2 - m_info.border.right, m_vertex.y2 - m_info.border.bottom, u1, v1, u2, v2, u3, v3);
- if (m_info.border.bottom)
- Render(m_vertex.x1 + m_info.border.left, m_vertex.y2 - m_info.border.bottom, m_vertex.x2 - m_info.border.right, m_vertex.y2, u1, v2, u2, v3, u3, v3);
+ if (m_info.border.y1)
+ Render(m_vertex.x1 + m_info.border.x1, m_vertex.y1, m_vertex.x2 - m_info.border.x2, m_vertex.y1 + m_info.border.y1, u1, 0, u2, v1, u3, v3);
+ Render(m_vertex.x1 + m_info.border.x1, m_vertex.y1 + m_info.border.y1, m_vertex.x2 - m_info.border.x2, m_vertex.y2 - m_info.border.y2, u1, v1, u2, v2, u3, v3);
+ if (m_info.border.y2)
+ Render(m_vertex.x1 + m_info.border.x1, m_vertex.y2 - m_info.border.y2, m_vertex.x2 - m_info.border.x2, m_vertex.y2, u1, v2, u2, v3, u3, v3);
// right segment
- if (m_info.border.right)
+ if (m_info.border.x2)
{ // have a left border
- if (m_info.border.top)
- Render(m_vertex.x2 - m_info.border.right, m_vertex.y1, m_vertex.x2, m_vertex.y1 + m_info.border.top, u2, 0, u3, v1, u3, v3);
- Render(m_vertex.x2 - m_info.border.right, m_vertex.y1 + m_info.border.top, m_vertex.x2, m_vertex.y2 - m_info.border.bottom, u2, v1, u3, v2, u3, v3);
- if (m_info.border.bottom)
- Render(m_vertex.x2 - m_info.border.right, m_vertex.y2 - m_info.border.bottom, m_vertex.x2, m_vertex.y2, u2, v2, u3, v3, u3, v3);
+ if (m_info.border.y1)
+ Render(m_vertex.x2 - m_info.border.x2, m_vertex.y1, m_vertex.x2, m_vertex.y1 + m_info.border.y1, u2, 0, u3, v1, u3, v3);
+ Render(m_vertex.x2 - m_info.border.x2, m_vertex.y1 + m_info.border.y1, m_vertex.x2, m_vertex.y2 - m_info.border.y2, u2, v1, u3, v2, u3, v3);
+ if (m_info.border.y2)
+ Render(m_vertex.x2 - m_info.border.x2, m_vertex.y2 - m_info.border.y2, m_vertex.x2, m_vertex.y2, u2, v2, u3, v3, u3, v3);
}
// close off our renderer
@@ -558,8 +556,8 @@ void CGUITextureBase::OrientateTexture(CRect &rect, float width, float height, i
void CGUITextureBase::SetWidth(float width)
{
- if (width < m_info.border.left + m_info.border.right)
- width = m_info.border.left + m_info.border.right;
+ if (width < m_info.border.x1 + m_info.border.x2)
+ width = m_info.border.x1 + m_info.border.x2;
if (m_width != width)
{
m_width = width;
@@ -569,8 +567,8 @@ void CGUITextureBase::SetWidth(float width)
void CGUITextureBase::SetHeight(float height)
{
- if (height < m_info.border.top + m_info.border.bottom)
- height = m_info.border.top + m_info.border.bottom;
+ if (height < m_info.border.y1 + m_info.border.y2)
+ height = m_info.border.y1 + m_info.border.y2;
if (m_height != height)
{
m_height = height;
diff --git a/guilib/GUITexture.h b/guilib/GUITexture.h
index 33fe251879..aa60f5a630 100644
--- a/guilib/GUITexture.h
+++ b/guilib/GUITexture.h
@@ -35,14 +35,6 @@
typedef uint32_t color_t;
-struct FRECT
-{
- float left;
- float top;
- float right;
- float bottom;
-};
-
// image alignment for <aspect>keep</aspect>, <aspect>scale</aspect> or <aspect>center</aspect>
#define ASPECT_ALIGN_CENTER 0
#define ASPECT_ALIGN_LEFT 1
@@ -83,7 +75,7 @@ public:
CTextureInfo(const CStdString &file);
void operator=(const CTextureInfo &right);
bool useLarge;
- FRECT border; // scaled - unneeded if we get rid of scale on load
+ CRect border; // scaled - unneeded if we get rid of scale on load
int orientation; // orientation of the texture (0 - 7 == EXIForientation - 1)
CStdString diffuse; // diffuse overlay texture
CStdString filename; // main texture file
diff --git a/guilib/GUIWindow.cpp b/guilib/GUIWindow.cpp
index f68d72a034..af99dfd336 100644
--- a/guilib/GUIWindow.cpp
+++ b/guilib/GUIWindow.cpp
@@ -173,7 +173,7 @@ bool CGUIWindow::Load(TiXmlDocument &xmlDoc)
}
else if (strValue == "animation" && pChild->FirstChild())
{
- FRECT rect = { 0, 0, (float)g_settings.m_ResInfo[m_coordsRes].iWidth, (float)g_settings.m_ResInfo[m_coordsRes].iHeight };
+ CRect rect(0, 0, (float)g_settings.m_ResInfo[m_coordsRes].iWidth, (float)g_settings.m_ResInfo[m_coordsRes].iHeight);
CAnimation anim;
anim.Create(pChild, rect);
m_animations.push_back(anim);
@@ -250,13 +250,13 @@ void CGUIWindow::LoadControl(TiXmlElement* pControl, CGUIControlGroup *pGroup)
// get control type
CGUIControlFactory factory;
- FRECT rect = { 0, 0, (float)g_settings.m_ResInfo[m_coordsRes].iWidth, (float)g_settings.m_ResInfo[m_coordsRes].iHeight };
+ CRect rect(0, 0, (float)g_settings.m_ResInfo[m_coordsRes].iWidth, (float)g_settings.m_ResInfo[m_coordsRes].iHeight);
if (pGroup)
{
- rect.left = pGroup->GetXPosition();
- rect.top = pGroup->GetYPosition();
- rect.right = rect.left + pGroup->GetWidth();
- rect.bottom = rect.top + pGroup->GetHeight();
+ rect.x1 = pGroup->GetXPosition();
+ rect.y1 = pGroup->GetYPosition();
+ rect.x2 = rect.x1 + pGroup->GetWidth();
+ rect.y2 = rect.y2 + pGroup->GetHeight();
}
CGUIControl* pGUIControl = factory.Create(GetID(), rect, pControl);
if (pGUIControl)
@@ -868,14 +868,14 @@ void CGUIWindow::SetDefaults()
m_animationsEnabled = true;
}
-FRECT CGUIWindow::GetScaledBounds() const
+CRect CGUIWindow::GetScaledBounds() const
{
CSingleLock lock(g_graphicsContext);
g_graphicsContext.SetScalingResolution(m_coordsRes, m_posX, m_posY, m_needsScaling);
- FRECT rect = {0, 0, m_width, m_height};
+ CRect rect(0, 0, m_width, m_height);
float z = 0;
- g_graphicsContext.ScaleFinalCoords(rect.left, rect.top, z);
- g_graphicsContext.ScaleFinalCoords(rect.right, rect.bottom, z);
+ g_graphicsContext.ScaleFinalCoords(rect.x1, rect.y1, z);
+ g_graphicsContext.ScaleFinalCoords(rect.x2, rect.y2, z);
return rect;
}
diff --git a/guilib/GUIWindow.h b/guilib/GUIWindow.h
index aba217fbc6..ee2b5e9d62 100644
--- a/guilib/GUIWindow.h
+++ b/guilib/GUIWindow.h
@@ -107,7 +107,7 @@ public:
void SetIDRange(int range) { m_idRange = range; };
int GetIDRange() const { return m_idRange; };
int GetPreviousWindow() { return m_previousWindow; };
- FRECT GetScaledBounds() const;
+ CRect GetScaledBounds() const;
virtual void ClearAll();
virtual void AllocResources(bool forceLoad = false);
virtual void FreeResources(bool forceUnLoad = false);
diff --git a/guilib/VisibleEffect.cpp b/guilib/VisibleEffect.cpp
index df48066142..1f05fb9340 100644
--- a/guilib/VisibleEffect.cpp
+++ b/guilib/VisibleEffect.cpp
@@ -24,7 +24,6 @@
#include "utils/log.h"
#include "SkinInfo.h" // for the effect time adjustments
#include "StringUtils.h"
-#include "GUIImage.h" // for FRECT
#include "Tween.h"
#include "tinyXML/tinyxml.h"
@@ -248,7 +247,7 @@ void CRotateEffect::ApplyEffect(float offset, const CPoint &center)
m_matrix.SetZRotation(((m_endAngle - m_startAngle)*offset + m_startAngle) * degree_to_radian, m_center.x, m_center.y, g_graphicsContext.GetScalingPixelRatio());
}
-CZoomEffect::CZoomEffect(const TiXmlElement *node, const FRECT &rect) : CAnimEffect(node, EFFECT_TYPE_ZOOM)
+CZoomEffect::CZoomEffect(const TiXmlElement *node, const CRect &rect) : CAnimEffect(node, EFFECT_TYPE_ZOOM)
{
// effect defaults
m_startX = m_startY = 100;
@@ -256,13 +255,13 @@ CZoomEffect::CZoomEffect(const TiXmlElement *node, const FRECT &rect) : CAnimEff
m_center = CPoint(0,0);
m_autoCenter = false;
- float startPosX = rect.left;
- float startPosY = rect.top;
- float endPosX = rect.left;
- float endPosY = rect.top;
+ float startPosX = rect.x1;
+ float startPosY = rect.y1;
+ float endPosX = rect.x1;
+ float endPosY = rect.y1;
- float width = (rect.right) ? rect.right : 0.001f;
- float height = (rect.bottom) ? rect.bottom : 0.001f;
+ float width = max(rect.Width(), 0.001f);
+ float height = max(rect.Height(),0.001f);
const char *start = node->Attribute("start");
if (start)
@@ -608,7 +607,7 @@ void CAnimation::SetInitialCondition(int contextWindow)
ResetAnimation();
}
-void CAnimation::Create(const TiXmlElement *node, const FRECT &rect)
+void CAnimation::Create(const TiXmlElement *node, const CRect &rect)
{
if (!node || !node->FirstChild())
return;
@@ -671,7 +670,7 @@ void CAnimation::Create(const TiXmlElement *node, const FRECT &rect)
}
}
-void CAnimation::AddEffect(const CStdString &type, const TiXmlElement *node, const FRECT &rect)
+void CAnimation::AddEffect(const CStdString &type, const TiXmlElement *node, const CRect &rect)
{
CAnimEffect *effect = NULL;
if (type.Equals("fade"))
diff --git a/guilib/VisibleEffect.h b/guilib/VisibleEffect.h
index 6786f1f473..36278e618e 100644
--- a/guilib/VisibleEffect.h
+++ b/guilib/VisibleEffect.h
@@ -28,11 +28,10 @@ enum ANIMATION_STATE { ANIM_STATE_NONE = 0, ANIM_STATE_DELAYED, ANIM_STATE_IN_PR
class TiXmlElement;
class Tweener;
-struct FRECT;
class CGUIListItem;
#include "TransformMatrix.h" // needed for the TransformMatrix member
-#include "Geometry.h" // for CPoint
+#include "Geometry.h" // for CPoint, CRect
#include "StdString.h"
enum ANIMATION_TYPE
@@ -126,7 +125,7 @@ private:
class CZoomEffect : public CAnimEffect
{
public:
- CZoomEffect(const TiXmlElement *node, const FRECT &rect);
+ CZoomEffect(const TiXmlElement *node, const CRect &rect);
virtual ~CZoomEffect() {};
private:
virtual void ApplyEffect(float offset, const CPoint &center);
@@ -152,7 +151,7 @@ public:
static CAnimation *CreateFader(float start, float end, unsigned int delay, unsigned int length);
- void Create(const TiXmlElement *node, const FRECT &rect);
+ void Create(const TiXmlElement *node, const CRect &rect);
void Animate(unsigned int time, bool startAnim);
void ResetAnimation();
@@ -176,7 +175,7 @@ public:
private:
void Calculate(const CPoint &point);
- void AddEffect(const CStdString &type, const TiXmlElement *node, const FRECT &rect);
+ void AddEffect(const CStdString &type, const TiXmlElement *node, const CRect &rect);
void AddEffect(CAnimEffect *effect);
enum ANIM_REPEAT { ANIM_REPEAT_NONE = 0, ANIM_REPEAT_PULSE, ANIM_REPEAT_LOOP };
diff --git a/xbmc/ApplicationRenderer.cpp b/xbmc/ApplicationRenderer.cpp
index 24aec0e3aa..0c10c4e6cd 100644
--- a/xbmc/ApplicationRenderer.cpp
+++ b/xbmc/ApplicationRenderer.cpp
@@ -22,7 +22,6 @@
#include "system.h"
#include "Application.h"
#include "ApplicationRenderer.h"
-#include "GUIImage.h"
#include "AdvancedSettings.h"
#include "GUIWindowManager.h"
#include "WindowingFactory.h"
@@ -98,13 +97,13 @@ void CApplicationRenderer::Process()
}
SAFE_RELEASE(m_lpSurface);
- FRECT rect = m_pWindow->GetScaledBounds();
+ CRect rect = m_pWindow->GetScaledBounds();
m_pWindow->ClearAll(); //unload
- iLeft = (int)floor(rect.left);
- iTop = (int)floor(rect.top);
- iWidth = (int)ceil(rect.right - rect.left);
- iHeight = (int)ceil(rect.bottom - rect.top);
+ iLeft = (int)floor(rect.x1);
+ iTop = (int)floor(rect.y1);
+ iWidth = (int)ceil(rect.Width());
+ iHeight = (int)ceil(rect.Height());
m_Resolution = g_graphicsContext.GetVideoResolution();
}
}