Scripts discussion (2)
- Author
- Message
-
Offline
- Posts: 2248
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Instructor
Какраз ширина. Первый WM_SIZE который мне приходит, приходит с окном(точнее с клиентской областью) нулевых размеров(ширины точно, высоты - нужно вспомнить точно, но тоже по моему нулевая). Я как и положено пересчитываю новые координаты и размеры элементов, которые и получаются отрицательной ширины, и потому их не видно. Больше WM_SIZE с корректными размерами мне не приходит, только после того как пользователь дернет размер панельки мышкой(что уже поздно).
Какраз ширина. Первый WM_SIZE который мне приходит, приходит с окном(точнее с клиентской областью) нулевых размеров(ширины точно, высоты - нужно вспомнить точно, но тоже по моему нулевая). Я как и положено пересчитываю новые координаты и размеры элементов, которые и получаются отрицательной ширины, и потому их не видно. Больше WM_SIZE с корректными размерами мне не приходит, только после того как пользователь дернет размер панельки мышкой(что уже поздно).
-
Offline
- Site Admin
- Posts: 6411
- Joined: Thu Jul 06, 2006 7:20 am
FeyFre
Попробую кодом донести мысль:
Попробую кодом донести мысль:
Code: Select all
var _H = 100;Code: Select all
//switch(_SIDE)
//{
// case DKS_LEFT:case DKS_RIGHT:break;
// default:_SIDE = DKS_RIGHT;WRITE_SETTINGS();break;
//}
//AkelPad.MemCopy(pDock + 8, DKF_OWNTHREAD|DKF_NODROPTOP|DKF_NODROPBOTTOM|/*DKF_FIXEDSIZE|*/DKF_DRAGDROP, DT_DWORD);
AkelPad.MemCopy(pDock + 8, DKF_OWNTHREAD|DKF_DRAGDROP, DT_DWORD);
-
Offline
- Posts: 2248
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Instructor
Сделал так:
Первый запуск - норма. Закрыл.
Смотрю в History.ini
Сделал так:
Code: Select all
var _H = 100;Code: Select all
/* switch(_SIDE)
{
case DKS_LEFT:case DKS_RIGHT:break;
default:_SIDE = DKS_RIGHT;WRITE_SETTINGS();break;
}*/
_SIDE = DKS_BOTTOM;
//AkelPad.MemCopy(pDock + 8, DKF_OWNTHREAD|DKF_NODROPTOP|DKF_NODROPBOTTOM|/*DKF_FIXEDSIZE|*/DKF_DRAGDROP, DT_DWORD);
AkelPad.MemCopy(pDock + 8, DKF_OWNTHREAD|DKF_DRAGDROP, DT_DWORD);
AkelPad.MemCopy(pDock + 16, _SIDE, DT_DWORD);Смотрю в History.ini
Далее второй запуск - серая панелька, ибо формула ширины для всех элементов вида _W - *n*_BS-m*_GAP.[Options]
WIDTH=0
BS=20
GAP=5
SIDE=4
ELSE=512
FULLDND=0
HK_RT=1114
HK_RA=1882
HK_SH=1608
HIDE=0
PS=0
DATA=
FILTER=
APPLY=0
-
Offline
- Posts: 3243
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
Infocatcher
Чуток по openFileIn.js.
Запилил такие настройки:но не знаю, каким образом прописать (до < или после, или оно вообще для веток реестра не работает?), чтобы ?x64? работало (хотел указать его для первой строки из приведенного кода).
И ещё. Лучше бы appID давать всё-таки без пробелов и подчёркиваний, чтобы повысить "стрессоустойчивость".., а то неизвестно где, когда и что глюканёт.. Можно ли это подточить?
Добавлено:
Ещё хотелось бы задавать свой -args в аргументах, так, например, для TC указано "/O /S /T %f", а я привык к "/O /T /L %f", и менять скрипт не хочется по понятным причинам..
Чуток по openFileIn.js.
Запилил такие настройки:
Code: Select all
"<HKCU\\Software\\Ghisler\\Total Commander\\InstallDir>\\TOTALCMD64.EXE",
"<HKCU\\Software\\Ghisler\\Total Commander\\InstallDir>\\TOTALCMD.EXE",И ещё. Лучше бы appID давать всё-таки без пробелов и подчёркиваний, чтобы повысить "стрессоустойчивость".., а то неизвестно где, когда и что глюканёт.. Можно ли это подточить?
Добавлено:
Ещё хотелось бы задавать свой -args в аргументах, так, например, для TC указано "/O /S /T %f", а я привык к "/O /T /L %f", и менять скрипт не хочется по понятным причинам..
-
Offline
- Posts: 382
- Joined: Wed Sep 28, 2011 3:05 pm
-
Offline
- Posts: 1879
- Joined: Mon Aug 06, 2007 1:07 pm
- Contact:
Что-то я отвлекся. 
в openFileIn-options.js
?x64? и ?x86? надо дописывать в самое начало пути.VladSh wrote:но не знаю, каким образом прописать (до < или после, или оно вообще для веток реестра не работает?), чтобы ?x64? работало
А есть ли особый смысл? Если глюкнет передача аргументов, то скажется это явно не на одном скрипте.VladSh wrote:И ещё. Лучше бы appID давать всё-таки без пробелов и подчёркиваний, чтобы повысить "стрессоустойчивость".., а то неизвестно где, когда и что глюканёт.. Можно ли это подточить?
И чем это будет принципиально отличаться отVladSh wrote:Ещё хотелось бы задавать свой -args в аргументах, так, например, для TC указано "/O /S /T %f", а я привык к "/O /T /L %f", и менять скрипт не хочется по понятным причинам..
Code: Select all
appsData["Total Commander"].args = "/O /T /L %f";-
Offline
- Posts: 2248
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Instructor
Эту проблему как-то получилось обойти(WM_SIZE чуть по другому обрабатываю. Дело в том, что первый WM_SIZE приходит очень рано - окно ещё имеет нулевой размер), НО. Теперь почему-то всплыло взаимное перерисовывание(вкладка рисуется поверх детей панельки, было когда-то такое), но я ещё откатаю-перепроверю, ибо на лету не понятно, виновен ли релиз 4.7.3, или я где-то лажанулся.
Эту проблему как-то получилось обойти(WM_SIZE чуть по другому обрабатываю. Дело в том, что первый WM_SIZE приходит очень рано - окно ещё имеет нулевой размер), НО. Теперь почему-то всплыло взаимное перерисовывание(вкладка рисуется поверх детей панельки, было когда-то такое), но я ещё откатаю-перепроверю, ибо на лету не понятно, виновен ли релиз 4.7.3, или я где-то лажанулся.
-
Offline
- Posts: 3243
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
Cuprum
У меня работает:Такой вариант тоже:
Но оно всё выделяет текст настоящей строки (ограниченной символами \r), а не видимой в окне проги.
У меня работает:
Code: Select all
if (! AkelPad.Include("selCompleteLine.js")) WScript.Quit();
selCompleteLine(AkelPad.GetSelStart(), AkelPad.GetSelEnd());Code: Select all
-"Выделить \r{...}\r" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="\r" -tagEnd="\r" -inclTags=0`)Ещё и даблкликом удобно выделять и копировать.Infocatcher wrote:А есть ли особый смысл? Если глюкнет передача аргументов, то скажется это явно не на одном скрипте.
Тем, что скрипт не надо будет анализировать на изменения, если его отредактировал автор, - просто закинул новую версию и всё.Infocatcher wrote:И чем это будет принципиально отличаться от
openFileIn.js видел, openFileIn-test.js видел, а такого зверя пока не встречал).Infocatcher wrote:openFileIn-options.js
-
Offline
- Posts: 2248
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Подтверждаю. Чистый дистрбутив 4.7.2 против 4.7.3. Добавляю history.js v0.9 (последняя) + зависимость.но я ещё откатаю-перепроверю, ибо на лету не понятно, виновен ли релиз 4.7.3, или я где-то лажанулся.
Режим PMDI/MDI(и даже SDI)
Активирую скрипт.
Перетягиваю вправо или влево край панельки, можно на чуть-чуть.
На кнопочках закрыть/свернуть замечаю мусор: например кусочек закладки, либо следы старой отрисовки этих же кнопок. Это в 4.7.3. В 4.7.2 всё нормально.
-
Offline
- Posts: 1879
- Joined: Mon Aug 06, 2007 1:07 pm
- Contact:
Вот тут было.VladSh wrote:openFileIn.js видел, openFileIn-test.js видел, а такого зверя пока не встречал).Infocatcher wrote:openFileIn-options.js
Code: Select all
var optionsPath = WScript.ScriptFullName.replace(/(\.[^.]+)?$/, "-options$&");
var fso = new ActiveXObject("Scripting.FileSystemObject");
if(fso.FileExists(optionsPath))
eval(AkelPad.ReadFile(optionsPath));-
Offline
- Posts: 3243
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
-
Offline
- Posts: 1879
- Joined: Mon Aug 06, 2007 1:07 pm
- Contact:
-
Offline
- Site Admin
- Posts: 6411
- Joined: Thu Jul 06, 2006 7:20 am
В 4.7.3:FeyFre wrote:Перетягиваю вправо или влево край панельки, можно на чуть-чуть.
На кнопочках закрыть/свернуть замечаю мусор: например кусочек закладки, либо следы старой отрисовки этих же кнопок. Это в 4.7.3. В 4.7.2 всё нормально.
AkelDLL.h wrote:AKD_SETBUTTONDRAW
_________________
Draw icon or bitmap on button.
(HWND)wParam == button handle. Button must have BS_OWNERDRAW style.
(BUTTONDRAW *)lParam == pointer to a BUTTONDRAW structure. If NULL, button draw processing will be removed.