Lines Matching refs:ring
2 * Functions related to the window ring.
5 * - If a window is not on the ring, its TwmWindow::ring.next and .prev
7 * - If a window is on the ring, they are both not NULL and point to a
8 * window which is also on the ring.
9 * - Corollary: if a window is the only one on the ring, .next and .prev
11 * - Functions which act on the "current" ring window, i.e. the window
12 * that has most recently been entered and is on the ring, use
15 * - If Ring is NULL, the ring is empty (and RingLeader is also NULL).
28 TwmWindow *prev = win->ring.prev;
29 TwmWindow *next = win->ring.next;
32 // if it's not on the ring, there's nothing to do. e.g., if we don't
44 * 2. If window was only thing in ring, null out ring
45 * 3. If window was ring leader, set to next (or null)
47 * If the window is the only one in the ring, prev == next == win,
50 prev->ring.next = next;
51 next->ring.prev = prev;
53 win->ring.next = win->ring.prev = NULL;
67 TwmWindow *before = after->ring.next;
69 win->ring.next = before;
70 win->ring.prev = after;
72 after->ring.next = win;
73 before->ring.prev = win;
79 assert(win->ring.next == NULL);
80 assert(win->ring.prev == NULL);
86 win->ring.next = win->ring.prev = Scr->Ring = win;