public async Task CalculatePrimeNumberAsync(int maxPrimeNumber)
        {
            LogInfo           = new QlogInfo();
            LogInfo.startTime = DateTime.Now;

            await Task.Run(() =>
            {
                Calc1(maxPrimeNumber);
            });
        }
 public void LogData(QlogInfo info)
 {
     //Log main data
     using (StreamWriter sw = File.AppendText(path))
     {
         sw.WriteLine("Logging was activated at {0}, there were calculated {1} prime numbers at {2}. Calculated number is {3}",
                      info.startTime.ToString(),
                      info.claculateAmountOfPrimeNumbers.ToString(),
                      info.calculatedPrimeNumberTime.ToString(),
                      info.PrimeNumber.ToString()
                      );
     }
 }
        private void QMyButton_Click(object sender, RibbonControlEventArgs e)
        {
            logInfo = calculate.LogInfo;

            var item     = e.Control.Context as Inspector;
            var mailItem = item.CurrentItem as MailItem;

            if (mailItem != null)
            {
                if (mailItem.EntryID == null)
                {
                    string CurrentMail = mailItem.Body.ToString();
                    Globals.ThisAddIn.Logger.LogData(logInfo);
                    mailItem.Body = "Prime Number = " + logInfo.PrimeNumber.ToString() + " " + CurrentMail;
                }
            }
        }