oleAutomation:unable to correctly call Visio API QueryCancelGroup [message #876949] |
Fri, 25 May 2012 11:21 |
Eclipse User |
|
|
|
We have developed an integration between our application and Visio.There is a plugin which wraps the Visio Automation objects into Java wrappers.
We are facing a problem with a particular type of APIs.One such example is
QueryCancelGroup[Also QueryCancelSelectionDelete etc]
Documentation [from MSDN]
Private Sub expression_QueryCancelGroup(ByVal Selection As [IVSELECTION])
If any event handler returns True (cancel), the instance fires GroupCanceled and not group the shapes.
If all handlers return False (do not cancel), the grouping is performed.
The handler for the QueryCancelGroup event is as follows:
QueryCancelGroup(
new IVSelection(event.arguments[0].getAutomation()),
new Boolean(event.arguments[1]));
Boolean is a class which wraps the Variant type and allows modification by reference of the Variant variable.
When this was designed it was expected that the handler status would be set via the Boolean variable by ref and it would be
communicated to Visio.
But we are seeing that when we receive the QueryCancelGroup event we are receiving only one member in the event.arguments
i.e the event.arguments[1] is non-existent.
So we are unable to return "true" status from the QueryCancelGroup handler and thus unable to achieve the desired functionality
of blocking grouping of shapes.
Can someone help us investigate this ? we would like to know
1.If our API design is correct ?
2.Is this problem has to do with some problem in org.eclipse.swt.ole.win32
Thanks in advance.
-Shailesh
|
|
|
Powered by
FUDForum. Page generated in 0.03353 seconds