X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-TextEditor.cpp;h=9db4289d04677e30cac9db8759abcab6dab805b8;hp=7701e6105b63622e206f5c0218a19083b739376f;hb=6a219d0bbcfd016e24b5466d5fb1a666c92feae5;hpb=fb87251cfeff34418a36798700b81786e522018a diff --git a/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp b/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp index 7701e61..9db4289 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021 Samsung Electronics Co., Ltd. + * Copyright (c) 2022 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,20 +15,22 @@ * */ -#include -#include -#include -#include -#include -#include -#include -#include -#include #include #include #include #include #include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include "test-text-geometry-utils.h" using namespace Dali; @@ -46,7 +48,6 @@ void dali_texteditor_cleanup(void) namespace { - const char* const PROPERTY_NAME_RENDERING_BACKEND = "renderingBackend"; const char* const PROPERTY_NAME_TEXT = "text"; const char* const PROPERTY_NAME_TEXT_COLOR = "textColor"; @@ -78,83 +79,85 @@ const char* const PROPERTY_NAME_INPUT_FONT_FAMILY = "inputFon const char* const PROPERTY_NAME_INPUT_FONT_STYLE = "inputFontStyle"; const char* const PROPERTY_NAME_INPUT_POINT_SIZE = "inputPointSize"; -const char* const PROPERTY_NAME_LINE_SPACING = "lineSpacing"; -const char* const PROPERTY_NAME_INPUT_LINE_SPACING = "inputLineSpacing"; -const char* const PROPERTY_NAME_UNDERLINE = "underline"; -const char* const PROPERTY_NAME_INPUT_UNDERLINE = "inputUnderline"; -const char* const PROPERTY_NAME_SHADOW = "shadow"; -const char* const PROPERTY_NAME_INPUT_SHADOW = "inputShadow"; -const char* const PROPERTY_NAME_EMBOSS = "emboss"; -const char* const PROPERTY_NAME_INPUT_EMBOSS = "inputEmboss"; -const char* const PROPERTY_NAME_OUTLINE = "outline"; -const char* const PROPERTY_NAME_INPUT_OUTLINE = "inputOutline"; -const char* const PROPERTY_NAME_STRIKETHROUGH = "strikethrough"; -const char* const PROPERTY_NAME_INPUT_STRIKETHROUGH = "inputStrikethrough"; - -const char* const PROPERTY_NAME_SMOOTH_SCROLL = "smoothScroll"; -const char* const PROPERTY_NAME_SMOOTH_SCROLL_DURATION = "smoothScrollDuration"; -const char* const PROPERTY_NAME_ENABLE_SCROLL_BAR = "enableScrollBar"; -const char* const PROPERTY_NAME_SCROLL_BAR_SHOW_DURATION = "scrollBarShowDuration"; -const char* const PROPERTY_NAME_SCROLL_BAR_FADE_DURATION = "scrollBarFadeDuration"; -const char* const PROPERTY_NAME_PIXEL_SIZE = "pixelSize"; -const char* const PROPERTY_NAME_LINE_COUNT = "lineCount"; -const char* const PROPERTY_NAME_PLACEHOLDER_TEXT = "placeholderText"; -const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR = "placeholderTextColor"; -const char* const PROPERTY_NAME_ENABLE_SELECTION = "enableSelection"; -const char* const PROPERTY_NAME_PLACEHOLDER = "placeholder"; -const char* const PROPERTY_NAME_ENABLE_SHIFT_SELECTION = "enableShiftSelection"; -const char* const PROPERTY_NAME_ENABLE_GRAB_HANDLE = "enableGrabHandle"; -const char* const PROPERTY_NAME_MATCH_SYSTEM_LANGUAGE_DIRECTION = "matchSystemLanguageDirection"; -const char* const PROPERTY_NAME_MAX_LENGTH = "maxLength"; -const char* const PROPERTY_NAME_FONT_SIZE_SCALE = "fontSizeScale"; -const char* const PROPERTY_NAME_GRAB_HANDLE_COLOR = "grabHandleColor"; -const char* const PROPERTY_NAME_ENABLE_GRAB_HANDLE_POPUP = "enableGrabHandlePopup"; -const char* const PROPERTY_NAME_INPUT_METHOD_SETTINGS = "inputMethodSettings"; -const char* const PROPERTY_NAME_INPUT_FILTER = "inputFilter"; - -const Vector4 PLACEHOLDER_TEXT_COLOR( 0.8f, 0.8f, 0.8f, 0.8f ); -const Dali::Vector4 LIGHT_BLUE( 0.75f, 0.96f, 1.f, 1.f ); // The text highlight color. +const char* const PROPERTY_NAME_LINE_SPACING = "lineSpacing"; +const char* const PROPERTY_NAME_INPUT_LINE_SPACING = "inputLineSpacing"; +const char* const PROPERTY_NAME_UNDERLINE = "underline"; +const char* const PROPERTY_NAME_INPUT_UNDERLINE = "inputUnderline"; +const char* const PROPERTY_NAME_SHADOW = "shadow"; +const char* const PROPERTY_NAME_INPUT_SHADOW = "inputShadow"; +const char* const PROPERTY_NAME_EMBOSS = "emboss"; +const char* const PROPERTY_NAME_INPUT_EMBOSS = "inputEmboss"; +const char* const PROPERTY_NAME_OUTLINE = "outline"; +const char* const PROPERTY_NAME_INPUT_OUTLINE = "inputOutline"; +const char* const PROPERTY_NAME_STRIKETHROUGH = "strikethrough"; +const char* const PROPERTY_NAME_INPUT_STRIKETHROUGH = "inputStrikethrough"; + +const char* const PROPERTY_NAME_SMOOTH_SCROLL = "smoothScroll"; +const char* const PROPERTY_NAME_SMOOTH_SCROLL_DURATION = "smoothScrollDuration"; +const char* const PROPERTY_NAME_ENABLE_SCROLL_BAR = "enableScrollBar"; +const char* const PROPERTY_NAME_SCROLL_BAR_SHOW_DURATION = "scrollBarShowDuration"; +const char* const PROPERTY_NAME_SCROLL_BAR_FADE_DURATION = "scrollBarFadeDuration"; +const char* const PROPERTY_NAME_PIXEL_SIZE = "pixelSize"; +const char* const PROPERTY_NAME_LINE_COUNT = "lineCount"; +const char* const PROPERTY_NAME_PLACEHOLDER_TEXT = "placeholderText"; +const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR = "placeholderTextColor"; +const char* const PROPERTY_NAME_ENABLE_SELECTION = "enableSelection"; +const char* const PROPERTY_NAME_PLACEHOLDER = "placeholder"; +const char* const PROPERTY_NAME_ENABLE_SHIFT_SELECTION = "enableShiftSelection"; +const char* const PROPERTY_NAME_ENABLE_GRAB_HANDLE = "enableGrabHandle"; +const char* const PROPERTY_NAME_MATCH_SYSTEM_LANGUAGE_DIRECTION = "matchSystemLanguageDirection"; +const char* const PROPERTY_NAME_MAX_LENGTH = "maxLength"; +const char* const PROPERTY_NAME_FONT_SIZE_SCALE = "fontSizeScale"; +const char* const PROPERTY_NAME_ENABLE_FONT_SIZE_SCALE = "enableFontSizeScale"; +const char* const PROPERTY_NAME_GRAB_HANDLE_COLOR = "grabHandleColor"; +const char* const PROPERTY_NAME_ENABLE_GRAB_HANDLE_POPUP = "enableGrabHandlePopup"; +const char* const PROPERTY_NAME_INPUT_METHOD_SETTINGS = "inputMethodSettings"; +const char* const PROPERTY_NAME_INPUT_FILTER = "inputFilter"; + +const Vector4 PLACEHOLDER_TEXT_COLOR(0.8f, 0.8f, 0.8f, 0.8f); +const Dali::Vector4 LIGHT_BLUE(0.75f, 0.96f, 1.f, 1.f); // The text highlight color. const float RENDER_FRAME_INTERVAL = 16.66f; const unsigned int DEFAULT_FONT_SIZE = 1152u; -const std::string DEFAULT_FONT_DIR( "/resources/fonts" ); +const std::string DEFAULT_FONT_DIR("/resources/fonts"); -const int KEY_A_CODE = 38; -const int KEY_D_CODE = 40; -const int KEY_C_CODE = 54; -const int KEY_V_CODE = 55; -const int KEY_X_CODE = 53; +const int KEY_A_CODE = 38; +const int KEY_D_CODE = 40; +const int KEY_C_CODE = 54; +const int KEY_V_CODE = 55; +const int KEY_X_CODE = 53; const int KEY_WHITE_SPACE_CODE = 65; -const int KEY_SHIFT_MODIFIER = 257; +const int KEY_SHIFT_MODIFIER = 257; const int KEY_CONTROL_MODIFIER = 258; -const char* HANDLE_IMAGE_FILE_NAME = TEST_RESOURCE_DIR "/insertpoint-icon.png"; -const char* HANDLE_LEFT_SELECTION_FILE_NAME = TEST_RESOURCE_DIR "/selection_handle_drop_left.png"; +const char* HANDLE_IMAGE_FILE_NAME = TEST_RESOURCE_DIR "/insertpoint-icon.png"; +const char* HANDLE_LEFT_SELECTION_FILE_NAME = TEST_RESOURCE_DIR "/selection_handle_drop_left.png"; const char* HANDLE_RIGHT_SELECTION_FILE_NAME = TEST_RESOURCE_DIR "/selection_handle_drop_right.png"; const std::string DEFAULT_DEVICE_NAME("hwKeyboard"); -static bool gSelectionChangedCallbackCalled; -static uint32_t oldSelectionStart; -static uint32_t oldSelectionEnd; -static bool gSelectionClearedCallbackCalled; -static bool gAnchorClickedCallBackCalled; -static bool gAnchorClickedCallBackNotCalled; -static bool gTextChangedCallBackCalled; -static bool gInputFilteredAcceptedCallbackCalled; -static bool gInputFilteredRejectedCallbackCalled; -static bool gInputStyleChangedCallbackCalled; -static bool gMaxCharactersCallBackCalled; -static bool gCursorPositionChangedCallbackCalled; -static uint32_t oldCursorPos; +static bool gSelectionChangedCallbackCalled; +static uint32_t oldSelectionStart; +static uint32_t oldSelectionEnd; +static bool gSelectionClearedCallbackCalled; +static bool gSelectionStartedCallbackCalled; +static bool gAnchorClickedCallBackCalled; +static bool gAnchorClickedCallBackNotCalled; +static bool gTextChangedCallBackCalled; +static bool gInputFilteredAcceptedCallbackCalled; +static bool gInputFilteredRejectedCallbackCalled; +static bool gInputStyleChangedCallbackCalled; +static bool gMaxCharactersCallBackCalled; +static bool gCursorPositionChangedCallbackCalled; +static uint32_t oldCursorPos; static Dali::Toolkit::TextEditor::InputStyle::Mask gInputStyleMask; struct CallbackFunctor { CallbackFunctor(bool* callbackFlag) - : mCallbackFlag( callbackFlag ) + : mCallbackFlag(callbackFlag) { } @@ -165,6 +168,13 @@ struct CallbackFunctor bool* mCallbackFlag; }; +static void TestSelectionStartedCallback(TextEditor control) +{ + tet_infoline(" TestSelectionStartedCallback"); + + gSelectionStartedCallbackCalled = true; +} + static void TestSelectionClearedCallback(TextEditor control) { tet_infoline(" TestSelectionClearedCallback"); @@ -177,8 +187,8 @@ static void TestSelectionChangedCallback(TextEditor control, uint32_t oldStart, tet_infoline(" TestSelectionChangedCallback"); gSelectionChangedCallbackCalled = true; - oldSelectionStart = oldStart; - oldSelectionEnd = oldEnd; + oldSelectionStart = oldStart; + oldSelectionEnd = oldEnd; } static void TestAnchorClickedCallback(TextEditor control, const char* href, unsigned int hrefLength) @@ -187,36 +197,36 @@ static void TestAnchorClickedCallback(TextEditor control, const char* href, unsi gAnchorClickedCallBackNotCalled = false; - if (!strcmp(href, "https://www.tizen.org") && hrefLength == strlen(href)) + if(!strcmp(href, "https://www.tizen.org") && hrefLength == strlen(href)) { gAnchorClickedCallBackCalled = true; } } -static void TestCursorPositionChangedCallback( TextEditor control, unsigned int oldPos ) +static void TestCursorPositionChangedCallback(TextEditor control, unsigned int oldPos) { tet_infoline(" TestCursorPositionChangedCallback"); gCursorPositionChangedCallbackCalled = true; - oldCursorPos = oldPos; + oldCursorPos = oldPos; } -static void TestTextChangedCallback( TextEditor control ) +static void TestTextChangedCallback(TextEditor control) { tet_infoline(" TestTextChangedCallback"); gTextChangedCallBackCalled = true; } -static void TestInputStyleChangedCallback( TextEditor control, TextEditor::InputStyle::Mask mask ) +static void TestInputStyleChangedCallback(TextEditor control, TextEditor::InputStyle::Mask mask) { tet_infoline(" TestInputStyleChangedCallback"); gInputStyleChangedCallbackCalled = true; - gInputStyleMask = mask; + gInputStyleMask = mask; } -static void TestMaxLengthReachedCallback( TextEditor control ) +static void TestMaxLengthReachedCallback(TextEditor control) { tet_infoline(" TestMaxLengthReachedCallback"); @@ -238,112 +248,112 @@ static void TestInputFilteredCallback(TextEditor control, Toolkit::InputFilter:: } // Generate a KeyEvent to send to Core. -Integration::KeyEvent GenerateKey( const std::string& keyName, - const std::string& logicalKey, - const std::string& keyString, - int keyCode, - int keyModifier, - unsigned long timeStamp, - const Integration::KeyEvent::State& keyState, - const std::string& compose = "", - const std::string& deviceName = DEFAULT_DEVICE_NAME, - const Device::Class::Type& deviceClass = Device::Class::NONE, - const Device::Subclass::Type& deviceSubclass = Device::Subclass::NONE ) +Integration::KeyEvent GenerateKey(const std::string& keyName, + const std::string& logicalKey, + const std::string& keyString, + int keyCode, + int keyModifier, + unsigned long timeStamp, + const Integration::KeyEvent::State& keyState, + const std::string& compose = "", + const std::string& deviceName = DEFAULT_DEVICE_NAME, + const Device::Class::Type& deviceClass = Device::Class::NONE, + const Device::Subclass::Type& deviceSubclass = Device::Subclass::NONE) { - return Integration::KeyEvent( keyName, - logicalKey, - keyString, - keyCode, - keyModifier, - timeStamp, - keyState, - compose, - deviceName, - deviceClass, - deviceSubclass ); + return Integration::KeyEvent(keyName, + logicalKey, + keyString, + keyCode, + keyModifier, + timeStamp, + keyState, + compose, + deviceName, + deviceClass, + deviceSubclass); } -Dali::Integration::Point GetPointDownInside( Vector2& pos ) +Dali::Integration::Point GetPointDownInside(Vector2& pos) { Dali::Integration::Point point; - point.SetState( PointState::DOWN ); - point.SetScreenPosition( pos ); + point.SetState(PointState::DOWN); + point.SetScreenPosition(pos); return point; } -Dali::Integration::Point GetPointUpInside( Vector2& pos ) +Dali::Integration::Point GetPointUpInside(Vector2& pos) { Dali::Integration::Point point; - point.SetState( PointState::UP ); - point.SetScreenPosition( pos ); + point.SetState(PointState::UP); + point.SetScreenPosition(pos); return point; } -bool DaliTestCheckMaps( const Property::Map& fontStyleMapGet, const Property::Map& fontStyleMapSet ) +bool DaliTestCheckMaps(const Property::Map& fontStyleMapGet, const Property::Map& fontStyleMapSet) { - if( fontStyleMapGet.Count() == fontStyleMapSet.Count() ) + if(fontStyleMapGet.Count() == fontStyleMapSet.Count()) { - for( unsigned int index = 0u; index < fontStyleMapGet.Count(); ++index ) + for(unsigned int index = 0u; index < fontStyleMapGet.Count(); ++index) { - const KeyValuePair& valueGet = fontStyleMapGet.GetKeyValue( index ); + const KeyValuePair& valueGet = fontStyleMapGet.GetKeyValue(index); Property::Value* valueSet = NULL; - if ( valueGet.first.type == Property::Key::INDEX ) + if(valueGet.first.type == Property::Key::INDEX) { - valueSet = fontStyleMapSet.Find( valueGet.first.indexKey ); + valueSet = fontStyleMapSet.Find(valueGet.first.indexKey); } else { // Get Key is a string so searching Set Map for a string key - valueSet = fontStyleMapSet.Find( valueGet.first.stringKey ); + valueSet = fontStyleMapSet.Find(valueGet.first.stringKey); } - if( NULL != valueSet ) + if(NULL != valueSet) { - if( valueSet->GetType() == Dali::Property::STRING && ( valueGet.second.Get() != valueSet->Get() ) ) + if(valueSet->GetType() == Dali::Property::STRING && (valueGet.second.Get() != valueSet->Get())) { - tet_printf( "Value got : [%s], expected : [%s]", valueGet.second.Get().c_str(), valueSet->Get().c_str() ); + tet_printf("Value got : [%s], expected : [%s]", valueGet.second.Get().c_str(), valueSet->Get().c_str()); return false; } - else if( valueSet->GetType() == Dali::Property::BOOLEAN && ( valueGet.second.Get() != valueSet->Get() ) ) + else if(valueSet->GetType() == Dali::Property::BOOLEAN && (valueGet.second.Get() != valueSet->Get())) { - tet_printf( "Value got : [%d], expected : [%d]", valueGet.second.Get(), valueSet->Get() ); + tet_printf("Value got : [%d], expected : [%d]", valueGet.second.Get(), valueSet->Get()); return false; } - else if( valueSet->GetType() == Dali::Property::INTEGER && ( valueGet.second.Get() != valueSet->Get() ) ) + else if(valueSet->GetType() == Dali::Property::INTEGER && (valueGet.second.Get() != valueSet->Get())) { - tet_printf( "Value got : [%d], expected : [%d]", valueGet.second.Get(), valueSet->Get() ); + tet_printf("Value got : [%d], expected : [%d]", valueGet.second.Get(), valueSet->Get()); return false; } - else if( valueSet->GetType() == Dali::Property::FLOAT && ( valueGet.second.Get() != valueSet->Get() ) ) + else if(valueSet->GetType() == Dali::Property::FLOAT && (valueGet.second.Get() != valueSet->Get())) { - tet_printf( "Value got : [%f], expected : [%f]", valueGet.second.Get(), valueSet->Get() ); + tet_printf("Value got : [%f], expected : [%f]", valueGet.second.Get(), valueSet->Get()); return false; } - else if( valueSet->GetType() == Dali::Property::VECTOR2 && ( valueGet.second.Get() != valueSet->Get() ) ) + else if(valueSet->GetType() == Dali::Property::VECTOR2 && (valueGet.second.Get() != valueSet->Get())) { Vector2 vector2Get = valueGet.second.Get(); Vector2 vector2Set = valueSet->Get(); - tet_printf( "Value got : [%f, %f], expected : [%f, %f]", vector2Get.x, vector2Get.y, vector2Set.x, vector2Set.y ); + tet_printf("Value got : [%f, %f], expected : [%f, %f]", vector2Get.x, vector2Get.y, vector2Set.x, vector2Set.y); return false; } - else if( valueSet->GetType() == Dali::Property::VECTOR4 && ( valueGet.second.Get() != valueSet->Get() ) ) + else if(valueSet->GetType() == Dali::Property::VECTOR4 && (valueGet.second.Get() != valueSet->Get())) { Vector4 vector4Get = valueGet.second.Get(); Vector4 vector4Set = valueSet->Get(); - tet_printf( "Value got : [%f, %f, %f, %f], expected : [%f, %f, %f, %f]", vector4Get.r, vector4Get.g, vector4Get.b, vector4Get.a, vector4Set.r, vector4Set.g, vector4Set.b, vector4Set.a ); + tet_printf("Value got : [%f, %f, %f, %f], expected : [%f, %f, %f, %f]", vector4Get.r, vector4Get.g, vector4Get.b, vector4Get.a, vector4Set.r, vector4Set.g, vector4Set.b, vector4Set.a); return false; } } else { - if ( valueGet.first.type == Property::Key::INDEX ) + if(valueGet.first.type == Property::Key::INDEX) { - tet_printf( " The key %d doesn't exist.", valueGet.first.indexKey ); + tet_printf(" The key %d doesn't exist.", valueGet.first.indexKey); } else { - tet_printf( " The key %s doesn't exist.", valueGet.first.stringKey.c_str() ); + tet_printf(" The key %s doesn't exist.", valueGet.first.stringKey.c_str()); } return false; } @@ -357,18 +367,18 @@ class ScrollStateChangeCallback : public Dali::ConnectionTracker { public: ScrollStateChangeCallback(bool& startedCalled, bool& finishedCalled) - : mStartedCalled( startedCalled ), - mFinishedCalled( finishedCalled ) + : mStartedCalled(startedCalled), + mFinishedCalled(finishedCalled) { } - void Callback( TextEditor editor, TextEditor::Scroll::Type type ) + void Callback(TextEditor editor, TextEditor::Scroll::Type type) { - if( type == TextEditor::Scroll::STARTED ) + if(type == TextEditor::Scroll::STARTED) { mStartedCalled = true; } - else if( type == TextEditor::Scroll::FINISHED ) + else if(type == TextEditor::Scroll::FINISHED) { mFinishedCalled = true; } @@ -385,7 +395,7 @@ int UtcDaliToolkitTextEditorConstructorP(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorConstructorP"); TextEditor textEditor; - DALI_TEST_CHECK( !textEditor ); + DALI_TEST_CHECK(!textEditor); END_TEST; } @@ -394,7 +404,7 @@ int UtcDaliToolkitTextEditorNewP(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorNewP"); TextEditor textEditor = TextEditor::New(); - DALI_TEST_CHECK( textEditor ); + DALI_TEST_CHECK(textEditor); END_TEST; } @@ -403,13 +413,13 @@ int UtcDaliToolkitTextEditorDownCastP(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorDownCastP"); TextEditor textEditor1 = TextEditor::New(); - BaseHandle object( textEditor1 ); + BaseHandle object(textEditor1); - TextEditor textEditor2 = TextEditor::DownCast( object ); - DALI_TEST_CHECK( textEditor2 ); + TextEditor textEditor2 = TextEditor::DownCast(object); + DALI_TEST_CHECK(textEditor2); - TextEditor textEditor3 = DownCast< TextEditor >( object ); - DALI_TEST_CHECK( textEditor3 ); + TextEditor textEditor3 = DownCast(object); + DALI_TEST_CHECK(textEditor3); END_TEST; } @@ -418,11 +428,11 @@ int UtcDaliToolkitTextEditorDownCastN(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorDownCastN"); BaseHandle uninitializedObject; - TextEditor textEditor1 = TextEditor::DownCast( uninitializedObject ); - DALI_TEST_CHECK( !textEditor1 ); + TextEditor textEditor1 = TextEditor::DownCast(uninitializedObject); + DALI_TEST_CHECK(!textEditor1); - TextEditor textEditor2 = DownCast< TextEditor >( uninitializedObject ); - DALI_TEST_CHECK( !textEditor2 ); + TextEditor textEditor2 = DownCast(uninitializedObject); + DALI_TEST_CHECK(!textEditor2); END_TEST; } @@ -431,11 +441,11 @@ int UtcDaliToolkitTextEditorCopyConstructorP(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorCopyConstructorP"); TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Test" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test"); - TextEditor copy( textEditor ); - DALI_TEST_CHECK( copy ); - DALI_TEST_CHECK( copy.GetProperty( TextEditor::Property::TEXT ) == textEditor.GetProperty( TextEditor::Property::TEXT ) ); + TextEditor copy(textEditor); + DALI_TEST_CHECK(copy); + DALI_TEST_CHECK(copy.GetProperty(TextEditor::Property::TEXT) == textEditor.GetProperty(TextEditor::Property::TEXT)); END_TEST; } @@ -444,14 +454,14 @@ int UtcDaliTextEditorMoveConstructor(void) ToolkitTestApplication application; TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Test" ); - DALI_TEST_CHECK( textEditor.GetProperty( TextEditor::Property::TEXT ) == "Test" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test"); + DALI_TEST_CHECK(textEditor.GetProperty(TextEditor::Property::TEXT) == "Test"); - TextEditor moved = std::move( textEditor ); - DALI_TEST_CHECK( moved ); - DALI_TEST_EQUALS( 1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION ); - DALI_TEST_CHECK( moved.GetProperty( TextEditor::Property::TEXT ) == "Test" ); - DALI_TEST_CHECK( !textEditor ); + TextEditor moved = std::move(textEditor); + DALI_TEST_CHECK(moved); + DALI_TEST_EQUALS(1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION); + DALI_TEST_CHECK(moved.GetProperty(TextEditor::Property::TEXT) == "Test"); + DALI_TEST_CHECK(!textEditor); END_TEST; } @@ -461,11 +471,11 @@ int UtcDaliToolkitTextEditorAssignmentOperatorP(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorAssignmentOperatorP"); TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Test" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test"); TextEditor copy = textEditor; - DALI_TEST_CHECK( copy ); - DALI_TEST_CHECK( copy.GetProperty( TextEditor::Property::TEXT ) == textEditor.GetProperty( TextEditor::Property::TEXT ) ); + DALI_TEST_CHECK(copy); + DALI_TEST_CHECK(copy.GetProperty(TextEditor::Property::TEXT) == textEditor.GetProperty(TextEditor::Property::TEXT)); END_TEST; } @@ -474,15 +484,15 @@ int UtcDaliTextEditorMoveAssignment(void) ToolkitTestApplication application; TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Test" ); - DALI_TEST_CHECK( textEditor.GetProperty( TextEditor::Property::TEXT ) == "Test" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test"); + DALI_TEST_CHECK(textEditor.GetProperty(TextEditor::Property::TEXT) == "Test"); TextEditor moved; - moved = std::move( textEditor ); - DALI_TEST_CHECK( moved ); - DALI_TEST_EQUALS( 1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION ); - DALI_TEST_CHECK( moved.GetProperty( TextEditor::Property::TEXT ) == "Test" ); - DALI_TEST_CHECK( !textEditor ); + moved = std::move(textEditor); + DALI_TEST_CHECK(moved); + DALI_TEST_EQUALS(1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION); + DALI_TEST_CHECK(moved.GetProperty(TextEditor::Property::TEXT) == "Test"); + DALI_TEST_CHECK(!textEditor); END_TEST; } @@ -492,7 +502,7 @@ int UtcDaliTextEditorNewP(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorNewP"); TextEditor textEditor = TextEditor::New(); - DALI_TEST_CHECK( textEditor ); + DALI_TEST_CHECK(textEditor); END_TEST; } @@ -502,89 +512,90 @@ int UtcDaliTextEditorGetPropertyP(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorGetPropertyP"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); // Check Property Indices are correct - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_RENDERING_BACKEND ) == DevelTextEditor::Property::RENDERING_BACKEND ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_TEXT ) == TextEditor::Property::TEXT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_TEXT_COLOR ) == TextEditor::Property::TEXT_COLOR ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_FONT_FAMILY ) == TextEditor::Property::FONT_FAMILY ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_FONT_STYLE ) == TextEditor::Property::FONT_STYLE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_POINT_SIZE ) == TextEditor::Property::POINT_SIZE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_HORIZONTAL_ALIGNMENT ) == TextEditor::Property::HORIZONTAL_ALIGNMENT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SCROLL_THRESHOLD ) == TextEditor::Property::SCROLL_THRESHOLD ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SCROLL_SPEED ) == TextEditor::Property::SCROLL_SPEED ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_PRIMARY_CURSOR_COLOR ) == TextEditor::Property::PRIMARY_CURSOR_COLOR ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SECONDARY_CURSOR_COLOR ) == TextEditor::Property::SECONDARY_CURSOR_COLOR ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_CURSOR_BLINK ) == TextEditor::Property::ENABLE_CURSOR_BLINK ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_CURSOR_BLINK_INTERVAL ) == TextEditor::Property::CURSOR_BLINK_INTERVAL ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_CURSOR_BLINK_DURATION ) == TextEditor::Property::CURSOR_BLINK_DURATION ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_CURSOR_WIDTH ) == TextEditor::Property::CURSOR_WIDTH ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_IMAGE ) == TextEditor::Property::GRAB_HANDLE_IMAGE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE ) == TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_IMAGE_LEFT ) == TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT ) == TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT ) == TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ) == TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_LEFT ) == TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_RIGHT ) == TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR ) == TextEditor::Property::SELECTION_HIGHLIGHT_COLOR ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_DECORATION_BOUNDING_BOX ) == TextEditor::Property::DECORATION_BOUNDING_BOX ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_MARKUP ) == TextEditor::Property::ENABLE_MARKUP ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_COLOR ) == TextEditor::Property::INPUT_COLOR ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_FONT_FAMILY ) == TextEditor::Property::INPUT_FONT_FAMILY ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_FONT_STYLE ) == TextEditor::Property::INPUT_FONT_STYLE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_POINT_SIZE ) == TextEditor::Property::INPUT_POINT_SIZE ); - - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_LINE_SPACING ) == TextEditor::Property::LINE_SPACING ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_LINE_SPACING ) == TextEditor::Property::INPUT_LINE_SPACING ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_UNDERLINE ) == TextEditor::Property::UNDERLINE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_UNDERLINE ) == TextEditor::Property::INPUT_UNDERLINE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SHADOW ) == TextEditor::Property::SHADOW ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_SHADOW ) == TextEditor::Property::INPUT_SHADOW ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_EMBOSS ) == TextEditor::Property::EMBOSS ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_EMBOSS ) == TextEditor::Property::INPUT_EMBOSS ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_OUTLINE ) == TextEditor::Property::OUTLINE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_OUTLINE ) == TextEditor::Property::INPUT_OUTLINE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_STRIKETHROUGH ) == DevelTextEditor::Property::STRIKETHROUGH ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_STRIKETHROUGH ) == DevelTextEditor::Property::INPUT_STRIKETHROUGH ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SMOOTH_SCROLL ) == TextEditor::Property::SMOOTH_SCROLL ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SMOOTH_SCROLL_DURATION ) == TextEditor::Property::SMOOTH_SCROLL_DURATION ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_SCROLL_BAR ) == TextEditor::Property::ENABLE_SCROLL_BAR ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SCROLL_BAR_SHOW_DURATION ) == TextEditor::Property::SCROLL_BAR_SHOW_DURATION ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_SCROLL_BAR_FADE_DURATION ) == TextEditor::Property::SCROLL_BAR_FADE_DURATION ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_PIXEL_SIZE ) == TextEditor::Property::PIXEL_SIZE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_LINE_COUNT) == TextEditor::Property::LINE_COUNT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_SELECTION ) == TextEditor::Property::ENABLE_SELECTION ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_PLACEHOLDER ) == TextEditor::Property::PLACEHOLDER ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_FONT_SIZE_SCALE ) == DevelTextEditor::Property::FONT_SIZE_SCALE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_PLACEHOLDER_TEXT ) == DevelTextEditor::Property::PLACEHOLDER_TEXT ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR ) == DevelTextEditor::Property::PLACEHOLDER_TEXT_COLOR ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_SHIFT_SELECTION ) == DevelTextEditor::Property::ENABLE_SHIFT_SELECTION ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_GRAB_HANDLE ) == DevelTextEditor::Property::ENABLE_GRAB_HANDLE ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_MATCH_SYSTEM_LANGUAGE_DIRECTION ) == DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_MAX_LENGTH ) == DevelTextEditor::Property::MAX_LENGTH ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_COLOR ) == DevelTextEditor::Property::GRAB_HANDLE_COLOR ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_GRAB_HANDLE_POPUP ) == DevelTextEditor::Property::ENABLE_GRAB_HANDLE_POPUP ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_METHOD_SETTINGS ) == DevelTextEditor::Property::INPUT_METHOD_SETTINGS ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_FILTER ) == DevelTextEditor::Property::INPUT_FILTER ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_STRIKETHROUGH ) == DevelTextEditor::Property::STRIKETHROUGH ); - DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_STRIKETHROUGH ) == DevelTextEditor::Property::INPUT_STRIKETHROUGH ); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_RENDERING_BACKEND) == DevelTextEditor::Property::RENDERING_BACKEND); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_TEXT) == TextEditor::Property::TEXT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_TEXT_COLOR) == TextEditor::Property::TEXT_COLOR); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_FONT_FAMILY) == TextEditor::Property::FONT_FAMILY); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_FONT_STYLE) == TextEditor::Property::FONT_STYLE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_POINT_SIZE) == TextEditor::Property::POINT_SIZE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_HORIZONTAL_ALIGNMENT) == TextEditor::Property::HORIZONTAL_ALIGNMENT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SCROLL_THRESHOLD) == TextEditor::Property::SCROLL_THRESHOLD); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SCROLL_SPEED) == TextEditor::Property::SCROLL_SPEED); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_PRIMARY_CURSOR_COLOR) == TextEditor::Property::PRIMARY_CURSOR_COLOR); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SECONDARY_CURSOR_COLOR) == TextEditor::Property::SECONDARY_CURSOR_COLOR); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_ENABLE_CURSOR_BLINK) == TextEditor::Property::ENABLE_CURSOR_BLINK); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_CURSOR_BLINK_INTERVAL) == TextEditor::Property::CURSOR_BLINK_INTERVAL); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_CURSOR_BLINK_DURATION) == TextEditor::Property::CURSOR_BLINK_DURATION); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_CURSOR_WIDTH) == TextEditor::Property::CURSOR_WIDTH); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_GRAB_HANDLE_IMAGE) == TextEditor::Property::GRAB_HANDLE_IMAGE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE) == TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SELECTION_HANDLE_IMAGE_LEFT) == TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT) == TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT) == TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT) == TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_LEFT) == TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_RIGHT) == TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR) == TextEditor::Property::SELECTION_HIGHLIGHT_COLOR); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_DECORATION_BOUNDING_BOX) == TextEditor::Property::DECORATION_BOUNDING_BOX); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_ENABLE_MARKUP) == TextEditor::Property::ENABLE_MARKUP); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_COLOR) == TextEditor::Property::INPUT_COLOR); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_FONT_FAMILY) == TextEditor::Property::INPUT_FONT_FAMILY); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_FONT_STYLE) == TextEditor::Property::INPUT_FONT_STYLE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_POINT_SIZE) == TextEditor::Property::INPUT_POINT_SIZE); + + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_LINE_SPACING) == TextEditor::Property::LINE_SPACING); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_LINE_SPACING) == TextEditor::Property::INPUT_LINE_SPACING); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_UNDERLINE) == TextEditor::Property::UNDERLINE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_UNDERLINE) == TextEditor::Property::INPUT_UNDERLINE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SHADOW) == TextEditor::Property::SHADOW); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_SHADOW) == TextEditor::Property::INPUT_SHADOW); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_EMBOSS) == TextEditor::Property::EMBOSS); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_EMBOSS) == TextEditor::Property::INPUT_EMBOSS); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_OUTLINE) == TextEditor::Property::OUTLINE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_OUTLINE) == TextEditor::Property::INPUT_OUTLINE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_STRIKETHROUGH) == DevelTextEditor::Property::STRIKETHROUGH); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_STRIKETHROUGH) == DevelTextEditor::Property::INPUT_STRIKETHROUGH); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SMOOTH_SCROLL) == TextEditor::Property::SMOOTH_SCROLL); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SMOOTH_SCROLL_DURATION) == TextEditor::Property::SMOOTH_SCROLL_DURATION); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_ENABLE_SCROLL_BAR) == TextEditor::Property::ENABLE_SCROLL_BAR); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SCROLL_BAR_SHOW_DURATION) == TextEditor::Property::SCROLL_BAR_SHOW_DURATION); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_SCROLL_BAR_FADE_DURATION) == TextEditor::Property::SCROLL_BAR_FADE_DURATION); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_PIXEL_SIZE) == TextEditor::Property::PIXEL_SIZE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_LINE_COUNT) == TextEditor::Property::LINE_COUNT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_ENABLE_SELECTION) == TextEditor::Property::ENABLE_SELECTION); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_PLACEHOLDER) == TextEditor::Property::PLACEHOLDER); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_FONT_SIZE_SCALE) == DevelTextEditor::Property::FONT_SIZE_SCALE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_ENABLE_FONT_SIZE_SCALE) == DevelTextEditor::Property::ENABLE_FONT_SIZE_SCALE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_PLACEHOLDER_TEXT) == DevelTextEditor::Property::PLACEHOLDER_TEXT); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR) == DevelTextEditor::Property::PLACEHOLDER_TEXT_COLOR); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_ENABLE_SHIFT_SELECTION) == DevelTextEditor::Property::ENABLE_SHIFT_SELECTION); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_ENABLE_GRAB_HANDLE) == DevelTextEditor::Property::ENABLE_GRAB_HANDLE); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_MATCH_SYSTEM_LANGUAGE_DIRECTION) == DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_MAX_LENGTH) == DevelTextEditor::Property::MAX_LENGTH); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_GRAB_HANDLE_COLOR) == DevelTextEditor::Property::GRAB_HANDLE_COLOR); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_ENABLE_GRAB_HANDLE_POPUP) == DevelTextEditor::Property::ENABLE_GRAB_HANDLE_POPUP); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_METHOD_SETTINGS) == DevelTextEditor::Property::INPUT_METHOD_SETTINGS); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_FILTER) == DevelTextEditor::Property::INPUT_FILTER); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_STRIKETHROUGH) == DevelTextEditor::Property::STRIKETHROUGH); + DALI_TEST_CHECK(editor.GetPropertyIndex(PROPERTY_NAME_INPUT_STRIKETHROUGH) == DevelTextEditor::Property::INPUT_STRIKETHROUGH); END_TEST; } -bool SetPropertyMapRetrieved( TextEditor& editor, const Property::Index property, const std::string mapKey, const std::string mapValue ) +bool SetPropertyMapRetrieved(TextEditor& editor, const Property::Index property, const std::string mapKey, const std::string mapValue) { - bool result = false; + bool result = false; Property::Map imageMap; - imageMap[mapKey] =mapValue; + imageMap[mapKey] = mapValue; - editor.SetProperty( property , imageMap ); - Property::Value propValue = editor.GetProperty( property ); - Property::Map* resultMap = propValue.GetMap(); + editor.SetProperty(property, imageMap); + Property::Value propValue = editor.GetProperty(property); + Property::Map* resultMap = propValue.GetMap(); - if ( resultMap->Find( mapKey )->Get< std::string>() == mapValue ) + if(resultMap->Find(mapKey)->Get() == mapValue) { result = true; } @@ -598,250 +609,308 @@ int UtcDaliTextEditorSetPropertyP(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorSetPropertyP"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); - application.GetScene().Add( editor ); + DALI_TEST_CHECK(editor); + application.GetScene().Add(editor); // Note - we can't check the defaults since the stylesheets are platform-specific // Check the render backend property. - editor.SetProperty( DevelTextEditor::Property::RENDERING_BACKEND, DevelText::RENDERING_SHARED_ATLAS ); - DALI_TEST_EQUALS( (DevelText::RenderingType)editor.GetProperty( DevelTextEditor::Property::RENDERING_BACKEND ), DevelText::RENDERING_SHARED_ATLAS, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::RENDERING_BACKEND, DevelText::RENDERING_SHARED_ATLAS); + DALI_TEST_EQUALS((DevelText::RenderingType)editor.GetProperty(DevelTextEditor::Property::RENDERING_BACKEND), DevelText::RENDERING_SHARED_ATLAS, TEST_LOCATION); // Check text property. - editor.SetProperty( TextEditor::Property::TEXT, "Setting Text" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ), std::string("Setting Text"), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::TEXT, "Setting Text"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT), std::string("Setting Text"), TEST_LOCATION); // Check text's color property - editor.SetProperty( TextEditor::Property::TEXT_COLOR, Color::WHITE ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT_COLOR ), Color::WHITE, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::TEXT_COLOR, Color::WHITE); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT_COLOR), Color::WHITE, TEST_LOCATION); // Check font properties. - editor.SetProperty( TextEditor::Property::FONT_FAMILY, "Setting font family" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::FONT_FAMILY ), std::string("Setting font family"), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::FONT_FAMILY, "Setting font family"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::FONT_FAMILY), std::string("Setting font family"), TEST_LOCATION); - Property::Map fontStyleMapSet; - Property::Map fontStyleMapGet; + Property::Map fontStyleMapSet; + Property::Map fontStyleMapGet; Property::Value* slantValue = NULL; - fontStyleMapSet.Insert( "weight", "bold" ); - fontStyleMapSet.Insert( "width", "condensed" ); - fontStyleMapSet.Insert( "slant", "italic" ); + fontStyleMapSet.Insert("weight", "bold"); + fontStyleMapSet.Insert("width", "condensed"); + fontStyleMapSet.Insert("slant", "italic"); - editor.SetProperty( TextEditor::Property::FONT_STYLE, fontStyleMapSet ); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::FONT_STYLE ); - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::FONT_STYLE, fontStyleMapSet); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::FONT_STYLE); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::POINT_SIZE ), 10.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::POINT_SIZE), 10.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); - editor.SetProperty( DevelTextEditor::Property::FONT_SIZE_SCALE, 2.5f ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::FONT_SIZE_SCALE ), 2.5f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - editor.SetProperty( DevelTextEditor::Property::FONT_SIZE_SCALE, 1.0f ); + editor.SetProperty(DevelTextEditor::Property::FONT_SIZE_SCALE, 2.5f); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::FONT_SIZE_SCALE), 2.5f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + editor.SetProperty(DevelTextEditor::Property::FONT_SIZE_SCALE, 1.0f); + + editor.SetProperty(DevelTextEditor::Property::ENABLE_FONT_SIZE_SCALE, false); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::ENABLE_FONT_SIZE_SCALE), false, TEST_LOCATION); + editor.SetProperty(DevelTextEditor::Property::ENABLE_FONT_SIZE_SCALE, true); // Reset font style. fontStyleMapSet.Clear(); - fontStyleMapSet.Insert( "weight", "normal" ); - fontStyleMapSet.Insert( "slant", "oblique" ); - editor.SetProperty( TextEditor::Property::FONT_STYLE, fontStyleMapSet ); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::FONT_STYLE ); - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + fontStyleMapSet.Insert("weight", "normal"); + fontStyleMapSet.Insert("slant", "oblique"); + editor.SetProperty(TextEditor::Property::FONT_STYLE, fontStyleMapSet); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::FONT_STYLE); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); fontStyleMapSet.Clear(); - fontStyleMapSet.Insert( "slant", "roman" ); - editor.SetProperty( TextEditor::Property::FONT_STYLE, fontStyleMapSet ); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::FONT_STYLE ); + fontStyleMapSet.Insert("slant", "roman"); + editor.SetProperty(TextEditor::Property::FONT_STYLE, fontStyleMapSet); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::FONT_STYLE); // Replace 'roman' for 'normal'. - slantValue = fontStyleMapGet.Find( "slant" ); - if( NULL != slantValue ) + slantValue = fontStyleMapGet.Find("slant"); + if(NULL != slantValue) { - if( "normal" == slantValue->Get() ) + if("normal" == slantValue->Get()) { fontStyleMapGet["slant"] = "roman"; } } - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); fontStyleMapSet.Clear(); - editor.SetProperty( TextEditor::Property::FONT_STYLE, fontStyleMapSet ); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::FONT_STYLE ); - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::FONT_STYLE, fontStyleMapSet); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::FONT_STYLE); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); // Check that the Alignment properties can be correctly set - editor.SetProperty( TextEditor::Property::HORIZONTAL_ALIGNMENT, "END" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::HORIZONTAL_ALIGNMENT ), "END", TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::HORIZONTAL_ALIGNMENT, "END"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::HORIZONTAL_ALIGNMENT), "END", TEST_LOCATION); // Check scroll properties. - editor.SetProperty( TextEditor::Property::SCROLL_THRESHOLD, 1.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SCROLL_THRESHOLD ), 1.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::SCROLL_SPEED, 100.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SCROLL_SPEED ), 100.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::SCROLL_THRESHOLD, 1.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SCROLL_THRESHOLD), 1.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::SCROLL_SPEED, 100.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SCROLL_SPEED), 100.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); // Check cursor properties - editor.SetProperty( TextEditor::Property::PRIMARY_CURSOR_COLOR, Color::RED ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::PRIMARY_CURSOR_COLOR ), Color::RED, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::SECONDARY_CURSOR_COLOR, Color::BLUE ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SECONDARY_CURSOR_COLOR ), Color::BLUE, TEST_LOCATION ); - - editor.SetProperty( TextEditor::Property::ENABLE_CURSOR_BLINK, false ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::ENABLE_CURSOR_BLINK ), false, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::CURSOR_BLINK_INTERVAL, 1.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::CURSOR_BLINK_INTERVAL ), 1.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::CURSOR_BLINK_DURATION, 10.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::CURSOR_BLINK_DURATION ), 10.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::CURSOR_WIDTH, 1 ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::CURSOR_WIDTH ), 1, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::PRIMARY_CURSOR_COLOR, Color::RED); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::PRIMARY_CURSOR_COLOR), Color::RED, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::SECONDARY_CURSOR_COLOR, Color::BLUE); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SECONDARY_CURSOR_COLOR), Color::BLUE, TEST_LOCATION); + + editor.SetProperty(TextEditor::Property::ENABLE_CURSOR_BLINK, false); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::ENABLE_CURSOR_BLINK), false, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::CURSOR_BLINK_INTERVAL, 1.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::CURSOR_BLINK_INTERVAL), 1.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::CURSOR_BLINK_DURATION, 10.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::CURSOR_BLINK_DURATION), 10.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::CURSOR_WIDTH, 1); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::CURSOR_WIDTH), 1, TEST_LOCATION); // Check handle images - editor.SetProperty( TextEditor::Property::GRAB_HANDLE_IMAGE, "image1" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::GRAB_HANDLE_IMAGE ), "image1", TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE, "image2" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE ), "image2", TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, "image3" ); + editor.SetProperty(TextEditor::Property::GRAB_HANDLE_IMAGE, "image1"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::GRAB_HANDLE_IMAGE), "image1", TEST_LOCATION); + editor.SetProperty(TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE, "image2"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE), "image2", TEST_LOCATION); + editor.SetProperty(TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, "image3"); // Check handle images - DALI_TEST_CHECK( SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, "filename", "leftHandleImage" ) ); - DALI_TEST_CHECK( SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT, "filename", "rightHandleImage" ) ); - DALI_TEST_CHECK( SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, "filename", "leftHandleImagePressed" ) ); - DALI_TEST_CHECK( SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, "filename", "rightHandleImagePressed" ) ); - DALI_TEST_CHECK( SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT, "filename", "leftHandleMarkerImage" ) ); - DALI_TEST_CHECK( SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT, "filename", "rightHandleMarkerImage" ) ); + DALI_TEST_CHECK(SetPropertyMapRetrieved(editor, TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, "filename", "leftHandleImage")); + DALI_TEST_CHECK(SetPropertyMapRetrieved(editor, TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT, "filename", "rightHandleImage")); + DALI_TEST_CHECK(SetPropertyMapRetrieved(editor, TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, "filename", "leftHandleImagePressed")); + DALI_TEST_CHECK(SetPropertyMapRetrieved(editor, TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, "filename", "rightHandleImagePressed")); + DALI_TEST_CHECK(SetPropertyMapRetrieved(editor, TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT, "filename", "leftHandleMarkerImage")); + DALI_TEST_CHECK(SetPropertyMapRetrieved(editor, TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT, "filename", "rightHandleMarkerImage")); // Check the highlight color - editor.SetProperty( TextEditor::Property::SELECTION_HIGHLIGHT_COLOR, Color::GREEN ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SELECTION_HIGHLIGHT_COLOR ), Color::GREEN, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::SELECTION_HIGHLIGHT_COLOR, Color::GREEN); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SELECTION_HIGHLIGHT_COLOR), Color::GREEN, TEST_LOCATION); // Decoration bounding box - editor.SetProperty( TextEditor::Property::DECORATION_BOUNDING_BOX, Rect( 0, 0, 1, 1 ) ); - DALI_TEST_EQUALS( editor.GetProperty >( TextEditor::Property::DECORATION_BOUNDING_BOX ), Rect( 0, 0, 1, 1 ), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::DECORATION_BOUNDING_BOX, Rect(0, 0, 1, 1)); + DALI_TEST_EQUALS(editor.GetProperty >(TextEditor::Property::DECORATION_BOUNDING_BOX), Rect(0, 0, 1, 1), TEST_LOCATION); // Check the enable markup property. - DALI_TEST_CHECK( !editor.GetProperty( TextEditor::Property::ENABLE_MARKUP ) ); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - DALI_TEST_CHECK( editor.GetProperty( TextEditor::Property::ENABLE_MARKUP ) ); + DALI_TEST_CHECK(!editor.GetProperty(TextEditor::Property::ENABLE_MARKUP)); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + DALI_TEST_CHECK(editor.GetProperty(TextEditor::Property::ENABLE_MARKUP)); // Check input color property. - editor.SetProperty( TextEditor::Property::INPUT_COLOR, Color::YELLOW ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_COLOR ), Color::YELLOW, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_COLOR, Color::YELLOW); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_COLOR), Color::YELLOW, TEST_LOCATION); // Check input font properties. - editor.SetProperty( TextEditor::Property::INPUT_FONT_FAMILY, "Setting input font family" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_FONT_FAMILY ), "Setting input font family", TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_FONT_FAMILY, "Setting input font family"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_FONT_FAMILY), "Setting input font family", TEST_LOCATION); fontStyleMapSet.Clear(); - fontStyleMapSet.Insert( "weight", "bold" ); - fontStyleMapSet.Insert( "width", "condensed" ); - fontStyleMapSet.Insert( "slant", "italic" ); + fontStyleMapSet.Insert("weight", "bold"); + fontStyleMapSet.Insert("width", "condensed"); + fontStyleMapSet.Insert("slant", "italic"); - editor.SetProperty( TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet ); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::INPUT_FONT_STYLE ); - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::INPUT_FONT_STYLE); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); - editor.SetProperty( TextEditor::Property::INPUT_POINT_SIZE, 12.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_POINT_SIZE ), 12.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_POINT_SIZE, 12.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_POINT_SIZE), 12.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); // Reset input font style. fontStyleMapSet.Clear(); - fontStyleMapSet.Insert( "weight", "normal" ); - fontStyleMapSet.Insert( "slant", "oblique" ); + fontStyleMapSet.Insert("weight", "normal"); + fontStyleMapSet.Insert("slant", "oblique"); - editor.SetProperty( TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet ); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::INPUT_FONT_STYLE ); - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::INPUT_FONT_STYLE); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); fontStyleMapSet.Clear(); - fontStyleMapSet.Insert( "slant", "roman" ); + fontStyleMapSet.Insert("slant", "roman"); - editor.SetProperty( TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet ); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::INPUT_FONT_STYLE ); + editor.SetProperty(TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::INPUT_FONT_STYLE); // Replace 'roman' for 'normal'. - slantValue = fontStyleMapGet.Find( "slant" ); - if( NULL != slantValue ) + slantValue = fontStyleMapGet.Find("slant"); + if(NULL != slantValue) { - if( "normal" == slantValue->Get() ) + if("normal" == slantValue->Get()) { fontStyleMapGet["slant"] = "roman"; } } - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); fontStyleMapSet.Clear(); - editor.SetProperty( TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet ); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::INPUT_FONT_STYLE ); - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::INPUT_FONT_STYLE); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); // Check the line spacing property - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::LINE_SPACING ), 0.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::LINE_SPACING, 10.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::LINE_SPACING ), 10.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::LINE_SPACING), 0.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::LINE_SPACING, 10.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::LINE_SPACING), 10.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); // Check the input line spacing property - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_LINE_SPACING ), 0.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::INPUT_LINE_SPACING, 20.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_LINE_SPACING ), 20.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_LINE_SPACING), 0.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::INPUT_LINE_SPACING, 20.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_LINE_SPACING), 20.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); // Check the underline property Property::Map underlineMapSet; Property::Map underlineMapGet; - underlineMapSet.Insert( "enable", true ); - underlineMapSet.Insert( "color", Color::RED ); - underlineMapSet.Insert( "height", 1 ); + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::RED); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::SOLID); + underlineMapSet.Insert("dashWidth", 5); + underlineMapSet.Insert("dashGap", 3); + + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + + underlineMapGet = editor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet, underlineMapSet), true, TEST_LOCATION); - editor.SetProperty( TextEditor::Property::UNDERLINE, underlineMapSet ); + application.SendNotification(); + application.Render(); + + // Check the dashed underline property + + underlineMapSet.Clear(); + underlineMapGet.Clear(); + + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::RED); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::DASHED); + underlineMapSet.Insert("dashWidth", 5); + underlineMapSet.Insert("dashGap", 3); + + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + + underlineMapGet = editor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet, underlineMapSet), true, TEST_LOCATION); + + application.SendNotification(); + application.Render(); + + underlineMapSet.Clear(); + underlineMapGet.Clear(); + + // Check the double underline property + + underlineMapSet.Clear(); + underlineMapGet.Clear(); + + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::RED); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::DOUBLE); + underlineMapSet.Insert("dashWidth", 5); + underlineMapSet.Insert("dashGap", 3); + + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + + underlineMapGet = editor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet, underlineMapSet), true, TEST_LOCATION); - underlineMapGet = editor.GetProperty( TextEditor::Property::UNDERLINE ); - DALI_TEST_EQUALS( underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( underlineMapGet, underlineMapSet ), true, TEST_LOCATION ); + application.SendNotification(); + application.Render(); + + underlineMapSet.Clear(); + underlineMapGet.Clear(); // Check the input underline property - editor.SetProperty( TextEditor::Property::INPUT_UNDERLINE, "Underline input properties" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_UNDERLINE ), std::string("Underline input properties"), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_UNDERLINE, "Underline input properties"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_UNDERLINE), std::string("Underline input properties"), TEST_LOCATION); // Check the shadow property Property::Map shadowMapSet; Property::Map shadowMapGet; - shadowMapSet.Insert( "color", Color::GREEN ); - shadowMapSet.Insert( "offset", Vector2(2.0f, 2.0f) ); - shadowMapSet.Insert( "blurRadius", 3.0f ); + shadowMapSet.Insert("color", Color::GREEN); + shadowMapSet.Insert("offset", Vector2(2.0f, 2.0f)); + shadowMapSet.Insert("blurRadius", 3.0f); - editor.SetProperty( TextEditor::Property::SHADOW, shadowMapSet ); + editor.SetProperty(TextEditor::Property::SHADOW, shadowMapSet); - shadowMapGet = editor.GetProperty( TextEditor::Property::SHADOW ); - DALI_TEST_EQUALS( shadowMapGet.Count(), shadowMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( shadowMapGet, shadowMapSet ), true, TEST_LOCATION ); + shadowMapGet = editor.GetProperty(TextEditor::Property::SHADOW); + DALI_TEST_EQUALS(shadowMapGet.Count(), shadowMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(shadowMapGet, shadowMapSet), true, TEST_LOCATION); // Check the input shadow property - editor.SetProperty( TextEditor::Property::INPUT_SHADOW, "Shadow input properties" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_SHADOW ), std::string("Shadow input properties"), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_SHADOW, "Shadow input properties"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_SHADOW), std::string("Shadow input properties"), TEST_LOCATION); // Check the emboss property - editor.SetProperty( TextEditor::Property::EMBOSS, "Emboss properties" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::EMBOSS ), std::string("Emboss properties"), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::EMBOSS, "Emboss properties"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::EMBOSS), std::string("Emboss properties"), TEST_LOCATION); // Check the input emboss property - editor.SetProperty( TextEditor::Property::INPUT_EMBOSS, "Emboss input properties" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_EMBOSS ), std::string("Emboss input properties"), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_EMBOSS, "Emboss input properties"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_EMBOSS), std::string("Emboss input properties"), TEST_LOCATION); // Check the outline property // Test string type first // This is purely to maintain backward compatibility, but we don't support string as the outline property type. - editor.SetProperty( TextEditor::Property::OUTLINE, "Outline properties" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::OUTLINE ), std::string("Outline properties"), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::OUTLINE, "Outline properties"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::OUTLINE), std::string("Outline properties"), TEST_LOCATION); // Then test the property map type Property::Map outlineMapSet; @@ -850,179 +919,179 @@ int UtcDaliTextEditorSetPropertyP(void) outlineMapSet["color"] = Color::RED; outlineMapSet["width"] = 2.0f; - editor.SetProperty( TextEditor::Property::OUTLINE, outlineMapSet ); + editor.SetProperty(TextEditor::Property::OUTLINE, outlineMapSet); - outlineMapGet = editor.GetProperty( TextEditor::Property::OUTLINE ); - DALI_TEST_EQUALS( outlineMapGet.Count(), outlineMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( outlineMapGet, outlineMapSet ), true, TEST_LOCATION ); + outlineMapGet = editor.GetProperty(TextEditor::Property::OUTLINE); + DALI_TEST_EQUALS(outlineMapGet.Count(), outlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(outlineMapGet, outlineMapSet), true, TEST_LOCATION); // Check the input outline property - editor.SetProperty( TextEditor::Property::INPUT_OUTLINE, "Outline input properties" ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::INPUT_OUTLINE ), std::string("Outline input properties"), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::INPUT_OUTLINE, "Outline input properties"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::INPUT_OUTLINE), std::string("Outline input properties"), TEST_LOCATION); // Check the smooth scroll property - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SMOOTH_SCROLL ), false, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::SMOOTH_SCROLL, true ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SMOOTH_SCROLL ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SMOOTH_SCROLL), false, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::SMOOTH_SCROLL, true); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SMOOTH_SCROLL), true, TEST_LOCATION); // Check the smooth scroll duration property - editor.SetProperty( TextEditor::Property::SMOOTH_SCROLL_DURATION, 0.2f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SMOOTH_SCROLL_DURATION ), 0.2f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::SMOOTH_SCROLL_DURATION, 0.2f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SMOOTH_SCROLL_DURATION), 0.2f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); // Check the scroll bar property - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::ENABLE_SCROLL_BAR ), false, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::ENABLE_SCROLL_BAR, true ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::ENABLE_SCROLL_BAR ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::ENABLE_SCROLL_BAR), false, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::ENABLE_SCROLL_BAR, true); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::ENABLE_SCROLL_BAR), true, TEST_LOCATION); - editor.SetProperty( TextEditor::Property::SCROLL_BAR_SHOW_DURATION, 0.3f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SCROLL_BAR_SHOW_DURATION ), 0.3f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - editor.SetProperty( TextEditor::Property::SCROLL_BAR_FADE_DURATION, 0.2f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SCROLL_BAR_FADE_DURATION ), 0.2f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::SCROLL_BAR_SHOW_DURATION, 0.3f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SCROLL_BAR_SHOW_DURATION), 0.3f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + editor.SetProperty(TextEditor::Property::SCROLL_BAR_FADE_DURATION, 0.2f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SCROLL_BAR_FADE_DURATION), 0.2f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); // Check the pixel size of font - editor.SetProperty( TextEditor::Property::PIXEL_SIZE, 20.f ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::PIXEL_SIZE ), 20.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::PIXEL_SIZE, 20.f); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::PIXEL_SIZE), 20.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); // Check placeholder text properties. - editor.SetProperty( DevelTextEditor::Property::PLACEHOLDER_TEXT, "Setting Placeholder Text" ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::PLACEHOLDER_TEXT ), std::string("Setting Placeholder Text"), TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::PLACEHOLDER_TEXT, "Setting Placeholder Text"); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::PLACEHOLDER_TEXT), std::string("Setting Placeholder Text"), TEST_LOCATION); // Check placeholder text's color property. - editor.SetProperty( DevelTextEditor::Property::PLACEHOLDER_TEXT_COLOR, Color::RED ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::PLACEHOLDER_TEXT_COLOR ), Color::RED, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::PLACEHOLDER_TEXT_COLOR, Color::RED); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::PLACEHOLDER_TEXT_COLOR), Color::RED, TEST_LOCATION); // Check the enable selection property - editor.SetProperty( TextEditor::Property::ENABLE_SELECTION, false ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::ENABLE_SELECTION ), false, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::ENABLE_SELECTION, false); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::ENABLE_SELECTION), false, TEST_LOCATION); // Check the placeholder property with pixel size Property::Map placeholderPixelSizeMapSet; Property::Map placeholderPixelSizeMapGet; Property::Map placeholderFontstyleMap; - placeholderPixelSizeMapSet["text"] = "Setting Placeholder Text"; + placeholderPixelSizeMapSet["text"] = "Setting Placeholder Text"; placeholderPixelSizeMapSet["textFocused"] = "Setting Placeholder Text Focused"; - placeholderPixelSizeMapSet["color"] = Color::BLUE; - placeholderPixelSizeMapSet["fontFamily"] = "Arial"; - placeholderPixelSizeMapSet["pixelSize"] = 15.0f; + placeholderPixelSizeMapSet["color"] = Color::BLUE; + placeholderPixelSizeMapSet["fontFamily"] = "Arial"; + placeholderPixelSizeMapSet["pixelSize"] = 15.0f; - placeholderFontstyleMap.Insert( "weight", "bold" ); + placeholderFontstyleMap.Insert("weight", "bold"); placeholderPixelSizeMapSet["fontStyle"] = placeholderFontstyleMap; - editor.SetProperty( TextEditor::Property::PLACEHOLDER, placeholderPixelSizeMapSet ); + editor.SetProperty(TextEditor::Property::PLACEHOLDER, placeholderPixelSizeMapSet); - placeholderPixelSizeMapGet = editor.GetProperty( TextEditor::Property::PLACEHOLDER ); - DALI_TEST_EQUALS( placeholderPixelSizeMapGet.Count(), placeholderPixelSizeMapSet.Count(), TEST_LOCATION ); + placeholderPixelSizeMapGet = editor.GetProperty(TextEditor::Property::PLACEHOLDER); + DALI_TEST_EQUALS(placeholderPixelSizeMapGet.Count(), placeholderPixelSizeMapSet.Count(), TEST_LOCATION); tet_infoline("Test Placeholder settings set as strings is converted correctly to Property Index key and holds set value"); Property::Map placeholderConversionMap; - placeholderConversionMap[ Text::PlaceHolder::Property::TEXT ] = placeholderPixelSizeMapSet["text"]; - placeholderConversionMap[ Text::PlaceHolder::Property::TEXT_FOCUSED ] = placeholderPixelSizeMapSet["textFocused"] ; - placeholderConversionMap[ Text::PlaceHolder::Property::COLOR ] = placeholderPixelSizeMapSet["color"]; - placeholderConversionMap[ Text::PlaceHolder::Property::FONT_STYLE ] = placeholderPixelSizeMapSet["fontStyle"]; - placeholderConversionMap[ Text::PlaceHolder::Property::FONT_FAMILY ] = placeholderPixelSizeMapSet["fontFamily"]; - placeholderConversionMap[ Text::PlaceHolder::Property::PIXEL_SIZE ] = placeholderPixelSizeMapSet["pixelSize"]; + placeholderConversionMap[Text::PlaceHolder::Property::TEXT] = placeholderPixelSizeMapSet["text"]; + placeholderConversionMap[Text::PlaceHolder::Property::TEXT_FOCUSED] = placeholderPixelSizeMapSet["textFocused"]; + placeholderConversionMap[Text::PlaceHolder::Property::COLOR] = placeholderPixelSizeMapSet["color"]; + placeholderConversionMap[Text::PlaceHolder::Property::FONT_STYLE] = placeholderPixelSizeMapSet["fontStyle"]; + placeholderConversionMap[Text::PlaceHolder::Property::FONT_FAMILY] = placeholderPixelSizeMapSet["fontFamily"]; + placeholderConversionMap[Text::PlaceHolder::Property::PIXEL_SIZE] = placeholderPixelSizeMapSet["pixelSize"]; - DALI_TEST_EQUALS( DaliTestCheckMaps( placeholderPixelSizeMapGet, placeholderConversionMap ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(DaliTestCheckMaps(placeholderPixelSizeMapGet, placeholderConversionMap), true, TEST_LOCATION); // Check the placeholder property with point size Property::Map placeholderMapSet; Property::Map placeholderMapGet; - placeholderMapSet["text"] = "Setting Placeholder Text"; + placeholderMapSet["text"] = "Setting Placeholder Text"; placeholderMapSet["textFocused"] = "Setting Placeholder Text Focused"; - placeholderMapSet["color"] = Color::RED; - placeholderMapSet["fontFamily"] = "Arial"; - placeholderMapSet["pointSize"] = 12.0f; + placeholderMapSet["color"] = Color::RED; + placeholderMapSet["fontFamily"] = "Arial"; + placeholderMapSet["pointSize"] = 12.0f; // Check the placeholder font style property placeholderFontstyleMap.Clear(); - placeholderFontstyleMap.Insert( "weight", "bold" ); - placeholderFontstyleMap.Insert( "width", "condensed" ); - placeholderFontstyleMap.Insert( "slant", "italic" ); + placeholderFontstyleMap.Insert("weight", "bold"); + placeholderFontstyleMap.Insert("width", "condensed"); + placeholderFontstyleMap.Insert("slant", "italic"); placeholderMapSet["fontStyle"] = placeholderFontstyleMap; - editor.SetProperty( TextEditor::Property::PLACEHOLDER, placeholderMapSet ); + editor.SetProperty(TextEditor::Property::PLACEHOLDER, placeholderMapSet); - placeholderMapGet = editor.GetProperty( TextEditor::Property::PLACEHOLDER ); - DALI_TEST_EQUALS( placeholderMapGet.Count(), placeholderMapSet.Count(), TEST_LOCATION ); + placeholderMapGet = editor.GetProperty(TextEditor::Property::PLACEHOLDER); + DALI_TEST_EQUALS(placeholderMapGet.Count(), placeholderMapSet.Count(), TEST_LOCATION); tet_infoline("Test Placeholder settings set as strings is converted correctly to Property Index key and holds set value"); placeholderConversionMap.Clear(); - placeholderConversionMap[ Text::PlaceHolder::Property::TEXT ] = placeholderMapSet["text"]; - placeholderConversionMap[ Text::PlaceHolder::Property::TEXT_FOCUSED ] = placeholderMapSet["textFocused"] ; - placeholderConversionMap[ Text::PlaceHolder::Property::COLOR ] = placeholderMapSet["color"]; - placeholderConversionMap[ Text::PlaceHolder::Property::FONT_STYLE ] = placeholderPixelSizeMapSet["fontStyle"]; - placeholderConversionMap[ Text::PlaceHolder::Property::FONT_FAMILY ] = placeholderMapSet["fontFamily"]; - placeholderConversionMap[ Text::PlaceHolder::Property::POINT_SIZE ] = placeholderMapSet["pointSize"]; - DALI_TEST_EQUALS( DaliTestCheckMaps( placeholderMapGet, placeholderConversionMap ), true, TEST_LOCATION ); + placeholderConversionMap[Text::PlaceHolder::Property::TEXT] = placeholderMapSet["text"]; + placeholderConversionMap[Text::PlaceHolder::Property::TEXT_FOCUSED] = placeholderMapSet["textFocused"]; + placeholderConversionMap[Text::PlaceHolder::Property::COLOR] = placeholderMapSet["color"]; + placeholderConversionMap[Text::PlaceHolder::Property::FONT_STYLE] = placeholderPixelSizeMapSet["fontStyle"]; + placeholderConversionMap[Text::PlaceHolder::Property::FONT_FAMILY] = placeholderMapSet["fontFamily"]; + placeholderConversionMap[Text::PlaceHolder::Property::POINT_SIZE] = placeholderMapSet["pointSize"]; + DALI_TEST_EQUALS(DaliTestCheckMaps(placeholderMapGet, placeholderConversionMap), true, TEST_LOCATION); // Reset font style. placeholderFontstyleMap.Clear(); - placeholderFontstyleMap.Insert( "weight", "normal" ); - placeholderFontstyleMap.Insert( "slant", "oblique" ); + placeholderFontstyleMap.Insert("weight", "normal"); + placeholderFontstyleMap.Insert("slant", "oblique"); placeholderMapSet["fontStyle"] = placeholderFontstyleMap; - editor.SetProperty( TextEditor::Property::PLACEHOLDER, placeholderMapSet ); + editor.SetProperty(TextEditor::Property::PLACEHOLDER, placeholderMapSet); - placeholderMapGet = editor.GetProperty( TextEditor::Property::PLACEHOLDER ); - DALI_TEST_EQUALS( placeholderMapGet.Count(), placeholderMapSet.Count(), TEST_LOCATION ); - placeholderConversionMap[ Text::PlaceHolder::Property::FONT_STYLE ] = placeholderMapSet["fontStyle"]; - DALI_TEST_EQUALS( DaliTestCheckMaps( placeholderMapGet, placeholderConversionMap ), true, TEST_LOCATION ); + placeholderMapGet = editor.GetProperty(TextEditor::Property::PLACEHOLDER); + DALI_TEST_EQUALS(placeholderMapGet.Count(), placeholderMapSet.Count(), TEST_LOCATION); + placeholderConversionMap[Text::PlaceHolder::Property::FONT_STYLE] = placeholderMapSet["fontStyle"]; + DALI_TEST_EQUALS(DaliTestCheckMaps(placeholderMapGet, placeholderConversionMap), true, TEST_LOCATION); placeholderFontstyleMap.Clear(); - placeholderFontstyleMap.Insert( "slant", "roman" ); + placeholderFontstyleMap.Insert("slant", "roman"); placeholderMapSet["fontStyle"] = placeholderFontstyleMap; - editor.SetProperty( TextEditor::Property::PLACEHOLDER, placeholderMapSet ); + editor.SetProperty(TextEditor::Property::PLACEHOLDER, placeholderMapSet); - placeholderMapGet = editor.GetProperty( TextEditor::Property::PLACEHOLDER ); + placeholderMapGet = editor.GetProperty(TextEditor::Property::PLACEHOLDER); placeholderFontstyleMap.Clear(); placeholderMapSet["fontStyle"] = placeholderFontstyleMap; - editor.SetProperty( TextEditor::Property::PLACEHOLDER, placeholderMapSet ); - placeholderMapGet = editor.GetProperty( TextEditor::Property::PLACEHOLDER ); - DALI_TEST_EQUALS( placeholderMapGet.Count(), placeholderMapSet.Count(), TEST_LOCATION ); - placeholderConversionMap[ Text::PlaceHolder::Property::FONT_STYLE ] = placeholderMapSet["fontStyle"]; - DALI_TEST_EQUALS( DaliTestCheckMaps( placeholderMapGet, placeholderConversionMap ), true, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::PLACEHOLDER, placeholderMapSet); + placeholderMapGet = editor.GetProperty(TextEditor::Property::PLACEHOLDER); + DALI_TEST_EQUALS(placeholderMapGet.Count(), placeholderMapSet.Count(), TEST_LOCATION); + placeholderConversionMap[Text::PlaceHolder::Property::FONT_STYLE] = placeholderMapSet["fontStyle"]; + DALI_TEST_EQUALS(DaliTestCheckMaps(placeholderMapGet, placeholderConversionMap), true, TEST_LOCATION); - editor.SetProperty( Actor::Property::LAYOUT_DIRECTION, LayoutDirection::RIGHT_TO_LEFT ); - DALI_TEST_EQUALS( editor.GetProperty( Actor::Property::LAYOUT_DIRECTION ), static_cast( LayoutDirection::RIGHT_TO_LEFT ), TEST_LOCATION ); + editor.SetProperty(Actor::Property::LAYOUT_DIRECTION, LayoutDirection::RIGHT_TO_LEFT); + DALI_TEST_EQUALS(editor.GetProperty(Actor::Property::LAYOUT_DIRECTION), static_cast(LayoutDirection::RIGHT_TO_LEFT), TEST_LOCATION); // Check handle color - editor.SetProperty( DevelTextEditor::Property::GRAB_HANDLE_COLOR, Color::GREEN ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::GRAB_HANDLE_COLOR ), Color::GREEN, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::GRAB_HANDLE_COLOR, Color::GREEN); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::GRAB_HANDLE_COLOR), Color::GREEN, TEST_LOCATION); // Test the ENABLE_GRAB_HANDLE_POPUP property - editor.SetProperty( DevelTextEditor::Property::ENABLE_GRAB_HANDLE_POPUP, false ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::ENABLE_GRAB_HANDLE_POPUP ), false, TEST_LOCATION); + editor.SetProperty(DevelTextEditor::Property::ENABLE_GRAB_HANDLE_POPUP, false); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::ENABLE_GRAB_HANDLE_POPUP), false, TEST_LOCATION); // Check the input method setting - Property::Map propertyMap; - InputMethod::PanelLayout::Type panelLayout = InputMethod::PanelLayout::NUMBER; - InputMethod::AutoCapital::Type autoCapital = InputMethod::AutoCapital::WORD; - InputMethod::ButtonAction::Type buttonAction = InputMethod::ButtonAction::GO; - int inputVariation = 1; - propertyMap["PANEL_LAYOUT"] = panelLayout; - propertyMap["AUTO_CAPITALIZE"] = autoCapital; - propertyMap["BUTTON_ACTION"] = buttonAction; - propertyMap["VARIATION"] = inputVariation; - editor.SetProperty( DevelTextEditor::Property::INPUT_METHOD_SETTINGS, propertyMap ); - - Property::Value value = editor.GetProperty( DevelTextEditor::Property::INPUT_METHOD_SETTINGS ); - Property::Map map; - DALI_TEST_CHECK( value.Get( map ) ); + Property::Map propertyMap; + InputMethod::PanelLayout::Type panelLayout = InputMethod::PanelLayout::NUMBER; + InputMethod::AutoCapital::Type autoCapital = InputMethod::AutoCapital::WORD; + InputMethod::ButtonAction::Type buttonAction = InputMethod::ButtonAction::GO; + int inputVariation = 1; + propertyMap["PANEL_LAYOUT"] = panelLayout; + propertyMap["AUTO_CAPITALIZE"] = autoCapital; + propertyMap["BUTTON_ACTION"] = buttonAction; + propertyMap["VARIATION"] = inputVariation; + editor.SetProperty(DevelTextEditor::Property::INPUT_METHOD_SETTINGS, propertyMap); + + Property::Value value = editor.GetProperty(DevelTextEditor::Property::INPUT_METHOD_SETTINGS); + Property::Map map; + DALI_TEST_CHECK(value.Get(map)); int layout = 0; - DALI_TEST_CHECK( map[ "PANEL_LAYOUT" ].Get( layout ) ); - DALI_TEST_EQUALS( static_cast(panelLayout), layout, TEST_LOCATION ); + DALI_TEST_CHECK(map["PANEL_LAYOUT"].Get(layout)); + DALI_TEST_EQUALS(static_cast(panelLayout), layout, TEST_LOCATION); int capital = 0; - DALI_TEST_CHECK( map[ "AUTO_CAPITALIZE" ].Get( capital ) ); - DALI_TEST_EQUALS( static_cast(autoCapital), capital, TEST_LOCATION ); + DALI_TEST_CHECK(map["AUTO_CAPITALIZE"].Get(capital)); + DALI_TEST_EQUALS(static_cast(autoCapital), capital, TEST_LOCATION); int action = 0; - DALI_TEST_CHECK( map[ "BUTTON_ACTION" ].Get( action ) ); - DALI_TEST_EQUALS( static_cast(buttonAction), action, TEST_LOCATION ); + DALI_TEST_CHECK(map["BUTTON_ACTION"].Get(action)); + DALI_TEST_EQUALS(static_cast(buttonAction), action, TEST_LOCATION); int variation = 0; - DALI_TEST_CHECK( map[ "VARIATION" ].Get( variation ) ); - DALI_TEST_EQUALS( inputVariation, variation, TEST_LOCATION ); + DALI_TEST_CHECK(map["VARIATION"].Get(variation)); + DALI_TEST_EQUALS(inputVariation, variation, TEST_LOCATION); // Check the input filter property Property::Map inputFilterMapSet; @@ -1051,31 +1120,31 @@ int UtcDaliTextEditorSetPropertyP(void) strikethroughMapSet.Clear(); strikethroughMapGet.Clear(); - strikethroughMapSet.Insert( "enable", true ); - strikethroughMapSet.Insert( "color", Color::BLUE ); - strikethroughMapSet.Insert( "height", 2.0f ); + strikethroughMapSet.Insert("enable", true); + strikethroughMapSet.Insert("color", Color::BLUE); + strikethroughMapSet.Insert("height", 2.0f); - editor.SetProperty( DevelTextEditor::Property::STRIKETHROUGH, strikethroughMapSet ); + editor.SetProperty(DevelTextEditor::Property::STRIKETHROUGH, strikethroughMapSet); application.SendNotification(); application.Render(); - strikethroughMapGet = editor.GetProperty( DevelTextEditor::Property::STRIKETHROUGH ); + strikethroughMapGet = editor.GetProperty(DevelTextEditor::Property::STRIKETHROUGH); - DALI_TEST_EQUALS( strikethroughMapGet.Count(), strikethroughMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( strikethroughMapSet, strikethroughMapGet ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(strikethroughMapGet.Count(), strikethroughMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(strikethroughMapSet, strikethroughMapGet), true, TEST_LOCATION); // Check the input strikethrough property - editor.SetProperty( DevelTextEditor::Property::INPUT_STRIKETHROUGH, "Strikethrough input properties" ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::INPUT_STRIKETHROUGH ), std::string("Strikethrough input properties"), TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::INPUT_STRIKETHROUGH, "Strikethrough input properties"); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::INPUT_STRIKETHROUGH), std::string("Strikethrough input properties"), TEST_LOCATION); application.SendNotification(); application.Render(); // Check the line size property - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::MIN_LINE_SIZE ), 0.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - editor.SetProperty( DevelTextEditor::Property::MIN_LINE_SIZE, 50.f ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::MIN_LINE_SIZE ), 50.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::MIN_LINE_SIZE), 0.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + editor.SetProperty(DevelTextEditor::Property::MIN_LINE_SIZE, 50.f); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::MIN_LINE_SIZE), 50.0f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); END_TEST; } @@ -1088,22 +1157,22 @@ int utcDaliTextEditorAtlasRenderP(void) StyleManager styleManager = StyleManager::Get(); styleManager.ApplyDefaultTheme(); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - editor.SetProperty( TextEditor::Property::HORIZONTAL_ALIGNMENT, "CENTER" ); + editor.SetProperty(TextEditor::Property::HORIZONTAL_ALIGNMENT, "CENTER"); - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); try { // Render some text with the shared atlas backend - editor.SetProperty( DevelTextEditor::Property::RENDERING_BACKEND, DevelText::RENDERING_SHARED_ATLAS ); + editor.SetProperty(DevelTextEditor::Property::RENDERING_BACKEND, DevelText::RENDERING_SHARED_ATLAS); application.SendNotification(); application.Render(); } - catch( ... ) + catch(...) { tet_result(TET_FAIL); } @@ -1162,40 +1231,40 @@ int utcDaliTextEditorTextChangedP(void) ToolkitTestApplication application; tet_infoline(" utcDaliTextEditorTextChangedP"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // connect to the text changed signal. ConnectionTracker* testTracker = new ConnectionTracker(); - editor.TextChangedSignal().Connect( &TestTextChangedCallback ); + editor.TextChangedSignal().Connect(&TestTextChangedCallback); bool textChangedSignal = false; - editor.ConnectSignal( testTracker, "textChanged", CallbackFunctor(&textChangedSignal) ); + editor.ConnectSignal(testTracker, "textChanged", CallbackFunctor(&textChangedSignal)); gTextChangedCallBackCalled = false; - editor.SetProperty( TextEditor::Property::TEXT, "ABC" ); - DALI_TEST_CHECK( gTextChangedCallBackCalled ); - DALI_TEST_CHECK( textChangedSignal ); + editor.SetProperty(TextEditor::Property::TEXT, "ABC"); + DALI_TEST_CHECK(gTextChangedCallBackCalled); + DALI_TEST_CHECK(textChangedSignal); application.SendNotification(); editor.SetKeyInputFocus(); gTextChangedCallBackCalled = false; - application.ProcessEvent( GenerateKey( "D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - DALI_TEST_CHECK( gTextChangedCallBackCalled ); + application.ProcessEvent(GenerateKey("D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + DALI_TEST_CHECK(gTextChangedCallBackCalled); // Remove all text - editor.SetProperty( TextField::Property::TEXT, "" ); + editor.SetProperty(TextField::Property::TEXT, ""); // Pressing backspace key: TextChangedCallback should not be called when there is no text in texteditor. gTextChangedCallBackCalled = false; - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - DALI_TEST_CHECK( !gTextChangedCallBackCalled ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + DALI_TEST_CHECK(!gTextChangedCallBackCalled); // Pressing delete key: TextChangedCallback should not be called when there is no text in texteditor. gTextChangedCallBackCalled = false; - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_DELETE, 0, 0, Integration::KeyEvent::DOWN, "Delete", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - DALI_TEST_CHECK( !gTextChangedCallBackCalled ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_DELETE, 0, 0, Integration::KeyEvent::DOWN, "Delete", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + DALI_TEST_CHECK(!gTextChangedCallBackCalled); END_TEST; } @@ -1205,73 +1274,70 @@ int utcDaliTextEditorTextChangedWithInputMethodContext(void) ToolkitTestApplication application; tet_infoline(" utcDaliTextEditorTextChangedWithInputMethodContext"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); - + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // connect to the text changed signal. ConnectionTracker* testTracker = new ConnectionTracker(); editor.TextChangedSignal().Connect(&TestTextChangedCallback); bool textChangedSignal = false; - editor.ConnectSignal( testTracker, "textChanged", CallbackFunctor(&textChangedSignal) ); - + editor.ConnectSignal(testTracker, "textChanged", CallbackFunctor(&textChangedSignal)); // get InputMethodContext - std::string text; + std::string text; InputMethodContext::EventData imfEvent; - InputMethodContext inputMethodContext = DevelTextEditor::GetInputMethodContext( editor ); + InputMethodContext inputMethodContext = DevelTextEditor::GetInputMethodContext(editor); editor.SetKeyInputFocus(); - editor.SetProperty( DevelTextEditor::Property::ENABLE_EDITING, true ); + editor.SetProperty(DevelTextEditor::Property::ENABLE_EDITING, true); // input text gTextChangedCallBackCalled = false; - imfEvent = InputMethodContext::EventData( InputMethodContext::PRE_EDIT, "ㅎ", 0, 1 ); + imfEvent = InputMethodContext::EventData(InputMethodContext::PRE_EDIT, "ㅎ", 0, 1); inputMethodContext.EventReceivedSignal().Emit(inputMethodContext, imfEvent); application.SendNotification(); application.Render(); - DALI_TEST_CHECK( gTextChangedCallBackCalled ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ), std::string("ㅎ"), TEST_LOCATION ); + DALI_TEST_CHECK(gTextChangedCallBackCalled); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT), std::string("ㅎ"), TEST_LOCATION); gTextChangedCallBackCalled = false; - imfEvent = InputMethodContext::EventData( InputMethodContext::PRE_EDIT, "호", 0, 1 ); + imfEvent = InputMethodContext::EventData(InputMethodContext::PRE_EDIT, "호", 0, 1); inputMethodContext.EventReceivedSignal().Emit(inputMethodContext, imfEvent); application.SendNotification(); application.Render(); - DALI_TEST_CHECK( gTextChangedCallBackCalled ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ), std::string("호"), TEST_LOCATION ); + DALI_TEST_CHECK(gTextChangedCallBackCalled); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT), std::string("호"), TEST_LOCATION); gTextChangedCallBackCalled = false; - imfEvent = InputMethodContext::EventData( InputMethodContext::PRE_EDIT, "혿", 0, 1 ); + imfEvent = InputMethodContext::EventData(InputMethodContext::PRE_EDIT, "혿", 0, 1); inputMethodContext.EventReceivedSignal().Emit(inputMethodContext, imfEvent); application.SendNotification(); application.Render(); - DALI_TEST_CHECK( gTextChangedCallBackCalled ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ), std::string("혿"), TEST_LOCATION ); + DALI_TEST_CHECK(gTextChangedCallBackCalled); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT), std::string("혿"), TEST_LOCATION); gTextChangedCallBackCalled = false; - imfEvent = InputMethodContext::EventData( InputMethodContext::PRE_EDIT, "", 0, 1 ); + imfEvent = InputMethodContext::EventData(InputMethodContext::PRE_EDIT, "", 0, 1); inputMethodContext.EventReceivedSignal().Emit(inputMethodContext, imfEvent); - DALI_TEST_CHECK( !gTextChangedCallBackCalled ); + DALI_TEST_CHECK(!gTextChangedCallBackCalled); - imfEvent = InputMethodContext::EventData( InputMethodContext::COMMIT, "호", 0, 1 ); + imfEvent = InputMethodContext::EventData(InputMethodContext::COMMIT, "호", 0, 1); inputMethodContext.EventReceivedSignal().Emit(inputMethodContext, imfEvent); - DALI_TEST_CHECK( !gTextChangedCallBackCalled ); + DALI_TEST_CHECK(!gTextChangedCallBackCalled); - imfEvent = InputMethodContext::EventData( InputMethodContext::PRE_EDIT, "두", 1, 2 ); + imfEvent = InputMethodContext::EventData(InputMethodContext::PRE_EDIT, "두", 1, 2); inputMethodContext.EventReceivedSignal().Emit(inputMethodContext, imfEvent); - DALI_TEST_CHECK( !gTextChangedCallBackCalled ); + DALI_TEST_CHECK(!gTextChangedCallBackCalled); application.SendNotification(); application.Render(); - DALI_TEST_CHECK( gTextChangedCallBackCalled ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ), std::string("호두"), TEST_LOCATION ); + DALI_TEST_CHECK(gTextChangedCallBackCalled); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT), std::string("호두"), TEST_LOCATION); END_TEST; } - int utcDaliTextEditorInputStyleChanged01(void) { // The text-editor emits signals when the input style changes. These changes of style are @@ -1284,34 +1350,33 @@ int utcDaliTextEditorInputStyleChanged01(void) // Load some fonts. - char* pathNamePtr = get_current_dir_name(); - const std::string pathName( pathNamePtr ); - free( pathNamePtr ); + char* pathNamePtr = get_current_dir_name(); + const std::string pathName(pathNamePtr); + free(pathNamePtr); TextAbstraction::FontClient fontClient = TextAbstraction::FontClient::Get(); - fontClient.SetDpi( 93u, 93u ); + fontClient.SetDpi(93u, 93u); - fontClient.GetFontId( pathName + DEFAULT_FONT_DIR + "/dejavu/DejaVuSerif.ttf", DEFAULT_FONT_SIZE ); - fontClient.GetFontId( pathName + DEFAULT_FONT_DIR + "/dejavu/DejaVuSerif-Bold.ttf", DEFAULT_FONT_SIZE ); + fontClient.GetFontId(pathName + DEFAULT_FONT_DIR + "/dejavu/DejaVuSerif.ttf", DEFAULT_FONT_SIZE); + fontClient.GetFontId(pathName + DEFAULT_FONT_DIR + "/dejavu/DejaVuSerif-Bold.ttf", DEFAULT_FONT_SIZE); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); - + DALI_TEST_CHECK(editor); - editor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - editor.SetProperty( TextEditor::Property::TEXT, "Hello world demo" ); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(TextEditor::Property::TEXT, "Hello world demo"); // connect to the text changed signal. ConnectionTracker* testTracker = new ConnectionTracker(); - editor.InputStyleChangedSignal().Connect( &TestInputStyleChangedCallback ); + editor.InputStyleChangedSignal().Connect(&TestInputStyleChangedCallback); bool inputStyleChangedSignal = false; - editor.ConnectSignal( testTracker, "inputStyleChanged", CallbackFunctor(&inputStyleChangedSignal) ); + editor.ConnectSignal(testTracker, "inputStyleChanged", CallbackFunctor(&inputStyleChangedSignal)); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // Render and notify application.SendNotification(); @@ -1321,11 +1386,11 @@ int utcDaliTextEditorInputStyleChanged01(void) application.RunIdles(); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; // Create a tap event to touch the text editor. - TestGenerateTap( application, 18.0f, 25.0f ); + TestGenerateTap(application, 18.0f, 25.0f); // Render and notify application.SendNotification(); @@ -1334,25 +1399,25 @@ int utcDaliTextEditorInputStyleChanged01(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), static_cast( TextEditor::InputStyle::FONT_FAMILY | TextEditor::InputStyle::POINT_SIZE ), TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), static_cast(TextEditor::InputStyle::FONT_FAMILY | TextEditor::InputStyle::POINT_SIZE), TEST_LOCATION); - const std::string fontFamily = editor.GetProperty( TextEditor::Property::INPUT_FONT_FAMILY ).Get(); - DALI_TEST_EQUALS( fontFamily, "DejaVuSerif", TEST_LOCATION ); + const std::string fontFamily = editor.GetProperty(TextEditor::Property::INPUT_FONT_FAMILY).Get(); + DALI_TEST_EQUALS(fontFamily, "DejaVuSerif", TEST_LOCATION); - const float pointSize = editor.GetProperty( TextEditor::Property::INPUT_POINT_SIZE ).Get(); - DALI_TEST_EQUALS( pointSize, 18.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + const float pointSize = editor.GetProperty(TextEditor::Property::INPUT_POINT_SIZE).Get(); + DALI_TEST_EQUALS(pointSize, 18.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; // Create a tap event to touch the text editor. - TestGenerateTap( application, 30.0f, 25.0f ); + TestGenerateTap(application, 30.0f, 25.0f); // Render and notify application.SendNotification(); @@ -1361,15 +1426,15 @@ int utcDaliTextEditorInputStyleChanged01(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( !gInputStyleChangedCallbackCalled ); - DALI_TEST_CHECK( !inputStyleChangedSignal ); + DALI_TEST_CHECK(!gInputStyleChangedCallbackCalled); + DALI_TEST_CHECK(!inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; // Create a tap event to touch the text editor. - TestGenerateTap( application, 43.0f, 25.0f ); + TestGenerateTap(application, 43.0f, 25.0f); // Render and notify application.SendNotification(); @@ -1378,22 +1443,22 @@ int utcDaliTextEditorInputStyleChanged01(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), static_cast( TextEditor::InputStyle::COLOR ), TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), static_cast(TextEditor::InputStyle::COLOR), TEST_LOCATION); - const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get(); - DALI_TEST_EQUALS( color, Color::GREEN, TEST_LOCATION ); + const Vector4 color = editor.GetProperty(TextEditor::Property::INPUT_COLOR).Get(); + DALI_TEST_EQUALS(color, Color::GREEN, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; // Create a tap event to touch the text editor. - TestGenerateTap( application, 88.0f, 25.0f ); + TestGenerateTap(application, 88.0f, 25.0f); // Render and notify application.SendNotification(); @@ -1402,31 +1467,31 @@ int utcDaliTextEditorInputStyleChanged01(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), static_cast( TextEditor::InputStyle::COLOR | TextEditor::InputStyle::FONT_STYLE ), TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), static_cast(TextEditor::InputStyle::COLOR | TextEditor::InputStyle::FONT_STYLE), TEST_LOCATION); - const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get(); - DALI_TEST_EQUALS( color, Color::BLACK, TEST_LOCATION ); + const Vector4 color = editor.GetProperty(TextEditor::Property::INPUT_COLOR).Get(); + DALI_TEST_EQUALS(color, Color::BLACK, TEST_LOCATION); Property::Map fontStyleMapSet; Property::Map fontStyleMapGet; - fontStyleMapSet.Insert( "weight", "bold" ); + fontStyleMapSet.Insert("weight", "bold"); - fontStyleMapGet = editor.GetProperty( TextEditor::Property::INPUT_FONT_STYLE ); - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::INPUT_FONT_STYLE); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; // Create a tap event to touch the text editor. - TestGenerateTap( application, 115.0f, 25.0f ); + TestGenerateTap(application, 115.0f, 25.0f); // Render and notify application.SendNotification(); @@ -1435,15 +1500,15 @@ int utcDaliTextEditorInputStyleChanged01(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( !gInputStyleChangedCallbackCalled ); - DALI_TEST_CHECK( !inputStyleChangedSignal ); + DALI_TEST_CHECK(!gInputStyleChangedCallbackCalled); + DALI_TEST_CHECK(!inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; // Create a tap event to touch the text editor. - TestGenerateTap( application, 164.0f, 25.0f ); + TestGenerateTap(application, 164.0f, 25.0f); // Render and notify application.SendNotification(); @@ -1452,26 +1517,26 @@ int utcDaliTextEditorInputStyleChanged01(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), static_cast( TextEditor::InputStyle::FONT_STYLE ), TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), static_cast(TextEditor::InputStyle::FONT_STYLE), TEST_LOCATION); Property::Map fontStyleMapSet; Property::Map fontStyleMapGet; - fontStyleMapGet = editor.GetProperty( TextEditor::Property::INPUT_FONT_STYLE ); - DALI_TEST_EQUALS( fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( fontStyleMapGet, fontStyleMapSet ), true, TEST_LOCATION ); + fontStyleMapGet = editor.GetProperty(TextEditor::Property::INPUT_FONT_STYLE); + DALI_TEST_EQUALS(fontStyleMapGet.Count(), fontStyleMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(fontStyleMapGet, fontStyleMapSet), true, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; // Create a tap event to touch the text editor. - TestGenerateTap( application, 191.0f, 25.0f ); + TestGenerateTap(application, 191.0f, 25.0f); // Render and notify application.SendNotification(); @@ -1480,8 +1545,8 @@ int utcDaliTextEditorInputStyleChanged01(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( !gInputStyleChangedCallbackCalled ); - DALI_TEST_CHECK( !inputStyleChangedSignal ); + DALI_TEST_CHECK(!gInputStyleChangedCallbackCalled); + DALI_TEST_CHECK(!inputStyleChangedSignal); END_TEST; } @@ -1498,34 +1563,33 @@ int utcDaliTextEditorInputStyleChanged02(void) // Load some fonts. - char* pathNamePtr = get_current_dir_name(); - const std::string pathName( pathNamePtr ); - free( pathNamePtr ); + char* pathNamePtr = get_current_dir_name(); + const std::string pathName(pathNamePtr); + free(pathNamePtr); TextAbstraction::FontClient fontClient = TextAbstraction::FontClient::Get(); - fontClient.SetDpi( 93u, 93u ); + fontClient.SetDpi(93u, 93u); - fontClient.GetFontId( pathName + DEFAULT_FONT_DIR + "/dejavu/DejaVuSerif.ttf", DEFAULT_FONT_SIZE ); - fontClient.GetFontId( pathName + DEFAULT_FONT_DIR + "/dejavu/DejaVuSerif-Bold.ttf", DEFAULT_FONT_SIZE ); + fontClient.GetFontId(pathName + DEFAULT_FONT_DIR + "/dejavu/DejaVuSerif.ttf", DEFAULT_FONT_SIZE); + fontClient.GetFontId(pathName + DEFAULT_FONT_DIR + "/dejavu/DejaVuSerif-Bold.ttf", DEFAULT_FONT_SIZE); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); - + DALI_TEST_CHECK(editor); - editor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - editor.SetProperty( TextEditor::Property::TEXT, "He llo world demo" ); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(TextEditor::Property::TEXT, "He llo world demo"); // connect to the text changed signal. ConnectionTracker* testTracker = new ConnectionTracker(); - editor.InputStyleChangedSignal().Connect( &TestInputStyleChangedCallback ); + editor.InputStyleChangedSignal().Connect(&TestInputStyleChangedCallback); bool inputStyleChangedSignal = false; - editor.ConnectSignal( testTracker, "inputStyleChanged", CallbackFunctor(&inputStyleChangedSignal) ); + editor.ConnectSignal(testTracker, "inputStyleChanged", CallbackFunctor(&inputStyleChangedSignal)); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // Render and notify application.SendNotification(); @@ -1535,12 +1599,12 @@ int utcDaliTextEditorInputStyleChanged02(void) application.RunIdles(); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; // Create a tap event to touch the text editor. - TestGenerateTap( application, 53.0f, 25.0f, 100 ); - TestGenerateTap( application, 53.0f, 25.0f, 200 ); + TestGenerateTap(application, 53.0f, 25.0f, 100); + TestGenerateTap(application, 53.0f, 25.0f, 200); // Render and notify application.SendNotification(); @@ -1549,31 +1613,31 @@ int utcDaliTextEditorInputStyleChanged02(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), - static_cast( TextEditor::InputStyle::FONT_FAMILY | - TextEditor::InputStyle::POINT_SIZE | - TextEditor::InputStyle::COLOR ), - TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), + static_cast(TextEditor::InputStyle::FONT_FAMILY | + TextEditor::InputStyle::POINT_SIZE | + TextEditor::InputStyle::COLOR), + TEST_LOCATION); - const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get(); - DALI_TEST_EQUALS( color, Color::GREEN, TEST_LOCATION ); + const Vector4 color = editor.GetProperty(TextEditor::Property::INPUT_COLOR).Get(); + DALI_TEST_EQUALS(color, Color::GREEN, TEST_LOCATION); - const std::string fontFamily = editor.GetProperty( TextEditor::Property::INPUT_FONT_FAMILY ).Get(); - DALI_TEST_EQUALS( fontFamily, "DejaVuSerif", TEST_LOCATION ); + const std::string fontFamily = editor.GetProperty(TextEditor::Property::INPUT_FONT_FAMILY).Get(); + DALI_TEST_EQUALS(fontFamily, "DejaVuSerif", TEST_LOCATION); - const float pointSize = editor.GetProperty( TextEditor::Property::INPUT_POINT_SIZE ).Get(); - DALI_TEST_EQUALS( pointSize, 18.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + const float pointSize = editor.GetProperty(TextEditor::Property::INPUT_POINT_SIZE).Get(); + DALI_TEST_EQUALS(pointSize, 18.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -1582,23 +1646,23 @@ int utcDaliTextEditorInputStyleChanged02(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), - static_cast( TextEditor::InputStyle::COLOR ), - TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), + static_cast(TextEditor::InputStyle::COLOR), + TEST_LOCATION); - const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get(); - DALI_TEST_EQUALS( color, Color::BLUE, TEST_LOCATION ); + const Vector4 color = editor.GetProperty(TextEditor::Property::INPUT_COLOR).Get(); + DALI_TEST_EQUALS(color, Color::BLUE, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -1607,14 +1671,14 @@ int utcDaliTextEditorInputStyleChanged02(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( !gInputStyleChangedCallbackCalled ); - DALI_TEST_CHECK( !inputStyleChangedSignal ); + DALI_TEST_CHECK(!gInputStyleChangedCallbackCalled); + DALI_TEST_CHECK(!inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -1623,40 +1687,40 @@ int utcDaliTextEditorInputStyleChanged02(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), - static_cast( TextEditor::InputStyle::COLOR ), - TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), + static_cast(TextEditor::InputStyle::COLOR), + TEST_LOCATION); - const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get(); - DALI_TEST_EQUALS( color, Color::BLACK, TEST_LOCATION ); + const Vector4 color = editor.GetProperty(TextEditor::Property::INPUT_COLOR).Get(); + DALI_TEST_EQUALS(color, Color::BLACK, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; - editor.SetProperty( TextEditor::Property::INPUT_COLOR, Color::YELLOW ); + editor.SetProperty(TextEditor::Property::INPUT_COLOR, Color::YELLOW); Property::Map fontStyleMapSet; - fontStyleMapSet.Insert( "weight", "thin" ); - fontStyleMapSet.Insert( "width", "condensed" ); - fontStyleMapSet.Insert( "slant", "italic" ); + fontStyleMapSet.Insert("weight", "thin"); + fontStyleMapSet.Insert("width", "condensed"); + fontStyleMapSet.Insert("slant", "italic"); - editor.SetProperty( TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet ); - editor.SetProperty( TextEditor::Property::INPUT_POINT_SIZE, 20.f ); - editor.SetProperty( TextEditor::Property::INPUT_LINE_SPACING, 5.f ); + editor.SetProperty(TextEditor::Property::INPUT_FONT_STYLE, fontStyleMapSet); + editor.SetProperty(TextEditor::Property::INPUT_POINT_SIZE, 20.f); + editor.SetProperty(TextEditor::Property::INPUT_LINE_SPACING, 5.f); - editor.SetProperty( TextEditor::Property::INPUT_UNDERLINE, "underline" ); - editor.SetProperty( TextEditor::Property::INPUT_SHADOW, "shadow" ); - editor.SetProperty( TextEditor::Property::INPUT_EMBOSS, "emboss" ); - editor.SetProperty( TextEditor::Property::INPUT_OUTLINE, "outline" ); - editor.SetProperty( DevelTextEditor::Property::INPUT_STRIKETHROUGH, "strikethrough" ); + editor.SetProperty(TextEditor::Property::INPUT_UNDERLINE, "underline"); + editor.SetProperty(TextEditor::Property::INPUT_SHADOW, "shadow"); + editor.SetProperty(TextEditor::Property::INPUT_EMBOSS, "emboss"); + editor.SetProperty(TextEditor::Property::INPUT_OUTLINE, "outline"); + editor.SetProperty(DevelTextEditor::Property::INPUT_STRIKETHROUGH, "strikethrough"); - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -1665,11 +1729,11 @@ int utcDaliTextEditorInputStyleChanged02(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( !gInputStyleChangedCallbackCalled ); - DALI_TEST_CHECK( !inputStyleChangedSignal ); + DALI_TEST_CHECK(!gInputStyleChangedCallbackCalled); + DALI_TEST_CHECK(!inputStyleChangedSignal); // Create a tap event to touch the text editor. - TestGenerateTap( application, 63.0f, 25.0f, 900 ); + TestGenerateTap(application, 63.0f, 25.0f, 900); // Render and notify application.SendNotification(); @@ -1678,40 +1742,40 @@ int utcDaliTextEditorInputStyleChanged02(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), - static_cast( TextEditor::InputStyle::COLOR | - TextEditor::InputStyle::POINT_SIZE | - TextEditor::InputStyle::FONT_STYLE | - TextEditor::InputStyle::LINE_SPACING | - TextEditor::InputStyle::UNDERLINE | - TextEditor::InputStyle::SHADOW | - TextEditor::InputStyle::EMBOSS | - TextEditor::InputStyle::OUTLINE ), - TEST_LOCATION ); - - const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get(); - DALI_TEST_EQUALS( color, Color::BLACK, TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), + static_cast(TextEditor::InputStyle::COLOR | + TextEditor::InputStyle::POINT_SIZE | + TextEditor::InputStyle::FONT_STYLE | + TextEditor::InputStyle::LINE_SPACING | + TextEditor::InputStyle::UNDERLINE | + TextEditor::InputStyle::SHADOW | + TextEditor::InputStyle::EMBOSS | + TextEditor::InputStyle::OUTLINE), + TEST_LOCATION); + + const Vector4 color = editor.GetProperty(TextEditor::Property::INPUT_COLOR).Get(); + DALI_TEST_EQUALS(color, Color::BLACK, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); gInputStyleChangedCallbackCalled = false; - gInputStyleMask = TextEditor::InputStyle::NONE; - inputStyleChangedSignal = false; + gInputStyleMask = TextEditor::InputStyle::NONE; + inputStyleChangedSignal = false; - editor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVuSerif" ); + editor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVuSerif"); fontStyleMapSet.Clear(); - fontStyleMapSet.Insert( "weight", "black" ); - fontStyleMapSet.Insert( "width", "expanded" ); - fontStyleMapSet.Insert( "slant", "oblique" ); + fontStyleMapSet.Insert("weight", "black"); + fontStyleMapSet.Insert("width", "expanded"); + fontStyleMapSet.Insert("slant", "oblique"); - editor.SetProperty( TextEditor::Property::FONT_STYLE, fontStyleMapSet ); + editor.SetProperty(TextEditor::Property::FONT_STYLE, fontStyleMapSet); // Create a tap event to touch the text editor. - TestGenerateTap( application, 30.0f, 25.0f, 1500 ); + TestGenerateTap(application, 30.0f, 25.0f, 1500); // Render and notify application.SendNotification(); @@ -1720,19 +1784,19 @@ int utcDaliTextEditorInputStyleChanged02(void) // Executes the idle callbacks added by the text control on the change of input style. application.RunIdles(); - DALI_TEST_CHECK( gInputStyleChangedCallbackCalled ); - if( gInputStyleChangedCallbackCalled ) + DALI_TEST_CHECK(gInputStyleChangedCallbackCalled); + if(gInputStyleChangedCallbackCalled) { - DALI_TEST_EQUALS( static_cast( gInputStyleMask ), - static_cast( TextEditor::InputStyle::COLOR | - TextEditor::InputStyle::POINT_SIZE | - TextEditor::InputStyle::FONT_STYLE ), - TEST_LOCATION ); - - const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get(); - DALI_TEST_EQUALS( color, Color::YELLOW, TEST_LOCATION ); + DALI_TEST_EQUALS(static_cast(gInputStyleMask), + static_cast(TextEditor::InputStyle::COLOR | + TextEditor::InputStyle::POINT_SIZE | + TextEditor::InputStyle::FONT_STYLE), + TEST_LOCATION); + + const Vector4 color = editor.GetProperty(TextEditor::Property::INPUT_COLOR).Get(); + DALI_TEST_EQUALS(color, Color::YELLOW, TEST_LOCATION); } - DALI_TEST_CHECK( inputStyleChangedSignal ); + DALI_TEST_CHECK(inputStyleChangedSignal); END_TEST; } @@ -1746,78 +1810,78 @@ int utcDaliTextEditorEvent01(void) // have the focus and add text with key events should be possible. TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Add a key event but as the text editor has not the focus it should do nothing. - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ), std::string(""), TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT), std::string(""), TEST_LOCATION); // Create a tap event to touch the text editor. - TestGenerateTap( application, 150.0f, 25.0f ); + TestGenerateTap(application, 150.0f, 25.0f); // Render and notify application.SendNotification(); application.Render(); // Now the text editor has the focus, so it can handle the key events. - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ), std::string("aa"), TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT), std::string("aa"), TEST_LOCATION); // Create a second text editor and send key events to it. TextEditor editor2 = TextEditor::New(); - editor2.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor2.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - editor2.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 100.f ) ); - editor2.SetProperty( Actor::Property::POSITION, Vector2( 100.f, 100.f )); + editor2.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor2.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor2.SetProperty(Actor::Property::SIZE, Vector2(100.f, 100.f)); + editor2.SetProperty(Actor::Property::POSITION, Vector2(100.f, 100.f)); - application.GetScene().Add( editor2 ); + application.GetScene().Add(editor2); // Render and notify application.SendNotification(); application.Render(); // Create a tap event on the second text editor. - TestGenerateTap( application, 150.0f, 125.0f ); + TestGenerateTap(application, 150.0f, 125.0f); // Render and notify application.SendNotification(); application.Render(); // The second text editor has the focus. It should handle the key events. - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Check the text has been added to the second text editor. - DALI_TEST_EQUALS( editor2.GetProperty( TextEditor::Property::TEXT ), std::string("aa"), TEST_LOCATION ); + DALI_TEST_EQUALS(editor2.GetProperty(TextEditor::Property::TEXT), std::string("aa"), TEST_LOCATION); END_TEST; } @@ -1830,127 +1894,127 @@ int utcDaliTextEditorEvent02(void) // Checks if the right number of actors are created. TextEditor editor = TextEditor::New(); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - DALI_TEST_CHECK( editor ); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Check there are the expected number of children (the stencil). - DALI_TEST_EQUALS( editor.GetChildCount(), 1u, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetChildCount(), 1u, TEST_LOCATION); - Actor stencil = editor.GetChildAt( 0u ); + Actor stencil = editor.GetChildAt(0u); // Create a tap event to touch the text editor. - TestGenerateTap( application, 150.0f, 25.0f, 100 ); + TestGenerateTap(application, 150.0f, 25.0f, 100); // Render and notify application.SendNotification(); application.Render(); - Actor layer = editor.GetChildAt( 1u ); - DALI_TEST_EQUALS( layer.GetChildCount(), 1u, TEST_LOCATION ); // The cursor. - DALI_TEST_EQUALS( stencil.GetChildCount(), 0u, TEST_LOCATION ); + Actor layer = editor.GetChildAt(2u); + DALI_TEST_EQUALS(layer.GetChildCount(), 1u, TEST_LOCATION); // The cursor. + DALI_TEST_EQUALS(stencil.GetChildCount(), 0u, TEST_LOCATION); // Now the text editor has the focus, so it can handle the key events. - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Checks the cursor and the renderer have been created. - DALI_TEST_EQUALS( layer.GetChildCount(), 1u, TEST_LOCATION ); // The cursor. - DALI_TEST_EQUALS( stencil.GetChildCount(), 1u, TEST_LOCATION ); // The renderer + DALI_TEST_EQUALS(layer.GetChildCount(), 1u, TEST_LOCATION); // The cursor. + DALI_TEST_EQUALS(stencil.GetChildCount(), 2u, TEST_LOCATION); // The renderer, clipped cursor - Control cursor = Control::DownCast( layer.GetChildAt( 0u ) ); - DALI_TEST_CHECK( cursor ); + Control cursor = Control::DownCast(layer.GetChildAt(0u)); + DALI_TEST_CHECK(cursor); // The stencil actor has a container with all the actors which contain the text renderers. - Actor container = stencil.GetChildAt( 0u ); - for( unsigned int index = 0; index < container.GetChildCount(); ++index ) + Actor container = stencil.GetChildAt(0u); + for(unsigned int index = 0; index < container.GetChildCount(); ++index) { - Renderer renderer = container.GetChildAt( index ).GetRendererAt( 0u ); - DALI_TEST_CHECK( renderer ); + Renderer renderer = container.GetChildAt(index).GetRendererAt(0u); + DALI_TEST_CHECK(renderer); } // Move the cursor and check the position changes. - Vector3 position1 = cursor.GetCurrentProperty< Vector3 >( Actor::Property::POSITION ); + Vector3 position1 = cursor.GetCurrentProperty(Actor::Property::POSITION); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - Vector3 position2 = cursor.GetCurrentProperty< Vector3 >( Actor::Property::POSITION ); + Vector3 position2 = cursor.GetCurrentProperty(Actor::Property::POSITION); - DALI_TEST_CHECK( position2.x < position1.x ); + DALI_TEST_CHECK(position2.x < position1.x); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - Vector3 position3 = cursor.GetCurrentProperty< Vector3 >( Actor::Property::POSITION ); + Vector3 position3 = cursor.GetCurrentProperty(Actor::Property::POSITION); - DALI_TEST_EQUALS( position1, position3, TEST_LOCATION ); // Should be in the same position1. + DALI_TEST_EQUALS(position1, position3, TEST_LOCATION); // Should be in the same position1. // Send some taps and check the cursor positions. // Try to tap at the beginning. - TestGenerateTap( application, 1.0f, 25.0f, 700 ); + TestGenerateTap(application, 1.0f, 25.0f, 700); // Render and notify application.SendNotification(); application.Render(); // Cursor position should be the same than position1. - Vector3 position4 = cursor.GetCurrentProperty< Vector3 >( Actor::Property::POSITION ); + Vector3 position4 = cursor.GetCurrentProperty(Actor::Property::POSITION); - DALI_TEST_EQUALS( position2, position4, TEST_LOCATION ); // Should be in the same position2. + DALI_TEST_EQUALS(position2, position4, TEST_LOCATION); // Should be in the same position2. // Tap away from the start position. - TestGenerateTap( application, 16.0f, 25.0f, 1400 ); + TestGenerateTap(application, 16.0f, 25.0f, 1400); // Render and notify application.SendNotification(); application.Render(); - Vector3 position5 = cursor.GetCurrentProperty< Vector3 >( Actor::Property::POSITION ); + Vector3 position5 = cursor.GetCurrentProperty(Actor::Property::POSITION); - DALI_TEST_CHECK( position5.x > position4.x ); + DALI_TEST_CHECK(position5.x > position4.x); // Remove all the text. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - editor.SetProperty( TextEditor::Property::TEXT, "" ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + editor.SetProperty(TextEditor::Property::TEXT, ""); // Render and notify application.SendNotification(); application.Render(); // Cursor position should be the same than position2. - Vector3 position6 = cursor.GetCurrentProperty< Vector3 >( Actor::Property::POSITION ); + Vector3 position6 = cursor.GetCurrentProperty(Actor::Property::POSITION); - DALI_TEST_EQUALS( position2, position6, TEST_LOCATION );// Should be in the same position2. + DALI_TEST_EQUALS(position2, position6, TEST_LOCATION); // Should be in the same position2. - // Should not be a renderer. - DALI_TEST_EQUALS( stencil.GetChildCount(), 0u, TEST_LOCATION ); + // Should not be a renderer, there is only a clipped cursor. + DALI_TEST_EQUALS(stencil.GetChildCount(), 1u, TEST_LOCATION); END_TEST; } @@ -1963,18 +2027,18 @@ int utcDaliTextEditorEvent03(void) // Checks if the highlight actor is created. TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::TEXT, "This is a long text for the size of the text-editor." ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 30.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(TextEditor::Property::TEXT, "This is a long text for the size of the text-editor."); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(30.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); @@ -1983,7 +2047,7 @@ int utcDaliTextEditorEvent03(void) // Send some taps and check text controller with clipboard window Dali::Clipboard clipboard = Clipboard::Get(); clipboard.ShowClipboard(); - TestGenerateTap( application, 3.0f, 25.0f, 100 ); + TestGenerateTap(application, 3.0f, 25.0f, 100); clipboard.HideClipboard(); // Render and notify @@ -1991,51 +2055,51 @@ int utcDaliTextEditorEvent03(void) application.Render(); // Tap first to get the focus. - TestGenerateTap( application, 3.0f, 25.0f, 1000 ); + TestGenerateTap(application, 3.0f, 25.0f, 1000); // Render and notify application.SendNotification(); application.Render(); // Double tap to select a word. - TestGenerateTap( application, 3.0f, 25.0f, 1100 ); + TestGenerateTap(application, 3.0f, 25.0f, 1100); // Render and notify application.SendNotification(); application.Render(); // The stencil actor should have two actors: the renderer and the highlight actor. - Actor stencil = editor.GetChildAt( 0u ); + Actor stencil = editor.GetChildAt(0u); // Highlight needs to be drawn before text, so should come first in child order - Renderer highlight = stencil.GetChildAt( 0u ).GetRendererAt( 0u ); - DALI_TEST_CHECK( highlight ); + Renderer highlight = stencil.GetChildAt(0u).GetRendererAt(0u); + DALI_TEST_CHECK(highlight); // The stencil actor has a container with all the actors which contain the text renderers. - Actor container = stencil.GetChildAt( 1u ); - for( unsigned int index = 0; index < container.GetChildCount(); ++index ) + Actor container = stencil.GetChildAt(1u); + for(unsigned int index = 0; index < container.GetChildCount(); ++index) { - Renderer renderer = container.GetChildAt( index ).GetRendererAt( 0u ); - DALI_TEST_CHECK( renderer ); + Renderer renderer = container.GetChildAt(index).GetRendererAt(0u); + DALI_TEST_CHECK(renderer); } // Double tap out of bounds - TestGenerateTap( application, 29.0f, 25.0f, 1700 ); - TestGenerateTap( application, 29.0f, 25.0f, 1800 ); + TestGenerateTap(application, 29.0f, 25.0f, 1700); + TestGenerateTap(application, 29.0f, 25.0f, 1800); // Render and notify application.SendNotification(); application.Render(); // The stencil actor should have one actors: the renderer actor. - stencil = editor.GetChildAt( 0u ); + stencil = editor.GetChildAt(0u); // The stencil actor has a container with all the actors which contain the text renderers. - container = stencil.GetChildAt( 0u ); - for( unsigned int index = 0; index < container.GetChildCount(); ++index ) + container = stencil.GetChildAt(0u); + for(unsigned int index = 0; index < container.GetChildCount(); ++index) { - Renderer renderer = container.GetChildAt( index ).GetRendererAt( 0u ); - DALI_TEST_CHECK( renderer ); + Renderer renderer = container.GetChildAt(index).GetRendererAt(0u); + DALI_TEST_CHECK(renderer); } // Long Press @@ -2063,42 +2127,42 @@ int utcDaliTextEditorEvent04(void) // Checks if the highlight actor is created. TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::TEXT, "Hello\nworl" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworl"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); application.Render(); // Move at the end of the text. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - for( unsigned int index = 0u; index < 10u; ++index ) + for(unsigned int index = 0u; index < 10u; ++index) { - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -2106,26 +2170,26 @@ int utcDaliTextEditorEvent04(void) } // Add a character - application.ProcessEvent( GenerateKey( "d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "Hello\nworld", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("Hello\nworld", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Add some key events - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_UP, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_UP, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_UP, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_UP, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - for( unsigned int index = 0u; index < 10u; ++index ) + for(unsigned int index = 0u; index < 10u; ++index) { - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -2133,13 +2197,13 @@ int utcDaliTextEditorEvent04(void) } // Add a character - application.ProcessEvent( GenerateKey( " ", "", " ", KEY_WHITE_SPACE_CODE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey(" ", "", " ", KEY_WHITE_SPACE_CODE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( " Hello\nworld", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS(" Hello\nworld", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); END_TEST; } @@ -2152,76 +2216,76 @@ int utcDaliTextEditorEvent05(void) // Checks if the highlight actor is created. TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::TEXT, "Hello\nworl" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 50.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - editor.SetProperty( TextEditor::Property::SMOOTH_SCROLL, true ); - editor.SetProperty( TextEditor::Property::SMOOTH_SCROLL_DURATION, 0.2f ); - editor.SetProperty( TextEditor::Property::ENABLE_SCROLL_BAR, true ); - editor.SetProperty( TextEditor::Property::SCROLL_BAR_SHOW_DURATION, 0.3f ); - editor.SetProperty( TextEditor::Property::SCROLL_BAR_FADE_DURATION, 0.2f ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworl"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(50.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(TextEditor::Property::SMOOTH_SCROLL, true); + editor.SetProperty(TextEditor::Property::SMOOTH_SCROLL_DURATION, 0.2f); + editor.SetProperty(TextEditor::Property::ENABLE_SCROLL_BAR, true); + editor.SetProperty(TextEditor::Property::SCROLL_BAR_SHOW_DURATION, 0.3f); + editor.SetProperty(TextEditor::Property::SCROLL_BAR_FADE_DURATION, 0.2f); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); application.Render(); // Move at the end of the text. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - for( unsigned int index = 0u; index < 10u; ++index ) + for(unsigned int index = 0u; index < 10u; ++index) { // Add a character - application.ProcessEvent( GenerateKey( "d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); } // Modify duration after scroll is enabled - editor.SetProperty( TextEditor::Property::SMOOTH_SCROLL_DURATION, 0.1f ); + editor.SetProperty(TextEditor::Property::SMOOTH_SCROLL_DURATION, 0.1f); // Continuous scroll left to increase coverage - for( unsigned int index = 0u; index < 10u; ++index ) + for(unsigned int index = 0u; index < 10u; ++index) { - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); } - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SMOOTH_SCROLL_DURATION ), 0.1f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SMOOTH_SCROLL ), true, TEST_LOCATION ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::ENABLE_SCROLL_BAR ), true, TEST_LOCATION ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SCROLL_BAR_SHOW_DURATION ), 0.3f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::SCROLL_BAR_FADE_DURATION ), 0.2f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SMOOTH_SCROLL_DURATION), 0.1f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SMOOTH_SCROLL), true, TEST_LOCATION); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::ENABLE_SCROLL_BAR), true, TEST_LOCATION); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SCROLL_BAR_SHOW_DURATION), 0.3f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::SCROLL_BAR_FADE_DURATION), 0.2f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); // Press Escape to increase coverage - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_ESCAPE, 0, 0, Integration::KeyEvent::UP, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_ESCAPE, 0, 0, Integration::KeyEvent::UP, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); application.SendNotification(); application.Render(); - DALI_TEST_CHECK( !editor.HasKeyInputFocus() ); + DALI_TEST_CHECK(!editor.HasKeyInputFocus()); END_TEST; } @@ -2234,82 +2298,81 @@ int utcDaliTextEditorEvent06(void) // Checks if the highlight actor is created. TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::TEXT, "Hello\nworld\nHello world" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworld\nHello world"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); application.Render(); // Move to seconds line of the text. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - float layoutHeight = editor.GetHeightForWidth( 100.f ); - + float layoutHeight = editor.GetHeightForWidth(100.f); // Add another script characters ( glyph height is defferent ) - application.ProcessEvent( GenerateKey( "d", "", "ㅁ", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "ㅁ", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "d", "", "ኢ", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "ኢ", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("d", "", "ㅁ", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "ㅁ", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("d", "", "ኢ", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "ኢ", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Delete characters - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); - DALI_TEST_EQUALS( layoutHeight, editor.GetHeightForWidth( 100.f ), TEST_LOCATION ); + DALI_TEST_EQUALS(layoutHeight, editor.GetHeightForWidth(100.f), TEST_LOCATION); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "Hello\nworld\nHello world", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("Hello\nworld\nHello world", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // For coverage - application.ProcessEvent( GenerateKey( "", "", "", 0, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", 0, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); application.SendNotification(); application.Render(); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); application.SendNotification(); application.Render(); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_VOLUME_UP, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_VOLUME_UP, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); application.SendNotification(); application.Render(); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_VOLUME_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_VOLUME_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); application.SendNotification(); application.Render(); - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_DELETE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_DELETE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); application.SendNotification(); application.Render(); - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); application.SendNotification(); application.Render(); - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); application.SendNotification(); application.Render(); @@ -2324,155 +2387,154 @@ int utcDaliTextEditorEvent07(void) // Checks if the highlight actor is created. TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::TEXT, "Hello\nworld\nHello world" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworld\nHello world"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); application.Render(); // Move to second line of the text. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Select some text in the right of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Cut the selected text - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "x", "", "x", KEY_X_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("x", "", "x", KEY_X_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "Hello\nld\nHello world", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("Hello\nld\nHello world", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Select some text in the left of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "",DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Copy the selected text - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "c", "", "c", KEY_C_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("c", "", "c", KEY_C_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Move the cursor to the third line - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Paste the selected text at the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "v", "", "v", KEY_V_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "v", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("v", "", "v", KEY_V_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "v", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "Hello\nld\nHello lo\nworld", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); - + DALI_TEST_EQUALS("Hello\nld\nHello lo\nworld", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Disable Shift Selection - editor.SetProperty( DevelTextEditor::Property::ENABLE_SHIFT_SELECTION, false ); + editor.SetProperty(DevelTextEditor::Property::ENABLE_SHIFT_SELECTION, false); // Test to select some text in the right of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Cut the selected text - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "x", "", "x", KEY_X_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("x", "", "x", KEY_X_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // The text isn't selected and not changed because of 'SetProperty( DevelTextEditor::Property::ENABLE_SHIFT_SELECTION, false )' - DALI_TEST_EQUALS( "Hello\nld\nHello lo\nworld", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("Hello\nld\nHello lo\nworld", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Test to select some text in the left of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Copy the selected text - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "c", "", "c", KEY_C_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("c", "", "c", KEY_C_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // The text is not selected and not changed because of 'SetProperty( DevelTextEditor::Property::ENABLE_SHIFT_SELECTION, false )' - DALI_TEST_EQUALS( "Hello\nld\nHello lo\nworld", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("Hello\nld\nHello lo\nworld", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Select all Text - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // replace text with "c" - application.ProcessEvent( GenerateKey( "c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); //text is "c" - DALI_TEST_EQUALS( "c", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("c", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // select all text DevelTextEditor::SelectWholeText(editor); @@ -2482,8 +2544,8 @@ int utcDaliTextEditorEvent07(void) application.Render(); // Copy the selected text using logical keys - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "ؤ", "c", "ؤ", KEY_C_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("ؤ", "c", "ؤ", KEY_C_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -2497,30 +2559,30 @@ int utcDaliTextEditorEvent07(void) application.Render(); // Paste the selected using logical keys - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "ر", "v", "ر", KEY_V_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "v", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("ر", "v", "ر", KEY_V_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "v", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); //text is "cc" - DALI_TEST_EQUALS( "cc", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("cc", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // select all using logical keys - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "ش", "a", "ش", KEY_A_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("ش", "a", "ش", KEY_A_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // cut text using logical keys - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "ء", "x", "ء", KEY_X_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("ء", "x", "ء", KEY_X_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); //text is "" - DALI_TEST_EQUALS( "", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); END_TEST; } @@ -2533,25 +2595,25 @@ int utcDaliTextEditorEvent08(void) // Checks if the highlight actor is released correctly. TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::TEXT, "DALi" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(TextEditor::Property::TEXT, "DALi"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); @@ -2559,164 +2621,164 @@ int utcDaliTextEditorEvent08(void) // When the left selection handle and the right selection handle are at the same position, the highlight box should be deactivated. // Test to select some text in the left of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Test to the left selection handle position and the right selection handle position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Test to select full text in the left of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Test to release the current full text selection - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Test to move the current cursor position correctly - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Add a character - application.ProcessEvent( GenerateKey( "d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "DdALi", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("DdALi", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Test to select some text in the right of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Test the cursor position with right arrow key - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Add a character - application.ProcessEvent( GenerateKey( "c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "DdALci", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("DdALci", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Test to select some text in the left of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Test the cursor position with left arrow key - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Add a character - application.ProcessEvent( GenerateKey( "c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "DcdALci", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("DcdALci", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Test to select some text in the right of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Test the cursor position with left arrow key - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Add a character - application.ProcessEvent( GenerateKey( "x", "", "x", KEY_X_CODE, 0, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("x", "", "x", KEY_X_CODE, 0, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "DcxdALci", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("DcxdALci", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Test to select some text in the left of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Test the cursor position with right arrow key - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Add a character - application.ProcessEvent( GenerateKey( "c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "DcxcdALci", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("DcxcdALci", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); END_TEST; } @@ -2727,62 +2789,62 @@ int utcDaliTextEditorHandles(void) tet_infoline(" utcDaliTextEditorHandles"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::TEXT, "This is a long text for the size of the text-editor." ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( TextEditor::Property::GRAB_HANDLE_IMAGE, HANDLE_IMAGE_FILE_NAME ); - editor.SetProperty( TextEditor::Property::SMOOTH_SCROLL, true ); + editor.SetProperty(TextEditor::Property::TEXT, "This is a long text for the size of the text-editor."); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(TextEditor::Property::GRAB_HANDLE_IMAGE, HANDLE_IMAGE_FILE_NAME); + editor.SetProperty(TextEditor::Property::SMOOTH_SCROLL, true); - editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, Property::Map{ {"filename", HANDLE_LEFT_SELECTION_FILE_NAME } } ); - editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT, Property::Map{ {"filename", HANDLE_LEFT_SELECTION_FILE_NAME } } ); - editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, Property::Map{ {"filename", HANDLE_RIGHT_SELECTION_FILE_NAME } } ); - editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, Property::Map{ {"filename", HANDLE_RIGHT_SELECTION_FILE_NAME } } ); + editor.SetProperty(TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, Property::Map{{"filename", HANDLE_LEFT_SELECTION_FILE_NAME}}); + editor.SetProperty(TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT, Property::Map{{"filename", HANDLE_LEFT_SELECTION_FILE_NAME}}); + editor.SetProperty(TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, Property::Map{{"filename", HANDLE_RIGHT_SELECTION_FILE_NAME}}); + editor.SetProperty(TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, Property::Map{{"filename", HANDLE_RIGHT_SELECTION_FILE_NAME}}); - editor.SetProperty( Actor::Property::SIZE, Vector2( 30.f, 500.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::SIZE, Vector2(30.f, 500.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap first to get the focus. - TestGenerateTap( application, 3.0f, 25.0f, 100 ); + TestGenerateTap(application, 3.0f, 25.0f, 100); // Render and notify application.SendNotification(); application.Render(); // Tap to create the grab handle. - TestGenerateTap( application, 3.0f, 25.0f, 700 ); + TestGenerateTap(application, 3.0f, 25.0f, 700); // Render and notify application.SendNotification(); application.Render(); // Get the active layer where the text's decoration is added. - Actor activeLayer = editor.GetChildAt( 1u ); + Actor activeLayer = editor.GetChildAt(1u); // Get the handle's actor. - Actor handle = activeLayer.GetChildAt( 1u ); - handle.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 100.f ) ); + Actor handle = activeLayer.GetChildAt(0u); + handle.SetProperty(Actor::Property::SIZE, Vector2(100.f, 100.f)); // Render and notify application.SendNotification(); application.Render(); // Touch the grab handle to set it as pressed. - Vector2 touchPos( 10.0f, 50.0f ); + Vector2 touchPos(10.0f, 50.0f); Dali::Integration::TouchEvent event; event = Dali::Integration::TouchEvent(); - event.AddPoint( GetPointDownInside( touchPos ) ); - application.ProcessEvent( event ); + event.AddPoint(GetPointDownInside(touchPos)); + application.ProcessEvent(event); // Render and notify application.SendNotification(); @@ -2790,42 +2852,41 @@ int utcDaliTextEditorHandles(void) // Pan the grab handle uint32_t time = 100; - TestStartPan( application, Vector2(10.0f, 50.0f), Vector2(10.0f, 50.0f), time ); - TestMovePan( application, Vector2(10.0f, 30.0f), time ); - TestEndPan( application, Vector2(10.0f, 50.0f), time); + TestStartPan(application, Vector2(10.0f, 50.0f), Vector2(10.0f, 50.0f), time); + TestMovePan(application, Vector2(10.0f, 30.0f), time); + TestEndPan(application, Vector2(10.0f, 50.0f), time); application.SendNotification(); application.Render(); - // Release the grab handle. event = Dali::Integration::TouchEvent(); - event.AddPoint( GetPointUpInside( touchPos ) ); - application.ProcessEvent( event ); + event.AddPoint(GetPointUpInside(touchPos)); + application.ProcessEvent(event); // Render and notify application.SendNotification(); application.Render(); // Tap first to get the focus. - TestGenerateTap( application, 3.0f, 25.0f, 1400 ); + TestGenerateTap(application, 3.0f, 25.0f, 1400); // Render and notify application.SendNotification(); application.Render(); // Double tap to select a word and create the selection handles. - TestGenerateTap( application, 3.0f, 25.0f, 1500 ); + TestGenerateTap(application, 3.0f, 25.0f, 1500); // Render and notify application.SendNotification(); application.Render(); - touchPos = Vector2( 10.0f, 50.0f ); + touchPos = Vector2(10.0f, 50.0f); // Touch the left selection handle to set it as pressed. event = Dali::Integration::TouchEvent(); - event.AddPoint( GetPointDownInside( touchPos ) ); - application.ProcessEvent( event ); + event.AddPoint(GetPointDownInside(touchPos)); + application.ProcessEvent(event); // Render and notify application.SendNotification(); @@ -2833,8 +2894,8 @@ int utcDaliTextEditorHandles(void) // Release the left selection handle. event = Dali::Integration::TouchEvent(); - event.AddPoint( GetPointUpInside( touchPos ) ); - application.ProcessEvent( event ); + event.AddPoint(GetPointUpInside(touchPos)); + application.ProcessEvent(event); // Render and notify application.SendNotification(); @@ -2848,41 +2909,96 @@ int utcDaliTextEditorUnderPropertyStringP(void) ToolkitTestApplication application; tet_infoline(" utcDaliTextEditorUnderPropertyStringP"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - std::string underlineSettings1( "{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}" ); + std::string underlineSettings1("{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\",\"type\":\"SOLID\",\"dashWidth\":\"2\",\"dashGap\":\"1\"}"); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::UNDERLINE, underlineSettings1 ); - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::UNDERLINE ), underlineSettings1, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineSettings1); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::UNDERLINE), underlineSettings1, TEST_LOCATION); tet_infoline("Set underline settings with a map"); // Check the input underline property Property::Map underlineMapSet; Property::Map underlineMapGet; - underlineMapSet.Insert( "enable", true ); - underlineMapSet.Insert( "color", Color::BLUE ); - underlineMapSet.Insert( "height", 2 ); + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::BLUE); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::SOLID); + underlineMapSet.Insert("dashWidth", 2); + underlineMapSet.Insert("dashGap", 1); + + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + editor.SetProperty(TextEditor::Property::TEXT, "text"); + underlineMapGet = editor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapSet, underlineMapGet), true, TEST_LOCATION); + + application.SendNotification(); + application.Render(); + + underlineMapSet.Clear(); + underlineMapGet.Clear(); + + tet_infoline("Set dashed underline settings with a map"); + // Check the input underline property + underlineMapSet.Clear(); + underlineMapGet.Clear(); + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::BLUE); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::DASHED); + underlineMapSet.Insert("dashWidth", 5); + underlineMapSet.Insert("dashGap", 3); + + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + editor.SetProperty(TextEditor::Property::TEXT, "text"); + underlineMapGet = editor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapSet, underlineMapGet), true, TEST_LOCATION); + + // Check the input underline property + underlineMapSet.Clear(); + underlineMapGet.Clear(); + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::BLUE); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::DOUBLE); + underlineMapSet.Insert("dashWidth", 5); + underlineMapSet.Insert("dashGap", 3); + + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + editor.SetProperty(TextEditor::Property::TEXT, "text"); + underlineMapGet = editor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapSet, underlineMapGet), true, TEST_LOCATION); - editor.SetProperty( TextEditor::Property::UNDERLINE, underlineMapSet ); - underlineMapGet = editor.GetProperty( TextEditor::Property::UNDERLINE ); - DALI_TEST_EQUALS( underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( underlineMapSet, underlineMapGet ), true, TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + editor.SetProperty(TextEditor::Property::TEXT, "text"); + underlineMapGet = editor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapSet, underlineMapGet), true, TEST_LOCATION); + + application.SendNotification(); + application.Render(); + + underlineMapSet.Clear(); + underlineMapGet.Clear(); tet_infoline("Set underline settings with a string"); - editor.SetProperty( TextEditor::Property::UNDERLINE, underlineSettings1 ); - Property::Value value = editor.GetProperty( TextEditor::Property::UNDERLINE ); - std::string result; + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineSettings1); + Property::Value value = editor.GetProperty(TextEditor::Property::UNDERLINE); + std::string result; value.Get(result); - DALI_TEST_EQUALS( result , underlineSettings1, TEST_LOCATION ); + DALI_TEST_EQUALS(result, underlineSettings1, TEST_LOCATION); tet_infoline("Trying to set invalid underline settings, should not update and stay at previous settings"); - std::string underlineSettingsVoid( "{\"enable\":\"true\",\"coooolor\":\"blue\",\"heeeight\":\"4\"}" ); - editor.SetProperty( TextEditor::Property::UNDERLINE, underlineSettingsVoid ); - value = editor.GetProperty( TextEditor::Property::UNDERLINE ); + std::string underlineSettingsVoid("{\"enable\":\"true\",\"coooolor\":\"blue\",\"heeeight\":\"4\"}"); + editor.SetProperty(TextEditor::Property::UNDERLINE, underlineSettingsVoid); + value = editor.GetProperty(TextEditor::Property::UNDERLINE); value.Get(result); - DALI_TEST_EQUALS( result , underlineSettings1, TEST_LOCATION ); + DALI_TEST_EQUALS(result, underlineSettings1, TEST_LOCATION); END_TEST; } @@ -2892,41 +3008,41 @@ int utcDaliTextEditorStrikethroughPropertyStringP(void) ToolkitTestApplication application; tet_infoline(" utcDaliTextEditorStrikethroughPropertyStringP"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - std::string strikethroughSettings1( "{\"enable\":\"true\",\"color\":\"red\",\"height\":\"2\"}" ); + std::string strikethroughSettings1("{\"enable\":\"true\",\"color\":\"red\",\"height\":\"2\"}"); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( DevelTextEditor::Property::STRIKETHROUGH, strikethroughSettings1 ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::STRIKETHROUGH ), strikethroughSettings1, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::STRIKETHROUGH, strikethroughSettings1); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::STRIKETHROUGH), strikethroughSettings1, TEST_LOCATION); tet_infoline("Set strikethrough settings with a map"); // Check the input strikethrough property Property::Map strikethroughMapSet; Property::Map strikethroughMapGet; - strikethroughMapSet.Insert( "enable", true ); - strikethroughMapSet.Insert( "color", Color::BLUE ); - strikethroughMapSet.Insert( "height", 2.0f ); + strikethroughMapSet.Insert("enable", true); + strikethroughMapSet.Insert("color", Color::BLUE); + strikethroughMapSet.Insert("height", 2.0f); - editor.SetProperty( DevelTextEditor::Property::STRIKETHROUGH, strikethroughMapSet ); - strikethroughMapGet = editor.GetProperty( DevelTextEditor::Property::STRIKETHROUGH ); - DALI_TEST_EQUALS( strikethroughMapGet.Count(), strikethroughMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( strikethroughMapSet, strikethroughMapGet ), true, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::STRIKETHROUGH, strikethroughMapSet); + strikethroughMapGet = editor.GetProperty(DevelTextEditor::Property::STRIKETHROUGH); + DALI_TEST_EQUALS(strikethroughMapGet.Count(), strikethroughMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(strikethroughMapSet, strikethroughMapGet), true, TEST_LOCATION); tet_infoline("Set strikethrough settings with a string"); - editor.SetProperty( DevelTextEditor::Property::STRIKETHROUGH, strikethroughSettings1 ); - Property::Value value = editor.GetProperty( DevelTextEditor::Property::STRIKETHROUGH ); - std::string result; + editor.SetProperty(DevelTextEditor::Property::STRIKETHROUGH, strikethroughSettings1); + Property::Value value = editor.GetProperty(DevelTextEditor::Property::STRIKETHROUGH); + std::string result; value.Get(result); - DALI_TEST_EQUALS( result , strikethroughSettings1, TEST_LOCATION ); + DALI_TEST_EQUALS(result, strikethroughSettings1, TEST_LOCATION); tet_infoline("Trying to set invalid strikethrough settings, should not update and stay at previous settings"); - std::string strikethroughSettingsVoid( "{\"enable\":\"true\",\"coooolor\":\"blue\",\"height\":\"2\"}" ); - editor.SetProperty( DevelTextEditor::Property::STRIKETHROUGH, strikethroughSettingsVoid ); - value = editor.GetProperty( TextEditor::Property::UNDERLINE ); + std::string strikethroughSettingsVoid("{\"enable\":\"true\",\"coooolor\":\"blue\",\"height\":\"2\"}"); + editor.SetProperty(DevelTextEditor::Property::STRIKETHROUGH, strikethroughSettingsVoid); + value = editor.GetProperty(TextEditor::Property::UNDERLINE); value.Get(result); - DALI_TEST_EQUALS( result , strikethroughSettings1, TEST_LOCATION ); + DALI_TEST_EQUALS(result, strikethroughSettings1, TEST_LOCATION); END_TEST; } @@ -2934,21 +3050,21 @@ int utcDaliTextEditorStrikethroughPropertyStringP(void) int utcDaliTextEditorShadowPropertyStringP(void) { ToolkitTestApplication application; - tet_infoline(" utcDaliTextEditorUnderPropertyStringP Setting Shadow propeties by string"); + tet_infoline(" utcDaliTextEditorShadowPropertyStringP Setting Shadow propeties by string"); TextEditor editor = TextEditor::New(); - std::string shadowSettings( "{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}" ); + std::string shadowSettings("{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}"); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::SHADOW, "{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}" ); + editor.SetProperty(TextEditor::Property::SHADOW, "{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}"); - Property::Value value = editor.GetProperty( TextEditor::Property::SHADOW ); - std::string result; + Property::Value value = editor.GetProperty(TextEditor::Property::SHADOW); + std::string result; value.Get(result); - DALI_TEST_EQUALS( result, shadowSettings, TEST_LOCATION ); + DALI_TEST_EQUALS(result, shadowSettings, TEST_LOCATION); END_TEST; } @@ -2960,17 +3076,17 @@ int utcDaliTextEditorFontStylePropertyStringP(void) TextEditor editor = TextEditor::New(); - std::string fontStyleSettings( "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}" ); + std::string fontStyleSettings("{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}"); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}" ); + editor.SetProperty(TextEditor::Property::FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}"); - Property::Value value = editor.GetProperty( TextEditor::Property::FONT_STYLE ); - std::string result; + Property::Value value = editor.GetProperty(TextEditor::Property::FONT_STYLE); + std::string result; value.Get(result); - DALI_TEST_EQUALS( result, fontStyleSettings, TEST_LOCATION ); + DALI_TEST_EQUALS(result, fontStyleSettings, TEST_LOCATION); END_TEST; } @@ -2981,63 +3097,62 @@ int utcDaliTextEditorGetPropertyLinecountP(void) tet_infoline(" utcDaliTextEditorGetPropertyLinecount getting line count property"); - int lineCount =0 ; + int lineCount = 0; TextEditor editor = TextEditor::New(); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10) ; - editor.SetProperty( TextEditor::Property::TEXT, - "TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST "); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10); + editor.SetProperty(TextEditor::Property::TEXT, + "TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST "); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 100.f ) ); - lineCount = editor.GetProperty( TextEditor::Property::LINE_COUNT ); - DALI_TEST_EQUALS( lineCount, 14, TEST_LOCATION ); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 100.f)); + lineCount = editor.GetProperty(TextEditor::Property::LINE_COUNT); + DALI_TEST_EQUALS(lineCount, 14, TEST_LOCATION); - editor.SetProperty( Actor::Property::SIZE, Vector2( 50.f, 100.f ) ); - lineCount = editor.GetProperty( TextEditor::Property::LINE_COUNT ); - DALI_TEST_EQUALS( lineCount, 28, TEST_LOCATION ); + editor.SetProperty(Actor::Property::SIZE, Vector2(50.f, 100.f)); + lineCount = editor.GetProperty(TextEditor::Property::LINE_COUNT); + DALI_TEST_EQUALS(lineCount, 28, TEST_LOCATION); END_TEST; } int utcDaliTextEditorScrollStateChangedSignalTest(void) { - ToolkitTestApplication application; tet_infoline(" UtcDaliTextEditorScrollStateChangedSignalTest"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 50.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - editor.SetProperty( TextEditor::Property::ENABLE_SCROLL_BAR, true ); - editor.SetProperty( Actor::Property::KEYBOARD_FOCUSABLE,true); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(50.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(TextEditor::Property::ENABLE_SCROLL_BAR, true); + editor.SetProperty(Actor::Property::KEYBOARD_FOCUSABLE, true); - bool startedCalled = false; + bool startedCalled = false; bool finishedCalled = false; - ScrollStateChangeCallback callback( startedCalled, finishedCalled ); - editor.ScrollStateChangedSignal().Connect( &callback, &ScrollStateChangeCallback::Callback ); + ScrollStateChangeCallback callback(startedCalled, finishedCalled); + editor.ScrollStateChangedSignal().Connect(&callback, &ScrollStateChangeCallback::Callback); - KeyboardFocusManager::Get().SetCurrentFocusActor( editor ); + KeyboardFocusManager::Get().SetCurrentFocusActor(editor); // Render and notify application.SendNotification(); application.Render(); - editor.SetProperty( TextEditor::Property::TEXT, "Long enough message for TextEditor!"); + editor.SetProperty(TextEditor::Property::TEXT, "Long enough message for TextEditor!"); application.SendNotification(); application.Render(6000); application.SendNotification(); - DALI_TEST_EQUALS( startedCalled, true, TEST_LOCATION ); - DALI_TEST_EQUALS( finishedCalled, true, TEST_LOCATION ); + DALI_TEST_EQUALS(startedCalled, true, TEST_LOCATION); + DALI_TEST_EQUALS(finishedCalled, true, TEST_LOCATION); END_TEST; } @@ -3047,49 +3162,49 @@ int UtcDaliToolkitTextEditorTextWrapMode(void) ToolkitTestApplication application; tet_infoline(" UtcDaliToolkitTextEditorTextWarpMode"); - int lineCount =0 ; + int lineCount = 0; TextEditor editor = TextEditor::New(); - editor.SetProperty( Actor::Property::SIZE, Vector2( 150.0f, 300.f ) ); - editor.SetProperty( TextEditor::Property::TEXT, "Hello world Hello world" ); + editor.SetProperty(Actor::Property::SIZE, Vector2(150.0f, 300.f)); + editor.SetProperty(TextEditor::Property::TEXT, "Hello world Hello world"); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::LINE_WRAP_MODE, "WORD" ); - DALI_TEST_EQUALS( editor.GetProperty< int >( TextEditor::Property::LINE_WRAP_MODE ), static_cast< int >( Text::LineWrap::WORD ), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, "WORD"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::LINE_WRAP_MODE), static_cast(Text::LineWrap::WORD), TEST_LOCATION); application.SendNotification(); application.Render(); - lineCount = editor.GetProperty( TextEditor::Property::LINE_COUNT ); - DALI_TEST_EQUALS( lineCount, 4, TEST_LOCATION ); + lineCount = editor.GetProperty(TextEditor::Property::LINE_COUNT); + DALI_TEST_EQUALS(lineCount, 4, TEST_LOCATION); - editor.SetProperty( TextEditor::Property::LINE_WRAP_MODE, "CHARACTER" ); - DALI_TEST_EQUALS( editor.GetProperty< int >( TextEditor::Property::LINE_WRAP_MODE ), static_cast< int >( Text::LineWrap::CHARACTER ), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, "CHARACTER"); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::LINE_WRAP_MODE), static_cast(Text::LineWrap::CHARACTER), TEST_LOCATION); application.SendNotification(); application.Render(); - lineCount = editor.GetProperty( TextEditor::Property::LINE_COUNT ); - DALI_TEST_EQUALS( lineCount, 3, TEST_LOCATION ); + lineCount = editor.GetProperty(TextEditor::Property::LINE_COUNT); + DALI_TEST_EQUALS(lineCount, 3, TEST_LOCATION); - editor.SetProperty( TextEditor::Property::LINE_WRAP_MODE, Text::LineWrap::WORD ); - DALI_TEST_EQUALS( editor.GetProperty< int >( TextEditor::Property::LINE_WRAP_MODE ), static_cast< int >( Text::LineWrap::WORD ), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, Text::LineWrap::WORD); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::LINE_WRAP_MODE), static_cast(Text::LineWrap::WORD), TEST_LOCATION); application.SendNotification(); application.Render(); - lineCount = editor.GetProperty( TextEditor::Property::LINE_COUNT ); - DALI_TEST_EQUALS( lineCount, 4, TEST_LOCATION ); + lineCount = editor.GetProperty(TextEditor::Property::LINE_COUNT); + DALI_TEST_EQUALS(lineCount, 4, TEST_LOCATION); - editor.SetProperty( TextEditor::Property::LINE_WRAP_MODE, Text::LineWrap::CHARACTER ); - DALI_TEST_EQUALS( editor.GetProperty< int >( TextEditor::Property::LINE_WRAP_MODE ), static_cast< int >( Text::LineWrap::CHARACTER ), TEST_LOCATION ); + editor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, Text::LineWrap::CHARACTER); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::LINE_WRAP_MODE), static_cast(Text::LineWrap::CHARACTER), TEST_LOCATION); application.SendNotification(); application.Render(); - lineCount = editor.GetProperty( TextEditor::Property::LINE_COUNT ); - DALI_TEST_EQUALS( lineCount, 3, TEST_LOCATION ); + lineCount = editor.GetProperty(TextEditor::Property::LINE_COUNT); + DALI_TEST_EQUALS(lineCount, 3, TEST_LOCATION); END_TEST; } @@ -3100,29 +3215,29 @@ int UtcDaliTextEditorSetPaddingProperty(void) tet_infoline("UtcDaliTextEditorSetPaddingProperty\n"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - application.GetScene().Add( editor ); + DALI_TEST_CHECK(editor); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + application.GetScene().Add(editor); application.SendNotification(); application.Render(); Vector3 originalSize = editor.GetNaturalSize(); - editor.SetProperty( Toolkit::Control::Property::PADDING, Extents( 10, 10, 10, 10 ) ); + editor.SetProperty(Toolkit::Control::Property::PADDING, Extents(10, 10, 10, 10)); application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( editor.GetProperty( Toolkit::Control::Property::PADDING ), Extents( 10, 10, 10, 10 ), TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(Toolkit::Control::Property::PADDING), Extents(10, 10, 10, 10), TEST_LOCATION); Vector3 paddingAddedSize = editor.GetNaturalSize(); - DALI_TEST_EQUALS( originalSize.width + 10 + 10 , paddingAddedSize.width, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + DALI_TEST_EQUALS(originalSize.width + 10 + 10, paddingAddedSize.width, Math::MACHINE_EPSILON_1000, TEST_LOCATION); - DALI_TEST_EQUALS( originalSize.height + 10 + 10 , paddingAddedSize.height, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + DALI_TEST_EQUALS(originalSize.height + 10 + 10, paddingAddedSize.height, Math::MACHINE_EPSILON_1000, TEST_LOCATION); END_TEST; } @@ -3133,21 +3248,21 @@ int UtcDaliTextEditorEnableShiftSelectionProperty(void) tet_infoline("UtcDaliTextEditorEnableShiftSelectionProperty"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - application.GetScene().Add( editor ); + DALI_TEST_CHECK(editor); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + application.GetScene().Add(editor); application.SendNotification(); application.Render(); // The default value of ENABLE_SHIFT_SELECTION is 'true'. - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::ENABLE_SHIFT_SELECTION ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::ENABLE_SHIFT_SELECTION), true, TEST_LOCATION); // Check the enable shift selection property - editor.SetProperty( DevelTextEditor::Property::ENABLE_SHIFT_SELECTION, false ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::ENABLE_SHIFT_SELECTION ), false, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::ENABLE_SHIFT_SELECTION, false); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::ENABLE_SHIFT_SELECTION), false, TEST_LOCATION); application.SendNotification(); application.Render(); @@ -3161,21 +3276,21 @@ int UtcDaliTextEditorEnableGrabHandleProperty(void) tet_infoline("UtcDaliTextEditorEnableGrabHandleProperty"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - application.GetScene().Add( editor ); + DALI_TEST_CHECK(editor); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + application.GetScene().Add(editor); application.SendNotification(); application.Render(); // The default value of ENABLE_GRAB_HANDLE is 'true'. - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::ENABLE_GRAB_HANDLE ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::ENABLE_GRAB_HANDLE), true, TEST_LOCATION); // Check the enable grab handle property - editor.SetProperty( DevelTextEditor::Property::ENABLE_GRAB_HANDLE, false ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::ENABLE_GRAB_HANDLE ), false, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::ENABLE_GRAB_HANDLE, false); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::ENABLE_GRAB_HANDLE), false, TEST_LOCATION); application.SendNotification(); application.Render(); @@ -3189,21 +3304,21 @@ int UtcDaliTextEditorMatchSystemLanguageDirectionProperty(void) tet_infoline("UtcDaliTextEditorMatchSystemLanguageDirectionProperty"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - application.GetScene().Add( editor ); + DALI_TEST_CHECK(editor); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + application.GetScene().Add(editor); application.SendNotification(); application.Render(); // The default value of MATCH_SYSTEM_LANGUAGE_DIRECTION is 'true'. - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION ), true, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION), true, TEST_LOCATION); // Check the disable match system language direction property - editor.SetProperty( DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION, false ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION ), false, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION, false); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION), false, TEST_LOCATION); application.SendNotification(); application.Render(); @@ -3217,7 +3332,7 @@ int UtcDaliTextEditorGetInputMethodContext(void) tet_infoline("UtcDaliTextEditorGetInputMethodContext"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( DevelTextEditor::GetInputMethodContext( editor ) ); + DALI_TEST_CHECK(DevelTextEditor::GetInputMethodContext(editor)); END_TEST; } @@ -3228,29 +3343,29 @@ int utcDaliTextEditorMaxCharactersReached(void) tet_infoline("utcDaliTextEditorMaxCharactersReached"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); const int maxNumberOfCharacters = 1; - editor.SetProperty( DevelTextEditor::Property::MAX_LENGTH, maxNumberOfCharacters ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::MAX_LENGTH ), maxNumberOfCharacters, TEST_LOCATION ); + editor.SetProperty(DevelTextEditor::Property::MAX_LENGTH, maxNumberOfCharacters); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::MAX_LENGTH), maxNumberOfCharacters, TEST_LOCATION); editor.SetKeyInputFocus(); // connect to the text changed signal. ConnectionTracker* testTracker = new ConnectionTracker(); - DevelTextEditor::MaxLengthReachedSignal( editor ).Connect(&TestMaxLengthReachedCallback); + DevelTextEditor::MaxLengthReachedSignal(editor).Connect(&TestMaxLengthReachedCallback); bool maxLengthReachedSignal = false; - editor.ConnectSignal( testTracker, "maxLengthReached", CallbackFunctor(&maxLengthReachedSignal) ); + editor.ConnectSignal(testTracker, "maxLengthReached", CallbackFunctor(&maxLengthReachedSignal)); gMaxCharactersCallBackCalled = false; - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); - DALI_TEST_CHECK( gMaxCharactersCallBackCalled ); - DALI_TEST_CHECK( maxLengthReachedSignal ); + DALI_TEST_CHECK(gMaxCharactersCallBackCalled); + DALI_TEST_CHECK(maxLengthReachedSignal); END_TEST; } @@ -3282,7 +3397,7 @@ int utcDaliTextEditorInputFiltered(void) gInputFilteredAcceptedCallbackCalled = false; - application.ProcessEvent(GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE )); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); DALI_TEST_CHECK(gInputFilteredAcceptedCallbackCalled); DALI_TEST_CHECK(inputFilteredSignal); @@ -3296,10 +3411,10 @@ int utcDaliTextEditorInputFiltered(void) editor.SetKeyInputFocus(); - inputFilteredSignal = false; + inputFilteredSignal = false; gInputFilteredRejectedCallbackCalled = false; - application.ProcessEvent(GenerateKey( "a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("a", "", "a", KEY_A_CODE, 0, 0, Integration::KeyEvent::DOWN, "a", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); DALI_TEST_CHECK(gInputFilteredAcceptedCallbackCalled); DALI_TEST_CHECK(inputFilteredSignal); @@ -3314,47 +3429,47 @@ int UtcDaliTextEditorSelectWholeText(void) TextEditor textEditor = TextEditor::New(); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - textEditor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - textEditor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + textEditor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + textEditor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( 1u, textEditor.GetChildCount(), TEST_LOCATION ); + DALI_TEST_EQUALS(1u, textEditor.GetChildCount(), TEST_LOCATION); - DevelTextEditor::SelectWholeText( textEditor ); + DevelTextEditor::SelectWholeText(textEditor); application.SendNotification(); application.Render(); // Nothing should have been selected. The number of children is still 1 - DALI_TEST_EQUALS( 1u, textEditor.GetChildCount(), TEST_LOCATION ); + DALI_TEST_EQUALS(1u, textEditor.GetChildCount(), TEST_LOCATION); - textEditor.SetProperty( TextEditor::Property::TEXT, "Hello world" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Hello world"); application.SendNotification(); application.Render(); - DevelTextEditor::SelectWholeText( textEditor ); + DevelTextEditor::SelectWholeText(textEditor); application.SendNotification(); application.Render(); // Should be 2 children, the stencil and the layer - DALI_TEST_EQUALS( 2u, textEditor.GetChildCount(), TEST_LOCATION ); + DALI_TEST_EQUALS(2u, textEditor.GetChildCount(), TEST_LOCATION); // The offscreen root actor should have two actors: the renderer and the highlight actor. - Actor stencil = textEditor.GetChildAt( 0u ); + Actor stencil = textEditor.GetChildAt(0u); // The highlight actor is drawn first, so is the first actor in the list - Renderer highlight = stencil.GetChildAt( 0u ).GetRendererAt( 0u ); - DALI_TEST_CHECK( highlight ); + Renderer highlight = stencil.GetChildAt(0u).GetRendererAt(0u); + DALI_TEST_CHECK(highlight); END_TEST; } @@ -3366,54 +3481,54 @@ int UtcDaliTextEditorSelectText(void) TextEditor textEditor = TextEditor::New(); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - textEditor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - textEditor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + textEditor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + textEditor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); application.SendNotification(); application.Render(); - DevelTextEditor::SelectText( textEditor ,0, 5 ); + DevelTextEditor::SelectText(textEditor, 0, 5); application.SendNotification(); application.Render(); // Nothing is selected - std::string selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "", selectedText, TEST_LOCATION ); + std::string selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("", selectedText, TEST_LOCATION); - textEditor.SetProperty( TextEditor::Property::TEXT, "Hello world" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Hello world"); application.SendNotification(); application.Render(); - DevelTextEditor::SelectText( textEditor, 0, 5 ); + DevelTextEditor::SelectText(textEditor, 0, 5); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "Hello", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("Hello", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 0, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 5, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 0, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 5, TEST_LOCATION); // world is selected - DevelTextEditor::SelectText( textEditor, 6, 11 ); + DevelTextEditor::SelectText(textEditor, 6, 11); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "world", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("world", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 6, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 11, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 6, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 11, TEST_LOCATION); END_TEST; } @@ -3425,44 +3540,44 @@ int UtcDaliTextEditorSelectNone(void) TextEditor textEditor = TextEditor::New(); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - textEditor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - textEditor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + textEditor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + textEditor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); application.SendNotification(); application.Render(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Hello world" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Hello world"); application.SendNotification(); application.Render(); // Nothing is selected - std::string selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "", selectedText, TEST_LOCATION ); + std::string selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("", selectedText, TEST_LOCATION); - DevelTextEditor::SelectWholeText( textEditor ); + DevelTextEditor::SelectWholeText(textEditor); application.SendNotification(); application.Render(); // whole text is selected - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "Hello world", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("Hello world", selectedText, TEST_LOCATION); - DevelTextEditor::SelectNone( textEditor ); + DevelTextEditor::SelectNone(textEditor); application.SendNotification(); application.Render(); // Nothing is selected - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("", selectedText, TEST_LOCATION); END_TEST; } @@ -3473,27 +3588,27 @@ int UtcDaliTextEditorSelectRange(void) tet_infoline("utcDaliTextEditorSelectRange"); TextEditor textEditor = TextEditor::New(); - DALI_TEST_CHECK( textEditor ); + DALI_TEST_CHECK(textEditor); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); application.SendNotification(); application.Render(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Hello world" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Hello world"); - textEditor.SetProperty( DevelTextEditor::Property::SELECTED_TEXT_START, 0 ); - textEditor.SetProperty( DevelTextEditor::Property::SELECTED_TEXT_END, 5 ); + textEditor.SetProperty(DevelTextEditor::Property::SELECTED_TEXT_START, 0); + textEditor.SetProperty(DevelTextEditor::Property::SELECTED_TEXT_END, 5); // Hello is selected - std::string selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "Hello", selectedText, TEST_LOCATION ); + std::string selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("Hello", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 0, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 5, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 0, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 5, TEST_LOCATION); END_TEST; } @@ -3505,39 +3620,60 @@ int UtcDaliTextEditorEnableEditing(void) TextEditor textEditor = TextEditor::New(); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - textEditor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - textEditor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + textEditor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + textEditor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); + + application.SendNotification(); + application.Render(); + + textEditor.SetProperty(DevelActor::Property::USER_INTERACTION_ENABLED, true); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelActor::Property::USER_INTERACTION_ENABLED).Get(), true, TEST_LOCATION); + + textEditor.SetKeyInputFocus(); + textEditor.SetProperty(DevelTextEditor::Property::ENABLE_EDITING, false); + application.ProcessEvent(GenerateKey("D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + // Render and notify application.SendNotification(); application.Render(); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "", TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ENABLE_EDITING).Get(), false, TEST_LOCATION); + textEditor.SetKeyInputFocus(); - textEditor.SetProperty( DevelTextEditor::Property::ENABLE_EDITING, false ); - application.ProcessEvent( GenerateKey( "D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + textEditor.SetProperty(DevelTextEditor::Property::ENABLE_EDITING, true); + application.ProcessEvent(GenerateKey("D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( textEditor.GetProperty( TextEditor::Property::TEXT ).Get(), "", TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::ENABLE_EDITING ).Get(), false, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "D", TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ENABLE_EDITING).Get(), true, TEST_LOCATION); + + // Check the user interaction enabled and for coverage + DevelTextEditor::SelectWholeText(textEditor); + + // Render and notify + application.SendNotification(); + application.Render(); textEditor.SetKeyInputFocus(); - textEditor.SetProperty( DevelTextEditor::Property::ENABLE_EDITING, true ); - application.ProcessEvent( GenerateKey( "D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + textEditor.SetProperty(DevelActor::Property::USER_INTERACTION_ENABLED, false); + application.ProcessEvent(GenerateKey("D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( textEditor.GetProperty( TextEditor::Property::TEXT ).Get(), "D", TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::ENABLE_EDITING ).Get(), true, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "D", TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelActor::Property::USER_INTERACTION_ENABLED).Get(), false, TEST_LOCATION); END_TEST; } @@ -3548,12 +3684,12 @@ int UtcDaliTextEditorScrolling(void) tet_infoline(" UtcDaliTextEditorScrolling "); TextEditor textEditor = TextEditor::New(); - DALI_TEST_CHECK( textEditor ); + DALI_TEST_CHECK(textEditor); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); application.SendNotification(); application.Render(); @@ -3566,25 +3702,24 @@ int UtcDaliTextEditorScrolling(void) application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::VERTICAL_SCROLL_POSITION ).Get(), 0.0f, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION ).Get(), 0.0f, TEST_LOCATION ); - + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::VERTICAL_SCROLL_POSITION).Get(), 0.0f, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION).Get(), 0.0f, TEST_LOCATION); DevelTextEditor::ScrollBy(textEditor, Vector2(1.0f, 1.0f)); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::VERTICAL_SCROLL_POSITION ).Get(), 1.0f, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION ).Get(), 0.0f, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::VERTICAL_SCROLL_POSITION).Get(), 1.0f, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION).Get(), 0.0f, TEST_LOCATION); DevelTextEditor::ScrollBy(textEditor, Vector2(0.0f, 1000.0f)); - DALI_TEST_NOT_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::VERTICAL_SCROLL_POSITION ).Get(), 1.0f, 0.1f, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION ).Get(), 0.0f, TEST_LOCATION ); + DALI_TEST_NOT_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::VERTICAL_SCROLL_POSITION).Get(), 1.0f, 0.1f, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION).Get(), 0.0f, TEST_LOCATION); - textEditor.SetProperty(DevelTextEditor::Property::VERTICAL_SCROLL_POSITION , 0.0f); - textEditor.SetProperty(DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION , 0.0f); + textEditor.SetProperty(DevelTextEditor::Property::VERTICAL_SCROLL_POSITION, 0.0f); + textEditor.SetProperty(DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION, 0.0f); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::VERTICAL_SCROLL_POSITION ).Get(), 0.0f, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION ).Get(), 0.0f, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::VERTICAL_SCROLL_POSITION).Get(), 0.0f, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::HORIZONTAL_SCROLL_POSITION).Get(), 0.0f, TEST_LOCATION); END_TEST; } @@ -3595,28 +3730,28 @@ int UtcDaliToolkitTextEditorFontSizeScale(void) tet_infoline(" UtcDaliToolkitTextEditorFontSizeScale"); TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, 30.f ); - textEditor.SetProperty( TextEditor::Property::TEXT, "Test" ); + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 30.f); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test"); Vector3 nonScaledSize = textEditor.GetNaturalSize(); TextEditor textEditorScaled = TextEditor::New(); - textEditorScaled.SetProperty( TextEditor::Property::POINT_SIZE, 15.f ); - textEditorScaled.SetProperty( Toolkit::DevelTextEditor::Property::FONT_SIZE_SCALE, 2.f ); - textEditorScaled.SetProperty( TextEditor::Property::TEXT, "Test" ); + textEditorScaled.SetProperty(TextEditor::Property::POINT_SIZE, 15.f); + textEditorScaled.SetProperty(Toolkit::DevelTextEditor::Property::FONT_SIZE_SCALE, 2.f); + textEditorScaled.SetProperty(TextEditor::Property::TEXT, "Test"); Vector3 scaledSize = textEditorScaled.GetNaturalSize(); - DALI_TEST_EQUALS( nonScaledSize, scaledSize, TEST_LOCATION ); + DALI_TEST_EQUALS(nonScaledSize, scaledSize, TEST_LOCATION); - textEditor.SetProperty( TextEditor::Property::PIXEL_SIZE, 30.f ); - textEditor.SetProperty( TextEditor::Property::TEXT, "Test" ); + textEditor.SetProperty(TextEditor::Property::PIXEL_SIZE, 30.f); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test"); nonScaledSize = textEditor.GetNaturalSize(); - textEditorScaled.SetProperty( TextEditor::Property::PIXEL_SIZE, 15.f ); - textEditorScaled.SetProperty( Toolkit::DevelTextEditor::Property::FONT_SIZE_SCALE, 2.f ); - textEditorScaled.SetProperty( TextEditor::Property::TEXT, "Test" ); + textEditorScaled.SetProperty(TextEditor::Property::PIXEL_SIZE, 15.f); + textEditorScaled.SetProperty(Toolkit::DevelTextEditor::Property::FONT_SIZE_SCALE, 2.f); + textEditorScaled.SetProperty(TextEditor::Property::TEXT, "Test"); scaledSize = textEditorScaled.GetNaturalSize(); - DALI_TEST_EQUALS( nonScaledSize, scaledSize, TEST_LOCATION ); + DALI_TEST_EQUALS(nonScaledSize, scaledSize, TEST_LOCATION); END_TEST; } @@ -3628,29 +3763,29 @@ int UtcDaliTextEditorPrimaryCursorPosition(void) TextEditor textEditor = TextEditor::New(); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); - textEditor.SetProperty( TextEditor::Property::TEXT, "ABCEF"); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - textEditor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - textEditor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + textEditor.SetProperty(TextEditor::Property::TEXT, "ABCEF"); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + textEditor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + textEditor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); - textEditor.SetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); + textEditor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); application.SendNotification(); application.Render(); textEditor.SetKeyInputFocus(); - application.ProcessEvent( GenerateKey( "D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("D", "", "D", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "D", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( textEditor.GetProperty( TextEditor::Property::TEXT ).Get(), "ABCDEF", TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION ).Get(), 4, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "ABCDEF", TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION).Get(), 4, TEST_LOCATION); END_TEST; } @@ -3662,74 +3797,73 @@ int UtcDaliTextEditorLineCountAfterGetNaturalSize(void) TextEditor textEditor = TextEditor::New(); textEditor.SetProperty(TextEditor::Property::TEXT, "A\nB\nC\nD\nE\nF\n"); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - textEditor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - textEditor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - application.GetScene().Add( textEditor ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + textEditor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + textEditor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); int lineCount = 0; - lineCount = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); - DALI_TEST_EQUALS( lineCount, 7, TEST_LOCATION ); + lineCount = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); + DALI_TEST_EQUALS(lineCount, 7, TEST_LOCATION); textEditor.GetNaturalSize(); // Create a tap event to touch the text editor. - TestGenerateTap( application, 18.0f, 25.0f ); + TestGenerateTap(application, 18.0f, 25.0f); application.SendNotification(); application.Render(); - lineCount = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); - DALI_TEST_EQUALS( lineCount, 7, TEST_LOCATION ); + lineCount = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); + DALI_TEST_EQUALS(lineCount, 7, TEST_LOCATION); END_TEST; } - int utcDaliTextEditorGetHeightForWidthDoesNotChangeLineCountScrollingCase(void) { ToolkitTestApplication application; tet_infoline(" utcDaliTextEditorGetHeightForWidthDoesNotChangeLineCountScrollingCase "); - int lineCountBefore =0 ; - int lineCountAfter =0 ; + int lineCountBefore = 0; + int lineCountAfter = 0; // Create a text editor TextEditor textEditor = TextEditor::New(); //Set very large font-size using point-size - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, 10) ; + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 10); //Specify font-family - textEditor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); //Specify size - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 100.f ) ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 100.f)); //Set text longer than width of textEditor - textEditor.SetProperty( TextEditor::Property::TEXT, "TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST "); + textEditor.SetProperty(TextEditor::Property::TEXT, "TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST "); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); //Failed case is the GetHeightForWidth change LineCount then the scrollor will not arrive to latest line //GetHeightForWidth is a retrieval method which should not modify object - lineCountBefore = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCountBefore = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); textEditor.GetHeightForWidth(200.f); //This is to simulate focus into text editor after calling GetHeightForWidth //Create a tap event to touch the text editor. - TestGenerateTap( application, 18.0f, 25.0f ); + TestGenerateTap(application, 18.0f, 25.0f); application.SendNotification(); application.Render(); - lineCountAfter = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCountAfter = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); //The LineCount must not be changed when calling GetHeightForWidth. - DALI_TEST_EQUALS( lineCountAfter , lineCountBefore, TEST_LOCATION ); + DALI_TEST_EQUALS(lineCountAfter, lineCountBefore, TEST_LOCATION); END_TEST; } @@ -3740,43 +3874,43 @@ int utcDaliTextEditorGetHeightForWidthDoesNotChangeLineCountLineWrapCharCase(voi tet_infoline(" utcDaliTextEditorGetHeightForWidthDoesNotChangeLineCountLineWrapCharCase "); - int lineCountBefore =0 ; - int lineCountAfter =0 ; + int lineCountBefore = 0; + int lineCountAfter = 0; // Create a text editor TextEditor textEditor = TextEditor::New(); //Set very large font-size using point-size - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, 10) ; + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 10); //Specify font-family - textEditor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); //Specify size - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 50.f, 100.f ) ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(50.f, 100.f)); //Set text longer than width of textEditor - textEditor.SetProperty( TextEditor::Property::TEXT, "qwertyuiopasdfghjklzxcvbnm\n"); + textEditor.SetProperty(TextEditor::Property::TEXT, "qwertyuiopasdfghjklzxcvbnm\n"); //Set line wrap mode Character textEditor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, "CHARACTER"); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); //Failed case is the GetHeightForWidth change LineCount which make position of cursor invalid in TextEditor //GetHeightForWidth is a retrieval method which should not modify object - lineCountBefore = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCountBefore = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); textEditor.GetHeightForWidth(200.f); //This is to simulate focus into text editor after calling GetHeightForWidth //Create a tap event to touch the text editor. - TestGenerateTap( application, 18.0f, 25.0f ); + TestGenerateTap(application, 18.0f, 25.0f); application.SendNotification(); application.Render(); - lineCountAfter = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCountAfter = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); //The LineCount must not be changed when calling GetHeightForWidth. - DALI_TEST_EQUALS( lineCountAfter , lineCountBefore, TEST_LOCATION ); + DALI_TEST_EQUALS(lineCountAfter, lineCountBefore, TEST_LOCATION); END_TEST; } @@ -3787,84 +3921,81 @@ int utcDaliTextEditorGetHeightForWidthChangeLineCountWhenTextChanged(void) tet_infoline(" utcDaliTextEditorGetHeightForWidthChangeLineCountWhenTextChanged "); - int lineCountBefore =0 ; - int lineCountAfter =0 ; + int lineCountBefore = 0; + int lineCountAfter = 0; // Create a text editor TextEditor textEditor = TextEditor::New(); //Set very large font-size using point-size - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, 10) ; + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 10); //Specify font-family - textEditor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); //Specify size - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 200.f, 100.f ) ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(200.f, 100.f)); //Set text longer than width of textEditor - textEditor.SetProperty( TextEditor::Property::TEXT, "Short text"); + textEditor.SetProperty(TextEditor::Property::TEXT, "Short text"); //Set line wrap mode Character textEditor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, "CHARACTER"); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); + lineCountBefore = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); - lineCountBefore = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); - - textEditor.SetProperty( TextEditor::Property::TEXT, "This is very loooooooooooooooooooooooooooooooooooong text for test"); - lineCountAfter = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + textEditor.SetProperty(TextEditor::Property::TEXT, "This is very loooooooooooooooooooooooooooooooooooong text for test"); + lineCountAfter = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); // When the text changed, the Line-count should be updated according to new text. // Because the GetHeightForWidth is called in Controller::GetLineCount(float width) - DALI_TEST_EQUALS( lineCountBefore ,1, TEST_LOCATION ); - DALI_TEST_GREATER( lineCountAfter,1, TEST_LOCATION ); - + DALI_TEST_EQUALS(lineCountBefore, 1, TEST_LOCATION); + DALI_TEST_GREATER(lineCountAfter, 1, TEST_LOCATION); END_TEST; } - int utcDaliTextEditorGetNaturalSizeDoesNotChangeLineCountScrollingCase(void) { ToolkitTestApplication application; tet_infoline(" utcDaliTextEditorGetNaturalSizeDoesNotChangeLineCountScrollingCase "); - int lineCountBefore =0 ; - int lineCountAfter =0 ; + int lineCountBefore = 0; + int lineCountAfter = 0; // Create a text editor TextEditor textEditor = TextEditor::New(); //Set very large font-size using point-size - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, 10) ; + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 10); //Specify font-family - textEditor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); //Specify size - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 100.f ) ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 100.f)); //Set text longer than width of textEditor - textEditor.SetProperty( TextEditor::Property::TEXT, "TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST "); + textEditor.SetProperty(TextEditor::Property::TEXT, "TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST "); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); //Failed case is the GetNaturalSize change LineCount then the scrollor will not arrive to latest line //GetNaturalSize is a retrieval method which should not modify object - lineCountBefore = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCountBefore = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); textEditor.GetNaturalSize(); //This is to simulate focus into text editor after calling GetNaturalSize //Create a tap event to touch the text editor. - TestGenerateTap( application, 18.0f, 25.0f ); + TestGenerateTap(application, 18.0f, 25.0f); application.SendNotification(); application.Render(); - lineCountAfter = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCountAfter = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); //The LineCount must not be changed when calling GetNaturalSize. - DALI_TEST_EQUALS( lineCountAfter , lineCountBefore, TEST_LOCATION ); + DALI_TEST_EQUALS(lineCountAfter, lineCountBefore, TEST_LOCATION); END_TEST; } @@ -3875,43 +4006,43 @@ int utcDaliTextEditorGetNaturalSizeDoesNotChangeLineCountLineWrapCharCase(void) tet_infoline(" utcDaliTextEditorGetNaturalSizeDoesNotChangeLineCountLineWrapCharCase "); - int lineCountBefore =0 ; - int lineCountAfter =0 ; + int lineCountBefore = 0; + int lineCountAfter = 0; // Create a text editor TextEditor textEditor = TextEditor::New(); //Set very large font-size using point-size - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, 10) ; + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 10); //Specify font-family - textEditor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); //Specify size - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 50.f, 100.f ) ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(50.f, 100.f)); //Set text longer than width of textEditor - textEditor.SetProperty( TextEditor::Property::TEXT, "qwertyuiopasdfghjklzxcvbnm\n"); + textEditor.SetProperty(TextEditor::Property::TEXT, "qwertyuiopasdfghjklzxcvbnm\n"); //Set line wrap mode Character textEditor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, "CHARACTER"); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); //Failed case is the GetNaturalSize change LineCount which make position of cursor invalid in TextEditor //GetNaturalSize is a retrieval method which should not modify object - lineCountBefore = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); - textEditor.GetNaturalSize( ); + lineCountBefore = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); + textEditor.GetNaturalSize(); //This is to simulate focus into text editor after calling GetNaturalSize //Create a tap event to touch the text editor. - TestGenerateTap( application, 18.0f, 25.0f ); + TestGenerateTap(application, 18.0f, 25.0f); application.SendNotification(); application.Render(); - lineCountAfter = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCountAfter = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); //The LineCount must not be changed when calling GetNaturalSize. - DALI_TEST_EQUALS( lineCountAfter , lineCountBefore, TEST_LOCATION ); + DALI_TEST_EQUALS(lineCountAfter, lineCountBefore, TEST_LOCATION); END_TEST; } @@ -3922,30 +4053,30 @@ int UtcDaliTextEditorAtlasLimitationIsEnabledForLargeFontPointSize(void) tet_infoline(" UtcDaliTextEditorAtlasLimitationIsEnabledForLargeFontPointSize "); // +2: First one to handle the equal case. Second one to handle odd to even case of GetNaturalSize - const uint32_t lessThanWidth = TextAbstraction::FontClient::MAX_TEXT_ATLAS_WIDTH - TextAbstraction::FontClient::PADDING_TEXT_ATLAS_BLOCK + 2; + const uint32_t lessThanWidth = TextAbstraction::FontClient::MAX_TEXT_ATLAS_WIDTH - TextAbstraction::FontClient::PADDING_TEXT_ATLAS_BLOCK + 2; const uint32_t lessThanHeight = TextAbstraction::FontClient::MAX_TEXT_ATLAS_HEIGHT - TextAbstraction::FontClient::PADDING_TEXT_ATLAS_BLOCK + 2; // Create a text editor TextEditor textEditor = TextEditor::New(); //Set size to avoid automatic eliding - textEditor.SetProperty( Actor::Property::SIZE, Vector2(1025, 1025)); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(1025, 1025)); //Set very large font-size using point-size - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, 1000) ; + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 1000); //Specify font-family - textEditor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); //Set text to check if appear or not - textEditor.SetProperty( TextEditor::Property::TEXT, "A"); + textEditor.SetProperty(TextEditor::Property::TEXT, "A"); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); //Use GetNaturalSize to verify that size of block does not exceed Atlas size Vector3 naturalSize = textEditor.GetNaturalSize(); - DALI_TEST_GREATER( lessThanWidth, static_cast(naturalSize.width), TEST_LOCATION ); - DALI_TEST_GREATER( lessThanHeight, static_cast(naturalSize.height), TEST_LOCATION ); + DALI_TEST_GREATER(lessThanWidth, static_cast(naturalSize.width), TEST_LOCATION); + DALI_TEST_GREATER(lessThanHeight, static_cast(naturalSize.height), TEST_LOCATION); END_TEST; } @@ -3956,31 +4087,30 @@ int UtcDaliTextEditorAtlasLimitationIsEnabledPerformanceCases(void) tet_infoline(" UtcDaliTextEditorAtlasLimitationIsEnabledPerformanceCases "); // +2: First one to handle the equal case. Second one to handle odd to even case of GetNaturalSize - const uint32_t lessThanWidth = TextAbstraction::FontClient::MAX_TEXT_ATLAS_WIDTH - TextAbstraction::FontClient::PADDING_TEXT_ATLAS_BLOCK + 2; + const uint32_t lessThanWidth = TextAbstraction::FontClient::MAX_TEXT_ATLAS_WIDTH - TextAbstraction::FontClient::PADDING_TEXT_ATLAS_BLOCK + 2; const uint32_t lessThanHeight = TextAbstraction::FontClient::MAX_TEXT_ATLAS_HEIGHT - TextAbstraction::FontClient::PADDING_TEXT_ATLAS_BLOCK + 2; Vector3 naturalSize; //Use GetNaturalSize to verify that size of block does not exceed Atlas size // Create a text editor TextEditor textEditor = TextEditor::New(); //Set size to avoid automatic eliding - textEditor.SetProperty( Actor::Property::SIZE, Vector2(1025, 1025)); - textEditor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); - textEditor.SetProperty( TextEditor::Property::TEXT, "A"); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(1025, 1025)); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + textEditor.SetProperty(TextEditor::Property::TEXT, "A"); - const int numberOfCases = 6; - int arrayCases[numberOfCases] = {323, 326, 330, 600, 1630, 2500}; + const int numberOfCases = 6; + int arrayCases[numberOfCases] = {323, 326, 330, 600, 1630, 2500}; - for (int index=0; index < numberOfCases; index++) + for(int index = 0; index < numberOfCases; index++) { tet_printf(" UtcDaliTextEditorAtlasLimitationIsEnabledPerformanceCases point-size= %d \n", arrayCases[index]); - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, arrayCases[index]) ; - application.GetScene().Add( textEditor ); + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, arrayCases[index]); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); naturalSize = textEditor.GetNaturalSize(); - DALI_TEST_GREATER( lessThanWidth, static_cast(naturalSize.width), TEST_LOCATION ); - DALI_TEST_GREATER( lessThanHeight, static_cast(naturalSize.height), TEST_LOCATION ); - + DALI_TEST_GREATER(lessThanWidth, static_cast(naturalSize.width), TEST_LOCATION); + DALI_TEST_GREATER(lessThanHeight, static_cast(naturalSize.height), TEST_LOCATION); } END_TEST; @@ -3991,45 +4121,45 @@ int UtcDaliTextEditorHyphenWrapMode(void) ToolkitTestApplication application; tet_infoline(" UtcDaliTextEditorHyphenWrapMode "); - int lineCount =0; + int lineCount = 0; TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 150.0f, 300.f ) ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(150.0f, 300.f)); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Hi Experimen" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Hi Experimen"); textEditor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, DevelText::LineWrap::HYPHENATION); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( TextEditor::Property::LINE_WRAP_MODE ), static_cast< int >( DevelText::LineWrap::HYPHENATION ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::LINE_WRAP_MODE), static_cast(DevelText::LineWrap::HYPHENATION), TEST_LOCATION); application.SendNotification(); application.Render(); - lineCount = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCount = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); /* text will be : Hi Exp- erimen */ - DALI_TEST_EQUALS( lineCount, 2, TEST_LOCATION ); + DALI_TEST_EQUALS(lineCount, 2, TEST_LOCATION); - textEditor.SetProperty( TextEditor::Property::TEXT, "Hi Experimen" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Hi Experimen"); textEditor.SetProperty(TextEditor::Property::LINE_WRAP_MODE, DevelText::LineWrap::MIXED); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( TextEditor::Property::LINE_WRAP_MODE ), static_cast< int >( DevelText::LineWrap::MIXED ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::LINE_WRAP_MODE), static_cast(DevelText::LineWrap::MIXED), TEST_LOCATION); application.SendNotification(); application.Render(); - lineCount = textEditor.GetProperty( TextEditor::Property::LINE_COUNT ); + lineCount = textEditor.GetProperty(TextEditor::Property::LINE_COUNT); /* text will be : Hi Experi- men */ - DALI_TEST_EQUALS( lineCount, 3, TEST_LOCATION ); + DALI_TEST_EQUALS(lineCount, 3, TEST_LOCATION); END_TEST; } @@ -4041,55 +4171,55 @@ int UtcDaliToolkitTextEditorEllipsisPositionProperty(void) TextEditor textEditor = TextEditor::New(); tet_infoline(" UtcDaliToolkitTextEditorEllipsisPositionProperty - Default is END"); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::END ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::END), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextEditorEllipsisPositionProperty - Change to START"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::START); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::START ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::START), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextEditorEllipsisPositionProperty - Change to MIDDLE"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::MIDDLE); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::MIDDLE ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::MIDDLE), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextEditorEllipsisPositionProperty - Change to END"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::END); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::END ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::END), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextEditorEllipsisPositionProperty - Change to START using integer"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, 1); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::START ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::START), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextEditorEllipsisPositionProperty - Change to MIDDLE using integer"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, 2); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::MIDDLE ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::MIDDLE), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextEditorEllipsisPositionProperty - Change to END using integer"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, 0); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::END ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::END), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextlabelEllipsisPositionProperty - Change to START using string - uppercase"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, "START"); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::START ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::START), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextlabelEllipsisPositionProperty - Change to MIDDLE using string - uppercase"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, "MIDDLE"); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::MIDDLE ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::MIDDLE), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextlabelEllipsisPositionProperty - Change to END using string - uppercase"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, "END"); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::END ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::END), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextlabelEllipsisPositionProperty - Change to START using string - lowercase"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, "start"); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::START ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::START), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextlabelEllipsisPositionProperty - Change to MIDDLE using string - lowercase"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, "middle"); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::MIDDLE ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::MIDDLE), TEST_LOCATION); tet_infoline(" UtcDaliToolkitTextlabelEllipsisPositionProperty - Change to END using string - lowercase"); textEditor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, "end"); - DALI_TEST_EQUALS( textEditor.GetProperty< int >( DevelTextEditor::Property::ELLIPSIS_POSITION ), static_cast< int >( Toolkit::DevelText::EllipsisPosition::END ), TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION), static_cast(Toolkit::DevelText::EllipsisPosition::END), TEST_LOCATION); END_TEST; } @@ -4102,72 +4232,72 @@ int UtcDaliTextEditorCopyText(void) TextEditor textEditor = TextEditor::New(); std::string selectedText = ""; - std::string copiedText = ""; + std::string copiedText = ""; - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - textEditor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - textEditor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + textEditor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + textEditor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); application.SendNotification(); application.Render(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Hello world" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Hello world"); application.SendNotification(); application.Render(); // Hello is selected - DevelTextEditor::SelectText( textEditor, 0, 5 ); + DevelTextEditor::SelectText(textEditor, 0, 5); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "Hello", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("Hello", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 0, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 5, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 0, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 5, TEST_LOCATION); // Hello is copied - copiedText = DevelTextEditor::CopyText( textEditor ); - DALI_TEST_EQUALS( "Hello", copiedText, TEST_LOCATION ); + copiedText = DevelTextEditor::CopyText(textEditor); + DALI_TEST_EQUALS("Hello", copiedText, TEST_LOCATION); // world is selected - DevelTextEditor::SelectText( textEditor, 6, 11 ); + DevelTextEditor::SelectText(textEditor, 6, 11); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "world", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("world", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 6, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 11, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 6, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 11, TEST_LOCATION); // world is copied - copiedText = DevelTextEditor::CopyText( textEditor ); - DALI_TEST_EQUALS( "world", copiedText, TEST_LOCATION ); + copiedText = DevelTextEditor::CopyText(textEditor); + DALI_TEST_EQUALS("world", copiedText, TEST_LOCATION); // "lo wo" is selected - DevelTextEditor::SelectText( textEditor, 3, 8 ); + DevelTextEditor::SelectText(textEditor, 3, 8); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "lo wo", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("lo wo", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 3, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 8, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 3, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 8, TEST_LOCATION); // "lo wo" is copied - copiedText = DevelTextEditor::CopyText( textEditor ); - DALI_TEST_EQUALS( "lo wo", copiedText, TEST_LOCATION ); + copiedText = DevelTextEditor::CopyText(textEditor); + DALI_TEST_EQUALS("lo wo", copiedText, TEST_LOCATION); END_TEST; } @@ -4181,106 +4311,106 @@ int UtcDaliTextEditorCutText(void) std::string selectedText = ""; - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 300.f, 50.f ) ); - textEditor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - textEditor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 50.f)); + textEditor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + textEditor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); application.SendNotification(); application.Render(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Hello world" ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Hello world"); application.SendNotification(); application.Render(); // Hello is selected - DevelTextEditor::SelectText( textEditor, 0, 5 ); + DevelTextEditor::SelectText(textEditor, 0, 5); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "Hello", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("Hello", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 0, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 5, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 0, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 5, TEST_LOCATION); // Hello is cut - DALI_TEST_EQUALS( "Hello", DevelTextEditor::CutText( textEditor ), TEST_LOCATION ); + DALI_TEST_EQUALS("Hello", DevelTextEditor::CutText(textEditor), TEST_LOCATION); application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( textEditor.GetProperty( TextEditor::Property::TEXT ).Get(), " world", TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), " world", TEST_LOCATION); // " w" is selected - DevelTextEditor::SelectText( textEditor, 0, 2 ); + DevelTextEditor::SelectText(textEditor, 0, 2); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( " w", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS(" w", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 0, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 2, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 0, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 2, TEST_LOCATION); // " w" is cut - DALI_TEST_EQUALS( " w", DevelTextEditor::CutText( textEditor ), TEST_LOCATION ); + DALI_TEST_EQUALS(" w", DevelTextEditor::CutText(textEditor), TEST_LOCATION); application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( textEditor.GetProperty( TextEditor::Property::TEXT ).Get(), "orld", TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "orld", TEST_LOCATION); // Test Cut from the middle // "rl" is selected - DevelTextEditor::SelectText( textEditor, 1, 3 ); + DevelTextEditor::SelectText(textEditor, 1, 3); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "rl", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("rl", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 1, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 3, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 1, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 3, TEST_LOCATION); // "rl" is cut - DALI_TEST_EQUALS( "rl", DevelTextEditor::CutText( textEditor ), TEST_LOCATION ); + DALI_TEST_EQUALS("rl", DevelTextEditor::CutText(textEditor), TEST_LOCATION); application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( textEditor.GetProperty( TextEditor::Property::TEXT ).Get(), "od", TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "od", TEST_LOCATION); // Test Cut from the end // "d" is selected - DevelTextEditor::SelectText( textEditor, 1, 2 ); + DevelTextEditor::SelectText(textEditor, 1, 2); application.SendNotification(); application.Render(); - selectedText = textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT ).Get(); - DALI_TEST_EQUALS( "d", selectedText, TEST_LOCATION ); + selectedText = textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("d", selectedText, TEST_LOCATION); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_START ).Get(), 1, TEST_LOCATION ); - DALI_TEST_EQUALS( textEditor.GetProperty( DevelTextEditor::Property::SELECTED_TEXT_END ).Get(), 2, TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_START).Get(), 1, TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT_END).Get(), 2, TEST_LOCATION); // "d" is cut - DALI_TEST_EQUALS( "d", DevelTextEditor::CutText( textEditor ), TEST_LOCATION ); + DALI_TEST_EQUALS("d", DevelTextEditor::CutText(textEditor), TEST_LOCATION); application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( textEditor.GetProperty( TextEditor::Property::TEXT ).Get(), "o", TEST_LOCATION ); + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "o", TEST_LOCATION); END_TEST; } @@ -4291,45 +4421,45 @@ int UtcDaliTextEditorPasteText(void) tet_infoline(" UtcDaliTextEditorPasteText "); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - std::string cutText = ""; + std::string cutText = ""; std::string copiedText = ""; - editor.SetProperty( TextEditor::Property::TEXT, "Hello\nworld\nHello world" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworld\nHello world"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); application.Render(); // Move to second line of the text. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Select some text in the right of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4342,14 +4472,14 @@ int UtcDaliTextEditorPasteText(void) application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "wor", cutText, TEST_LOCATION ); - DALI_TEST_EQUALS( "Hello\nld\nHello world", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("wor", cutText, TEST_LOCATION); + DALI_TEST_EQUALS("Hello\nld\nHello world", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Select some text in the left of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "",DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4362,13 +4492,12 @@ int UtcDaliTextEditorPasteText(void) application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "lo\n", copiedText, TEST_LOCATION ); - DALI_TEST_EQUALS( "Hello\nld\nHello world", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); - + DALI_TEST_EQUALS("lo\n", copiedText, TEST_LOCATION); + DALI_TEST_EQUALS("Hello\nld\nHello world", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); // Move the cursor to the third line - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4381,27 +4510,28 @@ int UtcDaliTextEditorPasteText(void) application.SendNotification(); application.Render(); - DALI_TEST_EQUALS( "Hello\nld\nHello lo\nworld", editor.GetProperty( TextEditor::Property::TEXT ), TEST_LOCATION ); + DALI_TEST_EQUALS("Hello\nld\nHello lo\nworld", editor.GetProperty(TextEditor::Property::TEXT), TEST_LOCATION); END_TEST; } + int UtcDaliTextEditorLineSpacing(void) { ToolkitTestApplication application; tet_infoline(" UtcDaliTextEditorLineSpacing "); TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 400.0f, 400.f ) ); - application.GetScene().Add( textEditor ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(400.0f, 400.f)); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Line #1\nLine #2\nLine #3" ); - textEditor.SetProperty( DevelTextEditor::Property::LINE_SPACING, 0 ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Line #1\nLine #2\nLine #3"); + textEditor.SetProperty(DevelTextEditor::Property::LINE_SPACING, 0); Vector3 sizeBefore = textEditor.GetNaturalSize(); - textEditor.SetProperty( DevelTextEditor::Property::LINE_SPACING, 20 ); + textEditor.SetProperty(DevelTextEditor::Property::LINE_SPACING, 20); //add 20 for each line 20 * 3 DALI_TEST_EQUALS(sizeBefore.height + 60.0f, textEditor.GetNaturalSize().height, TEST_LOCATION); @@ -4409,25 +4539,64 @@ int UtcDaliTextEditorLineSpacing(void) END_TEST; } +int UtcDaliTextEditorSelectionWithLineSpacing(void) +{ + //Only for test coverage + ToolkitTestApplication application; + tet_infoline(" UtcDaliTextEditorSelectionWithLineSpacing "); + + TextEditor textEditor = TextEditor::New(); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(400.0f, 400.f)); + application.GetScene().Add(textEditor); + application.SendNotification(); + application.Render(); + + textEditor.SetProperty(TextEditor::Property::TEXT, "Line #1\nLine #2\nLine #3"); + textEditor.SetProperty(DevelTextEditor::Property::LINE_SPACING, -20); + + application.SendNotification(); + application.Render(); + + DevelTextEditor::SelectWholeText(textEditor); + + application.SendNotification(); + application.Render(); + + DevelTextEditor::SelectNone(textEditor); + textEditor.SetProperty(DevelTextEditor::Property::LINE_SPACING, 20); + + application.SendNotification(); + application.Render(); + + DevelTextEditor::SelectWholeText(textEditor); + + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::LINE_SPACING), 20.0f, TEST_LOCATION); + + END_TEST; +} + int UtcDaliTextEditorMinLineSize(void) { ToolkitTestApplication application; tet_infoline(" UtcDaliTextEditorMinLineSize "); TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 400.0f, 400.f ) ); - application.GetScene().Add( textEditor ); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(400.0f, 400.f)); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Line #1\nLine #2\nLine #3" ); - textEditor.SetProperty( DevelTextEditor::Property::MIN_LINE_SIZE, 0 ); + textEditor.SetProperty(TextEditor::Property::TEXT, "Line #1\nLine #2\nLine #3"); + textEditor.SetProperty(DevelTextEditor::Property::MIN_LINE_SIZE, 0); Vector3 sizeBefore = textEditor.GetNaturalSize(); - textEditor.SetProperty( DevelTextEditor::Property::MIN_LINE_SIZE, 60 ); + textEditor.SetProperty(DevelTextEditor::Property::MIN_LINE_SIZE, 60); - DALI_TEST_NOT_EQUALS( sizeBefore, textEditor.GetNaturalSize(), 0.0f, TEST_LOCATION); + DALI_TEST_NOT_EQUALS(sizeBefore, textEditor.GetNaturalSize(), 0.0f, TEST_LOCATION); //60 * 3 lines DALI_TEST_EQUALS(180.0f, textEditor.GetNaturalSize().height, TEST_LOCATION); @@ -4441,24 +4610,24 @@ int utcDaliTextEditorCursorPositionChangedSignal(void) tet_infoline(" utcDaliTextEditorCursorPositionChangedSignal"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // connect to the selection changed signal. ConnectionTracker* testTracker = new ConnectionTracker(); DevelTextEditor::CursorPositionChangedSignal(editor).Connect(&TestCursorPositionChangedCallback); bool cursorPositionChangedSignal = false; - editor.ConnectSignal( testTracker, "cursorPositionChanged", CallbackFunctor(&cursorPositionChangedSignal) ); + editor.ConnectSignal(testTracker, "cursorPositionChanged", CallbackFunctor(&cursorPositionChangedSignal)); - editor.SetProperty( TextEditor::Property::TEXT, "Hello\nworld\nHello world" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworld\nHello world"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); @@ -4467,7 +4636,7 @@ int utcDaliTextEditorCursorPositionChangedSignal(void) editor.SetKeyInputFocus(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); @@ -4479,7 +4648,7 @@ int utcDaliTextEditorCursorPositionChangedSignal(void) gCursorPositionChangedCallbackCalled = false; // Move to left. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4491,7 +4660,7 @@ int utcDaliTextEditorCursorPositionChangedSignal(void) gCursorPositionChangedCallbackCalled = false; // Insert C - application.ProcessEvent( GenerateKey( "c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4503,7 +4672,7 @@ int utcDaliTextEditorCursorPositionChangedSignal(void) gCursorPositionChangedCallbackCalled = false; //delete one character - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4514,7 +4683,7 @@ int utcDaliTextEditorCursorPositionChangedSignal(void) gCursorPositionChangedCallbackCalled = false; - editor.SetProperty( TextEditor::Property::TEXT, "Hello" ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello"); // Render and notify application.SendNotification(); @@ -4525,7 +4694,7 @@ int utcDaliTextEditorCursorPositionChangedSignal(void) gCursorPositionChangedCallbackCalled = false; - editor.SetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); + editor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); // Render and notify application.SendNotification(); @@ -4543,33 +4712,33 @@ int utcDaliTextEditorGeometryEllipsisStart(void) tet_infoline(" utcDaliTextEditorGeometryEllipsisStart"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 7.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - editor.SetProperty( DevelTextEditor::Property::ENABLE_SCROLL_BAR, false ); - editor.SetProperty( DevelTextEditor::Property::ELLIPSIS, true ); - editor.SetProperty( DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::START ); - editor.SetProperty( TextEditor::Property::TEXT, "line1 \nline2\nline 3\nline4" ); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 7.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(DevelTextEditor::Property::ENABLE_SCROLL_BAR, false); + editor.SetProperty(DevelTextEditor::Property::ELLIPSIS, true); + editor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::START); + editor.SetProperty(TextEditor::Property::TEXT, "line1 \nline2\nline 3\nline4"); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); unsigned int expectedCount = 2; - unsigned int startIndex = 0; - unsigned int endIndex = 24; + unsigned int startIndex = 0; + unsigned int endIndex = 24; Vector positionsList = DevelTextEditor::GetTextPosition(editor, startIndex, endIndex); - Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); + Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); DALI_TEST_EQUALS(positionsList.Size(), expectedCount, TEST_LOCATION); DALI_TEST_EQUALS(sizeList.Size(), expectedCount, TEST_LOCATION); @@ -4594,33 +4763,33 @@ int utcDaliTextEditorGeometryEllipsisMiddle(void) tet_infoline(" utcDaliTextEditorGeometryEllipsisMiddle"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 7.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - editor.SetProperty( DevelTextEditor::Property::ENABLE_SCROLL_BAR, false ); - editor.SetProperty( DevelTextEditor::Property::ELLIPSIS, true ); - editor.SetProperty( DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::MIDDLE ); - editor.SetProperty( TextEditor::Property::TEXT, "line1 \nline2\nline 3\nline4" ); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 7.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(DevelTextEditor::Property::ENABLE_SCROLL_BAR, false); + editor.SetProperty(DevelTextEditor::Property::ELLIPSIS, true); + editor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::MIDDLE); + editor.SetProperty(TextEditor::Property::TEXT, "line1 \nline2\nline 3\nline4"); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); unsigned int expectedCount = 2; - unsigned int startIndex = 0; - unsigned int endIndex = 24; + unsigned int startIndex = 0; + unsigned int endIndex = 24; Vector positionsList = DevelTextEditor::GetTextPosition(editor, startIndex, endIndex); - Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); + Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); DALI_TEST_EQUALS(positionsList.Size(), expectedCount, TEST_LOCATION); DALI_TEST_EQUALS(sizeList.Size(), expectedCount, TEST_LOCATION); @@ -4645,33 +4814,33 @@ int utcDaliTextEditorGeometryEllipsisEnd(void) tet_infoline(" utcDaliTextEditorGeometryEllipsisEnd"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 7.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - editor.SetProperty( DevelTextEditor::Property::ENABLE_SCROLL_BAR, false ); - editor.SetProperty( DevelTextEditor::Property::ELLIPSIS, true ); - editor.SetProperty( DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::END ); - editor.SetProperty( TextEditor::Property::TEXT, "line1 \nline2\nline 3\nline4" ); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 7.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(DevelTextEditor::Property::ENABLE_SCROLL_BAR, false); + editor.SetProperty(DevelTextEditor::Property::ELLIPSIS, true); + editor.SetProperty(DevelTextEditor::Property::ELLIPSIS_POSITION, DevelText::EllipsisPosition::END); + editor.SetProperty(TextEditor::Property::TEXT, "line1 \nline2\nline 3\nline4"); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); unsigned int expectedCount = 2; - unsigned int startIndex = 0; - unsigned int endIndex = 24; + unsigned int startIndex = 0; + unsigned int endIndex = 24; Vector positionsList = DevelTextEditor::GetTextPosition(editor, startIndex, endIndex); - Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); + Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); DALI_TEST_EQUALS(positionsList.Size(), expectedCount, TEST_LOCATION); DALI_TEST_EQUALS(sizeList.Size(), expectedCount, TEST_LOCATION); @@ -4696,30 +4865,30 @@ int utcDaliTextEditorGeometryRTL(void) tet_infoline(" utcDaliTextEditorGeometryRTL"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 7.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - editor.SetProperty( TextEditor::Property::TEXT, "line1 \nline2\nline 3\nالاخيرالسطر" ); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 7.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(TextEditor::Property::TEXT, "line1 \nline2\nline 3\nالاخيرالسطر"); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); unsigned int expectedCount = 4; - unsigned int startIndex = 3; - unsigned int endIndex = 24; + unsigned int startIndex = 3; + unsigned int endIndex = 24; Vector positionsList = DevelTextEditor::GetTextPosition(editor, startIndex, endIndex); - Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); + Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); DALI_TEST_EQUALS(positionsList.Size(), expectedCount, TEST_LOCATION); DALI_TEST_EQUALS(sizeList.Size(), expectedCount, TEST_LOCATION); @@ -4750,30 +4919,30 @@ int utcDaliTextEditorGeometryGlyphMiddle(void) tet_infoline(" utcDaliTextEditorGeometryGlyphMiddle"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 7.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 150.f, 200.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - editor.SetProperty( TextEditor::Property::TEXT, "لا تحتوي على لا" ); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 7.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(150.f, 200.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(TextEditor::Property::TEXT, "لا تحتوي على لا"); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); unsigned int expectedCount = 1; - unsigned int startIndex = 1; - unsigned int endIndex = 13; + unsigned int startIndex = 1; + unsigned int endIndex = 13; Vector positionsList = DevelTextEditor::GetTextPosition(editor, startIndex, endIndex); - Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); + Vector sizeList = DevelTextEditor::GetTextSize(editor, startIndex, endIndex); DALI_TEST_EQUALS(positionsList.Size(), expectedCount, TEST_LOCATION); DALI_TEST_EQUALS(sizeList.Size(), expectedCount, TEST_LOCATION); @@ -4795,42 +4964,42 @@ int utcDaliTextEditorSelectionClearedSignal(void) tet_infoline(" utcDaliTextEditorSelectionClearedSignal"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // connect to the selection changed signal. ConnectionTracker* testTracker = new ConnectionTracker(); DevelTextEditor::SelectionClearedSignal(editor).Connect(&TestSelectionClearedCallback); bool selectionClearedSignal = false; - editor.ConnectSignal( testTracker, "selectionCleared", CallbackFunctor(&selectionClearedSignal) ); + editor.ConnectSignal(testTracker, "selectionCleared", CallbackFunctor(&selectionClearedSignal)); - editor.SetProperty( TextEditor::Property::TEXT, "Hello\nworld\nHello world" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); - - // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworld\nHello world"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + + // Avoid a crash when core load gl resources. + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); application.Render(); // Move to second line of the text & Select some text in the right of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // remove selection - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_ESCAPE, 0, 0, Integration::KeyEvent::UP, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_ESCAPE, 0, 0, Integration::KeyEvent::UP, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4843,7 +5012,7 @@ int utcDaliTextEditorSelectionClearedSignal(void) application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); @@ -4852,11 +5021,11 @@ int utcDaliTextEditorSelectionClearedSignal(void) gSelectionClearedCallbackCalled = false; // Move to second line of the text & select. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); //remove selection - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4871,11 +5040,11 @@ int utcDaliTextEditorSelectionClearedSignal(void) application.Render(); // Move to second line of the text & select. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // replace C with selected text - application.ProcessEvent( GenerateKey( "c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("c", "", "c", KEY_C_CODE, 0, 0, Integration::KeyEvent::DOWN, "c", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4889,13 +5058,13 @@ int utcDaliTextEditorSelectionClearedSignal(void) application.SendNotification(); application.Render(); - DevelTextEditor::SelectText( editor ,1, 3 ); + DevelTextEditor::SelectText(editor, 1, 3); // Render and notify application.SendNotification(); application.Render(); - editor.SetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); + editor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); // Render and notify application.SendNotification(); @@ -4905,7 +5074,7 @@ int utcDaliTextEditorSelectionClearedSignal(void) gSelectionClearedCallbackCalled = false; - DevelTextEditor::SelectText( editor ,1, 3 ); + DevelTextEditor::SelectText(editor, 1, 3); // Render and notify application.SendNotification(); @@ -4923,52 +5092,165 @@ int utcDaliTextEditorSelectionClearedSignal(void) END_TEST; } +int utcDaliTextEditorSelectionStartedSignal(void) +{ + ToolkitTestApplication application; + tet_infoline(" utcDaliTextEditorSelectionStartedSignal"); + + TextEditor editor = TextEditor::New(); + DALI_TEST_CHECK(editor); + + application.GetScene().Add(editor); + + // connect to the selection changed signal. + ConnectionTracker* testTracker = new ConnectionTracker(); + DevelTextEditor::SelectionStartedSignal(editor).Connect(&TestSelectionStartedCallback); + bool selectionStartedSignal = false; + editor.ConnectSignal(testTracker, "selectionStarted", CallbackFunctor(&selectionStartedSignal)); + + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworld\nHello world"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + + // Avoid a crash when core load gl resources. + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); + + // Render and notify + application.SendNotification(); + application.Render(); + + // Tap on the text editor + TestGenerateTap(application, 3.0f, 25.0f); + + // Render and notify + application.SendNotification(); + application.Render(); + + // Move to second line of the text & Select some text in the right of the current cursor position + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + + // Render and notify + application.SendNotification(); + application.Render(); + + DALI_TEST_CHECK(gSelectionStartedCallbackCalled); + + // remove selection + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_ESCAPE, 0, 0, Integration::KeyEvent::UP, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + + // Render and notify + application.SendNotification(); + application.Render(); + + gSelectionStartedCallbackCalled = false; + + DevelTextEditor::SelectText(editor, 1, 3); + + // Render and notify + application.SendNotification(); + application.Render(); + + DALI_TEST_CHECK(gSelectionStartedCallbackCalled); + + END_TEST; +} + +int utcDaliTextEditorSelectionWithSecondaryCursor(void) +{ + ToolkitTestApplication application; + tet_infoline(" utcDaliTextEditorSelectionWithSecondaryCursor"); + + // Checks if the actor is created. + + TextEditor editor = TextEditor::New(); + DALI_TEST_CHECK(editor); + + application.GetScene().Add(editor); + + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(TextEditor::Property::TEXT, "اللغة العربية\nمرحبا بالجميع\nالسلام عليكم Hello world"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 12.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(DevelTextEditor::Property::MIN_LINE_SIZE, 50.f); + editor.SetProperty(DevelTextEditor::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION, false); + + // Avoid a crash when core load gl resources. + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); + + // Render and notify + application.SendNotification(); + application.Render(); + + // Tap on the text editor + TestGenerateTap(application, 3.0f, 25.0f); + + // Render and notify + application.SendNotification(); + application.Render(); + + //Select the last Arabic word (RTL) & some the space before the English (LTR) letters. + DevelTextEditor::SelectText(editor, 35, 41); // This will activate the alternative cursor position and thus 'cursorInfo.isSecondaryCursor' will be true. + + application.SendNotification(); + application.Render(); + + std::string selectedText = editor.GetProperty(DevelTextEditor::Property::SELECTED_TEXT).Get(); + DALI_TEST_EQUALS("عليكم ", selectedText, TEST_LOCATION); + + END_TEST; +} + int utcDaliTextEditorSelectionChangedSignal(void) { ToolkitTestApplication application; tet_infoline(" utcDaliTextEditorSelectionChangedSignal"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // connect to the selection changed signal. ConnectionTracker* testTracker = new ConnectionTracker(); DevelTextEditor::SelectionChangedSignal(editor).Connect(&TestSelectionChangedCallback); bool selectionChangedSignal = false; - editor.ConnectSignal( testTracker, "selectionChanged", CallbackFunctor(&selectionChangedSignal) ); + editor.ConnectSignal(testTracker, "selectionChanged", CallbackFunctor(&selectionChangedSignal)); - editor.SetProperty( TextEditor::Property::TEXT, "Hello\nworld\nHello world" ); - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - editor.SetProperty( Actor::Property::SIZE, Vector2( 100.f, 50.f ) ); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nworld\nHello world"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); // Render and notify application.SendNotification(); application.Render(); // Tap on the text editor - TestGenerateTap( application, 3.0f, 25.0f ); + TestGenerateTap(application, 3.0f, 25.0f); // Render and notify application.SendNotification(); application.Render(); // Move to second line of the text. - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); // Select some text in the right of the current cursor position - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_SHIFT_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4979,7 +5261,7 @@ int utcDaliTextEditorSelectionChangedSignal(void) gSelectionChangedCallbackCalled = false; - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_RIGHT, KEY_SHIFT_MODIFIER, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -4991,7 +5273,7 @@ int utcDaliTextEditorSelectionChangedSignal(void) gSelectionChangedCallbackCalled = false; - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_ESCAPE, 0, 0, Integration::KeyEvent::UP, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_ESCAPE, 0, 0, Integration::KeyEvent::UP, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); @@ -5008,7 +5290,7 @@ int utcDaliTextEditorSelectionChangedSignal(void) application.SendNotification(); application.Render(); - DevelTextEditor::SelectText( editor ,0, 5 ); + DevelTextEditor::SelectText(editor, 0, 5); application.SendNotification(); application.Render(); @@ -5018,7 +5300,7 @@ int utcDaliTextEditorSelectionChangedSignal(void) gSelectionChangedCallbackCalled = false; - editor.SetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); + editor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); // Render and notify application.SendNotification(); @@ -5062,28 +5344,28 @@ int UtcDaliToolkitTextEditorStrikethroughGeneration(void) tet_infoline(" UtcDaliToolkitTextEditorStrikethroughGeneration"); TextEditor textEditor = TextEditor::New(); - textEditor.SetProperty( TextEditor::Property::TEXT, "Test" ); - textEditor.SetProperty( Actor::Property::SIZE, Vector2( 200.0f, 100.f ) ); - textEditor.SetProperty( TextEditor::Property::POINT_SIZE, 10) ; - textEditor.SetProperty( TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test"); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 100.f)); + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 10); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); - application.GetScene().Add( textEditor ); + application.GetScene().Add(textEditor); application.SendNotification(); application.Render(); Property::Map strikethroughMapSet; Property::Map strikethroughMapGet; - strikethroughMapSet.Insert( "enable", true ); - strikethroughMapSet.Insert( "color", Color::RED ); - strikethroughMapSet.Insert( "height", 2.0f ); + strikethroughMapSet.Insert("enable", true); + strikethroughMapSet.Insert("color", Color::RED); + strikethroughMapSet.Insert("height", 2.0f); // Check the strikethrough property - textEditor.SetProperty( DevelTextEditor::Property::STRIKETHROUGH, strikethroughMapSet ); - strikethroughMapGet = textEditor.GetProperty( DevelTextEditor::Property::STRIKETHROUGH ); - textEditor.SetProperty( TextEditor::Property::TEXT, "Test1" ); - DALI_TEST_EQUALS( strikethroughMapGet.Count(), strikethroughMapSet.Count(), TEST_LOCATION ); - DALI_TEST_EQUALS( DaliTestCheckMaps( strikethroughMapGet, strikethroughMapSet ), true, TEST_LOCATION ); + textEditor.SetProperty(DevelTextEditor::Property::STRIKETHROUGH, strikethroughMapSet); + strikethroughMapGet = textEditor.GetProperty(DevelTextEditor::Property::STRIKETHROUGH); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test1"); + DALI_TEST_EQUALS(strikethroughMapGet.Count(), strikethroughMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(strikethroughMapGet, strikethroughMapSet), true, TEST_LOCATION); // Render and notify application.SendNotification(); @@ -5097,7 +5379,6 @@ int UtcDaliToolkitTextEditorStrikethroughGeneration(void) int utcDaliTextEditorInsertCharacterAfterInitWithResizePolicyNaturalSize(void) { - //This is to test a crash when used Resize Policy equals USE_NATURAL_SIZE //DaliException on vector: "Iterator not inside vector" @@ -5105,17 +5386,17 @@ int utcDaliTextEditorInsertCharacterAfterInitWithResizePolicyNaturalSize(void) tet_infoline(" utcDaliTextEditorInsertCharacterAfterInitWithResizePolicyNaturalSize"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); //Set multilines text editor.SetProperty(Dali::Toolkit::TextEditor::Property::TEXT, "Hello \n World"); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); //Set ResizePolicy to NaturalSize editor.SetProperty(Dali::Actor::Property::WIDTH_RESIZE_POLICY, ResizePolicy::USE_NATURAL_SIZE); @@ -5125,24 +5406,24 @@ int utcDaliTextEditorInsertCharacterAfterInitWithResizePolicyNaturalSize(void) application.Render(); // Create a tap event to touch the text editor. - TestGenerateTap( application, 5.0f, 5.0f ); + TestGenerateTap(application, 5.0f, 5.0f); // Render and notify application.SendNotification(); application.Render(); // Set currsor and add character (in first line) - editor.SetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 5); - application.ProcessEvent( GenerateKey( "d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::UP, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + editor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 5); + application.ProcessEvent(GenerateKey("d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::DOWN, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("d", "", "d", KEY_D_CODE, 0, 0, Integration::KeyEvent::UP, "d", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); //Check the changed text and cursor position - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ).Get(), "Hellod \n World", TEST_LOCATION ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION ).Get(), 6, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT).Get(), "Hellod \n World", TEST_LOCATION); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION).Get(), 6, TEST_LOCATION); // Render and notify application.SendNotification(); @@ -5153,7 +5434,6 @@ int utcDaliTextEditorInsertCharacterAfterInitWithResizePolicyNaturalSize(void) int utcDaliTextEditorRemoveCharacterAfterInitWithResizePolicyNaturalSize(void) { - //This is to test a crash when used Resize Policy equals USE_NATURAL_SIZE //DaliException on vector: "Iterator not inside vector" @@ -5161,37 +5441,37 @@ int utcDaliTextEditorRemoveCharacterAfterInitWithResizePolicyNaturalSize(void) tet_infoline(" utcDaliTextEditorRemoveCharacterAfterInitWithResizePolicyNaturalSize"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); //Set multilines text editor.SetProperty(Dali::Toolkit::TextEditor::Property::TEXT, "Hello \n World"); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); //Set ResizePolicy to NaturalSize editor.SetProperty(Dali::Actor::Property::WIDTH_RESIZE_POLICY, ResizePolicy::USE_NATURAL_SIZE); // Set currsor - editor.SetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 5); + editor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 5); application.SendNotification(); application.Render(); // Set focus and remove character editor.SetKeyInputFocus(); - application.ProcessEvent( GenerateKey( "", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); //Check the changed text and cursor position - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ).Get(), "Hell \n World", TEST_LOCATION ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION ).Get(), 4, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT).Get(), "Hell \n World", TEST_LOCATION); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION).Get(), 4, TEST_LOCATION); // Render and notify application.SendNotification(); @@ -5202,7 +5482,6 @@ int utcDaliTextEditorRemoveCharacterAfterInitWithResizePolicyNaturalSize(void) int utcDaliTextEditorCutSelectedTextAfterInitWithResizePolicyNaturalSize(void) { - //This is to test a crash when used Resize Policy equals USE_NATURAL_SIZE //DaliException on vector: "Iterator not inside vector" @@ -5210,39 +5489,39 @@ int utcDaliTextEditorCutSelectedTextAfterInitWithResizePolicyNaturalSize(void) tet_infoline(" utcDaliTextEditorCutSelectedTextAfterInitWithResizePolicyNaturalSize"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); //Set multilines text editor.SetProperty(Dali::Toolkit::TextEditor::Property::TEXT, "Hello \n World"); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); //Set ResizePolicy to NaturalSize editor.SetProperty(Dali::Actor::Property::WIDTH_RESIZE_POLICY, ResizePolicy::USE_NATURAL_SIZE); //Select text at initialization (before the first render) - DevelTextEditor::SelectText( editor ,3, 5 ); + DevelTextEditor::SelectText(editor, 3, 5); // Render and notify application.SendNotification(); application.Render(); //Cut text - application.ProcessEvent( GenerateKey( "", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); - application.ProcessEvent( GenerateKey( "x", "x", "x", KEY_X_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE ) ); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_CONTROL_LEFT, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + application.ProcessEvent(GenerateKey("x", "x", "x", KEY_X_CODE, KEY_CONTROL_MODIFIER, 0, Integration::KeyEvent::DOWN, "x", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); // Render and notify application.SendNotification(); application.Render(); //Check the changed text and cursor position - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ).Get(), "Hel \n World", TEST_LOCATION ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION ).Get(), 3, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT).Get(), "Hel \n World", TEST_LOCATION); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION).Get(), 3, TEST_LOCATION); // Render and notify application.SendNotification(); @@ -5251,10 +5530,8 @@ int utcDaliTextEditorCutSelectedTextAfterInitWithResizePolicyNaturalSize(void) END_TEST; } - int utcDaliTextEditorDoubleEnterAfterInitWithResizePolicyNaturalSize(void) { - //This is to test a crash when used Resize Policy equals USE_NATURAL_SIZE //DaliException on vector: "Iterator not inside vector" @@ -5262,23 +5539,23 @@ int utcDaliTextEditorDoubleEnterAfterInitWithResizePolicyNaturalSize(void) tet_infoline(" utcDaliTextEditorDoubleEnterAfterInitWithResizePolicyNaturalSize"); TextEditor editor = TextEditor::New(); - DALI_TEST_CHECK( editor ); + DALI_TEST_CHECK(editor); - application.GetScene().Add( editor ); + application.GetScene().Add(editor); // Avoid a crash when core load gl resources. - application.GetGlAbstraction().SetCheckFramebufferStatusResult( GL_FRAMEBUFFER_COMPLETE ); + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); //Set multilines text editor.SetProperty(Dali::Toolkit::TextEditor::Property::TEXT, "Hello \n World"); - editor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); - editor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); //Set ResizePolicy to NaturalSize editor.SetProperty(Dali::Actor::Property::WIDTH_RESIZE_POLICY, ResizePolicy::USE_NATURAL_SIZE); // Set currsor - editor.SetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 5); + editor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 5); application.SendNotification(); application.Render(); @@ -5292,8 +5569,511 @@ int utcDaliTextEditorDoubleEnterAfterInitWithResizePolicyNaturalSize(void) application.Render(); //Check the changed text and cursor position - DALI_TEST_EQUALS( editor.GetProperty( TextEditor::Property::TEXT ).Get(), "Hello\n\n \n World", TEST_LOCATION ); - DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::PRIMARY_CURSOR_POSITION ).Get(), 7, TEST_LOCATION ); + DALI_TEST_EQUALS(editor.GetProperty(TextEditor::Property::TEXT).Get(), "Hello\n\n \n World", TEST_LOCATION); + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION).Get(), 7, TEST_LOCATION); + + // Render and notify + application.SendNotification(); + application.Render(); + + END_TEST; +} + +int UtcDaliToolkitTextEditorUnderlineTypesGeneration1(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliToolkitTextEditorUnderlineTypesGeneration1"); + TextEditor textEditor = TextEditor::New(); + textEditor.SetProperty(TextEditor::Property::TEXT, "Test"); + textEditor.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 100.f)); + textEditor.SetProperty(TextEditor::Property::POINT_SIZE, 10); + textEditor.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + + application.GetScene().Add(textEditor); + application.SendNotification(); + application.Render(); + + Property::Map underlineMapSet; + Property::Map underlineMapGet; + + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::RED); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::SOLID); + underlineMapSet.Insert("dashWidth", 2); + underlineMapSet.Insert("dashGap", 1); + + // Check the underline property + textEditor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + + underlineMapGet = textEditor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet, underlineMapSet), true, TEST_LOCATION); + + // Render and notify + application.SendNotification(); + application.Render(); + + underlineMapSet.Clear(); + underlineMapGet.Clear(); + + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::BLUE); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::DASHED); + underlineMapSet.Insert("dashWidth", 4); + underlineMapSet.Insert("dashGap", 2); + + // Check the dashed underline property + textEditor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + + underlineMapGet = textEditor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet, underlineMapSet), true, TEST_LOCATION); + + // Render and notify + application.SendNotification(); + application.Render(); + + underlineMapSet.Clear(); + underlineMapGet.Clear(); + + underlineMapSet.Insert("enable", true); + underlineMapSet.Insert("color", Color::BLUE); + underlineMapSet.Insert("height", 1); + underlineMapSet.Insert("type", Text::Underline::DOUBLE); + underlineMapSet.Insert("dashWidth", 4); + underlineMapSet.Insert("dashGap", 2); + + // Check the dashed underline property + textEditor.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet); + + underlineMapGet = textEditor.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet.Count(), underlineMapSet.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet, underlineMapSet), true, TEST_LOCATION); + + // Render and notify + application.SendNotification(); + application.Render(); + + underlineMapSet.Clear(); + underlineMapGet.Clear(); + + END_TEST; +} + +int UtcDaliToolkitTextEditorUnderlineTypesGeneration2(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliToolkitTextEditorUnderlineTypesGeneration2"); + + TextEditor textEditor1 = TextEditor::New(); + textEditor1.SetProperty(TextEditor::Property::TEXT, "Test"); + textEditor1.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 100.f)); + textEditor1.SetProperty(TextEditor::Property::POINT_SIZE, 10); + textEditor1.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + + Property::Map underlineMapSet1; + Property::Map underlineMapGet1; + + underlineMapSet1.Insert("enable", true); + underlineMapSet1.Insert("color", Color::RED); + underlineMapSet1.Insert("height", 1); + underlineMapSet1.Insert("type", Text::Underline::SOLID); + underlineMapSet1.Insert("dashWidth", 2); + underlineMapSet1.Insert("dashGap", 1); + + // Check the underline property + textEditor1.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet1); + + underlineMapGet1 = textEditor1.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet1.Count(), underlineMapSet1.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet1, underlineMapSet1), true, TEST_LOCATION); + + application.GetScene().Add(textEditor1); + application.SendNotification(); + application.Render(); + + TextEditor textEditor2 = TextEditor::New(); + textEditor2.SetProperty(TextEditor::Property::TEXT, "Test"); + textEditor2.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 100.f)); + textEditor2.SetProperty(TextEditor::Property::POINT_SIZE, 10); + textEditor2.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + + Property::Map underlineMapSet2; + Property::Map underlineMapGet2; + + underlineMapSet2.Insert("enable", true); + underlineMapSet2.Insert("color", Color::BLUE); + underlineMapSet2.Insert("height", 1); + underlineMapSet2.Insert("type", Text::Underline::DASHED); + underlineMapSet2.Insert("dashWidth", 4); + underlineMapSet2.Insert("dashGap", 2); + + // Check the dashed underline property + textEditor2.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet2); + + underlineMapGet2 = textEditor2.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet2.Count(), underlineMapSet2.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet2, underlineMapSet2), true, TEST_LOCATION); + + application.GetScene().Add(textEditor2); + application.SendNotification(); + application.Render(); + + TextEditor textEditor3 = TextEditor::New(); + textEditor3.SetProperty(TextEditor::Property::TEXT, "Test"); + textEditor3.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 100.f)); + textEditor3.SetProperty(TextEditor::Property::POINT_SIZE, 10); + textEditor3.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + + Property::Map underlineMapSet3; + Property::Map underlineMapGet3; + + underlineMapSet3.Insert("enable", true); + underlineMapSet3.Insert("color", Color::BLUE); + underlineMapSet3.Insert("height", 1); + underlineMapSet3.Insert("type", Text::Underline::DOUBLE); + underlineMapSet3.Insert("dashWidth", 4); + underlineMapSet3.Insert("dashGap", 2); + + // Check the dashed underline property + textEditor3.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet3); + + underlineMapGet3 = textEditor3.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet3.Count(), underlineMapSet3.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet3, underlineMapSet3), true, TEST_LOCATION); + + application.GetScene().Add(textEditor3); + application.SendNotification(); + application.Render(); + + END_TEST; +} + +int UtcDaliToolkitTextEditorUnderlineTypesGeneration3(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliToolkitTextEditorUnderlineTypesGeneration3"); + + TextEditor textEditor1 = TextEditor::New(); + textEditor1.SetProperty(TextEditor::Property::TEXT, "Test1"); + textEditor1.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 100.f)); + textEditor1.SetProperty(TextEditor::Property::POINT_SIZE, 10); + textEditor1.SetProperty(TextEditor::Property::FONT_FAMILY, "DejaVu Sans"); + + Property::Map underlineMapSet1; + Property::Map underlineMapGet1; + + underlineMapSet1.Insert("enable", true); + underlineMapSet1.Insert("color", Color::RED); + underlineMapSet1.Insert("height", 1); + underlineMapSet1.Insert("type", Text::Underline::SOLID); + underlineMapSet1.Insert("dashWidth", 2); + underlineMapSet1.Insert("dashGap", 1); + + // Check the underline property + textEditor1.SetProperty(TextEditor::Property::UNDERLINE, underlineMapSet1); + //textEditor1.SetProperty( TextEditor::Property::TEXT, "Test2" ); + + underlineMapGet1 = textEditor1.GetProperty(TextEditor::Property::UNDERLINE); + DALI_TEST_EQUALS(underlineMapGet1.Count(), underlineMapSet1.Count(), TEST_LOCATION); + DALI_TEST_EQUALS(DaliTestCheckMaps(underlineMapGet1, underlineMapSet1), true, TEST_LOCATION); + + application.GetScene().Add(textEditor1); + + application.SendNotification(); + application.Render(); + + END_TEST; +} + +int UtcDaliToolkitTextEditorMarkupRelativeLineHeight(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliToolkitTextEditorMarkupRelativeLineHeight"); + + TextEditor editor = TextEditor::New(); + editor.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 300.f)); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10); + editor.SetProperty(TextEditor::Property::TEXT, "line 1\nline 2\nline 3\nline 4\nline 5"); + editor.SetProperty(DevelTextEditor::Property::RELATIVE_LINE_SIZE, 1.0f); + editor.SetProperty(DevelTextEditor::Property::ELLIPSIS, false); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + + TextEditor editorSingleLineParagraph = TextEditor::New(); + editorSingleLineParagraph.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 300.f)); + editorSingleLineParagraph.SetProperty(TextEditor::Property::POINT_SIZE, 10); + editorSingleLineParagraph.SetProperty(TextEditor::Property::TEXT, "

