HDTenEightyP/NetNews huggingface dataset:
From: marcel@opal.cs.tu-berlin.de (Marcel Weiher)
Subject: Re: Making a window... not a window.
Organization: Techn. University of Berlin, Germany
Date: Wed, 18 Nov 1992 11:51:18 GMT

matthews@oberon.umd.edu (Mike Matthews) writes:

>How in blazes are you supposed to make a window that can not be moved?  I
>know you have to use the initContext:... stuff (i.e. not use IB's palettes).
>I tried passing a style of NX_PLAINSTYLE to the window but the doggone title
>bar was logically there.
>
>Then I tried to subclass Window and just make all of the moveTo:: methods and
>dragFrom: methods do nothing.

Well you could use the delegate's -windowDidMove:  methods and let that simply
move it back, but I guess that wouldn't be too visually pleasing.

If you don't mind getting low down, use PostScript operators directly:

  windo, orderwindow etc.  

It might be a little difficult to get a View hierarchy onto that, so
you'll probably have to do drawing via straight PostScript as well.

Marcel
Newsgroups: comp.sys.next.programmer
From: nevin@dtint.dtint.com
Subject: Re: Coding Rules (NOT rtf)
Reply-To: nevin@dtint.dtint.com
Organization: Digital Technology, International
Date: Fri, 20 Nov 92 06:58:29 GMT

In article <BxzEsF.60C.2@cs.cmu.edu> ddj+@cs.cmu.edu (Doug DeJulio) writes:
> In article <1992Nov19.000858.26075@dtint.uucp> nevin@dtint.dtint.com writes:
> >> 3.0 which might tend to reverse NeXT's original position (most of the 3.0
> >> slow-down is related to nib/disk/memory stuff).
> >
> > I've heard a slightly different story about the 3.0 slowdown, from an
> > ex-NeXT employee.  It was caused (according to him) by a
> > generalization of things like "malloc(512)" to
> > "malloc(sizeof(somesuch) * 4)" in order to better support new
> > platforms (ala 486).
> 
> That sort of construct is evaluated at compile-time, not at
> execute-time.  So it would explain a slow-down in compiles, but not in
> general performance.
> -- 
> Doug DeJulio
> ddj+@cmu.edu

You're right about that particular construct.  But never-the-less, one of the  
obvious features of "malloc()" is the ability to compute desired block size via  
an arithmetic expression at run-time.  And, it's quite reasonable to choose an  
appropriate arithmetic expression such that the arithmetic expression's syntax  
is constant, and yet it's value changes at run-time depending on the hardware,  
due to architectural differences.  I just threw out a lousy example--from the  
hip.

I realize that many such problems could probably be handled via compile-time  
switches and #defines, but I believe it is reasonable to conclude that some  
would fall into the aforementioned category and be computed at run-time.   
Hence, I believe what I was told by the ex-NeXT employee.

--
Nevin Pratt, Digital Technology, Int'l    Orem, Ut
NeXTmail preferred, but ONLY at my REAL email address: nevin@dtint.dtint.com

-- 
---
root	                               root@dtint.dtint.com
Digital Technology Int.                (801)226-2984	
500 W. 1200 South, Orem UT, 84057      FAX (801) 226-8438
Newsgroups: comp.sys.next.programmer
From: C471040@mizzou1.missouri.edu (Toejam)
Subject: Help: memory access error message.
Organization: University of Missouri
Date: Mon, 23 Nov 92 08:55:56 CST

Aloha.
 
I have a simple program which parses some reports.  The user can
select the order in which the data is parsed.  For each field
to be parsed a separate function handles the specifics of how to
parse that data.
 
I have a switch statement which goes like:
 
switch (parsefield)
{
  case afield:
     [self parseafield];
     break;
 
  case bfield:
     [self parsebfield];
     break;
 
   .
   .
   .
}
 
The interface has blocks of fields: a header data block, a mean data
block, a standard deviation block, and a summary block.
The program parses the header data block fine.
When it gets to any field outside of the header block I get the
following message:
 
