Exemple #1
0
        public void AddOrUpdateCharSet(CharSet Set)
        {
            var existingSet = charSets.Where(cs => cs.Set.Id == Set.Id).FirstOrDefault();

            if (existingSet != null)
            {
                existingSet.Set = Set.Clone();
                GenerateImage(existingSet);
                helperTip.SetToolTip(existingSet.ImageView, $"{existingSet.Set.SetType} {existingSet.Set.Name}\r\nSort order {existingSet.Set.Sort}\r\nRight click for more options");
            }
            else
            {
                var newSet = new ListedCharSet
                {
                    Set       = Set.Clone(),
                    ImageView = new PixelPerfectPictureBox()
                };

                newSet.ImageView.Size         = new Size(ItemSize, ItemSize);
                newSet.ImageView.DoubleClick += ImageView_DoubleClick;
                newSet.ImageView.MouseClick  += ImageView_MouseClick;
                newSet.ImageView.MouseMove   += ImageView_MouseMove;

                GenerateImage(newSet);
                charSets.Add(newSet);
                viewPanel.Controls.Add(newSet.ImageView);
                helperTip.SetToolTip(newSet.ImageView, $"{newSet.Set.SetType} {newSet.Set.Name}\r\nSort order {newSet.Set.Sort}\r\nRight click for more options");
            }
        }
Exemple #2
0
        private void MainForm_DragEnter(object sender, DragEventArgs e)
        {
            if (e.AllowedEffect == DragDropEffects.Copy && e.Data.GetDataPresent("CHARSET_1"))
            {
                CharSet set = e.Data.GetData("CHARSET_1") as CharSet;

                if (set.SetType == CharSetType.Sprite)
                {
                    e.Effect = DragDropEffects.None;
                    return;
                }

                elementOnDrag            = new MapElement();
                elementOnDrag.OverColor  = Color.FromArgb(128, Color.LightBlue);
                elementOnDrag.PixelScale = pixelScale;
                elementOnDrag.Set        = set.Clone();

                if (set.Name.ToUpper() == "HANGAR" || set.Name.ToUpper() == "MOTHERSHIP")
                {
                    elementOnDrag.ExtraByte = 2;
                }

                this.Controls.Add(elementOnDrag);
                elementOnDrag.BringToFront();
                var coords = bgImage.PointToClient(new Point(e.X, e.Y));
                PlaceElement(elementOnDrag, coords.X, coords.Y);
                e.Effect = DragDropEffects.Copy;
            }
            else
            {
                e.Effect = DragDropEffects.None;
            }
        }
        public void UpdateCharSet(CharSet TheCharSet)
        {
            var index = animSets.FindIndex(o => o.Id == TheCharSet.Id);

            if (index > -1)
            {
                animSets.RemoveAt(index);
                animSets.Insert(index, TheCharSet.Clone());

                var img    = animImages[index];
                var newImg = TheCharSet.GenerateImage();

                if (currentIndex == index)
                {
                    animPic.Image = newImg;
                }

                img.Dispose();
                animImages.RemoveAt(index);
                animImages.Insert(index, newImg);
            }
        }
 public void AddCharSet(CharSet NewSet)
 {
     animSets.Add(NewSet.Clone());
     animImages.Add(NewSet.GenerateImage());
 }