What does ':' mean in the class header?

I’ve seen in some UE4 code lines like this in the class headers:

class FBoxSceneProxy{
    ...
    uint32 bDrawOnlyIfSelected:1;
    ...
};

What does the :1 mean?

Is it an Unreal Header Tool thing or is it a valid C++ syntax?

That’s a bit-field declaration.

In this case we’re saying “make a uint32 that’s 1-bit wide” - you’ll see it used for flags quite often in order to pack multiple flags together in memory. It may also be used for other low-level things, like unpacking flags sent over the network.

http://en.cppreference.com/w/cpp/language/bit_field