Program generated(1): Memory access exception on address 0xfff734 (invalid
address).
-[ReportParser parsemcallperiod] (self=0xb6ad0,
_cmd=Cannot access memory: address 0xfff748 out of bounds.
 
I am clueless as to why the program is trying to call on address
0xfff734.  I am clueless as to why the program will parse all the data
in the first block but not any of the other blocks.
 
Any help you guys can pass my way would be most appreciated.
 
Toejam
Newsgroups: comp.sys.next.programmer
From: gbrown@raven.ctr.columbia.edu (Glenn Brown)
Subject: NXDotMtxDriver: Useful?  If so, help me!
Organization: J. Random Misconfigured Site
Date: Sat, 21 Nov 1992 16:08:02 GMT
Reply-To: gbrown@raven.ctr.columbia.edu (Glenn Brown)
X-Posted-From: raven.ctr.columbia.edu
NNTP-Posting-Host: sol.ctr.columbia.edu

	I wouldn't be suprised if noone outside NeXT can answer the  
questions below (and they won't talk to me since I'm a lowly doctoral  
student =-P ) so I will open with a question that everyone can appreciate:
	Is the NXDotMtxDriver useful?  Is this a serious attempt at  
providing general dot matrix support, or did it end up labotomized in  
order to get NS3.0 out the door?  NeXT promised dot matrix support under  
3.0, but did Adobe pressure NeXT to pull in the reigns on the  
NXDotMtxDriver so they would lose less of their outrageous PostScript  
printer royalties to _cheap_ 300dpi inkjet printers?

_Now_for_the_technical_questions_
	First, is there any documentation for the .pmdb files or for any  
aspect of the NXDotMtxDriver in general?
	I've been hacking at the default .ppd (postscript printer  
description) and .pmdb (print manager data base) for the supported dot  
matrix printers trying to get them to work with my 150dpi dot matrix  
printer.  (I got the PostScript Printer File Format Description v4.0 from  
Adobe, and (Suprise!) it doesn't answer the questions below:  )
	I ALMOST succeeded:  I can print the test page in Print Manager  
EXCEPT the bit ordering within bytes of the graphics is wrong:  Each strip  
of 8 pixels is fliped vertically.  Is there a way to reverse the bit  
ordering in any of the printer setup files?
	Also, my printer assumes that graphic strip lengths are sent to it  
as a 4 digit ASCII number, rather than a binary encoded length.
	Finally, My printer has no no direct vertical positioning feature  
(though it does support forward and reverse linefeeds).  Is there any way  
to specify this so prserver doesn't try to use that feature?
From: swede (Jim Mynatt)
Newsgroups: comp.sys.next.programmer
Subject: Re: The IB Object Icon
Date: 20 Nov 92 22:33:13 GMT
Reply-To: jim_mynatt@next.com

In article <1992Nov3.082658.16279@rdg.dec.com>  
jacksonc@uproar.enet.dec.com (Chris Jackson @ IME) writes:
  > 
  > Is there a simple way to create the sphere icon used to represent
  > objects in IB's File Window ?  Specifically, I would like to have
  > a blue version (like the icon of RenderManager) and have a capital
  > 'F' embossed around the front of it.
  > 
  > Also, once I have my own icon for an object that when instantiated
  > from a palette will appear in the File Window,  how do I ensure that
  > my icon will be displayed ?   I have tried implementing a 'getIBImage'
  > method for my object (using 'NXImage::findImageNamed') but that does
  > not work. 
  > 
  > Thanks in advance for any pointers,
  > 
  > Chris.

--
Implement the following method in your class:

getIBImage
- (NXImage *)getIBImage

Returns the image that's displayed in the File window when an instance of  
this class is created.  By default, Interface Builder provides an image of  
a sphere.  If you want to provide a different image, implement this method  
in your custom class.

From GeneralRef/08_InterfaceBuilder/Protocols
-------------------------------------------------------
James L. Mynatt
Area Systems Engineering Manager
NeXT Computer, Inc.
USPS:	Echelon IV, Suite 400
	9430 Research Blvd.
Newsgroups: comp.sys.next.programmer
From: ssircar@canon.com (Subrata Sircar)
Subject: Re: CoreServer
Reply-To: ssircar@canon.com
Organization: The Ohio State University
Date: Wed, 18 Nov 1992 00:55:31 GMT


For starters, why would you want to separate the "core" of your app from the  
UI?  Well, the obvious answer is "to make the core portable among different  
operating systems and environments".

That is certainly a big reason.  More generally, this is true if you wish to  
write a core portable among multiple interfaces (writing X code for Motif and  
OpenLook, or something).  In other words, one would do this to buffer the core  
from the interface driving it.

This comes up when providing an API for your application; the API usually  
duplicates functionality obtained in the application, but allows other  
services/apps to access its power without going through the user interface.  In  
a sense, the API is a second, more powerful but less accessible interface to  
the application.

Under NeXTstep, this problem is somewhat more urgent with the advent of  
Distributed Objects.  Making your app accessible via an API that someone can  
access from another machine on the same network allows tremendous leverage and  
the possibility of developing lightweight objects which can do major tasks in  
combination with each other.  If your app is entirely menu/panel driven, or  
stores state in the UI (very common with TextFields, FormCells, etc) then it  
can be hard to allow someone to leverage your work.  If, on the other hand,  
your app stores all its own state and accesses the UI through another object  
(which in itself uses the core's API), then Distributed Objects is a snap.

The reason I'm interested in this core-UI thing is the last; I'm interested in  
developing objects and palettes for Canon Information Systems to run various  
scanning devices.  Packing these objects as NeXTstep palettes means I have to  
figure out what kind of an interface to give the developer, and how to provide  
a flexible interface to the scanner for Distributed Objects.

---
Subrata Sircar|ssircar@canon.com (NextMail ok)|Prophet & SPAMIT Charter Member
Canon Information Systems and I do not share the same views on everything.
"I'm just mad that I missed the sexual revolution." - me
"Yes, but you dress much better as a result." - Mike
Newsgroups: comp.sys.next.programmer
From: gad@eclipse.its.rpi.edu (Garance A. Drosehn)
Subject: Re: MallocDebug and NS3.0
Date: Wed, 18 Nov 1992 03:48:41 GMT

In an earlier article, I wrote:
> Has anyone tried to use MallocDebug under NeXTSTEP 3.0?
> 
> I used it (once) under 2.x and it seemed to work OK.  I wanted to use
> it on a NS3.0 application, and if I link in the MallocDebug library
> then the program quits almost as soon as it starts.  No error messages
> or anything, it just quits.
> 
> Am I missing something?
> 
> The application that I'd like to MallocDebug is KPerfMon.app.  Maybe
> that particular app is doing something that MallocDebug isn't prepared
> to handle?

Thanks go to Tom McSorley for pointing me in the right direction.
He sent me a message which (basically) said:
| I experienced a similar problem to that indicated above.  All worked
| well under 2.x (not verifiable).  The application ran fine without
| the MallocDebug lib linked in under 3.0, however with the MallocDebug
| lib linked in, the application SEGMENTATION FAULTED immediately.
| Debugging this condition showed that the problem occurred before it
| ever got to any of my code -- therefore the problem was within the
| NIB file load and initialization.
| ... What it turned out to be was that the User Interface Guy used
| some fonts in his NIB file construction that were not present on the
| other system.  When we changed the fonts back to a system default font
| the SEGMENTATION FAULT disappeared.

In my case KPerfMon had two NIB files.  I removed an (unused) Services menu  
from the first, and fiddled around with the fonts in the second one (though  
I don't think I actually *changed* any fonts).  MallocDebug then worked like  
a charm.

I don't know if it was the fiddling I did, or if the NIB files just needed  
to be saved under a NS3.0 system...  In any case, I hope this info proves  
useful to anyone else who runs into a similar problem.  MallocDebug is  
pretty useful, now that I have the hang of 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: tom@castlab.uucp (Tom Wuttke)
Subject: How does the NeXT embed objects in mail messages (file format)?
Organization: U of Wisconsin-Madison College of Engineering
Date: 23 Nov 92 18:18:49 CST


I do not have a Next, but someone I know mails me messages with 
embedding things like sounds, pictures, and formatted text.  When I 
look at the raw mail files, they look exactly like uuencoded binaries.

>Subject: jpeg FAQ
>Next-Attachment: .tar.148.jpeg_FAQ.attach, 32831, 1/1, 45144, 0
>Status: OR
>
>begin 666 .tar.148.jpeg_FAQ.attach
>M'YV0:=R0*8/'A1PZ9@`H7,BPH<.'$"-*G$BQ(HB+-FC0``'@XD4:,3AZ!"%C
>M8\>1,6;8L'%#QL4:,V#(F`'S!HP9%V/(D'FC(XR*0(,*'4KT89TY=,+(N0C@
>M:!DV;<*X<5.TX1LZ:,K(J<JUJ]>O8,.*[;J'RT$S,+A(G9.FK)DW;NC0$<.&so

So, the first thing I do is uudecode them.  This usually results in a file 
with a name like

>.tar.148.jpeg_FAQ.attach

Then, I proceed to assume that this is a tar archive of all the embedded 
objects, so I run this into tar to look at the list of files using syntax 
like:

tar -tf .tar.148.jpeg_FAQ.attach

This always gives me a table of contents error, or a "hmmm, this 
doesn't look like a tar file to me" error on the Next.

I believe the first part was right, uudecoding the message, but what 
should I do with this binary file that comes out of it, that seems like it 
should be an ordinary tarfile, but isn't?  Is this in some proprietary 
Next format, or are the technical details about this publicly accessible 
somewhere?  I am a programmer, and would not mind writing a simple 
app for other computers to decrypt Next mail messages, but I have to 
know where to start.

If anyone has any insight into this, please let me know, or tell me what 
publications to look at.

Thanks - Tom


Newsgroups: comp.sys.next.programmer
From: gvh@metrosoft.com (Gordon Van Huizen)
Subject: Re: UI: Suggestion for open and save panels
Reply-To: gvh@metrosoft.com (Gordon Van Huizen)
Organization: Metrosoft
Date: Sat, 21 Nov 1992 06:36:37 GMT

In article <24047@galaxy.ucr.edu> mikes@velo.ucr.edu (Mike Shebanek) writes:

Wouldn't it be great if...

> The Save and Open panels had shelves like the File Viewer
> and Finder panel so   you could create "bookmarks" in the
> file system and jump to often used folders   quickly and
> easily? 
> 

Yes! I've been wanting something like this for quite awhile (like since we  
bought our first NeXT...).

In 3.0 at least you can drop files and folders into open and save panels and  
have them jump to that location. One thing we're planning to do in MetroTools  
is allow you to drag files and folders out of our dock so you could use it like  
a shelf. It would have the added benefit (over the file viewer's shelf) of not  
having the icons disappear after they have been dragged out. 

Gordon
-- 
----------------------------------------------------------------
Gordon Van Huizen           vox: 619.488.9411  fax: 619.488.3045
Metrosoft                   gvh@metrosoft.com [NeXTmail welcome]
----------------------------------------------------------------
From: wilson@mimsy.umd.edu (Anne Wilson)
Newsgroups: comp.sys.next.programmer
Subject: Help Requested - loader is crashing
Keywords: internal compiler error, collect got fatal signal 11
Date: 21 Nov 92 03:41:15 GMT
Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742

Help!

I'm developing some C++ code, consisting of two hierarchies having a 
total of about 40 classes.  The hierarchies were developed separately 
and they run properly.  Now I'm trying to make a subclass of one 
hierarchy a component of one of the classes of the other.  All this 
seems pretty straightforward, and I present this only as an 
introduction to my problem.  (Although I do make significant use of 
C++'s extremely funky "polymorphic types", which really means 
generating new class types using the processor.  Could that pertain to 
my problem?) 

All pieces/classes compile separately, but the loader is crashing.  It 
appears to be making it completely through both passes, as evidenced 
by the -t option, then crashes with the message:

	cc++: Internal compiler error.  Program collect got fatal signal 11.

Can anyone tell me what this means?  Is it possible that the code is too 
large???  The "polymorphic types" do generate a lot of code.  If so, any 
suggestions about how to handle this?  

Any suggestions would be greatly appreciated.  Thanks!

Anne
From: jdawson@ccwf.cc.utexas.edu (John Dawson)
Newsgroups: comp.sys.next.programmer
Subject: Can anyone link with libsys_p.a under 3.0?
Date: 19 Nov 92 03:51:41 GMT
Organization: The University of Texas at Austin

Since 3.0, I've lost the ability to compile a profiled application and
link it with the library sys_p.  I can find no way to perform linking
using cc that doesn't generate reams of duplicate symbols if I tell
it to link with sys_p; i.e.,

% cc -g -pg -O -Wall -DPROFILE -ObjC -sectcreate __ICON
__header g.iconheader -segprot __ICON r r -sectcreate __ICON app
/usr/lib/NextStep/Workspace.app/application.tiff -o g.profile/g
profile_obj/g_main.o -lNeXT_p -lsys_p

... generates ...

/bin/ld: multiple definitions of symbol .objc_class_name_MethodSignature
/lib/libsys_p.a(NXProxy.o) definition of absolute .objc_class_name_MethodSignature (value 0x0)
/lib/libsys_s.a(NXProxy.o) definition of absolute .objc_class_name_MethodSignature (value 0x0)

... etc., on and on and on.

Further, invoking ld by hand seems to "work" -- it will generate a
runnable binary without complaint -- but programs generated in this
manner seg fault from within objc_msgSend before getting very far.
I.e.,

% ld -ObjC -sectcreate __ICON __header g.iconheader -segprot __ICON r
r -sectcreate __ICON app /usr/lib/NextStep/Workspace.app/application.tiff
-o g.profile/g profile_obj/g_main.o /lib/crt0.o -lNeXT_p -lsys_p

... generates a program without error; its exit code is 0.  But if
you run the program, it crashes instantly.  Note that this particular
program doesn't even have any code I wrote; it has no central brain.
It's the complete minimum possible application generated with PB and
IB.

Anyone know why it doesn't work?  Or better yet, how to make it
work?

...jkd
--
jdawson@ccwf.cc.utexas.edu (John Dawson)
Newsgroups: comp.sys.next.programmer
From: henry@trilithon.mpk.ca.us (Henry McGilton)
Subject: Question on Save Panel Tricks
Organization: Trilithon Software
Date: Fri, 20 Nov 1992 06:11:58 GMT



I'm sure this has been done already, but I am probably
not looking in the right places for the answers.

I have a requirement involving saving files where the
name of the file is pre-determined (cannot be changed
by the user) but I wish to use the Save Panel so the
user can set the directory in which the file will be saved.
I don't seem to be able to get this to work very well.
The Save Panel seems to insist on a file name, on which it
does all kinds of checks.

Before I go off in all directions adding accessory views to
or subclassing the Save Panel, perhaps
somebody has already done what I'm looking for?

	Thanks in Advance,
		........  Henry
Newsgroups: comp.sys.next.programmer
From: spagiola@frinext.stanford.edu (Stefano Pagiola)
Subject: Re: How does the NeXT embed objects in mail messages (file format)?
Reply-To: spagiola@frinext.stanford.edu
Organization: DSO, Stanford University
Date: Tue, 24 Nov 92 03:53:23 GMT

Tom Wuttke writes
> 
> I do not have a Next, but someone I know mails me messages with 
> embedding things like sounds, pictures, and formatted text.  When I 
> look at the raw mail files, they look exactly like uuencoded 
> binaries.
> 
> So, the first thing I do is uudecode them.  This usually results
> in a file with a name like .tar.148.jpeg_FAQ.attach
> 
> Then, I proceed to assume that this is a tar archive of all
> the embedded objects, so I run this into tar to look at the
> list of files using syntax like:
> tar -tf .tar.148.jpeg_FAQ.attach
> 
> This always gives me a table of contents error, or a "hmmm, this 
> doesn't look like a tar file to me" error on the Next.
> 
> I believe the first part was right, uudecoding the message,
> but what should I do with this binary file that comes out of
> it, that seems like it should be an ordinary tarfile, but isn't?

I believe its both tarred and compressed.  If you rename the file  
148.jpeg_FAQ.attach.tar.Z and run it through uncompress and tar, it  
should come out fine.
You'll get a bunch of files, so its best to do this inside a  
directory you create for the purpose.  One of these files is called  
index.rtf.  This is the body of the message in Rich Text Format  
(RTF).  The rest of the files and directories are the attachments.   
Hopefully they are files that can be opened on the receiving system.    
If you have an editor that can read RTF files, use it to open  
index.rtf .  It will have the body of the text.  There will be no  
text if just an attachment was sent. 


--
-
Stefano Pagiola
Food Research Institute, Stanford University
spagiola@frinext.stanford.edu (NeXTMail encouraged)
spagiola@FRI-nxt-Pagiola.stanford.edu (NeXTMail encouraged)
From: jjfeiler@relief.com (John Jay Feiler)
Newsgroups: comp.sys.next.programmer
Subject: RTFD and the write: and read: methods
Date: 16 Nov 92 05:38:41 GMT
Article-I.D.: relief.1992Nov16.053841.10532
Reply-To: jjfeiler@relief.com
Organization: relief consulting

I have an object that has some "out of band" data, that I'd like to be able  
to save like the Text object saves inclusions in *.rtfd directories.  Does  
anyone have a good, clean way of organizing the -read: and -write: methods so  
that they "automatically" load and save things in a document directory.  I  
haven't yet been able to figure out what exactly the documentation means when  
it says "this data is serialized into the stream".  How is the data  
"serialized?"  

	Thanks in advance

		John Feiler
Newsgroups: comp.sys.next.programmer
From: abell@netcom.com (Steven T. Abell)
Subject: Re: Coding Rules/Suggestions
Organization: Netcom - Online Communication Services  (408 241-9760 guest) 
Date: Thu, 19 Nov 1992 08:28:37 GMT

nevin@dtint.dtint.com writes:
>I've been the route of extremely strict conventions (see Charles  
>Symoni, MIT/Microsoft on type naming calculus commonly referred to as  
>"Hungarian"), and I find the middle ground more appealing (i.e. a  
>'relaxed' but enforceable, democratic group of standards).

I use a Hungarian style similar to Symoni's. It was forced upon me against
my will a few years back. Now, it seems to me to be a necessity. There are
several concrete advantages, some of which are:

1) Simpler semantics checking. You rely a *lot* less on your memory of
what kind of thing a variable represents. Multi-level pointers become
tractable. Mismatches between declaration and usage are visually apparent.
Related entities are clearly related by similarity of names.

2) Uniformity across a project. People tend to choose the same names for
the same things, even when they aren't communicating.

3) Name formation becomes much more mechanical. You can stop spending all
day looking for good names for your variables, and expend your creativity
in more valuable ways.

4) Simpler, more reliable global search-and-replace. With the right set of
naming rules, you can make some really scary name changes safely, and not
take all day to do it.

5) Code from code generators is more easily read by humans.

One of the greatest advances of the Industrial Revolutions was the idea
of standardized, interchangeable parts. Object programming does this at
a high level, Hungarian does it at a low level. Both matter.

If anybody out there hasn't seen this stuff and is interested, send e-mail.

Steve abell@netcom.com