[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference bulova::decwindows

Title:DECWINDOWS
Notice:DECwindows Motif V1.2-4 SSB kits: note 5519
Moderator:GRIM::MESSENGER
Created:Thu Nov 29 1990
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:5861
Total number of notes:24081

5798.0. "Question about XV and CDE" by THEFT::MICK (Crisis, What Crisis?) Fri Mar 07 1997 15:44

Hi,

I'm running CDE on an AlphaStation 600 running OpenVMS 7.1 and I have a question
 regarding XV.

When I use XV to display a .JPG to the root screen, how do I control which of
the 4 screens it appears on? It looks to be random! 

The commands are...

$ xv := "$sys$sysdevice:[mick]xv_alpha.exe"
$ xv -root -quit pic.jpg

If I do the same kind of command using dximageview the picture appears on all of
the screens that I have set to have 'nobackdrop'.

$ image := "$cde$path:dximageview"
$ image -exit "-rootMode" "tile" pic.jpg


I need to get this to work with XV since dximageview is too fussy about the .jpg
quality (get lots of 'Bogus DQT index 11' and 'Corrupt JPEG data: 4 extraneous
bytes before marker 0xdb' errors)

Regards
Mick.
T.RTitleUserPersonal
Name
DateLines
5798.1GERUND::WOLFEI'm going to huff, and puff, and blow your house downMon Mar 10 1997 15:474
If you have 4 screens then you control which one an app uses
with set display/cre/screen=n where 0 <=n <=4. 

			pete
5798.2%DWT-F-NOMSG, Message number 03AB8204THEFT::MICKCrisis, What Crisis?Tue Mar 11 1997 10:289
$ set display/create/node=theft/trans=local/screen=1
$ i := $cde$path:dximageview
$ i -exit "-rootMode" "tile" 1.jpg
X Toolkit Error: Can't open display: _WSA18:
%DWT-F-NOMSG, Message number 03AB8204

regards
Mick
5798.3Workspace not Screen I think...ZUR01::JAUNINwww2000: click and dispairTue Mar 11 1997 11:3535
I think Mick in .0 meant 4 _workspaces_ not _screens_...

if yes....

[MOTIF/CDE] How to Start An Application is a Specific Workspace (from STARS)

This example uses the DECW$CLOCK as the application to start:                 
                                                                              
     1. First define the application as a foreign command:                    
                                                                              
        $ clock :==$SYS$SYSTEM:DECW$CLOCK                                     
                                                                              
     2. To start the clock application in workspace named ONE do the          
        following:                                                            
                                                                              
        $ clock -xrm "\*workspaceList: ONE"                                   
                                                                              
     3. To start the clock application in several workspaces (ONE and         
        Three for example), issue the following command:                      
                                                                              
        $ clock -xrm "\*workspaceList: ONE Three"                             
                                                                              
     4. To start the application in all workspaces, use the command:          
                                                                              
        $ clock -xrm "\*workspaceList: all"                                   
                                                                              
                                                                              
NOTE:  In the above examples, "ONE" and "Three" are the names of the          
       workspaces.  These match the names displayed on the front panel.       
       The default names are ONE, TWO, THREE and FOUR.  Other names may       
       be used.  


hope this helps
andre                                                             
5798.4screen != workspaceMUNICH::AUEROCHSStephan Auerochs, CSC MunichTue Mar 11 1997 11:448
The qualifier /screen is for use with multihead systems (more than one monitor).
CDE uses "virtual screens", you better say "workspace" to them. 
Try XLOADIMAGE (on the OpenVMS Freeware CDROM 3.0 or on
http://www.openvms.digital.com/openvms/freeware/cd.html). It's slow but can
handle CDE-rootwindow.

Regards,
Stephan
5798.5Clock and Who Else?DRAGNS::SAUNDERSTue Mar 11 1997 14:215
Which applications does this technique work with? I'm trying to use one
workspace for each of the systems I work with, and it's pretty tedious by hand...

John Saunders
DECdns Engineering
5798.6XV looks for a pseudo-root windowDECWIN::STEFANELLIGreat googaly moogalyTue Mar 11 1997 18:2135
The problem with XV on VMS is that special VMS-specific code was added
to XV to deal with the pseudo-root window used in XUI.  As I understand it,
XUI had a special background window that it used to cover the root window.
If XV sees a top-level window with the same dimensions as the root window, XV
will draw to it instead of the actual root window, assuming that this
is XUI's pseudo-root window.

It does the right thing with regular DECwindows because there is normally
no window that matches this criteria so it falls back to the root window.
However, with CDE, all of the workspaces have there own backdrop windows,
even if nobackdrop is selected, that do match.  So, one of these is always
found instead of the root window and the backdrop is overwritten and the
root window is not changed.

I created a modified version of xv that always uses the root window
on VMS (unless you explicitly specify -pseudoroot).  It was built on
Alpha VMS V6.2 so it should work on any subsequent version.  Get it from:

	BULOVA::DECW$PUBLIC:[000000]XV_ALPHA_FOR_CDE.EXE

I used the 3.10a XV sources.  If you want to modify it yourself, just
comment out the call to pseudo_root() in the module xv.c.

For the -xrm "*workspaceList: ws0" switch to work, the application must
have a UNIX style command line interface and must process the arguments
in a specific way.  There were several save/restore problems that got
fixed in the v1.2-4 patch kit including fixes in processing this option.
Some DECwindows apps still don't handle it properly though.  The ones
I know of off hand are DECterm, Mail, and Bookreader.  The CDE Calculator,
Create Action utility, and Image Viewer also don't handle it although
these will be fixed in the next patch kit.  Your best bet is just to try
it with your apps and see if it does the right thing.

Doug

5798.7workspace it isTHEFT::MICKCrisis, What Crisis?Wed Mar 12 1997 12:009
Doug,

Your XV_ALPHA_FOR_CDE works fine with the root option, thanks very much (BTW i'm
running 7.1).

Where are the sources, I would like to look at them.

Regards
Mick.
5798.8ftp://ftp.cis.upenn.edu/pub/xvDECWIN::STEFANELLIGreat googaly moogalyWed Mar 12 1997 19:274
The compressed tar files are there.  I had to change
a couple ifdefs to get it to build right on VMS 6.2.

Doug