/* TODO: implement me
        private void m_report_Progress(
            String task, 
            int page, 
            int currRecord, 
            int recordCount, 
            out bool cancel) 
        { 
            if (m_cancelPrinting) {
                if (cWindow.ask("Confirm you want to cancel the execution of this report?", VbMsgBoxResult.vbNo)) {
                    cancel = true;
                    closeProgressDlg();
                    return;
                } 
                else {
                    m_cancelPrinting = false;
                }
            }

            if (m_fProgress == null) { return; }

            if (page > 0) { m_fProgress.lbCurrPage.Caption = page; }
            if (task != "") { m_fProgress.lbTask.Caption = task; }
            if (currRecord > 0) { m_fProgress.lbCurrRecord.Caption = currRecord; }
            if (recordCount > 0 && Val(m_fProgress.lbRecordCount.Caption) != recordCount) { 
                m_fProgress.lbRecordCount.Caption = recordCount; 
            }

            double percent = 0;
            if (recordCount > 0 && currRecord > 0) {
                percent = currRecord / recordCount;
                m_fProgress.prgVar.Value = percent * 100;
            }
        }
         */

        private void closeProgressDlg() {
            m_fProgress.Close();
            m_fProgress = null;
        }
 private void showProgressDlg() {
     m_cancelPrinting = false;
     if (m_fProgress == null) { 
         m_fProgress = new fProgress();
         // TODO: add event for m_report_Progress
     }
     m_fProgress.Show();
     m_fProgress.BringToFront();
 }
 private void closeProgressDlg() {
     if (m_fProgress != null && !m_fProgress.IsDisposed)
     {
         m_fProgress.Close();
     }
     m_fProgress = null;
 }