правки

This commit is contained in:
alexandervnuchkov 2018-08-29 13:56:30 +03:00
parent 6bb42275e8
commit 0bcff164df
86 changed files with 2373 additions and 18 deletions

View File

@ -0,0 +1,3 @@
<%@ Control Language="C#" %>
<a class="crm-task-title sm_linux sm_desktop sm_document" id="link_100020" title=""
href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/index.aspx")%>">Руководство по работе с плагинами</a>

View File

@ -26,13 +26,13 @@
</ul>
<h2>Руководства по установке</h2>
<ul>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforAltLinux.pdf")%>">Установка в Альт Линукс</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforAstraLinux.pdf")%>">Установка в Astra Linux</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforRedOS.pdf")%>">Установка в РЕД ОС</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforRosaLinux.pdf")%>">Установка в РОСА Линукс</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforRPM.pdf")%>">Установка в Linux (Red Hat)</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforDebian.pdf")%>">Установка в Linux (Debian)</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforWindows.pdf")%>">Установка в Windows</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforAltLinux.pdf")%>">Установка в Альт Линукс</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforRosaLinux.pdf")%>">Установка в РОСА Линукс</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforAstraLinux.pdf")%>">Установка в Astra Linux</a></li>
<%--<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforRedOS.pdf")%>">Установка в РЕД ОС</a></li>--%>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforDebian.pdf")%>">Установка в Linux (Debian)</a></li>
<li><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/pdf/Installation/InstallEditorsforRPM.pdf")%>">Установка в Linux (Red Hat)</a></li>
</ul>
<h2>Руководства пользователя</h2>
<ul>

View File

@ -1,7 +1,7 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<div class="changelog-open-in-new-window"><a target="_blank" href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/allplatforms/desktop-editors-changelog.aspx")%>">Открыть в новом окне</a></div>
<div class="changelog-version-block">
<p class="changelog-main-header hide_elements">Версия 1.2.39</p>
<p class="changelog-main-header hide_elements">Версия 1.0</p>
<p class="changelog-release-date">Дата выпуска: <span class="crd-date">24.08.2018</span></p>
<div class="changelog-switcher">
<p class="changelog-subheader">Основные функциональные возможности</p>

View File

@ -26,6 +26,10 @@
<ul>
<li><cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Desktop/100006_troubleshooting/100006_troubleshooting.ascx" /></li>
</ul>
<h2>Работа с плагинами</h2>
<ul>
<li><cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Desktop/100020_plugins/100020_plugins.ascx" /></li>
</ul>
<h2>Документация в PDF</h2>
<ul>
<li>

View File

@ -26,6 +26,8 @@
<h2 id="Install">Установите пакет r7-office.rpm</h2>
<div class="block_of_step">
<div class="screen_text">
<p>Перед установкой пакета <code>r7-office.rpm</code> потребуется установить некоторые зависимости. Выполните следующую команду:</p>
<pre><code>yum install http://li.nux.ro/download/nux/dextop/el7/x86_64//gstreamer1-libav-1.0.6-1.el7.nux.x86_64.rpm</code></pre>
<p>Для установки пакета перейдите в ту папку, где он сохранен, и выполните команду</p>
<pre><code>yum install r7-office.rpm</code></pre>
</div>

View File

@ -29,12 +29,12 @@
<li>
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Desktop/100017_linux_installation_astralinux/100017_linux_installation_astralinux.ascx" />
</li>
<li>
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Desktop/100018_linux_installation_redos/100018_linux_installation_redos.ascx" />
</li>
<li>
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Desktop/100019_linux_installation_rosalinux/100019_linux_installation_rosalinux.ascx" />
</li>
<%--<li>
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Desktop/100018_linux_installation_redos/100018_linux_installation_redos.ascx" />
</li>--%>
<li>
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Desktop/100005_linux_installation_deb/100005_linux_installation_deb.ascx" />
</li>

View File

@ -0,0 +1,39 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Пример плагина</h1>
<p>Чтобы понять, как работают плагины, как их можно написать и как добавить в редакторы документов, рассмотрите следующий пример плагина <code>helloworld.js</code>:</p>
<pre>
<code>
(function(window, undefined){
var text = "Hello world!";
window.Asc.plugin.init = function() {
Asc.scope.text = text; // export variable to plugin scope
this.callCommand(function() {
var oDocument = Api.GetDocument();
var oParagraph = Api.CreateParagraph();
oParagraph.AddText(Asc.scope.text); // or oParagraph.AddText(scope.text);
oDocument.InsertContent([oParagraph]);
}, true);
};
window.Asc.plugin.button = function(id)
{
};
})(window, undefined);
</code>
</pre>
<p>Это самый простой плагин, который при нажатии на кнопку плагина вставляет в документ фразу 'Hello world!'.</p>
</div>

View File

@ -0,0 +1,26 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Установка плагинов в редакторах документов</h1>
<h2>Добавление плагина в десктопные редакторы</h2>
<p>Необходимо взять папку плагина (она должна содержать файлы <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/config.aspx")%>">config.json</a>, <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/index.aspx")%>">index.html</a> и <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/plugincode.aspx")%>">pluginCode.js</a>), заархивировать ее содержимое и изменить расширение полученного файла на <em>.plugin</em>. После этого откройте вкладку Плагины и нажмите на кнопку <b>Настройки</b>. Откроется окно диспетчера плагинов:</p>
<p><img alt="Окно настроек плагинов" src="<%=VirtualPathUtility.ToAbsolute("~/images/Help/ru/Guides/small/plugins/pluginsettings.png")%>" /></p>
<p>Для загрузки созданного вами плагина используйте кнопку <b>Добавить плагин</b>. Он сразу же будет добавлен в открытые редакторы и во все редакторы, открытые позже. Для удаления выбранных плагинов используется кнопка <img alt="Значок Удалить плагин" src="<%=VirtualPathUtility.ToAbsolute("~/images/Help/ru/Guides/small/plugins/remove-plugin-button.png")%>" /> <b>Удалить плагин</b>.</p>
<h2>Удаление плагинов из редакторов документов</h2>
<p>Для удаления установленных плагинов необходимо выполнить следующие действия:</p>
<ul>
<li>Для десктопных редакторов - для удаления выбранного плагина используйте кнопку <img alt="Значок Удалить плагин" src="<%=VirtualPathUtility.ToAbsolute("~/images/Help/ru/Guides/small/plugins/remove-plugin-button.png")%>" /> <b>Удалить плагин</b> в окне <b>Настройки</b>.</li>
</ul>
</div>

View File

@ -0,0 +1,25 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Введение</h1>
<p>Десктопные редакторы документов <b>Р7-Офис</b> поддерживают плагины: как визуальные, так и невизуальные. Разработчики могут использовать плагины, чтобы добавить в редакторы определенную функциональность, не относящуюся напрямую к форматам OOXML. Разработчикам предоставляется API для взаимодействия с редакторами документов.</p>
<p>Плагины могут быть визуальными и невизуальными. При использовании визуальных плагинов открывается окно для выполнения какого-либо действия или рисуется определенный интерфейс в панели редактора. Невизуальные плагины представляют собой кнопки, при нажатии которых производятся манипуляции с документом.</p>
<p>Помимо манипуляций с документом или обработки его содержимого плагин может реализовывать OLE-объект. Это единственный способ, дающий возможность стороннему разработчику получать доступ в форматную часть документа, т.е. записывать свою информацию не только во время работы редактора, но и непосредственно в файл.</p>
<p>Плагины можно добавить в любой редактор (редактор текстовых документов, таблиц или презентаций). В последующих разделах можно найти информацию об устройстве плагинов и о добавлении их в редакторы.</p>
</div>

View File

