The PhotoEditor SDK allows you to change all settings before starting or running the editor. For this, there are two different Models the SettingsList and the StateHandler. Booth has internally a HashMaps that hold Settings and States (only the StateHandler)
Before you can start the Editor or Camera, you have to pass a
SettingsList to the
PhotoEditorBuilder or the
CameraPreviewBuilder calling the method
While starting the Editor this
SettingsList and all holded settings classes are parceled into a bytestream.
After starting the Editor the parceled SettingsList is readed into a StateHandler.
The StateHandler is used internaly to modifying all settings and states. Modifiying settings on a
Settings class contained in the
StateHandler then trigger events to update the preview and change export.
To modify Settings you have to obtain a
Settings class by
getSettingsModel(Class<StateClass> stateClass) the StateHandler avaliable while runtime has also a methode
getStateModel(@NonNull Class<StateClass> stateClass) to get state classes (states are not parceld and only available while runtime)