EPICS Controls Argonne National Laboratory

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  <20132014  2015  2016  2017  2018  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  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: CSS BOY - global widget properties modification
From: "Kasemir, Kay" <[email protected]>
To: Vítek Michal <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Fri, 12 Apr 2013 11:46:59 -0400
Hello Mike:

On Apr 12, 2013, at 10:31 , Vítek Michal wrote:
> I am working on a HMI that will be used in a laser lab by a personal with protective glasses (no colors are visible). Therefore I would like to modify widgets behavior regarding the alarm indication. My idea is to have the border of the widget blinking and to show also small pictogram indicating type of the alarm in the upper left corner of the widget. Thus I think I will need to modify abstract classes that are extended by the widgets to add this functionality. Does anyone know what class/classes needs to be changed? Or is there any other recommanded way? (I can make the blinking effect easily with the rules, but how to show a pictogram I do not know…).


The code that reacts to alarm severity changes and updates the widget's border or background color or foreground color, depending on the widget configuration, is in org.csstudio.opibuilder.editparts.PVWidgetEditpartDelegate#registerBasePropertyChangeHandlers().

I would not, at this time, go in there and change it. That code uses the utility.pv API, currently optionally presented with a wrapper of the PVManager (See BOYPVFactory). In the fullness of time, it should be ported to the plain PVManager API. In any case, it would be better to coordinate that with Xihui, the author of that code.

The overall idea of having some way of presenting alarms in a way that supports the color blind or those working as you describe is of course good.
You could help to get there by exploring what it should look like.
You can, for example, put separate triangle etc. markers next to the widget and change the visibility of that with a rule.
Once we have a good idea how to represent alarms that way, it could be added to the basic functionality of each widget: alarm sensitive border, background color, .., widget decoration pictogram.


Somewhat related to this is the idea of 'styling' a display. Right now we have a 'schema' do define defaults for newly created widgets.
It would be nice to be able to 'style' them after the fact. Like applying a Cascading Style Sheet to HTML, how about allowing CSS for CSS displays.
So in the main control room, your display would use the "normal" style sheet, but in the lab you'd apply a "no_colors" style sheet that sets higher contrast colors, sets the "display alarms via widget decoration pictogram" property of all widgets.
This would require:
* something that reads a CSS file (should be very easy to find for Java)
* a 'class' attribute for each widget so that you can apply styles to widgets based on type, id and class.
* some engine that applies the CSS to widgets right after loading a *.opi file
This project is in the early stage of: Yes, we think that would be useful and fundamentally, we have an idea how to do it.

Thanks,
Kay



References:
CSS BOY - global widget properties modification Vítek Michal

Navigate by Date:
Prev: Re: autosave limitation? Tim Mooney
Next: rdb archiver and eclipse help James F Ross
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: CSS BOY - global widget properties modification Vítek Michal
Next: rdb archiver and eclipse help James F Ross
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·