GLViewer Class Reference

A wxWidget to display the fast preview. More...

#include <GLViewer.h>

Inheritance diagram for GLViewer:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 GLViewer (wxWindow *parent, HuginBase::Panorama &pano, int args[], GLPreviewFrame *frame, wxGLContext *shared_context=NULL)
virtual ~GLViewer ()
void RedrawE (wxPaintEvent &e)
void Resized (wxSizeEvent &e)
void Redraw ()
void SetUpContext ()
void SetPhotometricCorrect (bool state)
virtual void SetLayoutMode (bool state)
virtual void SetLayoutScale (double scale)
void SetActive (bool active)
bool IsActive ()
void SetViewerBackground (wxColour col)
void SetOverlayText (const wxString text)
 sets the text which should overlay the preview
void SetOverlayVisibility (const bool isVisible)
 switches the overlay on/off

Static Public Member Functions

static void RefreshWrapper (void *obj)

Public Attributes

VisualizationStatem_visualization_state

Static Public Attributes

static ViewStatem_view_state = NULL

Protected Member Functions

void OnEraseBackground (wxEraseEvent &e)
void MouseMotion (wxMouseEvent &e)
void MouseEnter (wxMouseEvent &e)
void MouseLeave (wxMouseEvent &e)
void MouseButtons (wxMouseEvent &e)
void MouseWheel (wxMouseEvent &e)
void KeyDown (wxKeyEvent &e)
void KeyUp (wxKeyEvent &e)
virtual void setUp ()=0

Protected Attributes

ToolHelperm_tool_helper
GLRendererm_renderer
HuginBase::Panoramam_pano
wxString m_overlayText
bool m_overlay
bool started_creation
bool redrawing
vigra::Diff2D offset
GLPreviewFrameframe
bool active
wxColour m_background_color

Static Protected Attributes

static bool initialised_glew = false

Detailed Description

A wxWidget to display the fast preview.

It is the OpenGL equivalent of PreviewPanel. The actual work in rendering the preview is done by a GLRenderer.

Definition at line 51 of file GLViewer.h.


Constructor & Destructor Documentation

GLViewer::GLViewer ( wxWindow *  parent,
HuginBase::Panorama pano,
int  args[],
GLPreviewFrame frame,
wxGLContext *  shared_context = NULL 
)

Definition at line 202 of file GLViewer.cpp.

GLViewer::~GLViewer (  )  [virtual]

Definition at line 241 of file GLViewer.cpp.

References m_renderer, m_tool_helper, and m_view_state.


Member Function Documentation

bool GLViewer::IsActive (  )  [inline]

Definition at line 75 of file GLViewer.h.

References active.

Referenced by RedrawE(), and Resized().

void GLViewer::KeyDown ( wxKeyEvent &  e  )  [protected]

Definition at line 555 of file GLViewer.cpp.

References ToolHelper::KeypressEvent(), m_renderer, and m_tool_helper.

void GLViewer::KeyUp ( wxKeyEvent &  e  )  [protected]

Definition at line 561 of file GLViewer.cpp.

References ToolHelper::KeypressEvent(), m_renderer, and m_tool_helper.

void GLViewer::MouseButtons ( wxMouseEvent &  e  )  [protected]

Definition at line 532 of file GLViewer.cpp.

References m_renderer, m_tool_helper, and ToolHelper::MouseButtonEvent().

void GLViewer::MouseEnter ( wxMouseEvent &  e  )  [protected]

Definition at line 519 of file GLViewer.cpp.

References m_renderer, m_tool_helper, ToolHelper::MouseEnter(), and offset.

void GLViewer::MouseLeave ( wxMouseEvent &  e  )  [protected]

Definition at line 526 of file GLViewer.cpp.

References m_renderer, m_tool_helper, and ToolHelper::MouseLeave().

void GLViewer::MouseMotion ( wxMouseEvent &  e  )  [protected]

Definition at line 512 of file GLViewer.cpp.

