E eu que ja usava isso tudo no ExtJS com nomes diferentes a mais de 14 anos (sim, há 14 anos atrás!)