예제 #1
0
파일: GraphForm.cs 프로젝트: x2v0/gep
 private void GraphForm_Paint(object sender, PaintEventArgs e)
 {
     Point viewpoint = new Point(hScrollBar.Value, vScrollBar.Value - toolStripHeight);
     graph.Draw(e.Graphics, viewpoint);
     if (connectingPin != null && connectingPin.Connection==null)
     {
         Pen pen = otherPin==null ? Pens.Red : Pens.LightGreen;
         Point mstart = movingStart;
         mstart.X -= viewpoint.X;
         mstart.Y -= viewpoint.Y;
         Point mpos = mousepos;
         mpos.X -= viewpoint.X;
         mpos.Y -= viewpoint.Y;
         e.Graphics.DrawLine(pen, mstart, mpos);
     }
     if (selecting)
     {
         Point mstart = movingStart;
         mstart.X -= viewpoint.X;
         mstart.Y -= viewpoint.Y;
         Point mpos = mousepos;
         mpos.X -= viewpoint.X;
         mpos.Y -= viewpoint.Y;
         Rectangle rc = new Rectangle(Math.Min(mstart.X, mpos.X), Math.Min(mstart.Y, mpos.Y), Math.Abs(mstart.X - mpos.X), Math.Abs(mstart.Y - mpos.Y));
         e.Graphics.DrawRectangle(Pens.Cyan, rc);
     }
 }