mirror of
https://github.com/ShareX/ShareX.git
synced 2024-09-30 01:07:21 +13:00
Merge pull request #5863 from tajetaje/master
Add Default Printer Override
This commit is contained in:
commit
47df74e689
5 changed files with 126 additions and 1 deletions
|
@ -94,6 +94,25 @@ public void ShowPreview()
|
|||
}
|
||||
}
|
||||
|
||||
public void TryDefaultPrinterOverride()
|
||||
{
|
||||
string windowsDefault = printDocument.PrinterSettings.PrinterName;
|
||||
if (Settings.DefaultPrinterOverride.Length > 0)
|
||||
{
|
||||
printDocument.PrinterSettings.PrinterName = Settings.DefaultPrinterOverride;
|
||||
}
|
||||
if (!printDocument.PrinterSettings.IsValid)
|
||||
{
|
||||
printDocument.PrinterSettings.PrinterName = windowsDefault;
|
||||
using (MyMessageBox msgbox = new MyMessageBox("Printer \'" + Settings.DefaultPrinterOverride + "\' does not exist. Continuing with windows default printer, you can set the default printer override in application settings",
|
||||
"Specified Printer not Valid",
|
||||
MessageBoxButtons.OK))
|
||||
{
|
||||
msgbox.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public bool Print()
|
||||
{
|
||||
if (Printable && (!Settings.ShowPrintDialog || printDialog.ShowDialog() == DialogResult.OK))
|
||||
|
@ -102,7 +121,7 @@ public bool Print()
|
|||
{
|
||||
printTextHelper.Font = Settings.TextFont;
|
||||
}
|
||||
|
||||
TryDefaultPrinterOverride();
|
||||
printDocument.Print();
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -38,6 +38,8 @@ public class PrintSettings
|
|||
public XmlFont TextFont { get; set; }
|
||||
public bool ShowPrintDialog { get; set; }
|
||||
|
||||
public string DefaultPrinterOverride { get; set; }
|
||||
|
||||
public PrintSettings()
|
||||
{
|
||||
Margin = 5;
|
||||
|
@ -47,6 +49,7 @@ public PrintSettings()
|
|||
CenterImage = false;
|
||||
TextFont = new XmlFont("Arial", 10);
|
||||
ShowPrintDialog = true;
|
||||
DefaultPrinterOverride = "";
|
||||
}
|
||||
}
|
||||
}
|
30
ShareX/Forms/ApplicationSettingsForm.Designer.cs
generated
30
ShareX/Forms/ApplicationSettingsForm.Designer.cs
generated
|
@ -142,6 +142,8 @@ private void InitializeComponent()
|
|||
this.cbRecentTasksShowInMainWindow = new System.Windows.Forms.CheckBox();
|
||||
this.cbRecentTasksSave = new System.Windows.Forms.CheckBox();
|
||||
this.tpPrint = new System.Windows.Forms.TabPage();
|
||||
this.lblDefaultPrinterOverride = new System.Windows.Forms.Label();
|
||||
this.txtDefaultPrinterOverride = new System.Windows.Forms.TextBox();
|
||||
this.cbPrintDontShowWindowsDialog = new System.Windows.Forms.CheckBox();
|
||||
this.cbDontShowPrintSettingDialog = new System.Windows.Forms.CheckBox();
|
||||
this.btnShowImagePrintSettings = new System.Windows.Forms.Button();
|
||||
|
@ -322,6 +324,7 @@ private void InitializeComponent()
|
|||
//
|
||||
// cmsLanguages
|
||||
//
|
||||
this.cmsLanguages.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.cmsLanguages.Name = "cmsLanguages";
|
||||
resources.ApplyResources(this.cmsLanguages, "cmsLanguages");
|
||||
//
|
||||
|
@ -904,6 +907,10 @@ private void InitializeComponent()
|
|||
this.lvSecondaryFileUploaders.View = System.Windows.Forms.View.Details;
|
||||
this.lvSecondaryFileUploaders.MouseUp += new System.Windows.Forms.MouseEventHandler(this.lvSecondaryUploaders_MouseUp);
|
||||
//
|
||||
// chSecondaryFileUploaders
|
||||
//
|
||||
resources.ApplyResources(this.chSecondaryFileUploaders, "chSecondaryFileUploaders");
|
||||
//
|
||||
// gbSecondaryImageUploaders
|
||||
//
|
||||
this.gbSecondaryImageUploaders.Controls.Add(this.lvSecondaryImageUploaders);
|
||||
|
@ -929,6 +936,10 @@ private void InitializeComponent()
|
|||
this.lvSecondaryImageUploaders.View = System.Windows.Forms.View.Details;
|
||||
this.lvSecondaryImageUploaders.MouseUp += new System.Windows.Forms.MouseEventHandler(this.lvSecondaryUploaders_MouseUp);
|
||||
//
|
||||
// chSecondaryImageUploaders
|
||||
//
|
||||
resources.ApplyResources(this.chSecondaryImageUploaders, "chSecondaryImageUploaders");
|
||||
//
|
||||
// gbSecondaryTextUploaders
|
||||
//
|
||||
this.gbSecondaryTextUploaders.Controls.Add(this.lvSecondaryTextUploaders);
|
||||
|
@ -954,6 +965,10 @@ private void InitializeComponent()
|
|||
this.lvSecondaryTextUploaders.View = System.Windows.Forms.View.Details;
|
||||
this.lvSecondaryTextUploaders.MouseUp += new System.Windows.Forms.MouseEventHandler(this.lvSecondaryUploaders_MouseUp);
|
||||
//
|
||||
// chSecondaryTextUploaders
|
||||
//
|
||||
resources.ApplyResources(this.chSecondaryTextUploaders, "chSecondaryTextUploaders");
|
||||
//
|
||||
// cbUseSecondaryUploaders
|
||||
//
|
||||
resources.ApplyResources(this.cbUseSecondaryUploaders, "cbUseSecondaryUploaders");
|
||||
|
@ -1071,12 +1086,25 @@ private void InitializeComponent()
|
|||
// tpPrint
|
||||
//
|
||||
this.tpPrint.BackColor = System.Drawing.SystemColors.Window;
|
||||
this.tpPrint.Controls.Add(this.lblDefaultPrinterOverride);
|
||||
this.tpPrint.Controls.Add(this.txtDefaultPrinterOverride);
|
||||
this.tpPrint.Controls.Add(this.cbPrintDontShowWindowsDialog);
|
||||
this.tpPrint.Controls.Add(this.cbDontShowPrintSettingDialog);
|
||||
this.tpPrint.Controls.Add(this.btnShowImagePrintSettings);
|
||||
resources.ApplyResources(this.tpPrint, "tpPrint");
|
||||
this.tpPrint.Name = "tpPrint";
|
||||
//
|
||||
// lblDefaultPrinterOverride
|
||||
//
|
||||
resources.ApplyResources(this.lblDefaultPrinterOverride, "lblDefaultPrinterOverride");
|
||||
this.lblDefaultPrinterOverride.Name = "lblDefaultPrinterOverride";
|
||||
//
|
||||
// txtDefaultPrinterOverride
|
||||
//
|
||||
resources.ApplyResources(this.txtDefaultPrinterOverride, "txtDefaultPrinterOverride");
|
||||
this.txtDefaultPrinterOverride.Name = "txtDefaultPrinterOverride";
|
||||
this.txtDefaultPrinterOverride.TextChanged += new System.EventHandler(this.txtDefaultPrinterOverride_TextChanged);
|
||||
//
|
||||
// cbPrintDontShowWindowsDialog
|
||||
//
|
||||
resources.ApplyResources(this.cbPrintDontShowWindowsDialog, "cbPrintDontShowWindowsDialog");
|
||||
|
@ -1395,5 +1423,7 @@ private void InitializeComponent()
|
|||
private System.Windows.Forms.NumericUpDown nudCleanupKeepFileCount;
|
||||
private System.Windows.Forms.Label lblCleanupKeepFileCount;
|
||||
private System.Windows.Forms.CheckBox cbAutomaticallyCleanupLogFiles;
|
||||
private System.Windows.Forms.Label lblDefaultPrinterOverride;
|
||||
private System.Windows.Forms.TextBox txtDefaultPrinterOverride;
|
||||
}
|
||||
}
|
|
@ -219,6 +219,8 @@ private void UpdateControls()
|
|||
// Print
|
||||
cbDontShowPrintSettingDialog.Checked = Program.Settings.DontShowPrintSettingsDialog;
|
||||
cbPrintDontShowWindowsDialog.Checked = !Program.Settings.PrintSettings.ShowPrintDialog;
|
||||
txtDefaultPrinterOverride.Text = Program.Settings.PrintSettings.DefaultPrinterOverride;
|
||||
UpdatePrintControls();
|
||||
|
||||
// Advanced
|
||||
pgSettings.SelectedObject = Program.Settings;
|
||||
|
@ -994,9 +996,15 @@ private void cbRecentTasksTrayMenuMostRecentFirst_CheckedChanged(object sender,
|
|||
|
||||
#region Print
|
||||
|
||||
private void UpdatePrintControls()
|
||||
{
|
||||
txtDefaultPrinterOverride.Enabled = !Program.Settings.PrintSettings.ShowPrintDialog;
|
||||
}
|
||||
|
||||
private void cbDontShowPrintSettingDialog_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Program.Settings.DontShowPrintSettingsDialog = cbDontShowPrintSettingDialog.Checked;
|
||||
UpdatePrintControls();
|
||||
}
|
||||
|
||||
private void btnShowImagePrintSettings_Click(object sender, EventArgs e)
|
||||
|
@ -1006,11 +1014,19 @@ private void btnShowImagePrintSettings_Click(object sender, EventArgs e)
|
|||
{
|
||||
printForm.ShowDialog();
|
||||
}
|
||||
UpdatePrintControls();
|
||||
}
|
||||
|
||||
private void cbPrintDontShowWindowsDialog_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Program.Settings.PrintSettings.ShowPrintDialog = !cbPrintDontShowWindowsDialog.Checked;
|
||||
UpdatePrintControls();
|
||||
}
|
||||
|
||||
private void txtDefaultPrinterOverride_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
Program.Settings.PrintSettings.DefaultPrinterOverride = txtDefaultPrinterOverride.Text;
|
||||
UpdatePrintControls();
|
||||
}
|
||||
|
||||
#endregion Print
|
||||
|
|
|
@ -2959,6 +2959,63 @@
|
|||
<data name=">>tpHistory.ZOrder" xml:space="preserve">
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name="lblDefaultPrinterOverride.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="lblDefaultPrinterOverride.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="lblDefaultPrinterOverride.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>17, 115</value>
|
||||
</data>
|
||||
<data name="lblDefaultPrinterOverride.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 0, 4, 0</value>
|
||||
</data>
|
||||
<data name="lblDefaultPrinterOverride.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>358, 17</value>
|
||||
</data>
|
||||
<data name="lblDefaultPrinterOverride.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="lblDefaultPrinterOverride.Text" xml:space="preserve">
|
||||
<value>Default Printer Override (uses windows default if empty)</value>
|
||||
</data>
|
||||
<data name=">>lblDefaultPrinterOverride.Name" xml:space="preserve">
|
||||
<value>lblDefaultPrinterOverride</value>
|
||||
</data>
|
||||
<data name=">>lblDefaultPrinterOverride.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>lblDefaultPrinterOverride.Parent" xml:space="preserve">
|
||||
<value>tpPrint</value>
|
||||
</data>
|
||||
<data name=">>lblDefaultPrinterOverride.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="txtDefaultPrinterOverride.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>21, 135</value>
|
||||
</data>
|
||||
<data name="txtDefaultPrinterOverride.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 4, 4, 4</value>
|
||||
</data>
|
||||
<data name="txtDefaultPrinterOverride.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>509, 22</value>
|
||||
</data>
|
||||
<data name="txtDefaultPrinterOverride.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name=">>txtDefaultPrinterOverride.Name" xml:space="preserve">
|
||||
<value>txtDefaultPrinterOverride</value>
|
||||
</data>
|
||||
<data name=">>txtDefaultPrinterOverride.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>txtDefaultPrinterOverride.Parent" xml:space="preserve">
|
||||
<value>tpPrint</value>
|
||||
</data>
|
||||
<data name=">>txtDefaultPrinterOverride.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="cbPrintDontShowWindowsDialog.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
|
|
Loading…
Reference in a new issue