+/*# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
+# pour la Sant�)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+# Previous Authors : Laurent Guigues, Jean-Pierre Roux
+# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
+#
+# This software is governed by the CeCILL-B license under French law and
+# abiding by the rules of distribution of free software. You can use,
+# modify and/ or redistribute the software under the terms of the CeCILL-B
+# license as circulated by CEA, CNRS and INRIA at the following URL
+# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+# or in the file LICENSE.txt.
+#
+# As a counterpart to the access to the source code and rights to copy,
+# modify and redistribute granted by the license, users are provided only
+# with a limited warranty and the software's author, the holder of the
+# economic rights, and the successive licensors have only limited
+# liability.
+#
+# The fact that you are presently reading this means that you have had
+# knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------ */
+
//----------------------------------------------------------------------------------------------------------------
// Class definition include
//----------------------------------------------------------------------------------------------------------------
#include "wxInstantChooserPanel.h"
#include "wxContourMainFrame.h"
+//Test JCP 13-10-08
+//#include "wxContourEventHandler.h"
+//Test JCP 13-10-08
+
//----------------------------------------------------------------------------------------------------------------
// Class implementation
//----------------------------------------------------------------------------------------------------------------
sizer->Add( _outSizer, 1, wxEXPAND| wxGROW );
sizer->Add( resolutionSizer, 1, wxEXPAND | wxGROW );
SetSizer( sizer );
- Connect( wxID_ANY, wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxInstantChooserPanel:: onChechBoxClicked );
+ Connect( wxID_ANY, wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxInstantChooserPanel:: onCheckBoxClicked );
}
sizer->Add( _outSizer, 1, wxEXPAND| wxGROW );
sizer->Add( _resolutionSlider, 1, wxEXPAND | wxGROW );
SetSizer( sizer );
- Connect( wxID_ANY, wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxInstantChooserPanel:: onChechBoxClicked );
+ Connect( wxID_ANY, wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxInstantChooserPanel:: onCheckBoxClicked );
}
wxInstantChooserPanel :: ~wxInstantChooserPanel()
int value = _lastConceptUpdated->getActualValue();
int min = _lastConceptUpdated->getMinValue();
int max = _lastConceptUpdated->getMaxValue();
- int delta = (int) (pow( 2, _resolutionSlider->GetValue() ));
+ int delta = (int) (pow((double) 2, _resolutionSlider->GetValue() ));
int minTmp = value - delta/2;
int maxTmp = value + delta/2;
if (minTmp<min)
}
else
{
- for(int i=0; i<_concepts->size(); i++)
+ for(int i=0; i< (int)(_concepts->size()); i++)
{
changeResolutionAtConceptControl( (*_concepts)[i] );
}
}
//------------------------------------------------------------------------------------------------------------
- void wxInstantChooserPanel :: onChechBoxClicked( wxCommandEvent& event )
+ void wxInstantChooserPanel :: onCheckBoxClicked( wxCommandEvent& event )
{
- int groupID = (int)event.GetClientData();
+ /*int groupID = (int)event.GetClientData();
wxConceptControl * eventConcept = (wxConceptControl *)event.GetEventObject();
if ( eventConcept->getIfChecked( groupID ) )
{
}
}
}
+ }*/
+
+ int groupID = *(int*)event.GetClientData();
+ wxConceptControl * eventConcept = (wxConceptControl *)event.GetEventObject();
+ if ( eventConcept->getIfChecked( groupID ) )
+ {
+ int size = _concepts->size();
+ wxConceptControl * aConcept = NULL;
+// int accum = 0;
+
+ for(int i = 0; i < eventConcept->getNumCheckBox();i++){
+ if(i!=groupID){
+ eventConcept->clearCheckAt(i);
+ }
+ }
+ for(int i=0; i<size; i++)
+ {
+ aConcept = (*_concepts)[i];
+ if( aConcept!= eventConcept )
+ {
+ if( aConcept->getIfChecked( groupID ) )
+ {
+ aConcept->clearCheckAt( groupID );
+ }
+ }
+ }
}
}
// Sending the event of wxINSTANT_CHOOSER_CHANGE
//-------------------------------------------------
wxCommandEvent newevent(wxINSTANT_CHOOSER_CHANGE,GetId());
- _eventHandler->ProcessEvent(newevent);
+ //this->onChangeInstant(newevent);
+ ConceptDataWrap * dataConcept = getLastConceptData();
+ if(getIfConceptCheckedAt( dataConcept->getName(), 0 )){
+ wxContourMainFrame::getInstance()->onChangeInstantInstantPanel(dataConcept->getName(), dataConcept->getActualValue(), dataConcept->getMinShowedValue(), dataConcept->getMaxShowedValue());
+ }
+ //((wxContourEventHandler*)_eventHandler)->onChangeInstant(newevent);
+ //_eventHandler->ProcessEvent(newevent);
}
+
+ void wxInstantChooserPanel :: onChangeInstant( wxCommandEvent& event ){
+
+ }
+
//------------------------------------------------------------------------------------------------------------
// Methods for sending events
//------------------------------------------------------------------------------------------------------------
void wxInstantChooserPanel :: setInstant(std::vector<int> choiceInstant)
{
int max = _concepts->size();
- if( choiceInstant.size() == max )
+ if( (int)(choiceInstant.size()) == max )
{
int i = 0;
while(i< max)
int value = theConceptToUpdate->getActualValue();
int min = theConceptToUpdate->getMinValue();
int max = theConceptToUpdate->getMaxValue();
- int delta = (int) (pow( 2, _resolutionSlider->GetValue() ));
+ int delta = (int) (pow((double) 2, _resolutionSlider->GetValue() ));
int minTmp = value - delta/2;
int maxTmp = value + delta/2;
if (minTmp<min)
bool isChecked = false;
int i,size = _concepts->size();
- wxConceptControl * aConcept = NULL;
+// wxConceptControl * aConcept = NULL;
for ( i=0; i<size && !isChecked; i++ )
{
if( (*_concepts)[i]->getName().compare( theConceptName ) == 0 )
}
+ void wxInstantChooserPanel::addConcepts(std::vector<std::string> conceptNameVect,std::vector<int> conceptSizeVect){
+ int i=0;
+ int max = conceptNameVect.size();
+ for( ; i<max; i++)
+ {
+ if( conceptNameVect[i].compare("Axe Depth") == 0 )
+ {
+ addConcept( conceptNameVect[i], 0, conceptSizeVect[i], 1);
+ } else {
+ addConcept( conceptNameVect[i], 1, conceptSizeVect[i], 1);
+ } // if
+ }
+ }
+