X-Git-Url: https://git.jsancho.org/?p=c-irrlicht.git;a=blobdiff_plain;f=src%2FIrrlichtDevice.cpp;h=ff416ce5968e5d0417f22aee4fda346450b11ff7;hp=fc7665a9e97231c033d8e8d3789dbd7c388ae332;hb=3c6f05ad0b0efa2a787e25db274ef67c1a29b4fd;hpb=fbd9cb42b9a35c3c4416ae2fd3d65525e6fd50b9 diff --git a/src/IrrlichtDevice.cpp b/src/IrrlichtDevice.cpp index fc7665a..ff416ce 100644 --- a/src/IrrlichtDevice.cpp +++ b/src/IrrlichtDevice.cpp @@ -20,16 +20,58 @@ */ #include +#include #include "IrrlichtDevice.h" extern "C" { - void* irr_IrrlichtDevice_getSceneManager(void* device) + irr_gui_ICursorControl* + irr_getCursorControl(irr_IrrlichtDevice* device) + { + return ((irr::IrrlichtDevice*)device)->getCursorControl(); + } + + irr_io_IFileSystem* + irr_getFileSystem(irr_IrrlichtDevice* device) + { + return ((irr::IrrlichtDevice*)device)->getFileSystem(); + } + + irr_gui_IGUIEnvironment* + irr_getGUIEnvironment(irr_IrrlichtDevice* device) + { + return ((irr::IrrlichtDevice*)device)->getGUIEnvironment(); + } + + irr_scene_ISceneManager* + irr_getSceneManager(irr_IrrlichtDevice* device) { return ((irr::IrrlichtDevice*)device)->getSceneManager(); } - void* irr_IrrlichtDevice_getVideoDriver(void* device) + irr_video_IVideoDriver* + irr_getVideoDriver(irr_IrrlichtDevice* device) { return ((irr::IrrlichtDevice*)device)->getVideoDriver(); } + + void + irr_setWindowCaption(irr_IrrlichtDevice* device, + const char* text) + { + wchar_t *wtext = (wchar_t*)malloc((strlen(text) + 1) * sizeof(wchar_t)); + mbsrtowcs(wtext, &text, strlen(text) + 1, NULL); + ((irr::IrrlichtDevice*)device)->setWindowCaption(wtext); + } + + int + irr_run(irr_IrrlichtDevice* device) + { + return ((irr::IrrlichtDevice*)device)->run() ? 1 : 0; + } + + int + irr_drop(irr_IrrlichtDevice* device) + { + return ((irr::IrrlichtDevice*)device)->drop() ? 1 : 0; + } }