示例#1
0
        public ScreenControl(OSDScreen screen, IItemCaptionProvider captionProvider)
        {
            this.screen          = screen ?? throw new ArgumentNullException(nameof(screen));
            this.captionProvider = captionProvider;

            InitializeComponent();

            layoutControl.ScreenControl = this;
            layoutControl.Items         = screen.Items;
            layoutControl.Visualizer    = new Visualizer(captionProvider);

            cbReducedView.CheckedChanged     += (s, e) => SetViewSize();
            cbUseNameCaptions.CheckedChanged += (s, e) => SetCaptionMode();

            btnClearAll.Click += (s, e) => { foreach (var i in screen.Items)
                                             {
                                                 i.Enabled.Value = 0;
                                             }
            };

            btnCopy.Click += (s, e) => { if (screen.Items.Any())
                                         {
                                             ScreenToCopy = screen;
                                         }
            };

            btnPaste.Click += (s, e) => { if (screen.Items.Any() && ScreenToCopy != null)
                                          {
                                              ScreenToCopy.CopyTo(screen);
                                          }
            };

            SetViewSize();
        }
示例#2
0
        public ScreenControl(OSDScreen screen)
        {
            this.screen = screen ?? throw new ArgumentNullException(nameof(screen));

            InitializeComponent();

            layoutControl.ScreenControl = this;
            layoutControl.Items         = screen.Items;

            cbReducedView.CheckedChanged += (s, e) => SetViewSize();

            btnClearAll.Click += (s, e) => { foreach (var i in screen.Items)
                                             {
                                                 i.Enabled.Value = 0;
                                             }
            };

            btnCopy.Click += (s, e) => { if (screen.Items.Any())
                                         {
                                             ScreenToCopy = screen;
                                         }
            };

            btnPaste.Click += (s, e) => { if (screen.Items.Any())
                                          {
                                              ScreenToCopy.CopyTo(screen);
                                          }
            };

            SetViewSize();
        }
示例#3
0
        private void AddScreen(OSDScreen screen)
        {
            var screenControl = new ScreenControl(screen, CaptionProvider);

            screenControl.Dock = DockStyle.Fill;

            var tab = new TabPage($"   {screen.Name}   ");

            tab.Controls.Add(screenControl);

            tabControl.TabPages.Add(tab);
        }