ries@venice.SEDD.TRW.COM (Marc Ries) (12/22/89)
[In response to my plea for help, the following code was emailed to me. Unfortunately, my mailer doesn't recognize the senders email address so I could not respond directly. I have left out the orig. senders name. Thanks to the sender for at least responding 8-)] The problem is, the code doesn't work, at least on our HP 360's running HP MOTIF under HPUX 7.0. I ran the following code, and on our system, I still got a pushbutton widget with a full set of MWM decorations around it?!?!? Is it HP MOTIF or me or ???? ================================================================ /* mwm3.c - change mwm borders and frames. Based on pushb.c */ #include <stdio.h> #include <X11/Intrinsic.h> #include <X11/Shell.h> #include <X11/AtomMgr.h> #include <X11/Protocols.h> #include <X11/MwmUtil.h> #include <Xm/Xm.h> #include <Xm/PushB.h> void Exit (widget, closure, call_data) Widget widget; caddr_t closure, call_data; { printf ("About to Exit\n"); exit(); } main (argc, argv) int argc; char *argv[]; { Widget toplevel, pushb; Arg arglist[10]; int n; toplevel = XtInitialize(argv[0], "Motif", NULL, 0, &argc, argv); pushb = XmCreatePushButton (toplevel, "Close", NULL,0); XtManageChild (pushb); XtAddCallback (pushb, XmNactivateCallback, Exit, NULL); XtRealizeWidget (toplevel); { Display *display = XtDisplay (toplevel); Atom Motif_atom = XmInternAtom (display, _XA_MWM_HINTS, False); PropMwmHints data; data.flags = MWM_HINTS_DECORATIONS; /* leave out resize handles, title, system menu, zoom */ data.decorations = MWM_DECOR_BORDER | MWM_DECOR_TITLE | MWM_DECOR_MINIMIZE; /* property will stay there, present for when Mwm finally runs */ XChangeProperty (display, XtWindow(toplevel), Motif_atom, Motif_atom, 32, PropModeReplace, (unsigned char *) &data, PROP_MOTIF_WM_HINTS_ELEMENTS); } XtMainLoop(); } ================================================================ Am I missing something or is HP Motif screwed up? In either case, I typed in the above code verbatim and ran it and none of the border attributes changed (ie, I still had a push-button widget appear with a full MWM border decorations). Thanks, Marc Ries (ries@venice) -- Marc Ries ries@venice.sedd.trw.com (ARPA) somewhere!trwind!venice!ries (UUCP) #include <std.disclaimer>
david@jpl-devvax.JPL.NASA.GOV (David E. Smyth) (12/28/89)
ries@venice.sedd.trw.com (Marc Ries) writes: >[In response to my plea for help, the following code was emailed to >me. > >The problem is, the code doesn't work, at least on our HP 360's >running HP MOTIF under HPUX 7.0. I ran the following code, and >on our system, I still got a pushbutton widget with a full set of >MWM decorations around it?!?!? > >Is it HP MOTIF or me or ???? It works great for me! Machine: Sun 3/260HM mono OS: SunOS 4.0.3 Compiler: Sun cc Server: X11R3 + Purdue + all patches, gcc compiled Motif: ICS version 1.0 Nov 14 Motif tape. Window Mgr: mwm from Nov 14 Motif Tape from ICS. Compile Line: cc -g -Dsun -I/usr/include/Xm -c mwm3.c Load Line: cc -g -Dsun mwm3.o -lXm -lXtm -lX11 -o mwm3 Libs: -rw-r--r-- 1 root 665446 Nov 14 09:21 libXm.a -rw-r--r-- 1 root 206708 Nov 14 09:20 libXtm.a -rw-r--r-- 1 root 198756 Jul 19 07:12 libX11.a Includes: Also from Nov 14 Motif Tape from ICS. david@devvax.jpl.nasa.gov