コード例 #1
0
        void CollectPotentialConditions()
        {
            m_PotentialConditions.Clear();
            if (m_DataSourceObject == null || m_DataSourceObject.currentData == null)
            {
                return;
            }

            m_DataSnapshot.TakeSnapshot(m_DataSourceObject.currentData);
            m_DataSnapshot.GetPotentialConditions(m_PotentialConditions, m_CreatedObject);
            m_DataSnapshot.GetPotentialTags(m_PotentialConditions, m_CreatedObject);

            if (m_PotentialConditions.Count > 0)
            {
                m_PotentialConditions.Sort((a, b) =>
                {
                    var orderCompare = a.order.CompareTo(b.order);
                    if (orderCompare != 0)
                    {
                        return(orderCompare);
                    }

                    return(a.componentType.Name.CompareTo(b.componentType.Name));
                });
            }

            SetProxyName(GenerateProxyName());
        }
コード例 #2
0
        void UpdateComparisonData(Proxy dataSourceProxy, TraitDataSnapshot dataSnapshot)
        {
            var queryResult = dataSourceProxy == null ? null : dataSourceProxy.currentData;

            dataSnapshot.TakeSnapshot(queryResult);

            if (CompareDataChanged != null)
            {
                CompareDataChanged();
            }
        }
コード例 #3
0
        public void UpdateInfo(QueryResult proxyData)
        {
            MainLabel.text = "MARS Data #" + proxyData.DataID;

            // Separate bool traits as "Tags" and group other types as "Traits"
            var tagsString   = "";
            var traitsString = "";

            m_HoverDataSnapshot.TakeSnapshot(proxyData);
            m_TraitNames.Clear();
            m_HoverDataSnapshot.GetAllTraitNames(m_TraitNames);

            m_HoverDataSnapshot.GetTraits(out Dictionary <string, bool> traitDataTagData);
            foreach (var boolTrait in traitDataTagData)
            {
                tagsString += boolTrait.Key + ", ";
                m_TraitNames.Remove(boolTrait.Key);
            }

            foreach (var traitName in m_TraitNames)
            {
                traitsString += traitName + ", ";
            }

            if (tagsString.Length > 1)
            {
                tagsString = tagsString.Remove(tagsString.Length - 2);
            }

            if (traitsString.Length > 1)
            {
                traitsString = traitsString.Remove(traitsString.Length - 2);
            }

            TagsLabel.text   = tagsString;
            TraitsLabel.text = traitsString;
        }