Ejemplo n.º 1
0
 public void SetReplacement(ITextReplacement r)
 {
     replacement = r;
     foreach (var source in sources)
     {
         source.TrySetCanceled();
     }
     sources.Clear();
     invaliated.Raise(this, EventArgs.Empty);
 }
Ejemplo n.º 2
0
        private static void Execute(Regex regex, ITextReplacement replacement, string value, TaskCompletionSource <string> tcs, bool matchExtension)
        {
            try
            {
                if (matchExtension)
                {
                    value = replacement.Apply(value, regex);
                }
                else
                {
                    var ext = Path.GetExtension(value);
                    value  = replacement.Apply(Path.ChangeExtension(value, null), regex);
                    value += ext;
                }

                tcs.TrySetResult(value);
            }
            catch (Exception)
            {
                tcs.TrySetResult(null);
            }
        }
Ejemplo n.º 3
0
        private static void Execute(Regex regex, ITextReplacement replacement, string value, TaskCompletionSource <string> tcs, bool matchExtension)
        {
            try
            {
                if (matchExtension)
                {
                    value = replacement.Apply(value, regex);
                }
                else
                {
                    //remove extension, run, re-add extension
                    var ext = Path.GetExtension(value);
                    value  = replacement.Apply(Path.ChangeExtension(value, null), regex);
                    value += ext; //manually append to not mess up file names container dots
                }

                tcs.TrySetResult(value);
            }
            catch (Exception)
            {
                tcs.TrySetResult(null);
            }
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ReplaceText"/> class.
 /// </summary>
 /// <param name="replacementObject">A object implementation of <see cref="ITextReplacement"/>.</param>
 public ReplaceText(ITextReplacement replacementObject)
 {
     ReplacementObject = replacementObject;
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Sets the new replacement and invalidates results
 /// </summary>
 public void SetReplacement(ITextReplacement r)
 {
     replacement = r;
     Invalidate();
 }