Skip to content

Commit

Permalink
Add Solidity source icon to project definition.
Browse files Browse the repository at this point in the history
  • Loading branch information
allisterb committed Sep 19, 2024
1 parent a9cffba commit 4af1771
Show file tree
Hide file tree
Showing 6 changed files with 83 additions and 2 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
51 changes: 51 additions & 0 deletions src/Stratis.VS.StratisEVM/Images/SoliditySourceFileIcon.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
<!-- This file was generated by the AiToXaml tool.-->
<!-- Tool Version: 14.0.22307.0 -->
<Viewbox Width="16" Height="16" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<Rectangle Width="16" Height="16">
<Rectangle.Fill>
<DrawingBrush>
<DrawingBrush.Drawing>
<DrawingGroup ClipGeometry="M0,0 V1300 H1300 V0 H0 Z">
<DrawingGroup.Transform>
<TranslateTransform X="200.158000946044922" Y="0" />
</DrawingGroup.Transform>
<DrawingGroup Transform="1,0,0,1,602,118">
<DrawingGroup.Children>
<GeometryDrawing Geometry="F1 M1300,1300z M0,0z M371.772,135.308L241.068,367.61 -20.158,367.61 110.456,135.308 371.772,135.308">
<GeometryDrawing.Brush>
<SolidColorBrush Color="#FF000000" Opacity="0.45" />
</GeometryDrawing.Brush>
</GeometryDrawing>
<GeometryDrawing Geometry="F1 M1300,1300z M0,0z M241.068,367.61L502.386,367.61 371.772,135.308 110.456,135.308 241.068,367.61z">
<GeometryDrawing.Brush>
<SolidColorBrush Color="#FF000000" Opacity="0.6" />
</GeometryDrawing.Brush>
</GeometryDrawing>
<GeometryDrawing Geometry="F1 M1300,1300z M0,0z M110.456,599.822L241.068,367.61 110.456,135.308 -20.158,367.61 110.456,599.822z">
<GeometryDrawing.Brush>
<SolidColorBrush Color="#FF000000" Opacity="0.8" />
</GeometryDrawing.Brush>
</GeometryDrawing>
<GeometryDrawing Geometry="F1 M1300,1300z M0,0z M111.721,948.275L242.425,715.972 503.743,715.972 373.038,948.275 111.721,948.275">
<GeometryDrawing.Brush>
<SolidColorBrush Color="#FF000000" Opacity="0.45" />
</GeometryDrawing.Brush>
</GeometryDrawing>
<GeometryDrawing Geometry="F1 M1300,1300z M0,0z M242.424,715.973L-18.893,715.973 111.72,948.276 373.037,948.276 242.424,715.973z">
<GeometryDrawing.Brush>
<SolidColorBrush Color="#FF000000" Opacity="0.6" />
</GeometryDrawing.Brush>
</GeometryDrawing>
<GeometryDrawing Geometry="F1 M1300,1300z M0,0z M373.038,483.761L242.424,715.973 373.038,948.276 503.742,715.973 373.038,483.761z">
<GeometryDrawing.Brush>
<SolidColorBrush Color="#FF000000" Opacity="0.8" />
</GeometryDrawing.Brush>
</GeometryDrawing>
</DrawingGroup.Children>
</DrawingGroup>
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>
</Rectangle.Fill>
</Rectangle>
</Viewbox>
8 changes: 8 additions & 0 deletions src/Stratis.VS.StratisEVM/SolidityProject.imagemanifest
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@
<Symbols>
<String Name="Resources" Value="/Stratis.VS.StratisEVM;Component/" />
<Guid Name="SolidityProjectGuid" Value="293347bb-f054-408c-8ad9-cbabe93176fc" />
<Guid Name="SoliditySourceFileGuid" Value="c0a684d8-7f68-4bc3-9b34-60a864cfdf98" />
<ID Name="ProjectIcon" Value="0" />
<ID Name="SoliditySourceIcon" Value="1" />
</Symbols>
<Images>
<Image Guid="$(SolidityProjectGuid)" ID="$(ProjectIcon)">
Expand All @@ -14,6 +16,12 @@
<Size Value="16" />
</Source>
</Image>
<Image Guid="$(SoliditySourceFileGuid)" ID="$(SoliditySourceIcon)">
<Source Uri="$(Resources)/Images/SoliditySourceFileIcon.xaml" />
<Source Uri="$(Resources)/Images/SoliditySourceFileIcon.png" >
<Size Value="16" />
</Source>
</Image>
</Images>
<ImageLists />
</ImageManifest>
16 changes: 14 additions & 2 deletions src/Stratis.VS.StratisEVM/SolidityProjectMonikers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,27 @@ namespace Stratis.VS.StratisEVM
{
public static class SolidityProjectMonikers
{
private static readonly Guid ManifestGuid = new Guid("293347bb-f054-408c-8ad9-cbabe93176fc");
private static readonly Guid ProjectManifestGuid = new Guid("293347bb-f054-408c-8ad9-cbabe93176fc");

private static readonly Guid SoliditySourceManifestGuid = new Guid("c0a684d8-7f68-4bc3-9b34-60a864cfdf98");

private const int ProjectIcon = 0;

private const int SoliditySourceIcon = 1;

public static ImageMoniker ProjectIconImageMoniker
{
get
{
return new ImageMoniker { Guid = ManifestGuid, Id = ProjectIcon };
return new ImageMoniker { Guid = ProjectManifestGuid, Id = ProjectIcon };
}
}

public static ImageMoniker SolidityIconImageMoniker
{
get
{
return new ImageMoniker { Guid = SoliditySourceManifestGuid, Id = SoliditySourceIcon };
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,11 @@ public void CalculatePropertyValues(
// TODO: Provide a moniker that represents the desired icon (you can use the "Custom Icons" item template to add a .imagemanifest to the project)
propertyValues.Icon = SolidityProjectMonikers.ProjectIconImageMoniker.ToProjectSystemType();
}

else if (propertyValues.Flags.Contains(ProjectTreeFlags.Common.SourceFile) && propertyValues.Flags.Contains(ProjectTreeFlags.Common.FileOnDisk) && propertyValues.Flags.Contains(ProjectTreeFlags.Common.FileOnDisk))
{
propertyValues.Icon = SolidityProjectMonikers.SolidityIconImageMoniker.ToProjectSystemType();
}
}
}
}
5 changes: 5 additions & 0 deletions src/Stratis.VS.StratisEVM/Stratis.VS.StratisEVM.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@
</ItemGroup>
<ItemGroup>
<Resource Include="Images\SolidityProjectProjectIcon.png" />
<Resource Include="Images\SoliditySourceFileIcon.png" />
<Content Include="LICENSE.txt">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
<IncludeInVSIX>true</IncludeInVSIX>
Expand Down Expand Up @@ -182,6 +183,10 @@
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Resource>
<Resource Include="Images\SoliditySourceFileIcon.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Resource>
<Page Include="SolidityProjectWizardDialogWindow.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
Expand Down

0 comments on commit 4af1771

Please sign in to comment.