Panels & Layout
ArcBrush’s interface is a set of dockable panels. Drag them to rearrange, pop them out into separate OS windows for a second monitor, and save arrangements as workspaces.
Panels
Section titled “Panels”Four main panels carry the editing workflow:
| Panel | Purpose |
|---|---|
| Library | Browse and search every node type; drag one onto the canvas (or press Enter on a row) to add it. Starred nodes appear in a Favorites section at the top, and the search field stays pinned while the list scrolls. Categories start folded, each with its icon in its color; right-click a category row or the space below the list for Expand All Categories and Collapse All Categories. |
| Node Graph | The canvas where you build and wire your graph. |
| Preview | The output of the selected (or locked) node. See Preview Panel. |
| Parameters | The selected node’s parameters, or the Graph Overview when nothing is selected. |
Utility panels open from the Window menu:
| Panel | Purpose |
|---|---|
| Brush Library | Your saved brushes, grouped by category. See Brushes. |
| Brush Studio | The full editor for the current brush: tip, grain, stroke path, taper, dynamics, and rendering. |
| Swatches | Document color palettes, built-in color libraries, Recent Colors, and Document Colors. See Swatches. |
| Variables | Named {token} values for export paths, import paths, and the Text node. See Variables. |
| Application Log | App events, warnings, and errors, for troubleshooting. |
Each docked panel is a rounded island with a small gap around it, and its tabs sit along its top. Utility panels always show their tab when docked. The four main panels hide it when docked alone, to save space.
A panel with its tab hidden has a grip instead. Move the pointer to the panel’s top edge and a small grip slides into view at the middle of that edge. Drag the grip to move the panel, or click it for the panel’s menu: clear Hide tab bar to bring the tab back, or pop the panel out, maximize it, or close it.
Rearranging Panels
Section titled “Rearranging Panels”Drag a panel’s tab, or its grip, to move it. Drop targets highlight as you drag: dock it as a tab beside another panel, or split it into its own region above, below, or beside one. The gap between two panels is the splitter: drag it to resize them. An empty dock region reads Drop a panel here. Your layout is restored the next time you open ArcBrush.
The Window menu has a show/hide toggle for every panel, plus:
- Reset Layout returns every panel to the default arrangement (after a confirmation).
- Lock Layout prevents accidental rearranging: tabs cannot be dragged, panels cannot be resized, no grip appears, and pop-out and close are disabled.
Maximize a Panel
Section titled “Maximize a Panel”Press ` (the unshifted key above Tab, shown as Backtick in menus) or Ctrl+Shift+M (Cmd+Shift+M on macOS) to fill the window with the panel under your pointer; press again, wherever the pointer is, to restore (over no panel, nothing happens). Every dockable panel supports it, in every workspace. Rebind it under Settings > Keyboard > Maximize Panel.
From the menu bar, Window > Maximize Panel is a submenu listing every visible panel by name: pick one to maximize it, the same as Maximize in a panel’s own tab menu. A panel that already fills its window is grayed out. While a panel is maximized the row reads Restore Panels and restores your layout.
Restoring brings back panel sizes, split positions, and each group’s selected tab; scroll positions return to the top.
- Opening or closing a panel from the Window menu, switching workspaces, applying a built-in layout, or Reset Layout restores your layout first.
- A panel alone in its own pop-out window cannot be maximized further; if it shares the window, maximizing collapses the window to that one panel.
- While maximized, rearranging panels in a different window is undone on restore (moving or resizing that window sticks). Restore first if you want to rearrange a second window.
- Maximizing is never saved as a layout change. If ArcBrush closes while maximized, it reopens with your real layout.
Pop-Out Windows
Section titled “Pop-Out Windows”Drag a panel outside the main window, or right-click its tab and choose Pop Out, to give it its own OS window, for example to put the Preview on a second display. Each pop-out’s title bar menu has Always on Top. Text and controls rescale cleanly between monitors with different DPI.
To dock it again, drag it back onto a dock target, or close the pop-out window to return the panel to its last docked position.
The Title Bar and Menus
Section titled “The Title Bar and Menus”Where the menus sit depends on your system. On Windows they share the title bar, on macOS they are in the menu bar at the top of the screen, and on Linux the window keeps its usual title bar with the menus in a row below it.
Windows
Section titled “Windows”The top of the window is one row instead of two. From left to right it holds:
- the ArcBrush icon, which opens the window menu;
- the menus, File to Help;
- the document name, centered, with a dot after it while the document has unsaved changes, then “ArcBrush” and its version number in a dimmer color. In a narrow window the app name and version go first, then a long document name is shortened with an ellipsis, so the text never runs into the menus or the buttons;
- the Minimize, Maximize (or Restore) and Close buttons. Close asks about unsaved changes, as File > Quit does.
The row works like any Windows title bar. Drag its empty part to move the window or to snap it to a screen edge, double-click it to maximize and again to restore, and resize from the top edge as well as the sides and the bottom. On Windows 11, point at the Maximize button to see the Snap Layouts. While a menu is open, a click on the row closes the menu instead of moving the window.
The window menu holds Restore, Move, Size, Minimize, Maximize and Close, each available when it applies (Move and Size are unavailable on a maximized window). Right-click the empty part of the row to open it at the pointer, or click the ArcBrush icon or press Alt+Space to open it under the icon. Move and Size let you move or resize the window with the arrow keys; press Enter to finish.
To keep the standard Windows title bar, turn on Settings > Interface > Use System Title Bar (in the Display section). The window then shows the dark Windows title bar with the ArcBrush icon, and the menus sit in their own row below it. The change applies at once, with no restart, and the window keeps its place, its size and whether it is maximized. Alt+Space opens the window menu with either title bar. Panels you pop out into their own windows always use the Windows title bar, with the ArcBrush icon.
ArcBrush remembers where the window was and whether it was maximized, and opens it there the next time, whichever title bar you use.
The menus are in the menu bar at the top of the screen, with the same icons as on the other platforms and your current shortcut beside each command; change a shortcut in Settings > Keyboard and its menu shows the new one at once. The window keeps the standard macOS title bar, in the dark appearance, with the document name. While the document has unsaved changes, the close button shows a dot and the title shows an asterisk after the name.
The ArcBrush menu holds About ArcBrush, Check for Updates…, Settings (Cmd+,), Services, Hide ArcBrush, Hide Others, Show All and Quit ArcBrush; on macOS those commands are no longer in the Help, Edit and File menus. Five shortcuts stay with macOS; see Shortcuts macOS keeps.
While a dialog or the shortcut recorder is open, the menu commands are grayed out. In a file dialog or another system window, Cut, Copy, Paste, Undo, Redo and Select All work on that window’s text fields.
In full screen the menu bar hides; move the pointer to the top edge of the screen to show it. To keep the menus in sight, turn on Settings > Interface > Show Menus in the Window (in the Display section): a menu row appears at the top of the window at once, with the same shortcuts, and stays in full screen.
Workspace Presets
Section titled “Workspace Presets”A workspace is a saved panel arrangement. Switch between them under Window > Workspace:
| Preset | Layout |
|---|---|
| Default | Balanced four-panel layout for general editing. |
| Big Graph | A large Node Graph for building big pipelines. |
| Vertical | Panels stacked for portrait or narrow displays. |
| Painting | Four columns: Node Graph, a Brush Library and Brush Studio stack, the Preview, and a Swatches and Parameters stack. Panels a painting session does not need are hidden. |
A Pixel Art node’s Parameters panel also has a Switch to Pixel Art Workspace button: a narrow Node Graph, a dominant Preview, and Swatches above Parameters. It does not touch your default or saved workspaces.
Custom Workspaces
Section titled “Custom Workspaces”- Save Workspace As… saves the current arrangement under a name (up to 128 characters; built-in names are reserved, case-insensitively).
- Manage Workspaces… lists your saved workspaces with Apply, Rename, Delete, and Export on each row, and Save Current as New…, Import…, and Export All… along the bottom. Built-in presets cannot be removed.
Exporting and importing workspaces
Section titled “Exporting and importing workspaces”Workspaces travel as .arcbworkspace files. Export on a row saves one workspace; Export All… saves every saved workspace into one file. Built-ins cannot be exported, so save a tweaked copy under a new name first.
Import… adds a file’s workspaces to your saved list without changing your current layout; apply one afterward as usual. If names collide with your saved workspaces, one prompt lists them and asks you to:
- Replace Existing (the default)
- Keep Both (the import is renamed, like “My Layout (2)”)
- Cancel
A name that collides with a built-in is always renamed. A file that is not a workspace export, was written by a newer ArcBrush, or is over 4 MB is rejected with a clear message; past 50 workspaces in one file, the rest are skipped. A summary lists anything skipped and why.
Graph Overview
Section titled “Graph Overview”With nothing selected in the Node Graph, the Parameters panel shows a summary of the whole document. Click a node to switch back to its parameters; click empty canvas or press Escape to return to the Overview.
The header shows the file name and its state (Saved, Modified, Read-only, or Untitled), with buttons to copy the full path and Reveal in File Manager. Below it are counts of nodes, wires, and endpoints and a one-line health verdict:
| Verdict | Meaning |
|---|---|
| Ready | Nothing is wrong, nothing is in flight, every output has a current result. |
| No reported issues | Nothing is wrong, but something has not been evaluated yet (or Lazy Mode is on), so a clean bill of health cannot be claimed. |
| Warnings | A node has a warning, or an export is stale. |
| Needs attention | Something failed, an export failed, or a required input is missing. |
| Section | Shows |
|---|---|
| Health & Activity | Every node worth flagging, one row each, worst first: failures, missing required inputs, Nothing connected, warnings, stale exports, anything still processing, then bypassed nodes. An unconnected optional input is never a problem. |
| Outputs | Every export node and dead-end node, whether its cached result is current, and for an export, whether it was written this session, is stale, or failed. |
| Sources | Every node bringing content in: an imported file or folder, an SVG import, a procedural generator, a Paint/Text/Roto/Scatter node, or a cloud result. |
| Structure | Counts of nodes, wires, groups, sticky notes, root nodes, outputs, missing inputs, nodes with nothing connected, bypassed nodes, populated viewer slots, and nodes per category. |
| Performance | How many nodes are idle, complete, processing, failed, or waiting on you, and the five slowest by their last full evaluation. |
| Document & Resources | The processing depth (8-bit or 32-bit) and the depth the document was authored in, with a note when they differ, plus variable, palette, and swatch counts. |
Every section starts collapsed, with its count in the header, so you can see there is something to look at without opening it, and remembers how you leave it for the rest of the session. The one-line verdict above the sections is always visible.
Click a row in Health & Activity, Outputs, or Sources to select that node; a separate reveal action also frames it in the Node Graph.
The Overview only reports results that already exist; it never starts evaluation. An output nobody has run yet reads as not evaluated, which is normal.
Copy Graph Report copies the whole summary as plain text for a bug report, with file names only, never full local paths.
Parameter Presets
Section titled “Parameter Presets”The Parameter presets button in the Parameters panel header, beside the node’s name, saves and reuses a node’s settings:
- Save as Preset… stores the current values under a name.
- Load a preset saved for that node type. Loading is one undo step.
- Reset to Defaults returns the node to its shipped values.
- Manage Presets… renames, deletes, shares a preset as a file, or imports one.
- Copy All Parameters / Paste All Parameters copies a node’s whole look (every parameter, but not its note or content such as painted strokes or Roto shapes) and pastes it onto every selected node of the same type at once, in one undo step. Selected nodes of another type are skipped and a note counts them. Both are also on a node’s right-click menu, and both are commands you can bind in Settings > Keyboard. See Copy and paste all parameters.
Presets are per node type: a preset saved on one Blur node is available to every Blur node.
New-node defaults
Section titled “New-node defaults”In Manage Presets, click a preset’s star to make it the New-node default: every new node of that type starts from it. Click again to clear. Saving a preset never changes the default on its own. The first time you select a node created this way, the Parameters panel notes which preset it started from, with a link to the presets menu and a way to dismiss the note.
Editing Values
Section titled “Editing Values”| Action | Result |
|---|---|
| Right-click a slider, number, text field, switch, dropdown, or row of buttons | Copy Value, Paste Value, and Reset to Default. Paste is grayed out when the value would not fit (text into a number); dropdowns and button rows copy by option name. |
| Double-click a slider’s knob | Reset it to its default |
Ctrl + drag a slider | Precision mode: 1/10 speed, steps ten times finer |
Ctrl + wheel over a slider, number field, or dropdown (Cmd + wheel on macOS) | Change the value by one step, or move a dropdown to the next entry. Add Shift for the fine step (Ctrl+Shift, or Cmd+Shift on macOS); a dropdown still moves by exactly one entry. |
Ctrl + scroll over a slider or number | Nudge by a sensible step (add Shift for a finer one), up to the parameter’s true limit even past the visible track. Over a closed dropdown or a row of buttons, steps to the previous or next choice, skipping any that are unavailable. |
| Middle-click a slider | Open the value ladder: one row per step size; drag sideways to change the value by the row under the cursor |
Ctrl + scroll works in the Parameters panel, Brush Studio, and Settings. On the value ladder, the step is chosen only while the cursor is over the ladder, so a sideways drag that drifts up or down keeps its step and unit.
What a value box shows
Section titled “What a value box shows”A decimal value box shows as many decimal places as fit its width, unit included, and never lets the number spill past its edge. Each box is sized for its parameter’s range, so a value with more digits than fit is rounded on screen, to at most about six significant digits or the parameter’s own finer precision. A value too large to fit even as a whole number is shown in compact notation, and trailing zeros are dropped, so 1.500 reads 1.5.
Rounding is only on screen. The stored value keeps every digit, and the node cooks with that exact value. To see it:
- Hover the box. When the shown number is rounded, the tooltip adds an Exact value line with the full number.
- Click into the box. The field shows the full value for editing or copying. While you type, the box widens inside its row to fit the whole number: the slider beside it narrows, and disappears if there is no room left. The row itself never gets wider.
Enter,Escape, or a click elsewhere returns the box to its usual width, and clicking in and back out without typing changes nothing.
The value ladder shows its value the same way.
Drags store clean numbers
Section titled “Drags store clean numbers”Dragging stores only the digits that one pixel of movement can actually choose, never the leftover digits of the mouse position:
- A slider steps by what one pixel of its track is worth. A slider spanning -4 to 4 steps by 0.01, and one spanning -180 to 180 by whole numbers. Hold
Ctrlwhile dragging and it moves at a tenth of the speed and steps ten times finer, so the -4 to 4 slider steps by 0.001, and the box shows those extra digits. - A value handle in the Preview (a position, size, angle, or camera) steps by what one screen pixel is worth at the current zoom. Orbiting a 3D Render camera stores
15.2, not15.199997. Zoom the Preview in for finer steps. A handle that snaps (to a guide, the frame, its center or thirds, or a 15-degree angle) stores the exact snapped value.
Path points and tangents, Roto shapes, Puppet pins, and paint strokes keep their exact positions. A typed, pasted, or automated value, and a value changed with the arrow keys, is always stored exactly as entered.
Slider curves
Section titled “Slider curves”Some sliders move finer at the low end. A slider for a size, radius, scale, or distance spends more of its length on small values, so a 2 px blur is as easy to pick as a 150 px one. Controls centered on 1, such as Normal Map’s Strength, move evenly through each doubling, and a signed amount such as Erode / Dilate moves finely on both sides of zero. Only the slider’s feel differs: the box, typing, and the stored value work the same.
A slider can also end before the parameter’s limit. Text’s Font Size slider stops at 1024, but typing a value goes up to 4096; the slider handle then rests at its end.
Working From the Keyboard
Section titled “Working From the Keyboard”Tab and Shift+Tab move through a node’s parameters, stopping once per numeric row on the value box, and select the whole value so typing replaces it. A first click into a box selects the whole value too, even when that click drags across it. A control focused by Tab shows its tooltip, following the Enable Tooltips setting.
Gradient controls have Add, Select Next, Remove, and Reverse buttons and a Position box for a stop’s exact position. With the bar focused, Enter adds a stop halfway to the next one.
Type Arithmetic Into a Numeric Field
Section titled “Type Arithmetic Into a Numeric Field”The value box of a parameter row (the number beside a slider, a gray level included), a position picker’s X and Y, and Paste Value on a parameter row’s right-click menu accept a small arithmetic expression. Press Enter (or click away) to commit the result: 1920/3 in a Resize Width commits 640, and pasting 2*3+1 with Paste Value writes 7.
A few number fields take a plain number only: the Seed box, the drag fields in the Preview toolbar (such as Pixel Art’s brush size and fill tolerance), and a color’s channel boxes.
| Supported | Examples |
|---|---|
| Add, subtract, multiply, divide | 100+100, 1920/3, 12*4 |
Exponents with ^ | 2^10 gives 1024 |
| Parentheses | (2+3)*4 gives 20 |
| A leading minus or plus | -5, -(3+2), 2*-3 |
| Decimals and scientific notation | 1.5, -1e-3 |
Standard order of operations applies, and ^ binds tighter than a leading minus: -2^2 is -4, (-2)^2 is 4. Whole-number fields round the result (10/4 commits 3), and Paste Value into one rounds the same way.
While you type, the result shows dimmed at the right end of the box (= 200), or on the line under the row when the box is too narrow. A plain number shows nothing unless the field changes it: a whole-number field shows the rounded value (= 3 for 2.5), and a value outside the field’s range shows the limit it will store, such as = 200 (clamped). Out of range is not an error: Enter stores the nearest limit.
An entry the field cannot read says why. Press Enter on an expression that does not parse or has no valid result and the field stays open with a red outline and the reason on the line under the row, such as “Expected a number after *.”, “Unknown word: px.” or “Can’t divide by zero.” On a row of several boxes, such as Crop’s custom ratio or a position’s X and Y, only the box with the problem is outlined and the line starts with its name. Fix the entry and press Enter again, or press Escape or click elsewhere to put back the previous value. The New Guide and Edit Guide dialogs and the Guide Manager’s Margins field use the same line, and their OK and Apply buttons stay unavailable until the entry is valid.
Not supported: named functions such as min and max, references to other fields, a percent operator, and a comma as the decimal point. A field can’t start with =; that prefix is reserved.
Parameter rows
Section titled “Parameter rows”Each parameter is one row: its label on the left and its control on the right, with every control in a panel starting at the same place. A label too long for its column gets a line of its own above the control.
- Numbers have a value box and a thin track with a round knob. Drag the knob or click along the track to set the value, or type into the box. A whole-number setting with only a few steps, such as 0 to 8, marks each step on the track and the knob stops on them.
- On and off settings are switches.
- A choice of up to four short options is a row of buttons, one per option, so you can see every choice and pick one with a click. A longer list, or a row too narrow for the labels, is a dropdown. A row of buttons can turn into a dropdown, and back, as you resize the panel.
Collapsible sections
Section titled “Collapsible sections”Click a section header in the Parameters panel to fold that section away, and click again to open it. Alt+click (Option+click on macOS) a header to show only that section and fold the rest. Folds are remembered per node type, so every Levels node opens the way you left the last one.