X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FpPlotter%2FHistogramDialogComboBox.cxx;h=649ade65563bd4614e045f91e24a171ba7b17983;hb=ae196719490130990cdde501c982c3370b46b21c;hp=65bf87be7148bde1fbbd17c088484978063a1ec3;hpb=8532fdb6068b8dc79c6e3a9f900b5aa05792d618;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/pPlotter/HistogramDialogComboBox.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/pPlotter/HistogramDialogComboBox.cxx index 65bf87b..649ade6 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/pPlotter/HistogramDialogComboBox.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/pPlotter/HistogramDialogComboBox.cxx @@ -11,10 +11,10 @@ HistogramDialogComboBox::HistogramDialogComboBox(wxWindow* parent) : wxPanel(parent) { - _img = NULL; + _img = NULL; _bitmapcombo = NULL; _slidercolor = NULL; - _sliderwindowlevel = NULL; + _sliderwindowlevel = NULL; colorBar_Bitmap = NULL; _bitmapsizer = NULL; @@ -22,11 +22,22 @@ HistogramDialogComboBox::HistogramDialogComboBox(wxWindow* parent) _img = NULL; _currentitem = -1; _maxgreyvalue = 0; -printf("EED HistogramDialogComboBox\n"); +printf("EED HistogramDialogComboBox\n"); +#ifdef LINUX + std::string currentpath = crea::System::GetExecutablePath(); + + + currentpath.append("../share/creaMaracasVisu/data/"); +printf("EED JCP OOOOJJJOOO cambiar esto HistogramDialogComboBox::HistogramDialog writting in this directory\n"); + currentpath = "/home/davila/dataHistogram"; + + + crea::System::createDirectory(currentpath.c_str()); +#endif } HistogramDialogComboBox::~HistogramDialogComboBox() -{ +{ } void HistogramDialogComboBox::SetColors(std::vector greyvect, std::vector redvect, std::vector greenvect, std::vector bluevect) @@ -34,7 +45,7 @@ void HistogramDialogComboBox::SetColors(std::vector greyvect, std::vecto _greyvect = greyvect; _redvect = redvect; _greenvect = greenvect; - _bluevect = bluevect; + _bluevect = bluevect; } wxSizer* HistogramDialogComboBox::getBitmapCombo() @@ -46,9 +57,9 @@ wxSizer* HistogramDialogComboBox::getBitmapCombo() _bitmapcombo = getBitmapComboElements(); wxBitmap bitmap1(Edit_xpm); - wxBitmapButton* edit = new wxBitmapButton(this, -1, bitmap1,wxDefaultPosition,wxSize(30,30)); - Connect(edit->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&HistogramDialogComboBox::OnEditBitmapCombo); - + wxBitmapButton* edit = new wxBitmapButton(this, -1, bitmap1,wxDefaultPosition,wxSize(30,30)); + Connect(edit->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&HistogramDialogComboBox::OnEditBitmapCombo); + comboeditsizer->Add(_bitmapcombo,wxSizerFlags().Center().FixedMinSize()); comboeditsizer->Add(edit,wxSizerFlags().Center()); @@ -59,7 +70,8 @@ wxSizer* HistogramDialogComboBox::getBitmapCombo() return _bitmapsizer; } -wxSizer* HistogramDialogComboBox::getSlidersWlCo(){ +wxSizer* HistogramDialogComboBox::getSlidersWlCo() +{ wxBoxSizer* sizersliders = new wxBoxSizer(wxVERTICAL); _slidercolor = new wxSlider(this, -1,1,0,1,wxDefaultPosition,wxDefaultSize,wxSL_LABELS); @@ -78,7 +90,7 @@ double HistogramDialogComboBox::GetWindowLevel() { double val(0.0); if(_sliderwindowlevel != NULL) - val= _sliderwindowlevel->GetValue(); + val= _sliderwindowlevel->GetValue(); return val; // JPR } @@ -87,7 +99,7 @@ double HistogramDialogComboBox::GetColorLevel() double val(0.0); if(_slidercolor != NULL) val = _slidercolor->GetValue(); - return val; // JPR + return val; // JPR } void HistogramDialogComboBox::OnColorLevelChanged(wxCommandEvent& event) @@ -131,17 +143,25 @@ void HistogramDialogComboBox::OnEditBitmapCombo(wxCommandEvent& event) { bool createaddandremovecontrols = true; HistogramDialog* dialog = new HistogramDialog(this,_T("Color Configuration"),createaddandremovecontrols); - dialog->initializeHistogram(_img); + dialog->initializeHistogram(_img); dialog->setInfoPanExtraControls(_bitmapsitems); if(dialog->ShowModal()==wxID_OK) { dialog->UpdateCurrentComboElement(); _bitmapsitems = dialog->getComboBoxItems(); - + //std::string currentpath = crea::System::GetDllAppPath("bbcreaMaracasVisu"); // JPR - std::string dllLastName("bbcreaMaracasVisu"); - std::string currentpath = crea::System::GetDllAppPath(dllLastName); + std::string dllLastName; + std::string currentpath; + #ifdef WIN32 + dllLastName = "bbcreaMaracasVisu"; + currentpath = crea::System::GetDllAppPath(dllLastName); + #endif + #ifdef LINUX + currentpath = crea::System::GetExecutablePath(); + currentpath.append("../share/creaMaracasVisu/data/"); + #endif currentpath.append(FILENAME); std::vector redvect,greenvect,bluevect; @@ -154,20 +174,20 @@ void HistogramDialogComboBox::OnEditBitmapCombo(wxCommandEvent& event) } _bitmapsitems.clear(); _bitmapcombo = getBitmapComboElements(); - if(_bitmapsizer->Replace(tempbitmapcombo,_bitmapcombo)){ - + if(_bitmapsizer->Replace(tempbitmapcombo,_bitmapcombo)){ + tempbitmapcombo->Destroy(); } this->Layout(); - } + } dialog->Destroy(); } } void HistogramDialogComboBox::saveCurrentConfiguration(std::vector& itembitmaps,std::string filename) { - std::ofstream file; - file.open( (const char*) (filename.c_str()) ); + std::ofstream file; + file.open( (const char*) (filename.c_str()) ); double gv=-1,red=-1,gr=-1,bl=-1; int in=-1; @@ -186,8 +206,8 @@ void HistogramDialogComboBox::saveCurrentConfiguration(std::vector"<< std::endl; } - file << " " << std::endl; - file << " " << vecttransfer[j] << "" <" << std::endl; + file << " " << vecttransfer[j] << "" <" << value[j] << " "<" << std::endl; if(j==vecttransfer.size()-1){ @@ -199,7 +219,7 @@ void HistogramDialogComboBox::saveCurrentConfiguration(std::vector green = item->getGreenVector(); std::vector blue = item->getBlueVector(); for(int j = 0; j < greyv.size();j++) - { + { if(j==0){ file << " " << std::endl; } @@ -208,14 +228,14 @@ void HistogramDialogComboBox::saveCurrentConfiguration(std::vector" << red[j] << "" <" << green[j] << "" <" << blue[j] << "" <" << std::endl; + file << " " << std::endl; if(j==greyv.size()-1){ file << " " << std::endl; } } - file << " "<< std::endl; + file << " "<< std::endl; } - file << "" << std::endl; + file << "" << std::endl; } file.close(); } @@ -224,14 +244,22 @@ wxBitmapComboBox* HistogramDialogComboBox::getBitmapComboElements() { std::string currentpath = ""; #ifdef WIN32 - currentpath = crea::System::GetDllAppPath("bbcreaMaracasVisu"); + currentpath = crea::System::GetDllAppPath("bbcreaMaracasVisu"); +#endif +#ifdef LINUX + currentpath = crea::System::GetExecutablePath(); + currentpath.append("../share/CreaMaracasVisu/data/"); + +printf("EED JCP OOOOJJJOOO cambiar esto HistogramDialogComboBox::HistogramDialog writting in this file ******************\n"); + currentpath = "/home/davila/dataHistogram"; + #endif currentpath.append(FILENAME); - + std::cout<<"current file name " < bitmapsitems; - OnLoadComboBoxData(bitmapsitems, currentpath); + OnLoadComboBoxData(bitmapsitems, currentpath); _bitmapsitems = bitmapsitems; wxString* choices; choices = new wxString[bitmapsitems.size()]; @@ -242,7 +270,7 @@ wxBitmapComboBox* HistogramDialogComboBox::getBitmapComboElements() wxBitmapComboBox* bitmapcombo = new wxBitmapComboBox(this, -1, _T(""), wxDefaultPosition, wxDefaultSize, bitmapsitems.size(),choices); bitmapcombo->SetSize(65,30); - Connect(bitmapcombo->GetId(), wxEVT_COMMAND_COMBOBOX_SELECTED, (wxObjectEventFunction)&HistogramDialogComboBox::OnBitmapComboItemSelected); + Connect(bitmapcombo->GetId(), wxEVT_COMMAND_COMBOBOX_SELECTED, (wxObjectEventFunction)&HistogramDialogComboBox::OnBitmapComboItemSelected); for(int i = 0; i < bitmapsitems.size(); i++) { @@ -252,7 +280,7 @@ wxBitmapComboBox* HistogramDialogComboBox::getBitmapComboElements() } void HistogramDialogComboBox::OnBitmapComboItemSelected(wxCommandEvent& event) -{ +{ if(_bitmapcombo!=NULL) { _currentitem = event.GetInt(); @@ -267,31 +295,31 @@ void HistogramDialogComboBox::OnBitmapComboItemSelected(wxCommandEvent& event) _value = currentconfig->getValueVector(); wxCommandEvent newevent(wxEVT_COMMAND_COMBOBOX_SELECTED,this->GetId()); ProcessEvent(newevent); - } + } } } void HistogramDialogComboBox::OnLoadComboBoxData(std::vector& itembitmaps, std::string filename) -{ +{ std::vector redvect, greenvect, bluevect; std::vector greyvect, greyvecttransfunct, value; - redvect.clear(); - greenvect.clear(); + redvect.clear(); + greenvect.clear(); bluevect.clear(); - greyvect.clear(); - greyvecttransfunct.clear(); + greyvect.clear(); + greyvecttransfunct.clear(); value.clear(); - std::ifstream file; - file.open( (const char*) (filename.c_str()) ); + std::ifstream file; + file.open( (const char*) (filename.c_str()) ); double gv=-1,gvtransfer=-1,intensity=-1,red=-1,gr=-1,bl=-1; int in=-1; //std::cout<"); int pos2=line.find("<",pos1+1); std::string x=line.substr(pos1+1,pos2-pos1-1); - gvtransfer=atof(x.c_str()); + gvtransfer=atof(x.c_str()); greyvecttransfunct.push_back(gvtransfer); }else if((int)(line.find(""))!=-1) { int pos1=line.find(">"); int pos2=line.find("<",pos1+1); std::string x=line.substr(pos1+1,pos2-pos1-1); - intensity=atof(x.c_str()); + intensity=atof(x.c_str()); value.push_back(intensity); } else if( (int)(line.find(""))!=-1) @@ -320,8 +348,8 @@ void HistogramDialogComboBox::OnLoadComboBoxData(std::vector"); int pos2=line.find("<",pos1+1); std::string x=line.substr(pos1+1,pos2-pos1-1); - gv=atof(x.c_str()); - greyvect.push_back(gv); + gv=atof(x.c_str()); + greyvect.push_back(gv); } else if( (int)(line.find(""))!=-1) { @@ -329,7 +357,7 @@ void HistogramDialogComboBox::OnLoadComboBoxData(std::vector"))!=-1) { @@ -344,9 +372,9 @@ void HistogramDialogComboBox::OnLoadComboBoxData(std::vector"); int pos2=line.find("<",pos1+1); std::string x=line.substr(pos1+1,pos2-pos1-1); - bl=atof(x.c_str()); + bl=atof(x.c_str()); bluevect.push_back(bl); - + }else if( (int)(line.find(""))!=-1 ) { item->SetColors(greyvect,redvect,greenvect,bluevect); @@ -361,7 +389,7 @@ void HistogramDialogComboBox::OnLoadComboBoxData(std::vector& greylevel,std::vector& value) -{ - for(int i = 0; i < _greyvecttransfer.size();i++) { +{ + for(int i = 0; i < _greyvecttransfer.size();i++) { greylevel.push_back(_greyvecttransfer[i]*_maxgreyvalue); - value.push_back(_value[i]); + value.push_back(_value[i]); } } @@ -397,11 +425,11 @@ void HistogramDialogComboBox::GetValuesColorPointsFunction(std::vector& std::vector& red, std::vector& green, std::vector& blue) -{ - for(int i = 0; i < _greyvect.size();i++) { +{ + for(int i = 0; i < _greyvect.size();i++) { greylevel.push_back(_greyvect[i]*_maxgreyvalue); red.push_back(_redvect[i]); green.push_back(_greenvect[i]); - blue.push_back(_bluevect[i]); + blue.push_back(_bluevect[i]); } }