A lightweight wrapper for creating new panes within Atom
MIT License
A lightweight wrapper for creating new panes within Atom.
atom-pane
is packaged as an npm module, so you can simply install it like
you would your other package dependencies.
uri = createPane([opts], ready, [closed])
Create a new pane, calling ready(err, pane)
when complete. The returned pane
is an instance of ScrollView
, but you can easily append standard DOM elements
like so:
var createPane = require('atom-pane')
exports.activate = function() {
atom.workspaceView.command('atom-plugin:open', function() {
// create a div, any div
var div = document.createElement('div')
div.innerHTML = 'hello world!'
div.style.color = '#fff'
createPane(function(err, pane) {
if (err) throw err
// append the dive to your new pane
pane.append(div)
}, function() {
div.parentNode.removeChild(div)
})
})
}
You'll need to clean up after yourself too – use the closed
callback function,
which will get called when the pane has been closed.
Takes the following options:
opts.searchAllPanes
passed onto atom.workspace.open
, defaults to false
.
opts.uri
may be one of the following:
undefined
, in which case a unique value will be genrated for you.markdown-preview-pane
.markdown-preview://Users/hughsk/README.md
.Note that the latter two approaches are recommended, to prevent creating a bunch of one-off openers each time a user opens a pane.
opts.changeFocus
passed onto atom.workspace.open
, defaults to true
.
opts.split
passed onto atom.workspace.open
, defaults to undefined
.
MIT. See LICENSE.md for details.