No , at the moment , the if contains only the object creation part (there is no else) .
Then its the below sequence :
CALL METHOD go_alv_meap->set_table_for_first_display
CALL METHOD go_alv_meap->get_selected_rows
IMPORTING
et_index_rows = lt_index_rows.
CALL METHOD go_alv_meap->set_selected_rows
EXPORTING
it_index_rows = lt_index_rows.
CALL METHOD go_alv_meap->check_changed_data
IMPORTING
e_valid = lv_valid
** CHANGING
** c_refresh = 'X'
* .
IF lv_valid = 'X'.
go_alv_meap->refresh_table_display( ).
ENDIF.
CALL METHOD cl_gui_cfw=>flush.
I've tried always calling them , setting values in debugging as well . Also it seems cl_gui_alv_grid has a private attribute mt_selected_rows.