Naposled aktualizováno 10. 01. 2011.

Návod na Girder - 2. část

Tak už se nám sice správně spouštějí Programy a povolují a zakazují skupiny, ale klávesa F5 asi není ta, kterou jsme hodlali program spouštět. Musíme proto násobnému příkazu přiřadit událost, při které se spustí. Girder musíme událost naučít. Úplně vpravo dole je zelená dioda, která občas žlutě blikne. Dioda blikne pokaždé, když program dostane signál od vstupního pluginu - stane se událost (anglicky event). Nyní je na čase vyzkoušet, jestli Vaše vstupní zařízení fungují. Pokud při stisku tlačítka na DO nebo klávesnici blikne dioda žlutě, je to v pořádku. V opačném případě buďto není zinicializován vstupní plugin (musí být v seznamu pluginů světle zeleně podbarvený) nebo si nerozumí s Vašim hardwarem, případně je špatně nakonfigurovaný. A nebo je špatný přímo hardware, tím se ale tady nemohu zabývat, a proto budu předpokládat, že vše funguje tak jak má. V tom případě můžeme začít Girder učit příkazy. Klikněte na násobný příkaz, ke kterému chcete přpřadit tlačítko. V rolovacím menu uprostřed nahoře vyberte vše a klikněte na Naučit IR kód. Girder bude čekat na nějakou událost, proto nemačkejte nic na klávesnici, jinak jej naučíte klávesu klávesnice (pokud máte klávesnici zapnutou jako vstupní plugin). Na DO stiskněte tlačítko, kterým chcete WinAMP spouštět. V seznamu příkazů se objeví další nazvaný Kód události. Je samozřejmě možné jej změnit nebo smazat, případně jich přidat víc, pokud třeba chcete program spouštět i tlačítkem na multimediální klávesnici.

Teď už tedy umíme pomocí DO spustit WinAMP, ale zatím ho neumíme ovládat. Ukážeme si tedy, jak například spustíme přehrávání a jak následně program vypneme. Ostatní funkce jako skok vpřed/vzad, další skladba nebo pauza se už potom udělají analogicky, nejsnáze zkopírovánim příkazu pro přehrání a změnou pár parametrů. Takže do skupiny WinAMP přidáme opět dva násobné příkazy. Jeden pojmenujeme Zavřít, druhý Přehrát. Nejdříve torchu teorie jak ovládání programů funguje. Girder musí zaprvé správně identifikovat okno programu, který chceme ovládat a potom mu poslat nějaký příkaz, třeba klik myší, klávesovou zkratku nebo příkaz operačního systému. Na příkladě WinAMPu si ukážeme ovládání pomocí klávesových zkratek, které je nejuniverzálnější. Takže už máme dva násobné příkazy a můžeme do Přehrát přidat dva jednoduché příkazy OSD a Hraj. O OSD jsem se už zmiňoval dřív, je to jenom kvůli vypsání hlášky, že se spouští přehrávání. Nás teď bude zajímat příkaz Hraj. Vybereme záložku Klávesnice a do políčka Obyč. klávesa napíšeme x. To je totiž klávesová zkratka WinAMPu pro spuštění přehrávání. Jak vidíte, v záložce Klávesnice, dá se zkombinovat i stisk kláves Ctrl, Shift a Alt. Také je možné použít speciální klávesy, třeba numerickou část. Klávesy jsou trochu jinak pojmenované než jste zvyklí, takže to bude chtít trochu zahledat, případně i ve slovníku.

Teď už máme určeno co se bude zasílat, ale ještě Girder neví kam. K tomu slouží tlačítko Cíl. V tomto okamžiku je nutné, aby byl WinAMP spuštěný. Po kliknutí na Cíl se zobrazí poměrně komplikovaná obrazovka, ale v pravém horním rohu je takový křížek s nápisem Přesuň mě do cílového okna. A přesně to udělejte, přesuňte křížek nad okno WinAMPu. Zobrazí se Vám načtené identifikátory programu. První od shora je Jméno, tady se zobrazí název okna a zde se chvilku pozastavim. Plno programů mění název svého okna podle otevřeného souboru, proto název buďto úplně ignorujte nebo zapište jenom tu část, která zůstává stejná, v našem případě Winamp. Také je nutné zaškrtnout Včetně části podřetězců, aby Girder hledal řetězec Winamp v názvu okna. Pokud používáte stejně jako já rolování názvu okna ve WinAMPu, tak se čas od času řetězec Winamp roztrhne - kus je na konci a kus na začátku. Girder potom okno nerozpozná. V tom případě je lepší položku Jméno odškrtnout a ignorovat. Dále zaškrtněte políčko Včetně skrytých úloh abyste mohli WinAMP ovládat, i když je minimalizovaný. Co znamená Zaslat pouze jednou je asi každému zřejmé.

