WindowList QxtWindowSystem::windows() { WindowList wlist; ProcessSerialNumber psn = {0, kNoProcess}; // iterate over list of processes OSErr err; while ((err = ::GetNextProcess(&psn)) == noErr) { wlist += qxt_getWindowsForPSN(&psn); } return wlist; }
WId QxtWindowSystem::activeWindow() { ProcessSerialNumber psn; OSErr err(noErr); err = ::GetFrontProcess(&psn); if (err != noErr) return WINDOW_NOT_FOUND; // in Mac OS X, first window for given PSN is always the active one WindowList wlist = qxt_getWindowsForPSN(&psn); if (wlist.count() > 0) return wlist.at(0); return WINDOW_NOT_FOUND; }