コード例 #1
0
        protected LineGraphic GetLine(Graphic @from, Graphic to, bool dashed = false)
        {
            var line = new Omnigraffle.LineGraphic(NextId);

            line.Head = new Omnigraffle.LineEndInfo(to.ID);
            line.Tail = new Omnigraffle.LineEndInfo(@from.ID);

            if (to is ShapedGraphic)
            {
                line.Points.Add((to as ShapedGraphic).Bounds.TopLeft);
            }
            else if (to is Omnigraffle.Group)
            {
                line.Points.Add(new Point(25, 25));
            }

            if (@from is ShapedGraphic)
            {
                line.Points.Add((@from as ShapedGraphic).Bounds.BottomRight);
            }
            else if (@from is Omnigraffle.Group)
            {
                line.Points.Add(new Point(30, 30));
            }

            line.Style.Shadow.Draws = false;

            if (dashed)
            {
                line.Style.Stroke.Pattern = StrokePattern.Dashed;
            }

            return(line);
        }
コード例 #2
0
        private static IPListElement ExportLineGraphic(Omnigraffle.LineGraphic graphic)
        {
            var dict = new PListDict();

            dict.Add("Class", new PListString(graphic.Class));
            dict.Add("ID", new PListInteger(graphic.ID));

            dict.Add("Head", ExportLineEndInfo(graphic.Head));
            dict.Add("Tail", ExportLineEndInfo(graphic.Tail));

            dict.Add("Points", ExportPoints(graphic.Points));

            dict.Add("Style", ExportStyle(graphic.Style));

            return(dict);
        }