Files
PDFPatcher/App/Functions/DocumentOption/FontCharSubstitutionForm.cs
T
2022-04-21 21:43:45 +08:00

66 lines
2.6 KiB
C#

using System;
using System.Drawing;
using System.Windows.Forms;
using PDFPatcher.Common;
namespace PDFPatcher.Functions
{
sealed partial class FontCharSubstitutionForm : Form
{
readonly FontSubstitution _Substitution;
public FontCharSubstitutionForm() {
InitializeComponent();
}
public FontCharSubstitutionForm(FontSubstitution substitution) : this() {
this.SetIcon(Properties.Resources.Replace);
MinimumSize = Size;
MaximumSize = new Size(999, Size.Height);
_Substitution = substitution;
_OriginalCharactersBox.Text = substitution.OriginalCharacters;
_SubstituteCharactersBox.Text = substitution.SubstituteCharacters;
_ChineseCaseBox.Select(substitution.TraditionalChineseConversion == -1 ? 2 : substitution.TraditionalChineseConversion);
_LetterWidthBox.Select(substitution.AlphabeticWidthConversion == -1 ? 2 : substitution.AlphabeticWidthConversion);
_NumericWidthBox.Select(substitution.NumericWidthConversion == -1 ? 2 : substitution.NumericWidthConversion);
_PunctuationWidthBox.Select(substitution.PunctuationWidthConversion == -1 ? 2 : substitution.PunctuationWidthConversion);
}
void _OriginalCharactersBox_TextChanged(object sender, EventArgs e) {
_Substitution.OriginalCharacters = _OriginalCharactersBox.Text;
}
void _SubstituteCharactersBox_TextChanged(object sender, EventArgs e) {
_Substitution.SubstituteCharacters = _SubstituteCharactersBox.Text;
}
void _SubstituteCharactersBox_Enter(object sender, EventArgs e) {
_SubstituteCharactersBox.Select(
_OriginalCharactersBox.SelectionStart,
_OriginalCharactersBox.SelectionLength
);
}
void _OriginalCharactersBox_SelectionChanged(object sender, EventArgs e) {
_SubstituteCharactersBox.Select(
_OriginalCharactersBox.SelectionStart,
_OriginalCharactersBox.SelectionLength
);
}
void _ChineseCaseBox_SelectedIndexChanged(object sender, EventArgs e) {
_Substitution.TraditionalChineseConversion = _ChineseCaseBox.SelectedIndex == 2 ? -1 : _ChineseCaseBox.SelectedIndex;
}
void _NumericWidthBox_SelectedIndexChanged(object sender, EventArgs e) {
_Substitution.NumericWidthConversion = _NumericWidthBox.SelectedIndex == 2 ? -1 : _NumericWidthBox.SelectedIndex;
}
void _LetterWidthBox_SelectedIndexChanged(object sender, EventArgs e) {
_Substitution.AlphabeticWidthConversion = _LetterWidthBox.SelectedIndex == 2 ? -1 : _LetterWidthBox.SelectedIndex;
}
void _PunctuationWidthBox_SelectedIndexChanged(object sender, EventArgs e) {
_Substitution.PunctuationWidthConversion = _PunctuationWidthBox.SelectedIndex == 2 ? -1 : _PunctuationWidthBox.SelectedIndex;
}
}
}