## 7.1.0
Additions only. Nothing was removed, and mods built for 7.0.0 work as before.
### Added
- The cycle strip. A small hotbar drawn just right of the vanilla one shows a ring of stacks turning through the held slot, and slides one cell each time the ring turns. Any mod that rotates stacks into the hand can register a source with `HudCycleStrip`, so its strip shows without any other mod installed. A ring can show as a row, as a column rising above the hotbar, or as both in a cross that shares the held cell. [The guide](https://github.com/trevorschoeny/menukit/blob/main/docs/cycle-strip.md) has the details.
- HUD panels beside the hotbar. `HudPanel.builder(...).region(OutsideRegion.X)` places a HUD panel around the vanilla hotbar. `LEFT_ALIGN_BOTTOM`, for example, is a column of icons just left of it, rising from its bottom. Panels in one region stack 2 pixels apart in priority order, and a hidden one takes no room, so icons from several mods line up beside the hotbar without overlapping or leaving gaps. While vanilla draws the offhand slot beside the hotbar, the regions on that side start beyond it, so an icon never covers it. [Recipe](https://github.com/trevorschoeny/menukit/blob/main/docs/recipes.md#put-an-icon-beside-the-hotbar).
- Item tooltips and other tooltips can be hidden separately. `MKTooltip.hideWhen` also takes a predicate of `MKTooltip.Kind`, asked once per tooltip with `ITEM` or `OTHER`, so a mod can offer "hide item tooltips" and "hide all other tooltips" as two settings. Tooltips for items in slots, the creative menu, the recipe book and chat, and items other mods draw through vanilla's item tooltip, are `ITEM`. The existing `hideWhen(() -> ...)` still hides both. [Recipe](https://github.com/trevorschoeny/menukit/blob/main/docs/recipes.md#hide-item-tooltips-separately).
- A gap per panel. `PanelPosition.region(...)` and `screenAnchor(...)` take `.gap(n)`, the space in pixels before that panel: from the frame, anchor box or hotbar, and from the sibling before it. `.gap(0)` lets panels sit flush, so slot panels stacked on a slot group keep vanilla's 18 pixel pitch. Panels that don't call it stay where they were (2 pixels in a region, the host's spacing on a screen spot). `HudPanel.builder(...).gap(n)` sets it on a HUD panel. A negative gap throws when the position is built.
- Tab icons. `Tabs.tab(id).icon(texture, textureSize, drawSize)` draws a picture left of a tab's label, in every mode. The texture is any standalone square texture, such as a mod's icon loaded at runtime, and is read every frame. `icon(sprite, drawSize)` uses a GUI sprite instead. The tab widens to fit the icon, and an options screen's underline stays under the label. Tabs without an icon look as before. [Concepts](https://github.com/trevorschoeny/menukit/blob/main/docs/concepts.md#tabs).
- Icons from a texture. `Icon.builder().texture(id, textureSize)` shows a standalone square texture, drawn whole at the icon's size, alongside the existing `sprite(...)`.
- Tooltips of several lines. `tooltip(first, more...)` on every element builder and on `Panel` takes the lines one by one, each in its own style. `MKTooltip.joinLines(lines)` makes one text of them, for a tooltip read every frame.
### Fixed
- On an `MKScreen` or custom menu screen, hiding one of the panels stacked below the main panel no longer leaves a 12 pixel hole. The next panel closes up to 14 pixels below the last one shown, as when nothing is hidden.
- A line feed (`\n`) in a tooltip now starts a new line on every tooltip. Before, only a tooltip wide enough to wrap broke its lines, and a short one drew the line feed as a boxed "LF". It works in plain text, in a styled part of the text and in a translation, and each line keeps its style.
Developer information
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle.
maven { name = "Modrinth"; url = "https://api.modrinth.com/maven" }