nl_tokens: The Callback to start editing the next / previous property / selector .
pl_tokens: function moveToNextCallback ( alreadyNew , valueChanged , section ) { if ( ! moveDirection ) return ; // User just tabbed through without changes. if ( moveTo && moveTo . parent ) { moveTo . startEditing ( ! isEditingName ? moveTo . nameElement : moveTo . valueElement ) ; return ; } // User has made a change then tabbed, wiping all the original treeElements. // Recalculate the new treeElement for the same property we were going to edit next. if ( moveTo && ! moveTo . parent ) { var rootElement = section . propertiesTreeOutline . rootElement ( ) ; if ( moveDirection === "forward" && blankInput && ! isEditingName ) -- moveToIndex ; if ( moveToIndex >= rootElement . childCount ( ) && ! this . _newProperty ) createNewProperty = true ; else { var treeElement = moveToIndex >= 0 ? rootElement . childAt ( moveToIndex ) : null ; if ( treeElement ) { var elementToEdit = ! isEditingName || isPropertySplitPaste ? treeElement . nameElement : treeElement . valueElement ; if ( alreadyNew && blankInput ) elementToEdit = moveDirection === "forward" ? treeElement . nameElement : treeElement . valueElement ; treeElement . startEditing ( elementToEdit ) ; return ; } else if ( ! alreadyNew ) moveToSelector = true ; } } // Create a new attribute in this section (or move to next editable selector if possible). if ( createNewProperty ) { if ( alreadyNew && ! valueChanged && ( isEditingName ^ ( moveDirection === "backward" ) ) ) return ; section . addNewBlankProperty ( ) . startEditing ( ) ; return ; } if ( abandonNewProperty ) { moveTo = this . _findSibling ( moveDirection ) ; var sectionToEdit = ( moveTo || moveDirection === "backward" ) ? <mask> : section . nextEditableSibling ( ) ; if ( sectionToEdit ) { if ( sectionToEdit . style ( ) . parentRule ) sectionToEdit . startEditingSelector ( ) ; else sectionToEdit . _moveEditorFromSelector ( moveDirection ) ; } return ; } if ( moveToSelector ) { if ( section . style ( ) . parentRule ) section . startEditingSelector ( ) ; else section . _moveEditorFromSelector ( moveDirection ) ; } }