X-Git-Url: https://git.jsancho.org/?p=guile-irrlicht.git;a=blobdiff_plain;f=irrlicht%2Fgui.scm;fp=irrlicht%2Fgui.scm;h=3430e4d3a3cfa180414f10943f3eca950271f0a2;hp=4708d371a3c706f0ca65f439e9d33c809830235f;hb=7409d2166e97b930d76f32d0a78979df03be7119;hpb=7611ebfeeae5ed59751f108214ee7a00aea20b7b diff --git a/irrlicht/gui.scm b/irrlicht/gui.scm index 4708d37..3430e4d 100644 --- a/irrlicht/gui.scm +++ b/irrlicht/gui.scm @@ -72,6 +72,18 @@ (editbox (addEditBox gui-environment text rectangle border parent id))) (mem-wrapped editbox)))) +(define-method (add-file-open-dialog! (gui-environment ) . rest) + (let-keywords rest #f + ((title "") + (modal #t) + (parent (make )) + (id -1) + (restore-cwd #f) + (start-dir "")) + (let* ((addFileOpenDialog (get-irrlicht-proc "addFileOpenDialog" gui-environment parent)) + (dialog (addFileOpenDialog gui-environment title modal parent id restore-cwd start-dir))) + (mem-wrapped dialog)))) + (define-method (add-image! (gui-environment ) image pos . rest) (let-keywords rest #f ((use-alpha-channel #t) @@ -140,8 +152,8 @@ (let ((getSkin (get-irrlicht-proc "getSkin" gui-environment))) (getSkin gui-environment))) -(export add-button! add-editbox! add-image! add-listbox! add-scrollbar! - add-static-text! add-window! draw-all get-built-in-font get-font get-skin) +(export add-button! add-editbox! add-file-open-dialog! add-image! add-listbox! + add-scrollbar! add-static-text! add-window! draw-all get-built-in-font get-font get-skin) ;; IGUIStaticText @@ -239,3 +251,14 @@ (irr-class #:init-value "IGUIWindow")) (export ) + + +;; IGUIFileOpenDialog +(define-class () + (irr-class #:init-value "IGUIFileOpenDialog")) + +(define-method (get-file-name (dialog )) + (let ((getFileName (get-irrlicht-proc "getFileName" dialog))) + (getFileName dialog))) + +(export get-file-name)