[comp.sys.amiga] Mymenu, ET and SF!

BPJ0%LEHIGH.BITNET@ibm1.cc.lehigh.edu (Bin, Lehigh and very Amiga.) (10/23/89)

Hi folks,

A couple of questions.

1.  Here's a look at my startup-sequence:

setclock load
runback -3 c/clock digital2=401,0 seconds date
resident cli l:shell-seg system pure
mount newcon:
mount pipe:
runback -2 c/newshell newcon:0/10/550/190/Shell
runback -4 c/mackie R 120 /* I love this program!!!! */
assign t: ram:
loadwb
mymenu
endcli

Now here's my Mymenu.conf:

color 0
menu Dos "Start new task" | CLI c/run df0:c/newshell
menu Dos "Info on tasks" | CLI c/run df0:c/asktask -c
menu Atalk3 "Dial Network" | CLI c/run df0:atalk3 FROM network
menu Atalk3 "Dial Cyber850" | CLI c/run df0:atalk3 FROM cyber
menu Atalk3 "Dial Lehi3b15" | CLI c/run df0:atalk3 FROM att
menu Atalk3 "Dial Outside" | CLI c/run df0:atalk3 FROM outside

Now here's the problem. Everything boots up as usual and I run Atalk
from the mymenu menu option (any of the four).  Then when I exit Atalk
the mymenu menus disappear.  If I type mymenu it says Updating menus ---
ok.  Now it's getting to be a pain in the you know where to type mymenu
all the time.  Anybody know what's going on and is there a way to keep
mymenu from disappearing.

2. Can anybody give me an example of using the pipe.  Say I wanted to
pipe the directory listing to sort.  Thanks.

3. Hope all the Amigos and Amigas in the Bay Area in San Francisco are
alright.  The pictures didn't look too good.  SO what happens with the
BADGE contest?  Take care.

Thanks.
Bin

SPECIAL NEWS REPORT:  Entertainment Tonite revealed their new plan for
increasing the number of people who watch the show.  Correspondent
Jim Johnson today found out that ETonite was responsible for the
spreading of a vicious rumor that the making of the new George Lucas ads
for the "new" Commodore's line of Amiga computers would appear on the
show thus making the million plus Amigoids (as they affectionately call
themselves) tune in to watch the show everynite.  When asked for comment
the official Entertainment Tonite spokeswoman said that "Well, the IBM
ads make even the staunchest IBM'er puke, and Mac owners are wondering
how they fell for that Heli-car crap and how they think that the price
included a heli-car!".  She then said "Amiga was an obvious choice.  Not
only was George Lucas involved but the computer has personality.  The
computer for the creative mind!" as she booted up her Amiga with Falcon.
"Wanna rack up some air time?"
                                        - USA yesterday.

djohnson@beowulf.ucsd.edu (Darin Johnson) (10/24/89)

In article <2259@nigel.udel.EDU> BPJ0%LEHIGH.BITNET@ibm1.cc.lehigh.edu (Bin, Lehigh and very Amiga.) writes:
>A couple of questions.
>
>Now here's the problem. Everything boots up as usual and I run Atalk
>from the mymenu menu option (any of the four).  Then when I exit Atalk
>the mymenu menus disappear.  If I type mymenu it says Updating menus ---
>ok.

I don't have ATalk, so I can't tell what it is doing, but I did write
MyMenu.  It looks suspiciously like Workbench is getting a NEWPREFS(?)
message.  When this happens, Workbench redraws/rebuilds its menus (assuming
someone may have changed the font).  It doesn't redraw MyMenu's menus,
since it doesn't know about them.  I tried working around this, but there
isn't an easy way to tell when Workbench is done with redrawing its
menus (other than waiting a second or two).

Best bet is to find out if ATalk is indeed sending a NEWPREFS (such as
changing serial parameters) when it starts up or exits, and find out if
it can be disabled.  (Probably unlikely, but it may be slightly possible
that if serial preferences are exactly what ATalk wants, it may not do
the NEWPREFS)

Chances are, I won't be writing a new version for quite awhile (I just
started Grad school after a 3 year hiatus, so I have 0 free-time).
But if you find out a solution, let me know so I can update the docs
and be informed the next time someone has this problem.


Darin Johnson
djohnson@ucsd.edu

papa@pollux.usc.edu (Marco Papa) (10/24/89)

