void SchedulesTabController::addWinterProfile(model::ScheduleRuleset & scheduleRuleset, UUID scheduleDayHandle) { boost::optional<model::ScheduleDay> scheduleDay; if (!scheduleDayHandle.isNull()){ boost::optional<model::ScheduleDay> scheduleDayToCopy = scheduleRuleset.model().getModelObject<model::ScheduleDay>(scheduleDayHandle); if (scheduleDayToCopy){ scheduleDay = scheduleDayToCopy->clone().cast<model::ScheduleDay>(); } } if (!scheduleDay){ scheduleDay = model::ScheduleDay(scheduleRuleset.model()); boost::optional<model::ScheduleTypeLimits> limits = scheduleRuleset.scheduleTypeLimits(); if (limits) { scheduleDay->setScheduleTypeLimits(*limits); } scheduleDay->addValue(Time(1, 0), defaultStartingValue(*scheduleDay)); } OS_ASSERT(scheduleDay); scheduleRuleset.setWinterDesignDaySchedule(*scheduleDay); scheduleDay->remove(); m_schedulesView->showWinterScheduleDay(scheduleRuleset); }
void SchedulesTabController::addWinterProfile(model::ScheduleRuleset & scheduleRuleset) { model::ScheduleDay scheduleDay(scheduleRuleset.model()); scheduleDay.addValue(Time(1,0),defaultStartingValue(scheduleDay)); scheduleRuleset.setWinterDesignDaySchedule(scheduleDay); scheduleDay.remove(); m_schedulesView->showWinterScheduleDay(scheduleRuleset); }
void SchedulesTabController::addRule(model::ScheduleRuleset & scheduleRuleset, UUID scheduleDayHandle) { boost::optional<model::ScheduleRule> rule; if (!scheduleDayHandle.isNull()){ boost::optional<model::ScheduleDay> scheduleDayToCopy = scheduleRuleset.model().getModelObject<model::ScheduleDay>(scheduleDayHandle); if (scheduleDayToCopy){ rule = model::ScheduleRule(scheduleRuleset, scheduleDayToCopy->clone().cast<model::ScheduleDay>()); } } if (!rule){ rule = model::ScheduleRule(scheduleRuleset); rule->daySchedule().addValue(Time(1, 0), defaultStartingValue(rule->daySchedule())); } OS_ASSERT(rule); }