private async Task OnGetPrimaryItems(IReadOnlyList <IStorageItem> items) { foreach (StorageFile item in items) { PrimaryItems.Add(await CustomItemFactory.Create(item)); } }
private async void OnGetSecondaryItems(IReadOnlyList <IStorageItem> items) { foreach (StorageFile item in items) { SecondaryItems.Add(await CustomItemFactory.Create(item)); } }
public async Task OnGetStorageItem(IReadOnlyList <IStorageItem> items) { foreach (StorageFile item in items) { Items.Add(await CustomItemFactory.Create(item)); } }
private async Task OnGetStorageItems(IReadOnlyList <IStorageItem> items) { foreach (StorageFile item in items) { Items.Add(await CustomItemFactory.Create(item)); } listview.AllowDrop = !Items.Any(); }
private async Task OnGetStorageItems(IReadOnlyList <IStorageItem> items) { foreach (StorageFile item in items) { Items.Add(await CustomItemFactory.Create(item)); } DragMask.Visibility = Visibility.Collapsed; }
private async void OnGetStorageItem(IReadOnlyList <IStorageItem> items) { foreach (StorageFile item in items) { Items.Add(await CustomItemFactory.Create(item)); } ShowDragMask = false; }
private async Task InsertItems(DataPackageView dataview, ObservableCollection <CustomItem> target) { if (dataview.Contains(StandardDataFormats.StorageItems)) { var items = await dataview.GetStorageItemsAsync(); foreach (StorageFile item in items) { target.Add(await CustomItemFactory.Create(item)); } } }
private async void ListView_Drop(object sender, Windows.UI.Xaml.DragEventArgs e) { var dataview = e.DataView; if (dataview.Contains(StandardDataFormats.StorageItems)) { var storageItems = await dataview.GetStorageItemsAsync(); foreach (StorageFile item in storageItems) { Items.Add(await CustomItemFactory.Create(item)); } } }
/// <summary> /// Load custom animations from animation pane separated by click /// </summary> /// <returns>Queue of CustomClickItem</returns> private Queue <CustomItem> LoadCustomClickItems() { int clickNo = FirstClickNumber; Queue <CustomItem> customItems = new Queue <CustomItem>(); List <Effect> effects = slide.TimeLine.MainSequence.Cast <Effect>().ToList(); int startIdx = 0; bool hasReachedEndOfSequence = effects.Count == 0; do { List <CustomEffect> customEffects = new List <CustomEffect>(); for (int i = startIdx; i < effects.Count; i++) { Effect effect = effects.ElementAt(i); if (i > startIdx && effect.Timing.TriggerType == MsoAnimTriggerType.msoAnimTriggerOnPageClick) { startIdx = i; break; } if (i == effects.Count - 1) { hasReachedEndOfSequence = true; } bool isCustomEffect = SelfExplanationTagService.ExtractTagNo(effect.Shape.Name) == -1; if (isCustomEffect) { if (customEffects.Count == 0 && clickNo > 0) { effect.Timing.TriggerType = MsoAnimTriggerType.msoAnimTriggerOnPageClick; } customEffects.Add(new CustomEffect(effect.Shape.Name, effect.Shape.Id.ToString(), EffectToAnimationTypeConverter.GetAnimationTypeOfEffect(effect))); } } CustomItem customClickBlock = new CustomItemFactory(customEffects).GetBlock() as CustomItem; if (customClickBlock != null) { customClickBlock.ClickNo = clickNo; customItems.Enqueue(customClickBlock); } clickNo++; }while (startIdx <= effects.Count - 1 && !hasReachedEndOfSequence); return(customItems); }
public static Item GetItem(int id, short metadata) { Item item = null; if (CustomItemFactory != null) { item = CustomItemFactory.GetItem(id, metadata); } if (item != null) { return(item); } if (id == 54) { item = new ItemChest(metadata); } else if (id == 44) { item = new ItemSlab(id, metadata); } else if (id == 61) { item = new ItemFurnace(metadata); } else if (id == 63) { item = new ItemSign(metadata); } else if (id == 68) { item = new ItemSign(metadata); } else if (id == 116) { item = new ItemEnchantingTable(metadata); } else if (id == 158) { item = new ItemSlab(id, metadata); } else if (id == 256) { item = new ItemIronShovel(metadata); } else if (id == 258) { item = new ItemIronAxe(metadata); } else if (id == 259) { item = new ItemFlintAndSteel(metadata); } else if (id == 260) { item = new ItemApple(); } else if (id == 261) { item = new ItemBow(metadata); } else if (id == 263) { item = new ItemCoal(metadata); } else if (id == 267) { item = new ItemIronSword(metadata); } else if (id == 268) { item = new ItemWoodenSword(metadata); } else if (id == 269) { item = new ItemWoodenShovel(metadata); } else if (id == 270) { item = new ItemWoodenPickaxe(metadata); } else if (id == 271) { item = new ItemWoodenAxe(metadata); } else if (id == 272) { item = new ItemStoneSword(metadata); } else if (id == 273) { item = new ItemStoneShovel(metadata); } else if (id == 275) { item = new ItemStoneAxe(metadata); } else if (id == 276) { item = new ItemDiamondSword(metadata); } else if (id == 277) { item = new ItemDiamondShovel(metadata); } else if (id == 279) { item = new ItemDiamondAxe(metadata); } else if (id == 280) { item = new ItemStick(metadata); } else if (id == 283) { item = new ItemGoldSword(metadata); } else if (id == 284) { item = new ItemGoldShovel(metadata); } else if (id == 286) { item = new ItemGoldAxe(metadata); } else if (id == 290) { item = new ItemWoodenHoe(metadata); } else if (id == 291) { item = new ItemStoneHoe(metadata); } else if (id == 292) { item = new ItemIronHoe(metadata); } else if (id == 293) { item = new ItemDiamondHoe(metadata); } else if (id == 294) { item = new ItemGoldHoe(metadata); } else if (id == 297) { item = new ItemBread(); } else if (id == 298) { item = new ItemLeatherHelmet(metadata); } else if (id == 299) { item = new ItemLeatherChestplate(metadata); } else if (id == 300) { item = new ItemLeatherLeggings(metadata); } else if (id == 301) { item = new ItemLeatherBoots(metadata); } else if (id == 302) { item = new ItemChainmailHelmet(metadata); } else if (id == 303) { item = new ItemChainmailChestplate(metadata); } else if (id == 304) { item = new ItemChainmailLeggings(metadata); } else if (id == 305) { item = new ItemChainmailBoots(metadata); } else if (id == 309) { item = new ItemIronBoots(metadata); } else if (id == 308) { item = new ItemIronLeggings(metadata); } else if (id == 307) { item = new ItemIronChestplate(metadata); } else if (id == 306) { item = new ItemIronHelmet(metadata); } else if (id == 310) { item = new ItemDiamondHelmet(metadata); } else if (id == 311) { item = new ItemDiamondChestplate(metadata); } else if (id == 312) { item = new ItemDiamondLeggings(metadata); } else if (id == 313) { item = new ItemDiamondBoots(metadata); } else if (id == 314) { item = new ItemGoldHelmet(metadata); } else if (id == 315) { item = new ItemGoldChestplate(metadata); } else if (id == 316) { item = new ItemGoldLeggings(metadata); } else if (id == 317) { item = new ItemGoldBoots(metadata); } else if (id == 319) { item = new ItemRawPorkchop(metadata); } else if (id == 320) { item = new ItemCookedPorkshop(); } else if (id == 322) { item = new ItemGoldenApple(); } else if (id == 323) { item = new ItemSign(metadata); } else if (id == 324) { item = new ItemDoor(metadata); } else if (id == 325) { item = new ItemBucket(metadata); } else if (id == 332) { item = new ItemSnowball(metadata); } else if (id == 344) { item = new ItemEgg(metadata); } else if (id == 355) { item = new ItemBed(metadata); } else if (id == 357) { item = new ItemCookie(); } else if (id == 360) { item = new ItemMelonSlice(); } else if (id == 363) { item = new ItemRawBeef(); } else if (id == 364) { item = new ItemSteak(); } else if (id == 365) { item = new ItemRawChicken(); } else if (id == 366) { item = new ItemCoockedChicken(); } else if (id == 383) { item = new ItemSpawnEgg(metadata); } else if (id == 391) { item = new ItemCarrot(); } else if (id == 392) { item = new ItemPotato(); } else if (id == 393) { item = new ItemBakedPotato(); } else if (id == 400) { item = new ItemPumpkinPie(); } else if (id <= 255) { Block block = BlockFactory.GetBlockById((byte)id); if (CustomBlockItemFactory == null) { item = new ItemBlock(block, metadata); } else { item = CustomBlockItemFactory.GetBlockItem(block, metadata); } } else { item = new Item(id, metadata); } return(item); }
public static Item GetItem(short id, short metadata = 0, int count = 1) { //if (id != 0 && count == 0) return null; Item item = null; if (CustomItemFactory != null) { item = CustomItemFactory.GetItem(id, metadata, count); } if (item != null) { return(item); } if (id == 0) { item = new ItemAir(); } else if (id == 54) { item = new ItemChest(); } else if (id == 44) { item = new ItemSlab(id, metadata); } else if (id == 61) { item = new ItemFurnace(); } else if (id == 63) { item = new ItemSign(); } else if (id == 68) { item = new ItemSign(); } else if (id == 116) { item = new ItemEnchantingTable(); } else if (id == 158) { item = new ItemSlab(id, metadata); } else if (id == 182) { item = new ItemSlab(id, metadata); } else if (id == 199) { item = new ItemItemFrame(); } else if (id == 256) { item = new ItemIronShovel(); } else if (id == 257) { item = new ItemIronPickaxe(); } else if (id == 258) { item = new ItemIronAxe(); } else if (id == 259) { item = new ItemFlintAndSteel(); } else if (id == 260) { item = new ItemApple(); } else if (id == 261) { item = new ItemBow(); } else if (id == 262) { item = new ItemArrow(); } else if (id == 263) { item = new ItemCoal(); } else if (id == 267) { item = new ItemIronSword(); } else if (id == 268) { item = new ItemWoodenSword(); } else if (id == 269) { item = new ItemWoodenShovel(); } else if (id == 270) { item = new ItemWoodenPickaxe(); } else if (id == 271) { item = new ItemWoodenAxe(); } else if (id == 272) { item = new ItemStoneSword(); } else if (id == 273) { item = new ItemStoneShovel(); } else if (id == 274) { item = new ItemStonePickaxe(); } else if (id == 275) { item = new ItemStoneAxe(); } else if (id == 276) { item = new ItemDiamondSword(); } else if (id == 277) { item = new ItemDiamondShovel(); } else if (id == 278) { item = new ItemDiamondPickaxe(); } else if (id == 279) { item = new ItemDiamondAxe(); } else if (id == 280) { item = new ItemStick(); } else if (id == 283) { item = new ItemGoldSword(); } else if (id == 284) { item = new ItemGoldShovel(); } else if (id == 285) { item = new ItemGoldPickaxe(); } else if (id == 286) { item = new ItemGoldAxe(); } else if (id == 290) { item = new ItemWoodenHoe(); } else if (id == 291) { item = new ItemStoneHoe(); } else if (id == 292) { item = new ItemIronHoe(); } else if (id == 293) { item = new ItemDiamondHoe(); } else if (id == 294) { item = new ItemGoldHoe(); } else if (id == 295) { item = new ItemWheatSeeds(); } else if (id == 296) { item = new ItemWheat(); } else if (id == 297) { item = new ItemBread(); } else if (id == 298) { item = new ItemLeatherHelmet(); } else if (id == 299) { item = new ItemLeatherChestplate(); } else if (id == 300) { item = new ItemLeatherLeggings(); } else if (id == 301) { item = new ItemLeatherBoots(); } else if (id == 302) { item = new ItemChainmailHelmet(); } else if (id == 303) { item = new ItemChainmailChestplate(); } else if (id == 304) { item = new ItemChainmailLeggings(); } else if (id == 305) { item = new ItemChainmailBoots(); } else if (id == 309) { item = new ItemIronBoots(); } else if (id == 308) { item = new ItemIronLeggings(); } else if (id == 307) { item = new ItemIronChestplate(); } else if (id == 306) { item = new ItemIronHelmet(); } else if (id == 310) { item = new ItemDiamondHelmet(); } else if (id == 311) { item = new ItemDiamondChestplate(); } else if (id == 312) { item = new ItemDiamondLeggings(); } else if (id == 313) { item = new ItemDiamondBoots(); } else if (id == 314) { item = new ItemGoldHelmet(); } else if (id == 315) { item = new ItemGoldChestplate(); } else if (id == 316) { item = new ItemGoldLeggings(); } else if (id == 317) { item = new ItemGoldBoots(); } else if (id == 319) { item = new ItemRawPorkchop(); } else if (id == 320) { item = new ItemCookedPorkshop(); } else if (id == 322) { item = new ItemGoldenApple(); } else if (id == 323) { item = new ItemSign(); } else if (id == 324) { item = new ItemWoodenDoor(); } else if (id == 325) { item = new ItemBucket(metadata); } else if (id == 331) { item = new ItemRedstone(); } else if (id == 332) { item = new ItemSnowball(); } else if (id == 344) { item = new ItemEgg(); } else if (id == 345) { item = new ItemCompass(); } else if (id == 352) { item = new ItemBone(); } else if (id == 355) { item = new ItemBed(); } else if (id == 357) { item = new ItemCookie(); } else if (id == 358) { item = new ItemMap(); } else if (id == 360) { item = new ItemMelonSlice(); } else if (id == 363) { item = new ItemBeef(); } else if (id == 364) { item = new ItemCookedBeef(); } else if (id == 365) { item = new ItemRawChicken(); } else if (id == 366) { item = new ItemCookedChicken(); } else if (id == 373) { item = new ItemPotion(metadata); } else if (id == 380) { item = new ItemCauldron(); } else if (id == 383) { item = new ItemSpawnEgg(metadata); } else if (id == 391) { item = new ItemCarrot(); } else if (id == 392) { item = new ItemPotato(); } else if (id == 393) { item = new ItemBakedPotato(); } else if (id == 395) { item = new ItemEmptyMap(); } else if (id == 397) { item = new ItemMobHead(metadata); } else if (id == 400) { item = new ItemPumpkinPie(); } else if (id == 423) { item = new ItemMuttonRaw(); } else if (id == 424) { item = new ItemMuttonCooked(); } else if (id == 427) { item = new ItemSpruceDoor(); } else if (id == 428) { item = new ItemBirchDoor(); } else if (id == 429) { item = new ItemJungleDoor(); } else if (id == 430) { item = new ItemAcaciaDoor(); } else if (id == 431) { item = new ItemDarkOakDoor(); } else if (id == 444) { item = new ItemElytra(); } else if (id == 458) { item = new ItemBeetrootSeeds(); } else if (id <= 255) { Block block = BlockFactory.GetBlockById((byte)id); if (CustomBlockItemFactory == null) { item = new ItemBlock(block, metadata); } else { item = CustomBlockItemFactory.GetBlockItem(block, metadata, count); } } else { item = new Item(id, metadata, count); } // This might now be a good idea if the constructor changes these // properties for custom items. item.Metadata = metadata; item.Count = (byte)count; return(item); }
public static Item GetItem(short id, short metadata = 0, int count = 1) { Item item = null; if (CustomItemFactory != null) { item = CustomItemFactory.GetItem(id, metadata, count); } if (item != null) { return(item); } if (id == 0) { item = new ItemAir(); } else if (id == 256) { item = new ItemIronShovel(); } else if (id == 257) { item = new ItemIronPickaxe(); } else if (id == 258) { item = new ItemIronAxe(); } else if (id == 259) { item = new ItemFlintAndSteel(); } else if (id == 260) { item = new ItemApple(); } else if (id == 261) { item = new ItemBow(); } else if (id == 262) { item = new ItemArrow(); } else if (id == 263) { item = new ItemCoal(); } else if (id == 264) { item = new ItemDiamond(); } else if (id == 265) { item = new ItemIronIngot(); } else if (id == 266) { item = new ItemGoldIngot(); } else if (id == 267) { item = new ItemIronSword(); } else if (id == 268) { item = new ItemWoodenSword(); } else if (id == 269) { item = new ItemWoodenShovel(); } else if (id == 270) { item = new ItemWoodenPickaxe(); } else if (id == 271) { item = new ItemWoodenAxe(); } else if (id == 272) { item = new ItemStoneSword(); } else if (id == 273) { item = new ItemStoneShovel(); } else if (id == 274) { item = new ItemStonePickaxe(); } else if (id == 275) { item = new ItemStoneAxe(); } else if (id == 276) { item = new ItemDiamondSword(); } else if (id == 277) { item = new ItemDiamondShovel(); } else if (id == 278) { item = new ItemDiamondPickaxe(); } else if (id == 279) { item = new ItemDiamondAxe(); } else if (id == 280) { item = new ItemStick(); } else if (id == 283) { item = new ItemGoldenSword(); } else if (id == 284) { item = new ItemGoldenShovel(); } else if (id == 285) { item = new ItemGoldenPickaxe(); } else if (id == 286) { item = new ItemGoldenAxe(); } else if (id == 290) { item = new ItemWoodenHoe(); } else if (id == 291) { item = new ItemStoneHoe(); } else if (id == 292) { item = new ItemIronHoe(); } else if (id == 293) { item = new ItemDiamondHoe(); } else if (id == 294) { item = new ItemGoldenHoe(); } else if (id == 295) { item = new ItemWheatSeeds(); } else if (id == 296) { item = new ItemWheat(); } else if (id == 297) { item = new ItemBread(); } else if (id == 298) { item = new ItemLeatherHelmet(); } else if (id == 299) { item = new ItemLeatherChestplate(); } else if (id == 300) { item = new ItemLeatherLeggings(); } else if (id == 301) { item = new ItemLeatherBoots(); } else if (id == 302) { item = new ItemChainmailHelmet(); } else if (id == 303) { item = new ItemChainmailChestplate(); } else if (id == 304) { item = new ItemChainmailLeggings(); } else if (id == 305) { item = new ItemChainmailBoots(); } else if (id == 309) { item = new ItemIronBoots(); } else if (id == 308) { item = new ItemIronLeggings(); } else if (id == 307) { item = new ItemIronChestplate(); } else if (id == 306) { item = new ItemIronHelmet(); } else if (id == 310) { item = new ItemDiamondHelmet(); } else if (id == 311) { item = new ItemDiamondChestplate(); } else if (id == 312) { item = new ItemDiamondLeggings(); } else if (id == 313) { item = new ItemDiamondBoots(); } else if (id == 314) { item = new ItemGoldHelmet(); } else if (id == 315) { item = new ItemGoldChestplate(); } else if (id == 316) { item = new ItemGoldLeggings(); } else if (id == 317) { item = new ItemGoldBoots(); } else if (id == 319) { item = new ItemRawPorkchop(); } else if (id == 320) { item = new ItemCookedPorkshop(); } else if (id == 321) { item = new ItemPainting(); } else if (id == 322) { item = new ItemGoldenApple(); } else if (id == 323) { item = new ItemSign(); } else if (id == 324) { item = new ItemWoodenDoor(); } else if (id == 325) { item = new ItemBucket(metadata); } else if (id == 329) { item = new ItemSaddle(); } else if (id == 331) { item = new ItemRedstone(); } else if (id == 332) { item = new ItemSnowball(); } else if (id == 333) { item = new ItemBoat(metadata); } else if (id == 340) { item = new ItemBook(); } else if (id == 344) { item = new ItemEgg(); } else if (id == 345) { item = new ItemCompass(); } else if (id == 351) { item = new ItemDye(); } else if (id == 352) { item = new ItemBone(); } else if (id == 352) { item = new ItemSugar(); } else if (id == 355) { item = new ItemBed(); } else if (id == 357) { item = new ItemCookie(); } else if (id == 358) { item = new ItemMap(); } else if (id == 359) { item = new ItemShears(); } else if (id == 360) { item = new ItemMelonSlice(); } else if (id == 363) { item = new ItemBeef(); } else if (id == 364) { item = new ItemCookedBeef(); } else if (id == 365) { item = new ItemRawChicken(); } else if (id == 366) { item = new ItemCookedChicken(); } else if (id == 369) { item = new ItemBlazeRod(); } else if (id == 371) { item = new ItemGoldNugget(); } else if (id == 373) { item = new ItemPotion(metadata); } else if (id == 377) { item = new ItemBlazePowder(); } else if (id == 380) { item = new ItemCauldron(); } else if (id == 383) { item = new ItemMonsterEgg(metadata); } else if (id == 389) { item = new ItemFrame(); } else if (id == 391) { item = new ItemCarrot(); } else if (id == 392) { item = new ItemPotato(); } else if (id == 393) { item = new ItemBakedPotato(); } else if (id == 395) { item = new ItemEmptyMap(); } else if (id == 395) { item = new ItemGoldenCarrot(); } else if (id == 397) { item = new ItemMobHead(metadata); } else if (id == 400) { item = new ItemPumpkinPie(); } else if (id == 401) { item = new ItemFireworks(); } else if (id == 403) { item = new ItemEnchantedBook(); } else if (id == 416) { item = new ItemHorseArmorLeather(); } else if (id == 417) { item = new ItemHorseArmorIron(); } else if (id == 418) { item = new ItemHorseArmorGold(); } else if (id == 419) { item = new ItemHorseArmorDiamond(); } else if (id == 423) { item = new ItemMuttonRaw(); } else if (id == 424) { item = new ItemMuttonCooked(); } else if (id == 427) { item = new ItemSpruceDoor(); } else if (id == 428) { item = new ItemBirchDoor(); } else if (id == 429) { item = new ItemJungleDoor(); } else if (id == 430) { item = new ItemAcaciaDoor(); } else if (id == 431) { item = new ItemDarkOakDoor(); } else if (id == 444) { item = new ItemElytra(); } else if (id == 446) { item = new ItemBanner(); } else if (id == 452) { item = new ItemIronNugget(); } else if (id == 454 && metadata == 0) { item = new ItemSlate(); } else if (id == 454 && metadata == 1) { item = new ItemPoster(); } else if (id == 454 && metadata == 2) { item = new ItemBoard(); } else if (id == 458) { item = new ItemBeetrootSeeds(); } else if (id == 498) { item = new ItemCamera(metadata); } else if (id <= 255) { int blockId = id; if (blockId < 0) { blockId = (short)(Math.Abs(id) + 255); // hehe } Block block = BlockFactory.GetBlockById(blockId); var runtimeId = BlockFactory.GetRuntimeId(blockId, (byte)metadata); if (runtimeId < BlockFactory.BlockPalette.Count) { var blockState = BlockFactory.BlockPalette[(int)runtimeId]; block.SetState(blockState); } if (CustomBlockItemFactory == null) { item = new ItemBlock(block, metadata); } else { item = CustomBlockItemFactory.GetBlockItem(block, metadata, count); } } else { item = new Item(id, metadata, count); } // This might now be a good idea if the constructor changes these // properties for custom items. item.Metadata = metadata; item.Count = (byte)count; return(item); }
private ObservableCollection <ClickItem> LoadItems(DoWorkEventArgs e) { SelfExplanationTagService.Clear(); int clickNo = FirstClickNumber; ObservableCollection <ClickItem> customItems = new ObservableCollection <ClickItem>(); ObservableCollection <ClickItem> clickItems = new ObservableCollection <ClickItem>(); List <Dictionary <string, string> > explanationItems = ELearningLabTextStorageService.LoadSelfExplanationsFromSlide(slide); ClickItem customClickBlock; SelfExplanationTagService.PopulateTagNos(slide.GetShapesWithNameRegex(ELearningLabText.PPTLShapeNameRegex) .Select(x => x.Name).ToList()); HashSet <int> tagNums = new HashSet <int>(); List <Effect> effects = slide.TimeLine.MainSequence.Cast <Effect>().ToList(); int startIdx = 0; bool hasReachedEndOfSequence = effects.Count == 0; List <CustomEffect> customEffects = new List <CustomEffect>(); List <ELLEffect> pptlEffects = new List <ELLEffect>(); do { if (worker.CancellationPending) { e.Cancel = true; return(clickItems); } customEffects = new List <CustomEffect>(); for (int i = startIdx; i < effects.Count; i++) { Effect effect = effects.ElementAt(i); if (i > startIdx && effect.Timing.TriggerType == MsoAnimTriggerType.msoAnimTriggerOnPageClick) { startIdx = i; break; } if (i == effects.Count - 1) { hasReachedEndOfSequence = true; } bool isPPTLEffect = SelfExplanationTagService.ExtractTagNo(effect.Shape.Name) != -1; if (!isPPTLEffect) { customEffects.Add(new CustomEffect(effect.Shape.Name, effect.Shape.Id.ToString(), EffectToAnimationTypeConverter.GetAnimationTypeOfEffect(effect))); } } customClickBlock = new CustomItemFactory(customEffects).GetBlock(); if (customClickBlock != null) { customClickBlock.ClickNo = clickNo; customItems.Add(customClickBlock); } clickNo++; }while (startIdx <= effects.Count - 1 && !hasReachedEndOfSequence); while (explanationItems != null && explanationItems.Count > 0 && customItems.Count > 0) { if (worker.CancellationPending) { e.Cancel = true; return(clickItems); } ExplanationItem expItem = CreateExpItemFromDictionary(explanationItems.First()); CustomItem customItem = customItems.ElementAt(0) as CustomItem; if (customItem.ClickNo <= expItem.ClickNo) { clickItems.Add(customItem); customItems.RemoveAt(0); } else { clickItems.Add(expItem); explanationItems.RemoveAt(0); } } while (explanationItems != null && explanationItems.Count > 0) { if (worker.CancellationPending) { e.Cancel = true; return(clickItems); } ExplanationItem expItem = CreateExpItemFromDictionary(explanationItems.First()); explanationItems.RemoveAt(0); clickItems.Add(expItem); } while (customItems.Count > 0) { if (worker.CancellationPending) { e.Cancel = true; return(clickItems); } CustomItem customItem = customItems.ElementAt(0) as CustomItem; customItems.RemoveAt(0); clickItems.Add(customItem); } return(clickItems); }