@ -0,0 +1,62 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter PageGuides">
<h1>Руководство по работе с плагинами</h1>
<h2>Начало работы</h2>
<ul>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/introduction.aspx")%>">Введение</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/installation.aspx")%>">Установка плагинов</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/example.aspx")%>">Пример плагина</a></li>
</ul>
<h2>Структура плагина</h2>
<ul>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure.aspx")%>">Структура плагинов</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/config.aspx")%>">Создание файла конфигурации плагина: config.json</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/index.aspx")%>">Создание основного HTML-файла плагина: index.html</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/plugincode.aspx")%>">Написание кода плагина</a></li>
</ul>
<h2>Объект window.Asc.plugin</h2>
<ul>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugin.aspx")%>">Объект window.Asc.plugin</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginbutton.aspx")%>">window.Asc.plugin.button</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugincallcommand.aspx")%>">window.Asc.plugin.callCommand</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginexecutecommand.aspx")%>">window.Asc.plugin.executeCommand</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginexecutemethod.aspx")%>">window.Asc.plugin.executeMethod</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/insertandreplacecontentcontrols.aspx")%>">window.Asc.plugin.executeMethod("InsertAndReplaceContentControls", [args], callback)</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/removecontentcontrols.aspx")%>">window.Asc.plugin.executeMethod("RemoveContentControls", [args], callback)</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/getallcontentcontrols.aspx")%>">window.Asc.plugin.executeMethod("GetAllContentControls", callback)</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/addcontentcontrol.aspx")%>">window.Asc.plugin.executeMethod("AddContentControl", [args], callback)</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/removecontentcontrol.aspx")%>">window.Asc.plugin.executeMethod("RemoveContentControl", callback)</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/getcurrentcontentcontrol.aspx")%>">window.Asc.plugin.executeMethod("GetCurrentContentControl", callback)</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugininfo.aspx")%>">window.Asc.plugin.info</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infodata.aspx")%>">window.Asc.plugin.info.data</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoeditortype.aspx")%>">window.Asc.plugin.info.editorType</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoguid.aspx")%>">window.Asc.plugin.info.guid</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoheight.aspx")%>">window.Asc.plugin.info.height</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoimgsrc.aspx")%>">window.Asc.plugin.info.imgSrc</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infommtopx.aspx")%>">window.Asc.plugin.info.mmToPx</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoobjectid.aspx")%>">window.Asc.plugin.info.objectId</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/inforecalculate.aspx")%>">window.Asc.plugin.info.recalculate</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/inforesize.aspx")%>">window.Asc.plugin.info.resize</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infowidth.aspx")%>">window.Asc.plugin.info.width</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/init.aspx")%>">window.Asc.plugin.init</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/initonexternalmouseup.aspx")%>">window.Asc.plugin.init.onExternalMouseUp</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/onmethodreturn.aspx")%>">window.Asc.plugin.onMethodReturn</a></li>
</ul>
<h2>Объект Asc.scope</h2>
<ul>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/ascscope.aspx")%>">Объект Asc.scope</a></li>
</ul>
</div>

View File

@ -0,0 +1,26 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Структура плагина</h1>
<p>Каждый плагин для десктопной версии редакторов - это <b>zip-архив</b> директории с файлами (подробную информацию о добавлении плагинов в редакторы можно найти в разделе <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/installation.aspx")%>">"Установка плагинов в редакторах документов"</a>).</p>
<p>Папка должна содержать следующие файлы:</p>
<ul>
<li><b><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/config.aspx")%>">config.json</a></b> - файл конфигурации плагина. Содержит основные данные, необходимые для регистрации плагина в редакторах.</li>
<li><b><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/index.aspx")%>">index.html</a></b> - точка входа плагина. Подключает файлы <code>config.json</code> и <code>pluginBase.js</code> (базовый файл для работы с плагинами).</li>
<li><b><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/plugincode.aspx")%>">pluginCode.js</a></b> - файл с кодом плагина. Содержит код JavaScript того плагина, который требуется подключить к редакторам.</li>
</ul>
</div>

View File

@ -0,0 +1,45 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Объект Asc.scope</h1>
<h2>Описание</h2>
<p>Объект, используемый для передачи дополнительных данных (объекты, параметры, переменные и т.д.) методу <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugincallcommand.aspx")%>">window.Asc.plugin.callCommand</a>, который исполняется в собственном изолированном контексте.</p>
<div class="notehelp">Функции нельзя передавать методу  <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugincallcommand.aspx")%>">window.Asc.plugin.callCommand</a> с помощью объекта <em>Asc.scope</em>.</div>
<h2>Пример</h2>
<pre>
<code>
(function(window, undefined){
var scopeText = ["Hello World!", "This is me!", "I'm glad to see you!!!"];
window.Asc.plugin.init = function() {
Asc.scope.st = scopeText;
this.callCommand(function() {
var oDocument = Api.GetDocument();
var oParagraph = Api.CreateParagraph();
for (var i = 0; i < Asc.scope.st.length; i++)
{
oParagraph.AddText(Asc.scope.st[i] + "&lt;br /&gt;");
}
oDocument.InsertContent([oParagraph]);
}, true);
};
window.Asc.plugin.button = function(id)
{
};
})(window, undefined);
</code>
</pre>
</div>

View File

