public BoardItemsEnumerator(BoardItemsManager parent) { this.parent = parent; currList = parent.BackBackgrounds; listIndex = -1; currListIndex = 0; }
private void GetObjsUnderPointFromList(IMapleList list, Point locationVirtualPos, ref BoardItem itemUnderPoint, ref BoardItem selectedUnderPoint, ref bool selectedItemHigher) { if (!list.IsItem) { return; } SelectionInfo sel = selectedBoard.GetUserSelectionInfo(); if (list.ListType == ItemTypes.None) { for (int i = 0; i < list.Count; i++) { BoardItem item = (BoardItem)list[i]; if ((selectedBoard.EditedTypes & item.Type) != item.Type) { continue; } if (IsPointInsideRectangle(locationVirtualPos, item.Left, item.Top, item.Right, item.Bottom) && !(item is HaCreator.MapEditor.Input.Mouse) && item.CheckIfLayerSelected(sel) && !item.IsPixelTransparent(locationVirtualPos.X - item.Left, locationVirtualPos.Y - item.Top)) { if (item.Selected) { selectedUnderPoint = item; selectedItemHigher = true; } else { itemUnderPoint = item; selectedItemHigher = false; } } } } else if ((selectedBoard.EditedTypes & list.ListType) == list.ListType) { for (int i = 0; i < list.Count; i++) { BoardItem item = (BoardItem)list[i]; if (IsPointInsideRectangle(locationVirtualPos, item.Left, item.Top, item.Right, item.Bottom) && !(item is HaCreator.MapEditor.Input.Mouse) && !(item is HaCreator.MapEditor.Input.Mouse) && item.CheckIfLayerSelected(sel) && !item.IsPixelTransparent(locationVirtualPos.X - item.Left, locationVirtualPos.Y - item.Top)) { if (item.Selected) { selectedUnderPoint = item; selectedItemHigher = true; } else { itemUnderPoint = item; selectedItemHigher = false; } } } } }
public void RenderList(IMapleList list, SpriteBatch sprite, int xShift, int yShift) { if (list.ListType == ItemTypes.None) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y) && ((ApplicationSettings.visibleTypes & item.Type) == item.Type)) { item.Draw(sprite, item.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex, item.Selected), xShift, yShift); } } } else if ((ApplicationSettings.visibleTypes & list.ListType) == list.ListType) { if (list.Selectable) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y)) { item.Draw(sprite, item.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex, item.Selected), xShift, yShift); } } } else { foreach (MapleLine line in list) { line.Draw(sprite, line.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex), xShift, yShift); } } } }
public ItemsEnumeratorBase(ItemsCollectionBase icb) { parent = icb.Manager; items = icb.Items; currList = parent.BackBackgrounds; listIndex = -1; currListIndex = 0; }
private void GetObjsUnderPointFromList(IMapleList list, Point locationVirtualPos, ref BoardItem itemUnderPoint, ref BoardItem selectedUnderPoint, ref bool selectedItemHigher) { if (!list.Selectable) { return; } if (list.ListType == ItemTypes.None) { for (int i = 0; i < list.Count; i++) { BoardItem item = (BoardItem)list[i]; if ((ApplicationSettings.editedTypes & item.Type) != item.Type) { continue; } if (IsPointInsideRectangle(locationVirtualPos, item.Left, item.Top, item.Right, item.Bottom) && !(item is Mouse) && (selectedBoard.SelectedLayerIndex == -1 || item.CheckIfLayerSelected(selectedBoard.SelectedLayerIndex)) && !item.IsPixelTransparent(locationVirtualPos.X - item.Left, locationVirtualPos.Y - item.Top)) { if (item.Selected) { selectedUnderPoint = item; selectedItemHigher = true; } else { itemUnderPoint = item; selectedItemHigher = false; } } } } else if ((ApplicationSettings.editedTypes & list.ListType) == list.ListType) { for (int i = 0; i < list.Count; i++) { BoardItem item = (BoardItem)list[i]; if (IsPointInsideRectangle(locationVirtualPos, item.Left, item.Top, item.Right, item.Bottom) && !(item is Mouse) && !(item is Mouse) && (selectedBoard.SelectedLayerIndex == -1 || item.CheckIfLayerSelected(selectedBoard.SelectedLayerIndex)) && !item.IsPixelTransparent(locationVirtualPos.X - item.Left, locationVirtualPos.Y - item.Top)) { if (item.Selected) { selectedUnderPoint = item; selectedItemHigher = true; } else { itemUnderPoint = item; selectedItemHigher = false; } } } } }
public bool MoveNext() { listIndex++; if (listIndex == currList.Count) { listIndex = 0; do { replaceList: currListIndex++; if (currListIndex == parent.AllItemLists.Length) return false; currList = parent.AllItemLists[currListIndex]; if (currList.IsItem != items) goto replaceList; } while (currList.Count == 0); } return true; }
public void RenderList(IMapleList list, SpriteBatch sprite, int xShift, int yShift) { if (list.ListType == ItemTypes.None) { foreach (BoardItem item in list) if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y) && ((ApplicationSettings.visibleTypes & item.Type) == item.Type)) item.Draw(sprite, item.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex, item.Selected), xShift, yShift); } else if ((ApplicationSettings.visibleTypes & list.ListType) == list.ListType) { if (list.Selectable) { foreach (BoardItem item in list) if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y)) item.Draw(sprite, item.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex, item.Selected), xShift, yShift); } else { foreach (MapleLine line in list) line.Draw(sprite, line.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex), xShift, yShift); } } }
public bool MoveNext() { listIndex++; if (listIndex == currList.Count) { listIndex = 0; do { replaceList: currListIndex++; if (currListIndex == parent.AllItemLists.Length) { return(false); } currList = parent.AllItemLists[currListIndex]; if (!currList.Selectable) { goto replaceList; } }while (currList.Count == 0); } return(true); }
public void RenderList(IMapleList list, SpriteBatch sprite, int xShift, int yShift, SelectionInfo sel) { if (list.ListType == ItemTypes.None) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y) && ((sel.visibleTypes & item.Type) != 0)) { item.Draw(sprite, item.GetColor(sel, item.Selected), xShift, yShift); } } } else if ((sel.visibleTypes & list.ListType) != 0) { if (list.IsItem) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y)) { item.Draw(sprite, item.GetColor(sel, item.Selected), xShift, yShift); } } } else { foreach (MapleLine line in list) { if (parent.IsItemInRange(Math.Min(line.FirstDot.X, line.SecondDot.X), Math.Min(line.FirstDot.Y, line.SecondDot.Y), Math.Abs(line.FirstDot.X - line.SecondDot.X), Math.Abs(line.FirstDot.Y - line.SecondDot.Y), xShift, yShift)) { line.Draw(sprite, line.GetColor(sel), xShift, yShift); } } } } }
public void Reset() { listIndex = -1; currListIndex = 0; currList = parent.BackBackgrounds; }
private void GetObjsUnderPointFromList(IMapleList list, Point locationVirtualPos, ref BoardItem itemUnderPoint, ref BoardItem selectedUnderPoint, ref bool selectedItemHigher) { if (!list.Selectable) return; if (list.ListType == ItemTypes.None) { for (int i = 0; i < list.Count; i++) { BoardItem item = (BoardItem)list[i]; if ((ApplicationSettings.editedTypes & item.Type) != item.Type) continue; if (IsPointInsideRectangle(locationVirtualPos, item.Left, item.Top, item.Right, item.Bottom) && !(item is Mouse) && (selectedBoard.SelectedLayerIndex == -1 || item.CheckIfLayerSelected(selectedBoard.SelectedLayerIndex)) && !item.IsPixelTransparent(locationVirtualPos.X - item.Left, locationVirtualPos.Y - item.Top)) { if (item.Selected) { selectedUnderPoint = item; selectedItemHigher = true; } else { itemUnderPoint = item; selectedItemHigher = false; } } } } else if ((ApplicationSettings.editedTypes & list.ListType) == list.ListType) { for (int i = 0; i < list.Count; i++) { BoardItem item = (BoardItem)list[i]; if (IsPointInsideRectangle(locationVirtualPos, item.Left, item.Top, item.Right, item.Bottom) && !(item is Mouse) && !(item is Mouse) && (selectedBoard.SelectedLayerIndex == -1 || item.CheckIfLayerSelected(selectedBoard.SelectedLayerIndex)) && !item.IsPixelTransparent(locationVirtualPos.X - item.Left, locationVirtualPos.Y - item.Top)) { if (item.Selected) { selectedUnderPoint = item; selectedItemHigher = true; } else { itemUnderPoint = item; selectedItemHigher = false; } } } } }
public void RenderList(IMapleList list, SpriteBatch sprite, int xShift, int yShift, SelectionInfo sel) { if (list.ListType == ItemTypes.None) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y) && ((sel.visibleTypes & item.Type) != 0)) item.Draw(sprite, item.GetColor(sel, item.Selected), xShift, yShift); } } else if ((sel.visibleTypes & list.ListType) != 0) { if (list.IsItem) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y)) item.Draw(sprite, item.GetColor(sel, item.Selected), xShift, yShift); } } else { foreach (MapleLine line in list) { if (parent.IsItemInRange(Math.Min(line.FirstDot.X, line.SecondDot.X), Math.Min(line.FirstDot.Y, line.SecondDot.Y), Math.Abs(line.FirstDot.X - line.SecondDot.X), Math.Abs(line.FirstDot.Y - line.SecondDot.Y), xShift, yShift)) line.Draw(sprite, line.GetColor(sel), xShift, yShift); } } } }