kopia lustrzana https://github.com/c9/core
Basics are working
rodzic
727940c98e
commit
15dee3103e
|
@ -220,6 +220,9 @@ module.exports = function(options) {
|
||||||
autoInit: !options.local
|
autoInit: !options.local
|
||||||
},
|
},
|
||||||
"plugins/c9.ide.ui/forms",
|
"plugins/c9.ide.ui/forms",
|
||||||
|
"plugins/c9.ide.ui/widgets.list",
|
||||||
|
"plugins/c9.ide.ui/widgets.tree",
|
||||||
|
"plugins/c9.ide.ui/widgets.datagrid",
|
||||||
"plugins/c9.ide.ui/focus",
|
"plugins/c9.ide.ui/focus",
|
||||||
"plugins/c9.ide.ui/lib_apf",
|
"plugins/c9.ide.ui/lib_apf",
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
define(function(require, exports, module) {
|
define(function(require, exports, module) {
|
||||||
main.consumes = ["Tree"];
|
main.consumes = ["Tree", "layout", "ui"];
|
||||||
main.provides = ["Datagrid"];
|
main.provides = ["Datagrid"];
|
||||||
return main;
|
return main;
|
||||||
|
|
||||||
function main(options, imports, register) {
|
function main(options, imports, register) {
|
||||||
var Tree = imports.Tree;
|
var Tree = imports.Tree;
|
||||||
|
var layout = imports.layout;
|
||||||
|
var ui = imports.ui;
|
||||||
|
|
||||||
var TreeModel = require("ace_tree/data_provider");
|
var TreeModel = require("ace_tree/data_provider");
|
||||||
|
|
||||||
|
@ -22,10 +24,19 @@ define(function(require, exports, module) {
|
||||||
model.columns = options.columns;
|
model.columns = options.columns;
|
||||||
options.model = model;
|
options.model = model;
|
||||||
|
|
||||||
var plugin = new Tree(options, forPlugin);
|
var plugin = new Tree(options, forPlugin, true);
|
||||||
// var emit = plugin.getEmitter();
|
// var emit = plugin.getEmitter();
|
||||||
if (baseclass) plugin.baseclass();
|
if (baseclass) plugin.baseclass();
|
||||||
|
|
||||||
|
layout.on("eachTheme", function(e){
|
||||||
|
var cls = "." + plugin.theme + " .row";
|
||||||
|
var height = parseInt(ui.getStyleRule(cls, "height"), 10) || 24;
|
||||||
|
// model.rowHeightInner = height - 1;
|
||||||
|
model.rowHeight = height;
|
||||||
|
|
||||||
|
if (e.changed) plugin.resize(true);
|
||||||
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -27,7 +27,9 @@ define(function(require, exports, module) {
|
||||||
var model;
|
var model;
|
||||||
var redirectEvents;
|
var redirectEvents;
|
||||||
var meta = {};
|
var meta = {};
|
||||||
var excludedEvents = { "load":1, "unload":1 };
|
var excludedEvents = {
|
||||||
|
"load":1, "unload":1, "addListener":1, "removeListener":1
|
||||||
|
};
|
||||||
|
|
||||||
plugin.on("load", function(){
|
plugin.on("load", function(){
|
||||||
acetree = new AceTree(options.container);
|
acetree = new AceTree(options.container);
|
||||||
|
@ -40,43 +42,44 @@ define(function(require, exports, module) {
|
||||||
for (var prop in options) {
|
for (var prop in options) {
|
||||||
if (prop == "container") continue;
|
if (prop == "container") continue;
|
||||||
if (plugin.hasOwnProperty(prop))
|
if (plugin.hasOwnProperty(prop))
|
||||||
plugin[prop](options[prop]);
|
plugin[prop] = options[prop];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Configure redirected events
|
// Configure redirected events
|
||||||
redirectEvents = {
|
redirectEvents = {
|
||||||
scroll: acetree.provider,
|
scroll: model,
|
||||||
scrollbarVisibilityChanged: acetree.renderer,
|
scrollbarVisibilityChanged: acetree.renderer,
|
||||||
resize: acetree.renderer,
|
resize: acetree.renderer,
|
||||||
expand: acetree.provider,
|
expand: model,
|
||||||
collapse: acetree.provider
|
collapse: model
|
||||||
};
|
};
|
||||||
|
|
||||||
});
|
});
|
||||||
plugin.on("unload", function(){
|
plugin.on("unload", function(){
|
||||||
acetree && acetree.destroy();
|
if (acetree) {
|
||||||
|
model.setRoot(null);
|
||||||
acetree = null;
|
acetree.destroy();
|
||||||
model = null;
|
acetree.container.innerHTML = "";
|
||||||
redirectEvents = null;
|
}
|
||||||
meta = {};
|
meta = {};
|
||||||
});
|
});
|
||||||
plugin.on("newListener", function(type, fn){
|
plugin.on("newListener", function(type, fn){
|
||||||
if (excludedEvents[type]) return;
|
if (excludedEvents[type]) return;
|
||||||
if (redirectEvents[type])
|
if (redirectEvents[type])
|
||||||
redirectEvents.on(type, fn);
|
redirectEvents[type].on(type, fn);
|
||||||
else
|
else
|
||||||
acetree.on(type, fn);
|
acetree.on(type, fn);
|
||||||
});
|
});
|
||||||
plugin.on("removeListener", function(type, fn){
|
plugin.on("removeListener", function(type, fn){
|
||||||
if (excludedEvents[type]) return;
|
if (excludedEvents[type]) return;
|
||||||
if (redirectEvents[type])
|
if (redirectEvents[type])
|
||||||
redirectEvents.removeListener(type, fn);
|
redirectEvents[type].removeListener(type, fn);
|
||||||
else
|
else
|
||||||
acetree.removeListener(type, fn);
|
acetree.removeListener(type, fn);
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
/**
|
/**
|
||||||
* @constructor
|
* @constructor
|
||||||
|
@ -101,14 +104,15 @@ define(function(require, exports, module) {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
get selectedNodes(){
|
get selectedNodes(){
|
||||||
return (acetree.selection.getCursor()
|
return (acetree.selection.getSelectedNodes() || []);/*.map(function(n){
|
||||||
|| acetree.getFirstNode()) || null;
|
return n.id;
|
||||||
|
}); */
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
get selectedNode(){
|
get selectedNode(){
|
||||||
return acetree.selection.getSelectedNodes() || [];
|
return (acetree.selection.getCursor() || null); //.id || null;
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -117,7 +121,7 @@ define(function(require, exports, module) {
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
get scrollTop(){ return acetree.provider.getScrollTop(); },
|
get scrollTop(){ return model.getScrollTop(); },
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@ -354,7 +358,7 @@ define(function(require, exports, module) {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
setScrollTop: function(scrollTop){
|
setScrollTop: function(scrollTop){
|
||||||
return acetree.provider.setScrollTop(scrollTop);
|
return model.setScrollTop(scrollTop);
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -397,6 +401,12 @@ define(function(require, exports, module) {
|
||||||
*/
|
*/
|
||||||
getIndexForNode: function(node){
|
getIndexForNode: function(node){
|
||||||
return model.getIndexForNode(node);
|
return model.getIndexForNode(node);
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
refresh: function(){
|
||||||
|
plugin.setRoot(plugin.root);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -16,10 +16,12 @@ define(function(require, exports, module) {
|
||||||
if (!options.baseName)
|
if (!options.baseName)
|
||||||
options.baseName = "tree";
|
options.baseName = "tree";
|
||||||
|
|
||||||
var model = new TreeModel();
|
if (!options.model) {
|
||||||
options.model = model;
|
var model = new TreeModel();
|
||||||
|
options.model = model;
|
||||||
|
}
|
||||||
|
|
||||||
var plugin = new List(options, forPlugin);
|
var plugin = new List(options, forPlugin, true);
|
||||||
// var emit = plugin.getEmitter();
|
// var emit = plugin.getEmitter();
|
||||||
if (baseclass) plugin.baseclass();
|
if (baseclass) plugin.baseclass();
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue