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 revision
Previous revision
Last 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/18 07:33] – [Filtrování keší na mapě] gord
Line 135: Line 135:
 Mapa ve svém základu filtrovat keše neumí, protože autorovým záměrem bylo mít mapu co nejrychlejší a předpokládá, že si buďto vyberete do seznamu požadované body a zobrazíte je v mapě nebo že se budete orientovat na mapě se všemi kešemi. Mapa ve svém základu filtrovat keše neumí, protože autorovým záměrem bylo mít mapu co nejrychlejší a předpokládá, že si buďto vyberete do seznamu požadované body a zobrazíte je v mapě nebo že se budete orientovat na mapě se všemi kešemi.
  
-Možnosti filtrování mohou doplnit různé pluginy ... FIXME+Možnosti filtrování mohou [[user:navody:ggmap-pluginy#filtrovani_bodu|doplnit různé pluginy]].
  
 ==== Zobrazení popisků, tabulka keší ==== ==== Zobrazení popisků, tabulka keší ====
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