ssn@modulex.dk (Svend Skafte Nielsen) (05/13/91)
Can anyone explain this? When I set the highlight thickness of a pushbutton to a value larger than 2 and subsequently retrieves this by XtGetValues, the return value is 2 lower than the actual value, although the pushbutton is displayed correctly, with the desired highlight thickness. I suspect it has something to do with the way rowcolumn manages its children, but I don't understand how and why! For an example, try out the code listed below. . . args_count = 0; mainw=XmCreateMainWindow(top_level,"mainw",args,args_count); rc=XmCreateRowColumn(mainw,"rc",args,args_count); bbut=XmCreatePushButton(rc,"bbut",args,args_count); XtManageChild(bbut); args_count = 0; XtSetArg(args[args_count],XmNhighlightThickness, 6); args_count++; XtSetValues(bbut,args,args_count); args_count = 0; XtSetArg(args[args_count],XmNhighlightThickness, &i); args_count++; XtGetValues(bbut,args,args_count); fprintf(stderr,"bbut.highlightthickness: %d\n",i); XtManageChild(rc); XtManageChild(mainw); . . --------------------------------------------------- Svend Skafte Nielsen | Email: ssn@modulex.dk A/S MODULEX | Phone: +45 44 53 30 11 Lyskaer 15 | Telefax: +45 44 53 30 74 DK-2730 Herlev | Denmark |
sydorow@bisco.kodak.com (Steve Sydorowicz) (05/14/91)
ssn@modulex.dk (Svend Skafte Nielsen) writes: > Can anyone explain this? > > When I set the highlight thickness of a pushbutton to a value > larger than 2 and subsequently retrieves this by XtGetValues, > the return value is 2 lower than the actual value, although the > pushbutton is displayed correctly, with the desired highlight > thickness. > I suspect it has something to do with the way rowcolumn manages > its children, but I don't understand how and why! > > For an example, try out the code listed below. > [code deleted] You did not mention which version of Motif you were using, but I think I can still give you a reasonable answer.... Before 1.1 (or 1.1.1) the computation method for this resource in PushButton had a bug in it related to the defaultButtonShadowThickness resource. As you'll notice (or not :-)), the default for this resource used to be based on showAsDefault (which was 2). Hence, the off by 2 problem. If this all seems confusing, don't worry, it should be fixed in Motif 1.1 (and 1.1.1 and 1.1.2). Sorry I can't be more specific, I'm recalling this from memory of about a year ago. If you have 1.1 or later and it is still wrong, send in a bug report to osf@motif-defect. This *was* fixed at some point and hopefully not re-broken. Steve -- -------------------------------------------------------------------------------- Stephen J. Sydorowicz Azatar Computer Systems REPLY TO: sydorow@bisco.kodak.com (716)726-5636 Opinions expressed do not reflect those of my employer