Persian Air Services DC-7C, Mehrabad Airport, Tehran, Iran, 1961.
Filter: "ColorCross" and "Lolo" + Exposure and Contrast adjust tools.
CameraBag 2 lets you apply a sequence of Styles, Adjust tools, and (optionally) a Border to an image. This sequence, called a filter, is dynamic: you can change the order of the items and change their configuration at any time, and the resulting image will be adjusted to reflect that. Nevercenter calls this "non-destructive" editing, which is true during the editing of a photo, but the effects are destructively applied when the final image is saved.
You can also save the filter configuration, which is useful if you might want to come back to revisit the processing some day. You'll have to do that as a separate step — the filter is not automatically stored when you save an edited image. You can save the filter into an ordinary folder, or into CB2's "Favorites" list for easy use on other photos.
The components: Styles, Adjust tools, and Borders
CB2's Styles are specialized tools that are designed to produce certain looks such as "high contrast B&W" or "instant camera," while the Adjust tools are more classical image-processing tools like Contrast and Saturation. Borders are (obviously) borders that can be applied.
From what I can tell, all of CB2's operations treat each pixel individually. There don't seem to be any operations that involve neighboring pixels, so there aren't any convolutions like Gaussian Blur and Unsharp Mask. CB2 doesn't provide any sharpening tool at all.
CameraBag 2 provides over eighty pre-defined "Favorites" filters, to which you can add your own. Some of these filters are usable as-is, some are mainly a starting point for tweaking or for inspiration. The Toolkit filter is just a shortcut to add a collection of standard Adjustments — Exposure, Contrast, Colorize, and Saturation — all of which are initially at their "no effect" settings.
Adjusting a component
Each Style comes with two adjustment sliders. The Amount slider is a standard opacity or fade control. The Remix slider controls various internal settings of the style. Nevercenter claims that there are an "infinite" number of remixes, although a more accurate statement is that there are billions of remixes. For most Styles, each step of 10 on the Remix takes you to a new configuration, and the values in between the "tens" are mixtures. Also for most Styles, the Remix has a somewhat cyclic nature at steps of 50. The pre-defined Favorites use a wide variety of Remix values, ranging from -288 to 3654. The Ctrl-Up-Arrow and Ctrl-Down-Arrow keys move the Remix in steps of 10, and clicking an end of the Remix slider moves the Remix in steps of 50.
The Adjust tools have their own individual interfaces. Sliders are widely used, as are curves and color-picker boxes. The Contrast and Luminance Contrast tools have two sliders: one to increase or decrease the contrast, and the other to select what brightness level is the reference. Interestingly, the Multi Tool (Exposure, Contrast, and Saturation) has a Contrast setting that consists of a conventional single slider.
The cropping part of the Crop/Straighten tool has its own interface, and I always have trouble with it. It differentiates between whether you're clicking somewhat near an edge (the edge turns red and you can then drag that edge) or not, and if not, whether you've already adjusted the edges or not. If you haven't already adjusted an edge and click somewhere not near an edge, CB2 assumes you want to drag out a specific crop box. If you've already adjusted an edge, CB2 assumes you want to move the crop box.
There are two simple Borders that fit the current aspect ratio of your photo — with square image corners and with rounded. These have a slider that control the width of the border and a color picker; the Border with rounded image corners has an additional slider to control the radius of those corners. There are also a dozen fancy Borders with fixed aspect ratios that will crop from the center as needed; these have no adjustments.
It's possible to type in specific values for sliders and color pickers, but not for curves.
All of the Styles and almost all of the Adjust tools can be combined in any combination and permutation, including duplicates of the same Style or Adjust tool. These can be re-arranged, switched on or off, or completely deleted from the current filter.
The Crop/Straighten Adjust tool is special. If present, there is only one, and it is always the first tool in the filter sequence.
The Constrain Size Adjust tool is also special. If present, there is only one, and it is always the last tool in the filter sequence. This tool is mainly of use for batch operations — whenever you save an individual photo, CB2 will ask what dimensions you want it saved at, so you shouldn't need Constrain Size there.
Borders are also special. If present, there is only one, and it is always the last tool except for a Constrain Size tool in the filter sequence.
The components in your current filter appear as gray (orange if selected) square tiles underneath the image. They are in a line, and are applied from left to right. Each tile has an "on/off" button to temporarily disable it, and an "x" button to completely delete it. Except for the three fixed-position components, you can drag-and-drop tiles to a different point in the sequence.
When you choose a Style or Favorite, you can choose to have it completely replace the main part of the current filter, or to have it added to the end of it (by clicking the "+" on the button). When you choose an Adjust tool, it's always added to the end. When you choose a Favorite that has a Crop/Straighten tool or a Border, those will replace the current tools even if you choose to have the Favorite added to the current filter. I still find this variation in behaviors to be a bit disorienting.
Saving the filter
If you choose to save a filter, whether to the Favorites or to a separate folder, you'll find that Constrain Size tools are never saved, Borders are always saved if present, and if you've got a Crop/Straighten tool in the filter, you'll be asked if you want to save it as part of the filter.