GeoGet

Complete geocaching solutions

User Tools

Site Tools


user:navody:ggmap

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
user:navody:ggmap [2020/05/06 10:12] – [Instalační a oginstalační script *.ggi.pas] gorduser:navody:ggmap [2020/05/06 10:20] gord
Line 175: Line 175:
 */ */
  
- +==== Pluginy ==== 
-===== Tvorba pluginů pro mapu ===== +Použitítvorba seznam pluginů je v [[user:navody:ggmap-pluginy|samostatném popisu]].
-Pluginy rozšiřují funkce mapy o další možnosti. Může to být např.  +
- +
-  * doplnění dalších map nebo překryvných vrstev +
-  * změna vykreslovaných ikon +
-  * úprava vzhledu +
-  * doplnění filtrování +
-  * a mnoho dalších funkcízáleží jen na autorovi pluginu +
-  * javascriptu mohou být doplněny o další soubory (css, obrázky, ...) +
- +
-Pluginy jsou v souborech ''*.ggm.js'' a případně odpovídajících souborech ''*.css''. Vlastní plugin je napsán v javascriptu a aby bylo možné jej spravovat obvyklým způsobem jako ostatní pluginy do GeoGetu, je vhodné jej distribuovat *.gip balíčku, který se postará o překopírování souborů do správných adresářů GeoGetu. +
- +
-**Umístění souborů pluginů:** +
- +
-  * ''*.meta.ini'' a ''*.ggi.pas'' jsou v adresáři ''DATADIR\script\GgMap'' (toto není nutné pro funkci pluginu, je doporučené pro přehlednost a údržbu pluginů) o správné umístění souborů z instalačního balíčku by se měl postarat instalační script ''*.ggi.pas'' +
-  * ''*.ggm.js'' a/nebo ''*.css'' jsou v adresáři ''DATADIR\ggmap\plugin'' +
-  * všechny ostatní soubory, které plugin potřebuje , jsou v adresáři ''DATADIR\ggmap\plugin\jméno_pluginu'' +
- +
-<WRAP center round important> +
-O přesun souborů do správných adresářů při instalaci pluginu a smazání nepotřebných souborů a adresářů při odinstalování souboru se musí postarat instalační script ''*.ggi.pas''+
- +
-Pro správné zobrazení pluginu v seznamu pluginů GeoGetu je potřeba do souboru ''*.meta.ini'' doplnit parametr ''Parent=ggmap_plugin'' +
-</WRAP> +
- +
-==== Inicializace pluginu ==== +
- +
-Základem správné funkce pluginu je jeho správná inicializace. O tu se stará funkce ''*_ggm_init()'', což je jediná povinná funkce. Ta by měla zejména zajistit inicializaci pluginu, nastavení obslužných funkcí událostí, doplnění položek menu a dalších činností potřebných pro správnou funkci pluginu. Inicializací se v tomto případě rozumí zejména doplnění volání funkcí pluginu v tu správnou chvíli, tedy při nějaké události. (Ve vyjímečných případech, kdy inicializace není potřeba, bude tato funkce prázdná, ale **existovat musí**!) +
- +
-Aktuální seznam všech možných událostí je v souboru ''DATADIR\ggmap\plugin\README.txt'': +
- +
-|onload|inicializace UI| +
-|pointname|překlad typu bodu na jméno ikony| +
-|loadicons|změna nebo rozšíření sady ikon| +
-|filterpoint|filtrování ikon keší-bodů (vrací "true" k ignorování bodu)| +
-|filterwpt|filtrování ikon waypointů (vrací "true" k ignorování bodu)| +
-|onmap|po ukončení inicializace mapových objektů| +
-|onclear|vyčištění uživatelských dat vrstev před loadbbox| +
-|loadbbox|zavedení uživatelských dat v rámci BBox| +
-|pointhower|kurzor nad bodem (vrací "true" k ignorování standardní rutiny)| +
-|pointclick|kliknutí na bod (vrací "true" k ignorování standardní rutiny)| +
- +
-<WRAP center round important> +
-Pro správnou funkci pluginu je důležité, aby byla velikost písmen ve jménech souborů v adresáři ''DATADIR\ggmap\plugin'' stejná jako velikost písmen funkce ''*_ggm_init()''+
- +
-Pokud plugin potřebuje ke správné činnosti svůj ''*.css'' soubor, musí ve své ''*_ggm_init()'' funkcí zajistit jeho načtení. +
-</WRAP> +
- +
-==== Instalační a odinstalační script *.ggi.pas ==== +
- +
-Instalační script je zodpovědný za přenos souborů pluginu do adresáře pluginů GgMapy a také za zmazání všech souborů pluginu (tedy i ''*.meta.ini'' a ''*.ggi.pas'') při odinstalování pluginu. +
- +
-Existuje univerzální instalační script, který se za při dodržení několika podmínek pro tvorbu balíčku a pojmenování souborů o vše postará a autor pluginu jej nemusí pracně tvořit. +
- +
-  * instalační adresář v ''*.gip'' souboru je ''GgMap/JmenoPluginu'', plugin je tedy nainstalován do ''DATADIR/script/GgMap/JmenoPluginu'' a o přenesení jednotlivých součástí do správných adresářů se již postará instalační script +
-  * všechny soubory a případně i další podadresáře jsou v tomto adresáři +
-  * soubor ''JmenoPluginu.meta.ini'' obsahuje položku ''Parent=ggmap_plugin'' +
-  * soubor ''JmenoPluginu.meta.ini'' obsahuje spuštění instalačního scriptu, v sekci ''[install]'' položka ''script=Ggmap\JmenoPluginu\JmenoPluginu.ggi.pas'' +
-  * soubor ''JmenoPluginu.meta.ini'' obsahuje spuštění odinstalačního scriptu, v sekci ''[uninstall]'' položka ''Ggmap\JmenoPluginu.ggi.pas='' (script je při instalaci přesunut o adresář výš) +
- +
- +
-FIXME +
- +
-==== Ukázky postupů v pluginu ==== +
- +
-Zde jsou uvedeny jednoduché ukázky základních operací. +
- +
-=== Doplnění mapy do seznamu map === +
- +
-<code javascript> +
-function cuzk_ggm_init() { +
-  ggmregister('onmap', cuzk_ggm_run); +
-}; +
-</code> +
- +
-Funkce v tomto případě obsahuje jediný řádek, který registruje funkci ''cuzk_ggm_run'' pro spuštění po inicializaci mapových objektů. (Tato konkrétní funkce zajistí doplnění jedné mapy a jedné překryvné vrstvy do menu map. Plugin ''cuzk'' je součástí instalace mapy.) +
- +
-=== Zavedení *.css souboru === +
- +
-*.css soubor je vždy v základním adresáři pluginů a má stejné jméno jako plugin. +
- +
-<code javascript> +
-function jmenoPluginu_ggm_init() { +
- loadcss('plugin/jmenoPluginu.css'); +
-+
-</code> +
- +
-===== Seznam dostupných pluginů pro GgMapu ===== +
-=== Další mapy a/nebo překryvné vrstvy === +
-{{topic>ggmap_map}} +
- +
-=== Filtrování bodů === +
-{{topic>ggmap_filter}} +
- +
-=== Nové sady ikon bodů/keší === +
-{{topic>ggmap_icon}} +
- +
-=== Ostatní === +
-{{topic>ggmap_other}} +
user/navody/ggmap.txt · Last modified: 2021/07/06 10:58 by mikrom