Krita Source Code Documentation
Loading...
Searching...
No Matches
TransformTransactionProperties Class Reference

#include <transform_transaction_properties.h>

Public Member Functions

qreal basePreviewOpacity () const
 
bool boundsRotationAllowed () const
 
const QPolygonF convexHull ()
 
bool convexHullHasBeenRequested ()
 
ToolTransformArgscurrentConfig () const
 
bool hasInvisibleNodes () const
 
QPointF originalBottomLeft () const
 
QPointF originalBottomRight () const
 
QPoint originalBottomRightAligned () const
 
QPointF originalCenterGeometric () const
 
qreal originalHalfHeight () const
 
qreal originalHalfWidth () const
 
QPointF originalMiddleBottom () const
 
QPointF originalMiddleLeft () const
 
QPointF originalMiddleRight () const
 
QPointF originalMiddleTop () const
 
QRectF originalRect () const
 
QPointF originalTopLeft () const
 
QPoint originalTopLeftAligned () const
 
QPointF originalTopRight () const
 
KisNodeList rootNodes () const
 
void setConvexHull (const QPolygonF &hull)
 
void setConvexHullHasBeenRequested (bool b)
 
void setCurrentConfigLocation (ToolTransformArgs *config)
 
bool shouldAvoidPerspectiveTransform () const
 
KisNodeList transformedNodes () const
 
 TransformTransactionProperties ()
 
 TransformTransactionProperties (const QRectF &originalRect, ToolTransformArgs *currentConfig, KisNodeList rootNodes, const QList< KisNodeSP > &transformedNodes)
 

Private Attributes

bool m_boundsRotationAllowed {true}
 
QPolygonF m_convexHull
 
bool m_convexHullHasBeenRequested {false}
 
ToolTransformArgsm_currentConfig {0}
 
bool m_hasInvisibleNodes {false}
 
QRectF m_originalRect
 
KisNodeList m_rootNodes
 
bool m_shouldAvoidPerspectiveTransform {false}
 
KisNodeList m_transformedNodes
 

Detailed Description

Definition at line 19 of file transform_transaction_properties.h.

Constructor & Destructor Documentation

◆ TransformTransactionProperties() [1/2]

TransformTransactionProperties::TransformTransactionProperties ( )
inline

Definition at line 22 of file transform_transaction_properties.h.

23 {
24 }

◆ TransformTransactionProperties() [2/2]

TransformTransactionProperties::TransformTransactionProperties ( const QRectF & originalRect,
ToolTransformArgs * currentConfig,
KisNodeList rootNodes,
const QList< KisNodeSP > & transformedNodes )
inline

Definition at line 26 of file transform_transaction_properties.h.

36 {
37 m_hasInvisibleNodes = false;
38 Q_FOREACH (KisNodeSP node, transformedNodes) {
39 if (KisExternalLayer *extLayer = dynamic_cast<KisExternalLayer*>(node.data())) {
40 if (!extLayer->supportsPerspectiveTransform()) {
42 break;
43 }
44 }
45 if (dynamic_cast<const KisTransformMask*>(node.data())) {
47 }
48
49 m_hasInvisibleNodes |= !node->visible(false);
50 }
51 }
virtual bool visible(bool recursive=false) const

References KisSharedPtr< T >::data(), m_boundsRotationAllowed, m_hasInvisibleNodes, m_shouldAvoidPerspectiveTransform, transformedNodes(), and KisBaseNode::visible().

Member Function Documentation

◆ basePreviewOpacity()

qreal TransformTransactionProperties::basePreviewOpacity ( ) const
inline

Definition at line 121 of file transform_transaction_properties.h.

121 {
122 // Todo: this doesn't work for multiple layers
123 return 0.9 * qreal(m_rootNodes[0]->opacity()) / 255.0;
124 }

References m_rootNodes.

◆ boundsRotationAllowed()

bool TransformTransactionProperties::boundsRotationAllowed ( ) const
inline

