Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 5 additions & 6 deletions GrasshopperComponentConfigurator/Models/ParamType.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,10 @@
{
public enum ParamType
{
Point,
Curve,
Plane,
Number,
Text,
Generic
Generic, Angle, Arc, Bool, Box, Brep,
Circle, Colour, ComplexNumber, Curve,
Geometry, Integer, Interval, Line, Matrix,
Mesh, Number, Path, Point, Plane, Rectangle,
SubD, Surface, Text, Transform, Vector
}
}
68 changes: 64 additions & 4 deletions GrasshopperComponentConfigurator/Templates/TemplateManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,21 +30,81 @@ public string AddParameterMethodsString(Usage paramUsage)
var methodName = "";
switch (parameterData.ParamType)
{
case ParamType.Number:
methodName = "AddNumberParameter";
case ParamType.Angle:
methodName = "AddAngleParameter";
break;
case ParamType.Text:
methodName = "AddTextParameter";
case ParamType.Arc:
methodName = "AddArcParameter";
break;
case ParamType.Bool:
methodName = "AddBooleanParameter";
break;
case ParamType.Box:
methodName = "AddBoxParameter";
break;
case ParamType.Brep:
methodName = "AddBrepParameter";
break;
case ParamType.Circle:
methodName = "AddCircleParameter";
break;
case ParamType.Colour:
methodName = "AddColourParameter";
break;
case ParamType.ComplexNumber:
methodName = "AddComplexNumberParameter";
break;
case ParamType.Curve:
methodName = "AddCurveParameter";
break;
case ParamType.Geometry:
methodName = "AddGeometryParameter";
break;
case ParamType.Integer:
methodName = "AddIntegerParameter";
break;
case ParamType.Interval:
methodName = "AddIntervalParameter";
break;
case ParamType.Line:
methodName = "AddLineParameter";
break;
case ParamType.Matrix:
methodName = "AddMatrixParameter";
break;
case ParamType.Mesh:
methodName = "AddMeshParameter";
break;
case ParamType.Number:
methodName = "AddNumberParameter";
break;
case ParamType.Path:
methodName = "AddPathParameter";
break;
case ParamType.Point:
methodName = "AddPointParameter";
break;
case ParamType.Plane:
methodName = "AddPlaneParameter";
break;
case ParamType.Rectangle:
methodName = "AddRectangleParameter";
break;
case ParamType.SubD:
methodName = "AddSubDParameter";
break;
case ParamType.Surface:
methodName = "AddSurfaceParameter";
break;
case ParamType.Text:
methodName = "AddTextParameter";
break;
case ParamType.Transform:
methodName = "AddTransformParameter";
break;
case ParamType.Vector:
methodName = "AddVectorParameter";
break;
default:
methodName = "AddGenericParameter";
break;
Expand Down
64 changes: 60 additions & 4 deletions GrasshopperComponentConfigurator/View/MainWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,57 @@
mc:Ignorable="d"
Title="MainWindow"
ResizeMode="CanResizeWithGrip"
Width="500"
Width="494"
MinWidth="500"
MaxWidth="1200"
Height="550"
MinHeight="550"
MaxHeight="550"
WindowStartupLocation="CenterScreen"
WindowStyle="None"
AllowsTransparency="True"
Background="{x:Null}"
MouseDown="MainWindow_OnMouseDown"
>
<Window.Resources>
<Style x:Key="CloseStyle" TargetType="{x:Type Button}">
<Setter Property="FocusVisualStyle" Value="{StaticResource FocusVisual}"/>
<Setter Property="Background" Value="{StaticResource Button.Static.Background}"/>
<Setter Property="BorderBrush" Value="{StaticResource Button.Static.Border}"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="BorderThickness" Value="5"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Padding" Value="1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border x:Name="border" Background="Red" BorderBrush="#FF454545" BorderThickness="5" CornerRadius="20" SnapsToDevicePixels="true">
<ContentPresenter x:Name="contentPresenter" Focusable="False" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsDefaulted" Value="true">
<Setter Property="BorderBrush" TargetName="border" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Background" TargetName="border" Value="Yellow"/>
<Setter Property="BorderBrush" TargetName="border" Value="#FF454545"/>
</Trigger>
<Trigger Property="IsPressed" Value="true">
<Setter Property="Background" TargetName="border" Value="Orange"/>
<Setter Property="BorderBrush" TargetName="border" Value="#FF454545"/>
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Background" TargetName="border" Value="Gray"/>
<Setter Property="BorderBrush" TargetName="border" Value="#FF454545"/>
<Setter Property="TextElement.Foreground" TargetName="contentPresenter" Value="{StaticResource Button.Disabled.Foreground}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>

<Grid MinHeight="548" VerticalAlignment="Center">
<!--<Grid.Effect>
Expand Down Expand Up @@ -83,7 +126,7 @@
CanUserDeleteRows="True"
CanUserResizeRows="False"
HorizontalGridLinesBrush="#D0D0D0"
VerticalGridLinesBrush="#D0D0D0">
VerticalGridLinesBrush="#D0D0D0" Height="252">

<DataGrid.Columns>

Expand Down Expand Up @@ -135,12 +178,25 @@
</DataGrid>
</StackPanel>

<Button Style="{DynamicResource RoundedCornerButton}"
<Button x:Name="Save" Style="{DynamicResource RoundedCornerButton}"
Cursor="Hand"
Click="GenerateComponentTemplate_OnClick"
Grid.Column="2"
Grid.Row="3"
Margin="0,0,17,17" Foreground="White" FontWeight="Bold" FontSize="14" BorderThickness="5,5,5,5" Background="{x:Null}" Panel.ZIndex="1" Grid.ColumnSpan="2" Height="48" VerticalAlignment="Bottom" HorizontalAlignment="Right" Width="47">
Margin="0,0,17,17" Foreground="White" FontWeight="Bold" FontSize="14" BorderThickness="5,5,5,5" Background="{x:Null}" Panel.ZIndex="1" Grid.ColumnSpan="2" Height="30" VerticalAlignment="Bottom" HorizontalAlignment="Right" Width="30">
<Button.BorderBrush>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Black"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Button.BorderBrush>
</Button>
<Button x:Name="CloseButton" Style="{DynamicResource CloseStyle}"
Cursor="Hand"
Click="CloseWindow_OnClick"
Grid.Column="1"
Grid.Row="3"
Margin="0,0,183,17" Foreground="White" FontWeight="Bold" FontSize="14" BorderThickness="5,5,5,5" Background="{x:Null}" Panel.ZIndex="1" Height="30" VerticalAlignment="Bottom" HorizontalAlignment="Left" Width="30" IsEnabled="False">
<Button.BorderBrush>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Black"/>
Expand Down
14 changes: 14 additions & 0 deletions GrasshopperComponentConfigurator/View/MainWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ public MainWindow()
InitializeComponent();
_viewModel = new MainViewModel();
this.DataContext = _viewModel;
this.MouseDown += CloseWindow;
}

private void GenerateComponentTemplate_OnClick(object sender, RoutedEventArgs e)
Expand All @@ -31,6 +32,19 @@ private void GenerateComponentTemplate_OnClick(object sender, RoutedEventArgs e)
}
}

private void CloseWindow_OnClick(object sender, RoutedEventArgs e)
{
this.Close();
}

private void CloseWindow(object sender, MouseEventArgs e)
{
if (CloseButton.IsEnabled == false && e.RightButton == MouseButtonState.Pressed)
CloseButton.IsEnabled = true;
else if (CloseButton.IsEnabled == true && e.RightButton == MouseButtonState.Pressed)
CloseButton.IsEnabled = false;
}

private void MainWindow_OnMouseDown(object sender, MouseButtonEventArgs e)
{
if (e.ChangedButton == MouseButton.Left)
Expand Down