Krita Source Code Documentation
Loading...
Searching...
No Matches
KisAnimTimelineFramesView::Private Struct Reference

Public Member Functions

QItemViewPaintPairs draggablePaintPairs (const QModelIndexList &indexes, QRect *r) const
 
 Private (KisAnimTimelineFramesView *_q)
 
QPixmap renderToPixmap (const QModelIndexList &indexes, QRect *r) const
 
QStyleOptionViewItem viewOptionsV4 () const
 

Public Attributes

KisActionManager * actionMan = 0
 
QToolButton * addLayersButton
 
KoCanvasBase * canvas
 
KisColorLabelSelectorWidgetMenuWrapper * colorSelector
 
QWidgetAction * colorSelectorAction
 
bool dragInProgress
 
bool dragWasSuccessful
 
QMenu * existingLayersMenu
 
int fps
 
KisAnimTimelineTimeHeader * horizontalRuler
 
QPoint initialDragPanPos
 
QPoint initialDragPanValue
 
TimelineInsertKeyframeDialog * insertKeyframeDialog
 
QTimer kineticScrollInfiniteFrameUpdater
 
Qt::KeyboardModifiers lastPressedModifier
 
QPoint lastPressedPosition
 
QMenu * layerEditingMenu
 
KisAnimTimelineLayersHeader * layersHeader
 
KisAnimTimelineFramesModel * model
 
KisCustomModifiersCatcher * modifiersCatcher
 
KisColorLabelSelectorWidgetMenuWrapper * multiframeColorSelector
 
QWidgetAction * multiframeColorSelectorAction
 
KisAction * pinLayerToTimelineAction
 
KisAnimTimelineFramesView * q
 
KisSignalCompressor selectionChangedCompressor
 
KisIconToolTip tip
 
KisZoomButton * zoomDragButton
 

Detailed Description

Definition at line 59 of file KisAnimTimelineFramesView.cpp.

Constructor & Destructor Documentation

◆ Private()

KisAnimTimelineFramesView::Private::Private ( KisAnimTimelineFramesView * _q)
inline

Definition at line 61 of file KisAnimTimelineFramesView.cpp.

62 : q(_q)
63 , model(nullptr)
64 , horizontalRuler(nullptr)
65 , layersHeader(nullptr)
66 , addLayersButton(nullptr)
68 , colorSelector(nullptr)
69 , colorSelectorAction(nullptr)
72 , layerEditingMenu(nullptr)
73 , existingLayersMenu(nullptr)
74 , insertKeyframeDialog(nullptr)
75 , zoomDragButton(nullptr)
76 , canvas(nullptr)
77 , fps(1)
78 , dragInProgress(false)
79 , dragWasSuccessful(false)
83 , tip(_q)
84 {
85 kineticScrollInfiniteFrameUpdater.setTimerType(Qt::CoarseTimer);
86 }
TimelineInsertKeyframeDialog * insertKeyframeDialog
KisColorLabelSelectorWidgetMenuWrapper * multiframeColorSelector
KisColorLabelSelectorWidgetMenuWrapper * colorSelector

References kineticScrollInfiniteFrameUpdater.

Member Function Documentation

◆ draggablePaintPairs()

QItemViewPaintPairs KisAnimTimelineFramesView::Private::draggablePaintPairs ( const QModelIndexList & indexes,
QRect * r ) const

Definition at line 1708 of file KisAnimTimelineFramesView.cpp.

1709{
1710 Q_ASSERT(r);
1711 QRect &rect = *r;
1712 const QRect viewportRect = q->viewport()->rect();
1714 for (int i = 0; i < indexes.count(); ++i) {
1715 const QModelIndex &index = indexes.at(i);
1716 const QRect current = q->visualRect(index);
1717 if (current.intersects(viewportRect)) {
1718 ret += qMakePair(current, index);
1719 rect |= current;
1720 }
1721 }
1722 rect &= viewportRect;
1723 return ret;
1724}

◆ renderToPixmap()

QPixmap KisAnimTimelineFramesView::Private::renderToPixmap ( const QModelIndexList & indexes,
QRect * r ) const

Definition at line 1726 of file KisAnimTimelineFramesView.cpp.

1727{
1728 Q_ASSERT(r);
1729 QItemViewPaintPairs paintPairs = draggablePaintPairs(indexes, r);
1730
1731 if (paintPairs.isEmpty())
1732 return QPixmap();
1733
1734 QPixmap pixmap(r->size());
1735 pixmap.fill(Qt::transparent);
1736
1737 QPainter painter(&pixmap);
1738
1739 QStyleOptionViewItem option = viewOptionsV4();
1740 option.state |= QStyle::State_Selected;
1741
1742 for (int j = 0; j < paintPairs.count(); ++j) {
1743 option.rect = paintPairs.at(j).first.translated(-r->topLeft());
1744 const QModelIndex &current = paintPairs.at(j).second;
1745 //adjustViewOptionsForIndex(&option, current);
1746
1747#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
1748 q->itemDelegate(current)->paint(&painter, option, current);
1749#else
1750 q->itemDelegateForIndex(current)->paint(&painter, option, current);
1751#endif
1752 }
1753
1754 return pixmap;
1755}
QItemViewPaintPairs draggablePaintPairs(const QModelIndexList &indexes, QRect *r) const

◆ viewOptionsV4()

QStyleOptionViewItem KisAnimTimelineFramesView::Private::viewOptionsV4 ( ) const

Definition at line 1694 of file KisAnimTimelineFramesView.cpp.

