Программа пригодится в работе с kvm и remote console, на инсталляциях серверов - да и вообще везде, где есть хоть какая-то потребность в повторяющихся вводах.

Программа имитирует нажатия на кнопки клавиатуры, переключая раскладку при необходимости, но только в своей операционной системе. Программу можно использовать и как хранилище конфиденциальных данных: введённые данные можно зашифровать в файл.

По нажатию комбинации клавиш, указанной в названии окна программы (можно выбирать разные из меню) - включается симулятор ручного ввода с клавиатуры, который будет вводить содержимое всех активных полей в порядке возрастания их номеров, в конце каждого поля имитируя нажатие клавиши "ввод" или "таб". Активировать или деактивировать поле можно, кликнув на его номер, либо по его горячей клавише.

Текст в полях и настройки привязываются к "профилям", которые можно создавать, переключать, редактировать и удалять - если при редактировании полностью удалить название.

При закрытии окна программы - программа закрывается и все несохраненные данные теряются. Чтобы не потерять их и иметь возможность хранить и загружать на различных устройствах - профили можно сохранять в файл, шифруемый паролем. На длину и простоту этого пароля ограничений нет - можно вообще не шифровать файлы, если оставить поле пароля пустым. Однако, если хочется держать свои секреты в безопасности - рекомендую сверять контрольную сумму скачанной программы с указанной здесь (рядом со ссылкой на скачивание) и шифровать файлы сохранений только надёжными паролями.

Немного о паролях

Надёжным можно считать пароль длиной от 10 символов, содержащий цифры, знаки и буквы верхнего и нижнего регистров, при этом не содержащий в себе общеизвестных слов, имён и названий, а так же какие-либо даты (типа дней рождения родственников).

Либо же, в качестве пароля можно использовать "кодовую фразу" - длинное предложение, состоящее из большого числа слов: при общей длине пароля от 50 символов, его "словарность" перестаёт играть существенную роль. Такую "passphrase" несколько дольше вводить - зато её гораздо проще запомнить. Главное правило - кодовая фраза не должна быть чьей-то известной цитатой или отрывком из популярной литературы.

Советы по использованию:

  • используйте колесо прокрутки мыши, когда курсор над списком профилей или горячих клавиш - для быстрого переключения;

  • комбинация клавиш Ctrl+[1-9] активирует или деактивирует соответствующее поле;

  • делайте резервные копии сохранений на надёжные носители или в облако;

  • режим "поверх всех окон" может пригодиться при работе в remote desktop;

  • медленный режим специально для тормозящих консолей;

  • вывод символов зависит от текущей раскладки клавиатуры - имейте в виду при работе в удалённых консолях.

Исходный код (C#)
Form1.cs
using System.Data;
using System.Runtime.InteropServices;
using System.Text;
using System.Text.RegularExpressions;
using System.Security.Cryptography;

namespace Filler
{
    public partial class infill : Form
    {
        [DllImport("user32.dll")]
        public static extern bool RegisterHotKey(IntPtr hWnd, int id, uint fsModifiers, uint vk);
        [DllImport("user32.dll")]
        public static extern bool UnregisterHotKey(IntPtr hWnd, int id);
        private System.Windows.Forms.Timer checkTimer;
        private System.Windows.Forms.Timer checkTimer2;
        private const uint MOD_CONTROL = 0x0002;
        private const uint MOD_ALT = 0x0001;
        private const int HOTKEY_ID = 1;
        private bool isExecuting = false;
        private bool isComboBoxOpen = false;//фикс списка профилей

        private const uint KLF_SETFORPROCESS = 0x00000100;
        private bool stopExecution = false;
 

        private void SetTabOrder()
        {
            checkBox1.TabIndex = 0;
            textBox1.TabIndex = 1;
            textBox2.TabIndex = 2;
            textBox3.TabIndex = 3;
            textBox4.TabIndex = 4;
            textBox5.TabIndex = 5;
            textBox6.TabIndex = 6;
            textBox7.TabIndex = 7;
            textBox8.TabIndex = 8;
            textBox9.TabIndex = 9;
            checkBox3.TabIndex = 10;
            checkBox4.TabIndex = 11;
            checkBox5.TabIndex = 12;
            checkBox8.TabIndex = 13;
            checkBox7.TabIndex = 14;
            checkBox6.TabIndex = 15;
            checkBox11.TabIndex = 16;
            checkBox10.TabIndex = 17;
            checkBox9.TabIndex = 18;
            checkBox12.TabIndex = 19;
            checkBox14.TabIndex = 20;
            checkBox15.TabIndex = 21;
            checkBox16.TabIndex = 22;
            checkBox17.TabIndex = 23;
            checkBox18.TabIndex = 24;
            checkBox19.TabIndex = 25;
            checkBox20.TabIndex = 26;
            checkBox21.TabIndex = 27;
            checkBox13.TabIndex = 28;
            checkBox22.TabIndex = 29;
            checkBox23.TabIndex = 30;
            checkBox24.TabIndex = 31;
            checkBox25.TabIndex = 32;
            checkBox26.TabIndex = 33;
            checkBox27.TabIndex = 34;
            checkBox28.TabIndex = 35;
            checkBox29.TabIndex = 36;
            checkBox2.TabIndex = 37;
        }



//модуль шифрации
        public static class CryptoHelper
        {
            public static string Encrypt(string plainText, string password)
            {
                using (Aes aes = Aes.Create())
                {
                    var key = new Rfc2898DeriveBytes(password, new byte[16], 10000);
                    aes.Key = key.GetBytes(32);
                    aes.IV = key.GetBytes(16);

                    using (var encryptor = aes.CreateEncryptor(aes.Key, aes.IV))
                    using (var ms = new MemoryStream())
                    {
                        using (var cs = new CryptoStream(ms, encryptor, CryptoStreamMode.Write))
                        using (var sw = new StreamWriter(cs))
                        {
                            sw.Write(plainText);
                        }
                        return Convert.ToBase64String(ms.ToArray());
                    }
                }
            }
            public static string Decrypt(string cipherText, string password)
            {
                using (Aes aes = Aes.Create())
                {
                    var key = new Rfc2898DeriveBytes(password, new byte[16], 10000);
                    aes.Key = key.GetBytes(32);
                    aes.IV = key.GetBytes(16);

                    using (var decryptor = aes.CreateDecryptor(aes.Key, aes.IV))
                    using (var ms = new MemoryStream(Convert.FromBase64String(cipherText)))
                    using (var cs = new CryptoStream(ms, decryptor, CryptoStreamMode.Read))
                    using (var sr = new StreamReader(cs))
                    {
                        return sr.ReadToEnd();
                    }
                }
            }
        }


//таймеры
        private void InitializeTimer()
        {
            checkTimer = new System.Windows.Forms.Timer();
            checkTimer.Interval = 100; //ms 
            checkTimer.Tick += new EventHandler(CheckTimer_Tick);
            checkTimer.Start();
        }
        private void InitializeTimer2()
        {
            checkTimer2 = new System.Windows.Forms.Timer();
            checkTimer2.Interval = 100; //ms
            checkTimer2.Tick += new EventHandler(CheckTimer2_Tick);
            checkTimer2.Start();
        }
        private void CheckTimer_Tick(object sender, EventArgs e)//проверка отпускания кнопки
        {
            SendKeys.SendWait("");
            UpdateModifierKeysLabel();
            if (label1.Text.Contains("None"))
            {
                checkTimer.Stop();
                ExecuteTypewriter();
            }
        }
        private void CheckTimer2_Tick(object sender, EventArgs e)//автосейв
        {
            if (!isComboBoxOpen)
            {
                string currentProfileName = Profiles.SelectedItem?.ToString();
                if (string.IsNullOrEmpty(currentProfileName)) return;
                else
                    SaveCurrentProfileData(currentProfileName);
            }
        }


//словарь профилей
        private Dictionary<string, string> profileDataDict = new Dictionary<string, string>();
        public infill()
        {
            InitializeComponent();
            InitializeTimer2();
            SetTabOrder();
            RegisterHotKey(this.Handle, HOTKEY_ID, MOD_CONTROL | MOD_ALT, GetKeyFromComboBox());
            button1.Visible = false;
            button2.Visible = false;
            textBox2.Multiline = false;
            textBox2.UseSystemPasswordChar = true;

//модуль горячих клавиш
            for (int i = 0; i < 9; i++)
            {
                RegisterHotKey(this.Handle, HOTKEY_ID + i + 1, MOD_CONTROL, (uint)Keys.D1 + (uint)i);
            }
        }

        private void Profiles_DropDown(object sender, EventArgs e)
        {
            isComboBoxOpen = true;
        }

        private void Profiles_DropDownClosed(object sender, EventArgs e)
        {
            isComboBoxOpen = false;
        }

        private uint GetKeyFromComboBox()
        {
            var selectedKeyString = Hotkeys.SelectedItem?.ToString();
            return !string.IsNullOrEmpty(selectedKeyString) ? (uint)selectedKeyString.Last() : (uint)Keys.V;
        }

        private void Hotkeys_SelectedIndexChanged(object sender, EventArgs e)
        {
            UnregisterHotKey(this.Handle, HOTKEY_ID);
            RegisterHotKey(this.Handle, HOTKEY_ID, MOD_CONTROL | MOD_ALT, GetKeyFromComboBox());
            this.Text = $"заполнитель | Ctrl+Alt+{Hotkeys.SelectedItem?.ToString().Last()}";
        }

        protected override void OnFormClosing(FormClosingEventArgs e)
        {
            if (isExecuting) stopExecution = true;
            base.OnFormClosing(e);
            UnregisterHotKey(this.Handle, HOTKEY_ID);
        }

        protected override void WndProc(ref Message m)
        {
            if (m.Msg == 0x0312)
            {
                int hotkeyId = m.WParam.ToInt32();
                if (hotkeyId >= HOTKEY_ID + 1 && hotkeyId <= HOTKEY_ID + 9)
                {
                    int checkBoxIndex = hotkeyId - HOTKEY_ID - 1;
                    var checkBoxes = new[] { checkBox3, checkBox4, checkBox5, checkBox8, checkBox7, checkBox6, checkBox11, checkBox10, checkBox9 };
                    checkBoxes[checkBoxIndex].Checked = !checkBoxes[checkBoxIndex].Checked;
                }
                else if (hotkeyId == HOTKEY_ID)
                {
                    if (isExecuting)
                    {
                        stopExecution = true;
                    }
                    else
                    {
                        isExecuting = true;
                        InitializeTimer();
                    }
                }
            }
            base.WndProc(ref m);
        }



//главный модуль
        private async void ExecuteTypewriter()
        {
            try
            {
                var tasks = new[]
                {
            ProcessFieldAsync(checkBox3, textBox1, checkBox13, checkBox13.Checked ? "{Tab}" : "{Enter}"),
            ProcessFieldAsync(checkBox4, textBox2, checkBox22, checkBox22.Checked ? "{Tab}" : "{Enter}"),
            ProcessFieldAsync(checkBox5, textBox3, checkBox23, checkBox23.Checked ? "{Tab}" : "{Enter}"),
            ProcessFieldAsync(checkBox8, textBox4, checkBox24, checkBox24.Checked ? "{Tab}" : "{Enter}"),
            ProcessFieldAsync(checkBox7, textBox5, checkBox25, checkBox25.Checked ? "{Tab}" : "{Enter}"),
            ProcessFieldAsync(checkBox6, textBox6, checkBox26, checkBox26.Checked ? "{Tab}" : "{Enter}"),
            ProcessFieldAsync(checkBox11, textBox7, checkBox27, checkBox27.Checked ? "{Tab}" : "{Enter}"),
            ProcessFieldAsync(checkBox10, textBox8, checkBox28, checkBox28.Checked ? "{Tab}" : "{Enter}"),
            ProcessFieldAsync(checkBox9, textBox9, checkBox29, checkBox29.Checked ? "{Tab}" : "{Enter}")
        };

                foreach (var task in tasks)
                {
                    if (stopExecution) break;
                    await task;
                }
            }
            finally
            {
                button1.Visible = false;
                isExecuting = false;
                stopExecution = false;
            }
        }



//симулятор ручного ввода
        private async Task ProcessFieldAsync(CheckBox checkBox, TextBox textBox, CheckBox radioButton, string keyToSend)
        {
            if (!stopExecution)//проверка стоп-кнопки
            {
                if (checkBox.Checked)
                {
                    button1.Visible = true;

                    if (!stopExecution)//проверка стоп-кнопки
                    {
                        isExecuting = true;
                        foreach (char c in textBox.Text.Where(c => c != '\n'))
                        {
                            if (!stopExecution)//проверка стоп-кнопки
                            {

                                SendKeys.SendWait(Regex.Replace(c.ToString(), "[+^%~(){}]", "{$0}"));
                                if (checkBox1.Checked) Thread.Sleep(100);//медленный режим
                            }
                            else
                            {
                                button1.Visible = false;
                            }
                        }
                        if (!stopExecution) { SendKeys.SendWait(keyToSend); }//таб или ввод

                    }
                    else
                    {
                        isExecuting = false;
                        button1.Visible = false;
                    }
                }
            }
            else
            {
                isExecuting = false;
                button1.Visible = false;
            }
        }

        private void TogglePasswordVisibility(CheckBox checkBox, TextBox textBox)
        {
            textBox.Multiline = checkBox.Checked;
            textBox.UseSystemPasswordChar = !checkBox.Checked;
        }
        private void checkBox14_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox14, textBox2);
        private void checkBox12_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox12, textBox1);
        private void checkBox15_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox15, textBox3);
        private void checkBox16_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox16, textBox4);
        private void checkBox17_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox17, textBox5);
        private void checkBox18_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox18, textBox6);
        private void checkBox19_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox19, textBox7);
        private void checkBox20_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox20, textBox8);
        private void checkBox21_CheckedChanged(object sender, EventArgs e) => TogglePasswordVisibility(checkBox21, textBox9);
        private void checkBox2_CheckedChanged(object sender, EventArgs e) => this.TopMost = checkBox2.Checked; //topmost



