private async Task ReplaceImage() { await subcomponent.ReplaceImage(index); GTF gtf = subcomponent.GetSpritesheet(index); colorGtfs = new ColorChannelGTF(gtf); _bitmapSource = BitmapSource.Create( gtf.Width, gtf.Height, 96, 96, PixelFormats.Bgra32, null, gtf.BitmapDataPtr, 4 * gtf.Stride * gtf.Height, 4 * gtf.Stride); ClearColorBitmaps(); foreach (UISpriteModel spriteModel in Sprites) { spriteModel.InvalidateBrushes(); } ForceRender(); subcomponent.PauModel.ForceRender(); }
public UISpriteSheetModel(UISubcomponentModel subcomponent, string name, int index, IGetFileName getFileName) : base(subcomponent, name) { this.index = index; GTF gtf = subcomponent.GetSpritesheet(index); colorGtfs = new ColorChannelGTF(gtf); _bitmapSource = BitmapSource.Create( gtf.Width, gtf.Height, 96, 96, PixelFormats.Bgra32, null, gtf.BitmapDataPtr, 4 * gtf.Stride * gtf.Height, 4 * gtf.Stride); _bitmapSource.Freeze(); _getfileName = getFileName; Sprites = new List <UISpriteModel>(); Rectangles = new ObservableCollection <UISpriteSheetRectangleModel>(); }