/// <summary> /// Refresh this instance. /// </summary> public virtual void Refresh() { if (nodes == null) { NodesList.Clear(); return; } NodesList.BeginUpdate(); var selected_nodes = SelectedNodes; NodesList.Clear(); Nodes2List(nodes, 0, NodesList); SilentDeselect(SelectedIndices); var indices = Nodes2Indices(selected_nodes); SilentSelect(indices); NodesList.EndUpdate(); if (DeselectCollapsedNodes) { selectedNodes.Clear(); foreach (var item in SelectedItems) { selectedNodes.Add(item.Node); } } }
/// <summary> /// Refresh this instance. /// </summary> public virtual void Refresh() { if (nodes == null) { NodesList.Clear(); return; } NodesList.BeginUpdate(); var selected_nodes = SelectedNodes; NodesList.Clear(); Nodes2List(nodes, 0, NodesList); if (selected_nodes != null) { SilentDeselect(SelectedIndicies); var indicies = Nodes2Indicies(selected_nodes); SilentSelect(indicies); } NodesList.EndUpdate(); }
/// <summary> /// Updates the items. /// </summary> /// <param name="newItems">New items.</param> void SetNewItems(ObservableList <string> newItems) { DataSource.OnChange -= UpdateItems; if (Sort && SortFunc != null) { newItems.BeginUpdate(); var sorted = SortFunc(newItems).ToArray(); newItems.Clear(); newItems.AddRange(sorted); newItems.EndUpdate(); } SilentDeselect(SelectedIndicies); var new_selected_indicies = SelectedItemsCache.Convert <string, int>(newItems.IndexOf); new_selected_indicies.RemoveAll(IndexNotFound); dataSource = newItems; SilentSelect(new_selected_indicies); SelectedItemsCache = SelectedIndicies.Convert <int, string>(GetDataItem); UpdateView(); DataSource.OnChange += UpdateItems; }
/// <summary> /// Update data list. /// </summary> public void Update() { if (inUpdate) { isChanged = true; return; } if (Data == null) { return; } Data.BeginUpdate(); Data.Clear(); var groups = GroupsWithItems.Keys.ToList(); if (GroupComparison != null) { groups.Sort(GroupComparison); } groups.ForEach(group => { Data.Add(group); Data.AddRange(GroupsWithItems[group]); }); Data.EndUpdate(); }
/// <summary> /// Updates the items. /// </summary> /// <param name="newItems">New items.</param> protected virtual void SetNewItems(ObservableList <TItem> newItems) { //Start(); DataSource.OnChange -= UpdateItems; if (Sort && SortFunc != null) { newItems.BeginUpdate(); var sorted = SortFunc(newItems).ToArray(); newItems.Clear(); newItems.AddRange(sorted); newItems.EndUpdate(); } SilentDeselect(SelectedIndicies); var new_selected_indicies = SelectedItemsCache.Convert <TItem, int>(newItems.IndexOf); new_selected_indicies.RemoveAll(IndexNotFound); dataSource = newItems; if (KeepSelection) { SilentSelect(new_selected_indicies); } SelectedItemsCache = SelectedItems; UpdateView(); DataSource.OnChange += UpdateItems; }
/// <summary> /// Update data list. /// </summary> public virtual void Update() { if (inUpdate) { isChanged = true; return; } if (Data == null) { return; } Data.BeginUpdate(); Data.Clear(); InsertGroups(); Data.EndUpdate(); }
/// <summary> /// Clear items of this instance. /// </summary> public override void Clear() { nodes.Clear(); SetScrollValue(0f); }
/// <summary> /// Clear items of this instance. /// </summary> public override void Clear() { nodes.Clear(); ListRenderer.SetPosition(0f); }