//событие по входу в текстовое поле
        private void TextBox_Enter(object sender, EventArgs e, string defaultText, CheckBox associatedCheckBox)
        {
            if (sender != previousFocusedControl) { previousFocusedControl = sender as Control; }
            button2.Visible = true;
            TextBox textBox = sender as TextBox;
            if (textBox != null && textBox.Text == defaultText)
            {
                textBox.Text = "";
                textBox.ForeColor = Color.Black;
                if (associatedCheckBox != null) associatedCheckBox.Checked = true;
            }
            string currentProfileName = Profiles.SelectedItem?.ToString();
            if (string.IsNullOrEmpty(currentProfileName)) return;
            else
                SaveCurrentProfileData(currentProfileName);
        }



//событие по выходу из текстового поля
        private void TextBox_Leave(object sender, EventArgs e)
        {
            if (!button2.Focused)
                button2.Visible = false;
            string currentProfileName = Profiles.SelectedItem?.ToString();
            if (string.IsNullOrEmpty(currentProfileName)) return;
            else
                SaveCurrentProfileData(currentProfileName);
        }
        private void textBox1_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "admin", checkBox3);
        private void textBox1_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);
        private void textBox2_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "P@ssw0rd", checkBox4);
        private void textBox2_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);
        private void textBox3_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "", null);
        private void textBox3_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);
        private void textBox4_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "", null);
        private void textBox4_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);
        private void textBox5_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "", null);
        private void textBox5_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);
        private void textBox6_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "", null);
        private void textBox6_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);
        private void textBox7_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "", null);
        private void textBox7_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);
        private void textBox8_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "", null);
        private void textBox8_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);
        private void textBox9_Enter(object sender, EventArgs e) => TextBox_Enter(sender, e, "", null);
        private void textBox9_Leave(object sender, EventArgs e) => TextBox_Leave(sender, e);



//метод сохранения
        private void SaveCurrentProfileData(string profileName)
        {
            var textBoxes = new[] { textBox1, textBox2, textBox3, textBox4, textBox5, textBox6, textBox7, textBox8, textBox9 };
            var checkBoxes = new[] { checkBox3, checkBox4, checkBox5, checkBox8, checkBox7, checkBox6, checkBox11, checkBox10, checkBox9 };
            var radioButtons = new[] { checkBox13, checkBox22, checkBox23, checkBox24, checkBox25, checkBox26, checkBox27, checkBox28, checkBox29 };
            var checkEyes = new[] { checkBox12, checkBox14, checkBox15, checkBox16, checkBox17, checkBox18, checkBox19, checkBox20, checkBox21 };
            var colors = new[] { Color.Bisque, Color.Honeydew, Color.Lavender, Color.White };

            string profileData = $"0:{profileName}";
            for (int i = 0; i < textBoxes.Length; i++)
            {
                int checkBoxState = checkBoxes[i].Checked ? 1 : 0;
                int radioButtonState = radioButtons[i].Checked ? 1 : 0;
                int checkEyesState = checkEyes[i].Checked ? 1 : 0;
                int colorIndex = Array.IndexOf(colors, textBoxes[i].BackColor); //индекс цвета
                if (colorIndex == -1) colorIndex = 3; // фикс пустого цвета
                string text = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(textBoxes[i].Text));//переводим в Base64

                profileData += $";{i + 1}{checkBoxState}{radioButtonState}{checkEyesState}{colorIndex}:{text}";
            }
            profileDataDict[profileName] = profileData;
        }




//загрузка файла
        private void LoadProfileData(string profileName)
        {
            if (!profileDataDict.TryGetValue(profileName, out string profileData)) return;
            textBox1.ForeColor = Color.Black;
            textBox2.ForeColor = Color.Black;
            var textBoxes = new[] { textBox1, textBox2, textBox3, textBox4, textBox5, textBox6, textBox7, textBox8, textBox9 };
            var checkBoxes = new[] { checkBox3, checkBox4, checkBox5, checkBox8, checkBox7, checkBox6, checkBox11, checkBox10, checkBox9 };
            var radioButtons = new[] { checkBox13, checkBox22, checkBox23, checkBox24, checkBox25, checkBox26, checkBox27, checkBox28, checkBox29 };
            var checkEyes = new[] { checkBox12, checkBox14, checkBox15, checkBox16, checkBox17, checkBox18, checkBox19, checkBox20, checkBox21 };
            var colors = new[] { Color.Bisque, Color.Honeydew, Color.Lavender, Color.White };

            foreach (var textBox in textBoxes) textBox.Text = "";

            foreach (string entry in profileData.Split(';'))
            {
                var parts = entry.Split(new[] { ':' }, 2);
                if (parts.Length == 2 && parts[0].Length == 5 && int.TryParse(parts[0][0].ToString(), out int textBoxIndex) && textBoxIndex >= 1 && textBoxIndex <= 9)
                {
                    //переводим в Base64
                    string textValue = System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(parts[1]));
                    textBoxes[textBoxIndex - 1].Text = textValue;

                    checkBoxes[textBoxIndex - 1].Checked = int.Parse(parts[0][1].ToString()) == 1;
                    radioButtons[textBoxIndex - 1].Checked = int.Parse(parts[0][2].ToString()) == 1;
                    checkEyes[textBoxIndex - 1].Checked = int.Parse(parts[0][3].ToString()) == 1;
                    int colorIndex = int.Parse(parts[0][4].ToString());
                    textBoxes[textBoxIndex - 1].BackColor = colors[colorIndex];
                }
            }
        }






