Article

From:
To:
Luigi Sandon
Subject:
Re: Delphi Project X Cross GUI
Newsgroup:
embarcadero.public.delphi.non-technical

Re: Delphi Project X Cross GUI

In article <✉forums.codegear.com>, Luigi Sandon wrote:
> > GUI that -- because it is non-standard -- is harder for end users to 
> > learn.
> 
> What is standard on one platform may not be on others.

That's true ... and that's why a cross-platform framework should not try 
to produce applications that look the same on all platforms.

Java made that mistake in ... was it Swing? ... every app looks just like a crappy Swing app on every platform. That's no way to design for cross-platform.
Abstraction of GUI detail makes it possible to target multiple disparate platforms from a single codebase. You can write apps that are MDI in Windows but present multiple top-level Windows on linux (whose window managers typically don't support MDI idioms like child widows with top- level style frames). You can write menu handling code that puts the menu of the application's window on Windows or linux, but uses the system menu at the top of the screen on a Mac. These are obvious large-scale examples, but you get the idea. A sufficiently well-designed cross- platform framework can provide the native platform look and feel for basic applications on multiple platforms without the programmer having to customize the app for each one.
A small proportion of applications need to go beyond the basic UI manipulation that can easily be abstracted, and these applications will have to provide platform-specific code -- but even these can use the generic abstraction provided by a framework to do most of the leg-work.
> Office features like ribbons and outlook grids and bars are pretty
> standard on Windows, but not on Linux.

Office 2007 lookalike wannabees may use ribbons. They're hardly standard 
(they're not provided by the native Windows API widget set). The point 
about cross-platform frameworks is that they provide a platform-agnostic 
API for accessing the native widget set of each platform.

If you want to write an app with a ribbon you can do so ... but the ribbon will be part of your app's GUI -- which you can write using cross-platform tools if you want -- not something that a framework can abstract away.
> The problem is what tools Delphi aims to be. Actually it is a tool
> capable of delivering failry complex native GUIs on Windows. Would
> turning it into a xplat Jack-of-all-trades-and-master-of.none be a
> smart move?

I don't think that's the option that's on offer. cross-platform tools 
may not offer absolute mastery of all trades (to follow your analogy) 
but they (the good ones, at least) do most of the legwork without 
preventing you from refining the result if you want to. VCL doesn't 
offer mastery either.

> Is it what Delphi developers needs? Delphi developers
> today are not xplat developers - if they don't use Java or C++/Qt
> there is a reason.

Most Delphi developers are Delphi developers because the Delphi IDE is 
very good at making the process of designing and coding a GUI painless 
-- even pleasant -- and doesn't cost the earth. They don't care HOW 
Delphi does it, they care that it works.

Until recently Qt has been quite an expensive toolkit to use for anything but Free OS software so it's unreasonable to suggest that Delphi's relative popularity in commercial Windows software is due to any technical shortcoming of Qt's.
Cheers,  Daniel.
FYI: Phrase searches are enclosed in either single or double quotes
 
 
Originally created by
Tamarack Associates
Sat, 23 Nov 2024 10:53:14 UTC
Copyright © 2009-2024
HREF Tools Corp.