public override void StartDrag(TreeViewItem draggedItem, List <int> draggedItemIDs)
 {
     if (!SavedSearchFilters.IsSavedFilter(draggedItem.id) || (draggedItem.id != SavedSearchFilters.GetRootInstanceID()))
     {
         ProjectWindowUtil.StartDrag(draggedItem.id, draggedItemIDs);
     }
 }
        public override void StartDrag(TreeViewItem draggedItem, List <int> draggedItemIDs)
        {
            if (SavedSearchFilters.IsSavedFilter(draggedItem.id))
            {
                // Root Filters Item is not allowed to be dragged
                if (draggedItem.id == SavedSearchFilters.GetRootInstanceID())
                {
                    return;
                }
            }

            ProjectWindowUtil.StartDrag(draggedItem.id, draggedItemIDs);
        }
 protected override void GetParentsAbove(int id, HashSet <int> parentsAbove)
 {
     if (SavedSearchFilters.IsSavedFilter(id))
     {
         parentsAbove.Add(SavedSearchFilters.GetRootInstanceID());
     }
     else
     {
         // AssetDatabase folders (in Assets or Packages)
         var path = AssetDatabase.GetAssetPath(id);
         if (Directory.Exists(path))
         {
             parentsAbove.UnionWith(ProjectWindowUtil.GetAncestors(id));
         }
     }
 }