[an error occurred while processing this directive]
Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

PreviewDragTool Class Reference

Allows the user to change the yaw, pitch and roll of a connected component of images by dragging them in the fast preview. More...

#include <PreviewDragTool.h>

Inheritance diagram for PreviewDragTool:

Inheritance graph
[legend]
List of all members.

Public Types

enum  DragMode { drag_mode_normal, drag_mode_mosaic }

Public Member Functions

 PreviewDragTool (PreviewToolHelper *helper)
void Activate ()
 Switch on a tool.
void MouseMoveEvent (double x, double y, wxMouseEvent &e)
 Notify when the mouse pointer has moved over the panorama preview.
void MouseButtonEvent (wxMouseEvent &e)
 Notify of a mouse button press on the panorama preview.
void ReallyAfterDrawImagesEvent ()
 Draw (using OpenGL) the overlays, e.g. crop highlights, guides.
void setDragMode (DragMode drag_mode)
DragMode getDragMode ()
void getTranslationShift (double &delta_x, double &delta_y)

Detailed Description

Allows the user to change the yaw, pitch and roll of a connected component of images by dragging them in the fast preview.

If there are multiple components under the pointer when the user begins to drag, the lowest number one is chosen, since it is drawn on top.
Modifiers Variables changed
none yaw and pitch
shift yaw or pitch, depending on biggest difference.
control roll

You can also change only roll by using the secondary mouse button (if there is one).

Reasoning: control click on mac is equivalent right click on other platforms, no modifiers should be close to old behaviour (where no modifiers were used), alt moves windows on some window managers, leaving shift as the only common modifier suitable for constrained drag.


Member Enumeration Documentation

enum PreviewDragTool::DragMode
 

Enumeration values:
drag_mode_normal 
drag_mode_mosaic 


Constructor & Destructor Documentation

PreviewDragTool::PreviewDragTool PreviewToolHelper helper  ) 
 


Member Function Documentation

void PreviewDragTool::Activate  )  [virtual]
 

Switch on a tool.

Inherited classes also register events they want to respond to with the PreviewToolHelper. As events are lost when the tool is deactivated without notification to the PreviewTool, things from the last activation can be cleaned up here too.

Implements PreviewTool.

PreviewDragTool::DragMode PreviewDragTool::getDragMode  ) 
 

void PreviewDragTool::getTranslationShift double delta_x,
double delta_y
 

void PreviewDragTool::MouseButtonEvent wxMouseEvent &  e  )  [virtual]
 

Notify of a mouse button press on the panorama preview.

Parameters:
e The event created by wxWidgets.

Reimplemented from PreviewTool.

void PreviewDragTool::MouseMoveEvent double  x,
double  y,
wxMouseEvent &  e
[virtual]
 

Notify when the mouse pointer has moved over the panorama preview.

The coordinates are in the space of the panorama output at full size, with no output cropping.

Parameters:
x The horizontal position of the mouse pointer in panorama pixels.
y The vertical position of the mouse pointer in panorama pixels.
e The event created by wxWidgets.

Reimplemented from PreviewTool.

void PreviewDragTool::ReallyAfterDrawImagesEvent  )  [virtual]
 

Draw (using OpenGL) the overlays, e.g. crop highlights, guides.

Reimplemented from PreviewTool.

void PreviewDragTool::setDragMode DragMode  drag_mode  ) 
 


The documentation for this class was generated from the following files:

Generated on Mon Sep 20 01:01:34 2010 for Hugintrunk by doxygen 1.3.9.1