@ -0,0 +1,151 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Создание файла конфигурации плагина: config.json</h1>
<p>Файл <em>config.json</em> - это файл конфигурации плагина, содержащий основные данные, необходимые для регистрации плагина в редакторах.</p>
<p>Ниже приводится пример кода для файла <em>config.json</em> (этот код используется для плагина <b>Шахматы</b>, но любой другой файл <em>config.json</em> создается аналогично):</p>
<pre>
<code>
{
"baseUrl": "",
"guid": "asc.{FFE1F462-1EA2-4391-990D-4CC84940B754}",
"name": "chess(fen)",
"variations": [
{
"buttons": [
{ "text": "OK", "primary": true },
{ "text": "Cancel", "primary": false }
],
"description": "chess",
"EditorsSupport": ["word", "cell", "slide"],
"icons": ["chess/icon.png", "chess/icon@2x.png"],
"initData": "",
"initDataType": "ole",
"initOnSelectionChanged": true,
"isInsideMode": false,
"isModal": true,
"isUpdateOleOnResize": true,
"isViewer": true,
"isVisual": true,
"url": "chess/index.html"
}
]
};
</code>
</pre>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
<td><b>Тип</b></td>
</tr>
</thead>
<tbody>
<tr>
<td>baseUrl</td>
<td>Путь к плагину. Все остальные пути вычисляются относительно этого пути. Если плагин установлен на сервер, там прописывается дополнительный параметр - путь к плагинам. Если <em>baseUrl == ""</em>, то используется путь ко всем плагинам.</td>
<td>строка</td>
</tr>
<tr>
<td>guid</td>
<td>Идентификатор плагина. <b>Должен</b> быть типа <em>asc.{uuid}</em>.</td>
<td>строка</td>
</tr>
<tr>
<td>name</td>
<td>Имя плагина, которое будет отображаться на панели плагинов.</td>
<td>строка</td>
</tr>
<tr>
<td>variations</td>
<td>Вариации плагина или "подплагины" - См. раздел <a href="#pluginVariations">"Вариации плагинов"</a> ниже.</td>
<td>массив</td>
</tr>
<tr>
<td>variations.buttons</td>
<td>Перечень кнопок в окне плагина с возможностью скиновать. Используются только для визуальных плагинов в их собственном окне, например <em>isVisual == true &amp;&amp; isInsideMode == false</em>). Кнопки могут быть главными или не главными. Флаг primary влияет только на скин кнопки.</td>
<td>массив</td>
</tr>
<tr>
<td>variations.description</td>
<td>Описание плагина.</td>
<td>строка</td>
</tr>
<tr>
<td>variations.EditorsSupport</td>
<td>Для каких редакторов предназначен плагин (<em>"word"</em> - редактор текстовых документов, <em>"cell"</em> - редактор электронных таблиц, <em>"slide"</em> - редактор презентаций).</td>
<td>массив</td>
</tr>
<tr>
<td>variations.icons</td>
<td>Графические файлы иконок плагина, используемых в редакторах: для обычных экранов и иконки со вдвое большим разрешением для дисплеев Retina.</td>
<td>массив</td>
</tr>
<tr>
<td>variations.initData</td>
<td>Всегда равно <em>""</em>. Это данные, которые передаются плагину из редактора при запуске плагина (например, если <em>initDataType == "text"</em>, плагин при запуске будет получать выделенный текст).</td>
<td>строка</td>
</tr>
<tr>
<td>variations.initDataType</td>
<td>Тип данных, которые выделяются в редакторе и передаются плагину: <em>"text"</em> - текстовые данные, <em>"html"</em> - HTML-код, <em>"ole"</em> - данные OLE-объекта, <em>"none"</em> - никакие данные не передаются плагину.</td>
<td>строка</td>
</tr>
<tr>
<td>variations.initOnSelectionChanged</td>
<td>Определяет, отслеживает ли плагин изменение выделения текста в окне редактора.</td>
<td>логическое значение</td>
</tr>
<tr>
<td>variations.isInsideMode</td>
<td>Определяет, должен ли плагин отображаться в панели редактора, а не в собственном окне (используется только для визуальных немодальных плагинов). Обязательно должно выполняться следующее правило: <em>isModal != isInsideMode</em>.</td>
<td>логическое значение</td>
</tr>
<tr>
<td>variations.isModal</td>
<td>Определяет, надо ли открывать плагин в отдельном модальном окне (используется только для визуальных плагинов). Обязательно должно выполняться следующее правило: <em>isModal != isInsideMode</em>.</td>
<td>логическое значение</td>
</tr>
<tr>
<td>variations.isUpdateOleOnResize</td>
<td>Определяет, нужно ли перерисовывать OLE-объект при изменении размера объекта в редакторе (векторная отрисовка). Используется только для OLE-объектов, то есть <em>initDataType == "ole"</em>).</td>
<td>логическое значение</td>
</tr>
<tr>
<td>variations.isViewer</td>
<td>Определяет, доступен ли плагин, если документ доступен только в режиме просмотра.</td>
<td>логическое значение</td>
</tr>
<tr>
<td>variations.isVisual</td>
<td>Определяет, является ли плагин визуальным (при их использовании открывается окно для выполнения какого-либо действия или рисуется определенный интерфейс в панели редактора) или невизуальным (представляют собой кнопки, при нажатии которых производятся манипуляции с документом).</td>
<td>логическое значение</td>
</tr>
<tr>
<td>variations.url</td>
<td>Точка входа в плагин, то есть HTML-файл, подключающий файл <em>pluginBase.js</em> (базовый файл для работы с плагинами) и запускающий код плагина. См. раздел <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/index.aspx")%>">index.html</a> для получения подробной информации.</td>
<td>строка</td>
</tr>
</tbody>
</table>
<h2 id="pluginVariations">Вариации плагина</h2>
<p>Для чего плагину нужны вариации? Очень просто: плагин может не только выполнять какое-то действие, но и содержать настройки или окно "О программе". Например, плагин-переводчик: самому плагину не требуется визуальное окно для перевода, так как это выполняется нажатием одной кнопки, но настройки плагина (направление перевода) и окно "О программе" должны быть визуальными. Поэтому потребуются как минимум две вариации плагина (сам перевод и настройки), или три, если надо добавить окно "О программе" с информацией о плагине и его разработчиках или о программном обеспечении, использованном для создания плагина.</p>
<div class="notehelp">Для правильной работы плагина файлы <em>.html</em> для <b>всех</b> вариаций должны быть помещены в корневую папку плагина вместе с файлом конфигурации <em>config.json</em>.</div>
</div>

View File

@ -0,0 +1,86 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.executeMethod("AddContentControl", [args], callback)</h1>
<h2>Описание</h2>
<p>Этот метод позволяет добавлять в документ пустой элемент управления содержимым.</p>
<h2>Использование</h2>
<p>Использовать метод надо так:</p>
<pre>
<code>
window.Asc.plugin.executeMethod("AddContentControl", [wrap, obj]);
</code>
</pre>
<p>Где:</p>
<ul>
<li><em>wrap</em> - это числовое значение, определяющее тип элемента управления содержимым. Может иметь одно из следующих значений: <b>1</b> (block - блочный) или <b>2</b> (inline - строчный),</li>
<li><em>obj</em>- это объект JSON следующего вида:</li>
</ul>
<pre>
<code>
{ "Id" : 0, "Lock" : 0, "Tag" : "{tag}"}
</code>
</pre>
<p>Объект <em>obj</em> может иметь следующие значения:</p>
<ul>
<li>"Id" (например, <em>{"Id": 2}</em> ) - уникальный идентификатор для элемента управления содержимым. Его можно использовать для того, чтобы найти конкретный элемент управления содержимым и ссылаться на него в своем коде.</li>
<li>"Tag" (например, <em>{"Tag": "String"}</em> ) - тег для элемента управления содержимым. Один тег может быть присвоен нескольким элементам управления содержимым для того, чтобы можно было ссылаться на них в своем коде.</li>
<li>"Lock" (например, <em>{"Lock": 0}</em> ) - значение, которое определяет возможность удаления и редактирования для элемента управления содержимым. Значения могут быть следующими:</li>
</ul>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Числовое значение</b></td>
<td><b>Редактирование</b></td>
<td><b>Удаление</b></td>
</tr>
</thead>
<tbody>
<tr>
<td><b>0</b></td>
<td>Нет</td>
<td>Да</td>
</tr>
<tr>
<td><b>1</b></td>
<td>Нет</td>
<td>Нет</td>
</tr>
<tr>
<td><b>2</b></td>
<td>Да</td>
<td>Нет</td>
</tr>
<tr>
<td><b>3</b></td>
<td>Да</td>
<td>Да</td>
</tr>
</tbody>
</table>
<h2>Возвращает</h2>
<p>Метод возвращает объект JSON с данными о созданном элементе управления содержимым следующего вида (JSON):</p>
<pre>
<code>
{ "Tag": "{tag}", "Id": 0, "Lock": 0, "InternalId": "1_713"}
</code>
</pre>
</div>

View File

@ -0,0 +1,36 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.executeMethod("GetAllContentControls", callback)</h1>
<h2>Описание</h2>
<p>Этот метод позволяет получить информацию о всех элементах управления содержимым, которые добавлены на страницу.</p>
<h2>Использование</h2>
<p>Использовать метод надо так:</p>
<pre>
<code>
window.Asc.plugin.executeMethod("GetAllContentControls");
</code>
</pre>
<h2>Возвращает</h2>
<p>Метод возвращает данные следующего вида (JSON):</p>
<pre>
<code>
[ { "Tag": "Document", "Id": 0, "Lock": 0, "InternalId": "1_713" } ]
</code>
</pre>
</div>

View File

@ -0,0 +1,32 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.executeMethod("GetCurrentContentControl", callback)</h1>
<h2>Описание</h2>
<p>Этот метод позволяет получить идентификатор выделенного элемента управления содержимым (то есть того, в котором находится курсор).</p>
<h2>Использование</h2>
<p>Использовать метод надо так:</p>
<pre>
<code>
window.Asc.plugin.executeMethod("GetCurrentContentControl");
</code>
</pre>
<h2>Возвращает</h2>
<p>Метод возвращает ID элемента.</p>
</div>

View File

