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

Public Member Functions

KisAnimTimelineFramesModel::PropertygetPropertyAt (KisAnimTimelineFramesModel::PropertyList &props, int index)
 
QPoint getSectionLocalPosition (int layerIndex, QPoint widgetPosition) const
 
QRect getSectionRect (int layerIndex) const
 
int iconSectionWidth (int layerIndex) const
 
int numIcons (int logicalIndex) const
 
 Private (KisAnimTimelineLayersHeader *_q)
 
int propertyIconAt (int logicalIndex, const QPoint &pt)
 
QRect propertyIconRect (int logicalIndex, int iconIndex) const
 

Public Attributes

KisAnimTimelineLayersHeaderq
 

Detailed Description

Definition at line 23 of file KisAnimTimelineLayersHeader.cpp.

Constructor & Destructor Documentation

◆ Private()

KisAnimTimelineLayersHeader::Private::Private ( KisAnimTimelineLayersHeader * _q)
inline

Definition at line 25 of file KisAnimTimelineLayersHeader.cpp.

25: q(_q) {}

Member Function Documentation

◆ getPropertyAt()

KisAnimTimelineFramesModel::Property * KisAnimTimelineLayersHeader::Private::getPropertyAt ( KisAnimTimelineFramesModel::PropertyList & props,
int index )

Definition at line 136 of file KisAnimTimelineLayersHeader.cpp.

137{
138 int logical = 0;
139 for (int i = 0; i < props.size(); i++) {
140 if (props[i].isMutable) {
141 if (logical == index) {
142 return &props[i];
143 }
144
145 logical++;
146 }
147 }
148
149 return 0;
150}

◆ getSectionLocalPosition()

QPoint KisAnimTimelineLayersHeader::Private::getSectionLocalPosition ( int layerIndex,
QPoint widgetPosition ) const

Definition at line 177 of file KisAnimTimelineLayersHeader.cpp.

178{
179 QPoint sectionTopLeft(0, q->sectionViewportPosition(layerIndex));
180 return widgetPosition - sectionTopLeft;
181}

◆ getSectionRect()

QRect KisAnimTimelineLayersHeader::Private::getSectionRect ( int layerIndex) const

Definition at line 194 of file KisAnimTimelineLayersHeader.cpp.

195{
196 QSize sectionSize(q->viewport()->width(), q->sectionSize(layerIndex));
197 QPoint sectionTopLeft(0, q->sectionViewportPosition(layerIndex));
198 return QRect(sectionTopLeft, sectionSize);
199}

◆ iconSectionWidth()

int KisAnimTimelineLayersHeader::Private::iconSectionWidth ( int layerIndex) const

Definition at line 170 of file KisAnimTimelineLayersHeader.cpp.

171{
172 const int iconSize = 16;
173 const int iconPadding = 2;
174 return (iconSize + iconPadding) * numIcons(layerIndex);
175}
int iconSize(qreal width, qreal height)

References iconSize().

◆ numIcons()

int KisAnimTimelineLayersHeader::Private::numIcons ( int logicalIndex) const

Definition at line 152 of file KisAnimTimelineLayersHeader.cpp.

153{
154 int result = 0;
155
156 QVariant value = q->model()->headerData(logicalIndex, q->orientation(), KisAnimTimelineFramesModel::TimelinePropertiesRole);
157 if (value.isValid()) {
159
160 Q_FOREACH (const KisAnimTimelineFramesModel::Property &p, props) {
161 if (p.isMutable) {
162 result++;
163 }
164 }
165 }
166
167 return result;
168}
float value(const T *src, size_t ch)
const Params2D p

References p, KisAnimTimelineFramesModel::TimelinePropertiesRole, and value().

◆ propertyIconAt()

int KisAnimTimelineLayersHeader::Private::propertyIconAt ( int logicalIndex,
const QPoint & pt )

Definition at line 215 of file KisAnimTimelineLayersHeader.cpp.

216{
217 QPoint localPos = getSectionLocalPosition(logicalIndex, pt);
218
219 for (int i = 0; i < numIcons(logicalIndex); i++) {
220 QRect rc = propertyIconRect(logicalIndex, i);
221
222 if (rc.contains(localPos)) {
223 return i;
224 }
225 }
226
227 return -1;
228}
QPoint getSectionLocalPosition(int layerIndex, QPoint widgetPosition) const
QRect propertyIconRect(int logicalIndex, int iconIndex) const

◆ propertyIconRect()

QRect KisAnimTimelineLayersHeader::Private::propertyIconRect ( int logicalIndex,
int iconIndex ) const

Definition at line 201 of file KisAnimTimelineLayersHeader.cpp.

202{
203 QSize sectionSize(q->viewport()->width(), q->sectionSize(logicalIndex));
204
205 const int iconWidth = 16;
206 const int iconHeight = 16;
207
208 const int y = (sectionSize.height() - iconHeight) / 2;
209 const int x = sectionSize.width() -
210 (numIcons(logicalIndex) - iconIndex) * (iconWidth + 2);
211
212 return QRect(x, y, iconWidth, iconHeight);
213}

Member Data Documentation

◆ q

KisAnimTimelineLayersHeader* KisAnimTimelineLayersHeader::Private::q

Definition at line 27 of file KisAnimTimelineLayersHeader.cpp.


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