My proposal is about implementing a smart object picker, which means that (when enabled) it will bring a small dialog box next to the mouse pointer asking if the next objects or sub-object to be selectable should be of the same type as the second one (only if I select two curves consecutively, or two surfaces consecutively, or two surface edges consecutively). To turn off the function, the user only needs to remove the tick from the tickbox. This is somewhat similar to how the selection filter works, except that it will evoke a much smaller pop-up window and will also be activated automatically only after two objects or sub-objects of the same type are being selected consecutively (including while using commands such like “Sweep 2 rails”, “Patch”, “Network surface”, “Loft” etc that require a series of input objects or sub-objects).
For example, when I activate the “Patch” tool and pick edges 1 and #2 (shown in the image below), Rhino should bring the “Smart object picker” and ask me if the next input geometry to be picked must be limited to surface edges, too. If I click on “Yes”, then only surface edges will be pickable from that moment on. To be able to pick curves after I click on surface edge #5, I simply remove the tick from the tickbox, then I select curve #6 and curve #7. Upon that moment, the “Smart object picker” activated itself automatically and ask me if the next objects to be picked must be limited to curves only. I select “Yes” and then I’m free to select every other curve in the viewport. This would be especially handy if multiple object types are located on the same place, such like curves and surface edges.
An alternative way to activate the “Smart object picker” is when Rhino detects a curve and a surface edge on the same place, which means that the “Selection menu” is evoked at that moment. The latter may contain a tick box behind the name of each object and sub-object in the list, so that clicking inside will activate “Smart object picker”. Lets say that I click on the tickbox of a surface edge. Once I do that, Rhino will lock the selection to surface edges only and bring a tiny pop-up window for “Smart object picker” with a tickbox. Unless I remove the tick from that tickbox or close its window, I will not be able to mistakenly pick any other type of geometry.