예제 #1
0
        public void Dispose()
        {
            _imageSetGroups.Dispose();

            _internalTree.Updated -= OnInternalTreeUpdated;
            _internalTree.Dispose();
        }
예제 #2
0
        private void OnChildGroupRemoved(object sender, ListEventArgs <FilteredGroup <IImageSet> > e)
        {
            ImageSetTreeGroupItem groupItem = FindGroupItem(e.Item);

            if (groupItem != null)
            {
                _tree.Items.Remove(groupItem);
                groupItem.Dispose();
                OnUpdated();
            }
        }
예제 #3
0
        private void OnChildGroupChanged(object sender, ListEventArgs <FilteredGroup <IImageSet> > e)
        {
            if (_changingGroupItem != null)
            {
                int replaceIndex = _tree.Items.IndexOf(_changingGroupItem);
                if (replaceIndex >= 0)
                {
                    _tree.Items[replaceIndex] = new ImageSetTreeGroupItem(e.Item, this, _tree.Binding);
                    OnUpdated();
                }

                _changingGroupItem.Dispose();
                _changingGroupItem = null;
            }
        }