Example #1
0
bool CAddonDll::set_setting_float(void* kodiBase, const char* id, float value)
{
  CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
  if (addon == nullptr || id == nullptr)
  {
    CLog::Log(LOGERROR, "kodi::General::%s - invalid data (addon='%p', id='%p')",
                                        __FUNCTION__, kodiBase, static_cast<const void*>(id));

    return false;
  }

  if (addon->UpdateSettingInActiveDialog(id, StringUtils::Format("%f", value)))
    return true;

  if (!addon->UpdateSettingNumber(id, value))
  {
    CLog::Log(LOGERROR, "kodi::General::%s - invalid setting type", __FUNCTION__);
    return false;
  }

  addon->SaveSettings();

  return true;
}