moved getLayoutOptions to abstract node type controller