[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

2349.0. "ACCVIO when calling X$ROOT_WINDOW. HELP!!" by EWBV37::HIME (I hate you FORTRAN !!) Sun Feb 25 1990 21:28

                                    
  I'm getting an access violation on the call to X$ROOT_WINDOW,
  X$DEFAULT_COLORMAP,X$BLACK_PIXEL and X$WHITE_PIXEL.
                               
  X$ROOT_WINDOW_OF_SCREEN,X$DEFAULT_COLORMAP_OF_SCREEN,X$BLACK_PIXEL_OF_SCREEN
  and X$WHITE_PIXEL_OF_SCREEN are working fine.

  I'm using FORTRAN,XLIB on VMS Version 5.2.
  Am I doing something wrong ?
  I'd appreciate any suggestions.
  The code reproduce my problem is posted in following.

  Best regards.

						-Toru-



	INCLUDE 'SYS$LIBRARY:DECW$XLIBDEF'

	INTEGER*4              screen
	INTEGER*4              rootWindow
	INTEGER*4              defaultColormap
	INTEGER*4              blackPixel
	INTEGER*4              whitePixel

	RECORD   /X$COLOR/     nbluep,yellowp,exact_return
	INTEGER*4              peugeot_bitmap
	INTEGER*4              display
	INTEGER*4              window
	INTEGER*4              status,peugeot_width,peugeot_height
	INTEGER*4              x_hot,y_hot
 	INTEGER*4              blueGC
	RECORD   /X$GC_VALUES/ blueGCV
	RECORD   /X$EVENT/     event
	COMMON  /GLBL/	       display,window,peugeot_bitmap,blueGC

	display = X$OPEN_DISPLAY()
	IF (display .EQ. 0) THEN
	   WRITE (6,'('' ERROR: display not open'')')
	   CALL SYS$EXIT(%VAL(1))
	ENDIF
	screen = X$DEFAULT_SCREEN_OF_DISPLAY(display)
!
!	I'm getting ACCVIO here ....
	rootWindow = X$ROOT_WINDOW(display,screen)
!
	defaultColormap = X$DEFAULT_COLORMAP_OF_SCREEN(screen)
	blackPixel = X$BLACK_PIXEL_OF_SCREEN(screen)
	whitePixel = X$WHITE_PIXEL_OF_SCREEN(screen)

	window = X$CREATE_SIMPLE_WINDOW ( display,
     *		                          rootWindow,
     *                                    100,100,100,100,1,
     *			                  blackPixel,
     *			                  whitePixel)
	END 

T.RTitleUserPersonal
Name
DateLines
2349.1Screen Number Vs ScreenHKOVC::TERENCEFrom Middlesex, UWOMon Feb 26 1990 04:1415
    X$DEFAULT_SCREEN returns the screen number, which is an array index
    into the array of screen structure.
    
    X$DEFAULT_SCREEN_OF_DISPLAY returns the screen structure.
    
    X$ROOT_WINDOW takes screen number as parameters, which is the return
    value of X$DEFAULT_SCREEN
    
    X$ROOT_WINDOW_OF_SCREEN takes screen structure as parameters, which is
    the return value of X$DEFAULT_SCREEN_OF_DISPLAY
    
    Don't get confused by screen number and screen. Both of them can be
    used to reference the same screen, but the usage is different.
    
    -Terry