ngse18@castle.ed.ac.uk (J R Evans) (09/12/90)
I have an application in which one of the dialog boxes consists of a series of option menus. Both the label and cascade button fields associated with these menus are fairly long, so they are arranged vertically. I would like to arrange the option menus so that the cascade buttons are aligned, thus: | Label | Option menu choice | | Absurdly long label | Outrageously long option menu text material | | Lbl | O-menu | but if I set the option menus up in the default manner, I get: | Label | Option menu choice | | Absurdly long label | Outrageously long option menu text material | | Lbl | O-menu | In a former version using XUI, I was able to achieve the desired effect by setting the values of x and width on the cascade component, but this does not work under Motif-UIL. The Motif Programmer's Guide suggests that effects of the kind I want should be possible employing the functions XmOptionLabelGadget() and XmOptionButtonGadget() to access the subgadgets of the option menu (e.g. see p.91 of the Postscript version). I have tried setting various values on the subgadgets after creation, but I haven't been able to find a combination that works (e.g. setting XmNwidth on the label leaves the cascade button component wholly or partially obscured, and the parent appears to ignore - or doesn't see - XmNresizeWidth). Clearly, I can achieve the effect approximately by padding the various strings involved with spaces, but I regard this as a last resort. If you have managed to do what I'm trying to do, or can offer an alternative method (or even explain why it's impossible), I'd be delighted to hear from you. Thanks for your attention. Technical details - we're working with Motif 1.0 on VMS 5.3 and Ultrix/RISC 3.1, using binaries provided by DEC. (Yes, I'd love to have a source license; our bureaucracy is grinding slowly to that end ...). Russ Evans British Geological Survey, Seismology Research Group, Edinburgh UK e_gs18@va.nmh.ac.uk or as quoted in message header.