mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-03 19:54:13 +13:00
Added font selection to input box
This commit is contained in:
parent
54d4633f0f
commit
60016ecd9f
3 changed files with 72 additions and 22 deletions
|
@ -38,12 +38,17 @@ private void InitializeComponent()
|
||||||
this.cbUnderline = new System.Windows.Forms.CheckBox();
|
this.cbUnderline = new System.Windows.Forms.CheckBox();
|
||||||
this.btnOK = new System.Windows.Forms.Button();
|
this.btnOK = new System.Windows.Forms.Button();
|
||||||
this.btnCancel = new System.Windows.Forms.Button();
|
this.btnCancel = new System.Windows.Forms.Button();
|
||||||
|
this.lblFont = new System.Windows.Forms.Label();
|
||||||
|
this.cbFonts = new System.Windows.Forms.ComboBox();
|
||||||
this.flpProperties.SuspendLayout();
|
this.flpProperties.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.nudTextSize)).BeginInit();
|
((System.ComponentModel.ISupportInitialize)(this.nudTextSize)).BeginInit();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
// txtInput
|
// txtInput
|
||||||
//
|
//
|
||||||
|
this.txtInput.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.txtInput.Location = new System.Drawing.Point(8, 40);
|
this.txtInput.Location = new System.Drawing.Point(8, 40);
|
||||||
this.txtInput.Multiline = true;
|
this.txtInput.Multiline = true;
|
||||||
this.txtInput.Name = "txtInput";
|
this.txtInput.Name = "txtInput";
|
||||||
|
@ -55,23 +60,24 @@ private void InitializeComponent()
|
||||||
//
|
//
|
||||||
this.btnTextColor.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
this.btnTextColor.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||||
this.btnTextColor.Color = System.Drawing.Color.Empty;
|
this.btnTextColor.Color = System.Drawing.Color.Empty;
|
||||||
this.btnTextColor.Location = new System.Drawing.Point(204, 3);
|
this.btnTextColor.Location = new System.Drawing.Point(319, 3);
|
||||||
this.btnTextColor.Name = "btnTextColor";
|
this.btnTextColor.Name = "btnTextColor";
|
||||||
this.btnTextColor.Size = new System.Drawing.Size(120, 24);
|
this.btnTextColor.Size = new System.Drawing.Size(24, 24);
|
||||||
this.btnTextColor.TabIndex = 1;
|
this.btnTextColor.TabIndex = 1;
|
||||||
this.btnTextColor.Text = "Text color";
|
|
||||||
this.btnTextColor.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
this.btnTextColor.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
this.btnTextColor.UseVisualStyleBackColor = true;
|
this.btnTextColor.UseVisualStyleBackColor = true;
|
||||||
this.btnTextColor.ColorChanged += new ShareX.HelpersLib.ColorButton.ColorChangedEventHandler(this.btnTextColor_ColorChanged);
|
this.btnTextColor.ColorChanged += new ShareX.HelpersLib.ColorButton.ColorChangedEventHandler(this.btnTextColor_ColorChanged);
|
||||||
//
|
//
|
||||||
// flpProperties
|
// flpProperties
|
||||||
//
|
//
|
||||||
|
this.flpProperties.Controls.Add(this.lblFont);
|
||||||
|
this.flpProperties.Controls.Add(this.cbFonts);
|
||||||
this.flpProperties.Controls.Add(this.lblTextSize);
|
this.flpProperties.Controls.Add(this.lblTextSize);
|
||||||
this.flpProperties.Controls.Add(this.nudTextSize);
|
this.flpProperties.Controls.Add(this.nudTextSize);
|
||||||
|
this.flpProperties.Controls.Add(this.btnTextColor);
|
||||||
this.flpProperties.Controls.Add(this.cbBold);
|
this.flpProperties.Controls.Add(this.cbBold);
|
||||||
this.flpProperties.Controls.Add(this.cbItalic);
|
this.flpProperties.Controls.Add(this.cbItalic);
|
||||||
this.flpProperties.Controls.Add(this.cbUnderline);
|
this.flpProperties.Controls.Add(this.cbUnderline);
|
||||||
this.flpProperties.Controls.Add(this.btnTextColor);
|
|
||||||
this.flpProperties.Location = new System.Drawing.Point(8, 5);
|
this.flpProperties.Location = new System.Drawing.Point(8, 5);
|
||||||
this.flpProperties.Name = "flpProperties";
|
this.flpProperties.Name = "flpProperties";
|
||||||
this.flpProperties.Size = new System.Drawing.Size(472, 32);
|
this.flpProperties.Size = new System.Drawing.Size(472, 32);
|
||||||
|
@ -81,17 +87,17 @@ private void InitializeComponent()
|
||||||
//
|
//
|
||||||
this.lblTextSize.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
this.lblTextSize.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||||
this.lblTextSize.AutoSize = true;
|
this.lblTextSize.AutoSize = true;
|
||||||
this.lblTextSize.Location = new System.Drawing.Point(0, 8);
|
this.lblTextSize.Location = new System.Drawing.Point(227, 8);
|
||||||
this.lblTextSize.Margin = new System.Windows.Forms.Padding(0);
|
this.lblTextSize.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
|
||||||
this.lblTextSize.Name = "lblTextSize";
|
this.lblTextSize.Name = "lblTextSize";
|
||||||
this.lblTextSize.Size = new System.Drawing.Size(52, 13);
|
this.lblTextSize.Size = new System.Drawing.Size(30, 13);
|
||||||
this.lblTextSize.TabIndex = 2;
|
this.lblTextSize.TabIndex = 2;
|
||||||
this.lblTextSize.Text = "Text size:";
|
this.lblTextSize.Text = "Size:";
|
||||||
//
|
//
|
||||||
// nudTextSize
|
// nudTextSize
|
||||||
//
|
//
|
||||||
this.nudTextSize.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
this.nudTextSize.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||||
this.nudTextSize.Location = new System.Drawing.Point(55, 5);
|
this.nudTextSize.Location = new System.Drawing.Point(260, 5);
|
||||||
this.nudTextSize.Minimum = new decimal(new int[] {
|
this.nudTextSize.Minimum = new decimal(new int[] {
|
||||||
5,
|
5,
|
||||||
0,
|
0,
|
||||||
|
@ -112,7 +118,7 @@ private void InitializeComponent()
|
||||||
//
|
//
|
||||||
this.cbBold.Appearance = System.Windows.Forms.Appearance.Button;
|
this.cbBold.Appearance = System.Windows.Forms.Appearance.Button;
|
||||||
this.cbBold.Image = global::ShareX.ScreenCaptureLib.Properties.Resources.edit_bold;
|
this.cbBold.Image = global::ShareX.ScreenCaptureLib.Properties.Resources.edit_bold;
|
||||||
this.cbBold.Location = new System.Drawing.Point(114, 3);
|
this.cbBold.Location = new System.Drawing.Point(349, 3);
|
||||||
this.cbBold.Name = "cbBold";
|
this.cbBold.Name = "cbBold";
|
||||||
this.cbBold.Size = new System.Drawing.Size(24, 24);
|
this.cbBold.Size = new System.Drawing.Size(24, 24);
|
||||||
this.cbBold.TabIndex = 4;
|
this.cbBold.TabIndex = 4;
|
||||||
|
@ -123,7 +129,7 @@ private void InitializeComponent()
|
||||||
//
|
//
|
||||||
this.cbItalic.Appearance = System.Windows.Forms.Appearance.Button;
|
this.cbItalic.Appearance = System.Windows.Forms.Appearance.Button;
|
||||||
this.cbItalic.Image = global::ShareX.ScreenCaptureLib.Properties.Resources.edit_italic;
|
this.cbItalic.Image = global::ShareX.ScreenCaptureLib.Properties.Resources.edit_italic;
|
||||||
this.cbItalic.Location = new System.Drawing.Point(144, 3);
|
this.cbItalic.Location = new System.Drawing.Point(379, 3);
|
||||||
this.cbItalic.Name = "cbItalic";
|
this.cbItalic.Name = "cbItalic";
|
||||||
this.cbItalic.Size = new System.Drawing.Size(24, 24);
|
this.cbItalic.Size = new System.Drawing.Size(24, 24);
|
||||||
this.cbItalic.TabIndex = 5;
|
this.cbItalic.TabIndex = 5;
|
||||||
|
@ -134,7 +140,7 @@ private void InitializeComponent()
|
||||||
//
|
//
|
||||||
this.cbUnderline.Appearance = System.Windows.Forms.Appearance.Button;
|
this.cbUnderline.Appearance = System.Windows.Forms.Appearance.Button;
|
||||||
this.cbUnderline.Image = global::ShareX.ScreenCaptureLib.Properties.Resources.edit_underline;
|
this.cbUnderline.Image = global::ShareX.ScreenCaptureLib.Properties.Resources.edit_underline;
|
||||||
this.cbUnderline.Location = new System.Drawing.Point(174, 3);
|
this.cbUnderline.Location = new System.Drawing.Point(409, 3);
|
||||||
this.cbUnderline.Name = "cbUnderline";
|
this.cbUnderline.Name = "cbUnderline";
|
||||||
this.cbUnderline.Size = new System.Drawing.Size(24, 24);
|
this.cbUnderline.Size = new System.Drawing.Size(24, 24);
|
||||||
this.cbUnderline.TabIndex = 6;
|
this.cbUnderline.TabIndex = 6;
|
||||||
|
@ -143,6 +149,7 @@ private void InitializeComponent()
|
||||||
//
|
//
|
||||||
// btnOK
|
// btnOK
|
||||||
//
|
//
|
||||||
|
this.btnOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.btnOK.Location = new System.Drawing.Point(264, 328);
|
this.btnOK.Location = new System.Drawing.Point(264, 328);
|
||||||
this.btnOK.Name = "btnOK";
|
this.btnOK.Name = "btnOK";
|
||||||
this.btnOK.Size = new System.Drawing.Size(104, 24);
|
this.btnOK.Size = new System.Drawing.Size(104, 24);
|
||||||
|
@ -153,6 +160,7 @@ private void InitializeComponent()
|
||||||
//
|
//
|
||||||
// btnCancel
|
// btnCancel
|
||||||
//
|
//
|
||||||
|
this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.btnCancel.Location = new System.Drawing.Point(376, 328);
|
this.btnCancel.Location = new System.Drawing.Point(376, 328);
|
||||||
this.btnCancel.Name = "btnCancel";
|
this.btnCancel.Name = "btnCancel";
|
||||||
this.btnCancel.Size = new System.Drawing.Size(104, 24);
|
this.btnCancel.Size = new System.Drawing.Size(104, 24);
|
||||||
|
@ -161,6 +169,28 @@ private void InitializeComponent()
|
||||||
this.btnCancel.UseVisualStyleBackColor = true;
|
this.btnCancel.UseVisualStyleBackColor = true;
|
||||||
this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
|
this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
|
||||||
//
|
//
|
||||||
|
// lblFont
|
||||||
|
//
|
||||||
|
this.lblFont.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||||
|
this.lblFont.AutoSize = true;
|
||||||
|
this.lblFont.Location = new System.Drawing.Point(3, 8);
|
||||||
|
this.lblFont.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
|
||||||
|
this.lblFont.Name = "lblFont";
|
||||||
|
this.lblFont.Size = new System.Drawing.Size(31, 13);
|
||||||
|
this.lblFont.TabIndex = 7;
|
||||||
|
this.lblFont.Text = "Font:";
|
||||||
|
//
|
||||||
|
// cbFonts
|
||||||
|
//
|
||||||
|
this.cbFonts.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||||
|
this.cbFonts.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
this.cbFonts.FormattingEnabled = true;
|
||||||
|
this.cbFonts.Location = new System.Drawing.Point(37, 4);
|
||||||
|
this.cbFonts.Name = "cbFonts";
|
||||||
|
this.cbFonts.Size = new System.Drawing.Size(184, 21);
|
||||||
|
this.cbFonts.TabIndex = 8;
|
||||||
|
this.cbFonts.SelectedIndexChanged += new System.EventHandler(this.cbFonts_SelectedIndexChanged);
|
||||||
|
//
|
||||||
// TextDrawingInputBox
|
// TextDrawingInputBox
|
||||||
//
|
//
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
@ -197,5 +227,7 @@ private void InitializeComponent()
|
||||||
private System.Windows.Forms.CheckBox cbBold;
|
private System.Windows.Forms.CheckBox cbBold;
|
||||||
private System.Windows.Forms.CheckBox cbItalic;
|
private System.Windows.Forms.CheckBox cbItalic;
|
||||||
private System.Windows.Forms.CheckBox cbUnderline;
|
private System.Windows.Forms.CheckBox cbUnderline;
|
||||||
|
private System.Windows.Forms.Label lblFont;
|
||||||
|
private System.Windows.Forms.ComboBox cbFonts;
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -62,8 +62,24 @@ public TextDrawingInputBox(string inputText, string textFont, Color textColor, i
|
||||||
|
|
||||||
UpdateInputBox();
|
UpdateInputBox();
|
||||||
|
|
||||||
btnTextColor.Color = TextColor;
|
cbFonts.Items.AddRange(FontFamily.Families.Select(x => x.Name).ToArray());
|
||||||
|
|
||||||
|
if (cbFonts.Items.Contains(textFont))
|
||||||
|
{
|
||||||
|
cbFonts.SelectedItem = textFont;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
cbFonts.SelectedItem = "Arial";
|
||||||
|
}
|
||||||
|
|
||||||
nudTextSize.Value = TextSize;
|
nudTextSize.Value = TextSize;
|
||||||
|
btnTextColor.Color = TextColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void cbFonts_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
UpdateInputBox();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void nudTextSize_ValueChanged(object sender, EventArgs e)
|
private void nudTextSize_ValueChanged(object sender, EventArgs e)
|
||||||
|
@ -71,6 +87,11 @@ private void nudTextSize_ValueChanged(object sender, EventArgs e)
|
||||||
UpdateInputBox();
|
UpdateInputBox();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void btnTextColor_ColorChanged(Color color)
|
||||||
|
{
|
||||||
|
UpdateInputBox();
|
||||||
|
}
|
||||||
|
|
||||||
private void cbBold_CheckedChanged(object sender, EventArgs e)
|
private void cbBold_CheckedChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
UpdateInputBox();
|
UpdateInputBox();
|
||||||
|
@ -86,11 +107,6 @@ private void cbUnderline_CheckedChanged(object sender, EventArgs e)
|
||||||
UpdateInputBox();
|
UpdateInputBox();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void btnTextColor_ColorChanged(Color color)
|
|
||||||
{
|
|
||||||
UpdateInputBox();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void UpdateInputBox()
|
private void UpdateInputBox()
|
||||||
{
|
{
|
||||||
FontStyle fontStyle = FontStyle.Regular;
|
FontStyle fontStyle = FontStyle.Regular;
|
||||||
|
@ -110,7 +126,7 @@ private void UpdateInputBox()
|
||||||
fontStyle |= FontStyle.Underline;
|
fontStyle |= FontStyle.Underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
txtInput.Font = new Font(TextFont, (float)nudTextSize.Value, fontStyle);
|
txtInput.Font = new Font(cbFonts.SelectedItem as string, (float)nudTextSize.Value, fontStyle);
|
||||||
|
|
||||||
txtInput.ForeColor = btnTextColor.Color;
|
txtInput.ForeColor = btnTextColor.Color;
|
||||||
}
|
}
|
||||||
|
@ -118,8 +134,9 @@ private void UpdateInputBox()
|
||||||
private void btnOK_Click(object sender, EventArgs e)
|
private void btnOK_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
InputText = txtInput.Text;
|
InputText = txtInput.Text;
|
||||||
TextColor = btnTextColor.Color;
|
TextFont = cbFonts.SelectedItem as string;
|
||||||
TextSize = (int)nudTextSize.Value;
|
TextSize = (int)nudTextSize.Value;
|
||||||
|
TextColor = btnTextColor.Color;
|
||||||
TextBold = cbBold.Checked;
|
TextBold = cbBold.Checked;
|
||||||
TextItalic = cbItalic.Checked;
|
TextItalic = cbItalic.Checked;
|
||||||
TextUnderline = cbUnderline.Checked;
|
TextUnderline = cbUnderline.Checked;
|
||||||
|
|
|
@ -40,7 +40,7 @@ public class TextDrawingShape : BaseDrawingShape
|
||||||
public override ShapeType ShapeType { get; } = ShapeType.DrawingText;
|
public override ShapeType ShapeType { get; } = ShapeType.DrawingText;
|
||||||
|
|
||||||
public string Text { get; set; }
|
public string Text { get; set; }
|
||||||
public string TextFont { get; set; } = "Verdana";
|
public string TextFont { get; set; } = "Arial";
|
||||||
public int TextSize { get; set; } = 18;
|
public int TextSize { get; set; } = 18;
|
||||||
public bool TextBold { get; set; }
|
public bool TextBold { get; set; }
|
||||||
public bool TextItalic { get; set; }
|
public bool TextItalic { get; set; }
|
||||||
|
@ -102,8 +102,9 @@ private void UpdateText()
|
||||||
if (inputBox.ShowDialog() == DialogResult.OK)
|
if (inputBox.ShowDialog() == DialogResult.OK)
|
||||||
{
|
{
|
||||||
Text = inputBox.InputText;
|
Text = inputBox.InputText;
|
||||||
BorderColor = inputBox.TextColor;
|
TextFont = inputBox.TextFont;
|
||||||
TextSize = inputBox.TextSize;
|
TextSize = inputBox.TextSize;
|
||||||
|
BorderColor = inputBox.TextColor;
|
||||||
TextBold = inputBox.TextBold;
|
TextBold = inputBox.TextBold;
|
||||||
TextItalic = inputBox.TextItalic;
|
TextItalic = inputBox.TextItalic;
|
||||||
TextUnderline = inputBox.TextUnderline;
|
TextUnderline = inputBox.TextUnderline;
|
||||||
|
|
Loading…
Reference in a new issue