示例#1
0
 public Shape(ShapeInfo _info)
 {
     info = _info;
 }
示例#2
0
 public Line(ShapeInfo _info) : base(_info)
 {
 }
示例#3
0
 public AcInputBlock(ShapeInfo _info) : base(_info)
 {
 }
示例#4
0
 public Round(ShapeInfo _info) : base(_info)
 {
 }
示例#5
0
        private void panelcontrol_MouseUp(object sender, MouseEventArgs e)
        {
            End.X = e.X;
            End.Y = e.Y;
            g     = panelcontrol.CreateGraphics();
            DiagramFactory fac  = new DfdFactory();
            ShapeInfo      temp = new ShapeInfo(Start, End);
            DiagramFactory fac2 = new FCFactory();
            CommonGraphics gdi1 = new GdiPlusCommonGraphics(g, panelcontrol);

            //chon graphic
            if (GraphicType == 0)
            {
                gdi = gdi1;
            }
            else
            {
                try
                {
                    Surface s = new Win32Surface(g.GetHdc());
                    Context c = new Context(s);
                    gdi = new CairoCommonGraphics(c);
                }catch (System.DllNotFoundException)
                {
                    GraphicType = 0;
                    MessageBox.Show("DllNotFoundException", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            //chon hinh ve
            switch (ShapeType)
            {
            case 0:
                Shape line = new Line(Start, End);
                line.draw(gdi);

                break;

            case 1:
                Shape rect = new Rect(Start, End);
                rect.draw(gdi);
                break;

            case 2:
                Shape eclip = new Eclip(Start, End);
                eclip.draw(gdi);
                break;

            case 3:

                ABlock startblock = fac.createStartBlock(temp);
                startblock.draw(gdi);
                break;

            case 4:
                ABlock input = fac.createInputBlock(temp);
                input.draw(gdi);
                break;

            case 5:
                ABlock startbl = fac2.createStartBlock(temp);
                startbl.draw(gdi);
                break;

            case 6:
                ABlock inputbl = fac2.createInputBlock(temp);
                inputbl.draw(gdi);
                break;

            case 7:
                Shape star = new Star(Start, End);
                star.draw(gdi);
                break;

            default:
                break;
            }
        }
示例#6
0
 public AcStartBlock(ShapeInfo _info) : base(_info)
 {
 }
示例#7
0
 public override InputBlock createInputBlock(ShapeInfo info)
 {
     return(new AcInputBlock(info));
 }
示例#8
0
 public OutputBlock(ShapeInfo _info) : base(_info)
 {
 }
示例#9
0
 public abstract StartBlock createStartBlock(ShapeInfo info);
示例#10
0
 public abstract InputBlock createInputBlock(ShapeInfo info);
示例#11
0
 public EndBlock(ShapeInfo _info) : base(_info)
 {
 }
示例#12
0
 public ConditionBlock(ShapeInfo _info) : base(_info)
 {
 }
示例#13
0
 public StepBlock(ShapeInfo _info) : base(_info)
 {
 }
示例#14
0
 public Rect(ShapeInfo _info) : base(_info)
 {
 }
示例#15
0
 public override StartBlock createStartBlock(ShapeInfo info)
 {
     return(new AcStartBlock(info));
 }
示例#16
0
 public Star(ShapeInfo _info) : base(_info)
 {
 }
示例#17
0
 public ProcessBlock(ShapeInfo _info) : base(_info)
 {
 }