public override bool EditComponent(ITypeDescriptorContext context, object component, IServiceProvider provider, IWin32Window owner) { if (provider != null) { var editorState = (IWorkflowEditorState)provider.GetService(typeof(IWorkflowEditorState)); if (editorState != null) { if (editorState.WorkflowRunning) { throw new InvalidOperationException(Resources.WorkflowRunning_Error); } var capture = (FP3001)component; using (var editorForm = new FP3001CalibrationEditorForm(capture, capture.Generate(), provider)) { var crop = capture.AutoCrop; capture.AutoCrop = false; try { editorForm.ShowDialog(owner); } catch (TargetInvocationException ex) { throw ex.InnerException; } finally { capture.AutoCrop = crop; } } } } return(false); }
private void setupRegionsButton_Click(object sender, EventArgs e) { CloseDevice(); using (var ledCalibration = new LedCalibrationEditor(configuration)) using (var calibrationDialog = new FP3001CalibrationEditorForm(instance, photometry.Process(instance.Generate(ledCalibration.Commands)), serviceProvider)) { calibrationDialog.AddCalibrationControl(ledCalibration); calibrationDialog.Text = setupRegionsButton.Text; calibrationDialog.Icon = Icon; calibrationDialog.ShowDialog(this); configuration.Regions = instance.Regions; } OpenDevice(); }
internal EditorSite(FP3001CalibrationEditorForm owner, IServiceProvider provider) { form = owner; parentProvider = provider; }