: public Object
{
public:
- _Token(const String& text, Font* pEditFont);
+ _Token(void);
+ result Construct(const String& text, Font* pEditFont);
virtual ~_Token(void);
float GetTextPixelWidth(void) const;
wchar_t* GetText(void) const;
_VisualElement* __pVisualElement;
}; // _Token
-_Token::_Token(const String& text, Font* pEditFont)
+_Token::_Token(void)
: pTextObject(null)
, pFont(null)
, currTokenLength(0)
, __textPixelHeight(0.0f)
, __pVisualElement(null)
{
+}
+
+result
+_Token::Construct(const String& text, Font* pEditFont)
+{
result r = E_SUCCESS;
currTokenLength = text.GetLength();
float tokenFontSize = 0.0f;
pTextObject = new (std::nothrow) TextObject;
- SysTryReturnVoidResult(NID_UI_CTRL, pTextObject != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ SysTryReturnResult(NID_UI_CTRL, pTextObject != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
// for default initialize.
r = pTextObject->Construct();
GET_SHAPE_CONFIG(TOKENEDIT::TOKEN_TEXT_SIZE, _CONTROL_ORIENTATION_PORTRAIT, tokenFontSize);
pFont = _FontImpl::CloneN(*pEditFont);
- SysTryCatch(NID_UI_CTRL, pFont != null, , GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult()));
+ r = GetLastResult();
+ SysTryCatch(NID_UI_CTRL, pFont != null, , r, "[%s] Propagating.", GetErrorMessage(r));
(_FontImpl::GetInstance(*pFont))->SetStyle(FONT_STYLE_PLAIN);
(_FontImpl::GetInstance(*pFont))->SetSize(tokenFontSize);
SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
__pVisualElement = new (std::nothrow) _VisualElement;
- SysTryCatch(NID_UI_CTRL, __pVisualElement != null, , E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ SysTryCatch(NID_UI_CTRL, __pVisualElement != null, r = E_OUT_OF_MEMORY, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
r = __pVisualElement->Construct();
SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Failed to construct _VisualElement.", GetErrorMessage(r));
__pVisualElement->SetImplicitAnimationEnabled(false);
__pVisualElement->SetOpacity(0.0f);
- return;
+ return r;
CATCH:
delete pTextObject;
delete pFont;
pFont = null;
- return;
+ return r;
}
result
return E_INVALID_ARG;
}
- _Token* pToken = new (std::nothrow) _Token(inputTokenString, GetFont());
+ _Token* pToken = new (std::nothrow) _Token();
SysTryReturnResult(NID_UI_CTRL, pToken != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+ r = pToken->Construct(inputTokenString, GetFont());
+ SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Failed to construct token.", GetErrorMessage(r));
+
r = __pTokenList->Add(static_cast <Object&>(*pToken));
SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
result r = E_SUCCESS;
- _Token* pToken = new (std::nothrow) _Token(token, GetFont());
+ _Token* pToken = new (std::nothrow) _Token();
SysTryReturnResult(NID_UI_CTRL, pToken != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+ r = pToken->Construct(token, GetFont());
+ SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Failed to construct token.", GetErrorMessage(r));
+
r = __pTokenList->InsertAt(*pToken, index);
SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Failed to insert token.", GetErrorMessage(r));