private void loaderWorker_InitFile(object sender, System.ComponentModel.DoWorkEventArgs e) { try { _properties = new Files.FileProperties((string)e.Argument); _header = Factories.Header.Abstract.HeaderFactory.GetFactory(_properties).Create(_properties.FilePath); _navi = Factories.NavigationContainer.Abstract.NavigationContainerFactory.GetFactory(_properties).Create(_properties, _header); _navi.Report += (s, pe) => ProgressReporter(pe.Percent); _navi.CancelJob += (s, ce) => ce.Cancel = _navi.Cancelled; _navi.ReportName += (s, tne) => ThreadHelper.ThreadSafeUpdateToolStrip<ToolStripStatusLabel>(_form.StatusLabel, lbl => { lbl.Text = tne.Name; }); _cancellableAction = _navi; _navi.GetNavigation(); } catch (OperationCanceledException) { e.Cancel = true; return; } _file = FileFactory.GetFactory(_properties).Create(_properties, _header, _navi); _ruler = new Behaviors.Ruler.RulerProxy(_file); _saver = SaverFactory.GetFactory(_properties).Create(_file); _searcher = Factories.NavigationSearcher.Abstract.PointFinderFactory.GetFactory(_file.Properties).Create(_file); _analyzer = new Behaviors.Analyzing.SampleAnalyzer(); _pointSelector = new Behaviors.PointSelector.PointSelector(); _areaSelector = new Behaviors.AreaSelector.AreaSelector(_file); _areaAligningWrapper = new Behaviors.AreaSelector.AreaSelectorsAlignerContainer(); if (_pointSharer != null) { _pointSharer.DataReceived -= (s, gde) => CrossAppDataReceivedCallback(s, gde); _pointSharer.Dispose(); } _pointSharer = Factories.PointSharer.Abstract.PointSharerFactory.GetFactory(_file.Properties).Create(_file, new Behaviors.CrossAppCommunication.UdpExchange(_settings.MulticastEp, Behaviors.CrossAppCommunication.CommunicationType.Multicast), System.Diagnostics.Process.GetCurrentProcess().Id); _pointSharer.DataReceived += (s, gde) => CrossAppDataReceivedCallback(s, gde); }
private void InitializeWindow(bool showProgress = false) { _file = null; _drawer = null; _pointSelector = null; _areaSelector = null; _tiles = null; ThreadHelper.ThreadSafeUpdate<PictureBox>(_form.Canvas).Image = null; ThreadHelper.ThreadSafeUpdate<HScrollBar>(_form.Horizontal).Visible = false; ThreadHelper.ThreadSafeUpdate<HScrollBar>(_form.Horizontal).SmallChange = 1; ThreadHelper.ThreadSafeUpdate<HScrollBar>(_form.Horizontal).LargeChange = 1; ThreadHelper.ThreadSafeUpdate<VScrollBar>(_form.Vertical).Visible = false; ThreadHelper.ThreadSafeUpdate<VScrollBar>(_form.Vertical).SmallChange = 1; ThreadHelper.ThreadSafeUpdate<VScrollBar>(_form.Vertical).LargeChange = 1; ThreadHelper.ThreadSafeUpdate<TrackBar>(_form.FilterTrackBar).SmallChange = 1; ThreadHelper.ThreadSafeUpdate<TrackBar>(_form.FilterTrackBar).LargeChange = 1; ThreadHelper.ThreadSafeUpdate<TrackBar>(_form.FilterTrackBar).Minimum = -16; ThreadHelper.ThreadSafeUpdate<TrackBar>(_form.FilterTrackBar).Maximum = 16; ThreadHelper.ThreadSafeUpdate<TrackBar>(_form.FilterTrackBar).Value = 0; ThreadHelper.ThreadSafeUpdate<DataGridView>(_form.NavigationDgv).AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; ThreadHelper.ThreadSafeUpdate<Label>(_form.ScaleLabel).Text = string.Format("Масштаб: {0}%", _scaler.ScaleFactor * 100); ThreadHelper.ThreadSafeUpdate<Button>(_form.AlignBtn).Enabled = false; ThreadHelper.ThreadSafeUpdate<System.Windows.Forms.DataVisualization.Charting.Chart>(_form.HistogramChart) .Series[0].Points.Clear(); InitProgressControls(showProgress); AddToolTips(_form); _chart.InitChart(_form.HistogramChart); }