add readonly for widget