void GamePanelControl::activatePanel(GamePanel *panel, bool activate) { bool block = panel->isBlocking(); QList<GamePanel*> &list = block ? activeBlockingPanels : activeNonBlockingPanels; if (activate) { if (activePanels.contains(panel)) return; if (list.isEmpty() && block) emit blocked(); list.append(panel); activePanels.append(panel); } else { if (!activePanels.contains(panel)) return; list.removeAll(panel); activePanels.removeAll(panel); if (!block && list.isEmpty()) emit unblocked(); } }
bool QXmppUserBlacklistManager::handleStanza(const QDomElement &element) { if (element.tagName() != "iq") return false; // XEP-0191: Blocking Command if (QXmppUserBlacklistIq::isUserBlacklistIq(element)) { QXmppUserBlacklistIq blockListIq; blockListIq.parse(element); emit blacklistReceived(blockListIq.blocklist()); return true; } else if (QXmppUserBlacklistBlockIq::isUserBlacklistBlockIq(element)) { QXmppUserBlacklistBlockIq blockIq; blockIq.parse(element); emit blocked(blockIq.jid()); return true; } else if (QXmppUserBlacklistUnblockIq::isUserBlacklistUnblockIq(element)) { QXmppUserBlacklistUnblockIq unblockIq; unblockIq.parse(element); emit unblocked(unblockIq.jid()); return true; } return false; }