Skip to content

Commit a159143

Browse files
Merge pull request #135 from ParameshwaranSF4845/940817-FlipGroup
940817: FlipGroup examples updated
2 parents a492f00 + cbf918d commit a159143

File tree

2 files changed

+153
-142
lines changed

2 files changed

+153
-142
lines changed

UG-Samples/Flip/FlipDirection/FlipDirection/Pages/Index.razor

Lines changed: 76 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,22 @@
11
@page "/"
22

33
@using Syncfusion.Blazor.Diagram
4-
@using Syncfusion.Blazor.Buttons
5-
6-
<SfButton Content="HorizontalPort" OnClick="@HorizontalPort" />
7-
<SfButton Content="HorizontalContent" OnClick="@HorizontalContent" />
8-
<SfButton Content="HorizontalAll" OnClick="@HorizontalAll" />
9-
<SfButton Content="HorizontalNone" OnClick="@HorizontalNone" />
4+
@using Syncfusion.Blazor.DropDowns
5+
<SfDropDownList TItem="FlipOption" TValue="string"
6+
DataSource="@FlipDirections"
7+
Placeholder="Flip">
8+
<DropDownListEvents TItem="FlipOption" TValue="string"
9+
ValueChange="@FlipDirectionChange" />
10+
<DropDownListFieldSettings Text="Name" Value="Value"></DropDownListFieldSettings>
11+
</SfDropDownList>
1012

13+
<SfDropDownList TItem="FlipOption" TValue="string"
14+
DataSource="@FlipModes"
15+
Placeholder="Flip">
16+
<DropDownListEvents TItem="FlipOption" TValue="string"
17+
ValueChange="@FlipModeChange" />
18+
<DropDownListFieldSettings Text="Name" Value="Value"></DropDownListFieldSettings>
19+
</SfDropDownList>
1120
<SfDiagramComponent @ref="diagram" Width="1000px" Height="1000px" Nodes="@NodeCollection" Connectors="@connectors">
1221
</SfDiagramComponent>
1322
@code
@@ -18,6 +27,31 @@
1827
public SfDiagramComponent diagram;
1928
//Define diagram nodes collection
2029
DiagramObjectCollection<Node> NodeCollection;
30+
public class FlipOption
31+
{
32+
public string Name { get; set; }
33+
public string Value { get; set; } // Bound value
34+
}
35+
36+
List<FlipOption> FlipDirections = new()
37+
{
38+
new FlipOption { Name = "None", Value = "None" },
39+
new FlipOption { Name = "Horizontal", Value = "Horizontal" },
40+
new FlipOption { Name = "Vertical", Value = "Vertical" },
41+
new FlipOption { Name = "Both", Value = "Both" }
42+
};
43+
44+
List<FlipOption> FlipModes = new()
45+
{
46+
new FlipOption { Name = "None", Value = "None" },
47+
new FlipOption { Name = "Content", Value = "Content" },
48+
new FlipOption { Name = "Port", Value = "Port" },
49+
new FlipOption { Name = "Text", Value = "Text" },
50+
new FlipOption { Name = "PortAndLabelOnly", Value = "LabelOnly" },
51+
new FlipOption { Name = "PortWithLabelText", Value = "PortWithLabelText" },
52+
new FlipOption { Name = "LabelOnly", Value = "LabelOnly" },
53+
new FlipOption { Name = "All", Value = "All" }
54+
};
2155
protected override void OnInitialized()
2256
{
2357
Node node1 = new Node()
@@ -114,61 +148,40 @@
114148
}
115149
}
116150
}
117-
//Method to flip the content horizontally
118-
public void HorizontalContent()
119-
{
120-
if (diagram.SelectionSettings.Nodes.Count > 0)
121-
{
122-
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
123-
{
124-
diagram.SelectionSettings.Nodes[i].FlipMode = DiagramFlipMode.Content;
125-
if (diagram.SelectionSettings.Nodes[i].Flip.HasFlag(FlipDirection.Horizontal))
126-
{
127-
diagram.SelectionSettings.Nodes[i].Flip &= ~FlipDirection.Horizontal;
128-
}
129-
else
130-
{
131-
diagram.SelectionSettings.Nodes[i].Flip |= FlipDirection.Horizontal;
132-
}
133-
}
134-
}
135-
}
136-
//Method to flip the content and port horizontally
137-
public void HorizontalAll()
138-
{
139-
if (diagram.SelectionSettings.Nodes.Count > 0)
140-
{
141-
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
142-
{
143-
diagram.SelectionSettings.Nodes[i].FlipMode = DiagramFlipMode.All;
144-
if (diagram.SelectionSettings.Nodes[i].Flip.HasFlag(FlipDirection.Horizontal))
145-
{
146-
diagram.SelectionSettings.Nodes[i].Flip &= ~FlipDirection.Horizontal;
147-
}
148-
else
149-
{
150-
diagram.SelectionSettings.Nodes[i].Flip |= FlipDirection.Horizontal;
151-
}
152-
}
153-
}
154-
}
155-
//Method to disable the flip operation
156-
public void HorizontalNone()
157-
{
158-
if (diagram.SelectionSettings.Nodes.Count > 0)
159-
{
160-
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
161-
{
162-
diagram.SelectionSettings.Nodes[i].FlipMode = DiagramFlipMode.None;
163-
if (diagram.SelectionSettings.Nodes[i].Flip.HasFlag(FlipDirection.Horizontal))
164-
{
165-
diagram.SelectionSettings.Nodes[i].Flip &= ~FlipDirection.Horizontal;
166-
}
167-
else
168-
{
169-
diagram.SelectionSettings.Nodes[i].Flip |= FlipDirection.Horizontal;
170-
}
171-
}
172-
}
173-
}
151+
// This method applys flipDirection to the selected node's
152+
public void FlipDirectionChange(ChangeEventArgs<string, FlipOption> args)
153+
{
154+
diagram.StartGroupAction();
155+
156+
if (diagram.SelectionSettings.Nodes.Count > 0)
157+
{
158+
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
159+
{
160+
diagram.SelectionSettings.Nodes[i].Flip = (FlipDirection)Enum.Parse(typeof(FlipDirection), args.Value.ToString());
161+
}
162+
}
163+
for (int i = 0; i < diagram.SelectionSettings.Connectors.Count; i++)
164+
{
165+
diagram.SelectionSettings.Connectors[i].Flip = (FlipDirection)Enum.Parse(typeof(FlipDirection), args.Value.ToString());
166+
}
167+
diagram.EndGroupAction();
168+
169+
}
170+
171+
//This method apply's diagramFLipMode to the selected node's
172+
public void FlipModeChange(ChangeEventArgs<string, FlipOption> args)
173+
{
174+
diagram.StartGroupAction();
175+
176+
if (diagram.SelectionSettings.Nodes.Count > 0)
177+
{
178+
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
179+
{
180+
diagram.SelectionSettings.Nodes[i].FlipMode = (DiagramFlipMode)Enum.Parse(typeof(DiagramFlipMode), args.Value.ToString());
181+
}
182+
}
183+
184+
diagram.EndGroupAction();
185+
186+
}
174187
}

