axmol/extensions/cocostudio/WidgetReader/RadioButtonReader/RadioButtonReader.cpp

639 lines
20 KiB
C++
Raw Normal View History

2019-11-24 23:15:56 +08:00
#include "WidgetReader/RadioButtonReader/RadioButtonReader.h"
2019-11-24 23:15:56 +08:00
#include "ui/UIRadioButton.h"
#include "platform/FileUtils.h"
#include "2d/SpriteFrameCache.h"
#include "CocoLoader.h"
#include "CSParseBinary_generated.h"
#include "FlatBuffersSerialize.h"
2019-11-24 23:15:56 +08:00
#include "flatbuffers/flatbuffers.h"
USING_NS_AX;
2019-11-24 23:15:56 +08:00
using namespace ui;
using namespace flatbuffers;
namespace cocostudio
{
2021-12-25 10:04:45 +08:00
static const char* P_BackGroundBoxData = "backGroundBoxData";
static const char* P_BackGroundBoxSelectedData = "backGroundBoxSelectedData";
static const char* P_FrontCrossData = "frontCrossData";
static const char* P_BackGroundBoxDisabledData = "backGroundBoxDisabledData";
static const char* P_FrontCrossDisabledData = "frontCrossDisabledData";
static RadioButtonReader* instanceCheckBoxReader = nullptr;
IMPLEMENT_CLASS_NODE_READER_INFO(RadioButtonReader)
RadioButtonReader::RadioButtonReader() {}
RadioButtonReader::~RadioButtonReader() {}
RadioButtonReader* RadioButtonReader::getInstance()
{
if (!instanceCheckBoxReader)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
instanceCheckBoxReader = new RadioButtonReader();
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
return instanceCheckBoxReader;
}
void RadioButtonReader::destroyInstance()
{
2022-07-16 10:43:05 +08:00
AX_SAFE_DELETE(instanceCheckBoxReader);
2021-12-25 10:04:45 +08:00
}
Offset<Table> RadioButtonReader::createOptionsWithFlatBuffers(pugi::xml_node objectData,
flatbuffers::FlatBufferBuilder* builder)
{
auto temp = WidgetReader::getInstance()->createOptionsWithFlatBuffers(objectData, builder);
auto widgetOptions = *(Offset<WidgetOptions>*)(&temp);
bool selectedState = false;
bool displaystate = true;
int backgroundboxResourceType = 0;
std::string backgroundboxPath;
std::string backgroundboxPlistFile;
int backGroundBoxSelectedResourceType = 0;
std::string backGroundBoxSelectedPath;
std::string backGroundBoxSelectedPlistFile;
int frontCrossResourceType = 0;
std::string frontCrossPath;
std::string frontCrossPlistFile;
int backGroundBoxDisabledResourceType = 0;
std::string backGroundBoxDisabledPath;
std::string backGroundBoxDisabledPlistFile;
int frontCrossDisabledResourceType = 0;
std::string frontCrossDisabledPath;
std::string frontCrossDisabledPlistFile;
// attributes
auto attribute = objectData.first_attribute();
while (attribute)
2019-11-24 23:15:56 +08:00
{
2021-12-31 15:49:45 +08:00
std::string_view name = attribute.name();
std::string_view value = attribute.value();
2021-12-25 10:04:45 +08:00
if (name == "CheckedState")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
selectedState = (value == "True") ? true : false;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else if (name == "DisplayState")
{
displaystate = (value == "True") ? true : false;
}
attribute = attribute.next_attribute();
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
// child elements
auto child = objectData.first_child();
while (child)
2019-11-24 23:15:56 +08:00
{
2021-12-31 15:49:45 +08:00
std::string_view name = child.name();
2021-12-25 10:04:45 +08:00
if (name == "NormalBackFileData")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
std::string texture;
std::string texturePng;
attribute = child.first_attribute();
while (attribute)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
name = attribute.name();
2021-12-31 15:49:45 +08:00
std::string_view value = attribute.value();
2021-12-25 10:04:45 +08:00
if (name == "Path")
{
backgroundboxPath = value;
}
else if (name == "Type")
{
backgroundboxResourceType = getResourceType(value);
}
else if (name == "Plist")
{
backgroundboxPlistFile = value;
texture = value;
}
attribute = attribute.next_attribute();
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
if (backgroundboxResourceType == 1)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
FlatBuffersSerialize* fbs = FlatBuffersSerialize::getInstance();
fbs->_textures.emplace_back(builder->CreateString(texture));
2019-11-24 23:15:56 +08:00
}
}
2021-12-25 10:04:45 +08:00
else if (name == "PressedBackFileData")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
std::string texture;
std::string texturePng;
attribute = child.first_attribute();
while (attribute)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
name = attribute.name();
2021-12-31 15:49:45 +08:00
std::string_view value = attribute.value();
2021-12-25 10:04:45 +08:00
if (name == "Path")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundBoxSelectedPath = value;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else if (name == "Type")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundBoxSelectedResourceType = getResourceType(value);
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else if (name == "Plist")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundBoxSelectedPlistFile = value;
texture = value;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
attribute = attribute.next_attribute();
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
if (backGroundBoxSelectedResourceType == 1)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
FlatBuffersSerialize* fbs = FlatBuffersSerialize::getInstance();
fbs->_textures.emplace_back(builder->CreateString(texture));
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
}
else if (name == "NodeNormalFileData")
{
std::string texture;
std::string texturePng;
attribute = child.first_attribute();
while (attribute)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
name = attribute.name();
2021-12-31 15:49:45 +08:00
std::string_view value = attribute.value();
2021-12-25 10:04:45 +08:00
if (name == "Path")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossPath = value;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else if (name == "Type")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossResourceType = getResourceType(value);
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else if (name == "Plist")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossPlistFile = value;
texture = value;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
attribute = attribute.next_attribute();
}
if (frontCrossResourceType == 1)
{
FlatBuffersSerialize* fbs = FlatBuffersSerialize::getInstance();
fbs->_textures.emplace_back(builder->CreateString(texture));
2019-11-24 23:15:56 +08:00
}
}
2021-12-25 10:04:45 +08:00
else if (name == "DisableBackFileData")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
std::string texture;
std::string texturePng;
attribute = child.first_attribute();
while (attribute)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
name = attribute.name();
2021-12-31 15:49:45 +08:00
std::string_view value = attribute.value();
2021-12-25 10:04:45 +08:00
if (name == "Path")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundBoxDisabledPath = value;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else if (name == "Type")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundBoxDisabledResourceType = getResourceType(value);
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else if (name == "Plist")
{
backGroundBoxDisabledPlistFile = value;
texture = value;
}
attribute = attribute.next_attribute();
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
if (backGroundBoxDisabledResourceType == 1)
{
FlatBuffersSerialize* fbs = FlatBuffersSerialize::getInstance();
fbs->_textures.emplace_back(builder->CreateString(texture));
2021-12-25 10:04:45 +08:00
}
}
else if (name == "NodeDisableFileData")
{
std::string texture;
std::string texturePng;
attribute = child.first_attribute();
while (attribute)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
name = attribute.name();
2021-12-31 15:49:45 +08:00
std::string_view value = attribute.value();
2021-12-25 10:04:45 +08:00
if (name == "Path")
{
frontCrossDisabledPath = value;
}
else if (name == "Type")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossDisabledResourceType = getResourceType(value);
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else if (name == "Plist")
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossDisabledPlistFile = value;
texture = value;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
attribute = attribute.next_attribute();
}
if (frontCrossDisabledResourceType == 1)
{
FlatBuffersSerialize* fbs = FlatBuffersSerialize::getInstance();
fbs->_textures.emplace_back(builder->CreateString(texture));
2019-11-24 23:15:56 +08:00
}
}
2021-12-25 10:04:45 +08:00
child = child.next_sibling();
}
auto options = CreateRadioButtonOptions(
*builder, widgetOptions,
CreateResourceData(*builder, builder->CreateString(backgroundboxPath),
builder->CreateString(backgroundboxPlistFile), backgroundboxResourceType),
CreateResourceData(*builder, builder->CreateString(backGroundBoxSelectedPath),
builder->CreateString(backGroundBoxSelectedPlistFile), backGroundBoxSelectedResourceType),
CreateResourceData(*builder, builder->CreateString(frontCrossPath), builder->CreateString(frontCrossPlistFile),
frontCrossResourceType),
CreateResourceData(*builder, builder->CreateString(backGroundBoxDisabledPath),
builder->CreateString(backGroundBoxDisabledPlistFile), backGroundBoxDisabledResourceType),
CreateResourceData(*builder, builder->CreateString(frontCrossDisabledPath),
builder->CreateString(frontCrossDisabledPlistFile), frontCrossDisabledResourceType),
selectedState, displaystate);
return *(Offset<Table>*)&options;
}
2022-08-08 18:02:17 +08:00
void RadioButtonReader::setPropsWithFlatBuffers(ax::Node* node, const flatbuffers::Table* radioButtonOptions)
2021-12-25 10:04:45 +08:00
{
auto options = (RadioButtonOptions*)radioButtonOptions;
auto checkBox = static_cast<ui::RadioButton*>(node);
// load background image
bool backGroundFileExist = false;
std::string backGroundErrorFilePath;
auto backGroundDic = (options->backGroundBoxData());
int backGroundType = backGroundDic->resourceType();
std::string backGroundTexturePath = backGroundDic->path()->c_str();
switch (backGroundType)
{
case 0:
{
if (FileUtils::getInstance()->isFileExist(backGroundTexturePath))
{
backGroundFileExist = true;
}
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundErrorFilePath = backGroundTexturePath;
backGroundFileExist = false;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
break;
}
case 1:
{
std::string plist = backGroundDic->plistFile()->c_str();
SpriteFrame* spriteFrame = SpriteFrameCache::getInstance()->findFrame(backGroundTexturePath);
2021-12-25 10:04:45 +08:00
if (spriteFrame)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundFileExist = true;
}
else
{
if (FileUtils::getInstance()->isFileExist(plist))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
ValueMap value = FileUtils::getInstance()->getValueMapFromFile(plist);
ValueMap metadata = value["metadata"].asValueMap();
std::string textureFileName = metadata["textureFileName"].asString();
if (!FileUtils::getInstance()->isFileExist(textureFileName))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundErrorFilePath = textureFileName;
2019-11-24 23:15:56 +08:00
}
}
2021-12-25 10:04:45 +08:00
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundErrorFilePath = plist;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
backGroundFileExist = false;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
break;
}
default:
break;
}
if (backGroundFileExist)
{
checkBox->loadTextureBackGround(backGroundTexturePath, (Widget::TextureResType)backGroundType);
}
// load background selected image
bool backGroundSelectedfileExist = false;
std::string backGroundSelectedErrorFilePath;
auto backGroundSelectedDic = (options->backGroundBoxSelectedData());
int backGroundSelectedType = backGroundSelectedDic->resourceType();
std::string backGroundSelectedTexturePath = backGroundSelectedDic->path()->c_str();
switch (backGroundSelectedType)
{
case 0:
{
if (FileUtils::getInstance()->isFileExist(backGroundSelectedTexturePath))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundSelectedfileExist = true;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundSelectedErrorFilePath = backGroundSelectedTexturePath;
backGroundSelectedfileExist = false;
}
break;
}
case 1:
{
std::string plist = backGroundSelectedDic->plistFile()->c_str();
SpriteFrame* spriteFrame = SpriteFrameCache::getInstance()->findFrame(backGroundSelectedTexturePath);
2021-12-25 10:04:45 +08:00
if (spriteFrame)
{
backGroundSelectedfileExist = true;
}
else
{
if (FileUtils::getInstance()->isFileExist(plist))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
ValueMap value = FileUtils::getInstance()->getValueMapFromFile(plist);
ValueMap metadata = value["metadata"].asValueMap();
std::string textureFileName = metadata["textureFileName"].asString();
if (!FileUtils::getInstance()->isFileExist(textureFileName))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundSelectedErrorFilePath = textureFileName;
2019-11-24 23:15:56 +08:00
}
}
2021-12-25 10:04:45 +08:00
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundSelectedErrorFilePath = plist;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
backGroundSelectedfileExist = false;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
break;
}
default:
break;
}
if (backGroundSelectedfileExist)
{
checkBox->loadTextureBackGroundSelected(backGroundSelectedTexturePath,
(Widget::TextureResType)backGroundSelectedType);
}
// load frontCross image
bool frontCrossFileExist = false;
std::string frontCrossErrorFilePath;
auto frontCrossDic = (options->frontCrossData());
int frontCrossType = frontCrossDic->resourceType();
std::string frontCrossFileName = frontCrossDic->path()->c_str();
switch (frontCrossType)
{
case 0:
{
if (FileUtils::getInstance()->isFileExist(frontCrossFileName))
{
frontCrossFileExist = true;
}
else
{
frontCrossErrorFilePath = frontCrossFileName;
frontCrossFileExist = false;
}
break;
}
case 1:
{
std::string plist = frontCrossDic->plistFile()->c_str();
SpriteFrame* spriteFrame = SpriteFrameCache::getInstance()->findFrame(frontCrossFileName);
2021-12-25 10:04:45 +08:00
if (spriteFrame)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossFileExist = true;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
if (FileUtils::getInstance()->isFileExist(plist))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
ValueMap value = FileUtils::getInstance()->getValueMapFromFile(plist);
ValueMap metadata = value["metadata"].asValueMap();
std::string textureFileName = metadata["textureFileName"].asString();
if (!FileUtils::getInstance()->isFileExist(textureFileName))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossErrorFilePath = textureFileName;
2019-11-24 23:15:56 +08:00
}
}
2021-12-25 10:04:45 +08:00
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossErrorFilePath = plist;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
frontCrossFileExist = false;
}
break;
}
default:
break;
}
if (frontCrossFileExist)
{
checkBox->loadTextureFrontCross(frontCrossFileName, (Widget::TextureResType)frontCrossType);
}
// load backGroundBoxDisabledData
bool backGroundBoxDisabledFileExist = false;
std::string backGroundBoxDisabledErrorFilePath;
auto backGroundDisabledDic = (options->backGroundBoxDisabledData());
int backGroundDisabledType = backGroundDisabledDic->resourceType();
std::string backGroundDisabledFileName = backGroundDisabledDic->path()->c_str();
switch (backGroundDisabledType)
{
case 0:
{
if (FileUtils::getInstance()->isFileExist(backGroundDisabledFileName))
{
backGroundBoxDisabledFileExist = true;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else
{
backGroundBoxDisabledErrorFilePath = backGroundDisabledFileName;
backGroundBoxDisabledFileExist = false;
}
break;
}
case 1:
{
std::string plist = backGroundDisabledDic->plistFile()->c_str();
SpriteFrame* spriteFrame = SpriteFrameCache::getInstance()->findFrame(backGroundDisabledFileName);
2021-12-25 10:04:45 +08:00
if (spriteFrame)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundBoxDisabledFileExist = true;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
if (FileUtils::getInstance()->isFileExist(plist))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
ValueMap value = FileUtils::getInstance()->getValueMapFromFile(plist);
ValueMap metadata = value["metadata"].asValueMap();
std::string textureFileName = metadata["textureFileName"].asString();
if (!FileUtils::getInstance()->isFileExist(textureFileName))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundBoxDisabledErrorFilePath = textureFileName;
2019-11-24 23:15:56 +08:00
}
}
2021-12-25 10:04:45 +08:00
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
backGroundBoxDisabledErrorFilePath = plist;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
backGroundBoxDisabledFileExist = false;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
break;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
default:
break;
}
if (backGroundBoxDisabledFileExist)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
checkBox->loadTextureBackGroundDisabled(backGroundDisabledFileName,
(Widget::TextureResType)backGroundDisabledType);
}
/// load frontCrossDisabledData
bool frontCrossDisabledFileExist = false;
std::string frontCrossDisabledErrorFilePath;
auto frontCrossDisabledDic = (options->frontCrossDisabledData());
int frontCrossDisabledType = frontCrossDisabledDic->resourceType();
std::string frontCrossDisabledFileName = frontCrossDisabledDic->path()->c_str();
switch (frontCrossDisabledType)
{
case 0:
{
if (FileUtils::getInstance()->isFileExist(frontCrossDisabledFileName))
{
frontCrossDisabledFileExist = true;
}
else
{
frontCrossDisabledErrorFilePath = frontCrossDisabledFileName;
frontCrossDisabledFileExist = false;
}
break;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
case 1:
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
std::string plist = frontCrossDisabledDic->plistFile()->c_str();
SpriteFrame* spriteFrame = SpriteFrameCache::getInstance()->findFrame(frontCrossDisabledFileName);
2021-12-25 10:04:45 +08:00
if (spriteFrame)
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
frontCrossDisabledFileExist = true;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
else
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
if (FileUtils::getInstance()->isFileExist(plist))
2019-11-24 23:15:56 +08:00
{
2021-12-25 10:04:45 +08:00
ValueMap value = FileUtils::getInstance()->getValueMapFromFile(plist);
ValueMap metadata = value["metadata"].asValueMap();
std::string textureFileName = metadata["textureFileName"].asString();
if (!FileUtils::getInstance()->isFileExist(textureFileName))
{
frontCrossDisabledErrorFilePath = textureFileName;
}
}
else
{
frontCrossDisabledErrorFilePath = plist;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
frontCrossDisabledFileExist = false;
}
break;
}
default:
break;
}
if (frontCrossDisabledFileExist)
{
checkBox->loadTextureFrontCrossDisabled(frontCrossDisabledFileName,
(Widget::TextureResType)frontCrossDisabledType);
}
bool selectedstate = options->selectedState() != 0;
checkBox->setSelected(selectedstate);
bool displaystate = options->displaystate() != 0;
checkBox->setBright(displaystate);
checkBox->setEnabled(displaystate);
auto widgetReader = WidgetReader::getInstance();
widgetReader->setPropsWithFlatBuffers(node, (Table*)options->widgetOptions());
}
Node* RadioButtonReader::createNodeWithFlatBuffers(const flatbuffers::Table* checkBoxOptions)
{
auto radioButton = ui::RadioButton::create();
setPropsWithFlatBuffers(radioButton, (Table*)checkBoxOptions);
return radioButton;
}
2021-12-31 15:49:45 +08:00
int RadioButtonReader::getResourceType(std::string_view key)
2021-12-25 10:04:45 +08:00
{
if (key == "Normal" || key == "Default")
{
return 0;
}
FlatBuffersSerialize* fbs = FlatBuffersSerialize::getInstance();
if (fbs->_isSimulator)
{
if (key == "MarkedSubImage")
{
return 0;
2019-11-24 23:15:56 +08:00
}
}
2021-12-25 10:04:45 +08:00
return 1;
2019-11-24 23:15:56 +08:00
}
2021-12-25 10:04:45 +08:00
} // namespace cocostudio