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

#include <offsetimage.h>

+ Inheritance diagram for OffsetImage:

Public Slots

void offsetImpl (const KUndo2MagicString &actionName, KisNodeList nodes, const QPoint &offsetPoint)
 
void offsetImpl (const KUndo2MagicString &actionName, KisNodeSP node, const QPoint &offsetPoint)
 
void slotOffsetImage ()
 
void slotOffsetLayer ()
 

Public Member Functions

 OffsetImage (QObject *parent, const QVariantList &)
 
 ~OffsetImage () override
 
- Public Member Functions inherited from KisActionPlugin
 KisActionPlugin (QObject *parent=0)
 
 ~KisActionPlugin () override
 

Private Member Functions

QRect offsetWrapRect ()
 

Additional Inherited Members

- Protected Member Functions inherited from KisActionPlugin
void addAction (const QString &name, KisAction *action)
 
void addOperation (KisOperation *operation)
 
void addUIFactory (KisOperationUIFactory *factory)
 
KisActioncreateAction (const QString &name)
 
QPointer< KisViewManagerviewManager () const
 

Detailed Description

Definition at line 19 of file offsetimage.h.

Constructor & Destructor Documentation

◆ OffsetImage()

OffsetImage::OffsetImage ( QObject * parent,
const QVariantList &  )

Definition at line 32 of file offsetimage.cpp.

33 : KisActionPlugin(parent)
34{
35 KisAction *action = createAction("offsetimage");
36 connect(action, SIGNAL(triggered()), this, SLOT(slotOffsetImage()));
37
38 action = createAction("offsetlayer");
39 connect(action, SIGNAL(triggered()), this, SLOT(slotOffsetLayer()));
40}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
KisAction * createAction(const QString &name)
KisActionPlugin(QObject *parent=0)
void slotOffsetLayer()
void slotOffsetImage()

References connect().

◆ ~OffsetImage()

OffsetImage::~OffsetImage ( )
override

Definition at line 43 of file offsetimage.cpp.

44{
45}

Member Function Documentation

◆ offsetImpl [1/2]

void OffsetImage::offsetImpl ( const KUndo2MagicString & actionName,
KisNodeList nodes,
const QPoint & offsetPoint )
slot

◆ offsetImpl [2/2]

void OffsetImage::offsetImpl ( const KUndo2MagicString & actionName,
KisNodeSP node,
const QPoint & offsetPoint )
slot

Definition at line 96 of file offsetimage.cpp.

97{
98 offsetImpl(actionName, KisNodeList{node}, offsetPoint);
99}
void offsetImpl(const KUndo2MagicString &actionName, KisNodeSP node, const QPoint &offsetPoint)

References offsetImpl().

◆ offsetWrapRect()

QRect OffsetImage::offsetWrapRect ( )
private

Definition at line 116 of file offsetimage.cpp.

117{
118 QRect offsetWrapRect;
119 if (viewManager()->selection())
120 {
121 offsetWrapRect = viewManager()->selection()->selectedExactRect();
122 }
123 else
124 {
125 KisImageSP image = viewManager()->image().toStrongRef();
126 if (image) {
127 offsetWrapRect = image->bounds();
128 }
129 }
130 return offsetWrapRect;
131}
QRect bounds() const override

References KisImage::bounds(), offsetWrapRect(), and KisActionPlugin::viewManager().

◆ slotOffsetImage

void OffsetImage::slotOffsetImage ( )
slot

Definition at line 48 of file offsetimage.cpp.

49{
50 KisImageSP image = viewManager()->image().toStrongRef();
51 if (image) {
52
53 DlgOffsetImage * dlgOffsetImage = new DlgOffsetImage(viewManager()->mainWindowAsQWidget(), "OffsetImage", offsetWrapRect().size());
54 Q_CHECK_PTR(dlgOffsetImage);
55
56 KUndo2MagicString actionName = kundo2_i18n("Offset Image");
57 dlgOffsetImage->setCaption(i18nc("@title:window", "Offset Image"));
58
59 if (dlgOffsetImage->exec() == QDialog::Accepted) {
60 QPoint offsetPoint = QPoint(dlgOffsetImage->offsetX(), dlgOffsetImage->offsetY());
61 offsetImpl(actionName, image->root(), offsetPoint);
62 }
63 delete dlgOffsetImage;
64 }
65 else
66 {
67 dbgKrita << "KisImage not available";
68 }
69}
int offsetX() const
int offsetY() const
virtual void setCaption(const QString &caption)
Definition KoDialog.cpp:498
#define dbgKrita
Definition kis_debug.h:45
KUndo2MagicString kundo2_i18n(const char *text)
int size(const Forest< T > &forest)
Definition KisForest.h:1232

References dbgKrita, kundo2_i18n(), offsetImpl(), offsetWrapRect(), DlgOffsetImage::offsetX(), DlgOffsetImage::offsetY(), KisNodeFacade::root, KoDialog::setCaption(), and KisActionPlugin::viewManager().

◆ slotOffsetLayer

void OffsetImage::slotOffsetLayer ( )
slot

Definition at line 72 of file offsetimage.cpp.

73{
74 KisImageSP image = viewManager()->image().toStrongRef();
75 if (image) {
76
77 DlgOffsetImage * dlgOffsetImage = new DlgOffsetImage(viewManager()->mainWindowAsQWidget(), "OffsetLayer", offsetWrapRect().size());
78 Q_CHECK_PTR(dlgOffsetImage);
79
80 KisNodeList nodes = viewManager()->nodeManager()->selectedNodes();
81 dlgOffsetImage->setCaption(i18ncp("@title:window", "Offset Layer", "Offset %1 Layers", nodes.size()));
82
83 if (dlgOffsetImage->exec() == QDialog::Accepted) {
84 QPoint offsetPoint = QPoint(dlgOffsetImage->offsetX(), dlgOffsetImage->offsetY());
85 KUndo2MagicString actionName = kundo2_i18np("Offset Layer", "Offset %1 Layers", nodes.size());
86 offsetImpl(actionName, nodes, offsetPoint);
87 }
88 delete dlgOffsetImage;
89 }
90 else
91 {
92 dbgKrita << "KisImage not available";
93 }
94}
KUndo2MagicString kundo2_i18np(const char *sing, const char *plur, const A1 &a1)

References dbgKrita, kundo2_i18np(), offsetImpl(), offsetWrapRect(), DlgOffsetImage::offsetX(), DlgOffsetImage::offsetY(), KoDialog::setCaption(), and KisActionPlugin::viewManager().


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