mirror of https://github.com/axmolengine/axmol.git
restrict capInsets of ui::ImageView, ui::Slider and ui::LoadinbBar
This commit is contained in:
parent
e7fc2a5607
commit
b11e3d74cc
|
@ -83,9 +83,14 @@ public:
|
||||||
|
|
||||||
static void changeLayoutSystemActiveState(bool bActive);
|
static void changeLayoutSystemActiveState(bool bActive);
|
||||||
|
|
||||||
private:
|
/**
|
||||||
|
*@brief restrict capInsetSize, when the capInsets's width is larger than the textureSize, it will restrict to 0,
|
||||||
|
* the height goes the same way as width.
|
||||||
|
*@param capInsets A user defined capInsets.
|
||||||
|
*@param textureSize The size of a scale9enabled texture
|
||||||
|
*@return a restricted capInset.
|
||||||
|
*/
|
||||||
static Rect restrictCapInsetRect(const Rect& capInsets, const Size& textureSize);
|
static Rect restrictCapInsetRect(const Rect& capInsets, const Size& textureSize);
|
||||||
friend class Button;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,7 @@ THE SOFTWARE.
|
||||||
|
|
||||||
#include "ui/UIImageView.h"
|
#include "ui/UIImageView.h"
|
||||||
#include "ui/UIScale9Sprite.h"
|
#include "ui/UIScale9Sprite.h"
|
||||||
|
#include "ui/UIHelper.h"
|
||||||
#include "2d/CCSprite.h"
|
#include "2d/CCSprite.h"
|
||||||
|
|
||||||
NS_CC_BEGIN
|
NS_CC_BEGIN
|
||||||
|
@ -203,12 +204,12 @@ void ImageView::ignoreContentAdaptWithSize(bool ignore)
|
||||||
|
|
||||||
void ImageView::setCapInsets(const Rect &capInsets)
|
void ImageView::setCapInsets(const Rect &capInsets)
|
||||||
{
|
{
|
||||||
_capInsets = capInsets;
|
_capInsets = ui::Helper::restrictCapInsetRect(capInsets, _imageTextureSize);
|
||||||
if (!_scale9Enabled)
|
if (!_scale9Enabled)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_imageRenderer->setCapInsets(capInsets);
|
_imageRenderer->setCapInsets(_capInsets);
|
||||||
}
|
}
|
||||||
|
|
||||||
const Rect& ImageView::getCapInsets()const
|
const Rect& ImageView::getCapInsets()const
|
||||||
|
|
|
@ -23,6 +23,7 @@ THE SOFTWARE.
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include "ui/UILoadingBar.h"
|
#include "ui/UILoadingBar.h"
|
||||||
|
#include "ui/UIHelper.h"
|
||||||
#include "ui/UIScale9Sprite.h"
|
#include "ui/UIScale9Sprite.h"
|
||||||
#include "2d/CCSprite.h"
|
#include "2d/CCSprite.h"
|
||||||
|
|
||||||
|
@ -225,12 +226,12 @@ bool LoadingBar::isScale9Enabled()const
|
||||||
|
|
||||||
void LoadingBar::setCapInsets(const Rect &capInsets)
|
void LoadingBar::setCapInsets(const Rect &capInsets)
|
||||||
{
|
{
|
||||||
_capInsets = capInsets;
|
_capInsets = ui::Helper::restrictCapInsetRect(capInsets, _barRendererTextureSize);
|
||||||
if (!_scale9Enabled)
|
if (!_scale9Enabled)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_barRenderer->setCapInsets(capInsets);
|
_barRenderer->setCapInsets(_capInsets);
|
||||||
}
|
}
|
||||||
|
|
||||||
const Rect& LoadingBar::getCapInsets()const
|
const Rect& LoadingBar::getCapInsets()const
|
||||||
|
|
|
@ -24,6 +24,7 @@ THE SOFTWARE.
|
||||||
|
|
||||||
#include "ui/UISlider.h"
|
#include "ui/UISlider.h"
|
||||||
#include "ui/UIScale9Sprite.h"
|
#include "ui/UIScale9Sprite.h"
|
||||||
|
#include "ui/UIHelper.h"
|
||||||
#include "2d/CCSprite.h"
|
#include "2d/CCSprite.h"
|
||||||
|
|
||||||
NS_CC_BEGIN
|
NS_CC_BEGIN
|
||||||
|
@ -222,12 +223,12 @@ void Slider::setCapInsets(const Rect &capInsets)
|
||||||
|
|
||||||
void Slider::setCapInsetsBarRenderer(const Rect &capInsets)
|
void Slider::setCapInsetsBarRenderer(const Rect &capInsets)
|
||||||
{
|
{
|
||||||
_capInsetsBarRenderer = capInsets;
|
_capInsetsBarRenderer = ui::Helper::restrictCapInsetRect(capInsets, _barRenderer->getContentSize());
|
||||||
if (!_scale9Enabled)
|
if (!_scale9Enabled)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_barRenderer->setCapInsets(capInsets);
|
_barRenderer->setCapInsets(_capInsetsBarRenderer);
|
||||||
}
|
}
|
||||||
|
|
||||||
const Rect& Slider::getCapInsetsBarRenderer()const
|
const Rect& Slider::getCapInsetsBarRenderer()const
|
||||||
|
@ -237,12 +238,13 @@ const Rect& Slider::getCapInsetsBarRenderer()const
|
||||||
|
|
||||||
void Slider::setCapInsetProgressBarRebderer(const Rect &capInsets)
|
void Slider::setCapInsetProgressBarRebderer(const Rect &capInsets)
|
||||||
{
|
{
|
||||||
_capInsetsProgressBarRenderer = capInsets;
|
_capInsetsProgressBarRenderer = ui::Helper::restrictCapInsetRect(capInsets, _progressBarRenderer->getContentSize());
|
||||||
|
|
||||||
if (!_scale9Enabled)
|
if (!_scale9Enabled)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_progressBarRenderer->setCapInsets(capInsets);
|
_progressBarRenderer->setCapInsets(_capInsetsProgressBarRenderer);
|
||||||
}
|
}
|
||||||
|
|
||||||
const Rect& Slider::getCapInsetsProgressBarRebderer()const
|
const Rect& Slider::getCapInsetsProgressBarRebderer()const
|
||||||
|
|
Loading…
Reference in New Issue