References m_renderer, m_tool_helper, ToolHelper::MouseMoved(), and offset.

void GLViewer::MouseWheel ( wxMouseEvent &  e  )  [protected]

Definition at line 547 of file GLViewer.cpp.

References m_renderer, m_tool_helper, and ToolHelper::MouseWheelEvent().

void GLViewer::OnEraseBackground ( wxEraseEvent &  e  )  [protected]

Definition at line 507 of file GLViewer.cpp.

void GLViewer::Redraw (  ) 

Definition at line 469 of file GLViewer.cpp.

References DEBUG_INFO, VisualizationState::DoUpdates(), VisualizationState::FinishedDraw(), vigra_ext::EMoR::h, HuginBase::Panorama::hasPendingChanges(), m_overlay, m_overlayText, m_pano, m_renderer, m_visualization_state, offset, GLRenderer::Redraw(), VisualizationState::RequireRecalculateViewport(), GLRenderer::Resize(), GLRenderer::SetBackground(), and WrapText().

Referenced by RedrawE(), and Resized().

void GLViewer::RedrawE ( wxPaintEvent &  e  ) 

Definition at line 405 of file GLViewer.cpp.

References GLPreviewFrame::CanResize(), GLPreviewFrame::ContinueResize(), DEBUG_DEBUG, frame, IsActive(), Redraw(), redrawing, and SetUpContext().

void GLViewer::RefreshWrapper ( void *  obj  )  [static]

Definition at line 433 of file GLViewer.cpp.

References DEBUG_DEBUG.

Referenced by GLOverview::setUp(), and GLPreview::setUp().

void GLViewer::Resized ( wxSizeEvent &  e  ) 

Definition at line 440 of file GLViewer.cpp.

References GLPreviewFrame::CanResize(), DEBUG_DEBUG, frame, vigra_ext::EMoR::h, IsActive(), m_renderer, offset, Redraw(), GLRenderer::Resize(), and SetUpContext().

Referenced by GLPreviewFrame::ContinueResize().

void GLViewer::SetActive ( bool  active  )  [inline]

Definition at line 74 of file GLViewer.h.

Referenced by GLPreviewFrame::GLPreviewFrame(), GLPreviewFrame::LoadOpenGLLayout(), and GLPreviewFrame::OnOverviewToggle().

void GLViewer::SetLayoutMode ( bool  state  )  [virtual]

Reimplemented in GLOverview.

Definition at line 378 of file GLViewer.cpp.

References VisualizationState::GetMeshManager(), m_visualization_state, and MeshManager::SetLayoutMode().

Referenced by GLPreviewFrame::SetMode().

void GLViewer::SetLayoutScale ( double  scale  )  [virtual]

Reimplemented in GLOverview.

Definition at line 384 of file GLViewer.cpp.

References VisualizationState::GetMeshManager(), m_visualization_state, and MeshManager::SetLayoutScale().

Referenced by GLPreviewFrame::OnLayoutScaleChange().

void GLViewer::SetOverlayText ( const wxString  text  ) 

sets the text which should overlay the preview

Definition at line 594 of file GLViewer.cpp.

References m_overlayText.

Referenced by GLPreviewFrame::panoramaChanged().

void GLViewer::SetOverlayVisibility ( const bool  isVisible  ) 

switches the overlay on/off

Definition at line 599 of file GLViewer.cpp.

References m_overlay.

Referenced by GLPreviewFrame::SetMode().

void GLViewer::SetPhotometricCorrect ( bool  state  ) 

Definition at line 372 of file GLViewer.cpp.

References ViewState::GetTextureManager(), m_view_state, and TextureManager::SetPhotometricCorrect().

Referenced by GLPreviewFrame::MakePreviewTools(), and GLPreviewFrame::OnPhotometric().

virtual void GLViewer::setUp (  )  [protected, pure virtual]

Implemented in GLPreview, and GLOverview.

