#pragma once
#include "afxwin.h"
#include <HwmAgentCallback.h>
#include <vector>
#include "AddAttendeeLogic.h"
#include "demoAddHwmConfAttendeeDlg.h"

// demoCreateConfWithAttendeeDlg 对话框

class demoCreateConfWithAttendeeDlg : public CDialogEx
{
    DECLARE_DYNAMIC(demoCreateConfWithAttendeeDlg)

public:
    demoCreateConfWithAttendeeDlg(CWnd* pParent = NULL);   // 标准构造函数
    virtual ~demoCreateConfWithAttendeeDlg();

// 对话框数据
#ifdef AFX_DESIGN_TIME
    enum { IDD = IDD_CREATE_CONF_WITH_ATTENDEE_DIALOG };
#endif

protected:
    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持
    virtual BOOL OnInitDialog();
    DECLARE_MESSAGE_MAP()
public:
    afx_msg void OnBnClickedCancel();
    afx_msg void OnBnClickedOk();
    afx_msg void OnComboConfIdTypeChange();// 会议ID类型ComboBox切换调用                                           
    afx_msg void OnComboVmrConfIdTypeChange(); // vmr的confid type切换响应函数
    afx_msg LRESULT OnVmrList(WPARAM wparam, LPARAM lparam); // VMR列表通知
    afx_msg void OnBnClickedButtonAddHwmConfAttendee();
    afx_msg void OnBnClickedButtonDeleteHwmConfAttendee();

    void fillAttendees();

public:
    CEdit m_confSubjectEdit;
    CComboBox m_confTypeCombo;
    CComboBox m_confAdmissionCombo;// 呼入限制ComboBox对象
    CComboBox m_confIdTypeCombo;   // 会议Id类型ComboBox对象
    CComboBox m_vmrConfIdTypeCtrl;  // 云会议室的会议Id类型
    CEdit m_confPassEdit;          // 密码显示Edit对象
    int clickCreatConfWithAttendee();
    CButton m_needPasswordCheck;
    CButton m_allowRecord; //允许录制
    CButton m_isAutoRecord; //是否开启自动录制
    CButton m_openWaitingRoomCheck; // 是否开启等候室
    std::vector<hwmsdkagent::HwmVmrInfo> vmrList; // vmr信息列表
    CComboBox m_durationHourCtrl; // 会议持续时长 小时
    CComboBox m_durationMinuteCtrl; // 会议持续时长 分钟
    CString m_customInfo;
    CEdit m_conCurrentParticipantsEdit;
    CButton m_defaultSummaryState; // 会议云录制是否包含纪要，初始值
    CButton m_autoPublishSummary; // 是否自动发布纪要
    CButton m_supportWatermark;  // 是否支持水印
    CButton m_forbiddenScreenShots; // 是否开启防截屏
    CComboBox m_softTerminalAutoMuteCtrl; // 软终端自动静音
    CComboBox m_hardTerminalAutoMuteCtrl; // 硬终端自动静音

    // 与会者列表编辑相关
    CButton m_btnAddAttendee;
    CEdit m_editDeleteAttendee;
    CButton m_btnDeleteAttendee;
    CEdit m_attendeesEdit;
    AddAttendeeLogic<hwmsdkagent::HwmConfAttendee, demoAddHwmConfAttendeeDlg> m_addAttendeeLogic;
};