In article <7289@sdcsvax.UCSD.Edu> djohnson@beowulf.UCSD.EDU (Darin Johnson) writes:
>In article <2259@nigel.udel.EDU> BPJ0%LEHIGH.BITNET@ibm1.cc.lehigh.edu (Bin, Lehigh and very Amiga.) writes:
||Now here's the problem. Everything boots up as usual and I run Atalk
||from the mymenu menu option (any of the four).  Then when I exit Atalk
||the mymenu menus disappear.  If I type mymenu it says Updating menus ---
||ok.
|
|I don't have ATalk, so I can't tell what it is doing, but I did write
|MyMenu.  It looks suspiciously like Workbench is getting a NEWPREFS(?)
|message.  When this happens, Workbench redraws/rebuilds its menus (assuming
|someone may have changed the font).  It doesn't redraw MyMenu's menus,
|since it doesn't know about them.  I tried working around this, but there
|isn't an easy way to tell when Workbench is done with redrawing its
|menus (other than waiting a second or two).
|Best bet is to find out if ATalk is indeed sending a NEWPREFS (such as
					    ^^^^^^^^^^^^^^^^^^
|changing serial parameters) when it starts up or exits, and find out if
|it can be disabled.  (Probably unlikely, but it may be slightly possible
           ^^^^^^^^
|that if serial preferences are exactly what ATalk wants, it may not do
|the NEWPREFS)

A-Talk III calls GetPrefs at loading time (to get parameters such as RTS/CTS,
Xon-Xoff or no handshake, and to 'save' the current preferences). It also
calls SetPrefs on exit (to restore WB colors and other saved Prefs parameters).
Neither one can be disabled.  As implemented, Mymenu is a kludge that can't be
supported. It munges data structures that shouldn't be touched, and as such 
can have the 'side effects' you experience. Since other programs do
the GetPrefs/SetPrefs combo, the problem won't appear with just A-Talk.  Maybe
a better version of MyMenu could be written.

-- Marco Papa 'Doc'
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
uucp:...!pollux!papa       BIX:papa       ARPAnet:pollux!papa@oberon.usc.edu
"There's Alpha, Beta, Gamma, Diga and Caligari!" -- Rick Unland
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

rosenber@ra.abo.fi (Robin Rosenberg INF) (10/24/89)

In article <20763@usc.edu>, papa@pollux.usc.edu (Marco Papa) writes:
> In article <7289@sdcsvax.UCSD.Edu> djohnson@beowulf.UCSD.EDU (Darin Johnson) writes:
<stuff deleted>
> 
> A-Talk III calls GetPrefs at loading time (to get parameters such as RTS/CTS,
> Xon-Xoff or no handshake, and to 'save' the current preferences). It also
> calls SetPrefs on exit (to restore WB colors and other saved Prefs parameters).
> Neither one can be disabled.  As implemented, Mymenu is a kludge that can't be
> supported. It munges data structures that shouldn't be touched, and as such 
> can have the 'side effects' you experience. Since other programs do
> the GetPrefs/SetPrefs combo, the problem won't appear with just A-Talk.  Maybe
> a better version of MyMenu could be written.

Now wait!  Question: Where can I get MyMenu?

Proposition: There is a program for setting preferences: Preferences. Setting
the preferences from another program is like things behind the users' 
back. AtalkIII (or any other program that needs saving preferences) should
have its OWN configuration file. It may accept default settings from 
preferences but it should DEFINITELY NOT change the preferences. Saying MyMenu
is a kludge is no excuse for a badly behaved program. And that other programs
do the same misstake is no excuse either. I cannot swear on it, but I think
MyMenu has to be a kludge with the current OS version.

  Back to preferences: The RKM says you shouldn't do SetPrefs() since that is
pulling the rug from beneath the users feet. Now we see what happens. (It 
seems ATalk has its kludges too...)

--------
Robin Rosenberg

Note: This is not to be seen as a flame on ATalk on its other qualities.

jwright@atanasoff.cs.iastate.edu (Jim Wright) (10/24/89)

| >In article <2259@nigel.udel.EDU> BPJ0%LEHIGH.BITNET@ibm1.cc.lehigh.edu (Bin, Lehigh and very Amiga.) writes:
| ||Then when I exit Atalk the mymenu menus disappear.  If I type mymenu it
| ||says Updating menus --- ok.

