On Tue, Aug 28, 2001 at 10:13:25AM +0200, Danny Backx wrote:
> I've added a XmDropSiteRegistered() which returns False for now,
> Alexander has added the prototype for it to the include files.
> 
> I've added some code so _XmCalcIconGDimensions() picks up either
> the small or large icon pixmap, depending on ViewType. Don't know if
> that's correct behaviour.

> > I now replaced in IconG.c all references to XG_SmallIconPixmap with
> > XG_IconPixmap, which I defined as follows:
> > 
> > #define IG_IconPixmap(w) \
> > ((IG_ViewType(w)==XmLARGE_ICON)?IG_LargeIconPixmap(w):IG_SmallIconPixmap(w))

Ok, now it stops here in IconG.c:expose(), right?!

First I see that we still explicitly use the small pixmap in
that function, especially in the call to XGetGeometry which
exit()s. So we probably need to apply a patch as indicated.

Here's a look at the 'thing' from within gdb:

expose (w=0x1202413d0, event=0x1202413d0, region=0x200002f8374) at IconG.c:1270
1270        myGC = IG_NormalGC(w);
(gdb) p ((XmIconGadget)(w))->icong
$5 = {label_string = 0x120241840 "\020,$ \001", large_icon_mask = 2, large_icon_pixmap 
= 2,
small_icon_mask = 2, 
  small_icon_pixmap = 2, view_type = 0 '\000', visual_emphasis = 1 '\001', detail = 
0x0, detail_count
= 0, 
  label_rect_width = 0, label_rect_height = 0, large_icon_rect_width = 0, 
large_icon_rect_height = 0, 
  small_icon_rect_width = 0, small_icon_rect_height = 0, 
  large_pixmap_name = 0x40000000000000 <Address 0x40000000000000 out of bounds>, 
small_pixmap_name =
0x0, cache = 0x120242cc8}

Large and small are the same here?
BTW, what are these large_pixmap_name/small_pixmap_name names for?
I see no reference ever to those.


Alexander

Reply via email to