public ClearTraceCommand(MessageTraceCollection collection)
 {
     _collection  = collection;
     Image        = Resources.Delete32x32;
     Text         = CultureService.Instance.GetString(CultureText.menuItem_Clear_Text);
     ShortcutKeys = Keys.Alt | Keys.C;
 }
        public AdapterService(
            MessageTraceCollection tracer,
            ProjectParameters paramters,
            IAdapterStatistics adapterStat,
            MessageStatistics messageStat,
            Storage project,

            ToolTableCollection toolTables)
        {
            _messageTrace = tracer;
            _adapterStat  = adapterStat;
            _messageStat  = messageStat;
            _paramters    = paramters;
            _project      = project;

            _toolTables = toolTables;
            _txQueue    = new SafeQueue <CommonCanMessage>();
        }
示例#3
0
        public Presenter(ITraceGridView gridView, MessageTraceCollection collection, ProjectParameters parameters)
        {
            gridView.Source = collection;

            gridView.ContextMenuStrip.Items.AddRange(
                new ToolStripItem[]
            {
                new Commands.ClearTraceCommand(collection),
                new Commands.AutoSizeAllCommand(gridView),
                new Commands.AutoScrolllCommand(gridView),
                new Commands.EnabledCommand(parameters),
                new Commands.FullscreenCommand(gridView),
            });


            EventAggregator.Instance.Subscribe <StorageAppEvent>(e1 =>
            {
                switch (e1.ChangingType)
                {
                case FileChangingType.Loading:
                    {
                        gridView.DefaultLayout();
                        gridView.Source.Clear();
                        break;
                    }

                case FileChangingType.LoadComplete:
                    {
                        gridView.GridLayout = e1.Storage.TraceGridLayout;

                        gridView.TimestampFormat = e1.Storage.Parameters.TimestampFormat;

                        if (e1.Storage.Parameters.TraceEnabled)
                        {
                            gridView.BackgroundText = CultureService.Instance.GetString(CultureText.text_TRACE);
                        }
                        else
                        {
                            gridView.BackgroundText  = CultureService.Instance.GetString(CultureText.text_TRACE);
                            gridView.BackgroundText += " ";
                            gridView.BackgroundText += CultureService.Instance.GetString(CultureText.text_DISABLED);
                        }

                        break;
                    }

                case FileChangingType.Saving:
                    {
                        /*GridLayout hozza létre a default értéket és nem a project File.. ezért
                         * mentés előtt átt kell adni a projectnek a layout listákat.*/
                        gridView.GridLayout.CopyTo(e1.Storage.TraceGridLayout);
                        break;
                    }

                case FileChangingType.ContentChanged:
                    {
                        /*Célzott frssítések*/
                        if (e1.Details.DataObjects == DataObjects.ParameterProperty)
                        {
                            if (e1.Details.PropertyDescriptor.Name == PropertyPlus.GetPropertyName(() => e1.Storage.Parameters.TimestampFormat))
                            {
                                gridView.TimestampFormat = e1.Storage.Parameters.TimestampFormat;
                            }

                            else if (e1.Details.PropertyDescriptor.Name == PropertyPlus.GetPropertyName(() => e1.Storage.Parameters.TraceEnabled))
                            {
                                if (e1.Storage.Parameters.TraceEnabled)
                                {
                                    gridView.BackgroundText = CultureService.Instance.GetString(CultureText.text_TRACE);
                                }
                                else
                                {
                                    gridView.BackgroundText  = CultureService.Instance.GetString(CultureText.text_TRACE);
                                    gridView.BackgroundText += " ";
                                    gridView.BackgroundText += CultureService.Instance.GetString(CultureText.text_DISABLED);
                                }
                            }
                        }
                        break;
                    }
                }
            });

            EventAggregator.Instance.Subscribe <PlayAppEvent>(e =>
            {
                /*Periodikus frsstés itt indul.*/
                gridView.Start();
                gridView.RefreshRate = Settings.Default.dataGridViewTraceRefreshRateMs;
            });

            EventAggregator.Instance.Subscribe <StopAppEvent>(e =>
            {
                /*Periodikus frsstés itt leáll.*/
                gridView.Stop();
            });
        }