void ModelObjectTypeListView::addModelObjectType(const IddObjectType& iddObjectType, const std::string& name) { OSCollapsibleItemHeader* collapsibleItemHeader = new OSCollapsibleItemHeader(name, OSItemId("", "", false), m_headerType); auto modelObjectListView = new ModelObjectListView(iddObjectType, m_model, false,m_showLocalBCL); auto modelObjectTypeItem = new ModelObjectTypeItem(collapsibleItemHeader, modelObjectListView); addCollapsibleItem(modelObjectTypeItem); }
void ScriptFolderListView::addScriptFolder(const openstudio::path &folder, const std::string& name) { OSCollapsibleItemHeader* collapsibleItemHeader = new OSCollapsibleItemHeader(name, OSItemId("", "", false,""), m_headerType); ScriptsListView* scriptsListView = new ScriptsListView(m_rootPath / folder, false, m_draggable, m_removeable, m_fswatcher); OSCollapsibleItem* folderTypeItem = new OSCollapsibleItem(collapsibleItemHeader, scriptsListView); LOG(Debug, "Adding scriptslistview: " << openstudio::toString(m_rootPath/folder)); m_displayNames[m_rootPath / folder] = name; m_scriptsListViews[m_rootPath / folder] = scriptsListView; addCollapsibleItem(folderTypeItem); }
void VRFController::refreshNow() { if( ! m_dirty ) return; if( m_detailView ) { m_detailView->setId(OSItemId()); m_detailView->removeAllVRFTerminalViews(); if( m_currentSystem ) { m_detailView->setId(OSItemId(m_currentSystem->handle().toString(),modelToSourceId(m_currentSystem->model()),false)); connect(m_detailView.data(), &VRFSystemView::inspectClicked, this, &VRFController::inspectOSItem); std::vector<model::ZoneHVACTerminalUnitVariableRefrigerantFlow> terminals = m_currentSystem->terminals(); for(std::vector<model::ZoneHVACTerminalUnitVariableRefrigerantFlow>::iterator it = terminals.begin(); it != terminals.end(); ++it) { VRFTerminalView * vrfTerminalView = new VRFTerminalView(); vrfTerminalView->setId(OSItemId(it->handle().toString(),modelToSourceId(it->model()),false)); m_detailView->addVRFTerminalView(vrfTerminalView); connect(vrfTerminalView, &VRFTerminalView::componentDroppedOnZone, this, &VRFController::onVRFTerminalViewDrop); connect(vrfTerminalView, &VRFTerminalView::removeZoneClicked, this, &VRFController::onRemoveZoneClicked); connect(vrfTerminalView, &VRFTerminalView::removeTerminalClicked, this, &VRFController::onRemoveTerminalClicked); connect(vrfTerminalView, &VRFTerminalView::terminalIconClicked, this, &VRFController::inspectOSItem); if( boost::optional<model::ThermalZone> zone = it->thermalZone() ) { vrfTerminalView->zoneDropZone->setHasZone(true); vrfTerminalView->removeZoneButtonItem->setVisible(true); QString zoneName = QString::fromStdString(zone->name().get()); vrfTerminalView->zoneDropZone->setText(zoneName); vrfTerminalView->zoneDropZone->setToolTip(zoneName); } } } } m_dirty = false; }
void RefrigerationController::removeCondenser(const OSItemId & itemid) { if( boost::optional<model::Model> model = OSAppBase::instance()->currentModel() ) { if(boost::optional<model::ModelObject> mo = model->getModelObject<model::ModelObject>(Handle(itemid.itemId()))) { mo->remove(); OS_ASSERT(m_detailView); m_detailView->refrigerationCondenserView->setCondenserId(OSItemId()); } } }
OSItemId scriptToItemId(const openstudio::path &t_path) { return OSItemId(openstudio::toQString(t_path), openstudio::toQString(t_path.parent_path().filename()), false, ""); }
OSItemId modelObjectToItemId(const openstudio::model::ModelObject& modelObject, bool isDefaulted) { std::stringstream ss; ss << modelObject; return OSItemId(modelObject.handle().toString(), modelToSourceId(modelObject.model()), isDefaulted, toQString(ss.str())); }
void RefrigerationController::refreshNow() { if( ! m_dirty ) return; if( m_detailView ) { m_detailView->refrigerationCondenserView->setCondenserId(OSItemId()); m_detailView->refrigerationSubCoolerView->setId(OSItemId()); m_detailView->refrigerationSHXView->setId(OSItemId()); m_detailView->refrigerationCasesView->removeAllCaseDetailViews(); m_detailView->refrigerationCompressorView->removeAllCompressorDetailViews(); if( m_currentSystem ) { m_detailView->setId(OSItemId(m_currentSystem->handle(),QString(),false)); if( boost::optional<model::RefrigerationSubcoolerLiquidSuction> subcooler = m_currentSystem->liquidSuctionHeatExchangerSubcooler() ) { m_detailView->refrigerationSHXView->setId(OSItemId(subcooler->handle(),QString(),false)); m_detailView->refrigerationSHXView->setName(QString::fromStdString(subcooler->name().get())); } if( boost::optional<model::RefrigerationSubcoolerMechanical> subcooler = m_currentSystem->mechanicalSubcooler() ) { m_detailView->refrigerationSubCoolerView->setId(OSItemId(subcooler->handle(),QString(),false)); m_detailView->refrigerationSubCoolerView->setName(QString::fromStdString(subcooler->name().get())); } if( boost::optional<model::ModelObject> condenser = m_currentSystem->refrigerationCondenser() ) { m_detailView->refrigerationCondenserView->setCondenserId(OSItemId(condenser->handle(),QString(),false)); m_detailView->refrigerationCondenserView->setCondenserName(QString::fromStdString(condenser->name().get())); } // insert compressors std::vector<model::RefrigerationCompressor> compressors = m_currentSystem->compressors(); int compressorIndex = 1; for( std::vector<model::RefrigerationCompressor>::iterator it = compressors.begin(); it != compressors.end(); it++ ) { RefrigerationCompressorDetailView * detailView = new RefrigerationCompressorDetailView(); detailView->setId(OSItemId(it->handle(),QString(),false)); detailView->setLabel(QString::number(compressorIndex)); bool bingo = connect(detailView,SIGNAL(removeClicked(const OSItemId &)), this,SLOT(removeCompressor(const OSItemId &))); OS_ASSERT(bingo); bingo = connect(detailView,SIGNAL(inspectClicked(const OSItemId &)), this,SLOT(inspectOSItem(const OSItemId &))); OS_ASSERT(bingo); m_detailView->refrigerationCompressorView->insertCompressorDetailView(0,detailView); compressorIndex++; } // insert cases std::vector<model::RefrigerationCase> cases = m_currentSystem->cases(); m_detailView->refrigerationCasesView->setNumberOfDisplayCases(cases.size()); for( std::vector<model::RefrigerationCase>::iterator it = cases.begin(); it != cases.end(); it++ ) { RefrigerationCaseDetailView * detailView = new RefrigerationCaseDetailView(); detailView->setId(OSItemId(it->handle(),QString(),false)); detailView->setName(QString::fromStdString(it->name().get())); bool bingo = connect(detailView,SIGNAL(removeClicked(const OSItemId &)), this,SLOT(removeCase(const OSItemId &))); OS_ASSERT(bingo); bingo = connect(detailView,SIGNAL(inspectClicked(const OSItemId &)), this,SLOT(inspectOSItem(const OSItemId &))); OS_ASSERT(bingo); m_detailView->refrigerationCasesView->insertCaseDetailView(0,detailView); } // insert walkins std::vector<model::RefrigerationWalkIn> walkins = m_currentSystem->walkins(); m_detailView->refrigerationCasesView->setNumberOfWalkinCases(walkins.size()); for( std::vector<model::RefrigerationWalkIn>::iterator it = walkins.begin(); it != walkins.end(); it++ ) { RefrigerationCaseDetailView * detailView = new RefrigerationCaseDetailView(); detailView->setId(OSItemId(it->handle(),QString(),false)); detailView->setName(QString::fromStdString(it->name().get())); bool bingo = connect(detailView,SIGNAL(removeClicked(const OSItemId &)), this,SLOT(removeCase(const OSItemId &))); OS_ASSERT(bingo); bingo = connect(detailView,SIGNAL(inspectClicked(const OSItemId &)), this,SLOT(inspectOSItem(const OSItemId &))); OS_ASSERT(bingo); m_detailView->refrigerationCasesView->insertCaseDetailView(0,detailView); } m_detailView->adjustLayout(); } } m_dirty = false; }