private void this_MouseRightButtonUp(object sender, MouseButtonEventArgs e)
 {
     if (child != null)
     {
         this.ReleaseMouseCapture();
         this.Cursor = Cursors.Arrow;
         mco = MouseCaptureOwner.NONE;
     }
 }
 private void this_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
 {
     if (child != null)
     {
         this.ReleaseMouseCapture();
         mco = MouseCaptureOwner.NONE;
         if (leftSelected != null && leftSelected != curMouseMoveSel && child.isRenderOptionAvailable(leftSelected, RenderOption.OnSelection))
         {
             child.setRenderOption(leftSelected, RenderOption.OnSelection, new Tuple<object, object>(false, null));
         }
         leftSelected = null;
     }
 }
 private void this_MouseRightButtonDown(object sender, MouseButtonEventArgs e)
 {
     if (child != null && mco == MouseCaptureOwner.NONE)
     {
         var tt = Draw.Transform.GetTranslateTransform(child);
         start = e.GetPosition(this);
         origin = new Point(tt.X, tt.Y);
         this.Cursor = Cursors.Hand;
         this.CaptureMouse();
         mco = MouseCaptureOwner.RIGHT;
     }
 }
        private void this_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            if (child != null && mco == MouseCaptureOwner.NONE)
            {
                this.CaptureMouse();
                mco = MouseCaptureOwner.LEFT;
                start = e.GetPosition(child);

                detCursorSelection(child, e, out leftSelected);
                if (leftSelected != null && child.isRenderOptionAvailable(leftSelected, RenderOption.OnSelection))
                {
                    child.setRenderOption(leftSelected, RenderOption.OnSelection, new Tuple<object, object>(true, null));
                    BringToFront(child, leftSelected);
                }
            }
            if (child != null && mco == MouseCaptureOwner.LEFT && e.ClickCount == 2 && child.targets.ContainsKey(leftSelected))
            {
                //MessageBox.Show(child.targets[leftSelected].ToString());
                MainWindow.StatusLabel.Content = child.targets[leftSelected].ToStatusString();
                DetailWindow dw = new DetailWindow(child.targets[leftSelected]);
                this_MouseLeftButtonUp(sender, e);
            }
        }