Beispiel #1
0
        public ScopeView()
        {
            InitializeComponent();
            DrawAll();

            this.Controls.Add(pictureBox1);
            pictureBox1.Controls.Add(pictureBox2);
            pictureBox2.Controls.Add(pictureBox3);

            pictureBox1.Dock = DockStyle.Fill;
            pictureBox2.Dock = DockStyle.Fill;
            pictureBox3.Dock = DockStyle.Fill;


            pictureBox1.BackColor = Color.Transparent;
            pictureBox2.BackColor = Color.Transparent;
            pictureBox3.BackColor = Color.Transparent;

            pictureBox1.Paint += PictureBox1_Paint;
            pictureBox2.Paint += PictureBox2_Paint;
            pictureBox3.Paint += PictureBox3_Paint;

            pictureBox1.BringToFront();
            pictureBox2.BringToFront();
            pictureBox3.BringToFront();

            menu = new ContextMenuStrip();

            AddMenuItem("Add marker", () => dataSource.Cursors.Add(dragMarker = new Cursor()
            {
                X = -Settings.HorOffset
            }));
            AddMenuItem("Zoom", () => Zoom_Click());

            AddMenuItem("Horizontal scale/Draw/None", () => Settings.DrawScalePosHorizontal   = DrawPosHorizontal.None);
            AddMenuItem("Horizontal scale/Draw/Top", () => Settings.DrawScalePosHorizontal    = DrawPosHorizontal.Top);
            AddMenuItem("Horizontal scale/Draw/Bottom", () => Settings.DrawScalePosHorizontal = DrawPosHorizontal.Bottom);
            AddMenuItem("Horizontal scale/Fit", () => FitHorizontalInXDivs(Settings.HorizontalDivisions));
            AddMenuItem("Horizontal scale/Day", () => AutoScaleHorizontalTime(TimeSpan.FromDays(1)));
            AddMenuItem("Horizontal scale/Hour", () => AutoScaleHorizontalTime(TimeSpan.FromHours(1)));

            AddMenuItem("Vertical scale/Draw/None", () => Settings.DrawScalePosVertical    = DrawPosVertical.None);
            AddMenuItem("Vertical scale/Draw/Left", () => Settings.DrawScalePosVertical    = DrawPosVertical.Left);
            AddMenuItem("Vertical scale/Draw/Right", () => Settings.DrawScalePosVertical   = DrawPosVertical.Right);
            AddMenuItem("Vertical scale/Zero position/Top", () => Settings.ZeroPosition    = VerticalZeroPosition.Top);
            AddMenuItem("Vertical scale/Zero position/Middle", () => Settings.ZeroPosition = VerticalZeroPosition.Middle);
            AddMenuItem("Vertical scale/Zero position/Bottom", () => Settings.ZeroPosition = VerticalZeroPosition.Bottom);
            AddMenuItem("Vertical scale/Auto", () => AutoScaleTracesKeepZero());

            AddMenuItem("Clear", () => dataSource.Clear());
            AddMenuItem("Screenshot/To clipboard", () => Screenshot_Click(true));
            AddMenuItem("Screenshot/To file", () => Screenshot_Click(false));
        }