void UpdateContentContainer(BaseVerticalCollectionView collectionView) { var headerTotalWidth = m_MultiColumnHeader.columnContainer.layout.width; var targetWidth = Mathf.Max(headerTotalWidth, collectionView.scrollView.contentViewport.resolvedStyle.width); collectionView.scrollView.contentContainer.style.width = targetWidth; }
public DynamicHeightVirtualizationController(BaseVerticalCollectionView collectionView) : base(collectionView) { m_FillCallback = Fill; m_GeometryChangedCallback = OnRecycledItemGeometryChanged; m_IndexOutOfBoundsPredicate = IsIndexOutOfBounds; }
public DynamicHeightVirtualizationController(BaseVerticalCollectionView collectionView) : base(collectionView) { m_FillCallback = Fill; m_GeometryChangedCallback = OnRecycledItemGeometryChanged; m_IndexOutOfBoundsPredicate = IsIndexOutOfBounds; m_ScrollView.contentViewport.RegisterCallback <GeometryChangedEvent>(OnViewportGeometryChanged); }
protected VerticalVirtualizationController(BaseVerticalCollectionView collectionView) : base(collectionView.scrollView) { m_CollectionView = collectionView; m_ActiveItems = new List <T>(); m_VisibleItemPredicateDelegate = VisibleItemPredicate; k_EmptyRows = new VisualElement(); k_EmptyRows.AddToClassList(BaseVerticalCollectionView.backgroundFillUssClassName); }
/// <summary> /// Initialization step once the view is set. /// It will insert the multi column header in the hierarchy and register to important callbacks. /// </summary> /// <param name="collectionView">The view to register to.</param> public void PrepareView(BaseVerticalCollectionView collectionView) { if (m_View != null) { Debug.LogWarning("Trying to initialize multi column view more than once. This shouldn't happen."); return; } m_View = collectionView; // Insert header to the view. collectionView.Insert(0, m_MultiColumnHeader); // Handle horizontal scrolling m_View.scrollView.horizontalScroller.valueChanged += OnHorizontalScrollerValueChanged; m_View.scrollView.contentViewport.RegisterCallback <GeometryChangedEvent>(OnViewportGeometryChanged); m_MultiColumnHeader.columnContainer.RegisterCallback <GeometryChangedEvent>(OnColumnContainerGeometryChanged); }
/// <summary> /// Unregisters events and removes the header from the hierarchy. /// </summary> public void Dispose() { if (m_View != null) { m_View.scrollView.horizontalScroller.valueChanged -= OnHorizontalScrollerValueChanged; m_View.scrollView.contentViewport.UnregisterCallback <GeometryChangedEvent>(OnViewportGeometryChanged); m_View = null; } m_MultiColumnHeader.columnContainer.UnregisterCallback <GeometryChangedEvent>(OnColumnContainerGeometryChanged); m_MultiColumnHeader.columnSortingChanged -= OnColumnSortingChanged; m_MultiColumnHeader.contextMenuPopulateEvent -= OnContextMenuPopulateEvent; m_MultiColumnHeader.columnResized -= OnColumnResized; m_MultiColumnHeader.columns.columnAdded -= OnColumnAdded; m_MultiColumnHeader.columns.columnRemoved -= OnColumnRemoved; m_MultiColumnHeader.columns.columnReordered -= OnColumnReordered; m_MultiColumnHeader.columns.columnChanged -= OnColumnsChanged; m_MultiColumnHeader.columns.changed -= OnColumnChanged; m_MultiColumnHeader.RemoveFromHierarchy(); m_MultiColumnHeader.Dispose(); m_MultiColumnHeader = null; }
public FixedHeightVirtualizationController(BaseVerticalCollectionView collectionView) : base(collectionView) { }
public ListViewDragger(BaseVerticalCollectionView listView) : base(listView) { }
public BaseReorderableDragAndDropController(BaseVerticalCollectionView view) { m_View = view; enableReordering = true; }