return (int)(scenePos().y() / KdenliveSettings::trackheight());
}
+void AbstractGroupItem::setItemLocked(bool locked)
+{
+ if (locked) {
+ setSelected(false);
+ setFlag(QGraphicsItem::ItemIsMovable, false);
+ setFlag(QGraphicsItem::ItemIsSelectable, false);
+ } else {
+ setFlag(QGraphicsItem::ItemIsMovable, true);
+ setFlag(QGraphicsItem::ItemIsSelectable, true);
+ }
+}
+
+bool AbstractGroupItem::isItemLocked() const
+{
+ return !(flags() & (QGraphicsItem::ItemIsSelectable));
+}
+
CustomTrackScene* AbstractGroupItem::projectScene()
{
if (scene()) return static_cast <CustomTrackScene*>(scene());
//virtual
QVariant AbstractGroupItem::itemChange(GraphicsItemChange change, const QVariant &value)
{
+ if (change == QGraphicsItem::ItemSelectedChange) {
+ if (value.toBool()) setZValue(10);
+ else setZValue(1);
+ }
if (change == ItemPositionChange && scene() && parentItem() == 0) {
// calculate new position.
const int trackHeight = KdenliveSettings::trackheight();