## selection.api
#
# A window-level view of the low-level selection operations.
#
# See also:
#
src/lib/x-kit/xclient/src/window/selection-imp-old.api# Compiled by:
#
src/lib/x-kit/xclient/xclient-internals.sublibstipulate
include package threadkit; # threadkit is from
src/lib/src/lib/thread-kit/src/core-thread-kit/threadkit.pkg #
package xt = xtypes; # xtypes is from
src/lib/x-kit/xclient/src/wire/xtypes.pkg package xj = xsession_junk; # xsession_junk is from
src/lib/x-kit/xclient/src/window/xsession-junk.pkg# package ww = window; # window is from
src/lib/x-kit/xclient/src/window/window.pkg package sep = client_to_selection; # client_to_selection is from
src/lib/x-kit/xclient/src/window/client-to-selection.pkgherein
# This api is implemented in:
#
#
src/lib/x-kit/xclient/src/window/selection.pkg api Selection {
Selection_Handle;
Atom; # = xtypes::Atom
Xserver_Timestamp; # = xserver_timestamp::Xserver_Timestamp;
# Selection owner operations.
#
acquire_selection
:
(xj::Window, Atom, Xserver_Timestamp, sep::Selection_Plea -> Void)
->
Null_Or( Selection_Handle );
selection_of: Selection_Handle -> Atom;
timestamp_of: Selection_Handle -> Xserver_Timestamp;
# selection_req_mailop
# :
# Selection_Handle
# ->
# Mailop
# {
# target: Atom,
# timestamp: Null_Or( Xserver_Timestamp ),
# reply: Null_Or( xt::Property_Value ) -> Void
# }
# ;
#
# This event is enabled once for each request for the selection.
# The target field is the requested target type;
# The time field is the server-time of the gesture that caused the request;
# The reply field is a function for sending the reply.
selection_rel_mailop
:
Selection_Handle
->
Mailop( Void )
;
#
# This event becomes enabled when the
# selection is lost, either by the owner
# releasing it, or by some other client
# acquiring ownership.
release_selection: Selection_Handle -> Void;
#
# Release ownership of the selection.
# Selection requestor operations.
#
request_selection
:
{
window: xj::Window,
#
selection: Atom,
target: Atom,
property: Atom,
#
timestamp: Xserver_Timestamp
}
->
Mailop( Null_Or( xt::Property_Value ) );
#
# Request the value of the selection.
# The window field is the requesting window;
# the selection field is the requested selection,
# the target field is the requested target type, and
# the time field is the server-time of the gesture
# causing the request.
# This returns a mailop that will become
# enabled when the reply is received.
};
end;
## COPYRIGHT (c) 1994 by AT&T Bell Laboratories. See SMLNJ-COPYRIGHT file for details.
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.