-
Notifications
You must be signed in to change notification settings - Fork 4
/
extension.js
58 lines (45 loc) · 1.83 KB
/
extension.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
const vscode = require('vscode');
const PinegrowVS = require('./lib/pinegrow-vs');
var pgvs = new PinegrowVS();
var activeEditor = null;
function activate(context) {
pgvs.init();
vscode.window.onDidChangeActiveTextEditor(function (editor) {
pgvs.activeEditorChanged(editor, activeEditor);
pgvs.visibleEditorChanged(editor);
activeEditor = editor;
})
vscode.workspace.onDidChangeTextDocument(function (editor) {
pgvs.editorTextChanged(editor);
});
vscode.workspace.onDidSaveTextDocument(function (document) {
pgvs.editorTextSaved(document);
});
var selectInPg = vscode.commands.registerCommand('extension.selectInPG', function () {
var editor = vscode.window.activeTextEditor;
pgvs.selectInPinegrow(editor);
});
var openInPg = vscode.commands.registerCommand('extension.openInPG', function () {
var editor = vscode.window.activeTextEditor;
pgvs.openInPinegrow(editor);
});
var reconnect = vscode.commands.registerCommand('extension.reconnect', function () {
pgvs.reconnect();
});
var detectMapping = vscode.commands.registerCommand('extension.detectMapping', function () {
pgvs.autoDetectMapping();
});
var downloadPinegrow = vscode.commands.registerCommand('extension.downloadPinegrow', function () {
vscode.commands.executeCommand('vscode.open', vscode.Uri.parse('http://pinegrow.com'));
});
var refreshPage = vscode.commands.registerCommand('extension.refreshPage', function () {
var editor = vscode.window.activeTextEditor;
pgvs.refreshPage(editor);
});
context.subscriptions.push(selectInPg, openInPg, reconnect, detectMapping, downloadPinegrow, refreshPage);
}
exports.activate = activate;
function deactivate() {
pgvs.destroy();
}
exports.deactivate = deactivate;