[vtk-developers] Re: GUISupport directory ?

Clinton Stimpson clinton at elemtech.com
Tue Feb 15 11:50:02 EST 2005


Thanks for the discussion.  So I guess we replace the generic MFC/VTK 
class in there with specialized ones for targeting tyes of MFC 
applications (SDI, MDI, Dialog).  Should we leave the generic one there 
in case?

Thanks,
Clint

de Boer Ingo wrote:

>>For a dialog it is mot much different from the MDI and SDI 
>>examples, except you have to use the PreTranslateMessage if
>>you want keyboard interaction.
>>    
>>
>Yeah, but you can also use the WindowProc function.
>But all of this cannot be handled from the generic window class.
>It has to be handled from the dialog app. So you have double
>code anyway. It is easier to write the code once without the
>generic window class.
>
>  
>
>>I didn't.  I realize they were there in the bug tracker when 
>>I took this code from the already existing examples and modified it.
>>    
>>
>I think the existing ones are no good.
>Eg, the pipeline is executed always in the OnDraw, which is not needed.
>I tried to compile the samples with VTK_BUILD_SHARED_LIBS which did not
>work.
>
>You should give my samples a try. There is a MDI,SDI and dialogbased
>sample (without a generic mfc-vtk window class)
>
>  
>
>>We have an MDI and SDI sample already that uses this new 
>>class.  Do you want to try it in a dialog?
>>    
>>
>I tried it by modifying my sample. But I did not succeed.
>I only got a high cpu level, not knowing why.
>Also, I was not able to move the object, which means, that
>the windowproc didn't get through.
>What you do is, that you have to make a frame object on your
>dialog, get the window from it and make it parent to the
>VTK window.
>
>  
>
>>The OnPaint function doesn't pass in a CDC to do printing 
>>like that.  It is the OnDraw functions from CView that has that.
>>I don't think CWnd has an OnDraw function.
>>    
>>
>This is another reason why I wouldn't suggest a generic window
>class. I would like to mention some points:
>
>1. If I have a window class, I want to derive it, not use it as a child.
>2. All the vtk classes come with eg: this->ren = vtkRenderer::New();
>   The generic mfc window comes with vtkWindow = new vtkMFCWindow;
>   Novice uses might stumble about this.
>3. When you do the render call in OnPaint, how to you do the printing ?
>   You do that in OnDraw, which is called from OnPaint, so you render
>   although you print, because the vtkMFCWindow::OnPaint is called
>   every time. So too much calls here ?
>4. One should keep it simple.
>   When you write your own program, you do not use the generic window.
>   Simply because, why should you use an extra class with a few lines
>   in your own code. You have to make the whole scene setup anyway in
>   your own class.
>
>Just some thoughts...
>
>greets
> Ingo
>
>---
>Dr.-Ing. Ingo H. de Boer
>
>Polytec GmbH
>Polytec-Platz 1-7, 76337 Waldbronn, Germany
>phone: ++49 7243 604 106
>fax  : ++49 7243 604 255
>  
>




More information about the vtk-developers mailing list