//сброс полей
        private void ClearProfileFields()
        {
            var textBoxes = new[] { textBox1, textBox2, textBox3, textBox4, textBox5, textBox6, textBox7, textBox8, textBox9 };
            var checkBoxes = new[] { checkBox3, checkBox4, checkBox5, checkBox8, checkBox7, checkBox6, checkBox11, checkBox10, checkBox9 };
            var radioButtons = new[] { checkBox13, checkBox22, checkBox23, checkBox24, checkBox25, checkBox26, checkBox27, checkBox28, checkBox29 };
            var checkEyes = new[] { checkBox12, checkBox14, checkBox15, checkBox16, checkBox17, checkBox18, checkBox19, checkBox20, checkBox21 };

            foreach (var textBox in textBoxes)
            {
                textBox.Text = "";
                textBox.BackColor = Color.White;
            }
            foreach (var checkBox in checkBoxes) checkBox.Checked = false;
            foreach (var radioButton in radioButtons) radioButton.Checked = false;
            foreach (var checkEye in checkEyes) checkEye.Checked = true;
        }



//создание нового профиля
        private void createProfileToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string profileName = Profiles.SelectedItem?.ToString();
            if (!string.IsNullOrEmpty(profileName))
            {
                SaveCurrentProfileData(profileName);
            }

            string newProfileName = Prompt.ShowDialog("\nВведите имя нового профиля:", "Создание профиля");
            if (string.IsNullOrEmpty(newProfileName) || newProfileName == "CANCEL") return;

            if (profileDataDict.ContainsKey(newProfileName.ToLower()))
            {
                MessageBox.Show("Название профиля уже используется. Пожалуйста, придумайте другое.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            Profiles.Items.Add(newProfileName);
            Profiles.SelectedItem = newProfileName;
            if (!string.IsNullOrEmpty(profileName))
            {
                ClearProfileFields(); //dont reset if profile is first
            }


            textBox1.ForeColor = Color.Black;
            textBox2.ForeColor = Color.Black;

            SaveCurrentProfileData(newProfileName);
        }




//редактирование профиля
        private void deleteProfileToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string currentProfileName = Profiles.SelectedItem?.ToString();
            if (string.IsNullOrEmpty(currentProfileName)) { createProfileToolStripMenuItem_Click(sender, e); return; }

            string newProfileName = Prompt.ShowDialog("Установить новое имя:\n(оставьте пустым, чтобы удалить профиль)", "Редактировать профиль", currentProfileName);
            if (string.IsNullOrEmpty(newProfileName))
            {
                var result = MessageBox.Show("Вы подтверждаете удаление профиля и всех его данных?", "ВНИМАНИЕ", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                if (result == DialogResult.Yes)
                {
                    profileDataDict.Remove(currentProfileName);
                    Profiles.Items.Remove(currentProfileName);
                    if (Profiles.Items.Count > 0)
                    {
                        Profiles.SelectedIndex = Profiles.Items.Count - 1;
                    }
                    else
                    {
                        ClearProfileFields();
                        Profiles.Text = "Профиль";
                    }
                }
                return;
            }
            else if (newProfileName == "CANCEL") return;
            else 
            {
                profileDataDict.Remove(currentProfileName);
                Profiles.Items.Remove(currentProfileName);
            }
            if (profileDataDict.ContainsKey(newProfileName.ToLower()))
            {
                MessageBox.Show("Название профиля уже используется. Пожалуйста, придумайте другое.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            Profiles.Items.Add(newProfileName);
            Profiles.SelectedItem = newProfileName;
            SaveCurrentProfileData(newProfileName);
        }



//модуль диалогового окна
        public static class Prompt
        {
            public static string ShowDialog(string text, string caption, string defaultValue = "", bool useSystemPasswordChar = false)
            {
                Form prompt = new Form()
                {
                    Width = 322,
                    Height = 182,
                    FormBorderStyle = FormBorderStyle.FixedDialog,
                    Text = caption,
                    StartPosition = FormStartPosition.CenterScreen,
                    TopMost = true
                };

                Label textLabel = new Label()
                {
                    Left = 8,
                    Top = 15,
                    Text = text,
                    AutoSize = true
                };

                TextBox textBox = new TextBox()
                {
                    Left = 10,
                    Top = 57,
                    Width = 286,
                    UseSystemPasswordChar = useSystemPasswordChar
                };

                Button confirmation = new Button()
                {
                    Text = "OK",
                    Left = 103,
                    Width = 100,
                    Top = 100,
                    DialogResult = DialogResult.OK
                };
                confirmation.Click += (sender, e) =>
                {
                    prompt.Close();
                };

                prompt.Controls.Add(textBox);
                prompt.Controls.Add(confirmation);
                prompt.Controls.Add(textLabel);
                prompt.AcceptButton = confirmation;

                return prompt.ShowDialog() == DialogResult.OK ? textBox.Text : "CANCEL";
            }
        }



//событие по клику на профили
        private void Profiles_Click(object sender, EventArgs e)
        {
            if (!isComboBoxOpen)
            {
                string profileName = Profiles.SelectedItem?.ToString();
                if (!string.IsNullOrEmpty(profileName))
                {
                    SaveCurrentProfileData(profileName);
                }
            }
        }



//событие по выбору другого профиля
        private void Profiles_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (!isComboBoxOpen)
            {
                string profileName = Profiles.SelectedItem?.ToString();
                if (!string.IsNullOrEmpty(profileName))
                {
                    LoadProfileData(profileName);
                }
            }
        }


//дебаг горячих клавиш
        private void UpdateModifierKeysLabel()
        {
            Keys modifiers = Control.ModifierKeys;
            label1.Text = $"{modifiers}";
        }





//сохранить как...
        private void saveAsToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (Profiles.Items.Count == 0)
            {
                MessageBox.Show("Профили отсутствуют. Создайте хотя бы один, чтобы сохраняться.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            string profileName = Profiles.SelectedItem?.ToString();
            if (!string.IsNullOrEmpty(profileName)) SaveCurrentProfileData(profileName);

            SaveFileDialog saveFileDialog1 = new SaveFileDialog
            {
                Filter = "Файлы сохранений (*.fil)|*.fil|Все файлы (*.*)|*.*",
                FilterIndex = 1,
                RestoreDirectory = true,
                FileName = "db.fil"
            };

            if (saveFileDialog1.ShowDialog() != DialogResult.OK) return;

            string password1 = Prompt.ShowDialog("Установите ключ шифрования \n(или оставьте пустым):", "Пароль", "", true);
            if (password1 == "CANCEL") return; //break if dialog window closed

            if (!string.IsNullOrEmpty(password1))
            {
                string password2 = Prompt.ShowDialog("Повторите пароль:", "Подтверждение пароля", "", true);
                if (password2 == "CANCEL" || password1 != password2)
                {
                    MessageBox.Show("Пароли не совпадают, либо отменено пользователем. Попробуйте снова.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
            }

            StringBuilder sb = new StringBuilder();
            foreach (var kvp in profileDataDict) sb.AppendLine($"{kvp.Key}: {kvp.Value}");
            string dataToSave = sb.ToString();

            if (!string.IsNullOrEmpty(password1))
            {
                dataToSave = CryptoHelper.Encrypt(dataToSave, password1);
            }

            using (var file = new StreamWriter(saveFileDialog1.FileName))
            {
                file.Write(dataToSave);
            }

            MessageBox.Show("Файл успешно сохранён.", "Сохранено", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }




//модуль загрузки
        private void loadToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog1 = new OpenFileDialog
            {
                Filter = "Файлы сохранений (*.fil)|*.fil|Все файлы (*.*)|*.*",
                FilterIndex = 1,
                RestoreDirectory = true,
                FileName = "db.fil"
            };

            if (openFileDialog1.ShowDialog() != DialogResult.OK) return;
            Profiles.Items.Clear();
            profileDataDict.Clear();

            string encryptedData;
            using (StreamReader file = new StreamReader(openFileDialog1.FileName))
            {
                encryptedData = file.ReadToEnd();
            }

            string password = Prompt.ShowDialog("Введите пароль \n(оставьте пустым, если файл не зашифрован):", "Пароль", "", true);
            if (password == "CANCEL") return; //прервать если окно закрыто

            string decryptedData = string.Empty;

            try
            {
                if (string.IsNullOrEmpty(password))
                {
                    decryptedData = encryptedData; //без шифрации
                }
                else
                {
                    decryptedData = CryptoHelper.Decrypt(encryptedData, password);
                }

                using (StringReader reader = new StringReader(decryptedData))
                {
                    string line;
                    while ((line = reader.ReadLine()) != null)
                    {
                        var parts = line.Split(new[] { ": " }, 2, StringSplitOptions.None);
                        if (parts.Length == 2)
                        {
                            profileDataDict[parts[0]] = parts[1];
                        }
                    }
                }

                Profiles.Items.Clear();
                foreach (var key in profileDataDict.Keys) Profiles.Items.Add(key);

                if (Profiles.Items.Count > 0)
                {
                    Profiles.SelectedIndex = 0;
                    LoadProfileData(Profiles.SelectedItem.ToString());
                }
            }
            catch (CryptographicException)
            {
                MessageBox.Show("Неверный пароль или файл повреждён.", "Ошибка шифрования", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (FormatException)
            {
                MessageBox.Show("Ошибка структуры данных. Возможно, файл не зашифрован.", "Ошибка структуры данных", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }




//таб или энтер
        private void TABorENTER(CheckBox checkBox, CheckBox relatedCheckBox)
        {
            if (!checkBox.Checked)
            {
                relatedCheckBox.ForeColor = Color.White;
            }
            else
            {
                if (relatedCheckBox.Checked)
                {
                    relatedCheckBox.Text = "↹ TAB";
                    relatedCheckBox.ForeColor = Color.DarkBlue;
                }
                else
                {
                    relatedCheckBox.Text = "↵ Enter";
                    relatedCheckBox.ForeColor = Color.DarkRed;
                }
            }
        }

        private void checkBox13_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox3, checkBox13);
        private void checkBox3_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox3, checkBox13);
        private void checkBox4_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox4, checkBox22);
        private void checkBox22_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox4, checkBox22);
        private void checkBox5_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox5, checkBox23);
        private void checkBox23_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox5, checkBox23);
        private void checkBox8_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox8, checkBox24);
        private void checkBox24_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox8, checkBox24);
        private void checkBox7_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox7, checkBox25);
        private void checkBox25_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox7, checkBox25);
        private void checkBox6_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox6, checkBox26);
        private void checkBox26_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox6, checkBox26);
        private void checkBox11_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox11, checkBox27);
        private void checkBox27_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox11, checkBox27);
        private void checkBox10_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox10, checkBox28);
        private void checkBox28_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox10, checkBox28);
        private void checkBox9_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox9, checkBox29);
        private void checkBox29_CheckedChanged(object sender, EventArgs e) => TABorENTER(checkBox9, checkBox29);



