From b41347f1528e5e34d8c8c8ef2c5b6b63876098f1 Mon Sep 17 00:00:00 2001 From: Victoria Plitt Date: Thu, 11 Apr 2019 16:07:21 +0300 Subject: added icons to menu, solution for setting icons dynamically to context menu --- .../Scripting/Tango.Scripting.IDE.UI/App.config | 44 --------------------- .../Tango.Scripting.IDE.UI.csproj | 2 +- .../Converters/BitmapSourceToImageConverter.cs | 31 +++++++++++++++ .../Tango.Scripting.IDE/Images/Open_16x.png | Bin 0 -> 452 bytes .../Tango.Scripting.IDE/Images/Rename_16x.png | Bin 0 -> 210 bytes .../Images/Settings_Inverse_16x.png | Bin 0 -> 405 bytes .../Tango.Scripting.IDE/Images/copy_16x.png | Bin 0 -> 245 bytes .../Tango.Scripting.IDE/Images/deletered_16.png | Bin 0 -> 621 bytes .../Tango.Scripting.IDE/Images/hashtag.png | Bin 0 -> 386 bytes .../Scripting/Tango.Scripting.IDE/Project.cs | 8 ++-- .../ProjectItems/CSharpScriptItem.cs | 10 ++--- .../Tango.Scripting.IDE/ScriptIDEView2.xaml | 9 ++--- .../Tango.Scripting.IDE/SolutionItemCommand.cs | 12 +++++- .../Tango.Scripting.IDE/Tango.Scripting.IDE.csproj | 19 +++++++++ 14 files changed, 75 insertions(+), 60 deletions(-) create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Converters/BitmapSourceToImageConverter.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Open_16x.png create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Rename_16x.png create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Settings_Inverse_16x.png create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/copy_16x.png create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/deletered_16.png create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/hashtag.png (limited to 'Software/Visual_Studio/Scripting') diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE.UI/App.config b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE.UI/App.config index de2319b52..aa58e3cac 100644 --- a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE.UI/App.config +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE.UI/App.config @@ -6,50 +6,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE.UI/Tango.Scripting.IDE.UI.csproj b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE.UI/Tango.Scripting.IDE.UI.csproj index e4702273a..deda62b7c 100644 --- a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE.UI/Tango.Scripting.IDE.UI.csproj +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE.UI/Tango.Scripting.IDE.UI.csproj @@ -12,7 +12,7 @@ 512 {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 4 - true + false AnyCPU diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Converters/BitmapSourceToImageConverter.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Converters/BitmapSourceToImageConverter.cs new file mode 100644 index 000000000..c7cd1e573 --- /dev/null +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Converters/BitmapSourceToImageConverter.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Media; +using System.Windows.Media.Imaging; + +namespace Tango.Scripting.IDE.Converters +{ + public class BitmapSourceToImageConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + return new Image() + { + Source = value as BitmapSource, + Width = 16, + Height = 16, + }; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } +} diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Open_16x.png b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Open_16x.png new file mode 100644 index 000000000..88cfc578a Binary files /dev/null and b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Open_16x.png differ diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Rename_16x.png b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Rename_16x.png new file mode 100644 index 000000000..eb85c52a8 Binary files /dev/null and b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Rename_16x.png differ diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Settings_Inverse_16x.png b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Settings_Inverse_16x.png new file mode 100644 index 000000000..464a9f751 Binary files /dev/null and b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/Settings_Inverse_16x.png differ diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/copy_16x.png b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/copy_16x.png new file mode 100644 index 000000000..7f3de9d64 Binary files /dev/null and b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/copy_16x.png differ diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/deletered_16.png b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/deletered_16.png new file mode 100644 index 000000000..35b767569 Binary files /dev/null and b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/deletered_16.png differ diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/hashtag.png b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/hashtag.png new file mode 100644 index 000000000..74c6d1801 Binary files /dev/null and b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Images/hashtag.png differ diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Project.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Project.cs index 9ba1ed902..6392ddcb7 100644 --- a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Project.cs +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Project.cs @@ -38,10 +38,10 @@ namespace Tango.Scripting.IDE Commands = new ObservableCollection { new SolutionItemCommand(BuildProject) { Name = "Build", Image= GetImage(@"Images/BuildSolution_16x.png") }, - new SolutionItemCommand(SetStartUpProject) { Name = "Set as StartUp Project" }, - new SolutionItemCommand(Remove) { Name = "Remove" }, - new SolutionItemCommand(Rename) { Name = "Rename" }, - new SolutionItemCommand(OpenFolderInFileExplorer) { Name = "Open Folder In File Explorer" }, + new SolutionItemCommand(SetStartUpProject) { Name = "Set as StartUp Project" , Image= GetImage(@"Images/Settings_Inverse_16x.png")}, + new SolutionItemCommand(Remove) { Name = "Remove" , Image= GetImage(@"Images/deletered_16.png")}, + new SolutionItemCommand(Rename) { Name = "Rename", Image= GetImage(@"Images/Rename_16x.png") }, + new SolutionItemCommand(OpenFolderInFileExplorer) { Name = "Open Folder In File Explorer", Image= GetImage(@"Images/Open_16x.png") }, new SolutionItemCommand() { Name = "Add...", diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/ProjectItems/CSharpScriptItem.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/ProjectItems/CSharpScriptItem.cs index e53f90ef3..0fe375a1f 100644 --- a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/ProjectItems/CSharpScriptItem.cs +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/ProjectItems/CSharpScriptItem.cs @@ -11,7 +11,7 @@ namespace Tango.Scripting.IDE.ProjectItems { public class CSharpScriptItem : ProjectItem { - public override BitmapSource Image => GetImage("Images/CSharpScriptItem.png"); + public override BitmapSource Image => GetImage("Images/hashtag.png"); private String _code; public String Code @@ -31,11 +31,11 @@ namespace Tango.Scripting.IDE.ProjectItems { Commands = new System.Collections.ObjectModel.ObservableCollection() { - new SolutionItemCommand(Open) { Name = "Open" }, + new SolutionItemCommand(Open) { Name = "Open" , Image = GetImage(@"Images/Open_16x.png")}, new SolutionItemCommand(CutItem) { Name = "Cut" , Image = GetImage(@"Images/Cut_16xSM.png")}, - new SolutionItemCommand(CopyItem) { Name = "Copy" }, - new SolutionItemCommand(CopyItem) { Name = "Delete" }, - new SolutionItemCommand(RenameItem) { Name = "Rename" } + new SolutionItemCommand(CopyItem) { Name = "Copy" , Image = GetImage(@"Images/copy_16x.png")}, + new SolutionItemCommand(CopyItem) { Name = "Delete" , Image = GetImage(@"Images/deletered_16.png")}, + new SolutionItemCommand(RenameItem) { Name = "Rename", Image = GetImage(@"Images/Rename_16x.png") } }; } diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/ScriptIDEView2.xaml b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/ScriptIDEView2.xaml index 6f3914ec8..e79734b3a 100644 --- a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/ScriptIDEView2.xaml +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/ScriptIDEView2.xaml @@ -6,6 +6,7 @@ xmlns:local="clr-namespace:Tango.Scripting.IDE" xmlns:fa="http://schemas.fontawesome.io/icons/" xmlns:controls="clr-namespace:Tango.Scripting.IDE.Controls" + xmlns:converters="clr-namespace:Tango.Scripting.IDE.Converters" mc:Ignorable="d" d:DesignHeight="450" d:DesignWidth="800" d:DataContext="{d:DesignInstance Type=local:ScriptIDEViewVM, IsDesignTimeCreatable=False}" x:Name="control"> @@ -15,15 +16,13 @@ + + diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/SolutionItemCommand.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/SolutionItemCommand.cs index c6627d354..9fbac01c2 100644 --- a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/SolutionItemCommand.cs +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/SolutionItemCommand.cs @@ -1,6 +1,8 @@ using System; using System.Collections.Generic; using System.Collections.ObjectModel; +using System.ComponentModel; +using System.IO; using System.Linq; using System.Text; @@ -10,7 +12,7 @@ using Tango.Core.Commands; namespace Tango.Scripting.IDE { - public class SolutionItemCommand : RelayCommand, ISolutionItemCommand + public class SolutionItemCommand : RelayCommand, ISolutionItemCommand, INotifyPropertyChanged { public SolutionItemCommand() : base(()=> { }) { @@ -53,6 +55,9 @@ namespace Tango.Scripting.IDE public String Name { get; set; } BitmapSource _bImage; + + public event PropertyChangedEventHandler PropertyChanged; + public BitmapSource Image { get { @@ -61,9 +66,14 @@ namespace Tango.Scripting.IDE set { _bImage = value; + RaisePropertyChanged(nameof(Image)); } } public ObservableCollection Commands { get; set; } + protected virtual void RaisePropertyChanged(String propName) + { + PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propName)); + } } } diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Tango.Scripting.IDE.csproj b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Tango.Scripting.IDE.csproj index 194f49ea8..4f47db2bc 100644 --- a/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Tango.Scripting.IDE.csproj +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.IDE/Tango.Scripting.IDE.csproj @@ -75,6 +75,7 @@ + NewProjectView.xaml @@ -315,5 +316,23 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file -- cgit v1.3.1