import_bitmap.c
来自「安装DDD之前」· C语言 代码 · 共 55 行
C
55 行
/* $Header: /cvsroot/lesstif/lesstif/test/Xm/drag_simple/import_bitmap.c,v 1.4 2001/05/23 13:55:31 amai Exp $ */#include <stdio.h>#include <Xm/Xm.h>#include <Xm/DragDrop.h>extern void transfer_bitmap();void import_bitmap(w, client_data, call_data) Widget w; XtPointer client_data, call_data;{ XmDropProcCallback drop_data; XmDropTransferEntryRec transfer_entries[1]; Arg al[5]; int ac; drop_data = (XmDropProcCallback) call_data; ac = 0; if (drop_data->dropAction != XmDROP || drop_data->operation != XmDROP_COPY) { XtSetArg(al[ac], XmNtransferStatus, XmTRANSFER_FAILURE); ac++; } else { Atom *export_list; int export_count, i; Boolean ok = False; /* Check that there is a compatible target (we need STRING) */ XtVaGetValues(drop_data->dragContext, XmNexportTargets, &export_list, XmNnumExportTargets, &export_count, NULL); for (i = 0; i < export_count; i++) if (export_list[i] == XA_STRING) { ok = True; break; } if (ok) { /* We want a single STRING transfer */ transfer_entries[0].target = XA_STRING; transfer_entries[0].client_data = (XtPointer) w; XtSetArg(al[ac], XmNdropTransfers, transfer_entries); ac++; XtSetArg(al[ac], XmNnumDropTransfers, 1); ac++; XtSetArg(al[ac], XmNtransferProc, transfer_bitmap); ac++; drop_data->operation = XmDROP_COPY; fprintf(stderr, "Drop COPY has succeeded\n"); } else { XtSetArg(al[ac], XmNtransferStatus, XmTRANSFER_FAILURE); ac++; fprintf(stderr, "Drop has failed\n"); } } XmDropTransferStart(drop_data->dragContext, al, ac);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?