本文整理汇总了C++中LengthBox::bottom方法的典型用法代码示例。如果您正苦于以下问题:C++ LengthBox::bottom方法的具体用法?C++ LengthBox::bottom怎么用?C++ LengthBox::bottom使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LengthBox
的用法示例。
在下文中一共展示了LengthBox::bottom方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: mapNinePieceImageSlice
void CSSToStyleMap::mapNinePieceImageSlice(CSSValue& value, NinePieceImage& image)
{
if (!is<CSSBorderImageSliceValue>(value))
return;
// Retrieve the border image value.
auto& borderImageSlice = downcast<CSSBorderImageSliceValue>(value);
// Set up a length box to represent our image slices.
LengthBox box;
Quad* slices = borderImageSlice.slices();
if (slices->top()->isPercentage())
box.top() = Length(slices->top()->getDoubleValue(), Percent);
else
box.top() = Length(slices->top()->getIntValue(CSSPrimitiveValue::CSS_NUMBER), Fixed);
if (slices->bottom()->isPercentage())
box.bottom() = Length(slices->bottom()->getDoubleValue(), Percent);
else
box.bottom() = Length((int)slices->bottom()->getFloatValue(CSSPrimitiveValue::CSS_NUMBER), Fixed);
if (slices->left()->isPercentage())
box.left() = Length(slices->left()->getDoubleValue(), Percent);
else
box.left() = Length(slices->left()->getIntValue(CSSPrimitiveValue::CSS_NUMBER), Fixed);
if (slices->right()->isPercentage())
box.right() = Length(slices->right()->getDoubleValue(), Percent);
else
box.right() = Length(slices->right()->getIntValue(CSSPrimitiveValue::CSS_NUMBER), Fixed);
image.setImageSlices(box);
// Set our fill mode.
image.setFill(borderImageSlice.m_fill);
}
示例2: positionedObjectMovedOnly
static bool positionedObjectMovedOnly(const LengthBox& a, const LengthBox& b, const Length& width)
{
// If any unit types are different, then we can't guarantee
// that this was just a movement.
if (a.left().type() != b.left().type()
|| a.right().type() != b.right().type()
|| a.top().type() != b.top().type()
|| a.bottom().type() != b.bottom().type())
return false;
// Only one unit can be non-auto in the horizontal direction and
// in the vertical direction. Otherwise the adjustment of values
// is changing the size of the box.
if (!a.left().isIntrinsicOrAuto() && !a.right().isIntrinsicOrAuto())
return false;
if (!a.top().isIntrinsicOrAuto() && !a.bottom().isIntrinsicOrAuto())
return false;
// If our width is auto and left or right is specified and changed then this
// is not just a movement - we need to resize to our container.
if (width.isIntrinsicOrAuto()
&& ((!a.left().isIntrinsicOrAuto() && a.left() != b.left())
|| (!a.right().isIntrinsicOrAuto() && a.right() != b.right())))
return false;
// One of the units is fixed or percent in both directions and stayed
// that way in the new style. Therefore all we are doing is moving.
return true;
}
示例3: ClipAutos
explicit ClipAutos(const LengthBox& clip)
: isAuto(false)
, isTopAuto(clip.top().isAuto())
, isRightAuto(clip.right().isAuto())
, isBottomAuto(clip.bottom().isAuto())
, isLeftAuto(clip.left().isAuto())
{ }
示例4: create
inline static PassRefPtr<AnimatableValue> createFromLengthBox(const LengthBox lengthBox, const RenderStyle* style)
{
return AnimatableLengthBox::create(
createFromLength(lengthBox.left(), style),
createFromLength(lengthBox.right(), style),
createFromLength(lengthBox.top(), style),
createFromLength(lengthBox.bottom(), style));
}
示例5: computeSlices
LayoutBoxExtent NinePieceImage::computeSlices(const LayoutSize& size, const LengthBox& lengths, const FloatBoxExtent& widths, const LayoutBoxExtent& slices)
{
LayoutUnit top = computeSlice(lengths.top(), widths.top(), slices.top(), size.height());
LayoutUnit right = computeSlice(lengths.right(), widths.right(), slices.right(), size.width());
LayoutUnit bottom = computeSlice(lengths.bottom(), widths.bottom(), slices.bottom(), size.height());
LayoutUnit left = computeSlice(lengths.left(), widths.left(), slices.left(), size.width());
return LayoutBoxExtent(top, right, bottom, left);
}
示例6: create
inline static PassRefPtrWillBeRawPtr<AnimatableValue> createFromLengthBox(const LengthBox& lengthBox, const ComputedStyle& style)
{
return AnimatableLengthBox::create(
createFromLength(lengthBox.left(), style),
createFromLength(lengthBox.right(), style),
createFromLength(lengthBox.top(), style),
createFromLength(lengthBox.bottom(), style));
}
示例7: createClipValue
static InterpolationValue createClipValue(const LengthBox& clip, double zoom)
{
OwnPtr<InterpolableList> list = InterpolableList::create(ClipComponentIndexCount);
list->set(ClipTop, convertClipComponent(clip.top(), zoom));
list->set(ClipRight, convertClipComponent(clip.right(), zoom));
list->set(ClipBottom, convertClipComponent(clip.bottom(), zoom));
list->set(ClipLeft, convertClipComponent(clip.left(), zoom));
return InterpolationValue(list.release(), CSSClipNonInterpolableValue::create(ClipAutos(clip)));
}
示例8: mapNinePieceImageQuad
LengthBox CSSToStyleMap::mapNinePieceImageQuad(CSSValue& value)
{
if (!is<CSSPrimitiveValue>(value))
return LengthBox();
// Get our zoom value.
CSSToLengthConversionData conversionData = useSVGZoomRules() ? m_resolver->state().cssToLengthConversionData().copyWithAdjustedZoom(1.0f) : m_resolver->state().cssToLengthConversionData();
// Retrieve the primitive value.
auto& borderWidths = downcast<CSSPrimitiveValue>(value);
// Set up a length box to represent our image slices.
LengthBox box; // Defaults to 'auto' so we don't have to handle that explicitly below.
Quad* slices = borderWidths.getQuadValue();
if (slices->top()->isNumber())
box.top() = Length(slices->top()->getIntValue(), Relative);
else if (slices->top()->isPercentage())
box.top() = Length(slices->top()->getDoubleValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent);
else if (slices->top()->getValueID() != CSSValueAuto)
box.top() = slices->top()->computeLength<Length>(conversionData);
if (slices->right()->isNumber())
box.right() = Length(slices->right()->getIntValue(), Relative);
else if (slices->right()->isPercentage())
box.right() = Length(slices->right()->getDoubleValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent);
else if (slices->right()->getValueID() != CSSValueAuto)
box.right() = slices->right()->computeLength<Length>(conversionData);
if (slices->bottom()->isNumber())
box.bottom() = Length(slices->bottom()->getIntValue(), Relative);
else if (slices->bottom()->isPercentage())
box.bottom() = Length(slices->bottom()->getDoubleValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent);
else if (slices->bottom()->getValueID() != CSSValueAuto)
box.bottom() = slices->bottom()->computeLength<Length>(conversionData);
if (slices->left()->isNumber())
box.left() = Length(slices->left()->getIntValue(), Relative);
else if (slices->left()->isPercentage())
box.left() = Length(slices->left()->getDoubleValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent);
else if (slices->left()->getValueID() != CSSValueAuto)
box.left() = slices->left()->computeLength<Length>(conversionData);
return box;
}