This question was inspired by yode's question found here. I think yode asked the wrong question, so I am asking what I think is the right one.
Consider a situation in which the user has to choose two directories before a computation can move forward. We want to present the user with two file-name setters but have the code wait until the user has chosen one directory from each setter before proceeding. How can we do that?