[comp.sys.mac.apps] Easy GUI accessible through Lightspeed C?

turpin@cs.utexas.edu (Russell Turpin) (11/07/90)

-----
I am considering Lightspeed C for writing a Mac application.  I
am underimpressed with the standard Mac procedures for
manipulating a graphical interface.  What I would like is a set
of library calls that allow me to easily set up menus, permit the
user to manipulate icons and arcs between icons, enter text
boxes, push buttons, etc, without all the mess.  Ideally, the
interface would allow the declarative specification of what menus
are available, the icon set, and the text boxes associated with
icons, and would simply invoke the main program anytime a menu
selection was made or button pushed.  The iconic information
would simply be present in a global data structure.  Any
suggestions?  I would be interested even in something less than
the ideal as long as it was better than the standard tool box.

Russell

pharr-matthew@cs.yale.edu (Matthew Pharr) (11/07/90)

In article <14369@cs.utexas.edu> turpin@cs.utexas.edu (Russell Turpin) writes:
>-----
>I am considering Lightspeed C for writing a Mac application.  I
>am underimpressed with the standard Mac procedures for
>manipulating a graphical interface.  What I would like is a set
>of library calls that allow me to easily set up menus, permit the
>user to manipulate icons and arcs between icons, enter text
>boxes, push buttons, etc, without all the mess. 

Although I've only played with a demo version, there is a program called
Prototyper that lets you set up menus, windows, dialogs, alerts, etc, etc,
very quickly and easily. It then cranks out code in any of a number of
langauges, including Lightspeed C. It sounds like this solves your problem,
but someone who has used it a little more extensively than I could probably
give you a better answer...

Matt
Pharr-Matthew@Cs.Yale.Edu

oze3@quads.uchicago.edu (james daniel ozeran) (11/07/90)

In article <27092@cs.yale.edu> pharr-matthew@cs.yale.edu (Matthew Pharr) writes:
>In article <14369@cs.utexas.edu> turpin@cs.utexas.edu (Russell Turpin) writes:
>>-----
>>I am considering Lightspeed C for writing a Mac application.  I

Stuff Deleted
 
>Although I've only played with a demo version, there is a program called
>Prototyper that lets you set up menus, windows, dialogs, alerts, etc, etc,
>very quickly and easily. It then cranks out code in any of a number of
>langauges, including Lightspeed C. It sounds like this solves your problem,
>but someone who has used it a little more extensively than I could probably
>give you a better answer...
>
>Matt
>Pharr-Matthew@Cs.Yale.Edu

Yes. Prototyper is very convenient for developing interfaces for
Mac programs.  It uses standard Toolbox functions to implement any
interface you care to draw.  The newest version (3.0) will also
generate file handling and printing code for you in addition to
providing a separate set of files for your code to add
functionality to the program.  It is also extensible, i.e. if you
don't find a window or CNTL to your liking you can write your own
WDEF or CDEF and have Prototyper generate the calls to it (VERY
CONVENIENT!).  I don't know the specifics of the LightSpeed C code
it generates, but the Pascal code is - although very detailed -
well commented and easy to understand.  Sof far it has saved me
innumerous hours of programmming time. Hope this helps.

				D. Ozeran


--
***********************************************************
J. Daniel Ozeran	|	oze3@midway.uchicago.edu
Depts. of Biochemistry 	|	jozeran@biovax.uchicago.edu
and Molecular Biology	|

phils@chaos.cs.brandeis.edu (Phil Shapiro) (11/07/90)

In article <27092@cs.yale.edu> pharr-matthew@cs.yale.edu (Matthew
Pharr) writes:
   In article <14369@cs.utexas.edu> turpin@cs.utexas.edu (Russell
   Turpin) writes: 
   >I am considering Lightspeed C for writing a Mac
   >application.  I am underimpressed with the standard Mac procedures
   >for manipulating a graphical interface.  What I would like is a
   >set of library calls that allow me to easily set up menus, permit
   >the user to manipulate icons and arcs between icons, enter text
   >boxes, push buttons, etc, without all the mess.

   Although I've only played with a demo version, there is a program
   called Prototyper that lets you set up menus, windows, dialogs,
   alerts, etc, etc, very quickly and easily. It then cranks out code
   in any of a number of langauges, including Lightspeed C. It sounds
   like this solves your problem, but someone who has used it a little
   more extensively than I could probably give you a better answer...

