Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!sdd.hp.com!ucsd!ucbvax!van-bc!rsoft!mindlink!a275 From: a275@mindlink.UUCP (Travers Naran) Newsgroups: comp.sys.amiga Subject: Change a window's task's priority Message-ID: <1891@mindlink.UUCP> Date: 24 May 90 16:08:23 GMT Organization: MIND LINK! - British Columbia, Canada Lines: 39 Have you ever wanted to have a task's window priority changed when you activate it? In other words, say you have a back ground task with a window and when that window is activated, the task's priority jumps. With out modifying the task? Well, here is an answer I found. and it is following Commodore Amiga's Guidelines! First off, I had to remember something I read in the ROM Kernal Manuals: When the WorkBench screen is going to be closed, all tasks with windows in that screen are alerted to close the window and "die". Well, I looked at the Window structure and found this: struct MsgPort *UserPort, *WindowPort; Now, A MsgPort structure looks like this: struct MsgPort { struct Node mp_Node; UBYTE mp_Flags; UBYTE mp_SigBit; /* signal bit number */ struct Task *mp_SigTask; /* task to be signalled */ struct List mp_MsgList; /* message linked list */ }; Notice, mp_SigTask is the task to signal when a message from Intuition arrives. This variable is initially set to point at the task which opened the window. Ah-hah! :-) So, if the window uses IDCMP, you can change a window's priority, so to speak.:-) -- ------------------------------------------------------------------- Travers "T'aran" Naran (I am male) Simon Fraser University, Computing Science Whovian, Prober, Treker, Quantum Leaper.... Mailing addresses: Usenet Travers_Naran@mindlink.UUCP or uunet!van-bc!rsoft!mindlink!Travers_Naran ------------------------------------------------------------------