bool NumberInputType::sizeShouldIncludeDecoration(int defaultSize, int& preferredSize) const { preferredSize = defaultSize; const String stepString = element()->fastGetAttribute(stepAttr); if (equalIgnoringCase(stepString, "any")) return false; const Decimal minimum = parseToDecimalForNumberType(element()->fastGetAttribute(minAttr)); if (!minimum.isFinite()) return false; const Decimal maximum = parseToDecimalForNumberType(element()->fastGetAttribute(maxAttr)); if (!maximum.isFinite()) return false; const Decimal step = parseToDecimalForNumberType(stepString, 1); ASSERT(step.isFinite()); RealNumberRenderSize size = calculateRenderSize(minimum).max(calculateRenderSize(maximum).max(calculateRenderSize(step))); preferredSize = size.sizeBeforeDecimalPoint + size.sizeAfteDecimalPoint + (size.sizeAfteDecimalPoint ? 1 : 0); return true; }
void GuiObject::sizeChanged(){ ob_type::Vector2* newPos = calculateRenderPosision(new ob_type::Vector2()); if(newPos){ setAbsolutePosition(newPos); delete newPos; } ob_type::Vector2* newSize = calculateRenderSize(new ob_type::Vector2()); if(newSize){ setAbsoluteSize(newSize); delete newSize; } }