Re: Cross-Platform Windows plus Mac



In comp.sys.mac.programmer.help Paul Floyd <root@xxxxxxxxx> wrote:
I haven't really used Opera very much, but a quick test reveals pretty
serious problems. Tabbing between controls basically doesn't work; it
picks a small set of controls on the web page and never moves out of them.
I can't tab into the address bar at all. If I start out in the tool bar
then I can't tab to the forward/backward buttons, despite having set my
system to allow keyboard focus on non-text controls. The toolbar also
isn't customizable, which is not good. The preferences window is modal for
absolutely no good reason that I can see. The font picker used is a total
joke, and both it and the color picker are *also* modal for no reason.
This is just what I saw in a few minutes, and is all stuff you will avoid
"for free" by using a native API.

I've never been bothered by any of the widgets or shortcuts used by
Opera. In what way is the font picker inferior to, say, Mac OS X's font
picker?

- It's modal.
- It has no search box.
- It has no concept of collections, so I can't limit it to, say, Fixed
Width fonts. This is kind of important when choosing the "Monospace font".
- It does not display several of my Japanese fonts, for reasons I do not
understand.
- The Help button opens help in a new web page, behind the font chooser.
Since the font chooser and the preferences panel which spawned it are both
modal, hilarity ensues.
- Its modality is not strongly enforced. If you switch to another
application, then switch back by clicking on the Preferences window, the
prefs window activates and the font panel deactivates. Since the prefs
window is modal, I can't get the font chooser back. Well, unless I switch
apps and then click it again. If I take the obvious course of action of
clicking the font chooser button again, I get a *new* font chooser! This
entire sequence of events is utterly ridiculous and would be avoided by
using the standard Mac OS X font chooser and the standard idiom of a
modeless preferences window.
- The name of the Wingdings font is displayed in Wingdings, so I can't
read it. But the sample is normal alphabetic lettering. WTF?

This is just stuff I found in a few minutes. You can hopefully see why I'm
not eager to use it for any longer than that.

It seems quite functional to me. There are very many keyboard
shortcuts, most of which I've never used. Perhaps amongst them all there
is one that does what you want. If you really want to find out, ask in
the Opera fora on their web site.

I don't want Opera-specific keyboard shortcuts, I want the same keyboard
shortcuts I use everywhere else to work in Opera too.

I'm pretty certain that the toolbar is
customizable. It may not be easy (not entirely a bad thing, on a few
apps that I've used I've accidentally deleted toolbar actions, and then
spent a good while figuring out how to get them back). Right click on
the toolbar, and select Customize..., select the Buttons tab and you can
drag icons to tbe toolbar.

Normal Mac app:

- Cmd-opt-click button on right side of window title bar.
- Drag toolbar buttons to and from the sheet that appears.
- Click OK.

Opera:

- How the hell do you customize the toolbar?
- There's no button, so I guess it can't be done.
- Find out the special only-works-in-Opera way from an existing user.
- Right-click!
- Weird utility window appears with a bunch of checkboxes to control
things I don't care about.
- Find the button tabs. Try to drag a button onto the toolbar, fail.
- Oh wait, it's not failing, it's just not giving any *obvious* indication
that I'm actually dragging something.
- Accidentally add a button I don't want to the toolbar because of this
feedback defect.
- Attempt to delete new button by dragging it off the toolbar. Fail.
- Attempt to delete new button by dragging it back to the buttons tab.
Fail.
- Attempt to delete new button by dragging it to the trash. Fail.
- Realize that the fight is futile, reset the toolbar to its defaults, and
quit the app.

Normally I would give up much earlier than this, but you asked....

In a web browser, the things that count for me are

The question was not, "Is Qt adequate for building a good web browser?"
The question was, "Is Qt adequate for building an application that looks
and behaves like a real Mac app?" The answer as given by Opera is a
resounding "No!"

It shocks and surprises me that you would think Google Earth would make a
good example. I use it quite a lot, and the only reason I don't throw it
away is because I can ignore its GUI most of the time by virtue of its
main task being a giant 3D view of terrain, and because nothing else can
do what it does. Even simple things like pressing control-A in a text
field don't work. GE really makes no pretense of either looking or
behaving like a native application.

I agree that the UI is far from fantastic, but it gets the job done. And
what alternatives are there?

Once again, discussion of alternatives is irrelevant to the question at
hand, which is whether Qt can be used to make an app that works like a Mac
app.

Yes, it is. It is literally about half a dozen keywords and a handful of
syntax additions on top of C. Your C++ experience has probably colored
your thinking in this regard. C++ is a language you can work with
constantly for a decade and still find strange new corners. Objective-C is

So is C!

