Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ZoomHandler

File: Rhapsodist/Core/Includes/ZoomHandler.js · Namespace: ZoomHandler

Overview

ZoomHandler implements two synced UI-scale controls: the cmbZoom combo box in Settings, and a drag-resizable handle (pnlZoom) in the interface’s bottom-right corner.

Double-clicking the header title area resets zoom to 100%. There’s no public API beyond the UI itself.

Usage

ZoomHandler wires itself up once Core.js is included. There’s nothing to call or configure directly.

Internal Reference

FunctionDescriptionReturns
getZoomLevels()Builds the fixed list of zoom levels shown in cmbZoom (0.5 up to the screen-limited maximum, in steps of 0.25), plus a trailing "Custom" entry for values reached by dragging pnlZoom.Array

Broadcasters

BroadcasterDescription
bcpnlHeaderMouseFires on click events in pnlHeader. Resets cmbZoom to index 3 (100%) when the header title area (x between 40 and 300) is double-clicked.
bcpnlZoomValueFires when pnlZoom (the drag-resizable corner handle) changes value. Syncs cmbZoom to match, selecting the "Custom" entry if the new value isn’t one of the fixed zoom levels.
bccmbZoomValueFires when cmbZoom changes value. Syncs pnlZoom’s value to the selected fixed zoom level.