MacOS X introduced the idea of a sheet; a dialog attached to a window that drops down to provide document-modal interaction. Dialogs in prior versions of MacOS were usually application-modal. Sheets allow better modularity in the user interface of an application. However, unlike application-modal dialogs, sheets are not blocking; that is, their appearance does not suspend the execution of application code. This takes some getting used to, and REALbasic doesn’t provide a built-in framework for communication involving sheets. In this article, we’ll take a look at how that communication should work, and develop a simple framework that allows us to use sheets more effectively.