In a Windows Desktop application, I have a modal dialog for a task that has advanced options.

If the user opens the advanced options, changes some stuff, clicks "save", the advanced option window closes, then the user clicks "cancel" on the main task modal, should the advanced options take effect? Or should the options revert?


download bmml source – Wireframes created with Balsamiq Mockups

There's a lot of options here so I'm trying to avoid having the options inline below the "Primary Stuff".

  • Is it necessary that the advanced options open in a new dialog? because if they would open in the same window, expanding or in a similar way, you could avoid this problem.
    – Alvaro
    Commented Jan 23, 2017 at 16:32
  • 1
    Wait... Is a modal opening... another modal?
    – UXerUIer
    Commented Jan 23, 2017 at 17:05
  • @Majo0od Correct, it's not that uncommon in Windows applications. Reset the internet security level in Windows, you'll be 3 modals deep when you confirm. Agreed, it's not my favorite UI pattern either.
    – alanj
    Commented Jan 23, 2017 at 17:20

2 Answers 2


I would try to use a different approach to avoid the problem in the first place:

  • Advanced options expand in the same dialog. Maybe using some kind of expansion panel.
  • Advanced options dialog replaces the current dialog. So the standard options display also in the new Advanced dialog. This is similar to the former, but think of it like "Standard view" / "Advanced view".
  • I had it inline before, but there was just a bunch more options just added. This is a desktop application over Citrix so scrolling can be a pain for our users as it's extremely slow and laggy.
    – alanj
    Commented Jan 23, 2017 at 16:48
  • 2
    @alanj can you use Tabs instead of displaying all the options in one scroller?
    – Alvaro
    Commented Jan 23, 2017 at 16:56

The main goal here is to avoid ambiguity. Having two "Save" buttons is ambiguous here because they are nested. @Alvaro's answer provides two solutions to get rid of the nested "Save" buttons by removing nesting. If you think you need a nested form (for whatever reason), you could give the subform just a "Close" button and the main form some indicator showing when there are unsaved changes.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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