MainWindow.xaml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <Window x:Class="SketchAssistantWPF.MainWindow"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  5. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  6. xmlns:local="clr-namespace:SketchAssistantWPF"
  7. mc:Ignorable="d"
  8. Title="Sketch Assistant" Height="612" Width="914" SizeChanged="Window_SizeChanged">
  9. <Grid>
  10. <Grid.ColumnDefinitions>
  11. <ColumnDefinition Width="auto"/>
  12. <ColumnDefinition Width="auto"/>
  13. <ColumnDefinition Width="450*"/>
  14. <ColumnDefinition Width="5"/>
  15. <ColumnDefinition Width="290*"/>
  16. <ColumnDefinition Width="161*"/>
  17. <ColumnDefinition Width="auto"/>
  18. <ColumnDefinition Width="auto"/>
  19. </Grid.ColumnDefinitions>
  20. <Grid.RowDefinitions>
  21. <RowDefinition Height="auto"/>
  22. <RowDefinition Height="*"/>
  23. <RowDefinition Height="auto"/>
  24. </Grid.RowDefinitions>
  25. <ToolBar x:Name="MenuToolbar" Grid.Column="0" Grid.ColumnSpan="3" Grid.Row="0">
  26. <Menu>
  27. <MenuItem x:Name="LoadMenuButton" Header="Load">
  28. <MenuItem Header="Load SVG File"/>
  29. </MenuItem>
  30. <MenuItem x:Name="EditMenuButton" Header="Edit">
  31. <MenuItem Header="New Canvas" Click="CanvasButton_Click"/>
  32. <MenuItem Header="Undo" Click="UndoButton_Click"/>
  33. <MenuItem Header="Redo" Click="RedoButton_Click"/>
  34. </MenuItem>
  35. </Menu>
  36. </ToolBar>
  37. <ToolBar x:Name="DrawingToolBar" Grid.Column="4" Grid.Row="0" Grid.ColumnSpan="2">
  38. <Button x:Name="CanvasButton" ToolTip="Create a new Canvas" Click="CanvasButton_Click">
  39. <Rectangle Width="30" Height="30">
  40. <Rectangle.Fill>
  41. <DrawingBrush>
  42. <DrawingBrush.Drawing>
  43. <DrawingGroup ClipGeometry="M0,0 V60 H60 V0 H0 Z">
  44. <DrawingGroup Transform="1.0513,0,0,1.0513,-1.5376,-1.5376">
  45. <GeometryDrawing Geometry="F1 M60,60z M0,0z M11.75,54.375L11.75,5.625 39.438,5.625 48.25,14.438 48.25,54.375 11.75,54.375z">
  46. <GeometryDrawing.Pen>
  47. <Pen Brush="#FFFFFFFF" Thickness="7.1343" StartLineCap="Round" EndLineCap="Round" LineJoin="Round" />
  48. </GeometryDrawing.Pen>
  49. </GeometryDrawing>
  50. <GeometryDrawing Brush="#FFFFFFFF" Geometry="F1 M60,60z M0,0z M11.75,54.375L11.75,5.625 39.438,5.625 48.25,14.438 48.25,54.375 11.75,54.375z">
  51. <GeometryDrawing.Pen>
  52. <Pen Brush="#FF000000" Thickness="2.3781" StartLineCap="Round" EndLineCap="Round" LineJoin="Round" />
  53. </GeometryDrawing.Pen>
  54. </GeometryDrawing>
  55. <GeometryDrawing Brush="#FF000000" Geometry="F1 M60,60z M0,0z M39.437,14.438L39.437,5.625 48.25,14.438 39.437,14.438z">
  56. <GeometryDrawing.Pen>
  57. <Pen Brush="#FF000000" Thickness="2.3781" StartLineCap="Round" EndLineCap="Round" LineJoin="Round" />
  58. </GeometryDrawing.Pen>
  59. </GeometryDrawing>
  60. </DrawingGroup>
  61. </DrawingGroup>
  62. </DrawingBrush.Drawing>
  63. </DrawingBrush>
  64. </Rectangle.Fill>
  65. </Rectangle>
  66. </Button>
  67. <ToggleButton x:Name="DrawButton" ToolTip="Enter Drawing Mode" Click="DrawButton_Click">
  68. <Rectangle Width="30" Height="30">
  69. <Rectangle.Fill>
  70. <DrawingBrush>
  71. <DrawingBrush.Drawing>
  72. <DrawingGroup>
  73. <GeometryDrawing Brush="#FF000000" Geometry="F1 M485.219,485.22z M0,0z M467.476,146.438L446.031,167.893 317.35,39.23 338.795,17.773C362.484,-5.919,400.899,-5.919,424.59,17.773L467.476,60.67C491.133,84.349,491.133,122.748,467.476,146.438z M167.233,403.748C161.311,409.67 161.311,419.261 167.233,425.184 173.158,431.139 182.754,431.139 188.676,425.184L424.59,189.335 403.121,167.878 167.233,403.748z M60,296.54C54.075,302.467 54.075,312.054 60,317.98 65.922,323.903 75.518,323.903 81.443,317.98L317.35,82.113 295.914,60.67 60,296.54z M338.767,103.54L102.881,339.421C91.036,351.243 91.066,370.462 102.881,382.307 114.731,394.153 133.919,394.208 145.795,382.275L381.681,146.438 338.767,103.54z M145.734,446.572C138.481,439.31 134.985,430.107 133.684,420.624 130.601,421.1 127.496,421.543 124.324,421.543 108.122,421.543 92.905,415.21 81.443,403.748 69.981,392.257 63.673,377.061 63.673,360.861 63.673,357.907 64.116,355.028 64.532,352.158 54.729,350.823 45.668,346.529 38.56,339.421 37.878,338.744 37.643,337.825 37.022,337.083L0,485.216 147.748,448.23C147.097,447.637,146.36,447.193,145.734,446.572z" />
  74. </DrawingGroup>
  75. </DrawingBrush.Drawing>
  76. </DrawingBrush>
  77. </Rectangle.Fill>
  78. </Rectangle>
  79. </ToggleButton>
  80. <ToggleButton x:Name="DeleteButton" ToolTip="Enter Deletion Mode" Click="DeleteButton_Click" >
  81. <Rectangle Width="30" Height="30">
  82. <Rectangle.Fill>
  83. <DrawingBrush>
  84. <DrawingBrush.Drawing>
  85. <DrawingGroup ClipGeometry="M0,0 V512 H512 V0 H0 Z">
  86. <GeometryDrawing Brush="#FF000000" Geometry="F1 M512,512z M0,0z M497.941,273.941C516.686,255.196,516.686,224.804,497.941,206.059L337.941,46.059C319.196,27.314,288.805,27.313,270.058,46.059L14.058,302.059C-4.68700000000001,320.804,-4.68700000000001,351.196,14.058,369.941L110.058,465.941A48.004,48.004,0,0,0,144,480L500,480C506.627,480,512,474.627,512,468L512,428C512,421.373,506.627,416,500,416L355.883,416 497.941,273.941z M195.314,211.314L332.687,348.687 265.373,416 150.628,416 70.628,336 195.314,211.314z" />
  87. </DrawingGroup>
  88. </DrawingBrush.Drawing>
  89. </DrawingBrush>
  90. </Rectangle.Fill>
  91. </Rectangle>
  92. </ToggleButton>
  93. <Button x:Name="UndoButton" ToolTip="Undo the last action" Click="UndoButton_Click" >
  94. <Rectangle Width="30" Height="30">
  95. <Rectangle.Fill>
  96. <DrawingBrush>
  97. <DrawingBrush.Drawing>
  98. <DrawingGroup ClipGeometry="M0,0 V60 H60 V0 H0 Z">
  99. <GeometryDrawing Geometry="F1 M60,60z M0,0z M25.063,4.6882L9.445,20.1632 25.063,35.6012 25.063,25.9792C25.442,25.9292 25.778,25.7632 26.176,25.7632 33.176,25.7632 38.85,31.4742 38.85,38.4732 38.85,41.7872 37.521,44.7602 35.439,47.0182L43.733,55.3122C47.934,50.9322 50.555,45.0212 50.555,38.4732 50.555,25.0092 39.64,14.0592 26.176,14.0592 25.797,14.0592 25.437,14.1452 25.063,14.1672L25.063,4.68840000000001z">
  100. <GeometryDrawing.Pen>
  101. <Pen Brush="#FFFFFFFF" Thickness="8.125" StartLineCap="Round" EndLineCap="Round" LineJoin="Round" />
  102. </GeometryDrawing.Pen>
  103. </GeometryDrawing>
  104. <GeometryDrawing Brush="#FF000000" Geometry="F0 M60,60z M0,0z M25.063,4.6882L9.445,20.1632 25.063,35.6012 25.063,25.9792C25.442,25.9292 25.778,25.7632 26.176,25.7632 33.176,25.7632 38.85,31.4742 38.85,38.4732 38.85,41.7872 37.521,44.7602 35.439,47.0182L43.733,55.3122C47.934,50.9322 50.555,45.0212 50.555,38.4732 50.555,25.0092 39.64,14.0592 26.176,14.0592 25.797,14.0592 25.437,14.1452 25.063,14.1672L25.063,4.68840000000001z">
  105. <GeometryDrawing.Pen>
  106. <Pen Brush="#FF000000" Thickness="3.125" StartLineCap="Round" EndLineCap="Round" LineJoin="Round" />
  107. </GeometryDrawing.Pen>
  108. </GeometryDrawing>
  109. </DrawingGroup>
  110. </DrawingBrush.Drawing>
  111. </DrawingBrush>
  112. </Rectangle.Fill>
  113. </Rectangle>
  114. </Button>
  115. <Button x:Name="RedoButton" ToolTip="Redo the last undone action" Click="RedoButton_Click">
  116. <Rectangle Width="30" Height="30">
  117. <Rectangle.Fill>
  118. <DrawingBrush>
  119. <DrawingBrush.Drawing>
  120. <DrawingGroup ClipGeometry="M0,0 V60 H60 V0 H0 Z">
  121. <DrawingGroup Transform="-1,0,0,1,60,0">
  122. <GeometryDrawing Geometry="F1 M60,60z M0,0z M25.063,4.6882L9.445,20.1632 25.063,35.6012 25.063,25.9792C25.442,25.9292 25.778,25.7632 26.176,25.7632 33.176,25.7632 38.85,31.4742 38.85,38.4732 38.85,41.7872 37.521,44.7602 35.439,47.0182L43.733,55.3122C47.934,50.9322 50.555,45.0212 50.555,38.4732 50.555,25.0092 39.64,14.0592 26.176,14.0592 25.797,14.0592 25.437,14.1452 25.063,14.1672L25.063,4.68840000000001z">
  123. <GeometryDrawing.Pen>
  124. <Pen Brush="#FFFFFFFF" Thickness="8.125" StartLineCap="Round" EndLineCap="Round" LineJoin="Round" />
  125. </GeometryDrawing.Pen>
  126. </GeometryDrawing>
  127. <GeometryDrawing Brush="#FF000000" Geometry="F0 M60,60z M0,0z M25.063,4.6882L9.445,20.1632 25.063,35.6012 25.063,25.9792C25.442,25.9292 25.778,25.7632 26.176,25.7632 33.176,25.7632 38.85,31.4742 38.85,38.4732 38.85,41.7872 37.521,44.7602 35.439,47.0182L43.733,55.3122C47.934,50.9322 50.555,45.0212 50.555,38.4732 50.555,25.0092 39.64,14.0592 26.176,14.0592 25.797,14.0592 25.437,14.1452 25.063,14.1672L25.063,4.68840000000001z">
  128. <GeometryDrawing.Pen>
  129. <Pen Brush="#FF000000" Thickness="3.125" StartLineCap="Round" EndLineCap="Round" LineJoin="Round" />
  130. </GeometryDrawing.Pen>
  131. </GeometryDrawing>
  132. </DrawingGroup>
  133. </DrawingGroup>
  134. </DrawingBrush.Drawing>
  135. </DrawingBrush>
  136. </Rectangle.Fill>
  137. </Rectangle>
  138. </Button>
  139. </ToolBar>
  140. <Canvas Name="LeftCanvas" Background="SlateGray" Grid.Column="2" Grid.Row="1" Height="auto"/>
  141. <Canvas Name="RightCanvas" Background="SlateGray" Grid.Column="4" Grid.Row="1" Height="auto"
  142. MouseDown="RightCanvas_MouseDown" MouseUp="RightCanvas_MouseUp" MouseMove="RightCanvas_MouseMove" Grid.ColumnSpan="2"/>
  143. <DockPanel Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="6">
  144. <StatusBar DockPanel.Dock="Bottom" Name="StatusBar" Background="LightGray">
  145. <TextBox Name="LoadStatusBox" Text="nothing loaded" Background="LightGray"/>
  146. <Separator/>
  147. <TextBox Name="LastActionBox" Text="none" Background="LightGray"/>
  148. </StatusBar>
  149. </DockPanel>
  150. </Grid>
  151. </Window>