|
Krita Source Code Documentation
|
#include <kis_clipboard.h>
Inheritance diagram for KisClipboard:Public Types | |
| enum | PasteBehaviour { PASTE_ASSUME_WEB = 0 , PASTE_ASSUME_MONITOR , PASTE_ASK } |
| enum | PasteFormatBehaviour { PASTE_FORMAT_ASK = 0 , PASTE_FORMAT_DOWNLOAD , PASTE_FORMAT_LOCAL , PASTE_FORMAT_CLIP } |
Signals | |
| void | clipChanged () |
Public Member Functions | |
| QPair< bool, PasteFormatBehaviour > | askUserForSource (const QMimeData *data, bool useClipboardFallback=false) const |
| QPair< bool, PasteFormatBehaviour > | askUserForSourceWithData (QImage qimage, const QList< QUrl > urls, bool useClipboardFallback=false) const |
| KisPaintDeviceSP | clip (const QRect &imageBounds, bool showPopup, int overridePasteBehaviour=-1, KisTimeSpan *clipRange=nullptr) const |
| KisPaintDeviceSP | clipFromBoardContents (const QMimeData *data, const QRect &imageBounds, bool showPopup, int overridePasteBehaviour=-1, bool useClipboardFallback=false, QPair< bool, PasteFormatBehaviour > source={ false, PasteFormatBehaviour::PASTE_FORMAT_ASK}) const |
| KisPaintDeviceSP | clipFromBoardContentsWithData (QImage image, const QList< QUrl > urls, const QRect &imageBounds, bool showPopup, int overridePasteBehaviour=-1, bool useClipboardFallback=false, QPair< bool, PasteFormatBehaviour > source={false, PasteFormatBehaviour::PASTE_FORMAT_ASK}) const |
| KisPaintDeviceSP | clipFromKritaLayers (const KoColorSpace *cs) const |
| KisPaintDeviceSP | clipFromMimeData (const QMimeData *data, const QRect &imageBounds, bool showPopup, int overridePasteBehaviour=-1, KisTimeSpan *clipRange=nullptr, bool useClipboardFallback=false) const |
| QSize | clipSize () const |
| QImage | getImageWithFallback (const QMimeData *cbData, bool useClipboardFallback=false) const |
| bool | hasClip () const |
| bool | hasImage () const |
| bool | hasLayers () const |
| bool | hasLayerStyles () const |
| bool | hasUrls () const |
| KisClipboard () | |
| const QMimeData * | layersMimeData () const |
| void | setClip (KisPaintDeviceSP dev, const QPoint &topLeft) |
| void | setClip (KisPaintDeviceSP dev, const QPoint &topLeft, const KisTimeSpan &range) |
| void | setLayers (KisNodeList nodes, KisImageSP image, bool forceCopy=false) |
| ~KisClipboard () override | |
Static Public Member Functions | |
| static KisClipboard * | instance () |
Properties | |
| bool | clip |
Private Slots | |
| void | clipboardDataChanged () |
Private Member Functions | |
| KisPaintDeviceSP | clipFromKritaSelection (const QMimeData *data, const QRect &imageBounds, KisTimeSpan *clipRange) const |
| KisPaintDeviceSP | fetchImageByURL (const QUrl &originalUrl) const |
| QImage | getImageFromMimeData (const QMimeData *cbData) const |
| Q_DISABLE_COPY (KisClipboard) | |
Private Attributes | |
| KisClipboardPrivate *const | d |
The Krita clipboard is a clipboard that can store paint devices instead of just qimage's.
Definition at line 31 of file kis_clipboard.h.
| Enumerator | |
|---|---|
| PASTE_ASSUME_WEB | |
| PASTE_ASSUME_MONITOR | |
| PASTE_ASK | |
Definition at line 38 of file kis_clipboard.h.
| Enumerator | |
|---|---|
| PASTE_FORMAT_ASK | |
| PASTE_FORMAT_DOWNLOAD | |
| PASTE_FORMAT_LOCAL | |
| PASTE_FORMAT_CLIP | |
Definition at line 40 of file kis_clipboard.h.
| KisClipboard::KisClipboard | ( | ) |
Definition at line 67 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, clipboardDataChanged(), and d.
|
override |
| QPair< bool, KisClipboard::PasteFormatBehaviour > KisClipboard::askUserForSource | ( | const QMimeData * | data, |
| bool | useClipboardFallback = false ) const |
Given the mimedata for a paste event, ask user which source they'll want to use for the image.
Definition at line 383 of file kis_clipboard.cc.
References askUserForSourceWithData(), getImageWithFallback(), and PASTE_FORMAT_ASK.
| QPair< bool, KisClipboard::PasteFormatBehaviour > KisClipboard::askUserForSourceWithData | ( | QImage | qimage, |
| const QList< QUrl > | urls, | ||
| bool | useClipboardFallback = false ) const |
Definition at line 395 of file kis_clipboard.cc.
References dbgUI, PASTE_FORMAT_ASK, PASTE_FORMAT_CLIP, PASTE_FORMAT_DOWNLOAD, PASTE_FORMAT_LOCAL, KisConfig::pasteFormat(), KisDlgPasteFormat::remember(), KisConfig::setPasteFormat(), KisDlgPasteFormat::setSourceAvailable(), and KisDlgPasteFormat::source().
| KisPaintDeviceSP KisClipboard::clip | ( | const QRect & | imageBounds, |
| bool | showPopup, | ||
| int | overridePasteBehaviour = -1, | ||
| KisTimeSpan * | clipRange = nullptr ) const |
Get the contents of the clipboard in the form of a paint device.
Definition at line 182 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, clipFromMimeData(), d, and dbgUI.
|
privateslot |
Definition at line 584 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, clipChanged(), d, KisClipboardPrivate::hasClip, and KisClipboardPrivate::pushedClipboard.
|
signal |
| KisPaintDeviceSP KisClipboard::clipFromBoardContents | ( | const QMimeData * | data, |
| const QRect & | imageBounds, | ||
| bool | showPopup, | ||
| int | overridePasteBehaviour = -1, | ||
| bool | useClipboardFallback = false, | ||
| QPair< bool, PasteFormatBehaviour > | source = { false, PasteFormatBehaviour::PASTE_FORMAT_ASK} ) const |
Definition at line 469 of file kis_clipboard.cc.
References clipFromBoardContentsWithData(), getImageWithFallback(), and source().
| KisPaintDeviceSP KisClipboard::clipFromBoardContentsWithData | ( | QImage | image, |
| const QList< QUrl > | urls, | ||
| const QRect & | imageBounds, | ||
| bool | showPopup, | ||
| int | overridePasteBehaviour = -1, | ||
| bool | useClipboardFallback = false, | ||
| QPair< bool, PasteFormatBehaviour > | source = {false, PasteFormatBehaviour::PASTE_FORMAT_ASK} ) const |
Definition at line 493 of file kis_clipboard.cc.
References askUserForSourceWithData(), clip, KisMimeData::displayConfigForMimePastes(), fetchImageByURL(), KoColorSpaceRegistry::instance(), KIS_SAFE_ASSERT_RECOVER, PASTE_ASK, PASTE_ASSUME_MONITOR, PASTE_FORMAT_ASK, PASTE_FORMAT_CLIP, PASTE_FORMAT_LOCAL, KisConfig::pasteBehaviour(), KoColorSpace::profile(), KisDisplayConfig::profile, KisDlgMissingColorProfile::remember(), KoColorSpaceRegistry::rgb8(), KisConfig::setPasteBehaviour(), KisDlgMissingColorProfile::source(), source(), and warnKrita.
| KisPaintDeviceSP KisClipboard::clipFromKritaLayers | ( | const KoColorSpace * | cs | ) | const |
Definition at line 314 of file kis_clipboard.cc.
References KisNodeFacade::addNode(), bounds, KisBaseNode::colorSpace(), KisBaseNode::exactBounds(), KisLayerUtils::filterMergeableNodes(), KoColorSpaceRegistry::instance(), instance(), layersMimeData(), kismpl::mem_bit_or(), KisMimeData::nodes(), KisImage::projection(), KisImage::refreshGraphAsync(), KisLayerUtils::refreshHiddenAreaAsync(), KoColorSpaceRegistry::rgb8(), KisNodeFacade::root, and KisImage::waitForDone().
|
private |
Definition at line 222 of file kis_clipboard.cc.
References clip, KoColorSpaceRegistry::colorSpace(), KoColorSpaceRegistry::createColorProfile(), KoStore::createStore(), dbgUI, KisTimeSpan::fromTimeToTime(), KoColorSpaceRegistry::instance(), and KoStore::Read.
| KisPaintDeviceSP KisClipboard::clipFromMimeData | ( | const QMimeData * | data, |
| const QRect & | imageBounds, | ||
| bool | showPopup, | ||
| int | overridePasteBehaviour = -1, | ||
| KisTimeSpan * | clipRange = nullptr, | ||
| bool | useClipboardFallback = false ) const |
Get the contents of the specified mimedata buffer in the form of a paint device.
Definition at line 198 of file kis_clipboard.cc.
References clip, clipFromBoardContents(), clipFromKritaLayers(), and clipFromKritaSelection().
| QSize KisClipboard::clipSize | ( | ) | const |
Definition at line 611 of file kis_clipboard.cc.
References clip, KisClipboardPrivate::clipboard, KoColorSpaceRegistry::colorSpace(), KoColorSpaceRegistry::createColorProfile(), KoStore::createStore(), d, KoColorSpaceRegistry::instance(), KoStore::Read, and KoColorSpaceRegistry::rgb8().
|
private |
Definition at line 750 of file kis_clipboard.cc.
References createDocument(), KisDocument::DontAddToRecent, KisImportExportErrorCode::errorMessage(), KisRemoteFileFetcher::fetchFile(), ImportExportCodes::FileFormatNotSupported, KisLayerUtils::forceAllDelayedNodesUpdate(), KisImportExportManager::Import, KisPart::instance(), KisMimeDatabase::mimeTypeForFile(), and KisImportExportManager::supportedMimeTypes().
|
private |
Definition at line 712 of file kis_clipboard.cc.
References ClipboardImageFormat::format, and ClipboardImageFormat::mimeTypes.
| QImage KisClipboard::getImageWithFallback | ( | const QMimeData * | cbData, |
| bool | useClipboardFallback = false ) const |
Definition at line 595 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, d, and getImageFromMimeData().
| bool KisClipboard::hasClip | ( | ) | const |
Definition at line 606 of file kis_clipboard.cc.
References d, and KisClipboardPrivate::hasClip.
| bool KisClipboard::hasImage | ( | ) | const |
Definition at line 707 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, and d.
| bool KisClipboard::hasLayers | ( | ) | const |
Definition at line 680 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, and d.
| bool KisClipboard::hasLayerStyles | ( | ) | const |
Definition at line 686 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, and d.
| bool KisClipboard::hasUrls | ( | ) | const |
Definition at line 701 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, and d.
|
static |
Definition at line 83 of file kis_clipboard.cc.
| const QMimeData * KisClipboard::layersMimeData | ( | ) | const |
Definition at line 695 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, and d.
|
private |
| void KisClipboard::setClip | ( | KisPaintDeviceSP | dev, |
| const QPoint & | topLeft ) |
Sets the clipboard to the contents of the specified paint device; also set the system clipboard to a QImage representation of the specified paint device.
| dev | The paint device that will be stored on the clipboard |
| topLeft | a hint about the place where the clip should be pasted by default |
Definition at line 177 of file kis_clipboard.cc.
References setClip().
| void KisClipboard::setClip | ( | KisPaintDeviceSP | dev, |
| const QPoint & | topLeft, | ||
| const KisTimeSpan & | range ) |
Definition at line 88 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, KoColorSpace::colorDepthId(), KoColorSpace::colorModelId(), KisPaintDevice::colorSpace(), KisDisplayConfig::conversionFlags, KisPaintDevice::convertToQImage(), KoStore::createStore(), d, KisMimeData::displayConfigForMimePastes(), KisTimeSpan::end(), KisClipboardPrivate::hasClip, KoID::id(), KisDisplayConfig::intent, KisTimeSpan::isValid(), KoColorProfile::name, KoColorSpace::profile(), KisDisplayConfig::profile, KisClipboardPrivate::pushedClipboard, KoColorProfile::rawData(), KisTimeSpan::start(), KoColorProfile::type(), KisPaintDevice::write(), and KoStore::Write.
| void KisClipboard::setLayers | ( | KisNodeList | nodes, |
| KisImageSP | image, | ||
| bool | forceCopy = false ) |
See a comment in KisMimeData::deepCopyNodes()
Definition at line 668 of file kis_clipboard.cc.
References KisClipboardPrivate::clipboard, d, and KisMimeData::mimeForLayersDeepCopy().
|
private |
Definition at line 144 of file kis_clipboard.h.
|
read |
Definition at line 35 of file kis_clipboard.h.