At the risk of becoming an absolute nuisance on this list, I've got
one more problem that I am struggling with.
I've been trying to get my hands on the latest GRASS code, and as
guided in a separate thread, I'm now using the
releasebranch_11_april_2001_5_0_0 tag in CVS. This is helping quite a
bit with the problems I was having with r.in.gdal, etc.
However, now that I've updated to that code, I am having several
display problems, (using XDRIVER). My monitor windows are not
redrawing themselves properly, (I have to drag other windows over them
to cause expose events and repaints before I ever see anything). The
monitor windows are also not responding to the client message delete
events properly, (ie. they don't close when I use my window manager's
close button). I've also seen some problems with restarting a monitor
that I have stopped, (I don't have the exact error, but it was something
like "Socket not available").
Has anyone else seen problems like these? They seem bad enough that I
can't imagine this is a common problem.
But I also don't know what I could have done wrong. I didn't have any
of these problems when using the code at the head of CVS, nor when
using the grass5.0.0pre2 tar file. And I'm not sure that I compiled
the code any differently. What changes have happened to the XDRIVER
code between 5.0.0pre2 and now?
Any ideas?
Thanks,
-Carl
PS. GRASS is an excellent system! I'm very impressed by its
functionality and appreciate the efforts of so many developers that
have put hard work into it. There's no way I could have gotten any
commercial GIS to do the things I am doing with GRASS, (ie. running it
on a Compaq iPAQ handheld). So thanks!
(I wanted to be careful to express that since I'm not wanting to sound
like a big complainer here. I know most of my problems are just
because I'm new and I haven't quite grasped a few important detail in
a system as complex as this.)
Carl Worth wrote:
However, now that I've updated to that code, I am having several
display problems, (using XDRIVER). My monitor windows are not
redrawing themselves properly, (I have to drag other windows over them
to cause expose events and repaints before I ever see anything).
Note: XDRIVER doesn't process Expose events. It creates a background
pixmap the same size as the window, and all graphics are drawn to that
pixmap. Redraw should handled by the X server without any help from
the application.
The
monitor windows are also not responding to the client message delete
events properly, (ie. they don't close when I use my window manager's
close button). I've also seen some problems with restarting a monitor
that I have stopped, (I don't have the exact error, but it was something
like "Socket not available").
Has anyone else seen problems like these? They seem bad enough that I
can't imagine this is a common problem.
It certainly isn't a common problem.
Could you provide details of your platform?
But I also don't know what I could have done wrong. I didn't have any
of these problems when using the code at the head of CVS, nor when
using the grass5.0.0pre2 tar file. And I'm not sure that I compiled
the code any differently. What changes have happened to the XDRIVER
code between 5.0.0pre2 and now?
I'll have to get back to you after checking "cvs log".
Did you use "make clean" (preferably "make maintainer-clean") between
compiles? Dependency information is almost non-existent, so
incremental builds are problematic.
--
Glynn Clements <glynn.clements@virgin.net>
Glynn Clements wrote:
> But I also don't know what I could have done wrong. I didn't have any
> of these problems when using the code at the head of CVS, nor when
> using the grass5.0.0pre2 tar file. And I'm not sure that I compiled
> the code any differently. What changes have happened to the XDRIVER
> code between 5.0.0pre2 and now?
I'll have to get back to you after checking "cvs log".
Actually, very little. You can get complete details with:
cvs diff -r release_13_september_2001_grass5_0_0_pre2 src/display/devices/XDRIVER/XDRIVER24
Expose events were removed from the default event mask, as they're no
longer used.
Try changing line 50 of src/display/devices/XDRIVER/XDRIVER24/Graph_Set.c
to:
u_long gemask = ExposureMask | StructureNotifyMask;
and let me know if that fixes the problem.
I have no idea why ClientMessage events wouldn't work; they are
delivered regardless of the event mask, and their handling hasn't
changed since pre2.
--
Glynn Clements <glynn.clements@virgin.net>