brossard@SASUN1.EPFL.CH ("", Alain Brossard EPFL-SIC/SII) (10/23/90)
I'm having mucho problems with the interactions between the
Athena Widgets and the xview programs when it relates to cut & paste.
The Xaw, uses the primary selection: the left mouse button selects
and the selection is put in the primary buffer.
But what do the xview programs use? Their select has
the same behavior so going from xview -> Xaw is easy. But where
do the selections go when you press "Copy" or "Cut"? Following
the suggestion from Ridge McGhee, I tried using xcutsel. Without
more informations than this I succeeded in pasting text from
Xaw -> xview by: using one xcutsel to copy the PRIMARY to buffer0
and one xcutsel to copy from buffer0 to the SECONDARY and then
paste to the xview application with the "paste" key.
BUT it only works for ONE paste, doing two in a row
with "mail" in the buffer gives: "mail^@^@^@^D" (Sparring you
from the actual control characters). From now on, cut and paste
within that xview application will never work! It will always paste
"^@^@^@^D". There is definite correlation between the length
of the strings. Starting a new xview applications (eg: mailtool)
has no effect. One more piece of information is that the
"copy 0 to SECONDARY" button of xcutsel stays activated during
this time (it stays the owner). Doing a further use of
xcutsel works so now I have the following working:
Xview -> Xaw
Xaw -> Xview
but not Xview -> Xview !!!
So how to I make Xaw and Xview talk to each other?
Anybody from Sun cares to comment? I don't think it is a
good reflection on the product if it doesn't talk to the
rest of the world and even worse I haven't found any
documentation on this particular problem.
Alain Brossard, Ecole Polytechnique Federale de Lausanne,
SIC/SII, EL-Ecublens, CH-1015 Lausanne, Suisse
brossard@sasun1.epfl.chkasso@eng.sun.COM (Chris Kasso) (10/24/90)
From: "(Alain Brossard EPFL-SIC/SII)" <brossard@sasun1.epfl.ch> Date: Tue, 23 Oct 90 09:34:54 PDT I'm having mucho problems with the interactions between the Athena Widgets and the xview programs when it relates to cut & paste. The Xaw, uses the primary selection: the left mouse button selects and the selection is put in the primary buffer. But what do the xview programs use? Their select has the same behavior so going from xview -> Xaw is easy. But where do the selections go when you press "Copy" or "Cut"? XView follows a model similar to SunView. Any text that is highlighted belongs to the PRIMARY selection. Pressing the ``Copy'' or ``Cut'' keys [Meta-c and Meta-x if you don't have a Sun keyboard] will result in the acquisition of the CLIPBOARD selection. The contents of the current selection will be placed on the CLIPBOARD selection or shelf as it was once known. Pressing the ``Paste'' key [Meta-v] will result in XView asking for the contents of the CLIPBOARD selection from the current owner, including SunView applications if you are running under OpenWindows. The miscommunications between XView and Xaw apps results from the fact that XView has no mechanism to ask for the contents of the PRIMARY selection and Xaw apps, by default, do not know how to ask for the contents of the CLIPBOARD selection. To remedy this, you can make Xaw apps aware of the CLIPBOARD selection by adding the following translations to a resource file: *VT100.Translations: #override \ <Key>L6: start-extend() select-end(PRIMARY, CLIPBOARD, CUT_BUFFER0)\n\ <Key>L8: insert-selection(CLIPBOARD) \n\ <Btn3Up>: select-end(CLIPBOARD) \n\ <Btn2Up>: insert-selection(PRIMARY,CLIPBOARD) \n\ <Btn2Down>: ignore() This allows you to use the Copy key to assert ownership of the CLIPBOARD selection and the Paste key to access the contents of the CLIPBOARD selection. Or, alternatively, use a mouse button 3 up event as a trigger to acquire the CLIPBOARD selection and button 2 up to access the contents of the CLIPBOARD if there currently is not a PRIMARY selection. One other possibility is to use xclipboard to move the selections from XView <=-=> Xaw. For more information on the use of the CLIPBOARD selection, refer to section 2.6.1.3 of the ICCCM. Alain Brossard, Ecole Polytechnique Federale de Lausanne, SIC/SII, EL-Ecublens, CH-1015 Lausanne, Suisse brossard@sasun1.epfl.ch Chris Kasso ARPA: kasso@sun.COM Window Systems Group UUCP: ...!sun!kasso Sun Microsystems, Inc.