1695{
1696#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
1697 QStyleOptionViewItem option = q->viewOptions();
1698#else
1699 QStyleOptionViewItem option;
1700 q->initViewItemOption(&option);
1701#endif
1702 option.locale = q->locale();
1703 option.locale.setNumberOptions(QLocale::OmitGroupSeparator);
1704 option.widget = q;
1705 return option;
1706}

References q.

Member Data Documentation

◆ actionMan

KisActionManager* KisAnimTimelineFramesView::Private::actionMan = 0

Definition at line 130 of file KisAnimTimelineFramesView.cpp.

◆ addLayersButton

QToolButton* KisAnimTimelineFramesView::Private::addLayersButton

Definition at line 94 of file KisAnimTimelineFramesView.cpp.

◆ canvas

KoCanvasBase* KisAnimTimelineFramesView::Private::canvas

Definition at line 107 of file KisAnimTimelineFramesView.cpp.

◆ colorSelector

KisColorLabelSelectorWidgetMenuWrapper* KisAnimTimelineFramesView::Private::colorSelector

Definition at line 97 of file KisAnimTimelineFramesView.cpp.

◆ colorSelectorAction

QWidgetAction* KisAnimTimelineFramesView::Private::colorSelectorAction

Definition at line 98 of file KisAnimTimelineFramesView.cpp.

◆ dragInProgress

bool KisAnimTimelineFramesView::Private::dragInProgress

Definition at line 113 of file KisAnimTimelineFramesView.cpp.

◆ dragWasSuccessful

bool KisAnimTimelineFramesView::Private::dragWasSuccessful

Definition at line 114 of file KisAnimTimelineFramesView.cpp.

◆ existingLayersMenu

QMenu* KisAnimTimelineFramesView::Private::existingLayersMenu

Definition at line 103 of file KisAnimTimelineFramesView.cpp.

◆ fps

int KisAnimTimelineFramesView::Private::fps

Definition at line 109 of file KisAnimTimelineFramesView.cpp.

◆ horizontalRuler

KisAnimTimelineTimeHeader* KisAnimTimelineFramesView::Private::horizontalRuler

Definition at line 91 of file KisAnimTimelineFramesView.cpp.

◆ initialDragPanPos

QPoint KisAnimTimelineFramesView::Private::initialDragPanPos

Definition at line 111 of file KisAnimTimelineFramesView.cpp.

◆ initialDragPanValue

QPoint KisAnimTimelineFramesView::Private::initialDragPanValue

Definition at line 110 of file KisAnimTimelineFramesView.cpp.

◆ insertKeyframeDialog

TimelineInsertKeyframeDialog* KisAnimTimelineFramesView::Private::insertKeyframeDialog

Definition at line 104 of file KisAnimTimelineFramesView.cpp.

◆ kineticScrollInfiniteFrameUpdater

QTimer KisAnimTimelineFramesView::Private::kineticScrollInfiniteFrameUpdater

Definition at line 120 of file KisAnimTimelineFramesView.cpp.

◆ lastPressedModifier

Qt::KeyboardModifiers KisAnimTimelineFramesView::Private::lastPressedModifier

Definition at line 118 of file KisAnimTimelineFramesView.cpp.

◆ lastPressedPosition

QPoint KisAnimTimelineFramesView::Private::lastPressedPosition

Definition at line 117 of file KisAnimTimelineFramesView.cpp.

◆ layerEditingMenu

QMenu* KisAnimTimelineFramesView::Private::layerEditingMenu

Definition at line 102 of file KisAnimTimelineFramesView.cpp.

◆ layersHeader

KisAnimTimelineLayersHeader* KisAnimTimelineFramesView::Private::layersHeader

Definition at line 92 of file KisAnimTimelineFramesView.cpp.

◆ model

KisAnimTimelineFramesModel* KisAnimTimelineFramesView::Private::model

Definition at line 89 of file KisAnimTimelineFramesView.cpp.

◆ modifiersCatcher

KisCustomModifiersCatcher* KisAnimTimelineFramesView::Private::modifiersCatcher

Definition at line 116 of file KisAnimTimelineFramesView.cpp.

◆ multiframeColorSelector

KisColorLabelSelectorWidgetMenuWrapper* KisAnimTimelineFramesView::Private::multiframeColorSelector

Definition at line 99 of file KisAnimTimelineFramesView.cpp.

◆ multiframeColorSelectorAction

QWidgetAction* KisAnimTimelineFramesView::Private::multiframeColorSelectorAction

Definition at line 100 of file KisAnimTimelineFramesView.cpp.

◆ pinLayerToTimelineAction

KisAction* KisAnimTimelineFramesView::Private::pinLayerToTimelineAction

Definition at line 95 of file KisAnimTimelineFramesView.cpp.

◆ q

KisAnimTimelineFramesView* KisAnimTimelineFramesView::Private::q

Definition at line 88 of file KisAnimTimelineFramesView.cpp.

◆ selectionChangedCompressor

KisSignalCompressor KisAnimTimelineFramesView::Private::selectionChangedCompressor

Definition at line 122 of file KisAnimTimelineFramesView.cpp.

◆ tip

KisIconToolTip KisAnimTimelineFramesView::Private::tip

Definition at line 128 of file KisAnimTimelineFramesView.cpp.

◆ zoomDragButton

KisZoomButton* KisAnimTimelineFramesView::Private::zoomDragButton

Definition at line 105 of file KisAnimTimelineFramesView.cpp.


The documentation for this struct was generated from the following file: