Example #1
0
        /// <summary>
        /// Constructor which sets location of Form1 window and initializes AdditionalViews class
        /// </summary>
        public AdditionalViewsForm(
            AdditionalViews additionalViews,
            Form otherForm)
        {
            singleton = this;

            this.additionalViews = additionalViews;
            additionalViews.form = this;

            InitializeComponent();

            SetFormPosition(otherForm);

            if (additionalViews.mapsEmpty ||
                MT.renderingInProgress)
            {
                RenderButtonsEnabled(false);
                ExportDataButtonsEnabled(false);
            }
            else
            {
                RenderButtonsEnabled(true);
                ExportDataButtonsEnabled(true);
            }

            panAndZoomControls = new PanAndZoomSupport[MapsTabControl.TabCount];

            for (int i = 0; i < MapsTabControl.TabCount; i++)
            {
                bool condition(Control c) => c.Name.Contains("PictureBox") && c.GetType() == typeof(PictureBox);

                PictureBox pictureBox = FindAllControls(condition, MapsTabControl.TabPages [i])[0] as PictureBox;
                pictureBox.MouseWheel += new MouseEventHandler(pictureBox_MouseWheel);
                pictureBox.SizeMode    = PictureBoxSizeMode.Zoom;

                panAndZoomControls[i] = new PanAndZoomSupport(pictureBox, null, SetWindowTitleSuffix)
                {
                    Button = MouseButtons.Right
                };
            }

            newImageAvailable = new bool[MapsTabControl.TabCount];

            for (int i = 0; i < newImageAvailable.Length; i++)
            {
                newImageAvailable[i] = true;
            }

            KeyPreview = true;
        }
Example #2
0
        private void AdditionalViewsButton_Click(object sender, EventArgs e)
        {
            if (additionalViews.form != null)
            {
                additionalViews.form.Activate();
                return; // only one instance of Form1 can exist at the time
            }

            AdditionalViewsForm additionalViewsForm = new AdditionalViewsForm(additionalViews, this);

            additionalViewsForm.mapSavedCallback = (filename) =>
            {
                Notification(@"File succesfully saved", $"Image file \"{filename}\" succesfully saved.", 30000);
            };
            additionalViewsForm.Show();
        }
Example #3
0
        private void AdditionalViewsForm_FormClosed(object sender, FormClosedEventArgs e)
        {
            singleton = null;

            additionalViews.form = null; // removes itself from associated AdditionalViews
        }