private void addStubs(Range relativeRange) { int currentThumbnailOffset = getCurrentThumbnailOffset(); final Range actualRange = relativeRange.expand(-currentThumbnailOffset, currentThumbnailOffset).restrictTo(Range.between(0, thumbnailAmount)); int relativeStartIndex = relativeIndex(actualRange.getStart()); Element previousElement = relativeStartIndex == 0 ? null : Element.as(imageContainer.getChild(relativeStartIndex - 1)); for (int i = 0; i < actualRange.length(); ++i) { final Element stub = floatingThumbnails.isEmpty() ? flyweight.createThumbnail() : floatingThumbnails.pop(); size.applySizeToElement(stub); if (previousElement == null) { imageContainer.insertFirst(stub); } else { imageContainer.insertAfter(stub, previousElement); } previousElement = stub; } }
private void openMonthOfYear(int year) { String yearString = String.valueOf(year); this.monthPickerUlMonthElement.removeFromParent(); for (int i = 0; i < this.monthPickerInner.getChildCount(); i++) { Element child = (Element) this.monthPickerInner.getChild(i); if (yearString.equals(child.getAttribute(InputDatePicker.ATTRIBUTE_DATA_YEAR))) { this.monthPickerInner.insertAfter(this.monthPickerUlMonthElement, child); Date monthButtonDate = new Date(this.cursor.getTime()); monthButtonDate.setYear(year - InputDatePicker.YEAR_OFFSET); if (this.monthPickerUlMonthElement.getChildCount() == 0) { for (int month = 0; month < 12; month++) { LIElement monthElement = Document.get().createLIElement(); this.monthPickerUlMonthElement.appendChild(monthElement); Event.sinkEvents(monthElement, Event.ONCLICK); monthButtonDate.setMonth(month); monthElement.setInnerText(InputDatePicker.MONTH_ABBR_FORMAT.format(monthButtonDate)); } } for (int month = 0; month < 12; month++) { LIElement monthElement = (LIElement) this.monthPickerUlMonthElement.getChild(month); monthButtonDate.setMonth(month); monthElement.setAttribute(InputDatePicker.ATTRIBUTE_DATA_CURSOR, InputDatePicker.ATTRIBUTE_DATE_FORMAT .format(monthButtonDate)); } this.monthPicker.setScrollTop(child.getOffsetTop()); break; } } }
private void openMonthOfYear(int year) { String yearString = String.valueOf(year); this.monthPickerUlMonthElement.removeFromParent(); for (int i = 0; i < this.monthPickerInner.getChildCount(); i++) { Element child = (Element) this.monthPickerInner.getChild(i); if (yearString.equals(child.getAttribute(InputDatePicker.ATTRIBUTE_DATA_YEAR))) { this.monthPickerInner.insertAfter(this.monthPickerUlMonthElement, child); Date monthButtonDate = new Date(this.cursor.getTime()); monthButtonDate.setYear(year - InputDatePicker.YEAR_OFFSET); if (this.monthPickerUlMonthElement.getChildCount() == 0) { for (int month = 0; month < 12; month++) { LIElement monthElement = Document.get().createLIElement(); this.monthPickerUlMonthElement.appendChild(monthElement); Event.sinkEvents(monthElement, Event.ONCLICK); monthButtonDate.setMonth(month); monthElement.setInnerText(InputDatePicker.MONTH_ABBR_FORMAT.format(monthButtonDate)); } } for (int month = 0; month < 12; month++) { LIElement monthElement = (LIElement) this.monthPickerUlMonthElement.getChild(month); monthButtonDate.setMonth(month); monthElement.setAttribute(InputDatePicker.ATTRIBUTE_DATA_CURSOR, InputDatePicker.ATTRIBUTE_DATE_FORMAT .format(monthButtonDate)); } this.monthPicker.setScrollTop(child.getOffsetTop()); break; } } }
getElement().insertAfter(element, getElement().getChild(i + 1));
getElement().insertAfter(element, getElement().getChild(i + 1));
getElement().insertAfter(element, getElement().getChild(i + 1));
getElement().insertAfter(element, look);
if (remainder > 0) { IntStream.range(0, thumbnailsInRow - remainder).forEach($ -> imageContainer.insertAfter(createThumbnailPlaceholder(size.width()), imageContainer.getLastChild()));
getElement().insertAfter(element, look);