Tremendous progress is being made in communicating XCode objects into Cappuccino compatible objects, but there is still a huge gap between the available XCode objects and the correlated Cappuccino objects generated by XCapp. By understanding how to take full control of your application from the code-base, you will be better able to handle gaps between your concept and the XCapp interface-builder capabilities.
I first faced this deficiency when I attempted to create an application that used a multi-line text box. In HTML and javascript, it would be as simple as defining a <textarea> tag and communicating the value of this block with javascript functions. However, within the framework of Cappuccino, we no longer work with HTML or "low-level" javascript. XCapp is not able to create a Cappuccino text area, because at this time, no such item exists as part of the core Cappuccino control objects.
By corresponding with the mailing list, I was quickly informed that I could use an object defined by another programmer, available publicly, but without knowing how to jump between what was designed in XCode and what I would have to design by hand, that information was not practical.
This is why I recommend that all Cappuccino beginning developers learn first to layout their applications using code-only. If you can create your application from the ground up using code, then XCode, becomes a tool, which makes your work faster, and when you find obstacles like the one that I found, it will not halt your design process.
For this reason, we will focus primarily on manual layouts in this blog.
Post Note:
For those who are interested, that Text Editor, which is, in my opinion, very well constructed can be found at the following location: Cappuccino Text Editor implemented with Google's Closure Editor.
Well now we have a working CPTextView that is almost feature complete, at least for the usual textview functions. This was one of the key features for the upcoming 1.0 version of Cappuccino.
ReplyDelete