add on_show()