X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=roojs-doc-debug.js;h=d1a39ba30c427dcd2895b04c3de327de253c877b;hb=242e8cb7d4eb31741bfb8d282303ac36f54dd00e;hp=e69de29bb2d1d6434b8b29ae775ad8c2e48c5391;hpb=faf18109012b72ce83eb8ebdfb7f80d14b896bde;p=roojs1
diff --git a/roojs-doc-debug.js b/roojs-doc-debug.js
index e69de29bb2..d1a39ba30c 100644
--- a/roojs-doc-debug.js
+++ b/roojs-doc-debug.js
@@ -0,0 +1,659 @@
+/*
+ * - LGPL
+ *
+ * Documentation - designed to generate HTML+Docbook!?!
+ */
+Roo.doc = Roo.doc || {};
+
+/**
+ * @class Roo.doc.Entry
+ * @extends Roo.bootstrap.Component
+ * Entry Element class - describes a method etc...
+ * @cfg name {String} name of method
+ * @cfg purpose {String} short description of method.
+ *
+ * @constructor
+ * Create a new E
+ * @param {Object} config The config object
+ */
+
+
+
+Roo.doc.Entry = function(config){
+ Roo.doc.Entry.superclass.constructor.call(this, config);
+ //this.el = Roo.get(document.body);
+ /*
+ var body = Roo.get(document.body);
+ body.attr({
+ leftmargin : 0,
+ marginwidth : 0,
+ topmargin : 0,
+ marginheight : 0,
+ offset : 0
+ });
+
+
+ // call onRender once... and block next call...?
+ this.onRender(body);
+ this.el = body;
+ //this.onRender = function() { };
+ */
+
+};
+
+//Roo.doc.Entry._calls = 0;
+
+Roo.extend(Roo.doc.Entry, Roo.bootstrap.Component, {
+
+
+ name : '',
+ purpose : '',
+
+ getAutoCreate : function(){
+
+ var cfg ={
+ cls : 'refentry',
+ cn : [
+ {
+ tag: 'h1',
+ cls: 'refname',
+ html : this.name
+ },
+ {
+ cls: 'refnamediv',
+ html : this.purpose
+ }
+ ]
+ };
+
+
+ return cfg;
+ },
+
+ addxtype : function (tree, cntr)
+ {
+ return this.addxtypeChild(tree,cntr);
+ }
+ /*
+ onRender : function(ct, position)
+ {
+
+ Roo.doc.Entry._calls++;
+ if (Roo.doc.Entry._calls > 1 || !ct) {
+ return;
+ }
+
+ // call onRender once... and block next call...?
+
+ Roo.bootstrap.Component.prototype.onRender.call(this, ct, position);
+ }
+ */
+
+});
+
+
+
+ /*
+ * - LGPL
+ *
+ */
+
+/**
+ * @class Roo.doc.Example
+ * @extends Roo.bootstrap.Component
+ * Example Element class
+ * @cfg {String} title short title describing example
+ * @cfg {String} lang (php|txt|sql) code language.
+ * @cfg {String} code example code
+ * @cfg {String} output The expected output from the code
+ * @cfg {String} outputlang php|txt|sql) output language
+ *
+ *
+ * @constructor
+ * Create a new Synopsis
+ * @param {Object} config The config object
+ */
+
+Roo.doc.Example = function(config){
+ Roo.doc.Example.superclass.constructor.call(this, config);
+};
+
+Roo.extend(Roo.doc.Example, Roo.bootstrap.Component, {
+
+ title : '',
+ lang: 'php',
+ code : '',
+ output : '',
+ outputlang : 'txt',
+
+ getAutoCreate : function(){
+
+ // no colour highlighting in here....
+
+ var code = hljs ? hljs.highlight(this.lang,this.code).value :
+ String.format('{0}',this.code).replace(/\n/g, '
');
+
+ Roo.log("code=" + code);
+ var cfg ={
+ cls : 'panel panel-info',
+ cn : [
+ {
+ cls : 'panel-heading',
+ html : this.title
+ },
+ {
+ cls : 'panel-body',
+ cn : [
+ {
+ tag: 'pre',
+ cls : 'lang-' + this.lang,
+ html : code
+ }
+ ]
+ }
+ ]
+ };
+
+ if (this.output) {
+
+ var out = hljs ? hljs.highlight(this.outputlang,this.output).value :
+ String.format('{0}',this.output).replace(/\n/g, '
');
+ cfg.cn.push(
+
+ {
+ cls : 'panel-footer',
+ cn : {
+ tag: 'pre',
+ html : out
+ }
+ }
+
+
+ );
+ }
+
+
+
+ return cfg;
+ }
+
+
+
+
+});
+
+
+
+ /*
+ * - LGPL
+ *
+ */
+
+/**
+ * @class Roo.doc.Para
+ * @extends Roo.bootstrap.Component
+ * Param Element class
+ * @cfg {String} html
+ *
+ * @constructor
+ * Create a new Paragraph
+ * @param {Object} config The config object
+ */
+
+Roo.doc.Para = function(config){
+ Roo.doc.Para.superclass.constructor.call(this, config);
+};
+
+Roo.extend(Roo.doc.Para, Roo.bootstrap.Component, {
+
+ html : '',
+ getAutoCreate : function(){
+
+ //?? this is the synopsis type....
+
+ // this is not very fancy...
+
+ var cfg ={
+ tag: 'p',
+ cls: 'para',
+ html : Roo.Markdown.toHtml(this.html)
+ };
+
+ if (this.parent().is_list) {
+ return {
+ tag: 'li',
+ cls : listitme,
+ cn : [ cfg ]
+ };
+
+ }
+
+ return cfg;
+ }
+
+
+
+
+
+
+});
+
+
+
+ /*
+ * - LGPL
+ *
+ */
+
+/**
+ * @class Roo.doc.Param
+ * @extends Roo.bootstrap.Component
+ * Param Element class
+ * @cfg {bool} is_optional is the argument optional
+ * @cfg {String} type argument type
+ * @cfg {String} name name of the parameter
+ * @cfg {String} desc short description
+ * @cfg {String} defaultvalue default value
+ *
+ * @constructor
+ * Create a new Param
+ * @param {Object} config The config object
+ */
+
+Roo.doc.Param = function(config){
+ Roo.doc.Param.superclass.constructor.call(this, config);
+};
+
+Roo.extend(Roo.doc.Param, Roo.bootstrap.Component, {
+
+ is_optional : false,
+ type : '',
+ name: '',
+ defaultvalue: '',
+ desc: '',
+
+ getAutoCreate : function(){
+
+ //?? this is the synopsis type....
+
+ var desc = Roo.Markdown.toHtml(this.desc);
+
+ if (this.parent().stype == 'parameter') {
+
+ return {
+ tag : 'li',
+ cn : [
+ {
+ tag : 'p',
+ cls: 'para',
+ cn : [
+ {
+ tag: 'code',
+ html : this.type + ' ' + this.name
+ },
+ desc
+ ]
+ }
+ ]
+ };
+
+ }
+ if (this.parent().stype == 'return') {
+ return {
+ tag : 'p',
+ cls: 'para',
+ cn : [
+ {
+ tag: 'code',
+ html : this.type
+ },
+ desc
+ ]
+ };
+
+ }
+
+
+
+ // this is not very fancy...
+
+ var cfg ={
+ tag: 'span',
+ cn : [
+ this.is_optional ? '[' : '',
+ this.type,
+ ' ',
+ {
+ tag : 'b',
+ html : this.name
+ },
+ this.defaultvalue == '' ? '' : ' = ',
+ this.defaultvalue,
+ this.is_optional ? ']' : '',
+ ',' // not really.. but let's do it anyway...
+ ]
+ };
+
+
+
+
+ return cfg;
+ },
+ getAutoCreateParamSection : function()
+ {
+ var desc = Roo.Markdown.toHtml(this.desc);
+
+
+ return {
+ tag : 'li',
+ cn : [
+ {
+ tag : 'p',
+ cls: 'para',
+ cn : [
+ {
+ tag: 'code',
+ html : this.type + ' ' + this.name
+ },
+ desc
+ ]
+ }
+ ]
+ };
+
+
+ }
+
+
+
+
+
+
+
+});
+
+
+
+ /*
+ * - LGPL
+ *
+ */
+
+/**
+ * @class Roo.doc.Section
+ * @extends Roo.bootstrap.Component
+ * SectionElement class
+ * @cfg {String} stype (desc|parameter|return|note|example) section type.
+ *
+ * @constructor
+ * Create a new Synopsis
+ * @param {Object} config The config object
+ */
+
+Roo.doc.Section = function(config){
+ Roo.doc.Section.superclass.constructor.call(this, config);
+};
+
+Roo.extend(Roo.doc.Section, Roo.bootstrap.Component, {
+
+
+ stype: '',
+
+ getAutoCreate : function(){
+
+
+ var syn = Roo.factory(this.parent().items[0]);
+
+ var cfg ={
+
+ cls : 'refsection',
+ // id... ?
+ cn : [
+ {
+ tag: 'h3',
+ cls : 'title',
+ html : Roo.doc.Section.map[this.stype]
+ }
+ ]
+ };
+ if (this.stype == 'parameter') {
+
+ // db package uses variable list here... - it results in dd/dl but the layout is messed up..
+
+ var ul = {
+ tag: 'ul',
+ cls: 'itemizedlist roo-params',
+ cn : []
+ };
+ // might not have any..
+ var params = syn.items;
+ for (var i =0; i < params.length;i++) {
+ ul.cn.push( Roo.factory(params[i]).getAutoCreateParamSection() )
+ }
+
+
+ cfg.cn.push(ul);
+ }
+ if (this.stype == 'return' && (syn.returndesc.length || syn.returntype.length )) {
+
+ cfg.cn.push({
+ tag: 'p',
+ cls : 'para',
+ cn : [
+
+ {
+ tag: 'code',
+ cls: 'parameter',
+ html : syn.returntype
+ },
+ syn.returndesc
+ ]
+
+ });
+ }
+
+ return cfg;
+ },
+ getChildContainer : function(build_call)
+ {
+
+ if (this.stype == 'parameter') {
+ return this.el.select('.roo-params',true).first();
+ }
+
+ return this.el;
+ }
+
+
+
+});
+
+
+Roo.doc.Section.map = {
+ 'desc' : 'Description',
+ 'parameter' : 'Parameters',
+ 'return' : 'Return Value',
+ 'note' : 'Notes',
+ 'example' : 'Examples',
+ 'throws' : 'Throws Exception'
+}
+/*
+ * - LGPL
+ *
+ */
+
+/**
+ * @class Roo.doc.Synopsis
+ * @extends Roo.bootstrap.Component
+ * Synopsis Element class
+ * @cfg {String} returntype return value
+ * @cfg {String} returndesc description of return value. (used in the return section if set..)
+ * @cfg {String} name title really..
+ * @cfg {String} stype (function|constant)
+ * @cfg {String} memberof class name
+ * @cfg {bool} is_static is a static member
+ * @cfg {bool} is_constructor is a static member
+ *
+ * @constructor
+ * Create a new Synopsis
+ * @param {Object} config The config object
+ */
+
+Roo.doc.Synopsis = function(config){
+ Roo.doc.Synopsis.superclass.constructor.call(this, config);
+};
+
+Roo.extend(Roo.doc.Synopsis, Roo.bootstrap.Component, {
+
+ memberof : '',
+ is_static : false,
+ returntype : '',
+ returndesc : '',
+ name: '',
+ stype: 'function',
+ is_constructor : false,
+
+ getAutoCreate : function(){
+
+ var syn = this.items[0]; // hopefully...
+
+
+
+ var nmp = (this.is_static ? '' : '$') +
+ this.memberof +
+ (this.is_static ? '::' : '->');
+
+ var nm = this.name;
+ // this should probably do the params....?? then we need to disable the rendering..
+
+ if (this.is_constructor) {
+
+ nm = this.memberof;
+ nmp = 'new ';
+ }
+
+
+ var cfg ={
+ tag: 'h5',
+ cls : 'refsynopsisdiv',
+ cn : [
+ {
+ cls: 'funcsynopsis',
+ cn: [
+ {
+ tag: 'p',
+ cn: {
+ tag:'code',
+ cls : 'funcprototype',
+ cn: [
+ this.returntype + ' ' + nmp,
+ {
+ tag: 'strong',
+ cls : this.stype,
+ html : nm
+ },
+ '(',
+ {
+ tag: 'span',
+ cls : 'roo-params'
+ },
+ ')'
+ ]
+
+ }
+ }
+ ]
+ }
+
+ ]
+ };
+
+
+
+ return cfg;
+ },
+ getChildContainer : function(build_call)
+ {
+
+
+ return this.el.select('.roo-params',true).first();
+ }
+
+
+
+
+
+});
+
+
+
+ /*
+ * - LGPL
+ *
+ */
+
+/**
+ * @class Roo.doc.NavCategory
+ * @extends Roo.bootstrap.Component
+ * Navigation Category class
+ * @cfg {string} title
+ * @cfg {string} name
+ *
+ * Represent's an category on the left menu.
+ * - phpdoc @category elements map the pages to the categories
+ * this should be on the left side of the menu, when the
+ * contents are loaded, then it can expand this out, and add links
+ * for each of the methods.
+ *
+ *
+ *
+ * @constructor
+ * Create a new Navigation Category
+ * @param {Object} config The config object
+ */
+
+Roo.doc.NavCategory = function(config){
+ Roo.doc.Para.superclass.constructor.call(this, config);
+ Roo.doc.NavCategory.registry[this.name] = this;
+};
+Roo.doc.NavCategory.registry = {};
+Roo.extend(Roo.doc.NavCategory, Roo.bootstrap.Component, {
+
+ title : '',
+ name : '',
+ getAutoCreate : function(){
+
+ //?? this is the synopsis type....
+
+ // this is not very fancy...
+
+ var cfg ={
+
+ cn : [
+
+ {
+ tag : 'a',
+ cls: 'roo-nav-category',
+ href : '#' + this.name,
+ html : this.title
+ },
+ {
+ cls : 'container roo-child-ctr'
+ }
+ ]
+ };
+
+ return cfg;
+ },
+ getChildContainer : function()
+ {
+ return this.el.select('.roo-child-ctr',true).first();
+ }
+
+
+
+});
+
+
+
+
\ No newline at end of file