Dialog
Dialog是application modal的,意味着如果没有结束这个Dialog,那用户将无法对这个application做任何操作。
Sheets
Sheets是document modal的,意味着如果没有结束这个sheet,那用户将无法对这个Document或者这个window进行任何操作。
什么是啥使用Sheets:
- 需要一个针对某个document的特定dialog时,比如saving, printing。Cocoa的NSSavePanel和NSPrintPanel将其自身present为sheets。
- 某个不创建document的单窗口应用需要一个dialog时,一个单窗口程序可能会用sheet来请求用户接受licence agreement。
- 其他特定window相关的dialogs
Reference:
Sheets: https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Sheets/Concepts/AboutSheets.html#//apple_ref/doc/uid/20001043-BABFIBIA