case Column::IN:
case Column::OUT:
case Column::DURATION:
+ case Column::FADE_TIME:
return Qt::AlignRight + Qt::AlignVCenter;
case Column::CAMERA:
return Qt::AlignCenter;
return qlonglong(clips[row].stream_idx + 1);
case Column::DESCRIPTION:
return QString::fromStdString(clips[row].descriptions[clips[row].stream_idx]);
+ case Column::FADE_TIME: {
+ stringstream ss;
+ ss.imbue(locale("C"));
+ ss.precision(3);
+ ss << fixed << clips[row].fade_time_seconds;
+ return QString::fromStdString(ss.str());
+ }
default:
return "";
}
return "Camera";
case Column::DESCRIPTION:
return "Description";
+ case Column::FADE_TIME:
+ return "Fade time";
default:
return "";
}
switch (Column(column)) {
case Column::DESCRIPTION:
case Column::CAMERA:
+ case Column::FADE_TIME:
return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsEditable;
return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsEditable;
default:
emit_data_changed(row);
return true;
}
+ case Column::FADE_TIME: {
+ bool ok;
+ double val = value.toDouble(&ok);
+ if (!ok || !(val >= 0.0)) {
+ return false;
+ }
+ clips[row].fade_time_seconds = val;
+ emit_data_changed(row);
+ return true;
+ }
default:
return false;
}
clip.descriptions[camera_idx] = clip_proto.description(camera_idx);
}
clip.stream_idx = clip_proto.stream_idx();
+ clip.fade_time_seconds = clip_proto.fade_time_seconds();
return clip;
}
*clip_proto->add_description() = clip.descriptions[camera_idx];
}
clip_proto->set_stream_idx(clip.stream_idx);
+ clip_proto->set_fade_time_seconds(clip.fade_time_seconds);
}
} // namespace