3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/options/option_types/OptionID.h"
7#include "mc/options/option_types/OptionOwnerType.h"
8#include "mc/options/option_types/OptionResetFlags.h"
9#include "mc/options/option_types/OptionType.h"
13namespace Bedrock::PubSub {
class Subscription; }
14namespace Json {
class Value; }
57 ::OptionOwnerType ownerType,
58 ::OptionResetFlags resetFlags,
59 ::std::string
const& captionId,
60 ::std::string
const& saveTag,
61 ::OptionType optionType
72 ::OptionOwnerType ownerType,
73 ::OptionResetFlags resetFlags,
74 ::std::string
const& captionId,
75 ::std::string
const& saveTag,
76 ::OptionType optionType
106 virtual void save(::std::vector<::std::pair<::std::string, ::std::string>>&) = 0;
109 virtual void load(::std::string
const&) = 0;
112 virtual void load(::std::map<::std::string, ::std::string>& propertyMap);
123 ::OptionOwnerType ownerType,
124 ::OptionResetFlags resetFlags,
125 ::std::string
const& captionId,
126 ::std::string
const& saveTag,
127 ::OptionType optionType
131 ::std::vector<::std::pair<::std::string, ::std::string>>& propertyVector,
132 ::std::string
const& value
137 MCNAPI ::Bedrock::PubSub::Subscription
registerLock(::std::function<
void(
bool&)> isModifiableCondition);
139 MCNAPI ::Bedrock::PubSub::Subscription
146 MCNAPI
static bool read(::std::string
const& valueString,
bool& output);
154 ::OptionOwnerType ownerType,
155 ::OptionResetFlags resetFlags,
156 ::std::string
const& captionId,
157 ::std::string
const& saveTag,
158 ::OptionType optionType
165 MCNAPI
void $load(::std::map<::std::string, ::std::string>& propertyMap);
MCAPI Impl(::OptionID id, ::OptionOwnerType ownerType, ::OptionResetFlags resetFlags, ::std::string const &captionId, ::std::string const &saveTag, ::OptionType optionType)
MCAPI void * $ctor(::OptionID id, ::OptionOwnerType ownerType, ::OptionResetFlags resetFlags, ::std::string const &captionId, ::std::string const &saveTag, ::OptionType optionType)
MCAPI::Bedrock::PubSub::Subscription registerObserver(::std::function< void(::Option const &)> onValueChangedCallback)
static MCAPI void ** $vftable()
MCAPI::Bedrock::PubSub::Subscription registerLock(::std::function< void(bool &)> isModifiableCondition)
static MCAPI bool read(::std::string const &valueString, bool &output)
MCAPI bool getBool() const
MCAPI void $load(::std::map<::std::string, ::std::string > &propertyMap)
MCAPI void _updatePropertyVector(::std::vector<::std::pair<::std::string, ::std::string > > &propertyVector, ::std::string const &value)
MCAPI void * $ctor(::OptionID id, ::OptionOwnerType ownerType, ::OptionResetFlags resetFlags, ::std::string const &captionId, ::std::string const &saveTag, ::OptionType optionType)
MCAPI Option(::OptionID id, ::OptionOwnerType ownerType, ::OptionResetFlags resetFlags, ::std::string const &captionId, ::std::string const &saveTag, ::OptionType optionType)
MCAPI void $load(::Json::Value const &valueJson)