Move drawing logic to drawers

Close #1106.
The purpose is to draw items not related to datasets.