From:
                                                            6/22/97 11:00 PM
Subject: MAX Digest - 21 Jun 1997 to 22 Jun
1997To: Recipients of MAX digests 

There are 6 messages totalling 264 lines in this issue.

Topics of the day:

  1. info dialog (blah blah blah...)
  2. R&D with Max
  3. ========= Some Max programming questions ============
  4. Max development questions
  5. === Some Max programming questions ===
  6. vigorous motion 68K bug

----------------------------------------------------------------------

Date:    Sat, 21 Jun 1997 23:16:03 -0700
From:    David Zicarelli 
Subject: Re: info dialog (blah blah blah...)

Jean Favory  writes:

>I'm trying to make a "Get Info" dialog, hence I would get and set
>"dialog item text" with numerical values. But I can't use the
>"NumToString" toolbox function.

You might not be passing a long integer, but I can't tell from
your code, since you didn't show how the variable was declared.

>Another question. What is the purpose of "patcher_avoidbox". I don't
>find the doc about it in "Writing External objects for Max".

True, and it's useful. It lets you position a dialog box below
(if possible) but in any case never covering your object's box
on the screen. It takes a patcher, a box, and the ID of a
dialog resource that you're about to use in a call to GetNewDialog.
It modifies ther rectangle in the resource.

David Z.

------------------------------

Date:    Sun, 22 Jun 1997 04:21:39 EDT
From:    Nick Longo <71477.2332@COMPUSERVE.COM>
Subject: R&D with Max

Oh well, since we're touting our projects, my gesture synthesizer
stand-alone, developed in Max is in the July Keyboard (page 26,
Tools of the Trade section, I picked it up at the newstand today).
There will likely be a review in EM at some point, and it's being
considered for licensing by at least one manufacturer.  It's not
as exotic as some patches developed by some members of this
esteemed group, but I don't have a teaching credential, or even
an advanced degree so I have to figure out innovative ways to pay
the rent. There's a demo on Compuserve, AOL, and at www.harmony-central.
com/midi.  Oh, and it's copy protected.

------------------------------

Date:    Sun, 22 Jun 1997 02:56:58 -0700
From:    ai 
Subject: ========= Some Max programming questions ============

June 22, 1997

