// // < Initialize > // public void Initialize(ILeeBoard __board) { board = __board; _itemEditor.Initialize(); _ListenBoard(board); }
protected List <ILeeBoardItem> _GetSortedElements(ILeeBoard board) { var items = new List <ILeeBoardItem>(); for (int i = 0; i < board.rows; ++i) { for (int j = 0; j < board.columns; ++j) { if (board[i, j].isElement) { items.Add(board[i, j]); } } } items.Sort((ILeeBoardItem a, ILeeBoardItem b) => { if (a.edgesCount > b.edgesCount) { return(-1); } return(1); }); return(items); }
protected void _Revert(ItemInfo[,] items, ILeeBoard board) { for (int i = 0; i < board.rows; ++i) { for (int j = 0; j < board.columns; ++j) { items[i, j].CopyTo(board[i, j]); board[i, j].state = ELeeBoardItemState.DEFAULT; } } }
protected ItemInfo[,] _CreateCopy(ILeeBoard board) { ItemInfo[,] items = new ItemInfo[board.rows, board.columns]; for (int i = 0; i < board.rows; ++i) { for (int j = 0; j < board.columns; ++j) { items[i, j] = new ItemInfo(board[i, j]); items[i, j].elementId = board[i, j].elementId; } } return(items); }