A stretch function allows to e.g. move a door in a wall. The door is moved, one wall is enlarged and the other wall is shortened. This is done by drawing a box through the walls and around the door, and then by moving the selection. Object that are completely within the selection are moved. Object that cross the selection box are stretched.
As Lance said, in both comments. I don’t think this requires more attention in this particular area. Direct Selection + Isolate + Lock/Hide handle these situations quite fine.
But I should mention AG Super Marquee Tool that covers many other cases.
Glad you found it helpful. I should note that it's not ideal or exactly what you're asking for, and I have seen it *not* work on occasion. I think it has something to do with compound shapes or clipping masks in use. It's also of limited utility when you have a pretty complex and/or busy area that doesn't make it easy to select only the parts you want to move without selecting things you don't intend to edit.
For that reason alone I've gotten to where I use groups pretty heavily and go in and out of isolation mode very frequently when editing complex things.
@Lance: Thank you. This indeed works fine with the direct selection tool.
I do this sort of thing, exactly as described, fairly regularly using the direct selection tool (white arrow/pointer/cursor tool).