//О программе
        private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
        {
            MessageBox.Show($"• Попробуйте горячие клавиши CTRL+[1-9] для включения или выключения полей\n\n• Вывод символов зависит от текущей раскладки клавиатуры - имейте в виду при работе в удалённых консолях\n__________________________________________________________\n\nСоздано в 2024. Распространяется свободно и бесплатно.\n\nКанал автора: t.me/sysarch01\n__________________________________________________________\n\nКонтрольная сумма и исходный код доступны\n\n• на GitVerse: https://gitverse.ru/aremys/infill\n\n", "About", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }



//кнопка СТОП
        private void button1_Click_1(object sender, EventArgs e)
        {
            stopExecution = true;
        }



//кнопка смены цвета
        private int colorIndex = 0;
        private readonly Color[] colors = { Color.Bisque, Color.Honeydew, Color.Lavender, Color.White };
        private Control previousFocusedControl = null;
        private void button2_Click(object sender, EventArgs e)
        {
            button2.BackColor = colors[colorIndex];
            if (previousFocusedControl != null) { previousFocusedControl.BackColor = colors[colorIndex]; }
            colorIndex = (colorIndex + 1) % colors.Length;
        }
        private void button2_Leave(object sender, EventArgs e)
        {
            button2.Visible = false;
        }



    }
}

Form1.designer.cs
namespace Filler
{
    partial class infill
    {
        /// <summary>
        /// Обязательная переменная конструктора.
        /// </summary>
        private System.ComponentModel.IContainer components = null;

        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        /// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        #region Код, автоматически созданный конструктором форм Windows

