From 376292c22d1e3437f93ce0eec3911b83af774042 Mon Sep 17 00:00:00 2001 From: NicJA Date: Sat, 11 Mar 2017 19:51:57 +0000 Subject: [PATCH] only set the busy pointer while work is being done git-svn-id: https://svn.aros.org/svn/aros/trunk/AROS@54092 fb15a70f-31f2-0310-bbcc-cdcc74a49acc --- test/exec/raytracer-smp/main.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/test/exec/raytracer-smp/main.c b/test/exec/raytracer-smp/main.c index c06fbc819d..2112f4d9f3 100644 --- a/test/exec/raytracer-smp/main.c +++ b/test/exec/raytracer-smp/main.c @@ -73,8 +73,6 @@ struct Window * createMainWindow() { if (pubScreen) UnlockPubScreen(0, pubScreen); - - SetWindowPointer(displayWin, WA_BusyPointer, TRUE, TAG_DONE); } return displayWin; @@ -153,6 +151,7 @@ int main() struct Task *renderer; struct Message *msg; struct MyMessage cmd; + BOOL busyPointer = FALSE; width = (displayWin->Width - displayWin->BorderLeft - displayWin->BorderRight); height = (displayWin->Height - displayWin->BorderTop - displayWin->BorderBottom); @@ -292,6 +291,16 @@ int main() msg->mm_Body.Stats.tasksIn, msg->mm_Body.Stats.tasksOut); SetWindowTitles(displayWin, tmpbuf, NULL); + if ((busyPointer) && (msg->mm_Body.Stats.tasksWork == 0)) + { + SetWindowPointer(displayWin, WA_BusyPointer, FALSE, TAG_DONE); + busyPointer = FALSE; + } + else if ((!busyPointer) && (msg->mm_Body.Stats.tasksWork > 0)) + { + SetWindowPointer(displayWin, WA_BusyPointer, TRUE, TAG_DONE); + busyPointer = TRUE; + } break; default: -- 2.11.4.GIT