]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - src/gui-element.cpp
<gui-file-open-dialog> add-file-open-dialog! get-file-name
[guile-irrlicht.git] / src / gui-element.cpp
index 39d3a414e9db798534a5eba7a03267eaf20bd2a4..896554d40ab2502cb7aedf55667e2a5dc8af8c77 100644 (file)
 
 using namespace irr;
 
+template <typename T>
 SCM
 IGUIElement_getID (SCM gui_element)
 {
-  gui::IGUIElement* element = (gui::IGUIElement*) scm_to_irr_pointer (gui_element);
+  T element = (T) scm_to_irr_pointer (gui_element);
   return scm_from_int32 (element->getID ());
 }
 
 void
 init_gui_element (void)
 {
-  DEFINE_GSUBR ("IGUIElement_getID", 1, 0, 0, IGUIElement_getID);
+  DEFINE_GSUBR ("IGUIButton_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIButton*>);
+  DEFINE_GSUBR ("IGUIEditBox_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIEditBox*>);
+  DEFINE_GSUBR ("IGUIElement_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIElement*>);
+  DEFINE_GSUBR ("IGUIFileOpenDialog_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIFileOpenDialog*>);
+  DEFINE_GSUBR ("IGUIImage_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIImage*>);
+  DEFINE_GSUBR ("IGUIListBox_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIListBox*>);
+  DEFINE_GSUBR ("IGUIScrollBar_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIScrollBar*>);
+  DEFINE_GSUBR ("IGUIStaticText_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIStaticText*>);
+  DEFINE_GSUBR ("IGUIWindow_getID", 1, 0, 0, IGUIElement_getID<gui::IGUIWindow*>);
 }