10 lines
1.1 KiB
Markdown
10 lines
1.1 KiB
Markdown
# State
|
|
- Core engine: `src/rpn-calculator.js`
|
|
- Active demo: `samples/calc-02/` responsive HP48GX layout with portrait/landscape support; display-adjacent button row stays in 4 columns
|
|
- Mode button shows the current angle mode only; selecting a mode uses a popup menu
|
|
- Public API: `push`, `pop`, `clear`, `swap`, `remove`, `edit`, `isValidIndex`, `input`, `command`, `getOperationsByCategory`, `getConstants`
|
|
- Config: `maxSize`, `base`, `angleMode`, `enabledCommands`
|
|
- Commands: arithmetic, stack, trigonometry, constants `pi` and `e`; arithmetic now includes `root` for y-th roots
|
|
- Demo actions: keyboard focus is kept on the hidden input on desktop so typing keeps working; the keypad layout places Enter in the bottom-left, ± in the former Enter position, and Esc before Clear for safety; paste parses clipboard text as a number before pushing it to the stack; Ctrl+V is supported via the hidden input paste event; backspace is ignored when the stack is empty; operation errors are shown as an overlay bar on top of the calculator with a shorter timeout and darker red
|
|
- Exports: browser `window.RpnCalculator`, CommonJS `module.exports`
|