        /// <summary>
        /// Требуемый метод для поддержки конструктора — не изменяйте 
        /// содержимое этого метода с помощью редактора кода.
        /// </summary>
        private void InitializeComponent()
        {
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(infill));
            checkBox1 = new CheckBox();
            textBox1 = new TextBox();
            checkBox2 = new CheckBox();
            textBox2 = new TextBox();
            textBox3 = new TextBox();
            checkBox5 = new CheckBox();
            checkBox4 = new CheckBox();
            checkBox3 = new CheckBox();
            checkBox6 = new CheckBox();
            textBox6 = new TextBox();
            checkBox7 = new CheckBox();
            textBox5 = new TextBox();
            checkBox8 = new CheckBox();
            textBox4 = new TextBox();
            checkBox9 = new CheckBox();
            textBox9 = new TextBox();
            checkBox10 = new CheckBox();
            textBox8 = new TextBox();
            checkBox11 = new CheckBox();
            textBox7 = new TextBox();
            checkBox12 = new CheckBox();
            menuStrip1 = new MenuStrip();
            File = new ToolStripMenuItem();
            loadToolStripMenuItem = new ToolStripMenuItem();
            saveAsToolStripMenuItem = new ToolStripMenuItem();
            toolStripMenuItem3 = new ToolStripSeparator();
            createProfileToolStripMenuItem = new ToolStripMenuItem();
            deleteProfileToolStripMenuItem = new ToolStripMenuItem();
            fileToolStripMenuItem = new ToolStripSeparator();
            aboutToolStripMenuItem = new ToolStripMenuItem();
            Profiles = new ToolStripComboBox();
            Hotkeys = new ToolStripComboBox();
            toolStripMenuItem1 = new ToolStripMenuItem();
            checkBox14 = new CheckBox();
            checkBox15 = new CheckBox();
            checkBox16 = new CheckBox();
            checkBox17 = new CheckBox();
            checkBox18 = new CheckBox();
            checkBox19 = new CheckBox();
            checkBox20 = new CheckBox();
            checkBox21 = new CheckBox();
            label1 = new Label();
            checkBox13 = new CheckBox();
            checkBox22 = new CheckBox();
            checkBox23 = new CheckBox();
            checkBox24 = new CheckBox();
            checkBox25 = new CheckBox();
            checkBox26 = new CheckBox();
            checkBox27 = new CheckBox();
            checkBox28 = new CheckBox();
            checkBox29 = new CheckBox();
            button1 = new Button();
            button2 = new Button();
            label2 = new Label();
            menuStrip1.SuspendLayout();
            SuspendLayout();
            // 
            // checkBox1
            // 
            checkBox1.AutoSize = true;
            checkBox1.Location = new Point(9, 629);
            checkBox1.Margin = new Padding(3, 4, 3, 4);
            checkBox1.Name = "checkBox1";
            checkBox1.Size = new Size(166, 24);
            checkBox1.TabIndex = 0;
            checkBox1.Text = "Медленный режим";
            checkBox1.UseVisualStyleBackColor = true;
            // 
            // textBox1
            // 
            textBox1.BackColor = Color.White;
            textBox1.BorderStyle = BorderStyle.None;
            textBox1.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox1.ForeColor = SystemColors.GrayText;
            textBox1.Location = new Point(55, 50);
            textBox1.Margin = new Padding(3, 4, 3, 4);
            textBox1.Multiline = true;
            textBox1.Name = "textBox1";
            textBox1.ScrollBars = ScrollBars.Horizontal;
            textBox1.Size = new Size(196, 60);
            textBox1.TabIndex = 1;
            textBox1.Text = "admin";
            textBox1.WordWrap = false;
            textBox1.Enter += textBox1_Enter;
            textBox1.Leave += textBox1_Leave;
            // 
            // checkBox2
            // 
            checkBox2.AutoSize = true;
            checkBox2.Location = new Point(205, 629);
            checkBox2.Margin = new Padding(3, 4, 3, 4);
            checkBox2.Name = "checkBox2";
            checkBox2.RightToLeft = RightToLeft.Yes;
            checkBox2.Size = new Size(155, 24);
            checkBox2.TabIndex = 2;
            checkBox2.Text = "Поверх всех окон";
            checkBox2.UseVisualStyleBackColor = true;
            checkBox2.CheckedChanged += checkBox2_CheckedChanged;
            // 
            // textBox2
            // 
            textBox2.BorderStyle = BorderStyle.None;
            textBox2.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox2.ForeColor = SystemColors.GrayText;
            textBox2.Location = new Point(55, 114);
            textBox2.Margin = new Padding(3, 4, 3, 4);
            textBox2.Multiline = true;
            textBox2.Name = "textBox2";
            textBox2.ScrollBars = ScrollBars.Horizontal;
            textBox2.Size = new Size(196, 57);
            textBox2.TabIndex = 7;
            textBox2.Text = "P@ssw0rd";
            textBox2.UseSystemPasswordChar = true;
            textBox2.WordWrap = false;
            textBox2.Enter += textBox2_Enter;
            textBox2.Leave += textBox2_Leave;
            // 
            // textBox3
            // 
            textBox3.BorderStyle = BorderStyle.None;
            textBox3.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox3.Location = new Point(55, 178);
            textBox3.Margin = new Padding(3, 4, 3, 4);
            textBox3.Multiline = true;
            textBox3.Name = "textBox3";
            textBox3.ScrollBars = ScrollBars.Horizontal;
            textBox3.Size = new Size(196, 60);
            textBox3.TabIndex = 7;
            textBox3.WordWrap = false;
            textBox3.Enter += textBox3_Enter;
            textBox3.Leave += textBox3_Leave;
            // 
            // checkBox5
            // 
            checkBox5.Appearance = Appearance.Button;
            checkBox5.BackgroundImage = (Image)resources.GetObject("checkBox5.BackgroundImage");
            checkBox5.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox5.CheckAlign = ContentAlignment.BottomLeft;
            checkBox5.FlatAppearance.BorderSize = 0;
            checkBox5.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox5.FlatStyle = FlatStyle.Flat;
            checkBox5.Location = new Point(9, 172);
            checkBox5.Margin = new Padding(0);
            checkBox5.Name = "checkBox5";
            checkBox5.Size = new Size(40, 48);
            checkBox5.TabIndex = 8;
            checkBox5.UseVisualStyleBackColor = true;
            checkBox5.CheckedChanged += checkBox5_CheckedChanged;
            // 
            // checkBox4
            // 
            checkBox4.Appearance = Appearance.Button;
            checkBox4.BackgroundImage = (Image)resources.GetObject("checkBox4.BackgroundImage");
            checkBox4.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox4.CheckAlign = ContentAlignment.BottomLeft;
            checkBox4.FlatAppearance.BorderSize = 0;
            checkBox4.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox4.FlatStyle = FlatStyle.Flat;
            checkBox4.Location = new Point(9, 108);
            checkBox4.Margin = new Padding(0);
            checkBox4.Name = "checkBox4";
            checkBox4.Size = new Size(40, 48);
            checkBox4.TabIndex = 8;
            checkBox4.UseVisualStyleBackColor = true;
            checkBox4.CheckedChanged += checkBox4_CheckedChanged;
            // 
            // checkBox3
            // 
            checkBox3.Appearance = Appearance.Button;
            checkBox3.BackgroundImage = (Image)resources.GetObject("checkBox3.BackgroundImage");
            checkBox3.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox3.CheckAlign = ContentAlignment.BottomLeft;
            checkBox3.FlatAppearance.BorderSize = 0;
            checkBox3.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox3.FlatStyle = FlatStyle.Flat;
            checkBox3.Location = new Point(9, 45);
            checkBox3.Margin = new Padding(0);
            checkBox3.Name = "checkBox3";
            checkBox3.Size = new Size(40, 48);
            checkBox3.TabIndex = 3;
            checkBox3.UseVisualStyleBackColor = true;
            checkBox3.CheckedChanged += checkBox3_CheckedChanged;
            // 
            // checkBox6
            // 
            checkBox6.Appearance = Appearance.Button;
            checkBox6.BackgroundImage = (Image)resources.GetObject("checkBox6.BackgroundImage");
            checkBox6.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox6.CheckAlign = ContentAlignment.BottomLeft;
            checkBox6.FlatAppearance.BorderSize = 0;
            checkBox6.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox6.FlatStyle = FlatStyle.Flat;
            checkBox6.Location = new Point(9, 365);
            checkBox6.Margin = new Padding(0);
            checkBox6.Name = "checkBox6";
            checkBox6.Size = new Size(40, 48);
            checkBox6.TabIndex = 15;
            checkBox6.UseVisualStyleBackColor = true;
            checkBox6.CheckedChanged += checkBox6_CheckedChanged;
            // 
            // textBox6
            // 
            textBox6.BorderStyle = BorderStyle.None;
            textBox6.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox6.Location = new Point(55, 370);
            textBox6.Margin = new Padding(3, 4, 3, 4);
            textBox6.Multiline = true;
            textBox6.Name = "textBox6";
            textBox6.ScrollBars = ScrollBars.Horizontal;
            textBox6.Size = new Size(196, 60);
            textBox6.TabIndex = 13;
            textBox6.WordWrap = false;
            textBox6.Enter += textBox6_Enter;
            textBox6.Leave += textBox6_Leave;
            // 
            // checkBox7
            // 
            checkBox7.Appearance = Appearance.Button;
            checkBox7.BackgroundImage = (Image)resources.GetObject("checkBox7.BackgroundImage");
            checkBox7.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox7.CheckAlign = ContentAlignment.BottomLeft;
            checkBox7.FlatAppearance.BorderSize = 0;
            checkBox7.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox7.FlatStyle = FlatStyle.Flat;
            checkBox7.Location = new Point(9, 301);
            checkBox7.Margin = new Padding(0);
            checkBox7.Name = "checkBox7";
            checkBox7.Size = new Size(40, 48);
            checkBox7.TabIndex = 16;
            checkBox7.UseVisualStyleBackColor = true;
            checkBox7.CheckedChanged += checkBox7_CheckedChanged;
            // 
            // textBox5
            // 
            textBox5.BorderStyle = BorderStyle.None;
            textBox5.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox5.Location = new Point(55, 306);
            textBox5.Margin = new Padding(3, 4, 3, 4);
            textBox5.Multiline = true;
            textBox5.Name = "textBox5";
            textBox5.ScrollBars = ScrollBars.Horizontal;
            textBox5.Size = new Size(196, 60);
            textBox5.TabIndex = 14;
            textBox5.WordWrap = false;
            textBox5.Enter += textBox5_Enter;
            textBox5.Leave += textBox5_Leave;
            // 
            // checkBox8
            // 
            checkBox8.Appearance = Appearance.Button;
            checkBox8.BackgroundImage = (Image)resources.GetObject("checkBox8.BackgroundImage");
            checkBox8.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox8.CheckAlign = ContentAlignment.BottomLeft;
            checkBox8.FlatAppearance.BorderSize = 0;
            checkBox8.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox8.FlatStyle = FlatStyle.Flat;
            checkBox8.Location = new Point(9, 236);
            checkBox8.Margin = new Padding(0);
            checkBox8.Name = "checkBox8";
            checkBox8.Size = new Size(40, 48);
            checkBox8.TabIndex = 11;
            checkBox8.UseVisualStyleBackColor = true;
            checkBox8.CheckedChanged += checkBox8_CheckedChanged;
            // 
            // textBox4
            // 
            textBox4.BorderStyle = BorderStyle.None;
            textBox4.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox4.Location = new Point(55, 242);
            textBox4.Margin = new Padding(3, 4, 3, 4);
            textBox4.Multiline = true;
            textBox4.Name = "textBox4";
            textBox4.ScrollBars = ScrollBars.Horizontal;
            textBox4.Size = new Size(196, 59);
            textBox4.TabIndex = 10;
            textBox4.WordWrap = false;
            textBox4.Enter += textBox4_Enter;
            textBox4.Leave += textBox4_Leave;
            // 
            // checkBox9
            // 
            checkBox9.Appearance = Appearance.Button;
            checkBox9.BackgroundImage = (Image)resources.GetObject("checkBox9.BackgroundImage");
            checkBox9.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox9.CheckAlign = ContentAlignment.BottomLeft;
            checkBox9.FlatAppearance.BorderSize = 0;
            checkBox9.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox9.FlatStyle = FlatStyle.Flat;
            checkBox9.Location = new Point(9, 559);
            checkBox9.Margin = new Padding(0);
            checkBox9.Name = "checkBox9";
            checkBox9.Size = new Size(40, 48);
            checkBox9.TabIndex = 15;
            checkBox9.UseVisualStyleBackColor = true;
            checkBox9.CheckedChanged += checkBox9_CheckedChanged;
            // 
            // textBox9
            // 
            textBox9.BorderStyle = BorderStyle.None;
            textBox9.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox9.Location = new Point(55, 564);
            textBox9.Margin = new Padding(3, 4, 3, 4);
            textBox9.Multiline = true;
            textBox9.Name = "textBox9";
            textBox9.ScrollBars = ScrollBars.Horizontal;
            textBox9.Size = new Size(196, 60);
            textBox9.TabIndex = 13;
            textBox9.WordWrap = false;
            textBox9.Enter += textBox9_Enter;
            textBox9.Leave += textBox9_Leave;
            // 
            // checkBox10
            // 
            checkBox10.Appearance = Appearance.Button;
            checkBox10.BackgroundImage = (Image)resources.GetObject("checkBox10.BackgroundImage");
            checkBox10.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox10.CheckAlign = ContentAlignment.BottomLeft;
            checkBox10.FlatAppearance.BorderSize = 0;
            checkBox10.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox10.FlatStyle = FlatStyle.Flat;
            checkBox10.Location = new Point(9, 495);
            checkBox10.Margin = new Padding(0);
            checkBox10.Name = "checkBox10";
            checkBox10.Size = new Size(40, 48);
            checkBox10.TabIndex = 16;
            checkBox10.UseVisualStyleBackColor = true;
            checkBox10.CheckedChanged += checkBox10_CheckedChanged;
            // 
            // textBox8
            // 
            textBox8.BorderStyle = BorderStyle.None;
            textBox8.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox8.Location = new Point(55, 500);
            textBox8.Margin = new Padding(3, 4, 3, 4);
            textBox8.Multiline = true;
            textBox8.Name = "textBox8";
            textBox8.ScrollBars = ScrollBars.Horizontal;
            textBox8.Size = new Size(196, 60);
            textBox8.TabIndex = 14;
            textBox8.WordWrap = false;
            textBox8.Enter += textBox8_Enter;
            textBox8.Leave += textBox8_Leave;
            // 
            // checkBox11
            // 
            checkBox11.Appearance = Appearance.Button;
            checkBox11.BackgroundImage = (Image)resources.GetObject("checkBox11.BackgroundImage");
            checkBox11.BackgroundImageLayout = ImageLayout.Stretch;
            checkBox11.CheckAlign = ContentAlignment.BottomLeft;
            checkBox11.FlatAppearance.BorderSize = 0;
            checkBox11.FlatAppearance.CheckedBackColor = Color.Green;
            checkBox11.FlatStyle = FlatStyle.Flat;
            checkBox11.Location = new Point(9, 429);
            checkBox11.Margin = new Padding(0);
            checkBox11.Name = "checkBox11";
            checkBox11.Size = new Size(40, 48);
            checkBox11.TabIndex = 11;
            checkBox11.UseVisualStyleBackColor = true;
            checkBox11.CheckedChanged += checkBox11_CheckedChanged;
            // 
            // textBox7
            // 
            textBox7.BorderStyle = BorderStyle.None;
            textBox7.Font = new Font("Cambria", 16.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            textBox7.Location = new Point(55, 435);
            textBox7.Margin = new Padding(3, 4, 3, 4);
            textBox7.Multiline = true;
            textBox7.Name = "textBox7";
            textBox7.ScrollBars = ScrollBars.Horizontal;
            textBox7.Size = new Size(196, 60);
            textBox7.TabIndex = 10;
            textBox7.WordWrap = false;
            textBox7.Enter += textBox7_Enter;
            textBox7.Leave += textBox7_Leave;
            // 
            // checkBox12
            // 
            checkBox12.Appearance = Appearance.Button;
            checkBox12.BackColor = Color.RoyalBlue;
            checkBox12.Checked = true;
            checkBox12.CheckState = CheckState.Checked;
            checkBox12.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox12.FlatStyle = FlatStyle.System;
            checkBox12.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox12.Location = new Point(249, 50);
            checkBox12.Margin = new Padding(3, 4, 3, 4);
            checkBox12.Name = "checkBox12";
            checkBox12.RightToLeft = RightToLeft.No;
            checkBox12.Size = new Size(27, 35);
            checkBox12.TabIndex = 19;
            checkBox12.Text = "?";
            checkBox12.TextAlign = ContentAlignment.TopCenter;
            checkBox12.UseVisualStyleBackColor = false;
            checkBox12.CheckedChanged += checkBox12_CheckedChanged;
            // 
            // menuStrip1
            // 
            menuStrip1.ImageScalingSize = new Size(20, 20);
            menuStrip1.Items.AddRange(new ToolStripItem[] { File, Profiles, Hotkeys });
            menuStrip1.Location = new Point(0, 0);
            menuStrip1.Name = "menuStrip1";
            menuStrip1.Padding = new Padding(6, 3, 0, 3);
            menuStrip1.RenderMode = ToolStripRenderMode.Professional;
            menuStrip1.Size = new Size(354, 34);
            menuStrip1.TabIndex = 20;
            menuStrip1.Text = "menuStrip1";
            // 
            // File
            // 
            File.DropDownItems.AddRange(new ToolStripItem[] { loadToolStripMenuItem, saveAsToolStripMenuItem, toolStripMenuItem3, createProfileToolStripMenuItem, deleteProfileToolStripMenuItem, fileToolStripMenuItem, aboutToolStripMenuItem });
            File.Name = "File";
            File.Size = new Size(59, 28);
            File.Text = "Файл";
            // 
            // loadToolStripMenuItem
            // 
            loadToolStripMenuItem.Name = "loadToolStripMenuItem";
            loadToolStripMenuItem.Size = new Size(260, 26);
            loadToolStripMenuItem.Text = "Загрузить";
            loadToolStripMenuItem.Click += loadToolStripMenuItem_Click;
            // 
            // saveAsToolStripMenuItem
            // 
            saveAsToolStripMenuItem.Name = "saveAsToolStripMenuItem";
            saveAsToolStripMenuItem.Size = new Size(260, 26);
            saveAsToolStripMenuItem.Text = "Сохранить как...";
            saveAsToolStripMenuItem.Click += saveAsToolStripMenuItem_Click;
            // 
            // toolStripMenuItem3
            // 
            toolStripMenuItem3.Name = "toolStripMenuItem3";
            toolStripMenuItem3.Size = new Size(257, 6);
            // 
            // createProfileToolStripMenuItem
            // 
            createProfileToolStripMenuItem.Name = "createProfileToolStripMenuItem";
            createProfileToolStripMenuItem.Size = new Size(260, 26);
            createProfileToolStripMenuItem.Text = "Новый профиль";
            createProfileToolStripMenuItem.Click += createProfileToolStripMenuItem_Click;
            // 
            // deleteProfileToolStripMenuItem
            // 
            deleteProfileToolStripMenuItem.Name = "deleteProfileToolStripMenuItem";
            deleteProfileToolStripMenuItem.Size = new Size(260, 26);
            deleteProfileToolStripMenuItem.Text = "Редактировать профиль";
            deleteProfileToolStripMenuItem.Click += deleteProfileToolStripMenuItem_Click;
            // 
            // fileToolStripMenuItem
            // 
            fileToolStripMenuItem.Name = "fileToolStripMenuItem";
            fileToolStripMenuItem.Size = new Size(257, 6);
            // 
            // aboutToolStripMenuItem
            // 
            aboutToolStripMenuItem.Name = "aboutToolStripMenuItem";
            aboutToolStripMenuItem.Size = new Size(260, 26);
            aboutToolStripMenuItem.Text = "О программе";
            aboutToolStripMenuItem.Click += aboutToolStripMenuItem_Click;
            // 
            // Profiles
            // 
            Profiles.Name = "Profiles";
            Profiles.Size = new Size(150, 28);
            Profiles.Text = "Профиль";
            Profiles.SelectedIndexChanged += Profiles_SelectedIndexChanged;
            Profiles.Click += Profiles_Click;
            // 
            // Hotkeys
            // 
            Hotkeys.Items.AddRange(new object[] { "Ctrl+Alt+Z", "Ctrl+Alt+X", "Ctrl+Alt+C", "Ctrl+Alt+V", "Ctrl+Alt+A", "Ctrl+Alt+S", "Ctrl+Alt+D", "Ctrl+Alt+F", "Ctrl+Alt+Q", "Ctrl+Alt+W", "Ctrl+Alt+E", "Ctrl+Alt+R" });
            Hotkeys.Name = "Hotkeys";
            Hotkeys.Size = new Size(100, 28);
            Hotkeys.Text = "Ctrl+Alt+V";
            Hotkeys.SelectedIndexChanged += Hotkeys_SelectedIndexChanged;
            // 
            // toolStripMenuItem1
            // 
            toolStripMenuItem1.Name = "toolStripMenuItem1";
            toolStripMenuItem1.Size = new Size(32, 19);
            // 
            // checkBox14
            // 
            checkBox14.Appearance = Appearance.Button;
            checkBox14.BackColor = Color.RoyalBlue;
            checkBox14.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox14.FlatStyle = FlatStyle.System;
            checkBox14.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox14.Location = new Point(249, 114);
            checkBox14.Margin = new Padding(3, 4, 3, 4);
            checkBox14.Name = "checkBox14";
            checkBox14.RightToLeft = RightToLeft.No;
            checkBox14.Size = new Size(27, 35);
            checkBox14.TabIndex = 21;
            checkBox14.Text = "?";
            checkBox14.TextAlign = ContentAlignment.TopCenter;
            checkBox14.UseVisualStyleBackColor = false;
            checkBox14.CheckedChanged += checkBox14_CheckedChanged;
            // 
            // checkBox15
            // 
            checkBox15.Appearance = Appearance.Button;
            checkBox15.BackColor = Color.RoyalBlue;
            checkBox15.Checked = true;
            checkBox15.CheckState = CheckState.Checked;
            checkBox15.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox15.FlatStyle = FlatStyle.System;
            checkBox15.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox15.Location = new Point(249, 178);
            checkBox15.Margin = new Padding(3, 4, 3, 4);
            checkBox15.Name = "checkBox15";
            checkBox15.RightToLeft = RightToLeft.No;
            checkBox15.Size = new Size(27, 35);
            checkBox15.TabIndex = 22;
            checkBox15.Text = "?";
            checkBox15.TextAlign = ContentAlignment.TopCenter;
            checkBox15.UseVisualStyleBackColor = false;
            checkBox15.CheckedChanged += checkBox15_CheckedChanged;
            // 
            // checkBox16
            // 
            checkBox16.Appearance = Appearance.Button;
            checkBox16.BackColor = Color.RoyalBlue;
            checkBox16.Checked = true;
            checkBox16.CheckState = CheckState.Checked;
            checkBox16.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox16.FlatStyle = FlatStyle.System;
            checkBox16.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox16.Location = new Point(249, 242);
            checkBox16.Margin = new Padding(3, 4, 3, 4);
            checkBox16.Name = "checkBox16";
            checkBox16.RightToLeft = RightToLeft.No;
            checkBox16.Size = new Size(27, 35);
            checkBox16.TabIndex = 23;
            checkBox16.Text = "?";
            checkBox16.TextAlign = ContentAlignment.TopCenter;
            checkBox16.UseVisualStyleBackColor = false;
            checkBox16.CheckedChanged += checkBox16_CheckedChanged;
            // 
            // checkBox17
            // 
            checkBox17.Appearance = Appearance.Button;
            checkBox17.BackColor = Color.RoyalBlue;
            checkBox17.Checked = true;
            checkBox17.CheckState = CheckState.Checked;
            checkBox17.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox17.FlatStyle = FlatStyle.System;
            checkBox17.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox17.Location = new Point(249, 306);
            checkBox17.Margin = new Padding(3, 4, 3, 4);
            checkBox17.Name = "checkBox17";
            checkBox17.RightToLeft = RightToLeft.No;
            checkBox17.Size = new Size(27, 35);
            checkBox17.TabIndex = 24;
            checkBox17.Text = "?";
            checkBox17.TextAlign = ContentAlignment.TopCenter;
            checkBox17.UseVisualStyleBackColor = false;
            checkBox17.CheckedChanged += checkBox17_CheckedChanged;
            // 
            // checkBox18
            // 
            checkBox18.Appearance = Appearance.Button;
            checkBox18.BackColor = Color.RoyalBlue;
            checkBox18.Checked = true;
            checkBox18.CheckState = CheckState.Checked;
            checkBox18.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox18.FlatStyle = FlatStyle.System;
            checkBox18.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox18.Location = new Point(249, 370);
            checkBox18.Margin = new Padding(3, 4, 3, 4);
            checkBox18.Name = "checkBox18";
            checkBox18.RightToLeft = RightToLeft.No;
            checkBox18.Size = new Size(27, 35);
            checkBox18.TabIndex = 25;
            checkBox18.Text = "?";
            checkBox18.TextAlign = ContentAlignment.TopCenter;
            checkBox18.UseVisualStyleBackColor = false;
            checkBox18.CheckedChanged += checkBox18_CheckedChanged;
            // 
            // checkBox19
            // 
            checkBox19.Appearance = Appearance.Button;
            checkBox19.BackColor = Color.RoyalBlue;
            checkBox19.Checked = true;
            checkBox19.CheckState = CheckState.Checked;
            checkBox19.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox19.FlatStyle = FlatStyle.System;
            checkBox19.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox19.Location = new Point(249, 435);
            checkBox19.Margin = new Padding(3, 4, 3, 4);
            checkBox19.Name = "checkBox19";
            checkBox19.RightToLeft = RightToLeft.No;
            checkBox19.Size = new Size(27, 35);
            checkBox19.TabIndex = 26;
            checkBox19.Text = "?";
            checkBox19.TextAlign = ContentAlignment.TopCenter;
            checkBox19.UseVisualStyleBackColor = false;
            checkBox19.CheckedChanged += checkBox19_CheckedChanged;
            // 
            // checkBox20
            // 
            checkBox20.Appearance = Appearance.Button;
            checkBox20.BackColor = Color.RoyalBlue;
            checkBox20.Checked = true;
            checkBox20.CheckState = CheckState.Checked;
            checkBox20.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox20.FlatStyle = FlatStyle.System;
            checkBox20.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox20.Location = new Point(249, 500);
            checkBox20.Margin = new Padding(3, 4, 3, 4);
            checkBox20.Name = "checkBox20";
            checkBox20.RightToLeft = RightToLeft.No;
            checkBox20.Size = new Size(27, 35);
            checkBox20.TabIndex = 27;
            checkBox20.Text = "?";
            checkBox20.TextAlign = ContentAlignment.TopCenter;
            checkBox20.UseVisualStyleBackColor = false;
            checkBox20.CheckedChanged += checkBox20_CheckedChanged;
            // 
            // checkBox21
            // 
            checkBox21.Appearance = Appearance.Button;
            checkBox21.BackColor = Color.RoyalBlue;
            checkBox21.Checked = true;
            checkBox21.CheckState = CheckState.Checked;
            checkBox21.FlatAppearance.BorderColor = Color.DarkGray;
            checkBox21.FlatStyle = FlatStyle.System;
            checkBox21.Font = new Font("Ink Free", 10.2F, FontStyle.Bold, GraphicsUnit.Point, 0);
            checkBox21.Location = new Point(249, 564);
            checkBox21.Margin = new Padding(3, 4, 3, 4);
            checkBox21.Name = "checkBox21";
            checkBox21.RightToLeft = RightToLeft.No;
            checkBox21.Size = new Size(27, 35);
            checkBox21.TabIndex = 28;
            checkBox21.Text = "?";
            checkBox21.TextAlign = ContentAlignment.TopCenter;
            checkBox21.UseVisualStyleBackColor = false;
            checkBox21.CheckedChanged += checkBox21_CheckedChanged;
            // 
            // label1
            // 
            label1.AutoSize = true;
            label1.ForeColor = SystemColors.ActiveCaption;
            label1.Location = new Point(437, 615);
            label1.Name = "label1";
            label1.Size = new Size(42, 20);
            label1.TabIndex = 29;
            label1.Text = "label";
            // 
            // checkBox13
            // 
            checkBox13.Appearance = Appearance.Button;
            checkBox13.BackColor = Color.White;
            checkBox13.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox13.Checked = true;
            checkBox13.CheckState = CheckState.Checked;
            checkBox13.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox13.FlatAppearance.BorderSize = 4;
            checkBox13.FlatStyle = FlatStyle.Flat;
            checkBox13.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox13.ForeColor = Color.White;
            checkBox13.Location = new Point(276, 41);
            checkBox13.Name = "checkBox13";
            checkBox13.RightToLeft = RightToLeft.No;
            checkBox13.Size = new Size(76, 58);
            checkBox13.TabIndex = 30;
            checkBox13.Text = "↹ TAB";
            checkBox13.UseVisualStyleBackColor = false;
            checkBox13.CheckedChanged += checkBox13_CheckedChanged;
            // 
            // checkBox22
            // 
            checkBox22.Appearance = Appearance.Button;
            checkBox22.BackColor = Color.White;
            checkBox22.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox22.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox22.FlatAppearance.BorderSize = 4;
            checkBox22.FlatStyle = FlatStyle.Flat;
            checkBox22.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox22.ForeColor = Color.White;
            checkBox22.Location = new Point(276, 105);
            checkBox22.Name = "checkBox22";
            checkBox22.RightToLeft = RightToLeft.No;
            checkBox22.Size = new Size(76, 58);
            checkBox22.TabIndex = 31;
            checkBox22.Text = "↹ TAB";
            checkBox22.UseVisualStyleBackColor = false;
            checkBox22.CheckedChanged += checkBox22_CheckedChanged;
            // 
            // checkBox23
            // 
            checkBox23.Appearance = Appearance.Button;
            checkBox23.BackColor = Color.White;
            checkBox23.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox23.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox23.FlatAppearance.BorderSize = 4;
            checkBox23.FlatStyle = FlatStyle.Flat;
            checkBox23.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox23.ForeColor = Color.White;
            checkBox23.Location = new Point(276, 169);
            checkBox23.Name = "checkBox23";
            checkBox23.RightToLeft = RightToLeft.No;
            checkBox23.Size = new Size(76, 58);
            checkBox23.TabIndex = 32;
            checkBox23.Text = "↹ TAB";
            checkBox23.UseVisualStyleBackColor = false;
            checkBox23.CheckedChanged += checkBox23_CheckedChanged;
            // 
            // checkBox24
            // 
            checkBox24.Appearance = Appearance.Button;
            checkBox24.BackColor = Color.White;
            checkBox24.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox24.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox24.FlatAppearance.BorderSize = 4;
            checkBox24.FlatStyle = FlatStyle.Flat;
            checkBox24.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox24.ForeColor = Color.White;
            checkBox24.Location = new Point(276, 233);
            checkBox24.Name = "checkBox24";
            checkBox24.RightToLeft = RightToLeft.No;
            checkBox24.Size = new Size(76, 58);
            checkBox24.TabIndex = 33;
            checkBox24.Text = "↹ TAB";
            checkBox24.UseVisualStyleBackColor = false;
            checkBox24.CheckedChanged += checkBox24_CheckedChanged;
            // 
            // checkBox25
            // 
            checkBox25.Appearance = Appearance.Button;
            checkBox25.BackColor = Color.White;
            checkBox25.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox25.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox25.FlatAppearance.BorderSize = 4;
            checkBox25.FlatStyle = FlatStyle.Flat;
            checkBox25.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox25.ForeColor = Color.White;
            checkBox25.Location = new Point(276, 297);
            checkBox25.Name = "checkBox25";
            checkBox25.RightToLeft = RightToLeft.No;
            checkBox25.Size = new Size(76, 58);
            checkBox25.TabIndex = 34;
            checkBox25.Text = "↹ TAB";
            checkBox25.UseVisualStyleBackColor = false;
            checkBox25.CheckedChanged += checkBox25_CheckedChanged;
            // 
            // checkBox26
            // 
            checkBox26.Appearance = Appearance.Button;
            checkBox26.BackColor = Color.White;
            checkBox26.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox26.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox26.FlatAppearance.BorderSize = 4;
            checkBox26.FlatStyle = FlatStyle.Flat;
            checkBox26.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox26.ForeColor = Color.White;
            checkBox26.Location = new Point(276, 361);
            checkBox26.Name = "checkBox26";
            checkBox26.RightToLeft = RightToLeft.No;
            checkBox26.Size = new Size(76, 58);
            checkBox26.TabIndex = 35;
            checkBox26.Text = "↹ TAB";
            checkBox26.UseVisualStyleBackColor = false;
            checkBox26.CheckedChanged += checkBox26_CheckedChanged;
            // 
            // checkBox27
            // 
            checkBox27.Appearance = Appearance.Button;
            checkBox27.BackColor = Color.White;
            checkBox27.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox27.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox27.FlatAppearance.BorderSize = 4;
            checkBox27.FlatStyle = FlatStyle.Flat;
            checkBox27.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox27.ForeColor = Color.White;
            checkBox27.Location = new Point(276, 426);
            checkBox27.Name = "checkBox27";
            checkBox27.RightToLeft = RightToLeft.No;
            checkBox27.Size = new Size(76, 58);
            checkBox27.TabIndex = 36;
            checkBox27.Text = "↹ TAB";
            checkBox27.UseVisualStyleBackColor = false;
            checkBox27.CheckedChanged += checkBox27_CheckedChanged;
            // 
            // checkBox28
            // 
            checkBox28.Appearance = Appearance.Button;
            checkBox28.BackColor = Color.White;
            checkBox28.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox28.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox28.FlatAppearance.BorderSize = 4;
            checkBox28.FlatStyle = FlatStyle.Flat;
            checkBox28.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox28.ForeColor = Color.White;
            checkBox28.Location = new Point(276, 491);
            checkBox28.Name = "checkBox28";
            checkBox28.RightToLeft = RightToLeft.No;
            checkBox28.Size = new Size(76, 58);
            checkBox28.TabIndex = 37;
            checkBox28.Text = "↹ TAB";
            checkBox28.UseVisualStyleBackColor = false;
            checkBox28.CheckedChanged += checkBox28_CheckedChanged;
            // 
            // checkBox29
            // 
            checkBox29.Appearance = Appearance.Button;
            checkBox29.BackColor = Color.White;
            checkBox29.CheckAlign = ContentAlignment.MiddleCenter;
            checkBox29.FlatAppearance.BorderColor = Color.AliceBlue;
            checkBox29.FlatAppearance.BorderSize = 4;
            checkBox29.FlatStyle = FlatStyle.Flat;
            checkBox29.Font = new Font("Franklin Gothic Medium", 10.2F, FontStyle.Regular, GraphicsUnit.Point, 204);
            checkBox29.ForeColor = Color.White;
            checkBox29.Location = new Point(276, 555);
            checkBox29.Name = "checkBox29";
            checkBox29.RightToLeft = RightToLeft.No;
            checkBox29.Size = new Size(76, 58);
            checkBox29.TabIndex = 38;
            checkBox29.Text = "↹ TAB";
            checkBox29.UseVisualStyleBackColor = false;
            checkBox29.CheckedChanged += checkBox29_CheckedChanged;
            // 
            // button1
            // 
            button1.BackgroundImage = (Image)resources.GetObject("button1.BackgroundImage");
            button1.BackgroundImageLayout = ImageLayout.Stretch;
            button1.FlatAppearance.BorderColor = Color.White;
            button1.FlatStyle = FlatStyle.Popup;
            button1.Location = new Point(311, 0);
            button1.Name = "button1";
            button1.Size = new Size(34, 40);
            button1.TabIndex = 39;
            button1.UseVisualStyleBackColor = true;
            button1.Click += button1_Click_1;
            // 
            // button2
            // 
            button2.FlatAppearance.BorderSize = 0;
            button2.FlatStyle = FlatStyle.Flat;
            button2.Location = new Point(152, 624);
            button2.Name = "button2";
            button2.Size = new Size(51, 29);
            button2.TabIndex = 40;
            button2.Text = "Цвет";
            button2.UseVisualStyleBackColor = true;
            button2.Click += button2_Click;
            button2.Leave += button2_Leave;
            // 
            // label2
            // 
            label2.AutoSize = true;
            label2.Location = new Point(406, 508);
            label2.Name = "label2";
            label2.Size = new Size(50, 20);
            label2.TabIndex = 41;
            label2.Text = "label2";
            // 
            // infill
            // 
            AutoScaleDimensions = new SizeF(8F, 20F);
            AutoScaleMode = AutoScaleMode.Font;
            ClientSize = new Size(354, 660);
            Controls.Add(label2);
            Controls.Add(button2);
            Controls.Add(button1);
            Controls.Add(checkBox29);
            Controls.Add(checkBox28);
            Controls.Add(checkBox27);
            Controls.Add(checkBox26);
            Controls.Add(checkBox25);
            Controls.Add(checkBox24);
            Controls.Add(checkBox23);
            Controls.Add(checkBox22);
            Controls.Add(checkBox13);
            Controls.Add(label1);
            Controls.Add(checkBox21);
            Controls.Add(checkBox20);
            Controls.Add(checkBox19);
            Controls.Add(checkBox18);
            Controls.Add(checkBox17);
            Controls.Add(checkBox16);
            Controls.Add(checkBox15);
            Controls.Add(checkBox14);
            Controls.Add(textBox2);
            Controls.Add(checkBox12);
            Controls.Add(checkBox9);
            Controls.Add(checkBox6);
            Controls.Add(textBox9);
            Controls.Add(checkBox5);
            Controls.Add(checkBox10);
            Controls.Add(textBox8);
            Controls.Add(checkBox11);
            Controls.Add(textBox6);
            Controls.Add(textBox7);
            Controls.Add(textBox3);
            Controls.Add(checkBox7);
            Controls.Add(checkBox4);
            Controls.Add(textBox5);
            Controls.Add(checkBox8);
            Controls.Add(textBox4);
            Controls.Add(checkBox3);
            Controls.Add(checkBox2);
            Controls.Add(textBox1);
            Controls.Add(checkBox1);
            Controls.Add(menuStrip1);
            FormBorderStyle = FormBorderStyle.FixedSingle;
            Icon = (Icon)resources.GetObject("$this.Icon");
            MainMenuStrip = menuStrip1;
            Margin = new Padding(3, 4, 3, 4);
            MaximizeBox = false;
            Name = "infill";
            Opacity = 0.94D;
            SizeGripStyle = SizeGripStyle.Hide;
            Text = "заполнитель | Ctrl+Alt+V";
            menuStrip1.ResumeLayout(false);
            menuStrip1.PerformLayout();
            ResumeLayout(false);
            PerformLayout();
        }



