widget pre_init