nsIXULTreeBuilderObserver
  This interface allows clients of the XULTreeBuilder to define domain 
  specific handling of specific nsITreeView methods that 
  XULTreeBuilder does not implement.
[scriptable, uuid(57ced9a7-ec0b-4a0e-8aeb-5da32ebe951c)]
interface nsIXULTreeBuilderObserver : nsISupports

Constants


          
const long DROP_BEFORE = -1

          
const long DROP_ON = 0

          
const long DROP_AFTER = 1

Methods

 Methods used by the drag feedback code to determine if a drag is allowable at
 the current location. To get the behavior where drops are only allowed on
 items, such as the mailNews folder pane, always return false whe
 the orientation is not DROP_ON.
boolean canDrop(in long index, in long orientation, in nsIDOMDataTransfer dataTransfer)
 Called when a cell in a non-selectable cycling column (e.g. 
 unread/flag/etc.) is clicked.
void onCycleCell(in long row, in wstring colID)
 
 Called when a header is clicked.
void onCycleHeader(in wstring colID, in nsIDOMElement elt)
 Called when the user drops something on this view. The |orientation| param
 specifies before/on/after the given |row|.
void onDrop(in long row, in long orientation, in nsIDOMDataTransfer dataTransfer)
 A command API that can be used to invoke commands on the selection.  
 The tree will automatically invoke this method when certain keys 
 are pressed.  For example, when the DEL key is pressed, performAction 
 will be called with the "delete" string. 
void onPerformAction(in wstring action)
 A command API that can be used to invoke commands on a specific cell.
void onPerformActionOnCell(in wstring action, in long row, in wstring colID)
 A command API that can be used to invoke commands on a specific row.
void onPerformActionOnRow(in wstring action, in long row)
 
 Called when selection in the tree changes
void onSelectionChanged()
 
 Called when an item is opened or closed. 
void onToggleOpenState(in long index)