        #endregion

        private System.Windows.Forms.CheckBox checkBox1;
        private System.Windows.Forms.TextBox textBox1;
        private System.Windows.Forms.CheckBox checkBox2;
        private System.Windows.Forms.CheckBox checkBox3;
        private System.Windows.Forms.CheckBox checkBox4;
        private System.Windows.Forms.TextBox textBox2;
        private System.Windows.Forms.CheckBox checkBox5;
        private System.Windows.Forms.TextBox textBox3;
        private System.Windows.Forms.CheckBox checkBox6;
        private System.Windows.Forms.TextBox textBox6;
        private System.Windows.Forms.CheckBox checkBox7;
        private System.Windows.Forms.TextBox textBox5;
        private System.Windows.Forms.CheckBox checkBox8;
        private System.Windows.Forms.TextBox textBox4;
        private System.Windows.Forms.CheckBox checkBox9;
        private System.Windows.Forms.TextBox textBox9;
        private System.Windows.Forms.CheckBox checkBox10;
        private System.Windows.Forms.TextBox textBox8;
        private System.Windows.Forms.CheckBox checkBox11;
        private System.Windows.Forms.TextBox textBox7;
        private System.Windows.Forms.CheckBox checkBox12;
        private System.Windows.Forms.MenuStrip menuStrip1;
        private System.Windows.Forms.ToolStripMenuItem File;
        private System.Windows.Forms.ToolStripComboBox Profiles;
        private System.Windows.Forms.CheckBox checkBox14;
        private System.Windows.Forms.ToolStripMenuItem loadToolStripMenuItem;
        private System.Windows.Forms.ToolStripMenuItem saveAsToolStripMenuItem;
        private System.Windows.Forms.ToolStripComboBox Hotkeys;
        private System.Windows.Forms.ToolStripMenuItem createProfileToolStripMenuItem;
        private System.Windows.Forms.ToolStripMenuItem deleteProfileToolStripMenuItem;
        private System.Windows.Forms.CheckBox checkBox15;
        private System.Windows.Forms.CheckBox checkBox16;
        private System.Windows.Forms.CheckBox checkBox17;
        private System.Windows.Forms.CheckBox checkBox18;
        private System.Windows.Forms.CheckBox checkBox19;
        private System.Windows.Forms.CheckBox checkBox20;
        private System.Windows.Forms.CheckBox checkBox21;
        private ToolStripMenuItem toolStripMenuItem1;
        private ToolStripSeparator toolStripMenuItem3;
        private Label label1;
        private ToolStripSeparator fileToolStripMenuItem;
        private ToolStripMenuItem aboutToolStripMenuItem;
        private CheckBox checkBox13;
        private CheckBox checkBox22;
        private CheckBox checkBox23;
        private CheckBox checkBox24;
        private CheckBox checkBox25;
        private CheckBox checkBox26;
        private CheckBox checkBox27;
        private CheckBox checkBox28;
        private CheckBox checkBox29;
        private Button button1;
        private Button button2;
        private Label label2;
    }
}