Definition at line 142 of file transform_transaction_properties.h.

142 {
144 }

References m_boundsRotationAllowed.

◆ convexHull()

const QPolygonF TransformTransactionProperties::convexHull ( )
inline

Definition at line 126 of file transform_transaction_properties.h.

References m_convexHull.

◆ convexHullHasBeenRequested()

bool TransformTransactionProperties::convexHullHasBeenRequested ( )
inline

◆ currentConfig()

ToolTransformArgs * TransformTransactionProperties::currentConfig ( ) const
inline

Definition at line 109 of file transform_transaction_properties.h.

109 {
110 return m_currentConfig;
111 }

References m_currentConfig.

◆ hasInvisibleNodes()

bool TransformTransactionProperties::hasInvisibleNodes ( ) const
inline

Definition at line 138 of file transform_transaction_properties.h.

138 {
139 return m_hasInvisibleNodes;
140 }

References m_hasInvisibleNodes.

◆ originalBottomLeft()

QPointF TransformTransactionProperties::originalBottomLeft ( ) const
inline

Definition at line 73 of file transform_transaction_properties.h.

73 {
74 return m_originalRect.bottomLeft();
75 }

References m_originalRect.

◆ originalBottomRight()

QPointF TransformTransactionProperties::originalBottomRight ( ) const
inline

Definition at line 77 of file transform_transaction_properties.h.

77 {
78 return m_originalRect.bottomRight();
79 }

References m_originalRect.

◆ originalBottomRightAligned()

QPoint TransformTransactionProperties::originalBottomRightAligned ( ) const
inline

Definition at line 105 of file transform_transaction_properties.h.

105 {
106 return m_originalRect.toAlignedRect().bottomRight();
107 }

References m_originalRect.

◆ originalCenterGeometric()

QPointF TransformTransactionProperties::originalCenterGeometric ( ) const
inline

Definition at line 65 of file transform_transaction_properties.h.

65 {
66 return m_originalRect.center();
67 }

References m_originalRect.

◆ originalHalfHeight()

qreal TransformTransactionProperties::originalHalfHeight ( ) const
inline

Definition at line 57 of file transform_transaction_properties.h.

57 {
58 return m_originalRect.height() / 2.0;
59 }

References m_originalRect.

◆ originalHalfWidth()

qreal TransformTransactionProperties::originalHalfWidth ( ) const
inline

Definition at line 53 of file transform_transaction_properties.h.

53 {
54 return m_originalRect.width() / 2.0;
55 }

References m_originalRect.

◆ originalMiddleBottom()

QPointF TransformTransactionProperties::originalMiddleBottom ( ) const
inline

Definition at line 97 of file transform_transaction_properties.h.

97 {
98 return QPointF((m_originalRect.left() + m_originalRect.right()) / 2.0, m_originalRect.bottom());
99 }

References m_originalRect.

◆ originalMiddleLeft()

QPointF TransformTransactionProperties::originalMiddleLeft ( ) const
inline

Definition at line 85 of file transform_transaction_properties.h.

85 {
86 return QPointF(m_originalRect.left(), (m_originalRect.top() + m_originalRect.bottom()) / 2.0);
87 }

References m_originalRect.

◆ originalMiddleRight()

QPointF TransformTransactionProperties::originalMiddleRight ( ) const
inline

Definition at line 89 of file transform_transaction_properties.h.

89 {
90 return QPointF(m_originalRect.right(), (m_originalRect.top() + m_originalRect.bottom()) / 2.0);
91 }

References m_originalRect.

◆ originalMiddleTop()

QPointF TransformTransactionProperties::originalMiddleTop ( ) const
inline

Definition at line 93 of file transform_transaction_properties.h.

93 {
94 return QPointF((m_originalRect.left() + m_originalRect.right()) / 2.0, m_originalRect.top());
95 }

References m_originalRect.

◆ originalRect()

QRectF TransformTransactionProperties::originalRect ( ) const
inline

Definition at line 61 of file transform_transaction_properties.h.