@ -0,0 +1,123 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.executeMethod("InsertAndReplaceContentControls", [args], callback)</h1>
<h2>Описание</h2>
<p>Этот метод добавляет элемент управления содержимым с данными. Эти данные задаются с помощью js-кода для Генератора документов, или просто ссылкой на документ, к которому предоставлены соответствующие права доступа.</p>
<h2>Использование</h2>
<p>Использовать метод надо так:</p>
<pre>
<code>
window.Asc.plugin.executeMethod("InsertAndReplaceContentControls", [obj]);
</code>
</pre>
<p>Где <em>obj</em> - это массив из JSON:</p>
<pre>
<code>
[
{
"Props": {
"Id": Number,
"Tag": "{String}",
"Lock": Number
},
"Script": "var oDocument = Api.GetDocument();var oParagraph = Api.CreateParagraph();oParagraph.AddText('Hello world!');oDocument.InsertContent([oParagraph]);"
}
]
</code>
</pre>
<p>Каждый новый элемент в массиве будет создавать новый элемент управления содержимым.</p>
<pre>
<code>
[ {"Props": {...}, "Url": "http://"}, {"Props": {...}, "Url": "http://."}, {...}, {...}]
</code>
</pre>
<p>Ключ <em>Props</em> может иметь следующие значения:</p>
<ul>
<li>"Id" (например, <em>{"Id": 2}</em> ) - уникальный идентификатор для элемента управления содержимым. Его можно использовать для того, чтобы найти конкретный элемент управления содержимым и ссылаться на него в своем коде.</li>
<li>"Tag" (например, <em>{"Tag": "String"}</em> ) - тег для элемента управления содержимым. Один тег может быть присвоен нескольким элементам управления содержимым для того, чтобы можно было ссылаться на них в своем коде.</li>
<li>"Lock" (например, <em>{"Lock": 0}</em> ) - значение, которое определяет возможность удаления и редактирования для элемента управления содержимым. Значения могут быть следующими:</li>
</ul>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Числовое значение</b></td>
<td><b>Редактирование</b></td>
<td><b>Удаление</b></td>
</tr>
</thead>
<tbody>
<tr>
<td><b>0</b></td>
<td>Нет</td>
<td>Да</td>
</tr>
<tr>
<td><b>1</b></td>
<td>Нет</td>
<td>Нет</td>
</tr>
<tr>
<td><b>2</b></td>
<td>Да</td>
<td>Нет</td>
</tr>
<tr>
<td><b>3</b></td>
<td>Да</td>
<td>Да</td>
</tr>
</tbody>
</table>
<p>Кроме ключа <em>Props</em> должна быть пара вида "Ключ/Значение" с ключом <em>Url</em> или <em>Script</em>, определяющая данные, которые будут находиться в элементе управления содержимым. Если используется ключ <em>Url</em>, его значением должна быть ссылка на файл, к которому предоставлены соответствующие права доступа. Если используется ключ <em>Script</em>, его значением должен быть скрипт, который будет выполняться для того, чтобы сгенерировать данные в элементе управления содержимым.</p>
<h2>Пример 1</h2>
<pre>
{
"Url": "https://example.com/script.docbuilder"
}
</pre>
<h2>Пример 2</h2>
<pre>
<code>
"Script": "var oDocument = Api.GetDocument();
var oParagraph=Api.CreateParagraph();
oParagraph.AddText('Helloworld!');
oDocument.InsertContent([oParagraph]);"
</code>
</pre>
<h2>Возвращает</h2>
<p>Метод возвращает данные, которые содержатся в созданном элементе управления содержимым (в формате JSON)</p>
<pre>
<code>
[
{
"Tag": "Document",
"Id": 0,
"Lock": 0,
"InternalId": "1_713"
}
]
</code>
</pre>
</div>

View File

@ -0,0 +1,33 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.executeMethod("RemoveContentControl", callback)</h1>
<h2>Описание</h2>
<p>Этот метод позволяет удалить выделенный элемент управления содержимым, но при этом оставить данные, которые в нем были.</p>
<h2>Использование</h2>
<p>Использовать метод надо так:</p>
<pre>
<code>
window.Asc.plugin.executeMethod("RemoveContentControl");
</code>
</pre>
<p>Элемент управления содержимым, в котором находится курсор, будет удален.</p>
<h2>Возвращает</h2>
<p>Метод возвращает значение <em>undefined</em>.</p>
</div>

View File

@ -0,0 +1,38 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.executeMethod("RemoveContentControls", [args], callback)</h1>
<h2>Описание</h2>
<p>Этот метод позволяет удалить несколько элементов управления содержимым.</p>
<h2>Использование</h2>
<p>Использовать метод надо так:</p>
<pre>
<code>
window.Asc.plugin.executeMethod("RemoveContentControls", [obj]);
</code>
</pre>
<p>Где <em>obj</em> - это массив из JSON следующего вида:</p>
<pre>
<code>
[ { "InternalId": "id" }, { "InternalId": "id2" }, ... ]
</code>
</pre>
<h2>Возвращает</h2>
<p>Метод возвращает значение <em>undefined</em>.</p>
</div>

View File

@ -0,0 +1,40 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Создание основного HTML-файла плагина: index.html</h1>
<p>Каждый плагин работает в своем iframe. Редактор подключает файл <em>index.html</em>, указанный в файле конфигурации плагина <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/config.aspx")%>">config.json</a>. Файл <em>index.html</em> - это точка входа в плагин. Файл <em>index.html</em> подключает файл <em>pluginBase.js</em> - базовый файл, необходимый для работы с плагинами.</p>
<p>Ниже приводится пример кода для файла <em>index.html</em> (этот код используется для плагина <b>Шахматы</b>, но любой другой файл <em>index.html</em> создается аналогично):</p>
<pre>
<code>
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;meta charset="UTF-8" /&gt;
&lt;title&gt;Chess&lt;/title&gt;
&lt;script type="text/javascript" src="../pluginBase.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="chess.js"&gt;&lt;/script&gt;
&lt;/head&gt;
&lt;body style="width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;"&gt;
&lt;div id="chess" style="margin: 0; padding: 0;"&gt;&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</code>
</pre>
<p>Раздел <em>&lt;head&gt;...&lt;/head&gt;</em> содержит ссылки на все скрипты и таблицы стилей, необходимые для правильной работы плагина (как локальные, так и удаленные, если плагин их использует). Этот раздел также содержит ссылку на базовый файл <em>pluginBase.js</em>, необходимый для правильной работы плагинов с редакторами и содержащий базовый метод работы плагинов.</p>
<p>Раздел <em>&lt;body&gt;...&lt;/body&gt;</em> может содержать теги <em>&lt;div&gt;...&lt;/div&gt;</em> с заполнителями, куда будут вставлены компоненты плагина. Поведение этих компонентов плагина описывается в самом файле <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/plugincode.aspx")%>">pluginCode.js</a>.</p>
</div>

View File

@ -0,0 +1,43 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.data</h1>
<span class="lable_tip">запись</span>
<h2>Описание</h2>
<p>Данные OLE-объекта, которые требуется передать объекту <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugininfo.aspx")%>">window.Asc.plugin.info</a> и которые используются плагином.</p>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - строка</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
var _info = window.Asc.plugin.info;
var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
_info.width = _info.width ? _info.width : 70;
_info.height = _info.height ? _info.height : 70;
_info.widthPix = (_info.mmToPx * _info.width) >> 0;
_info.heightPix = (_info.mmToPx * _info.height) >> 0;
_info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
_info.data = window.g_board.getData();
var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
this.executeCommand("close", _code);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,52 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.editorType</h1>
<span class="lable_tip">только чтение</span>
<h2>Описание</h2>
<p>Возвращает тип редактора, в котором в данный момент запущен плагин.</p>
<p>Значения могут быть следующими:</p>
<ul>
<li><b>"word"</b> - редактор текстовых документов;</li>
<li><b>"cell"</b> - редактор электронных таблиц;</li>
<li><b>"slide"</b> - редактор презентаций.</li>
</ul>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - строка</p>
<h2>Пример</h2>
<pre>
<code>
function createScriptFromArray (aSelected) {
var sScript = '';
if (aSelected.length > 0) {
switch (window.Asc.plugin.info.editorType) {
case 'word': {
sScript += 'var oDocument = Api.GetDocument();';
sScript += '\noDocument.CreateNewHistoryPoint();';
sScript += '\nvar oParagraph, oRun, arrInsertResult = [], oImage;';
sScript += '\noDocument.InsertContent(arrInsertResult);';
break;
}
}
}
return sScript;
}
</code>
</pre>
</div>

