Prevod maker do GG2

Zde je mozne diskutovat o prevodu maker pro Geoget 2. :wink:

Viz. http://geoget.ararat.cz/doku.php/doc:macro:upgrade

…prubezne aktualizovano.

Dekuji za odpoved gc.cachetypeid zmenit na gc.typeid bylo ten spravny tah

Obcas sjem pri tom predelavani neco zakerne prejmenoval.. a pak jsem na to vesele zapomnel. :wink:

Prehled toho, co ty nove objektove tridy nabizeji, ze najde tady: http://geoget.ararat.cz/help/index.html

Popisky jsou spise nouzove, ale mnohe se z toho pochopit da. Kdyz bude nejasnost, bez ostychu se ptejte!

Teď trochu tápu…jak získám jméno keše ke které patří daný wpt? Tedy v GG1 GC_ParentName ?

Bud muzes volat FullName, to ti vraci jmeno ve forme: jmeno waypointu (jmeno rodicovske kese).

Nebo tam je ParentGeo, coz je objekt TGeo reprezentujici rodicovskou cache, a u nej mas k dispocizi vse co ten objekt popisujici geocache umi. Tedy i property name.

Takze priklad:


  s := geo.Waypoints[n].ParentGeo.name;

Doufam, ze je to srozumitelne. :wink: Proste pres ParentGHeo se dostanes ke vsemu, co ta rodicovska keska ma. Treba i hint, nebo zjistovani, jestli kesku mas nalezenou, atd.

Jo diky, to vypada dost jasne, vice mene me staci to FullName, ale urcite bude dobry vedet jaky vsechny moznosti mam u toho objektu TGeo. No uvidime, myslim ze ted teoreticky v tom mam porad trochu chaos, ale brzo se do toho pustim prakticky. Ted se stejne chvilku na pixly nedostanu, takze muzu zatim koumat:-) uz se na to tesim!

Dotaz: Kde se da najit jak funguje ten novy makro preprocesor?

Viz. odkaz hned ve druhem prispevku tohoto vlakna.

Tam o tom nic nevidim, jen na strance o GG2 je "Skrity nově zpracovává preprocesor, což umožnuje vkládat do skritu obsah jiných souborů. Otevírá se tak cesta k tvoření knihoven funkcí, které pak mohou různé skripty sdílet, atd. "
jak na to? syntax?

Aha, tohle jsem tam jeste nestacil popsat, pardon. Objevi se to tam, jen co to tam naboucham.

Tip: pokud si udelas na geogetich strankach ucet, pak muzes snadno sledovat co se zmenilo, pripadne si muzes nejakou stranku zacit sledovat, a jakmile se na ni pak neco zmeni, dostanes upozorneni e-mailem.

Tak tedy: http://geoget.ararat.cz/doku.php/doc:macro:preprocess

Tak to vypadá, že jsem export do POI zvádl překopat celkem rychle, až jsem se divil. Takže kdo by náhodou chtěl, je mu plně k dispozici. Je tam užito zkrácených jmen, pokud by snad někdo chtěl jména celá, nebo kódy keší, není problém to upravit, jde v podstatě jen o to vyhodit část skriptu a nahradit jedno slovo za jiné. Export Cihliček do mapsource je samozdřejmě taky hotovej, ještě se pokusím udělat export, kterej v mapsource bude keše dělit podle obrázků, ale to musím až doma.

Snazim se zkonvertovat wpt (colors, hints…) skripty do GG2 a udelat je trochu vic modularne, pomoci preprocesoru sdilet spolecny kod etc… A zda se mi to nebo ve skriptech nelze psat funkce ktere vraci hodnotu? Nebo to pouziva jiny syntax pro navrat hodnoty nez co se da k pascalu najit? Konkretne:




function ExportWaypoint(wpt: TWpt; gc: TGeo; counter: integer): string;
var
  s: string;
begin
    s := IntToStr(Counter) + ',';
    s := s + wpt.ID + ' ' + wpt.Lookop + ' ' + wpt.WptType + ' ' + GC.IDTag + ' ' + ReplaceString(UtfToAscii(wpt.FullName), ',', ' ') + ',';
    s := s + wpt.Lat + ',' + wpt.Lon + ',';
    s := s + '25569.00000,0,1,3,0,65535,,0,0,0,-777,6,0,17';
    ExportWaypoint := s + CRLF;
end;


na radku s "ExportWaypoint := s + CRLF;" vrati syntax check chybu "Invalid number of parameters" - vypada to ze to parsuje jako rekurzivni volani te funkce a ne vraceni hodnoty?
Prinejhorsim to muzu udelat pres globalni promennou result jako ostatni skripty ale takhle by se mi to libilo vic :slight_smile:

Btw podle toho PasDocu ma TWpt property s nazvem "Lookop" (spravne Lookup), preklep?

Result neni globalni promenna! Result je vzdy lokalni promenna, ktera symbolizuje navratovou hodnotu z funkce. :wink:

Tuto konvenci pouziva Delphi.

Jo, a Lookop je preklep… opravim.

Ať dělám, co dělám, tak se mi v exportu nic nenabízí. Pokusil jsem se použít exportní makro pro wpt jak uvedeno výše, ale nic. Pomůže někdo?
Díky

V exportu se objevi jen ty skripty, ktere splnuji nasledujici podminky:

  • jsou nahrane v prave pouzivanem datovem adresari Geogetu.(ten je napsany dole ve stavove liste Geogetu…)
  • jsou syntakticky spravne. (tedy treba stare skripty v novem Geogetu nefunguji, atd.)

Nicméně by mu to ale stejně mělo po přeinstalování na GG2 nabídnout tebou udělané základní exporty…