Ejemplo n.º 1
0
        private void AddFilterButton(GameObject parent, MemberScopes type, bool setEnabled = false)
        {
            var btnObj = UIFactory.CreateButton(parent, new Color(0.2f, 0.2f, 0.2f));

            var btnLayout = btnObj.AddComponent <LayoutElement>();

            btnLayout.minHeight = 25;
            btnLayout.minWidth  = 70;

            var text = btnObj.GetComponentInChildren <Text>();

            text.text = type.ToString();

            var btn = btnObj.GetComponent <Button>();

            btn.onClick.AddListener(() => { OnScopeFilterClicked(type, btn); });

            var colors = btn.colors;

            colors.highlightedColor = new Color(0.3f, 0.7f, 0.3f);

            if (setEnabled)
            {
                colors.normalColor      = new Color(0.2f, 0.6f, 0.2f);
                m_scopeFilter           = type;
                m_lastActiveScopeButton = btn;
            }

            btn.colors = colors;
        }
Ejemplo n.º 2
0
        internal void OnScopeFilterClicked(MemberScopes type, Button button)
        {
            if (m_lastActiveScopeButton)
            {
                m_lastActiveScopeButton.colors = RuntimeProvider.Instance.SetColorBlock(m_lastActiveScopeButton.colors, new Color(0.2f, 0.2f, 0.2f));
            }

            m_scopeFilter           = type;
            m_lastActiveScopeButton = button;

            m_lastActiveScopeButton.colors = RuntimeProvider.Instance.SetColorBlock(m_lastActiveScopeButton.colors, new Color(0.2f, 0.6f, 0.2f));

            FilterMembers(null, true);
            m_sliderScroller.m_slider.value = 1f;
        }
Ejemplo n.º 3
0
 private void FilterScopeToggle(MemberScopes mode, string label)
 {
     if (m_scopeFilter == mode)
     {
         GUI.color = Color.green;
     }
     else
     {
         GUI.color = Color.white;
     }
     if (GUILayout.Button(label, new GUILayoutOption[] { GUILayout.Width(100) }))
     {
         m_scopeFilter    = mode;
         Pages.PageOffset = 0;
         scroll           = Vector2.zero;
     }
     GUI.color = Color.white;
 }
Ejemplo n.º 4
0
        private static void InternalWriteHeader(
            CodeTextWriter twHeader,
            PreparedInformations prepared,
            ITypeInformation targetType,
            MemberScopes memberScope,
            IReadOnlyDictionary <ITypeInformation, ITypeInformation[]> typesByDeclaring)
        {
            if (typesByDeclaring.TryGetValue(targetType, out var types))
            {
                foreach (var type in types)
                {
                    // The nested types have to declare before outer types.
                    if (!type.Equals(targetType))
                    {
                        InternalWriteHeader(
                            twHeader,
                            prepared,
                            type,
                            memberScope,
                            typesByDeclaring);
                    }

                    // Write value type and object reference type.
                    TypeWriter.WriteTypeDefinitions(
                        twHeader,
                        type);

                    // Write type members.
                    TypeWriter.WriteMemberDefinitions(
                        twHeader,
                        type,
                        field => true,
                        method =>
                        // Except type initializer
                        !(method.IsConstructor && method.IsStatic) &&
                        prepared.Functions.ContainsKey(method));

                    // TODO: The internal or private members can separate into the internal headers.
                    //field => field.CLanguageMemberScope == memberScope,
                    //method => (method.CLanguageMemberScope == memberScope) && prepared.Functions.ContainsKey(method));
                }
            }
        }
        internal void OnScopeFilterClicked(MemberScopes type, Button button)
        {
            if (m_lastActiveScopeButton)
            {
                var lastColors = m_lastActiveScopeButton.colors;
                lastColors.normalColor         = new Color(0.2f, 0.2f, 0.2f);
                m_lastActiveScopeButton.colors = lastColors;
            }

            m_scopeFilter           = type;
            m_lastActiveScopeButton = button;

            var colors = m_lastActiveScopeButton.colors;

            colors.normalColor             = new Color(0.2f, 0.6f, 0.2f);
            m_lastActiveScopeButton.colors = colors;

            FilterMembers(null, true);
            m_sliderScroller.m_slider.value = 1f;
        }