add event and list event functions, refresh event need to clear up previous list