| 572 | } |
| 573 | |
| 574 | bool MacroActionVariable::Load(obs_data_t *obj) |
| 575 | { |
| 576 | MacroAction::Load(obj); |
| 577 | _variable = |
| 578 | GetWeakVariableByName(obs_data_get_string(obj, "variableName")); |
| 579 | _variable2 = GetWeakVariableByName( |
| 580 | obs_data_get_string(obj, "variable2Name")); |
| 581 | _strValue.Load(obj, "strValue"); |
| 582 | _action = static_cast<Action>(obs_data_get_int(obj, "condition")); |
| 583 | _segmentIdxLoadValue = obs_data_get_int(obj, "segmentIdx"); |
| 584 | _subStringRegex.Load(obj); |
| 585 | _regexPattern = obs_data_get_string(obj, "regexPattern"); |
| 586 | _findRegex.Load(obj, "findRegex"); |
| 587 | _findStr.Load(obj, "findStr"); |
| 588 | _replaceStr.Load(obj, "replaceStr"); |
| 589 | _mathExpression.Load(obj, "mathExpression"); |
| 590 | _useCustomPrompt = obs_data_get_bool(obj, "useCustomPrompt"); |
| 591 | _inputPrompt.Load(obj, "inputPrompt"); |
| 592 | _useInputPlaceholder = obs_data_get_bool(obj, "useInputPlaceholder"); |
| 593 | _inputPlaceholder.Load(obj, "inputPlaceholder"); |
| 594 | _envVariableName.Load(obj, "environmentVariableName"); |
| 595 | _scene.Load(obj); |
| 596 | _tempVar.Load(obj, GetMacro()); |
| 597 | _sceneItemIndex.Load(obj, "sceneItemIndex"); |
| 598 | _direction = static_cast<Direction>(obs_data_get_int(obj, "direction")); |
| 599 | _stringLength.Load(obj, "stringLength"); |
| 600 | if (obs_data_has_user_value(obj, "paddingChar")) { |
| 601 | _paddingChar = obs_data_get_int(obj, "paddingChar"); |
| 602 | } else { |
| 603 | _paddingChar = ' '; |
| 604 | } |
| 605 | _caseType = static_cast<CaseType>(obs_data_get_int(obj, "caseType")); |
| 606 | |
| 607 | // Convert old data format |
| 608 | // TODO: Remove in future version |
| 609 | if (!obs_data_has_user_value(obj, "version")) { |
| 610 | _numValue = obs_data_get_double(obj, "numValue"); |
| 611 | _subStringStart = obs_data_get_int(obj, "subStringStart") + 1; |
| 612 | _subStringSize = obs_data_get_int(obj, "subStringSize"); |
| 613 | _regexMatchIdx = obs_data_get_int(obj, "regexMatchIdx") + 1; |
| 614 | } else { |
| 615 | _numValue.Load(obj, "numValue"); |
| 616 | _subStringStart.Load(obj, "subStringStart"); |
| 617 | _subStringSize.Load(obj, "subStringSize"); |
| 618 | _regexMatchIdx.Load(obj, "regexMatchIdx"); |
| 619 | } |
| 620 | |
| 621 | _randomNumberStart.Load(obj, "randomNumberStart"); |
| 622 | _randomNumberEnd.Load(obj, "randomNumberEnd"); |
| 623 | _generateInteger = obs_data_get_bool(obj, "generateInteger"); |
| 624 | _randomValues.Load(obj, "randomValues", "value"); |
| 625 | _allowRepeatValues = obs_data_get_bool(obj, "allowRepeatValues"); |
| 626 | _jsonQuery.Load(obj, "jsonQuery"); |
| 627 | _jsonIndex.Load(obj, "jsonIndex"); |
| 628 | _jsonQueryExtractSingle = |
| 629 | obs_data_get_bool(obj, "jsonQueryExtractSingle"); |
| 630 | |
| 631 | return true; |
nothing calls this directly
no test coverage detected