]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/lablgtkmathview/ml_gtk_mathview.c
First commit towards the 0.2.8 version.
[helm.git] / helm / DEVEL / lablgtkmathview / ml_gtk_mathview.c
index 5f86ff03c4bc35a057f16159b340b0ac014542ee..5038e8b864ed288c4d549e2d6a5176b56911b628 100644 (file)
 #include <gtk_tags.h>
 
 #include <minidom.h>
-#include "mlminidom/ml_minidom.h"
-
-/* <CSC/>: Next row should be put in a .h of lablgtk. */
-#define GtkAdjustment_val(val) check_cast(GTK_ADJUSTMENT,val)
-/* <LUCA/>: Next rows too */
-
-extern value Val_GtkObject_sink();
-
-#define Val_GtkAny(w) Val_GtkObject((GtkObject*)w)
-#define Val_GtkAny_sink(w) Val_GtkObject_sink((GtkObject*)w)
-#define Val_GtkWidget Val_GtkAny
-#define Val_GtkWidget_sink Val_GtkAny_sink
+#include "ml_minidom.h"
 
 #define GtkMathView_val(val) check_cast(GTK_MATH_VIEW,val)
 
@@ -82,8 +71,8 @@ value_of_font_manager_id(FontManagerId id)
 
 ML_2 (gtk_math_view_new,GtkAdjustment_val, GtkAdjustment_val, Val_GtkWidget_sink)
 ML_2 (gtk_math_view_load, GtkMathView_val, String_val, Val_bool)
+ML_2 (gtk_math_view_load_tree, GtkMathView_val, mDOMDocRef_val, Val_bool)
 ML_1 (gtk_math_view_unload, GtkMathView_val, Unit)
-/*ML_1 (gtk_math_view_dump, GtkMathView_val, Unit)*/
 ML_1 (gtk_math_view_get_selection, GtkMathView_val, Val_mDOMNodeRef)
 ML_2 (gtk_math_view_set_selection, GtkMathView_val, mDOMNodeRef_val, Unit)
 ML_1 (gtk_math_view_get_width, GtkMathView_val, Val_int)
@@ -100,10 +89,17 @@ ML_2 (gtk_math_view_set_anti_aliasing, GtkMathView_val, Bool_val, Unit)
 ML_1 (gtk_math_view_get_anti_aliasing, GtkMathView_val, Val_bool)
 ML_2 (gtk_math_view_set_kerning, GtkMathView_val, Bool_val, Unit)
 ML_1 (gtk_math_view_get_kerning, GtkMathView_val, Val_bool)
+ML_2 (gtk_math_view_set_transparency, GtkMathView_val, Bool_val, Unit)
+ML_1 (gtk_math_view_get_transparency, GtkMathView_val, Val_bool)
 ML_2 (gtk_math_view_set_log_verbosity, GtkMathView_val, Int_val, Unit)
 ML_1 (gtk_math_view_get_log_verbosity, GtkMathView_val, Val_int)
 ML_2 (gtk_math_view_set_font_manager_type, GtkMathView_val, font_manager_id_of_value, Unit)
 ML_1 (gtk_math_view_get_font_manager_type, GtkMathView_val, value_of_font_manager_id)
+ML_1 (gtk_math_view_get_element, GtkMathView_val, Val_mDOMNodeRef)
+ML_1 (gtk_math_view_get_action, GtkMathView_val, Val_mDOMNodeRef)
+ML_1 (gtk_math_view_action_get_selected, GtkMathView_val, Val_int)
+ML_2 (gtk_math_view_action_set_selected, GtkMathView_val, Int_val, Unit)
+ML_1 (gtk_math_view_action_toggle, GtkMathView_val, Unit)
 
 value
 ml_gtk_math_view_export_to_postscript_native(value arg1,
@@ -145,15 +141,22 @@ value ml_gtk_math_view_get_top (value arg1)
    CAMLreturn (result);
 }
 
-value ml_gtk_math_view_mDOMNode_of_boxed (value arg1)
+
+value ml_gtk_math_view_mDOMNode_of_boxed_option (value arg1)
 {
    CAMLparam1(arg1);
 
    mDOMNodeRef nr;
+   CAMLlocal1 (tmp);
    CAMLlocal1 (optval);
    CAMLlocal1 (res);
 
-   nr = (mDOMNodeRef) Field(arg1, 1);
+   if (arg1==Val_int(0)) {
+      assert(0);
+   } else {
+      tmp = Field(arg1, 0);
+      nr = (mDOMNodeRef) Field(tmp, 1);
+   }
    optval = Val_mDOMNodeRef(nr);
    if (optval==Val_int(0)) {
       assert(0);
@@ -164,13 +167,19 @@ value ml_gtk_math_view_mDOMNode_of_boxed (value arg1)
   CAMLreturn(res);
 }
 
-value ml_gtk_math_view_mDOMNode_option_of_boxed (value arg1)
+value ml_gtk_math_view_mDOMNode_option_of_boxed_option (value arg1)
 {
    CAMLparam1(arg1);
 
    mDOMNodeRef nr;
+   CAMLlocal1 (tmp);
 
-   nr = (mDOMNodeRef) Field(arg1, 1);
+   if (arg1==Val_int(0)) {
+      nr=NULL;
+   } else {
+      tmp = Field(arg1, 0);
+      nr = (mDOMNodeRef) Field(tmp, 1);
+   }
 
-   CAMLreturn(Val_mDOMNodeRef(nr));
+  CAMLreturn(Val_mDOMNodeRef(nr));
 }