diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-10 18:07:22 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-10 18:07:22 +0000 |
commit | c04dcc2e7d834218ef2d4194331e383402495ae1 (patch) | |
tree | 7333e38d10d75386e60f336b80c2443c1166031d /xbmc/addons/interfaces/gui/dialogs/OK.cpp | |
parent | Initial commit. (diff) | |
download | kodi-c04dcc2e7d834218ef2d4194331e383402495ae1.tar.xz kodi-c04dcc2e7d834218ef2d4194331e383402495ae1.zip |
Adding upstream version 2:20.4+dfsg.upstream/2%20.4+dfsg
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'xbmc/addons/interfaces/gui/dialogs/OK.cpp')
-rw-r--r-- | xbmc/addons/interfaces/gui/dialogs/OK.cpp | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/xbmc/addons/interfaces/gui/dialogs/OK.cpp b/xbmc/addons/interfaces/gui/dialogs/OK.cpp new file mode 100644 index 0000000..90e9d69 --- /dev/null +++ b/xbmc/addons/interfaces/gui/dialogs/OK.cpp @@ -0,0 +1,73 @@ +/* + * Copyright (C) 2005-2018 Team Kodi + * This file is part of Kodi - https://kodi.tv + * + * SPDX-License-Identifier: GPL-2.0-or-later + * See LICENSES/README.md for more information. + */ + +#include "OK.h" + +#include "addons/binary-addons/AddonDll.h" +#include "addons/kodi-dev-kit/include/kodi/gui/dialogs/OK.h" +#include "messaging/helpers/DialogOKHelper.h" +#include "utils/Variant.h" +#include "utils/log.h" + +using namespace KODI::MESSAGING; + +namespace ADDON +{ + +void Interface_GUIDialogOK::Init(AddonGlobalInterface* addonInterface) +{ + addonInterface->toKodi->kodi_gui->dialogOK = new AddonToKodiFuncTable_kodi_gui_dialogOK(); + + addonInterface->toKodi->kodi_gui->dialogOK->show_and_get_input_single_text = + show_and_get_input_single_text; + addonInterface->toKodi->kodi_gui->dialogOK->show_and_get_input_line_text = + show_and_get_input_line_text; +} + +void Interface_GUIDialogOK::DeInit(AddonGlobalInterface* addonInterface) +{ + delete addonInterface->toKodi->kodi_gui->dialogOK; +} + +void Interface_GUIDialogOK::show_and_get_input_single_text(KODI_HANDLE kodiBase, + const char* heading, + const char* text) +{ + CAddonDll* addon = static_cast<CAddonDll*>(kodiBase); + if (!addon || !heading || !text) + { + CLog::Log( + LOGERROR, "Interface_GUIDialogOK:{} - invalid data (addon='{}', heading='{}', text='{}')", + __func__, kodiBase, static_cast<const void*>(heading), static_cast<const void*>(text)); + return; + } + + HELPERS::ShowOKDialogText(CVariant{heading}, CVariant{text}); +} + +void Interface_GUIDialogOK::show_and_get_input_line_text(KODI_HANDLE kodiBase, + const char* heading, + const char* line0, + const char* line1, + const char* line2) +{ + CAddonDll* addon = static_cast<CAddonDll*>(kodiBase); + if (!addon || !heading || !line0 || !line1 || !line2) + { + CLog::Log(LOGERROR, + "Interface_GUIDialogOK::{} - invalid data (addon='{}', heading='{}', line0='{}', " + "line1='{}', line2='{}')", + __func__, kodiBase, static_cast<const void*>(heading), + static_cast<const void*>(line0), static_cast<const void*>(line1), + static_cast<const void*>(line2)); + return; + } + HELPERS::ShowOKDialogLines(CVariant{heading}, CVariant{line0}, CVariant{line1}, CVariant{line2}); +} + +} /* namespace ADDON */ |