title: how to use callback in GWT ListGrid.exportdata
body: <pre><code>btnDownloadExcel.addClickHandler(new ClickHandler()
  {
      public void onClick(ClickEvent event)
      {
          ApplicationController.isLogout = false;
          final ProgressBarWindow progressBarWindow = newProgressBarWindow();
          DSRequest dsRequestProperties = new DSRequest();
          dsRequestProperties.setExportAs((ExportFormat)
                  ExportFormat.OOXML);
          dsRequestProperties.setExportDatesAsFormattedString(true);
          dsRequestProperties.setExportResults(true);
          dsRequestProperties.setExportToClient(true);
          dsRequestProperties.setExportFilename("DownloadLogs.xlsx");
          String title = "Export log";
          String message = "Exporting data...";
          progressBarWindow.setShowMinimizeButton(false);
          progressBarWindow.setIsModal(true);
          progressBarWindow.setShowModalMask(true);
          progressBarWindow.initiate(title, message);
          mainGrid.exportData(dsRequestProperties);
          progressBarWindow.show();
          Timer timer = new Timer() {
              @Override
              public void run(){
                  progressBarWindow.hide();
              }
          };
          timer.schedule(50000);
      }
  });
  hstack.addMember(btnDownloadExcel);
  return hstack;
  </code></pre>
  
  <p>Instead of <code>Timer</code>, I want to use callback to hide the progress bar
  once export document is done. Timer is not hiding progress bar on time. </p>