diff options
author | Jedidiah Barber <contact@jedbarber.id.au> | 2025-02-06 21:55:19 +1300 |
---|---|---|
committer | Jedidiah Barber <contact@jedbarber.id.au> | 2025-02-06 21:55:19 +1300 |
commit | ee967448bae4733aec70ba128062bc3357a2f0df (patch) | |
tree | c6f2fb273132be93a1a067bec854fa13923ea792 /body/c_fl.cpp | |
parent | 547e538476a788dfeb5974f9b8ad29441d18980b (diff) |
Diffstat (limited to 'body/c_fl.cpp')
-rw-r--r-- | body/c_fl.cpp | 42 |
1 files changed, 36 insertions, 6 deletions
diff --git a/body/c_fl.cpp b/body/c_fl.cpp index a9e6d16..24119a6 100644 --- a/body/c_fl.cpp +++ b/body/c_fl.cpp @@ -6,6 +6,7 @@ #include <FL/Enumerations.H> #include <FL/Fl.H> +#include <FL/Fl_Widget.H> #include "c_fl.h" @@ -115,24 +116,53 @@ void fl_redraw() { +short fl_inside_callback = 0; + +void fl_delete_widget(void * w) { + Fl::delete_widget(static_cast<Fl_Widget*>(w)); +} + + + + int fl_check() { - return Fl::check(); + short temp = fl_inside_callback; + fl_inside_callback = 1; + int ret = Fl::check(); + fl_inside_callback = temp; + return ret; } int fl_ready() { - return Fl::ready(); + short temp = fl_inside_callback; + fl_inside_callback = 1; + int ret = Fl::ready(); + fl_inside_callback = temp; + return ret; } int fl_wait() { - return Fl::wait(); + short temp = fl_inside_callback; + fl_inside_callback = 1; + int ret = Fl::wait(); + fl_inside_callback = temp; + return ret; } -int fl_wait2(double s) { - return Fl::wait(s); +double fl_wait2(double s) { + short temp = fl_inside_callback; + fl_inside_callback = 1; + double ret = Fl::wait(s); + fl_inside_callback = temp; + return ret; } int fl_run() { - return Fl::run(); + short temp = fl_inside_callback; + fl_inside_callback = 1; + int ret = Fl::run(); + fl_inside_callback = temp; + return ret; } |