bugfix: intensity and feedrate sliders working again.

This commit is contained in:
Teja 2015-01-28 18:31:41 +01:00
parent 79f053be80
commit 61033fe7e5
2 changed files with 35 additions and 12 deletions

View file

@ -15,15 +15,20 @@ function VectorConversionViewModel(params) {
self.defaultProfile = undefined;
self.gcodeFilename = ko.observable();
self.laserIntensity = ko.observable("800"); // TODO fetch from settings
self.laserSpeed = ko.observable("300");
self.settingValues = ko.observable(self.settings.settings);
self.laserIntensity = ko.observable(undefined);
self.laserSpeed = ko.observable(undefined);
self.title = ko.observable(undefined);
self.slicer = ko.observable();
self.slicers = ko.observableArray();
self.profile = ko.observable();
self.profiles = ko.observableArray();
self.laserIntensity.subscribe(function(newVal){
console.log("laserInt new Val", newVal);
});
// TODO check if still in use
self.show = function(target, file) {
self.target = target;
self.file = file;
@ -34,6 +39,11 @@ function VectorConversionViewModel(params) {
// shows conversion dialog and extracts svg first
self.show_conversion_dialog = function() {
var intensity = self.settings.settings.plugins.svgtogcode.defaultIntensity();
var speed = self.settings.settings.plugins.svgtogcode.defaultIntensity();
self.laserIntensity(intensity);
self.laserSpeed(speed);
self.svg = self.workingArea.getCompositionSVG();
// TODO: js svg conversion
@ -78,16 +88,17 @@ function VectorConversionViewModel(params) {
self.profilesForSlicer(newValue);
});
// TODO check if still necessary...
self.enableConvertButton = ko.computed(function() {
if (self.laserIntensity() === undefined || self.laserSpeed() === undefined || self.gcodeFilename() === undefined) {
return false;
} else {
var tmpIntensity = parseInt(self.laserIntensity().trim());
var tmpSpeed = parseInt(self.laserSpeed().trim());
var tmpIntensity = self.laserIntensity();
var tmpSpeed = self.laserSpeed();
var tmpGcodeFilename = self.gcodeFilename().trim();
return tmpGcodeFilename !== ""
&& tmpIntensity > 0 && tmpIntensity <= 1000
&& tmpSpeed >= 30 && tmpSpeed <= 2000;
&& tmpSpeed >= 30 && tmpSpeed <= 3000;
}
});
@ -210,7 +221,7 @@ function VectorConversionViewModel(params) {
};
self._configureIntensitySlider = function() {
self.layerSlider = $("#svgtogcode_intensity").slider({
self.intensitySlider = $("#svgtogcode_intensity").slider({
id: "svgtogcode_intensity_slider",
reversed: false,
selection: "after",
@ -221,11 +232,17 @@ function VectorConversionViewModel(params) {
value: 500,
enabled: true,
formatter: function(value) { return "" + (value/10) +"%"; }
}).on("slideStop", self.changeIntensity);
}).on("slideStop", function(ev){
self.laserIntensity(ev.value);
});
self.laserIntensity.subscribe(function(newVal){
self.intensitySlider.slider('setValue', parseInt(newVal));
});
};
self._configureFeedrateSlider = function() {
self.layerSlider = $("#svgtogcode_feedrate").slider({
self.feedrateSlider = $("#svgtogcode_feedrate").slider({
id: "svgtogcode_feedrate_slider",
reversed: false,
selection: "after",
@ -236,7 +253,13 @@ function VectorConversionViewModel(params) {
value: 300,
enabled: true,
formatter: function(value) { return "" + (value) +"mm/min"; }
}).on("slideStop", self.changeFeedrate);
}).on("slideStop", function(ev){
self.laserSpeed(ev.value);
});
self.laserSpeed.subscribe(function(newVal){
self.feedrateSlider.slider('setValue', parseInt(newVal));
});
};
}

View file

@ -10,12 +10,12 @@
<label class="control-label">{{ _('Laser intensity (1-1000)') }}</label>
<div class="controls">
<div class="input-append">
<input id="svgtogcode_intensity" type="text" data-bind="value: laserIntensity">
<input id="svgtogcode_intensity" type="text" data-bind="slicerValue: laserIntensity">
</div>
</div>
</div>
<div class="control-group">
<label class="control-label">{{ _('Speed (30 - 2000)') }}</label>
<label class="control-label">{{ _('Speed (30 - 3000)') }}</label>
<div class="controls">
<div class="input-append">
<input id="svgtogcode_feedrate" type="text" data-bind="value: laserSpeed">