line 1

line 2

line 3

line 4

line 5"); + editorSingleLineParagraph.SetProperty(DevelTextEditor::Property::RELATIVE_LINE_SIZE, 1.0f); + editorSingleLineParagraph.SetProperty(DevelTextEditor::Property::ELLIPSIS, false); + editorSingleLineParagraph.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + + TextEditor editorMultiLineParagraph = TextEditor::New(); + editorMultiLineParagraph.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 300.f)); + editorMultiLineParagraph.SetProperty(TextEditor::Property::POINT_SIZE, 10); + editorMultiLineParagraph.SetProperty(TextEditor::Property::TEXT, "

line 1

line\n2

line 3

line\n4

line 5"); + editorMultiLineParagraph.SetProperty(DevelTextEditor::Property::RELATIVE_LINE_SIZE, 1.0f); + editorMultiLineParagraph.SetProperty(DevelTextEditor::Property::ELLIPSIS, false); + editorMultiLineParagraph.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + + application.GetScene().Add(editor); + application.GetScene().Add(editorSingleLineParagraph); + application.GetScene().Add(editorMultiLineParagraph); + application.SendNotification(); + application.Render(); + + Vector3 naturalSize = editor.GetNaturalSize(); + Vector3 relativeSingleNaturalSize = editorSingleLineParagraph.GetNaturalSize(); + Vector3 relativeMultiNaturalSize = editorMultiLineParagraph.GetNaturalSize(); + + float lineSize = naturalSize.y / 5.0f; //total size/number of lines + + //no effect of relative line size for paragraph with single line + DALI_TEST_EQUALS(naturalSize.y, relativeSingleNaturalSize.y, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + + DALI_TEST_EQUALS(lineSize*8.5f, relativeMultiNaturalSize.y, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + + END_TEST; +} + +int UtcDaliToolkitTextEditorRelativeLineHeight(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliToolkitTextEditorRelativeLineHeight"); + + TextEditor editor = TextEditor::New(); + editor.SetProperty(Actor::Property::SIZE, Vector2(200.0f, 300.f)); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10); + editor.SetProperty(TextEditor::Property::TEXT, "Hello\nWorld"); + + application.GetScene().Add(editor); + application.SendNotification(); + application.Render(); + + Vector3 naturalSize = editor.GetNaturalSize(); + + editor.SetProperty(DevelTextEditor::Property::RELATIVE_LINE_SIZE, 0.5f); + + application.SendNotification(); + application.Render(); + + Vector3 relativeNaturalSize = editor.GetNaturalSize(); + + DALI_TEST_EQUALS(naturalSize.y, relativeNaturalSize.y, TEST_LOCATION); + + editor.SetProperty(DevelTextEditor::Property::RELATIVE_LINE_SIZE, 2.0f); + + application.SendNotification(); + application.Render(); + + relativeNaturalSize = editor.GetNaturalSize(); + + DALI_TEST_EQUALS(naturalSize.y * 2, relativeNaturalSize.y, TEST_LOCATION); + END_TEST; +} + +int UtcDaliTextEditorCharacterSpacing(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliTextEditorCharacterSpacing "); + + TextEditor textEditor = TextEditor::New(); + + textEditor.SetProperty(Actor::Property::SIZE, Vector2(150.0f, 300.f)); + + application.GetScene().Add(textEditor); + application.SendNotification(); + application.Render(); + + textEditor.SetProperty(TextEditor::Property::TEXT, "Hi Experiment"); + textEditor.SetProperty(DevelTextEditor::Property::CHARACTER_SPACING, 10.f); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::CHARACTER_SPACING), 10.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + + application.SendNotification(); + application.Render(); + + END_TEST; +} + +int UtcDaliTextEditorTextSizeNegativeLineSpacing(void) +{ + ToolkitTestApplication application; + tet_infoline("UtcDaliTextEditorTextSizeNegativeLineSpacing"); + + TextEditor editor = TextEditor::New(); + + float lineSpacing = -20.f; + + editor.SetProperty(Actor::Property::SIZE, Vector2(450.0f, 300.f)); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(DevelTextEditor::Property::LINE_SPACING, lineSpacing); + editor.SetProperty(TextEditor::Property::TEXT, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + + application.GetScene().Add(editor); + application.SendNotification(); + application.Render(); + + Vector positionsList = DevelTextEditor::GetTextPosition(editor, 0, 123); + Vector sizeList = DevelTextEditor::GetTextSize(editor, 0, 123); + + Vector2 lastLinePos = positionsList[positionsList.Size() - 1]; + Vector2 lastLineSize = sizeList[sizeList.Size() - 1]; + + DALI_TEST_EQUALS(sizeList[0].y * (sizeList.Size() - 1), lastLinePos.y, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + DALI_TEST_EQUALS(sizeList[0].y - lineSpacing, lastLineSize.y, Math::MACHINE_EPSILON_1000, TEST_LOCATION); + + application.SendNotification(); + application.Render(); + + END_TEST; +} + +int UtcDaliTextEditorLineSpacingKeyArrowDown(void) +{ + ToolkitTestApplication application; + tet_infoline("UtcDaliTextEditorLineSpacingKeyArrowDown"); + + TextEditor editor = TextEditor::New(); + DALI_TEST_CHECK(editor); + + application.GetScene().Add(editor); + + std::string cutText = ""; + std::string copiedText = ""; + + editor.SetProperty(TextEditor::Property::TEXT, "l1\nl2\nl3\n4"); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 10.f); + editor.SetProperty(Actor::Property::SIZE, Vector2(300.f, 200.f)); + editor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editor.SetProperty(TextEditor::Property::LINE_SPACING, -15); + + // Render and notify + application.SendNotification(); + application.Render(); + + // Tap on the text editor + TestGenerateTap(application, 1.0f, 1.0f); + + // Render and notify + application.SendNotification(); + application.Render(); + + // Move to second line of the text. + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_CURSOR_DOWN, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + + // Render and notify + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS(editor.GetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION).Get(), 3, TEST_LOCATION); + + END_TEST; +} + +int UtcDaliTextEditorNegativeLineSpacingWithEllipsis(void) +{ + ToolkitTestApplication application; + tet_infoline("UtcDaliTextEditorNegativeLineSpacingWithEllipsis"); + + TextEditor editor = TextEditor::New(); + + float lineSpacing = -20.f; + + editor.SetProperty(Actor::Property::SIZE, Vector2(480.0f, 100.f)); + editor.SetProperty(TextEditor::Property::POINT_SIZE, 11.0f); + editor.SetProperty(DevelTextEditor::Property::LINE_SPACING, lineSpacing); + editor.SetProperty(TextEditor::Property::TEXT, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + editor.SetProperty(DevelTextEditor::Property::ELLIPSIS, true); + + application.GetScene().Add(editor); + application.SendNotification(); + application.Render(); + + Vector sizeList = DevelTextEditor::GetTextSize(editor, 0, 123); + + int lineCount = sizeList.Size(); + DALI_TEST_EQUALS(4, lineCount, TEST_LOCATION); + + application.SendNotification(); + application.Render(); + + END_TEST; +} + +int UtcDaliToolkitTexteditorParagraphTag(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliToolkitTexteditorParagraphTag"); + TextEditor editorNewlineSeparator = TextEditor::New(); + TextEditor editorParagraphTag = TextEditor::New(); + DALI_TEST_CHECK(editorNewlineSeparator); + DALI_TEST_CHECK(editorParagraphTag); + + application.GetScene().Add(editorNewlineSeparator); + application.GetScene().Add(editorParagraphTag); + + //Same utterance uses new-line to split paragraphs should give similar results for paragraph tag. + editorNewlineSeparator.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editorNewlineSeparator.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editorNewlineSeparator.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editorNewlineSeparator.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editorNewlineSeparator.SetProperty(TextEditor::Property::TEXT, "test paragraph tag \ntest paragraph tag \ntest paragraph tag "); + + editorParagraphTag.SetProperty(TextEditor::Property::ENABLE_MARKUP, true); + editorParagraphTag.SetProperty(Actor::Property::SIZE, Vector2(100.f, 50.f)); + editorParagraphTag.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + editorParagraphTag.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + editorParagraphTag.SetProperty(TextEditor::Property::TEXT, "test paragraph tag

