Skip to content
Snippets Groups Projects
Select Git revision
  • 297716189ad1574ae1aaf8b53faa2991fe1fe87d
  • master default
  • dev
3 results

MaterialEditorMenuView.js

Blame
  • AnimationMenuView.js 5.28 KiB
    /**
     * Created by aghassaei on 2/1/15.
     */
    
    
    AnimationMenuView = Backbone.View.extend({
    
        el: "#menuContent",
    
        events: {
            "click #playStockSim":                                      "_playStockSim",
            "click #pauseStockSim":                                     "_pauseStockSim",
            "click #resetStockSim":                                     "_resetStockSim",
            "click #animationMenuSave":                                 "_save",
            "click .overrideEdits":                                     "_postProcess",
            "slideStop #speedSlider":                                   "_changeSpeedSlider"
        },
    
        initialize: function(){
    
            _.bindAll(this, "render", "_codeEdit", "_setEditorHeight");
    
            //bind events
            this.listenTo(this.model, "change:stockSimulationPlaying", this.render);
            var self = this;
            this.listenTo(globals.cam, "change", function(){
                //ignore simLineNumber for render calls
                if (_.isEqual(_.keys(globals.cam.changedAttributes()), ["simLineNumber"])) return;
                self.render();
            });
            this.listenTo(globals.cam, "change:simLineNumber", this._drawGcodeHighlighter);
            $(document).bind('keyup', {state:false}, this._codeEdit);
            //this.$el.bind('resize', this._setEditorHeight);
        },
    
        _save: function(e){
            e.preventDefault();
            globals.cam.save();
        },
    
        _postProcess: function(e){
            e.preventDefault();
            globals.cam.postProcess();
        },
    
        _codeEdit: function(e){
            var editor = $("#gcodeEditor");
            if (!editor.is(":focus")) return;
            e.preventDefault();
            globals.cam.makeProgramEdits(editor.text());
        },
    
        _playStockSim: function(e){
            e.preventDefault();
            this.model.set("stockSimulationPlaying", true);
        },
    
        _pauseStockSim: function(e){
            e.preventDefault();
            this.model.set("stockSimulationPlaying", false);
        },
    
        _resetStockSim: function(e){
            e.preventDefault();
            globals.cam.resetSimulation();
            this.render();
        },
    
        _changeSpeedSlider: function(e){
            e.preventDefault();