background image
Functional specification
60
CDE/Motif PST
CDEnext
PDM S
ELECTION
P
ROTOCOL
3.1
Overview
3.1.1
Short Description
The "PDM Selection Protocol" is based on ICCCM selections, and allows a client to transmit information and
request that a PDM be started against a Print X-Server and Video X-Server per the information transmitted.
3.1.2
Long Description
For the sake of the following protocol discussion, the term "Selection X-Server" will be used to denote the X-
Server on which the selection window, selection atom, type atoms and properties exist, and to which the client and
PDM have active display connections for the purposes of communication. The term "Print X-Server" will be used
to denote the X-Server on which printing will take place, and print attributes will be modified. In most cases, the
Selection X-Server will be the same as the Print X-Server. The term "Video X-Server" will be used to denote the X-
Server on which the client and PDM post dialogs to the user.
The PDM is a long lived process that establishes ownership of a well known selection, and responds to conversions
on several target types requested by clients on the selection. The PDM's primary purpose is to provide dialogs that
allow the user to configure the print options that the client will subsequently use in a printing job.
The client is a process that requests conversions on the well known selection, and its targets, in order to enlist the
help of the PDM.
3.2
Setup of the Protocol
Specifically, the PDM establishes ownership of the well-known
PDM_MANAGER
selection by making the following
SetSelectionOwner
request:
selection
PDM_MANAGER
owner
a window of the PDM
time
something other than
CurrentTime
Then the PDM establishes the capability to handle the following selection targets:
PDM_START
Used to request that a PDM be started.
PDM_MBOX
Used to request that a "mailbox window" be provided, so that Video X-
Server
connection authorization information (e.g. magic cookies) can be
subsequently mailed by the client using ClientMessage's.
TARGETS
Used to query the list of supported targets.
MULTIPLE
Standard ICCCM capability.