| In article <7289@sdcsvax.UCSD.Edu> djohnson@beowulf.UCSD.EDU (Darin Johnson) writes:
| |I don't have ATalk, so I can't tell what it is doing, but I did write
| |MyMenu.  It looks suspiciously like Workbench is getting a NEWPREFS(?)
| |message.

In article <20763@usc.edu> papa@pollux.usc.edu (Marco Papa) writes:
| A-Talk III calls GetPrefs at loading time (to get parameters such as RTS/CTS,
| Xon-Xoff or no handshake, and to 'save' the current preferences). It also
| calls SetPrefs on exit (to restore WB colors and other saved Prefs params).

How about a compromise between the two.  Start up A-Talk using an IconX
script or a S: script.  Just call mymenu after done with A-Talk, and all
should be happy.  Takes no extra effort once the scripts are done.

-- 
Jim Wright
jwright@atanasoff.cs.iastate.edu

eric@cbmvax.UUCP (Eric Cotton) (10/25/89)

In article <165@ra.abo.fi> rosenber@ra.abo.fi (Robin Rosenberg INF) writes:
>Proposition: There is a program for setting preferences: Preferences. Setting
>the preferences from another program is like things behind the users' 
>back. AtalkIII (or any other program that needs saving preferences) should
>have its OWN configuration file. It may accept default settings from 
>preferences but it should DEFINITELY NOT change the preferences. Saying MyMenu
>is a kludge is no excuse for a badly behaved program. And that other programs
>do the same misstake is no excuse either. I cannot swear on it, but I think
>MyMenu has to be a kludge with the current OS version.
>
>  Back to preferences: The RKM says you shouldn't do SetPrefs() since that is
>pulling the rug from beneath the users feet. Now we see what happens. (It 
>seems ATalk has its kludges too...)

Agreed on all counts.  SetPrefs() was originally intended to be Intuition
private.  Notice that there is no mention of this function in the Addison-
Wesley AMIGA Intuition Reference Manual.  Since it *is* documented in the
ROM KERNEL manual, the secrets out.  I would, however, recommend that
you avoid using SetPrefs() for the reasons Robin gave above.  All you forward-
thinkers (1.4) might want to avoid the function too (hint, hint).
-- 
Eric Cotton
Commodore-Amiga                                               (215) 431-9100
1200 Wilson Drive                        {uunet|pyramid|rutgers}!cbmvax!eric
West Chester, PA 19380            "I don't find this stuff amusing anymore."

papa@pollux.usc.edu (Marco Papa) (10/25/89)

In article <165@ra.abo.fi> rosenber@ra.abo.fi (Robin Rosenberg INF) writes:
>Proposition: There is a program for setting preferences: Preferences. Setting
>the preferences from another program is like things behind the users' 
>back. AtalkIII (or any other program that needs saving preferences) should
>have its OWN configuration file.

A-Talk III does indeed have its own configuration file (actually one for 
each of the 60 hosts in the phonebook + 1 global one).

> It may accept default settings from 
>preferences but it should DEFINITELY NOT change the preferences. Saying MyMenu
>is a kludge is no excuse for a badly behaved program. And that other programs
>do the same misstake is no excuse either. I cannot swear on it, but I think
>MyMenu has to be a kludge with the current OS version.

Yes, and that is the problem with 'kludges' that act on 'private' data and not
through programming interfaces like SetPrefs/GetPrefs. Behaviour of the 
latter ones can be changed by newer releases of the system software; nothing
can be done of the former ones.

>Back to preferences: The RKM says you shouldn't do SetPrefs() since that is
>pulling the rug from beneath the users feet. Now we see what happens. (It 
>seems ATalk has its kludges too...)

Currently, "applications are discouraged to use SetPrefs/GetPrefs" (V 1.4
Preferences notes, DevCon'89), but their function is fully supported by the
system software. We allow saving/restoring of Workbench colors accross a
terminal session, and we added that feature on user's request.  The 1.4
docs mentions that 1.4 SetPrefs *MIGHT* be valid only once, at system startup.

As far as MyMenu is concerned, WB 1.4 will include an Application menuItem 
interface, which will allow to play MyMenu-type games in a compatible and
non-kludgy way (applications will be able to 'add' menu items to the WB Tool
menu).  Another good idea for 1.4.

-- Marco Papa 'Doc'
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
uucp:...!pollux!papa       BIX:papa       ARPAnet:pollux!papa@oberon.usc.edu
"There's Alpha, Beta, Gamma, Diga and Caligari!" -- Rick Unland
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=