Skip to content

ZOrbit 0.7.0

Choose a tag to compare

@combwizard combwizard released this 27 Oct 14:51
· 108 commits to main since this release

Released under ZOrbit's earlier name, Radial Menu for ZBrush. The files are renamed; the program inside still calls itself Radial Menu.

Added

  • Studio opens on a recovery screen when radial.json cannot be read: it shows the error with its line and column
    and offers Open folder, Restore backup and Start from defaults (the unreadable file is kept as
    radial.json.broken).
  • Studio notices when radial.json changed on disk after it was loaded and asks whether to overwrite or reload,
    instead of silently replacing a hand edit.
  • Studio asks before saving a config that no ring can open from (no menus, or no menu with a hotkey).
  • The problems pill opens a panel instead of a bar that pushed the page down: every problem is now in plain
    words, every entry jumps to the menu, item or Settings card to fix, and the menu and item rows concerned
    carry an amber marker.
  • Studio reopens on the screen you left and keeps each screen's scroll position while it is open. Clicking the
    screen you are already on no longer rebuilds it.
  • Undo and Redo buttons next to Revert. Undo and redo put the selection back where it was, and the Undo on a
    "Removed" or "Deleted" toast undoes that change only, never a later one.
  • Clicking a menu or item row keeps keyboard focus on it, so Delete, F2, Enter and Alt+Up/Down work straight
    after a click, and you can delete several items in a row with the Delete key.
  • Switching an item's kind no longer carries a brush name into a button path (or the reverse), and when a
    switch drops a target, value, label, icon or steps it says so in a toast with Undo. "Required" hints only
    appear once you have touched the field.
  • A Set item's value must be a number; Studio says so under the field and the app reports it as a problem
    instead of sending text to ZBrush.
  • The ring preview no longer selects a slot when you click or drop on the empty side of a ring with one to
    three slots, matching the app's quarter-circle cap on a slot.
  • Items can be dragged onto another menu in the list to move them there (hold Ctrl to copy). Dropping an
    item on a ring slot now lands on that slot in both directions.
  • A submenu item's target is a list of your menus with an Open button, and opening a submenu (double-click,
    Open it, or the button) shows a Back chip that returns to the parent menu and its item.
  • Picking an open animation in a menu's settings plays it straight away.
  • The menu Id field validates as you type and says why a value is refused; it also warns that renaming
    resets that menu's learned auto slots.
  • Brush names are matched ignoring case and spaces in the item inspector and the Library's "used" badges, as
    the guide says. The brush picker closes after Enter.
  • The inspector's third tab is called Library (it clashed with the default "Brushes" menu), and row tooltips
    list the keyboard shortcuts.
  • Library: a Rescan button picks up brushes saved since Studio opened; when nothing is found the screen says
    whether ZBrush was found and which folders were searched; clicking a brush selects it and shows an "Add to " button, with a hint under the search box; adding a brush that the menu already has asks first; the new item scrolls into view and flashes.
  • Library search matches brush names only (searching "zbrush" no longer matches every brush), and a search
    with no results inside a folder offers to search all folders.
  • Settings: the Colours card has its own live ring preview; number boxes keep the current value when you
    clear them and say when a typed value was kept within range; hex fields accept #fff; the animation,
    labels and bridge choice cards are one Tab stop with arrow keys; the "On this page" list stays visible
    down to the smallest window; a preference that could not be saved says so and flips back; "Check for
    updates" shows what the last check found.
  • Settings > Older ZBrush: Install and Remove disable the whole row and say "approve the prompt" while the
    administrator prompt is open, which may now stay open for five minutes instead of being reported as a
    failure after one; a declined prompt says so; one install or removal runs at a time; a folder you added
    by hand can be forgotten, and adding one that is already listed says so; the card is one line when no
    ZBrush 2022 to 2025 exists; the F9 note follows the bridge key as you change it.
  • The elevated copy of the ZBrush 2022 to 2025 plugin no longer trusts the files staged in the user's data
    folder: it checks that the destination is a ZBrush ZStartup\ZPlugs64 folder and builds the plugin,
    its config and its shortcuts from this installation's own files. The data folder written into the config
    is the user's own even when the prompt was answered with another administrator account.
  • Status: Start app sits on the app card, waits until the app is up (or says it did not start and shows
    the last log lines), and is disabled with the reason while ZBrush is not running; the log shows 40 lines
    with dates on lines from other days, highlights "failed" and "error" lines but not routine picks, and
    has Copy log and an "Updated N s ago" stamp; the Bridge listener card says "Not needed (key bridge)" for
    key-bridge and ZBrush 2022 to 2025 setups instead of a red "Not found"; a dot on the Status rail button
    shows when the app is down while ZBrush runs, and the save toast says so instead of promising the app
    picked the change up. "Open app folder" is now "Open config folder" (where radial.json lives).
  • The Status check no longer hangs Studio if the process list is slow, reads only the end of large logs,
    and recognises an app running as administrator.
  • Toasts have a close button, pause while you hover or focus them, and no longer stack copies of the same
    message; errors are red and stay until closed. Orange buttons and badges use dark text, muted hints are
    brighter and the smallest labels are larger, all for readable contrast.
  • Keyboard and screen readers: the brush and path pickers are proper comboboxes, menus opened from a button
    return focus to it, the hotkey field says what it is for and its current value, the Status log is a log
    region, and a "Skip to content" link is the first Tab stop. The maximise button says Restore when the
    window is maximised, the path of the menus file at the top can be selected and copied, and the ring
    preview no longer flashes a broken image before the first picture arrives.
  • Brush thumbnails are sharp at the largest card size, a failed thumbnail batch is retried instead of
    showing initials for the rest of the session, and thumbnails start loading just before they scroll into
    view. Folder groups collapse again when you click the open one.

