int GetLineIndexAtPositionY(float y) const;
+ bool IsDisplayedFirstLine(void) const;
+
+ bool IsDisplayedLastLine(void) const;
+
int GetFirstTextIndexAt(int lineIndex) const;
int GetTextLengthAt(int lineIndex) const;
return isDisplayedAtEndPosition;
}
+bool
+TextObject::IsDisplayedFirstLine(void) const
+{
+ IF_NOT_CONSTRUCTED(return false);
+
+ float firstDisplayPositionY = __pTextColumn->GetFirstDisplayPositionYF();
+ float firstLineHeight = GetLineHeightAtF(0);
+
+ bool isDisplayedFirstLine = false;
+ if(firstDisplayPositionY == 0.0f || firstDisplayPositionY < firstLineHeight)
+ {
+ isDisplayedFirstLine = true;
+ }
+
+ return isDisplayedFirstLine;
+}
+
+bool
+TextObject::IsDisplayedLastLine(void) const
+{
+ IF_NOT_CONSTRUCTED(return false);
+
+ float totalHeight = 0.0f;
+ float firstDisplayPositionY = 0.0f;
+ bool isDisplayedLastLine = false;
+
+ firstDisplayPositionY = __pTextColumn->GetFirstDisplayPositionYF();
+ totalHeight = __pTextColumn->GetTotalHeightF();
+
+ float lastLineHeight = GetLineHeightAtF(GetTotalLineCount()-1);
+
+ float remainingHeight = totalHeight - firstDisplayPositionY;
+ if (remainingHeight - __rect.height < lastLineHeight || remainingHeight <= __rect.height)
+ {
+ isDisplayedLastLine = true;
+ }
+
+ return isDisplayedLastLine;
+}
+
result
TextObject::SetAction(TextObjectActionType action)
{