Changes between Initial Version and Version 1 of EasyGuiInterfaceBuilderSupport

08/30/08 06:42:17 (8 years ago)



  • EasyGuiInterfaceBuilderSupport

    v1 v1  
     1= Interface Builder Support = 
     3You can create a window or menu by specifying all of its properties directly, or you can use the Apple Interface Builder application to create an object description called a nib file. You can then specify the nib file with the '':view-nib-path'' initarg and the particular description with the '':view-nib-name'' initarg when you create the window or menu object. Once the object is initialized from the nib file, any additional initargs specified in the make-instance are used to override the nib file settings. 
     5When you load a window or menu from a nib file, subview and menu-item objects are created automatically for subviews and menu items. After a subview or menu item is automatically created, the generic function ''initialize-view-from-nib'' is called to give you a chance to update its settings (such as event handlers). 
     7{{{(initialize-from-nib window subview) [method]}}} 
     9Called when a window is being created based on a template from a nib file. The default method does nothing. 
     11{{{(initialize-from-nib menu menu-item) [method]}}} 
     13Called when a menu is being created based on a template from a nib file. The default method does nothing. 
     15''TODO: (this note applies to carbon, need to figure out what to do for Cocoa): Controls and menu items in nib files will typically have a command id. To associate a handler with the command, you have two options. One is to associate the handler with the item that generates the command, by using set-view-action inside the item's initialize-view-from-nib. The other option is to allow the comand to be sent to whichever view is the user focus at the time, which you do by not setting the item's view-action. The command will then be propagated to the outermost view that has a handler for it. The handler can be established for a view either when it is first created, by using the initarg associated with the command id by define-carbon-command-event, or at any time by calling set-carbon-event-handler.''