コード例 #1
0
        private void AgentKeyListChangeHandler(object sender, Agent.KeyListChangeEventArgs e)
        {
//      if (IsDisposed) {
//        return;
//      }
            switch (e.Action)
            {
            case Agent.KeyListChangeEventAction.Add:
                Gtk.Application.Invoke(delegate(object sender1, EventArgs e1)
                {
                    mKeyCollection.AddNode(new KeyNode(e.Key));
                    UpdateVisibility();
                });
                break;

            case Agent.KeyListChangeEventAction.Remove:
                Gtk.Application.Invoke(delegate(object sender1, EventArgs e1)
                {
                    var matchFingerprint = e.Key.GetMD5Fingerprint().ToHexString();

                    var matches = mKeyCollection.Cast <KeyNode>()
                                  .Where(k => k.Fingerprint == matchFingerprint);
                    foreach (var keyNode in matches)
                    {
                        mKeyCollection.RemoveNode(keyNode);
                    }
                    UpdateVisibility();
                });
                break;
            }
        }
コード例 #2
0
 void mAgent_KeyListChanged(object sender, Agent.KeyListChangeEventArgs e)
 {
     // TODO figure out how to invoke Qt UI thread
     ReloadData();
 }
コード例 #3
0
 private void mAgent_KeyListChanged(object sender, Agent.KeyListChangeEventArgs e)
 {
     ReloadData();
 }