MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <16237.34640.565447.784656 at karryall.dnsalias.org> Date: Sun, 21 Sep 2003 13:11:12 +0200 From: Olivier Andrieu To: Francois.Pottier at inria.fr Cc: lablgtk at kaba.or.jp Subject: Re: Misc questions In-Reply-To: <20030921111027.A12292 at pauillac.inria.fr> References: <20030921111027.A12292 at pauillac.inria.fr> Hi, Francois Pottier [Sunday 21 September 2003] : > Hi, > > I've been dabbling with LablGTK2 (CVS snapshot of 20030828). Here are > miscellaneous issues I've encountered: > > 2. Is there a way of sending [maximize] and [fullscreen] messages to a > window? These methods seem to be declared in a .props file, so I > tried calling > > GtkBaseProps.Window.maximize window#obj > > but that doesn't work: the module [GtkBaseProps] is apparently > invisible to library clients. I guess it's unintentional : the *Props.cmi are not installed by the Makefile that's all. You can also have these methods available in the window class ; you just have to add a "Wrap" flag in the .props file, eg : method maximize / Wrap and then you must add it in gWindow.mli too. > 3. Why the dissymmetry between window#show and window#misc#hide? > Same question for some other methods. More generally, what is > the rationale for putting certain methods inside sub-objects > (misc, connect, etc.) and others within the main object? Actually both show and hide are in the #misc subobject. But because you have to call show on a toplevel widget, #misc#show is "re-exported" in the window class for convenience. It is only done for windows because lablGTK automatically call show on other widgets by default. The idea is roughly that the operations supported by all widgets are in a subobject and that the main object only contains operations specific to the widget being wrapped (plus some very general operation, eg destroy, as_widget). #connect -> signals connections #misc -> not-so-common operations available on all widgets #event -> GDK event related operations (for some widgets only) #drag -> Dnd-related methods The diagram in the README file is a bit out-of-date, I'll update it. -- Olivier