Jump to content

Spotfire Client 10.0 menu refresh problem (IsEnabledCore is not called when Tools menu is opened)


Peter Tusnadi

Recommended Posts

Hi,

Our (software developer) team faced a strange "change" in the new Spotfire 10 (with Hotfix 3) in comparison with the older versions (7.14 and below).

Our Spotfire extension software implements the CustomTool(which is a derived class of the Tool class). We use normally the IsEnabledCore method (from the Tool class) to decide that our tool menu option should be enabled or disabled.

As we see, there is a change in the version 10.0 when a DXP is loaded into the Spotfire client:

Old 7.X behavior: When the user clicked the Tools menu, the IsEnabledCore function was called immediately.

New SPF 10.0 behavior: the IsEnabledCore function is not called when clicking on the Tools menu (refreshing happens only when the user clicks anywhere inside the opened DXP).

As our IsEnabledCore implementation uses external resources to decide the state of the menu item, it shows incorrect state regulary as the corresponding function is not called.

Is it an intentional behavior change in SPF 10 Or was a performance improvement Or is it a bug

Thanks for the answer in advance.

Link to comment
Share on other sites

I tried to replicate the issue you mentioned by adding a MessageBox to the Spotfire SDK examples, SpotfireDeveloper.CustomTools.PageTool.cs and I do not observethe behavior you mentioned. For me the messagebox invokes as soon as I right click on any page and is same in both 10.0 and 7.10

Can you do a quick test using a similar approach like adding a messagebox and verify the behavior. This would help isolate if the issue is with loading external resources or anything else

Also can you let us know the Custom Tools context so we can replicate with the same.

Link to comment
Share on other sites

Hi!

 

Thank you for your quick answer. I created a sample Spotfire 10.0 extension which can easily reproduce the issue.

 

Minimal logic in the code: if the C:ExampleMyFolderTest.txt exists, then the sample menu option should be enabled, otherwise not.

 

To make it much more visible I also attached a screenrecording video about the problem.

 

As you can see, after removing/renaming the file (which is checked in the IsEnabledCore) the sample menu option is still enabled as the corresponding function is not called when the Tools menu is clicked. Older Spotfire versions always run the IsEnabledCore when the Tools menu was opened.

 

We could not find the reason why it works so in the new Spotfire 10.0.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...