Exemple #1
0
        protected override void OnProcessOutputSchema(MutableObject newSchema)
        {
            var elementList = EntryField.GetFirstValue(newSchema) as IEnumerable <MutableObject>;

            if (elementList == null)
            {
                Debug.LogError("This isn't a valid schema!  The entries field is empty!");
            }

            var singleSchema = elementList.First();
            var multiSchema  = new MutableObject();

            multiSchema.Add("Entries", elementList);

            NormalState.TransmitSchema(singleSchema);
            SelectedState.TransmitSchema(singleSchema);
            NoneSelectedState.TransmitSchema(singleSchema);

            NormalStateMulti.TransmitSchema(multiSchema);
            SelectedStateMulti.TransmitSchema(multiSchema);
            NoneSelectedStateMulti.TransmitSchema(multiSchema);
        }
        private IEnumerator TransmitMultiStates()
        {
            IEnumerator iterator;

            UnSelectedMutable.VisualData.Bound.ClearBounds();

            SelectedMutable.VisualData.Bound.ClearBounds();

            NoneSelectedMutable.VisualData.Bound.ClearBounds();

            if (SelectedList.Count == 0)
            {
                iterator = NoneSelectedStateMulti.Transmit(NoneSelectedMutable);
                while (iterator.MoveNext())
                {
                    yield return(null);
                }
            }
            //NoneSelectedMultiOn = SelectedList.Count == 0;


            if (SelectedList.Count > 0)
            {
                iterator = NormalStateMulti.Transmit(UnSelectedMutable);
                while (iterator.MoveNext())
                {
                    yield return(null);
                }
            }
            //NormalSelectedMultiOn = SelectedList.Count > 0;


            iterator = SelectedStateMulti.Transmit(SelectedMutable);
            while (iterator.MoveNext())
            {
                yield return(null);
            }
        }
        protected override void OnProcessOutputSchema(MutableObject newSchema)
        {
            var entry = EntryField.GetEntries(newSchema);

            var foundEntries = entry.ToList();

            if (!foundEntries.Any())
            {
                Debug.Log("No valid entries in " + EntryField.AbsoluteKey);
                Router.TransmitAllSchema(new MutableObject());
                return;
            }

            MutableObject outMutable = null;

            foreach (var foundEntry in EntryField.GetEntries(newSchema))
            {
                outMutable = foundEntry.Last();
                break;
            }

            NormalState.TransmitSchema(outMutable);
            SelectedState.TransmitSchema(outMutable);
            NoneSelectedState.TransmitSchema(outMutable);

            var multiSchema = new MutableObject()
            {
                { "Entries", new List <MutableObject> {
                      outMutable
                  } }
            };

            NormalStateMulti.TransmitSchema(multiSchema);
            SelectedStateMulti.TransmitSchema(multiSchema);
            NoneSelectedStateMulti.TransmitSchema(multiSchema);
        }