From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 55476BB9C for ; Thu, 17 Nov 2005 22:28:52 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id jAHLSp2R010004 for ; Thu, 17 Nov 2005 22:28:52 +0100 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id WAA28721 for ; Thu, 17 Nov 2005 22:28:51 +0100 (MET) Received: from mz1.forethought.net (mzpi3.forethought.net [216.241.36.12]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id jAHLSn0U009995 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO) for ; Thu, 17 Nov 2005 22:28:51 +0100 Received: from [216.241.35.41] (helo=[10.0.0.2]) by mz1.forethought.net with esmtp (Exim 4.51) id 1EcrJI-0001i9-PH for caml-list@inria.fr; Thu, 17 Nov 2005 14:28:48 -0700 Message-ID: <437CF642.8060302@gushee.net> Date: Thu, 17 Nov 2005 14:29:38 -0700 From: Matt Gushee User-Agent: Mozilla Thunderbird 1.0.7 (X11/20051002) X-Accept-Language: en-us, en MIME-Version: 1.0 To: caml-list@inria.fr Subject: LablTk internals Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Miltered: at concorde with ID 437CF613.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 437CF611.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; labltk:01 internals:01 labltk:01 widget:01 bindings:01 syntax:01 bindings:01 makefile:01 dependencies:01 widget:01 callbacks:01 modules:01 modules:01 widgets:01 widgets:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.3 Hello, all-- I am working on some enhancements to LablTk, to bring it up to date with Tk 8.4. One of the features I want to implement is validation for Entry and Spinbox widgets (the latter being a new widget that I have added already). It looks like this will require support module(s) in the 'builtin' directory ... the validation commands are somewhat like event bindings, in that they use fields (with % substitutions in Tcl syntax) and require registering callbacks; on the other hand, unlike event bindings, but like Button and Menu commands, they are bound to the widgets with configuration options rather than a standalone binding command. So I need to understand more about those 'builtin' components. I'm sure I can work out the answers myself, but it will take a lot of time, so I'd greatly appreciate it if someone could answer at least these questions: * How are external support modules associated with modules generated from Widgets.src? If I introduce a new module(s), do I need to modify a Makefile, or are the dependencies all auto-detected? In the latter case, what do I need to do so that option ValidationCommand will work in a widget definition, where the ValidationCommand type is defined in an external module? * What do the prefixes 'builtin_', 'builtina_', 'builtinf_', and 'builtini_' mean, and why do some of the modules in 'builtin' have these prefixes, while others have no prefix? -- Matt Gushee Englewood, CO, USA