Hi support!
I am creating a BPMN component using GoDiagram, and I would like to create the conditionalFlow… Is there a way to create it with GoDiagram? DefaultFlow Ok, as you can see in my class…I set FromArrowStyle property…But Conditional flow has a diamond at the beginning of connector.
//Diagram Link
public class GraphLink : GoLabeledLink
{
//Constructor
public GraphLink()
{
//Default link properties
this.Orthogonal = true;
this.Style = GoStrokeStyle.RoundedLine;
this.ToArrow = true;
Pen new_pen = new Pen(Color.Black);
new_pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Solid;
this.Pen = new_pen;
}
public String Text
{
//Null value means no FromLabel
get
{
GoText lab = this.FromLabel as GoText;
if (lab != null)
return lab.Text;
else
return null;
}
set
{
if (value == null)
{
this.FromLabel = null;
}
else
{
GoText lab = this.FromLabel as GoText;
if (lab == null)
{
lab = new GoText();
lab.Selectable = false;
lab.Editable = true;
this.FromLabel = lab;
}
lab.Text = value;
}
}
}
public void ConfigureLink(ItemKind mKind)
{
if (this != null)
{
if (mKind == ItemKind.SolidLink)
{
this.ToArrow = true;
Pen new_pen = new Pen(Color.Black);
new_pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Solid;
this.Pen = new_pen;
}
else if (mKind == ItemKind.DefaultLink)
{
this.ToArrow = true;
this.FromArrow = true;
Pen new_pen = new Pen(Color.Black);
new_pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Solid;
this.Pen = new_pen;
this.FromArrowStyle = GoStrokeArrowheadStyle.Slash;
}
else if (mKind == ItemKind.ConditionalLink) //SEE ! <>------>
{
this.ToArrow = true;
this.FromArrow = true;
Pen new_pen = new Pen(Color.Black);
new_pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Solid;
this.Pen = new_pen;
this.FromArrowStyle = GoStrokeArrowheadStyle.Circle;
this.FromArrowFilled = false;
}
else if (mKind == ItemKind.MessageLink)
{
this.ToArrow = false;
Pen new_pen = new Pen(Color.Black);
new_pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
this.Pen = new_pen;
}
}
}
}
See image…