AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Scripts plugin
Goto page Previous  1, 2, 3, ... 53, 54, 55  Next
 
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins
View previous topic :: View next topic  
Author Message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5366

PostPosted: Thu Jul 12, 2007 7:49 pm    Post subject: Reply with quote

Added: script arguments parameter to external plugin call.


Scripts plugin v1.3
Back to top
View user's profile Send private message Send e-mail
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5366

PostPosted: Sat Jul 14, 2007 2:03 pm    Post subject: Reply with quote

Added: Call method, to call program plugins.


Scripts plugin v1.4
Back to top
View user's profile Send private message Send e-mail
wisgest



Joined: 24 Jun 2007
Posts: 63
Location: Belorussia

PostPosted: Sat Jul 14, 2007 2:19 pm    Post subject: Reply with quote

При обновлении перерегистрация не требуется?
Back to top
View user's profile Send private message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5366

PostPosted: Sat Jul 14, 2007 2:44 pm    Post subject: Reply with quote

wisgest wrote:
При обновлении перерегистрация не требуется?
нет
Back to top
View user's profile Send private message Send e-mail
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Sat Jul 14, 2007 3:01 pm    Post subject: Вопрос по применению AkelCall Reply with quote

Instructor wrote:
Added: Call method, to call program plugins.

А что даёт этот метод? Если можно поясните пожалуйста на примере, чтоб нагляднее было, а то чего-то не допонимаю... имеется ввиду вызов из скрипта других плагинов? Вроде бы это хорошо, но пока не чувствую как это можно применить. Если б функций из них, тогда да!..
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5366

PostPosted: Sat Jul 14, 2007 4:40 pm    Post subject: Reply with quote

VladSh
См. Test.js, Test.vbs.
Back to top
View user's profile Send private message Send e-mail
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Mon Jul 16, 2007 9:05 am    Post subject: Тест Reply with quote

Instructor
Это уже интересно!..

Скопировал из test.js 2 строки кода и получилось:
Code:
///Тест вызова функции сортировки из др. плагина

var AkelPad=new ActiveXObject("AkelPad.document");
var WScript=new ActiveXObject("WScript.Shell");

var lResult=AkelPad.Call("Lines::SortStrAsc");
WScript.Echo("Plugin has been called (" + lResult + ")");

Строки в Akel'е сортируются, но при выполнении на строке 7 пишет ошибку "Объект не поддерживает это свойство или метод", код ошибки 800A01B6.

Ещё вопрос: что возвращается в lResult? Если массив отсортированных строк (что было бы очень кстати!), то может в Echo нужно передавать lResult, преобразованный строку?
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5366

PostPosted: Mon Jul 16, 2007 9:12 am    Post subject: Reply with quote

VladSh
Code:
///Тест вызова функции сортировки из др. плагина

var AkelPad=new ActiveXObject("AkelPad.document");

var lResult=AkelPad.Call("Lines::SortStrAsc");
WScript.Echo("Plugin has been called (" + lResult + ")");


В lResult возвращается код ошибки метода Call.
Back to top
View user's profile Send private message Send e-mail
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Mon Jul 16, 2007 9:25 am    Post subject: Reply with quote

Instructor wrote:
В lResult возвращается код ошибки метода Call.

Понял.
Я просто думал, что создал скрипт, в нём что-то делаю... нужно вызвать функцию из плагина - передал туда значения + получил результат в скрипт, затем делаю что-то дальше (обрабатываю ещё как-то полученные значения) в скрипте, а уж потом отражаю результат а окне редактирования.
Updated: или вообще не в Akel'е, а выгружая куда-то в файл, типа "Сохранить как...", только со своей предварительной обработкой.
Back to top
View user's profile Send private message Visit poster's website
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Thu Jul 19, 2007 3:39 pm    Post subject: Ещё идея! Reply with quote

Instructor wrote:
Added: Call method, to call program plugins.
Можно вызывать из скрипта плагины - хорошо.

Idea Если уж нельзя добавить команду, которая вызывает функции (и возвращает в скрипт значения!) из плагинов и самого AkelPad'а, то возможно было бы неплохо и логично добавить команду-аналог Command() из ContextMenu, чтобы из скрипта по номеру можно было вызывать внутренние команды AkelPad'а.
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5366

PostPosted: Thu Jul 19, 2007 5:53 pm    Post subject: Reply with quote

Quote:
...возможно было бы неплохо и логично добавить команду-аналог Command() из ContextMenu, чтобы из скрипта по номеру можно было вызывать внутренние команды AkelPad'а.

см. "//Send message" в Test.js, Test.vbs.
Back to top
View user's profile Send private message Send e-mail
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Fri Jul 20, 2007 9:56 am    Post subject: Уточнение Reply with quote

Instructor wrote:
см. "//Send message" в Test.js, Test.vbs.
Спасибо.

С номерами команд разобрался - это 3-й параметр, а что означает это:
Code:
Const WM_COMMAND=273
Почему именно 273?
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5366

PostPosted: Fri Jul 20, 2007 10:51 am    Post subject: Re: Уточнение Reply with quote

VladSh wrote:
Code:
Const WM_COMMAND=273
Почему именно 273?
Об этом в поисковых системах вы найдете исчерпывающую информацию.
Back to top
View user's profile Send private message Send e-mail
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Mon Jul 23, 2007 12:37 pm    Post subject: Вопросы, возможно и предложения... Reply with quote

Очень часто требуется переименовать текущий файл (открытый в текущей закладке или окне), такой функции к огромному сожалению в AkelPad'е нет, поэтому приходится писать самому...

Алгоритм прост:
1. Взять имя файла текущей закладки.
2. Выдать диалог пользователю для изменения имени файла.
3. Подать команду на закрытие файла в текущей закладке, ждать результата если не сохранён.
4. Переименовать файл на диске.
5. Открыть новый файл в той же закладке, т.е. если всего открыто 10 файлов (MDI), а я переименовываю 4-й, то файл должен открыться именно в 4-й закладке.
Было бы здорово!

Вопросы по ходу: всё вроде ясно, но как сделать п.3 и 5?! - не нашёл соотв. номеров команд в AkelDLL.h. Как быть, что посоветуете?
Может быть в новой версии AkelPad'а стоит добавить эти команды?
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5366

PostPosted: Mon Jul 23, 2007 3:47 pm    Post subject: Reply with quote

По пункту 3: в версии 3.3.5 доступен новый параметр сообщения WM_COMMAND - IDM_NONMENU_FILECLOSE.
По пункту 5: когда вкладка очистится, после IDM_NONMENU_FILECLOSE, то затем можно открыть файл через WshShell.Exec (пока нет специальных методов).
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins All times are GMT
Goto page Previous  1, 2, 3, ... 53, 54, 55  Next
Page 2 of 55

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group