mirror of
https://github.com/wiiu-env/WiiUPluginSystem.git
synced 2026-03-21 17:54:10 -05:00
Update WUPSConfigItemIPAddress to take a currentValue
This commit is contained in:
parent
05940ce93f
commit
3e25970f3e
|
|
@ -33,7 +33,8 @@ typedef void (*IPAddressValueChangedCallback)(ConfigItemIPAddress *item, uint32_
|
|||
WUPSConfigAPIStatus
|
||||
WUPSConfigItemIPAddress_Create(const char *identifier,
|
||||
const char *displayName,
|
||||
uint32_t defaultIPAddress,
|
||||
uint32_t defaultValue,
|
||||
uint32_t currentValue,
|
||||
IPAddressValueChangedCallback callback,
|
||||
WUPSConfigItemHandle *outItemHandle);
|
||||
|
||||
|
|
@ -41,7 +42,8 @@ WUPSConfigItemIPAddress_Create(const char *identifier,
|
|||
WUPSConfigAPIStatus
|
||||
WUPSConfigItemIPAddress_AddToCategory(WUPSConfigCategoryHandle cat,
|
||||
const char *identifier, const char *displayName,
|
||||
uint32_t defaultIPAddress,
|
||||
uint32_t defaultValue,
|
||||
uint32_t currentValue,
|
||||
IPAddressValueChangedCallback callback);
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
@ -56,13 +58,16 @@ WUPSConfigItemIPAddress_AddToCategory(WUPSConfigCategoryHandle cat,
|
|||
class WUPSConfigItemIPAddress : public WUPSConfigItem {
|
||||
public:
|
||||
static std::optional<WUPSConfigItemIPAddress> Create(const std::optional<std::string> &identifier,
|
||||
std::string_view displayName, uint32_t defaultIPAddress,
|
||||
std::string_view displayName,
|
||||
uint32_t defaultValue,
|
||||
uint32_t currentValue,
|
||||
IPAddressValueChangedCallback callback,
|
||||
WUPSConfigAPIStatus &err) noexcept;
|
||||
|
||||
static WUPSConfigItemIPAddress Create(const std::optional<std::string> &identifier,
|
||||
std::string_view displayName,
|
||||
uint32_t defaultIPAddress,
|
||||
uint32_t defaultValue,
|
||||
uint32_t currentValue,
|
||||
IPAddressValueChangedCallback callback);
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -187,7 +187,8 @@ static void WUPSConfigItemIPAddress_onDelete(void *context) {
|
|||
WUPSConfigAPIStatus
|
||||
WUPSConfigItemIPAddress_Create(const char *identifier,
|
||||
const char *displayName,
|
||||
const uint32_t defaultIPAddress,
|
||||
const uint32_t defaultValue,
|
||||
const uint32_t currentValue,
|
||||
IPAddressValueChangedCallback callback,
|
||||
WUPSConfigItemHandle *outItemHandle) {
|
||||
if (outItemHandle == nullptr) {
|
||||
|
|
@ -205,9 +206,9 @@ WUPSConfigItemIPAddress_Create(const char *identifier,
|
|||
item->identifier = nullptr;
|
||||
}
|
||||
|
||||
item->currentValue = defaultIPAddress;
|
||||
item->defaultValue = defaultIPAddress;
|
||||
item->valueAtCreation = defaultIPAddress;
|
||||
item->currentValue = currentValue;
|
||||
item->defaultValue = defaultValue;
|
||||
item->valueAtCreation = currentValue;
|
||||
item->valueChangedCallback = reinterpret_cast<void *>(callback);
|
||||
|
||||
item->itemState = WUPS_CONFIG_ITEM_IP_ADDRESS_STATE_NONE;
|
||||
|
|
@ -244,13 +245,15 @@ WUPSConfigItemIPAddress_Create(const char *identifier,
|
|||
WUPSConfigAPIStatus
|
||||
WUPSConfigItemIPAddress_AddToCategory(const WUPSConfigCategoryHandle cat,
|
||||
const char *identifier, const char *displayName,
|
||||
const uint32_t defaultIPAddress,
|
||||
const uint32_t defaultValue,
|
||||
const uint32_t currentValue,
|
||||
const IPAddressValueChangedCallback callback) {
|
||||
WUPSConfigItemHandle itemHandle;
|
||||
WUPSConfigAPIStatus res;
|
||||
if ((res = WUPSConfigItemIPAddress_Create(identifier,
|
||||
displayName,
|
||||
defaultIPAddress,
|
||||
defaultValue,
|
||||
currentValue,
|
||||
callback, &itemHandle)) != WUPSCONFIG_API_RESULT_SUCCESS) {
|
||||
return res;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,13 +4,15 @@
|
|||
|
||||
std::optional<WUPSConfigItemIPAddress> WUPSConfigItemIPAddress::Create(const std::optional<std::string> &identifier,
|
||||
const std::string_view displayName,
|
||||
uint32_t defaultValue,
|
||||
const uint32_t defaultValue,
|
||||
const uint32_t currentValue,
|
||||
const IPAddressValueChangedCallback callback,
|
||||
WUPSConfigAPIStatus &err) noexcept {
|
||||
WUPSConfigItemHandle itemHandle;
|
||||
if ((err = WUPSConfigItemIPAddress_Create(identifier ? identifier->data() : nullptr,
|
||||
displayName.data(),
|
||||
defaultValue,
|
||||
currentValue,
|
||||
callback,
|
||||
&itemHandle)) != WUPSCONFIG_API_RESULT_SUCCESS) {
|
||||
return std::nullopt;
|
||||
|
|
@ -20,10 +22,11 @@ std::optional<WUPSConfigItemIPAddress> WUPSConfigItemIPAddress::Create(const std
|
|||
|
||||
WUPSConfigItemIPAddress WUPSConfigItemIPAddress::Create(const std::optional<std::string> &identifier,
|
||||
const std::string_view displayName,
|
||||
uint32_t defaultValue,
|
||||
const uint32_t defaultValue,
|
||||
const uint32_t currentValue,
|
||||
const IPAddressValueChangedCallback callback) {
|
||||
WUPSConfigAPIStatus err = WUPSCONFIG_API_RESULT_UNKNOWN_ERROR;
|
||||
auto res = Create(identifier, displayName, defaultValue, callback, err);
|
||||
auto res = Create(identifier, displayName, defaultValue, currentValue, callback, err);
|
||||
if (!res) {
|
||||
throw std::runtime_error(std::string("Failed to create WUPSConfigItemIPAddress: ").append(WUPSConfigAPI_GetStatusStr(err)));
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user