示例#1
0
            public void AddNewEntry(Textures textures, GMTextureItem entry)
            {
                if (Items.Contains(entry))
                    return;

                Dirty = true;

                Items.Add(entry);
                if (entry.TexturePageID == -1 && !entry._EmptyBorder && AllowCrop)
                    entry.Crop();

                long key = textures.GetHashKeyForEntry(entry);

                if (HashedItems.TryGetValue(key, out List<GMTextureItem> list))
                    list.Add(entry);
                else
                    HashedItems[key] = new List<GMTextureItem>() { entry };
            }
示例#2
0
 public void RemoveEntry(Textures textures, GMTextureItem entry)
 {
     Items.Remove(entry);
     if (HashedItems.TryGetValue(textures.GetHashKeyForEntry(entry), out List<GMTextureItem> list))
         list.Remove(entry);
 }