[vtkusers] VtkSphereWidget unable to handle the right or left	click...
    David Doria 
    daviddoria+vtk at gmail.com
       
    Fri Mar  5 09:16:09 EST 2010
    
    
  
>
>
> this is because in the parent class, the constructor sets a specific static
> (non-virtual) method:
>
> vtkSphereWidget::vtkSphereWidget()
> {
>  this->State = vtkSphereWidget::Start;
>  this->EventCallbackCommand->SetCallback(vtkSphereWidget::ProcessEvents);
>
> MySphereWidget would need to implement the static method ProcessEvents:
>
> void MySphereWidget::ProcessEvents(vtkObject* vtkNotUsed(object),
>                          unsigned long event,
>                                   void* clientdata,
>            void* vtkNotUsed(calldata))
> {
>  MySphereWidget* self = reinterpret_cast<MySphereWidget *>( clientdata );
>
> and implement the constructor:
>
> MySphereWidget::MySphereWidget()
> {
>  this->EventCallbackCommand->SetCallback(MySphereWidget::ProcessEvents);
> }
>
> Dean
>
Hi Dean,
Why would they do this instead of letting you override the On*() functions
as usual?
I tried to do what you suggested:
http://www.vtk.org/Wiki/VTK/Examples/Widgets/SphereWidgetEvents
But I get this error:
error: no matching function for call to
'vtkCallbackCommand::SetCallback(<unresolved overloaded function type>)'
note: candidates are: virtual void vtkCallbackCommand::SetCallback(void
(*)(vtkObject*, long unsigned int, void*, void*))
There should be a matching function because we just defined it, right?
Thanks,
David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20100305/cbd8772f/attachment.htm>
    
    
More information about the vtkusers
mailing list