No, it is not. It has hard wired bindings from certain names to morphic adapters, but only if you don't actually specify the target calss.
In other words, if in your #specLayout you specify a name that has a binding, then the binding will be used; if there is no such binding, then the class will be instantiated directly.
So for example if you specify:
* LabelAdapter -> there is binding from LabelAdapter to MorphicLabelAdapter, so MorphicLabelAdapter will be instantiated
* MorphicLabelAdapter -> there are no bindings for this name, so it will be instantiated directly
* CocoaLabelAdapter -> there are no bindings for this name, so it will be instantiated directly