console.js 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. // wrapped by build app
  2. define("dojox/help/console", ["dijit","dojo","dojox","dojo/require!dojox/help/_base"], function(dijit,dojo,dojox){
  3. dojo.provide("dojox.help.console");
  4. dojo.require("dojox.help._base");
  5. dojo.mixin(dojox.help, {
  6. _plainText: function(str){
  7. return str.replace(/(<[^>]*>|&[^;]{2,6};)/g, '');
  8. },
  9. _displayLocated: function(located){
  10. var obj = {};
  11. dojo.forEach(located, function(item){ obj[item[0]] = dojo.isMoz ? { toString: function(){ return "Click to view"; }, item: item[1] } : item[1]; });
  12. console.dir(obj);
  13. },
  14. _displayHelp: function(loading, obj){
  15. if(loading){
  16. var message = "Help for: " + obj.name;
  17. console.log(message);
  18. var underline = "";
  19. for(var i = 0; i < message.length; i++){
  20. underline += "=";
  21. }
  22. console.log(underline);
  23. }else if(!obj){
  24. console.log("No documentation for this object");
  25. }else{
  26. var anything = false;
  27. for(var attribute in obj){
  28. var value = obj[attribute];
  29. if(attribute == "returns" && obj.type != "Function" && obj.type != "Constructor"){
  30. continue;
  31. }
  32. if(value && (!dojo.isArray(value) || value.length)){
  33. anything = true;
  34. console.info(attribute.toUpperCase());
  35. value = dojo.isString(value) ? dojox.help._plainText(value) : value;
  36. if(attribute == "returns"){
  37. var returns = dojo.map(value.types || [], "return item.title;").join("|");
  38. if(value.summary){
  39. if(returns){
  40. returns += ": ";
  41. }
  42. returns += dojox.help._plainText(value.summary);
  43. }
  44. console.log(returns || "Uknown");
  45. }else if(attribute == "parameters"){
  46. for(var j = 0, parameter; parameter = value[j]; j++){
  47. var type = dojo.map(parameter.types, "return item.title").join("|");
  48. console.log((type) ? (parameter.name + ": " + type) : parameter.name);
  49. var summary = "";
  50. if(parameter.optional){
  51. summary += "Optional. ";
  52. }
  53. if(parameter.repating){
  54. summary += "Repeating. ";
  55. }
  56. summary += dojox.help._plainText(parameter.summary);
  57. if(summary){
  58. summary = " - " + summary;
  59. for(var k = 0; k < parameter.name.length; k++){
  60. summary = " " + summary;
  61. }
  62. console.log(summary);
  63. }
  64. }
  65. }else{
  66. console.log(value);
  67. }
  68. }
  69. }
  70. if(!anything){
  71. console.log("No documentation for this object");
  72. }
  73. }
  74. }
  75. });
  76. dojox.help.init();
  77. });