2 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 #include "dummy-control.h"
20 #include <dali-toolkit/public-api/styling/style-manager.h>
28 DummyControl::DummyControl()
32 DummyControl::DummyControl(const DummyControl& control)
37 DummyControl::~DummyControl()
41 DummyControl DummyControl::DownCast( BaseHandle handle )
43 return Control::DownCast<DummyControl, DummyControlImpl>(handle);
46 DummyControl& DummyControl::operator=(const DummyControl& control)
48 Control::operator=( control );
52 // Used to test signal connections
53 void DummyControlImpl::CustomSlot1( Actor actor )
55 mCustomSlot1Called = true;
58 DummyControl DummyControlImpl::New()
60 IntrusivePtr< DummyControlImpl > impl = new DummyControlImpl;
61 DummyControl control( *impl );
66 DummyControlImpl::DummyControlImpl()
67 : Control( ControlBehaviour( REQUIRES_TOUCH_EVENTS | REQUIRES_STYLE_CHANGE_SIGNALS ) ),
68 mCustomSlot1Called(false)
73 DummyControlImpl::~DummyControlImpl()
77 DummyControl DummyControlImplOverride::New()
79 IntrusivePtr< DummyControlImplOverride > impl = new DummyControlImplOverride;
80 DummyControl control( *impl );
86 DummyControlImplOverride::DummyControlImplOverride()
88 initializeCalled(false),
89 themeChangeCalled( false ),
90 fontChangeCalled( false ),
94 longPressCalled(false),
95 stageConnectionCalled(false),
96 stageDisconnectionCalled(false),
97 childAddCalled(false),
98 childRemoveCalled(false),
100 sizeAnimationCalled(false),
101 touchEventCalled(false),
102 mouseWheelEventCalled(false),
103 keyEventCalled(false),
104 keyInputFocusGained(false),
105 keyInputFocusLost(false)
109 DummyControlImplOverride::~DummyControlImplOverride() { }
112 void DummyControlImplOverride::OnInitialize() { initializeCalled = true; }
113 void DummyControlImplOverride::OnThemeChange(StyleManager change) { themeChangeCalled = true;}
114 void DummyControlImplOverride::OnFontChange(bool defaultFontChange, bool defaultFontSizeChange) { fontChangeCalled = true; }
115 void DummyControlImplOverride::OnPinch(const PinchGesture& pinch) { pinchCalled = true; }
116 void DummyControlImplOverride::OnPan(const PanGesture& pan) { panCalled = true; }
117 void DummyControlImplOverride::OnTap(const TapGesture& tap) { tapCalled = true; }
118 void DummyControlImplOverride::OnLongPress(const LongPressGesture& longPress) { longPressCalled = true; }
119 void DummyControlImplOverride::OnStageConnection() { stageConnectionCalled = true; }
120 void DummyControlImplOverride::OnStageDisconnection() { stageDisconnectionCalled = true; }
121 void DummyControlImplOverride::OnChildAdd(Actor& child) { childAddCalled = true; }
122 void DummyControlImplOverride::OnChildRemove(Actor& child) { childRemoveCalled = true; }
123 void DummyControlImplOverride::OnSizeSet(const Vector3& targetSize) { sizeSetCalled = true; }
124 void DummyControlImplOverride::OnSizeAnimation(Animation& animation, const Vector3& targetSize) { sizeAnimationCalled = true; }
125 bool DummyControlImplOverride::OnTouchEvent(const TouchEvent& event) { touchEventCalled = true; return false; }
126 bool DummyControlImplOverride::OnMouseWheelEvent(const MouseWheelEvent& event) { mouseWheelEventCalled = true; return false; }
127 bool DummyControlImplOverride::OnKeyEvent(const KeyEvent& event) { keyEventCalled = true; return false;}
128 void DummyControlImplOverride::OnKeyInputFocusGained() { keyInputFocusGained = true; }
129 void DummyControlImplOverride::OnKeyInputFocusLost() { keyInputFocusLost = true; }
131 DummyControl DummyControl::New( bool override )
133 DummyControl control;
137 control = DummyControlImplOverride::New();
141 control = DummyControlImpl::New();
147 DummyControl::DummyControl( DummyControlImpl& implementation )
148 : Control( implementation )
152 DummyControl::DummyControl( Dali::Internal::CustomActor* internal )
153 : Control( internal )
155 VerifyCustomActorPointer<DummyControlImpl>(internal);
158 } // namespace Toolkit