コード例 #1
0
        private void AnimationCompleted(double to)
        {
            Dispatcher.Invoke(() =>
            {
                // start auto hide timer if opacity is 100% and no mouse is over
                if (to == 1.0 && !_mouseIsOver)
                {
                    _timer.Start();
                }

                // hide if opacity is 0%
                if (to == 0.0)
                {
                    Hide();
                    lock ( _lock )
                    {
                        _currentControllerIndex = -1;
                    }
                }

                // check if there is an item in the wait queue
                if (to == 0.0 && _infoQueue.Size() > 0)
                {
                    // get next queue item and show info window
                    InfoQueueItem iqi = _infoQueue.Get();
                    ShowInfo(iqi.text, iqi.controller);
                }
            });
        }
コード例 #2
0
 public InfoQueueItem Get()
 {
     if (_data.Count > 0)
     {
         InfoQueueItem iwqi = _data[0];
         _data.RemoveAt(0);
         return(iwqi);
     }
     return(null);
 }