I am trying to use Ruby's WIN32OLE support to drive Mindjet's 
Mindmanager.

Their Object Model reference shows the following method:

   *** GetOffset Method ***

   Returns the topic's position-offset relative to its parent. 

   expression.GetOffset(pxOffset, pyOffset)

   expression Required. An expression that returns a Topic object.
   pxOffset Required float *. 
   pyOffset Required float *. 

My problem is how to the two floating point output values. See sample 
below... Any help would be certainly appreciated. Thanks

---
require 'win32ole'

MAX_DEPTH=5

MM=WIN32OLE.new("Mindmanager.Application")
MM.visible=true

def randomMap node,label='Main',depth=5
    node.text=label
    depth.times do |index|
        subnode=node.addSubtopic 'label'
        subnode.invoke('getOffset',0.0,0.0) # How to get this to work???
        p [:offset,WIN32OLE::ARGV]          # Seems to echo parameters
        randomMap subnode,'%s %02d' % [label,index+1],rand(depth)
    end
end

node=MM.activeDocument.centralTopic
randomMap node

---

Generates the following error:

[:offset, [0.0, 0.0]]    << mirrors the supplied inputs
G:/work/mindmanager/demo.rb:13:in `invoke': getOffset 
(WIN32OLERuntimeError)
    OLE error code:80040200 in MindManager.Application.6
      Error: 'this topic is not able to execute the call'
    HRESULT error code:0x80020009
      Exception occurred.from C:demo.rb:13:in `randomMap'
        from G:/work/mindmanager/demo.rb:11:in `times'
        from G:/work/mindmanager/demo.rb:11:in `randomMap'
        from G:/work/mindmanager/demo.rb:15:in `randomMap'
        from G:/work/mindmanager/demo.rb:11:in `times'
        from G:/work/mindmanager/demo.rb:11:in `randomMap'
        from G:/work/mindmanager/demo.rb:20