Example #1
0
bool CGUIWindowEventLog::OnExecute(CFileItemPtr item)
{
  if (item == nullptr)
    return false;

  std::string eventIdentifier = item->GetProperty(PROPERTY_EVENT_IDENTIFIER).asString();
  if (eventIdentifier.empty())
    return false;

  const EventPtr eventPtr = CEventLog::GetInstance().Get(eventIdentifier);
  if (eventPtr == nullptr)
    return false;

  if (!eventPtr->CanExecute())
    return true;

  return eventPtr->Execute();
}
Example #2
0
void CGUIWindowEventLog::GetContextButtons(int itemNumber, CContextButtons &buttons)
{
  if (itemNumber < 0 && itemNumber >= m_vecItems->Size())
    return;

  CFileItemPtr item = m_vecItems->Get(itemNumber);
  if (item == nullptr)
    return;

  std::string eventIdentifier = item->GetProperty(PROPERTY_EVENT_IDENTIFIER).asString();
  if (eventIdentifier.empty())
    return;

  EventPtr eventPtr = CEventLog::GetInstance().Get(eventIdentifier);
  if (eventPtr == nullptr)
    return;

  buttons.Add(CONTEXT_BUTTON_INFO, g_localizeStrings.Get(19033));
  buttons.Add(CONTEXT_BUTTON_DELETE, g_localizeStrings.Get(1210));
  if (eventPtr->CanExecute())
    buttons.Add(CONTEXT_BUTTON_ACTIVATE, eventPtr->GetExecutionLabel());
}