• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Converting Openstep nibs to Cocoa nibs?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Converting Openstep nibs to Cocoa nibs?


  • Subject: Re: Converting Openstep nibs to Cocoa nibs?
  • From: "b.bum" <email@hidden>
  • Date: Sat, 19 Jun 2004 00:21:39 -0700

On Jun 18, 2004, at 6:21 PM, Robert Nicholson wrote:
I was wondering if this is feasible or whether there is a conversion tool that exists that allows one to covert Openstep nibs to Cocoa nibs. Are all the Openstep "template" classes available in the runtime of Cocoa?

Anybody been thru this?

Yes. Before joining Apple, a colleague and I converted 250,000 lines of ObjC and a boatload of NIBs from NeXTSTEP 3.3 to Mac OS X. I don't remember the exact number of NIBs, but there were quite a few and some had upwards of 4,000 or 5,000 objects contained within.

This requires going through OpenStep 4.2 because converting NIBs from 3.3 was only supported on 4.x.

Most NIBs should "just open" on Mac OS X. If you find some NIBs that are problematic, dig out your Rhapsody and early versions of Mac OS X and open the NIBs on those platforms. The conversion code is obviously not something that has garnered a lot of attention over the years. The closer any two platforms are to each other, the more likely the conversion will occur without intervention.

You might find that some of the NIBs either don't open or open with serious complaints that can't be fixed in IB. If that is the case, you can write an IB palette on the problematic platform (or the platform immediately before) that massages the problematic NIB files into shape. This can be done entirely via public API. The palette can also be used to automate the process (we created an OS 4.2 palette that would fixup, save, and close any NIB that was opened).

OpenStep 4.2 and NeXTStep 3.3 both work fine under Virtual PC. Networking can be tricky, but not too bad. Both will interoperate just fine with a Mac OS X based Netinfo environment.

This may all sound rather tricky, but it really isn't. The most time consuming part was dealing with custom palette classes that we didn't want to port.

Note that there are also some differences in the widgets. Size changes and other attributes are just a bit different between OS 4.2 and Mac OS X. In particular, everyone who ever wrote an NS 3.3 or OS 4.2 app generally created their own tab view. If you have a lot of 'em to deal with, write a palette on Mac OS X that mimics the homebrew tab view and subsequently converts 'em to NSTabView.

b.bum
(Who remembers the whole ordeal quite fondly. We also refined a set of TOPS scripts to add an 8th (7th?) phase that converted OpenStep code -> Mac OS X. This was mostly a matter of converting various DPS calls and dealing with a few of the APIs that were still functional at that point in the history of the AppKit.)
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.


References: 
 >Converting Openstep nibs to Cocoa nibs? (From: Robert Nicholson <email@hidden>)

  • Prev by Date: System Preferences and NSUserDefaultsController
  • Next by Date: Burning DVD-Video with DiskRecording Framework
  • Previous by thread: Converting Openstep nibs to Cocoa nibs?
  • Next by thread: System Preferences and NSUserDefaultsController
  • Index(es):
    • Date
    • Thread