61 {
62 return m_originalRect;
63 }

References m_originalRect.

◆ originalTopLeft()

QPointF TransformTransactionProperties::originalTopLeft ( ) const
inline

Definition at line 69 of file transform_transaction_properties.h.

69 {
70 return m_originalRect.topLeft();
71 }

References m_originalRect.

◆ originalTopLeftAligned()

QPoint TransformTransactionProperties::originalTopLeftAligned ( ) const
inline

Definition at line 101 of file transform_transaction_properties.h.

101 {
102 return m_originalRect.toAlignedRect().topLeft();
103 }

References m_originalRect.

◆ originalTopRight()

QPointF TransformTransactionProperties::originalTopRight ( ) const
inline

Definition at line 81 of file transform_transaction_properties.h.

81 {
82 return m_originalRect.topRight();
83 }

References m_originalRect.

◆ rootNodes()

KisNodeList TransformTransactionProperties::rootNodes ( ) const
inline

Definition at line 113 of file transform_transaction_properties.h.

113 {
114 return m_rootNodes;
115 }

References m_rootNodes.

◆ setConvexHull()

void TransformTransactionProperties::setConvexHull ( const QPolygonF & hull)
inline

Definition at line 150 of file transform_transaction_properties.h.

150 {
151 m_convexHull = hull;
152 }

References m_convexHull.

◆ setConvexHullHasBeenRequested()

void TransformTransactionProperties::setConvexHullHasBeenRequested ( bool b)
inline

◆ setCurrentConfigLocation()

void TransformTransactionProperties::setCurrentConfigLocation ( ToolTransformArgs * config)
inline

Definition at line 146 of file transform_transaction_properties.h.

146 {
147 m_currentConfig = config;
148 }

References m_currentConfig.

◆ shouldAvoidPerspectiveTransform()

bool TransformTransactionProperties::shouldAvoidPerspectiveTransform ( ) const
inline

Definition at line 134 of file transform_transaction_properties.h.

134 {
136 }

References m_shouldAvoidPerspectiveTransform.

◆ transformedNodes()

KisNodeList TransformTransactionProperties::transformedNodes ( ) const
inline

Definition at line 117 of file transform_transaction_properties.h.

117 {
118 return m_transformedNodes;
119 }

References m_transformedNodes.

Member Data Documentation

◆ m_boundsRotationAllowed

bool TransformTransactionProperties::m_boundsRotationAllowed {true}
private

Definition at line 171 of file transform_transaction_properties.h.

171{true};

◆ m_convexHull

QPolygonF TransformTransactionProperties::m_convexHull
private

Definition at line 167 of file transform_transaction_properties.h.

◆ m_convexHullHasBeenRequested

bool TransformTransactionProperties::m_convexHullHasBeenRequested {false}
private

Definition at line 168 of file transform_transaction_properties.h.

168{false};

◆ m_currentConfig

ToolTransformArgs* TransformTransactionProperties::m_currentConfig {0}
private

Definition at line 164 of file transform_transaction_properties.h.

164{0};

◆ m_hasInvisibleNodes

bool TransformTransactionProperties::m_hasInvisibleNodes {false}
private

Definition at line 170 of file transform_transaction_properties.h.

170{false};

◆ m_originalRect

QRectF TransformTransactionProperties::m_originalRect
private

Information about the original selected rect (before any transformations)

Definition at line 163 of file transform_transaction_properties.h.

◆ m_rootNodes

KisNodeList TransformTransactionProperties::m_rootNodes
private

Definition at line 165 of file transform_transaction_properties.h.

◆ m_shouldAvoidPerspectiveTransform

bool TransformTransactionProperties::m_shouldAvoidPerspectiveTransform {false}
private

Definition at line 169 of file transform_transaction_properties.h.

169{false};

◆ m_transformedNodes

KisNodeList TransformTransactionProperties::m_transformedNodes
private

Definition at line 166 of file transform_transaction_properties.h.


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