diff --git a/css/main.css b/css/main.css index 1982f69938b9512d84c077cba683efdfa17ebf08..2e66d2086fac0f6229b7de8bcc236654bf80faba 100644 --- a/css/main.css +++ b/css/main.css @@ -455,4 +455,13 @@ label { width: 15px; display: inline-block; margin-right: 10px; -} \ No newline at end of file +} + +#voltageUnits { + position: absolute; + left: 131px; +} +#currentUnits{ + position: absolute; + left: 245px; +} diff --git a/js/main.js b/js/main.js index 96b86a9c728d740e468ef10b97a3a0ae078fe2a5..6946fc15b070d3b3b4dc878b0dd99230f4ab9ab1 100644 --- a/js/main.js +++ b/js/main.js @@ -154,12 +154,14 @@ require.config({ mDynamicMenuTemplate: 'menus/templates/MDynamicMenuView.html', //electronic sim + eSimPlist: 'plists/ESimPlist', eSim: 'simulation/electronics/eSim', latticeESim: 'lattice/LatticeEsim', eSimCell: 'simulation/electronics/cells/eSimCell', eSimSuperCell: 'simulation/electronics/cells/eSimSuperCell', + //cam cam: 'cam/cam', diff --git a/js/menus/EStaticMenuView.js b/js/menus/EStaticMenuView.js index 152028182ea3c95711746a8a043ea82bbdccde3c..a35e97df12ae3b67dda052ecb35f8723333912f7 100644 --- a/js/menus/EStaticMenuView.js +++ b/js/menus/EStaticMenuView.js @@ -3,8 +3,8 @@ */ -define(['jquery', 'underscore', 'menuParent', 'plist', 'text!eStaticMenuTemplate', 'eSim', 'latticeESim'], - function($, _, MenuParentView, plist, template, eSim, lattice){ +define(['jquery', 'underscore', 'menuParent', 'eSimPlist', 'text!eStaticMenuTemplate', 'eSim', 'latticeESim'], + function($, _, MenuParentView, eSimPlist, template, eSim, lattice){ return MenuParentView.extend({ @@ -43,7 +43,7 @@ define(['jquery', 'underscore', 'menuParent', 'plist', 'text!eStaticMenuTemplate }, _makeTemplateJSON: function(){ - return _.extend(this.model.toJSON(), eSim.toJSON()); + return _.extend(this.model.toJSON(), eSim.toJSON(), eSimPlist); }, template: _.template(template) diff --git a/js/menus/templates/EStaticMenuView.html b/js/menus/templates/EStaticMenuView.html index 86bd6115e4bad1b68ac26fa2e9c235e8599f74e6..49ce039a86c8a03a2cb913054fb1953abad32296 100644 --- a/js/menus/templates/EStaticMenuView.html +++ b/js/menus/templates/EStaticMenuView.html @@ -14,7 +14,24 @@ <input data-property="voltage" data-index="<%= index %>" value="<%= groupData.voltage %>" placeholder="Voltage" class="form-control floatInput eSimGroup voltageInput" type="text"> <input data-property="current" data-index="<%= index %>" value="<%= groupData.current %>" placeholder="Current" class="form-control floatInput eSimGroup currentInput" type="text"> </label> - <% }); %><br/> + <% }); %> + Units: + <div class="btn-group" id="voltageUnits"> + <button data-toggle="dropdown" class="btn dropdown-toggle" type="button"><%= allVoltageUnits[voltageUnits] %><span class="caret"></span></button> + <ul role="menu" class="dropdown-menu"> + <% _.each(allVoltageUnits, function(unit, key){ %> + <li><a class="eSim dropdownSelector" data-property="voltageUnits" data-value="<%= key %>" href="#"><%= unit %></a></li> + <% }); %> + </ul> + </div> + <div class="btn-group" id="currentUnits"> + <button data-toggle="dropdown" class="btn dropdown-toggle" type="button"><%= allCurrentUnits[currentUnits] %><span class="caret"></span></button> + <ul role="menu" class="dropdown-menu"> + <% _.each(allCurrentUnits, function(unit, key){ %> + <li><a class="eSim dropdownSelector" data-property="currentUnits" data-value="<%= key %>" href="#"><%= unit %></a></li> + <% }); %> + </ul> + </div><br/><br/> <div class="inlineSwatch capacitance"></div>Capacitance:<br/> <div class="inlineSwatch inductance"></div>Inductance:<br/><br/> <a href="#" id="calcCapacitance" class="btn btn-block btn-lg btn-default"><% if(globalCapacitance){ %>Re-<% } %>Calculate Capacitance</a><br/> diff --git a/js/plists/ESimPlist.js b/js/plists/ESimPlist.js new file mode 100644 index 0000000000000000000000000000000000000000..65a427192bf15ae0411e13c576c31be10a0cb9f5 --- /dev/null +++ b/js/plists/ESimPlist.js @@ -0,0 +1,22 @@ +/** + * Created by aghassaei on 8/9/15. + */ + + +define([], function(){ + + return { + + allCurrentUnits:{ + 1: "A", + 0.001: "mA", + 0.000001: "uA" + }, + + allVoltageUnits:{ + 1: "V", + 0.001: "mV" + } + } + +}); \ No newline at end of file diff --git a/js/simulation/electronics/eSim.js b/js/simulation/electronics/eSim.js index 8f1d140f3d05cec084f9c22088a76d1a94cd5ddc..1373adf48feb42b58c496f45babf3da0010089bd 100644 --- a/js/simulation/electronics/eSim.js +++ b/js/simulation/electronics/eSim.js @@ -11,7 +11,9 @@ define(['underscore', 'backbone'], function(_, Backbone){ conductorGroups: null,//[{id: xx, current:xx, voltage:xx}] visibleConductorGroup: -1, globalCapacitance: null, - globalInductance: null + globalInductance: null, + voltageUnits: "1", + currentUnits: "0.001" }