wxMaracasRendererView Class Reference

#include <wxMaracasRendererView.h>

Collaboration diagram for wxMaracasRendererView:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 wxMaracasRendererView (wxWindow *parent, std::string path)
 ~wxMaracasRendererView ()
std::string getPath ()
wxMaracasRenderTabbedPanelgetTabbedPanel (int id) throw (char*)
void setRenderer (vtkRenderer *renderer)
void setVtkBaseView (wxVtk3DBaseView *base)
void onLoadImageFile ()
void addVolumes (vtkImageData *img, std::string pathfile, std::string filename)
void addPanels (wxMaracasRenderTabbedPanel *wxtabs, vtkImageData *img, std::string pathfile, std::string filename)
void deleteVolume (int volid)
std::vector< std::string > getFiles ()

Static Public Member Functions

static wxMaracasRendererViewgetInstance (wxWindow *parent, std::string path="")
static wxMaracasRendererViewgetInstance ()

Private Attributes

std::vector
< wxMaracasRenderTabbedPanel * > 
tabsVector
std::vector< std::string > files
wxAuiManager * wxauimanager
wxToolBar * _toolb
vtkRenderer * _renderer
wxVtk3DBaseViewbaseView
std::string _path
int _idCount

Static Private Attributes

static wxMaracasRendererViewinstance = NULL

Detailed Description

Definition at line 25 of file wxMaracasRendererView.h.


Constructor & Destructor Documentation

wxMaracasRendererView::wxMaracasRendererView ( wxWindow *  parent,
std::string  path 
)

Class constructor

Definition at line 22 of file wxMaracasRendererView.cxx.

References _idCount, _path, _toolb, and wxauimanager.

Referenced by getInstance().

00023 : wxPanel(parent, -1, wxDefaultPosition, wxDefaultSize){
00024 
00025         wxauimanager = new wxAuiManager(this);
00026 
00027         _idCount = 0;
00028         _path = path;
00029 
00030         std::string iconsdir = path;
00031         iconsdir+="/data/Icons";
00032         this->_toolb = new ToolBarRenderer(this,iconsdir);
00033         wxStaticText* txt = new wxStaticText(this, -1, wxString(_T("  Open File  ")));
00034         wxAuiPaneInfo paneinfo;
00035         wxauimanager->AddPane(txt,paneinfo.ToolbarPane().Top());
00036         wxauimanager->AddPane(_toolb,paneinfo.ToolbarPane().Top());
00037 
00038         wxauimanager->Update(); 
00039 }

Here is the caller graph for this function:

wxMaracasRendererView::~wxMaracasRendererView (  ) 

Class destructor

Definition at line 44 of file wxMaracasRendererView.cxx.

References _toolb.

00045 {
00046         delete _toolb;
00047 }


Member Function Documentation

void wxMaracasRendererView::addPanels ( wxMaracasRenderTabbedPanel wxtabs,
vtkImageData *  img,
std::string  pathfile,
std::string  filename 
)

Constructs and adds internal panel

Definition at line 135 of file wxMaracasRendererView.cxx.

References wxMaracasRenderTabbedPanel::createControls(), and wxauimanager.

Referenced by addVolumes().

