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
| Function | Description | Returns |
|---|---|---|
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
| Broadcaster | Description |
|---|---|
bcpnlHeaderMouse | Fires on click events in pnlHeader. Resets cmbZoom to index 3 (100%) when the header title area (x between 40 and 300) is double-clicked. |
bcpnlZoomValue | Fires 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. |
bccmbZoomValue | Fires when cmbZoom changes value. Syncs pnlZoom’s value to the selected fixed zoom level. |