X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=plugins%2Fdali-swig%2FSWIG%2Fdali.i;h=09963f4bad1e283b39a8fee1b2cd89cda889ca5b;hp=79e987befc46855a6547ec389e40398a7cc5fd49;hb=26368c0d3d953dd805bf0b2370be88a03608133e;hpb=ee431c9e2b342243f9e0e2b6bafca7505d321457 diff --git a/plugins/dali-swig/SWIG/dali.i b/plugins/dali-swig/SWIG/dali.i index 79e987b..09963f4 100755 --- a/plugins/dali-swig/SWIG/dali.i +++ b/plugins/dali-swig/SWIG/dali.i @@ -53,6 +53,8 @@ #include #include #include +#include +#include #include #include @@ -78,6 +80,8 @@ #include #include +#include + #include // add here SWIG version check @@ -163,9 +167,67 @@ return $null; %} + + + +// Type registry type maps +%typemap(cstype) Dali::TypeInfo::CreateFunction "System.Delegate" +%typemap(csin, pre ="System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate($csinput); ") + Dali::TypeInfo::CreateFunction "new System.Runtime.InteropServices.HandleRef(null, ip)" // null was this + +%typemap(cstype) Dali::CSharpTypeInfo::CreateFunction "System.Delegate" +%typemap(csin, pre ="System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate($csinput); ") + Dali::CSharpTypeInfo::CreateFunction "new System.Runtime.InteropServices.HandleRef(null, ip)" // null was this + + + +%typemap(cstype) Dali::CSharpTypeInfo::SetPropertyFunction "System.Delegate" +%typemap(csin, pre ="System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate($csinput); ") + Dali::CSharpTypeInfo::SetPropertyFunction "new System.Runtime.InteropServices.HandleRef(null, ip)" // null was this + + + +%typemap(cstype) Dali::CSharpTypeInfo::GetPropertyFunction "System.Delegate" +%typemap(csin, pre ="System.IntPtr ip2 = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate($csinput); ") + Dali::CSharpTypeInfo::GetPropertyFunction "new System.Runtime.InteropServices.HandleRef(null, ip2)" // null was this + + + + + + + #endif + +/** + * Extend the type registry to allow for registering of C# controls and custom properties + */ +%extend Dali::TypeRegistration { + + + static void RegisterControl( const std::string& controlName, Dali::CSharpTypeInfo::CreateFunction createFunc ) + { + Dali::CSharpTypeRegistry::RegisterType( controlName, typeid( Dali::Toolkit::Control), createFunc ); + }; + + + static void RegisterProperty( const std::string& controlName, + const std::string& propertyName, + int index, + Property::Type type, + Dali::CSharpTypeInfo::SetPropertyFunction setFunc, + Dali::CSharpTypeInfo::GetPropertyFunction getFunc ) + { + Dali::CSharpTypeRegistry::RegisterProperty( controlName, propertyName, index, type, setFunc, getFunc ); + }; + +}; + + + + %ignore operator<<; %ignore *::GetImplementation(); %ignore *::GetImplementation(Dali::BaseHandle&); @@ -195,7 +257,6 @@ using namespace Dali::Toolkit; %include events/gaussian-blur-view-event.i %include events/image-event.i %include events/itemview-event.i -%include events/keyboardFocusManager-event.i %include events/objectregistry-event.i %include events/popup-event.i %include events/pinchgesture-event.i @@ -216,29 +277,13 @@ using namespace Dali::Toolkit; %include events/textfield-event.i %include events/timer-event.i %include events/videoview-event.i -%include events/rendertask-event.i %include alphafunction.i -%include cameraActor.i -%include flexContainer.i -%include imageView.i -%include layer.i -%include linearConstrainer.i -%include model3DView.i -%include path.i -%include pathConstrainer.i -%include progressBar.i -%include pushButton.i -%include renderer.i -%include shader.i -%include tableView.i -%include textLabel.i - -%include propertyValue.i -%include pageTurnLandscapeView.i -%include pageTurnPortraitView.i - +%include name-changed.i +%include property-value.i %include dali-operator.i +%include devel-properties.i + %include dali-core.i %include dali-adaptor.i %include dali-toolkit.i