#29 widget factory access by name or key