summaryrefslogtreecommitdiffstats
path: root/src/Authoring/Qt3DStudio/Palettes/TimelineGraphicsView/ui/RowTree.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Authoring/Qt3DStudio/Palettes/TimelineGraphicsView/ui/RowTree.h')
-rw-r--r--src/Authoring/Qt3DStudio/Palettes/TimelineGraphicsView/ui/RowTree.h25
1 files changed, 19 insertions, 6 deletions
diff --git a/src/Authoring/Qt3DStudio/Palettes/TimelineGraphicsView/ui/RowTree.h b/src/Authoring/Qt3DStudio/Palettes/TimelineGraphicsView/ui/RowTree.h
index b028e94d..179292c9 100644
--- a/src/Authoring/Qt3DStudio/Palettes/TimelineGraphicsView/ui/RowTree.h
+++ b/src/Authoring/Qt3DStudio/Palettes/TimelineGraphicsView/ui/RowTree.h
@@ -33,8 +33,9 @@
#include "TimelineConstants.h"
#include "RowTypes.h"
#include "StudioObjectTypes.h"
-#include "RowTreeLabelItem.h"
+#include "RowTreeLabel.h"
#include "Qt3DSDMHandles.h"
+#include "Bindings/ITimelineItem.h"
#include <QtCore/qpropertyanimation.h>
#include <QtCore/qparallelanimationgroup.h>
@@ -93,14 +94,15 @@ public:
void removeChild(RowTree *child);
void setDnDState(DnDState state, DnDState onlyIfState = DnDState::Any, bool recursive = false);
void setActionStates(ActionStates states);
+ void setActivateActions(ITimelineItem::ActivateActions activateActions);
void setTreeWidth(double w);
void setBinding(ITimelineItemBinding *binding);
void setPropBinding(ITimelineItemProperty *binding); // for property rows
void selectLabel();
- void togglePropertyExpanded();
- void setPropertyExpanded(bool expand);
+ void togglePropertyExpanded(const QPointF &scenePos = {});
void showDataInputSelector(const QString &propertyname, const QPoint &pos);
ITimelineItemProperty *propBinding();
+ void refreshPropBinding(bool forceSync = false);
TreeControlType getClickedControl(const QPointF &scenePos);
bool shy() const;
bool visible() const;
@@ -152,11 +154,14 @@ public:
void updateFilter();
void updateLock(bool state);
void updateSubpresentations(int updateParentsOnlyVal = 0);
+ int rightDividerX() const;
int clipX() const;
qt3dsdm::Qt3DSDMInstanceHandle instance() const;
protected:
void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) override;
+ void hoverMoveEvent(QGraphicsSceneHoverEvent *event) override;
+ void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override;
private:
void initialize();
@@ -183,7 +188,8 @@ private:
bool m_visible = true;
bool m_locked = false;
bool m_isProperty = false;
- bool m_isPropertyExpanded = false;
+ bool m_propGraphExpanded = false;
+ int m_propGraphHeight = TimelineConstants::ROW_GRAPH_H;
bool m_master = false;
bool m_filtered = false;
bool m_arrowVisible = false;
@@ -192,25 +198,32 @@ private:
bool m_onMasterSlide = false;
DnDState m_dndState = DnDState::None;
ActionStates m_actionStates = ActionState::None;
+ ITimelineItem::ActivateActions m_activateActions = ITimelineItem::ActivateAction::None;
bool m_hasSubpresentation = false;
int m_numDescendantSubpresentations = 0;
ExpandState m_expandState = ExpandState::HiddenCollapsed;
TimelineGraphicsScene *m_scene;
- RowTreeLabelItem m_labelItem;
+ RowTreeLabel m_labelItem;
EStudioObjectType m_objectType = OBJTYPE_UNKNOWN;
- QString m_propertyType; // for property rows
QString m_label;
QList<RowTree *> m_childRows;
QList<RowTree *> m_childProps;
QStringList m_variantsGroups;
ITimelineItemBinding *m_binding = nullptr;
ITimelineItemProperty *m_PropBinding = nullptr; // for property rows
+ QRect *m_hoveredRect = nullptr;
QRect m_rectArrow;
QRect m_rectShy;
QRect m_rectVisible;
QRect m_rectLocked;
QRect m_rectType;
+ QRect m_rectMaximizePropGraph;
+ QRect m_rectFitPropGraph;
+ QRect m_rectColorGradient;
+ QVector<QRect> m_rectChannels;
+ QVector<bool> m_activeChannels;
+
QParallelAnimationGroup m_expandAnimation;
QPropertyAnimation *m_expandHeightAnimation;