Hi Phil
The wiki sounds like a good idea.
Adriaan van Os helped us get a middle-sized PC Lazarus app moved into
an xcode project. The carbon components this project uses, are
working great. The low-level message loop is behaving nicely, doing
what one would expect it to do responding to keyboard, mouse,
updating controls, all that good stuff.
The stuff our program exercises, include Main Menu (with check-items,
and numerous hierarchical menus), Right-click menus, TForm,
ShowModal, multiple TPanels in a TForm, TButton, TSpeedButton,
Multiple TPaintBox in a TPanel, TScrollBar, TBevel, TLabel with
default Black Text, TLabel with Colored Text/Background, TComboBox,
TProgressBar, TMemo, TEdit, TProgressBar, TOpenDialog, TTimer.
Dunno if every feature of each mentioned control is perfect (since I
haven't tested every available feature of each control), but they are
working exactly as they should in our use of each control.
We still need to do some work on it, but here are some screenshots:
http://www.errnum.com/html/MacACWScreenShots.html
====
Have done Mac programming a long time, off'n'on, but am very ignorant
of a lot of modern Mac details, especially the unix and command-line
tools.
Maybe I'm doing something wrong, but when I double-click
startlazarus, it runs the IDE from the Terminal. A lot of things seem
to work, but no top menu (except the Terminal top menu), and the
message loop doesn't seem to be fully running.
For instance, clicking on a lot of the buttons will open an
appropriate window, but once the window is open, it doesn't do much
and can't be dismissed.
Am not complaining. Far from it. Am only describing it, in case the
current IDE version is supposed to be doing more and I haven't done
something necessary to get it running better.
Do the developers generally run 'all command line all the time', or
do they work on the IDE project in an XCode project?
Does the IDE ultimately need to be built into a bundle to become
double-clickable with a menu and fully functional message loop and such?
The carbon application.run loop is already so well-behaved on our
middle-sized program, that it seems that the code ought to be pretty
close to 'prime time' to run the IDE pretty fully (albeit with
perhaps some initially missing features and bugs to clean up)?
Its looking great. Congrats to all the folks who programmed this.
jcjr
On Oct 14, 2007, at 12:48 PM, Hess, Philip J wrote:
Tom is right. Almost everything is implemented and working with the
Carbon widgetset. Even printing works. For now, you can use the
Unix CUPS-based printer dialogs and TPrinter implementation. The
dialogs aren't native like the Open, Save, etc. dialogs, but they
do work fine now. The TPrinter implementation does use the Carbon
API and is limited to the 4 font families built into the Postscript
interpreter (Courier, Times, Helvetica, Symbol, which are very
similar to the TrueType Courier New, Times New Roman, Arial,
Symbol) but it does print correctly.
One thing that's needed now is testing of the integration of Carbon
with large, existing apps. For example, the Laz IDE is a good test
of integration. The Laz IDE can be compiled with the Carbon
widgetset and it actually works pretty well. There are a few big
issues still and a lot of little cosmetic ones with IDE dialog
sizes (too small to fit some of the controls with Carbon), but you
can try it out and see the future.
I'm thinking of creating a wiki page devoted to getting the Laz IDE
working fully with Carbon. Would anyone be interested in that?
Thanks.
-Phil
_________________________________________________________________
To unsubscribe: mail [EMAIL PROTECTED] with
"unsubscribe" as the Subject
archives at http://www.lazarus.freepascal.org/mailarchives