X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Ftext-input%2Ftext-input-impl.cpp;h=6d9b9e44559cc380258af2efd958a8fb0439e9b7;hb=47ae9e13f871657b580640a38bf48ae059ea380a;hp=c9d5b830e27e0974985dc0540ac6a926d7983aac;hpb=9f8c97ef6070093c3529a9d4368e18307eebf007;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/text-input/text-input-impl.cpp b/dali-toolkit/internal/controls/text-input/text-input-impl.cpp index c9d5b83..6d9b9e4 100644 --- a/dali-toolkit/internal/controls/text-input/text-input-impl.cpp +++ b/dali-toolkit/internal/controls/text-input/text-input-impl.cpp @@ -198,19 +198,28 @@ namespace Internal namespace { +// Signals + +const char* const SIGNAL_START_INPUT = "start-input"; +const char* const SIGNAL_END_INPUT = "end-input"; +const char* const SIGNAL_STYLE_CHANGED = "style-changed"; +const char* const SIGNAL_MAX_INPUT_CHARACTERS_REACHED = "max-input-characters-reached"; +const char* const SIGNAL_TOOLBAR_DISPLAYED = "toolbar-displayed"; +const char* const SIGNAL_TEXT_EXCEED_BOUNDARIES = "text-exceed-boundaries"; + BaseHandle Create() { return Toolkit::TextInput::New(); } -TypeRegistration typeRegistration( typeid(Toolkit::TextInput), typeid(Toolkit::Control), Create ); +TypeRegistration typeRegistration( typeid( Toolkit::TextInput ), typeid( Toolkit::Control ), Create ); -SignalConnectorType signalConnector1( typeRegistration, Toolkit::TextInput::SIGNAL_START_INPUT, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector2( typeRegistration, Toolkit::TextInput::SIGNAL_END_INPUT, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector3( typeRegistration, Toolkit::TextInput::SIGNAL_STYLE_CHANGED, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector4( typeRegistration, Toolkit::TextInput::SIGNAL_MAX_INPUT_CHARACTERS_REACHED, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector5( typeRegistration, Toolkit::TextInput::SIGNAL_TOOLBAR_DISPLAYED, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector6( typeRegistration, Toolkit::TextInput::SIGNAL_TEXT_EXCEED_BOUNDARIES, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector1( typeRegistration, SIGNAL_START_INPUT, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector2( typeRegistration, SIGNAL_END_INPUT, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector3( typeRegistration, SIGNAL_STYLE_CHANGED, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector4( typeRegistration, SIGNAL_MAX_INPUT_CHARACTERS_REACHED, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector5( typeRegistration, SIGNAL_TOOLBAR_DISPLAYED, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector6( typeRegistration, SIGNAL_TEXT_EXCEED_BOUNDARIES, &TextInput::DoConnectSignal ); } @@ -579,25 +588,29 @@ bool TextInput::DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* Dali::BaseHandle handle( object ); bool connected( true ); - Toolkit::TextInput textInput = Toolkit::TextInput::DownCast(handle); + Toolkit::TextInput textInput = Toolkit::TextInput::DownCast( handle ); - if( Toolkit::TextInput::SIGNAL_START_INPUT == signalName ) + if( 0 == strcmp( signalName.c_str(), SIGNAL_START_INPUT ) ) { textInput.InputStartedSignal().Connect( tracker, functor ); } - else if( Toolkit::TextInput::SIGNAL_END_INPUT == signalName ) + else if( 0 == strcmp( signalName.c_str(), SIGNAL_END_INPUT ) ) { textInput.InputFinishedSignal().Connect( tracker, functor ); } - else if( Toolkit::TextInput::SIGNAL_STYLE_CHANGED == signalName ) + else if( 0 == strcmp( signalName.c_str(), SIGNAL_STYLE_CHANGED ) ) { textInput.StyleChangedSignal().Connect( tracker, functor ); } - else if( Toolkit::TextInput::SIGNAL_MAX_INPUT_CHARACTERS_REACHED == signalName ) + else if( 0 == strcmp( signalName.c_str(), SIGNAL_MAX_INPUT_CHARACTERS_REACHED ) ) { textInput.MaxInputCharactersReachedSignal().Connect( tracker, functor ); } - else if( Toolkit::TextInput::SIGNAL_TEXT_EXCEED_BOUNDARIES == signalName ) + else if( 0 == strcmp( signalName.c_str(), SIGNAL_TOOLBAR_DISPLAYED ) ) + { + textInput.CutAndPasteToolBarDisplayedSignal().Connect( tracker, functor ); + } + else if( 0 == strcmp( signalName.c_str(), SIGNAL_TEXT_EXCEED_BOUNDARIES ) ) { textInput.InputTextExceedBoundariesSignal().Connect( tracker, functor ); } @@ -3228,37 +3241,37 @@ void TextInput::SetUpHandlePropertyNotifications() Vector3 handlesize = GetSelectionHandleSize(); // Exceeding horizontal boundary - PropertyNotification leftNotification = mSelectionHandleOne.AddPropertyNotification( Actor::WORLD_POSITION_X, LessThanCondition( mBoundingRectangleWorldCoordinates.x + handlesize.x) ); + PropertyNotification leftNotification = mSelectionHandleOne.AddPropertyNotification( Actor::Property::WorldPositionX, LessThanCondition( mBoundingRectangleWorldCoordinates.x + handlesize.x) ); leftNotification.NotifySignal().Connect( this, &TextInput::OnLeftBoundaryExceeded ); - PropertyNotification rightNotification = mSelectionHandleTwo.AddPropertyNotification( Actor::WORLD_POSITION_X, GreaterThanCondition( mBoundingRectangleWorldCoordinates.z - handlesize.x ) ); + PropertyNotification rightNotification = mSelectionHandleTwo.AddPropertyNotification( Actor::Property::WorldPositionX, GreaterThanCondition( mBoundingRectangleWorldCoordinates.z - handlesize.x ) ); rightNotification.NotifySignal().Connect( this, &TextInput::OnRightBoundaryExceeded ); // Within horizontal boundary - PropertyNotification leftLeaveNotification = mSelectionHandleOne.AddPropertyNotification( Actor::WORLD_POSITION_X, GreaterThanCondition( mBoundingRectangleWorldCoordinates.x + 2*handlesize.x ) ); + PropertyNotification leftLeaveNotification = mSelectionHandleOne.AddPropertyNotification( Actor::Property::WorldPositionX, GreaterThanCondition( mBoundingRectangleWorldCoordinates.x + 2*handlesize.x ) ); leftLeaveNotification.NotifySignal().Connect( this, &TextInput::OnReturnToLeftBoundary ); - PropertyNotification rightLeaveNotification = mSelectionHandleTwo.AddPropertyNotification( Actor::WORLD_POSITION_X, LessThanCondition( mBoundingRectangleWorldCoordinates.z - 2*handlesize.x ) ); + PropertyNotification rightLeaveNotification = mSelectionHandleTwo.AddPropertyNotification( Actor::Property::WorldPositionX, LessThanCondition( mBoundingRectangleWorldCoordinates.z - 2*handlesize.x ) ); rightLeaveNotification.NotifySignal().Connect( this, &TextInput::OnReturnToRightBoundary ); // Exceeding vertical boundary - PropertyNotification verticalExceedNotificationOne = mSelectionHandleOne.AddPropertyNotification( Actor::WORLD_POSITION_Y, + PropertyNotification verticalExceedNotificationOne = mSelectionHandleOne.AddPropertyNotification( Actor::Property::WorldPositionY, OutsideCondition( mBoundingRectangleWorldCoordinates.y + handlesize.y, mBoundingRectangleWorldCoordinates.w - handlesize.y ) ); verticalExceedNotificationOne.NotifySignal().Connect( this, &TextInput::OnHandleOneLeavesBoundary ); - PropertyNotification verticalExceedNotificationTwo = mSelectionHandleTwo.AddPropertyNotification( Actor::WORLD_POSITION_Y, + PropertyNotification verticalExceedNotificationTwo = mSelectionHandleTwo.AddPropertyNotification( Actor::Property::WorldPositionY, OutsideCondition( mBoundingRectangleWorldCoordinates.y + handlesize.y, mBoundingRectangleWorldCoordinates.w - handlesize.y ) ); verticalExceedNotificationTwo.NotifySignal().Connect( this, &TextInput::OnHandleTwoLeavesBoundary ); // Within vertical boundary - PropertyNotification verticalWithinNotificationOne = mSelectionHandleOne.AddPropertyNotification( Actor::WORLD_POSITION_Y, + PropertyNotification verticalWithinNotificationOne = mSelectionHandleOne.AddPropertyNotification( Actor::Property::WorldPositionY, InsideCondition( mBoundingRectangleWorldCoordinates.y + handlesize.y, mBoundingRectangleWorldCoordinates.w - handlesize.y ) ); verticalWithinNotificationOne.NotifySignal().Connect( this, &TextInput::OnHandleOneWithinBoundary ); - PropertyNotification verticalWithinNotificationTwo = mSelectionHandleTwo.AddPropertyNotification( Actor::WORLD_POSITION_Y, + PropertyNotification verticalWithinNotificationTwo = mSelectionHandleTwo.AddPropertyNotification( Actor::Property::WorldPositionY, InsideCondition( mBoundingRectangleWorldCoordinates.y + handlesize.y, mBoundingRectangleWorldCoordinates.w - handlesize.y ) ); verticalWithinNotificationTwo.NotifySignal().Connect( this, &TextInput::OnHandleTwoWithinBoundary ); @@ -4881,7 +4894,6 @@ void TextInput::CreateHighlight() mHighlightMeshActor.SetParentOrigin( ParentOrigin::TOP_LEFT ); mHighlightMeshActor.SetAnchorPoint( AnchorPoint::TOP_LEFT ); mHighlightMeshActor.SetPosition( 0.0f, 0.0f, DISPLAYED_HIGHLIGHT_Z_OFFSET ); - mHighlightMeshActor.SetAffectedByLighting(false); Self().Add(mHighlightMeshActor); }