EntityListWidgetItem *ECEditorWindow::AddEntity(entity_id_t entity_id, bool udpate_ui) { EntityListWidgetItem *item = 0; PROFILE(ECEditorWindow_AddEntity); if (entityList) { entityList->blockSignals(true); //If entity don't have EC_Name then entity_name is same as it's id. QString entity_name = QString::number(entity_id); EntityPtr entity = framework->Scene()->MainCameraScene()->GetEntity(entity_id); if (entity && entity->GetComponent<EC_Name>()) entity_name.append(" " + entity->Name()); int row = AddUniqueListItem(entity, entityList, entity_name); item = dynamic_cast<EntityListWidgetItem *>(entityList->item(row)); assert(item); entityList->blockSignals(false); } if (udpate_ui) RefreshPropertyBrowser(); return item; }
EntityListWidgetItem *ECEditorWindow::AddEntity(const EntityPtr &entity, bool updateUi) { PROFILE(ECEditorWindow_AddEntity); EntityListWidgetItem *item = 0; entityList->blockSignals(true); QString text = QString("%1 %2").arg(entity->Id()).arg(entity->Name().isEmpty() ? "(no name)" : entity->Name()); int row = AddUniqueListItem(entity, entityList, text); item = checked_static_cast<EntityListWidgetItem *>(entityList->item(row)); entityList->blockSignals(false); if (updateUi) Refresh(); return item; }