Refactor painter with "PaintMode" switch in factory