コード例 #1
0
        public void InspectorPush(InspectorStackEntryBase stackEntry)
        {
            _focusSearchBox = true;
            _searchString   = null;

            _inspectorStack.Push(stackEntry);
            LoadStackEntry(stackEntry);
        }
コード例 #2
0
        public void InspectorUpdate()
        {
            if (_nextToPush != null)
            {
                InspectorPush(_nextToPush);

                _nextToPush = null;
            }
        }
コード例 #3
0
 private void DrawVariableNameEnterButton(ICacheEntry field)
 {
     if (GUILayout.Button(field.Name(), _alignedButtonStyle, _inspectorNameWidth))
     {
         var val = field.EnterValue();
         if (val != null)
         {
             _nextToPush = new InstanceStackEntry(val, field.Name());
         }
     }
 }
コード例 #4
0
 public void PopUntil(InspectorStackEntryBase item)
 {
     if (CurrentStackItem == item)
     {
         return;
     }
     while (CurrentStackItem != null && CurrentStackItem != item)
     {
         InspectorStack.Pop();
     }
     LoadStackEntry(CurrentStackItem);
 }
コード例 #5
0
        private void LoadStackEntry(InspectorStackEntryBase stackEntry)
        {
            switch (stackEntry)
            {
            case InstanceStackEntry instanceStackEntry:
                CacheAllMembers(instanceStackEntry.Instance);
                break;

            case StaticStackEntry staticStackEntry:
                CacheStaticMembers(staticStackEntry.StaticType);
                break;

            default:
                throw new InvalidEnumArgumentException("Invalid stack entry type: " + stackEntry.GetType().FullName);
            }
        }
コード例 #6
0
        public void Push(InspectorStackEntryBase stackEntry, bool newTab)
        {
            var tab = GetCurrentTab();

            if (tab == null || newTab)
            {
                tab = new InspectorTab();
                _tabs.Add(tab);
                _currentTab = tab;
            }
            tab.Push(stackEntry);

            _focusSearchBox = true;
            //tab.SearchString = string.Empty;

            Show = true;
        }
コード例 #7
0
 public void InspectorPush(InspectorStackEntryBase stackEntry)
 {
     _inspectorStack.Push(stackEntry);
     LoadStackEntry(stackEntry);
 }
コード例 #8
0
 public void InspectorPush(InspectorStackEntryBase stackEntry)
 {
     Push(stackEntry, true);
 }