本文整理汇总了C++中DataObjectGtk::clearAll方法的典型用法代码示例。如果您正苦于以下问题:C++ DataObjectGtk::clearAll方法的具体用法?C++ DataObjectGtk::clearAll怎么用?C++ DataObjectGtk::clearAll使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataObjectGtk
的用法示例。
在下文中一共展示了DataObjectGtk::clearAll方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: writeImage
void Pasteboard::writeImage(Node* node, const KURL&, const String& title)
{
ASSERT(node);
if (!(node->renderer() && node->renderer()->isImage()))
return;
RenderImage* renderer = toRenderImage(node->renderer());
CachedImage* cachedImage = renderer->cachedImage();
if (!cachedImage || cachedImage->errorOccurred())
return;
Image* image = cachedImage->imageForRenderer(renderer);
ASSERT(image);
GtkClipboard* clipboard = gtk_clipboard_get_for_display(gdk_display_get_default(), GDK_SELECTION_CLIPBOARD);
DataObjectGtk* dataObject = DataObjectGtk::forClipboard(clipboard);
dataObject->clearAll();
KURL url = getURLForImageNode(node);
if (!url.isEmpty()) {
dataObject->setURL(url, title);
dataObject->setMarkup(createMarkup(static_cast<Element*>(node), IncludeNode, 0, ResolveAllURLs));
}
GRefPtr<GdkPixbuf> pixbuf = adoptGRef(image->getGdkPixbuf());
dataObject->setImage(pixbuf.get());
PasteboardHelper::defaultPasteboardHelper()->writeClipboardContents(clipboard);
}
示例2: writePlainText
void Pasteboard::writePlainText(const String& text, SmartReplaceOption smartReplaceOption)
{
GtkClipboard* clipboard = gtk_clipboard_get_for_display(gdk_display_get_default(), GDK_SELECTION_CLIPBOARD);
DataObjectGtk* dataObject = DataObjectGtk::forClipboard(clipboard);
dataObject->clearAll();
dataObject->setText(text);
PasteboardHelper::defaultPasteboardHelper()->writeClipboardContents(clipboard,
(smartReplaceOption == CanSmartReplace) ? PasteboardHelper::IncludeSmartPaste : PasteboardHelper::DoNotIncludeSmartPaste);
}
示例3: writeSelection
void Pasteboard::writeSelection(Range* selectedRange, bool canSmartCopyOrDelete, Frame* frame)
{
PasteboardHelper* helper = PasteboardHelper::defaultPasteboardHelper();
GtkClipboard* clipboard = helper->getCurrentClipboard(frame);
DataObjectGtk* dataObject = DataObjectGtk::forClipboard(clipboard);
dataObject->clearAll();
dataObject->setText(frame->editor()->selectedText());
dataObject->setMarkup(createMarkup(selectedRange, 0, AnnotateForInterchange, false, ResolveNonLocalURLs));
helper->writeClipboardContents(clipboard, canSmartCopyOrDelete ? PasteboardHelper::IncludeSmartPaste : PasteboardHelper::DoNotIncludeSmartPaste);
}
示例4: writeURL
void Pasteboard::writeURL(const KURL& url, const String& label, Frame* frame)
{
if (url.isEmpty())
return;
PasteboardHelper* helper = PasteboardHelper::defaultPasteboardHelper();
GtkClipboard* clipboard = helper->getCurrentClipboard(frame);
DataObjectGtk* dataObject = DataObjectGtk::forClipboard(clipboard);
dataObject->clearAll();
dataObject->setURL(url, label);
helper->writeClipboardContents(clipboard);
}
示例5: clearClipboardContentsCallback
static void clearClipboardContentsCallback(GtkClipboard* clipboard, gpointer data)
{
DataObjectGtk* dataObject = DataObjectGtk::forClipboard(clipboard);
ASSERT(dataObject);
// Only clear the DataObject for this clipboard if we are not currently setting it.
if (dataObject != settingClipboardDataObject)
dataObject->clearAll();
if (!data)
return;
GRefPtr<GClosure> callback = adoptGRef(static_cast<GClosure*>(data));
GValue firstArgument = {0, {{0}}};
g_value_init(&firstArgument, G_TYPE_POINTER);
g_value_set_pointer(&firstArgument, clipboard);
g_closure_invoke(callback.get(), nullptr, 1, &firstArgument, 0);
}
示例6: updateGlobalSelection
void WebEditorClient::updateGlobalSelection(Frame* frame)
{
#if PLATFORM(X11)
GtkClipboard* clipboard = PasteboardHelper::defaultPasteboardHelper()->getPrimarySelectionClipboard(frame);
DataObjectGtk* dataObject = DataObjectGtk::forClipboard(clipboard);
if (!frame->selection()->isRange())
return;
dataObject->clearAll();
dataObject->setRange(frame->selection()->toNormalizedRange());
frameSettingClipboard = frame;
GClosure* callback = g_cclosure_new(G_CALLBACK(collapseSelection), frame, 0);
// This observer will be self-destroyed on closure finalization,
// that will happen either after closure execution or after
// closure invalidation.
new EditorClientFrameDestructionObserver(frame, callback);
g_closure_set_marshal(callback, g_cclosure_marshal_VOID__VOID);
PasteboardHelper::defaultPasteboardHelper()->writeClipboardContents(clipboard, PasteboardHelper::DoNotIncludeSmartPaste, callback);
frameSettingClipboard = 0;
#endif
}