main page content
This commit is contained in:
parent
12c4995428
commit
27e785d1da
@ -3,4 +3,4 @@
|
||||
* @group library
|
||||
* @namespace v2
|
||||
*/
|
||||
var v2 = function () {};
|
||||
var v2 = function v2() {};
|
@ -1,13 +1,122 @@
|
||||
/**
|
||||
* AAAAA
|
||||
* Генератор для главной страницы документации.
|
||||
* Что тут да как?
|
||||
*
|
||||
* AAAAA
|
||||
* Новый блок должен состоять из тагов:
|
||||
* name - где значением будет число. Все блоки сортируются по имени.
|
||||
* поэтому что бы вставить блок между 01 и 02, нужно написать 01.0
|
||||
*
|
||||
* AAAAA
|
||||
*
|
||||
* @name sdfasdf
|
||||
* mainpage - таг который указывает, что этот блок будет использован для документации
|
||||
* memberof - указывает предка для блока. Но в случае документации это используется,
|
||||
* что бы эти блоки не попали в глобальное пространство.
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* ### Документация по работе с GUI версии 2.9.1
|
||||
* @name 01
|
||||
* @mainpage
|
||||
* @memberof mainpage
|
||||
* @example
|
||||
* dsfadfasdf
|
||||
*/
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* ### Содержание:
|
||||
* - #### Виджеты
|
||||
* - #### Датасорсы
|
||||
* - #### Сигнал-Слоты
|
||||
* - #### Грид
|
||||
* - #### Графики
|
||||
* - #### {@link ProvidersSystem Система провайдеров}:
|
||||
* - - #### {@link Trees}
|
||||
* - - #### {@link Models}
|
||||
* - - #### {@link Publishers}
|
||||
* - - #### {@link ModelTypes}
|
||||
* - - #### {@link GroupTypes}
|
||||
* - #### Библиотеки:
|
||||
* - - #### {@link std} - реализация сишной библиотеки на js.
|
||||
* - - #### {@link v2} - сериализуемые типы, которыми можно обмениваться с ядром.
|
||||
* - - #### {@link tools} - разного рода хелперы и инструменты.
|
||||
*
|
||||
* @name 02
|
||||
* @mainpage
|
||||
* @memberof mainpage
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* ### Система провайдеров.
|
||||
*
|
||||
* <br>
|
||||
*
|
||||
* Провайдеры это механизм, который осуществляет общий доступ к любой доступной информации, которую можно получить от ядра
|
||||
*
|
||||
* Проще говоря, они моделируют объекты, которые существют в ядре и поддерживаются в акутальном состоянии,
|
||||
*
|
||||
* до тех пор, пока кто-либо ими пользуются. Как только истекает таймер жизни объекта, он вычищается.
|
||||
*
|
||||
* <br>
|
||||
* Провайдеры запускаются перед стартом системы _**js/main.js**_ и определены в глобальной области видимости: **window.ps**.
|
||||
*
|
||||
* Как только происходит хендшейк и логин пользователя, начинает загружаться GUI.
|
||||
*
|
||||
* <br>
|
||||
* #### Как пользоваться провайдерами?
|
||||
*
|
||||
* Внутри провайдеров проинициализирован объект {@link Platform} в переменной **ps.pl**.
|
||||
*
|
||||
* По-сути он моделирует платформу со стороны сервера и содержит в себе менеджеры, через которые можно связываться с ядром.
|
||||
*
|
||||
* <br>
|
||||
* Доступные менеджеры у платформы:
|
||||
* - {@link GroupTypes} - Менеджер, который позволяет получить данные по типу компонента, определен как **ps.pl.gtm**
|
||||
* - {@link ModelTypes} - Менеджер, который позволяет узнать о содержимом модели **ps.pl.mtm**
|
||||
* - {@link Models} - Менеджер, для доступа к устройствам, определен как **ps.pl.mm**
|
||||
* - {@link Trees} - Менеджер, для доступа к деревьям, определен как **ps.pl.tm**
|
||||
*
|
||||
*
|
||||
*
|
||||
* <br><br>
|
||||
* ### {@link Trees} Деревья:
|
||||
*
|
||||
* Для чего нужны деревья?
|
||||
*
|
||||
* Например для отображения рабочего стола, каталога моделей, схемы топологии и т.д.
|
||||
*
|
||||
*
|
||||
*
|
||||
* <br><br>
|
||||
* ### {@link Publishers}. Паблишеры.
|
||||
*
|
||||
* Для чего нужны паблишеры?
|
||||
*
|
||||
* В общем случае они предназначены для отображение очень больших списков, которые могут подвесить GUI.
|
||||
*
|
||||
* Пример использования паблишера есть в форме результатов обнануржения.
|
||||
*
|
||||
*
|
||||
*
|
||||
* <br><br>
|
||||
* ### {@link Models}. Менеджер моделей.
|
||||
*
|
||||
* Менеджер моделей предоставляет доступ к устройствами находящимся в системе, которые были отдискаверины или добавлены иным способом.
|
||||
*
|
||||
* Пример использования можно найти в Схеме моделей.
|
||||
*
|
||||
*
|
||||
*
|
||||
* <br><br>
|
||||
* ### {@link GroupTypes}. Менеджер типов групп.
|
||||
*
|
||||
* Позволяет зная cTag, или иными словами тип группы, получить данные связанные с группой.
|
||||
*
|
||||
* Этот механизм используется в виджете для отображения атрибутов модели.
|
||||
*
|
||||
* А так же для отображения атрибутов компонент.
|
||||
*
|
||||
* @name 04
|
||||
* @mainpage
|
||||
* @memberof mainpage
|
||||
*
|
||||
*/
|
||||
|
||||
|
@ -9,15 +9,15 @@
|
||||
*
|
||||
* <br>
|
||||
*
|
||||
* {@link Trees.GlobalTree} - любое дерево (обладает возможностью открывать свою иерархию)
|
||||
* > {@link Trees.SchemeTree} - дерево топологии "st"
|
||||
* {@link Trees.GlobalTree GlobalTree} - любое дерево (обладает возможностью открывать свою иерархию)
|
||||
* > {@link Trees.SchemeTree SchemeTree} - дерево топологии "st"
|
||||
*
|
||||
* > {@link Trees.GlobalAttributeTree} - любое дерево, которое обладает атрибутами (используется как дефолтное)
|
||||
* > > {@link Trees.DesktopTree} - дерево рабочего стола "dsk"
|
||||
* > {@link Trees.GlobalAttributeTree GlobalAttributeTree} - любое дерево, которое обладает атрибутами (используется как дефолтное)
|
||||
* > > {@link Trees.DesktopTree DesktopTree} - дерево рабочего стола "dsk"
|
||||
*
|
||||
* > > {@link Trees.UserAttributeTree} - дерево пользовательских параметров "uat"
|
||||
* > > {@link Trees.UserAttributeTree UserAttributeTree} - дерево пользовательских параметров "uat"
|
||||
*
|
||||
* > > {@link Trees.RemoteModulesTree} - дерево сборщиков данных "rmt"
|
||||
* > > {@link Trees.RemoteModulesTree RemoteModulesTree} - дерево сборщиков данных "rmt"
|
||||
*
|
||||
*
|
||||
* <br>
|
||||
@ -37,9 +37,9 @@
|
||||
* <br>
|
||||
* Связанные объекты:
|
||||
*
|
||||
* - {@link Trees.GlobalTree} - Здесь можно найти примеры, как работать с нодами дерева
|
||||
* - {@link Trees.GlobalTree.Node} - Здесь можно найти примеры, как работать с содержимым глобальной ноды
|
||||
* - {@link Trees.GlobalAttributeTree.Node} - Здесь можно найти примеры, как работать с содержимым аттрибутной ноды
|
||||
* - {@link Trees.GlobalTree GlobalTree} - Здесь можно найти примеры, как работать с нодами дерева
|
||||
* - {@link Trees.GlobalTree.Node GlobalTreeNode} - Здесь можно найти примеры, как работать с содержимым глобальной ноды
|
||||
* - {@link Trees.GlobalAttributeTree.Node GlobalAttributesNode} - Здесь можно найти примеры, как работать с содержимым аттрибутной ноды
|
||||
*
|
||||
* @example
|
||||
* // Работа с деревом
|
||||
@ -49,7 +49,7 @@
|
||||
* // данных пользователя
|
||||
* ps.pl.tm.get(new v2.string("rmt")).then(function(ref){
|
||||
* // ref - это ссылка на объект
|
||||
* // метод value возвращает целевой объект. В данном случае дерево {@type Trees.GlobalTree}
|
||||
* // метод value возвращает целевой объект. В данном случае дерево {@link Trees.RemoteModulesTree RemoteModulesTree}
|
||||
* var tree = ref.value();
|
||||
* }, function(err){
|
||||
* // в случае неудачи придет ошибка.
|
||||
|
@ -550,10 +550,6 @@ function buildMemberNavNamespace(items, itemHeading, itemsSeen, linktoFn) {
|
||||
function buildNav(members) {
|
||||
var nav = '<h2><a href="index.html">GUI 2.9.1-develop</a></h2>';
|
||||
|
||||
// var seen = {};
|
||||
// nav += buildMemberNavNamespace(members.namespaces, 'Managers', seen, linkto);
|
||||
// nav += buildMemberNavNamespace(members.classes, 'Classes', seen, linkto);
|
||||
|
||||
nav += render_explorer(members.namespaces, members.classes);
|
||||
|
||||
return nav;
|
||||
@ -561,6 +557,10 @@ function buildNav(members) {
|
||||
|
||||
var render_explorer = function (_nss, _clss) {
|
||||
var nav = "";
|
||||
// nav += render_menu_item("Widgets", "widgets", _nss, _clss, true);
|
||||
// nav += render_menu_item("Datasources", "datasources", _nss, _clss, true);
|
||||
// nav += render_menu_item("SignalSlot", "sigslot", _nss, _clss, true);
|
||||
// nav += render_menu_item("Grid", "grid", _nss, _clss, true);
|
||||
nav += render_menu_item("Providers Interface", "providers_interface", _nss, _clss, true);
|
||||
nav += render_menu_item("Providers Managers", "manager", _nss, _clss, true);
|
||||
nav += render_menu_item("Libraries", "library", _nss, _clss, true);
|
||||
@ -583,8 +583,6 @@ var render_menu_item = function (_title, _type, _nss, _clss, _check_tags) {
|
||||
|
||||
var members = find_first_members(ns.name, _clss);
|
||||
|
||||
// console.log(JSON.stringify(ns, true, 3))
|
||||
|
||||
nav += "<li class='dropdown'>";
|
||||
|
||||
if (members.length > 0) {
|
||||
@ -614,7 +612,6 @@ var render_menu_item = function (_title, _type, _nss, _clss, _check_tags) {
|
||||
var check_tags = function (_tags, _key) {
|
||||
for (var a = 0; a < _tags.length; a++) {
|
||||
var info = _tags[a];
|
||||
// console.log("TAGS",_key, _tags);
|
||||
if (info.title == "group" && info.text == _key) return true;
|
||||
}
|
||||
return false;
|
||||
@ -639,16 +636,8 @@ var find_first_members = function (_parent, _clss) {
|
||||
}
|
||||
}
|
||||
|
||||
// var cls_hierarchy = cls
|
||||
|
||||
var member_success = found && hierarchy.length - b < 2;
|
||||
|
||||
// console.log("_parent", _parent);
|
||||
// console.log("cls", JSON.stringify(cls, true, 3));
|
||||
// console.log("found", found);
|
||||
// console.log("hierarchy.length - b", hierarchy.length - b);
|
||||
|
||||
|
||||
if(!member_success) continue;
|
||||
|
||||
members.push(cls);
|
||||
@ -733,7 +722,7 @@ exports.publish = function(taffyData, opts, tutorials) {
|
||||
}
|
||||
|
||||
if(doclet.tags && find_tag_by_id(doclet.tags, "mainpage")){
|
||||
console.log(doclet);
|
||||
// console.log(doclet);
|
||||
|
||||
mainpage_content.push(doclet);
|
||||
}
|
||||
|
49
templates/initi/static/styles/mainpage.css
Normal file
49
templates/initi/static/styles/mainpage.css
Normal file
@ -0,0 +1,49 @@
|
||||
.mainpage {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
div.mainpage > div.desc {
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
div.desc p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.part > div.desc {
|
||||
font-size: 15px;
|
||||
box-sizing: border-box;
|
||||
padding: 5px;
|
||||
/*padding-bottom: 0px;*/
|
||||
}
|
||||
|
||||
div.part > pre {
|
||||
margin: 0px;
|
||||
margin-left: 10px;
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
div.mainpage > div.part {
|
||||
background: #f3f3f3;
|
||||
}
|
||||
|
||||
div.mainpage ul, h3, h4, h5 {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
div.mainpage h5{
|
||||
font-size: initial;
|
||||
font-weight: initial;
|
||||
letter-spacing: initial;
|
||||
}
|
||||
|
||||
div.mainpage li {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
div.mainpage ul {
|
||||
box-sizing: border-box;
|
||||
padding-left: 25px;
|
||||
}
|
@ -1,5 +1,7 @@
|
||||
/* JSDoc prettify.js theme */
|
||||
code a > span.com {
|
||||
|
||||
}
|
||||
/* plain text */
|
||||
.pln {
|
||||
color: #000000;
|
||||
|
@ -3,6 +3,11 @@
|
||||
/* Pretty printing styles. Used with prettify.js. */
|
||||
/* SPAN elements with the classes below are added by prettyprint. */
|
||||
/* plain text */
|
||||
code a > span.com {
|
||||
color: #0095dd;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.pln {
|
||||
color: #4d4d4c; }
|
||||
|
||||
|
@ -18,7 +18,7 @@
|
||||
isGlobalPage = (doc.kind === 'globalobj');
|
||||
}
|
||||
?>
|
||||
<?js if (doc.kind === 'mainpage' || (doc.kind === 'package')) { ?>
|
||||
<?js if (doc.kind === 'mainpage' /* || (doc.kind === 'package') */) { ?>
|
||||
<?js= self.partial('mainpage.tmpl', doc) ?>
|
||||
<?js } else if (doc.kind === 'source') { ?>
|
||||
<?js= self.partial('source.tmpl', doc) ?>
|
||||
@ -41,7 +41,7 @@
|
||||
<?js } ?>
|
||||
<?js } else if (doc.kind === 'module' && doc.modules) { ?>
|
||||
<?js doc.modules.forEach(function(module) { ?>
|
||||
<?js if (module.classdesc) { console.log("module.classdesc", module.classdesc)?>
|
||||
<?js if (module.classdesc) { //console.log("module.classdesc", module.classdesc)?>
|
||||
|
||||
<div class="class-description"><?js= module.classdesc ?></div>
|
||||
<?js } ?>
|
||||
|
@ -15,6 +15,7 @@
|
||||
<link type="text/css" rel="stylesheet" href="styles/dd-menu.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/explorer.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/members.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/mainpage.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
@ -1,10 +1,12 @@
|
||||
<?js
|
||||
var data = obj;
|
||||
var self = this;
|
||||
|
||||
|
||||
console.log(self.content)
|
||||
?>
|
||||
<style>
|
||||
div#main section {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
|
||||
<?js= self.partial('mainpage/each.tmpl', self.content) ?>
|
||||
|
||||
@ -12,8 +14,3 @@ console.log(self.content)
|
||||
<h3><?js= data.name ?> <?js= data.version ?></h3>
|
||||
<?js } ?>
|
||||
|
||||
<?js if (data.readme) { ?>
|
||||
<section>
|
||||
<article><?js= data.readme ?></article>
|
||||
</section>
|
||||
<?js } ?>
|
||||
|
@ -4,14 +4,21 @@ var self = this;
|
||||
|
||||
//console.log(part);
|
||||
?>
|
||||
<div class="mainpage">
|
||||
<?js if(part.description) { ?>
|
||||
<div class="part bdotted">
|
||||
<div class="desc"><?js= self.replace_enters_to_br(part.description) ?></div>
|
||||
|
||||
<?js if(part.description) { ?>
|
||||
<div class="description part bdotted"><?js= self.replace_enters_to_br(part.description) ?></div>
|
||||
<?js } ?>
|
||||
<?js part.examples && part.examples.forEach(function(_example){ ?>
|
||||
<pre class="prettyprint"><code><?js= self.htmlsafe(_example.code) ?></code></pre>
|
||||
<?js }); ?>
|
||||
</div>
|
||||
<?js } ?>
|
||||
|
||||
<?js if (part.examples && part.examples.length) { ?>
|
||||
<div class="params-desc params-example bdotted part">
|
||||
<div class="title">Examples: </div>
|
||||
<?js= self.partial('examples.tmpl', part.examples) ?>
|
||||
</div>
|
||||
<?js } ?>
|
||||
<?js if (false && part.examples && part.examples.length) { ?>
|
||||
<div class="params-desc params-example bdotted part">
|
||||
<div class="title">Examples: </div>
|
||||
<?js= self.partial('examples.tmpl', part.examples) ?>
|
||||
</div>
|
||||
<?js } ?>
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user