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

Conference bulova::decw_jan-89_to_nov-90

Title:DECWINDOWS 26-JAN-89 to 29-NOV-90
Notice:See 1639.0 for VMS V5.3 kit; 2043.0 for 5.4 IFT kit
Moderator:STAR::VATNE
Created:Mon Oct 30 1989
Last Modified:Mon Dec 31 1990
Last Successful Update:Fri Jun 06 1997
Number of topics:3726
Total number of notes:19516

1360.0. "XUnmapSubwindows under VMS" by GIDDAY::OMELEY (Rob O'Meley, CSC Sydney) Sat Sep 02 1989 10:39

    Hi all,

    	the following program illustrates a problem with XUnmapSubwindows,
    which only manifests itself under VMS (Server and Window Manager).

    The problem:- create a parent and several child windows, you can happily
    Map and Unmap the children individually using XMapwindow, and XUnmapWindow
    respectively.
    		- issue a XUnmapSubwindows(disp, parent) and the children are
    unmapped Ok but the parent looses all it's scroll and title bars, and
    remains that way when the children are remapped.

    	It appears that the problem is local to the VMS Server - Window
    Manager combination, as we have tested this under Ultrix (with both DEC
    and HP display manager) and it works correctly (ie: the XUnMapSubwindow
    unmaps the children and leaves the parent intact (scroll bars etc). This
    was also tested under VMS using the HP window manager (set display from
    ultrix to VMS, ran the window manager on ultrix which looked after the
    windows on the VMS system) and there was no problem either.

    	Has anyone seen similar behaviour or can point to what might be going
    wrong ? I have an XLIDDY trace from a test, but it doesn't seem to display
    anything unusual (the following is an extract from the XLIDDY trace)




        [X_MapWindow] <SN: 17>
	              window:    4194307 (0x  400003)

        [X_GetInputFocus] <SN: 18>


M   <0>              [Server] <32 bytes>

R       [X_GetInputFocus (reply)]
	      sequenceNumber:     18 (0x  12)
	         focusWindow:    1048603 (0x  10001b)
	            revertTo: "RevertToNone"


M   <0>              [Client] <12 bytes>

        [X_UnmapSubwindows] <SN: 19>
	              window:    4194305 (0x  400001)

        [X_GetInputFocus] <SN: 20>




    	Thank's in advance

    		Rob
    
This note also posted in the DECWINDOWS_PROGRAMMING Conf


    Test program follows:


#include <decw$include/Xlib.h>
#include <stdio.h>

int main()
{
  char display1[20];
  char stuff[1];
  Display  *disp;
  Window parent, child, child2, child3;
                            
/*  printf("Enter server designation - node::0 ->");
  scanf("%s", display1);*/

  if ((disp = XOpenDisplay(0)) != NULL) /* If it is open */
    {
      if ((parent = XCreateSimpleWindow(disp,XRootWindow(disp,0),100,
	       	 			 100,600,600,10,BlackPixel(disp,0),
					 WhitePixel(disp,0))) != NULL)
	{
	  XMapWindow(disp,parent);
	  printf("Parent Created \n and Mapped \n");
	  XSync(disp);

	  printf("\n Creating Child  Press Ctrl-Z: ");
	  scanf("%s", stuff);

/* 1st Child */

	  child = XCreateSimpleWindow(disp,parent,10,10,100,100,5,
		WhitePixel(disp,0),BlackPixel(disp,0));
	  XMapWindow(disp,child);
	  XSync(disp);

/* 2nd & 3rd Child */

	  child2 = XCreateSimpleWindow(disp,parent,200,200,150,150,5,
		WhitePixel(disp,0),BlackPixel(disp,0));
	  XMapWindow(disp,child2);
	  XSync(disp);

	  child3 = XCreateSimpleWindow(disp,child2,10,10,30,30,5,
		BlackPixel(disp,0),WhitePixel(disp,0));
	  XMapWindow(disp,child3);
	  XSync(disp);

/* Unmap Child2 to illustrate that there is no problem with UnmapWindow */

	  printf("\n UnMapping Child2  Press Ctrl-Z: ");
	  scanf("%s", stuff);
	  XUnmapWindow(disp, child2);
	  XSync(disp, 0);

	  printf("\n Will now Map them again Press Ctrl-Z: ");
	  scanf("%s", stuff);

 	  XMapWindow(disp, child2);/* Map child2 and it's offspring */
	  XSync(disp);

    	  printf("\n Will now UnMap all of them Press Ctrl-Z: ");
	  scanf("%s", stuff);

/* Unmap all the subwindows to show the problem with the parent */

 	  XUnmapSubwindows(disp, parent);
    	  XSync(disp);

	  printf("\n Press Ctrl-Z to Exit: ");
	  scanf("%s", stuff);

          XCloseDisplay(disp);
	}
    }
  exit(1);
}

    

T.RTitleUserPersonal
Name
DateLines
1360.1MOVIES::LESLIEAndy ��� LeslieSat Sep 02 1989 19:314
    Have you submitted a QAR?
    
    (Yes, I'm back from vacation and still singing the old tune)

1360.2STAR::MFOLEYRebel without a ClueSun Sep 03 1989 00:406
>    (Yes, I'm back from vacation and still singing the old tune)
       
       	Oh good, my voice is getting hoarse..
       
       							mike

1360.3MOVIES::LESLIEAndy ��� LeslieSun Sep 03 1989 15:335
    Apart from Mr Ed., I guess thats better than a horse with a voice,
    Mike! :-)
    
    Andy

1360.4QARing....GIDDAY::OMELEYRob O&#039;Meley, CSC SydneySun Sep 03 1989 19:367
    
    
    QAR on the way... thought I'd bounce it off the Net first though in
    case we've missed something.
    
    	Rob

1360.5QARedGIDDAY::OMELEYRob O&#039;Meley, CSC SydneySun Sep 03 1989 23:322
    TRIFID, QAR: 1331 V5 database.

1360.6late thoughtDSSDEV::GRIFFINThrow the gnome at itMon Oct 02 1989 17:317
Could it be implementation.  Since the scroll bars really are children of the
parent, they're getting unmapped, per the request.  ULTRIX and HP just added
a little smarts to say, not all children.  Sound good?

Beth