add validate, modify dragdrop