add button state process
process default property
improve