23#ifndef _GLPREVIEWFRAME_H
24#define _GLPREVIEWFRAME_H
33class wxScrolledWindow;
47#include <wx/infobar.h>
88#include <wx/aui/aui.h>
89#include <wx/clrpicker.h>
195 unsigned char green,
unsigned char blue);
330 void OnAlign( wxCommandEvent & e );
331 void OnCreate( wxCommandEvent & e );
declaration of helper for work with different GuiLevels
The OpenGL preview frame.
void OnResetCrop(wxCommandEvent &e)
event handler to reset crop area
void OnImageContextMenu(wxContextMenuEvent &e)
show context menu on image buttons
void LoadImages(int preferredLensType)
void OnAutocrop(wxCommandEvent &e)
void EnableGroupCheckboxes(bool isShown)
changes the visibility of the group check boxes
PreviewProjectionGridTool * preview_projection_grid
PreviewControlPointTool * panosphere_control_point_tool
void OnProjectionChoice(wxCommandEvent &e)
PanosphereOverviewCameraTool * panosphere_overview_camera_tool
virtual void panoramaChanged(HuginBase::Panorama &pano)
Notification about a Panorama change.
void OnStraighten(wxCommandEvent &e)
void ResetTranslationPlaneParameters()
resets all translation plane parameters to zero
void OnCenterHorizontally(wxCommandEvent &e)
wxChoice * m_OverviewModeChoice
void KeyDown(wxKeyEvent &e)
void OnFitPano(wxCommandEvent &e)
void OnSelectResetSelection(wxCommandEvent &e)
PreviewControlPointTool * preview_control_point_tool
void OnClose(wxCloseEvent &e)
void OnCreateCP(wxCommandEvent &e)
handler for creating cp in pano space
wxMenu * m_filemenuSimple
void InitPreviews()
init previews
void OnBlendChoice(wxCommandEvent &e)
PreviewPanoMaskTool * pano_mask_tool
void OnRangeCompressionIncrease(wxSpinEvent &e)
void OnIncreaseExposure(wxSpinEvent &e)
void OnTrackChangeProjectionParam(wxScrollEvent &e)
void DragChoiceLayout(int index)
PreviewControlPointTool * plane_control_point_tool
void OnSetCropAspect(wxCommandEvent &e)
event handler to set fixed aspect ratio of crop
std::vector< ImageGroupButtonEventHandler * > toggle_group_button_event_handlers
PreviewDragTool * drag_tool
PreviewIdentifyTool * panosphere_overview_identify_tool
void OnSelectAllMenu(wxCommandEvent &e)
handle all options of select all context menu
void OnSelectDarkestMenu(wxCommandEvent &e)
wxColour m_preview_background_color
void OnStackAutocrop(wxCommandEvent &e)
wxToggleButton * m_identify_togglebutton
void TurnOffTools(std::set< Tool * > tools)
PlaneOverviewToolHelper * plane_overview_helper
bool m_showProjectionHints
PlaneOverviewOutlinesTool * plane_overview_outlines_tool
void OnSwitchPreviewGrid(wxCommandEvent &e)
event handler for switch on/off grid on preview
PreviewLayoutLinesTool * m_preview_layoutLinesTool
void UpdateRoiDisplay(const HuginBase::PanoramaOptions opts)
update display of ROI
void OnOverviewModeChoice(wxCommandEvent &e)
void OnEditCPTool(wxCommandEvent &e)
event handler when starting edit cp tool
wxToggleButton * m_colorpicker_togglebutton
void updateBlendMode()
Update tools and GUI elements according to blend mode choice.
virtual ~GLPreviewFrame()
dtor.
void OnDefaultExposure(wxCommandEvent &e)
void OnShowNone(wxCommandEvent &e)
void OnCreate(wxCommandEvent &e)
void MakePlaneOverviewTools(PlaneOverviewToolHelper *helper)
void OnShowEvent(wxShowEvent &e)
HuginBase::UIntSet GetDragGroupImages()
wxInfoBar * m_infoBar
Bar for context sensitive projection information.
wxChoice * m_GuideChoiceCrop
wxTextCtrl * m_ROILeftTxt
wxTextCtrl * m_ROIRightTxt
void ClearDragGroupImages(bool update_check_box=true)
void FillBlendChoice()
fills the blend wxChoice with all valid blend modes and restore the last used one
void SetGuiLevel(GuiLevel newLevel)
sets the gui level
PreviewIdentifyTool * identify_tool
void OnOverviewToggle(wxCommandEvent &e)
wxSpinButton * m_exposureSpinBut
PreviewDifferenceTool * panosphere_difference_tool
HuginBase::Panorama & m_pano
wxNotebook * m_tool_notebook
wxChoice * m_GuideChoiceProj
PlaneOverviewCameraTool * plane_overview_camera_tool
void SetMode(int newMode)
PanosphereOverviewProjectionGridTool * overview_projection_grid
void OnExposureChanged(wxCommandEvent &e)
void MakePreviewTools(PreviewToolHelper *helper)
void ToggleImageInDragGroup(unsigned int image_nr, bool update_check_box=true)
wxPanel * m_overviewCommandPanel
PanosphereOverviewToolHelper * panosphere_overview_helper
PreviewToolHelper * preview_helper
void OnROIChanged(wxCommandEvent &e)
event handler for changed roi
void SetStatusMessage(wxString message)
wxBoxSizer * m_projParamSizer
HuginBase::UIntSet imageDragGroup
wxChoice * m_GuideChoiceDrag
wxColour GetPreviewBackgroundColor()
wxPanel * m_projection_panel
bool HasNonZeroTranslationPlaneParameters()
check, if panorama has non-zero translation plane parameters
bool individualDragging()
void LoadOpenGLLayout()
loads the layout of the OpenGL windows and restores it
wxToggleButton * m_editCP_togglebutton
void OnLoadImages(wxCommandEvent &e)
bool UpdateOverviewMode(int newMode)
updates the mode of the overview window
void OnDragChoice(wxCommandEvent &e)
wxMenu * m_filemenuAdvanced
SelectAllMode m_selectAllMode
void StorePositionAndSize()
store position and size of window in wxConfig
wxStaticBoxSizer * m_ToggleButtonSizer
PreviewColorPickerTool * color_picker_tool
std::vector< wxCheckBox * > m_GroupToggleButtons
wxChoice * m_DragModeChoice
PreviewIdentifyTool * plane_overview_identify_tool
void AddUserDefinedSequence(int id, const wxString &desc, const wxString &help)
adds the given user defined output sequence to SplitButton menu
void RemoveImageFromDragGroup(unsigned int image_nr, bool update_check_box=true)
void OnControlPoint(wxCommandEvent &e)
void OnProjParameterChanged(wxCommandEvent &e)
void redrawPreview()
Display an updated version of the preview images.
wxChoice * m_BlendModeChoice
void OnUserExit(wxCommandEvent &e)
user wants to quit program
void OnDecreaseExposure(wxSpinEvent &e)
void OnShowAll(wxCommandEvent &e)
void AddUserDefinedAssistant(int id, const wxString &desc, const wxString &help)
adds the given user defined assistant to SplitButton menu
void OnAutocropOutside(wxCommandEvent &e)
void UpdateIdentifyTools(std::set< unsigned int > new_image_set)
GLOverview * getOverview()
PreviewDifferenceTool * plane_difference_tool
void SetDragGroupImages(HuginBase::UIntSet imageDragGroup_in, bool update_check_box=true)
void OnFullScreen(wxCommandEvent &e)
event handler for full screen
void OnSelectKeepSelection(wxCommandEvent &e)
void OnPreviewBackgroundColorChanged(wxColourPickerEvent &e)
event handler when user changes background color
virtual void panoramaImagesChanged(HuginBase::Panorama &pano, const HuginBase::UIntSet &changed)
notifies about changes to images
void OnHideProjectionHints(wxCommandEvent &e)
event handler when user hides the infobar
wxScrolledWindow * m_ButtonPanel
std::vector< wxSlider * > m_projParamSlider
int non_layout_blend_mode
void OnSelectBrightestMenu(wxCommandEvent &e)
void OnShowMainFrame(wxCommandEvent &e)
event handler to show main frame
void OnChangeProjectionParam(wxScrollEvent &e)
void AddImageToDragGroup(unsigned int image_nr, bool update_check_box=true)
void OnRangeCompressionChanged(wxCommandEvent &e)
PanosphereOverviewOutlinesTool * overview_outlines_tool
std::vector< wxPanel * > m_ToggleButtonPanel
SplitButton * m_createButton
GLOverview * m_GLOverview
std::vector< ImageToogleButtonEventHandler * > toogle_button_event_handlers
void OnIdentify(wxCommandEvent &e)
bool m_selectKeepSelection
GLwxAuiManager * getAuiManager()
void OnRemoveImage(wxCommandEvent &e)
void OnRemoveCP(wxCommandEvent &e)
handler to remove cp
wxChoice * m_ProjectionChoice
PreviewDifferenceTool * difference_tool
PreviewCameraTool * camera_tool
wxTextCtrl * m_rangeCompressionTextCtrl
void OnColorPicker(wxCommandEvent &e)
event handler when starting color picker
GLwxAuiManager * m_mgr
The dock manager.
void OnVFOVChanged(wxCommandEvent &e)
SplitButton * m_selectAllButton
PreviewCropTool * crop_tool
void ResetPreviewZoom()
reset zoom level for preview window
void OnLayoutScaleChange(wxCommandEvent &e)
event handler for change scale of layout mode
std::vector< wxTextCtrl * > m_projParamTextCtrl
void OnNumTransform(wxCommandEvent &e)
void MakePanosphereOverviewTools(PanosphereOverviewToolHelper *helper)
wxSpinButton * m_rangeCompressionSpinBut
void OnPhotometric(wxCommandEvent &e)
OverviewDragTool * overview_drag_tool
void ShowProjectionWarnings()
Tell the user anything suspicious about the projection choice.
void CleanButtonColours()
@ SELECT_BRIGHTEST_IMAGES
void UpdateGlobalWhiteBalance(double redFactor, double blueFactor)
updates the global white balance
SplitButton * m_loadImagesButton
PreviewEditCPTool * edit_cp_tool
void OnProjParameterReset(wxCommandEvent &e)
event handler for reset projection parameters
void OnGuideChanged(wxCommandEvent &e)
event handler when user selects different guide
SplitButton * m_alignButton
std::vector< wxStaticText * > m_projParamNamesLabel
wxTextCtrl * m_exposureTextCtrl
void OnSelectMode(wxNotebookEvent &e)
event handler for selection of new mode
wxBoxSizer * m_ButtonSizer
PreviewLayoutLinesTool * m_plane_layoutLinesTool
void OnToolModeChanging(wxNotebookEvent &e)
event handler for blocking changing mode when panorama contains no images
PreviewLayoutLinesTool * m_panosphere_layoutLinesTool
void KeyUp(wxKeyEvent &e)
void SetImageButtonColour(unsigned int image_nr, unsigned char red, unsigned char green, unsigned char blue)
void OnSelectMedianMenu(wxCommandEvent &e)
std::vector< wxToggleButton * > m_ToggleButtons
void SetShowProjectionHints(bool new_value)
set status if projection hints should be shown or not
wxTextCtrl * m_ROIBottomTxt
void OnHFOVChanged(wxCommandEvent &e)
PreviewGuideTool * preview_guide_tool
wxBitmapButton * m_defaultExposureBut
PanosphereSphereTool * panosphere_sphere_tool
void OnRangeCompressionDecrease(wxSpinEvent &e)
void OnAlign(wxCommandEvent &e)
The renderer handles drawing the opengl scene.
A wxWidget to display the fast preview.
subclass for a floating frame of the dock manager
void OnActivate(wxActivateEvent &evt)
customized subclass of the dock manager, created just for the purpose to create a workaround for the ...
GLwxAuiFloatingFrame * CreateFloatingFrame(wxWindow *parent, const wxAuiPaneInfo &p)
GLOverview * getGLOverview()
GLPreviewFrame * getPreviewFrame()
GLPreview * getGLPreview()
GLwxAuiManager(GLPreviewFrame *frame, GLPreview *preview, GLOverview *overview)
this handler class will receive change events from the Panorama.
A MeshManager handles the graphics system representation of a remapping, by creating OpenGL display l...
std::set< unsigned int > UIntSet
std::vector< deghosting::BImagePtr > threshold(const std::vector< deghosting::FImagePtr > &inputImages, const double threshold, const uint16_t flags)
Threshold function used for creating alpha masks for images.