Compare commits
3
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f04de700d9 | ||
|
|
e40d971de0 | ||
|
|
f50624023a |
No files matched your search
@@ -60,7 +60,7 @@ namespace BulkArchiveMailer.AddIn
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Не удалось открыть окно массовой рассылки: " + ex.Message,
|
||||
"Не удалось открыть окно массовой рассылки: " + ex.ToString(),
|
||||
"BulkArchiveMailer",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Error);
|
||||
|
||||
@@ -30,6 +30,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
private System.Windows.Forms.Button btnCheckAllReady;
|
||||
private System.Windows.Forms.Button btnUncheckAll;
|
||||
private System.Windows.Forms.Button btnRescan;
|
||||
private System.Windows.Forms.Button btnSettings;
|
||||
|
||||
private System.Windows.Forms.ProgressBar progressSend;
|
||||
private System.Windows.Forms.Label lblProgressStatus;
|
||||
@@ -56,6 +57,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
this.btnCheckAllReady = new System.Windows.Forms.Button();
|
||||
this.btnUncheckAll = new System.Windows.Forms.Button();
|
||||
this.btnRescan = new System.Windows.Forms.Button();
|
||||
this.btnSettings = new System.Windows.Forms.Button();
|
||||
|
||||
this.progressSend = new System.Windows.Forms.ProgressBar();
|
||||
this.lblProgressStatus = new System.Windows.Forms.Label();
|
||||
@@ -70,7 +72,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
// lblPasswordReminder
|
||||
//
|
||||
this.lblPasswordReminder.Location = new System.Drawing.Point(12, 10);
|
||||
this.lblPasswordReminder.Size = new System.Drawing.Size(900, 20);
|
||||
this.lblPasswordReminder.Size = new System.Drawing.Size(1018, 20);
|
||||
this.lblPasswordReminder.Text = "Напоминание: пароль от архивов сообщается получателям отдельно (вручную, не через это письмо и не через этот инструмент).";
|
||||
this.lblPasswordReminder.ForeColor = System.Drawing.Color.DarkRed;
|
||||
this.lblPasswordReminder.Font = new System.Drawing.Font(this.lblPasswordReminder.Font, System.Drawing.FontStyle.Bold);
|
||||
@@ -80,7 +82,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
// lblSignatureWarning
|
||||
//
|
||||
this.lblSignatureWarning.Location = new System.Drawing.Point(12, 32);
|
||||
this.lblSignatureWarning.Size = new System.Drawing.Size(900, 20);
|
||||
this.lblSignatureWarning.Size = new System.Drawing.Size(1018, 20);
|
||||
this.lblSignatureWarning.Text = "Подпись не найдена — письма будут отправлены без подписи. Настройте .htm-файл вручную в Настройках.";
|
||||
this.lblSignatureWarning.ForeColor = System.Drawing.Color.DarkOrange;
|
||||
this.lblSignatureWarning.Visible = false;
|
||||
@@ -90,7 +92,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
// grid
|
||||
//
|
||||
this.grid.Location = new System.Drawing.Point(12, 58);
|
||||
this.grid.Size = new System.Drawing.Size(900, 420);
|
||||
this.grid.Size = new System.Drawing.Size(1018, 420);
|
||||
this.grid.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
@@ -215,24 +217,34 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
this.btnUncheckAll.UseVisualStyleBackColor = true;
|
||||
this.btnUncheckAll.Click += new System.EventHandler(this.btnUncheckAll_Click);
|
||||
|
||||
//
|
||||
// btnSettings
|
||||
//
|
||||
this.btnSettings.Location = new System.Drawing.Point(416, 540);
|
||||
this.btnSettings.Size = new System.Drawing.Size(110, 27);
|
||||
this.btnSettings.Text = "Настройки...";
|
||||
this.btnSettings.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.btnSettings.UseVisualStyleBackColor = true;
|
||||
this.btnSettings.Click += new System.EventHandler(this.btnSettings_Click);
|
||||
|
||||
//
|
||||
// progressSend
|
||||
//
|
||||
this.progressSend.Location = new System.Drawing.Point(430, 543);
|
||||
this.progressSend.Location = new System.Drawing.Point(548, 543);
|
||||
this.progressSend.Size = new System.Drawing.Size(300, 20);
|
||||
this.progressSend.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
|
||||
//
|
||||
// lblProgressStatus
|
||||
//
|
||||
this.lblProgressStatus.Location = new System.Drawing.Point(430, 565);
|
||||
this.lblProgressStatus.Location = new System.Drawing.Point(548, 565);
|
||||
this.lblProgressStatus.Size = new System.Drawing.Size(482, 20);
|
||||
this.lblProgressStatus.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
|
||||
//
|
||||
// btnClose
|
||||
//
|
||||
this.btnClose.Location = new System.Drawing.Point(720, 540);
|
||||
this.btnClose.Location = new System.Drawing.Point(838, 540);
|
||||
this.btnClose.Size = new System.Drawing.Size(90, 30);
|
||||
this.btnClose.Text = "Закрыть";
|
||||
this.btnClose.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
@@ -243,7 +255,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
//
|
||||
// btnSend
|
||||
//
|
||||
this.btnSend.Location = new System.Drawing.Point(816, 540);
|
||||
this.btnSend.Location = new System.Drawing.Point(934, 540);
|
||||
this.btnSend.Size = new System.Drawing.Size(96, 30);
|
||||
this.btnSend.Text = "Отправить";
|
||||
this.btnSend.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
@@ -256,8 +268,8 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(924, 582);
|
||||
this.MinimumSize = new System.Drawing.Size(760, 420);
|
||||
this.ClientSize = new System.Drawing.Size(1042, 582);
|
||||
this.MinimumSize = new System.Drawing.Size(878, 420);
|
||||
this.Controls.Add(this.lblPasswordReminder);
|
||||
this.Controls.Add(this.lblSignatureWarning);
|
||||
this.Controls.Add(this.grid);
|
||||
@@ -266,6 +278,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
this.Controls.Add(this.btnRescan);
|
||||
this.Controls.Add(this.btnCheckAllReady);
|
||||
this.Controls.Add(this.btnUncheckAll);
|
||||
this.Controls.Add(this.btnSettings);
|
||||
this.Controls.Add(this.progressSend);
|
||||
this.Controls.Add(this.lblProgressStatus);
|
||||
this.Controls.Add(this.btnClose);
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(this, "Не удалось прочитать настройки: " + ex.Message, "BulkArchiveMailer", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(this, "Не удалось прочитать настройки: " + ex.ToString(), "BulkArchiveMailer", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
Close();
|
||||
return;
|
||||
}
|
||||
@@ -128,6 +128,17 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
|
||||
private void UpdateSummaryLabel()
|
||||
{
|
||||
if (rows == null)
|
||||
{
|
||||
// Can be invoked before RunScan() ever ran - most notably,
|
||||
// WinForms fires DataGridView.CellValueChanged as a side
|
||||
// effect of DataGridViewColumn.HeaderText assignments in
|
||||
// InitializeComponent(), i.e. before the constructor (and
|
||||
// therefore RunScan()) has had a chance to populate `rows`.
|
||||
// Nothing to summarize yet in that case.
|
||||
return;
|
||||
}
|
||||
|
||||
var ready = rows.Count(r => r.Job.Status == SendStatus.Ready);
|
||||
var already = rows.Count(r => r.Job.Status == SendStatus.AlreadySent);
|
||||
var errors = rows.Count(r => r.Job.Status == SendStatus.Error);
|
||||
@@ -161,6 +172,34 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
RunScan();
|
||||
}
|
||||
|
||||
private void btnSettings_Click(object sender, EventArgs e)
|
||||
{
|
||||
using (var settingsForm = new SettingsForm(outlookApplication))
|
||||
{
|
||||
settingsForm.ShowDialog(this);
|
||||
}
|
||||
|
||||
// Regardless of DialogResult (OK or Cancel), reload settings and
|
||||
// rescan so a changed archive folder, domain, or templates are
|
||||
// reflected immediately without a separate "Пересканировать"
|
||||
// click. A closed-without-saving dialog just reloads the same
|
||||
// settings again, which is harmless.
|
||||
try
|
||||
{
|
||||
settings = AppSettings.Load();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(this, "Не удалось прочитать настройки: " + ex.ToString(), "BulkArchiveMailer", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return;
|
||||
}
|
||||
|
||||
signatureHtml = ResolveSignatureHtml();
|
||||
lblSignatureWarning.Visible = string.IsNullOrEmpty(signatureHtml);
|
||||
|
||||
RunScan();
|
||||
}
|
||||
|
||||
private void btnCheckAllReady_Click(object sender, EventArgs e)
|
||||
{
|
||||
foreach (var row in rows)
|
||||
|
||||
@@ -31,7 +31,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Не удалось прочитать config.json (" + AppSettings.ConfigFilePath + "):\n" + ex.Message +
|
||||
"Не удалось прочитать config.json (" + AppSettings.ConfigFilePath + "):\n" + ex.ToString() +
|
||||
"\n\nБудут показаны пустые настройки — сохранение перезапишет файл заново.",
|
||||
"BulkArchiveMailer",
|
||||
MessageBoxButtons.OK,
|
||||
@@ -231,7 +231,7 @@ namespace BulkArchiveMailer.AddIn.UI
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(this, "Не удалось сохранить настройки: " + ex.Message, "BulkArchiveMailer", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(this, "Не удалось сохранить настройки: " + ex.ToString(), "BulkArchiveMailer", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user