If either the new width or height is different from its old value, _X_t_C_o_n_f_i_g_u_r_e_W_i_d_g_e_t calls the widget's resize procedure to notify it of the size change; otherwise, it simply returns.
The _X_t_M_o_v_e_W_i_d_g_e_t function returns immediately if the specified geometry fields are the same as the old values. Otherwise, _X_t_M_o_v_e_W_i_d_g_e_t writes the new x and y values into the widget and, if the widget is realized, issues an Xlib _X_M_o_v_e_W_i_n_d_o_w call on the widget's window.
The _X_t_R_e_s_i_z_e_W_i_d_g_e_t function returns immediately if the specified geometry fields are the same as the old values. Otherwise, _X_t_R_e_s_i_z_e_W_i_d_g_e_t writes the new width, height, and border_width values into the widget and, if the widget is realized, issues an _X_C_o_n_f_i_g_u_r_e_W_i_n_d_o_w call on the widget's window.
If the new width or height are different from the old values, _X_t_R_e_s_i_z_e_W_i_d_g_e_t calls the widget's resize procedure to notify it of the size change.
The _X_t_R_e_s_i_z_e_W_i_n_d_o_w function calls the _X_C_o_n_f_i_g_u_r_e_W_i_n_d_o_w Xlib function to make the window of the specified widget match its width, height, and border width. This request is done unconditionally because there is no way to tell if these values match the current values. Note that the widget's resize procedure is not called.
There are very few times to use _X_t_R_e_s_i_z_e_W_i_n_d_o_w; instead, you should use _X_t_R_e_s_i_z_e_W_i_d_g_e_t.