Dumped you code into my self promt, and indeed: no window. But when I said 'mooch display flush,' there she was! An annoying property of the display, this need for occasional flushing. Hope that does it for you.
Thanks for the comment on the ':0.0' socket convention!
From urs@otis.Stanford.EDU Wed May 5 15:48:59 1993 Resent-Message-Id: 9305052249.AA07647@otis.Stanford.EDU Date: Wed, 5 May 93 18:41:04 EDT From: firstname.lastname@example.org (Michael Richardson) To: email@example.com Subject: X and Self 2.0.1 Resent-To: real-self-interest@otis.Stanford.EDU Resent-Date: Wed, 5 May 93 15:49:05 PDT Resent-From: Urs Hoelzle urs@otis.Stanford.EDU Content-Length: 1310
I thought I'd take a look at the X routines that are in the 2.0.1 release of Self so I would understand James Noble's stuff (when I get to see it) a bit better. I finally sat down at a console and did 'ui start' to see what happens. It definitely works... (Normally it is NCSA Telnet, X under Mach386, or DecWindows for me) It seems that one should be able to write some simple code to at least *open* a window. Alas, it never gets mapped. Can anyone shed any light on this? Is anyone else doing mainstream work on the Self X-interface. Here is the code that I put together by looking at uiX.self:
lobby _AddSlotsIfAbsent: (| mooch = () |) mooch _Define: (| parent* = traits oddball. display. window. displayName <- unix environmentVariable: 'DISPLAY'. start = ( display: xlib display open: displayName. window: xlib window createOnDisplay: display At: 5@26 Size: 500@@500. window name: 'Test #1'. window iconified: false Input: true. window map. inspect: display. inspect: window. ). |)
BTW: with regard to comment of using ':0.0' versus 'hostname:0.0': I would assume that XOpenDisplay considers :0.0 to mean unix:0.0, which usually means to open an AF_UNIX domain socket rather than an AF_INET (tcp) socket. This is usually in /tmp/.X11_unix/X?