code: def apply(style)
           # Check the input style.
           if !style.is_character_style?
              RTFError.fire("Non-character style specified to the "\
                            "CommandNode#apply() method.")
           end
  
           # Store fonts and colours.
           root.colours << style.foreground unless style.foreground.nil?
           root.colours << style.background unless style.background.nil?
           root.fonts << style.font unless style.font.nil?
  
           # Generate the command node.
           node = CommandNode.new(self, style.prefix(root.fonts, root.colours))
           yield node if block_given?
           self.store(node)
        end
docs: This method provides a short cut means for applying multiple styles via
   single command node. The method accepts a block that will be passed a
   reference to the node created. Once the block is complete the new node
   will be append as the last child of the CommandNode the method is called
   on.
  
   ==== Parameters
   style::  A reference to a CharacterStyle object that contains the style
            settings to be applied.
  
   ==== Exceptions
   RTFError::  Generated whenever a non-character style is specified to
               the method.