Hugintrunk  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
OptimizePhotometricPanel.h
Go to the documentation of this file.
1 // -*- c-basic-offset: 4 -*-
8 /* This is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This software is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public
19  * License along with this software. If not, see
20  * <http://www.gnu.org/licenses/>.
21  *
22  */
23 
24 #ifndef _OPTIMIZE_PHOTO_PANEL_H
25 #define _OPTIMIZE_PHOTO_PANEL_H
26 
27 #include <panodata/Panorama.h>
29 #include "GuiLevel.h"
30 
31 class ImagesTreeCtrl;
32 
38 {
39 
40 
41 public:
43 
44  bool Create(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxTAB_TRAVERSAL, const wxString& name = wxT("panel"));
45 
46  void Init(HuginBase::Panorama * pano);
47 
48  virtual ~OptimizePhotometricPanel();
49 
51  virtual void panoramaChanged(HuginBase::Panorama & pano);
53  virtual void panoramaImagesChanged(HuginBase::Panorama &pano, const HuginBase::UIntSet & imgNr);
54 
56  void OnOptimizeButton(wxCommandEvent & e);
57  void SetGuiLevel(GuiLevel newGuiLevel);
59  void SetOnlyActiveImages(const bool onlyActive);
60 
61 protected:
62 
63  void OnClose(wxCloseEvent& e);
64  void OnReset(wxCommandEvent& e);
66  void OnCheckOnlyActiveImages(wxCommandEvent &e);
67 
68  void runOptimizer(const HuginBase::UIntSet & img);
69 
71 
74 
76 
77 private:
78  DECLARE_EVENT_TABLE()
79  DECLARE_DYNAMIC_CLASS(OptimizePhotometricPanel)
80 };
81 
83 class OptimizePhotometricPanelXmlHandler : public wxXmlResourceHandler
84 {
85  DECLARE_DYNAMIC_CLASS(OptimizePhotometricPanelXmlHandler)
86 
87 public:
89  virtual wxObject *DoCreateResource();
90  virtual bool CanHandle(wxXmlNode *node);
91 };
92 
93 #endif // _OPTIMIZE_PHOTO_PANEL_H
void OnCheckOnlyActiveImages(wxCommandEvent &e)
handle &quot;only active images&quot; checkbox
declaration of helper for work with different GuiLevels
void SetGuiLevel(GuiLevel newGuiLevel)
Somewhere to specify what variables belong to what.
std::set< unsigned int > UIntSet
Definition: PanoramaData.h:51
Model for a panorama.
Definition: Panorama.h:152
void SetOnlyActiveImages(const bool onlyActive)
for external setting of &quot;only active image&quot; checkbox
virtual void panoramaImagesChanged(HuginBase::Panorama &pano, const HuginBase::UIntSet &imgNr)
receives notification about panorama changes
virtual void panoramaChanged(HuginBase::Panorama &pano)
receives notification about panorama changes
void runOptimizer(const HuginBase::UIntSet &img)
void OnOptimizeButton(wxCommandEvent &e)
run the optimizer
this handler class will receive change events from the Panorama.
Definition: PanoramaData.h:401
the main images tree control, used on images and optimizer tabs
Definition: ImagesTree.h:36
void Init(HuginBase::Panorama *pano)
GuiLevel
Definition: GuiLevel.h:31
bool Create(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxTAB_TRAVERSAL, const wxString &name=wxT("panel"))