internal void CheckPageSize(RoundedDouble pageHeight) { if (m_initCancelPage && m_memoryPressure == null && pageHeight > m_pageHeightForMemory) { m_memoryPressure = new MemoryPressureListener(); } }
internal bool AddOnPage(ItemSizes dataRegionSizes, PageItem[] siblings, int itemIndex, ref List <int> parentOverlappedItems, ref double header) { if (siblings == null) { return(true); } double num = dataRegionSizes.Top + m_relativeTop; num = ((!(m_relativeTopToBottom < 0.0)) ? (dataRegionSizes.Bottom - dataRegionSizes.DeltaY + m_relativeTopToBottom) : (dataRegionSizes.Top + m_relativeTop)); double x = num + m_pageItem.ItemRenderSizes.Height - m_pageItem.ItemRenderSizes.DeltaY; PageItem pageItem = null; List <int> list = null; RoundedDouble roundedDouble = new RoundedDouble(0.0); RoundedDouble roundedDouble2 = new RoundedDouble(0.0); for (int i = 0; i < siblings.Length; i++) { pageItem = siblings[i]; if (pageItem == null || pageItem.ItemState == PageItem.State.Below || pageItem.ItemState == PageItem.State.TopNextPage) { continue; } roundedDouble.Value = pageItem.ItemRenderSizes.Left; roundedDouble2.Value = pageItem.ItemRenderSizes.Right - pageItem.ItemRenderSizes.DeltaX; if (roundedDouble2 <= m_pageItem.ItemRenderSizes.Left || roundedDouble >= m_pageItem.ItemRenderSizes.Right - m_pageItem.ItemRenderSizes.DeltaX) { continue; } roundedDouble.Value = pageItem.ItemRenderSizes.Top; roundedDouble2.Value = pageItem.ItemRenderSizes.Bottom - pageItem.ItemRenderSizes.DeltaY; if (roundedDouble2 <= num || roundedDouble >= x) { roundedDouble2.Value = pageItem.ItemRenderSizes.Bottom; x = num + m_pageItem.ItemRenderSizes.Height; if (roundedDouble2 <= num || roundedDouble >= x) { continue; } } if (roundedDouble >= num) { if (pageItem.PageItemsAbove == null) { return(false); } if (pageItem.PageItemsAbove.BinarySearch(itemIndex) < 0) { return(false); } if (list == null) { list = new List <int>(); } list.Add(i); } else { if (m_pageItem.PageItemsAbove == null) { return(false); } if (m_pageItem.PageItemsAbove.BinarySearch(i) < 0) { return(false); } if (list == null) { list = new List <int>(); } list.Add(itemIndex); } } m_pageItem.ItemRenderSizes.Top = num; header = Math.Min(header, num); if (parentOverlappedItems == null) { parentOverlappedItems = list; } else if (list != null) { int j = 0; for (int k = 0; k < list.Count; k++) { for (; parentOverlappedItems[j] < list[k]; j++) { } if (j < parentOverlappedItems.Count) { if (parentOverlappedItems[j] > list[k]) { parentOverlappedItems.Insert(j, list[k]); } } else { parentOverlappedItems.Add(list[k]); } j++; } } return(true); }
internal void CheckPageSize(RoundedDouble pageHeight) { m_common.CheckPageSize(pageHeight); }