27 const PresenterContainer& array,
const QVector<IdToIgnore>& ids, QPointF scenePt)
51 ToolBase(
const ToolPalette_T& palette)
59 typename EventFun,
typename StateFun,
typename TimeSyncFun,
typename IntervalFun,
60 typename LeftBraceFun,
typename RightBraceFun,
typename SlotHandleFun,
63 const QGraphicsItem* item, StateFun st_fun, EventFun ev_fun, TimeSyncFun tn_fun,
64 IntervalFun cst_fun, LeftBraceFun lbrace_fun, RightBraceFun rbrace_fun,
65 SlotHandleFun handle_fun, NothingFun nothing_fun)
const
72 auto tryFun = [=](
auto fun,
const auto& id) {
82 auto parent = &this->m_palette.model();
86 case ItemType::Condition:
87 tryFun(ev_fun, itemToConditionId(item, parent));
90 tryFun(ev_fun, itemToEventId(item, parent));
93 case ItemType::FullViewInterval:
94 case ItemType::TemporalInterval:
95 tryFun(cst_fun, itemToIntervalId(item, parent));
97 case ItemType::GraphInterval:
98 tryFun(cst_fun, itemToGraphIntervalId(item, parent));
100 case ItemType::IntervalHeader:
101 tryFun(cst_fun, itemToIntervalId(item->parentItem(), parent));
103 case ItemType::LeftBrace:
104 tryFun(lbrace_fun, itemToIntervalId(item->parentItem(), parent));
106 case ItemType::RightBrace:
107 tryFun(rbrace_fun, itemToIntervalId(item->parentItem(), parent));
110 case ItemType::Trigger:
111 tryFun(tn_fun, itemToTriggerId(item, parent));
113 case ItemType::TimeSync:
114 tryFun(tn_fun, itemToTimeSyncId(item, parent));
117 case ItemType::StateOverlay:
118 tryFun(st_fun, itemToStateId(item->parentItem(), parent));
120 case ItemType::State:
121 tryFun(st_fun, itemToStateId(item, parent));
124 case ItemType::SlotFooter: {
125 if(
auto slot = itemToIntervalFromFooter(item, parent))
131 case ItemType::SlotFooterDelegate: {
132 if(
auto slot = itemToIntervalFromFooter(item->parentItem(), parent))
145 const ToolPalette_T& m_palette;