wxvtk-users Mailing List for wxVTKRenderWindowInteractor
Brought to you by:
malat
You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(7) |
Feb
|
Mar
(2) |
Apr
(12) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(7) |
Nov
(13) |
Dec
|
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(5) |
Jun
(6) |
Jul
(3) |
Aug
(11) |
Sep
|
Oct
(10) |
Nov
(2) |
Dec
(1) |
2007 |
Jan
(16) |
Feb
(9) |
Mar
(13) |
Apr
|
May
(7) |
Jun
(8) |
Jul
|
Aug
(14) |
Sep
|
Oct
(6) |
Nov
|
Dec
(1) |
2008 |
Jan
(20) |
Feb
(1) |
Mar
|
Apr
(20) |
May
(5) |
Jun
(11) |
Jul
|
Aug
(52) |
Sep
(2) |
Oct
(35) |
Nov
(7) |
Dec
(14) |
2009 |
Jan
(4) |
Feb
(5) |
Mar
(9) |
Apr
(19) |
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
(5) |
Dec
|
2010 |
Jan
(1) |
Feb
(5) |
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
(4) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(4) |
Dec
(13) |
2012 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(9) |
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
From: Tim H. <tim...@gm...> - 2014-11-05 10:33:02
|
/*========================================================================= Program: Visualization Toolkit Module: $RCSfile: wxVTKRenderWindowInteractor.cxx,v $ Language: C++ Date: $Date: 2009/03/05 16:00:43 $ Version: $Revision: 1.49 $ Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen All rights reserved. See Copyright.txt or http://www.kitware.com/Copyright.htm for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notice for more information. =========================================================================*/ #include <assert.h> #include "wxVTKRenderWindowInteractor.h" //This is needed for vtk 3.1 : #ifndef VTK_MAJOR_VERSION #include "vtkVersion.h" #endif #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) #include "vtkCommand.h" #else #include "vtkInteractorStyle.h" #endif #include "vtkDebugLeaks.h" // AKT: wxOSX 2.9.x defines __WXOSX_COCOA__ rather than __WXCOCOA__ #ifdef __WXOSX_COCOA__ #define __WXCOCOA__ #endif #if defined(__WXMAC__) && wxCHECK_VERSION(2,9,0) // AKT: ControlDown has been changed to mean Command key down, // but best NOT to redefine ControlDown to RawControlDown because // that would prevent people using command-click to roll. // #define ControlDown RawControlDown #endif #ifdef __WXMAC__ #ifdef __WXCOCOA__ #include "vtkCocoaRenderWindow.h" #else #include "vtkCarbonRenderWindow.h" #endif #endif //Keep this for compatibilty reason, this was introduced in wxGTK 2.4.0 #if (!wxCHECK_VERSION(2, 4, 0)) wxWindow* wxGetTopLevelParent(wxWindow *win) { while ( win && !win->IsTopLevel() ) win = win->GetParent(); return win; } #endif // To access objc calls on cocoa #ifdef __WXCOCOA__ #ifdef VTK_USE_COCOA #import <Cocoa/Cocoa.h> // This trick is no longer need in VTK CVS, should get rid of that: #define id Id #else #error Build mismatch you need both wxWidgets and VTK to be configure against Cocoa to work #endif //VTK_USE_COCOA #endif //__WXCOCOA__ #ifdef __WXGTK__ #include <gdk/gdkx.h> // GDK_WINDOW_XWINDOW is found here in wxWidgets 2.8.0 #include "gdk/gdkprivate.h" #if wxCHECK_VERSION(2, 9, 0) // thanks to: http://thomasfischer.biz/?p=382 #include <gtk/gtk.h> // #include <wx/gtk/private/win_gtk.h> #define piz(wxwin) WX_PIZZA((wxwin)->m_wxwindow) #define GetXWindow(wxwin) (wxwin)->m_wxwindow ? \ GDK_WINDOW_XWINDOW(((GtkWidget*)piz(wxwin))->window) : \ GDK_WINDOW_XWINDOW((wxwin)->m_widget->window) #else #if wxCHECK_VERSION(2, 8, 0) #ifdef __WXGTK20__ #include <wx/gtk/win_gtk.h> #else #include <wx/gtk1/win_gtk.h> #endif #else #include <wx/gtk/win_gtk.h> #endif #define GetXWindow(wxwin) (wxwin)->m_wxwindow ? \ GDK_WINDOW_XWINDOW(GTK_PIZZA((wxwin)->m_wxwindow)->bin_window) : \ GDK_WINDOW_XWINDOW((wxwin)->m_widget->window) #endif #endif #ifdef __WXX11__ #include "wx/x11/privx.h" #define GetXWindow(wxwin) ((Window)(wxwin)->GetHandle()) #endif //For more info on this class please go to: //http://wxvtk.sf.net //This hack is for some buggy wxGTK version: #if wxCHECK_VERSION(2, 3, 2) && !wxCHECK_VERSION(2, 4, 1) && defined(__WXGTK__) #define WX_USE_X_CAPTURE 0 #else #define WX_USE_X_CAPTURE 1 #endif #define ID_wxVTKRenderWindowInteractor_TIMER 1001 #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) IMPLEMENT_DYNAMIC_CLASS(wxVTKRenderWindowInteractor, wxGLCanvas) #else IMPLEMENT_DYNAMIC_CLASS(wxVTKRenderWindowInteractor, wxWindow) #endif //__WXGTK__ //--------------------------------------------------------------------------- #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) BEGIN_EVENT_TABLE(wxVTKRenderWindowInteractor, wxGLCanvas) #else BEGIN_EVENT_TABLE(wxVTKRenderWindowInteractor, wxWindow) #endif //__WXGTK__ //refresh window by doing a Render EVT_PAINT (wxVTKRenderWindowInteractor::OnPaint) EVT_ERASE_BACKGROUND(wxVTKRenderWindowInteractor::OnEraseBackground) EVT_MOTION (wxVTKRenderWindowInteractor::OnMotion) //Bind the events to the event converters EVT_LEFT_DOWN (wxVTKRenderWindowInteractor::OnButtonDown) EVT_MIDDLE_DOWN (wxVTKRenderWindowInteractor::OnButtonDown) EVT_RIGHT_DOWN (wxVTKRenderWindowInteractor::OnButtonDown) EVT_LEFT_UP (wxVTKRenderWindowInteractor::OnButtonUp) EVT_MIDDLE_UP (wxVTKRenderWindowInteractor::OnButtonUp) EVT_RIGHT_UP (wxVTKRenderWindowInteractor::OnButtonUp) #if !(VTK_MAJOR_VERSION == 3 && VTK_MINOR_VERSION == 1) EVT_ENTER_WINDOW(wxVTKRenderWindowInteractor::OnEnter) EVT_LEAVE_WINDOW(wxVTKRenderWindowInteractor::OnLeave) EVT_MOUSEWHEEL (wxVTKRenderWindowInteractor::OnMouseWheel) #if wxCHECK_VERSION(2, 8, 0) EVT_MOUSE_CAPTURE_LOST(wxVTKRenderWindowInteractor::OnMouseCaptureLost) #endif EVT_KEY_DOWN (wxVTKRenderWindowInteractor::OnKeyDown) EVT_KEY_UP (wxVTKRenderWindowInteractor::OnKeyUp) EVT_CHAR (wxVTKRenderWindowInteractor::OnChar) #endif EVT_TIMER (ID_wxVTKRenderWindowInteractor_TIMER, wxVTKRenderWindowInteractor::OnTimer) EVT_SIZE (wxVTKRenderWindowInteractor::OnSize) END_EVENT_TABLE() vtkCxxRevisionMacro(wxVTKRenderWindowInteractor, "$Revision: 1.49 $") vtkInstantiatorNewMacro(wxVTKRenderWindowInteractor) #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) static int wxvtk_attributes[]={ WX_GL_DOUBLEBUFFER, WX_GL_RGBA, WX_GL_DEPTH_SIZE, 16, 0 }; #endif //--------------------------------------------------------------------------- wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) #if wxCHECK_VERSION(2, 9, 0) // the order of the parameters to wxGLCanvas::wxGLCanvas has changed : wxGLCanvas(0, -1, wxvtk_attributes, wxDefaultPosition, wxDefaultSize, 0, wxT("wxVTKRenderWindowInteractor")), #else : wxGLCanvas(0, -1, wxDefaultPosition, wxDefaultSize, 0, wxT("wxVTKRenderWindowInteractor"), wxvtk_attributes), #endif #else : wxWindow(), #endif //__WXGTK__ vtkRenderWindowInteractor() , timer(this, ID_wxVTKRenderWindowInteractor_TIMER) , ActiveButton(wxEVT_NULL) , Stereo(0) , Handle(0) , Created(true) , RenderWhenDisabled(1) , UseCaptureMouse(0) { #ifdef VTK_DEBUG_LEAKS vtkDebugLeaks::ConstructClass("wxVTKRenderWindowInteractor"); #endif #if defined(__WXGTK__) && defined(wxUSE_GLCANVAS) && wxCHECK_VERSION(2, 9, 0) this->GLContext = new wxGLContext (this); #endif this->RenderWindow = NULL; this->SetRenderWindow(vtkRenderWindow::New()); this->RenderWindow->Delete(); } //--------------------------------------------------------------------------- wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor(wxWindow *parent, wxWindowID id, const wxPoint &pos, const wxSize &size, long style, const wxString &name) #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) #if wxCHECK_VERSION(2, 9, 0) // the order of the parameters to wxGLCanvas::wxGLCanvas has changed : wxGLCanvas(parent, id, wxvtk_attributes, pos, size, style, name) #else : wxGLCanvas(parent, id, pos, size, style, name, wxvtk_attributes) #endif #else : wxWindow(parent, id, pos, size, style, name) #endif //__WXGTK__ , vtkRenderWindowInteractor() , timer(this, ID_wxVTKRenderWindowInteractor_TIMER) , ActiveButton(wxEVT_NULL) , Stereo(0) , Handle(0) , Created(true) , RenderWhenDisabled(1) , UseCaptureMouse(0) { #ifdef VTK_DEBUG_LEAKS vtkDebugLeaks::ConstructClass("wxVTKRenderWindowInteractor"); #endif #if defined(__WXGTK__) && defined(wxUSE_GLCANVAS) && wxCHECK_VERSION(2, 9, 0) this->GLContext = new wxGLContext (this); #endif this->RenderWindow = NULL; this->SetRenderWindow(vtkRenderWindow::New()); this->RenderWindow->Delete(); #ifdef __WXMAC__ // On Mac (Carbon) we don't get notified of the initial window size with an EVT_SIZE event, // so we update the size information of the interactor/renderwindow here this->UpdateSize(size.x, size.y); #endif } //--------------------------------------------------------------------------- wxVTKRenderWindowInteractor::~wxVTKRenderWindowInteractor() { #if defined(__WXGTK__) && defined(wxUSE_GLCANVAS) && wxCHECK_VERSION(2, 9, 0) delete this->GLContext; #endif SetRenderWindow(NULL); SetInteractorStyle(NULL); } //--------------------------------------------------------------------------- wxVTKRenderWindowInteractor * wxVTKRenderWindowInteractor::New() { // we don't make use of the objectfactory, because we're not registered return new wxVTKRenderWindowInteractor; } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::Initialize() { int *size = RenderWindow->GetSize(); // enable everything and start rendering Enable(); //RenderWindow->Start(); // set the size in the render window interactor Size[0] = size[0]; Size[1] = size[1]; // this is initialized Initialized = 1; } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::Enable() { // if already enabled then done if (Enabled) return; // that's it Enabled = 1; #if defined(__WXGTK__) && defined(wxUSE_GLCANVAS) #if wxCHECK_VERSION(2, 9, 0) SetCurrent( *GLContext ); #else SetCurrent(); #endif #endif Modified(); } //--------------------------------------------------------------------------- bool wxVTKRenderWindowInteractor::Enable(bool enable) { #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) return wxGLCanvas::Enable(enable); #else return wxWindow::Enable(enable); #endif } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::Disable() { // if already disabled then done if (!Enabled) return; // that's it (we can't remove the event handler like it should be...) Enabled = 0; Modified(); } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::Start() { // the interactor cannot control the event loop vtkErrorMacro( << "wxVTKRenderWindowInteractor::Start() " "interactor cannot control event loop."); } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::UpdateSize(int x, int y) { if( RenderWindow ) { // if the size changed tell render window if ( x != Size[0] || y != Size[1] ) { // adjust our (vtkRenderWindowInteractor size) Size[0] = x; Size[1] = y; // and our RenderWindow's size RenderWindow->SetSize(x, y); } } } //--------------------------------------------------------------------------- int wxVTKRenderWindowInteractor::CreateTimer(int WXUNUSED(timertype)) { // it's a one shot timer if (!timer.Start(10, TRUE)) return 0; return 1; } #if VTK_MAJOR_VERSION > 5 || (VTK_MAJOR_VERSION == 5 && VTK_MINOR_VERSION >= 2) //------------------------------------------------------------------ int wxVTKRenderWindowInteractor::InternalCreateTimer(int timerId, int timerType, unsigned long duration) { if (!timer.Start(duration, timerType == OneShotTimer)) return 0; return ID_wxVTKRenderWindowInteractor_TIMER; } //------------------------------------------------------------------ int wxVTKRenderWindowInteractor::InternalDestroyTimer(int platformTimerId) { timer.Stop(); return 1; } #endif //--------------------------------------------------------------------------- int wxVTKRenderWindowInteractor::DestroyTimer() { // do nothing return 1; } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnTimer(wxTimerEvent& WXUNUSED(event)) { if (!Enabled) return; #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style #if VTK_MAJOR_VERSION > 5 || (VTK_MAJOR_VERSION == 5 && VTK_MINOR_VERSION >= 2) // pass the right timer id int timerId = this->GetCurrentTimerId(); this->InvokeEvent(vtkCommand::TimerEvent, &timerId); #else this->InvokeEvent(vtkCommand::TimerEvent, NULL); #endif #else // old style InteractorStyle->OnTimer(); #endif } //--------------------------------------------------------------------------- // NOTE on implementation: // Bad luck you ended up in the only tricky place of this code. // A few note, wxWidgets still refuse to provide such convenient method // so I have to maintain it myself, eventhough this is completely integrated // in wxPython... // Anyway if this happen to break for you then compare to a recent version of wxPython // and look for the function long wxPyGetWinHandle(wxWindow* win) // in wxPython/src/helpers.cpp long wxVTKRenderWindowInteractor::GetHandleHack() { //helper function to hide the MSW vs GTK stuff long handle_tmp = 0; // __WXMSW__ is for Win32 // __WXMAC__ is for Carbon or Cocoa builds // __WXGTK__ is for both gtk 1.2.x and gtk 2.x #if defined(__WXMSW__) || defined(__WXMAC__) handle_tmp = (long)this->GetHandle(); #endif //__WXMSW__ /* AKT: not needed -- using above GetHandle() works fine with wxOSX 2.9.x #ifdef __WXCOCOA__ // Here is how to find the NSWindow wxTopLevelWindow* toplevel = dynamic_cast<wxTopLevelWindow*>(wxGetTopLevelParent( this ) ); if (toplevel != NULL ) { handle_tmp = (long)toplevel->GetNSWindow(); } // The NSView will be deducted from // [(NSWindow*)Handle contentView] // if only I knew how to write that in c++ #endif //__WXCOCOA__ */ // Find and return the actual X-Window. #if defined(__WXGTK__) || defined(__WXX11__) return (long)gdk_x11_drawable_get_xid(gtk_widget_get_window(this->GetHandle())); // return (long)GetXWindow(this); #endif //#ifdef __WXMOTIF__ // handle_tmp = (long)this->GetXWindow(); //#endif return handle_tmp; } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnPaint(wxPaintEvent& WXUNUSED(event)) { //must always be here wxPaintDC pDC(this); //do it here rather than in the cstor: this is safer. if(!Handle) { Handle = GetHandleHack(); RenderWindow->SetWindowId(reinterpret_cast<void *>(Handle)); #ifdef __WXMSW__ RenderWindow->SetParentId(reinterpret_cast<void *>(this->GetParent()->GetHWND())); #endif //__WXMSW__ // This is another hack to prevent the VTK Render Window from closing the display. // If VTK closes the display, ~wxContext chashes while trying to destroy its // glContext (because the display is closed). The Get -> Set makes this VTK // object think someone else is responsible for the display. #ifdef __WXCOCOA__ // AKT: avoid "Method not implemented" messages in Console #else this->RenderWindow->SetDisplayId(this->RenderWindow->GetGenericDisplayId()); #endif } // get vtk to render to the wxWindows Render(); #ifdef __WXMAC__ // This solves a problem with repainting after a window resize // See also: http://sourceforge.net/mailarchive/forum.php?thread_id=31690967&forum_id=41789 #ifdef __WXCOCOA__ /* AKT: this doesn't seem necessary with wxOSX 2.9.x vtkCocoaRenderWindow * rwin = vtkCocoaRenderWindow::SafeDownCast(RenderWindow); if( rwin ) { rwin->UpdateContext(); } */ #else vtkCarbonRenderWindow* rwin = vtkCarbonRenderWindow::SafeDownCast(RenderWindow); if( rwin ) { #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 4) // Must be somewhere after VTK 4.4 rwin->UpdateGLRegion(); #endif } #endif #endif } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnEraseBackground(wxEraseEvent &event) { //turn off background erase to reduce flickering on MSW event.Skip(false); } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnSize(wxSizeEvent& WXUNUSED(event)) { int w, h; GetClientSize(&w, &h); UpdateSize(w, h); if (!Enabled) { return; } #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) InvokeEvent(vtkCommand::ConfigureEvent, NULL); #endif //this will check for Handle //Render(); } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnMotion(wxMouseEvent &event) { if (!Enabled) { return; } #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) SetEventInformationFlipY(event.GetX(), event.GetY(), event.ControlDown(), event.ShiftDown(), '\0', 0, NULL); InvokeEvent(vtkCommand::MouseMoveEvent, NULL); #else InteractorStyle->OnMouseMove(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } //--------------------------------------------------------------------------- #if !(VTK_MAJOR_VERSION == 3 && VTK_MINOR_VERSION == 1) void wxVTKRenderWindowInteractor::OnEnter(wxMouseEvent &event) { if (!Enabled) { return; } #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style SetEventInformationFlipY(event.GetX(), event.GetY(), event.ControlDown(), event.ShiftDown(), '\0', 0, NULL); InvokeEvent(vtkCommand::EnterEvent, NULL); #else // old style InteractorStyle->OnEnter(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnLeave(wxMouseEvent &event) { if (!Enabled) { return; } #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style SetEventInformationFlipY(event.GetX(), event.GetY(), event.ControlDown(), event.ShiftDown(), '\0', 0, NULL); InvokeEvent(vtkCommand::LeaveEvent, NULL); #else // old style InteractorStyle->OnLeave(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnKeyDown(wxKeyEvent &event) { if (!Enabled) { return; } #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style int keycode = event.GetKeyCode(); char key = '\0'; if (((unsigned int)keycode) < 256) { // TODO: Unicode in non-Unicode mode ?? key = (char)keycode; } // we don't get a valid mouse position inside the key event on every platform // so we retrieve the mouse position explicitly and pass it along wxPoint mousePos = ScreenToClient(wxGetMousePosition()); SetEventInformationFlipY(mousePos.x, mousePos.y, event.ControlDown(), event.ShiftDown(), key, 0, NULL); InvokeEvent(vtkCommand::KeyPressEvent, NULL); #else InteractorStyle->OnKeyDown(event.ControlDown(), event.ShiftDown(), event.GetKeyCode(), 1); #endif event.Skip(); } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnKeyUp(wxKeyEvent &event) { if (!Enabled) { return; } #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style int keycode = event.GetKeyCode(); char key = '\0'; if (((unsigned int)keycode) < 256) { // TODO: Unicode in non-Unicode mode ?? key = (char)keycode; } // we don't get a valid mouse position inside the key event on every platform // so we retrieve the mouse position explicitly and pass it along wxPoint mousePos = ScreenToClient(wxGetMousePosition()); SetEventInformationFlipY(mousePos.x, mousePos.y, event.ControlDown(), event.ShiftDown(), key, 0, NULL); InvokeEvent(vtkCommand::KeyReleaseEvent, NULL); #else InteractorStyle->OnKeyUp(event.ControlDown(), event.ShiftDown(), event.GetKeyCode(), 1); #endif event.Skip(); } #endif //!(VTK_MAJOR_VERSION == 3 && VTK_MINOR_VERSION == 1) //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnChar(wxKeyEvent &event) { if (!Enabled) { return; } #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style int keycode = event.GetKeyCode(); char key = '\0'; if (((unsigned int)keycode) < 256) { // TODO: Unicode in non-Unicode mode ?? key = (char)keycode; } // we don't get a valid mouse position inside the key event on every platform // so we retrieve the mouse position explicitly and pass it along wxPoint mousePos = ScreenToClient(wxGetMousePosition()); SetEventInformationFlipY(mousePos.x, mousePos.y, event.ControlDown(), event.ShiftDown(), key, 0, NULL); InvokeEvent(vtkCommand::CharEvent, NULL); #endif #ifdef __WXCOCOA__ // AKT: avoid unwanted beep (probably due to bug in wxOSX 2.9.x) #else event.Skip(); #endif } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnButtonDown(wxMouseEvent &event) { if (!Enabled || (ActiveButton != wxEVT_NULL)) { return; } ActiveButton = event.GetEventType(); // On Mac (Carbon) and Windows we don't automatically get the focus when // you click inside the window // we therefore set the focus explicitly // Apparently we need that on linux (GTK) too: this->SetFocus(); #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) SetEventInformationFlipY(event.GetX(), event.GetY(), event.ControlDown(), event.ShiftDown(), '\0', 0, NULL); #endif if(event.RightDown()) { #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style InvokeEvent(vtkCommand::RightButtonPressEvent, NULL); #else // old style InteractorStyle->OnRightButtonDown(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } else if(event.LeftDown()) { #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style InvokeEvent(vtkCommand::LeftButtonPressEvent, NULL); #else // old style InteractorStyle->OnLeftButtonDown(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } else if(event.MiddleDown()) { #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style InvokeEvent(vtkCommand::MiddleButtonPressEvent, NULL); #else // old style InteractorStyle->OnMiddleButtonDown(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } //save the button and capture mouse until the button is released //Only if : //1. it is possible (WX_USE_X_CAPTURE) //2. user decided to. if ((ActiveButton != wxEVT_NULL) && WX_USE_X_CAPTURE && UseCaptureMouse) { CaptureMouse(); } } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnButtonUp(wxMouseEvent &event) { //EVT_xxx_DOWN == EVT_xxx_UP - 1 //This is only needed if two mouse buttons are pressed at the same time. //In wxWindows 2.4 and later: better use of wxMOUSE_BTN_RIGHT or //wxEVT_COMMAND_RIGHT_CLICK if (!Enabled || (ActiveButton != (event.GetEventType()-1))) { #ifdef __WXCOCOA__ // AKT: do not return here because it causes bugs if user ctrl-clicked, // presumably because such a click can be treated as a right-button click #else return; #endif } // See report by Shang Mu / Kerry Loux on wxVTK mailing list this->SetFocus(); #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) SetEventInformationFlipY(event.GetX(), event.GetY(), event.ControlDown(), event.ShiftDown(), '\0', 0, NULL); #endif if(ActiveButton == wxEVT_RIGHT_DOWN) { #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style InvokeEvent(vtkCommand::RightButtonReleaseEvent, NULL); #else // old style InteractorStyle->OnRightButtonUp(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } else if(ActiveButton == wxEVT_LEFT_DOWN) { #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style InvokeEvent(vtkCommand::LeftButtonReleaseEvent, NULL); #else // old style InteractorStyle->OnLeftButtonUp(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } else if(ActiveButton == wxEVT_MIDDLE_DOWN) { #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style InvokeEvent(vtkCommand::MiddleButtonReleaseEvent, NULL); #else // old style InteractorStyle->OnMiddleButtonUp(event.ControlDown(), event.ShiftDown(), event.GetX(), Size[1] - event.GetY() - 1); #endif } //if the ActiveButton is released, then release mouse capture if ((ActiveButton != wxEVT_NULL) && WX_USE_X_CAPTURE && UseCaptureMouse) { ReleaseMouse(); } ActiveButton = wxEVT_NULL; } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::OnMouseWheel(wxMouseEvent& event) { // Mouse wheel was only added after VTK 4.4 (I think...) #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 4) // new style //Set vtk event information ... The number of wheel rotations is stored in //the x varible. y varible is zero SetEventInformationFlipY(event.GetX() , event.GetY(), event.ControlDown(), event.ShiftDown(), '\0', 0, NULL); if(event.GetWheelRotation() > 0) { //Send event to VTK InvokeEvent(vtkCommand::MouseWheelForwardEvent, NULL); } else { //Send event to VTK InvokeEvent(vtkCommand::MouseWheelBackwardEvent, NULL); } #endif } //--------------------------------------------------------------------------- #if wxCHECK_VERSION(2, 8, 0) void wxVTKRenderWindowInteractor::OnMouseCaptureLost(wxMouseCaptureLostEvent& event) { if (ActiveButton != wxEVT_NULL) { //Maybe also invoke the button release event here } // Reset ActiveButton so that // 1. we do not process mouse button up events any more, // 2. the next button down event will be processed and call CaptureMouse(). // Otherwise ReleaseMouse() will be called // without a previous CaptureMouse(). ActiveButton = wxEVT_NULL; } #endif //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::Render() { #if wxCHECK_VERSION(2, 8, 0) int renderAllowed = !IsFrozen(); #else int renderAllowed = 1; #endif if (renderAllowed && !RenderWhenDisabled) { //the user doesn't want us to render when the toplevel frame //is disabled - first find the top level parent wxWindow *topParent = wxGetTopLevelParent(this); if (topParent) { //if it exists, check whether it's enabled //if it's not enabeld, renderAllowed will be false renderAllowed = topParent->IsEnabled(); } } if (renderAllowed) { if(Handle && (Handle == GetHandleHack()) ) { RenderWindow->Render(); } #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 2) else if(GetHandleHack()) { //this means the user has reparented us; let's adapt to the //new situation by doing the WindowRemap dance //store the new situation Handle = GetHandleHack(); RenderWindow->SetNextWindowId(reinterpret_cast<void *>(Handle)); RenderWindow->WindowRemap(); RenderWindow->Render(); } #endif } } //--------------------------------------------------------------------------- void wxVTKRenderWindowInteractor::SetRenderWhenDisabled(int newValue) { //Change value of __RenderWhenDisabled ivar. //If __RenderWhenDisabled is false (the default), this widget will not //call Render() on the RenderWindow if the top level frame (i.e. the //containing frame) has been disabled. //This prevents recursive rendering during wxSafeYield() calls. //wxSafeYield() can be called during the ProgressMethod() callback of //a VTK object to have progress bars and other GUI elements updated - //it does this by disabling all windows (disallowing user-input to //prevent re-entrancy of code) and then handling all outstanding //GUI events. //However, this often triggers an OnPaint() method for wxVTKRWIs, //resulting in a Render(), resulting in Update() being called whilst //still in progress. RenderWhenDisabled = (bool)newValue; } //--------------------------------------------------------------------------- // // Set the variable that indicates that we want a stereo capable window // be created. This method can only be called before a window is realized. // void wxVTKRenderWindowInteractor::SetStereo(int capable) { if (Stereo != capable) { Stereo = capable; RenderWindow->StereoCapableWindowOn(); RenderWindow->SetStereoTypeToCrystalEyes(); Modified(); } } //--------------------------------------------------------------------------- // // void wxVTKRenderWindowInteractor::PrintSelf(ostream& os, vtkIndent indent) { this->Superclass::PrintSelf(os, indent); } |
From: Sander N. <svn...@us...> - 2014-09-12 09:57:49
|
Update of /cvsroot/wxvtk/wxVTK/src In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv16047 Modified Files: wxVTKRenderWindowInteractor.cxx wxVTKRenderWindowInteractor.h Log Message: Update for compatibility with VTK 5.10 and wxWidgets 3.0 It is now mandatory to manage ones own GL context Index: wxVTKRenderWindowInteractor.h =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.h,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** wxVTKRenderWindowInteractor.h 3 Mar 2009 16:20:43 -0000 1.24 --- wxVTKRenderWindowInteractor.h 12 Sep 2014 09:57:47 -0000 1.25 *************** *** 159,162 **** --- 159,165 ---- protected: + #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) + wxGLContext *context; + #endif wxTimer timer; int ActiveButton; Index: wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.53 retrieving revision 1.54 diff -C2 -d -r1.53 -r1.54 *** wxVTKRenderWindowInteractor.cxx 1 Oct 2013 17:03:38 -0000 1.53 --- wxVTKRenderWindowInteractor.cxx 12 Sep 2014 09:57:46 -0000 1.54 *************** *** 196,199 **** --- 196,202 ---- vtkDebugLeaks::ConstructClass("wxVTKRenderWindowInteractor"); #endif + #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) + this->context = new wxGLContext(this); + #endif this->RenderWindow = NULL; this->SetRenderWindow(vtkRenderWindow::New()); *************** *** 228,231 **** --- 231,237 ---- vtkDebugLeaks::ConstructClass("wxVTKRenderWindowInteractor"); #endif + #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) + this->context = new wxGLContext(this); + #endif this->RenderWindow = NULL; this->SetRenderWindow(vtkRenderWindow::New()); *************** *** 242,245 **** --- 248,254 ---- SetRenderWindow(NULL); SetInteractorStyle(NULL); + #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) + delete this->context; + #endif } //--------------------------------------------------------------------------- *************** *** 274,278 **** Enabled = 1; #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) ! SetCurrent(); #endif Modified(); --- 283,287 ---- Enabled = 1; #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) ! wxGLCanvas::SetCurrent(*this->context); #endif Modified(); *************** *** 833,836 **** --- 842,848 ---- if (renderAllowed) { + #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) + wxGLCanvas::SetCurrent(*(this->context)); + #endif if(Handle && (Handle == GetHandleHack()) ) { |
From: ABE H. <ha...@gm...> - 2013-10-02 12:19:22
|
Dear Mathieu, Thank you for your kind helps, but I have to apologize my mistake. I installed gcc/g++ in /usr/local once, and I thought all files were removed but libstdc++ still existed in /usr/local/lib folder. I removed them and the link error has gone now. Best, Hiroshi On 2013/10/02, at 15:05, Mathieu Malaterre wrote: > Hi, > > On Wed, Oct 2, 2013 at 7:57 AM, Hiroshi Abe <ha...@gm...> wrote: >> Dear Mathieu, >> >> As you pointed, my project is static linking. >> I did "make VERBOSE=1" and got long message, as is shown in the >> following, >> with some snap out. >> If you point out the problem, it would be so nice. I'm stacked in >> these >> couple of days. >> The library vtkCommon is surely listed in the linkage command. > > That's not enough :) > > >> /usr/bin/c++ -Wno-deprecated -mlong-branch -I/usr/local/include/ >> wx-2.9 >> -Wl,-search_paths_first -Wl,-headerpad_max_install_names >> CMakeFiles/wxImagePlaneWidget.dir/Sample/wxImagePlaneWidget.cxx.o >> CMakeFiles/wxImagePlaneWidget.dir/src/ >> wxVTKRenderWindowInteractor.cxx.o -o >> bin/wxImagePlaneWidget.app/Contents/MacOS/wxImagePlaneWidget >> -L/usr/local/lib/vtk-5.4 -L/usr/local/lib -lvtkRendering -L/usr/ >> local/lib >> -framework IOKit -framework Carbon -framework Cocoa -framework >> AudioToolbox >> -framework System -framework OpenGL -framework QuickTime >> /usr/local/lib/libwx_osx_cocoau_adv-2.9.a >> /usr/local/lib/libwx_osx_cocoau_core-2.9.a /usr/local/lib/ >> libwx_baseu-2.9.a >> -L/usr/local/lib -lSDLmain -lSDL -Wl,-framework,Cocoa -lpng -ljpeg >> -framework WebKit -lwxregexu-2.9 -lz -lpthread -liconv -lvtkWidgets >> -lvtkHybrid -lvtkRendering -framework Cocoa -lvtkGraphics - >> lvtkverdict >> -lvtkImaging -lvtkftgl -lvtkfreetype -framework ApplicationServices >> -framework CoreServices -framework OpenGL -lvtkIO -lvtkFiltering - >> lvtkCommon >> -lpthread -lm -lvtkDICOMParser -lvtkmetaio -lvtksqlite -lvtkpng - >> lvtktiff >> -lvtkzlib -lvtkjpeg -lvtkexpat -lvtksys -lvtkexoIIc -lvtkNetCDF >> Undefined symbols: >> "std::basic_ostream<char, std::char_traits<char> >& >> std::__ostream_insert<char, std::char_traits<char> >>> (std::basic_ostream<char, std::char_traits<char> >&, char const*, >>> int)", >> referenced from: >> vtkImagePlaneWidget::PrintSelf(std::basic_ostream<char, >> std::char_traits<char> >&, vtkIndent)in >> libvtkWidgets.a(vtkImagePlaneWidget.o) > > In static linking you have to duplicate libraries name on the link > line (case of loop). I see vtkCommon after vtkWidgets, so I am > *guessing* that vtkCommon should also be listed before vtkWidgets > > 2cts ABE Hiroshi from Tokorozawa, JAPAN |
From: Mathieu M. <mat...@gm...> - 2013-10-02 06:05:58
|
Hi, On Wed, Oct 2, 2013 at 7:57 AM, Hiroshi Abe <ha...@gm...> wrote: > Dear Mathieu, > > As you pointed, my project is static linking. > I did "make VERBOSE=1" and got long message, as is shown in the following, > with some snap out. > If you point out the problem, it would be so nice. I'm stacked in these > couple of days. > The library vtkCommon is surely listed in the linkage command. That's not enough :) > /usr/bin/c++ -Wno-deprecated -mlong-branch -I/usr/local/include/wx-2.9 > -Wl,-search_paths_first -Wl,-headerpad_max_install_names > CMakeFiles/wxImagePlaneWidget.dir/Sample/wxImagePlaneWidget.cxx.o > CMakeFiles/wxImagePlaneWidget.dir/src/wxVTKRenderWindowInteractor.cxx.o -o > bin/wxImagePlaneWidget.app/Contents/MacOS/wxImagePlaneWidget > -L/usr/local/lib/vtk-5.4 -L/usr/local/lib -lvtkRendering -L/usr/local/lib > -framework IOKit -framework Carbon -framework Cocoa -framework AudioToolbox > -framework System -framework OpenGL -framework QuickTime > /usr/local/lib/libwx_osx_cocoau_adv-2.9.a > /usr/local/lib/libwx_osx_cocoau_core-2.9.a /usr/local/lib/libwx_baseu-2.9.a > -L/usr/local/lib -lSDLmain -lSDL -Wl,-framework,Cocoa -lpng -ljpeg > -framework WebKit -lwxregexu-2.9 -lz -lpthread -liconv -lvtkWidgets > -lvtkHybrid -lvtkRendering -framework Cocoa -lvtkGraphics -lvtkverdict > -lvtkImaging -lvtkftgl -lvtkfreetype -framework ApplicationServices > -framework CoreServices -framework OpenGL -lvtkIO -lvtkFiltering -lvtkCommon > -lpthread -lm -lvtkDICOMParser -lvtkmetaio -lvtksqlite -lvtkpng -lvtktiff > -lvtkzlib -lvtkjpeg -lvtkexpat -lvtksys -lvtkexoIIc -lvtkNetCDF > Undefined symbols: > "std::basic_ostream<char, std::char_traits<char> >& > std::__ostream_insert<char, std::char_traits<char> >>(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)", > referenced from: > vtkImagePlaneWidget::PrintSelf(std::basic_ostream<char, > std::char_traits<char> >&, vtkIndent)in > libvtkWidgets.a(vtkImagePlaneWidget.o) In static linking you have to duplicate libraries name on the link line (case of loop). I see vtkCommon after vtkWidgets, so I am *guessing* that vtkCommon should also be listed before vtkWidgets 2cts |
From: Hiroshi A. <ha...@gm...> - 2013-10-02 05:57:11
|
Dear Mathieu, As you pointed, my project is static linking. I did "make VERBOSE=1" and got long message, as is shown in the following, with some snap out. If you point out the problem, it would be so nice. I'm stacked in these couple of days. The library vtkCommon is surely listed in the linkage command. ... [ 8%] Building CXX object CMakeFiles/wxImagePlaneWidget.dir/Sample/wxImagePlaneWidget.cxx.o /usr/bin/c++ -D_FILE_OFFSET_BITS=64 -DwxDEBUG_LEVEL=0 -D__WXMAC__ -D__WXOSX__ -D__WXOSX_COCOA__ -Wno-deprecated -mlong-branch -I/usr/local/include/wx-2.9 -I/usr/local/include/vtk-5.4 -I/usr/local/lib/wx/include/osx_cocoa-unicode-static-2.9 -I/usr/local/include/wx-2.9 -I/Users/hiroshi/NetSofts/wxWidgets/wxVTK/src -o CMakeFiles/wxImagePlaneWidget.dir/Sample/wxImagePlaneWidget.cxx.o -c /Users/hiroshi/NetSofts/wxWidgets/wxVTK/Sample/wxImagePlaneWidget.cxx "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_progress_report /Users/hiroshi/NetSofts/wxWidgets/wxVTK/build/CMakeFiles 2 [ 16%] Building CXX object CMakeFiles/wxImagePlaneWidget.dir/src/wxVTKRenderWindowInteractor.cxx.o /usr/bin/c++ -D_FILE_OFFSET_BITS=64 -DwxDEBUG_LEVEL=0 -D__WXMAC__ -D__WXOSX__ -D__WXOSX_COCOA__ -Wno-deprecated -mlong-branch -I/usr/local/include/wx-2.9 -I/usr/local/include/vtk-5.4 -I/usr/local/lib/wx/include/osx_cocoa-unicode-static-2.9 -I/usr/local/include/wx-2.9 -I/Users/hiroshi/NetSofts/wxWidgets/wxVTK/src -ObjC++ -o CMakeFiles/wxImagePlaneWidget.dir/src/wxVTKRenderWindowInteractor.cxx.o -c /Users/hiroshi/NetSofts/wxWidgets/wxVTK/src/wxVTKRenderWindowInteractor.cxx Linking CXX executable bin/wxImagePlaneWidget.app/Contents/MacOS/wxImagePlaneWidget "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E cmake_link_script CMakeFiles/wxImagePlaneWidget.dir/link.txt --verbose=1 /usr/bin/c++ -Wno-deprecated -mlong-branch -I/usr/local/include/wx-2.9 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/wxImagePlaneWidget.dir/Sample/wxImagePlaneWidget.cxx.o CMakeFiles/wxImagePlaneWidget.dir/src/wxVTKRenderWindowInteractor.cxx.o -o bin/wxImagePlaneWidget.app/Contents/MacOS/wxImagePlaneWidget -L/usr/local/lib/vtk-5.4 -L/usr/local/lib -lvtkRendering -L/usr/local/lib -framework IOKit -framework Carbon -framework Cocoa -framework AudioToolbox -framework System -framework OpenGL -framework QuickTime /usr/local/lib/libwx_osx_cocoau_adv-2.9.a /usr/local/lib/libwx_osx_cocoau_core-2.9.a /usr/local/lib/libwx_baseu-2.9.a -L/usr/local/lib -lSDLmain -lSDL -Wl,-framework,Cocoa -lpng -ljpeg -framework WebKit -lwxregexu-2.9 -lz -lpthread -liconv -lvtkWidgets -lvtkHybrid -lvtkRendering -framework Cocoa -lvtkGraphics -lvtkverdict -lvtkImaging -lvtkftgl -lvtkfreetype -framework ApplicationServices -framework CoreServices -framework OpenGL -lvtkIO -lvtkFiltering -lvtkCommon -lpthread -lm -lvtkDICOMParser -lvtkmetaio -lvtksqlite -lvtkpng -lvtktiff -lvtkzlib -lvtkjpeg -lvtkexpat -lvtksys -lvtkexoIIc -lvtkNetCDF Undefined symbols: "std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)", referenced from: vtkImagePlaneWidget::PrintSelf(std::basic_ostream<char, std::char_traits<char> >&, vtkIndent)in libvtkWidgets.a(vtkImagePlaneWidget.o) ....[same kind messages..] 2013/10/2 Mathieu Malaterre <mat...@gm...> > On Tue, Oct 1, 2013 at 2:34 PM, Hiroshi Abe <ha...@gm...> wrote: > > "std::basic_ostream<char, std::char_traits<char> >& > > std::__ostream_insert<char, std::char_traits<char> > >>(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)", > > referenced from: > > > > vtkOStreamWrapper::operator<<(unsigned char)in > > libvtkCommon.a(vtkOStreamWrapper.o) > > > > vtkOStreamWrapper::operator<<(char)in > > libvtkCommon.a(vtkOStreamWrapper.o) > > > > vtkOStreamWrapper::operator<<(char const*)in > > libvtkCommon.a(vtkOStreamWrapper.o) > > > > vtkRenderWindow::PrintSelf(std::basic_ostream<char, > > std::char_traits<char> >&, vtkIndent)in > libvtkRendering.a(vtkRenderWindow.o) > > > > vtkRenderWindow::PrintSelf(std::basic_ostream<char, > > std::char_traits<char> >&, vtkIndent)in > libvtkRendering.a(vtkRenderWindow.o) > > > > ..... > > > I have not compiled wxVTK in a while, but I suspect this is a static > linking issue. If you try to build with VTK shared libs on, do you get > the same error ? > I am guessing vtkCommon is missing from the explicit linking, but I > would need to see the compilation line to tell (make VERBOSE=1). > > 2cts > -- ABE Hiroshi from Tokorozwa, JAPAN |
From: ABE H. <ha...@gm...> - 2013-10-02 05:10:53
|
Hi, Now I'm working wxGTK2.9.5 and wxVTK. I got the latest version of wxVTK from the CVS server. I tried to build my code on UBUNTU 12.10 and got error regarding win_gtk.h. The header file gtk/private/win_gtk.h is not in the installed directory, saying /usr/local/include/wx-2.9/wx/. WX_PIZZA doesn't seem to be defined in the wxGTK headers. As a workaround, just copy the file "win_gtk.h" in the wxGTK2.9 source to the /usr/local/include and it seems to be okay. But I don't think this would be a good idea. Hiroshi On 2013/10/02, at 2:03, Sander Niemeijer wrote: > Update of /cvsroot/wxvtk/wxVTK/src > In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv18347 > > Modified Files: > wxVTKRenderWindowInteractor.cxx > Log Message: > Added missing includes that are needed for wx/gtk/private/win_gtk.h > > > Index: wxVTKRenderWindowInteractor.cxx > =================================================================== > RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v > retrieving revision 1.52 > retrieving revision 1.53 > diff -C2 -d -r1.52 -r1.53 > *** wxVTKRenderWindowInteractor.cxx 7 Feb 2012 21:48:59 -0000 1.52 > --- wxVTKRenderWindowInteractor.cxx 1 Oct 2013 17:03:38 -0000 1.53 > *************** > *** 78,81 **** > --- 78,83 ---- > #if wxCHECK_VERSION(2, 9, 0) > // thanks to: http://thomasfischer.biz/?p=382 > + #include <gtk/gtkfixed.h> > + #include <gtk/gtkwidget.h> > #include <wx/gtk/private/win_gtk.h> > #define piz(wxwin) WX_PIZZA((wxwin)->m_wxwindow) > > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the > most from > the latest Intel processors and coprocessors. See abstracts and > register > > http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk > _______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users ABE Hiroshi from Tokorozawa, JAPAN |
From: ABE H. <ha...@gm...> - 2013-10-02 05:09:00
|
Dear Sander, Thank you for information. I'll try another compiler. I wish if there would be some nice compiler switch in the default g++ to workaround the problem... Best regards, Hiroshi On 2013/10/02, at 1:41, Sander Niemeijer wrote: > Dear Hiroshi, > > I think this is due to the compiler that comes with XCode 3.2.6 > > I am using VTK 5.10.1, wxWidgets 2.9.5, CMake 2.8.11.1 and Xcode 5.0 > (which uses clang) on Mac OS X 10.8.5 and have no problems compiling > wxVTK. > > Best regards, > Sander > > On 1 okt. 2013, at 14:34, Hiroshi Abe <ha...@gm...> wrote: > >> Hi, >> >> I'm working on my code to port from 2.8 osx-carbon wxWidgets to 2.9 >> osx-cocoa. >> The code works without any problems on 2.8-carbon. >> >> Build VTK-5.4/VTK-5.10 in Cocoa mode and wxWidgets 2.9.5 in cocoa. >> Both are in release mode. >> >> In this situation, the Sample example of wxVTK outputs link error >> messages as; >> >> "std::basic_ostream<char, std::char_traits<char> >& >> std::__ostream_insert<char, std::char_traits<char> >> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, >> int)", referenced from: >> vtkOStreamWrapper::operator<<(unsigned char)in >> libvtkCommon.a(vtkOStreamWrapper.o) >> vtkOStreamWrapper::operator<<(char)in >> libvtkCommon.a(vtkOStreamWrapper.o) >> vtkOStreamWrapper::operator<<(char const*)in >> libvtkCommon.a(vtkOStreamWrapper.o) >> vtkRenderWindow::PrintSelf(std::basic_ostream<char, >> std::char_traits<char> >&, vtkIndent)in >> libvtkRendering.a(vtkRenderWindow.o) >> vtkRenderWindow::PrintSelf(std::basic_ostream<char, >> std::char_traits<char> >&, vtkIndent)in >> libvtkRendering.a(vtkRenderWindow.o) >> ..... >> >> My code also outputs the same error regarding ostream. >> >> It would be really appreciated if you could give me a hints to >> solve this problem. >> >> My env. is: >> PowerBook core duo, OSX10.6.8 >> wxWidgets 2.9.5, VTK-5.4.2, wxVTK-1.4. >> XCode 3.2.6. >> >> Thank you. >> >> -- >> ABE Hiroshi >> from Tokorozwa, JAPAN >> ------------------------------------------------------------------------------ >> October Webinars: Code for Performance >> Free Intel webinars can help you accelerate application performance. >> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the >> most from >> the latest Intel processors and coprocessors. See abstracts and >> register > >> http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk_______________________________________________ >> Wxvtk-users mailing list >> Wxv...@li... >> https://lists.sourceforge.net/lists/listinfo/wxvtk-users > ABE Hiroshi from Tokorozawa, JAPAN |
From: Mathieu M. <mat...@gm...> - 2013-10-02 05:03:05
|
On Tue, Oct 1, 2013 at 2:34 PM, Hiroshi Abe <ha...@gm...> wrote: > "std::basic_ostream<char, std::char_traits<char> >& > std::__ostream_insert<char, std::char_traits<char> >>(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)", > referenced from: > > vtkOStreamWrapper::operator<<(unsigned char)in > libvtkCommon.a(vtkOStreamWrapper.o) > > vtkOStreamWrapper::operator<<(char)in > libvtkCommon.a(vtkOStreamWrapper.o) > > vtkOStreamWrapper::operator<<(char const*)in > libvtkCommon.a(vtkOStreamWrapper.o) > > vtkRenderWindow::PrintSelf(std::basic_ostream<char, > std::char_traits<char> >&, vtkIndent)in libvtkRendering.a(vtkRenderWindow.o) > > vtkRenderWindow::PrintSelf(std::basic_ostream<char, > std::char_traits<char> >&, vtkIndent)in libvtkRendering.a(vtkRenderWindow.o) > > ..... I have not compiled wxVTK in a while, but I suspect this is a static linking issue. If you try to build with VTK shared libs on, do you get the same error ? I am guessing vtkCommon is missing from the explicit linking, but I would need to see the compilation line to tell (make VERBOSE=1). 2cts |
From: Sander N. <svn...@us...> - 2013-10-01 17:03:41
|
Update of /cvsroot/wxvtk/wxVTK/src In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv18347 Modified Files: wxVTKRenderWindowInteractor.cxx Log Message: Added missing includes that are needed for wx/gtk/private/win_gtk.h Index: wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -d -r1.52 -r1.53 *** wxVTKRenderWindowInteractor.cxx 7 Feb 2012 21:48:59 -0000 1.52 --- wxVTKRenderWindowInteractor.cxx 1 Oct 2013 17:03:38 -0000 1.53 *************** *** 78,81 **** --- 78,83 ---- #if wxCHECK_VERSION(2, 9, 0) // thanks to: http://thomasfischer.biz/?p=382 + #include <gtk/gtkfixed.h> + #include <gtk/gtkwidget.h> #include <wx/gtk/private/win_gtk.h> #define piz(wxwin) WX_PIZZA((wxwin)->m_wxwindow) |
From: Sander N. <nie...@st...> - 2013-10-01 16:54:06
|
Dear Hiroshi, I think this is due to the compiler that comes with XCode 3.2.6 I am using VTK 5.10.1, wxWidgets 2.9.5, CMake 2.8.11.1 and Xcode 5.0 (which uses clang) on Mac OS X 10.8.5 and have no problems compiling wxVTK. Best regards, Sander On 1 okt. 2013, at 14:34, Hiroshi Abe <ha...@gm...> wrote: > Hi, > > I'm working on my code to port from 2.8 osx-carbon wxWidgets to 2.9 osx-cocoa. > The code works without any problems on 2.8-carbon. > > Build VTK-5.4/VTK-5.10 in Cocoa mode and wxWidgets 2.9.5 in cocoa. > Both are in release mode. > > In this situation, the Sample example of wxVTK outputs link error messages as; > > "std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)", referenced from: > vtkOStreamWrapper::operator<<(unsigned char)in libvtkCommon.a(vtkOStreamWrapper.o) > vtkOStreamWrapper::operator<<(char)in libvtkCommon.a(vtkOStreamWrapper.o) > vtkOStreamWrapper::operator<<(char const*)in libvtkCommon.a(vtkOStreamWrapper.o) > vtkRenderWindow::PrintSelf(std::basic_ostream<char, std::char_traits<char> >&, vtkIndent)in libvtkRendering.a(vtkRenderWindow.o) > vtkRenderWindow::PrintSelf(std::basic_ostream<char, std::char_traits<char> >&, vtkIndent)in libvtkRendering.a(vtkRenderWindow.o) > ..... > > My code also outputs the same error regarding ostream. > > It would be really appreciated if you could give me a hints to solve this problem. > > My env. is: > PowerBook core duo, OSX10.6.8 > wxWidgets 2.9.5, VTK-5.4.2, wxVTK-1.4. > XCode 3.2.6. > > Thank you. > > -- > ABE Hiroshi > from Tokorozwa, JAPAN > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk_______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users |
From: Hiroshi A. <ha...@gm...> - 2013-10-01 12:34:27
|
Hi, I'm working on my code to port from 2.8 osx-carbon wxWidgets to 2.9 osx-cocoa. The code works without any problems on 2.8-carbon. Build VTK-5.4/VTK-5.10 in Cocoa mode and wxWidgets 2.9.5 in cocoa. Both are in release mode. In this situation, the Sample example of wxVTK outputs link error messages as; "std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)", referenced from: vtkOStreamWrapper::operator<<(unsigned char)in libvtkCommon.a(vtkOStreamWrapper.o) vtkOStreamWrapper::operator<<(char)in libvtkCommon.a(vtkOStreamWrapper.o) vtkOStreamWrapper::operator<<(char const*)in libvtkCommon.a(vtkOStreamWrapper.o) vtkRenderWindow::PrintSelf(std::basic_ostream<char, std::char_traits<char> >&, vtkIndent)in libvtkRendering.a(vtkRenderWindow.o) vtkRenderWindow::PrintSelf(std::basic_ostream<char, std::char_traits<char> >&, vtkIndent)in libvtkRendering.a(vtkRenderWindow.o) ..... My code also outputs the same error regarding ostream. It would be really appreciated if you could give me a hints to solve this problem. My env. is: PowerBook core duo, OSX10.6.8 wxWidgets 2.9.5, VTK-5.4.2, wxVTK-1.4. XCode 3.2.6. Thank you. -- ABE Hiroshi from Tokorozwa, JAPAN |
From: Tim H. <tim...@gm...> - 2012-02-07 22:03:04
|
I've committed 1.52 with the cleaned-up version of our changes for wx2.9 on GTK and MacOS: http://wxvtk.cvs.sourceforge.net/viewvc/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx?r1=1.51&r2=1.52 Personally tested on wxGTK with wx2.8 and wx2.9. (And based on code that is tested on wxOSX 2.9.) Let me know if there are any problems. Tim On 5 December 2011 14:19, Mathieu Malaterre <mat...@gm...> wrote: > Hi Tim, > > Thanks for the quick feedback. I just gave you write access to wxVTK > CVS. Would it be possible for you to directly incorported the needed > changes ? > > Thanks very much ! > > On Mon, Dec 5, 2011 at 3:08 PM, Tim Hutton <tim...@gm...> wrote: >> After further investigations it looks like we needed another change, >> to bring wxVTK into sync with vtk 5.8 on Cocoa: >> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn200&r=200&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >> >> With these changes the wxVTK samples are now reported to be working >> fully on Cocoa with wxOSX 2.9.x. >> >> CC'ing Andrew in case there are any questions. >> >> On 3 December 2011 17:34, Mathieu Malaterre <mat...@gm...> wrote: >>> Thanks everyone ! Very much appreciated for the quick feedback. >>> >>> On Thu, Dec 1, 2011 at 10:58 AM, Tim Hutton <tim...@gm...> wrote: >>>> Andrew Trevorrow has committed this fix to our version, to get it >>>> working on Cocoa in wxOSX 2.9.x. >>>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn199&r=199&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>>> >>>> I'm not on MacOS myself but he says it is needed. >>>> >>>> On 30 November 2011 14:47, Sander Niemeijer <nie...@st...> wrote: >>>>> Hi Mathieu, >>>>> >>>>> I did a quick compare of the current wxVTK CVS with what we are using >>>>> internally. There is currently one difference: >>>>> The patch below is to fix a redrawing issue we encountered on Windows >>>>> when windows got resized. It was something we fixed in September 2009, >>>>> so I don't know the precise details anymore. >>>>> >>>>> I would appreciate it if you could include this patch for v1.4. >>>>> >>>>> Best regards, >>>>> Sander Niemeijer >>>>> >>>>> --- cvs/wxVTKRenderWindowInteractor.cxx 2009-03-05 17:00:43.000000000 >>>>> +0100 >>>>> +++ new/wxVTKRenderWindowInteractor.cxx 2009-09-04 11:50:25.000000000 >>>>> +0200 >>>>> @@ -281,6 +281,9 @@ >>>>> Size[1] = y; >>>>> // and our RenderWindow's size >>>>> RenderWindow->SetSize(x, y); >>>>> +#if defined(__WXMSW__) >>>>> + this->Refresh(); >>>>> +#endif //__WXMSW__ >>>>> } >>>>> } >>>>> } >>>>> >>>>> >>>>> On 30 nov 2011, at 15:10, Mathieu Malaterre wrote: >>>>> >>>>>> Hi Tim, >>>>>> >>>>>> Ok will do. I'll do that on Friday. >>>>>> >>>>>> Everyone, >>>>>> >>>>>> Last call for integrating your patch in 1.4 release. You'll have to >>>>>> wait another ~3yrs or so otherwise ;) >>>>>> >>>>>> Thanks ! >>>>>> >>>>>> On Wed, Nov 30, 2011 at 1:03 PM, Tim Hutton <tim...@gm...> >>>>>> wrote: >>>>>>> Hello, >>>>>>> >>>>>>> I've just been bitten by the fact that the 1.3 download (from 2008) >>>>>>> is >>>>>>> older than some of the fixes in the CVS head. Specifically: the Timer >>>>>>> error has gone, and the Cocoa build wasn't working. I see there are >>>>>>> around 8 downloads a week so presumably all of these people are being >>>>>>> hit by these issues too! So please make a new download. >>>>>>> >>>>>>> And thankyou thankyou thankyou for maintaining wxVTK. I've been using >>>>>>> it continuously for several years now. >>>>>>> >>>>>>> -- >>>>>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>>>>>> >>>>>>> ------------------------------------------------------------------------------ >>>>>>> All the data continuously generated in your IT infrastructure >>>>>>> contains a definitive record of customers, application performance, >>>>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>> _______________________________________________ >>>>>>> Wxvtk-users mailing list >>>>>>> Wxv...@li... >>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Mathieu >>>>>> >>>>>> ------------------------------------------------------------------------------ >>>>>> All the data continuously generated in your IT infrastructure >>>>>> contains a definitive record of customers, application performance, >>>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>>> data and makes sense of it. IT sense. And common sense. >>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>> _______________________________________________ >>>>>> Wxvtk-users mailing list >>>>>> Wxv...@li... >>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> All the data continuously generated in your IT infrastructure >>>>> contains a definitive record of customers, application performance, >>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>> data and makes sense of it. IT sense. And common sense. >>>>> http://p.sf.net/sfu/splunk-novd2d >>>>> _______________________________________________ >>>>> Wxvtk-users mailing list >>>>> Wxv...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>> >>>> >>>> >>>> -- >>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>> >>> >>> >>> -- >>> Mathieu >> >> >> >> -- >> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >> >> ------------------------------------------------------------------------------ >> All the data continuously generated in your IT infrastructure >> contains a definitive record of customers, application performance, >> security threats, fraudulent activity, and more. Splunk takes this >> data and makes sense of it. IT sense. And common sense. >> http://p.sf.net/sfu/splunk-novd2d >> _______________________________________________ >> Wxvtk-users mailing list >> Wxv...@li... >> https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > > > -- > Mathieu -- Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ |
From: tim_hutton <tim...@us...> - 2012-02-07 21:49:01
|
Update of /cvsroot/wxvtk/wxVTK/src In directory vz-cvs-4.sog:/tmp/cvs-serv17473 Modified Files: wxVTKRenderWindowInteractor.cxx Log Message: FIX: updated for wx2.9 Index: wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -d -r1.51 -r1.52 *** wxVTKRenderWindowInteractor.cxx 2 Dec 2011 17:46:56 -0000 1.51 --- wxVTKRenderWindowInteractor.cxx 7 Feb 2012 21:48:59 -0000 1.52 *************** *** 38,41 **** --- 38,46 ---- #endif + #if defined(__WXMAC__) && wxCHECK_VERSION(2,9,0) + // ControlDown has been changed to mean Command key down + #define ControlDown RawControlDown + #endif + #ifdef __WXMAC__ #ifdef __WXCOCOA__ *************** *** 68,85 **** #ifdef __WXGTK__ ! # include <gdk/gdkx.h> // GDK_WINDOW_XWINDOW is found here in wxWidgets 2.8.0 ! # include "gdk/gdkprivate.h" ! #if wxCHECK_VERSION(2, 8, 0) ! #ifdef __WXGTK20__ ! #include <wx/gtk/win_gtk.h> ! #else ! #include <wx/gtk1/win_gtk.h> ! #endif ! #else ! #include <wx/gtk/win_gtk.h> ! #endif ! #define GetXWindow(wxwin) (wxwin)->m_wxwindow ? \ GDK_WINDOW_XWINDOW(GTK_PIZZA((wxwin)->m_wxwindow)->bin_window) : \ GDK_WINDOW_XWINDOW((wxwin)->m_widget->window) #endif --- 73,101 ---- #ifdef __WXGTK__ ! #include <gdk/gdkx.h> // GDK_WINDOW_XWINDOW is found here in wxWidgets 2.8.0 ! #include "gdk/gdkprivate.h" ! ! #if wxCHECK_VERSION(2, 9, 0) ! // thanks to: http://thomasfischer.biz/?p=382 ! #include <wx/gtk/private/win_gtk.h> ! #define piz(wxwin) WX_PIZZA((wxwin)->m_wxwindow) ! #define GetXWindow(wxwin) (wxwin)->m_wxwindow ? \ ! GDK_WINDOW_XWINDOW(((GtkWidget*)piz(wxwin))->window) : \ ! GDK_WINDOW_XWINDOW((wxwin)->m_widget->window) ! #else ! #if wxCHECK_VERSION(2, 8, 0) ! #ifdef __WXGTK20__ ! #include <wx/gtk/win_gtk.h> ! #else ! #include <wx/gtk1/win_gtk.h> ! #endif ! #else ! #include <wx/gtk/win_gtk.h> ! #endif ! ! #define GetXWindow(wxwin) (wxwin)->m_wxwindow ? \ GDK_WINDOW_XWINDOW(GTK_PIZZA((wxwin)->m_wxwindow)->bin_window) : \ GDK_WINDOW_XWINDOW((wxwin)->m_widget->window) + #endif #endif *************** *** 154,162 **** //--------------------------------------------------------------------------- #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) ! wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxGLCanvas(0, -1, wxDefaultPosition, wxDefaultSize, 0, wxT("wxVTKRenderWindowInteractor"), wxvtk_attributes), vtkRenderWindowInteractor() #else ! wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxWindow(), vtkRenderWindowInteractor() #endif //__WXGTK__ , timer(this, ID_wxVTKRenderWindowInteractor_TIMER) , ActiveButton(wxEVT_NULL) --- 170,186 ---- //--------------------------------------------------------------------------- + wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() + #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) ! #if wxCHECK_VERSION(2, 9, 0) // the order of the parameters to wxGLCanvas::wxGLCanvas has changed ! : wxGLCanvas(0, -1, wxvtk_attributes, wxDefaultPosition, wxDefaultSize, 0, wxT("wxVTKRenderWindowInteractor")), ! #else ! : wxGLCanvas(0, -1, wxDefaultPosition, wxDefaultSize, 0, wxT("wxVTKRenderWindowInteractor"), wxvtk_attributes), ! #endif #else ! : wxWindow(), #endif //__WXGTK__ + + vtkRenderWindowInteractor() , timer(this, ID_wxVTKRenderWindowInteractor_TIMER) , ActiveButton(wxEVT_NULL) *************** *** 182,189 **** const wxString &name) #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) ! : wxGLCanvas(parent, id, pos, size, style, name, wxvtk_attributes), vtkRenderWindowInteractor() #else ! : wxWindow(parent, id, pos, size, style, name), vtkRenderWindowInteractor() #endif //__WXGTK__ , timer(this, ID_wxVTKRenderWindowInteractor_TIMER) , ActiveButton(wxEVT_NULL) --- 206,218 ---- const wxString &name) #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) ! #if wxCHECK_VERSION(2, 9, 0) // the order of the parameters to wxGLCanvas::wxGLCanvas has changed ! : wxGLCanvas(parent, id, wxvtk_attributes, pos, size, style, name) ! #else ! : wxGLCanvas(parent, id, pos, size, style, name, wxvtk_attributes) ! #endif #else ! : wxWindow(parent, id, pos, size, style, name) #endif //__WXGTK__ + , vtkRenderWindowInteractor() , timer(this, ID_wxVTKRenderWindowInteractor_TIMER) , ActiveButton(wxEVT_NULL) *************** *** 362,366 **** // __WXMSW__ is for Win32 ! //__WXMAC__ stands for using Carbon C-headers, using either the CarbonLib/CFM or the native Mach-O builds (which then also use the latest features available) // __WXGTK__ is for both gtk 1.2.x and gtk 2.x #if defined(__WXMSW__) || defined(__WXMAC__) --- 391,395 ---- // __WXMSW__ is for Win32 ! // __WXMAC__ is for Carbon or Cocoa builds // __WXGTK__ is for both gtk 1.2.x and gtk 2.x #if defined(__WXMSW__) || defined(__WXMAC__) *************** *** 368,388 **** #endif //__WXMSW__ ! //__WXCOCOA__ stands for using the objective-c Cocoa API ! #ifdef __WXCOCOA__ // Here is how to find the NSWindow wxTopLevelWindow* toplevel = dynamic_cast<wxTopLevelWindow*>(wxGetTopLevelParent( this ) ); if (toplevel != NULL ) { ! // AKT: use new Cocoa code if wxOSX 2.9.x ! #if wxCHECK_VERSION(2, 9, 0) ! handle_tmp = (long)toplevel->GetWXWindow(); ! #else ! handle_tmp = (long)toplevel->GetNSWindow(); ! #endif } // The NSView will be deducted from // [(NSWindow*)Handle contentView] // if only I knew how to write that in c++ ! #endif //__WXCOCOA__ // Find and return the actual X-Window. --- 397,412 ---- #endif //__WXMSW__ ! // using above GetHandle() works fine with wxOSX 2.9.x ! #if defined(__WXCOCOA__) && !wxCHECK_VERSION(2, 9, 0) // Here is how to find the NSWindow wxTopLevelWindow* toplevel = dynamic_cast<wxTopLevelWindow*>(wxGetTopLevelParent( this ) ); if (toplevel != NULL ) { ! handle_tmp = (long)toplevel->GetNSWindow(); } // The NSView will be deducted from // [(NSWindow*)Handle contentView] // if only I knew how to write that in c++ ! #endif //__WXCOCOA__ && !wxCHECK_VERSION(2, 9, 0) // Find and return the actual X-Window. *************** *** 419,423 **** // glContext (because the display is closed). The Get -> Set makes this VTK // object think someone else is responsible for the display. ! this->RenderWindow->SetDisplayId(this->RenderWindow->GetGenericDisplayId()); } // get vtk to render to the wxWindows --- 443,451 ---- // glContext (because the display is closed). The Get -> Set makes this VTK // object think someone else is responsible for the display. ! #ifdef __WXCOCOA__ ! // avoid "Method not implemented" messages in Console ! #else ! this->RenderWindow->SetDisplayId(this->RenderWindow->GetGenericDisplayId()); ! #endif } // get vtk to render to the wxWindows *************** *** 427,435 **** // See also: http://sourceforge.net/mailarchive/forum.php?thread_id=31690967&forum_id=41789 #ifdef __WXCOCOA__ ! vtkCocoaRenderWindow * rwin = vtkCocoaRenderWindow::SafeDownCast(RenderWindow); ! if( rwin ) ! { ! rwin->UpdateContext(); ! } #else vtkCarbonRenderWindow* rwin = vtkCarbonRenderWindow::SafeDownCast(RenderWindow); --- 455,466 ---- // See also: http://sourceforge.net/mailarchive/forum.php?thread_id=31690967&forum_id=41789 #ifdef __WXCOCOA__ ! #if !wxCHECK_VERSION(2, 9, 0) ! // this doesn't seem necessary with wxOSX 2.9.x ! vtkCocoaRenderWindow * rwin = vtkCocoaRenderWindow::SafeDownCast(RenderWindow); ! if( rwin ) ! { ! rwin->UpdateContext(); ! } ! #endif #else vtkCarbonRenderWindow* rwin = vtkCarbonRenderWindow::SafeDownCast(RenderWindow); |
From: Andrew T. <an...@tr...> - 2011-12-06 22:25:54
|
Sander Niemeijer wrote: > I am a bit concerned about this patch. > It removes elements that could cause problems with wxWidgets 2.8 > (even if it is just the cocoa backend of wxWidgets 2.8). My changes shouldn't affect people using Carbon builds of wx 2.8.x. As I indicated in my previous message, I doubt there is anybody using Cocoa builds of wx 2.8.x, and their apps wouldn't have worked properly anyway. > And I am also not in favor of commenting out code the way the patch does. If code is no longer applicable please remove the whole section. Don't leave it there in between '/*' '*/'. All those changes were just a quick hack to get things working. I wanted to leave in the old code in case I needed to go back. Someone else (you or Mathieu) needs to remove my "AKT" comments and do any other tidying up. Andrew |
From: Andrew T. <an...@tr...> - 2011-12-06 22:09:59
|
[I've subscribed to wxvtk-users so no need to CC me any more.] Tim: > Yes, no problem. Andrew, do you think there would be a negative impact > on users of different vtk versions, or non-Cocoa users, or others? I'm pretty sure there won't be any problems. The only difference would be to people using the old Cocoa implementation in wx 2.8.x, but development stopped on that a few years ago so anybody wanting to use Cocoa with wxWidgets really has to use wx 2.9.x. Plus I doubt the old __WXCOCOA__ code in wxVTKRenderWindowInteractor.cxx ever really worked! GetHandleHack() returned a pointer to the NSWindow for the top level window, which is clearly wrong -- it meant rendering covered the entire client area of the top level window, so in the wxVTK samples you would never see the status bar (and in SplitSample you would only see one half). The only other potential problem is that my changes require VTK 5.8.0. If people try it with VTK 5.4.2 (installed by macports) then the sample apps (and our Ready.app) crash on starting up. I haven't bothered trying to fix that -- there are other bugs in 5.4.2 that make it a bad choice, such as the problems we saw with scroll wheel zooming. Andrew |
From: Sander N. <nie...@st...> - 2011-12-05 17:13:06
|
For our project we are still relying on wxWidgets 2.8 with Carbon for MacOSX. It is on my TODO list to have a look at Cocoa and wxWidgets 2.9, but this may be a while. So currently I am not in the position to test your commits yet (although I will definitely have a go at it in the future). I also don't know if anyone is actually using wxVTK together with wxWidgets 2.8 and the Cocoa backend. But just in case, it may be a good approach to include your changes using a wxCHECK_VERSION(2, 9, 0) just to keep the old 2.8 behaviour as-is. And note that you can use (e.g. line 412 in your patch): #if !defined(__WXCOCOA__) .... #endif instead of: #if __WXCOCOA__ #else .... #endif Best regards, Sander On 5 dec 2011, at 17:28, Tim Hutton wrote: > Yes, sorry, this diff is from our project, I wasn't proposing to apply > the same diff to wxVTK. Ideally we would understand the underlying > problem that Andrew managed to fix and apply a solution to wxVTK. > > I'm happy to commit some code that looks sensible along these lines > but it's slightly risky because I'm not on MacOS. Are you on > MacOS+Cocoa, Sander? We could give Andrew commit rights, if he has the > time to spend on this. > > On 5 December 2011 15:45, Sander Niemeijer <nie...@st...> > wrote: >> I am a bit concerned about this patch. >> It removes elements that could cause problems with wxWidgets 2.8 >> (even if it >> is just the cocoa backend of wxWidgets 2.8). Try to use >> wxCHECK_VERSION >> where this is needed. >> >> And I am also not in favor of commenting out code the way the patch >> does. If >> code is no longer applicable please remove the whole section. Don't >> leave it >> there in between '/*' '*/'. >> >> Best regards, >> Sander >> >> >> On 5 dec 2011, at 15:31, Tim Hutton wrote: >> >>> Hi Mathieu, >>> >>> Yes, no problem. Andrew, do you think there would be a negative >>> impact >>> on users of different vtk versions, or non-Cocoa users, or others? >>> >>> On 5 December 2011 14:19, Mathieu Malaterre <mat...@gm... >>> > >>> wrote: >>>> >>>> Hi Tim, >>>> >>>> Thanks for the quick feedback. I just gave you write access to >>>> wxVTK >>>> CVS. Would it be possible for you to directly incorported the >>>> needed >>>> changes ? >>>> >>>> Thanks very much ! >>>> >>>> On Mon, Dec 5, 2011 at 3:08 PM, Tim Hutton <tim...@gm...> >>>> wrote: >>>>> >>>>> After further investigations it looks like we needed another >>>>> change, >>>>> to bring wxVTK into sync with vtk 5.8 on Cocoa: >>>>> >>>>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn200&r=200&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>>>> >>>>> With these changes the wxVTK samples are now reported to be >>>>> working >>>>> fully on Cocoa with wxOSX 2.9.x. >>>>> >>>>> CC'ing Andrew in case there are any questions. >>>>> >>>>> On 3 December 2011 17:34, Mathieu Malaterre >>>>> <mat...@gm...> wrote: >>>>>> >>>>>> Thanks everyone ! Very much appreciated for the quick feedback. >>>>>> >>>>>> On Thu, Dec 1, 2011 at 10:58 AM, Tim Hutton >>>>>> <tim...@gm...> >>>>>> wrote: >>>>>>> >>>>>>> Andrew Trevorrow has committed this fix to our version, to get >>>>>>> it >>>>>>> working on Cocoa in wxOSX 2.9.x. >>>>>>> >>>>>>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn199&r=199&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>>>>>> >>>>>>> I'm not on MacOS myself but he says it is needed. >>>>>>> >>>>>>> On 30 November 2011 14:47, Sander Niemeijer >>>>>>> <nie...@st...> >>>>>>> wrote: >>>>>>>> >>>>>>>> Hi Mathieu, >>>>>>>> >>>>>>>> I did a quick compare of the current wxVTK CVS with what we >>>>>>>> are using >>>>>>>> internally. There is currently one difference: >>>>>>>> The patch below is to fix a redrawing issue we encountered on >>>>>>>> Windows >>>>>>>> when windows got resized. It was something we fixed in >>>>>>>> September >>>>>>>> 2009, >>>>>>>> so I don't know the precise details anymore. >>>>>>>> >>>>>>>> I would appreciate it if you could include this patch for v1.4. >>>>>>>> >>>>>>>> Best regards, >>>>>>>> Sander Niemeijer >>>>>>>> >>>>>>>> --- cvs/wxVTKRenderWindowInteractor.cxx 2009-03-05 >>>>>>>> 17:00:43.000000000 >>>>>>>> +0100 >>>>>>>> +++ new/wxVTKRenderWindowInteractor.cxx 2009-09-04 >>>>>>>> 11:50:25.000000000 >>>>>>>> +0200 >>>>>>>> @@ -281,6 +281,9 @@ >>>>>>>> Size[1] = y; >>>>>>>> // and our RenderWindow's size >>>>>>>> RenderWindow->SetSize(x, y); >>>>>>>> +#if defined(__WXMSW__) >>>>>>>> + this->Refresh(); >>>>>>>> +#endif //__WXMSW__ >>>>>>>> } >>>>>>>> } >>>>>>>> } >>>>>>>> >>>>>>>> >>>>>>>> On 30 nov 2011, at 15:10, Mathieu Malaterre wrote: >>>>>>>> >>>>>>>>> Hi Tim, >>>>>>>>> >>>>>>>>> Ok will do. I'll do that on Friday. >>>>>>>>> >>>>>>>>> Everyone, >>>>>>>>> >>>>>>>>> Last call for integrating your patch in 1.4 release. You'll >>>>>>>>> have to >>>>>>>>> wait another ~3yrs or so otherwise ;) >>>>>>>>> >>>>>>>>> Thanks ! >>>>>>>>> >>>>>>>>> On Wed, Nov 30, 2011 at 1:03 PM, Tim Hutton <tim...@gm... >>>>>>>>> > >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> Hello, >>>>>>>>>> >>>>>>>>>> I've just been bitten by the fact that the 1.3 download >>>>>>>>>> (from 2008) >>>>>>>>>> is >>>>>>>>>> older than some of the fixes in the CVS head. Specifically: >>>>>>>>>> the >>>>>>>>>> Timer >>>>>>>>>> error has gone, and the Cocoa build wasn't working. I see >>>>>>>>>> there are >>>>>>>>>> around 8 downloads a week so presumably all of these people >>>>>>>>>> are >>>>>>>>>> being >>>>>>>>>> hit by these issues too! So please make a new download. >>>>>>>>>> >>>>>>>>>> And thankyou thankyou thankyou for maintaining wxVTK. I've >>>>>>>>>> been >>>>>>>>>> using >>>>>>>>>> it continuously for several years now. >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Tim Hutton - http://www.sq3.org.uk - >>>>>>>>>> http://profiles.google.com/tim.hutton/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ------------------------------------------------------------------------------ >>>>>>>>>> All the data continuously generated in your IT infrastructure >>>>>>>>>> contains a definitive record of customers, application >>>>>>>>>> performance, >>>>>>>>>> security threats, fraudulent activity, and more. Splunk >>>>>>>>>> takes this >>>>>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>>>>> _______________________________________________ >>>>>>>>>> Wxvtk-users mailing list >>>>>>>>>> Wxv...@li... >>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Mathieu >>>>>>>>> >>>>>>>>> >>>>>>>>> ------------------------------------------------------------------------------ >>>>>>>>> All the data continuously generated in your IT infrastructure >>>>>>>>> contains a definitive record of customers, application >>>>>>>>> performance, >>>>>>>>> security threats, fraudulent activity, and more. Splunk >>>>>>>>> takes this >>>>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>>>> _______________________________________________ >>>>>>>>> Wxvtk-users mailing list >>>>>>>>> Wxv...@li... >>>>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> ------------------------------------------------------------------------------ >>>>>>>> All the data continuously generated in your IT infrastructure >>>>>>>> contains a definitive record of customers, application >>>>>>>> performance, >>>>>>>> security threats, fraudulent activity, and more. Splunk takes >>>>>>>> this >>>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>>> _______________________________________________ >>>>>>>> Wxvtk-users mailing list >>>>>>>> Wxv...@li... >>>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Tim Hutton - http://www.sq3.org.uk - >>>>>>> http://profiles.google.com/tim.hutton/ >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Mathieu >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Tim Hutton - http://www.sq3.org.uk - >>>>> http://profiles.google.com/tim.hutton/ >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> All the data continuously generated in your IT infrastructure >>>>> contains a definitive record of customers, application >>>>> performance, >>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>> data and makes sense of it. IT sense. And common sense. >>>>> http://p.sf.net/sfu/splunk-novd2d >>>>> _______________________________________________ >>>>> Wxvtk-users mailing list >>>>> Wxv...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>> >>>> >>>> >>>> >>>> -- >>>> Mathieu >>> >>> >>> >>> >>> -- >>> Tim Hutton - http://www.sq3.org.uk - >>> http://profiles.google.com/tim.hutton/ >>> >>> >>> ------------------------------------------------------------------------------ >>> All the data continuously generated in your IT infrastructure >>> contains a definitive record of customers, application performance, >>> security threats, fraudulent activity, and more. Splunk takes this >>> data and makes sense of it. IT sense. And common sense. >>> http://p.sf.net/sfu/splunk-novd2d >>> _______________________________________________ >>> Wxvtk-users mailing list >>> Wxv...@li... >>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >> >> > > > > -- > Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users |
From: Tim H. <tim...@gm...> - 2011-12-05 16:28:34
|
Yes, sorry, this diff is from our project, I wasn't proposing to apply the same diff to wxVTK. Ideally we would understand the underlying problem that Andrew managed to fix and apply a solution to wxVTK. I'm happy to commit some code that looks sensible along these lines but it's slightly risky because I'm not on MacOS. Are you on MacOS+Cocoa, Sander? We could give Andrew commit rights, if he has the time to spend on this. On 5 December 2011 15:45, Sander Niemeijer <nie...@st...> wrote: > I am a bit concerned about this patch. > It removes elements that could cause problems with wxWidgets 2.8 (even if it > is just the cocoa backend of wxWidgets 2.8). Try to use wxCHECK_VERSION > where this is needed. > > And I am also not in favor of commenting out code the way the patch does. If > code is no longer applicable please remove the whole section. Don't leave it > there in between '/*' '*/'. > > Best regards, > Sander > > > On 5 dec 2011, at 15:31, Tim Hutton wrote: > >> Hi Mathieu, >> >> Yes, no problem. Andrew, do you think there would be a negative impact >> on users of different vtk versions, or non-Cocoa users, or others? >> >> On 5 December 2011 14:19, Mathieu Malaterre <mat...@gm...> >> wrote: >>> >>> Hi Tim, >>> >>> Thanks for the quick feedback. I just gave you write access to wxVTK >>> CVS. Would it be possible for you to directly incorported the needed >>> changes ? >>> >>> Thanks very much ! >>> >>> On Mon, Dec 5, 2011 at 3:08 PM, Tim Hutton <tim...@gm...> wrote: >>>> >>>> After further investigations it looks like we needed another change, >>>> to bring wxVTK into sync with vtk 5.8 on Cocoa: >>>> >>>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn200&r=200&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>>> >>>> With these changes the wxVTK samples are now reported to be working >>>> fully on Cocoa with wxOSX 2.9.x. >>>> >>>> CC'ing Andrew in case there are any questions. >>>> >>>> On 3 December 2011 17:34, Mathieu Malaterre >>>> <mat...@gm...> wrote: >>>>> >>>>> Thanks everyone ! Very much appreciated for the quick feedback. >>>>> >>>>> On Thu, Dec 1, 2011 at 10:58 AM, Tim Hutton <tim...@gm...> >>>>> wrote: >>>>>> >>>>>> Andrew Trevorrow has committed this fix to our version, to get it >>>>>> working on Cocoa in wxOSX 2.9.x. >>>>>> >>>>>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn199&r=199&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>>>>> >>>>>> I'm not on MacOS myself but he says it is needed. >>>>>> >>>>>> On 30 November 2011 14:47, Sander Niemeijer <nie...@st...> >>>>>> wrote: >>>>>>> >>>>>>> Hi Mathieu, >>>>>>> >>>>>>> I did a quick compare of the current wxVTK CVS with what we are using >>>>>>> internally. There is currently one difference: >>>>>>> The patch below is to fix a redrawing issue we encountered on Windows >>>>>>> when windows got resized. It was something we fixed in September >>>>>>> 2009, >>>>>>> so I don't know the precise details anymore. >>>>>>> >>>>>>> I would appreciate it if you could include this patch for v1.4. >>>>>>> >>>>>>> Best regards, >>>>>>> Sander Niemeijer >>>>>>> >>>>>>> --- cvs/wxVTKRenderWindowInteractor.cxx 2009-03-05 17:00:43.000000000 >>>>>>> +0100 >>>>>>> +++ new/wxVTKRenderWindowInteractor.cxx 2009-09-04 11:50:25.000000000 >>>>>>> +0200 >>>>>>> @@ -281,6 +281,9 @@ >>>>>>> Size[1] = y; >>>>>>> // and our RenderWindow's size >>>>>>> RenderWindow->SetSize(x, y); >>>>>>> +#if defined(__WXMSW__) >>>>>>> + this->Refresh(); >>>>>>> +#endif //__WXMSW__ >>>>>>> } >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> >>>>>>> On 30 nov 2011, at 15:10, Mathieu Malaterre wrote: >>>>>>> >>>>>>>> Hi Tim, >>>>>>>> >>>>>>>> Ok will do. I'll do that on Friday. >>>>>>>> >>>>>>>> Everyone, >>>>>>>> >>>>>>>> Last call for integrating your patch in 1.4 release. You'll have to >>>>>>>> wait another ~3yrs or so otherwise ;) >>>>>>>> >>>>>>>> Thanks ! >>>>>>>> >>>>>>>> On Wed, Nov 30, 2011 at 1:03 PM, Tim Hutton <tim...@gm...> >>>>>>>> wrote: >>>>>>>>> >>>>>>>>> Hello, >>>>>>>>> >>>>>>>>> I've just been bitten by the fact that the 1.3 download (from 2008) >>>>>>>>> is >>>>>>>>> older than some of the fixes in the CVS head. Specifically: the >>>>>>>>> Timer >>>>>>>>> error has gone, and the Cocoa build wasn't working. I see there are >>>>>>>>> around 8 downloads a week so presumably all of these people are >>>>>>>>> being >>>>>>>>> hit by these issues too! So please make a new download. >>>>>>>>> >>>>>>>>> And thankyou thankyou thankyou for maintaining wxVTK. I've been >>>>>>>>> using >>>>>>>>> it continuously for several years now. >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Tim Hutton - http://www.sq3.org.uk - >>>>>>>>> http://profiles.google.com/tim.hutton/ >>>>>>>>> >>>>>>>>> >>>>>>>>> ------------------------------------------------------------------------------ >>>>>>>>> All the data continuously generated in your IT infrastructure >>>>>>>>> contains a definitive record of customers, application performance, >>>>>>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>>>> _______________________________________________ >>>>>>>>> Wxvtk-users mailing list >>>>>>>>> Wxv...@li... >>>>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Mathieu >>>>>>>> >>>>>>>> >>>>>>>> ------------------------------------------------------------------------------ >>>>>>>> All the data continuously generated in your IT infrastructure >>>>>>>> contains a definitive record of customers, application performance, >>>>>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>>> _______________________________________________ >>>>>>>> Wxvtk-users mailing list >>>>>>>> Wxv...@li... >>>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------------------------------------------------------ >>>>>>> All the data continuously generated in your IT infrastructure >>>>>>> contains a definitive record of customers, application performance, >>>>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>> _______________________________________________ >>>>>>> Wxvtk-users mailing list >>>>>>> Wxv...@li... >>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Tim Hutton - http://www.sq3.org.uk - >>>>>> http://profiles.google.com/tim.hutton/ >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Mathieu >>>> >>>> >>>> >>>> >>>> -- >>>> Tim Hutton - http://www.sq3.org.uk - >>>> http://profiles.google.com/tim.hutton/ >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> All the data continuously generated in your IT infrastructure >>>> contains a definitive record of customers, application performance, >>>> security threats, fraudulent activity, and more. Splunk takes this >>>> data and makes sense of it. IT sense. And common sense. >>>> http://p.sf.net/sfu/splunk-novd2d >>>> _______________________________________________ >>>> Wxvtk-users mailing list >>>> Wxv...@li... >>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>> >>> >>> >>> >>> -- >>> Mathieu >> >> >> >> >> -- >> Tim Hutton - http://www.sq3.org.uk - >> http://profiles.google.com/tim.hutton/ >> >> >> ------------------------------------------------------------------------------ >> All the data continuously generated in your IT infrastructure >> contains a definitive record of customers, application performance, >> security threats, fraudulent activity, and more. Splunk takes this >> data and makes sense of it. IT sense. And common sense. >> http://p.sf.net/sfu/splunk-novd2d >> _______________________________________________ >> Wxvtk-users mailing list >> Wxv...@li... >> https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > -- Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ |
From: Sander N. <nie...@st...> - 2011-12-05 15:45:54
|
I am a bit concerned about this patch. It removes elements that could cause problems with wxWidgets 2.8 (even if it is just the cocoa backend of wxWidgets 2.8). Try to use wxCHECK_VERSION where this is needed. And I am also not in favor of commenting out code the way the patch does. If code is no longer applicable please remove the whole section. Don't leave it there in between '/*' '*/'. Best regards, Sander On 5 dec 2011, at 15:31, Tim Hutton wrote: > Hi Mathieu, > > Yes, no problem. Andrew, do you think there would be a negative impact > on users of different vtk versions, or non-Cocoa users, or others? > > On 5 December 2011 14:19, Mathieu Malaterre <mat...@gm... > > wrote: >> Hi Tim, >> >> Thanks for the quick feedback. I just gave you write access to wxVTK >> CVS. Would it be possible for you to directly incorported the needed >> changes ? >> >> Thanks very much ! >> >> On Mon, Dec 5, 2011 at 3:08 PM, Tim Hutton <tim...@gm...> >> wrote: >>> After further investigations it looks like we needed another change, >>> to bring wxVTK into sync with vtk 5.8 on Cocoa: >>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn200&r=200&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>> >>> With these changes the wxVTK samples are now reported to be working >>> fully on Cocoa with wxOSX 2.9.x. >>> >>> CC'ing Andrew in case there are any questions. >>> >>> On 3 December 2011 17:34, Mathieu Malaterre <mat...@gm... >>> > wrote: >>>> Thanks everyone ! Very much appreciated for the quick feedback. >>>> >>>> On Thu, Dec 1, 2011 at 10:58 AM, Tim Hutton >>>> <tim...@gm...> wrote: >>>>> Andrew Trevorrow has committed this fix to our version, to get it >>>>> working on Cocoa in wxOSX 2.9.x. >>>>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn199&r=199&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>>>> >>>>> I'm not on MacOS myself but he says it is needed. >>>>> >>>>> On 30 November 2011 14:47, Sander Niemeijer >>>>> <nie...@st...> wrote: >>>>>> Hi Mathieu, >>>>>> >>>>>> I did a quick compare of the current wxVTK CVS with what we are >>>>>> using >>>>>> internally. There is currently one difference: >>>>>> The patch below is to fix a redrawing issue we encountered on >>>>>> Windows >>>>>> when windows got resized. It was something we fixed in >>>>>> September 2009, >>>>>> so I don't know the precise details anymore. >>>>>> >>>>>> I would appreciate it if you could include this patch for v1.4. >>>>>> >>>>>> Best regards, >>>>>> Sander Niemeijer >>>>>> >>>>>> --- cvs/wxVTKRenderWindowInteractor.cxx 2009-03-05 >>>>>> 17:00:43.000000000 >>>>>> +0100 >>>>>> +++ new/wxVTKRenderWindowInteractor.cxx 2009-09-04 >>>>>> 11:50:25.000000000 >>>>>> +0200 >>>>>> @@ -281,6 +281,9 @@ >>>>>> Size[1] = y; >>>>>> // and our RenderWindow's size >>>>>> RenderWindow->SetSize(x, y); >>>>>> +#if defined(__WXMSW__) >>>>>> + this->Refresh(); >>>>>> +#endif //__WXMSW__ >>>>>> } >>>>>> } >>>>>> } >>>>>> >>>>>> >>>>>> On 30 nov 2011, at 15:10, Mathieu Malaterre wrote: >>>>>> >>>>>>> Hi Tim, >>>>>>> >>>>>>> Ok will do. I'll do that on Friday. >>>>>>> >>>>>>> Everyone, >>>>>>> >>>>>>> Last call for integrating your patch in 1.4 release. You'll >>>>>>> have to >>>>>>> wait another ~3yrs or so otherwise ;) >>>>>>> >>>>>>> Thanks ! >>>>>>> >>>>>>> On Wed, Nov 30, 2011 at 1:03 PM, Tim Hutton <tim...@gm... >>>>>>> > >>>>>>> wrote: >>>>>>>> Hello, >>>>>>>> >>>>>>>> I've just been bitten by the fact that the 1.3 download (from >>>>>>>> 2008) >>>>>>>> is >>>>>>>> older than some of the fixes in the CVS head. Specifically: >>>>>>>> the Timer >>>>>>>> error has gone, and the Cocoa build wasn't working. I see >>>>>>>> there are >>>>>>>> around 8 downloads a week so presumably all of these people >>>>>>>> are being >>>>>>>> hit by these issues too! So please make a new download. >>>>>>>> >>>>>>>> And thankyou thankyou thankyou for maintaining wxVTK. I've >>>>>>>> been using >>>>>>>> it continuously for several years now. >>>>>>>> >>>>>>>> -- >>>>>>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>>>>>>> >>>>>>>> ------------------------------------------------------------------------------ >>>>>>>> All the data continuously generated in your IT infrastructure >>>>>>>> contains a definitive record of customers, application >>>>>>>> performance, >>>>>>>> security threats, fraudulent activity, and more. Splunk takes >>>>>>>> this >>>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>>> _______________________________________________ >>>>>>>> Wxvtk-users mailing list >>>>>>>> Wxv...@li... >>>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Mathieu >>>>>>> >>>>>>> ------------------------------------------------------------------------------ >>>>>>> All the data continuously generated in your IT infrastructure >>>>>>> contains a definitive record of customers, application >>>>>>> performance, >>>>>>> security threats, fraudulent activity, and more. Splunk takes >>>>>>> this >>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>> _______________________________________________ >>>>>>> Wxvtk-users mailing list >>>>>>> Wxv...@li... >>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>> >>>>>> >>>>>> ------------------------------------------------------------------------------ >>>>>> All the data continuously generated in your IT infrastructure >>>>>> contains a definitive record of customers, application >>>>>> performance, >>>>>> security threats, fraudulent activity, and more. Splunk takes >>>>>> this >>>>>> data and makes sense of it. IT sense. And common sense. >>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>> _______________________________________________ >>>>>> Wxvtk-users mailing list >>>>>> Wxv...@li... >>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>> >>>>> >>>>> >>>>> -- >>>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>>> >>>> >>>> >>>> -- >>>> Mathieu >>> >>> >>> >>> -- >>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>> >>> ------------------------------------------------------------------------------ >>> All the data continuously generated in your IT infrastructure >>> contains a definitive record of customers, application performance, >>> security threats, fraudulent activity, and more. Splunk takes this >>> data and makes sense of it. IT sense. And common sense. >>> http://p.sf.net/sfu/splunk-novd2d >>> _______________________________________________ >>> Wxvtk-users mailing list >>> Wxv...@li... >>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >> >> >> >> -- >> Mathieu > > > > -- > Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users |
From: Tim H. <tim...@gm...> - 2011-12-05 14:32:24
|
Hi Mathieu, Yes, no problem. Andrew, do you think there would be a negative impact on users of different vtk versions, or non-Cocoa users, or others? On 5 December 2011 14:19, Mathieu Malaterre <mat...@gm...> wrote: > Hi Tim, > > Thanks for the quick feedback. I just gave you write access to wxVTK > CVS. Would it be possible for you to directly incorported the needed > changes ? > > Thanks very much ! > > On Mon, Dec 5, 2011 at 3:08 PM, Tim Hutton <tim...@gm...> wrote: >> After further investigations it looks like we needed another change, >> to bring wxVTK into sync with vtk 5.8 on Cocoa: >> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn200&r=200&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >> >> With these changes the wxVTK samples are now reported to be working >> fully on Cocoa with wxOSX 2.9.x. >> >> CC'ing Andrew in case there are any questions. >> >> On 3 December 2011 17:34, Mathieu Malaterre <mat...@gm...> wrote: >>> Thanks everyone ! Very much appreciated for the quick feedback. >>> >>> On Thu, Dec 1, 2011 at 10:58 AM, Tim Hutton <tim...@gm...> wrote: >>>> Andrew Trevorrow has committed this fix to our version, to get it >>>> working on Cocoa in wxOSX 2.9.x. >>>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn199&r=199&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>>> >>>> I'm not on MacOS myself but he says it is needed. >>>> >>>> On 30 November 2011 14:47, Sander Niemeijer <nie...@st...> wrote: >>>>> Hi Mathieu, >>>>> >>>>> I did a quick compare of the current wxVTK CVS with what we are using >>>>> internally. There is currently one difference: >>>>> The patch below is to fix a redrawing issue we encountered on Windows >>>>> when windows got resized. It was something we fixed in September 2009, >>>>> so I don't know the precise details anymore. >>>>> >>>>> I would appreciate it if you could include this patch for v1.4. >>>>> >>>>> Best regards, >>>>> Sander Niemeijer >>>>> >>>>> --- cvs/wxVTKRenderWindowInteractor.cxx 2009-03-05 17:00:43.000000000 >>>>> +0100 >>>>> +++ new/wxVTKRenderWindowInteractor.cxx 2009-09-04 11:50:25.000000000 >>>>> +0200 >>>>> @@ -281,6 +281,9 @@ >>>>> Size[1] = y; >>>>> // and our RenderWindow's size >>>>> RenderWindow->SetSize(x, y); >>>>> +#if defined(__WXMSW__) >>>>> + this->Refresh(); >>>>> +#endif //__WXMSW__ >>>>> } >>>>> } >>>>> } >>>>> >>>>> >>>>> On 30 nov 2011, at 15:10, Mathieu Malaterre wrote: >>>>> >>>>>> Hi Tim, >>>>>> >>>>>> Ok will do. I'll do that on Friday. >>>>>> >>>>>> Everyone, >>>>>> >>>>>> Last call for integrating your patch in 1.4 release. You'll have to >>>>>> wait another ~3yrs or so otherwise ;) >>>>>> >>>>>> Thanks ! >>>>>> >>>>>> On Wed, Nov 30, 2011 at 1:03 PM, Tim Hutton <tim...@gm...> >>>>>> wrote: >>>>>>> Hello, >>>>>>> >>>>>>> I've just been bitten by the fact that the 1.3 download (from 2008) >>>>>>> is >>>>>>> older than some of the fixes in the CVS head. Specifically: the Timer >>>>>>> error has gone, and the Cocoa build wasn't working. I see there are >>>>>>> around 8 downloads a week so presumably all of these people are being >>>>>>> hit by these issues too! So please make a new download. >>>>>>> >>>>>>> And thankyou thankyou thankyou for maintaining wxVTK. I've been using >>>>>>> it continuously for several years now. >>>>>>> >>>>>>> -- >>>>>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>>>>>> >>>>>>> ------------------------------------------------------------------------------ >>>>>>> All the data continuously generated in your IT infrastructure >>>>>>> contains a definitive record of customers, application performance, >>>>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>>>> data and makes sense of it. IT sense. And common sense. >>>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>>> _______________________________________________ >>>>>>> Wxvtk-users mailing list >>>>>>> Wxv...@li... >>>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Mathieu >>>>>> >>>>>> ------------------------------------------------------------------------------ >>>>>> All the data continuously generated in your IT infrastructure >>>>>> contains a definitive record of customers, application performance, >>>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>>> data and makes sense of it. IT sense. And common sense. >>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>> _______________________________________________ >>>>>> Wxvtk-users mailing list >>>>>> Wxv...@li... >>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> All the data continuously generated in your IT infrastructure >>>>> contains a definitive record of customers, application performance, >>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>> data and makes sense of it. IT sense. And common sense. >>>>> http://p.sf.net/sfu/splunk-novd2d >>>>> _______________________________________________ >>>>> Wxvtk-users mailing list >>>>> Wxv...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>> >>>> >>>> >>>> -- >>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>> >>> >>> >>> -- >>> Mathieu >> >> >> >> -- >> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >> >> ------------------------------------------------------------------------------ >> All the data continuously generated in your IT infrastructure >> contains a definitive record of customers, application performance, >> security threats, fraudulent activity, and more. Splunk takes this >> data and makes sense of it. IT sense. And common sense. >> http://p.sf.net/sfu/splunk-novd2d >> _______________________________________________ >> Wxvtk-users mailing list >> Wxv...@li... >> https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > > > -- > Mathieu -- Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ |
From: Mathieu M. <mat...@gm...> - 2011-12-05 14:20:17
|
Hi Tim, Thanks for the quick feedback. I just gave you write access to wxVTK CVS. Would it be possible for you to directly incorported the needed changes ? Thanks very much ! On Mon, Dec 5, 2011 at 3:08 PM, Tim Hutton <tim...@gm...> wrote: > After further investigations it looks like we needed another change, > to bring wxVTK into sync with vtk 5.8 on Cocoa: > https://code.google.com/p/reaction-diffusion/source/diff?spec=svn200&r=200&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx > > With these changes the wxVTK samples are now reported to be working > fully on Cocoa with wxOSX 2.9.x. > > CC'ing Andrew in case there are any questions. > > On 3 December 2011 17:34, Mathieu Malaterre <mat...@gm...> wrote: >> Thanks everyone ! Very much appreciated for the quick feedback. >> >> On Thu, Dec 1, 2011 at 10:58 AM, Tim Hutton <tim...@gm...> wrote: >>> Andrew Trevorrow has committed this fix to our version, to get it >>> working on Cocoa in wxOSX 2.9.x. >>> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn199&r=199&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >>> >>> I'm not on MacOS myself but he says it is needed. >>> >>> On 30 November 2011 14:47, Sander Niemeijer <nie...@st...> wrote: >>>> Hi Mathieu, >>>> >>>> I did a quick compare of the current wxVTK CVS with what we are using >>>> internally. There is currently one difference: >>>> The patch below is to fix a redrawing issue we encountered on Windows >>>> when windows got resized. It was something we fixed in September 2009, >>>> so I don't know the precise details anymore. >>>> >>>> I would appreciate it if you could include this patch for v1.4. >>>> >>>> Best regards, >>>> Sander Niemeijer >>>> >>>> --- cvs/wxVTKRenderWindowInteractor.cxx 2009-03-05 17:00:43.000000000 >>>> +0100 >>>> +++ new/wxVTKRenderWindowInteractor.cxx 2009-09-04 11:50:25.000000000 >>>> +0200 >>>> @@ -281,6 +281,9 @@ >>>> Size[1] = y; >>>> // and our RenderWindow's size >>>> RenderWindow->SetSize(x, y); >>>> +#if defined(__WXMSW__) >>>> + this->Refresh(); >>>> +#endif //__WXMSW__ >>>> } >>>> } >>>> } >>>> >>>> >>>> On 30 nov 2011, at 15:10, Mathieu Malaterre wrote: >>>> >>>>> Hi Tim, >>>>> >>>>> Ok will do. I'll do that on Friday. >>>>> >>>>> Everyone, >>>>> >>>>> Last call for integrating your patch in 1.4 release. You'll have to >>>>> wait another ~3yrs or so otherwise ;) >>>>> >>>>> Thanks ! >>>>> >>>>> On Wed, Nov 30, 2011 at 1:03 PM, Tim Hutton <tim...@gm...> >>>>> wrote: >>>>>> Hello, >>>>>> >>>>>> I've just been bitten by the fact that the 1.3 download (from 2008) >>>>>> is >>>>>> older than some of the fixes in the CVS head. Specifically: the Timer >>>>>> error has gone, and the Cocoa build wasn't working. I see there are >>>>>> around 8 downloads a week so presumably all of these people are being >>>>>> hit by these issues too! So please make a new download. >>>>>> >>>>>> And thankyou thankyou thankyou for maintaining wxVTK. I've been using >>>>>> it continuously for several years now. >>>>>> >>>>>> -- >>>>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>>>>> >>>>>> ------------------------------------------------------------------------------ >>>>>> All the data continuously generated in your IT infrastructure >>>>>> contains a definitive record of customers, application performance, >>>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>>> data and makes sense of it. IT sense. And common sense. >>>>>> http://p.sf.net/sfu/splunk-novd2d >>>>>> _______________________________________________ >>>>>> Wxvtk-users mailing list >>>>>> Wxv...@li... >>>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Mathieu >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> All the data continuously generated in your IT infrastructure >>>>> contains a definitive record of customers, application performance, >>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>> data and makes sense of it. IT sense. And common sense. >>>>> http://p.sf.net/sfu/splunk-novd2d >>>>> _______________________________________________ >>>>> Wxvtk-users mailing list >>>>> Wxv...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> All the data continuously generated in your IT infrastructure >>>> contains a definitive record of customers, application performance, >>>> security threats, fraudulent activity, and more. Splunk takes this >>>> data and makes sense of it. IT sense. And common sense. >>>> http://p.sf.net/sfu/splunk-novd2d >>>> _______________________________________________ >>>> Wxvtk-users mailing list >>>> Wxv...@li... >>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>> >>> >>> >>> -- >>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >> >> >> >> -- >> Mathieu > > > > -- > Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users -- Mathieu |
From: Tim H. <tim...@gm...> - 2011-12-05 14:09:24
|
After further investigations it looks like we needed another change, to bring wxVTK into sync with vtk 5.8 on Cocoa: https://code.google.com/p/reaction-diffusion/source/diff?spec=svn200&r=200&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx With these changes the wxVTK samples are now reported to be working fully on Cocoa with wxOSX 2.9.x. CC'ing Andrew in case there are any questions. On 3 December 2011 17:34, Mathieu Malaterre <mat...@gm...> wrote: > Thanks everyone ! Very much appreciated for the quick feedback. > > On Thu, Dec 1, 2011 at 10:58 AM, Tim Hutton <tim...@gm...> wrote: >> Andrew Trevorrow has committed this fix to our version, to get it >> working on Cocoa in wxOSX 2.9.x. >> https://code.google.com/p/reaction-diffusion/source/diff?spec=svn199&r=199&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx >> >> I'm not on MacOS myself but he says it is needed. >> >> On 30 November 2011 14:47, Sander Niemeijer <nie...@st...> wrote: >>> Hi Mathieu, >>> >>> I did a quick compare of the current wxVTK CVS with what we are using >>> internally. There is currently one difference: >>> The patch below is to fix a redrawing issue we encountered on Windows >>> when windows got resized. It was something we fixed in September 2009, >>> so I don't know the precise details anymore. >>> >>> I would appreciate it if you could include this patch for v1.4. >>> >>> Best regards, >>> Sander Niemeijer >>> >>> --- cvs/wxVTKRenderWindowInteractor.cxx 2009-03-05 17:00:43.000000000 >>> +0100 >>> +++ new/wxVTKRenderWindowInteractor.cxx 2009-09-04 11:50:25.000000000 >>> +0200 >>> @@ -281,6 +281,9 @@ >>> Size[1] = y; >>> // and our RenderWindow's size >>> RenderWindow->SetSize(x, y); >>> +#if defined(__WXMSW__) >>> + this->Refresh(); >>> +#endif //__WXMSW__ >>> } >>> } >>> } >>> >>> >>> On 30 nov 2011, at 15:10, Mathieu Malaterre wrote: >>> >>>> Hi Tim, >>>> >>>> Ok will do. I'll do that on Friday. >>>> >>>> Everyone, >>>> >>>> Last call for integrating your patch in 1.4 release. You'll have to >>>> wait another ~3yrs or so otherwise ;) >>>> >>>> Thanks ! >>>> >>>> On Wed, Nov 30, 2011 at 1:03 PM, Tim Hutton <tim...@gm...> >>>> wrote: >>>>> Hello, >>>>> >>>>> I've just been bitten by the fact that the 1.3 download (from 2008) >>>>> is >>>>> older than some of the fixes in the CVS head. Specifically: the Timer >>>>> error has gone, and the Cocoa build wasn't working. I see there are >>>>> around 8 downloads a week so presumably all of these people are being >>>>> hit by these issues too! So please make a new download. >>>>> >>>>> And thankyou thankyou thankyou for maintaining wxVTK. I've been using >>>>> it continuously for several years now. >>>>> >>>>> -- >>>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> All the data continuously generated in your IT infrastructure >>>>> contains a definitive record of customers, application performance, >>>>> security threats, fraudulent activity, and more. Splunk takes this >>>>> data and makes sense of it. IT sense. And common sense. >>>>> http://p.sf.net/sfu/splunk-novd2d >>>>> _______________________________________________ >>>>> Wxvtk-users mailing list >>>>> Wxv...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>>> >>>> >>>> >>>> >>>> -- >>>> Mathieu >>>> >>>> ------------------------------------------------------------------------------ >>>> All the data continuously generated in your IT infrastructure >>>> contains a definitive record of customers, application performance, >>>> security threats, fraudulent activity, and more. Splunk takes this >>>> data and makes sense of it. IT sense. And common sense. >>>> http://p.sf.net/sfu/splunk-novd2d >>>> _______________________________________________ >>>> Wxvtk-users mailing list >>>> Wxv...@li... >>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>> >>> >>> ------------------------------------------------------------------------------ >>> All the data continuously generated in your IT infrastructure >>> contains a definitive record of customers, application performance, >>> security threats, fraudulent activity, and more. Splunk takes this >>> data and makes sense of it. IT sense. And common sense. >>> http://p.sf.net/sfu/splunk-novd2d >>> _______________________________________________ >>> Wxvtk-users mailing list >>> Wxv...@li... >>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >> >> >> >> -- >> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ > > > > -- > Mathieu -- Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ |
From: Mathieu M. <mat...@gm...> - 2011-12-03 17:35:03
|
Thanks everyone ! Very much appreciated for the quick feedback. On Thu, Dec 1, 2011 at 10:58 AM, Tim Hutton <tim...@gm...> wrote: > Andrew Trevorrow has committed this fix to our version, to get it > working on Cocoa in wxOSX 2.9.x. > https://code.google.com/p/reaction-diffusion/source/diff?spec=svn199&r=199&format=side&path=/trunk/ReaDy_gui/wxVTKRenderWindowInteractor.cxx > > I'm not on MacOS myself but he says it is needed. > > On 30 November 2011 14:47, Sander Niemeijer <nie...@st...> wrote: >> Hi Mathieu, >> >> I did a quick compare of the current wxVTK CVS with what we are using >> internally. There is currently one difference: >> The patch below is to fix a redrawing issue we encountered on Windows >> when windows got resized. It was something we fixed in September 2009, >> so I don't know the precise details anymore. >> >> I would appreciate it if you could include this patch for v1.4. >> >> Best regards, >> Sander Niemeijer >> >> --- cvs/wxVTKRenderWindowInteractor.cxx 2009-03-05 17:00:43.000000000 >> +0100 >> +++ new/wxVTKRenderWindowInteractor.cxx 2009-09-04 11:50:25.000000000 >> +0200 >> @@ -281,6 +281,9 @@ >> Size[1] = y; >> // and our RenderWindow's size >> RenderWindow->SetSize(x, y); >> +#if defined(__WXMSW__) >> + this->Refresh(); >> +#endif //__WXMSW__ >> } >> } >> } >> >> >> On 30 nov 2011, at 15:10, Mathieu Malaterre wrote: >> >>> Hi Tim, >>> >>> Ok will do. I'll do that on Friday. >>> >>> Everyone, >>> >>> Last call for integrating your patch in 1.4 release. You'll have to >>> wait another ~3yrs or so otherwise ;) >>> >>> Thanks ! >>> >>> On Wed, Nov 30, 2011 at 1:03 PM, Tim Hutton <tim...@gm...> >>> wrote: >>>> Hello, >>>> >>>> I've just been bitten by the fact that the 1.3 download (from 2008) >>>> is >>>> older than some of the fixes in the CVS head. Specifically: the Timer >>>> error has gone, and the Cocoa build wasn't working. I see there are >>>> around 8 downloads a week so presumably all of these people are being >>>> hit by these issues too! So please make a new download. >>>> >>>> And thankyou thankyou thankyou for maintaining wxVTK. I've been using >>>> it continuously for several years now. >>>> >>>> -- >>>> Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ >>>> >>>> ------------------------------------------------------------------------------ >>>> All the data continuously generated in your IT infrastructure >>>> contains a definitive record of customers, application performance, >>>> security threats, fraudulent activity, and more. Splunk takes this >>>> data and makes sense of it. IT sense. And common sense. >>>> http://p.sf.net/sfu/splunk-novd2d >>>> _______________________________________________ >>>> Wxvtk-users mailing list >>>> Wxv...@li... >>>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >>>> >>> >>> >>> >>> -- >>> Mathieu >>> >>> ------------------------------------------------------------------------------ >>> All the data continuously generated in your IT infrastructure >>> contains a definitive record of customers, application performance, >>> security threats, fraudulent activity, and more. Splunk takes this >>> data and makes sense of it. IT sense. And common sense. >>> http://p.sf.net/sfu/splunk-novd2d >>> _______________________________________________ >>> Wxvtk-users mailing list >>> Wxv...@li... >>> https://lists.sourceforge.net/lists/listinfo/wxvtk-users >> >> >> ------------------------------------------------------------------------------ >> All the data continuously generated in your IT infrastructure >> contains a definitive record of customers, application performance, >> security threats, fraudulent activity, and more. Splunk takes this >> data and makes sense of it. IT sense. And common sense. >> http://p.sf.net/sfu/splunk-novd2d >> _______________________________________________ >> Wxvtk-users mailing list >> Wxv...@li... >> https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > > > -- > Tim Hutton - http://www.sq3.org.uk - http://profiles.google.com/tim.hutton/ -- Mathieu |
From: Mathieu M. <mat...@gm...> - 2011-12-02 18:01:06
|
After more than 3 years of delay, wxVTK 1.4 is finally out !! The short changelog is: * Fix wxVTK with VTK 5.0 and above (Timer API change) * Fix SetSize on Windows (Thanks to Sander Niemeijer) * Fix Cocoa bindings (Thanks to Tim Hutton/Andrew Trevorrow) Download is at: https://sourceforge.net/projects/wxvtk/files/wxvtk/wxVTK-1.4/ Thanks everyone for this release ! -Mathieu |
From: Mathieu M. <ma...@us...> - 2011-12-02 17:46:58
|
Update of /cvsroot/wxvtk/wxVTK/src In directory vz-cvs-4.sog:/tmp/cvs-serv30154 Modified Files: wxVTKRenderWindowInteractor.cxx Log Message: Include patch from Tim Hutton/Andrew Trevorrow. Posted on the mailing list. Index: wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.50 retrieving revision 1.51 diff -C2 -d -r1.50 -r1.51 *** wxVTKRenderWindowInteractor.cxx 2 Dec 2011 17:43:20 -0000 1.50 --- wxVTKRenderWindowInteractor.cxx 2 Dec 2011 17:46:56 -0000 1.51 *************** *** 33,36 **** --- 33,41 ---- #include "vtkDebugLeaks.h" + // AKT: wxOSX 2.9.x defines __WXOSX_COCOA__ rather than __WXCOCOA__ + #ifdef __WXOSX_COCOA__ + #define __WXCOCOA__ + #endif + #ifdef __WXMAC__ #ifdef __WXCOCOA__ *************** *** 366,374 **** #ifdef __WXCOCOA__ // Here is how to find the NSWindow ! wxTopLevelWindow* toplevel = dynamic_cast<wxTopLevelWindow*>( ! wxGetTopLevelParent( this ) ); ! if (toplevel != NULL ) { ! handle_tmp = (long)toplevel->GetNSWindow(); } // The NSView will be deducted from --- 371,383 ---- #ifdef __WXCOCOA__ // Here is how to find the NSWindow ! wxTopLevelWindow* toplevel = dynamic_cast<wxTopLevelWindow*>(wxGetTopLevelParent( this ) ); ! if (toplevel != NULL ) { ! // AKT: use new Cocoa code if wxOSX 2.9.x ! #if wxCHECK_VERSION(2, 9, 0) ! handle_tmp = (long)toplevel->GetWXWindow(); ! #else ! handle_tmp = (long)toplevel->GetNSWindow(); ! #endif } // The NSView will be deducted from |
From: Mathieu M. <ma...@us...> - 2011-12-02 17:43:22
|
Update of /cvsroot/wxvtk/wxVTK/src In directory vz-cvs-4.sog:/tmp/cvs-serv28565 Modified Files: wxVTKRenderWindowInteractor.cxx Log Message: Include path from Sander Niemeijer. Posted on the mailing list. Index: wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.49 retrieving revision 1.50 diff -C2 -d -r1.49 -r1.50 *** wxVTKRenderWindowInteractor.cxx 5 Mar 2009 16:00:43 -0000 1.49 --- wxVTKRenderWindowInteractor.cxx 2 Dec 2011 17:43:20 -0000 1.50 *************** *** 282,285 **** --- 282,288 ---- // and our RenderWindow's size RenderWindow->SetSize(x, y); + #if defined(__WXMSW__) + this->Refresh(); + #endif //__WXMSW__ } } |