Scripts plugin
- Author
- Message
-
Offline
- Posts: 1873
- Joined: Mon Aug 06, 2007 1:07 pm
- Contact:
Напрашивается что-то вродеScripts-Rus.txt wrote:AkelPad.VarType
...
Возвращаемое значение
Число. Тип (VARTYPE) переменной (VARIANT).
0 //VT_EMPTY
1 //VT_NULL
...
Code: Select all
if(AkelPad.VarType(someVar) == AkelPad.VT_EMPTY) { ... }

И немного предыстории.

Правда, в старой версии подвох был круче.
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
Добавлено: отображение статуса скриптов в диалоге.
Добавлено: метод Exec().
Добавлено: метод VarType().
Добавлено: метод IsInclude().
Добавлено: параметр в метод ScriptNoMutex(), который позволяет:
- Освободить поток программы от ожидания завершения скрипта. Только для внешнего вызова скрипта с кодом 2.
- Запретить запуск нескольких копий скрипта.
Исправлено: метод ScriptSettings().Begin создавал ini с некорректным именем (Win95/98/Me).
Added: scripts status displaying in dialog.
Added: method Exec().
Added: method VarType().
Added: method IsInclude().
Added: option in method ScriptNoMutex(), which allows to:
- Unlock main thread from waiting this script. Only if script is called with extenal call with code 2.
- Deny execution of the multiple script copies.
Fixed: method ScriptSettings().Begin created ini with incorrect filename (Win95/98/Me).
Scripts plugin v8.4
Добавлено: метод Exec().
Добавлено: метод VarType().
Добавлено: метод IsInclude().
Добавлено: параметр в метод ScriptNoMutex(), который позволяет:
- Освободить поток программы от ожидания завершения скрипта. Только для внешнего вызова скрипта с кодом 2.
- Запретить запуск нескольких копий скрипта.
Исправлено: метод ScriptSettings().Begin создавал ini с некорректным именем (Win95/98/Me).
Added: scripts status displaying in dialog.
Added: method Exec().
Added: method VarType().
Added: method IsInclude().
Added: option in method ScriptNoMutex(), which allows to:
- Unlock main thread from waiting this script. Only if script is called with extenal call with code 2.
- Deny execution of the multiple script copies.
Fixed: method ScriptSettings().Begin created ini with incorrect filename (Win95/98/Me).
Scripts plugin v8.4
Last edited by Instructor on Thu May 12, 2011 3:32 pm, edited 1 time in total.
-
Offline
- Posts: 1873
- Joined: Mon Aug 06, 2007 1:07 pm
- Contact:
-
Offline
- Posts: 3234
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
Instructor
Прошу в метод Begin всё-таки добавить необязательный параметр или отдельный метод объекта oSet, которым указывать путь к папке с ini-файлом.
Вот пример: OpenSessionsDir.js, где можно было бы прочитать значение параметра SaveSessions через oSet, но этого сделать сейчас невозможно...(
Очень желательно, чтобы пути к ini можно было задавать не только внутри ...\AkelPad\... Если в пути нет вхождения текста "AkelPad" или лучше GetAkelDir(0), тогда, естественно, использовать только чтение из ini.
Ещё по старому (по диалогу скриптов):
- прошу добавить кнопку "Создать скрипт" - не надо будет постоянно искать нужную папку для сохранения (ещё одно удобство);
- прошу добавить возможность перехода в папку Include (там ведь тоже есть скрипты), для того, чтобы иметь возможность их быстрого открытия;
- добавить возможность быстро копировать имя скрипта - из контекстного меню;
- туда же, в контекстное меню на скрипте, можно зашарабанить "возможность принудительного завершения зависшего скрипта", о которой говорит Infocatcher.
Прошу в метод Begin всё-таки добавить необязательный параметр или отдельный метод объекта oSet, которым указывать путь к папке с ini-файлом.
Вот пример: OpenSessionsDir.js, где можно было бы прочитать значение параметра SaveSessions через oSet, но этого сделать сейчас невозможно...(
Очень желательно, чтобы пути к ini можно было задавать не только внутри ...\AkelPad\... Если в пути нет вхождения текста "AkelPad" или лучше GetAkelDir(0), тогда, естественно, использовать только чтение из ini.
Ещё по старому (по диалогу скриптов):
- прошу добавить кнопку "Создать скрипт" - не надо будет постоянно искать нужную папку для сохранения (ещё одно удобство);
- прошу добавить возможность перехода в папку Include (там ведь тоже есть скрипты), для того, чтобы иметь возможность их быстрого открытия;
- добавить возможность быстро копировать имя скрипта - из контекстного меню;
- туда же, в контекстное меню на скрипте, можно зашарабанить "возможность принудительного завершения зависшего скрипта", о которой говорит Infocatcher.
-
Offline
- Posts: 84
- Joined: Fri May 28, 2010 1:28 pm
Начал-таки пользоваться скриптами, отметил некоторое неудобство меню скриптов: нет описания скрипта (кроме коментов в самом скрипте). Почему бы не выводить краткое описание в эдитбоксе, либо хинтом, при наведении курсора? Брать описание можно из комментария в самом скрипте (как doxygen например "дергает" описания для классов/методов из сорцов).
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
Исправлено: передача дескриптора oSys.RegisterCallback в AkelPad.MemCopy.
Fixed: pass oSys.RegisterCallback handle to AkelPad.MemCopy.
Scripts plugin v8.6
Fixed: pass oSys.RegisterCallback handle to AkelPad.MemCopy.
Scripts plugin v8.6
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
Исправлено: AkelPad.WindowSubClass не работал.
Fixed: AkelPad.WindowSubClass didn't work.
Scripts plugin v8.7
Fixed: AkelPad.WindowSubClass didn't work.
Scripts plugin v8.7
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
Добавлено: реализация oSys.RegisterCallback для x64 (будет доступно после релиза программы).
Исправлено: oSys.RegisterCallback вызывал ошибку в программе.
Added: oSys.RegisterCallback implementation for x64 (will be available after program release).
Fixed: oSys.RegisterCallback cause program error.
Scripts plugin v8.8
Исправлено: oSys.RegisterCallback вызывал ошибку в программе.
Added: oSys.RegisterCallback implementation for x64 (will be available after program release).
Fixed: oSys.RegisterCallback cause program error.
Scripts plugin v8.8
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
Исправлено: запуск скрипта из скрипта с ожиданием завершения.
Fixed: script execution from the script with wait for completion.
Scripts plugin v8.9
Fixed: script execution from the script with wait for completion.
Scripts plugin v8.9
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
VladSh wrote:Вот пример: OpenSessionsDir.js, где можно было бы прочитать значение параметра SaveSessions через oSet, но этого сделать сейчас невозможно...
Code: Select all
var oSet=AkelPad.ScriptSettings();
var pString;
if (oSet.Begin("..\\Sessions", 0x1 /*POB_READ*/))
{
pString=oSet.Read("SaveSessions", 3 /*PO_STRING*/);
oSet.End();
}
WScript.Echo(pString);
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
Добавлено: во внешних вызовах используется имя последнего обработанного скрипта, если указано "" вместо имени.
Добавлено: сохранение имени последнего обработанного скрипта.
Added: in external calls the name of the last processed script used, if "" set instead of the name.
Added: save name of last processed script.
Scripts plugin v9.0
Добавлено: сохранение имени последнего обработанного скрипта.
Added: in external calls the name of the last processed script used, if "" set instead of the name.
Added: save name of last processed script.
Scripts plugin v9.0
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
Добавлено: метод AkelPad.GetLangId - определить идентификатор языка программы.
Added: method AkelPad.GetLangId - get program language ID.
Scripts plugin v9.1
Added: method AkelPad.GetLangId - get program language ID.
Scripts plugin v9.1
-
Offline
- Site Admin
- Posts: 6403
- Joined: Thu Jul 06, 2006 7:20 am
Я где-то отвечал, что метод Number() возвращает переменную с плавающей точкой.Infocatcher wrote:
Code: Select all
var nNumber=Number("-5");
WScript.Echo(AkelPad.VarType(nNumber));
-
Offline
- Posts: 3234
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
Эта штука только для папки Plugins работает или можно передавать внешний (не AkelPad\...) путь?Instructor wrote:Code: Select all
if (oSet.Begin("..\\Sessions", 0x1 /*POB_READ*/))
Хотелось бы видеть это в доке (метод Begin), а то там написано, что параметр - "наименование скрипта"; да и забудется со временем...
Теперь будет чуть легче; спасибо!