XmClipboardCopy - A clipboard function that copies a data item to temporary storage for later copying to clipboard
#include <Xm/Xm.h> #include <Xm/CutPaste.h>
int XmClipboardCopy (display, window, item_id, format_name, buffer, length, private_id, data_id)
Display * display;
char * format_name;
unsigned long length;
long * data_id;
XmClipboardCopy copies a data item to temporary storage. The data item is moved from temporary storage to the clipboard data structure when a call to XmClipboardEndCopy is made. Additional calls to XmClipboardCopy before a call to XmClipboardEndCopy add additional data item formats to the same data item or append data to an existing format. Formats are described in the Inter-Client Communication Conventions Manual (ICCCM) as targets.
Do not call XmClipboardCopy before a call to XmClipboardStartCopy has been made. The latter function allocates temporary storage required by XmClipboardCopy.
If the buffer argument is NULL, the data is considered to be passed by name. When data that has been passed by name is later requested by another application, the application that owns the data receives a callback with a request for the data. The application that owns the data must then transfer the data to the clipboard with the XmClipboardCopyByName function. When a data item that was passed by name is deleted from the clipboard, the application that owns the data receives a callback stating that the data is no longer needed.
For information on the callback function, see the callback argument
Specifies a pointer to the Display
structure that was returned in a previous call to XOpenDisplay
Specifies a widget's window ID that relates the application
window to the clipboard. The widget's window ID can be obtained by using XtWindow. The same application instance should pass the same window
ID to each of the clipboard functions that it calls.
Specifies the number assigned to this data item. This number
was returned by a previous call to XmClipboardStartCopy.
Specifies the name of the format in which the data item is
stored on the clipboard. Format is known as target in the ICCCM.
Specifies the buffer from which the clipboard copies the data.
Specifies the length of the data being copied to the clipboard.
Specifies the private data that the application wants to store
with the data item.
Specifies an identifying number assigned to the data item
that uniquely identifies the data item and the format. This argument is required
only for data that is passed by name.
The function is successful.
The function failed because the clipboard was locked by another
application. The application can continue to call the function again with
the same parameters until the lock goes away. This gives the application
the opportunity to ask if the user wants to keep trying or to give up on the
The function failed because XmClipboardStartCopy was not called or because the data item contains too many formats.
XmClipboardCopyByName(3X), XmClipboardEndCopy(3X), XmClipboardStartCopy(3X)