Path: utzoo!attcan!uunet!bloom-beacon!ATHENA.MIT.EDU!swick From: swick@ATHENA.MIT.EDU (Ralph R. Swick) Newsgroups: comp.windows.x Subject: Re: XtCrtAppShell and resources Message-ID: <8910041203.AA26329@LYRE.MIT.EDU> Date: 4 Oct 89 12:03:55 GMT References: <2436@goanna.oz> Sender: daemon@bloom-beacon.MIT.EDU Organization: DEC/MIT Project Athena Lines: 24 > I use XtCreateApplicationShell("Tql", topLevelShellWidgetClass, NULL, 0); I assume you have Release 3 installed. If so, the first argument is ignored and the instance name of the created shell is the application instance name you originally passed to XtInitialize(). The reason for this obscure behaviour is that in prototype versions of Xt (i.e. prior to the adoption of the standard) there was an additional level of resource name qualification to the left of all widgets. This extra level was the application instance name and class. So a pre-R3 program would have expected the resource names in your example to be: myapp.Tql.retrieve.quit.label In the standard Xt, there is no such extra level and so XtCreateApplicationShell had to be modified in the way least likely to break older programs. We based the decision on the assumption that most older resource specifications were of the form 'myapp*.quit.label'. That's why this routine is in the "Compatibility" appendix of the standard. You should use XtAppCreateShell instead, which will give you the control you want.