示例#1
0
        public override DMIState AddNewState(string name)
        {
            RawDmiState raw = RawDmiState.Default(name);

            DmiEXImage[,] images = new DmiEXImage[1, 1];
            images[0, 0]         = (DmiEXImage)CreateEmptyImage();

            DmiEXState dmiState = new DmiEXState(this, images, raw);

            return(AddState(dmiState));
        }
示例#2
0
        public object Clone()
        {
            RawDmiState raw = ToRaw();

            DmiEXImage[,] images = new DmiEXImage[(int)raw.Dirs.Value, raw.Frames.Value];
            for (int dir = 0; dir < (int)raw.Dirs.Value; dir++)
            {
                for (int frame = 0; frame < raw.Frames.Value; frame++)
                {
                    images[dir, frame] = (DmiEXImage)_images[dir, frame].Clone();
                }
            }
            return(new DmiEXState(Parent, images, raw));
        }
示例#3
0
        public static DmiEXState FromDmiState(DmiEX parent, DMIState dmiState)
        {
            RawDmiState raw = dmiState.ToRaw();

            DmiEXImage[,] images = new DmiEXImage[(int)raw.Dirs.Value, raw.Frames.Value];
            for (int dir = 0; dir < (int)raw.Dirs.Value; dir++)
            {
                for (int frame = 0; frame < raw.Frames.Value; frame++)
                {
                    images[dir, frame] = new DmiEXImage(dmiState.GetBitmap(dir, frame));
                }
            }

            return(new DmiEXState(parent, images, raw));
        }
 public InvalidStateException(string message, RawDmiState rawState)
     : base(message)
 {
     this.rawState = rawState;
 }
示例#5
0
 public DmiEXState(Dmi parent, string id, Bitmap bitmap) : this(parent, new DmiEXImage[, ] {
     { new DmiEXImage(bitmap) }
 }, RawDmiState.Default(id))
 {
 }
示例#6
0
 public DmiEXState(Dmi parent, DmiEXImage[,] images, RawDmiState rawDmiState) : base(parent, null, rawDmiState)
 {
     _images = images;
 }