X-windows and death. 
Author Message
 X-windows and death.

Quote:
>(a) Poplog seems considerably more fragile since it got together with X,
>particularly on the SUNs.

I suspect the main cause of your problems is OLIT, Sun's Widget Set, which has
some serious bugs in it that cause Poplog to crash periodically.

I use a Sun Motif Poplog all day long, and it is very stable.

Quote:
>(b) ALSO, how do you prevent your poplog process exiting when you quit from
>a window that you have created?

In Motif there is a resource for all top level shell windows called
deleteResponse, which defines how windows should be 'deleted' from the
screen when the user selects 'Quit' or 'Close' on the window manager's menu.
You can simple add a line to your .Xdefaults:

*deleteResponse: unmap

If this is no good, I have a simple Pop-11 facility which assigns a
delete response to a window. It allows you to do:

  ;;; ignore Close/Quit messages
  erase -> XptShellDeleteResponse(shell_widget);

or
  ;;; unmap the window from the screen on Close/Quit messages
  XtUnmapWidget -> XptShellDeleteResponse(shell_widget);

etc. I think that this procedure may be included in a later version of
Pop, but I can post it to anyone that is curious/desparate.

Jon.



Mon, 18 Dec 1995 18:33:16 GMT  
 X-windows and death.

Quote:
>(a) Poplog seems considerably more fragile since it got together with X,
>particularly on the SUNs. Is there any experience as to what the general
>problems are

Some are due to making Poplog event driven although with 14.2, most of
the problems have been traced down to problems with particular X
implementations. Unfortunately, the circumstances are usually not easily
repeatable. As far as Suns go, OpenWindows 3.0 is definitely more robust
than OW 2.0, although I've found Motif on any platform to be more
stable. Hopefully you'll notice an improvement now Sun are adopting
Motif.

Quote:
>(b) ALSO, how do you prevent your poplog process exiting when you quit from
>a window that you have created?

For Motif , there's a resource called XmNdeleteResponse. The default
value causes the application to exit. You should change it to do nothing
(XmDO_NOTHING) or unmap the window (XmUNMAP) e.g.:

        XtCreatePopupShell('', TransientShellWidget, ref_widget,
                XptArgList([{allowShellResize ^true}
                            {deleteResponse ^XmUNMAP}
                            ])) -> my_shell;

I'm not sure what the appropriate OW 3.0 fix is.

Julian



Mon, 18 Dec 1995 18:33:42 GMT  
 X-windows and death.

Quote:

