From 81214a3e858c8a883785e7b5df51bb79eba244e1 Mon Sep 17 00:00:00 2001 From: Claudio Sacerdoti Coen Date: Tue, 7 Nov 2000 13:06:54 +0000 Subject: [PATCH] Repository fixing --- .../test/t1.config | 3 + .../test/t1lib.log | 3 + .../test/test.ps | 0 .../minidom/Makefile | 36 +++ .../minidom/minidom.ml | 61 ++++ .../minidom/minidom.mli | 50 ++++ .../minidom/ml_minidom.c | 277 ++++++++++++++++++ .../minidom/ml_minidom.h | 5 + .../minidom/test.ml | 9 + .../minidom/test.opt | Bin 0 -> 114202 bytes .../minidom/test.xml | 3 + .../ml_gtk_mathview.c | 92 ++++++ 12 files changed, 539 insertions(+) create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/t1.config create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/t1lib.log create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/test.ps create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/Makefile create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/minidom.ml create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/minidom.mli create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/ml_minidom.c create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/ml_minidom.h create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.ml create mode 100755 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.opt create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.xml create mode 100644 helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/ml_gtk_mathview.c diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/t1.config b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/t1.config new file mode 100644 index 000000000..afb669e95 --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/t1.config @@ -0,0 +1,3 @@ +ENCODING=. +AFM=/usr/share/texmf/fonts/afm/ +TYPE1=/usr/share/texmf/fonts/type1/bluesky/cm/:/usr/X11R6/lib/X11/fonts/Type1/:. diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/t1lib.log b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/t1lib.log new file mode 100644 index 000000000..d3fcd8ae6 --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/t1lib.log @@ -0,0 +1,3 @@ +(W) T1_AAInit(): Unsupported AA specification: level=2, bpp=0 +(W) T1_AAInit(): Unsupported AA specification: level=2, bpp=0 +(W) T1_AAInit(): Unsupported AA specification: level=2, bpp=0 diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/test.ps b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.1.0/test/test.ps new file mode 100644 index 000000000..e69de29bb diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/Makefile b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/Makefile new file mode 100644 index 000000000..de7e7233b --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/Makefile @@ -0,0 +1,36 @@ + +all: ml_minidom.o minidom.cmi minidom.cmo minidom.cmx test test.opt + +ml_minidom.o: ml_minidom.c + gcc -c -I../ -I/usr/lib/ocaml/caml/ `glib-config --cflags` `xml-config --cflags` `gtkmathview-config --cflags` $< + +minidom.cmi: minidom.mli + ocamlc -c $< + +minidom.cmo: minidom.ml + ocamlc -c $< + +minidom.cmx: minidom.ml + ocamlopt -c $< + +test.cmo: test.ml + ocamlc -c test.ml + +test.cmx: test.ml + ocamlopt -c test.ml + +test: test.cmo minidom.cmi ml_minidom.o + ocamlc -custom -o test minidom.cmo test.cmo ml_minidom.o \ + -cclib "`xml-config --libs`" -cclib "`glib-config --libs`" \ + -cclib "`gtkmathview-config --libs`" + +test.opt: test.cmx minidom.cmi ml_minidom.o + ocamlopt -o test.opt minidom.cmx test.cmx ml_minidom.o \ + -cclib "`xml-config --libs`" -cclib "`glib-config --libs`" \ + -cclib "`gtkmathview-config --libs`" + +clean: + rm -f *.o *.cm? test + +cleanbak: + rm -f *~ diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/minidom.ml b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/minidom.ml new file mode 100644 index 000000000..31e677b3f --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/minidom.ml @@ -0,0 +1,61 @@ + +type mDOMString +type mDOMDoc +type mDOMNode +type mDOMAttr +type mDOMEntity + +external string_of_mDOMString : mDOMString -> string = "ml_string_of_mDOMString" +external mDOMString_of_string : string -> mDOMString = "ml_mDOMString_of_string" +external mDOMString_eq : string -> string -> bool = "ml_mDOMString_eq" + +external doc_load : string -> mDOMDoc = "ml_doc_load" +external doc_unload : mDOMDoc -> unit = "ml_doc_unload" + +external doc_new : mDOMString -> mDOMDoc = "ml_doc_new" +external doc_get_root_node : mDOMDoc -> mDOMNode = "ml_doc_get_root_node" + +external doc_add_entity : mDOMDoc -> mDOMString -> mDOMString -> mDOMEntity = "ml_doc_add_entity" +external doc_get_entity : mDOMDoc -> mDOMString -> mDOMEntity option = "ml_doc_get_entity" +external doc_get_predefined_entity : mDOMDoc -> mDOMString -> mDOMEntity option = "ml_doc_get_predefined_entity" +external entity_get_content : mDOMEntity -> mDOMString = "ml_entity_get_content" + +external node_is_text : mDOMNode -> bool = "ml_node_is_text" +external node_is_element : mDOMNode -> bool = "ml_node_is_element" +external node_is_blank : mDOMNode -> bool = "ml_node_is_blank" +external node_is_entity_ref : mDOMNode -> bool = "ml_node_is_entity_ref" +external node_get_type : mDOMNode -> int = "ml_node_get_type" +external node_get_name : mDOMNode -> mDOMString option = "ml_node_get_name" +external node_get_ns_uri : mDOMNode -> mDOMString option = "ml_node_get_ns_uri" +external node_get_attribute : mDOMNode -> mDOMString -> mDOMString option = "ml_node_get_attribute" +external node_get_attribute_ns : mDOMNode -> mDOMString -> mDOMString -> mDOMString option = "ml_node_get_attribute_ns" +external node_get_content : mDOMNode -> mDOMString option = "ml_node_get_content" +external node_get_parent : mDOMNode -> mDOMNode option = "ml_node_get_parent" +external node_get_prev_sibling : mDOMNode -> mDOMNode option = "ml_node_get_prev_sibling" +external node_get_next_sibling : mDOMNode -> mDOMNode option = "ml_node_get_next_sibling" +external node_get_first_child : mDOMNode -> mDOMNode option = "ml_node_get_first_child" +external node_get_first_attribute : mDOMNode -> mDOMAttr option = "ml_node_get_first_attribute" +external node_is_first : mDOMNode -> bool = "ml_node_is_first" +external node_is_last : mDOMNode -> bool = "ml_node_is_last" + +external attr_get_name : mDOMAttr -> mDOMString option = "ml_attr_get_name" +external attr_get_ns_uri : mDOMAttr -> mDOMString option = "ml_attr_get_ns_uri" +external attr_get_value : mDOMAttr -> mDOMString option = "ml_attr_get_value" +external attr_get_prev_sibling : mDOMAttr -> mDOMAttr option = "ml_attr_get_prev_sibling" +external attr_get_next_sibling : mDOMAttr -> mDOMAttr option = "ml_attr_get_next_sibling" +external attr_get_parent : mDOMAttr -> mDOMNode option = "ml_attr_get_parent" + +let rec node_list_of_node_first = + function None -> [] + | Some node -> node :: (node_list_of_node_first (node_get_next_sibling node)) + +let rec attr_list_of_attr_first = + function None -> [] + | Some attr -> attr :: (attr_list_of_attr_first (attr_get_next_sibling attr)) + +let node_get_children node = + (node_list_of_node_first (node_get_first_child node)) + +let node_get_attributes node = + (attr_list_of_attr_first (node_get_first_attribute node)) + diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/minidom.mli b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/minidom.mli new file mode 100644 index 000000000..d37f62bd9 --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/minidom.mli @@ -0,0 +1,50 @@ + +type mDOMString +type mDOMDoc +type mDOMNode +type mDOMAttr +type mDOMEntity + +external string_of_mDOMString : mDOMString -> string = "ml_string_of_mDOMString" +external mDOMString_of_string : string -> mDOMString = "ml_mDOMString_of_string" +external mDOMString_eq : string -> string -> bool = "ml_mDOMString_eq" + +external doc_load : string -> mDOMDoc = "ml_doc_load" +external doc_unload : mDOMDoc -> unit = "ml_doc_unload" + +external doc_new : mDOMString -> mDOMDoc = "ml_doc_new" +external doc_get_root_node : mDOMDoc -> mDOMNode = "ml_doc_get_root_node" + +external doc_add_entity : mDOMDoc -> mDOMString -> mDOMString -> mDOMEntity = "ml_doc_add_entity" +external doc_get_entity : mDOMDoc -> mDOMString -> mDOMEntity option = "ml_doc_get_entity" +external doc_get_predefined_entity : mDOMDoc -> mDOMString -> mDOMEntity option = "ml_doc_get_predefined_entity" +external entity_get_content : mDOMEntity -> mDOMString = "ml_entity_get_content" + +external node_is_text : mDOMNode -> bool = "ml_node_is_text" +external node_is_element : mDOMNode -> bool = "ml_node_is_element" +external node_is_blank : mDOMNode -> bool = "ml_node_is_blank" +external node_is_entity_ref : mDOMNode -> bool = "ml_node_is_entity_ref" +external node_get_type : mDOMNode -> int = "ml_node_get_type" +external node_get_name : mDOMNode -> mDOMString option = "ml_node_get_name" +external node_get_ns_uri : mDOMNode -> mDOMString option = "ml_node_get_ns_uri" +external node_get_attribute : mDOMNode -> mDOMString -> mDOMString option = "ml_node_get_attribute" +external node_get_attribute_ns : mDOMNode -> mDOMString -> mDOMString -> mDOMString option = "ml_node_get_attribute_ns" +external node_get_content : mDOMNode -> mDOMString option = "ml_node_get_content" +external node_get_parent : mDOMNode -> mDOMNode option = "ml_node_get_parent" +external node_get_prev_sibling : mDOMNode -> mDOMNode option = "ml_node_get_prev_sibling" +external node_get_next_sibling : mDOMNode -> mDOMNode option = "ml_node_get_next_sibling" +external node_get_first_child : mDOMNode -> mDOMNode option = "ml_node_get_first_child" +external node_get_first_attribute : mDOMNode -> mDOMAttr option = "ml_node_get_first_attribute" +external node_is_first : mDOMNode -> bool = "ml_node_is_first" +external node_is_last : mDOMNode -> bool = "ml_node_is_last" + +external attr_get_name : mDOMAttr -> mDOMString option = "ml_attr_get_name" +external attr_get_ns_uri : mDOMAttr -> mDOMString option = "ml_attr_get_ns_uri" +external attr_get_value : mDOMAttr -> mDOMString option = "ml_attr_get_value" +external attr_get_prev_sibling : mDOMAttr -> mDOMAttr option = "ml_attr_get_prev_sibling" +external attr_get_next_sibling : mDOMAttr -> mDOMAttr option = "ml_attr_get_next_sibling" +external attr_get_parent : mDOMAttr -> mDOMNode option = "ml_attr_get_parent" + +val node_get_children : mDOMNode -> mDOMNode list +val node_get_attributes : mDOMNode -> mDOMAttr list + diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/ml_minidom.c b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/ml_minidom.c new file mode 100644 index 000000000..2eb389fc1 --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/ml_minidom.c @@ -0,0 +1,277 @@ + +#include +#include +#include + +#include "minidom.h" +#include "ml_minidom.h" + +static value +ml_some(value v) +{ + CAMLparam1(v); + value ret = alloc_small(1,0); + Field(ret,0) = v; + CAMLreturn(ret); +} + +value +ml_string_of_mDOMString(value s) +{ + CAMLparam1(s); + CAMLreturn(s); +} + +value +ml_mDOMString_of_string(value s) +{ + CAMLparam1(s); + CAMLreturn(s); +} + +value +ml_doc_load(value file_name) +{ + mDOMDocRef doc_ref; + + CAMLparam1(file_name); + + doc_ref = mdom_load(String_val(file_name), FALSE, NULL); + if (doc_ref == NULL) failwith("minidom: could not load document"); + + CAMLreturn((value) doc_ref); +} + +value +ml_doc_unload(value doc) +{ + CAMLparam1(doc); + + mdom_unload((mDOMDocRef) doc); + + CAMLreturn(Val_unit); +} + +value +ml_doc_new(value s) +{ + mDOMDocRef doc_ref; + + CAMLparam1(s); + + doc_ref = mdom_doc_new(mDOMString_val(s)); + if (doc_ref == NULL) failwith("minidom: could not create new document"); + + CAMLreturn((value) doc_ref); +} + + +value +ml_doc_get_root_node(value doc) +{ + mDOMNodeRef root; + + CAMLparam1(doc); + root = mdom_doc_get_root_node((mDOMDocRef) doc); + if (root == NULL) failwith("minidom: document has no root node!"); + + CAMLreturn((value) root); +} + +value +ml_doc_add_entity(value doc, value name, value content) +{ + mDOMEntityRef ent; + + CAMLparam3(doc, name, content); + ent = mdom_doc_add_entity((mDOMDocRef) doc, mDOMString_val(name), mDOMString_val(content)); + if (ent == NULL) failwith("minidom: could not add entity"); + + CAMLreturn((value) ent); +} + +value +ml_doc_get_entity(value doc, value name) +{ + mDOMEntityRef ent; + + CAMLparam2(doc, name); + ent = mdom_doc_get_entity((mDOMDocRef) doc, mDOMString_val(name)); + + CAMLreturn(Val_option(ent, Val_ptr)); +} + +value +ml_doc_get_predefined_entity(value name) +{ + mDOMEntityRef ent; + + CAMLparam1(name); + ent = mdom_get_predefined_entity(mDOMString_val(name)); + + CAMLreturn(Val_option(ent, Val_ptr)); +} + +value +ml_entity_get_content(value ent) +{ + CAMLparam1(ent); + CAMLreturn(Val_mDOMString(mdom_entity_get_content((mDOMEntityRef) ent))); +} + +value +ml_node_is_text(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_bool(mdom_node_is_text((mDOMNodeRef) node))); +} + +value +ml_node_is_element(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_bool(mdom_node_is_element((mDOMNodeRef) node))); +} + +value +ml_node_is_blank(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_bool(mdom_node_is_blank((mDOMNodeRef) node))); +} + +value +ml_node_is_entity_ref(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_bool(mdom_node_is_entity_ref((mDOMNodeRef) node))); +} + +value +ml_node_get_type(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_int(mdom_node_get_type((mDOMNodeRef) node))); +} + +value +ml_node_get_name(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_option(mdom_node_get_name((mDOMNodeRef) node), Val_mDOMString)); +} + +value +ml_node_get_ns_uri(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_option(mdom_node_get_ns_uri((mDOMNodeRef) node), Val_mDOMString)); +} + +value +ml_node_get_attribute(value node, value name) +{ + CAMLparam2(node,name); + CAMLreturn(Val_option(mdom_node_get_attribute((mDOMNodeRef) node, String_val(name)), Val_mDOMString)); +} + +value +ml_node_get_attribute_ns(value node, value name, value ns_uri) +{ + CAMLparam2(node,name); + CAMLreturn(Val_option(mdom_node_get_attribute_ns((mDOMNodeRef) node, + String_val(name), + String_val(ns_uri)), Val_mDOMString)); +} + +value +ml_node_get_parent(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_option(mdom_node_get_parent((mDOMNodeRef) node), Val_ptr)); +} + +value +ml_node_get_prev_sibling(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_option(mdom_node_get_prev_sibling((mDOMNodeRef) node), Val_ptr)); +} + +value +ml_node_get_next_sibling(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_option(mdom_node_get_next_sibling((mDOMNodeRef) node), Val_ptr)); +} + +value +ml_node_get_first_child(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_option(mdom_node_get_first_child((mDOMNodeRef) node), Val_ptr)); +} + +value +ml_node_get_first_attribute(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_option(mdom_node_get_first_attribute((mDOMNodeRef) node), Val_ptr)); +} + +value +ml_node_is_first(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_bool(mdom_node_is_first((mDOMNodeRef) node))); +} + +value +ml_node_is_last(value node) +{ + CAMLparam1(node); + CAMLreturn(Val_bool(mdom_node_is_last((mDOMNodeRef) node))); +} + +value +ml_attr_get_name(value attr) +{ + CAMLparam1(attr); + CAMLreturn(Val_option(mdom_attr_get_name((mDOMAttrRef) attr), Val_mDOMString)); +} + +value +ml_attr_get_ns_uri(value attr) +{ + CAMLparam1(attr); + CAMLreturn(Val_option(mdom_attr_get_ns_uri((mDOMAttrRef) attr), Val_mDOMString)); +} + +value +ml_attr_get_value(value attr) +{ + CAMLparam1(attr); + CAMLreturn(Val_option(mdom_attr_get_value((mDOMAttrRef) attr), Val_mDOMString)); +} + +value +ml_attr_get_prev_sibling(value attr) +{ + CAMLparam1(attr); + CAMLreturn(Val_option(mdom_attr_get_prev_sibling((mDOMAttrRef) attr), Val_ptr)); +} + +value +ml_attr_get_next_sibling(value attr) +{ + CAMLparam1(attr); + CAMLreturn(Val_option(mdom_attr_get_next_sibling((mDOMAttrRef) attr), Val_ptr)); +} + +value +ml_attr_get_parent(value attr) +{ + CAMLparam1(attr); + CAMLreturn(Val_option(mdom_attr_get_parent((mDOMAttrRef) attr), Val_ptr)); +} + diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/ml_minidom.h b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/ml_minidom.h new file mode 100644 index 000000000..318b7f067 --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/ml_minidom.h @@ -0,0 +1,5 @@ +#define Val_ptr(p) ((value) (p)) +#define Val_option(p,f) ((p != NULL) ? ml_some(f(p)) : Val_unit) +#define Val_mDOMString(s) (copy_string((char*) (s))) +#define mDOMString_val(v) ((mDOMStringRef) String_val(v)) +#define mDOMNode_val(v) ((mDOMNodeRef) v) diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.ml b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.ml new file mode 100644 index 000000000..a1567864c --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.ml @@ -0,0 +1,9 @@ + +let doc = Minidom.doc_load "test.xml" + +let root = Minidom.doc_get_root_node doc + +let Some root_name = Minidom.node_get_name root +;; + +print_string (Minidom.string_of_mDOMString root_name) \ No newline at end of file diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.opt b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.opt new file mode 100755 index 0000000000000000000000000000000000000000..f2dc0ec1e8834d9e548173d88dcc1da654f8b06d GIT binary patch literal 114202 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 literal 0 HcmV?d00001 diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.xml b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.xml new file mode 100644 index 000000000..bdac517a3 --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/minidom/test.xml @@ -0,0 +1,3 @@ + + + diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/ml_gtk_mathview.c b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/ml_gtk_mathview.c new file mode 100644 index 000000000..3286f9054 --- /dev/null +++ b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/ml_gtk_mathview.c @@ -0,0 +1,92 @@ +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include +#include +#include + +#include "minidom/ml_minidom.h" + +/* : Next row should be put in a .h of lablgtk. */ +#define GtkAdjustment_val(val) check_cast(GTK_ADJUSTMENT,val) + +#define GtkMathView_val(val) check_cast(GTK_MATH_VIEW,val) +ML_3 (gtk_math_view_new,GtkAdjustment_val, GtkAdjustment_val, Bool_val, Val_GtkWidget_sink) +ML_2 (gtk_math_view_load, GtkMathView_val, String_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_ptr) +ML_2 (gtk_math_view_set_selection, GtkMathView_val, mDOMNode_val, Unit) +ML_1 (gtk_math_view_get_width, GtkMathView_val, Val_int) +ML_1 (gtk_math_view_get_height, GtkMathView_val, Val_int) +ML_3 (gtk_math_view_set_top, GtkMathView_val, Int_val, Int_val, Unit) +ML_3 (gtk_math_view_set_adjustments, GtkMathView_val, GtkAdjustment_val, GtkAdjustment_val, Unit) +ML_1 (gtk_math_view_get_hadjustment, GtkMathView_val, Val_GtkWidget) +ML_1 (gtk_math_view_get_vadjustment, GtkMathView_val, Val_GtkWidget) +ML_1 (gtk_math_view_get_buffer, GtkMathView_val, Val_GdkPixmap) +ML_1 (gtk_math_view_get_frame, GtkMathView_val, Val_GtkWidget) +ML_2 (gtk_math_view_set_font_size, GtkMathView_val, Int_val, Unit) +ML_1 (gtk_math_view_get_font_size, GtkMathView_val, Val_int) +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_log_verbosity, GtkMathView_val, Int_val, Unit) +ML_1 (gtk_math_view_get_log_verbosity, GtkMathView_val, Val_int) + + +value ml_gtk_math_view_export_to_postscript (value arg1, value arg2) +{ + CAMLparam1(arg1); + char *filename; + FILE *fd; + int res; + filename = String_val (arg2); + if ((fd = fopen(filename, "w"))) { + gtk_math_view_export_to_postscript (GtkMathView_val (arg1), fd); + fclose (fd); + res = 1; + } else { + fprintf(stderr, "Error opening file %s for writing\n", filename); + res = 0; + } + CAMLreturn (Val_bool(res)); +} + +value ml_gtk_math_view_get_top (value arg1) +{ + CAMLparam1(arg1); + CAMLlocal1 (result); + int x, y; + gtk_math_view_get_top(GtkMathView_val (arg1), &x, &y); + result = alloc(2, 0); + Store_field(result, 0, Val_int(x)); + Store_field(result, 0, Val_int(y)); + CAMLreturn (result); +} + + +value ml_gtk_math_view_mDOMNode_of_bodex_option (value arg1) +{ + CAMLparam1(arg1); + + mDOMNodeRef nr; + + if (arg1==Val_int(0)) { + nr = NULL; + } else { + nr = (mDOMNodeRef) Field(arg1, 0); + } + + CAMLreturn((value) nr); +} -- 2.39.2