]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - src/gui-scrollbar.cpp
Some doc
[guile-irrlicht.git] / src / gui-scrollbar.cpp
index 9a71d788c082c4290afa7bfce7a0323609cfbef6..bf9bd1c62582fa7ff620516211cb51e5e993357c 100644 (file)
 
 #include <irrlicht/irrlicht.h>
 #include <libguile.h>
-
 #include "gui-scrollbar.h"
 #include "gsubr.h"
 #include "wrapped.h"
 
-extern "C" {
-
-  void
-  init_gui_scrollbar (void)
-  {
-    init_gui_scrollbar_type ();
-    DEFINE_GSUBR ("get-pos", 1, 0, 0, irr_gui_getPos);
-    DEFINE_GSUBR ("set-pos!", 2, 0, 0, irr_gui_setPos);
-  }
-
-  DEFINE_WRAPPED_TYPE (irr::gui::IGUIScrollBar*, "gui-scrollbar",
-                       init_gui_scrollbar_type, gui_scrollbar_p,
-                       wrap_gui_scrollbar, unwrap_gui_scrollbar);
-
-  SCM
-  irr_gui_getPos (SCM wrapped_scrollbar)
-  {
-    irr::gui::IGUIScrollBar* scrollbar = unwrap_gui_scrollbar (wrapped_scrollbar);
-    return scm_from_int32 (scrollbar->getPos ());
-  }
-
-  SCM
-  irr_gui_setPos (SCM wrapped_scrollbar,
-                  SCM pos)
-  {
-    irr::gui::IGUIScrollBar* scrollbar = unwrap_gui_scrollbar (wrapped_scrollbar);
-    scrollbar->setPos (scm_to_int32 (pos));
-    return SCM_UNSPECIFIED;
-  }
+using namespace irr;
+
+SCM
+IGUIScrollBar_getPos (SCM gui_scrollbar)
+{
+  return scm_from_int32
+    (((gui::IGUIScrollBar*)scm_to_irr_pointer (gui_scrollbar))->getPos ());
+}
+
+SCM
+IGUIScrollBar_setMax (SCM gui_scrollbar,
+                      SCM max)
+{
+  ((gui::IGUIScrollBar*) scm_to_irr_pointer (gui_scrollbar))->setMax (scm_to_int32 (max));
+  return SCM_UNSPECIFIED;
+}
+
+SCM
+IGUIScrollBar_setPos (SCM gui_scrollbar,
+                      SCM pos)
+{
+  ((gui::IGUIScrollBar*) scm_to_irr_pointer (gui_scrollbar))->setPos (scm_to_int32 (pos));
+  return SCM_UNSPECIFIED;
+}
 
+void
+init_gui_scrollbar (void)
+{
+  DEFINE_GSUBR ("IGUIScrollBar_getPos", 1, 0, 0, IGUIScrollBar_getPos);
+  DEFINE_GSUBR ("IGUIScrollBar_setMax", 2, 0, 0, IGUIScrollBar_setMax);
+  DEFINE_GSUBR ("IGUIScrollBar_setPos", 2, 0, 0, IGUIScrollBar_setPos);
 }