The ribbon button only opened SettingsForm while the archive folder was unconfigured - once saved once, there was no way back into settings (domain, templates, sender account, signature path) short of breaking the saved folder path. Added a "Настройки..." button to PreviewForm that reopens SettingsForm and rescans with the reloaded settings afterward. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
297 lines
16 KiB
C#
297 lines
16 KiB
C#
namespace BulkArchiveMailer.AddIn.UI
|
|
{
|
|
partial class PreviewForm
|
|
{
|
|
private System.ComponentModel.IContainer components = null;
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
if (disposing && components != null)
|
|
{
|
|
components.Dispose();
|
|
}
|
|
|
|
base.Dispose(disposing);
|
|
}
|
|
|
|
private System.Windows.Forms.Label lblPasswordReminder;
|
|
private System.Windows.Forms.Label lblSignatureWarning;
|
|
private System.Windows.Forms.DataGridView grid;
|
|
private System.Windows.Forms.DataGridViewCheckBoxColumn colSelect;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colLogin;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colEmail;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colKind;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colFile;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colStatus;
|
|
private System.Windows.Forms.DataGridViewTextBoxColumn colComment;
|
|
|
|
private System.Windows.Forms.Label lblSummary;
|
|
private System.Windows.Forms.CheckBox chkTestMode;
|
|
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;
|
|
|
|
private System.Windows.Forms.Button btnSend;
|
|
private System.Windows.Forms.Button btnClose;
|
|
|
|
private void InitializeComponent()
|
|
{
|
|
this.lblPasswordReminder = new System.Windows.Forms.Label();
|
|
this.lblSignatureWarning = new System.Windows.Forms.Label();
|
|
|
|
this.grid = new System.Windows.Forms.DataGridView();
|
|
this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn();
|
|
this.colLogin = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colEmail = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colKind = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colFile = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colStatus = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
this.colComment = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
|
|
|
this.lblSummary = new System.Windows.Forms.Label();
|
|
this.chkTestMode = new System.Windows.Forms.CheckBox();
|
|
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();
|
|
|
|
this.btnSend = new System.Windows.Forms.Button();
|
|
this.btnClose = new System.Windows.Forms.Button();
|
|
|
|
((System.ComponentModel.ISupportInitialize)(this.grid)).BeginInit();
|
|
this.SuspendLayout();
|
|
|
|
//
|
|
// lblPasswordReminder
|
|
//
|
|
this.lblPasswordReminder.Location = new System.Drawing.Point(12, 10);
|
|
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);
|
|
this.lblPasswordReminder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)));
|
|
|
|
//
|
|
// lblSignatureWarning
|
|
//
|
|
this.lblSignatureWarning.Location = new System.Drawing.Point(12, 32);
|
|
this.lblSignatureWarning.Size = new System.Drawing.Size(1018, 20);
|
|
this.lblSignatureWarning.Text = "Подпись не найдена — письма будут отправлены без подписи. Настройте .htm-файл вручную в Настройках.";
|
|
this.lblSignatureWarning.ForeColor = System.Drawing.Color.DarkOrange;
|
|
this.lblSignatureWarning.Visible = false;
|
|
this.lblSignatureWarning.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)));
|
|
|
|
//
|
|
// grid
|
|
//
|
|
this.grid.Location = new System.Drawing.Point(12, 58);
|
|
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)));
|
|
this.grid.AllowUserToAddRows = false;
|
|
this.grid.AllowUserToDeleteRows = false;
|
|
this.grid.AllowUserToResizeRows = false;
|
|
this.grid.RowHeadersVisible = false;
|
|
this.grid.AutoGenerateColumns = false;
|
|
this.grid.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
|
this.grid.MultiSelect = false;
|
|
this.grid.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
|
|
this.grid.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
|
this.colSelect,
|
|
this.colLogin,
|
|
this.colEmail,
|
|
this.colKind,
|
|
this.colFile,
|
|
this.colStatus,
|
|
this.colComment});
|
|
this.grid.CurrentCellDirtyStateChanged += new System.EventHandler(this.grid_CurrentCellDirtyStateChanged);
|
|
this.grid.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.grid_CellValueChanged);
|
|
this.grid.DataBindingComplete += new System.Windows.Forms.DataGridViewBindingCompleteEventHandler(this.grid_DataBindingComplete);
|
|
|
|
// colSelect
|
|
this.colSelect.Name = "colSelect";
|
|
this.colSelect.HeaderText = "Отправить";
|
|
this.colSelect.DataPropertyName = "IsChecked";
|
|
this.colSelect.Width = 70;
|
|
this.colSelect.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
|
|
|
// colLogin
|
|
this.colLogin.Name = "colLogin";
|
|
this.colLogin.HeaderText = "Логин";
|
|
this.colLogin.DataPropertyName = "Login";
|
|
this.colLogin.ReadOnly = true;
|
|
this.colLogin.Width = 100;
|
|
this.colLogin.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
|
|
|
// colEmail
|
|
this.colEmail.Name = "colEmail";
|
|
this.colEmail.HeaderText = "Получатель";
|
|
this.colEmail.DataPropertyName = "Email";
|
|
this.colEmail.ReadOnly = true;
|
|
this.colEmail.Width = 190;
|
|
this.colEmail.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
|
|
|
// colKind
|
|
this.colKind.Name = "colKind";
|
|
this.colKind.HeaderText = "Вид архива";
|
|
this.colKind.DataPropertyName = "KindDisplay";
|
|
this.colKind.ReadOnly = true;
|
|
this.colKind.Width = 170;
|
|
this.colKind.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
|
|
|
// colFile
|
|
this.colFile.Name = "colFile";
|
|
this.colFile.HeaderText = "Файл";
|
|
this.colFile.DataPropertyName = "FileName";
|
|
this.colFile.ReadOnly = true;
|
|
this.colFile.Width = 190;
|
|
this.colFile.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
|
|
|
// colStatus
|
|
this.colStatus.Name = "colStatus";
|
|
this.colStatus.HeaderText = "Статус";
|
|
this.colStatus.DataPropertyName = "StatusDisplay";
|
|
this.colStatus.ReadOnly = true;
|
|
this.colStatus.Width = 120;
|
|
this.colStatus.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
|
|
|
// colComment
|
|
this.colComment.Name = "colComment";
|
|
this.colComment.HeaderText = "Комментарий";
|
|
this.colComment.DataPropertyName = "Comment";
|
|
this.colComment.ReadOnly = true;
|
|
this.colComment.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
|
|
this.colComment.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
|
|
|
//
|
|
// lblSummary
|
|
//
|
|
this.lblSummary.Location = new System.Drawing.Point(12, 486);
|
|
this.lblSummary.Size = new System.Drawing.Size(500, 20);
|
|
this.lblSummary.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
|
|
|
//
|
|
// chkTestMode
|
|
//
|
|
this.chkTestMode.Location = new System.Drawing.Point(12, 510);
|
|
this.chkTestMode.Size = new System.Drawing.Size(360, 24);
|
|
this.chkTestMode.Text = "Тестовый режим (сохранять в Черновики, не отправлять)";
|
|
this.chkTestMode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
|
this.chkTestMode.UseVisualStyleBackColor = true;
|
|
|
|
//
|
|
// btnRescan
|
|
//
|
|
this.btnRescan.Location = new System.Drawing.Point(12, 540);
|
|
this.btnRescan.Size = new System.Drawing.Size(110, 27);
|
|
this.btnRescan.Text = "Пересканировать";
|
|
this.btnRescan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
|
this.btnRescan.UseVisualStyleBackColor = true;
|
|
this.btnRescan.Click += new System.EventHandler(this.btnRescan_Click);
|
|
|
|
//
|
|
// btnCheckAllReady
|
|
//
|
|
this.btnCheckAllReady.Location = new System.Drawing.Point(130, 540);
|
|
this.btnCheckAllReady.Size = new System.Drawing.Size(150, 27);
|
|
this.btnCheckAllReady.Text = "Отметить все готовые";
|
|
this.btnCheckAllReady.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
|
this.btnCheckAllReady.UseVisualStyleBackColor = true;
|
|
this.btnCheckAllReady.Click += new System.EventHandler(this.btnCheckAllReady_Click);
|
|
|
|
//
|
|
// btnUncheckAll
|
|
//
|
|
this.btnUncheckAll.Location = new System.Drawing.Point(288, 540);
|
|
this.btnUncheckAll.Size = new System.Drawing.Size(120, 27);
|
|
this.btnUncheckAll.Text = "Снять все отметки";
|
|
this.btnUncheckAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
|
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(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(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(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)));
|
|
this.btnClose.UseVisualStyleBackColor = true;
|
|
this.btnClose.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
|
this.btnClose.Click += new System.EventHandler(this.btnClose_Click);
|
|
|
|
//
|
|
// btnSend
|
|
//
|
|
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)));
|
|
this.btnSend.Font = new System.Drawing.Font(this.btnSend.Font, System.Drawing.FontStyle.Bold);
|
|
this.btnSend.UseVisualStyleBackColor = true;
|
|
this.btnSend.Click += new System.EventHandler(this.btnSend_Click);
|
|
|
|
//
|
|
// PreviewForm
|
|
//
|
|
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
|
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
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);
|
|
this.Controls.Add(this.lblSummary);
|
|
this.Controls.Add(this.chkTestMode);
|
|
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);
|
|
this.Controls.Add(this.btnSend);
|
|
this.Text = "BulkArchiveMailer — предпросмотр и рассылка";
|
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Sizable;
|
|
this.MaximizeBox = true;
|
|
this.CancelButton = this.btnClose;
|
|
|
|
((System.ComponentModel.ISupportInitialize)(this.grid)).EndInit();
|
|
this.ResumeLayout(false);
|
|
}
|
|
}
|
|
}
|