I agree its better to handle this globally. I guess I'd have to dig into the createItem code to determine whether passing an empty string would work. It seems to me that isSkipNode shouldnt even be called if its an instanceof menu and that would possibly solve the logical dilemma although it would not prevent people from setting isSkipNode on the Menu. Perhaps the event should throw an exception if you call isSkipNode(true) and the item is of type menu?