Referenced by SetUpContext().

void GLViewer::SetUpContext (  ) 

Definition at line 260 of file GLViewer.cpp.

References DEBUG_ERROR, DEBUG_INFO, frame, initialised_glew, setUp(), and started_creation.

Referenced by GLPreviewFrame::InitPreviews(), RedrawE(), and Resized().

void GLViewer::SetViewerBackground ( wxColour  col  ) 

Definition at line 567 of file GLViewer.cpp.

References m_background_color, m_renderer, and GLRenderer::SetPreviewBackgroundColor().

Referenced by GLPreviewFrame::OnPreviewBackgroundColorChanged().


Member Data Documentation

bool GLViewer::active [protected]

Definition at line 116 of file GLViewer.h.

Referenced by IsActive().

GLPreviewFrame* GLViewer::frame [protected]

Definition at line 114 of file GLViewer.h.

Referenced by RedrawE(), Resized(), GLOverview::setUp(), GLPreview::setUp(), and SetUpContext().

bool GLViewer::initialised_glew = false [static, protected]

Definition at line 112 of file GLViewer.h.

Referenced by SetUpContext().

wxColour GLViewer::m_background_color [protected]

Definition at line 118 of file GLViewer.h.

Referenced by GLOverview::setUp(), GLPreview::setUp(), and SetViewerBackground().

bool GLViewer::m_overlay [protected]

Definition at line 108 of file GLViewer.h.

Referenced by Redraw(), and SetOverlayVisibility().

wxString GLViewer::m_overlayText [protected]

Definition at line 107 of file GLViewer.h.

Referenced by Redraw(), and SetOverlayText().

HuginBase::Panorama* GLViewer::m_pano [protected]

Definition at line 105 of file GLViewer.h.

Referenced by Redraw(), GLOverview::setUp(), and GLPreview::setUp().

GLRenderer* GLViewer::m_renderer [protected]

Definition at line 101 of file GLViewer.h.

Referenced by KeyDown(), KeyUp(), MouseButtons(), MouseEnter(), MouseLeave(), MouseMotion(), MouseWheel(), Redraw(), Resized(), GLOverview::SetMode(), GLOverview::setUp(), GLPreview::setUp(), SetViewerBackground(), and ~GLViewer().

ToolHelper* GLViewer::m_tool_helper [protected]

Definition at line 100 of file GLViewer.h.

Referenced by KeyDown(), KeyUp(), MouseButtons(), MouseEnter(), MouseLeave(), MouseMotion(), MouseWheel(), GLOverview::SetMode(), GLOverview::setUp(), GLPreview::setUp(), and ~GLViewer().

ViewState * GLViewer::m_view_state = NULL [static]

Definition at line 72 of file GLViewer.h.

Referenced by GLPreviewFrame::OnTrackChangeFOV(), SetPhotometricCorrect(), GLOverview::setUp(), GLPreview::setUp(), and ~GLViewer().

VisualizationState* GLViewer::m_visualization_state

Definition at line 71 of file GLViewer.h.

Referenced by OverviewOutlinesTool::draw(), OverviewOutlinesTool::DrawRect(), GLPreviewFrame::OnDragChoice(), GLPreviewFrame::OnOverviewModeChoice(), Redraw(), SetLayoutMode(), SetLayoutScale(), GLOverview::SetMode(), GLOverview::setUp(), and GLPreview::setUp().

vigra::Diff2D GLViewer::offset [protected]

Definition at line 113 of file GLViewer.h.

Referenced by MouseEnter(), MouseMotion(), Redraw(), and Resized().

bool GLViewer::redrawing [protected]

Definition at line 111 of file GLViewer.h.

Referenced by RedrawE().

bool GLViewer::started_creation [protected]

Definition at line 111 of file GLViewer.h.

Referenced by SetUpContext().


The documentation for this class was generated from the following files:
Generated on 27 Jul 2015 for Hugintrunk by  doxygen 1.4.7