aboutsummaryrefslogtreecommitdiff
path: root/sp/src/vgui2/vgui_controls/ImagePanel.cpp
diff options
context:
space:
mode:
authorMichael Sartain <[email protected]>2014-10-02 08:25:55 -0700
committerMichael Sartain <[email protected]>2014-10-02 08:25:55 -0700
commit55ed12f8d1eb6887d348be03aee5573d44177ffb (patch)
tree3686f7ca78c780cd9a3d367b79a9d9250c1be7c0 /sp/src/vgui2/vgui_controls/ImagePanel.cpp
parent* Added support for Visual C++ 2013 Express to VPC (diff)
downloadsource-sdk-2013-55ed12f8d1eb6887d348be03aee5573d44177ffb.tar.xz
source-sdk-2013-55ed12f8d1eb6887d348be03aee5573d44177ffb.zip
Updated the SDK with the latest code from the TF and HL2 branches.
Diffstat (limited to 'sp/src/vgui2/vgui_controls/ImagePanel.cpp')
-rw-r--r--sp/src/vgui2/vgui_controls/ImagePanel.cpp40
1 files changed, 25 insertions, 15 deletions
diff --git a/sp/src/vgui2/vgui_controls/ImagePanel.cpp b/sp/src/vgui2/vgui_controls/ImagePanel.cpp
index 3e31e23b..1a77bd2a 100644
--- a/sp/src/vgui2/vgui_controls/ImagePanel.cpp
+++ b/sp/src/vgui2/vgui_controls/ImagePanel.cpp
@@ -38,6 +38,7 @@ ImagePanel::ImagePanel(Panel *parent, const char *name) : Panel(parent, name)
m_bTileImage = false;
m_bTileHorizontally = false;
m_bTileVertically = false;
+ m_bPositionImage = true;
m_fScaleAmount = 0.0f;
m_FillColor = Color(0, 0, 0, 0);
m_DrawColor = Color(255,255,255,255);
@@ -143,25 +144,28 @@ void ImagePanel::PaintBackground()
// HPE_END
//=============================================================================
- if ( m_bCenterImage )
+ if ( m_bPositionImage )
{
- int wide, tall;
- GetSize(wide, tall);
+ if ( m_bCenterImage )
+ {
+ int wide, tall;
+ GetSize(wide, tall);
- int imageWide, imageTall;
- m_pImage->GetSize( imageWide, imageTall );
+ int imageWide, imageTall;
+ m_pImage->GetSize( imageWide, imageTall );
+
+ if ( m_bScaleImage && m_fScaleAmount > 0.0f )
+ {
+ imageWide = static_cast<int>( static_cast<float>(imageWide) * m_fScaleAmount );
+ imageTall = static_cast<int>( static_cast<float>(imageTall) * m_fScaleAmount );
+ }
- if ( m_bScaleImage && m_fScaleAmount > 0.0f )
+ m_pImage->SetPos( (wide - imageWide) / 2, (tall - imageTall) / 2 );
+ }
+ else
{
- imageWide = static_cast<int>( static_cast<float>(imageWide) * m_fScaleAmount );
- imageTall = static_cast<int>( static_cast<float>(imageTall) * m_fScaleAmount );
+ m_pImage->SetPos(0, 0);
}
-
- m_pImage->SetPos( (wide - imageWide) / 2, (tall - imageTall) / 2 );
- }
- else
- {
- m_pImage->SetPos(0, 0);
}
if (m_bScaleImage)
@@ -217,7 +221,11 @@ void ImagePanel::PaintBackground()
if ( !m_bTileVertically )
break;
}
- m_pImage->SetPos(0, 0);
+
+ if ( m_bPositionImage )
+ {
+ m_pImage->SetPos(0, 0);
+ }
}
else
{
@@ -259,6 +267,7 @@ void ImagePanel::GetSettings(KeyValues *outResourceData)
outResourceData->SetString("border", GetBorder()->GetName());
}
+ outResourceData->GetInt("positionImage", m_bPositionImage );
outResourceData->SetInt("scaleImage", m_bScaleImage);
outResourceData->SetFloat("scaleAmount", m_fScaleAmount);
outResourceData->SetInt("tileImage", m_bTileImage);
@@ -278,6 +287,7 @@ void ImagePanel::ApplySettings(KeyValues *inResourceData)
m_pszFillColorName = NULL;
m_pszDrawColorName = NULL; // HPE addition
+ m_bPositionImage = inResourceData->GetInt("positionImage", 1);
m_bScaleImage = inResourceData->GetInt("scaleImage", 0);
m_fScaleAmount = inResourceData->GetFloat("scaleAmount", 0.0f);
m_bTileImage = inResourceData->GetInt("tileImage", 0);