| | |
| | | m_crBkgnd = RGB(225, 225, 225); |
| | | m_hbrBkgnd = nullptr; |
| | | m_pActiveAlarm = nullptr; |
| | | m_pObserver = nullptr; |
| | | } |
| | | |
| | | CAlarmPopupDlg::~CAlarmPopupDlg() |
| | |
| | | |
| | | // CAlarmPopupDlg 消息处理程序 |
| | | |
| | | |
| | | void CAlarmPopupDlg::InitRxWindows() |
| | | { |
| | | /* code */ |
| | | // 订阅数据 |
| | | IRxWindows* pRxWindows = RX_GetRxWindows(); |
| | | pRxWindows->enableLog(5); |
| | | if (m_pObserver == NULL) { |
| | | m_pObserver = pRxWindows->allocObserver([&](IAny* pAny) -> void { |
| | | // onNext |
| | | pAny->addRef(); |
| | | int code = pAny->getCode(); |
| | | if (RX_CODE_BONDER_BEEP == code) { |
| | | bool bMute = theApp.m_model.getBonder().isMute(); |
| | | SetButtonBackgroundColors(bMute); |
| | | TRACE("RX_CODE_BONDER_BEEP %s\n", bMute ? "1" : "0"); |
| | | } |
| | | pAny->release(); |
| | | }, [&]() -> void { |
| | | // onComplete |
| | | }, [&](IThrowable* pThrowable) -> void { |
| | | // onErrorm |
| | | pThrowable->printf(); |
| | | }); |
| | | |
| | | theApp.m_model.getObservable()->observeOn(pRxWindows->mainThread()) |
| | | ->subscribe(m_pObserver); |
| | | } |
| | | } |
| | | |
| | | BOOL CAlarmPopupDlg::OnInitDialog() |
| | | { |
| | |
| | | pLine->SetLineColor(RGB(168, 168, 168)); |
| | | |
| | | |
| | | InitRxWindows(); |
| | | return TRUE; // return TRUE unless you set the focus to a control |
| | | // 异常: OCX 属性页应返回 FALSE |
| | | } |
| | |
| | | if (m_pActiveAlarm != nullptr) { |
| | | m_pActiveAlarm->release(); |
| | | m_pActiveAlarm = nullptr; |
| | | } |
| | | |
| | | if (m_pObserver != nullptr) { |
| | | m_pObserver->unsubscribe(); |
| | | m_pObserver = NULL; |
| | | } |
| | | } |
| | | |
| | |
| | | m_btnSoundOff.SetBkgndColor(BS_NORMAL, BTN_SOUND_OFF_BKGND_NORMAL); |
| | | m_btnSoundOff.SetBkgndColor(BS_HOVER, BTN_SOUND_OFF_BKGND_HOVER); |
| | | m_btnSoundOff.SetBkgndColor(BS_PRESS, BTN_SOUND_OFF_BKGND_PRESS); |
| | | m_btnSoundOff.Invalidate(); |
| | | } |
| | | else { |
| | | m_btnSoundOff.SetBkgndColor(BS_NORMAL, BTN_SOUND_ON_BKGND_NORMAL); |
| | | m_btnSoundOff.SetBkgndColor(BS_HOVER, BTN_SOUND_ON_BKGND_HOVER); |
| | | m_btnSoundOff.SetBkgndColor(BS_PRESS, BTN_SOUND_ON_BKGND_PRESS); |
| | | m_btnSoundOff.Invalidate(); |
| | | } |
| | | } |
| | | |
| | |
| | | TRACE("操作失败:地址=1003,错误码=%d\n", nFlag); |
| | | } |
| | | }); |
| | | |
| | | SetButtonBackgroundColors(!bMute); |
| | | } |
| | | |
| | | void CAlarmPopupDlg::OnBnClickedButtonAlarmOff() |