PurplePen.PrintPunches.marginChange_Click C# (CSharp) Method

marginChange_Click() private method

private marginChange_Click ( object sender, EventArgs e ) : void
sender object
e EventArgs
return void
        private void marginChange_Click(object sender, EventArgs e)
        {
            controller.HandleExceptions(
                delegate {
                    UpdateSettings();
                    Margins originalMargins = settings.PageSettings.Margins;

                    if (RegionInfo.CurrentRegion.IsMetric)     // work around bug
                        settings.PageSettings.Margins = PrinterUnitConvert.Convert(settings.PageSettings.Margins, PrinterUnit.Display, PrinterUnit.TenthsOfAMillimeter);

                    pageSetupDialog.PageSettings = settings.PageSettings;
                    pageSetupDialog.PrinterSettings = settings.PageSettings.PrinterSettings;

                    DialogResult result = pageSetupDialog.ShowDialog(this);
                    if (result == DialogResult.OK) {
                        settings.PageSettings = pageSetupDialog.PageSettings;
                        UpdateDialog();
                    }
                    else {
                        settings.PageSettings.Margins = originalMargins;
                    }

                }
            );
        }