I'm working on an application (Mac OS X, if it matters) that opens a user defined file or folder, does a bunch of operations on it (as set up on the main window and tracked on a progress bar), then saves the edited files at a different user-defined location, or over-writes the original file if the user so chooses. Right now, the workflow to select the file or folder is this:

1) The user clicks 'Start'
2) The Open dialog is presented
3) The Open dialog is closed, and the Save dialog is presented
4) The Save dialog is closed, and the app does its thing

To me at least, the two dialogs coming up one after another, while the quickest way to get the users settings, seems.... glitchy. Is there a better way to set this up? Would having two buttons on the main window, 'open...' and 'save as...', with labels next to each displaying the selected path, be better, even though it means several more objects cluttering the main window and a few more mouse clicks for the user to make?

Note: Due to the nature of the operations I'm doing, there's no reason for the user to ever view the file(s) in my app, so a traditional word-processor-looking paradigm isn't really in the cards.


Rather than 'Open' and 'Save', it sounds like your need a bit of a rewording. I believe 'Source' and 'Destination' may be a better fit for the function of your app.


download bmml source – Wireframes created with Balsamiq Mockups

A quick wizard like this may alleviate confusion for the user. I did modify the workflow you described; I put the action in the middle. It breaks up the two file dialogs and provides a more clear process, but that may not be possible for your use case.

I did have a bit of concern about the final button of the wizard; Finish doesn't seem appropriate since you are actually beginning the process. Begin or Start also seems off. I chose to present a button that adapts to the action selected, explicitly confirming the choice made.

  • Oh wow! Thanks a ton for such a great answer, especially with the image! – Chris May 7 '12 at 20:36

I support the answer from Myrddin Emrys. In this case an assistant or wizard-approach is a good way to lead the user through the configuration. This approach has many advantages such as:

  • you can easily add more items to configure
  • you can add explanation texts if some options need to be explained
  • you can add extra options or modifiers (as example: "Same as source" as checkbox in the destination dialog, which disables the file navigator when checked
  • you can check the user input inbetween dialog transitions and catch errors by inserting special dialogs pointing out the error
  • you can dynamically remove dialogs when options become obsolete by some choices in previous dialogs
  • if some set of options is enough to lead to a default configuration you can add a finish button to skip options which are rarely changed

For the user those dialogs look as they were one unit where he or she can navigate forwards and backwards and change options later on. This approach is very often used so the user would know how to operate and what behavior has to be expected when clicking 'next'.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.