def body(self, frame):
        """ Creates the dialog body. Returns the widget that should have
            initial focus.
        """

        title = Label( text = "Choose Font" )
        frame.add( title )

        # Font family list ----------------------------------------------------

        family = ListBox()
        family.setMultipleSelect( False )
        family.setStyleName( "color", "#ffffff" )

        for family_name in families(master):
            family.addItem( item = family_name )

        # Font size spinner ---------------------------------------------------

        size = TextBox()
        frame.add( size )

        # Example text --------------------------------------------------------

        example = TextArea()

        example.addText( "This is example text.\n" )
        example.addText( "If you like this text, it can be your font." )

        def on_select( event ):
            idx = familt.getSelectedIndex()
            example.setStyleName( "font", family.getValue(idx) )
            example.setStyleName( "em", size.getText() )

        family.addChangeListener( on_select )

        return size # Given initial focus.