Page 19 of 96

Posted: Sat Jan 21, 2012 10:35 pm
by KDJ
Temporarily, I solved the problem this way (WM_KEYUP):

Code: Select all

var oSys         = AkelPad.SystemFunction();
var hInstanceDLL = AkelPad.GetInstanceDll();
var sClassName   = "AkelPad::Scripts::" + WScript.ScriptName + "::" + hInstanceDLL;
var hWndDlg;
var hWnd1;

AkelPad.WindowRegisterClass(sClassName);
hWndDlg = oSys.Call("user32::CreateWindowEx" + _TCHAR,
                    0,                //dwExStyle
                    sClassName,       //lpClassName
                    "Test F5 and F6", //lpWindowName
                    0x90CA0000,       //WS_VISIBLE|WS_POPUP|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX
                    300,              //x
                    300,              //y
                    300,              //nWidth
                    150,              //nHeight
                    0,                //hWndParent
                    0,                //ID
                    hInstanceDLL,     //hInstance
                    DialogCallback);

AkelPad.ScriptNoMutex();
AkelPad.WindowGetMessage();
AkelPad.WindowUnregisterClass(sClassName);

function DialogCallback(hWnd, uMsg, wParam, lParam)
{
  if (uMsg == 1) //WM_CREATE
  {
    hWnd1 = oSys.Call("user32::CreateWindowEx" + _TCHAR,
                      0,            //dwExStyle
                      "STATIC",     //lpClassName
                      0,            //lpWindowName
                      0x50000000,   //dwStyle
                      50,           //x
                      50,           //y
                      180,          //nWidth
                      20,           //nHeight
                      hWnd,         //hWndParent
                      -1,           //ID
                      hInstanceDLL, //hInstance
                      0);           //lpParam
    oSys.Call("user32::SetWindowText" + _TCHAR, hWnd1, "Press F5 or F6");
  }

  else if (uMsg == 7 /*WM_SETFOCUS*/)
    oSys.Call("user32::SetFocus", hWnd1);

  else if (uMsg == 256 /*WM_KEYDOWN*/)
  {
    if (wParam == 0x74 /*VK_F5*/)
      AkelPad.MessageBox(hWnd, "F5 was pressed", "Test", 0);
    else if (wParam == 0x75 /*VK_F6*/)
      AkelPad.MessageBox(hWnd, "F6 was pressed", "Test", 0);
    else if (wParam == 27 /*VK_ESCAPE*/)
      oSys.Call("user32::PostMessage" + _TCHAR, hWnd, 16 /*WM_CLOSE*/, 0, 0);
  }

  else if (uMsg == 257 /*WM_KEYUP*/)
  {
    if (wParam == 0x75 /*VK_F6*/)
      AkelPad.MessageBox(hWnd, "F6 was released", "Test", 0);
  }

  else if (uMsg == 16) //WM_CLOSE
    oSys.Call("user32::DestroyWindow", hWnd);

  else if (uMsg == 2) //WM_DESTROY
    oSys.Call("user32::PostQuitMessage", 0);

  return 0;
}

Posted: Sat Jan 21, 2012 10:54 pm
by FeyFre
KDJ, it seems F6 was catch by global accelerators.

Posted: Sat Jan 21, 2012 11:22 pm
by KDJ
FeyFre
Thank you for checking.
Does this mean, that there is no possibility to check pressing F6?

Posted: Sun Jan 22, 2012 2:24 pm
by Instructor
VladSh wrote:Хоть не первый раз задаю, но всё же.. (может что-то уже сдвинулось в этом плане). Подкажите, как программно определить, какая сейчас подсветка включена?
В новой версии Coder'а это будет возможно.

Posted: Sun Jan 22, 2012 5:56 pm
by VladSh
Instructor
Похоже что-то грандиозное готовится :D
Случайно это (вычисление данных при просчёте кэша из нескольких файлов) не будет реализовано? Очень этого не хватает.

Posted: Thu Jan 26, 2012 5:49 pm
by Infocatcher

Posted: Thu Jan 26, 2012 8:04 pm
by DV
Infocatcher wrote:jsBeautifier.js
Начало файла битое какое-то:

Code: Select all

           - use "function ()" instead of "function()"
//   -spaceBeforeConditional=true - space before conditional: "if(x)" / "if (x)"
//   -indentScripts="keep"        - HTML <style>, <script> formatting: keep indent level of the tag
...

Posted: Thu Jan 26, 2012 8:42 pm
by Infocatcher
DV
Ой, точно. Криво залилось, надо полагать.
Перезалил.

Posted: Sun Jan 29, 2012 4:22 pm
by Infocatcher

Posted: Mon Jan 30, 2012 3:58 pm
by Infocatcher
measuresConverter.js
Fixed volume units (was be the same as square units...) :oops:
Added light-day/hour/minute/second.
Added yulian year.


viewtopic.php?p=16488#p16488
VladSh wrote:Хотел писать свой скрипт, но Ваш openFileIn.js можно было бы подшаманить..
Наконец-то добрался. :)
openFileIn-test.js
См. примеры:

Code: Select all

"<HKCU\\path\\from\\registry>app.exe",
"?x64?...\\app64.exe", - check only on x64 system
"?x86?...\\app32.exe"  - check only on x86 system

Posted: Mon Jan 30, 2012 4:40 pm
by FeyFre
Instructor, гляньте пожалуйста на последний history.js (v0.9): я попытался панельку припарковать вниз и сверху(нужно подменитьпару констант в коде), и получаю совсем не то что ожидал(а именно: ширина панельки всегда нулевая). Что я делаю не так, ил не делаю вообще?

Posted: Mon Jan 30, 2012 6:31 pm
by KDJ
Updated translation into Chinese-Simplified:
Translator_Chinese-Simplified.lng

cnnnc, thanks for translating.

Posted: Tue Jan 31, 2012 8:27 am
by VladSh
Infocatcher wrote:openFileIn-test.js
Вроде работает, но я всё-таки не затачивался бы на конкретные пути, а сделал лучше первым получение пути из реестра.

Posted: Tue Jan 31, 2012 1:35 pm
by Infocatcher
VladSh
Ну, сам механизм получения работает.
А путей у меня нет – почти весь софт успешно работает без установки и мирно лежит с давних времен. :)
Специально же ставить, чтобы узнать, что появится в реестре, лень.

И первой лучше портативную версию из соседней папки тогда – если за чужой машиной надо будет поработать.

Posted: Wed Feb 01, 2012 2:55 pm
by Instructor
FeyFre wrote:...(а именно: ширина панельки всегда нулевая)...
Если имеется ввиду высота, то переменая _H не сохраняется и равна 0.