aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Intellisense/PropertyCompletionItem.cs
blob: c301e8ede03458de44bac9b701e530ac6711c6f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Media.Imaging;

namespace Tango.Scripting.Editors.Intellisense
{
    public class PropertyCompletionItem : CompletionItem
    {
        private static BitmapSource image = GetImage("property.png");

        public override string Text => Name;
        public override CompletionItemPopupControl PopupControl => new PropertyCompletionItemPopup();
        public override BitmapSource Image => image;

        public String Name { get; set; }
        public String Class { get; set; }
        public String Type { get; set; }
    }
}
"w"> IsSelected { get { return (bool)GetValue(IsSelectedProperty); } set { SetValue(IsSelectedProperty, value); } } public static readonly DependencyProperty IsSelectedProperty = DependencyProperty.Register("IsSelected", typeof(bool), typeof(CompletionItem), new PropertyMetadata(false)); public virtual void Complete(ScriptEditor editor) { var word = editor.GetCurrentWord(); int index = editor.GetCurrentWordStartIndex(); int max = editor.GetCurrentLine().EndOffset; editor.Document.Replace(index, word.Length, GetCode()); } public abstract BitmapSource Image { get; } protected static BitmapSource GetImage(String name) { return new BitmapImage(new Uri($"pack://application:,,,/Tango.Scripting.Editors;component/Images/{name}", UriKind.Absolute)); } protected virtual String GetCode() { return Text; } public override string ToString() { return Text; } } }