new virtual function in drawable