Ссылки на скачивание
Русская версия
.NET Framework (868KB)

заполнитель.exe

SHA256 Hash:

96C09C4A73A1C6DB13D289C2B212E26F7F48FE80A2D6B5E8864DD2AE922AF8A3

Хеш-суммы в два клика

Portable (138MB)

заполнитель.exe

SHA256 Hash:

8296E871ACC082682FFA6F8D4C1B7D1C6881AE174CD8C526B221157A6DCC7AE9

Хеш-суммы в два клика

English version
.NET Framework (868KB)

infill.exe

SHA256 Hash:

41622C6AA267562CA56F331A6A8BF37EB09664C6775518F4C9A106A31023B1D7

Checksum in two clicks

Portable (138MB)

infill.exe

SHA256 Hash:

49BAA7D4AA288DD349CF94D1C79F5AF6AE7A68629D5078832FA3CD49801C7FB7

Checksum in two clicks


GitVerse: https://gitverse.ru/aremys/infill


P.S. полгода назад я выкладывал похожий проект typewriter, который можно считать первой и немного сыроватой версией "заполнителя". "Машинистка" хоть и во многом проще - зато с ней удобнее работать над многострочными вставками и вводит она по клику мыши, а не по хоткею. Я думал над совмещением обеих программ в одной, но в итоге решил отказаться от этой идеи.

Для пользователей Linux - есть версия typewriter на C++, так же с открытым кодом и бесплатным скачиванием. Портировать infill я пока не собираюсь; если есть желание - можете помочь с этим, все исходники открыты.

И да, конечно же, я знаю про KeePass - бесплатный кросс-платформенный менеджер паролей. Можете пользоваться им, если находите его более удобным.

С наступающим 2025!

Комментарии (0)