EPICS Home

Experimental Physics and Industrial Control System


 
1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: New Display Builder widget question using Navigation Tabs
From: Amien Crombie <[email protected]>
To: "Kasemir, Kay" <[email protected]>, "[email protected]" <[email protected]>
Date: Tue, 22 Aug 2017 14:51:12 +0200

Hi Kay


Your explanation make sense..

Let me elaborate.

I have a display that host the 'nav tabs'. As you know, the navtabs works (in my case) by having a single bob with 5 groups consisting of widgets etc (you can see the 5 groups on my pic).

So my navtabs works well.

But I want to have an embedded display on the lower part of my navtab that will become visible when I do certain things from my navtab widgets.

I know an embedded display cannot be accessed so I used a 'group' widget that contains the embedded one. So I should be able to access the 'group' widget's visibility setting as it will not change.

So in my script, that is attached to each widget on my navtab, I want to be able to 'show' or hide' the 'group' widget that contains the embedded display..

In a perfect world my script should sends the $(pv_name) down to the embedded display. This is where I am lost now..

Hope it makes some sense to you...

Amien


On 22/08/2017 14:22, Kasemir, Kay wrote:

Hi:


--------

I have a normal main.bob file that contains my 'navigation tabs' as show above .

Then I have an 'embedded' bob file named 'my_embedded'..


..

10    st = ScriptUtil.findWidgetByName(widget, "ss")          ## this widget is in my harpsgroup.bob
11    pvlabel = ScriptUtil.findWidgetByName(widget, prex)     ## this widget is in my harpsgroup.bob
12    e = ScriptUtil.findWidgetByName(widget, "my_embedded")  ## this widget is in my harpsmain.bob
..

My problem comes at line 12 where it somehow cannot get to "my_embedded" widget.

In fact only widgets in 'harpsgroup.bob' is accessible .....

---------


I'm still unclear about your display hierarchy.

To what widget is the script attached?


A script attached to any widget within a display should be able to locate other widgets within that display.

But you cannot peek inside embedded displays.

So if display "main" embeds "sub", then scripts within main can locate other scripts within main, and scripts within sub can locate widgets within sub.

But scripts within main cannot locate widgets within sub, nor can scripts invoked by widgets in sub locate widgets in the "main" display.

This is a change from BOY: The display builder treats the content of embedded displays as black boxes. We assume that you cannot predict what will be inside an embedded display, because the file name of the embedded widget could change at runtime, or the actual display file that's embedded can be updated over time. So we don't allow access to the widgets inside an embedded display.


Thanks,

-Kay




Replies:
Re: New Display Builder widget question using Navigation Tabs Kasemir, Kay
References:
New Display Builder widget question using Navigation Tabs Amien Crombie
Re: New Display Builder widget question using Navigation Tabs Kasemir, Kay

Navigate by Date:
Prev: Re: New Display Builder widget question using Navigation Tabs Kasemir, Kay
Next: Re: New Display Builder widget question using Navigation Tabs Kasemir, Kay
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: New Display Builder widget question using Navigation Tabs Kasemir, Kay
Next: Re: New Display Builder widget question using Navigation Tabs Kasemir, Kay
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024