Changes To ClrAddinLoader.js Вы: nobody
Вход

Initial version of "ClrAddinLoader.js"

            1  +<h3>Загрузчик CLR-addin-ов</h3>
            2  +
            3  +Загрузчик предназначен для загрузки в снегопат дополнений, написанных с использованием .NET Framework.
            4  +
            5  +Для подключения загрузчика в addin.ini написать:<verbatim>
            6  +script:scripts\ClrAddinLoader.js</verbatim>
            7  +
            8  +Способы подключения аддинов:
            9  +<ol>
           10  +<li>Написать в addins.ini :<pre>clr:ИмяСборки.dll|ИмяКласса</pre>
           11  +Имя класса можно опускать, тогда будет создан первый встреченный публичный класс</li>
           12  +<li>Через пункт меню снегопата "Загрузить сборку"</li>
           13  +</ol>
           14  +
           15  +Пример создания аддина:
           16  +
           17  +  #  Создать новый проект в VS или SharpDevelop
           18  +  #  добавить в проект ссылку на сборку ClrAddinLoader.dll
           19  +  #  Создать класс, унаследовав его от ClrAddinBase
           20  +  #  реализовать класс. Его публичные методы без параметров и возвращающие void, станут макросами.
           21  +  #  Объектная модель снегопата доступна через св-во designer класса ClrAddinBase (и сл-но его наследников)
           22  +
           23  +Пример кода аддина:<verbatim>
           24  +using System;
           25  +using SnegopatLib;
           26  +
           27  +namespace SampleAddin
           28  +{
           29  +    public class MyClass : ClrAddinBase
           30  +    {
           31  +        private void onIdle()
           32  +        {
           33  +            designer.Message("Test on idle", MessageMarkers.mNone);
           34  +        }
           35  +        public void Start()
           36  +        {
           37  +            designer.onIdle += onIdle;
           38  +        }
           39  +	public void Stop()
           40  +        {
           41  +            designer.onIdle -= onIdle;
           42  +        }
           43  +    }
           44  +}</verbatim>