本文整理汇总了C++中DynamicObject::hasProperty方法的典型用法代码示例。如果您正苦于以下问题:C++ DynamicObject::hasProperty方法的具体用法?C++ DynamicObject::hasProperty怎么用?C++ DynamicObject::hasProperty使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DynamicObject
的用法示例。
在下文中一共展示了DynamicObject::hasProperty方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: isValid
Result EnviJSONRPC::isValid(const String &jsonEncodedData)
{
var temp;
Result res = JSON::parse (jsonEncodedData, temp);
if (res.wasOk())
{
if (temp.getDynamicObject())
{
DynamicObject *dso = temp.getDynamicObject();
if (dso->hasProperty("jsonrpc"))
{
if (dso->getProperty("jsonrpc") != "2.0")
{
return (Result::fail("JSON-RPC request version is not 2.0 ["+dso->getProperty("jsonrpc").toString()+"]"));
}
if (dso->hasProperty("method") && dso->hasProperty("params"))
{
return (Result::ok());
}
if (!dso->hasProperty("method"))
{
return (Result::fail("JSON-RPC missing required method request parameter"));
}
if (!dso->hasProperty("params"))
{
return (Result::fail("JSON-RPC missing required params request parameter"));
}
}
else
{
return (Result::fail("JSON-RPC missing jsonrpc property"));
}
}
else
{
return (Result::fail("JSON-RPC json data is not an object"));
}
}
else
{
return (Result::fail("JSON-RPC json parser failed ["+res.getErrorMessage()+"]"));
}
return (Result::fail("JSON-RPC Undefined parser state"));
}
示例2: Load
bool ApplicationSettingsFile::Load(File file)
{
if (!file.exists())
return false;
configFile = file.getFullPathName();
String jsonString = file.loadFileAsString();
var json;
Result result = JSON::parse(jsonString, json);
if (result.ok())
{
DynamicObject* obj = json.getDynamicObject();
if (obj == nullptr)
return false;
if(obj->hasProperty("PlayType"))
setPlayType((SoundPlayType)(int)obj->getProperty("PlayType"));
if (obj->hasProperty("UseGlobalHooks"))
setUseGlobalHooks((bool)obj->getProperty("UseGlobalHooks"));
if (obj->hasProperty("StopAllSoundKeyPresses"))
{
var keyPresses = obj->getProperty("StopAllSoundKeyPresses");
if (keyPresses.isArray())
{
for (int i = 0; i < keyPresses.size(); ++i)
{
var jsonKeyPress(keyPresses[i]);
if (jsonKeyPress.isVoid())
continue;
DynamicObject* jsonKeyPressObj = jsonKeyPress.getDynamicObject();
if (jsonKeyPressObj == nullptr)
continue;
int keyCode = (int)jsonKeyPressObj->getProperty("KeyCode");
int modifierFlags = (int)jsonKeyPressObj->getProperty("ModifierFlags");
juce::juce_wchar textCharacter = (juce_wchar)((int)jsonKeyPressObj->getProperty("TextCharacter"));
ModifierKeys modifierKeys;
modifierKeys = modifierKeys.withFlags(modifierFlags);
KeyPress keyPress(keyCode, modifierKeys, textCharacter);
stopAllSoundsKeys.add(keyPress);
}
}
}
}
return true;
}
示例3: loadJSONData
void Engine::loadJSONData (var data,ProgressTask * loadingTask)
{
DynamicObject * dObject = data.getDynamicObject();
if (dObject == nullptr)
{
DBG("SHIIIIT");
return;
}
DynamicObject * md = data.getDynamicObject()->getProperty("metaData").getDynamicObject();
bool versionChecked = checkFileVersion(md);
if (!versionChecked)
{
String versionString = md->hasProperty("version") ? md->getProperty("version").toString() : "?";
AlertWindow::showMessageBox(AlertWindow::AlertIconType::WarningIcon, "You're old, bitch !", "File version (" + versionString + ") is not supported anymore.\n(Minimum supported version : " + getMinimumRequiredFileVersion() + ")");
return;
}
clear();
if (InspectableSelectionManager::getInstanceWithoutCreating() != nullptr) InspectableSelectionManager::getInstance()->setEnabled(false); //avoid creation of inspector editor while recreating all nodes, controllers, rules,etc. from file
if (Outliner::getInstanceWithoutCreating() != nullptr) Outliner::getInstance()->setEnabled(false);
DynamicObject * d = data.getDynamicObject();
ProgressTask * presetTask = loadingTask->addTask("Presets");
ProgressTask * dashboardTask = loadingTask->addTask("Dashboard");
loadJSONDataInternalEngine(data, loadingTask);
presetTask->start();
if (d->hasProperty("presetManager")) PresetManager::getInstance()->loadJSONData(d->getProperty("presetManager"));
presetTask->end();
dashboardTask->start();
if (d->hasProperty("dashboardManager")) DashboardManager::getInstance()->loadJSONData(d->getProperty("dashboardManager"));
dashboardTask->end();
if (InspectableSelectionManager::getInstanceWithoutCreating() != nullptr) InspectableSelectionManager::getInstance()->setEnabled(true); //Re enable editor
if (Outliner::getInstanceWithoutCreating() != nullptr) Outliner::getInstance()->setEnabled(true);
}
示例4: getComputerKeyboardLayout
std::wstring LoadSave::getComputerKeyboardLayout() {
var config_state = getConfigVar();
if (config_state.isVoid())
return mopo::DEFAULT_KEYBOARD;
DynamicObject* config_object = config_state.getDynamicObject();
NamedValueSet config_properties = config_object->getProperties();
if (config_properties.contains("keyboard_layout")) {
DynamicObject* layout = config_properties["keyboard_layout"].getDynamicObject();
if (layout->hasProperty("chromatic_layout"))
return layout->getProperty("chromatic_layout").toString().toWideCharPointer();
}
return mopo::DEFAULT_KEYBOARD;
}