Changed

  • The Settings screen is called Settings everywhere (it was "Appearance & Behaviour" on the page itself), and
    the ring preview on the Menus screen gives up height to the item list on short windows.
  • Save does nothing when there is nothing to save, and radial.json.bak is only replaced when the previous file
    was readable and differs, so saving twice cannot overwrite a good backup with a bad one.
  • A radial.json with a byte-order mark (left by some editors) is accepted by the app and by Studio.
  • Closing Studio always asks the page whether anything is unsaved, instead of trusting a flag that could lag
    behind an edit.
  • ZBrush 2022 to 2025: the plugin binds F9 to Zplugin > Radial Menu > Apply itself, so the default bridge key
    works without Ctrl+Alt+click and Preferences > Hotkeys > Store. A key you bound and stored yourself keeps
    working. Settings > Older ZBrush offers Update for plugins installed before this.
  • A brush pick made outside Edit mode says "(Edit mode is off)" in the bridge log and Status, to explain a
    brush that seems not to switch. The pick still goes through.
  • When ZBrush loads the plugin, it deletes a pick left over from a ZBrush that quit before applying it, so
    the first Apply of a new session can't carry out an old pick.

Fixed

  • Studio dialogs: Ctrl+S, undo and the Alt+number screen shortcuts no longer act behind an open dialog, two
    dialogs can no longer stack, and the safe button (Keep editing, Cancel) has focus in Revert, Delete menu
    and Remove plugin, so a stray Enter cannot confirm them.
  • Deleting a menu that other menus open as a submenu now removes those links from the state as it is when
    you confirm, and keeps the right item selected afterwards.
  • A double-click on the item inspector's delete button removed two items.
  • Hotkeys recorded in Studio now use the character you typed rather than the key's position, so Dvorak and
    AZERTY layouts record the key you pressed.
  • Removing the ZBrush 2022 to 2025 plugin from Settings > Older ZBrush asks first.
  • Starting Studio while it is already open now restores a minimised window and leaves a maximised one
    maximised, and the second launch exits at once instead of loading the web view first.
  • Pressing Ctrl+S in Studio before the menus had loaded, or on the error screen, could write null over
    radial.json.
  • ZBrush 2026 and newer: loading the plugin ended in a Python error (BRIDGE_DIR is not defined) after
    everything else had started. Nothing stopped working, but bridge.log never said "bridge loaded".