-          
-            
+      
+        
+        
+          
+            
+              
+            />
+
+            
+            
+            {plots}
+          
+            {selectedPlot}
           
-          
-          {plots}
-        
-        
-          {selectedPlot}
-        
-      
+        
+      
     );
   }
 }
diff --git a/components/definition/plots/plotTypes/Plot2Dnet.js b/components/definition/plots/plotTypes/Plot2Dnet.js
index 517f8ed..20f138e 100644
--- a/components/definition/plots/plotTypes/Plot2Dnet.js
+++ b/components/definition/plots/plotTypes/Plot2Dnet.js
@@ -1,12 +1,12 @@
 import React, { Component } from 'react';
-import Checkbox from '@material-ui/core/Checkbox';
-import SelectField from '../../../base/SelectField';
+import Checkbox from '../../../general/Checkbox';
+import Select from '../../../general/Select';
 import NetPyNEInclude from '../NetPyNEInclude';
 import NetPyNEField from '../../../general/NetPyNEField';
 
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
 var PythonControlledCheckbox = PythonControlledCapability.createPythonControlledControl(Checkbox);
-var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(SelectField);
+var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(Select);
 
 export default class Plot2Dnet extends React.Component {
 
diff --git a/components/definition/plots/plotTypes/PlotConn.js b/components/definition/plots/plotTypes/PlotConn.js
index bf55eb1..f322003 100644
--- a/components/definition/plots/plotTypes/PlotConn.js
+++ b/components/definition/plots/plotTypes/PlotConn.js
@@ -1,10 +1,10 @@
 import React, { Component } from 'react';
-import SelectField from '../../../base/SelectField';
+import Select from '../../../general/Select';
 import NetPyNEInclude from '../NetPyNEInclude';
 import NetPyNEField from '../../../general/NetPyNEField';
 
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
-var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(SelectField);
+var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(Select);
 
 export default class plotConn extends React.Component {
 
diff --git a/components/definition/plots/plotTypes/PlotLFP.js b/components/definition/plots/plotTypes/PlotLFP.js
index ec8b065..6d6c523 100644
--- a/components/definition/plots/plotTypes/PlotLFP.js
+++ b/components/definition/plots/plotTypes/PlotLFP.js
@@ -1,7 +1,7 @@
 import React from 'react';
-import Checkbox from '@material-ui/core/Checkbox';
+import Checkbox from '../../../general/Checkbox';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../../base/SelectField';
+import Select from '../../../general/Select';
 import TimeRange from '../TimeRange'
 import ListComponent from '../../../general/List';
 import NetPyNEField from '../../../general/NetPyNEField';
@@ -10,7 +10,7 @@ var PythonControlledCapability = require('geppetto-client/js/communication/geppe
 var PythonControlledCheckbox = PythonControlledCapability.createPythonControlledControl(Checkbox);
 var PythonControlledTextField = PythonControlledCapability.createPythonControlledControl(TextField);
 var PythonControlledListComponent = PythonControlledCapability.createPythonControlledControl(ListComponent);
-var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(SelectField);
+var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(Select);
 
 export default class PlotLFP extends React.Component {
 
diff --git a/components/definition/plots/plotTypes/PlotRaster.js b/components/definition/plots/plotTypes/PlotRaster.js
index e765d62..320cc0d 100644
--- a/components/definition/plots/plotTypes/PlotRaster.js
+++ b/components/definition/plots/plotTypes/PlotRaster.js
@@ -1,7 +1,7 @@
 import React, { Component } from 'react';
-import Checkbox from '@material-ui/core/Checkbox';
+import Checkbox from '../../../general/Checkbox';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../../base/SelectField';
+import Select from '../../../general/Select';
 import TimeRange from '../TimeRange'
 import NetPyNEInclude from '../NetPyNEInclude';
 import NetPyNEField from '../../../general/NetPyNEField';
@@ -9,7 +9,7 @@ import NetPyNEField from '../../../general/NetPyNEField';
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
 var PythonControlledCheckbox = PythonControlledCapability.createPythonControlledControl(Checkbox);
 var PythonControlledTextField = PythonControlledCapability.createPythonControlledControl(TextField);
-var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(SelectField);
+var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(Select);
 
 export default class PlotRaster extends React.Component {
 
diff --git a/components/definition/plots/plotTypes/PlotRatePSD.js b/components/definition/plots/plotTypes/PlotRatePSD.js
index a8e4023..2c0a6f1 100644
--- a/components/definition/plots/plotTypes/PlotRatePSD.js
+++ b/components/definition/plots/plotTypes/PlotRatePSD.js
@@ -1,5 +1,5 @@
 import React, { Component } from 'react';
-import Checkbox from '@material-ui/core/Checkbox';
+import Checkbox from '../../../general/Checkbox';
 import TextField from '@material-ui/core/TextField';
 import TimeRange from '../TimeRange'
 import NetPyNEInclude from '../NetPyNEInclude';
diff --git a/components/definition/plots/plotTypes/PlotShape.js b/components/definition/plots/plotTypes/PlotShape.js
index 3817a80..c720e68 100644
--- a/components/definition/plots/plotTypes/PlotShape.js
+++ b/components/definition/plots/plotTypes/PlotShape.js
@@ -1,14 +1,14 @@
 import React, { Component } from 'react';
-import Checkbox from '@material-ui/core/Checkbox';
+import Checkbox from '../../../general/Checkbox';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../../base/SelectField';
+import Select from '../../../general/Select';
 import ListComponent from '../../../general/List'; 
 import NetPyNEField from '../../../general/NetPyNEField';
 
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
 var PythonControlledCheckbox = PythonControlledCapability.createPythonControlledControl(Checkbox);
 var PythonControlledTextField = PythonControlledCapability.createPythonControlledControl(TextField);
-var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(SelectField);
+var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(Select);
 var PythonControlledListComponent = PythonControlledCapability.createPythonControlledControl(ListComponent);
 
 export default class PlotShape extends React.Component {
diff --git a/components/definition/plots/plotTypes/PlotSpikeHist.js b/components/definition/plots/plotTypes/PlotSpikeHist.js
index ab18659..4b8853b 100644
--- a/components/definition/plots/plotTypes/PlotSpikeHist.js
+++ b/components/definition/plots/plotTypes/PlotSpikeHist.js
@@ -1,7 +1,7 @@
 import React, { Component } from 'react';
-import Checkbox from '@material-ui/core/Checkbox';
+import Checkbox from '../../../general/Checkbox';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../../base/SelectField';
+import Select from '../../../general/Select';
 import TimeRange from '../TimeRange'
 import NetPyNEInclude from '../NetPyNEInclude';
 import NetPyNEField from '../../../general/NetPyNEField';
@@ -9,7 +9,7 @@ import NetPyNEField from '../../../general/NetPyNEField';
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
 var PythonControlledCheckbox = PythonControlledCapability.createPythonControlledControl(Checkbox);
 var PythonControlledTextField = PythonControlledCapability.createPythonControlledControl(TextField);
-var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(SelectField);
+var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(Select);
 
 export default class PlotSpikeHist extends React.Component {
 
diff --git a/components/definition/plots/plotTypes/PlotSpikeStats.js b/components/definition/plots/plotTypes/PlotSpikeStats.js
index 65ccef2..32fc1c3 100644
--- a/components/definition/plots/plotTypes/PlotSpikeStats.js
+++ b/components/definition/plots/plotTypes/PlotSpikeStats.js
@@ -1,6 +1,6 @@
 import React, { Component } from 'react';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../../base/SelectField';
+import Select from '../../../general/Select';
 import TimeRange from '../TimeRange'
 import NetPyNEInclude from '../NetPyNEInclude';
 import ListComponent from '../../../general/List';
@@ -8,7 +8,7 @@ import NetPyNEField from '../../../general/NetPyNEField';
 
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
 var PythonControlledTextField = PythonControlledCapability.createPythonControlledControl(TextField);
-var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(SelectField);
+var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(Select);
 var PythonControlledListComponent = PythonControlledCapability.createPythonControlledControl(ListComponent);
 
 export default class PlotSpikeStats extends React.Component {
diff --git a/components/definition/plots/plotTypes/PlotTraces.js b/components/definition/plots/plotTypes/PlotTraces.js
index f08ddf5..cd15f69 100644
--- a/components/definition/plots/plotTypes/PlotTraces.js
+++ b/components/definition/plots/plotTypes/PlotTraces.js
@@ -1,7 +1,7 @@
 import React, { Component } from 'react';
-import Checkbox from '@material-ui/core/Checkbox';
+import Checkbox from '../../../general/Checkbox';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../../base/SelectField';
+import Select from '../../../general/Select';
 import TimeRange from '../TimeRange'
 import NetPyNEInclude from '../NetPyNEInclude';
 import NetPyNEField from '../../../general/NetPyNEField';
@@ -9,7 +9,7 @@ import NetPyNEField from '../../../general/NetPyNEField';
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
 var PythonControlledCheckbox = PythonControlledCapability.createPythonControlledControl(Checkbox);
 var PythonControlledTextField = PythonControlledCapability.createPythonControlledControl(TextField);
-var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(SelectField);
+var PythonControlledSelectField = PythonControlledCapability.createPythonControlledControl(Select);
 
 export default class PlotTraces extends React.Component {
 
diff --git a/components/definition/populations/Dimensions.js b/components/definition/populations/Dimensions.js
index 70a4e52..c8dd78b 100644
--- a/components/definition/populations/Dimensions.js
+++ b/components/definition/populations/Dimensions.js
@@ -1,6 +1,6 @@
 import React, { Component } from 'react';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../base/SelectField';
+import Select from '@material-ui/core/Select';
 import MenuItem from '@material-ui/core/MenuItem';
 import Utils from '../../../Utils';
 
@@ -18,7 +18,7 @@ export default class DimensionsComponent extends Component {
     super(props);
     this.state = {
       modelName: props.modelName,
-      dimension: null
+      dimension: 'numCells'
     };
     this.popDimensionsOptions = [{ label: 'Number of cells', value: 'numCells' }, { label: 'Density', value: 'density' }, { label: 'Grid spacing', value: 'gridSpacing' }];
 
@@ -35,9 +35,9 @@ export default class DimensionsComponent extends Component {
     this.updateLayout();
   }
 
-  componentWillReceiveProps (nextProps) {
+  UNSAFE_componentWillReceiveProps (nextProps) {
     if (this.state.modelName != nextProps.modelName) {
-      this.setState({ modelName: nextProps.modelName, dimension: null });
+      this.setState({ modelName: nextProps.modelName, dimension: 'numCells' });
     }
   }
 
@@ -53,47 +53,58 @@ export default class DimensionsComponent extends Component {
     Promise.all(requests).then(values => {
       var index = values.indexOf(true);
       if (index == -1) {
-        this.setState({ dimension: null });
+        this.setState({ dimension: 'numCells' });
       } else {
         this.setState({ dimension: this.popDimensionsOptions[index].value });
       }
     });
   }
 
+  handleDimValueChange (event) {
+    var newValue = (event.target.type == 'number') ? parseFloat(event.target.value) : event.target.value;
+    // Update State
+    if (Object.is(newValue, NaN)) {
+      newValue = 0
+    }
+    this.setState({ value: newValue });
+    this.triggerUpdate(() => {
+      // Set Population Dimension Python Side
+      Utils
+        .evalPythonMessage('netpyne_geppetto.netParams.popParams.setParam', [this.props.modelName, this.props.dimensionType, newValue])
+        .then(function (response) {
+          GEPPETTO.trigger("population_update_dimension")
+        });
+    });
+  }
+
   render () {
 
     return (
       
         
-           this.setState({ dimension: event.target.value })}
           >
             {(this.popDimensionsOptions != undefined)
-              ? this.popDimensionsOptions.map(function (popDimensionsOption) {
-                return ()
-              }) : null}
-          
+              ? this.popDimensionsOptions.map(popDimensionsOption => (
+                
+              )) : null}
+          
         
         {
           this.state.dimension != undefined && this.state.dimension != ""
             ? 
                {
-                    // Set Population Dimension Python Side
-                    Utils
-                      .evalPythonMessage('netpyne_geppetto.netParams.popParams.setParam', [this.props.modelName, this.props.dimensionType, newValue])
-                      .then(function (response) {
-                        GEPPETTO.trigger("population_update_dimension")
-                      });
-                  });
-                }}
+                handleChange={this.handleDimValueChange}
                 model={"netParams.popParams['" + this.state.modelName + "']['" + this.state.dimension + "']"}
                 modelName={this.state.modelName}
                 dimensionType={this.state.dimension}
diff --git a/components/definition/populations/NetPyNEPopulation.js b/components/definition/populations/NetPyNEPopulation.js
index deb707b..955473e 100644
--- a/components/definition/populations/NetPyNEPopulation.js
+++ b/components/definition/populations/NetPyNEPopulation.js
@@ -8,10 +8,6 @@ import NetPyNEField from '../../general/NetPyNEField';
 import DimensionsComponent from './Dimensions';
 import NetPyNECoordsRange from '../../general/NetPyNECoordsRange';
 import Dialog from '@material-ui/core/Dialog/Dialog';
-import DialogActions from '@material-ui/core/DialogActions';
-import DialogContent from '@material-ui/core/DialogContent';
-import DialogContentText from '@material-ui/core/DialogContentText';
-import DialogTitle from '@material-ui/core/DialogTitle';
 import Button from '@material-ui/core/Button';
 
 
@@ -32,7 +28,7 @@ export default class NetPyNEPopulation extends React.Component {
     };
   }
 
-  componentWillReceiveProps (nextProps) {
+  UNSAFE_componentWillReceiveProps (nextProps) {
     this.setState({ currentName: nextProps.name, selectedIndex: 0, sectionId: "General" });
   }
 
@@ -123,18 +119,12 @@ export default class NetPyNEPopulation extends React.Component {
     var title = this.state.errorMessage;
     var children = this.state.errorDetails;
     var dialogPop = (this.state.errorMessage != undefined) ?  : undefined;
     if (this.state.sectionId == "General") {
       var content
@@ -213,7 +203,7 @@ export default class NetPyNEPopulation extends React.Component {
     return (
       
         
-          
+          
             {this.getModelParameters()}
           
         
diff --git a/components/definition/populations/NetPyNEPopulations.js b/components/definition/populations/NetPyNEPopulations.js
index 4dd9429..8969524 100644
--- a/components/definition/populations/NetPyNEPopulations.js
+++ b/components/definition/populations/NetPyNEPopulations.js
@@ -6,10 +6,6 @@ import NetPyNEPopulation from './NetPyNEPopulation';
 import NetPyNEAddNew from '../../general/NetPyNEAddNew';
 import NetPyNEThumbnail from '../../general/NetPyNEThumbnail';
 import Dialog from '@material-ui/core/Dialog/Dialog';
-import DialogActions from '@material-ui/core/DialogActions';
-import DialogContent from '@material-ui/core/DialogContent';
-import DialogContentText from '@material-ui/core/DialogContentText';
-import DialogTitle from '@material-ui/core/DialogTitle';
 import Button from '@material-ui/core/Button';
 
 export default class NetPyNEPopulations extends React.Component {
@@ -168,18 +164,12 @@ export default class NetPyNEPopulations extends React.Component {
     var title = this.state.errorMessage;
     var children = this.state.errorDetails;
     var dialogPop = (this.state.errorMessage != undefined) ? 
 : undefined;
 
     if (this.state.value != undefined && this.state.value !== '') {
@@ -202,29 +192,35 @@ export default class NetPyNEPopulations extends React.Component {
     }
 
     return (
-      
-        
-          {selectedPopulation}
-        
-        
-          
-            
 this.setState({ selectedPopulation: undefined })}
-            />
-
-            
-
+      
+        
+        
+          
+            {selectedPopulation}
+          
+          
+            
+               this.setState({ selectedPopulation: undefined })}
+              />
+
+              
+
+            
+            
+            {populations}
           
-       
+        
         {dialogPop}
-      
+      
 
     );
   }
diff --git a/components/definition/stimulationSources/NetPyNEStimulationSource.js b/components/definition/stimulationSources/NetPyNEStimulationSource.js
index 6bc1381..59027e4 100644
--- a/components/definition/stimulationSources/NetPyNEStimulationSource.js
+++ b/components/definition/stimulationSources/NetPyNEStimulationSource.js
@@ -1,15 +1,11 @@
 import React from 'react';
 import MenuItem from '@material-ui/core/MenuItem';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../base/SelectField';
 import Utils from '../../../Utils';
+import Select from '../../general/Select';
 import ListComponent from '../../general/List';
 import NetPyNEField from '../../general/NetPyNEField';
 import Dialog from '@material-ui/core/Dialog/Dialog';
-import DialogActions from '@material-ui/core/DialogActions';
-import DialogContent from '@material-ui/core/DialogContent';
-import DialogContentText from '@material-ui/core/DialogContentText';
-import DialogTitle from '@material-ui/core/DialogTitle';
 import Button from '@material-ui/core/Button';
 
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
@@ -22,7 +18,7 @@ export default class NetPyNEStimulationSource extends React.Component {
     super(props);
     this.state = {
       currentName: props.name,
-      sourceType: '',
+      sourceType: 'IClamp',
       errorMessage: undefined,
       errorDetails: undefined
     };
@@ -36,9 +32,9 @@ export default class NetPyNEStimulationSource extends React.Component {
     this.handleStimSourceTypeChange = this.handleStimSourceTypeChange.bind(this);
   }
 
-  componentWillReceiveProps (nextProps) {
+  UNSAFE_componentWillReceiveProps (nextProps) {
     if (this.state.currentName != nextProps.name) {
-      this.setState({ currentName: nextProps.name, sourceType: null });
+      this.setState({ currentName: nextProps.name, sourceType: '' });
     }
   }
 
@@ -107,20 +103,17 @@ export default class NetPyNEStimulationSource extends React.Component {
     ];
     var title = this.state.errorMessage;
     var children = this.state.errorDetails;
-    var dialogPop = (this.state.errorMessage != undefined) ? 
 : undefined;
+    var dialogPop = (this.state.errorMessage != undefined) ? (
+      
 
+    )
+      : undefined;
 
     if (this.state.sourceType == 'IClamp') {
       var variableContent = (
@@ -284,11 +277,12 @@ export default class NetPyNEStimulationSource extends React.Component {
             disabled={this.renaming}
             className={"netpyneField"}
             id={"sourceName"}
+            label="Stimulation source name"
           />
           
 
           
-            
               {(this.stimSourceTypeOptions != undefined)
                 ? this.stimSourceTypeOptions.map(function (stimSourceTypeOption) {
-                  return ()
+                  return (
+                    
+                  )
                 }) : null
               }
-            
+            
           
         
           {selectedStimulationSource}
         
@@ -197,10 +187,19 @@ export default class NetPyNEStimulationSources extends Component {
           
           {StimulationSources}
          
-        {dialogPop}
-      
+      
     );
 
-   
+    return (
+      
+        
+        {content}
+        {dialogPop}
+      
+    );
   }
 }
\ No newline at end of file
diff --git a/components/definition/stimulationTargets/NetPyNEStimulationTarget.js b/components/definition/stimulationTargets/NetPyNEStimulationTarget.js
index e905b84..22c29ed 100644
--- a/components/definition/stimulationTargets/NetPyNEStimulationTarget.js
+++ b/components/definition/stimulationTargets/NetPyNEStimulationTarget.js
@@ -2,23 +2,19 @@ import React from 'react';
 import CardText from '@material-ui/core/Card';
 import MenuItem from '@material-ui/core/MenuItem';
 import TextField from '@material-ui/core/TextField';
-import SelectField from '../../base/SelectField';
 import CondsIcon from '@material-ui/icons/LocalOffer';
 import StimTargetIcon from '@material-ui/icons/Reorder';
 import { BottomNavigation, BottomNavigationAction } from '@material-ui/core';
 import Utils from '../../../Utils';
+import Select from '../../general/Select';
 import NetPyNEField from '../../general/NetPyNEField';
 import StimulationConditions from './StimulationConditions';
 import Dialog from '@material-ui/core/Dialog/Dialog';
-import DialogActions from '@material-ui/core/DialogActions';
-import DialogContent from '@material-ui/core/DialogContent';
-import DialogContentText from '@material-ui/core/DialogContentText';
-import DialogTitle from '@material-ui/core/DialogTitle';
 import Button from '@material-ui/core/Button';
 
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
 var PythonControlledTextField = PythonControlledCapability.createPythonControlledControl(TextField);
-var PythonMethodControlledSelectField = PythonControlledCapability.createPythonControlledControlWithPythonDataFetch(SelectField);
+var PythonMethodControlledSelectField = PythonControlledCapability.createPythonControlledControlWithPythonDataFetch(Select);
 
 export default class NetPyNEStimulationTarget extends React.Component {
 
@@ -67,7 +63,7 @@ export default class NetPyNEStimulationTarget extends React.Component {
     GEPPETTO.off('stimSources_change')
   }
   
-  componentWillReceiveProps (nextProps) {
+  UNSAFE_componentWillReceiveProps (nextProps) {
     if (this.state.currentName != nextProps.name) {
       this.setState({ currentName: nextProps.name, selectedIndex:0, sectionId:'General' });
     }
@@ -153,17 +149,12 @@ export default class NetPyNEStimulationTarget extends React.Component {
     var title = this.state.errorMessage;
     var children = this.state.errorDetails;
     var dialogPop = (this.state.errorMessage != undefined) ?  : undefined;
 
     if (this.state.sectionId == "General") {
@@ -175,6 +166,7 @@ export default class NetPyNEStimulationTarget extends React.Component {
             disabled={this.renaming}
             className={"netpyneField"}
             id={"targetName"}
+            label="Stimulation target name"
           />
           
           
@@ -244,7 +236,7 @@ export default class NetPyNEStimulationTarget extends React.Component {
     return (
       
         
-          
+          
             {bottomNavigationItems}
           
         
diff --git a/components/definition/stimulationTargets/NetPyNEStimulationTargets.js b/components/definition/stimulationTargets/NetPyNEStimulationTargets.js
index f681b29..f226b66 100644
--- a/components/definition/stimulationTargets/NetPyNEStimulationTargets.js
+++ b/components/definition/stimulationTargets/NetPyNEStimulationTargets.js
@@ -1,14 +1,12 @@
 import React, { Component } from 'react';
+import { Card, CardHeader, CardContent } from '@material-ui/core';
+
 import Utils from '../../../Utils';
 import NetPyNEHome from '../../general/NetPyNEHome';
 import NetPyNEAddNew from '../../general/NetPyNEAddNew';
 import NetPyNEThumbnail from '../../general/NetPyNEThumbnail';
 import NetPyNEStimulationTarget from './NetPyNEStimulationTarget';
 import Dialog from '@material-ui/core/Dialog/Dialog';
-import DialogActions from '@material-ui/core/DialogActions';
-import DialogContent from '@material-ui/core/DialogContent';
-import DialogContentText from '@material-ui/core/DialogContentText';
-import DialogTitle from '@material-ui/core/DialogTitle';
 import Button from '@material-ui/core/Button';
 
 
@@ -147,17 +145,12 @@ export default class NetPyNEStimulationTargets extends Component {
     var title = this.state.errorMessage;
     var children = this.state.errorDetails;
     var dialogPop = (this.state.errorMessage != undefined) ? 
 : undefined;
 
     var model = this.state.value;
@@ -175,9 +168,8 @@ export default class NetPyNEStimulationTargets extends Component {
       selectedStimulationTarget = 
;
     }
 
-    return (
-      
-      
+    var content = (
+      
         
           {selectedStimulationTarget}
         
@@ -194,10 +186,19 @@ export default class NetPyNEStimulationTargets extends Component {
           
           {StimulationTargets}
          
-        {dialogPop}
-      
+      
     );
 
-
+    return (
+      
+        
+        {content}
+        {dialogPop}
+      
+    );
   }
 }
\ No newline at end of file
diff --git a/components/definition/stimulationTargets/StimulationConditions.js b/components/definition/stimulationTargets/StimulationConditions.js
index 5d6c36c..cb3ae43 100644
--- a/components/definition/stimulationTargets/StimulationConditions.js
+++ b/components/definition/stimulationTargets/StimulationConditions.js
@@ -1,13 +1,13 @@
 import React, { Component } from 'react';
 import MenuItem from '@material-ui/core/MenuItem';
-import SelectField from '../../base/SelectField';
+import Select from '../../general/Select';
 import ListComponent from '../../general/List';
 import NetPyNEField from '../../general/NetPyNEField';
 import NetPyNECoordsRange from '../../general/NetPyNECoordsRange';
 
 var PythonControlledCapability = require('geppetto-client/js/communication/geppettoJupyter/PythonControlledCapability');
 var PythonControlledListComponent = PythonControlledCapability.createPythonControlledControl(ListComponent);
-var PythonMethodControlledSelectField = PythonControlledCapability.createPythonControlledControlWithPythonDataFetch(SelectField);
+var PythonMethodControlledSelectField = PythonControlledCapability.createPythonControlledControlWithPythonDataFetch(Select);
 
 export default class StimulationConditions extends React.Component {
 
@@ -22,7 +22,6 @@ export default class StimulationConditions extends React.Component {