UG-Samples/Flip/FlipGroup/FlipGroup/Pages/Index.razor

Lines changed: 77 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,22 @@
11
@page "/"
22

33
@using Syncfusion.Blazor.Diagram
4-
<input type="button" value="HorizontalPort" @onclick="@HorizontalPort" />
5-
<input type="button" value="HorizontalContent" @onclick="@HorizontalContent" />
6-
<input type="button" value="HorizontalAll" @onclick="@HorizontalAll" />
7-
<input type="button" value="HorizontalNone" @onclick="@HorizontalNone" />
4+
@using Syncfusion.Blazor.DropDowns
5+
<SfDropDownList TItem="FlipOption" TValue="string"
6+
DataSource="@FlipDirections"
7+
Placeholder="Flip">
8+
<DropDownListEvents TItem="FlipOption" TValue="string"
9+
ValueChange="@FlipDirectionChange" />
10+
<DropDownListFieldSettings Text="Name" Value="Value"></DropDownListFieldSettings>
11+
</SfDropDownList>
12+
13+
<SfDropDownList TItem="FlipOption" TValue="string"
14+
DataSource="@FlipModes"
15+
Placeholder="Flip">
16+
<DropDownListEvents TItem="FlipOption" TValue="string"
17+
ValueChange="@FlipModeChange" />
18+
<DropDownListFieldSettings Text="Name" Value="Value"></DropDownListFieldSettings>
19+
</SfDropDownList>
820
<SfDiagramComponent @ref="diagram" Width="1000px" Height="1000px" Nodes="@NodeCollection" Connectors="@connectors">
921
<SnapSettings Constraints="@SnapConstraints.None"></SnapSettings>
1022
</SfDiagramComponent>
@@ -16,6 +28,31 @@
1628
public SfDiagramComponent diagram;
1729
//Define diagram's nodes collection
1830
DiagramObjectCollection<Node> NodeCollection;
31+
public class FlipOption
32+
{
33+
public string Name { get; set; }
34+
public string Value { get; set; } // Bound value
35+
}
36+
37+
List<FlipOption> FlipDirections = new()
38+
{
39+
new FlipOption { Name = "None", Value = "None" },
40+
new FlipOption { Name = "Horizontal", Value = "Horizontal" },
41+
new FlipOption { Name = "Vertical", Value = "Vertical" },
42+
new FlipOption { Name = "Both", Value = "Both" }
43+
};
44+
45+
List<FlipOption> FlipModes = new()
46+
{
47+
new FlipOption { Name = "None", Value = "None" },
48+
new FlipOption { Name = "Content", Value = "Content" },
49+
new FlipOption { Name = "Port", Value = "Port" },
50+
new FlipOption { Name = "Text", Value = "Text" },
51+
new FlipOption { Name = "PortAndLabelOnly", Value = "LabelOnly" },
52+
new FlipOption { Name = "PortWithLabelText", Value = "PortWithLabelText" },
53+
new FlipOption { Name = "LabelOnly", Value = "LabelOnly" },
54+
new FlipOption { Name = "All", Value = "All" }
55+
};
1956
protected override void OnInitialized()
2057
{
2158
Node node3 = new Node()
@@ -117,79 +154,40 @@
117154
};
118155
NodeCollection.Add(groupNode);
119156
}
120-
//Method to flip the port horizontally
121-
public void HorizontalPort()
122-
{
123-
if (diagram.SelectionSettings.Nodes.Count > 0)
124-
{
125-
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
126-
{
127-
diagram.SelectionSettings.Nodes[i].FlipMode = DiagramFlipMode.Port;
128-
if (diagram.SelectionSettings.Nodes[i].Flip.HasFlag(FlipDirection.Horizontal))
129-
{
130-
diagram.SelectionSettings.Nodes[i].Flip &= ~FlipDirection.Horizontal;
131-
}
132-
else
133-
{
134-
diagram.SelectionSettings.Nodes[i].Flip |= FlipDirection.Horizontal;
135-
}
136-
}
137-
}
138-
}
139-
//Method to flip the content horizontally
140-
public void HorizontalContent()
141-
{
142-
if (diagram.SelectionSettings.Nodes.Count > 0)
143-
{
144-
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
145-
{
146-
diagram.SelectionSettings.Nodes[i].FlipMode = DiagramFlipMode.Content;
147-
if (diagram.SelectionSettings.Nodes[i].Flip.HasFlag(FlipDirection.Horizontal))
148-
{
149-
diagram.SelectionSettings.Nodes[i].Flip &= ~FlipDirection.Horizontal;
150-
}
151-
else
152-
{
153-
diagram.SelectionSettings.Nodes[i].Flip |= FlipDirection.Horizontal;
154-
}
155-
}
156-
}
157-
}
158-
//Method to flip the content and port horizontally
159-
public void HorizontalAll()
160-
{
161-
if (diagram.SelectionSettings.Nodes.Count > 0)
162-
{
163-
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
164-
{
165-
diagram.SelectionSettings.Nodes[i].FlipMode = DiagramFlipMode.All;
166-
if (diagram.SelectionSettings.Nodes[i].Flip.HasFlag(FlipDirection.Horizontal))
167-
{
168-
diagram.SelectionSettings.Nodes[i].Flip &= ~FlipDirection.Horizontal;
169-
}
170-
else
171-
{
172-
diagram.SelectionSettings.Nodes[i].Flip |= FlipDirection.Horizontal;
173-
}
174-
}
175-
}
176-
}
177-
public void HorizontalNone()
178-
{
179-
if (diagram.SelectionSettings.Nodes.Count > 0)
180-
{
181-
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
182-
{
183-
diagram.SelectionSettings.Nodes[i].FlipMode = DiagramFlipMode.None;
184-
if (diagram.SelectionSettings.Nodes[i].Flip.HasFlag(FlipDirection.Horizontal))
185-
{
186-
diagram.SelectionSettings.Nodes[i].Flip &= ~FlipDirection.Horizontal;
187-
}
188-
else
189-
{
190-
diagram.SelectionSettings.Nodes[i].Flip |= FlipDirection.Horizontal;
191-
}
192-
}
193-
}
194-
}
157+
// This method applys flipDirection to the selected node's
158+
public void FlipDirectionChange(ChangeEventArgs<string, FlipOption> args)
159+
{
160+
diagram.StartGroupAction();
161+
162+
if (diagram.SelectionSettings.Nodes.Count > 0)
163+
{
164+
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
165+
{
166+
diagram.SelectionSettings.Nodes[i].Flip = (FlipDirection)Enum.Parse(typeof(FlipDirection), args.Value.ToString());
167+
}
168+
}
169+
for (int i = 0; i < diagram.SelectionSettings.Connectors.Count; i++)
170+
{
171+
diagram.SelectionSettings.Connectors[i].Flip = (FlipDirection)Enum.Parse(typeof(FlipDirection), args.Value.ToString());
172+
}
173+
diagram.EndGroupAction();
174+
175+
}
176+
177+
//This method apply's diagramFLipMode to the selected node's
178+
public void FlipModeChange(ChangeEventArgs<string, FlipOption> args)
179+
{
180+
diagram.StartGroupAction();
181+
182+
if (diagram.SelectionSettings.Nodes.Count > 0)
183+
{
184+
for (int i = 0; i < diagram.SelectionSettings.Nodes.Count; i++)
185+
{
186+
diagram.SelectionSettings.Nodes[i].FlipMode = (DiagramFlipMode)Enum.Parse(typeof(DiagramFlipMode), args.Value.ToString());
187+
}
188+
}
189+
190+
diagram.EndGroupAction();
191+
192+
}
195193
}

0 commit comments

Comments
 (0)