static void FitPointSizeforLayout(Controller& controller, const Size& layoutSize);
/**
+ * @brief Calculates the point size for text for given layout() using text fit array.
+ *
+ * @param[in] controller A reference to the controller class
+ * @param[in] layoutSize The layout size
+ */
+ static void FitArrayPointSizeforLayout(Controller& controller, const Size& layoutSize);
+
+ /**
* @brief Called by the Controller to get the height for a particular width.
*
* @param[in] controller A reference to the controller class
* @param[in] size The size to set
* @param[in] operationsRequired The operations we need to do
* @param[in/out] layoutSize The Layout size which can be updated depending on the result of the performed operations
- * @return
+ * @return whether view updated after relayout
*/
static bool DoRelayout(Controller::Impl& impl, const Size& size, OperationsMask operationsRequired, Size& layoutSize);
/**
+ * @brief Called by the Controller to do certain operations when relayouting.
+ *
+ * @param[in] impl A reference to the controller impl class
+ * @param[in] size The size to set
+ * @param[in] operationsRequired The operations we need to do
+ * @param[in/out] layoutSize The Layout size which can be updated depending on the result of the performed operations
+ * @param[out] layoutTooSmall True if layout is too small to render one glyph, else false.
+ * @return whether view updated after relayout
+ */
+
+ static bool DoRelayout(Controller::Impl& impl, const Size& size, OperationsMask operationsRequired, Size& layoutSize, bool& layoutTooSmall);
+
+ /**
* @brief Called by the Controller to calculate the veritcal offset give the control size.
*
* @param[in] impl A reference to the controller impl class
static void DoRelayoutHorizontalAlignment(Controller::Impl& impl, const Size& size, const CharacterIndex startIndex, const Length requestedNumberOfCharacters);
};
+inline bool compareByPointSize(Toolkit::DevelTextLabel::FitOption& lhs, Toolkit::DevelTextLabel::FitOption& rhs)
+{
+ return lhs.GetPointSize() < rhs.GetPointSize();
+}
+
} // namespace Text
} // namespace Toolkit