Skip to main content
Vixlo 0.1

Undo, Reset all, and where edits are kept

Nothing you do on the edit page touches a photograph. This page covers how to take a step back, how to clear a take entirely, and where the adjustments actually live.

Undo on this page​

Every adjustment is one step: ⌘Z takes the last one back and ⇧⌘Z does it again. A slider, a look, a crop, a rotation, a perspective, a spot clean, a sharpening or noise-reduction change, a colour band, a tone-curve point, a reset: each is one step. The undo arrow in the top panel, beside Back to cull, is the same thing as ⌘Z, and so is Edit ▸ Undo.

A rejection made here with R is on the same stack, in the order it happened. Warm a take, reject the next one, and two presses of ⌘Z give you the frame back and then take the warmth off. The frame comes back at its place in the list with the decision it had. A decision made on the full screen opened from this page is the cull's own, and is taken back on the cull page.

One step per frame changed, not per button. An action that writes several frames at once is as many steps as frames whose settings it changes (a frame that already has exactly those settings adds none): Apply Golden Hour to all 143 takes and a sync to All takes write takes only, while Apply to N similar and a sync to Similar frames also write the holds and undecided frames in the group. Each of these actions puts a one-press Undo in its own message that restores every frame together.

The page keeps your last hundred steps; older ones drop off the end. After an action that adds more steps than that, such as a look applied to 143 takes, ⌘Z cannot reach all of it, nor anything you did before it. The message's Undo still takes the whole action back.

Changes made in the develop panel that Single opens count here too. They are steps on this stack, in the order you made them, but ⌘Z in Single does not reach them: in the cull it undoes your last decision. Open this page and ⌘Z takes the newest one back, with a message that names the file. See The develop panel in Single.

This undo is for the session: after a relaunch, each take is as its file holds it, with no steps to walk back through. For a record that lasts, the Changes tab (⌃6) has two: Versions, named copies of everything on a take that you save yourself, and History, this take's last fifty changes, newest first, where clicking a line puts the take back to that moment.

Reset all​

At the top of the develop panel, beside the word DEVELOP, is Reset all. One press removes every adjustment on the take: the look, the sliders, the crop, the rotation, the flip, the perspective, the spot cleans, the sharpening and noise reduction, the colour bands, the tone curve, the clarity, the colour grade, all of it. The take is exactly as the camera made it, and one ⌘Z brings the lot back.

The develop panel's header with Reset all and the fold button

Reset all clears adjustments and nothing else. The take's saved versions stay, and so does its history, which gains a line for the reset. Its decision, rating, colour label, keywords and caption are untouched. The Reset button in Single's develop panel clears the same things, without the message.

Each section of the panel also has its own reset, which clears that section and nothing else, and the Changes tab lists every adjustment on the take as one line with an × beside it, so one thing can go while the rest stays. Those are described with the tools.

Where edits are kept​

Every adjustment is metadata. It is written to a small file beside the photograph's copy inside the library, named after the photograph: DSCF1234.xmp beside DSCF1234.RAF. The photograph itself is never rewritten, and nothing is ever written to the card or folder you imported from. When you look at a take, or export it, Vixlo reads the original and renders it fresh with the adjustments applied.

The title bar's Saved tick, at the right, says the library's last write reached the disk. It is there from the moment a library on disk opens, it counts decisions as well as adjustments, and it disappears if a write fails.

The right-hand end of the title bar: Originals read-only and Saved

A few things follow from this that are worth knowing:

  • A photograph nobody has touched has no file. One is written when the frame is first adjusted, and also when it is first decided, rated or labelled, because those are kept there too. A second scan can write one as well: when it gives a frame your library already holds a new copy inside it (a frame outside the library), the earlier copy's XMP file is carried over or, if it had none, one is written from what the library recorded for the frame. A file already beside the new copy is never written over.
  • The file is named after the copy in the library. A RAW+JPEG pair is one photograph with one file, named after the RAW, and the JPEG sits beside it under the same name, even when it came in on a later scan. Two different photographs never share a file. When they came off cards under the same name, from two cameras or a card that started numbering again, the second is copied in as DSCF1234-2.RAF and its file is DSCF1234-2.xmp.
  • The file is the record for adjustments. Change a develop setting in it with another tool and Vixlo takes the change up next time it opens the photograph. The rating and colour label are different: Vixlo writes them into the file so other tools can see them, but its own library stays the authority for those two, and an outside change to them is not read back.
  • Versions and history travel with it. Copy a photograph and its .xmp to another Mac and every saved version and the history come along.
  • The file uses fields other photo tools know for the crop, straighten, rotation, lens corrections, sharpening, noise reduction, vignette, grain, tone curve, colour bands, colour grade, rating and colour label, and Vixlo's own fields for the rest.
  • Reset all keeps the file. Every frame on this page is a take, and the file keeps its decision, so Reset all rewrites the file without the adjustments rather than removing it.

A library that cannot store adjustments (the three Earlier library rows that come with the app) has nowhere beside its photographs for this file to go, which is why nothing you change in it is kept. So does a single frame, in a library of your own, whose photograph lies outside the library's folder. See When edits cannot be stored.