void CustomEdit::recordClicked(void) { if (!checkSyntax()) return; RecordingRule *record = new RecordingRule(); MythUIButtonListItem* item = m_ruleList->GetItemCurrent(); CustomRuleInfo rule = qVariantValue<CustomRuleInfo>(item->GetData()); int cur_recid = rule.recordid.toInt(); if (cur_recid > 0) { record->ModifyPowerSearchByID(cur_recid, m_titleEdit->GetText(), evaluate(m_descriptionEdit->GetText()), m_subtitleEdit->GetText()); } else { record->LoadBySearch(kPowerSearch, m_titleEdit->GetText(), evaluate(m_descriptionEdit->GetText()), m_subtitleEdit->GetText(), m_pginfo->GetTitle().isEmpty() ? NULL : m_pginfo); } MythScreenStack *mainStack = GetMythMainWindow()->GetMainStack(); ScheduleEditor *schededit = new ScheduleEditor(mainStack, record); if (schededit->Create()) { mainStack->AddScreen(schededit); connect(schededit, SIGNAL(ruleSaved(int)), SLOT(scheduleCreated(int))); } else delete schededit; }