/* (non-Javadoc)
  * @see org.eclipse.jface.dialogs.IDialogPage#setVisible(boolean)
  */
 @Override
 public void setVisible(boolean visible) {
   // check if the stored settings have changed
   if (visible) {
     if (fStoredSettings != null && !fStoredSettings.equals(getCurrentSettings())) {
       fVariableBlock.refresh(null);
     }
   } else {
     if (fVariableBlock.hasChanges()) {
       String title = PreferencesMessages.ClasspathVariablesPreferencePage_savechanges_title;
       String message = PreferencesMessages.ClasspathVariablesPreferencePage_savechanges_message;
       if (MessageDialog.openQuestion(getShell(), title, message)) {
         performOk();
       }
       fVariableBlock.setChanges(false); // forget
     }
     fStoredSettings = getCurrentSettings();
   }
   super.setVisible(visible);
 }