Personally, I would recommend using AppMaker (from Bowers Development)
over Prototyper (although I *haven't* seen Prototyper v3.0).  The big
win of AppMaker is that it can use the Think Class Library for most of
its interface construction.  This provides code that is, IMHO, much
easier to modify and customize, and allows the user to make a fair
amount of interface changes without re-customizing the source code each
time.

	-phil
--
   Phil Shapiro                           Technical Support Analyst
   Language Products Group                     Symantec Corporation
		Internet: phils@chaos.cs.brandeis.edu

robs@ux1.cso.uiuc.edu (Rob Schaeffer) (11/08/90)

pharr-matthew@cs.yale.edu (Matthew Pharr) writes:

>In article <14369@cs.utexas.edu> turpin@cs.utexas.edu (Russell Turpin) writes:
>>-----
>>I am considering Lightspeed C for writing a Mac application.  I
>>am underimpressed with the standard Mac procedures for
[...]
>>boxes, push buttons, etc, without all the mess. 

>Although I've only played with a demo version, there is a program called
>Prototyper that lets you set up menus, windows, dialogs, alerts, etc, etc,
>very quickly and easily. It then cranks out code in any of a number of
>langauges, including Lightspeed C. It sounds like this solves your problem,
>but someone who has used it a little more extensively than I could probably
>give you a better answer...

Prototyper is amazing.  It is sort of like HyperCard, except that
instead of a stack, you get C or Pascal code that you compile and
have an empty interface.  Then you add in the meat of your
program.  Very nice.

-- 

robs@ux1.cso.uiuc.edu

"Don't you love people who complain about wasted bandwidth and have

chaffee@reed.UUCP (Alex Chaffee) (11/08/90)

>In article <14369@cs.utexas.edu> turpin@cs.utexas.edu (Russell Turpin) writes:
>>-----
>>I am considering Lightspeed C for writing a Mac application.  I
>>am underimpressed with the standard Mac procedures for
>>manipulating a graphical interface.  What I would like is a set
>>of library calls that allow me to easily set up menus, permit the
>>user to manipulate icons and arcs between icons, enter text
>>boxes, push buttons, etc, without all the mess. 

Think C 4.0 (nee Lightspeed C) comes with the Think Class Library, a library
that takes advantage of ThC's object-oriented extensions to provide support
for all the basic stuff like menus, text boxes, buttons, &c.  You'd have to
learn their paradigms for oop and the TCL chain of command and stuff, but
that's relatively painless. Sorry, but you'll have to deal with arcs on your
own (probably through a subclass of one of the standard classes, so you can
inherit all their code).
-- 
Alex Chaffee
chaffee@reed.{UUCP,BITNET}
Reed College, Portland OR 97202
____________________

dave@PRC.Unisys.COM (David Lee Matuszek) (11/09/90)

In article <PHILS.90Nov7095323@chaos.cs.brandeis.edu> phils@chaos.cs.brandeis.edu (Phil Shapiro) writes:

>Personally, I would recommend using AppMaker (from Bowers Development)
>over Prototyper (although I *haven't* seen Prototyper v3.0).  The big
>win of AppMaker is that it can use the Think Class Library for most of
>its interface construction.  This provides code that is, IMHO, much
>easier to modify and customize, and allows the user to make a fair
>amount of interface changes without re-customizing the source code each
>time.

I don't know AppMaker and can't really compare the two.  However, you
are correct that a big problem with earlier versions of Prototyper was
"re-customizing the source code each time" you made any changes to the
user interface.  This problem has been completely resolved in
Prototyper 3.0, though--there is a clean separation between
Prototyper-generated code and user-written code.

Regarding the Think Class Library, I can't say (I've only recently
ordered my THINK Pascal upgrade, and it hasn't arrived yet).  However,
Prototyper 3.0 does generate code for the most up-to-date versions of
THINK C and THINK Pascal.

-- Dave Matuszek (dave@prc.unisys.com)
-- Unisys Corp. / Paoli Research Center / PO Box 517 / Paoli PA  19301
-- Any resemblance between my opinions and those of my employer is improbable.
< You can put a mouse on an IBM.  And you can put a radio on a motorcycle. >