Skip navigation.
 
mlproject pointers and transition advice
FROM : Steve Butcher (Steve-O)
DATE : Wed Jun 21 17:22:42 2006

Dear list,

I'm learning cocoa and objective C and I've worked through the 
calculators and the currency converters and a few other things. I 
started out as a Java programmer so the Objective C part isn't 
difficult--the C part sometimes gives me troubles.  The biggest 
problem I have is finding out where things are in terms of the APIs 
and finding examples of what the APIs can do. Although Java doesn't 
do this perfectly, it does it well so I'm a little spoiled.

My idea for a first "real" project comes from a program I had years 
ago for OS 7 and is apropos as I'm returning to grad school in the 
fall. It enabled you to create concept maps. (http://en.wikipedia.org/
wiki/Concept_map) It was pretty slick although there was  room for 
improvement.

From an engineering perspective, it *looked* like the designer was 
tying into some basic Finder-like functionality. Each "document" 
seemed to behave more or less like the Finder. For example, when you 
first created a concept, say, "Cocoa", the icon that you had dragged 
out on the sheet behaved exactly like a document icon in the finder. 
The name was in the same place and was edited the same way. You could 
turn the snap-to-grid on and off. You could double-click it and a 
multimedia notepad would open up so that you could type notes or 
insert a picture. I guess what I'm trying to say is that it didn't 
look *drawn*...although you were able to draw arrows and lines 
between concepts (icons) and label them. You could also embedded 
concept maps within concepts by drag and drop at which point the 
concept started acting like a folder. The icon would change and 
double-clicking the icon would show a new window with the sub-map.

My question is...are there basic Finder like behaviors exposed 
somewhere in the APIs? If so, where and which ones? Are they 
compatible with the drawing routines? (Core Graphics? Image? some of 
this stuff still confuses me). My basic use case is:

- create a document

- drag "concept" icons and label them; change icon as needed
   (how do you access and draw icons? In Java, they would have to be 
PNGs or similar and drawn on a JCanvas. A class would encapsulate the 
image, label, position and perhaps connections to other concepts. But 
what if they are in an iContainer or just part of the applications 
icns file?).

- connect concepts using undirected and directed arcs which can be 
labeled.

- double click icons to open a notes window.

- save document

- open document

I guess my chief question is, is the basic Finder functionality in 
the Finder or elsewhere as that would go a long way towards 
everything except the arcs. Where is it?  If I have to implement the 
whole thing as vector graphics, what is the equivalent of the drawing 
and image capabilities in java.awt.*? Is it even in Cocoa? (I find it 
somewhat strange that not all APIs are ObjC...are they being 
converted or will some always by C?)

Any API pointers, example code, tutorial pointers would be greatly 
appreciated.

As a side note, if anyone else went or is going from Java to Cocoa/
ObjC, if there are any pointers for how things are designed the same 
or differently I would appreciate an wisdom you might have to impart.

Thanks!

Cheers,
Steve

Related mailsAuthorDate
mlproject pointers and transition advice Steve Butcher (Ste… Jun 21, 17:22
mlRe: project pointers and transition advice Cameron Hayne Jun 21, 22:12
mlRe: project pointers and transition advice Uli Kusterer Jun 26, 12:31