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
ClipboardQuickTransferFeedback
type indicating the type of cursor to set. The possible values are listed below.
buttonFlags
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:
Include: clipbrd.goh
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
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
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
flags
. It is the horizontal position of the mouse in screen coordinates.
mouseYPos
flags
. It is the vertical position of the mouse in screen coordinates.
regionParams
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
MSG_META_CLIPBOARD_NOTIFY_QUICK_TRANSFER_CONCLUDED
and
MSG_..._FEEDBACK
.
The allowed
ClipboardQuickTransferFlags
are listed below:
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
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
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
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
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
GEOS SDK TechDocs
|
|
ClipboardQueryItem() ...
|
ConstructOptr() ...