> (a) Poplog seems considerably more fragile since it got together with X,
> particularly on the SUNs. Is there any experience as to what the general
> problems are - I know Aaron had problems with posting news, and these are
> repeatable, but some of my applications just bomb out with repeated
> memory violations. (And I don't think it can be attributed to my own
> C stuff, 'cos it seems to happen even when I am not using it).

All depends on what version of Poplog. As Julian and Jon pointed out
some problems are related to particular X implementations (OLIT in
particular.) With COSE approaching fast people with OLIT applications
should start seriously thinking of porting them to Motif. OLIT will
still be supported by Poplog but future development will be minimal.

There are some bugs in 14.2 related to forking processes which are
handling X stuff. These should be fixed in the next release (I can give
you a hack which would solve some of these if you want.)

Quote:
> (b) ALSO, how do you prevent your poplog process exiting when you quit from
> a window that you have created?

Julian & Jon covered the Motif case, OLIT (as ever) is slightly more
tricky. The OLIT widgets have handlers for window manager messages (like
the quit signal) built into their VendorShell widget which overrides the
Poplog defaults. You can override this by setting the XtN
wmProtocolInterested resource, but this can only be set a widget
initialisation time (not via -XptPopValue- etc.)

An alternative is to set the wmProtocol callback list (via the
undocumented OlAddCallback procedure --- don'tya just love OLIT.)
Setting this to a procedure which does nothing will override the OLIT
defaults and let the Poplog ones take over. The following should work:

        ;;; GET A WIDGET TO PLAY WITH
    uses rc_graphic;
    rc_start();
    vars shell=rc_window.XptShellOfObject;

    uses fast_xt_callback;      ;;; FOR THE CALLBACK COERCION

    XptLoadProcedures 'OlAddCallback' OlAddCallback;

        ;;; ADD CALLBACK PROCEDURE WHICH DOES NOTHING
    exacc (4) raw_OlAddCallback(
        shell,
        XtN wmProtocol,
        XptExportCallbackCached(erasenum(%3%), false, false)
    );

Hitting "quit" on the Xgraphic window should now just destroy the
widget.

Hope this helps.


ObDisclamer: Poplog pay my wages



Mon, 18 Dec 1995 20:11:31 GMT  
 X-windows and death.
Here is a copy of the bug report I filed on the 19th of Feb. I have not heard
anything since then!



Subject: POPLOG Report
POPLOG USER REPORT

SUBJECT: openlook window
MY REFERENCE: openlook.1

CONCERNED WITH:  openlook window under OpenWindows 3.0,
newc_dec
REPORT CLASS: BUG REPORT,
SENDER:
    Full Name:          Anthony Worrall

    Postal address      Department of Computer Science
                        University of Reading
                        Whiteknights
                        PO Box 220
                        Reading
                        Berks   RG6 2AX
    Phone number:       (0734) 318610
    Status: user, system manager,

POPLOG Version information:
    The variable -pop_internal_version- has value:

        pop_internal_version =>
        ** 142000

    The variable -popversion- has value:

        popversion =>
        ** (Version 14.2 Wed Feb  3 12:46:18 GMT 1993)

    Machine type:   SUN-4m

    Operating system AND VERSION:   SunOS4.1.3

    Have you recently installed a new version of the Operating System: No

    If the answer to the last question is YES have you or your
    system manager tried re-building (re-linking) Poplog as described in
    the Poplog Administrator's Guide:

I use the language(s): POP-11

I use the following library packages:
    (If relevant)

I am using POPLOG for:
  (This information is not essential but would be helpful)

I guarantee that
    (delete as appropriate)
    1. My program does not use the inherently unsafe "fast_" or "fi_"
        procedures documented in REF * FASTPROCS

PRIORITY LEVEL:
    2. I find this intensely annoying

--------------------------------------------------------------
DESCRIPTION:
Subject: POPLOG Report

Quiting the window created in TEACH * OPENLOOK from the frame menu
causes POPLOG to exit.
Can you please let me know what the work around for this is as soon
as possible.

Cheers

Anthony.Worrall

PS
Not doing it does not count.

----------------------------------------------------------
Please don't edit the rest of this file: leave it to POPLOG Programmers

User Report ID:

File name:

Message read by:

Files changed:

Trail:

If Originator informed, record date, and by whom:
Originator response:
---------------------------------------------------------------------------

--- C.all/help/bugform
--- Copyright University of Sussex 1990. All rights reserved. ----------



Mon, 18 Dec 1995 20:58:18 GMT  
 X-windows and death.
The OLIT Widget Set Programmer's Guide indcates on page 76 (section 3.4)
that the client should electo receive WM_DELETE_WINDOW messages from
the window manager. If this is not done then the window manager will
issue an Kill Client when the user select Quit from the window menu.

Unfortunately I do not now how to do this.


PS

The ref on XptDescriptors note that widgets will receive WM_DELETE_ME
messages. The file $usepop/pop/x/pop/Xol/XolClients.p loads an external
pointer to the long int WM_DELETE_WINDW (well it would if it were not
for two unresolved symbols).

Don't ya just hate X11. Come back NeWS all is forgiven.



Tue, 19 Dec 1995 00:07:21 GMT  
 X-windows and death.

Quote:
> The ref on XptDescriptors note that widgets will receive WM_DELETE_ME
> messages. The file $usepop/pop/x/pop/Xol/XolClients.p loads an external
> pointer to the long int WM_DELETE_WINDW (well it would if it were not
> for two unresolved symbols).

> Don't ya just hate X11. Come back NeWS all is forgiven.

Let's be fair.  This is XToolKit garbage, not X garbage.  Sure, we hate
X11 but we hate the XToolKit much, much more.

Steve



Tue, 19 Dec 1995 19:34:40 GMT  
 X-windows and death.

Quote:

> > Don't ya just hate X11. Come back NeWS all is forgiven.

> Let's be fair.  This is XToolKit garbage, not X garbage.  Sure, we hate
> X11 but we hate the XToolKit much, much more.

Let's be really fair... this particular bugette is OLIT based... and any
hatred you may have for Xt is *nothing* to what I feel about OLIT :-)


ObDisclamer: Poplog pay my wages



Fri, 22 Dec 1995 04:05:49 GMT  
 X-windows and death.

Quote:

> The OLIT Widget Set Programmer's Guide indcates on page 76 (section 3.4)
> that the client should electo receive WM_DELETE_WINDOW messages from
> the window manager. If this is not done then the window manager will
> issue an Kill Client when the user select Quit from the window menu.

> Unfortunately I do not now how to do this.

Poplog does this automatically and, under OW2 this was all that was
necessary.

Under OW3 the new functionality added to the VendorShell is called
before Poplog's stuff gets a look-in and kills the client by default.
The code I mailed previously should cope with that.

aids



Fri, 22 Dec 1995 14:50:08 GMT  
 
 [ 8 post ] 

 Relevant Pages 

1. Using XWindows window handlers in Tk

2. Windows XP: DOS death-knell?

3. Subject: Re: X-windows and death

4. X-windows and death.

5. Platform dependant behaviour query (suspected Windows brain death) - long

6. Catching death of toplevel window?

7. Eiffel and XWindows questions

8. XWindows and FORTH

9. XWindows, and FORTH

10. AIX vs. XWindows

11. OSF/Motif and XWindows support for Oberon-2 on VAX/VMS (H2O)

12. Preventing ved from using bold fonts under xwindows

 

 
Powered by phpBB® Forum Software