From 9f77c9e72e5601d52ad3da117b5679311c016028 Mon Sep 17 00:00:00 2001 From: Umar Date: Mon, 17 Oct 2016 18:42:20 +0100 Subject: [PATCH] C# CustomView Implementation (C++ wrappers, manual bindings, C# wrappers) Change-Id: I153b2861af8315ccdc64d01c5998790966213dc3 --- automated-tests/src/dali-toolkit/CMakeLists.txt | 1 + .../src/dali-toolkit/utc-Dali-ControlWrapper.cpp | 553 ++++++++ build/tizen/plugins/csharp/Makefile.am | 17 +- .../devel-api/controls/control-wrapper-impl.cpp | 142 ++ .../devel-api/controls/control-wrapper-impl.h | 194 +++ .../devel-api/controls/control-wrapper.cpp | 79 ++ dali-toolkit/devel-api/controls/control-wrapper.h | 112 ++ dali-toolkit/devel-api/file.list | 6 +- plugins/dali-swig/Makefile.am | 9 +- plugins/dali-swig/NDali.dll | Bin 886784 -> 948736 bytes plugins/dali-swig/SWIG/dali-toolkit.i | 13 +- plugins/dali-swig/SWIG/dali.i | 6 +- plugins/dali-swig/examples/custom-control.cs | 236 ++++ plugins/dali-swig/examples/images/arrow.png | Bin 0 -> 2515 bytes plugins/dali-swig/examples/spin-control.cs | 460 +++++++ plugins/dali-swig/manual/cpp/common.h | 140 +- .../manual/cpp/keyboard_focus_manager_wrap.cpp | 17 + .../manual/cpp/view-wrapper-impl-wrap.cpp | 1378 ++++++++++++++++++++ .../dali-swig/manual/cpp/view-wrapper-impl-wrap.h | 235 ++++ plugins/dali-swig/manual/csharp/CustomView.cs | 824 ++++++++++++ .../dali-swig/manual/csharp/DaliEventHandler.cs | 28 +- .../manual/csharp/KeyboardFocusManager.cs | 17 + .../manual/csharp/KeyboardPreFocusChangeSignal.cs | 17 + plugins/dali-swig/manual/csharp/ManualPINVOKE.cs | 212 ++- .../csharp/Tizen.Applications/DaliApplication.cs | 26 +- plugins/dali-swig/manual/csharp/ViewWrapper.cs | 83 ++ plugins/dali-swig/manual/csharp/ViewWrapperImpl.cs | 592 +++++++++ 27 files changed, 5268 insertions(+), 129 deletions(-) create mode 100644 automated-tests/src/dali-toolkit/utc-Dali-ControlWrapper.cpp create mode 100755 dali-toolkit/devel-api/controls/control-wrapper-impl.cpp create mode 100755 dali-toolkit/devel-api/controls/control-wrapper-impl.h create mode 100644 dali-toolkit/devel-api/controls/control-wrapper.cpp create mode 100644 dali-toolkit/devel-api/controls/control-wrapper.h create mode 100644 plugins/dali-swig/examples/custom-control.cs create mode 100644 plugins/dali-swig/examples/images/arrow.png create mode 100644 plugins/dali-swig/examples/spin-control.cs create mode 100644 plugins/dali-swig/manual/cpp/view-wrapper-impl-wrap.cpp create mode 100644 plugins/dali-swig/manual/cpp/view-wrapper-impl-wrap.h create mode 100644 plugins/dali-swig/manual/csharp/CustomView.cs create mode 100644 plugins/dali-swig/manual/csharp/ViewWrapper.cs create mode 100644 plugins/dali-swig/manual/csharp/ViewWrapperImpl.cs diff --git a/automated-tests/src/dali-toolkit/CMakeLists.txt b/automated-tests/src/dali-toolkit/CMakeLists.txt index f30e3d1..681d677 100644 --- a/automated-tests/src/dali-toolkit/CMakeLists.txt +++ b/automated-tests/src/dali-toolkit/CMakeLists.txt @@ -58,6 +58,7 @@ SET(TC_SOURCES utc-Dali-VideoView.cpp utc-Dali-AsyncImageLoader.cpp utc-Dali-SyncImageLoader.cpp + utc-Dali-ControlWrapper.cpp ) # Append list of test harness files (Won't get parsed for test cases) diff --git a/automated-tests/src/dali-toolkit/utc-Dali-ControlWrapper.cpp b/automated-tests/src/dali-toolkit/utc-Dali-ControlWrapper.cpp new file mode 100644 index 0000000..32076f1 --- /dev/null +++ b/automated-tests/src/dali-toolkit/utc-Dali-ControlWrapper.cpp @@ -0,0 +1,553 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +#include +#include + +// Need to override adaptor classes for toolkit test harness, so include +// test harness headers before dali headers. +#include + +#include +#include +#include +#include +#include +#include + +using namespace Dali; +using namespace Dali::Toolkit; + +void utc_dali_toolkit_control_wrapper_startup(void) +{ + test_return_value = TET_UNDEF; +} + +void utc_dali_toolkit_control_wrapper_cleanup(void) +{ + test_return_value = TET_PASS; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////// + +namespace +{ +bool gOnRelayout = false; +} // namespace + +/////////////////////////////////////////////////////////////////////////////////////////////////// + +namespace Impl +{ +struct TestCustomControl : public Toolkit::Internal::ControlWrapper +{ + /** + * Constructor + */ + TestCustomControl() : Toolkit::Internal::ControlWrapper( CustomControlBehaviour( Toolkit::Internal::ControlWrapper::DISABLE_STYLE_CHANGE_SIGNALS | + Toolkit::Internal::ControlWrapper::REQUIRES_KEYBOARD_NAVIGATION_SUPPORT )) , + mDaliProperty( Property::INVALID_INDEX ), + mSizeSet( Vector3::ZERO ), + mTargetSize( Vector3::ZERO ), + mNego( false ), + mDepth( 0u ) + { + } + + TestCustomControl(bool nego) : Toolkit::Internal::ControlWrapper( CustomControlBehaviour( Toolkit::Internal::ControlWrapper::DISABLE_STYLE_CHANGE_SIGNALS | + Toolkit::Internal::ControlWrapper::REQUIRES_KEYBOARD_NAVIGATION_SUPPORT ) ), + mDaliProperty( Property::INVALID_INDEX ), + mSizeSet( Vector3::ZERO ), + mTargetSize( Vector3::ZERO ), + mNego( nego ) + { + } + /** + * Destructor + */ + virtual ~TestCustomControl() + { + } + + void Initialize( const char* name = NULL ) + { + mDaliProperty = Self().RegisterProperty( "Dali", std::string("no"), Property::READ_WRITE ); + + OnInitialize( name ); + } + + virtual void OnInitialize( const char* name ) {} + + // From Toolkit::Internal::ControlWrapper + virtual void OnStageConnection( int depth ) + { + mDepth = depth; + } + virtual void OnStageDisconnection() + { + } + virtual void OnChildAdd( Actor& child ) + { + } + virtual void OnChildRemove( Actor& child ) + { + } + virtual void OnPropertySet( Property::Index index, Property::Value propertyValue ) + { + } + virtual void OnSizeSet( const Vector3& targetSize ) + { + mSizeSet = targetSize; + } + virtual void OnSizeAnimation( Animation& animation, const Vector3& targetSize ) + { + mTargetSize = targetSize; + } + virtual bool OnTouchEvent( const TouchEvent& event ) + { + return true; + } + virtual bool OnHoverEvent( const HoverEvent& event ) + { + return true; + } + virtual bool OnWheelEvent( const WheelEvent& event ) + { + return true; + } + virtual bool OnKeyEvent( const KeyEvent& event ) + { + return true; + } + virtual void OnKeyInputFocusGained() + { + } + virtual void OnKeyInputFocusLost() + { + } + virtual Vector3 GetNaturalSize() + { + return Vector3( 0.0f, 0.0f, 0.0f ); + } + + virtual float GetHeightForWidth( float width ) + { + return 0.0f; + } + + virtual float GetWidthForHeight( float height ) + { + return 0.0f; + } + + virtual void OnRelayout( const Vector2& size, RelayoutContainer& container ) + { + gOnRelayout = true; + } + + virtual void OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dimension ) + { + } + + virtual void OnCalculateRelayoutSize( Dimension::Type dimension ) + { + } + + virtual float CalculateChildSize( const Dali::Actor& child, Dimension::Type dimension ) + { + return 0.0f; + } + + virtual void OnLayoutNegotiated( float size, Dimension::Type dimension ) + { + } + + virtual bool RelayoutDependentOnChildren( Dimension::Type dimension = Dimension::ALL_DIMENSIONS ) + { + return false; + } + + void SetDaliProperty(std::string s) + { + Self().SetProperty(mDaliProperty, s); + } + void TestRelayoutRequest() + { + RelayoutRequest(); + } + + float TestGetHeightForWidthBase( float width ) + { + return GetHeightForWidthBase( width ); + } + + float TestGetWidthForHeightBase( float height ) + { + return GetWidthForHeightBase( height ); + } + + float TestCalculateChildSizeBase( const Dali::Actor& child, Dimension::Type dimension ) + { + return CalculateChildSizeBase( child, dimension ); + } + + bool TestRelayoutDependentOnChildrenBase( Dimension::Type dimension ) + { + return RelayoutDependentOnChildrenBase( dimension ); + } + + Property::Index mDaliProperty; + Vector3 mSizeSet; + Vector3 mTargetSize; + bool mNego; + unsigned int mDepth; +}; +} + +int UtcDaliControlWrapperConstructor(void) +{ + ToolkitTestApplication application; // Exceptions require ToolkitTestApplication + + Toolkit::Internal::ControlWrapper* controlWrapperImpl = new Toolkit::Internal::ControlWrapper( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper; + + DALI_TEST_CHECK( !ControlWrapper::DownCast( controlWrapper ) ); + + controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + DALI_TEST_CHECK( ControlWrapper::DownCast( controlWrapper ) ); + END_TEST; +} + +int UtcDaliControlWrapperDestructor(void) +{ + TestApplication application; + + ControlWrapper control = ControlWrapper::New( *( new Toolkit::Internal::ControlWrapper( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ) ) ); + + ControlWrapper control2( control ); + + DALI_TEST_CHECK( control ); + control.Reset(); + DALI_TEST_CHECK( !control ); + + DALI_TEST_CHECK( control2 ); + control2.Reset(); + DALI_TEST_CHECK( !control2 ); + + END_TEST; +} + +int UtcDaliControlWrapperRelayoutRequest(void) +{ + TestApplication application; + + DALI_TEST_EQUALS( gOnRelayout, false, TEST_LOCATION ); + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + Stage::GetCurrent().Add( controlWrapper ); + + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS( gOnRelayout, true, TEST_LOCATION ); + gOnRelayout = false; + + controlWrapperImpl->TestRelayoutRequest(); + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS( gOnRelayout, true, TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliControlWrapperImplGetHeightForWidthBase(void) +{ + TestApplication application; + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + float width = 300.0f; + float v = 0.0f; + + application.SendNotification(); + application.Render(); + + v = controlWrapperImpl->TestGetHeightForWidthBase( width ); + + DALI_TEST_EQUALS( width, v, TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliControlWrapperGetWidthForHeightBase(void) +{ + TestApplication application; + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + float height = 300.0f; + float v = 0.0f; + + application.SendNotification(); + application.Render(); + + v = controlWrapperImpl->TestGetWidthForHeightBase( height ); + + DALI_TEST_EQUALS( height, v, TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliControlWrapperCalculateChildSizeBase(void) +{ + TestApplication application; + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + Actor child = Actor::New(); + child.SetResizePolicy( Dali::ResizePolicy::FIXED, Dali::Dimension::ALL_DIMENSIONS ); + child.SetSize(150, 150); + + application.SendNotification(); + application.Render(); + + float v = 9.99f; + v = controlWrapperImpl->TestCalculateChildSizeBase( child, Dali::Dimension::ALL_DIMENSIONS ); + DALI_TEST_EQUALS( v, 0.0f, TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliControlWrapperRelayoutDependentOnChildrenBase(void) +{ + TestApplication application; + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + bool v = false; + + v = controlWrapperImpl->TestRelayoutDependentOnChildrenBase( Dali::Dimension::ALL_DIMENSIONS ); + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS( v, true, TEST_LOCATION ); + + controlWrapper.SetResizePolicy( Dali::ResizePolicy::FIXED, Dali::Dimension::ALL_DIMENSIONS ); + v = controlWrapperImpl->TestRelayoutDependentOnChildrenBase( Dali::Dimension::WIDTH ); + application.SendNotification(); + application.Render(); + DALI_TEST_EQUALS( v, false, TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliControlWrapperRegisterVisualToSelf(void) +{ + ToolkitTestApplication application; + + Test::ObjectDestructionTracker objectDestructionTracker; + + { + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + objectDestructionTracker.Start( controlWrapper ); + + Property::Index index = 1; + + Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get(); + Toolkit::Visual::Base visual; + + Property::Map map; + map[Visual::Property::TYPE] = Visual::COLOR; + map[ColorVisual::Property::MIX_COLOR] = Color::RED; + + visual = visualFactory.CreateVisual( map ); + DALI_TEST_CHECK( visual ); + + // Register to self + controlWrapperImpl->RegisterVisual( index, visual ); + + DALI_TEST_EQUALS( objectDestructionTracker.IsDestroyed(), false, TEST_LOCATION ); // Control not destroyed yet + DALI_TEST_EQUALS( controlWrapperImpl->GetVisual( index ), visual, TEST_LOCATION ); + } + + DALI_TEST_EQUALS( objectDestructionTracker.IsDestroyed(), true, TEST_LOCATION ); // Should be destroyed + + END_TEST; +} + +int UtcDaliControlWrapperRegisterDisabledVisual(void) +{ + ToolkitTestApplication application; + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + Property::Index TEST_PROPERTY = 1; + + Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get(); + Toolkit::Visual::Base visual; + + Property::Map map; + map[Visual::Property::TYPE] = Visual::COLOR; + map[ColorVisual::Property::MIX_COLOR] = Color::RED; + + visual = visualFactory.CreateVisual( map ); + DALI_TEST_CHECK(visual); + + // Register index with a color visual + controlWrapperImpl->RegisterVisual( TEST_PROPERTY, visual, false ); + + DALI_TEST_EQUALS( controlWrapperImpl->GetVisual( TEST_PROPERTY ), visual, TEST_LOCATION ); + DALI_TEST_EQUALS( controlWrapperImpl->IsVisualEnabled( TEST_PROPERTY ), false, TEST_LOCATION ); + + Stage::GetCurrent().Add( controlWrapper ); + + // Render and notify + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS( controlWrapperImpl->IsVisualEnabled( TEST_PROPERTY ), false, TEST_LOCATION ); + + DALI_TEST_EQUALS( controlWrapper.OnStage(), true, TEST_LOCATION ); + + controlWrapperImpl->EnableVisual( TEST_PROPERTY, true ); + + DALI_TEST_EQUALS( controlWrapperImpl->IsVisualEnabled( TEST_PROPERTY ), true, TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliControlWrapperRegisterUnregisterVisual(void) +{ + ToolkitTestApplication application; + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + Property::Index index = 1; + + Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get(); + Toolkit::Visual::Base visual; + + Property::Map map; + map[Visual::Property::TYPE] = Visual::COLOR; + map[ColorVisual::Property::MIX_COLOR] = Color::RED; + + visual = visualFactory.CreateVisual( map ); + DALI_TEST_CHECK(visual); + + // Register index with a color visual + controlWrapperImpl->RegisterVisual( index, visual ); + + DALI_TEST_EQUALS( controlWrapperImpl->GetVisual( index ), visual, TEST_LOCATION ); + + // Unregister visual + controlWrapperImpl->UnregisterVisual( index ); + + DALI_TEST_CHECK( !controlWrapperImpl->GetVisual( index ) ); + + END_TEST; +} + +int UtcDaliControlWrapperTransitionDataMap1N(void) +{ + TestApplication application; + + Property::Map map; + map["target"] = "Actor1"; + map["property"] = "randomProperty"; + map["initialValue"] = Color::MAGENTA; + map["targetValue"] = Color::RED; + map["animator"] = Property::Map() + .Add("alphaFunction", "EASE_OUT") + .Add("timePeriod", Property::Map() + .Add("delay", 0.5f) + .Add("duration", 1.0f)); + + Dali::Toolkit::TransitionData transition = TransitionData::New( map ); + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + //DummyControl actor = DummyControl::New(); + controlWrapper.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS); + controlWrapper.SetName("Actor1"); + controlWrapper.SetColor(Color::CYAN); + Stage::GetCurrent().Add(controlWrapper); + + Animation anim = controlWrapperImpl->CreateTransition( transition ); + DALI_TEST_CHECK( ! anim ); + + Property::Map returnedMap = transition.GetAnimatorAt(0); + + Property::Value* value = returnedMap.Find("property"); + DALI_TEST_CHECK( value != NULL); + DALI_TEST_EQUALS( "randomProperty", value->Get(), TEST_LOCATION ); + + value = returnedMap.Find("initialValue"); + DALI_TEST_CHECK( value != NULL); + DALI_TEST_EQUALS( Color::MAGENTA, value->Get(), TEST_LOCATION ); + + value = returnedMap.Find("targetValue"); + DALI_TEST_CHECK( value != NULL); + DALI_TEST_EQUALS( Color::RED, value->Get(), TEST_LOCATION ); + + value = returnedMap.Find("animator"); + DALI_TEST_CHECK( value != NULL); + Property::Map returnedAnimatorMap = value->Get(); + + value = returnedAnimatorMap.Find("alphaFunction"); + DALI_TEST_CHECK( value != NULL); + DALI_TEST_EQUALS( "EASE_OUT", value->Get(), TEST_LOCATION ); + + value = returnedAnimatorMap.Find("timePeriod"); + DALI_TEST_CHECK( value != NULL); + Property::Map returnedTimePeriodMap = value->Get(); + + value = returnedTimePeriodMap.Find("delay"); + DALI_TEST_CHECK( value != NULL); + DALI_TEST_EQUALS( 0.5f, value->Get(), TEST_LOCATION ); + + value = returnedTimePeriodMap.Find("duration"); + DALI_TEST_CHECK( value != NULL); + DALI_TEST_EQUALS( 1.0f, value->Get(), TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliControlWrapperApplyThemeStyle(void) +{ + ToolkitTestApplication application; + + Impl::TestCustomControl* controlWrapperImpl = new ::Impl::TestCustomControl( Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_DEFAULT ); + ControlWrapper controlWrapper = ControlWrapper::New( *controlWrapperImpl ); + + controlWrapperImpl->ApplyThemeStyle(); + + DALI_TEST_CHECK( true ); + END_TEST; +} diff --git a/build/tizen/plugins/csharp/Makefile.am b/build/tizen/plugins/csharp/Makefile.am index 5e7263b..8aa499a 100755 --- a/build/tizen/plugins/csharp/Makefile.am +++ b/build/tizen/plugins/csharp/Makefile.am @@ -16,19 +16,24 @@ dali_swig_dir = ../../../../plugins/dali-swig BUILT_SOURCES = \ $(dali_swig_dir)/automatic/cpp/dali_wrap.cpp \ - $(dali_swig_dir)/automatic/cpp/dali_wrap.h + $(dali_swig_dir)/automatic/cpp/dali_wrap.h \ + $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.cpp \ + $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.cpp -all-local: +all-local: gbs-local: libNDalic.so NDali.dll -libNDalic.so: $(dali_swig_dir)/automatic/cpp/dali_wrap.o $(dali_swig_dir)/manual/cpp/dali_wrap_manual.o - $(CXX) -shared $(dali_swig_dir)/automatic/cpp/dali_wrap.o $(dali_swig_dir)/manual/cpp/dali_wrap_manual.o -o $(dali_swig_dir)/libNDalic.so $(DALICORE_LIBS) $(DALIADAPTOR_LIBS) $(DALITOOLKIT_LIBS) +libNDalic.so: $(dali_swig_dir)/automatic/cpp/dali_wrap.o $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.o $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.o + $(CXX) -shared $(dali_swig_dir)/automatic/cpp/dali_wrap.o $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.o $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.o -o $(dali_swig_dir)/libNDalic.so $(DALICORE_LIBS) $(DALIADAPTOR_LIBS) $(DALITOOLKIT_LIBS) $(dali_swig_dir)/automatic/cpp/dali_wrap.o: $(BUILT_SOURCES) $(CXX) -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) $(dali_swig_dir)/automatic/cpp/dali_wrap.cpp -o $(dali_swig_dir)/automatic/cpp/dali_wrap.o -$(dali_swig_dir)/manual/cpp/dali_wrap_manual.o: $(BUILT_SOURCES) - $(CXX) -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.cpp -o $(dali_swig_dir)/manual/cpp/dali_wrap_manual.o +$(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.o: $(BUILT_SOURCES) + $(CXX) -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.cpp -o $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.o + +$(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.o: $(BUILT_SOURCES) + $(CXX) -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.cpp -o $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.o NDali.dll: $(BUILT_SOURCES) # mcs -nologo -target:library -out:$(dali_swig_dir)/NDali.dll $(dali_swig_dir)/automatic/csharp/*.cs $(dali_swig_dir)/manual/csharp/*.cs diff --git a/dali-toolkit/devel-api/controls/control-wrapper-impl.cpp b/dali-toolkit/devel-api/controls/control-wrapper-impl.cpp new file mode 100755 index 0000000..48019fe --- /dev/null +++ b/dali-toolkit/devel-api/controls/control-wrapper-impl.cpp @@ -0,0 +1,142 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +// CLASS HEADER +#include + +// INTERNAL INCLUDES +#include +#include +#include +#include +#include + +namespace Dali +{ + +namespace Toolkit +{ + +namespace Internal +{ + +/* + * Implementation. + */ + +Dali::Toolkit::ControlWrapper ControlWrapper::New( ControlWrapper* controlWrapper ) +{ + ControlWrapperPtr wrapper( controlWrapper ); + + // Pass ownership to CustomActor via derived handle. + Dali::Toolkit::ControlWrapper handle( *wrapper ); + + // Second-phase initialisation of the implementation. + // This can only be done after the CustomActor connection has been made. + wrapper->Initialize(); + + return handle; +} + +ControlWrapper::ControlWrapper( CustomControlBehaviour behaviourFlags ) +: Control( static_cast< ControlBehaviour >( behaviourFlags ) ) +{ +} + +ControlWrapper::~ControlWrapper() +{ +} + +void ControlWrapper::RelayoutRequest() +{ + CustomActorImpl::RelayoutRequest(); +} + +float ControlWrapper::GetHeightForWidthBase( float width ) +{ + return CustomActorImpl::GetHeightForWidthBase( width ); +} + +float ControlWrapper::GetWidthForHeightBase( float height ) +{ + return CustomActorImpl::GetWidthForHeightBase( height ); +} + +float ControlWrapper::CalculateChildSizeBase( const Dali::Actor& child, Dimension::Type dimension ) +{ + return CustomActorImpl::CalculateChildSizeBase( child, dimension ); +} + +bool ControlWrapper::RelayoutDependentOnChildrenBase( Dimension::Type dimension ) +{ + return CustomActorImpl::RelayoutDependentOnChildrenBase( dimension ); +} + +void ControlWrapper::RegisterVisual( Property::Index index, Toolkit::Visual::Base& visual ) +{ + Control::RegisterVisual( index, visual ); +} + +void ControlWrapper::RegisterVisual( Property::Index index, Toolkit::Visual::Base& visual, bool enabled ) +{ + Control::RegisterVisual( index, visual, enabled ); +} + +void ControlWrapper::UnregisterVisual( Property::Index index ) +{ + Control::UnregisterVisual( index ); +} + +Toolkit::Visual::Base ControlWrapper::GetVisual( Property::Index index ) const +{ + return Control::GetVisual( index ); +} + +void ControlWrapper::EnableVisual( Property::Index index, bool enable ) +{ + Control::EnableVisual( index, enable ); +} + +bool ControlWrapper::IsVisualEnabled( Property::Index index ) const +{ + return Control::IsVisualEnabled( index ); +} + +Dali::Animation ControlWrapper::CreateTransition( const Toolkit::TransitionData& handle ) +{ + return Control::CreateTransition( handle ); +} + +void ControlWrapper::ApplyThemeStyle() +{ + Toolkit::StyleManager styleManager = StyleManager::Get(); + + // if style manager is available + if( styleManager ) + { + StyleManager& styleManagerImpl = GetImpl( styleManager ); + + // Apply the current style + styleManagerImpl.ApplyThemeStyle( Toolkit::Control( GetOwner() ) ); + } +} + +} // namespace Internal + +} // namespace Toolkit + +} // namespace Dali diff --git a/dali-toolkit/devel-api/controls/control-wrapper-impl.h b/dali-toolkit/devel-api/controls/control-wrapper-impl.h new file mode 100755 index 0000000..787fa89 --- /dev/null +++ b/dali-toolkit/devel-api/controls/control-wrapper-impl.h @@ -0,0 +1,194 @@ +#ifndef DALI_TOOLKIT_INTERNAL_CONTROL_WRAPPER_H +#define DALI_TOOLKIT_INTERNAL_CONTROL_WRAPPER_H + +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +// INTERNAL INCLUDES +#include +#include + +namespace Dali +{ + +namespace Toolkit +{ + +namespace Internal +{ + +class ControlWrapper; + +typedef IntrusivePtr< ControlWrapper > ControlWrapperPtr; + +/** + * @copydoc Toolkit::ControlWrapper + */ +class ControlWrapper : public Control +{ +public: + + // Flags for the constructor + enum CustomControlBehaviour + { + CONTROL_BEHAVIOUR_DEFAULT = Control::CONTROL_BEHAVIOUR_DEFAULT, + DISABLE_SIZE_NEGOTIATION = CustomActorImpl::DISABLE_SIZE_NEGOTIATION, + REQUIRES_KEYBOARD_NAVIGATION_SUPPORT = Control::REQUIRES_KEYBOARD_NAVIGATION_SUPPORT, + DISABLE_STYLE_CHANGE_SIGNALS = Control::DISABLE_STYLE_CHANGE_SIGNALS, + + LAST_CONTROL_BEHAVIOUR_FLAG + }; + + static const int CONTROL_BEHAVIOUR_FLAG_COUNT = Log< LAST_CONTROL_BEHAVIOUR_FLAG - 1 >::value + 1; ///< Total count of flags + + /** + * @brief Control constructor + * + * @param[in] behaviourFlags Behavioural flags from CustomControlBehaviour enum + */ + ControlWrapper( CustomControlBehaviour behaviourFlags ); + + /** + * Create a new ControlWrapper. + * @return A public handle to the newly allocated ControlWrapper. + */ + static Dali::Toolkit::ControlWrapper New( ControlWrapper* controlWrapper ); + +public: // From CustomActorImpl + + // Size negotiation helpers + + /** + * @copydoc Dali::CustomActorImpl::RelayoutRequest() + */ + void RelayoutRequest(); + + /** + * @copydoc Dali::CustomActorImpl::GetHeightForWidthBase() + */ + float GetHeightForWidthBase( float width ); + + /** + * @copydoc Dali::CustomActorImpl::GetWidthForHeightBase() + */ + float GetWidthForHeightBase( float height ); + + /** + * @copydoc Dali::CustomActorImpl::CalculateChildSizeBase() + */ + float CalculateChildSizeBase( const Dali::Actor& child, Dimension::Type dimension ); + + /** + * @copydoc Dali::CustomActorImpl::RelayoutDependentOnChildrenBase() + */ + bool RelayoutDependentOnChildrenBase( Dimension::Type dimension = Dimension::ALL_DIMENSIONS ); + +public: // From Control + + /** + * @copydoc Dali::Toolkit::Internal::Control::RegisterVisual( Property::Index index, Toolkit::Visual::Base& visual ) + */ + void RegisterVisual( Property::Index index, Toolkit::Visual::Base& visual ); + + /** + * @copydoc Dali::Toolkit::Internal::Control::RegisterVisual( Property::Index index, Toolkit::Visual::Base& visual, bool enabled ) + */ + void RegisterVisual( Property::Index index, Toolkit::Visual::Base& visual, bool enabled ); + + /** + * @copydoc Dali::Toolkit::Internal::Control::UnregisterVisual() + */ + void UnregisterVisual( Property::Index index ); + + /** + * @copydoc Dali::Toolkit::Internal::Control::GetVisual() + */ + Toolkit::Visual::Base GetVisual( Property::Index index ) const; + + /** + * @copydoc Dali::Toolkit::Internal::Control::EnableVisual() + */ + void EnableVisual( Property::Index index, bool enable ); + + /** + * @copydoc Dali::Toolkit::Internal::Control::IsVisualEnabled() + */ + bool IsVisualEnabled( Property::Index index ) const; + + /** + * @copydoc Dali::Toolkit::Internal::Control::CreateTransition() + */ + Dali::Animation CreateTransition( const Toolkit::TransitionData& transitionData ); + + /** + * @copydoc Dali::Toolkit::Internal::Control::EmitKeyInputFocusSignal() + */ + void EmitKeyInputFocusSignal( bool focusGained ); + + /** + * @brief Apply the current style + * + * This method is called after the Control has been initialized. + * + */ + void ApplyThemeStyle(); + +protected: + + /** + * Protected Destructor + * A reference counted object may only be deleted by calling Unreference() + */ + virtual ~ControlWrapper(); + +private: + + // Undefined. + ControlWrapper( const ControlWrapper& ); + + // Undefined. + ControlWrapper& operator=( const ControlWrapper& rhs ); + +}; + +} // namespace Internal + +// Helpers for public-api forwarding methods + +inline Toolkit::Internal::ControlWrapper& GetControlWrapperImpl( Toolkit::ControlWrapper& publicObject ) +{ + DALI_ASSERT_ALWAYS( publicObject ); + + Dali::RefObject& handle = publicObject.GetImplementation(); + + return static_cast( handle ); +} + +inline const Toolkit::Internal::ControlWrapper& GetControlWrapperImpl( const Toolkit::ControlWrapper& publicObject ) +{ + DALI_ASSERT_ALWAYS( publicObject ); + + const Dali::RefObject& handle = publicObject.GetImplementation(); + + return static_cast( handle ); +} + +} // namespace Toolkit + +} // namespace Dali + +#endif // DALI_TOOLKIT_INTERNAL_CONTROL_WRAPPER_H diff --git a/dali-toolkit/devel-api/controls/control-wrapper.cpp b/dali-toolkit/devel-api/controls/control-wrapper.cpp new file mode 100644 index 0000000..7f8db27 --- /dev/null +++ b/dali-toolkit/devel-api/controls/control-wrapper.cpp @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +// CLASS HEADER +#include + +// INTERNAL INCLUDES +#include + +namespace Dali +{ + +namespace Toolkit +{ + +/////////////////////////////////////////////////////////////////////////////////////////////////// +// ControlWrapper +/////////////////////////////////////////////////////////////////////////////////////////////////// + +ControlWrapper ControlWrapper::New( Internal::ControlWrapper& implementation ) +{ + return Internal::ControlWrapper::New( &implementation ); +} + +ControlWrapper::ControlWrapper() +{ +} + +ControlWrapper::ControlWrapper( const ControlWrapper& handle ) +: Control( handle ) +{ +} + +ControlWrapper& ControlWrapper::operator=( const ControlWrapper& handle ) +{ + if( &handle != this ) + { + Control::operator=( handle ); + } + return *this; +} + +ControlWrapper::ControlWrapper( Internal::ControlWrapper& implementation ) +: Control( implementation ) +{ +} + +ControlWrapper::ControlWrapper( Dali::Internal::CustomActor* internal ) +: Control( internal ) +{ + VerifyCustomActorPointer( internal ); +} + +ControlWrapper::~ControlWrapper() +{ +} + +ControlWrapper ControlWrapper::DownCast( BaseHandle handle ) +{ + return Control::DownCast( handle ); +} + +} // namespace Toolkit + +} // namespace Dali diff --git a/dali-toolkit/devel-api/controls/control-wrapper.h b/dali-toolkit/devel-api/controls/control-wrapper.h new file mode 100644 index 0000000..a9aacc5 --- /dev/null +++ b/dali-toolkit/devel-api/controls/control-wrapper.h @@ -0,0 +1,112 @@ +#ifndef DALI_TOOLKIT_CONTROL_WRAPPER_H +#define DALI_TOOLKIT_CONTROL_WRAPPER_H + +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +// INTERNAL INCLUDES +#include + +namespace Dali +{ + +namespace Toolkit +{ + +namespace Internal DALI_INTERNAL +{ +class ControlWrapper; +} + +/** + * @brief ControlWrapper is a base class for custom UI controls developed in managed code (i.e. C#.NET). + * + * The implementation of the ControlWrapper must be supplied; see Internal::ControlWrapper for more details. + */ +class DALI_IMPORT_API ControlWrapper : public Control +{ + +public: + + /** + * @brief Create a new instance of a ControlWrapper. + * + * @return A handle to a new ControlWrapper. + */ + static ControlWrapper New( Internal::ControlWrapper& implementation ); + + /** + * @brief Creates an empty ControlWrapper handle. + */ + ControlWrapper(); + + /** + * @brief Destructor + * + * This is non-virtual since derived Handle types must not contain data or virtual methods. + */ + ~ControlWrapper(); + + /** + * @brief Copy constructor. + * + * Creates another handle that points to the same real object + * @param[in] handle Handle to the copied object + */ + ControlWrapper( const ControlWrapper& handle ); + + /** + * @brief Assignment operator. + * + * Changes this handle to point to another real object + * @param[in] handle Handle to the object + * @return A reference to this + */ + ControlWrapper& operator=( const ControlWrapper& handle ); + + /** + * @brief Downcast an Object handle to ControlWrapper. + * + * If handle points to a ControlWrapper the + * downcast produces valid handle. If not the returned handle is left uninitialized. + * @param[in] handle Handle to an object + * @return handle to a ControlWrapper or an uninitialized handle + */ + static ControlWrapper DownCast( BaseHandle handle ); + +public: // Not intended for application developers + + /** + * @brief Creates a handle using the Toolkit::Internal implementation. + * + * @param[in] implementation The Control implementation. + */ + DALI_INTERNAL ControlWrapper( Internal::ControlWrapper& implementation ); + + /** + * @brief Allows the creation of this Control from an Internal::CustomActor pointer. + * + * @param[in] internal A pointer to the internal CustomActor. + */ + explicit DALI_INTERNAL ControlWrapper( Dali::Internal::CustomActor* internal ); +}; + +} // namespace Toolkit + +} // namespace Dali + +#endif // DALI_TOOLKIT_CONTROL_WRAPPER_H diff --git a/dali-toolkit/devel-api/file.list b/dali-toolkit/devel-api/file.list index 8af4766..a0cd28a 100755 --- a/dali-toolkit/devel-api/file.list +++ b/dali-toolkit/devel-api/file.list @@ -4,6 +4,8 @@ devel_api_src_files = \ $(devel_api_src_dir)/builder/builder.cpp \ $(devel_api_src_dir)/builder/json-parser.cpp \ $(devel_api_src_dir)/builder/tree-node.cpp \ + $(devel_api_src_dir)/controls/control-wrapper.cpp \ + $(devel_api_src_dir)/controls/control-wrapper-impl.cpp \ $(devel_api_src_dir)/controls/bloom-view/bloom-view.cpp \ $(devel_api_src_dir)/controls/bubble-effect/bubble-emitter.cpp \ $(devel_api_src_dir)/controls/effects-view/effects-view.cpp \ @@ -39,7 +41,9 @@ devel_api_header_files = \ $(devel_api_src_dir)/align-enums.h devel_api_controls_header_files = \ - $(devel_api_src_dir)/controls/control-depth-index-ranges.h + $(devel_api_src_dir)/controls/control-depth-index-ranges.h \ + $(devel_api_src_dir)/controls/control-wrapper.h \ + $(devel_api_src_dir)/controls/control-wrapper-impl.h devel_api_bloom_view_header_files = \ $(devel_api_src_dir)/controls/bloom-view/bloom-view.h diff --git a/plugins/dali-swig/Makefile.am b/plugins/dali-swig/Makefile.am index 9a4c8d6..9ed6c33 100644 --- a/plugins/dali-swig/Makefile.am +++ b/plugins/dali-swig/Makefile.am @@ -23,8 +23,8 @@ if BUILD_MCS all-local: libNDalic.so NDali.dll -libNDalic.so: automatic/cpp/dali_wrap.o manual/cpp/keyboard_focus_manager_wrap.o - g++ -shared automatic/cpp/dali_wrap.o manual/cpp/keyboard_focus_manager_wrap.o -o libNDalic.so $(DALICORE_LIBS) $(DALIADAPTOR_LIBS) $(DALITOOLKIT_LIBS) +libNDalic.so: automatic/cpp/dali_wrap.o manual/cpp/keyboard_focus_manager_wrap.o manual/cpp/view-wrapper-impl-wrap.o + g++ -shared automatic/cpp/dali_wrap.o manual/cpp/keyboard_focus_manager_wrap.o manual/cpp/view-wrapper-impl-wrap.o -o libNDalic.so $(DALICORE_LIBS) $(DALIADAPTOR_LIBS) $(DALITOOLKIT_LIBS) automatic/cpp/dali_wrap.o: $(BUILT_SOURCES) g++ -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) automatic/cpp/dali_wrap.cpp -o automatic/cpp/dali_wrap.o @@ -32,12 +32,17 @@ automatic/cpp/dali_wrap.o: $(BUILT_SOURCES) manual/cpp/keyboard_focus_manager_wrap.o: $(BUILT_SOURCES) g++ -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) manual/cpp/keyboard_focus_manager_wrap.cpp -o manual/cpp/keyboard_focus_manager_wrap.o +manual/cpp/view-wrapper-impl-wrap.o: $(BUILT_SOURCES) + g++ -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) manual/cpp/view-wrapper-impl-wrap.cpp -o manual/cpp/view-wrapper-impl-wrap.o + NDali.dll: $(BUILT_SOURCES) $(MCS) -nologo -target:library -out:NDali.dll automatic/csharp/*.cs manual/csharp/*.cs check-local: examples/dali-test.exe \ examples/hello-world.exe \ examples/scroll-view.exe \ + examples/custom-control.exe \ + examples/spin-control.exe \ examples/libNDalic.so examples/NDali.dll examples/%.exe: examples/%.cs diff --git a/plugins/dali-swig/NDali.dll b/plugins/dali-swig/NDali.dll index 34c673b1fb543a789852a8abd42955be76118ef3..4fbbfa4d7b34261855e0f72cbea1ac9428d4f0d9 100755 GIT binary patch literal 948736 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%0AQLe2Y(5TxC(MudU(# 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 z�tm<5MiuNx*gOXHI4aS;t8XOurb87H3 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%0DkOo_l+w-Vb+WY*UhgnJR3Jn z_?G#-ZGP{V-@E4bp836Rejk|MhvxS?^ZUsBS|vO&;iu;JnfZNgeqWg1m*)4C`F(AE zzc;@>nBO1G?;G>`*8Kite&6YDEi=EZZLFNNb`z8ywuUw??Wcxy6e7`5P*&`k3bhYe zO~k|U!ItzMu}}2qnCC;>yvN;7!?4r*?lHd~wn=(DCfLJbt@TK;)_Tag1|ws!A4?5k zVm%sdzljz$o|-hC+5zFTUpo4l?RnwR)5SH~wE|q$SHtX(VHP&1nlz}|VPSSi#gcxt zcBoK0B-)VvmTX3Z<%m=?X$~9O94z0XhJU~L9ch!SkDK6lP}yr|g;zKis!2avJ13Hi zt0d#1pz%U&TqGGc7OZwnVzZVPHl)9SO9^dK(Q*DTa73JiGZLOSz__s7X&;V^1v9H!#Z5+9ROtCL;zZc z{F(zHfVA5KA+<+RJl`QI<09`k>7w&Puz1L^f9)Z82-zb&1A^l(D28_2t;UuDChF?5 z+rPC(WCkRn&_%v#kBx{=G@Yj=_*9hel(*_w+)tUv#xoh~;YUPzW=Nkw6v*-nf0#S& z*p0JiyK(kxw{Rd7dxr}mQjkqAM}a6gjS3em4bBzRt1&r8V0XojPVL3B1oj%!-bY2UKtvDck{fIkDQszGj z(;t=TkIM8%tgc~5D%-zs<#0*6u;zxau%-up%36PFZ%hh055+$J8>s|ZpQM7Ie(Xo0 zhd+^h7mIb{-AB9LqgL=M2sBQ_V6%H?Qg|2G;Z2#3ZpyH+_D-ArJCWcWB1mz+Gv;P< z4+VltLu+_#wkyxgJ?8f)E34eKfl17`Ow)q=v-`y1QXFMM{#&|mAs3Y&7j!vt-O~J;mw!78*o) zu$N~*TsD#e`oij4SxNY|6({zU%^v;f)E}Bxyv-m?=`Y~CEXq_*%`V?1WaBO&8+Vm$ zNq?qyEB9&U?AvMlk?7lL)(-^DqU7H{)PW{%_RB!CXU8v~;oqCcA1kkZNZ#Ge%FvEF zfQs?$Aw?V(p8GX$L;?pia8v>Zsq}AUSo1A;wSWaB{`Q=p&q;nt^skoS2bQt%!#20C z@a=w;jy{!6pa=fH_RiR~i71ZaFKNKE)KHHi6^h(YAwww{0y+o=j3ouFgP}MCI@sER zp_SH21k)y|NpDebbm-{Np_@wu1^o{k96Drl)1hNgKi~K6au;=Q6?<^syx)88e)oGX z$tCyhz3;c5JDtca^m7Z!)%&Ctx|q??_@t-XI$6STvIB! z=-c4F5Lu%~wBBxIBz%C%)3!$V1T`3gIRf4YSR>$!@PaA$B4CSvD*~nncp_kl@PZNy z5nfP%9Rh9$FQ~!`0V@QY5HLb`!76MJa6!NX0S^Q$5MI!L0m2J9us^{40P_R94_@#J z&IcGD;Ct|beYhUNnCs#DyIa?Hm~|X#>&Hpg2O3_L6&CU9fx$BaTd%`)KUuh+Fq(%6 zqcxr|x+gM1ANriKXF{EoOJ4Qt1CN`*ZO3DCCMNYiSk;QJd|hpMP472EJ^K??4!2g zk&ppk9n=%HYLw-y{n_GcA&V=)?uoE{EZlkoYLS}K9gDUmtEXidwN@gc-HT}3s0ULtn$>uZvBdT5ozS2s{R zOJ(0Yt}R?B_PUTzn28r+9dX-?(tczOzWV)oi`UmT%Jup!)PbDb&hm1kvtxc-GJa|B zz<=6G8L_y)U(y(ChC0|7NJf6kSG@}R-MyS?q-D9Skrw^P0>S}{;0**u?wC1*0_L&j zz**AT-e$gjXZ5m8C*fLXWOz-uwYg<5g;xnS%tBHwSqxF=-ba=|+mz8!RZ2x4yh(XN zZiSMk<{;DKlqq5ov9}~7R{r4W(AFu??#uWtm?DA@B3hXwq7-z#PT;`_kD#n$eDhFplCF|^#L2WIp4Hi+w#srn5yvqDQL&ViqP}wi3QJH&OS~kG+{NNz9<1|gulP2aQ~0YM Sc%Cz2WGaa~=ydzO2pHE+ISDm}msas30v%@~8 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

