issue #5057, refactor LayoutType
issue #5057, refactor BackGroundColorType