From 0be764a2de7ea8fa43f7f0aeb2c9128d73e85ee1 Mon Sep 17 00:00:00 2001 From: rephorm Date: Thu, 17 Jan 2002 04:33:47 +0000 Subject: [PATCH] Updated deskswitcher to observe desktops and switch the highlighted button automatically upon desk switch. SVN revision: 5842 --- data/epplets/deskswitcher/deskswitcher.fe | 27 +++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/data/epplets/deskswitcher/deskswitcher.fe b/data/epplets/deskswitcher/deskswitcher.fe index e32a6d765..2bc25e9a7 100644 --- a/data/epplets/deskswitcher/deskswitcher.fe +++ b/data/epplets/deskswitcher/deskswitcher.fe @@ -11,6 +11,24 @@ global { array desks; } +/* set up observer functions */ +function deskSwitchObserver(object data, number desk) +{ + number i; + Console.println("in deskSwitchObserver: " + desk); + + for(i = 0; i < Array.size(desks); i++) + { + if (i != desk) + { + desks[i].obj.setColor(255,255,255,128); + } + } + desks[desk].obj.setColor(255,255,255,255); +} + + + /* set up callback function */ function downCB(object d, object ev, number b, number x, number y) { @@ -95,5 +113,10 @@ for (i = 0; i < 8; i++) desks[i].setup(); } -/* highlight first desktop */ -desks[0].obj.setColor(255, 255, 255, 255); +/* add observer, when the desktop is switched, the function "deskSwitchObserver is called, and passed epp along with it (although it isn't used);*/ + +epp.addDesktopObserver("deskSwitchObserver", epp); + +/* start out by highlighting the current desktop */ +desks[e.get_current_desktop()].obj.setColor(255, 255, 255, 255); +