>=aGoknH-X1l@pNCft91|kIvi3J>G^O$ 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 diff --git a/plugins/dali-swig/SWIG/dali-toolkit.i b/plugins/dali-swig/SWIG/dali-toolkit.i index cfa1c57..c9f585d 100644 --- a/plugins/dali-swig/SWIG/dali-toolkit.i +++ b/plugins/dali-swig/SWIG/dali-toolkit.i @@ -24,6 +24,8 @@ %ignore *::CheckBoxButton(Internal::CheckBoxButton&); %ignore *::CheckBoxButton(Dali::Internal::CustomActor*); %ignore *::Control(Dali::Internal::CustomActor*); +%ignore *::ControlWrapper( Internal::ControlWrapper& ); +%ignore *::ControlWrapper( Dali::Internal::CustomActor* ); %ignore *::FlexContainer(Internal::FlexContainer&); %ignore *::FlexContainer(Dali::Internal::CustomActor*); %ignore *::GaussianBlurView(Internal::GaussianBlurView&); @@ -158,8 +160,15 @@ %csconstvalue("PropertyRanges.ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX") ANIMATABLE_PROPERTY_START_INDEX; %csconstvalue("PropertyRanges.ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX+1000") ANIMATABLE_PROPERTY_END_INDEX; %csconstvalue("PropertyRanges.CORE_PROPERTY_MAX_INDEX+1") VISUAL_PROPERTY_BASE_START_INDEX; -%csconstvalue("1 << 5") REQUIRES_STYLE_CHANGE_SIGNALS; -%csconstvalue("1 << 6") REQUIRES_KEYBOARD_NAVIGATION_SUPPORT; +%csconstvalue("0") CONTROL_BEHAVIOUR_NONE; +%csconstvalue("0") CONTROL_BEHAVIOUR_DEFAULT; +%csconstvalue("1 << 0") DISABLE_SIZE_NEGOTIATION; +%csconstvalue("1 << 1") REQUIRES_TOUCH_EVENTS; +%csconstvalue("1 << 2") REQUIRES_HOVER_EVENTS; +%csconstvalue("1 << 3") REQUIRES_WHEEL_EVENTS; +%csconstvalue("1 << 4") REQUIRES_STYLE_CHANGE_SIGNALS; +%csconstvalue("1 << 5") REQUIRES_KEYBOARD_NAVIGATION_SUPPORT; +%csconstvalue("1 << 6") DISABLE_STYLE_CHANGE_SIGNALS; typedef unsigned int ItemId; typedef std::vector ItemIdContainer; diff --git a/plugins/dali-swig/SWIG/dali.i b/plugins/dali-swig/SWIG/dali.i index 7002568..3659b21 100755 --- a/plugins/dali-swig/SWIG/dali.i +++ b/plugins/dali-swig/SWIG/dali.i @@ -64,6 +64,7 @@ #include #include + #include #include #include @@ -172,10 +173,7 @@ using namespace Dali; using namespace Dali::Toolkit; %} -//%feature("director") Dali::Internal::CustomActorImpl; -//%feature("notabstract") Dali::Internal::CustomActorImpl; -//%feature("director") Dali::Toolkit::Internal::Control; -//%feature("notabstract") Dali::Toolkit::Internal::Control; +%feature("director") Dali::Toolkit::Internal::Control; %feature("notabstract") Dali::Toolkit::FixedRuler; %feature("notabstract") Dali::Toolkit::DefaultRuler; diff --git a/plugins/dali-swig/examples/custom-control.cs b/plugins/dali-swig/examples/custom-control.cs new file mode 100644 index 0000000..9dde85e --- /dev/null +++ b/plugins/dali-swig/examples/custom-control.cs @@ -0,0 +1,236 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +using System; +using System.Runtime.InteropServices; +using Dali; + +namespace MyCSharpExample +{ + // A custom control for star rating (draggable to change the rating) + class StarRating : CustomView + { + private FlexContainer _container; + private ImageView[] _images; + private Vector3 _gestureDisplacement; + private int _currentValue; + private int _myRating; + private bool _myDragEnabled; + + public StarRating() : base(ViewWrapperImpl.CustomViewBehaviour.VIEW_BEHAVIOUR_DEFAULT) + { + } + + public override void OnInitialize() + { + // Create a container for the star images + _container = new FlexContainer(); + + _container.ParentOrigin = NDalic.ParentOriginTopLeft; + _container.AnchorPoint = NDalic.AnchorPointTopLeft; + _container.FlexDirection = (int)FlexContainer.FlexDirectionType.ROW; + _container.WidthResizePolicy = "FILL_TO_PARENT"; + _container.HeightResizePolicy = "FILL_TO_PARENT"; + + this.Add(_container); + + // Create the images + _images = new ImageView[5]; + + for(int i = 0; i < 5; i++) + { + _images[i] = new ImageView("./images/star-dim.png"); + _container.Add( _images[i] ); + } + + // Update the images according to the rating (dimmed star by default) + _myRating = 0; + UpdateStartImages(_myRating); + + // Enable pan gesture detection + EnableGestureDetection(Gesture.Type.Pan); + _myDragEnabled = true; // Allow dragging by default (can be disabled) + } + + // Pan gesture handling + public override void OnPan(PanGesture gesture) + { + // Only handle pan gesture if dragging is allowed + if(_myDragEnabled) + { + switch (gesture.state) + { + case Gesture.State.Started: + { + _gestureDisplacement = new Vector3(0.0f, 0.0f, 0.0f); + _currentValue = 0; + break; + } + case Gesture.State.Continuing: + { + // Calculate the rating according to pan desture displacement + _gestureDisplacement.x += gesture.displacement.x; + int delta = (int)Math.Ceiling(_gestureDisplacement.x / 40.0f); + _currentValue = _myRating + delta; + + // Clamp the rating + if(_currentValue < 0) _currentValue = 0; + if(_currentValue > 5) _currentValue = 5; + + // Update the images according to the rating + UpdateStartImages(_currentValue); + break; + } + default: + { + _myRating = _currentValue; + break; + } + } + } + } + + // Update the images according to the rating + private void UpdateStartImages(int rating) + { + for(int i = 0; i < rating; i++) + { + _images[i].WidthResizePolicy = "USE_NATURAL_SIZE"; + _images[i].HeightResizePolicy = "USE_NATURAL_SIZE"; + _images[i].SetImage("./images/star-highlight.png"); + } + + for(int i = rating; i < 5; i++) + { + _images[i].WidthResizePolicy = "USE_NATURAL_SIZE"; + _images[i].HeightResizePolicy = "USE_NATURAL_SIZE"; + _images[i].SetImage("./images/star-dim.png"); + } + } + + // Rating property of type int: + public int Rating + { + get + { + return _myRating; + } + set + { + _myRating = value; + UpdateStartImages(_myRating); + } + } + + // DragEnabled property of type bool: + public bool DragEnabled + { + get + { + return _myDragEnabled; + } + set + { + _myDragEnabled = value; + } + } + } + + class Example + { + private Dali.Application _application; + + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + delegate void CallbackDelegate(); + + public Example(Dali.Application application) + { + _application = application; + _application.Initialized += Initialize; + } + + public void Initialize(object source, AUIApplicationInitEventArgs e) + { + Stage stage = Stage.GetCurrent(); + stage.SetBackgroundColor( NDalic.WHITE ); + + // Create a container to layout the rows of image and rating vertically + FlexContainer container = new FlexContainer(); + + container.ParentOrigin = NDalic.ParentOriginTopLeft; + container.AnchorPoint = NDalic.AnchorPointTopLeft; + container.FlexDirection = (int)FlexContainer.FlexDirectionType.COLUMN; + container.WidthResizePolicy = "FILL_TO_PARENT"; + container.HeightResizePolicy = "FILL_TO_PARENT"; + + stage.Add(container); + + Random random = new Random(); + + for(int i = 0; i < 6; i++) // 6 rows in total + { + // Create a container to layout the image and rating (in each row) horizontally + FlexContainer imageRow = new FlexContainer(); + imageRow.ParentOrigin = NDalic.ParentOriginTopLeft; + imageRow.AnchorPoint = NDalic.AnchorPointTopLeft; + imageRow.FlexDirection = (int)FlexContainer.FlexDirectionType.ROW; + imageRow.Flex = 1.0f; + container.Add(imageRow); + + // Add the image view to the row + ImageView image = new ImageView("./images/gallery-" + i + ".jpg"); + image.Size = new Vector3(120.0f, 120.0f, 0.0f); + image.WidthResizePolicy = "FIXED"; + image.HeightResizePolicy = "FIXED"; + image.AlignSelf = (int)FlexContainer.Alignment.ALIGN_CENTER; + image.Flex = 0.3f; + image.FlexMargin = new Vector4(10.0f, 0.0f, 0.0f, 0.0f); + imageRow.Add(image); + + // Create a rating control + StarRating view = new StarRating(); + + // Add the rating control to the row + view.ParentOrigin = NDalic.ParentOriginCenter; + view.AnchorPoint = NDalic.AnchorPointCenter; + view.Size = new Vector3(200.0f, 40.0f, 0.0f); + view.Flex = 0.7f; + view.AlignSelf = (int)FlexContainer.Alignment.ALIGN_CENTER; + view.FlexMargin = new Vector4(30.0f, 0.0f, 0.0f, 0.0f); + imageRow.Add(view); + + // Set the initial rating randomly between 1 and 5 + view.Rating = random.Next(1, 6); + } + } + + public void MainLoop() + { + _application.MainLoop (); + } + + ///