In my personal experience, the strange new corners in C stop after about
half a decade of intensive use. Maybe I learn faster, or I'm better at
avoiding new corners. In any case, C hasn't surprised me in quite a while.
When I get bored and read comp.lang.c, there is always new stuff I hadn't
seen there, but it's all language lawyering that doesn't affect how I
actually use it.

C++, on the other hand, looks like the kind of language you can use
intensively forever and still have lots of new, important things to learn.
(I do not consider this to be a good thing in any way, in case it wasn't
obvious.) I haven't done this myself but I get that distinct impression
from talking to people who have.

Perhaps now you can see why I think that Objective-C is not a real
obstacle. If Objective-C were dominant and everybody had to learn C++ in
order to program for some obscure platform, I could definitely see it. But
the reality is the opposite, and ObjC is really pretty trivial.

I'm still reserving judgement.

That's fine, I just want you to keep an open mind about it instead of
assuming that Objective-C is an uglier, less popular clone of C++ like so
many people do.

Are you going to persist in arguing that Objective-C is not obscure and
virtually unknown?

Yes I am. If you can use personal anecdotes then so can I. I'm a Mac

OK, show me a general IT job site that has over 3000:1 Objective-C:C++
job ads. Today I was browsing Dr Dobbs, and I clicked on their job site
link. C++ 600 odd, Objective-C, zero.

Why do I have to show you a general IT job site with a particular ratio to
prove that Objective-C is not obscure and virtually unknown?

Sure, it's not a hugely popular language. I never said that it was.
However the simple fact that there are thousands of people making a living
from it all over the world, and that it is the primary development
language on tens of millions of computers, should be more than enough.

Sure, it's not as popular or well known as C, C++, or Java, but that's a
ridiculously unfair test, like saying that asking for UNIX is not
justified because UNIX is not popular or well known compared to Windows.

jobs != number of users

Windows may have 20x the number of users of Unix, but how many Windows
users buy software licences that run to 4 digits or more (in USD or
Euros)?

So what? You seem to like drifting topics. The question at hand is not how
many Objective-C jobs are available on job sites. The question is whether
the language is "virtually unknown". The number of jobs you can find on
traditionally C++ and Java job sites is irrelevant to the question.

Well, I still simply do not see the point. I forsee no prospects of
using Objective-C in a professional context. So that leaves dabbling at
home. And since I mainly dabble at home on Solaris and Mac OS X (plus a
small amount on FreeBSD, Linux and Windows), then it makes sense to me
to stick to C++ and Qt, which covers all those platforms.

I and thousands of other people make a living using Objective-C in a
professional context. Maybe there is no future in it for you. This does
not mean that there is no future in it for anybody, or that the language
is obscure.

Overall, you seem to have some common misconceptions about Objective-C and
Cocoa. You seem to think that ObjC is a vast, complicated, C++-like
language, which simply isn't the case; you can learn enough to get started
in hours. You seem to think that ObjC is an all-or-nothing prospect,
requiring you to "port" code to it, when the reality is that ObjC will
talk to C with no problems, and ObjC++ lets you interface directly with
C++ code.

I'm a bit of a perfectionist when it comes to learning programming
languages (verging on being a language lawyer). The grammar may be
straightforward, but what is difficult are the idioms.

Sure, but in this case basically all the idioms come from the library,
which I never said would take a day to learn. Objective-C does not really
have any idioms itself (I've worked with more than one Objective-C
application framework and I can tell you that they had little in common in
this respect), but it gives you the tools you need to build them.

--
Michael Ash
Rogue Amoeba Software
.



Relevant Pages

  • Re: MT-NewsWatcher Font Question
    ... etc. for one newsgroup displays everything using a larger font ... than the corresponding window for other newsgroups. ... Someone in that newsgroup is posting messages with non-ASCII characters ... MT-NW to use a different "language" font setting for that newsgroup ...
    (comp.sys.mac.apps)
  • Re: Display properties-Appearance-Wesley help?
    ... Is the Menu bar; ... Font choice, font color, font size and Bold ... That is called the Menu bar and is listed as Menu in the Window ... Color 1 is the bar background color. ...
    (microsoft.public.windowsxp.newusers)
  • Re: Display properties-Appearance
    ... That is called the Menu bar and is listed as Menu in the Window elements ... Is the Menu bar; ... Font choice, font color, font size and Bold ... Color 1 is the background color. ...
    (microsoft.public.windowsxp.newusers)
  • Re: Display properties-Appearance
    ... That is called the Menu bar and is listed as Menu in the Window elements ... Is the Menu bar; ... Font choice, font color, font size and Bold ... Color 1 is the background color. ...
    (microsoft.public.windowsxp.newusers)
  • Re: Display properties-Appearance-Wesley help?
    ... Is the Menu bar; ... Color 1 is the bar background color. ... Font choice, font color, font size ... That is called the Menu bar and is listed as Menu in the Window ...
    (microsoft.public.windowsxp.newusers)