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  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 
<== Date ==> <== Thread ==>

Subject: Check Box widget in CSS BOY
From: Hovanes Egiyan <hovanes.egiyan@gmail.com>
To: "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Tue, 16 Apr 2013 16:44:10 -0400
Hi,

I needed to change the bits of a "longout" EPICS record from a GUI, and I tried using the
"Check Box" widget of CSS BOY. I did not find a single widget that would
do it for all bits, similar to what "ByteMonitor" widget does for monitoring. So I set up each instance of "CheckBox" widget to control one bit of a "longout" record
by specifying "bit" property of the widgets.  In general this
seems to work, with an exception of writing to the highest bit (bit 31). When I set bit-31 to 1, all other bits turn to zero and the variable value becomes 0x80000000. After that all of the instances of "CheckBox" widget that refer to that same variable "freeze", any attempt to change any of these bits with "CheckBox" widget fails with the error message given below. I do not know if this is a feature or a bug.
Did anyone else see such behaviour for "CheckBox" widget? I can find a
workaround for this but it would be better if this widget worked for bit-31 as well. I use BASIC EPICS CSS binaries from SNS, and I get the same result on 32-bit and 64-bit
architectures.

Hovanes Egiyan.

2013-04-16 16:15:08.934 SEVERE [Thread 10] org.csstudio.logging.PluginLogListener (logging) - Unhandled event loop exception

java.lang.NumberFormatException: For input string: "1111111111111111111111111111111110100000000000000000000000000000"

        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)

        at java.lang.Long.parseLong(Long.java:422)

        at org.csstudio.swt.widgets.figures.CheckBoxFigure.updateValue(CheckBoxFigure.java:268)

        at org.csstudio.swt.widgets.figures.CheckBoxFigure.fireManualValueChange(CheckBoxFigure.java:118)

        at org.csstudio.swt.widgets.figures.CheckBoxFigure$1.mouseReleased(CheckBoxFigure.java:89)

        at org.eclipse.draw2d.Figure.handleMouseReleased(Figure.java:944)

        at org.eclipse.draw2d.SWTEventDispatcher.dispatchMouseReleased(SWTEventDispatcher.java:267)

        at org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouseReleased(DomainEventDispatcher.java:374)

        at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseUp(LightweightSystem.java:548)

        at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:219)

        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)

        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)

        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3588)

        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3209)

        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)

        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)

        at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)

        at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)

        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)

        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)

        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)

        at org.csstudio.utility.product.Workbench.runWorkbench(Workbench.java:116)

        at org.csstudio.startup.application.Application.startApplication(Application.java:255)

        at org.csstudio.startup.application.Application.start(Application.java:105)

        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)

        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)

        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)

        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)

        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:597)

        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)

        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)

        at org.eclipse.equinox.launcher.Main.run(Main.java:1410)



Navigate by Date:
Prev: EPICS UTC Time conversion Eric Norum
Next: Re: EPICS UTC Time conversion Andrew Johnson
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 
Navigate by Thread:
Prev: Re: EPICS UTC Time conversion Till Straumann
Next: Linux USB serial questions Mark Rivers
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 
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 ·