+ /// The main entry point for the application. + /// + [STAThread] + static void Main(string[] args) + { + Example example = new Example(Application.NewApplication()); + example.MainLoop (); + } + } +} diff --git a/plugins/dali-swig/examples/images/arrow.png b/plugins/dali-swig/examples/images/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..87abefddf2316b6033044bcf2e319d7111bf6d99 GIT binary patch literal 2515 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 _maxValue) + { + _currentValue = previousValue; + } + } + else + { + _currentValue = previousValue; + } + + // Otherwise take the new value + this.Value = _currentValue; + } + + public override Actor GetNextKeyboardFocusableActor(Actor currentFocusedActor, View.KeyboardFocus.Direction direction, bool loopEnabled) + { + // Respond to Up/Down keys to change the value while keeping the current spin focused + Actor nextFocusedActor = currentFocusedActor; + if (direction == View.KeyboardFocus.Direction.UP) + { + this.Value += this.Step; + nextFocusedActor = _textField; + } + else if (direction == View.KeyboardFocus.Direction.DOWN) + { + this.Value -= this.Step; + nextFocusedActor = _textField; + } + else + { + // Return a native empty handle as nothing can be focused in the left or right + nextFocusedActor = new Actor(); + nextFocusedActor.Reset(); + } + + return nextFocusedActor; + } + + // Value property of type int: + public int Value + { + get + { + return _currentValue; + } + set + { + _currentValue = value; + + // Make sure no invalid value is accepted + if (_currentValue < _minValue) + { + _currentValue = _minValue; + } + + if (_currentValue > _maxValue) + { + _currentValue = _maxValue; + } + + _textField.Text = _currentValue.ToString(); + } + } + + // MinValue property of type int: + public int MinValue + { + get + { + return _minValue; + } + set + { + _minValue = value; + } + } + + // MaxValue property of type int: + public int MaxValue + { + get + { + return _maxValue; + } + set + { + _maxValue = value; + } + } + + // Step property of type int: + public int Step + { + get + { + return _singleStep; + } + set + { + _singleStep = value; + } + } + + // WrappingEnabled property of type bool: + public bool WrappingEnabled + { + get + { + return _wrappingEnabled; + } + set + { + _wrappingEnabled = value; + } + } + + // TextPointSize property of type int: + public int TextPointSize + { + get + { + return _pointSize; + } + set + { + _pointSize = value; + _textField.PointSize = _pointSize; + } + } + + // TextColor property of type Vector4: + public Vector4 TextColor + { + get + { + return _textColor; + } + set + { + _textColor = value; + _textField.TextColor = _textColor; + } + } + + // MaxTextLength property of type int: + public int MaxTextLength + { + get + { + return _maxTextLength; + } + set + { + _maxTextLength = value; + _textField.MaxLength = _maxTextLength; + } + } + + public TextField SpinText + { + get + { + return _textField; + } + set + { + _textField = value; + } + } + + // Indicator property of type string: + public string IndicatorImage + { + get + { + return _arrowImage; + } + set + { + _arrowImage = value; + _arrowVisual = VisualFactory.Get().CreateVisual( _arrowImage, new Uint16Pair(150, 150) ); + RegisterVisual( _arrowVisualPropertyIndex, _arrowVisual ); + } + } + } + + class Example + { + private Dali.Application _application; + private FlexContainer _container; + private Spin _spinYear; + private Spin _spinMonth; + private Spin _spinDay; + + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + delegate void CallbackDelegate(); + + public Example(Dali.Application application) + { + _application = application; + _application.Initialized += Initialize; + } + + public void Initialize(object source, AUIApplicationInitEventArgs e) + { + Stage stage = Stage.GetCurrent(); + stage.SetBackgroundColor( NDalic.WHITE ); + + // Create a container for the spins + _container = new FlexContainer(); + + _container.ParentOrigin = NDalic.ParentOriginCenter; + _container.AnchorPoint = NDalic.AnchorPointCenter; + _container.FlexDirection = (int)FlexContainer.FlexDirectionType.ROW; + _container.Size = new Vector3(480.0f, 150.0f, 0.0f); + + stage.Add(_container); + + // Create a Spin control for year + _spinYear = new Spin(); + _spinYear.ParentOrigin = NDalic.ParentOriginCenter; + _spinYear.AnchorPoint = NDalic.AnchorPointCenter; + _spinYear.Flex = 0.3f; + _spinYear.FlexMargin = new Vector4(5.0f, 0.0f, 5.0f, 0.0f); + _container.Add(_spinYear); + + _spinYear.MinValue = 1900; + _spinYear.MaxValue = 2100; + _spinYear.Value = 2016; + _spinYear.Step = 1; + _spinYear.MaxTextLength = 4; + _spinYear.TextPointSize = 26; + _spinYear.TextColor = NDalic.WHITE; + _spinYear.SetKeyboardFocusable(true); + _spinYear.Name = "_spinYear"; + + // Create a Spin control for month + _spinMonth = new Spin(); + _spinMonth.ParentOrigin = NDalic.ParentOriginCenter; + _spinMonth.AnchorPoint = NDalic.AnchorPointCenter; + _spinMonth.Flex = 0.3f; + _spinMonth.FlexMargin = new Vector4(5.0f, 0.0f, 5.0f, 0.0f); + _container.Add(_spinMonth); + + _spinMonth.MinValue = 1; + _spinMonth.MaxValue = 12; + _spinMonth.Value = 10; + _spinMonth.Step = 1; + _spinMonth.MaxTextLength = 2; + _spinMonth.TextPointSize = 26; + _spinMonth.TextColor = NDalic.WHITE; + _spinMonth.SetKeyboardFocusable(true); + _spinMonth.Name = "_spinMonth"; + + // Create a Spin control for day + _spinDay = new Spin(); + _spinDay.ParentOrigin = NDalic.ParentOriginCenter; + _spinDay.AnchorPoint = NDalic.AnchorPointCenter; + _spinDay.Flex = 0.3f; + _spinDay.FlexMargin = new Vector4(5.0f, 0.0f, 5.0f, 0.0f); + _container.Add(_spinDay); + + _spinDay.MinValue = 1; + _spinDay.MaxValue = 31; + _spinDay.Value = 26; + _spinDay.Step = 1; + _spinDay.MaxTextLength = 2; + _spinDay.TextPointSize = 26; + _spinDay.TextColor = NDalic.WHITE; + _spinDay.SetKeyboardFocusable(true); + _spinDay.Name = "_spinDay"; + + KeyboardFocusManager keyboardFocusManager = KeyboardFocusManager.Get(); + keyboardFocusManager.PreFocusChange += OnKeyboardPreFocusChange; + keyboardFocusManager.FocusedActorEnterKeyPressed += OnFocusedActorEnterKeyPressed; + + } + + private Actor OnKeyboardPreFocusChange(object source, KeyboardFocusManager.PreFocusChangeEventArgs e) + { + Actor nextFocusActor = e.Proposed; + + // When nothing has been focused initially, focus the text field in the first spin + if (!e.Current && !e.Proposed) + { + nextFocusActor = _spinYear.SpinText; + } + else if(e.Direction == View.KeyboardFocus.Direction.LEFT) + { + // Move the focus to the spin in the left of the current focused spin + if(e.Current == _spinMonth.SpinText) + { + nextFocusActor = _spinYear.SpinText; + } + else if(e.Current == _spinDay.SpinText) + { + nextFocusActor = _spinMonth.SpinText; + } + } + else if(e.Direction == View.KeyboardFocus.Direction.RIGHT) + { + // Move the focus to the spin in the right of the current focused spin + if(e.Current == _spinYear.SpinText) + { + nextFocusActor = _spinMonth.SpinText; + } + else if(e.Current == _spinMonth.SpinText) + { + nextFocusActor = _spinDay.SpinText; + } + } + + return nextFocusActor; + } + + private void OnFocusedActorEnterKeyPressed(object source, KeyboardFocusManager.FocusedActorEnterKeyEventArgs e) + { + // Make the text field in the current focused spin to take the key input + KeyInputFocusManager manager = KeyInputFocusManager.Get(); + + if (e.Actor == _spinYear.SpinText) + { + if (manager.GetCurrentFocusControl() != _spinYear.SpinText) + { + manager.SetFocus(_spinYear.SpinText); + } + } + else if (e.Actor == _spinMonth.SpinText) + { + if (manager.GetCurrentFocusControl() != _spinMonth.SpinText) + { + manager.SetFocus(_spinMonth.SpinText); + } + } + else if (e.Actor == _spinDay.SpinText) + { + if (manager.GetCurrentFocusControl() != _spinDay.SpinText) + { + manager.SetFocus(_spinDay.SpinText); + } + } + } + + public void MainLoop() + { + _application.MainLoop (); + } + + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main(string[] args) + { + Example example = new Example(Application.NewApplication()); + example.MainLoop (); + } + } +} diff --git a/plugins/dali-swig/manual/cpp/common.h b/plugins/dali-swig/manual/cpp/common.h index 7011fc2..9f8d237 100644 --- a/plugins/dali-swig/manual/cpp/common.h +++ b/plugins/dali-swig/manual/cpp/common.h @@ -1,9 +1,51 @@ -#ifndef CSHARP_COMMON -#define CSHARP_COMMON -#endif +#ifndef CSHARP_COMMON_H +#define CSHARP_COMMON_H + +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #define SWIG_DIRECTORS +#ifdef __cplusplus +/* SwigValueWrapper is described in swig.swg */ +template class SwigValueWrapper +{ + struct SwigMovePointer + { + T *ptr; + SwigMovePointer(T *p) : ptr(p) { } + ~SwigMovePointer() { delete ptr; } + SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; } + } pointer; + SwigValueWrapper& operator=(const SwigValueWrapper& rhs); + SwigValueWrapper(const SwigValueWrapper& rhs); +public: + SwigValueWrapper() : pointer(0) { } + SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; } + operator T&() const { return *pointer.ptr; } + T *operator&() { return pointer.ptr; } +}; + +template T SwigValueInit() +{ + return T(); +} +#endif + #include #define SWIGSTDCALL @@ -65,7 +107,8 @@ /* Support for throwing C# exceptions from C/C++. There are two types: * Exceptions that take a message and ArgumentExceptions that take a message and a parameter name. */ -typedef enum { +typedef enum +{ SWIG_CSharpApplicationException, SWIG_CSharpArithmeticException, SWIG_CSharpDivideByZeroException, @@ -79,7 +122,8 @@ typedef enum { SWIG_CSharpSystemException } SWIG_CSharpExceptionCodes; -typedef enum { +typedef enum +{ SWIG_CSharpArgumentException, SWIG_CSharpArgumentNullException, SWIG_CSharpArgumentOutOfRangeException @@ -88,17 +132,20 @@ typedef enum { typedef void (SWIGSTDCALL* SWIG_CSharpExceptionCallback_t)(const char *); typedef void (SWIGSTDCALL* SWIG_CSharpExceptionArgumentCallback_t)(const char *, const char *); -typedef struct { +typedef struct +{ SWIG_CSharpExceptionCodes code; SWIG_CSharpExceptionCallback_t callback; } SWIG_CSharpException_t; -typedef struct { +typedef struct +{ SWIG_CSharpExceptionArgumentCodes code; SWIG_CSharpExceptionArgumentCallback_t callback; } SWIG_CSharpExceptionArgument_t; -static SWIG_CSharpException_t SWIG_csharp_exceptions[] = { +static SWIG_CSharpException_t SWIG_csharp_exceptions[] = +{ { SWIG_CSharpApplicationException, NULL }, { SWIG_CSharpArithmeticException, NULL }, { SWIG_CSharpDivideByZeroException, NULL }, @@ -112,15 +159,18 @@ static SWIG_CSharpException_t SWIG_csharp_exceptions[] = { { SWIG_CSharpSystemException, NULL } }; -static SWIG_CSharpExceptionArgument_t SWIG_csharp_exceptions_argument[] = { +static SWIG_CSharpExceptionArgument_t SWIG_csharp_exceptions_argument[] = +{ { SWIG_CSharpArgumentException, NULL }, { SWIG_CSharpArgumentNullException, NULL }, { SWIG_CSharpArgumentOutOfRangeException, NULL } }; -static void SWIGUNUSED SWIG_CSharpSetPendingException(SWIG_CSharpExceptionCodes code, const char *msg) { +static void SWIGUNUSED SWIG_CSharpSetPendingException(SWIG_CSharpExceptionCodes code, const char *msg) +{ SWIG_CSharpExceptionCallback_t callback = SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback; - if ((size_t)code < sizeof(SWIG_csharp_exceptions)/sizeof(SWIG_CSharpException_t)) { + if ((size_t)code < sizeof(SWIG_csharp_exceptions)/sizeof(SWIG_CSharpException_t)) + { callback = SWIG_csharp_exceptions[code].callback; } callback(msg); @@ -134,52 +184,54 @@ static void SWIGUNUSED SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpExcepti callback(msg, param_name); } -SWIGINTERN void SWIG_CSharpException(int code, const char *msg) { - if (code == SWIG_ValueError) { +SWIGINTERN void SWIG_CSharpException(int code, const char *msg) +{ + if (code == SWIG_ValueError) + { SWIG_CSharpExceptionArgumentCodes exception_code = SWIG_CSharpArgumentOutOfRangeException; SWIG_CSharpSetPendingExceptionArgument(exception_code, msg, 0); - } else { + } + else + { SWIG_CSharpExceptionCodes exception_code = SWIG_CSharpApplicationException; - switch(code) { - case SWIG_MemoryError: - exception_code = SWIG_CSharpOutOfMemoryException; - break; - case SWIG_IndexError: - exception_code = SWIG_CSharpIndexOutOfRangeException; - break; - case SWIG_DivisionByZero: - exception_code = SWIG_CSharpDivideByZeroException; - break; - case SWIG_IOError: - exception_code = SWIG_CSharpIOException; - break; - case SWIG_OverflowError: - exception_code = SWIG_CSharpOverflowException; - break; - case SWIG_RuntimeError: - case SWIG_TypeError: - case SWIG_SyntaxError: - case SWIG_SystemError: - case SWIG_UnknownError: - default: - exception_code = SWIG_CSharpApplicationException; - break; + switch(code) + { + case SWIG_MemoryError: + exception_code = SWIG_CSharpOutOfMemoryException; + break; + case SWIG_IndexError: + exception_code = SWIG_CSharpIndexOutOfRangeException; + break; + case SWIG_DivisionByZero: + exception_code = SWIG_CSharpDivideByZeroException; + break; + case SWIG_IOError: + exception_code = SWIG_CSharpIOException; + break; + case SWIG_OverflowError: + exception_code = SWIG_CSharpOverflowException; + break; + case SWIG_RuntimeError: + case SWIG_TypeError: + case SWIG_SyntaxError: + case SWIG_SystemError: + case SWIG_UnknownError: + default: + exception_code = SWIG_CSharpApplicationException; + break; } SWIG_CSharpSetPendingException(exception_code, msg); } } - #include - #define SWIGSTDCALL - #include #include -using namespace Dali; -using namespace Dali::Toolkit; - +#include +#include +#endif // CSHARP_COMMON_H diff --git a/plugins/dali-swig/manual/cpp/keyboard_focus_manager_wrap.cpp b/plugins/dali-swig/manual/cpp/keyboard_focus_manager_wrap.cpp index d2a017c..5651b9e 100644 --- a/plugins/dali-swig/manual/cpp/keyboard_focus_manager_wrap.cpp +++ b/plugins/dali-swig/manual/cpp/keyboard_focus_manager_wrap.cpp @@ -1,3 +1,20 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + #ifndef CSHARP_KEYBOARD_FOCUS_MANAGER #define CSHARP_KEYBOARD_FOCUS_MANAGER #endif diff --git a/plugins/dali-swig/manual/cpp/view-wrapper-impl-wrap.cpp b/plugins/dali-swig/manual/cpp/view-wrapper-impl-wrap.cpp new file mode 100644 index 0000000..3354408 --- /dev/null +++ b/plugins/dali-swig/manual/cpp/view-wrapper-impl-wrap.cpp @@ -0,0 +1,1378 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +// CLASS HEADER +#include "view-wrapper-impl-wrap.h" + +// INTERNAL INCLUDES +#include + +#ifdef __cplusplus +extern "C" { +#endif + +SwigDirector_ViewWrapperImpl::SwigDirector_ViewWrapperImpl(Dali::Toolkit::Internal::ControlWrapper::CustomControlBehaviour behaviourFlags) : Dali::Toolkit::Internal::ControlWrapper(behaviourFlags) { + swig_init_callbacks(); +} + +SwigDirector_ViewWrapperImpl::~SwigDirector_ViewWrapperImpl() { + +} + + +void SwigDirector_ViewWrapperImpl::OnStageConnection(int depth) { + Dali::Toolkit::Internal::Control::OnStageConnection(depth); + swig_callbackOnStageConnection(depth); +} + +void SwigDirector_ViewWrapperImpl::OnStageDisconnection() { + swig_callbackOnStageDisconnection(); + Dali::Toolkit::Internal::Control::OnStageDisconnection(); +} + +void SwigDirector_ViewWrapperImpl::OnChildAdd(Dali::Actor &child) { + Dali::Toolkit::Internal::Control::OnChildAdd( child ); + void * jchild = (Dali::Actor *) &child; + swig_callbackOnChildAdd(jchild); +} + +void SwigDirector_ViewWrapperImpl::OnChildRemove(Dali::Actor &child) { + void * jchild = (Dali::Actor *) &child; + swig_callbackOnChildRemove(jchild); + Dali::Toolkit::Internal::Control::OnChildRemove( child ); +} + +void SwigDirector_ViewWrapperImpl::OnPropertySet(Dali::Property::Index index, Dali::Property::Value propertyValue) { + int jindex ; + void * jpropertyValue ; + + if (!swig_callbackOnPropertySet) { + Dali::Toolkit::Internal::ControlWrapper::OnPropertySet(index,propertyValue); + return; + } else { + jindex = index; + jpropertyValue = (void *)new Dali::Property::Value((const Dali::Property::Value &)propertyValue); + swig_callbackOnPropertySet(jindex, jpropertyValue); + } +} + +void SwigDirector_ViewWrapperImpl::OnSizeSet(Dali::Vector3 const &targetSize) { + Dali::Toolkit::Internal::Control::OnSizeSet(targetSize); + swig_callbackOnSizeSet((Dali::Vector3 *) &targetSize); +} + +void SwigDirector_ViewWrapperImpl::OnSizeAnimation(Dali::Animation &animation, Dali::Vector3 const &targetSize) { + Dali::Toolkit::Internal::Control::OnSizeAnimation(animation,targetSize); + swig_callbackOnSizeAnimation(&animation, (Dali::Vector3 *) &targetSize); +} + +bool SwigDirector_ViewWrapperImpl::OnTouchEvent(Dali::TouchEvent const &event) { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + void * jarg0 = 0 ; + + if (!swig_callbackOnTouchEvent) { + return Dali::Toolkit::Internal::Control::OnTouchEvent(event); + } else { + jarg0 = (Dali::TouchEvent *) &event; + jresult = (unsigned int) swig_callbackOnTouchEvent(jarg0); + c_result = jresult ? true : false; + } + return c_result; +} + +bool SwigDirector_ViewWrapperImpl::OnHoverEvent(Dali::HoverEvent const &event) { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + void * jarg0 = 0 ; + + if (!swig_callbackOnHoverEvent) { + return Dali::Toolkit::Internal::Control::OnHoverEvent(event); + } else { + jarg0 = (Dali::HoverEvent *) &event; + jresult = (unsigned int) swig_callbackOnHoverEvent(jarg0); + c_result = jresult ? true : false; + } + return c_result; +} + +bool SwigDirector_ViewWrapperImpl::OnKeyEvent(Dali::KeyEvent const &event) { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + void * jarg0 = 0 ; + + if (!swig_callbackOnKeyEvent) { + return Dali::Toolkit::Internal::Control::OnKeyEvent(event); + } else { + jarg0 = (Dali::KeyEvent *) &event; + jresult = (unsigned int) swig_callbackOnKeyEvent(jarg0); + c_result = jresult ? true : false; + } + return c_result; +} + +bool SwigDirector_ViewWrapperImpl::OnWheelEvent(Dali::WheelEvent const &event) { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + void * jarg0 = 0 ; + + if (!swig_callbackOnWheelEvent) { + return Dali::Toolkit::Internal::Control::OnWheelEvent(event); + } else { + jarg0 = (Dali::WheelEvent *) &event; + jresult = (unsigned int) swig_callbackOnWheelEvent(jarg0); + c_result = jresult ? true : false; + } + return c_result; +} + +void SwigDirector_ViewWrapperImpl::OnRelayout(Dali::Vector2 const &size, Dali::RelayoutContainer &container) { + void * jsize = 0 ; + void * jcontainer = 0 ; + + if (!swig_callbackOnRelayout) { + Dali::Toolkit::Internal::Control::OnRelayout(size,container); + return; + } else { + jsize = (Dali::Vector2 *) &size; + jcontainer = (Dali::RelayoutContainer *) &container; + swig_callbackOnRelayout(jsize, jcontainer); + } +} + +void SwigDirector_ViewWrapperImpl::OnSetResizePolicy(Dali::ResizePolicy::Type policy, Dali::Dimension::Type dimension) { + int jpolicy ; + int jdimension ; + + if (!swig_callbackOnSetResizePolicy) { + Dali::Toolkit::Internal::Control::OnSetResizePolicy(policy,dimension); + return; + } else { + jpolicy = (int)policy; + jdimension = (int)dimension; + swig_callbackOnSetResizePolicy(jpolicy, jdimension); + } +} + +Dali::Vector3 SwigDirector_ViewWrapperImpl::GetNaturalSize() { + Dali::Vector3 c_result ; + void * jresult = 0 ; + + if (!swig_callbackGetNaturalSize) { + return Dali::Toolkit::Internal::Control::GetNaturalSize(); + } else { + jresult = (void *) swig_callbackGetNaturalSize(); + if (!jresult) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Unexpected null return for type Dali::Vector3", 0); + return c_result; + } + c_result = *(Dali::Vector3 *)jresult; + } + return c_result; +} + +float SwigDirector_ViewWrapperImpl::CalculateChildSize(Dali::Actor const &child, Dali::Dimension::Type dimension) { + float c_result = SwigValueInit< float >() ; + float jresult = 0 ; + void * jchild = 0 ; + int jdimension ; + + if (!swig_callbackCalculateChildSize) { + return Dali::Toolkit::Internal::Control::CalculateChildSize(child,dimension); + } else { + jchild = (Dali::Actor *) &child; + jdimension = (int)dimension; + jresult = (float) swig_callbackCalculateChildSize(jchild, jdimension); + c_result = (float)jresult; + } + return c_result; +} + +float SwigDirector_ViewWrapperImpl::GetHeightForWidth(float width) { + float c_result = SwigValueInit< float >() ; + float jresult = 0 ; + float jwidth ; + + if (!swig_callbackGetHeightForWidth) { + return Dali::Toolkit::Internal::Control::GetHeightForWidth(width); + } else { + jwidth = width; + jresult = (float) swig_callbackGetHeightForWidth(jwidth); + c_result = (float)jresult; + } + return c_result; +} + +float SwigDirector_ViewWrapperImpl::GetWidthForHeight(float height) { + float c_result = SwigValueInit< float >() ; + float jresult = 0 ; + float jheight ; + + if (!swig_callbackGetWidthForHeight) { + return Dali::Toolkit::Internal::Control::GetWidthForHeight(height); + } else { + jheight = height; + jresult = (float) swig_callbackGetWidthForHeight(jheight); + c_result = (float)jresult; + } + return c_result; +} + +bool SwigDirector_ViewWrapperImpl::RelayoutDependentOnChildren(Dali::Dimension::Type dimension) { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + int jdimension ; + + if (!swig_callbackRelayoutDependentOnChildren__SWIG_0) { + return Dali::Toolkit::Internal::Control::RelayoutDependentOnChildren(dimension); + } else { + jdimension = (int)dimension; + jresult = (unsigned int) swig_callbackRelayoutDependentOnChildren__SWIG_0(jdimension); + c_result = jresult ? true : false; + } + return c_result; +} + +void SwigDirector_ViewWrapperImpl::OnCalculateRelayoutSize(Dali::Dimension::Type dimension) { + int jdimension ; + + if (!swig_callbackOnCalculateRelayoutSize) { + Dali::Toolkit::Internal::Control::OnCalculateRelayoutSize(dimension); + return; + } else { + jdimension = (int)dimension; + swig_callbackOnCalculateRelayoutSize(jdimension); + } +} + +void SwigDirector_ViewWrapperImpl::OnLayoutNegotiated(float size, Dali::Dimension::Type dimension) { + float jsize ; + int jdimension ; + + if (!swig_callbackOnLayoutNegotiated) { + Dali::Toolkit::Internal::Control::OnLayoutNegotiated(size,dimension); + return; + } else { + jsize = size; + jdimension = (int)dimension; + swig_callbackOnLayoutNegotiated(jsize, jdimension); + } +} + +void SwigDirector_ViewWrapperImpl::OnInitialize() { + if (!swig_callbackOnInitialize) { + Dali::Toolkit::Internal::Control::OnInitialize(); + return; + } else { + swig_callbackOnInitialize(); + } +} + +void SwigDirector_ViewWrapperImpl::OnControlChildAdd(Dali::Actor &child) { + Dali::Toolkit::Internal::Control::OnControlChildAdd(child); + swig_callbackOnControlChildAdd(&child); +} + +void SwigDirector_ViewWrapperImpl::OnControlChildRemove(Dali::Actor &child) { + swig_callbackOnControlChildRemove(&child); + Dali::Toolkit::Internal::Control::OnControlChildRemove(child); +} + +void SwigDirector_ViewWrapperImpl::OnStyleChange(Dali::Toolkit::StyleManager styleManager, Dali::StyleChange::Type change) { + void * jstyleManager ; + int jchange ; + + if (!swig_callbackOnStyleChange) { + Dali::Toolkit::Internal::Control::OnStyleChange(styleManager,change); + return; + } else { + jstyleManager = (void *)new Dali::Toolkit::StyleManager((const Dali::Toolkit::StyleManager &)styleManager); + jchange = (int)change; + swig_callbackOnStyleChange(jstyleManager, jchange); + } +} + +bool SwigDirector_ViewWrapperImpl::OnAccessibilityActivated() { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + + if (!swig_callbackOnAccessibilityActivated) { + return Dali::Toolkit::Internal::Control::OnAccessibilityActivated(); + } else { + jresult = (unsigned int) swig_callbackOnAccessibilityActivated(); + c_result = jresult ? true : false; + } + return c_result; +} + +bool SwigDirector_ViewWrapperImpl::OnAccessibilityPan(Dali::PanGesture gesture) { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + void * jgesture ; + + if (!swig_callbackOnAccessibilityPan) { + return Dali::Toolkit::Internal::Control::OnAccessibilityPan(gesture); + } else { + jgesture = (void *)new Dali::PanGesture((const Dali::PanGesture &)gesture); + jresult = (unsigned int) swig_callbackOnAccessibilityPan(jgesture); + c_result = jresult ? true : false; + } + return c_result; +} + +bool SwigDirector_ViewWrapperImpl::OnAccessibilityTouch(Dali::TouchEvent const &touchEvent) { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + void * jtouchEvent = 0 ; + + if (!swig_callbackOnAccessibilityTouch) { + return Dali::Toolkit::Internal::Control::OnAccessibilityTouch(touchEvent); + } else { + jtouchEvent = (Dali::TouchEvent *) &touchEvent; + jresult = (unsigned int) swig_callbackOnAccessibilityTouch(jtouchEvent); + c_result = jresult ? true : false; + } + return c_result; +} + +bool SwigDirector_ViewWrapperImpl::OnAccessibilityValueChange(bool isIncrease) { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + unsigned int jisIncrease ; + + if (!swig_callbackOnAccessibilityValueChange) { + return Dali::Toolkit::Internal::Control::OnAccessibilityValueChange(isIncrease); + } else { + jisIncrease = isIncrease; + jresult = (unsigned int) swig_callbackOnAccessibilityValueChange(jisIncrease); + c_result = jresult ? true : false; + } + return c_result; +} + +bool SwigDirector_ViewWrapperImpl::OnAccessibilityZoom() { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + + if (!swig_callbackOnAccessibilityZoom) { + return Dali::Toolkit::Internal::Control::OnAccessibilityZoom(); + } else { + jresult = (unsigned int) swig_callbackOnAccessibilityZoom(); + c_result = jresult ? true : false; + } + return c_result; +} + +void SwigDirector_ViewWrapperImpl::OnKeyInputFocusGained() { + if (!swig_callbackOnKeyInputFocusGained) { + Dali::Toolkit::Internal::Control::OnKeyInputFocusGained(); + return; + } else { + swig_callbackOnKeyInputFocusGained(); + } +} + +void SwigDirector_ViewWrapperImpl::OnKeyInputFocusLost() { + if (!swig_callbackOnKeyInputFocusLost) { + Dali::Toolkit::Internal::Control::OnKeyInputFocusLost(); + return; + } else { + swig_callbackOnKeyInputFocusLost(); + } +} + +Dali::Actor SwigDirector_ViewWrapperImpl::GetNextKeyboardFocusableActor(Dali::Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction, bool loopEnabled) { + Dali::Actor c_result ; + void * jresult = 0 ; + void * jcurrentFocusedActor ; + int jdirection ; + unsigned int jloopEnabled ; + + if (!swig_callbackGetNextKeyboardFocusableActor) { + return Dali::Toolkit::Internal::Control::GetNextKeyboardFocusableActor(currentFocusedActor,direction,loopEnabled); + } else { + jcurrentFocusedActor = (void *)new Dali::Actor((const Dali::Actor &)currentFocusedActor); + jdirection = (int)direction; + jloopEnabled = loopEnabled; + jresult = (void *) swig_callbackGetNextKeyboardFocusableActor(jcurrentFocusedActor, jdirection, jloopEnabled); + if (!jresult) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Unexpected null return for type Dali::Actor", 0); + return c_result; + } + c_result = *(Dali::Actor *)jresult; + } + return c_result; +} + +void SwigDirector_ViewWrapperImpl::OnKeyboardFocusChangeCommitted(Dali::Actor commitedFocusableActor) { + void * jcommitedFocusableActor ; + + if (!swig_callbackOnKeyboardFocusChangeCommitted) { + Dali::Toolkit::Internal::Control::OnKeyboardFocusChangeCommitted(commitedFocusableActor); + return; + } else { + jcommitedFocusableActor = (void *)new Dali::Actor((const Dali::Actor &)commitedFocusableActor); + swig_callbackOnKeyboardFocusChangeCommitted(jcommitedFocusableActor); + } +} + +bool SwigDirector_ViewWrapperImpl::OnKeyboardEnter() { + bool c_result = SwigValueInit< bool >() ; + unsigned int jresult = 0 ; + + if (!swig_callbackOnKeyboardEnter) { + return Dali::Toolkit::Internal::Control::OnKeyboardEnter(); + } else { + jresult = (unsigned int) swig_callbackOnKeyboardEnter(); + c_result = jresult ? true : false; + } + return c_result; +} + +void SwigDirector_ViewWrapperImpl::OnPinch(Dali::PinchGesture const &pinch) { + void * jpinch = 0 ; + + if (!swig_callbackOnPinch) { + Dali::Toolkit::Internal::Control::OnPinch(pinch); + return; + } else { + jpinch = (Dali::PinchGesture *) &pinch; + swig_callbackOnPinch(jpinch); + } +} + +void SwigDirector_ViewWrapperImpl::OnPan(Dali::PanGesture const &pan) { + void * jpan = 0 ; + + if (!swig_callbackOnPan) { + Dali::Toolkit::Internal::Control::OnPan(pan); + return; + } else { + jpan = (Dali::PanGesture *) &pan; + swig_callbackOnPan(jpan); + } +} + +void SwigDirector_ViewWrapperImpl::OnTap(Dali::TapGesture const &tap) { + void * jtap = 0 ; + + if (!swig_callbackOnTap) { + Dali::Toolkit::Internal::Control::OnTap(tap); + return; + } else { + jtap = (Dali::TapGesture *) &tap; + swig_callbackOnTap(jtap); + } +} + +void SwigDirector_ViewWrapperImpl::OnLongPress(Dali::LongPressGesture const &longPress) { + void * jlongPress = 0 ; + + if (!swig_callbackOnLongPress) { + Dali::Toolkit::Internal::Control::OnLongPress(longPress); + return; + } else { + jlongPress = (Dali::LongPressGesture *) &longPress; + swig_callbackOnLongPress(jlongPress); + } +} + +void SwigDirector_ViewWrapperImpl::SignalConnected(Dali::SlotObserver *slotObserver, Dali::CallbackBase *callback) { + void * jslotObserver = 0 ; + void * jcallback = 0 ; + + if (!swig_callbackSignalConnected) { + Dali::Toolkit::Internal::Control::SignalConnected(slotObserver,callback); + return; + } else { + jslotObserver = (void *) slotObserver; + jcallback = (void *) callback; + swig_callbackSignalConnected(jslotObserver, jcallback); + } +} + +void SwigDirector_ViewWrapperImpl::SignalDisconnected(Dali::SlotObserver *slotObserver, Dali::CallbackBase *callback) { + void * jslotObserver = 0 ; + void * jcallback = 0 ; + + if (!swig_callbackSignalDisconnected) { + Dali::Toolkit::Internal::Control::SignalDisconnected(slotObserver,callback); + return; + } else { + jslotObserver = (void *) slotObserver; + jcallback = (void *) callback; + swig_callbackSignalDisconnected(jslotObserver, jcallback); + } +} + +Dali::Toolkit::Internal::Control::Extension *SwigDirector_ViewWrapperImpl::GetControlExtension() { + return Dali::Toolkit::Internal::Control::GetControlExtension(); +} + +void SwigDirector_ViewWrapperImpl::swig_connect_director(SWIG_Callback0_t callbackOnStageConnection, SWIG_Callback1_t callbackOnStageDisconnection, SWIG_Callback2_t callbackOnChildAdd, SWIG_Callback3_t callbackOnChildRemove, SWIG_Callback4_t callbackOnPropertySet, SWIG_Callback5_t callbackOnSizeSet, SWIG_Callback6_t callbackOnSizeAnimation, SWIG_Callback7_t callbackOnTouchEvent, SWIG_Callback8_t callbackOnHoverEvent, SWIG_Callback9_t callbackOnKeyEvent, SWIG_Callback10_t callbackOnWheelEvent, SWIG_Callback11_t callbackOnRelayout, SWIG_Callback12_t callbackOnSetResizePolicy, SWIG_Callback13_t callbackGetNaturalSize, SWIG_Callback14_t callbackCalculateChildSize, SWIG_Callback15_t callbackGetHeightForWidth, SWIG_Callback16_t callbackGetWidthForHeight, SWIG_Callback17_t callbackRelayoutDependentOnChildren__SWIG_0, SWIG_Callback18_t callbackRelayoutDependentOnChildren__SWIG_1, SWIG_Callback19_t callbackOnCalculateRelayoutSize, SWIG_Callback20_t callbackOnLayoutNegotiated, SWIG_Callback21_t callbackOnInitialize, SWIG_Callback22_t callbackOnControlChildAdd, SWIG_Callback23_t callbackOnControlChildRemove, SWIG_Callback24_t callbackOnStyleChange, SWIG_Callback25_t callbackOnAccessibilityActivated, SWIG_Callback26_t callbackOnAccessibilityPan, SWIG_Callback27_t callbackOnAccessibilityTouch, SWIG_Callback28_t callbackOnAccessibilityValueChange, SWIG_Callback29_t callbackOnAccessibilityZoom, SWIG_Callback30_t callbackOnKeyInputFocusGained, SWIG_Callback31_t callbackOnKeyInputFocusLost, SWIG_Callback32_t callbackGetNextKeyboardFocusableActor, SWIG_Callback33_t callbackOnKeyboardFocusChangeCommitted, SWIG_Callback34_t callbackOnKeyboardEnter, SWIG_Callback35_t callbackOnPinch, SWIG_Callback36_t callbackOnPan, SWIG_Callback37_t callbackOnTap, SWIG_Callback38_t callbackOnLongPress, SWIG_Callback39_t callbackSignalConnected, SWIG_Callback40_t callbackSignalDisconnected) { + swig_callbackOnStageConnection = callbackOnStageConnection; + swig_callbackOnStageDisconnection = callbackOnStageDisconnection; + swig_callbackOnChildAdd = callbackOnChildAdd; + swig_callbackOnChildRemove = callbackOnChildRemove; + swig_callbackOnPropertySet = callbackOnPropertySet; + swig_callbackOnSizeSet = callbackOnSizeSet; + swig_callbackOnSizeAnimation = callbackOnSizeAnimation; + swig_callbackOnTouchEvent = callbackOnTouchEvent; + swig_callbackOnHoverEvent = callbackOnHoverEvent; + swig_callbackOnKeyEvent = callbackOnKeyEvent; + swig_callbackOnWheelEvent = callbackOnWheelEvent; + swig_callbackOnRelayout = callbackOnRelayout; + swig_callbackOnSetResizePolicy = callbackOnSetResizePolicy; + swig_callbackGetNaturalSize = callbackGetNaturalSize; + swig_callbackCalculateChildSize = callbackCalculateChildSize; + swig_callbackGetHeightForWidth = callbackGetHeightForWidth; + swig_callbackGetWidthForHeight = callbackGetWidthForHeight; + swig_callbackRelayoutDependentOnChildren__SWIG_0 = callbackRelayoutDependentOnChildren__SWIG_0; + swig_callbackRelayoutDependentOnChildren__SWIG_1 = callbackRelayoutDependentOnChildren__SWIG_1; + swig_callbackOnCalculateRelayoutSize = callbackOnCalculateRelayoutSize; + swig_callbackOnLayoutNegotiated = callbackOnLayoutNegotiated; + swig_callbackOnInitialize = callbackOnInitialize; + swig_callbackOnControlChildAdd = callbackOnControlChildAdd; + swig_callbackOnControlChildRemove = callbackOnControlChildRemove; + swig_callbackOnStyleChange = callbackOnStyleChange; + swig_callbackOnAccessibilityActivated = callbackOnAccessibilityActivated; + swig_callbackOnAccessibilityPan = callbackOnAccessibilityPan; + swig_callbackOnAccessibilityTouch = callbackOnAccessibilityTouch; + swig_callbackOnAccessibilityValueChange = callbackOnAccessibilityValueChange; + swig_callbackOnAccessibilityZoom = callbackOnAccessibilityZoom; + swig_callbackOnKeyInputFocusGained = callbackOnKeyInputFocusGained; + swig_callbackOnKeyInputFocusLost = callbackOnKeyInputFocusLost; + swig_callbackGetNextKeyboardFocusableActor = callbackGetNextKeyboardFocusableActor; + swig_callbackOnKeyboardFocusChangeCommitted = callbackOnKeyboardFocusChangeCommitted; + swig_callbackOnKeyboardEnter = callbackOnKeyboardEnter; + swig_callbackOnPinch = callbackOnPinch; + swig_callbackOnPan = callbackOnPan; + swig_callbackOnTap = callbackOnTap; + swig_callbackOnLongPress = callbackOnLongPress; + swig_callbackSignalConnected = callbackSignalConnected; + swig_callbackSignalDisconnected = callbackSignalDisconnected; +} + +void SwigDirector_ViewWrapperImpl::swig_init_callbacks() { + swig_callbackOnStageConnection = 0; + swig_callbackOnStageDisconnection = 0; + swig_callbackOnChildAdd = 0; + swig_callbackOnChildRemove = 0; + swig_callbackOnPropertySet = 0; + swig_callbackOnSizeSet = 0; + swig_callbackOnSizeAnimation = 0; + swig_callbackOnTouchEvent = 0; + swig_callbackOnHoverEvent = 0; + swig_callbackOnKeyEvent = 0; + swig_callbackOnWheelEvent = 0; + swig_callbackOnRelayout = 0; + swig_callbackOnSetResizePolicy = 0; + swig_callbackGetNaturalSize = 0; + swig_callbackCalculateChildSize = 0; + swig_callbackGetHeightForWidth = 0; + swig_callbackGetWidthForHeight = 0; + swig_callbackRelayoutDependentOnChildren__SWIG_0 = 0; + swig_callbackRelayoutDependentOnChildren__SWIG_1 = 0; + swig_callbackOnCalculateRelayoutSize = 0; + swig_callbackOnLayoutNegotiated = 0; + swig_callbackOnInitialize = 0; + swig_callbackOnControlChildAdd = 0; + swig_callbackOnControlChildRemove = 0; + swig_callbackOnStyleChange = 0; + swig_callbackOnAccessibilityActivated = 0; + swig_callbackOnAccessibilityPan = 0; + swig_callbackOnAccessibilityTouch = 0; + swig_callbackOnAccessibilityValueChange = 0; + swig_callbackOnAccessibilityZoom = 0; + swig_callbackOnKeyInputFocusGained = 0; + swig_callbackOnKeyInputFocusLost = 0; + swig_callbackGetNextKeyboardFocusableActor = 0; + swig_callbackOnKeyboardFocusChangeCommitted = 0; + swig_callbackOnKeyboardEnter = 0; + swig_callbackOnPinch = 0; + swig_callbackOnPan = 0; + swig_callbackOnTap = 0; + swig_callbackOnLongPress = 0; + swig_callbackSignalConnected = 0; + swig_callbackSignalDisconnected = 0; +} + +SWIGEXPORT int SWIGSTDCALL CSharp_Dali_ViewWrapperImpl_CONTROL_BEHAVIOUR_FLAG_COUNT_get() { + int jresult ; + int result; + + result = (int)Dali::Toolkit::Internal::ControlWrapper::CONTROL_BEHAVIOUR_FLAG_COUNT; + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ViewWrapperImpl(int jarg1) { + void * jresult ; + Dali::Toolkit::Internal::ControlWrapper::CustomControlBehaviour arg1 ; + Dali::Toolkit::Internal::ControlWrapper *result = 0 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper::CustomControlBehaviour)jarg1; + { + try { + result = (Dali::Toolkit::Internal::ControlWrapper *)new SwigDirector_ViewWrapperImpl(arg1); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ViewWrapperImpl_New(void * jarg1) { + void * jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Toolkit::ControlWrapper result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + { + try { + result = Dali::Toolkit::Internal::ControlWrapper::New(arg1); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = new Dali::Toolkit::ControlWrapper((const Dali::Toolkit::ControlWrapper &)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ViewWrapperImpl(void * jarg1) { + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + { + try { + if (arg1) + { + arg1->Unreference(); + } + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ViewWrapperImpl_director_connect(void *objarg, SwigDirector_ViewWrapperImpl::SWIG_Callback0_t callback0, SwigDirector_ViewWrapperImpl::SWIG_Callback1_t callback1, SwigDirector_ViewWrapperImpl::SWIG_Callback2_t callback2, SwigDirector_ViewWrapperImpl::SWIG_Callback3_t callback3, SwigDirector_ViewWrapperImpl::SWIG_Callback4_t callback4, SwigDirector_ViewWrapperImpl::SWIG_Callback5_t callback5, SwigDirector_ViewWrapperImpl::SWIG_Callback6_t callback6, SwigDirector_ViewWrapperImpl::SWIG_Callback7_t callback7, SwigDirector_ViewWrapperImpl::SWIG_Callback8_t callback8, SwigDirector_ViewWrapperImpl::SWIG_Callback9_t callback9, SwigDirector_ViewWrapperImpl::SWIG_Callback10_t callback10, SwigDirector_ViewWrapperImpl::SWIG_Callback11_t callback11, SwigDirector_ViewWrapperImpl::SWIG_Callback12_t callback12, SwigDirector_ViewWrapperImpl::SWIG_Callback13_t callback13, SwigDirector_ViewWrapperImpl::SWIG_Callback14_t callback14, SwigDirector_ViewWrapperImpl::SWIG_Callback15_t callback15, SwigDirector_ViewWrapperImpl::SWIG_Callback16_t callback16, SwigDirector_ViewWrapperImpl::SWIG_Callback17_t callback17, SwigDirector_ViewWrapperImpl::SWIG_Callback18_t callback18, SwigDirector_ViewWrapperImpl::SWIG_Callback19_t callback19, SwigDirector_ViewWrapperImpl::SWIG_Callback20_t callback20, SwigDirector_ViewWrapperImpl::SWIG_Callback21_t callback21, SwigDirector_ViewWrapperImpl::SWIG_Callback22_t callback22, SwigDirector_ViewWrapperImpl::SWIG_Callback23_t callback23, SwigDirector_ViewWrapperImpl::SWIG_Callback24_t callback24, SwigDirector_ViewWrapperImpl::SWIG_Callback25_t callback25, SwigDirector_ViewWrapperImpl::SWIG_Callback26_t callback26, SwigDirector_ViewWrapperImpl::SWIG_Callback27_t callback27, SwigDirector_ViewWrapperImpl::SWIG_Callback28_t callback28, SwigDirector_ViewWrapperImpl::SWIG_Callback29_t callback29, SwigDirector_ViewWrapperImpl::SWIG_Callback30_t callback30, SwigDirector_ViewWrapperImpl::SWIG_Callback31_t callback31, SwigDirector_ViewWrapperImpl::SWIG_Callback32_t callback32, SwigDirector_ViewWrapperImpl::SWIG_Callback33_t callback33, SwigDirector_ViewWrapperImpl::SWIG_Callback34_t callback34, SwigDirector_ViewWrapperImpl::SWIG_Callback35_t callback35, SwigDirector_ViewWrapperImpl::SWIG_Callback36_t callback36, SwigDirector_ViewWrapperImpl::SWIG_Callback37_t callback37, SwigDirector_ViewWrapperImpl::SWIG_Callback38_t callback38, SwigDirector_ViewWrapperImpl::SWIG_Callback39_t callback39, SwigDirector_ViewWrapperImpl::SWIG_Callback40_t callback40) { + Dali::Toolkit::Internal::ControlWrapper *obj = (Dali::Toolkit::Internal::ControlWrapper *)objarg; + SwigDirector_ViewWrapperImpl *director = dynamic_cast(obj); + if (director) { + director->swig_connect_director(callback0, callback1, callback2, callback3, callback4, callback5, callback6, callback7, callback8, callback9, callback10, callback11, callback12, callback13, callback14, callback15, callback16, callback17, callback18, callback19, callback20, callback21, callback22, callback23, callback24, callback25, callback26, callback27, callback28, callback29, callback30, callback31, callback32, callback33, callback34, callback35, callback36, callback37, callback38, callback39, callback40); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_GetControlWrapperImpl__SWIG_0(void * jarg1) { + void * jresult ; + Dali::Toolkit::ControlWrapper *arg1 = 0 ; + Dali::Toolkit::Internal::ControlWrapper *result = 0 ; + + arg1 = (Dali::Toolkit::ControlWrapper *)jarg1; + if (!arg1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ControlWrapper & type is null", 0); + return 0; + } + { + try { + result = (Dali::Toolkit::Internal::ControlWrapper *) &Dali::Toolkit::GetControlWrapperImpl(*arg1); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ViewWrapper_New(void * jarg1) { + void * jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = 0 ; + Dali::Toolkit::ControlWrapper result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + if (!arg1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Internal::ControlWrapper & type is null", 0); + return 0; + } + { + try { + result = Dali::Toolkit::ControlWrapper::New(*arg1); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = new Dali::Toolkit::ControlWrapper((const Dali::Toolkit::ControlWrapper &)result); + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ViewWrapper__SWIG_0() { + void * jresult ; + Dali::Toolkit::ControlWrapper *result = 0 ; + + { + try { + result = (Dali::Toolkit::ControlWrapper *)new Dali::Toolkit::ControlWrapper(); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ViewWrapper(void * jarg1) { + Dali::Toolkit::ControlWrapper *arg1 = (Dali::Toolkit::ControlWrapper *) 0 ; + + arg1 = (Dali::Toolkit::ControlWrapper *)jarg1; + { + try { + delete arg1; + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ViewWrapper__SWIG_1(void * jarg1) { + void * jresult ; + Dali::Toolkit::ControlWrapper *arg1 = 0 ; + Dali::Toolkit::ControlWrapper *result = 0 ; + + arg1 = (Dali::Toolkit::ControlWrapper *)jarg1; + if (!arg1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ControlWrapper const & type is null", 0); + return 0; + } + { + try { + result = (Dali::Toolkit::ControlWrapper *)new Dali::Toolkit::ControlWrapper((Dali::Toolkit::ControlWrapper const &)*arg1); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ViewWrapper_Assign(void * jarg1, void * jarg2) { + void * jresult ; + Dali::Toolkit::ControlWrapper *arg1 = (Dali::Toolkit::ControlWrapper *) 0 ; + Dali::Toolkit::ControlWrapper *arg2 = 0 ; + Dali::Toolkit::ControlWrapper *result = 0 ; + + arg1 = (Dali::Toolkit::ControlWrapper *)jarg1; + arg2 = (Dali::Toolkit::ControlWrapper *)jarg2; + if (!arg2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::ControlWrapper const & type is null", 0); + return 0; + } + { + try { + result = (Dali::Toolkit::ControlWrapper *) &(arg1)->operator =((Dali::Toolkit::ControlWrapper const &)*arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_ViewWrapper_DownCast(void * jarg1) { + void * jresult ; + Dali::BaseHandle arg1 ; + Dali::BaseHandle *argp1 ; + Dali::Toolkit::ControlWrapper result; + + argp1 = (Dali::BaseHandle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::BaseHandle", 0); + return 0; + } + arg1 = *argp1; + { + try { + result = Dali::Toolkit::ControlWrapper::DownCast(arg1); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = new Dali::Toolkit::ControlWrapper((const Dali::Toolkit::ControlWrapper &)result); + return jresult; +} + +SWIGEXPORT Dali::Toolkit::Internal::Control * SWIGSTDCALL CSharp_Dali_ViewWrapperImpl_SWIGUpcast(Dali::Toolkit::Internal::ControlWrapper *jarg1) { + return (Dali::Toolkit::Internal::Control *)jarg1; +} + +SWIGEXPORT Dali::Toolkit::Control * SWIGSTDCALL CSharp_Dali_ViewWrapper_SWIGUpcast(Dali::Toolkit::ControlWrapper *jarg1) { + return (Dali::Toolkit::Control *)jarg1; +} + +SWIGEXPORT void SWIGSTDCALL CSharp_ViewWrapperImpl_RelayoutRequest(void * jarg1) { + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + { + try { + (arg1)->RelayoutRequest(); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + + +SWIGEXPORT float SWIGSTDCALL CSharp_ViewWrapperImpl_GetHeightForWidthBase(void * jarg1, float jarg2) { + float jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + float arg2 ; + float result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (float)jarg2; + { + try { + result = (float)(arg1)->GetHeightForWidthBase(arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = result; + return jresult; +} + + +SWIGEXPORT float SWIGSTDCALL CSharp_ViewWrapperImpl_GetWidthForHeightBase(void * jarg1, float jarg2) { + float jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + float arg2 ; + float result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (float)jarg2; + { + try { + result = (float)(arg1)->GetWidthForHeightBase(arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = result; + return jresult; +} + + +SWIGEXPORT float SWIGSTDCALL CSharp_ViewWrapperImpl_CalculateChildSizeBase(void * jarg1, void * jarg2, int jarg3) { + float jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Actor *arg2 = 0 ; + Dali::Dimension::Type arg3 ; + float result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Actor *)jarg2; + if (!arg2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Actor const & type is null", 0); + return 0; + } + arg3 = (Dali::Dimension::Type)jarg3; + { + try { + result = (float)(arg1)->CalculateChildSizeBase((Dali::Actor const &)*arg2,arg3); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ViewWrapperImpl_RelayoutDependentOnChildrenBase__SWIG_0(void * jarg1, int jarg2) { + unsigned int jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Dimension::Type arg2 ; + bool result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Dimension::Type)jarg2; + { + try { + result = (bool)(arg1)->RelayoutDependentOnChildrenBase(arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ViewWrapperImpl_RelayoutDependentOnChildrenBase__SWIG_1(void * jarg1) { + unsigned int jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + bool result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + { + try { + result = (bool)(arg1)->RelayoutDependentOnChildrenBase(); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = result; + return jresult; +} + +SWIGEXPORT void SWIGSTDCALL CSharp_ViewWrapperImpl_RegisterVisual__SWIG_0(void * jarg1, int jarg2, void * jarg3) { + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Property::Index arg2 ; + Dali::Toolkit::Visual::Base *arg3 = 0 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Property::Index)jarg2; + arg3 = (Dali::Toolkit::Visual::Base *)jarg3; + if (!arg3) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Visual::Base & type is null", 0); + return ; + } + { + try { + (arg1)->RegisterVisual(arg2,*arg3); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ViewWrapperImpl_RegisterVisual__SWIG_1(void * jarg1, int jarg2, void * jarg3, unsigned int jarg4) { + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Property::Index arg2 ; + Dali::Toolkit::Visual::Base *arg3 = 0 ; + bool arg4 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Property::Index)jarg2; + arg3 = (Dali::Toolkit::Visual::Base *)jarg3; + if (!arg3) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::Visual::Base & type is null", 0); + return ; + } + arg4 = jarg4 ? true : false; + { + try { + (arg1)->RegisterVisual(arg2,*arg3,arg4); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ViewWrapperImpl_UnregisterVisual(void * jarg1, int jarg2) { + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Property::Index arg2 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Property::Index)jarg2; + { + try { + (arg1)->UnregisterVisual(arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_ViewWrapperImpl_GetVisual(void * jarg1, int jarg2) { + void * jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Property::Index arg2 ; + Dali::Toolkit::Visual::Base result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Property::Index)jarg2; + { + try { + result = ((Dali::Toolkit::Internal::ControlWrapper const *)arg1)->GetVisual(arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = new Dali::Toolkit::Visual::Base((const Dali::Toolkit::Visual::Base &)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ViewWrapperImpl_EnableVisual(void * jarg1, int jarg2, unsigned int jarg3) { + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Property::Index arg2 ; + bool arg3 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Property::Index)jarg2; + arg3 = jarg3 ? true : false; + { + try { + (arg1)->EnableVisual(arg2,arg3); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_ViewWrapperImpl_IsVisualEnabled(void * jarg1, int jarg2) { + unsigned int jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Property::Index arg2 ; + bool result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Property::Index)jarg2; + { + try { + result = (bool)((Dali::Toolkit::Internal::ControlWrapper const *)arg1)->IsVisualEnabled(arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = result; + return jresult; +} + +SWIGEXPORT void * SWIGSTDCALL CSharp_ViewWrapperImpl_CreateTransition(void * jarg1, void * jarg2) { + void * jresult ; + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + Dali::Toolkit::TransitionData *arg2 = 0 ; + Dali::Animation result; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = (Dali::Toolkit::TransitionData *)jarg2; + if (!arg2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Toolkit::TransitionData const & type is null", 0); + return 0; + } + { + try { + result = (arg1)->CreateTransition((Dali::Toolkit::TransitionData const &)*arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; + }; + } + } + jresult = new Dali::Animation((const Dali::Animation &)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_ViewWrapperImpl_EmitKeyInputFocusSignal(void * jarg1, unsigned int jarg2) { + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + bool arg2 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + arg2 = jarg2 ? true : false; + { + try { + (arg1)->EmitKeyInputFocusSignal(arg2); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ViewWrapperImpl_ApplyThemeStyle(void * jarg1) { + Dali::Toolkit::Internal::ControlWrapper *arg1 = (Dali::Toolkit::Internal::ControlWrapper *) 0 ; + + arg1 = (Dali::Toolkit::Internal::ControlWrapper *)jarg1; + { + try { + (arg1)->ApplyThemeStyle(); + } catch (std::out_of_range& e) { + { + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return ; + }; + } catch (std::exception& e) { + { + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return ; + }; + } catch (...) { + { + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return ; + }; + } + } +} + + +#ifdef __cplusplus +} +#endif diff --git a/plugins/dali-swig/manual/cpp/view-wrapper-impl-wrap.h b/plugins/dali-swig/manual/cpp/view-wrapper-impl-wrap.h new file mode 100644 index 0000000..f95d74a --- /dev/null +++ b/plugins/dali-swig/manual/cpp/view-wrapper-impl-wrap.h @@ -0,0 +1,235 @@ +#ifndef CSHARP_VIEW_WRAPPER_IMPL_H +#define CSHARP_VIEW_WRAPPER_IMPL_H + +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +#include "common.h" + +class SwigDirector_ViewWrapperImpl : public Dali::Toolkit::Internal::ControlWrapper +{ +public: + + SwigDirector_ViewWrapperImpl(Dali::Toolkit::Internal::ControlWrapper::CustomControlBehaviour behaviourFlags); + virtual ~SwigDirector_ViewWrapperImpl(); + virtual void OnStageConnection(int depth); + virtual void OnStageConnectionSwigPublic(int depth) + { + Dali::Toolkit::Internal::Control::OnStageConnection(depth); + } + virtual void OnStageDisconnection(); + virtual void OnStageDisconnectionSwigPublic() + { + Dali::Toolkit::Internal::Control::OnStageDisconnection(); + } + virtual void OnChildAdd(Dali::Actor &child); + virtual void OnChildAddSwigPublic(Dali::Actor &child) + { + Dali::Toolkit::Internal::Control::OnChildAdd(child); + } + virtual void OnChildRemove(Dali::Actor &child); + virtual void OnChildRemoveSwigPublic(Dali::Actor &child) + { + Dali::Toolkit::Internal::Control::OnChildRemove(child); + } + virtual void OnPropertySet(Dali::Property::Index index, Dali::Property::Value propertyValue); + virtual void OnSizeSet(Dali::Vector3 const &targetSize); + virtual void OnSizeSetSwigPublic(Dali::Vector3 const &targetSize) + { + Dali::Toolkit::Internal::Control::OnSizeSet(targetSize); + } + virtual void OnSizeAnimation(Dali::Animation &animation, Dali::Vector3 const &targetSize); + virtual void OnSizeAnimationSwigPublic(Dali::Animation &animation, Dali::Vector3 const &targetSize) + { + Dali::Toolkit::Internal::Control::OnSizeAnimation(animation,targetSize); + } + virtual bool OnTouchEvent(Dali::TouchEvent const &event); + virtual bool OnTouchEventSwigPublic(Dali::TouchEvent const &event) + { + return Dali::Toolkit::Internal::Control::OnTouchEvent(event); + } + virtual bool OnHoverEvent(Dali::HoverEvent const &event); + virtual bool OnHoverEventSwigPublic(Dali::HoverEvent const &event) + { + return Dali::Toolkit::Internal::Control::OnHoverEvent(event); + } + virtual bool OnKeyEvent(Dali::KeyEvent const &event); + virtual bool OnKeyEventSwigPublic(Dali::KeyEvent const &event) + { + return Dali::Toolkit::Internal::Control::OnKeyEvent(event); + } + virtual bool OnWheelEvent(Dali::WheelEvent const &event); + virtual bool OnWheelEventSwigPublic(Dali::WheelEvent const &event) + { + return Dali::Toolkit::Internal::Control::OnWheelEvent(event); + } + virtual void OnRelayout(Dali::Vector2 const &size, Dali::RelayoutContainer &container); + virtual void OnRelayoutSwigPublic(Dali::Vector2 const &size, Dali::RelayoutContainer &container) + { + Dali::Toolkit::Internal::Control::OnRelayout(size,container); + } + virtual void OnSetResizePolicy(Dali::ResizePolicy::Type policy, Dali::Dimension::Type dimension); + virtual void OnSetResizePolicySwigPublic(Dali::ResizePolicy::Type policy, Dali::Dimension::Type dimension) + { + Dali::Toolkit::Internal::Control::OnSetResizePolicy(policy,dimension); + } + virtual Dali::Vector3 GetNaturalSize(); + virtual Dali::Vector3 GetNaturalSizeSwigPublic() + { + return Dali::Toolkit::Internal::Control::GetNaturalSize(); + } + virtual float CalculateChildSize(Dali::Actor const &child, Dali::Dimension::Type dimension); + virtual float CalculateChildSizeSwigPublic(Dali::Actor const &child, Dali::Dimension::Type dimension) + { + return Dali::Toolkit::Internal::Control::CalculateChildSize(child,dimension); + } + virtual float GetHeightForWidth(float width); + virtual float GetHeightForWidthSwigPublic(float width) + { + return Dali::Toolkit::Internal::Control::GetHeightForWidth(width); + } + virtual float GetWidthForHeight(float height); + virtual float GetWidthForHeightSwigPublic(float height) + { + return Dali::Toolkit::Internal::Control::GetWidthForHeight(height); + } + virtual bool RelayoutDependentOnChildren(Dali::Dimension::Type dimension = Dali::Dimension::ALL_DIMENSIONS); + virtual bool RelayoutDependentOnChildrenSwigPublic(Dali::Dimension::Type dimension = Dali::Dimension::ALL_DIMENSIONS) + { + return Dali::Toolkit::Internal::Control::RelayoutDependentOnChildren(dimension); + } + virtual void OnCalculateRelayoutSize(Dali::Dimension::Type dimension); + virtual void OnCalculateRelayoutSizeSwigPublic(Dali::Dimension::Type dimension) + { + Dali::Toolkit::Internal::Control::OnCalculateRelayoutSize(dimension); + } + virtual void OnLayoutNegotiated(float size, Dali::Dimension::Type dimension); + virtual void OnLayoutNegotiatedSwigPublic(float size, Dali::Dimension::Type dimension) + { + Dali::Toolkit::Internal::Control::OnLayoutNegotiated(size,dimension); + } + virtual void OnInitialize(); + virtual void OnControlChildAdd(Dali::Actor &child); + virtual void OnControlChildRemove(Dali::Actor &child); + virtual void OnStyleChange(Dali::Toolkit::StyleManager styleManager, Dali::StyleChange::Type change); + virtual bool OnAccessibilityActivated(); + virtual bool OnAccessibilityPan(Dali::PanGesture gesture); + virtual bool OnAccessibilityTouch(Dali::TouchEvent const &touchEvent); + virtual bool OnAccessibilityValueChange(bool isIncrease); + virtual bool OnAccessibilityZoom(); + virtual void OnKeyInputFocusGained(); + virtual void OnKeyInputFocusLost(); + virtual Dali::Actor GetNextKeyboardFocusableActor(Dali::Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction, bool loopEnabled); + virtual void OnKeyboardFocusChangeCommitted(Dali::Actor commitedFocusableActor); + virtual bool OnKeyboardEnter(); + virtual void OnPinch(Dali::PinchGesture const &pinch); + virtual void OnPan(Dali::PanGesture const &pan); + virtual void OnTap(Dali::TapGesture const &tap); + virtual void OnLongPress(Dali::LongPressGesture const &longPress); + virtual void SignalConnected(Dali::SlotObserver *slotObserver, Dali::CallbackBase *callback); + virtual void SignalDisconnected(Dali::SlotObserver *slotObserver, Dali::CallbackBase *callback); + virtual Dali::Toolkit::Internal::Control::Extension *GetControlExtension(); + + typedef void (SWIGSTDCALL* SWIG_Callback0_t)(int); + typedef void (SWIGSTDCALL* SWIG_Callback1_t)(); + typedef void (SWIGSTDCALL* SWIG_Callback2_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback3_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback4_t)(int, void *); + typedef void (SWIGSTDCALL* SWIG_Callback5_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback6_t)(void *, void *); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback7_t)(void *); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback8_t)(void *); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback9_t)(void *); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback10_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback11_t)(void *, void *); + typedef void (SWIGSTDCALL* SWIG_Callback12_t)(int, int); + typedef void * (SWIGSTDCALL* SWIG_Callback13_t)(); + typedef float (SWIGSTDCALL* SWIG_Callback14_t)(void *, int); + typedef float (SWIGSTDCALL* SWIG_Callback15_t)(float); + typedef float (SWIGSTDCALL* SWIG_Callback16_t)(float); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback17_t)(int); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback18_t)(); + typedef void (SWIGSTDCALL* SWIG_Callback19_t)(int); + typedef void (SWIGSTDCALL* SWIG_Callback20_t)(float, int); + typedef void (SWIGSTDCALL* SWIG_Callback21_t)(); + typedef void (SWIGSTDCALL* SWIG_Callback22_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback23_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback24_t)(void *, int); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback25_t)(); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback26_t)(void *); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback27_t)(void *); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback28_t)(unsigned int); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback29_t)(); + typedef void (SWIGSTDCALL* SWIG_Callback30_t)(); + typedef void (SWIGSTDCALL* SWIG_Callback31_t)(); + typedef void * (SWIGSTDCALL* SWIG_Callback32_t)(void *, int, unsigned int); + typedef void (SWIGSTDCALL* SWIG_Callback33_t)(void *); + typedef unsigned int (SWIGSTDCALL* SWIG_Callback34_t)(); + typedef void (SWIGSTDCALL* SWIG_Callback35_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback36_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback37_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback38_t)(void *); + typedef void (SWIGSTDCALL* SWIG_Callback39_t)(void *, void *); + typedef void (SWIGSTDCALL* SWIG_Callback40_t)(void *, void *); + void swig_connect_director(SWIG_Callback0_t callbackOnStageConnection, SWIG_Callback1_t callbackOnStageDisconnection, SWIG_Callback2_t callbackOnChildAdd, SWIG_Callback3_t callbackOnChildRemove, SWIG_Callback4_t callbackOnPropertySet, SWIG_Callback5_t callbackOnSizeSet, SWIG_Callback6_t callbackOnSizeAnimation, SWIG_Callback7_t callbackOnTouchEvent, SWIG_Callback8_t callbackOnHoverEvent, SWIG_Callback9_t callbackOnKeyEvent, SWIG_Callback10_t callbackOnWheelEvent, SWIG_Callback11_t callbackOnRelayout, SWIG_Callback12_t callbackOnSetResizePolicy, SWIG_Callback13_t callbackGetNaturalSize, SWIG_Callback14_t callbackCalculateChildSize, SWIG_Callback15_t callbackGetHeightForWidth, SWIG_Callback16_t callbackGetWidthForHeight, SWIG_Callback17_t callbackRelayoutDependentOnChildren__SWIG_0, SWIG_Callback18_t callbackRelayoutDependentOnChildren__SWIG_1, SWIG_Callback19_t callbackOnCalculateRelayoutSize, SWIG_Callback20_t callbackOnLayoutNegotiated, SWIG_Callback21_t callbackOnInitialize, SWIG_Callback22_t callbackOnControlChildAdd, SWIG_Callback23_t callbackOnControlChildRemove, SWIG_Callback24_t callbackOnStyleChange, SWIG_Callback25_t callbackOnAccessibilityActivated, SWIG_Callback26_t callbackOnAccessibilityPan, SWIG_Callback27_t callbackOnAccessibilityTouch, SWIG_Callback28_t callbackOnAccessibilityValueChange, SWIG_Callback29_t callbackOnAccessibilityZoom, SWIG_Callback30_t callbackOnKeyInputFocusGained, SWIG_Callback31_t callbackOnKeyInputFocusLost, SWIG_Callback32_t callbackGetNextKeyboardFocusableActor, SWIG_Callback33_t callbackOnKeyboardFocusChangeCommitted, SWIG_Callback34_t callbackOnKeyboardEnter, SWIG_Callback35_t callbackOnPinch, SWIG_Callback36_t callbackOnPan, SWIG_Callback37_t callbackOnTap, SWIG_Callback38_t callbackOnLongPress, SWIG_Callback39_t callbackSignalConnected, SWIG_Callback40_t callbackSignalDisconnected); + +private: + SWIG_Callback0_t swig_callbackOnStageConnection; + SWIG_Callback1_t swig_callbackOnStageDisconnection; + SWIG_Callback2_t swig_callbackOnChildAdd; + SWIG_Callback3_t swig_callbackOnChildRemove; + SWIG_Callback4_t swig_callbackOnPropertySet; + SWIG_Callback5_t swig_callbackOnSizeSet; + SWIG_Callback6_t swig_callbackOnSizeAnimation; + SWIG_Callback7_t swig_callbackOnTouchEvent; + SWIG_Callback8_t swig_callbackOnHoverEvent; + SWIG_Callback9_t swig_callbackOnKeyEvent; + SWIG_Callback10_t swig_callbackOnWheelEvent; + SWIG_Callback11_t swig_callbackOnRelayout; + SWIG_Callback12_t swig_callbackOnSetResizePolicy; + SWIG_Callback13_t swig_callbackGetNaturalSize; + SWIG_Callback14_t swig_callbackCalculateChildSize; + SWIG_Callback15_t swig_callbackGetHeightForWidth; + SWIG_Callback16_t swig_callbackGetWidthForHeight; + SWIG_Callback17_t swig_callbackRelayoutDependentOnChildren__SWIG_0; + SWIG_Callback18_t swig_callbackRelayoutDependentOnChildren__SWIG_1; + SWIG_Callback19_t swig_callbackOnCalculateRelayoutSize; + SWIG_Callback20_t swig_callbackOnLayoutNegotiated; + SWIG_Callback21_t swig_callbackOnInitialize; + SWIG_Callback22_t swig_callbackOnControlChildAdd; + SWIG_Callback23_t swig_callbackOnControlChildRemove; + SWIG_Callback24_t swig_callbackOnStyleChange; + SWIG_Callback25_t swig_callbackOnAccessibilityActivated; + SWIG_Callback26_t swig_callbackOnAccessibilityPan; + SWIG_Callback27_t swig_callbackOnAccessibilityTouch; + SWIG_Callback28_t swig_callbackOnAccessibilityValueChange; + SWIG_Callback29_t swig_callbackOnAccessibilityZoom; + SWIG_Callback30_t swig_callbackOnKeyInputFocusGained; + SWIG_Callback31_t swig_callbackOnKeyInputFocusLost; + SWIG_Callback32_t swig_callbackGetNextKeyboardFocusableActor; + SWIG_Callback33_t swig_callbackOnKeyboardFocusChangeCommitted; + SWIG_Callback34_t swig_callbackOnKeyboardEnter; + SWIG_Callback35_t swig_callbackOnPinch; + SWIG_Callback36_t swig_callbackOnPan; + SWIG_Callback37_t swig_callbackOnTap; + SWIG_Callback38_t swig_callbackOnLongPress; + SWIG_Callback39_t swig_callbackSignalConnected; + SWIG_Callback40_t swig_callbackSignalDisconnected; + void swig_init_callbacks(); +}; + +#endif /* CSHARP_VIEW_WRAPPER_IMPL_H */ diff --git a/plugins/dali-swig/manual/csharp/CustomView.cs b/plugins/dali-swig/manual/csharp/CustomView.cs new file mode 100644 index 0000000..f704885 --- /dev/null +++ b/plugins/dali-swig/manual/csharp/CustomView.cs @@ -0,0 +1,824 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +namespace Dali +{ + public class CustomView : ViewWrapper + { + public CustomView(ViewWrapperImpl.CustomViewBehaviour behaviour) : base(new ViewWrapperImpl(behaviour)) + { + // Registering CustomView virtual functions to viewWrapperImpl delegates. + viewWrapperImpl.OnStageConnection = new ViewWrapperImpl.OnStageConnectionDelegate(OnStageConnection); + viewWrapperImpl.OnStageDisconnection = new ViewWrapperImpl.OnStageDisconnectionDelegate(OnStageDisconnection); + viewWrapperImpl.OnChildAdd = new ViewWrapperImpl.OnChildAddDelegate(OnChildAdd); + viewWrapperImpl.OnChildRemove = new ViewWrapperImpl.OnChildRemoveDelegate(OnChildRemove); + viewWrapperImpl.OnPropertySet = new ViewWrapperImpl.OnPropertySetDelegate(OnPropertySet); + viewWrapperImpl.OnSizeSet = new ViewWrapperImpl.OnSizeSetDelegate(OnSizeSet); + viewWrapperImpl.OnSizeAnimation = new ViewWrapperImpl.OnSizeAnimationDelegate(OnSizeAnimation); + viewWrapperImpl.OnTouchEvent = new ViewWrapperImpl.OnTouchEventDelegate(OnTouchEvent); + viewWrapperImpl.OnHoverEvent = new ViewWrapperImpl.OnHoverEventDelegate(OnHoverEvent); + viewWrapperImpl.OnKeyEvent = new ViewWrapperImpl.OnKeyEventDelegate(OnKeyEvent); + viewWrapperImpl.OnWheelEvent = new ViewWrapperImpl.OnWheelEventDelegate(OnWheelEvent); + viewWrapperImpl.OnRelayout = new ViewWrapperImpl.OnRelayoutDelegate(OnRelayout); + viewWrapperImpl.OnSetResizePolicy = new ViewWrapperImpl.OnSetResizePolicyDelegate(OnSetResizePolicy); + viewWrapperImpl.GetNaturalSize = new ViewWrapperImpl.GetNaturalSizeDelegate(GetNaturalSize); + viewWrapperImpl.CalculateChildSize = new ViewWrapperImpl.CalculateChildSizeDelegate(CalculateChildSize); + viewWrapperImpl.GetHeightForWidth = new ViewWrapperImpl.GetHeightForWidthDelegate(GetHeightForWidth); + viewWrapperImpl.GetWidthForHeight = new ViewWrapperImpl.GetWidthForHeightDelegate(GetWidthForHeight); + viewWrapperImpl.RelayoutDependentOnChildrenDimension = new ViewWrapperImpl.RelayoutDependentOnChildrenDimensionDelegate(RelayoutDependentOnChildren); + viewWrapperImpl.RelayoutDependentOnChildren = new ViewWrapperImpl.RelayoutDependentOnChildrenDelegate(RelayoutDependentOnChildren); + viewWrapperImpl.OnCalculateRelayoutSize = new ViewWrapperImpl.OnCalculateRelayoutSizeDelegate(OnCalculateRelayoutSize); + viewWrapperImpl.OnLayoutNegotiated = new ViewWrapperImpl.OnLayoutNegotiatedDelegate(OnLayoutNegotiated); + viewWrapperImpl.OnControlChildAdd = new ViewWrapperImpl.OnControlChildAddDelegate(OnControlChildAdd); + viewWrapperImpl.OnControlChildRemove = new ViewWrapperImpl.OnControlChildRemoveDelegate(OnControlChildRemove); + viewWrapperImpl.OnStyleChange = new ViewWrapperImpl.OnStyleChangeDelegate(OnStyleChange); + viewWrapperImpl.OnAccessibilityActivated = new ViewWrapperImpl.OnAccessibilityActivatedDelegate(OnAccessibilityActivated); + viewWrapperImpl.OnAccessibilityPan = new ViewWrapperImpl.OnAccessibilityPanDelegate(OnAccessibilityPan); + viewWrapperImpl.OnAccessibilityTouch = new ViewWrapperImpl.OnAccessibilityTouchDelegate(OnAccessibilityTouch); + viewWrapperImpl.OnAccessibilityValueChange = new ViewWrapperImpl.OnAccessibilityValueChangeDelegate(OnAccessibilityValueChange); + viewWrapperImpl.OnAccessibilityZoom = new ViewWrapperImpl.OnAccessibilityZoomDelegate(OnAccessibilityZoom); + viewWrapperImpl.OnKeyInputFocusGained = new ViewWrapperImpl.OnKeyInputFocusGainedDelegate(OnKeyInputFocusGained); + viewWrapperImpl.OnKeyInputFocusLost = new ViewWrapperImpl.OnKeyInputFocusLostDelegate(OnKeyInputFocusLost); + viewWrapperImpl.GetNextKeyboardFocusableActor = new ViewWrapperImpl.GetNextKeyboardFocusableActorDelegate(GetNextKeyboardFocusableActor); + viewWrapperImpl.OnKeyboardFocusChangeCommitted = new ViewWrapperImpl.OnKeyboardFocusChangeCommittedDelegate(OnKeyboardFocusChangeCommitted); + viewWrapperImpl.OnKeyboardEnter = new ViewWrapperImpl.OnKeyboardEnterDelegate(OnKeyboardEnter); + viewWrapperImpl.OnPinch = new ViewWrapperImpl.OnPinchDelegate(OnPinch); + viewWrapperImpl.OnPan = new ViewWrapperImpl.OnPanDelegate(OnPan); + viewWrapperImpl.OnTap = new ViewWrapperImpl.OnTapDelegate(OnTap); + viewWrapperImpl.OnLongPress = new ViewWrapperImpl.OnLongPressDelegate(OnLongPress); + viewWrapperImpl.SignalConnected = new ViewWrapperImpl.SignalConnectedDelegate(SignalConnected); + viewWrapperImpl.SignalDisconnected = new ViewWrapperImpl.SignalDisconnectedDelegate(SignalDisconnected); + + // Make sure CustomView is initialized. + OnInitialize(); + + // Make sure the style of actors/visuals initialized above are applied by the style manager. + viewWrapperImpl.ApplyThemeStyle(); + } + + /** + * @brief Set the background with a property map. + * + * @param[in] map The background property map. + */ + public void SetBackground(Dali.Property.Map map) + { + viewWrapperImpl.SetBackground(map); + } + + /** + * @brief Allows deriving classes to enable any of the gesture detectors that are available. + * + * Gesture detection can be enabled one at a time or in bitwise format as shown: + * @code + * EnableGestureDetection(Gesture.Type.Pinch | Gesture.Type.Tap | Gesture.Type.Pan)); + * @endcode + * @param[in] type The gesture type(s) to enable. + */ + public void EnableGestureDetection(Gesture.Type type) + { + viewWrapperImpl.EnableGestureDetection(type); + } + + /** + * @brief Allows deriving classes to disable any of the gesture detectors. + * + * Like EnableGestureDetection, this can also be called using bitwise or. + * @param[in] type The gesture type(s) to disable. + * @see EnableGetureDetection + */ + public void DisableGestureDetection(Gesture.Type type) + { + viewWrapperImpl.DisableGestureDetection(type); + } + + /** + * @brief Sets whether this control supports two dimensional + * keyboard navigation (i.e. whether it knows how to handle the + * keyboard focus movement between its child actors). + * + * The control doesn't support it by default. + * @param[in] isSupported Whether this control supports two dimensional keyboard navigation. + */ + public void SetKeyboardNavigationSupport(bool isSupported) + { + viewWrapperImpl.SetKeyboardNavigationSupport(isSupported); + } + + /** + * @brief Gets whether this control supports two dimensional keyboard navigation. + * + * @return true if this control supports two dimensional keyboard navigation. + */ + public bool IsKeyboardNavigationSupported() + { + return viewWrapperImpl.IsKeyboardNavigationSupported(); + } + + /** + * @brief Sets whether this control is a focus group for keyboard navigation. + * + * (i.e. the scope of keyboard focus movement + * can be limitied to its child actors). The control is not a focus group by default. + * @param[in] isFocusGroup Whether this control is set as a focus group for keyboard navigation. + */ + public void SetAsKeyboardFocusGroup(bool isFocusGroup) + { + viewWrapperImpl.SetAsKeyboardFocusGroup(isFocusGroup); + } + + /** + * @brief Gets whether this control is a focus group for keyboard navigation. + * + * @return true if this control is set as a focus group for keyboard navigation. + */ + public bool IsKeyboardFocusGroup() + { + return viewWrapperImpl.IsKeyboardFocusGroup(); + } + + /** + * @brief Called by the AccessibilityManager to activate the Control. + * @SINCE_1_0.0 + */ + public void AccessibilityActivate() + { + viewWrapperImpl.AccessibilityActivate(); + } + + /** + * @brief Called by the KeyboardFocusManager. + */ + public void KeyboardEnter() + { + viewWrapperImpl.KeyboardEnter(); + } + + /** + * @brief Called by the KeyInputFocusManager to emit key event signals. + * + * @param[in] keyEvent The key event. + * @return True if the event was consumed. + */ + public bool EmitKeyEventSignal(KeyEvent keyEvent) + { + return viewWrapperImpl.EmitKeyEventSignal(keyEvent); + } + + /** + * @brief Request a relayout, which means performing a size negotiation on this actor, its parent and children (and potentially whole scene). + * + * This method can also be called from a derived class every time it needs a different size. + * At the end of event processing, the relayout process starts and + * all controls which requested Relayout will have their sizes (re)negotiated. + * + * @note RelayoutRequest() can be called multiple times; the size negotiation is still + * only performed once, i.e. there is no need to keep track of this in the calling side. + */ + protected void RelayoutRequest() + { + viewWrapperImpl.RelayoutRequest(); + } + + /** + * @brief Provides the Actor implementation of GetHeightForWidth. + * @param width Width to use. + * @return The height based on the width. + */ + protected float GetHeightForWidthBase(float width) + { + return viewWrapperImpl.GetHeightForWidthBase( width ); + } + + /** + * @brief Provides the Actor implementation of GetWidthForHeight. + * @param height Height to use. + * @return The width based on the height. + */ + protected float GetWidthForHeightBase(float height) + { + return viewWrapperImpl.GetWidthForHeightBase( height ); + } + + /** + * @brief Calculate the size for a child using the base actor object. + * + * @param[in] child The child actor to calculate the size for + * @param[in] dimension The dimension to calculate the size for. E.g. width or height + * @return Return the calculated size for the given dimension. If more than one dimension is requested, just return the first one found. + */ + protected float CalculateChildSizeBase(Actor child, DimensionType dimension) + { + return viewWrapperImpl.CalculateChildSizeBase( child, dimension ); + } + + /** + * @brief Determine if this actor is dependent on it's children for relayout from the base class. + * + * @param dimension The dimension(s) to check for + * @return Return if the actor is dependent on it's children. + */ + protected bool RelayoutDependentOnChildrenBase(DimensionType dimension) + { + return viewWrapperImpl.RelayoutDependentOnChildrenBase( dimension ); + } + + /** + * @brief Determine if this actor is dependent on it's children for relayout from the base class. + * + * @param dimension The dimension(s) to check for + * @return Return if the actor is dependent on it's children. + */ + protected bool RelayoutDependentOnChildrenBase() + { + return viewWrapperImpl.RelayoutDependentOnChildrenBase(); + } + + /** + * @brief Register a visual by Property Index, linking an Actor to visual when required. + * In the case of the visual being an actor or control deeming visual not required then visual should be an empty handle. + * No parenting is done during registration, this should be done by derived class. + * + * @param[in] index The Property index of the visual, used to reference visual + * @param[in] visual The visual to register + * @note Derived class should not call visual.SetOnStage(actor). It is the responsibility of the base class to connect/disconnect registered visual to stage. + * Use below API with enabled set to false if derived class wishes to control when visual is staged. + */ + protected void RegisterVisual(int index, VisualBase visual) + { + viewWrapperImpl.RegisterVisual( index, visual ); + } + + /** + * @brief Register a visual by Property Index, linking an Actor to visual when required. + * In the case of the visual being an actor or control deeming visual not required then visual should be an empty handle. + * If enabled is false then the visual is not set on stage until enabled by the derived class. + * @see EnableVisual + * + * @param[in] index The Property index of the visual, used to reference visual + * @param[in] visual The visual to register + * @param[in] enabled false if derived class wants to control when visual is set on stage. + * + */ + protected void RegisterVisual(int index, VisualBase visual, bool enabled) + { + viewWrapperImpl.RegisterVisual( index, visual, enabled ); + } + + /** + * @brief Erase the entry matching the given index from the list of registered visuals + * @param[in] index The Property index of the visual, used to reference visual + * + */ + protected void UnregisterVisual(int index) + { + viewWrapperImpl.UnregisterVisual( index ); + } + + /** + * @brief Retrieve the visual associated with the given property index. + * + * @param[in] index The Property index of the visual. + * @return The registered visual if exist, otherwise empty handle. + * @note For managing object life-cycle, do not store the returned visual as a member which increments its reference count. + */ + protected VisualBase GetVisual(int index) + { + return viewWrapperImpl.GetVisual( index ); + } + + /** + * @brief Sets the given visual to be displayed or not when parent staged. + * + * @param[in] index The Property index of the visual + * @param[in] enable flag to set enabled or disabled. + */ + protected void EnableVisual(int index, bool enable) + { + viewWrapperImpl.EnableVisual( index, enable ); + } + + /** + * @brief Queries if the given visual is to be displayed when parent staged. + * + * @param[in] index The Property index of the visual + * @return bool whether visual is enabled or not + */ + protected bool IsVisualEnabled(int index) + { + return viewWrapperImpl.IsVisualEnabled( index ); + } + + /** + * @brief Create a transition effect on the control. + * + * @param[in] transitionData The transition data describing the effect to create + * @return A handle to an animation defined with the given effect, or an empty + * handle if no properties match. + */ + protected Animation CreateTransition(TransitionData transitionData) + { + return viewWrapperImpl.CreateTransition( transitionData ); + } + + /** + * @brief Emits KeyInputFocusGained signal if true else emits KeyInputFocusLost signal + * + * Should be called last by the control after it acts on the Input Focus change. + * + * @param[in] focusGained True if gained, False if lost + */ + protected void EmitKeyInputFocusSignal(bool focusGained) + { + viewWrapperImpl.EmitKeyInputFocusSignal( focusGained ); + } + + /** + * @brief This method is called after the Control has been initialized. + * + * Derived classes should do any second phase initialization by overriding this method. + */ + public virtual void OnInitialize() + { + } + + /** + * @brief Called after the actor has been connected to the stage. + * + * When an actor is connected, it will be directly or indirectly parented to the root Actor. + * @param[in] depth The depth in the hierarchy for the actor + * + * @note The root Actor is provided automatically by Dali::Stage, and is always considered to be connected. + * When the parent of a set of actors is connected to the stage, then all of the children + * will received this callback. + * For the following actor tree, the callback order will be A, B, D, E, C, and finally F. + * + * @code + * + * A (parent) + * / \ + * B C + * / \ \ + * D E F + * + * @endcode + * @param[in] depth The depth in the hierarchy for the actor + */ + public virtual void OnStageConnection(int depth) + { + } + + /** + * @brief Called after the actor has been disconnected from Stage. + * + * If an actor is disconnected it either has no parent, or is parented to a disconnected actor. + * + * @note When the parent of a set of actors is disconnected to the stage, then all of the children + * will received this callback, starting with the leaf actors. + * For the following actor tree, the callback order will be D, E, B, F, C, and finally A. + * + * @code + * + * A (parent) + * / \ + * B C + * / \ \ + * D E F + * + * @endcode + */ + public virtual void OnStageDisconnection() + { + } + + /** + * @brief Called after a child has been added to the owning actor. + * + * @param[in] child The child which has been added + */ + public virtual void OnChildAdd(Actor actor) + { + } + + /** + * @brief Called after the owning actor has attempted to remove a child( regardless of whether it succeeded or not ). + * + * @param[in] child The child being removed + */ + public virtual void OnChildRemove(Actor actor) + { + } + + /** + * @brief Called when the owning actor property is set. + * + * @param[in] index The Property index that was set + * @param[in] propertyValue The value to set + */ + public virtual void OnPropertySet(int index, Dali.Property.Value propertyValue) + { + } + + /** + * @brief Called when the owning actor's size is set e.g. using Actor::SetSize(). + * + * @param[in] targetSize The target size. Note that this target size may not match the size returned via Actor.GetTargetSize. + */ + public virtual void OnSizeSet(Vector3 targetSize) + { + } + + /** + * @brief Called when the owning actor's size is animated e.g. using Animation::AnimateTo( Property( actor, Actor::Property::SIZE ), ... ). + * + * @param[in] animation The object which is animating the owning actor. + * @param[in] targetSize The target size. Note that this target size may not match the size returned via @ref Actor.GetTargetSize. + */ + public virtual void OnSizeAnimation(Animation animation, Vector3 targetSize) + { + } + + /** + * @DEPRECATED_1_1.37 Connect to TouchSignal() instead. + * + * @brief Called after a touch-event is received by the owning actor. + * + * @param[in] event The touch event + * @return True if the event should be consumed. + * @note CustomViewBehaviour.REQUIRES_TOUCH_EVENTS must be enabled during construction. See CustomView(ViewWrapperImpl.CustomViewBehaviour behaviour). + */ + public virtual bool OnTouchEvent(TouchEvent touchEvent) + { + return false; // Do not consume + } + + /** + * @brief Called after a hover-event is received by the owning actor. + * + * @param[in] event The hover event + * @return True if the event should be consumed. + * @note CustomViewBehaviour.REQUIRES_HOVER_EVENTS must be enabled during construction. See CustomView(ViewWrapperImpl.CustomViewBehaviour behaviour). + */ + public virtual bool OnHoverEvent(HoverEvent hoverEvent) + { + return false; // Do not consume + } + + /** + * @brief Called after a key-event is received by the actor that has had its focus set. + * + * @param[in] event the Key Event + * @return True if the event should be consumed. + */ + public virtual bool OnKeyEvent(KeyEvent keyEvent) + { + return false; // Do not consume + } + + /** + * @brief Called after a wheel-event is received by the owning actor. + * + * @param[in] event The wheel event + * @return True if the event should be consumed. + * @note CustomViewBehaviour.REQUIRES_WHEEL_EVENTS must be enabled during construction. See CustomView(ViewWrapperImpl.CustomViewBehaviour behaviour). + */ + public virtual bool OnWheelEvent(WheelEvent wheelEvent) + { + return false; // Do not consume + } + + /** + * @brief Called after the size negotiation has been finished for this control. + * + * The control is expected to assign this given size to itself/its children. + * + * Should be overridden by derived classes if they need to layout + * actors differently after certain operations like add or remove + * actors, resize or after changing specific properties. + * + * @param[in] size The allocated size. + * @param[in,out] container The control should add actors to this container that it is not able + * to allocate a size for. + * @note As this function is called from inside the size negotiation algorithm, you cannot + * call RequestRelayout (the call would just be ignored). + */ + public virtual void OnRelayout(Vector2 size, RelayoutContainer container) + { + } + + /** + * @brief Notification for deriving classes + * + * @param[in] policy The policy being set + * @param[in] dimension The dimension the policy is being set for + */ + public virtual void OnSetResizePolicy(ResizePolicyType policy, DimensionType dimension) + { + } + + /** + * @brief Return the natural size of the actor. + * + * @return The actor's natural size + */ + public virtual Vector3 GetNaturalSize() + { + return new Vector3(0.0f, 0.0f, 0.0f); + } + + /** + * @brief Calculate the size for a child. + * + * @param[in] child The child actor to calculate the size for + * @param[in] dimension The dimension to calculate the size for. E.g. width or height. + * @return Return the calculated size for the given dimension. + */ + public virtual float CalculateChildSize(Actor child, DimensionType dimension) + { + return viewWrapperImpl.CalculateChildSizeBase( child, dimension ); + } + + /** + * @brief This method is called during size negotiation when a height is required for a given width. + * + * Derived classes should override this if they wish to customize the height returned. + * + * @param width Width to use. + * @return The height based on the width. + */ + public virtual float GetHeightForWidth(float width) + { + return viewWrapperImpl.GetHeightForWidthBase( width ); + } + + /** + * @brief This method is called during size negotiation when a width is required for a given height. + * + * Derived classes should override this if they wish to customize the width returned. + * + * @param height Height to use. + * @return The width based on the width. + */ + public virtual float GetWidthForHeight(float height) + { + return viewWrapperImpl.GetWidthForHeightBase( height ); + } + + /** + * @brief Determine if this actor is dependent on it's children for relayout. + * + * @param dimension The dimension(s) to check for + * @return Return if the actor is dependent on it's children. + */ + public virtual bool RelayoutDependentOnChildren(DimensionType dimension) + { + return viewWrapperImpl.RelayoutDependentOnChildrenBase( dimension ); + } + + /** + * @brief Determine if this actor is dependent on it's children for relayout from the base class. + * + * @return Return if the actor is dependent on it's children. + */ + public virtual bool RelayoutDependentOnChildren() + { + return viewWrapperImpl.RelayoutDependentOnChildrenBase(); + } + + /** + * @brief Virtual method to notify deriving classes that relayout dependencies have been + * met and the size for this object is about to be calculated for the given dimension + * + * @param dimension The dimension that is about to be calculated + */ + public virtual void OnCalculateRelayoutSize(DimensionType dimension) + { + } + + /** + * @brief Virtual method to notify deriving classes that the size for a dimension + * has just been negotiated + * + * @param[in] size The new size for the given dimension + * @param[in] dimension The dimension that was just negotiated + */ + public virtual void OnLayoutNegotiated(float size, DimensionType dimension) + { + } + + /** + * @brief This method should be overridden by deriving classes requiring notifications when the style changes. + * + * @param[in] styleManager The StyleManager object. + * @param[in] change Information denoting what has changed. + */ + public virtual void OnStyleChange(StyleManager styleManager, StyleChangeType change) + { + } + + /** + * @brief This method is called when the control is accessibility activated. + * + * Derived classes should override this to perform custom accessibility activation. + * @return true if this control can perform accessibility activation. + */ + public virtual bool OnAccessibilityActivated() + { + return false; + } + + /** + * @brief This method should be overridden by deriving classes when they wish to respond the accessibility + * pan gesture. + * + * @param[in] gesture The pan gesture. + * @return true if the pan gesture has been consumed by this control + */ + public virtual bool OnAccessibilityPan(PanGesture gestures) + { + return false; + } + + /** + * @brief This method should be overridden by deriving classes when they wish to respond the accessibility + * touch event. + * + * @param[in] touchEvent The touch event. + * @return true if the touch event has been consumed by this control + */ + public virtual bool OnAccessibilityTouch(TouchEvent touchEvent) + { + return false; + } + + /** + * @brief This method should be overridden by deriving classes when they wish to respond + * the accessibility up and down action (i.e. value change of slider control). + * + * @param[in] isIncrease Whether the value should be increased or decreased + * @return true if the value changed action has been consumed by this control + */ + public virtual bool OnAccessibilityValueChange(bool isIncrease) + { + return false; + } + + /** + * @brief This method should be overridden by deriving classes when they wish to respond + * the accessibility zoom action. + * + * @return true if the zoom action has been consumed by this control + */ + public virtual bool OnAccessibilityZoom() + { + return false; + } + + /** + * @brief This method should be overridden by deriving classes when they wish to respond + * the accessibility zoom action. + * + * @return true if the zoom action has been consumed by this control + */ + public virtual void OnKeyInputFocusGained() + { + } + + /** + * @brief Called when the control loses key input focus. + * + * Should be overridden by derived classes if they need to customize what happens when focus is lost. + */ + public virtual void OnKeyInputFocusLost() + { + } + + /** + * @brief Gets the next keyboard focusable actor in this control towards the given direction. + * + * A control needs to override this function in order to support two dimensional keyboard navigation. + * @param[in] currentFocusedActor The current focused actor. + * @param[in] direction The direction to move the focus towards. + * @param[in] loopEnabled Whether the focus movement should be looped within the control. + * @return the next keyboard focusable actor in this control or an empty handle if no actor can be focused. + */ + public virtual Actor GetNextKeyboardFocusableActor(Actor currentFocusedActor, View.KeyboardFocus.Direction direction, bool loopEnabled) + { + return new Actor(); + } + + /** + * @brief Informs this control that its chosen focusable actor will be focused. + * + * This allows the application to preform any actions if wishes + * before the focus is actually moved to the chosen actor. + * + * @param[in] commitedFocusableActor The commited focusable actor. + */ + public virtual void OnKeyboardFocusChangeCommitted(Actor commitedFocusableActor) + { + } + + /** + * @brief This method is called when the control has enter pressed on it. + * + * Derived classes should override this to perform custom actions. + * @return true if this control supported this action. + */ + public virtual bool OnKeyboardEnter() + { + return false; + } + + /** + * @brief Called whenever a pinch gesture is detected on this control. + * + * This can be overridden by deriving classes when pinch detection + * is enabled. The default behaviour is to scale the control by the + * pinch scale. + * + * @param[in] pinch The pinch gesture. + * @note If overridden, then the default behaviour will not occur. + * @note Pinch detection should be enabled via EnableGestureDetection(). + * @see EnableGestureDetection + */ + public virtual void OnPinch(PinchGesture pinch) + { + } + + /** + * @brief Called whenever a pan gesture is detected on this control. + * + * This should be overridden by deriving classes when pan detection + * is enabled. + * + * @param[in] pan The pan gesture. + * @note There is no default behaviour with panning. + * @note Pan detection should be enabled via EnableGestureDetection(). + * @see EnableGestureDetection + */ + public virtual void OnPan(PanGesture pan) + { + } + + /** + * @brief Called whenever a tap gesture is detected on this control. + * + * This should be overridden by deriving classes when tap detection + * is enabled. + * + * @param[in] tap The tap gesture. + * @note There is no default behaviour with a tap. + * @note Tap detection should be enabled via EnableGestureDetection(). + * @see EnableGestureDetection + */ + public virtual void OnTap(TapGesture tap) + { + } + + /** + * @brief Called whenever a long press gesture is detected on this control. + * + * This should be overridden by deriving classes when long press + * detection is enabled. + * + * @param[in] longPress The long press gesture. + * @note There is no default behaviour associated with a long press. + * @note Long press detection should be enabled via EnableGestureDetection(). + * @see EnableGestureDetection + */ + public virtual void OnLongPress(LongPressGesture longPress) + { + } + + private void SignalConnected(SlotObserver slotObserver, SWIGTYPE_p_Dali__CallbackBase callback) + { + } + + private void SignalDisconnected(SlotObserver slotObserver, SWIGTYPE_p_Dali__CallbackBase callback) + { + } + + private void OnControlChildAdd(Actor child) + { + } + + private void OnControlChildRemove(Actor child) + { + } + } +} diff --git a/plugins/dali-swig/manual/csharp/DaliEventHandler.cs b/plugins/dali-swig/manual/csharp/DaliEventHandler.cs index a7de698..80becbf 100644 --- a/plugins/dali-swig/manual/csharp/DaliEventHandler.cs +++ b/plugins/dali-swig/manual/csharp/DaliEventHandler.cs @@ -1,12 +1,28 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ namespace Dali { - using System; - using System.Runtime.InteropServices; + using System; + using System.Runtime.InteropServices; - [UnmanagedFunctionPointer(CallingConvention.StdCall)] - public delegate void DaliEventHandler(T source, U e); + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + public delegate void DaliEventHandler(T source, U e); - [UnmanagedFunctionPointer(CallingConvention.StdCall)] - public delegate R DaliEventHandlerWithReturnType(T source, U e); + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + public delegate R DaliEventHandlerWithReturnType(T source, U e); } diff --git a/plugins/dali-swig/manual/csharp/KeyboardFocusManager.cs b/plugins/dali-swig/manual/csharp/KeyboardFocusManager.cs index c02f122..6509966 100644 --- a/plugins/dali-swig/manual/csharp/KeyboardFocusManager.cs +++ b/plugins/dali-swig/manual/csharp/KeyboardFocusManager.cs @@ -1,3 +1,20 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + namespace Dali { using System; diff --git a/plugins/dali-swig/manual/csharp/KeyboardPreFocusChangeSignal.cs b/plugins/dali-swig/manual/csharp/KeyboardPreFocusChangeSignal.cs index 3556ffc..5980e96 100644 --- a/plugins/dali-swig/manual/csharp/KeyboardPreFocusChangeSignal.cs +++ b/plugins/dali-swig/manual/csharp/KeyboardPreFocusChangeSignal.cs @@ -1,3 +1,20 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + using System; namespace Dali { diff --git a/plugins/dali-swig/manual/csharp/ManualPINVOKE.cs b/plugins/dali-swig/manual/csharp/ManualPINVOKE.cs index 48196e3..782ad37 100644 --- a/plugins/dali-swig/manual/csharp/ManualPINVOKE.cs +++ b/plugins/dali-swig/manual/csharp/ManualPINVOKE.cs @@ -1,85 +1,187 @@ -namespace Dali { +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ -class NDalicManualPINVOKE { +namespace Dali +{ + class NDalicManualPINVOKE + { + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_new_KeyboardFocusManager")] + public static extern global::System.IntPtr new_KeyboardFocusManager(); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_new_KeyboardFocusManager")] - public static extern global::System.IntPtr new_KeyboardFocusManager(); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_delete_KeyboardFocusManager")] + public static extern void delete_KeyboardFocusManager(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_delete_KeyboardFocusManager")] - public static extern void delete_KeyboardFocusManager(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_Get")] + public static extern global::System.IntPtr KeyboardFocusManager_Get(); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_Get")] - public static extern global::System.IntPtr KeyboardFocusManager_Get(); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SetCurrentFocusActor")] + public static extern bool KeyboardFocusManager_SetCurrentFocusActor(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SetCurrentFocusActor")] - public static extern bool KeyboardFocusManager_SetCurrentFocusActor(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_GetCurrentFocusActor")] + public static extern global::System.IntPtr KeyboardFocusManager_GetCurrentFocusActor(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_GetCurrentFocusActor")] - public static extern global::System.IntPtr KeyboardFocusManager_GetCurrentFocusActor(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_MoveFocus")] + public static extern bool KeyboardFocusManager_MoveFocus(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_MoveFocus")] - public static extern bool KeyboardFocusManager_MoveFocus(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_ClearFocus")] + public static extern void KeyboardFocusManager_ClearFocus(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_ClearFocus")] - public static extern void KeyboardFocusManager_ClearFocus(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SetFocusGroupLoop")] + public static extern void KeyboardFocusManager_SetFocusGroupLoop(global::System.Runtime.InteropServices.HandleRef jarg1, bool jarg2); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SetFocusGroupLoop")] - public static extern void KeyboardFocusManager_SetFocusGroupLoop(global::System.Runtime.InteropServices.HandleRef jarg1, bool jarg2); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_GetFocusGroupLoop")] + public static extern bool KeyboardFocusManager_GetFocusGroupLoop(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_GetFocusGroupLoop")] - public static extern bool KeyboardFocusManager_GetFocusGroupLoop(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SetAsFocusGroup")] + public static extern void KeyboardFocusManager_SetAsFocusGroup(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, bool jarg3); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SetAsFocusGroup")] - public static extern void KeyboardFocusManager_SetAsFocusGroup(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, bool jarg3); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_IsFocusGroup")] + public static extern bool KeyboardFocusManager_IsFocusGroup(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_IsFocusGroup")] - public static extern bool KeyboardFocusManager_IsFocusGroup(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_GetFocusGroup")] + public static extern global::System.IntPtr KeyboardFocusManager_GetFocusGroup(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_GetFocusGroup")] - public static extern global::System.IntPtr KeyboardFocusManager_GetFocusGroup(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SetFocusIndicatorActor")] + public static extern void KeyboardFocusManager_SetFocusIndicatorActor(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SetFocusIndicatorActor")] - public static extern void KeyboardFocusManager_SetFocusIndicatorActor(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_GetFocusIndicatorActor")] + public static extern global::System.IntPtr KeyboardFocusManager_GetFocusIndicatorActor(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_GetFocusIndicatorActor")] - public static extern global::System.IntPtr KeyboardFocusManager_GetFocusIndicatorActor(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_PreFocusChangeSignal")] + public static extern global::System.IntPtr KeyboardFocusManager_PreFocusChangeSignal(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_PreFocusChangeSignal")] - public static extern global::System.IntPtr KeyboardFocusManager_PreFocusChangeSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_FocusChangedSignal")] + public static extern global::System.IntPtr KeyboardFocusManager_FocusChangedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_FocusChangedSignal")] - public static extern global::System.IntPtr KeyboardFocusManager_FocusChangedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_FocusGroupChangedSignal")] + public static extern global::System.IntPtr KeyboardFocusManager_FocusGroupChangedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_FocusGroupChangedSignal")] - public static extern global::System.IntPtr KeyboardFocusManager_FocusGroupChangedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_FocusedActorEnterKeySignal")] + public static extern global::System.IntPtr KeyboardFocusManager_FocusedActorEnterKeySignal(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_FocusedActorEnterKeySignal")] - public static extern global::System.IntPtr KeyboardFocusManager_FocusedActorEnterKeySignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_Empty")] + public static extern bool KeyboardPreFocusChangeSignal_Empty(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_Empty")] - public static extern bool KeyboardPreFocusChangeSignal_Empty(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_GetConnectionCount")] + public static extern uint KeyboardPreFocusChangeSignal_GetConnectionCount(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_GetConnectionCount")] - public static extern uint KeyboardPreFocusChangeSignal_GetConnectionCount(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_Connect")] + public static extern void KeyboardPreFocusChangeSignal_Connect(global::System.Runtime.InteropServices.HandleRef jarg1, KeyboardFocusManager.PreFocusChangeEventCallbackDelegate delegate1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_Connect")] - public static extern void KeyboardPreFocusChangeSignal_Connect(global::System.Runtime.InteropServices.HandleRef jarg1, KeyboardFocusManager.PreFocusChangeEventCallbackDelegate delegate1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_Disconnect")] + public static extern void KeyboardPreFocusChangeSignal_Disconnect(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_Disconnect")] - public static extern void KeyboardPreFocusChangeSignal_Disconnect(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_Emit")] + public static extern global::System.IntPtr KeyboardPreFocusChangeSignal_Emit(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, int jarg4); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardPreFocusChangeSignal_Emit")] - public static extern global::System.IntPtr KeyboardPreFocusChangeSignal_Emit(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, int jarg4); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_new_KeyboardPreFocusChangeSignal")] + public static extern global::System.IntPtr new_KeyboardPreFocusChangeSignal(); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_new_KeyboardPreFocusChangeSignal")] - public static extern global::System.IntPtr new_KeyboardPreFocusChangeSignal(); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_delete_KeyboardPreFocusChangeSignal")] + public static extern void delete_KeyboardPreFocusChangeSignal(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_delete_KeyboardPreFocusChangeSignal")] - public static extern void delete_KeyboardPreFocusChangeSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SWIGUpcast")] + public static extern global::System.IntPtr KeyboardFocusManager_SWIGUpcast(global::System.IntPtr jarg1); - [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_KeyboardFocusManager_SWIGUpcast")] - public static extern global::System.IntPtr KeyboardFocusManager_SWIGUpcast(global::System.IntPtr jarg1); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapperImpl_CONTROL_BEHAVIOUR_FLAG_COUNT_get")] + public static extern int ViewWrapperImpl_CONTROL_BEHAVIOUR_FLAG_COUNT_get(); -} + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_new_ViewWrapperImpl")] + public static extern global::System.IntPtr new_ViewWrapperImpl(int jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapperImpl_New")] + public static extern global::System.IntPtr ViewWrapperImpl_New(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_delete_ViewWrapperImpl")] + public static extern void delete_ViewWrapperImpl(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapperImpl_director_connect")] + public static extern void ViewWrapperImpl_director_connect(global::System.Runtime.InteropServices.HandleRef jarg1, ViewWrapperImpl.DelegateViewWrapperImpl_0 delegate0, ViewWrapperImpl.DelegateViewWrapperImpl_1 delegate1, ViewWrapperImpl.DelegateViewWrapperImpl_2 delegate2, ViewWrapperImpl.DelegateViewWrapperImpl_3 delegate3, ViewWrapperImpl.DelegateViewWrapperImpl_4 delegate4, ViewWrapperImpl.DelegateViewWrapperImpl_5 delegate5, ViewWrapperImpl.DelegateViewWrapperImpl_6 delegate6, ViewWrapperImpl.DelegateViewWrapperImpl_7 delegate7, ViewWrapperImpl.DelegateViewWrapperImpl_8 delegate8, ViewWrapperImpl.DelegateViewWrapperImpl_9 delegate9, ViewWrapperImpl.DelegateViewWrapperImpl_10 delegate10, ViewWrapperImpl.DelegateViewWrapperImpl_11 delegate11, ViewWrapperImpl.DelegateViewWrapperImpl_12 delegate12, ViewWrapperImpl.DelegateViewWrapperImpl_13 delegate13, ViewWrapperImpl.DelegateViewWrapperImpl_14 delegate14, ViewWrapperImpl.DelegateViewWrapperImpl_15 delegate15, ViewWrapperImpl.DelegateViewWrapperImpl_16 delegate16, ViewWrapperImpl.DelegateViewWrapperImpl_17 delegate17, ViewWrapperImpl.DelegateViewWrapperImpl_18 delegate18, ViewWrapperImpl.DelegateViewWrapperImpl_19 delegate19, ViewWrapperImpl.DelegateViewWrapperImpl_20 delegate20, ViewWrapperImpl.DelegateViewWrapperImpl_21 delegate21, ViewWrapperImpl.DelegateViewWrapperImpl_22 delegate22, ViewWrapperImpl.DelegateViewWrapperImpl_23 delegate23, ViewWrapperImpl.DelegateViewWrapperImpl_24 delegate24, ViewWrapperImpl.DelegateViewWrapperImpl_25 delegate25, ViewWrapperImpl.DelegateViewWrapperImpl_26 delegate26, ViewWrapperImpl.DelegateViewWrapperImpl_27 delegate27, ViewWrapperImpl.DelegateViewWrapperImpl_28 delegate28, ViewWrapperImpl.DelegateViewWrapperImpl_29 delegate29, ViewWrapperImpl.DelegateViewWrapperImpl_30 delegate30, ViewWrapperImpl.DelegateViewWrapperImpl_31 delegate31, ViewWrapperImpl.DelegateViewWrapperImpl_32 delegate32, ViewWrapperImpl.DelegateViewWrapperImpl_33 delegate33, ViewWrapperImpl.DelegateViewWrapperImpl_34 delegate34, ViewWrapperImpl.DelegateViewWrapperImpl_35 delegate35, ViewWrapperImpl.DelegateViewWrapperImpl_36 delegate36, ViewWrapperImpl.DelegateViewWrapperImpl_37 delegate37, ViewWrapperImpl.DelegateViewWrapperImpl_38 delegate38, ViewWrapperImpl.DelegateViewWrapperImpl_39 delegate39, ViewWrapperImpl.DelegateViewWrapperImpl_40 delegate40); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_GetControlWrapperImpl__SWIG_0")] + public static extern global::System.IntPtr GetControlWrapperImpl__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapper_New")] + public static extern global::System.IntPtr ViewWrapper_New(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_new_ViewWrapper__SWIG_0")] + public static extern global::System.IntPtr new_ViewWrapper__SWIG_0(); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_delete_ViewWrapper")] + public static extern void delete_ViewWrapper(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_new_ViewWrapper__SWIG_1")] + public static extern global::System.IntPtr new_ViewWrapper__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapper_Assign")] + public static extern global::System.IntPtr ViewWrapper_Assign(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapper_DownCast")] + public static extern global::System.IntPtr ViewWrapper_DownCast(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapperImpl_SWIGUpcast")] + public static extern global::System.IntPtr ViewWrapperImpl_SWIGUpcast(global::System.IntPtr jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapper_SWIGUpcast")] + public static extern global::System.IntPtr ViewWrapper_SWIGUpcast(global::System.IntPtr jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_RelayoutRequest")] + public static extern void ViewWrapperImpl_RelayoutRequest(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_GetHeightForWidthBase")] + public static extern float ViewWrapperImpl_GetHeightForWidthBase(global::System.Runtime.InteropServices.HandleRef jarg1, float jarg2); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_GetWidthForHeightBase")] + public static extern float ViewWrapperImpl_GetWidthForHeightBase(global::System.Runtime.InteropServices.HandleRef jarg1, float jarg2); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_CalculateChildSizeBase")] + public static extern float ViewWrapperImpl_CalculateChildSizeBase(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, int jarg3); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_RelayoutDependentOnChildrenBase__SWIG_0")] + public static extern bool ViewWrapperImpl_RelayoutDependentOnChildrenBase__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_RelayoutDependentOnChildrenBase__SWIG_1")] + public static extern bool ViewWrapperImpl_RelayoutDependentOnChildrenBase__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_RegisterVisual__SWIG_0")] + public static extern void ViewWrapperImpl_RegisterVisual__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_RegisterVisual__SWIG_1")] + public static extern void ViewWrapperImpl_RegisterVisual__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, bool jarg4); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_UnregisterVisual")] + public static extern void ViewWrapperImpl_UnregisterVisual(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_GetVisual")] + public static extern global::System.IntPtr ViewWrapperImpl_GetVisual(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_EnableVisual")] + public static extern void ViewWrapperImpl_EnableVisual(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, bool jarg3); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_IsVisualEnabled")] + public static extern bool ViewWrapperImpl_IsVisualEnabled(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_CreateTransition")] + public static extern global::System.IntPtr ViewWrapperImpl_CreateTransition(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_ViewWrapperImpl_EmitKeyInputFocusSignal")] + public static extern void ViewWrapperImpl_EmitKeyInputFocusSignal(global::System.Runtime.InteropServices.HandleRef jarg1, bool jarg2); + [global::System.Runtime.InteropServices.DllImport("NDalic", EntryPoint="CSharp_Dali_ViewWrapperImpl_ApplyThemeStyle")] + public static extern void ViewWrapperImpl_ApplyThemeStyle(global::System.Runtime.InteropServices.HandleRef jarg1); + } } diff --git a/plugins/dali-swig/manual/csharp/Tizen.Applications/DaliApplication.cs b/plugins/dali-swig/manual/csharp/Tizen.Applications/DaliApplication.cs index 6791355..59c9700 100644 --- a/plugins/dali-swig/manual/csharp/Tizen.Applications/DaliApplication.cs +++ b/plugins/dali-swig/manual/csharp/Tizen.Applications/DaliApplication.cs @@ -1,16 +1,24 @@ -// Copyright 2016 by Samsung Electronics, Inc., -// -// This software is the confidential and proprietary information -// of Samsung Electronics, Inc. ("Confidential Information"). You -// shall not disclose such Confidential Information and shall use -// it only in accordance with the terms of the license agreement -// you entered into with Samsung. +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + using System; using Dali; //------------------------------------------------------------------------------ -// -// // This file can only run on Tizen target. You should compile it with hello-test.cs, and // add tizen c# application related library as reference. //------------------------------------------------------------------------------ diff --git a/plugins/dali-swig/manual/csharp/ViewWrapper.cs b/plugins/dali-swig/manual/csharp/ViewWrapper.cs new file mode 100644 index 0000000..76281fa --- /dev/null +++ b/plugins/dali-swig/manual/csharp/ViewWrapper.cs @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +namespace Dali +{ + public class ViewWrapper : View + { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + protected ViewWrapperImpl viewWrapperImpl; + + internal ViewWrapper(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicManualPINVOKE.ViewWrapper_SWIGUpcast(cPtr), cMemoryOwn) + { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(ViewWrapper obj) + { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~ViewWrapper() + { + Dispose(); + } + + public override void Dispose() + { + lock(this) + { + if (swigCPtr.Handle != global::System.IntPtr.Zero) + { + if (swigCMemOwn) + { + swigCMemOwn = false; + NDalicManualPINVOKE.delete_ViewWrapper(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + global::System.GC.SuppressFinalize(this); + base.Dispose(); + } + } + + public ViewWrapper (ViewWrapperImpl implementation) : this (NDalicManualPINVOKE.ViewWrapper_New(ViewWrapperImpl.getCPtr(implementation)), true) + { + viewWrapperImpl = implementation; + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + public ViewWrapper(ViewWrapper handle) : this(NDalicManualPINVOKE.new_ViewWrapper__SWIG_1(ViewWrapper.getCPtr(handle)), true) + { + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + public ViewWrapper Assign(ViewWrapper handle) + { + ViewWrapper ret = new ViewWrapper(NDalicManualPINVOKE.ViewWrapper_Assign(swigCPtr, ViewWrapper.getCPtr(handle)), false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public new static ViewWrapper DownCast(BaseHandle handle) + { + ViewWrapper ret = new ViewWrapper(NDalicManualPINVOKE.ViewWrapper_DownCast(BaseHandle.getCPtr(handle)), true); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + } +} diff --git a/plugins/dali-swig/manual/csharp/ViewWrapperImpl.cs b/plugins/dali-swig/manual/csharp/ViewWrapperImpl.cs new file mode 100644 index 0000000..7605d4a --- /dev/null +++ b/plugins/dali-swig/manual/csharp/ViewWrapperImpl.cs @@ -0,0 +1,592 @@ +/* + * Copyright (c) 2016 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +namespace Dali +{ + public sealed class ViewWrapperImpl : ViewImpl + { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + public delegate void OnStageConnectionDelegate(int depth); + public delegate void OnStageDisconnectionDelegate(); + public delegate void OnChildAddDelegate(Actor actor); + public delegate void OnChildRemoveDelegate(Actor actor); + public delegate void OnPropertySetDelegate(int index, Property.Value propertyValue); + public delegate void OnSizeSetDelegate(Vector3 targetSize); + public delegate void OnSizeAnimationDelegate(Animation animation, Vector3 targetSize); + public delegate bool OnTouchEventDelegate(TouchEvent touchEvent); + public delegate bool OnHoverEventDelegate(HoverEvent hoverEvent); + public delegate bool OnKeyEventDelegate(KeyEvent keyEvent); + public delegate bool OnWheelEventDelegate(WheelEvent wheelEvent); + public delegate void OnRelayoutDelegate(Vector2 size, RelayoutContainer container); + public delegate void OnSetResizePolicyDelegate(ResizePolicyType policy, DimensionType dimension); + public delegate Vector3 GetNaturalSizeDelegate(); + public delegate float CalculateChildSizeDelegate(Actor child, DimensionType dimension); + public delegate float GetHeightForWidthDelegate(float width); + public delegate float GetWidthForHeightDelegate(float height); + public delegate bool RelayoutDependentOnChildrenDimensionDelegate(DimensionType dimension); + public delegate bool RelayoutDependentOnChildrenDelegate(); + public delegate void OnCalculateRelayoutSizeDelegate(DimensionType dimension); + public delegate void OnLayoutNegotiatedDelegate(float size, DimensionType dimension); + public delegate void OnControlChildAddDelegate(Actor child); + public delegate void OnControlChildRemoveDelegate(Actor child); + public delegate void OnStyleChangeDelegate(StyleManager styleManager, StyleChangeType change); + public delegate bool OnAccessibilityActivatedDelegate(); + public delegate bool OnAccessibilityPanDelegate(PanGesture gestures); + public delegate bool OnAccessibilityTouchDelegate(TouchEvent touchEvent); + public delegate bool OnAccessibilityValueChangeDelegate(bool isIncrease); + public delegate bool OnAccessibilityZoomDelegate(); + public delegate void OnKeyInputFocusGainedDelegate(); + public delegate void OnKeyInputFocusLostDelegate(); + public delegate Actor GetNextKeyboardFocusableActorDelegate(Actor currentFocusedActor, View.KeyboardFocus.Direction direction, bool loopEnabled); + public delegate void OnKeyboardFocusChangeCommittedDelegate(Actor commitedFocusableActor); + public delegate bool OnKeyboardEnterDelegate(); + public delegate void OnPinchDelegate(PinchGesture pinch); + public delegate void OnPanDelegate(PanGesture pan); + public delegate void OnTapDelegate(TapGesture tap); + public delegate void OnLongPressDelegate(LongPressGesture longPress); + public delegate void SignalConnectedDelegate(SlotObserver slotObserver, SWIGTYPE_p_Dali__CallbackBase callback); + public delegate void SignalDisconnectedDelegate(SlotObserver slotObserver, SWIGTYPE_p_Dali__CallbackBase callback); + + public OnStageConnectionDelegate OnStageConnection; + public OnStageDisconnectionDelegate OnStageDisconnection; + public OnChildAddDelegate OnChildAdd; + public OnChildRemoveDelegate OnChildRemove; + public OnPropertySetDelegate OnPropertySet; + public OnSizeSetDelegate OnSizeSet; + public OnSizeAnimationDelegate OnSizeAnimation; + public OnTouchEventDelegate OnTouchEvent; + public OnHoverEventDelegate OnHoverEvent; + public OnKeyEventDelegate OnKeyEvent; + public OnWheelEventDelegate OnWheelEvent; + public OnRelayoutDelegate OnRelayout; + public OnSetResizePolicyDelegate OnSetResizePolicy; + public GetNaturalSizeDelegate GetNaturalSize; + public CalculateChildSizeDelegate CalculateChildSize; + public GetHeightForWidthDelegate GetHeightForWidth; + public GetWidthForHeightDelegate GetWidthForHeight; + public RelayoutDependentOnChildrenDimensionDelegate RelayoutDependentOnChildrenDimension; + public RelayoutDependentOnChildrenDelegate RelayoutDependentOnChildren; + public OnCalculateRelayoutSizeDelegate OnCalculateRelayoutSize; + public OnLayoutNegotiatedDelegate OnLayoutNegotiated; + public OnControlChildAddDelegate OnControlChildAdd; + public OnControlChildRemoveDelegate OnControlChildRemove; + public OnStyleChangeDelegate OnStyleChange; + public OnAccessibilityActivatedDelegate OnAccessibilityActivated; + public OnAccessibilityPanDelegate OnAccessibilityPan; + public OnAccessibilityTouchDelegate OnAccessibilityTouch; + public OnAccessibilityValueChangeDelegate OnAccessibilityValueChange; + public OnAccessibilityZoomDelegate OnAccessibilityZoom; + public OnKeyInputFocusGainedDelegate OnKeyInputFocusGained; + public OnKeyInputFocusLostDelegate OnKeyInputFocusLost; + public GetNextKeyboardFocusableActorDelegate GetNextKeyboardFocusableActor; + public OnKeyboardFocusChangeCommittedDelegate OnKeyboardFocusChangeCommitted; + public OnKeyboardEnterDelegate OnKeyboardEnter; + public OnPinchDelegate OnPinch; + public OnPanDelegate OnPan; + public OnTapDelegate OnTap; + public OnLongPressDelegate OnLongPress; + public SignalConnectedDelegate SignalConnected; + public SignalDisconnectedDelegate SignalDisconnected; + + internal ViewWrapperImpl(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicManualPINVOKE.ViewWrapperImpl_SWIGUpcast(cPtr), cMemoryOwn) + { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(ViewWrapperImpl obj) + { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~ViewWrapperImpl() + { + Dispose(); + } + + public override void Dispose() + { + lock(this) + { + if (swigCPtr.Handle != global::System.IntPtr.Zero) + { + if (swigCMemOwn) + { + swigCMemOwn = false; + NDalicManualPINVOKE.delete_ViewWrapperImpl(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + global::System.GC.SuppressFinalize(this); + base.Dispose(); + } + } + + public ViewWrapperImpl(ViewWrapperImpl.CustomViewBehaviour behaviourFlags) : this(NDalicManualPINVOKE.new_ViewWrapperImpl((int)behaviourFlags), true) + { + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + DirectorConnect(); + } + + public static ViewWrapper New(ViewWrapperImpl viewWrapper) + { + ViewWrapper ret = new ViewWrapper(NDalicManualPINVOKE.ViewWrapperImpl_New(ViewWrapperImpl.getCPtr(viewWrapper)), true); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public void RelayoutRequest() + { + NDalicManualPINVOKE.ViewWrapperImpl_RelayoutRequest(swigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + public float GetHeightForWidthBase(float width) + { + float ret = NDalicManualPINVOKE.ViewWrapperImpl_GetHeightForWidthBase(swigCPtr, width); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public float GetWidthForHeightBase(float height) + { + float ret = NDalicManualPINVOKE.ViewWrapperImpl_GetWidthForHeightBase(swigCPtr, height); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public float CalculateChildSizeBase(Actor child, DimensionType dimension) + { + float ret = NDalicManualPINVOKE.ViewWrapperImpl_CalculateChildSizeBase(swigCPtr, Actor.getCPtr(child), (int)dimension); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public bool RelayoutDependentOnChildrenBase(DimensionType dimension) + { + bool ret = NDalicManualPINVOKE.ViewWrapperImpl_RelayoutDependentOnChildrenBase__SWIG_0(swigCPtr, (int)dimension); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public bool RelayoutDependentOnChildrenBase() + { + bool ret = NDalicManualPINVOKE.ViewWrapperImpl_RelayoutDependentOnChildrenBase__SWIG_1(swigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public void RegisterVisual(int index, VisualBase visual) + { + NDalicManualPINVOKE.ViewWrapperImpl_RegisterVisual__SWIG_0(swigCPtr, index, VisualBase.getCPtr(visual)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + public void RegisterVisual(int index, VisualBase visual, bool enabled) + { + NDalicManualPINVOKE.ViewWrapperImpl_RegisterVisual__SWIG_1(swigCPtr, index, VisualBase.getCPtr(visual), enabled); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + public void UnregisterVisual(int index) + { + NDalicManualPINVOKE.ViewWrapperImpl_UnregisterVisual(swigCPtr, index); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + public VisualBase GetVisual(int index) + { + VisualBase ret = new VisualBase(NDalicManualPINVOKE.ViewWrapperImpl_GetVisual(swigCPtr, index), true); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public void EnableVisual(int index, bool enable) + { + NDalicManualPINVOKE.ViewWrapperImpl_EnableVisual(swigCPtr, index, enable); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + public bool IsVisualEnabled(int index) + { + bool ret = NDalicManualPINVOKE.ViewWrapperImpl_IsVisualEnabled(swigCPtr, index); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public Animation CreateTransition(TransitionData transitionData) + { + Animation ret = new Animation(NDalicManualPINVOKE.ViewWrapperImpl_CreateTransition(swigCPtr, TransitionData.getCPtr(transitionData)), true); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + public void EmitKeyInputFocusSignal(bool focusGained) + { + NDalicManualPINVOKE.ViewWrapperImpl_EmitKeyInputFocusSignal(swigCPtr, focusGained); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + public void ApplyThemeStyle() + { + NDalicManualPINVOKE.ViewWrapperImpl_ApplyThemeStyle(swigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + private void DirectorConnect() + { + Delegate0 = new DelegateViewWrapperImpl_0(DirectorOnStageConnection); + Delegate1 = new DelegateViewWrapperImpl_1(DirectorOnStageDisconnection); + Delegate2 = new DelegateViewWrapperImpl_2(DirectorOnChildAdd); + Delegate3 = new DelegateViewWrapperImpl_3(DirectorOnChildRemove); + Delegate4 = new DelegateViewWrapperImpl_4(DirectorOnPropertySet); + Delegate5 = new DelegateViewWrapperImpl_5(DirectorOnSizeSet); + Delegate6 = new DelegateViewWrapperImpl_6(DirectorOnSizeAnimation); + Delegate7 = new DelegateViewWrapperImpl_7(DirectorOnTouchEvent); + Delegate8 = new DelegateViewWrapperImpl_8(DirectorOnHoverEvent); + Delegate9 = new DelegateViewWrapperImpl_9(DirectorOnKeyEvent); + Delegate10 = new DelegateViewWrapperImpl_10(DirectorOnWheelEvent); + Delegate11 = new DelegateViewWrapperImpl_11(DirectorOnRelayout); + Delegate12 = new DelegateViewWrapperImpl_12(DirectorOnSetResizePolicy); + Delegate13 = new DelegateViewWrapperImpl_13(DirectorGetNaturalSize); + Delegate14 = new DelegateViewWrapperImpl_14(DirectorCalculateChildSize); + Delegate15 = new DelegateViewWrapperImpl_15(DirectorGetHeightForWidth); + Delegate16 = new DelegateViewWrapperImpl_16(DirectorGetWidthForHeight); + Delegate17 = new DelegateViewWrapperImpl_17(DirectorRelayoutDependentOnChildren__SWIG_0); + Delegate18 = new DelegateViewWrapperImpl_18(DirectorRelayoutDependentOnChildren__SWIG_1); + Delegate19 = new DelegateViewWrapperImpl_19(DirectorOnCalculateRelayoutSize); + Delegate20 = new DelegateViewWrapperImpl_20(DirectorOnLayoutNegotiated); + Delegate21 = new DelegateViewWrapperImpl_21(DirectorOnInitialize); + Delegate22 = new DelegateViewWrapperImpl_22(DirectorOnControlChildAdd); + Delegate23 = new DelegateViewWrapperImpl_23(DirectorOnControlChildRemove); + Delegate24 = new DelegateViewWrapperImpl_24(DirectorOnStyleChange); + Delegate25 = new DelegateViewWrapperImpl_25(DirectorOnAccessibilityActivated); + Delegate26 = new DelegateViewWrapperImpl_26(DirectorOnAccessibilityPan); + Delegate27 = new DelegateViewWrapperImpl_27(DirectorOnAccessibilityTouch); + Delegate28 = new DelegateViewWrapperImpl_28(DirectorOnAccessibilityValueChange); + Delegate29 = new DelegateViewWrapperImpl_29(DirectorOnAccessibilityZoom); + Delegate30 = new DelegateViewWrapperImpl_30(DirectorOnKeyInputFocusGained); + Delegate31 = new DelegateViewWrapperImpl_31(DirectorOnKeyInputFocusLost); + Delegate32 = new DelegateViewWrapperImpl_32(DirectorGetNextKeyboardFocusableActor); + Delegate33 = new DelegateViewWrapperImpl_33(DirectorOnKeyboardFocusChangeCommitted); + Delegate34 = new DelegateViewWrapperImpl_34(DirectorOnKeyboardEnter); + Delegate35 = new DelegateViewWrapperImpl_35(DirectorOnPinch); + Delegate36 = new DelegateViewWrapperImpl_36(DirectorOnPan); + Delegate37 = new DelegateViewWrapperImpl_37(DirectorOnTap); + Delegate38 = new DelegateViewWrapperImpl_38(DirectorOnLongPress); + NDalicManualPINVOKE.ViewWrapperImpl_director_connect(swigCPtr, Delegate0, Delegate1, Delegate2, Delegate3, Delegate4, Delegate5, Delegate6, Delegate7, Delegate8, Delegate9, Delegate10, Delegate11, Delegate12, Delegate13, Delegate14, Delegate15, Delegate16, Delegate17, Delegate18, Delegate19, Delegate20, Delegate21, Delegate22, Delegate23, Delegate24, Delegate25, Delegate26, Delegate27, Delegate28, Delegate29, Delegate30, Delegate31, Delegate32, Delegate33, Delegate34, Delegate35, Delegate36, Delegate37, Delegate38, null, null); + } + + private void DirectorOnStageConnection(int depth) + { + OnStageConnection(depth); + } + + private void DirectorOnStageDisconnection() + { + OnStageDisconnection(); + } + + private void DirectorOnChildAdd(global::System.IntPtr child) + { + OnChildAdd(new Actor(child, false)); + } + + private void DirectorOnChildRemove(global::System.IntPtr child) + { + OnChildRemove(new Actor(child, false)); + } + + private void DirectorOnPropertySet(int index, global::System.IntPtr propertyValue) + { + OnPropertySet(index, new Property.Value(propertyValue, true)); + } + + private void DirectorOnSizeSet(global::System.IntPtr targetSize) + { + OnSizeSet(new Vector3(targetSize, false)); + } + + private void DirectorOnSizeAnimation(global::System.IntPtr animation, global::System.IntPtr targetSize) + { + OnSizeAnimation(new Animation(animation, false), new Vector3(targetSize, false)); + } + + private bool DirectorOnTouchEvent(global::System.IntPtr arg0) + { + return OnTouchEvent(new TouchEvent(arg0, false)); + } + + private bool DirectorOnHoverEvent(global::System.IntPtr arg0) + { + return OnHoverEvent(new HoverEvent(arg0, false)); + } + + private bool DirectorOnKeyEvent(global::System.IntPtr arg0) + { + return OnKeyEvent(new KeyEvent(arg0, false)); + } + + private bool DirectorOnWheelEvent(global::System.IntPtr arg0) + { + return OnWheelEvent(new WheelEvent(arg0, false)); + } + + private void DirectorOnRelayout(global::System.IntPtr size, global::System.IntPtr container) + { + OnRelayout(new Vector2(size, false), new RelayoutContainer(container, false)); + } + + private void DirectorOnSetResizePolicy(int policy, int dimension) + { + OnSetResizePolicy((ResizePolicyType)policy, (DimensionType)dimension); + } + + private global::System.IntPtr DirectorGetNaturalSize() + { + return Vector3.getCPtr(GetNaturalSize()).Handle; + } + + private float DirectorCalculateChildSize(global::System.IntPtr child, int dimension) + { + return CalculateChildSize(new Actor(child, false), (DimensionType)dimension); + } + + private float DirectorGetHeightForWidth(float width) + { + return GetHeightForWidth(width); + } + + private float DirectorGetWidthForHeight(float height) + { + return GetWidthForHeight(height); + } + + private bool DirectorRelayoutDependentOnChildren__SWIG_0(int dimension) + { + return RelayoutDependentOnChildrenDimension((DimensionType)dimension); + } + + private bool DirectorRelayoutDependentOnChildren__SWIG_1() + { + return RelayoutDependentOnChildren(); + } + + private void DirectorOnCalculateRelayoutSize(int dimension) + { + OnCalculateRelayoutSize((DimensionType)dimension); + } + + private void DirectorOnLayoutNegotiated(float size, int dimension) + { + OnLayoutNegotiated(size, (DimensionType)dimension); + } + + private void DirectorOnInitialize() + { + } + + private void DirectorOnControlChildAdd(global::System.IntPtr child) + { + OnControlChildAdd(new Actor(child, false)); + } + + private void DirectorOnControlChildRemove(global::System.IntPtr child) + { + OnControlChildRemove(new Actor(child, false)); + } + + private void DirectorOnStyleChange(global::System.IntPtr styleManager, int change) + { + OnStyleChange(new StyleManager(styleManager, false), (StyleChangeType)change); + } + + private bool DirectorOnAccessibilityActivated() + { + return OnAccessibilityActivated(); + } + + private bool DirectorOnAccessibilityPan(global::System.IntPtr gesture) + { + return OnAccessibilityPan(new PanGesture(gesture, false)); + } + + private bool DirectorOnAccessibilityTouch(global::System.IntPtr touchEvent) + { + return OnAccessibilityTouch(new TouchEvent(touchEvent, false)); + } + + private bool DirectorOnAccessibilityValueChange(bool isIncrease) + { + return OnAccessibilityValueChange(isIncrease); + } + + private bool DirectorOnAccessibilityZoom() + { + return OnAccessibilityZoom(); + } + + private void DirectorOnKeyInputFocusGained() + { + OnKeyInputFocusGained(); + } + + private void DirectorOnKeyInputFocusLost() + { + OnKeyInputFocusLost(); + } + + private global::System.IntPtr DirectorGetNextKeyboardFocusableActor(global::System.IntPtr currentFocusedActor, int direction, bool loopEnabled) + { + return Actor.getCPtr(GetNextKeyboardFocusableActor(new Actor(currentFocusedActor, false), (View.KeyboardFocus.Direction)direction, loopEnabled)).Handle; + } + + private void DirectorOnKeyboardFocusChangeCommitted(global::System.IntPtr commitedFocusableActor) + { + OnKeyboardFocusChangeCommitted(new Actor(commitedFocusableActor, false)); + } + + private bool DirectorOnKeyboardEnter() + { + return OnKeyboardEnter(); + } + + private void DirectorOnPinch(global::System.IntPtr pinch) + { + OnPinch(new PinchGesture(pinch, false)); + } + + private void DirectorOnPan(global::System.IntPtr pan) + { + OnPan(new PanGesture(pan, false)); + } + + private void DirectorOnTap(global::System.IntPtr tap) + { + OnTap(new TapGesture(tap, false)); + } + + private void DirectorOnLongPress(global::System.IntPtr longPress) + { + OnLongPress(new LongPressGesture(longPress, false)); + } + + private void DirectorSignalConnected(global::System.IntPtr slotObserver, global::System.IntPtr callback) + { + SignalConnected((slotObserver == global::System.IntPtr.Zero) ? null : new SlotObserver(slotObserver, false), (callback == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_Dali__CallbackBase(callback, false)); + } + + private void DirectorSignalDisconnected(global::System.IntPtr slotObserver, global::System.IntPtr callback) + { + SignalDisconnected((slotObserver == global::System.IntPtr.Zero) ? null : new SlotObserver(slotObserver, false), (callback == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_Dali__CallbackBase(callback, false)); + } + + public delegate void DelegateViewWrapperImpl_0(int depth); + public delegate void DelegateViewWrapperImpl_1(); + public delegate void DelegateViewWrapperImpl_2(global::System.IntPtr child); + public delegate void DelegateViewWrapperImpl_3(global::System.IntPtr child); + public delegate void DelegateViewWrapperImpl_4(int index, global::System.IntPtr propertyValue); + public delegate void DelegateViewWrapperImpl_5(global::System.IntPtr targetSize); + public delegate void DelegateViewWrapperImpl_6(global::System.IntPtr animation, global::System.IntPtr targetSize); + public delegate bool DelegateViewWrapperImpl_7(global::System.IntPtr arg0); + public delegate bool DelegateViewWrapperImpl_8(global::System.IntPtr arg0); + public delegate bool DelegateViewWrapperImpl_9(global::System.IntPtr arg0); + public delegate bool DelegateViewWrapperImpl_10(global::System.IntPtr arg0); + public delegate void DelegateViewWrapperImpl_11(global::System.IntPtr size, global::System.IntPtr container); + public delegate void DelegateViewWrapperImpl_12(int policy, int dimension); + public delegate global::System.IntPtr DelegateViewWrapperImpl_13(); + public delegate float DelegateViewWrapperImpl_14(global::System.IntPtr child, int dimension); + public delegate float DelegateViewWrapperImpl_15(float width); + public delegate float DelegateViewWrapperImpl_16(float height); + public delegate bool DelegateViewWrapperImpl_17(int dimension); + public delegate bool DelegateViewWrapperImpl_18(); + public delegate void DelegateViewWrapperImpl_19(int dimension); + public delegate void DelegateViewWrapperImpl_20(float size, int dimension); + public delegate void DelegateViewWrapperImpl_21(); + public delegate void DelegateViewWrapperImpl_22(global::System.IntPtr child); + public delegate void DelegateViewWrapperImpl_23(global::System.IntPtr child); + public delegate void DelegateViewWrapperImpl_24(global::System.IntPtr styleManager, int change); + public delegate bool DelegateViewWrapperImpl_25(); + public delegate bool DelegateViewWrapperImpl_26(global::System.IntPtr gesture); + public delegate bool DelegateViewWrapperImpl_27(global::System.IntPtr touchEvent); + public delegate bool DelegateViewWrapperImpl_28(bool isIncrease); + public delegate bool DelegateViewWrapperImpl_29(); + public delegate void DelegateViewWrapperImpl_30(); + public delegate void DelegateViewWrapperImpl_31(); + public delegate global::System.IntPtr DelegateViewWrapperImpl_32(global::System.IntPtr currentFocusedActor, int direction, bool loopEnabled); + public delegate void DelegateViewWrapperImpl_33(global::System.IntPtr commitedFocusableActor); + public delegate bool DelegateViewWrapperImpl_34(); + public delegate void DelegateViewWrapperImpl_35(global::System.IntPtr pinch); + public delegate void DelegateViewWrapperImpl_36(global::System.IntPtr pan); + public delegate void DelegateViewWrapperImpl_37(global::System.IntPtr tap); + public delegate void DelegateViewWrapperImpl_38(global::System.IntPtr longPress); + public delegate void DelegateViewWrapperImpl_39(global::System.IntPtr slotObserver, global::System.IntPtr callback); + public delegate void DelegateViewWrapperImpl_40(global::System.IntPtr slotObserver, global::System.IntPtr callback); + + private DelegateViewWrapperImpl_0 Delegate0; + private DelegateViewWrapperImpl_1 Delegate1; + private DelegateViewWrapperImpl_2 Delegate2; + private DelegateViewWrapperImpl_3 Delegate3; + private DelegateViewWrapperImpl_4 Delegate4; + private DelegateViewWrapperImpl_5 Delegate5; + private DelegateViewWrapperImpl_6 Delegate6; + private DelegateViewWrapperImpl_7 Delegate7; + private DelegateViewWrapperImpl_8 Delegate8; + private DelegateViewWrapperImpl_9 Delegate9; + private DelegateViewWrapperImpl_10 Delegate10; + private DelegateViewWrapperImpl_11 Delegate11; + private DelegateViewWrapperImpl_12 Delegate12; + private DelegateViewWrapperImpl_13 Delegate13; + private DelegateViewWrapperImpl_14 Delegate14; + private DelegateViewWrapperImpl_15 Delegate15; + private DelegateViewWrapperImpl_16 Delegate16; + private DelegateViewWrapperImpl_17 Delegate17; + private DelegateViewWrapperImpl_18 Delegate18; + private DelegateViewWrapperImpl_19 Delegate19; + private DelegateViewWrapperImpl_20 Delegate20; + private DelegateViewWrapperImpl_21 Delegate21; + private DelegateViewWrapperImpl_22 Delegate22; + private DelegateViewWrapperImpl_23 Delegate23; + private DelegateViewWrapperImpl_24 Delegate24; + private DelegateViewWrapperImpl_25 Delegate25; + private DelegateViewWrapperImpl_26 Delegate26; + private DelegateViewWrapperImpl_27 Delegate27; + private DelegateViewWrapperImpl_28 Delegate28; + private DelegateViewWrapperImpl_29 Delegate29; + private DelegateViewWrapperImpl_30 Delegate30; + private DelegateViewWrapperImpl_31 Delegate31; + private DelegateViewWrapperImpl_32 Delegate32; + private DelegateViewWrapperImpl_33 Delegate33; + private DelegateViewWrapperImpl_34 Delegate34; + private DelegateViewWrapperImpl_35 Delegate35; + private DelegateViewWrapperImpl_36 Delegate36; + private DelegateViewWrapperImpl_37 Delegate37; + private DelegateViewWrapperImpl_38 Delegate38; + private DelegateViewWrapperImpl_39 Delegate39; + private DelegateViewWrapperImpl_40 Delegate40; + + public enum CustomViewBehaviour + { + VIEW_BEHAVIOUR_DEFAULT = 0, + DISABLE_SIZE_NEGOTIATION = 1 << 0, + REQUIRES_KEYBOARD_NAVIGATION_SUPPORT = 1 << 5, + DISABLE_STYLE_CHANGE_SIGNALS = 1 << 6, + LAST_VIEW_BEHAVIOUR_FLAG + } + + public static readonly int VIEW_BEHAVIOUR_FLAG_COUNT = NDalicManualPINVOKE.ViewWrapperImpl_CONTROL_BEHAVIOUR_FLAG_COUNT_get(); + } +} -- 2.7.4