Newsgroups: comp.lang.smalltalk
Path: cantaloupe.srv.cs.cmu.edu!europa.chnt.gtegsc.com!gatech!swrinde!sdd.hp.com!col.hp.com!news.dtc.hp.com!hplextra!hplb!news
From: Marc Nijdam <men@hplb.hpl.hp.com>
Subject: Re: Building controls
Sender: news@hplb.hpl.hp.com (Usenet News Administrator)
Message-ID: <DB8ILv.11z@hplb.hpl.hp.com>
Date: Wed, 5 Jul 1995 08:37:07 GMT
To: msims@info.bt.co.uk
X-Url: news:3t8j5a$kel@pheidippides.axion.bt.co.uk
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii
References: <3t8j5a$kel@pheidippides.axion.bt.co.uk>
Nntp-Posting-Host: mnijdam.hpl.hp.com
Mime-Version: 1.0
X-Mailer: Mozilla 1.1N (X11; I; HP-UX A.09.05 9000/725)
Organization: Hewlett-Packard Labs
Lines: 24

> The control comprises rows of tabs, a 'front' card, and the edges of
> hidden cards.  Other controls may exist within the front card (e.g. a
> button).  When you try to click on such a button it does not press
> because the TabCard is 'handling' the click.  How do I get the mouseDown
> event to be passed to controls within the front card?  I still need to
> deal with clicks within the tabs myself.  Should I treat my control as a
> group?

When the main window controller detects a mouse click, it asks the topmost view
in the application window which subview wants control. This request is then
past down the view hierarchy. Your TabCardView (or whatever it's called) should
implement objectWantingControl which should call the same one all it's
contained views/components. 

This functionality is implemented in CompositePart, so I suggest that you
subclass your TabCard from that. Look at the Notebook component as an example.

Hope this helps,

-- 
Marc Nijdam
e-mail: men@hplb.hpl.hp.com
phone : +44-117-9228711

