var EditorToolbar = View.extend({ el: "#editorToolbar", events: { "click [data-role='toggle-map-view']": 'toggleMap', "click [data-role='toggle-project-settings']": 'toggleSettings', "click [data-role='open-media-viewer']": 'openMediaViewer', "click [data-role='resize-media']": 'resizeMedia', "click [data-role='destroy-media']": 'destroyMedia', "click [data-role='toggle-wallpaper-panel']": 'toggleWallpaper', "click [data-role='toggle-light-control']": 'toggleLightControl', "click [data-role='edit-wall-text']": 'editWallText', }, initialize: function(opt){ this.parent = opt.parent }, toggleMap: function(){ map.toggle() // $("#minimap").toggleClass("hide"); }, toggleSettings: function(){ this.resetMode() $(".inuse").removeClass("inuse") this.parent.lightControl.hide() this.parent.wallpaperPicker.hide() this.parent.mediaEditor.hide() this.parent.settings.toggle() }, openMediaViewer: function(){ this.parent.mediaViewer.show() this.parent.mediaUpload.show() this.resetMode() this.resetControls() }, resetMode: function(){ this.resizeMedia(true) this.destroyMedia(false) app.controller.hideExtras() }, resetControls: function(){ $(".inuse").removeClass("inuse") this.parent.wallpaperPicker.hide() this.parent.lightControl.hide() this.parent.settings.hide() }, resizeMedia: function(e, state){ this.resetControls() if (! state && typeof e == "boolean") { state = e editor.permissions.assign("resize", state) } else { state = editor.permissions.toggle("resize") } ! state && editor.permissions.assign("move", true) $(".inuse").removeClass("inuse") $("[data-role='resize-media']").toggleClass("inuse", state) if (state) { if (this.parent.mediaEditor.scenery) { Scenery.resize.show( this.parent.mediaEditor.scenery ) } } else { Scenery.resize.hide() } }, destroyMedia: function(e, state){ this.resetControls() if (! state && typeof e == "boolean") { state = e editor.permissions.assign("destroy", state) } else { state = editor.permissions.toggle("destroy") } ! state && editor.permissions.assign("move", true) $(".inuse").removeClass("inuse") $("[data-role='destroy-media']").toggleClass("inuse", state) $("body").toggleClass("destroyActive", state) }, toggleWallpaper: function(){ var state = ! $("[data-role='toggle-wallpaper-panel']").hasClass("inuse") this.resetMode() $("[data-role='toggle-wallpaper-panel']").toggleClass("inuse", state) this.parent.mediaEditor.hide() this.parent.lightControl.hide() this.parent.settings.hide() this.parent.wallpaperPicker.toggle(state) }, toggleLightControl: function(){ var state = ! $("[data-role='toggle-light-control']").hasClass("inuse") this.resetMode() $("[data-role='toggle-light-control']").toggleClass("inuse", state) this.parent.mediaEditor.hide() this.parent.wallpaperPicker.hide() this.parent.settings.hide() this.parent.lightControl.toggle(state) }, editWallText: function(){ }, }) var editor = new function(){ this.permissions = new Permissions({ 'pick': true, 'move': true, 'resize': true, 'destroy': false, }) }