add preference setting UI