Пример #1
0
 private void importInitialPopulationButton_Click(object sender, EventArgs e)
 {
     if (importPopulationDialog.ShowDialog() == DialogResult.OK && ValidFolderSelected)
     {
         foreach (var file in importPopulationDialog.FileNames)
         {
             var newIndividual = new PolygonIndividual(PolygonXmlHandler.Load(file));
             displayPopulation.Add(newIndividual);
         }
         ResolveDisplayedPopulationUniformity();
         UpdatePopulationPictures();
     }
 }
Пример #2
0
        private void replaceShapeMenuItem_Click(object sender, EventArgs e)
        {
            var image = GetImageFromSender(sender);

            if (openShapesDialog.ShowDialog() == DialogResult.OK && ValidFolderSelected)
            {
                Polygon           replacementPolygon    = PolygonXmlHandler.Load(openShapesDialog.FileName);
                PolygonIndividual replacementIndividual = new PolygonIndividual(replacementPolygon);
                ReplaceIndividual(image, replacementIndividual);
                OverwritePopulationPictures();
                Invalidate();
            }
        }
Пример #3
0
        private void saveSelectionButton_Click(object sender, EventArgs e)
        {
            IEnumerable <Polygon> selected = SelectedImages().Select(image => image.SavedPolygon);

            foreach (var selectedPolygon in selected)
            {
                PolygonXmlHandler.SaveToDefaultFolder(selectedPolygon);
            }
            if (selected.Count() > 0)
            {
                savedShapesNotification.ShowBalloonTip(2000);
            }
        }
Пример #4
0
        private void loadShapeButton_Click(object sender, EventArgs e)
        {
            if (loadShapeDialog.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            if (ValidFolderSelected)
            {
                Polygon loadedPolygon;
                try
                {
                    loadedPolygon = PolygonXmlHandler.Load(loadShapeDialog.FileName);
                    loadedPolygon.ShiftUpperLeftCorner(new Point(0, 0));
                }
                catch (Exception ex)
                {
                    //loaded file isn't in proper state, prompt to delete
                    if (!DeleteFileConfirmation.Confirm(loadShapeDialog.FileName, true))
                    {
                        return;
                    }

                    System.IO.File.Delete(loadShapeDialog.FileName);
                    { deleteSuccessfulNotification.ShowBalloonTip(2000, "Deletion successful", "Faulty file has been deleted.", ToolTipIcon.Info); }
                    return;
                }

                loadedPolygon.ShiftCenter(new Point((int)(polygonBox.Width / 2), (int)(polygonBox.Height / 2)));
                userInput    = loadedPolygon.Vertices;
                ShapeName    = loadedPolygon.Name;
                PolygonColor = loadedPolygon.OutlineColor;

                UpdateDescriptors();
                polygonBox.Invalidate();
            }
            else
            {
                loadShapeDialog.ShowDialog();
            }
        }
Пример #5
0
        private void importShapesButton_Click(object sender, EventArgs e)
        {
            if (openShapesDialog.ShowDialog() == DialogResult.OK && ValidFolderSelected)
            {
                if (population == null)
                {
                    population = new Population <PolygonIndividual, IPolygonGene>();
                }

                foreach (var file in openShapesDialog.FileNames)
                {
                    var newIndividual = new PolygonIndividual(PolygonXmlHandler.Load(file));
                    population.Add(newIndividual);
                    picturesLayoutPanel.Controls.Add(BuildLabeledImage(newIndividual));
                }

                if (sortPopulationCheckbox.Checked)
                {
                    OverwritePopulationPictures();
                }
            }
        }