I think the move idea explained above is neat for certain things, but not for others.
I draw a lot of custom cabinets, and I draw them as separate board pieces making up the cabinet. Each board is a component by itself. This means I can easily edit the parent component and grad a child component and move it, but the other child components are no longer "glued" to the component being moved, and hence they do not strecth while moving the one child. It also means I have to individually grab the child pieces and "stretch" them (push pull) to "touch" the side moved.
This would include doors, with maybe raised panels. Now I need to scale the cabinet in width and maybe depth, but I do not want my door stiles to change depth or width, nor do I want any of the boards to change thickness, same goes for the bevels on the raised panel.
I've attached a Cabinet with glass shelves and the right side already moved to illustrate the issue.
GlassShelveCab.jpg