Beispiel #1
0
 protected override void UpdateItem(object item)
 {
     lock ( _richTextCache )
     {
         IResource res = (IResource)item;
         _richTextCache.Remove(res.Id);
     }
 }
Beispiel #2
0
 private void RemoveNode(JetListViewNode parentNode, IResource resource)
 {
     if (parentNode.Nodes.Contains(resource))
     {
         parentNode.Nodes.Remove(resource);
     }
     if (!_listView.NodeCollection.Contains(resource))
     {
         ResourceTreeDataNode dataNode = (ResourceTreeDataNode)_dataNodes [resource.Id];
         if (dataNode != null)
         {
             dataNode.Dispose();
             lock ( _dataNodes )
             {
                 _dataNodes.Remove(resource.Id);
             }
         }
     }
 }
Beispiel #3
0
        protected override void HandleResourceDeleting(object sender, ResourceIndexEventArgs e)
        {
            if (_disposed || e.Resource == null)
            {
                return;
            }

            lock ( _resourceList )
            {
                ConversationNode node = FindConversationNode(e.Resource.Id);
                if (node != null)
                {
                    if (node.LvNode != null)
                    {
                        lock (_listView.NodeCollection)
                        {
                            for (int i = node.LvNode.Nodes.Count - 1; i >= 0; i--)
                            {
                                node.LvNode.Nodes [i].SetParent(node.LvNode.Parent);
                            }
                            RemoveLvNode(node);
                        }
                    }

                    ConversationNode parent = node.Parent;
                    if (parent != null)
                    {
                        if (parent.Children != null && parent.Children.Count == 0 &&
                            !_threadingHandler.CanExpandThread(parent.Resource, ThreadExpandReason.Expand))
                        {
                            parent.LvNode.HasChildren = false;
                        }
                        node.Parent.RemoveChild(node);
                    }
                    lock ( _conversationNodeMap )
                    {
                        _conversationNodeMap.Remove(e.Resource.Id);
                    }
                }
            }

            OnResourceCountChanged();
        }
Beispiel #4
0
        private void UpdateView(IResource view, bool remove)
        {
            IResourceList resList = (IResourceList)_viewToUnreadResources[view.Id];

            if (resList != null)  // possible on view's creation
            {
                _unreadResourcesToView.Remove(resList);
                _viewToUnreadResources.Remove(view.Id);

                DetachFromList(resList);
                resList.Dispose();
            }

            if (!remove && ViewCanBeUnread(view))
            {
                resList = ComputeList(view);

                _unreadResourcesToView[resList] = view;
                _viewToUnreadResources[view.Id] = resList;
                AttachToList(resList);

                _unreadManager.InvalidateUnreadCounter(view);
            }
        }
Beispiel #5
0
 private void RemoteAnnotateForm_Closing(object sender, System.ComponentModel.CancelEventArgs e)
 {
     _forms.Remove(_weblink.Id);
 }