[NUI] Spannable Module: Wrap GetAllSpans and RetrieveAllSpansAndRanges 56/286156/2
authorssabah <s.sabah@samsung.com>
Tue, 20 Dec 2022 18:15:42 +0000 (21:15 +0300)
committerssabah <s.sabah@samsung.com>
Wed, 11 Jan 2023 09:08:40 +0000 (12:08 +0300)
Wrap and bind Spanned  methods:
  - GetAllSpans
  - RetrieveAllSpansAndRanges

The patch depends on:
https://review.tizen.org/gerrit/c/platform/core/uifw/dali-toolkit/+/286155

Change-Id: Ide35325ec66193d6646b0efb3e3e0b7b87983f51

dali-csharp-binder/src/text-spanned-wrap.cpp
dali-csharp-binder/src/text-spans-wrap.cpp

index 86fc49e..1a9fa21 100644 (file)
@@ -45,6 +45,222 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Spanned(void *refSpanned) {
   }
 }
 
+SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_Spanned_GetAllSpans(void *refSpanned) {
+
+  Spanned *spannedPtr;
+  void *result = nullptr;
+
+  spannedPtr = (Spanned *)refSpanned;
+  if (!spannedPtr) {
+    SWIG_CSharpSetPendingExceptionArgument(
+        SWIG_CSharpArgumentNullException, "Attempt to dereference null Spanned",
+        0);
+    return 0;
+  }
+
+  {
+    try {
+      result = new std::vector<BaseSpan>(
+          (const std::vector<BaseSpan> &)(spannedPtr->GetAllSpans()));
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  return result;
+}
+
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Spanned_RetrieveAllSpansAndRanges(
+    void *refSpanned, void *refVectorSpans, void *refVectorRanges) {
+
+  std::vector<BaseSpan> *spanVectorPtr = (std::vector<BaseSpan> *)0;
+  spanVectorPtr = (std::vector<BaseSpan> *)refVectorSpans;
+  if (!spanVectorPtr) {
+    SWIG_CSharpSetPendingExceptionArgument(
+        SWIG_CSharpArgumentNullException,
+        "Attempt to dereference null vector<BaseSpan>", 0);
+    return;
+  }
+
+  std::vector<Range> *rangeVectorPtr = (std::vector<Range> *)0;
+  rangeVectorPtr = (std::vector<Range> *)refVectorRanges;
+  if (!rangeVectorPtr) {
+    SWIG_CSharpSetPendingExceptionArgument(
+        SWIG_CSharpArgumentNullException,
+        "Attempt to dereference null vector<Range>", 0);
+    return;
+  }
+
+  Spanned *spannedPtr;
+  spannedPtr = (Spanned *)refSpanned;
+  if (!spannedPtr) {
+    SWIG_CSharpSetPendingExceptionArgument(
+        SWIG_CSharpArgumentNullException, "Attempt to dereference null Spanned",
+        0);
+    return;
+  }
+
+  {
+    try {
+      spannedPtr->RetrieveAllSpansAndRanges(*spanVectorPtr, *rangeVectorPtr);
+    }
+    CALL_CATCH_EXCEPTION();
+  }
+
+  return;
+}
+
+SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_std_vector_BaseSpan_Create() {
+  void *nuiResult;
+  std::vector<BaseSpan> *result = 0;
+
+  {
+    try {
+      result = (std::vector<BaseSpan> *)new std::vector<BaseSpan>();
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  nuiResult = (void *)result;
+  return nuiResult;
+}
+
+SWIGEXPORT void SWIGSTDCALL
+CSharp_Dali_std_vector_BaseSpan_Release(void *refVector) {
+  std::vector<BaseSpan> *spanPtr = (std::vector<BaseSpan> *)0;
+
+  spanPtr = (std::vector<BaseSpan> *)refVector;
+  {
+    try {
+      delete spanPtr;
+    }
+    CALL_CATCH_EXCEPTION();
+  }
+}
+
+SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_std_vector_BaseSpan_ValueOfIndex(
+    void *refVector, unsigned long argIndex) {
+  void *nuiResult;
+  std::vector<BaseSpan> *spanPtr = (std::vector<BaseSpan> *)0;
+  std::vector<BaseSpan>::size_type itemSize;
+  std::vector<BaseSpan>::value_type *result = 0;
+
+  spanPtr = (std::vector<BaseSpan> *)refVector;
+  itemSize = (std::vector<BaseSpan>::size_type)argIndex;
+  {
+    try {
+      result =
+          (std::vector<BaseSpan>::value_type *)&(spanPtr)->operator[](itemSize);
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  nuiResult = (void *)result;
+  return nuiResult;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_std_vector_BaseSpan_TypeOfIndex(
+    void *refVector, unsigned long argIndex) {
+
+  Dali::Toolkit::Text::SpanType::Value result;
+  std::vector<BaseSpan> *item = (std::vector<BaseSpan> *)0;
+  std::vector<BaseSpan>::size_type itemSize;
+  std::vector<BaseSpan>::value_type *spanPtr = 0;
+
+  item = (std::vector<BaseSpan> *)refVector;
+  itemSize = (std::vector<BaseSpan>::size_type)argIndex;
+  {
+    try {
+      spanPtr =
+          (std::vector<BaseSpan>::value_type *)&(item)->operator[](itemSize);
+      result = spanPtr->GetSpanType();
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  int nuiResult = (int)result;
+  return nuiResult;
+}
+
+SWIGEXPORT int SWIGSTDCALL
+CSharp_Dali_std_vector_BaseSpan_Size(void *refVector) {
+  std::vector<BaseSpan> *spanVectorPtr = (std::vector<BaseSpan> *)0;
+  int size;
+
+  spanVectorPtr = (std::vector<BaseSpan> *)refVector;
+  {
+    try {
+      size = (spanVectorPtr)->size();
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  return size;
+}
+
+SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_std_vector_Range_Create() {
+  void *nuiResult;
+  std::vector<Range> *result = 0;
+
+  {
+    try {
+      result = (std::vector<Range> *)new std::vector<Range>();
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  nuiResult = (void *)result;
+  return nuiResult;
+}
+
+SWIGEXPORT void SWIGSTDCALL
+CSharp_Dali_std_vector_Range_Release(void *refVector) {
+  std::vector<Range> *rangePtr = (std::vector<Range> *)0;
+
+  rangePtr = (std::vector<Range> *)refVector;
+  {
+    try {
+      delete rangePtr;
+    }
+    CALL_CATCH_EXCEPTION();
+  }
+}
+
+SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_std_vector_Range_ValueOfIndex(
+    void *refVector, unsigned long argIndex) {
+  void *nuiResult;
+  std::vector<Range> *rangePtr = (std::vector<Range> *)0;
+  std::vector<Range>::size_type itemSize;
+  std::vector<Range>::value_type *result = 0;
+
+  rangePtr = (std::vector<Range> *)refVector;
+  itemSize = (std::vector<Range>::size_type)argIndex;
+  {
+    try {
+      result =
+          (std::vector<Range>::value_type *)&(rangePtr)->operator[](itemSize);
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  nuiResult = (void *)result;
+  return nuiResult;
+}
+
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_std_vector_Range_Size(void *refVector) {
+  std::vector<Range> *rangePtr = (std::vector<Range> *)0;
+  int size;
+
+  rangePtr = (std::vector<Range> *)refVector;
+  {
+    try {
+      size = (rangePtr)->size();
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  return size;
+}
+
 #ifdef __cplusplus
 }
 #endif
\ No newline at end of file
index 9b8f33e..ebc26cc 100644 (file)
@@ -53,6 +53,30 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_BaseSpan(void *refBaseSpan) {
   }
 }
 
+SWIGEXPORT int SWIGSTDCALL CSharp_Dali_BaseSpan_GetSpanType(void *refBaseSpan) {
+
+  Dali::Toolkit::Text::SpanType::Value result;
+
+  BaseSpan *spanPtr = (BaseSpan *)0;
+  spanPtr = (BaseSpan *)refBaseSpan;
+  if (!spanPtr) {
+    SWIG_CSharpSetPendingExceptionArgument(
+        SWIG_CSharpArgumentNullException,
+        "Attempt to dereference null BaseSpan", 0);
+    return 0;
+  }
+
+  {
+    try {
+      result = spanPtr->GetSpanType();
+    }
+    CALL_CATCH_EXCEPTION(0);
+  }
+
+  int nuiResult = (int)result;
+  return nuiResult;
+}
+
 // ForegroundColorSpan
 
 SWIGEXPORT void SWIGSTDCALL