diff --git a/plugins/project/project.coffee b/plugins/project/project.coffee new file mode 100644 index 000000000..2f316cc85 --- /dev/null +++ b/plugins/project/project.coffee @@ -0,0 +1,29 @@ +{Chrome, Dir, File, Process} = require 'osx' +{bindKey} = require 'atomicity' +$ = require 'jquery' + +exports.init = -> + @html = File.read(Chrome.appRoot() + "/plugins/project/project.html") + + bindKey 'toggleProjectDrawer', 'Command-Ctrl-N', (env) => + @toggle() + +exports.toggle = -> + if @showing + $('#project').parent().remove() + else + Chrome.addPane 'left', @html + @reload() + + @showing = not @showing + +exports.reload = -> + dir = OSX.NSFileManager.defaultManager.currentDirectoryPath + $('#project .cwd').text(dir) + + files = Dir.list(dir) + listItems = _.map files, (file) -> + file = file.replace(dir, "") + "
  • #{file}
  • " + + $('#project .files').append(listItems.join('\n')) diff --git a/src/osx.coffee b/src/osx.coffee index ea1328cdd..a9e6aafb8 100644 --- a/src/osx.coffee +++ b/src/osx.coffee @@ -154,24 +154,7 @@ Process = env: -> OSX.NSProcess.processInfo.environment() -# Need to rename and move stuff like this -Project = - toggle: -> - frameset = top.document.getElementsByTagName("frameset")[0] - if @showing - frameset.removeChild(frameset.firstChild) - frameset.setAttribute('cols', '*') - else - frame = document.createElement("frame") - frame.src = 'project.html' - frameset.insertBefore(frame, frameset.firstChild) - frameset.setAttribute('cols', '25%, *') - - @showing = not @showing - -exports ?= this - +exports ?= this # Do we even need this anymore? DOUBT IT! exports.Chrome = Chrome exports.File = File exports.Dir = Dir -exports.Project = Project