void CEventLog::AddWithNotification(const EventPtr& eventPtr, unsigned int displayTime /* = NOTIFICATION_DISPLAY_TIME */, unsigned int messageTime /* = NOTIFICATION_MESSAGE_TIME */, bool withSound /* = true */) { if (eventPtr == nullptr) return; Add(eventPtr); // queue the eventPtr as a kai toast notification if (!eventPtr->GetIcon().empty()) CGUIDialogKaiToast::QueueNotification(eventPtr->GetIcon(), eventPtr->GetLabel(), eventPtr->GetDescription(), displayTime, withSound, messageTime); else { CGUIDialogKaiToast::eMessageType type = CGUIDialogKaiToast::Info; if (eventPtr->GetLevel() == EventLevel::Warning) type = CGUIDialogKaiToast::Warning; else if (eventPtr->GetLevel() == EventLevel::Error) type = CGUIDialogKaiToast::Error; CGUIDialogKaiToast::QueueNotification(type, eventPtr->GetLabel(), eventPtr->GetDescription(), displayTime, withSound, messageTime); } }
CFileItemPtr CEventsDirectory::EventToFileItem(const EventPtr& eventItem) { if (eventItem == NULL) return CFileItemPtr(); CFileItemPtr item(new CFileItem(eventItem->GetLabel())); item->m_dateTime = eventItem->GetDateTime(); if (!eventItem->GetIcon().empty()) item->SetIconImage(eventItem->GetIcon()); item->SetProperty(PROPERTY_EVENT_IDENTIFIER, eventItem->GetIdentifier()); item->SetProperty(PROPERTY_EVENT_LEVEL, EventLevelToString(eventItem->GetLevel())); item->SetProperty(PROPERTY_EVENT_DESCRIPTION, eventItem->GetDescription()); return item; }
void CEventLog::Add(const EventPtr& eventPtr) { if (eventPtr == nullptr || eventPtr->GetIdentifier().empty() || !CServiceBroker::GetSettings().GetBool(CSettings::SETTING_EVENTLOG_ENABLED) || (eventPtr->GetLevel() == EventLevel::Information && !CServiceBroker::GetSettings().GetBool(CSettings::SETTING_EVENTLOG_ENABLED_NOTIFICATIONS))) return; CSingleLock lock(m_critical); if (m_eventsMap.find(eventPtr->GetIdentifier()) != m_eventsMap.end()) return; // store the event m_events.push_back(eventPtr); m_eventsMap.insert(std::make_pair(eventPtr->GetIdentifier(), eventPtr)); SendMessage(eventPtr, GUI_MSG_EVENT_ADDED); }