Die Verknüpfung ist Bitweise, also erübrigt sich deine zweite Frage:
Nur wenn die Bits in Style dort gesetzt sind wie die Bits im Styleflag (z.B. WM_BORDER), gibt die Operation etwas über 0 zurück. Es liegt in der Natur der
and-Operation, das als Ergebnis immer 0 herauskommt, wenn ein Operand 0 ist
Aber jetzt zur ersten: Der einzige Weg ist, deinen Wert mit
and nach allen möglichen Styles durchzurastern und dann den Namen des Styles zurückzugeben.