Exemple #1
0
        public void FlushNodeCreationEvent(NodeCreationEvent e, IEnumerable <GUID> deletedNodeIds = null)
        {
            if (m_LastNodeCreation?.Action.HasValue == true)
            {
                if (m_LastNodeCreation.SkipNextFlush)
                {
                    m_LastNodeCreation.SkipNextFlush = false;
                    return;
                }

                VSUserActions vsUserActions = m_LastNodeCreation.Action.Value;

                if (e == NodeCreationEvent.UndoOrDelete && (deletedNodeIds == null || deletedNodeIds.Contains(m_LastNodeCreation.GUID)))
                {
                    vsUserActions.SetResult(NodeCreationEvent.UndoOrDelete);
                }

                m_UserActionEvents.Enqueue(vsUserActions);
                Log($"Flush last node creation {m_LastNodeCreation.GUID} result: {vsUserActions.vsSearcherCancelled}");

                m_LastNodeCreation = null;
            }
        }
Exemple #2
0
 public void SetResult(NodeCreationEvent e)
 {
     vsSearcherCancelled = e.ToString();
 }