comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Using multiple top level bases created with GUIBuilder
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Using multiple top level bases created with GUIBuilder [message #34560 is a reply to message #34556] Mon, 24 March 2003 11:37 Go to previous message
Matt Feinstein is currently offline  Matt Feinstein
Messages: 33
Registered: July 2002
Member
On 24 Mar 2003 10:42:53 -0800, bias@planet-interkom.de (Tobias Umblia)
wrote:

> Hi everybody,
>
> I'd like to write an application with multiple top level bases,
> e.g. one for selecting parameters, one for displaying data, a dialog
> for manipulating the graphics etc.
> After I created the TLBs using IDL's GUIBuilder and generated the
> .pro files I now want to pass information, like widget IDs or changed
> parameters etc. between them.
> I found several postings here describing similar problems and solutions,
> e.g. sending events from one base to the other, but then the GUI has been
> created manually without GUIBuilder.
> I'd really like to use the generated code, leaving it unchanged
> (except the ..._eventcb.pro files of course), but I don't know how
> to make the TLBs communicating with each other.
> It would help me best if somebody knew a solution to the following
> simple example which illustrates the problem:
>
> The GUI code for the first TLB is maingui.pro. It containes two buttons,
> one labeled 'Show' and the other labeled 'Hide'. The event code is
> maingui_eventcb.pro, containing (empty) procedures for the OnButtonPress
> events.
> The GUI code for the second TLB is drawwindow.pro, containing a draw widget.
> The maingui TLB should be the GROUP_LEADER for the drawwindow TLB.
>
> Now I want to use the buttons on the maingui to 'Show' and 'Hide' the
> drawwindow, but I can't figure out how to retrieve the ID of the drawwindow
> TLB from within the maingui_eventcb.pro etc.
>
> Thank you,
> Tobias

You could use the WIDGET_INFO() function with the /managed keyword
and no argument, i.e.,

id_arr = widget_info(/managed)

which returns an array of all managed widgets, then you can check for
(widget_info(id_arr[x], /type) eq 0) to filter out everything but the
id's of the base widgets.



Matt Feinstein

--
The Law of Polarity: The probability of wiring a battery with
the correct polarity is (1/2)^N, where N is the number of times
you try to connect it.
[Message index]
 
Read Message
Read Message
Previous Topic: hiding IDL-RT from taskbar on IDL5.1 / WinNT 4
Next Topic: Metereological Cloud Size Detection

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Sun Oct 12 20:19:33 PDT 2025

Total time taken to generate the page: 0.40057 seconds