00136 {
00137         wxString s(filename.c_str(),wxConvUTF8);
00138         
00139         wxtabs->createControls(img, pathfile, filename);
00140         
00141         wxAuiPaneInfo paneinfo;
00142         wxauimanager->AddPane(wxtabs, paneinfo.DefaultPane().Centre().DestroyOnClose().Caption(s));
00143         wxauimanager->Update();
00144 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxMaracasRendererView::addVolumes ( vtkImageData *  img,
std::string  pathfile,
std::string  filename 
)

Returns internal panel

Definition at line 149 of file wxMaracasRendererView.cxx.

References _idCount, _renderer, addPanels(), baseView, wxMaracasRenderTabbedPanel::setRenderer(), and tabsVector.

Referenced by onLoadImageFile().

00150 {
00151         wxMaracasRenderTabbedPanel* wxtabs = new wxMaracasRenderTabbedPanel(this, _idCount, baseView);
00152         wxtabs->setRenderer(_renderer);
00153 
00154         tabsVector.push_back(wxtabs);
00155         addPanels(wxtabs, img, pathfile, filename);     
00156 
00157         _idCount++;
00158 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxMaracasRendererView::deleteVolume ( int  volid  ) 

Deletes current volume

Definition at line 162 of file wxMaracasRendererView.cxx.

References wxMaracasRenderTabbedPanel::deleteVolume(), and getTabbedPanel().

00163 {
00164         
00165         getTabbedPanel(volid)->deleteVolume(volid);
00166 }

Here is the call graph for this function:

std::vector< std::string > wxMaracasRendererView::getFiles (  ) 

Gets opened file names

Definition at line 171 of file wxMaracasRendererView.cxx.

References files.

00172 {
00173         return files;
00174 }

wxMaracasRendererView * wxMaracasRendererView::getInstance (  )  [static]
wxMaracasRendererView * wxMaracasRendererView::getInstance ( wxWindow *  parent,
std::string  path = "" 
) [static]

Gets class instance correponding to given parameters

Definition at line 52 of file wxMaracasRendererView.cxx.

References instance, and wxMaracasRendererView().

00053 {
00054         if(instance==NULL)
00055         {
00056                 instance = new wxMaracasRendererView(parent,path);
00057         }
00058         return instance;
00059 }

Here is the call graph for this function:

std::string wxMaracasRendererView::getPath (  ) 

Gets path for the given panel

Definition at line 72 of file wxMaracasRendererView.cxx.

References _path.

00073 {
00074         return _path;
00075 }

wxMaracasRenderTabbedPanel * wxMaracasRendererView::getTabbedPanel ( int  id  )  throw (char*)

Returns internal panel

Definition at line 80 of file wxMaracasRendererView.cxx.

Referenced by deleteVolume().

00081 {
00082         int i;
00083         for(i = 0; i < (tabsVector.size()); i++)
00084         {
00085                 if(tabsVector[i]->getPropIdV() == id)
00086                         return tabsVector[i];
00087         }
00088         throw "id not found";
00089 
00090         return NULL;
00091 }

Here is the caller graph for this function:

void wxMaracasRendererView::onLoadImageFile (  ) 

Called when an image file is opened

Definition at line 109 of file wxMaracasRendererView.cxx.

References addVolumes(), and files.

Referenced by ToolBarEventHandlerRenderer::onLoadImageFile().

00110 {
00111         wxString mhd(_T("mhd"));        
00112 
00113         wxFileDialog* fildial = new wxFileDialog(this, wxString(_T("Select a MHD file")), wxString(_T("")),
00114                                         wxString(_T("")), wxString(_T("MHD files (*.mhd)|*.mhd")) );
00115 
00116         if(fildial->ShowModal()==wxID_OK)
00117         {
00118                 wxString filename = fildial->GetFilename();
00119                 files.push_back( std::string(filename.mb_str()) );
00120                 wxString pathfile(fildial->GetDirectory() + _T("/") + filename);
00121 
00122                 if(filename.EndsWith(mhd))
00123                 {
00124                         std::string sPath = std::string(pathfile.mb_str());
00125                         std::string sFileName = std::string(filename.mb_str());
00126                         printf("wxMaracasRendererView::onLoadImageFile->Opening file... \n");
00127                         addVolumes(NULL, sPath, sFileName);
00128                 }
00129         }
00130         delete fildial;
00131 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxMaracasRendererView::setRenderer ( vtkRenderer *  renderer  ) 

Definition at line 96 of file wxMaracasRendererView.cxx.

References _renderer.

00097 {
00098         _renderer = renderer;
00099 }

void wxMaracasRendererView::setVtkBaseView ( wxVtk3DBaseView base  ) 

Definition at line 101 of file wxMaracasRendererView.cxx.

References baseView.

00102 {
00103         baseView = vbv;
00104 }


Member Data Documentation

Definition at line 60 of file wxMaracasRendererView.h.

Referenced by addVolumes(), and wxMaracasRendererView().

std::string wxMaracasRendererView::_path [private]

Definition at line 58 of file wxMaracasRendererView.h.

Referenced by getPath(), and wxMaracasRendererView().

vtkRenderer* wxMaracasRendererView::_renderer [private]

Definition at line 56 of file wxMaracasRendererView.h.

Referenced by addVolumes(), and setRenderer().

wxToolBar* wxMaracasRendererView::_toolb [private]

Definition at line 54 of file wxMaracasRendererView.h.

Referenced by wxMaracasRendererView(), and ~wxMaracasRendererView().

Definition at line 57 of file wxMaracasRendererView.h.

Referenced by addVolumes(), and setVtkBaseView().

std::vector<std::string> wxMaracasRendererView::files [private]

Definition at line 51 of file wxMaracasRendererView.h.

Referenced by getFiles(), and onLoadImageFile().

Definition at line 48 of file wxMaracasRendererView.h.

Referenced by getInstance().

Definition at line 50 of file wxMaracasRendererView.h.

Referenced by addVolumes().

wxAuiManager* wxMaracasRendererView::wxauimanager [private]

Definition at line 53 of file wxMaracasRendererView.h.

Referenced by addPanels(), and wxMaracasRendererView().


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

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1