ImageVariableDialog.h

Go to the documentation of this file.
00001 // -*- c-basic-offset: 4 -*-
00010 /*  This is free software; you can redistribute it and/or
00011  *  modify it under the terms of the GNU General Public
00012  *  License as published by the Free Software Foundation; either
00013  *  version 2 of the License, or (at your option) any later version.
00014  *
00015  *  This software is distributed in the hope that it will be useful,
00016  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018  *  Lesser General Public License for more details.
00019  *
00020  *  You should have received a copy of the GNU General Public
00021  *  License along with this software; if not, write to the Free Software
00022  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00023  *
00024  */
00025 
00026 #ifndef _IMAGEVARIABLEDIALOG_H
00027 #define _IMAGEVARIABLEDIALOG_H
00028 
00029 #include "panoinc_WX.h"
00030 #include "panoinc.h"
00031 #include "GuiLevel.h"
00032 #include "wx/popupwin.h"
00033 
00035 class GraphPopupWindow: public wxPopupTransientWindow
00036 {
00037 public:
00038     GraphPopupWindow(wxWindow* parent, wxBitmap bitmap);
00039 protected:
00040     void OnLeftDown(wxMouseEvent &e);
00041     void OnRightDown(wxMouseEvent &e);
00042 private:
00043     wxStaticBitmap* m_bitmapControl;
00044     DECLARE_CLASS(GraphPopupWindow)
00045     DECLARE_EVENT_TABLE()
00046 };
00047 
00049 class ImageVariableDialog : public wxDialog
00050 {
00051 public:
00053     ImageVariableDialog(wxWindow *parent, PT::Panorama* pano, HuginBase::UIntSet imgs);
00055     ~ImageVariableDialog();
00057     void SetGuiLevel(GuiLevel newLevel);
00059     void SelectTab(size_t i);
00060 
00061 protected:
00063     void OnOk(wxCommandEvent & e);
00065     void OnHelp(wxCommandEvent & e);
00067     void OnShowDistortionGraph(wxCommandEvent & e);
00069     void OnShowVignettingGraph(wxCommandEvent & e);
00071     void OnShowResponseGraph(wxCommandEvent & e);
00072 
00073 private:
00074     PT::Panorama* m_pano;
00075     HuginBase::UIntSet m_images;
00076     static const char *m_varNames[];
00077     GraphPopupWindow* m_popup;
00079     void InitValues();
00081     bool ApplyNewVariables();
00082 
00083     DECLARE_EVENT_TABLE()
00084 };
00085 
00086 #endif //_IMAGEVARIABLEDIALOG_H

Generated on Tue Jul 29 01:25:36 2014 for Hugintrunk by  doxygen 1.3.9.1