Ejemplo n.º 1
0
HKWidget *HKUserInterface::CreateWidget(const char *pWidgetType)
{
	HKWidgetFactory::FactoryType *pType;
	HKWidget *pWidget = pFactory->Create(pWidgetType, &pType);
	if(!pWidget)
		return NULL;

	HKWidgetRenderer *pRenderer = pRendererFactory->Create(pWidgetType);
	while(!pRenderer && pType->pParent)
	{
		pType = pType->pParent;
		pRenderer = pRendererFactory->Create(pType->typeName);
	}
	if(pRenderer)
		pWidget->SetRenderer(pRenderer);

	return pWidget;
}