BurnCDDlg.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. // BurnCDDlg.h : header file
  2. //
  3. #pragma once
  4. #include "FileListBox.h"
  5. // CBurnCDDlg dialog
  6. class CBurnCDDlg : public CDialog
  7. {
  8. // Construction
  9. public:
  10. CBurnCDDlg(CWnd* pParent = NULL); // standard constructor
  11. // Dialog Data
  12. enum { IDD = IDD_BURNCD_DIALOG };
  13. protected:
  14. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  15. // Implementation
  16. protected:
  17. HICON m_hIcon;
  18. bool m_isCdromSupported;
  19. bool m_isDvdSupported;
  20. bool m_isDualLayerDvdSupported;
  21. int m_selectedMediaType;
  22. bool m_isBurning;
  23. bool m_cancelBurn;
  24. CCriticalSection m_critSection;
  25. void SetCancelBurning(bool bCancel);
  26. bool GetCancelBurning();
  27. CString GetMediaTypeString(int mediaType);
  28. void AddRecordersToComboBox();
  29. void ClearListControl();
  30. void UpdateCapacity();
  31. void EnableBurnButton();
  32. void EnableUI(BOOL bEnable);
  33. static UINT __cdecl BurnThread(LPVOID pParam);
  34. static bool CreateMediaFileSystem(CBurnCDDlg* pThis, IMAPI_MEDIA_PHYSICAL_TYPE mediaType, IStream** dataStream);
  35. void UpdateTimes(LONG totalTime, LONG remainingTime);
  36. void UpdateBuffer(LONG usedSystemBuffer, LONG totalSystemBuffer);
  37. void UpdateProgress(LONG writtenSectors, LONG totalSectors);
  38. // Generated message map functions
  39. virtual BOOL OnInitDialog();
  40. CComboBox m_deviceComboBox;
  41. afx_msg void OnCbnSelchangeDeviceCombo();
  42. afx_msg void OnLbnSelchangeBurnFileList();
  43. afx_msg void OnBnClickedAddFilesButton();
  44. afx_msg void OnBnClickedAddFolderButton();
  45. CFileListBox m_fileListbox;
  46. afx_msg void OnDestroy();
  47. afx_msg void OnBnClickedBurnButton();
  48. afx_msg LRESULT OnImapiUpdate(WPARAM, LPARAM);
  49. afx_msg LRESULT OnBurnStatusMessage(WPARAM, LPARAM);
  50. afx_msg LRESULT OnBurnFinished(WPARAM, LPARAM);
  51. CStatic m_progressText;
  52. CStatic m_estimatedTime;
  53. CStatic m_timeLeft;
  54. CProgressCtrl m_progressCtrl;
  55. CStatic m_bufferText;
  56. CProgressCtrl m_bufferCtrl;
  57. CStatic m_supportedMediaTypes;
  58. CProgressCtrl m_capacityProgress;
  59. CStatic m_maxText;
  60. CComboBox m_mediaTypeCombo;
  61. afx_msg void OnCbnSelchangeMediaTypeCombo();
  62. afx_msg void OnBnClickedRemoveFilesButton();
  63. CString m_volumeLabel;
  64. BOOL m_closeMedia;
  65. BOOL m_ejectWhenFinished;
  66. DECLARE_MESSAGE_MAP()
  67. };