# Brief
Inkscape's new CMYK, CMS and CSS Color Module 4/5 support requires more user control over color SPACE selection. This process can be quite complicated and also unnecessary for the majority of users so a new design that allows for fine control must also be unobtrusive.
The control involves two main options. `Color Format` and `Color Interpolation`.
## Color Format
Format changes how the color selected in any of the color pickers will be saved in the XML. For RGB/HSL where the gamuts are approximately the same and conversions back and forth are faithful, this isn't useful except in the case that it preserves CSS Color Module SVG data and allows the creation of SVGs which could be further used outside of inkscape for animation and scripting.
The main use case for color format is using CMYK and other channel based systems of color which do not map back and forth directly. For example in sRGB `device-cmyk(0 0 0 100)` is exactly the same as `device-cmyk(100 100 100 0)` but is absolutely ISNT the same when it comes to what the printer should do. Thus converting and keeping CMYK data in RGB is not really possible.
The Color format is an inkscape specific / editableSVG attribute which is inherited from the root. Each group can specify it's own color format value, though it is expected that a user would set a single global setting, this will be important for importing and mixing RGB images into CMYK documents. Such mixing is entirely supported by PDF and other print processes.
The color format by default will be the default icc profile, or sRGB.
## Color Interpolation
Interpolation changes how an object is RENDERED. This process only changes how gradients and blend modes work and is a standard part of the SVG specification which is inherited just like the color format above.
Note: There is a separate filter-color-interpolation attribute which is only used to control the color spaces for various filters. This UX ticket will ignore that functionality but a future ticket will have to consider it.
## Legacy UX
There are some considerations regarding existing widgets and functionality.
The difference between the color picker in the `Object Properties` @mkov and the one in `Fill and Stroke` must be harmonized. There is no point to having two different interfaces for the same thing.
The `Recolor Selection` UX is currently a bit of a mess, there are two buttons on Fill and also on Stroke which do exactly the same thing. This should be simplified. Though it might be out of scope for this ticket depending on the final design.
Options for `Color Managed Mode` and `Out of Gamut` warnings need to be moved. They do not make sense any more. The Camilion functionality should be moved to the extensions menu, object menu, or `Recolor Selection` design above.
# Design
Currently I think there ort to be four tabs in the `Fill and Stroke` dialog.
1. Fill -> No change, The Fill color (and `fill-rule`)
2. Stroke -> Renamed from `Stroke paint`
3. Style -> Renamed from `Stroke style`, rationality is that this tab actually contains markers as well as things like stroke style options.
4. Color -> New tab for setting/seeing color format, color interpolation and perhaps for doing Recolor Selection too. Maybe `Advanced` maybe somethhing else.
There is an alternative design which puts the color selections into the same global place as the Blend mode. But it's equally useful to consider moving the blend mode into a new Color tab.
The new Color tab should show two dropdown boxes for the two main color space options. And it should show an enable/disable checkbox on both. When disabled the dropdown text is set to the value inherited from the object's parent. When enabled the user can set a custom color space for this object for interpolation and format.
Because these values are inherited, by default a workflow that involves creating a CMYK document would not have to change these in order for the color format and interpolation to be set to CMYK already. They would be inherited from the root SVG node which would have been set by the document properties when setting the icc profile for the CMYK document.

























