Up: GEOS SDK TechDocs | Up | Prev: ClipboardQueryItem() ... | Next: ConstructOptr() ...

ClipboardSetQuickTransferFeedback()

void	ClipboardSetQuickTransferFeedback(
        ClipboardQuickTransferFeedback 						cursor,
        UIFunctionsActive 						buttonFlags);

This routine sets the image of the mouse pointer during a quick-transfer operation. Use this routine to provide visual feedback to the user during the quick-transfer. For example, an object that could not accept the quick-transfer item would set the "no operation" cursor while the mouse pointer was over its bounds.

Pass the two following values:

cursor
A value of ClipboardQuickTransferFeedback type indicating the type of cursor to set. The possible values are listed below.
buttonFlags
A record of UIFunctionsActive flags. These flags are defined in the Input Manager section and deal with user override of the move/copy behavior.

The cursor parameter contains a value of ClipboardQuickTransferFeedback . This is an enumerated type that defines the cursor to be set, and it has the following values:

CQTF_MOVE
This sets the cursor to the specific UI's move cursor.
CQTF_COPY
This sets the cursor to the specific UI's copy cursor.
CQTF_CLEAR
This clears the cursor and sets it to the specific UI's modal "no operation" cursor.

Include: clipbrd.goh

ClipboardStartQuickTransfer()

Boolean	ClipboardStartQuickTransfer(
        ClipboardQuickTransferFlags 							flags,
        ClipboardQuickTransferFeedback							initialCursor,
        word							mouseXPos,
        word							mouseYPos,
        ClipboardQuickTransferRegionInfo *							regionParams,
        optr							notificationOD);

This routine signals the beginning of a quick-transfer operation. Typically, an object or process will call this routine in its MSG_META_START_MOVE_COPY handler.

Pass it the following parameters:

flags
A record of ClipboardQuickTransferFlags indicating whether an addition graphic region will be attached to the cursor and whether the caller wants notification of transfer completion. The flags allowed are listed below, after the parameter list.
initialCursor
The initial cursor to use for visual feedback to the user. It is a value of ClipboardQuickTransferFeedback , either CQTF_MOVE or CQTF_COPY. If -1 is passed in this parameter, the initial cursor will be the default no-operation cursor (i.e. the transfer source may not also act as the transfer destination).
mouseXPos
This field is used only if CQTF_USE_REGION is passed in flags . It is the horizontal position of the mouse in screen coordinates.
mouseYPos
This field is used only if CQTF_USE_REGION is passed in flags . It is the vertical position of the mouse in screen coordinates.
regionParams
A pointer to a ClipboardQuickTransferRegionInfo structure defining the graphical region to be attached to the cursor during the transfer operation. This structure is only required if CQTF_USE_REGION is passed in flags . It is defined below.
notificationOD
The optr of the object to be notified upon transfer completion. The object specified will receive the notification messages MSG_META_CLIPBOARD_NOTIFY_QUICK_TRANSFER_CONCLUDED and MSG_..._FEEDBACK .

The allowed ClipboardQuickTransferFlags are listed below:

CQTF_COPY_ONLY
Source supports copying only (not cutting).
CQTF_USE_REGION
Source has passed the definition of a graphical region which will be attached to the tail of the quick-transfer cursor.
CQTF_NOTIFICATION
Source requires notification of completion of the transfer in order to cut original data or provide other feedback.

If a graphical region is to be attached to the quick-transfer cursor, you must pass a pointer to a ClipboardQuickTransferRegionInfo in the regionParams parameter. This structure is defined below.

typedef struct {
	word	CQTRI_paramAX;
	word	CQTRI_paramBX;
	word	CQTRI_paramCX;
	word	CQTRI_paramDX;
	Point	CQTRI_regionPos;
	dword	CQTRI_strategy;
	dword	CQTRI_region;
} ClipboardQuickTransferRegionInfo;

This structure is passed on the stack to the routine. The first four fields represent the region's definition parameters. CQTRI_regionPos is a Point structure indicating where (in screen coordinates) the region is to be located. CQTRI_strategy is a pointer to the region strategy routine. CQTRI_strategy should be a video driver strategy. To find out the strategy of the video driver associated with your window, send your object a MSG_VIS_VUP_QUERY with VUQ_VIDEO_DRIVER. Pass the handle thus gained to GeodeInfoDriver() , which will return the strategy.

This routine returns an error flag: If a quick-transfer is already in progress, the return will be true . If the quick-transfer is successfully begun, the error flag will be false .

Include: clipbrd.goh

ClipboardTestItemFormat()

Boolean	ClipboardTestItemFormat(
        TransferBlockID		header,
        ClipboardFormatID 		format);

This routine tests whether the given format is supported by the specified transfer item. It returns true if the format is supported, false if the format is not supported. Pass the following values:

header
A TransferBlockID specifying the VM file handle and VM block handle of the transfer item to be checked. This is returned by the routines ClipboardGetNormalItemInfo() , ClipboardGetQuickItemInfo() , ClipboardGetUndoItemInfo() , and ClipboardQueryItem() . Most often the proper routine to use is ClipboardQueryItem() .
format
A ClipboardFormatID specifying the type and manufacturer ID of the format to be checked. It is most appropriate to create this parameter from its individual parts using the macro FormatIDFromManufacturerAndType() .

Include: clipbrd.goh

ClipboardUnregisterItem()

void	ClipboardUnregisterItem(
        optr	owner);

This routine restores the transfer item to what it was before the last ClipboardRegisterItem() . Pass it the optr of the caller.

Only the object that last registered a transfer item is allowed to unregister it. If the transfer item is owned by a different object, or if there is no transfer item, nothing will be done. If the transfer item is owned by the caller, the transfer item will be unregistered and the clipboard will be restored to its previous state.

Include: clipbrd.goh


Up: GEOS SDK TechDocs | Up | Prev: ClipboardQueryItem() ... | Next: ConstructOptr() ...