54#ifndef _SO_XT_CLIPBOARD_
55#define _SO_XT_CLIPBOARD_
58#include <X11/Intrinsic.h>
68class SoXtImportInterestList;
87#define _XA_CLIPBOARD_ ((Atom) 0)
160 void copy(
Atom dataType,
void *data, uint32_t numBytes,
Time eventTime);
174 void *userData = NULL);
212 void *userData = NULL);
219 static SbBool convertData(
222 uint32_t srcNumBytes,
225 uint32_t *returnNumBytes);
232 void setEmptyListOK(
SbBool flag) { emptyListOK = flag; }
233 SbBool isEmptyListOK()
const {
return emptyListOK; }
247 static SbDict *selOwnerList;
253 SoXtImportInterestList *pasteInterest;
257 void getExportTargets(
261 Atom chooseFromImportTargets(
262 Atom *supportedTargets,
265 static SbBool writeToFile(
268 uint32_t srcNumBytes);
271 static void readFile(
SoPathList *&pathList,
const char *filename);
286 void pasteImport(
Atom dataType,
void *data, uint32_t numBytes);
287 static void pasteImportCB(
288 void *userData,
Atom dataType,
289 void *data, uint32_t numBytes)
290 { ((
SoXtClipboard *)userData)->pasteImport(dataType, data, numBytes); }
296 static void importSelection(
305 static Boolean exportSelection(
314 static void loseSelection(
318 static void importSelectionTargets(
#define SoXtClipboardPasteCB
void SoXtClipboardImportCB(void *userData, Atom dataType, void *data, uint32_t numBytes)
void SoXtClipboardPasteCB(void *userData, SoPathList *pathList)
List of generic (void *) pointers.
Class for smart character strings.
Converts scene graph objects to character byte streams.
Abstract base class for all database nodes.
Path that points to a list of hierarchical nodes.
Maintains a list of pointers to paths.
Manages a list of selected objects.
Supports copy/paste for Open Inventor using the Xt clipboard.
~SoXtClipboard()
Destructor.
void copy(SoNode *node, Time eventTime)
This copies the passed scene graph object, and tells the X server that the clipboard now owns the sel...
void addPasteInterest(Atom dataType, SoXtClipboardImportCB *pasteImportFunc, void *userData=NULL)
This extends the paste interest to recognize an additional target as specified by dataType.
void copy(SoPath *path, Time eventTime)
This copies the passed scene graph object, and tells the X server that the clipboard now owns the sel...
void copy(Atom dataType, void *data, uint32_t numBytes, Time eventTime)
void copy(SoPathList *pathList, Time eventTime)
This copies the passed scene graph object, and tells the X server that the clipboard now owns the sel...
SoXtClipboard(SoWidget w, Atom selectionAtom=_XA_CLIPBOARD_)
Constructor.
void paste(Time eventTime, SoXtClipboardPasteCB *pasteDoneFunc, void *userData=NULL)
This makes a request to the X server for data to paste from the selection atom specified in the const...