View File

@ -0,0 +1,34 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.guid</h1>
<span class="lable_tip">только чтение</span>
<h2>Описание</h2>
<p>GUID OLE-объекта в текущем документе.</p>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - строка</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.init = function () {
var plugin_uuid = window.Asc.plugin.info.guid;
};
</code>
</pre>
</div>

View File

@ -0,0 +1,44 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.height</h1>
<span class="lable_tip">только чтение</span>
<h2>Описание</h2>
<p>Высота OLE-объекта в миллиметрах.</p>
<div class="notehelp">Если вам нужна высота OLE-объекта в пикселях для растрового представления, используйте метод <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infommtopx.aspx")%>">window.Asc.plugin.info.mmToPx</a> для преобразования значений.</div>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - число</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
var _info = window.Asc.plugin.info;
var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
_info.width = _info.width ? _info.width : 70;
_info.height = _info.height ? _info.height : 70;
_info.widthPix = (_info.mmToPx * _info.width) >> 0;
_info.heightPix = (_info.mmToPx * _info.height) >> 0;
_info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
_info.data = window.g_board.getData();
var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
this.executeCommand("close", _code);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,43 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.imgSrc</h1>
<span class="lable_tip">запись</span>
<h2>Описание</h2>
<p>Ссылка на изображение (визуальное представление), хранящееся в OLE-объекте и используемое плагином.</p>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - строка</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
var _info = window.Asc.plugin.info;
var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
_info.width = _info.width ? _info.width : 70;
_info.height = _info.height ? _info.height : 70;
_info.widthPix = (_info.mmToPx * _info.width) >> 0;
_info.heightPix = (_info.mmToPx * _info.height) >> 0;
_info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
_info.data = window.g_board.getData();
var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
this.executeCommand("close", _code);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,45 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.mmToPx</h1>
<span class="lable_tip">только чтение</span>
<h2>Описание</h2>
<p>Коэффициент перевода миллиметров в пиксели для векторной отрисовки OLE-объекта.</p>
<p>Значения <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoheight.aspx")%>">высоты</a> и <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infowidth.aspx")%>">ширины</a> OLE-объекта возвращаются в миллиметрах, поэтому их потребуется перевести в пиксели для растрового представления. </p>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - число</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
var _info = window.Asc.plugin.info;
var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
_info.width = _info.width ? _info.width : 70;
_info.height = _info.height ? _info.height : 70;
_info.widthPix = (_info.mmToPx * _info.width) >> 0;
_info.heightPix = (_info.mmToPx * _info.height) >> 0;
_info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
_info.data = window.g_board.getData();
var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
this.executeCommand("close", _code);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,43 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.objectId</h1>
<span class="lable_tip">только чтение</span>
<h2>Описание</h2>
<p>Идентификатор OLE-объекта в текущем документе.</p>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - строка</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
var _info = window.Asc.plugin.info;
var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
_info.width = _info.width ? _info.width : 70;
_info.height = _info.height ? _info.height : 70;
_info.widthPix = (_info.mmToPx * _info.width) >> 0;
_info.heightPix = (_info.mmToPx * _info.height) >> 0;
_info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
_info.data = window.g_board.getData();
var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
this.executeCommand("close", _code);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,42 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.recalculate</h1>
<span class="lable_tip">запись</span>
<h2>Описание</h2>
<p>Позволяет принудительно пересчитать данные о содержимом документа.</p>
<p>Если меняется содержимое документа и требуется пересчет, параметр <em>isRecalculate</em> должен иметь значение <em>true</em>. Это необходимо, так как пересчет асинхронен, к тому же может потребоваться подгрузить данные (например, шрифт).</p>
<div class="notehelp">При использовании плагинов с OLE-объектами метод <em>isRecalculate</em> не требуется, так как документ пересчитывает данные сам.</div>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - логическое значение</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.init = function () {
var sScript = 'var oDocument = Api.GetDocument();';
sScript += 'oDocument.CreateNewHistoryPoint();';
sScript += 'oParagraph = Api.CreateParagraph();';
sScript += 'oParagraph.AddText(\'Hello word!\');';
sScript += 'oDocument.InsertContent([oParagraph]);';
window.Asc.plugin.info.recalculate = true;
this.executeCommand("close", sScript);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,35 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.resize</h1>
<span class="lable_tip">только чтение</span>
<h2>Описание</h2>
<p>Проверяет, был ли изменен размер OLE-объекта.</p>
<p>Если <em>window.Asc.plugin.info.resize === true</em>, объект будет перерисован.</p>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - логическое значение</p>
<h2>Пример</h2>
<pre>
<code>
if (window.Asc.plugin.info.resize === true) {
return window.Asc.plugin.button(0);
}
</code>
</pre>
</div>

View File

@ -0,0 +1,44 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info.width</h1>
<span class="lable_tip">только чтение</span>
<h2>Описание</h2>
<p>Ширина OLE-объекта в миллиметрах.</p>
<div class="notehelp">Если вам нужна Ширина OLE-объекта в пикселях для растрового представления, используйте метод <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infommtopx.aspx")%>">window.Asc.plugin.info.mmToPx</a> для преобразования значений.</div>
<h2>Возвращает</h2>
<p>Тип возвращаемого значения - число</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
var _info = window.Asc.plugin.info;
var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
_info.width = _info.width ? _info.width : 70;
_info.height = _info.height ? _info.height : 70;
_info.widthPix = (_info.mmToPx * _info.width) >> 0;
_info.heightPix = (_info.mmToPx * _info.height) >> 0;
_info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
_info.data = window.g_board.getData();
var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
this.executeCommand("close", _code);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,54 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.init(data)</h1>
<h2>Описание</h2>
<p>Данные, передаваемые плагину, и информация о том, что и как с ними надо сделать. Этот метод вызывается при старте плагина.</p>
<h2>Параметры</h2>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
<td><b>Тип</b></td>
</tr>
</thead>
<tbody>
<tr>
<td>data</td>
<td>Параметр <em>data</em> зависит от параметра <em>"initDataType"</em> прописанного в файле конфигурации плагина <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/config.aspx")%>">config.json</a>. Его значения могут быть следующими: <em>"none"</em> - пустая строка, <em>"text"</em> - выделенный в документе текст, <em>"html"</em> - выделенный фрагмент документа, <em>"ole"</em> - данные OLE-объекта.</td>
<td>строка</td>
</tr>
</tbody>
</table>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.init = function () {
this.callCommand(function() {
var oDocument = Api.GetDocument();
var oParagraph = Api.CreateParagraph();
oParagraph.AddText("Hello world!");
oDocument.InsertContent([oParagraph]);
}, true);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,51 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.init.onExternalMouseUp(fMouseUp)</h1>
<h2>Описание</h2>
<p>Определяет действие, которое должно выполняться, когда кнопка мыши отпущена вне iframe плагина.</p>
<h2>Параметры</h2>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
<td><b>Тип</b></td>
</tr>
</thead>
<tbody>
<tr>
<td>fMouseUp</td>
<td>Функция, которая должна выполняться, когда кнопка мыши отпущена вне iframe плагина.</td>
<td>функция</td>
</tr>
</tbody>
</table>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.onExternalMouseUp = function () {
var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("mouseup", true, true, window, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
document.dispatchEvent(evt);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,40 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.onMethodReturn</h1>
<h2>Описание</h2>
<p>Метод объекта <em>window.Asc.plugin</em>, который позволяет возвращать результат ранее выполненного метода. Может использоваться для возвращения данных после выполнения метода <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginexecutemethod.aspx")%>">window.Asc.plugin.executeMethod(...)</a>.</p>
<h2>Использование</h2>
<p>Использовать метод надо так:</p>
<pre><code>
window.Asc.plugin.onMethodReturn = function(returnValue){...}
</code></pre>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.executeMethod("InsertAndReplaceContentControls", [_obj]);
window.Asc.plugin.onMethodReturn = function(returnValue) {
if (window.Asc.plugin.info.methodName == "InsertAndReplaceContentControls") {
window.Asc.plugin.executeMethod("GetAllContentControls");
} else if ("GetAllContentControls") {
window.Asc.plugin.executeCommand("close", console.log(JSON.stringify(returnValue)));
}
};
</code>
</pre>
</div>

View File

@ -0,0 +1,52 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Написание кода плагина</h1>
<p>Основной код плагина находится в файле <em>.js</em>, описывающем, какие действия и каким образом должен выполнять плагин. Этот файл размещается в корневой папке плагина вместе с файлами <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/config.aspx")%>">config.json</a> и <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/index.aspx")%>">index.html</a>.</p>
<h2>Как это работает?</h2>
<p>В коде каждого плагина содержится объект <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugin.aspx")%>">window.Asc.plugin</a>, который, в свою очередь, имеет несколько методов для взаимодействия с редакторами документов, таблиц и презентаций.</p>
<p>Для работы плагина разработчик должен определить два обязательных метода для объекта <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugin.aspx")%>">window.Asc.plugin</a>: <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/init.aspx")%>">window.Asc.plugin.init</a> и <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginbutton.aspx")%>">window.Asc.plugin.button</a>. После этого используется метод <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugincallcommand.aspx")%>">window.Asc.plugin.callCommand</a> для передачи данных в редакторы с помощью встроенных функций API Генератора документов.</p>
<p>Если плагин работает с OLE-объектом, для управления им используется метод <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginexecutecommand.aspx")%>">window.Asc.plugin.executeCommand</a>.</p>
<p>Рассмотрим, как это сделано в плагине <em>helloworld.js</em>:</p>
<pre>
<code>
(function (window, undefined) {
window.Asc.plugin.init = function () {
this.callCommand(function() {
var oDocument = Api.GetDocument();
var oParagraph = Api.CreateParagraph();
oParagraph.AddText("Hello world!");
oDocument.InsertContent([oParagraph]);
}, true);
};
window.Asc.plugin.button = function (id) {
};
})(window, undefined);
</code>
</pre>
<p>При инициализации плагина (<em>window.Asc.plugin.init = function () {...}</em>)редактор формирует абзац с фразой 'Hello World', а затем использует API Генератора документов для создания документа с этим текстом (с помощью метода <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugincallcommand.aspx")%>">window.Asc.plugin.callCommand</a> - <em>this.callCommand(function() {...})</em>).</p>
<div class="notehelp">Пожалуйста, обратите внимание, что функции Генератора документов уже включены в редакторы: это то, как плагины взаимодействуют с редакторами. Отдельная версия Генератора документов потребуется, только если вы хотите создать документ, не используя редакторы.</div>
<p>Единственная кнопка 'OK' (<em>window.Asc.plugin.button = function (id) {...}</em>) используется для создания текста и завершения работы с плагином.</p>
<p>Таким же образом можно создать любой другой плагин. В настоящее время плагины поддерживают не только передачу текста или форматированного текста в редакторы, но и встраивание OLE-объектов (например, плагин YouTube, встраивающий видео с YouTube на страницу редактора).</p>
</div>

View File

@ -0,0 +1,99 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Объект window.Asc.plugin</h1>
<h2>Описание</h2>
<p>Объект, создаваемый при запуске плагина. Имеет несколько методов, некоторые из них необязательные и используются только в случае необходимости.</p>
<h2>Методы и свойства</h2>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
<td><b>Тип</b></td>
<td><b>Наличие</b></td>
</tr>
</thead>
<tbody>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginbutton.aspx")%>">button</a></td>
<td>Кнопки, используемые с плагином и поведение плагина при нажатии на кнопку. Этот метод вызывается при нажатии на любую из кнопок плагина.</td>
<td>функция</td>
<td>обязательный</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugincallcommand.aspx")%>">callCommand</a>/<a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginexecutecommand.aspx")%>">executeCommand</a></td>
<td>Метод <em>window.Asc.plugin.callCommand</em> используется для передачи данных в редактор. Заменил метод <em>window.Asc.plugin.executeCommand</em> при работе с текстами, чтобы упростить синтаксис сценария, который требуется передать редакторам. Метод <em>window.Asc.plugin.executeCommand</em> преимущественно используется для работы с OLE-объектами.
</td>
<td>функция</td>
<td>обязательный</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginexecutemethod.aspx")%>">executeMethod</a></td>
<td>Используется для выполнения с помощью плагина определенных методов редактора.</td>
<td>функция</td>
<td>необязательный</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugininfo.aspx")%>">info</a></td>
<td>Содержит все сведения о редакторе, в котором используется плагин.</td>
<td>объект</td>
<td>необязательный</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/init.aspx")%>">init</a></td>
<td>Данные, передаваемые в плагин, и информация о том, что и каким образом нужно с ними сделать. Этот метод вызывается при старте плагина.</td>
<td>функция</td>
<td>обязательный</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/initonexternalmouseup.aspx")%>">onExternalMouseUp</a></td>
<td>Определяет действие, которое должно выполняться, когда кнопка мыши отпущена вне iframe плагина.</td>
<td>функция</td>
<td>необязательный</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/onmethodreturn.aspx")%>">onMethodReturn</a></td>
<td>Возвращает результат ранее выполненного метода.</td>
<td>функция</td>
<td>необязательный</td>
</tr>
</tbody>
</table>
<h2>Пример</h2>
<pre>
<code>
(function(window, undefined){
var text = "Hello world!";
window.Asc.plugin.init = function() {
Asc.scope.text = text;
this.callCommand(function() {
var oDocument = Api.GetDocument();
var oParagraph = Api.CreateParagraph();
oParagraph.AddText(Asc.scope.text);
oDocument.InsertContent([oParagraph]);
}, true);
};
window.Asc.plugin.button = function(id)
{
};
})(window, undefined);
</code>
</pre>
</div>

View File

@ -0,0 +1,48 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.button(id)</h1>
<h2>Описание</h2>
<p>Кнопки, используемые с плагином и поведение плагина при нажатии на кнопку. Этот метод вызывается при нажатии на любую из кнопок плагина.</p>
<h2>Параметры</h2>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
<td><b>Тип</b></td>
</tr>
</thead>
<tbody>
<tr>
<td>id</td>
<td>Индекс кнопки в массиве <em>"buttons"</em> файла конфигурации плагина <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/config.aspx")%>">config.json</a>. Если <em>id == -1</em>, считается, что нажат крестик 'Закрыть окно' или работа плагина прервана.</td>
<td>число</td>
</tr>
</tbody>
</table>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
this.executeCommand("close", '');
};
</code>
</pre>
</div>

View File

@ -0,0 +1,62 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.callCommand(fCommand, isClose)</h1>
<h2>Описание</h2>
<p>Новый метод, используемый для передачи данных в редактор. Заменил метод <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginexecutecommand.aspx")%>">executeCommand</a> при работе с текстами, чтобы упростить синтаксис сценария, который требуется передать редакторам с помощью API Генератора документов. Позволяет плагину передавать структурированные данные, которые можно вставить в итоговый файл (форматированные абзацы, таблицы, части текста, отдельные слова и т.д.).</p>
<div class="notehelp">Команды Генератора документов можно использовать только для создания содержимого и его вставки в редактор документов (используя метод <em>Api.GetDocument().InsertContent(...)</em>). Это ограничение введено из-за возможности совместного редактирования в онлайн-редакторах. Данное ограничение не применяется, если вы создаете плагин для десктопных редакторов, работающих с локальными файлами.</div>
<h2>Параметры</h2>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
<td><b>Тип</b></td>
</tr>
</thead>
<tbody>
<tr>
<td>fCommand</td>
<td>Команда кода JavaScript, формирующая структурированные данные, которые можно вставить в итоговый файл (форматированные абзацы, таблицы, части текста, отдельные слова и т.д.) и которые передаются в редакторы. Команда должна быть совместима с синтаксисом Генератора документов.</td>
<td>строка</td>
</tr>
<tr>
<td>isClose</td>
<td>Определяет, должно ли окно плагина закрываться после исполнения кода или оставаться открытым и ожидать других команд или действий. Значение <em>true</em> используется, чтобы закрыть окно плагина после выполнения функции, заданной в параметре <em>fCommand</em>. Значение <em>false</em> используется, чтобы выполнить команду и оставить окно открытым, в ожидании следующей команды.</td>
<td>логическое значение</td>
</tr>
</tbody>
</table>
<p>Метод <em>window.Asc.plugin.callCommand</em> выполняется в собственном контексте, изолированно от других данных кода JavaScript. Если требуется передать ему какие-то параметры или другие данные, для этого надо использовать объект <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/ascscope.aspx")%>">Asc.scope</a>.</p>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.init = function () {
this.callCommand(function() {
var oDocument = Api.GetDocument();
var oParagraph = Api.CreateParagraph();
oParagraph.AddText("Hello world!");
oDocument.InsertContent([oParagraph]);
}, true);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,91 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.executeCommand(type, command)</h1>
<h2>Описание</h2>
<p>Используется для передачи данных в редактор. Этот метод преимущественно используется для работы с OLE-объектами и по-прежнему поддерживается для использования с текстом в целях совместимости с более ранними версиями плагинов.</p>
<p>Второй параметр - это код JavaScript для работы с API Генератора документов, позволяющий плагину передавать структурированные данные, которые можно вставить в итоговый файл (форматированные абзацы, таблицы , части текста и отдельные слова и т.д.).</p>
<div class="notehelp">Команды Генератора документов можно использовать только для создания содержимого и его вставки в редактор документов (используя метод <em>Api.GetDocument().InsertContent(...)</em>). Это ограничение введено из-за возможности совместного редактирования в онлайн-редакторах. Данное ограничение не применяется, если вы создаете плагин для десктопных редакторов, работающих с локальными файлами.</div>
<h2>Параметры</h2>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
<td><b>Тип</b></td>
</tr>
</thead>
<tbody>
<tr>
<td>type</td>
<td>Тип команды. Значение <em>"close"</em> используется, чтобы закрыть окно плагина после выполнения функции, заданной в параметре <em>command</em>. Значение <em>"command"</em> используется, чтобы выполнить команду и оставить окно открытым, в ожидании следующей команды.</td>
<td>строка</td>
</tr>
<tr>
<td>command</td>
<td>Команда кода JavaScript, формирующая структурированные данные, которые можно вставить в итоговый файл (форматированные абзацы, таблицы , части текста и отдельные слова и т.д.) и которые передаются в редакторы. Команда должна быть совместима с синтаксисом Генератора документов.</td>
<td>строка</td>
</tr>
</tbody>
</table>
<p>При создании/редактировании OLE-объектов для работы с ними используются два расширения:</p>
<ul>
<li><em>Api.asc_addOleObject(window.Asc.plugin.info)</em> - используется для создания OLE-объекта в документе;</li>
<li><em>Api.asc_editOleObject(window.Asc.plugin.info)</em> - используется для редактирования созданного OLE-объекта.</li>
</ul>
<p>При создании/редактировании объектов их свойства можно передавать объекту <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascplugininfo.aspx")%>">window.Asc.plugin.info</a>, отвечающему за то, как выглядит объект.</p>
<h2>Пример с OLE-объектом</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
var _info = window.Asc.plugin.info;
var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
_info.width = _info.width ? _info.width : 70;
_info.height = _info.height ? _info.height : 70;
_info.widthPix = (_info.mmToPx * _info.width) >> 0;
_info.heightPix = (_info.mmToPx * _info.height) >> 0;
_info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
_info.data = window.g_board.getData();
var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
this.executeCommand("close", _code);
};
</code>
</pre>
<h2>Пример с текстом (не используется, но поддерживается в целях совместимости)</h2>
<pre>
<code>
window.Asc.plugin.init = function () {
var sScript = 'var oDocument = Api.GetDocument();';
sScript += 'oDocument.CreateNewHistoryPoint();';
sScript += 'oParagraph = Api.CreateParagraph();';
sScript += 'oParagraph.AddText(\'Hello word!\');';
sScript += 'oDocument.InsertContent([oParagraph]);';
window.Asc.plugin.info.recalculate = true;
this.executeCommand("close", sScript);
};
</code>
</pre>
</div>

View File

@ -0,0 +1,63 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.executeMethod(Name, [args], callback)</h1>
<h2>Описание</h2>
<p>Метод объекта <em>window.Asc.plugin</em>, который позволяет с помощью плагина выполнять определенные методы редакторов. <em>Name</em> - это имя определенного метода, который должен выполняться, <em>[args]</em> - это аргументы используемого метода (если они есть), а <em>callback</em> - это результат, возвращаемый методом. Последний параметр необязательный, если он опущен, то для возвращения результата выполнения метода будет использоваться метод <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/onmethodreturn.aspx")%>">window.Asc.plugin.onMethodReturn</a>.</p>
<p>Ниже приводятся подробные сведения о доступных методах объекта <em>window.Asc.plugin.executeMethod</em>.</p>
<h2>Методы и свойства</h2>
<p>На данный момент доступны следующие 6 методов, которые могут быть таким образом выполнены:</p>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
</tr>
</thead>
<tbody>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/insertandreplacecontentcontrols.aspx")%>">InsertAndReplaceContentControls</a></td>
<td>Этот метод добавляет элемент управления содержимым с данными.</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/removecontentcontrols.aspx")%>">RemoveContentControls</a></td>
<td>Этот метод позволяет удалить несколько элементов управления содержимым.</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/getallcontentcontrols.aspx")%>">GetAllContentControls</a></td>
<td>Этот метод позволяет получить информацию о всех элементах управления содержимым, которые добавлены на страницу.</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/addcontentcontrol.aspx")%>">AddContentControl</a></td>
<td>Этот метод позволяет добавить в документ пустой элемент управления содержимым.</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/removecontentcontrol.aspx")%>">RemoveContentControl</a></td>
<td>Этот метод позволяет удалить элемент управления содержимым, но при этом оставить данные, которые в нем были.</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/executemethod/getcurrentcontentcontrol.aspx")%>">GetCurrentContentControl</a></td>
<td>Этот метод позволяет получить идентификатор выделенного элемента управления содержимым.</td>
</tr>
</tbody>
</table>
<div class="notehelp">Для корректной работы плагина необходимо дожидаться выполнения очередного метода прежде чем выполнять новый метод.</div>
</div>

View File

@ -0,0 +1,117 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Плагины";
MetaKeyWords = "";
MetaDescription = "Статьи документации по плагинам.";
}
</script>
<div class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">window.Asc.plugin.info</h1>
<h2>Описание</h2>
<p>Во время работы плагина доступен вспомогательный объект <em>window.Asc.plugin.info</em>. В нем хранится вся информацию о редакторе, в котором используется плагин: редактор документов, таблиц или презентаций (для этого используется метод <a href="">editorType</a>) и дополнительные параметры для OLE-объектов (их ширина, высота, коэффициент перевода миллиметров в пиксели для векторной отрисовки OLE-объекта, а также некоторые другие параметры).</p>
<p>Этот объект используется для изменения данных объекта и передачи дополнительных параметров при выполнении метода <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/windowascpluginexecutecommand.aspx")%>">window.Asc.plugin.executeCommand</a>. Например, если меняется содержимое документа и требуется пересчет, параметр <a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/inforecalculate.aspx")%>">window.Asc.plugin.info.recalculate</a> должен иметь значение <em>true</em>. Это необходимо, так как пересчет асинхронен, к тому же может потребоваться подгрузить данные (например, шрифт).</p>
<p>Ниже приводятся подробные сведения о доступных методах и свойствах объекта <em>window.Asc.plugin.info</em>.</p>
<h2>Методы и свойства</h2>
<table class="table_versionlist">
<thead>
<tr>
<td><b>Имя</b></td>
<td><b>Описание</b></td>
<td><b>Тип</b></td>
<td><b>Доступ</b></td>
</tr>
</thead>
<tbody>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infodata.aspx")%>">data</a></td>
<td>Данные OLE-объекта, которые требуется передать объекту window.Asc.plugin.info и которые используются плагином.</td>
<td>данные OLE-объекта</td>
<td>запись</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoeditortype.aspx")%>">editorType</a></td>
<td>Возвращает тип редактора, в котором в данный момент запущен плагин.</td>
<td>строка</td>
<td>только чтение</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoguid.aspx")%>">guid</a></td>
<td>GUID OLE-объекта в текущем документе.</td>
<td>строка</td>
<td>только чтение</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoheight.aspx")%>">height</a></td>
<td>Высота OLE-объекта в миллиметрах.</td>
<td>число</td>
<td>только чтение</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoimgsrc.aspx")%>">imgSrc</a></td>
<td>Ссылка на изображение (визуальное представление), хранящееся в OLE-объекте и используемое плагином.</td>
<td>строка</td>
<td>запись</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infommtopx.aspx")%>">mmToPx</a></td>
<td>Коэффициент перевода миллиметров в пиксели для векторной отрисовки OLE-объекта.</td>
<td>число</td>
<td>только чтение</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infoobjectid.aspx")%>">objectId</a></td>
<td>Идентификатор OLE-объекта в текущем документе.</td>
<td>строка</td>
<td>только чтение</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/inforecalculate.aspx")%>">recalculate</a></td>
<td>Принудительный пересчет данных документа.</td>
<td>логическое значение</td>
<td>запись</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/inforesize.aspx")%>">resize</a></td>
<td>Проверяет, был ли изменен размер OLE-объекта.</td>
<td>логическое значение</td>
<td>только чтение</td>
</tr>
<tr>
<td><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/structure/info/infowidth.aspx")%>">width</a></td>
<td>Ширина OLE-объекта в миллиметрах.</td>
<td>число</td>
<td>только чтение</td>
</tr>
</tbody>
</table>
<h2>Пример</h2>
<pre>
<code>
window.Asc.plugin.button = function (id) {
var _info = window.Asc.plugin.info;
var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
_info.width = _info.width ? _info.width : 70;
_info.height = _info.height ? _info.height : 70;
_info.widthPix = (_info.mmToPx * _info.width) >> 0;
_info.heightPix = (_info.mmToPx * _info.height) >> 0;
_info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
_info.data = window.g_board.getData();
var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
this.executeCommand("close", _code);
};
</code>
</pre>
</div>

View File

@ -19,13 +19,8 @@
<h2 id="Download">Скачайте последнюю версию</h2>
<div class="block_of_step">
<div class="screen_text">
<p>Последнюю версию десктопных редакторов всегда можно скачать по ссылкам на <a href="https://www.r7-office.ru/">нашем сайте</a>. Выберите программу для установки в зависимости от версии Windows, установленной на вашем компьютере:</p>
<ul>
<li><b>32-разрядная версия Windows</b> - если у вас установлена 32-разрядная версия Microsoft Windows XP, Vista, 7, 8, 8.1 или 10;</li>
<li><b>64-разрядная версия Windows</b> - если у вас установлена 64-разрядная версия Microsoft Windows Vista, 7, 8, 8.1 или 10.
<div class="notehelp">Пожалуйста, обратите внимание, что если у вас установлена 64-разрядная версия Microsoft Windows XP, для нее можно использовать 32-разрядную версию программы.</div>
</li>
</ul>
<p>Последнюю версию десктопных редакторов всегда можно скачать по ссылкам на <a href="https://www.r7-office.ru/">нашем сайте</a>. Скачайте установочный файл для операционной системы Windows.</p>
<div class="notehelp">Поддерживаются только 64-разрядные версии Microsoft Windows 10/8.1/8/7.</div>
<p>После нажатия на выбранную кнопку "Скачать" в некоторых браузерах вам будет предложено выбрать папку для загрузки. Выберите ее, и начнется загрузка.</p>
<p>Когда загрузка завершится, можно переходить к установке.</p>
</div>

View File

@ -0,0 +1,3 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls"%>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<h5><a href="<%=VirtualPathUtility.ToAbsolute("~/desktop/documents/plugins/index.aspx")%>">Плагины</a></h5>

View File

@ -15,7 +15,7 @@
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Основные возможности просмотрщика видео Р7-Медиаплеер</h1>
<div class="block_of_step">
<div class="screen_text">
<p>Просмотрщик видео <b>Р7-Медиаплеер</b> позволяет осуществлять просмотр медиафайлов самых распространенных форматов, в том числе avi, mpeg, mp3.</p>
<p>Просмотрщик видео <b>Р7-Медиаплеер</b> позволяет осуществлять просмотр медиафайлов самых распространенных форматов, в том числе avi, mpeg, mp3, mp4, webm и другие.</p>
<div class="screen_block">
<img alt="Р7-Медиаплеер" target="img7_eventcom_guides" class="screenphoto screen_guides" src="<%=VirtualPathUtility.ToAbsolute("~/images/help/ru/Guides/small/viewers/mediaplayer.png")%>" />
<img alt="Р7-Медиаплеер" id="img7_eventcom_guides" class="bigphoto_screen" src="<%=VirtualPathUtility.ToAbsolute("~/images/help/ru/Guides/big/viewers/mediaplayer.png")%>" />

View File

@ -58,6 +58,14 @@ article {
cursor: pointer;
}
}
@media
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
.logo {
background-image: url("/images/logonew-@2x.png");
background-size: 192px 56px;
}
}
.narrowfooter {
margin: 0 auto;
position: relative;

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Example.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Plugins.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Installation.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Introduction.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Ascscope.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Config.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Executemethod/Addcontentcontrol.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Executemethod/Getallcontentcontrols.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Executemethod/Getcurrentcontentcontrol.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Executemethod/Insertandreplacecontentcontrols.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Executemethod/Removecontentcontrol.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Executemethod/Removecontentcontrols.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Index.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Infodata.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Infoeditortype.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Infoguid.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Infoheight.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Infoimgsrc.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Infommtopx.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Infoobjectid.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Inforecalculate.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Inforesize.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Info/Infowidth.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Init.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Initonexternalmouseup.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Onmethodreturn.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Plugincode.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Windowascplugin.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Windowascpluginbutton.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Windowascplugincallcommand.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Windowascpluginexecutecommand.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Windowascpluginexecutemethod.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

View File

@ -0,0 +1,14 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/Desktop/DesktopList.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="desktop_plugins desktop_editors">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/TopControls/PluginsTop/PluginsTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Desktop/Documents/Plugins/Structure/Windowascplugininfo.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="guidespage document">
</asp:Content>

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB