void LoadTextNodeAnswersFromOriginal(TextNode original, TranslatedText translate)
        {
            foreach (var answer in original.Answers)
            {
                if (answer.Type != AnswerType.Answer)
                {
                    continue;
                }

                var translatedAnswer = translate.GetAnswer(answer.VariableName);
                if (translatedAnswer != null)
                {
                    Variable o = original.Variables.GetByName(answer.VariableName);
                    string   originalAnswer = o.ConvertedValue <string>();

                    if (translatedAnswer.OriginalText != originalAnswer)
                    {
                        translatedAnswer.OriginalText          = originalAnswer;
                        translatedAnswer.isOriginalTextChanged = true;
                    }
                }
                else
                {
                    translate.Answers.Add(new TranslatedAnswerText(answer.VariableName));
                }
            }
        }
        void LoadTextNodesFromOriginal()
        {
            if (_loadedGraph.Original == null)
            {
                return;
            }

            List <TextNode> originalNodes = _loadedGraph.Original.Nodes.FindAll <TextNode>();

            foreach (var original in originalNodes)
            {
                if (_loadedGraph.Contains(original.ID))
                {
                    _loadedGraph[original.ID].OriginalText = original.Text;
                    LoadTextNodeAnswersFromOriginal(original, _loadedGraph[original.ID]);
                }
                else
                {
                    var text = new TranslatedText(original.ID);
                    LoadTextNodeAnswersFromOriginal(original, text);

                    if (text.OriginalText != original.Text)
                    {
                        text.OriginalText          = original.Text;
                        text.isOriginalTextChanged = true;
                    }

                    _loadedGraph.translatedTexts.Add(text);
                }
            }
        }
 void TextDetails(TranslatedText text)
 {/*
   *
   *
   * GUILayout.Space(5);
   * EditorGUILayout.BeginVertical(VisualEditorGUIStyle.Box(), GUILayout.Width(600));
   *
   * // Answers
   *
   * EditorGUILayout.EndVertical();*/
 }
        Color TranslationStatus(TranslatedText text)
        {
            bool missingOne = false, missingAll = true;

            if (text.TranslatedText != "")
            {
                missingAll = false;
            }
            else
            {
                missingOne = true;
            }

            foreach (var a in text.Answers)
            {
                if (a.TranslatedText != "")
                {
                    missingAll = false;
                }
                else
                {
                    missingOne = true;
                }
            }

            if (missingAll)
            {
                return(Color.red);
            }
            else if (missingOne)
            {
                return(new Color(1, 1, 0));
            }
            else
            {
                return(Color.green);
            }
        }