예제 #1
0
        public void Execute(string keyword, string param, ILogExpertCallback callback, ILogLineColumnizer columnizer)
        {
            int start = 0;
            int end   = 0;

            if (param.StartsWith("\""))
            {
                start = 1;
                end   = param.IndexOf("\"", start);
            }
            else
            {
                end = param.IndexOf(" ");
            }
            if (end == -1)
            {
                end = param.Length;
            }
            string procName   = param.Substring(start, end - start);
            string parameters = param.Substring(end).Trim();

            parameters = parameters.Replace("%F", callback.GetFileName());
            parameters = parameters.Replace("%K", keyword);
            parameters = parameters.Replace("%L", "" + callback.GetLineNum());
            parameters = parameters.Replace("%T", callback.GetTabTitle());
            parameters = parameters.Replace("%C", callback.GetLogLine(callback.GetLineNum()).FullLine);
            Process explorer = new Process();

            explorer.StartInfo.FileName        = procName;
            explorer.StartInfo.Arguments       = parameters;
            explorer.StartInfo.UseShellExecute = false;
            explorer.Start();
        }
예제 #2
0
    public void Execute(string keyword, string param, ILogExpertCallback callback, ILogLineColumnizer columnizer)
    {
      int start = 0;
      int end = 0;
      if (param.StartsWith("\""))
      {
        start = 1;
        end = param.IndexOf("\"", start);
      }
      else
      {
        end = param.IndexOf(" ");

      }
      if (end == -1)
        end = param.Length;
      string procName = param.Substring(start, end - start);
      string parameters = param.Substring(end).Trim();
      parameters = parameters.Replace("%F", callback.GetFileName());
      parameters = parameters.Replace("%K", keyword);
      parameters = parameters.Replace("%L", "" + callback.GetLineNum());
      parameters = parameters.Replace("%T", callback.GetTabTitle());
      parameters = parameters.Replace("%C", callback.GetLogLine(callback.GetLineNum()));
      Process explorer = new Process();
      explorer.StartInfo.FileName = procName;
      explorer.StartInfo.Arguments = parameters;
      explorer.StartInfo.UseShellExecute = false;
      explorer.Start();
    }
예제 #3
0
 /// <summary>
 /// The worker function which is called when the entry is choosen by the user.
 /// What we do here: Take all lines, uppercase the content, keep track of original line numbers, 
 /// write it to a new tab.
 /// </summary>
 public void MenuSelected(IList<int> logLines, ILogLineColumnizer columnizer, ILogExpertCallback callback)
 {
   List<LineEntry> lineEntryList = new List<LineEntry>();
   foreach(int lineNum in logLines)
   {
     LineEntry newEntry = new LineEntry();
     newEntry.logLine = callback.GetLogLine(lineNum).ToUpper();
     newEntry.lineNum = lineNum;
     lineEntryList.Add(newEntry);
   }
   callback.AddPipedTab(lineEntryList, callback.GetTabTitle() + " (uppercased)");
 }
예제 #4
0
        /// <summary>
        /// The worker function which is called when the entry is choosen by the user.
        /// What we do here: Take all lines, uppercase the content, keep track of original line numbers,
        /// write it to a new tab.
        /// </summary>
        public void MenuSelected(IList <int> logLines, ILogLineColumnizer columnizer, ILogExpertCallback callback)
        {
            List <LineEntry> lineEntryList = new List <LineEntry>();

            foreach (int lineNum in logLines)
            {
                LineEntry newEntry = new LineEntry();
                newEntry.logLine = callback.GetLogLine(lineNum).ToUpper();
                newEntry.lineNum = lineNum;
                lineEntryList.Add(newEntry);
            }
            callback.AddPipedTab(lineEntryList, callback.GetTabTitle() + " (uppercased)");
        }