void InspectorController::moveBranchForZoneSupply(model::ThermalZone & zone, const Handle & newPlenumHandle) { model::Model model = zone.model(); if(boost::optional<model::AirLoopHVACSupplyPlenum> supplyPlenum = model.getModelObject<model::AirLoopHVACSupplyPlenum>(newPlenumHandle)) { if( boost::optional<model::ThermalZone> plenumZone = supplyPlenum->thermalZone() ) { zone.setSupplyPlenum(plenumZone.get()); } } else if(boost::optional<model::ThermalZone> plenumZone = model.getModelObject<model::ThermalZone>(newPlenumHandle)) { zone.setSupplyPlenum(plenumZone.get()); } else { zone.removeSupplyPlenum(); } // This updates the plenum chooser combo box // Need to process events first because HVAC scene needs to redraw to supply colors to combo box QApplication::instance()->processEvents(); OS_ASSERT(m_inspectorView); m_inspectorView->update(); }