From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 55B65BC75 for ; Wed, 23 Feb 2005 08:57:28 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j1N7vRxL012930 for ; Wed, 23 Feb 2005 08:57:27 +0100 Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id IAA19908 for ; Wed, 23 Feb 2005 08:57:27 +0100 (MET) Received: from mail26.sea5.speakeasy.net (mail26.sea5.speakeasy.net [69.17.117.28]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j1N7vPWY012920 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Wed, 23 Feb 2005 08:57:26 +0100 Received: (qmail 12615 invoked from network); 23 Feb 2005 07:57:23 -0000 Received: from dsl081-060-084.sfo1.dsl.speakeasy.net (HELO trout.darktech.org) (chrisrb@[64.81.60.84]) (envelope-sender ) by mail26.sea5.speakeasy.net (qmail-ldap-1.03) with SMTP for ; 23 Feb 2005 07:57:23 -0000 Received: by trout.darktech.org (sSMTP sendmail emulation); Wed, 23 Feb 2005 00:07:20 -0800 From: "Evan Martin" Date: Wed, 23 Feb 2005 00:07:20 -0800 To: Richard Jones Cc: Vincenzo Ciancia , caml-list@inria.fr Subject: Re: [Caml-list] Re: Cross-platform "Hello, World" graphical application in OCaml Message-ID: <20050223080720.GB66943@trout> References: <20050222120308.GA2975@furbychan.cocan.org> <20050222140333.GA4603@furbychan.cocan.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20050222140333.GA4603@furbychan.cocan.org> User-Agent: Mutt/1.4.2.1i X-Sent-by-Evan: yep X-Miltered: at nez-perce with ID 421C3767.003 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 421C3765.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; martine:01 caml-list:01 ocaml:01 wrote:01 gtk:01 sourceforge:01 gtk:01 api:01 ocaml-list:01 martine:01 ...:98 abstract:01 widgets:01 widgets:01 font:97 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on yquem.inria.fr X-Spam-Status: No, score=0.1 required=5.0 tests=FORGED_RCVD_HELO autolearn=disabled version=3.0.2 X-Spam-Level: On Tue, Feb 22, 2005 at 02:03:34PM +0000, Richard Jones wrote: > > Do you mean that gtk has the native look and feel on windows, including > > e.g. font selection or file open dialog? > > Good question. Answer is unfortunately no. The native look and feel > is provided by the Gtk-Wimp theme (http://gtk-wimp.sourceforge.net/) > which was recently intergrated into Gtk itself. However the theming > only applies to widgets, and not to such things as the file->open > dialog. Additionally, GTK provides file dialogs at the level of GTK widgets: from GTK you can create a file dialog and pack in your own widgets (like a preview when loading an image or a "file type" dropdown). This is too low of a level to allow an API that abstracts across the Windows file dialogs. [getting further off ocaml-list territory, but...] Though it depends on your application's target audience, I think you should use Wimp only as a last resort. Programs atop GTK+ look and behave subtly different from the way they behave in Windows, and I fear that using Windows-native-looking widgets will only serve to frustrate/annoy users further with the differences. If you're making a professional application the Proper Thing is to abstract away the common parts and write the GUI twice. (I actually sowed the seeds of that project while sorta drunk: http://www.livejournal.com/users/evan/520561.html) -- Evan Martin martine@danga.com http://neugierig.org