Takže se vrátíme k identifikaci programu. Další políčko je Jméno třídy a v něm Winamp v1.x to je název okna přehrávače. Například okno ekvalizeru se jmenuje Winamp EQ. Poslední identifikované políčko je Supstitelné a v něm je název spustitelného souboru danného programu. Pokud se nějaký program nebude chtít nechat ovládat, nechte zaškrtnuto jako identifikátor pouze toto políčko. Název .exe souboru je poměrně dost jednoznačný identifikátor. Takže už jsme zvolili cílové okno a stačí už jen volbu potvrdit - OK a Použít. Nyní je na čase klávesou F5 vyzkoušet, zda WinAMP začne hrát. Jestli ano, tak jsme vyhráli a stačí už jenom přiřadit nějakou událost, což už umíme. Akorát pozor - WinAMP nesmí hrát, jinak vstupní plugin DVDSpy Girderu neustále zasílá události jako název souboru nebo uplynulý čas. Místo načtení klávesy ovladače by se tak pravděpodobně načetla událost zaslaná pluginem DVDSpy. Druhým násobným příkazem u WinAMPu byl příkaz na zavření programu. Přidáme jednoduché příkazy Zakázat skupinu (WinAMP), Povolit skupinu (Hlavní), OSD a vlastní vypnutí. Vypnutí se provede příkazem Okno/Zavřít a znovu nastavíme správně Cíl. Tento příkaz je trochu navíc, protože naprostá většina programů se dá zavřít posláním klávesové zkratky ALT+F4.

Nyní si na příkladu MV2Playeru ukážeme nejelegantnější způsob ovládání - pomocí příkazů systému. Klávesové zkratky si totiž každý může nadefinovat jinak a potom mu cizí GML samozřejmě nebude fungovat. Ve skupině MV2Player uděláme ty samé násobné příkazy jako pro WinAMP. Vyplatí se je zkopírovat ze skupiny WinAMP a pozměnit. Ta změna (kromě OSD samozřejmě) nastane u příkazu Přehrát/Hraj. Zde místo Klávesnice vybereme Příkaz a klikneme ne na Cíl, ale na Zachytávání. Objeví se nové okno s tlačítkem Start po jehož zmáčknutí se spustí zachytávání příkazů posílaných systémem různým oknům. Největší šance na správné zachycení příkazu (napravo se musí objevit command) je při použití kontextového menu. U MV2Playeru se nám bohužel ten správný zachytit nepodaří, ale naštěstí se dají správné příkazy najít v nastavení MV2Playeru a to konkrétně v položce - Ovládání/Nastavení/Přehrávání obecně. Tady zjistíme, že LParam je 2025 a WParam je 40101 pro spuštění přehrávání. Zavřeme tedy okno zachytávání a parametry vypíšeme ručně. Potom zkontrolujeme nastavení cíle. Z identifikátorů necháme zaškrtnuté Jméno třídy a Spustitelné. Z dalších voleb zaškrtneme stejně jako u WinAMPu Zaslat pouze jednou, Včetně skrytých úloh a Včetně částí podřetězců. Naší volbu potvrdíme a je hotovo. Zavření programu se udělá stejně jako v případě WinAMPu.

Pokud se Vám zdá, že nastavit a otestovat všechno je dost pracné, máte pravdu. Proto Vám dávám možnost stáhnout si moje nastavení (16 kB) a pluginy (1,5 MB). Případně si stáhněte i naší ukázku a porovnejte s tím, co se Vám podařilo vytvořit. Je to jenom takový úvod, abyste věděli jak Girder funguje a co a jak upravit, aby Vám fungoval můj .GML soubor. Předně je nutné přepsat cesty k spustitelným souborům. Potom opravit kódy událostí podle vašeho ovladače. Možná bude taky nutné zkouknout nastavení VolumeOSD a opravit názvy ovladačů zvukového mixeru. Tady pozor na skoky a zapisování do registrů - bude se Vám to samo měnit. V mém GML souboru je množství dalších funkcí, které je asi zbytečné popisovat, přijdete na ně sami. Jenom na okraj bych zmínil ovládání myši, pokud není spuštěn žádný program, zobrazování názvů skladeb přehrávaných WinAMPem a další. To by snad mělo být vše, takže hodně štěstí při ovládání a pokud vytvoříte ovládání pro další programy, tak mi ho pošlete, abych ho přidal k mému souboru.






Pokud máte nějaký dotaz nebo přípomínku, neváhejte mě kontaktovat.