mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-08-11 17:17:42 +03:00
Minor fixes.
--HG-- branch : dev
This commit is contained in:
@@ -70,11 +70,10 @@
|
||||
</vbox>
|
||||
<ScrollView id="test_5" layout_width="match_parent" layout_height="match_parent">
|
||||
<vbox layout_width="match_parent" layout_height="wrap_content">
|
||||
<TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" />
|
||||
<TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" />
|
||||
<TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" />
|
||||
<TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" />
|
||||
<TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" /><TextView text="Test" />
|
||||
<TextView text="Test 1" /><TextView text="Test 2" /><TextView text="Test 3" /><TextView text="Test 4" /><TextView text="Test 5" /><TextView text="Test 6" />
|
||||
<TextView text="Test 7" /><TextView text="Test 8" /><TextView text="Test 9" /><TextView text="Test 10" /><TextView text="Test 11" /><TextView text="Test 12" />
|
||||
<TextView text="Test 13" /><TextView text="Test 14" /><TextView text="Test 15" /><TextView text="Test 16" /><TextView text="Test 17" /><TextView text="Tes 18" />
|
||||
<TextView text="Test 19" /><TextView text="Test 20" /><TextView text="Test 21" /><TextView text="Test 22" /><TextView text="Test 23" /><TextView text="Test 24" />
|
||||
</vbox>
|
||||
</ScrollView>
|
||||
<Tab name="Padding Test" owns="test_1" />
|
||||
|
||||
@@ -6,14 +6,6 @@
|
||||
|
||||
namespace EE { namespace UI {
|
||||
|
||||
class EE_API UISliderStyleConfig {
|
||||
public:
|
||||
UISliderStyleConfig() {}
|
||||
|
||||
bool AllowHalfSliderOut = false;
|
||||
bool ExpandBackground = false;
|
||||
};
|
||||
|
||||
class EE_API UISlider : public UIWidget {
|
||||
public:
|
||||
static UISlider * New();
|
||||
@@ -81,7 +73,8 @@ class EE_API UISlider : public UIWidget {
|
||||
friend class Private::UISliderButton;
|
||||
|
||||
UI_ORIENTATION mOrientation;
|
||||
UISliderStyleConfig mStyleConfig;
|
||||
bool mAllowHalfSliderOut;
|
||||
bool mExpandBackground;
|
||||
UINode * mBackSlider;
|
||||
Private::UISliderButton * mSlider;
|
||||
Float mMinValue;
|
||||
|
||||
@@ -35,14 +35,13 @@ UIScrollBar::UIScrollBar( const UI_ORIENTATION& orientation ) :
|
||||
mBtnDown->setSize( 16, 16 );
|
||||
|
||||
mSlider = UISlider::New();
|
||||
mSlider->addEventListener( Event::OnValueChange, cb::Make1( this, &UIScrollBar::onValueChangeCb ) );
|
||||
mSlider->setElementTag( "scrollbarslider" );
|
||||
mSlider->setOrientation( orientation );
|
||||
mSlider->setParent( this );
|
||||
mSlider->setAllowHalfSliderOut( false );
|
||||
mSlider->setExpandBackground( false );
|
||||
|
||||
mSlider->addEventListener( Event::OnValueChange, cb::Make1( this, &UIScrollBar::onValueChangeCb ) );
|
||||
|
||||
adjustChilds();
|
||||
|
||||
applyDefaultTheme();
|
||||
@@ -294,7 +293,9 @@ bool UIScrollBar::getExpandBackground() const {
|
||||
}
|
||||
|
||||
void UIScrollBar::setExpandBackground( bool expandBackground ) {
|
||||
mSlider->setExpandBackground( expandBackground );
|
||||
if ( mSlider->getExpandBackground() != expandBackground ) {
|
||||
mSlider->setExpandBackground( expandBackground );
|
||||
}
|
||||
|
||||
adjustChilds();
|
||||
}
|
||||
|
||||
@@ -42,8 +42,8 @@ bool UIScrollView::isType( const Uint32& type ) const {
|
||||
}
|
||||
|
||||
void UIScrollView::onSizeChange() {
|
||||
UIWidget::onSizeChange();
|
||||
containerUpdate();
|
||||
UIWidget::onSizeChange();
|
||||
}
|
||||
|
||||
void UIScrollView::onAlphaChange() {
|
||||
@@ -77,8 +77,8 @@ void UIScrollView::onChildCountChange() {
|
||||
mScrollView->close();
|
||||
}
|
||||
|
||||
child->setParent( mContainer );
|
||||
mScrollView = child;
|
||||
mScrollView->setParent( mContainer );
|
||||
mSizeChangeCb = mScrollView->addEventListener( Event::OnSizeChange, cb::Make1( this, &UIScrollView::onScrollViewSizeChange ) );
|
||||
|
||||
containerUpdate();
|
||||
@@ -139,19 +139,6 @@ void UIScrollView::containerUpdate() {
|
||||
if ( NULL == mScrollView )
|
||||
return;
|
||||
|
||||
Sizef size = mDpSize - mPadding;
|
||||
|
||||
if ( Exclusive == mViewType ) {
|
||||
if ( mVScroll->isVisible() )
|
||||
size.x -= mVScroll->getSize().getWidth();
|
||||
|
||||
if ( mHScroll->isVisible() )
|
||||
size.y -= mHScroll->getSize().getHeight();
|
||||
}
|
||||
|
||||
mContainer->setPosition( mPadding.Left, mPadding.Top );
|
||||
mContainer->setSize( size );
|
||||
|
||||
if ( UI_SCROLLBAR_ALWAYS_ON == mHScrollMode ) {
|
||||
mHScroll->setVisible( true );
|
||||
mHScroll->setEnabled( true );
|
||||
@@ -159,7 +146,7 @@ void UIScrollView::containerUpdate() {
|
||||
mHScroll->setVisible( false );
|
||||
mHScroll->setEnabled( false );
|
||||
} else {
|
||||
bool visible = mScrollView->getSize().getWidth() > mContainer->getSize().getWidth();
|
||||
bool visible = mScrollView->getSize().getWidth() > getSize().getWidth() - getPadding().Left - getPadding().Right;
|
||||
|
||||
mHScroll->setVisible( visible );
|
||||
mHScroll->setEnabled( visible );
|
||||
@@ -172,12 +159,25 @@ void UIScrollView::containerUpdate() {
|
||||
mVScroll->setVisible( false );
|
||||
mVScroll->setEnabled( false );
|
||||
} else {
|
||||
bool visible = mScrollView->getSize().getHeight() > mContainer->getSize().getHeight();
|
||||
bool visible = mScrollView->getSize().getHeight() > getSize().getHeight() - getPadding().Top - getPadding().Bottom;
|
||||
|
||||
mVScroll->setVisible( visible );
|
||||
mVScroll->setEnabled( visible );
|
||||
}
|
||||
|
||||
Sizef size = mDpSize - mPadding;
|
||||
|
||||
if ( Exclusive == mViewType ) {
|
||||
if ( mVScroll->isVisible() )
|
||||
size.x -= mVScroll->getSize().getWidth();
|
||||
|
||||
if ( mHScroll->isVisible() )
|
||||
size.y -= mHScroll->getSize().getHeight();
|
||||
}
|
||||
|
||||
mContainer->setPosition( mPadding.Left, mPadding.Top );
|
||||
mContainer->setSize( size );
|
||||
|
||||
mVScroll->setPosition( mDpSize.getWidth() - mVScroll->getSize().getWidth() - mPadding.Right, mPadding.Top );
|
||||
mHScroll->setPosition( mPadding.Left, mDpSize.getHeight() - mHScroll->getSize().getHeight() - mPadding.Bottom );
|
||||
|
||||
|
||||
@@ -20,6 +20,8 @@ UISlider * UISlider::NewHorizontal() {
|
||||
UISlider::UISlider( const UI_ORIENTATION& orientation ) :
|
||||
UIWidget( "slider" ),
|
||||
mOrientation( orientation ),
|
||||
mAllowHalfSliderOut( false ),
|
||||
mExpandBackground( false ),
|
||||
mBackSlider( NULL ),
|
||||
mSlider( NULL ),
|
||||
mMinValue( 0.f ),
|
||||
@@ -137,24 +139,24 @@ void UISlider::adjustChilds() {
|
||||
if ( UI_HORIZONTAL == mOrientation ) {
|
||||
Float Height;
|
||||
|
||||
if ( mStyleConfig.ExpandBackground )
|
||||
if ( mExpandBackground )
|
||||
Height = mDpSize.getHeight() - mPadding.Top - mPadding.Bottom;
|
||||
else
|
||||
Height = tSkin->getSize().getHeight();
|
||||
|
||||
if ( mStyleConfig.AllowHalfSliderOut )
|
||||
if ( mAllowHalfSliderOut )
|
||||
mBackSlider->setSize( Sizef( mDpSize.getWidth() - mSlider->getSize().getWidth() - mPadding.Left - mPadding.Right, Height ) );
|
||||
else
|
||||
mBackSlider->setSize( Sizef( mDpSize.getWidth() - mPadding.Left - mPadding.Right, Height ) );
|
||||
} else {
|
||||
Float Width;
|
||||
|
||||
if ( mStyleConfig.ExpandBackground )
|
||||
if ( mExpandBackground )
|
||||
Width = mDpSize.getWidth() - mPadding.Left - mPadding.Right;
|
||||
else
|
||||
Width = tSkin->getSize().getWidth();
|
||||
|
||||
if ( mStyleConfig.AllowHalfSliderOut )
|
||||
if ( mAllowHalfSliderOut )
|
||||
mBackSlider->setSize( Sizef( Width, mDpSize.getHeight() - mSlider->getSize().getHeight() - mPadding.Top - mPadding.Bottom ) );
|
||||
else
|
||||
mBackSlider->setSize( Sizef( Width, mDpSize.getHeight() ) );
|
||||
@@ -176,7 +178,7 @@ void UISlider::fixSliderPos() {
|
||||
if ( mSlider->getPosition().x < mPadding.Left )
|
||||
mSlider->setPosition( mPadding.Left, 0 );
|
||||
|
||||
if ( mStyleConfig.AllowHalfSliderOut ) {
|
||||
if ( mAllowHalfSliderOut ) {
|
||||
if ( mSlider->getPosition().x > mBackSlider->getSize().getWidth() + mPadding.Left )
|
||||
mSlider->setPosition( mBackSlider->getSize().getWidth() + mPadding.Left, 0 );
|
||||
} else {
|
||||
@@ -186,7 +188,7 @@ void UISlider::fixSliderPos() {
|
||||
|
||||
mSlider->centerVertical();
|
||||
|
||||
if ( mStyleConfig.AllowHalfSliderOut )
|
||||
if ( mAllowHalfSliderOut )
|
||||
setValue( mMinValue + ( mSlider->getPosition().x - mPadding.Left ) * ( mMaxValue - mMinValue ) / (Float)mBackSlider->getSize().getWidth() );
|
||||
else
|
||||
setValue( mMinValue + ( mSlider->getPosition().x - mPadding.Left ) * ( mMaxValue - mMinValue ) / ( (Float)mDpSize.getWidth() - mSlider->getSize().getWidth() ) );
|
||||
@@ -196,7 +198,7 @@ void UISlider::fixSliderPos() {
|
||||
if ( mSlider->getPosition().y < mPadding.Top )
|
||||
mSlider->setPosition( 0, mPadding.Top );
|
||||
|
||||
if ( mStyleConfig.AllowHalfSliderOut ) {
|
||||
if ( mAllowHalfSliderOut ) {
|
||||
if ( mSlider->getPosition().y > mBackSlider->getSize().getHeight() + mPadding.Top )
|
||||
mSlider->setPosition( 0, mBackSlider->getSize().getHeight() + mPadding.Top );
|
||||
} else {
|
||||
@@ -207,7 +209,7 @@ void UISlider::fixSliderPos() {
|
||||
|
||||
mSlider->centerHorizontal();
|
||||
|
||||
if ( mStyleConfig.AllowHalfSliderOut )
|
||||
if ( mAllowHalfSliderOut )
|
||||
setValue( mMinValue + ( mSlider->getPosition().y - mPadding.Top ) * ( mMaxValue - mMinValue ) / (Float)mBackSlider->getSize().getHeight() );
|
||||
else
|
||||
setValue( mMinValue + ( mSlider->getPosition().y - mPadding.Top ) * ( mMaxValue - mMinValue ) / ( (Float)mDpSize.getHeight() - mSlider->getSize().getHeight() ) );
|
||||
@@ -218,6 +220,9 @@ void UISlider::fixSliderPos() {
|
||||
}
|
||||
|
||||
void UISlider::setValue( Float Val ) {
|
||||
if ( mValue == Val )
|
||||
return;
|
||||
|
||||
if ( Val < mMinValue ) Val = mMinValue;
|
||||
if ( Val > mMaxValue ) Val = mMaxValue;
|
||||
|
||||
@@ -230,12 +235,12 @@ void UISlider::setValue( Float Val ) {
|
||||
mOnPosChange = true;
|
||||
|
||||
if ( UI_HORIZONTAL == mOrientation ) {
|
||||
if ( mStyleConfig.AllowHalfSliderOut )
|
||||
if ( mAllowHalfSliderOut )
|
||||
mSlider->setPosition( mPadding.Left + (Int32)( (Float)mBackSlider->getSize().getWidth() * Percent ), mSlider->getPosition().y );
|
||||
else
|
||||
mSlider->setPosition( mPadding.Left + (Int32)( ( (Float)mDpSize.getWidth() - mPadding.Left - mPadding.Top - mSlider->getSize().getWidth() ) * Percent ), mSlider->getPosition().y );
|
||||
} else {
|
||||
if ( mStyleConfig.AllowHalfSliderOut )
|
||||
if ( mAllowHalfSliderOut )
|
||||
mSlider->setPosition( mSlider->getPosition().x, mPadding.Top + (Int32)( (Float)mBackSlider->getSize().getHeight() * Percent ) );
|
||||
else
|
||||
mSlider->setPosition( mSlider->getPosition().x, mPadding.Top + (Int32)( ( (Float)mDpSize.getHeight() - mPadding.Top - mPadding.Bottom - mSlider->getSize().getHeight() ) * Percent ) );
|
||||
@@ -355,12 +360,12 @@ UISlider * UISlider::setOrientation( const UI_ORIENTATION & orientation ) {
|
||||
}
|
||||
|
||||
bool UISlider::getAllowHalfSliderOut() const {
|
||||
return mStyleConfig.AllowHalfSliderOut;
|
||||
return mAllowHalfSliderOut;
|
||||
}
|
||||
|
||||
void UISlider::setAllowHalfSliderOut( bool allowHalfSliderOut ) {
|
||||
if ( mStyleConfig.AllowHalfSliderOut != allowHalfSliderOut ) {
|
||||
mStyleConfig.AllowHalfSliderOut = allowHalfSliderOut;
|
||||
if ( mAllowHalfSliderOut != allowHalfSliderOut ) {
|
||||
mAllowHalfSliderOut = allowHalfSliderOut;
|
||||
|
||||
adjustChilds();
|
||||
|
||||
@@ -369,12 +374,12 @@ void UISlider::setAllowHalfSliderOut( bool allowHalfSliderOut ) {
|
||||
}
|
||||
|
||||
bool UISlider::getExpandBackground() const {
|
||||
return mStyleConfig.ExpandBackground;
|
||||
return mExpandBackground;
|
||||
}
|
||||
|
||||
void UISlider::setExpandBackground( bool expandBackground ) {
|
||||
if ( mStyleConfig.ExpandBackground != expandBackground ) {
|
||||
mStyleConfig.ExpandBackground = expandBackground;
|
||||
if ( mExpandBackground != expandBackground ) {
|
||||
mExpandBackground = expandBackground;
|
||||
|
||||
adjustChilds();
|
||||
|
||||
@@ -456,7 +461,7 @@ bool UISlider::setAttribute( const NodeAttribute& attribute, const Uint32& state
|
||||
Sizef UISlider::getMinimumSize() {
|
||||
Float w = eemax( mBackSlider->getSkinSize().getWidth(), mSlider->getSkinSize().getWidth() );
|
||||
Float h = eemax( mBackSlider->getSkinSize().getHeight(), mSlider->getSkinSize().getHeight() );
|
||||
return Sizef( w + ( mStyleConfig.AllowHalfSliderOut ? w : 0 ) + mPadding.Left + mPadding.Right, h + mPadding.Top + mPadding.Bottom );
|
||||
return Sizef( w + ( mAllowHalfSliderOut ? w : 0 ) + mPadding.Left + mPadding.Right, h + mPadding.Top + mPadding.Bottom );
|
||||
}
|
||||
|
||||
void UISlider::onAutoSize() {
|
||||
|
||||
Reference in New Issue
Block a user