}
__pTextBuffer[length] = 0;
- pTextObject->RemoveAll();
+ pTextObject->RemoveAll(true);
TextSimple* pSimpleText = new (std::nothrow)TextSimple(__pTextBuffer, length, TEXT_ELEMENT_SOURCE_TYPE_EXTERNAL, pFont);
SysTryCatch(NID_UI_CTRL, pSimpleText != null, , E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
, __isEditModeEnabled(true)
, __pDescriptionTextVisualElement(null)
, __pDescriptionTextTextObject(null)
- , __pDescriptionTextFont(null)
, __isTokenEditingFinished(false)
, __prevScrollValue(0.0f)
, __scrollValue(0.0f)
, __isTouchMoveInProgress(false)
, __isTitleSliding(false)
, __touchPressInfo(Point(-1, -1))
+ , __editContentFontSize(0.0f)
{
}
{
result r = E_SUCCESS;
float descriptionTextSize = 0.0f;
+ Font *pFont = null;
+ float editFontSize = 0.0f;
__pDescriptionTextTextObject = new (std::nothrow) TextObject();
SysTryReturnResult(NID_UI_CTRL, __pDescriptionTextTextObject != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
GET_SHAPE_CONFIG(TOKENEDIT::DESCRIPTION_TEXT_SIZE, _CONTROL_ORIENTATION_PORTRAIT, descriptionTextSize);
- __pDescriptionTextFont = new (std::nothrow) Font();
- SysTryCatch(NID_UI_CTRL, __pDescriptionTextFont != null, , E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ pFont = GetFont();
+ SysTryCatch(NID_UI_CTRL, pFont != null, , r, "[%s] Propagating.", GetErrorMessage(r));
- r = __pDescriptionTextFont->Construct(GetTitleFontFaceName(), FONT_STYLE_PLAIN, descriptionTextSize);
- SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
- r = __pDescriptionTextTextObject->SetFont(__pDescriptionTextFont, 0, __pDescriptionTextTextObject->GetTextLength());
+ editFontSize = GetTextSize();
+ (_FontImpl::GetInstance(*pFont))->SetSize(descriptionTextSize);
+
+ r = __pDescriptionTextTextObject->SetFont(pFont, 0, __pDescriptionTextTextObject->GetTextLength());
SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
+ (_FontImpl::GetInstance(*pFont))->SetSize(editFontSize);
+
return r;
CATCH:
delete __pDescriptionTextTextObject;
__pDescriptionTextTextObject = null;
- delete __pDescriptionTextFont;
- __pDescriptionTextFont = null;
-
return r;
}
delete __pDescriptionTextTextObject;
__pDescriptionTextTextObject = null;
- if (__pDescriptionTextFont)
- {
- delete __pDescriptionTextFont;
- __pDescriptionTextFont = null;
- }
-
if (__pTimingFunction)
{
delete __pTimingFunction;
float textSize = 0.0f;
GET_SHAPE_CONFIG(TOKENEDIT::TEXT_SIZE, orientation, textSize);
- Font* pFont = new (std::nothrow) Font();
- SysTryCatch(NID_UI_CTRL, pFont != null, , r = E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
-
- r = pFont->Construct(FONT_STYLE_PLAIN, textSize);
- SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
-
- SetFont(*pFont);
+ __editContentFontSize = textSize;
- delete pFont;
- pFont = null;
+ _EditPresenter::SetTextSize(__editContentFontSize);
__pTokenList = new (std::nothrow) Collection::LinkedList();
SysTryCatch(NID_UI_CTRL, __pTokenList != null, , r = E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
delete pTokenEditModel;
pTokenEditModel = null;
- delete pFont;
- pFont = null;
-
delete __pTokenBgBitmap;
__pTokenBgBitmap = null;
pTokenCanvas->Clear();
Color selectedTokenColor = GetTokenEditColor(EXPANDABLE_EDIT_AREA_TOKEN_STATUS_SELECTED);
+ Bitmap* pReplacementColorBackgroundBitmap = null;
if (__pTokenBgBitmap)
{
- Bitmap* pReplacementColorBackgroundBitmap = null;
pReplacementColorBackgroundBitmap = _BitmapImpl::GetColorReplacedBitmapN(*__pTokenBgBitmap, Color::GetColor(COLOR_ID_MAGENTA), selectedTokenColor);
if (_BitmapImpl::CheckNinePatchedBitmapStrictly(*pReplacementColorBackgroundBitmap))
delete pTokenCanvas;
pTokenCanvas = null;
+
+ delete pReplacementColorBackgroundBitmap;
}
}
else
SysTryReturnVoidResult(NID_UI_CTRL, pCanvas, E_SYSTEM, "[E_SYSTEM] A system error has occurred. Failed to get visual element of Control.");
_EditPresenter::DrawText(*pCanvas);
+
+ delete pCanvas;
+ pCanvas = null;
}
}
}
}
else
{
- //DrawText(canvas);
DrawText();
InitializeCursor();
}
{
SysTryReturnResult(NID_UI_CTRL, !__isEditingToken, E_SYSTEM, "An invalid argument is given.");
- //DrawText(canvas);
DrawText();
InitializeCursor();
}
if (__isTokenEditingFinished)
{
- _EditPresenter::SetDefaultFont();
-
__isEditingToken = false;
__edittingTokenIndex = -1;
+ _EditPresenter::SetTextSize(__editContentFontSize);
+
__isTokenEditingFinished = false;
}
r = __pTokenList->InsertAt(*pToken, index);
SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Failed to insert token.", GetErrorMessage(r));
- if (__isEditingToken)
- {
- _EditPresenter::SetFont(*(pToken->pFont));
- }
-
r = ClearText();
r = CalculateTokenPositionFromIndex(index);
r = ClearText();
SysTryReturnResult(NID_UI_CTRL, r == E_SUCCESS, E_SYSTEM, "Failed to clear text object.");
- _EditPresenter::SetDefaultFont();
+ _EditPresenter::SetTextSize(__editContentFontSize);
}
r = __pTokenList->RemoveAt(index, true);
SysAssertf(__pDescriptionTextTextObject != null, "The TextObject instance is null.");
- __pDescriptionTextTextObject->RemoveAll();
+ __pDescriptionTextTextObject->RemoveAll(true);
pSimpleText = new (std::nothrow)TextSimple(pTempString, length, TEXT_ELEMENT_SOURCE_TYPE_INTERNAL);
__pDescriptionTextTextObject->AppendElement(*pSimpleText);
float descriptionTextSize = 0.0f;
GET_SHAPE_CONFIG(TOKENEDIT::DESCRIPTION_TEXT_SIZE, _CONTROL_ORIENTATION_PORTRAIT, descriptionTextSize);
- pDescriptionFont = new (std::nothrow) Font();
- SysTryReturn(NID_UI_CTRL, pDescriptionFont != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
-
- r = pDescriptionFont->Construct(GetTitleFontFaceName(), FONT_STYLE_PLAIN, descriptionTextSize);
-
- SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
- r = __pDescriptionTextTextObject->SetFont(pDescriptionFont, 0, __pDescriptionTextTextObject->GetTextLength());
-
- SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
+ pDescriptionFont = GetFont();
+ if (pDescriptionFont)
+ {
+ float editFontSize = GetTextSize();
+ (_FontImpl::GetInstance(*pDescriptionFont))->SetSize(descriptionTextSize);
- delete __pDescriptionTextFont;
- __pDescriptionTextFont = null;
+ r = __pDescriptionTextTextObject->SetFont(pDescriptionFont, 0, __pDescriptionTextTextObject->GetTextLength());
+ SysTryReturn(NID_UI_CTRL, r == E_SUCCESS, E_SYSTEM, E_SYSTEM, "[E_SYSTEM] A system error has occurred. SetFont failed");
- __pDescriptionTextFont = pDescriptionFont;
+ (_FontImpl::GetInstance(*pDescriptionFont))->SetSize(editFontSize);
+ }
}
pRootElement = __pTokenEdit->GetVisualElement();
__pDescriptionTextTextObject->Draw(*_CanvasImpl::GetInstance(*pDescriptionTextCanvas));
delete pDescriptionTextCanvas;
- return true;
-CATCH:
- if (pDescriptionFont == __pDescriptionTextFont)
- {
- __pDescriptionTextFont = null;
- }
- delete pDescriptionFont;
+ return true;
+CATCH:
if (__pDescriptionTextVisualElement != null)
{
__pDescriptionTextVisualElement->Destroy();
float tokenHeight = 0.0f;
float tokenVerticalSpacing = 0.0f;
float tokenTextLeftMargin = 0.0f;
+ float tokenFontSize = 0.0f;
_ControlOrientation orientation = __pTokenEdit->GetOrientation();
GET_SHAPE_CONFIG(TOKENEDIT::TOKEN_HEIGHT, orientation, tokenHeight);
GET_SHAPE_CONFIG(TOKENEDIT::TOKEN_VERTICAL_SPACING, orientation, tokenVerticalSpacing);
GET_SHAPE_CONFIG(TOKENEDIT::TOKEN_TEXT_LEFT_MARGIN, orientation, tokenTextLeftMargin);
+ GET_SHAPE_CONFIG(TOKENEDIT::TOKEN_TEXT_SIZE, orientation, tokenFontSize);
_Token* pToken = static_cast <_Token*>(__pTokenList->GetAt(index));
SysTryReturnResult(NID_UI_CTRL, pToken != null, E_SYSTEM, "A system error has occurred. The _Token instance is null");
{
SetText(pToken->GetText());
}
- pToken->pTextObject->RemoveAll();
+ pToken->pTextObject->RemoveAll(true);
}
- _EditPresenter::SetFont(*(pToken->pFont));
+
+ __editContentFontSize = GetTextSize();
+ _EditPresenter::SetTextSize(tokenFontSize);
SetTextBounds(tempTextDspRect);
__isEditingToken = false;
__edittingTokenIndex = -1;
- _EditPresenter::SetDefaultFont();
+ _EditPresenter::SetTextSize(__editContentFontSize);
__isTokenEditingFinished = false;
ClearText();
return _EditPresenter::SetFlexBounds(bounds);
}
+result
+_TokenEditPresenter::SetTextSize(const int size)
+{
+ result r = E_SUCCESS;
+ if (__isEditingToken)
+ {
+ __editContentFontSize = size;
+ }
+ else
+ {
+ r = _EditPresenter::SetTextSize(size);
+ }
+
+ return r;
+}
+
+result
+_TokenEditPresenter::SetTextSize(const float size)
+{
+ result r = E_SUCCESS;
+ if (__isEditingToken)
+ {
+ __editContentFontSize = size;
+ }
+ else
+ {
+ r = _EditPresenter::SetTextSize(size);
+ }
+
+ return r;
+}
+
bool
_TokenEditPresenter::OnTouchPressed(const _Control& source, const _TouchInfo& touchinfo)
{
__pressedTokenIndex = -1;
__edittingTokenIndex = -1;
__isEditingToken = false;
- _EditPresenter::SetDefaultFont();
+ _EditPresenter::SetTextSize(__editContentFontSize);
__isTokenEditingFinished = false;
AdjustFlexibleHeight();