ReloadData and add some new delegate methods