void Frame::scale(float scaleX, float scaleY)
 {
     mRelativeSizeX *= scaleX;
     mRelativeSizeY *= scaleY;
     clampSize();
     mResizeNecessary = true;
 }
 void Frame::setSize(float relativeSizeX, float relativeSizeY)
 {
     mRelativeSizeX = relativeSizeX;
     mRelativeSizeY = relativeSizeY;
     clampSize();
     mResizeNecessary = true;
 }
예제 #3
0
	void WidgetLayout::CheckMinMax()
	{
		Vec2F resSize = mData->size;
		Vec2F minSizeWithChildren(mData->owner->GetMinWidthWithChildren(), mData->owner->GetMinHeightWithChildren());

		Vec2F clampSize(Math::Clamp(resSize.x, minSizeWithChildren.x, mData->maxSize.x),
						Math::Clamp(resSize.y, minSizeWithChildren.y, mData->maxSize.y));

		Vec2F szDelta = clampSize - resSize;

		if (szDelta != Vec2F())
			mData->size += szDelta;
	}
    Frame::Frame(
        Layout * const pLayout,
        float relativePositionX,
        float relativePositionY,
        float relativeSizeX,
        float relativeSizeY) : Object()
    {
        // Initialize members
        mpLayout = pLayout;
        mFrameAlpha.setValue(1);
        mCombinedAlpha = 1;
        mRemovedFadingAlpha = 1;
        mVisible = true;
        mupRoot = NULL;
        mResizeNecessary = true;
        mRelativePositionX = relativePositionX;
        mRelativePositionY = relativePositionY;
        mRelativeSizeX = relativeSizeX;
        mRelativeSizeY = relativeSizeY;
        mRemoved = false;

        clampSize();
    }