test paragraph tag

test paragraph tag "); + + application.SendNotification(); + application.Render(); + + Vector3 textNaturalSizeNewlineSeparator = editorNewlineSeparator.GetNaturalSize(); + Vector3 textNaturalSizeParagraphTag = editorParagraphTag.GetNaturalSize(); + + DALI_TEST_EQUALS(textNaturalSizeNewlineSeparator, textNaturalSizeParagraphTag, TEST_LOCATION); + + application.SendNotification(); + application.Render(); + + END_TEST; +} + +//Handle Emoji clustering for cursor handling +int utcDaliTextEditorClusteredEmojiDeletionBackSpaceKey(void) +{ + ToolkitTestApplication application; + tet_infoline(" utcDaliTextEditorClusteredEmojiDeletionBackSpaceKey "); + TextEditor textEditor = TextEditor::New(); + DALI_TEST_CHECK(textEditor); + + application.GetScene().Add(textEditor); + + // Avoid a crash when core load gl resources. + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); + + textEditor.SetProperty(TextEditor::Property::TEXT, "ABC👨‍👩‍👧‍👦XY"); + textEditor.SetProperty(Dali::Toolkit::TextEditor::Property::ENABLE_MARKUP, true); + + // Render and notify + application.SendNotification(); + application.Render(); + + // Set currsor + textEditor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 10); + application.SendNotification(); + application.Render(); + + // Set focus and remove Emoji + textEditor.SetKeyInputFocus(); + application.ProcessEvent(GenerateKey("", "", "", DALI_KEY_BACKSPACE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + + //Check the changed text and cursor position + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "ABCXY", TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION).Get(), 3, TEST_LOCATION); // Render and notify application.SendNotification(); @@ -5301,3 +6081,42 @@ int utcDaliTextEditorDoubleEnterAfterInitWithResizePolicyNaturalSize(void) END_TEST; } + +int utcDaliTextEditorClusteredEmojiDeletionDeleteKey(void) +{ + ToolkitTestApplication application; + tet_infoline(" utcDaliTextEditorClusteredEmojiDeletionDeleteKey "); + TextEditor textEditor = TextEditor::New(); + DALI_TEST_CHECK(textEditor); + + application.GetScene().Add(textEditor); + + // Avoid a crash when core load gl resources. + application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE); + + textEditor.SetProperty(TextEditor::Property::TEXT, "ABC👨‍👩‍👧‍👦XY"); + textEditor.SetProperty(Dali::Toolkit::TextEditor::Property::ENABLE_MARKUP, true); + + // Render and notify + application.SendNotification(); + application.Render(); + + // Set currsor + textEditor.SetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION, 3); + application.SendNotification(); + application.Render(); + + // Set focus and remove Emoji + textEditor.SetKeyInputFocus(); + application.ProcessEvent(GenerateKey("", "", "", Dali::DevelKey::DALI_KEY_DELETE, 0, 0, Integration::KeyEvent::DOWN, "", DEFAULT_DEVICE_NAME, Device::Class::NONE, Device::Subclass::NONE)); + + //Check the changed text and cursor position + DALI_TEST_EQUALS(textEditor.GetProperty(TextEditor::Property::TEXT).Get(), "ABCXY", TEST_LOCATION); + DALI_TEST_EQUALS(textEditor.GetProperty(DevelTextEditor::Property::PRIMARY_CURSOR_POSITION).Get(), 3, TEST_LOCATION); + + // Render and notify + application.SendNotification(); + application.Render(); + + END_TEST; +} \ No newline at end of file