Does anybody know why this is a macro and not a function?
(screen.h)

#define UPDATE_FVWM_SCREEN(fw)                                             \
        do {                                                               \
                rectangle g;                                               \
                struct monitor *mnew;                                      \
                                                                           \
                get_unshaded_geometry((fw), &g);                           \
                mnew = FindScreenOfXY((fw)->g.frame.x, (fw)->g.frame.y);   \
                /* Avoid unnecessary updates. */                           \
                if (mnew == (fw)->m)                                       \
                        break;                                             \
                (fw)->m_prev = (fw)->m;                                    \
                (fw)->m = mnew;                                            \
                (fw)->Desk = mnew->virtual_scr.CurrentDesk;                \
                EWMH_SetCurrentDesktop((fw)->m);                           \
                desk_add_fw((fw));                                         \
                BroadcastConfig(M_CONFIGURE_WINDOW, (fw));                 \
        } while(0)

The "do { ... } while (0)" was probably written by me.

Ciao

Dominik ^_^  ^_^

--

Dominik Vogt

Reply via email to