Hi,

this might interest you

set hoverDelay (decimal)
Sets the length of time in seconds before a hovering action is acknowledged.

maybe this setting should be dynamic: when a user moves the mouse around too 
much it decreases :-)



Best
Alexander


Am 15.04.2013 um 21:21 schrieb N David Brown:

> You'll never guess what it was. I'd presumed hover was like `mouseover`, 
> activating as soon as you mouse over an atom.
> 
> But I realise now you have to hover and wait a second or two.
> 
> In my testing I was simply moving the mouse around too much!
> 
> Embarrassing. At least it's solved though.
> 
> Much useful info gleaned along the way, so thanks for that guys.
> 
> Dave
> 
> 
> 
> On 15 April 2013 16:28, N David Brown <hubd...@gmail.com> wrote:
> I've tried moving the Viewer instances to the top level content pane rather 
> than inside a JSplitPane and the same problem persists.
> 
> Dave
> 
> 
> 
> On 15 April 2013 14:26, N David Brown <hubd...@gmail.com> wrote:
> Thanks for this example, Bob.
> 
> I've implemented as suggested and printouts show I receive many events such 
> as SCRIPT, RESIZE, CLICK. However no HOVER events are generated.
> 
> Is there an obvious reason why this might happen?
> 
> I'm using two JmolPanel instances embedded into a JSplitPane. The JmolPanel 
> definition is from the Jmol wiki iirc:
> 
> public class JmolPanel extends JPanel {
> 
>     private static final long serialVersionUID = 2422145881008561710L;
> 
>     JmolViewer viewer;
> 
>     private final Dimension currentSize = new Dimension();
> 
>     public JmolPanel() {
>         viewer = JmolViewer.allocateViewer(this, new SmarterJmolAdapter(), 
> null, null, null, null, null);
>     }
> 
>     @Override
>     public void paint(Graphics g) {
>         getSize(currentSize);
>         viewer.renderScreenImage(g, currentSize.width, currentSize.height);
>     }
> 
>     public JmolViewer getViewer() {
>         return viewer;
>     }
> }
> The JmolCallbackListener I instantiate for both 
> Viewer#setJmolCallbackListener calls is:
> 
> public class CallbackListener implements JmolCallbackListener {
> 
>     final private CustomAppConsole appConsole;
>     private int callbackId = 0;
> 
>     public CallbackListener(final CustomAppConsole appConsole) {
>         this.appConsole = appConsole;
>     }
> 
>     @Override
>     public void setCallbackFunction(String callbackType, String 
> callbackFunction) {
>         appConsole.setCallbackFunction(callbackType, callbackFunction);
>     }
> 
>     @Override
>     public boolean notifyEnabled(EnumCallback type) {
>         System.out.println(String.format("Callback %d: 
> %s",callbackId++,type));
>         
> switch (type) {
>         case HOVER:
>             return true
> ;
>         }
>         return appConsole.notifyEnabled(type);
>     }
> 
>     @Override
>     public void notifyCallback(EnumCallback type, Object[] data) {
>         appConsole.notifyCallback(type, data);
>         String strInfo = (data == null || data[1] == null ? null : 
> data[1].toString());
>         switch (type) {
>         case HOVER:
>             if (strInfo != null) {
>                 System.out.println("HOVER: " + strInfo);
>             }
>             break;
>         }
>     }
> }
> The class CustomAppConsole is my subclass of AppConsole.
> 
> Dave
> 
> 
> 
> On 15 April 2013 14:04, Robert Hanson <hans...@stolaf.edu> wrote:
> yes, this sounds like the way to go.
> 
>   
>   // / JmolCallbackListener interface ///
>   public boolean notifyEnabled(EnumCallback type) {
>     switch (type) {
>     case HOVER:
>       return true;
>     }
>     return false;
>   }
> 
>   @SuppressWarnings("incomplete-switch")
>   public void notifyCallback(EnumCallback type, Object[] data) {
>     String strInfo = (data == null || data[1] == null ? null : data[1]
>         .toString());
>     switch (type) {
>     case HOVER:
> ....
>    }
> }
> 
> 
> 
> On Mon, Apr 15, 2013 at 4:33 AM, N David Brown <hubd...@gmail.com> wrote:
> That command still doesn't work, Angel.
> 
> set hovercallback = "jmolscript: select _atomHovered; colour atoms red"
> In other news - I've created a custom JmolCallbackListener which is giving me 
> ECHO and PICK events.
> 
> Is there a HOVER event or similar I can enable?
> 
> This will give me the Java notification I need.
> 
> Many thanks,
> 
> Dave
> 
> 
> 
> On 15 April 2013 10:12, N David Brown <hubd...@gmail.com> wrote:
> Ah, thanks Angel.
> 
> I'll make a note of that for future reference.
> 
> Since realising I'll need to have a callback in my own Java code I'm now 
> looking at JmolCallbackListener.
> 
> Cheers,
> 
> Dave
> 
> 
> On 15 April 2013 10:09, Angel Herráez <angel.herr...@uah.es> wrote:
> > Just to clarify, I'm working in Java not JavaScript.
> 
> Yes, callbacks are by default thought to be attached to a JavaScript
> function, that's why you need yo use the "jmolscript" prefix. After
> that, either you include Jmol commands (and 'script' is one of them)
> or a JmolScript function as bob suggested.
> 
> 
> > set hovercallback = "jmolscript:Jmol select
> >  _atomHovered; colour atoms red"
> >
> 
> Sorry I was not too explanative. This will be it:
>  set hovercallback = "jmolscript: select _atomHovered; colour atoms
> red"
> 
> 
> 
> > Sadly this doesn't work.
> > Any suggestions? And could we have an example added to the
> > interactive script docs please?
> > Dave
> >
> >
> > On 15 April 2013 01:19, Robert Hanson <hans...@stolaf.edu> wrote:
> >     Just define a function and call it from your callback:
> >
> >
> >     function myfunc() {
> >     -- Jmol script here --
> >
> >
> >     }
> >
> >
> >     set hoverCallback "jmolscript:myfunc()"
> >
> >
> >     The global variable _atomhovered will contain the atom index of the
> >     hovered atom. So you can investigate it, perhaps:
> >
> >     function testme() {
> >
> >     Var theAtom = {atomindex=_atomHovered}
> >     if (theAtom.elemno==6) {hoverLabel="That's a carbon"} else
> >     {hoverLabel = "That's not a carbon"}
> >     }
> >
> >     set hovercallback "jmolscript:testme()"
> >
> >
> >
> >
> >     On Sun, Apr 14, 2013 at 5:21 PM, N David Brown <hubd...@gmail.com>
> >     wrote:
> >     I've seen this in the documentation:
> >
> >     set hoverCallback "jmolscript:script hover.spt"
> >
> >     I'd like my JAR to not have to deploy files like this hover.spt to
> >     the environment.
> >
> >     Is there an in-JAR filepath you can specify here?
> >
> >     Or an inline script variation?
> >
> >     Dave
> >
> >     ----------------------------------------------------------------------
> >     --------
> >     Precog is a next-generation analytics platform capable of advanced
> >     analytics on semi-structured data. The platform includes APIs for
> >     building
> >     apps and a phenomenal toolset for data science. Developers can use
> >     our toolset for easy data analysis & visualization. Get a free
> >     account!
> >     http://www2.precog.com/precogplatform/slashdotnewsletter
> >     _______________________________________________
> >     Jmol-developers mailing list
> >     Jmol-developers@lists.sourceforge.net
> >     https://lists.sourceforge.net/lists/listinfo/jmol-developers
> >
> >
> >
> >     --
> >     Robert M. Hanson
> >     Larson-Anderson Professor of Chemistry
> >     Chair, Chemistry Department
> >     St. Olaf College
> >     Northfield, MN
> >     http://www.stolaf.edu/people/hansonr
> >
> >
> >     If nature does not answer first what we want,
> >     it is better to take what answer we get.
> >
> >     -- Josiah Willard Gibbs, Lecture XXX, Monday, February 5, 1900
> >
> >
> 
> 
> 
> 
> 
> ------------------------------------------------------------------------------
> 
> Precog is a next-generation analytics platform capable of advanced
> analytics on semi-structured data. The platform includes APIs for building
> apps and a phenomenal toolset for data science. Developers can use
> our toolset for easy data analysis & visualization. Get a free account!
> http://www2.precog.com/precogplatform/slashdotnewsletter
> _______________________________________________
> Jmol-developers mailing list
> Jmol-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jmol-developers
> 
> 
> 
> 
> -- 
> Robert M. Hanson
> Larson-Anderson Professor of Chemistry
> Chair, Chemistry Department
> St. Olaf College
> Northfield, MN
> http://www.stolaf.edu/people/hansonr
> 
> 
> If nature does not answer first what we want,
> it is better to take what answer we get. 
> 
> -- Josiah Willard Gibbs, Lecture XXX, Monday, February 5, 1900
> 
> 
> 
> 
> ------------------------------------------------------------------------------
> Precog is a next-generation analytics platform capable of advanced
> analytics on semi-structured data. The platform includes APIs for building
> apps and a phenomenal toolset for data science. Developers can use
> our toolset for easy data analysis & visualization. Get a free account!
> http://www2.precog.com/precogplatform/slashdotnewsletter_______________________________________________
> Jmol-developers mailing list
> Jmol-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jmol-developers

------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Jmol-developers mailing list
Jmol-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-developers

Reply via email to