Q1. Multi-column list object?

    Has anyone written a Max obj that will allow for
    a multi-column scrollable list like SmallTalk/NeXT?

    (ie , select item from left-most column (col#1), which
    results in a certain list being displayed in col#2.
    Select an item from col#2 which now displays a list
    in col#3. )   Kinda like NewObjectList but w/ definable
    #s of columns.

Q2. Is there a reason Max doesn't let you stylize or color
    text? (w/o yanking in pics)

Q3. I couldn't find it - but is there a way one can change
    or grow the pallette of 16 pastel colors for more color
    flexibility?

Thanks for any help on the above to:

   ai@wco.com

------------------------------

Date:    Sun, 22 Jun 1997 11:29:56 -0400
From:    Stephen Kay 
Subject: Max development questions

ai writes:
> when I create a menu object (mode=3Dnormal, autosize,
> evaluate text), and enter menu items such as:
> 0.00, 0.10, 1.00

> Max subsequently displays these items as:
> 0. , 0.1, 1.

> Q: how do I enter : 0.00, 0.10, 1.00   into a menu
> such that trailing '0' s are strangely truncated?
> Also - how can a menu item be displayed with leading
> spaces ? (to get items to line up)

To line up objects in a umenu, use "option-spaces" instead of spaces.  As=

far as getting leading zeros to be displayed, I know there is a way to do=

it; I've done it before, but I can't for the life of me figure it out
today.  I know I posted the answer to this once before; maybe someone can=

dig it up or remembers.

>2. Can any Max object be made clickable?  In particular,
>   I would like to be able to create a menu object
>   (mode=3Dnormal, autosize, evaluate text) such that
>   in the scrollable menu list, if the user simple double
>   clicks on the currently displayed item (after scrolling
>   + mouse up), a sub-patch window is displayed with
>   information associated with that double-clicked
>   menu item.

Answer: No.  But why bother with this approach?  Just make it so that
selecting the menu item opens the subpatcher.  Either use a "sel" on the
menu item number, or set the ument to "evaluate text", and connect the
right outlet to a sel with text items, i.e. in your umenu:

fred,
joe,
mike

connect right outlet to "sel fred joe mike", then use the bang outlets of=

the sel to open the correct subpatchers.  You can use pcontrol, or
thispatcher.  My favorite way is to put a receive in each subpatcher, i.e=
=2E
"r fred_tp", "r joe_tp" etc. which is then connected to a "thispatcher". =

The outlets of the sel would then bang message boxes containing ";fred_tp=

front", ";joe_tp front" etc.  Notice the use of the ";" which is the same=

as using a "send".

> What's the easiest way to create a rounded corner button
> (or button with a PICT on top of it) such that when the
> button is pressed once, a sub-patcher window bound to
> that button is displayed?

Once again, use the above approach.  If you use a ubutton, connect the ba=
ng
outlet to a message box as in the above example.  Furthermore, (plug
coming) my MegaMAX Collection of objects includes "3D_Text_Button" which
allows 3D colored buttons (with rounded corners if desired) and "Button"
which allows standard Mac OS Buttons to be easily created.

> Q: In a comment box object, how can the text be displayed
> with style (italics, underlined, bold, etc) ?

It can't.  However, my MegaMAX Collection includes "3D_Label" and
"Color_Label" which allow complete control over font, size, style, color,=

etc. Fully compatible with 3.0 and 2.5.2 also, I might add.

> When I create a collective, then create a standalone app
> of the collective (using Application Installer), when I run
> the newly created stand-alone, the following behavior
> occurs in the stand-alone:

> a. Max status window is displayed
> b. Menu item:   File -> Save As...
>     has a radio button option: Text

>Q: how can the collective (which consists of a single patch
>  with a built-in sub-patch displayed when double-
> clicking on the patcher object) or stand-alone be
> created in such as way as to disable the behavior
> in a. and b. above ? (and for b. - w/o resorting
> to writing my own menubar object)

a. You can't get rid of it in 3.0.  In 3.5, you can send max a message to=

get rid of it, but only in a compiled app.  I don't remember it at the
moment, but it's in the manual.

b.  After making your app, use Res-Edit to located the DITL resource whic=
h
corresponds to the Max File Save dialog.  Move the items which correspond=

to the Text option off to the side and off of the DITL.  Do NOT delete
them.  Just move them off to the side and when the dialog box is displaye=
d,
the user will not see them.

Stephen Kay

------- The MegaMAX Application Developer's Collection --------
Full color 3D UI Objects for creating professional looking apps,
     Macintosh Interface objects, and other Max helpers.
-----------check out the demo on the MAX 3.5 CD----------------

------------------------------

Date:    Sun, 22 Jun 1997 11:29:46 -0400
From:    Stephen Kay 
Subject: === Some Max programming questions ===

>Q1. Multi-column list object?

>    Has anyone written a Max obj that will allow for
>   a multi-column scrollable list like SmallTalk/NeXT?

 I believe that Roland Hemming's "omenu" might be what you are looking fo=
r.
 It is available via ftp at the usual sites, and was also on the 3.5 CD-R=
om
I believe.

>Q2. Is there a reason Max doesn't let you stylize or color
>    text? (w/o yanking in pics)

Don't know.  However, my MegaMAX Collection of UI objects includes
"ColorLabel" which allows transparent text labels in any color, font, siz=
e,
style, etc.  It also includes "3D_Label" which does the same thing, excep=
t
it is filled in with color and allows a 3D beveled edge if desired.

>Q3. I couldn't find it - but is there a way one can change
>    or grow the pallette of 16 pastel colors for more color
>    flexibility?

I quote now from the DevDoc "Writing External Objects for MAX" (which you=

might want to get a copy of for reference, since it's full of helpful inf=
o
- can be downloaded from usual ftp sites or on 3.5 CDRom):

"...colors are based on a palette stored in the Max application as resour=
ce
'pltt' ID 9997. The dialog and item list are stored as 'DLOG' and 'DITL" =
ID
1032.

The selection of 16 colors from the palette is determined by the 'Ccmp'
resource ID 1032.  This resource contains 16 indices into the palette tha=
t
select the colors presented in the dialog [snip]. You can change this
resource and/or the palette if you don't like the default selection of
colors."

You would do this using Res-Edit, by the way.

Stephen Kay

------- The MegaMAX Application Developer's Collection --------
Full color 3D UI Objects for creating professional looking apps,
     Macintosh Interface objects, and other Max helpers.
-----------check out the demo on the MAX 3.5 CD----------------

------------------------------

Date:    Sun, 22 Jun 1997 18:49:29 -0400
From:    Chester Jankowski 
Subject: vigorous motion 68K bug

3.5.4 seems to still contain the 68K 'vigorous motion' bug. For example,
given:
[num box] -> [expr ($i1 + 1)] -> [num box]
drag the first box value up and down with the mouse, and my IIvi, 20Mb
RAM, crashes every time. I've had the same kind of crash using the [if
...] object.

--