| | |
| | | theApp.m_model.notifyPtr(RX_CODE_SELECT_PLC, pSelectedPlc); |
| | | } |
| | | } |
| | | else if (RX_PLC_STATE_CHANGED == code) { |
| | | CPLC* pPlc; |
| | | if (pAny->getPtrValue("ptr", (void*&)pPlc)) { |
| | | HTREEITEM hItem = FindItem(pPlc); |
| | | if (hItem != nullptr && pPlc->isConnected()) { |
| | | m_treeCtrl.ShowItemBadgeDotMode(hItem); |
| | | } |
| | | else { |
| | | m_treeCtrl.HideItemBadge(hItem); |
| | | } |
| | | } |
| | | } |
| | | |
| | | pAny->release(); |
| | | }, [&]() -> void { |
| | |
| | | for (auto item : plcs) { |
| | | HTREEITEM hItem = m_treeCtrl.InsertItem(item.second->getName().c_str(), nullptr, nullptr); |
| | | m_treeCtrl.SetItemData(hItem, (DWORD_PTR)item.second); |
| | | m_treeCtrl.SetItemBadge(hItem, TREE_BADGE_BACKGROUND, TREE_BADGE_FOREGROUND); |
| | | if (item.second->isConnected()) { |
| | | m_treeCtrl.ShowItemBadgeDotMode(hItem); |
| | | } |
| | | if (hItemFirst == nullptr) { |
| | | hItemFirst = hItem; |
| | | } |