SOFTDATA d.o.o. SDMS CESTA

Spremembe in novosti
(tematsko '98)

Na tej strani se nahaja terminski spisek vseh sprememb in novosti, ki so bile izvedene v programu leta '98.

Aplikacija

  • (97.1.16 ) Pri Overlayu je včasih javljal napako. Popravljeno.
  • (97.1.13 ) Pri izrisu slik se sedaj slike bufferirajo. Lastnosti bufferja se nastavljajo preko ImageBufferSize, ImageBufferCount in ImageBufferTimeout spremenljivk.
  • (97.1.05 ) Pri Overlay dialogu dodano še ime nove plasti, ki se naredi na izbrani mapi.
  • (97.1.03 ) ukazna vrstica, razširjena na več vrstic. Vroče tipke so: vrini novo vrsto - CTRL+ENTER, prejšnji ukazi - CTRL-PGDN, CTRL+PGUP, build expression - CTRL+Num5.
Tematika
  • (97.1.16 ) Urejevalnik teme je sedaj ločen na dva dialoga, eno so grafični elementi, drugo pa lastnosti teme. Poleg tega ima grafični del sedaj svoj dinamični predpregled, pa tudi cancel tipka sedaj dela.
    Nove so tudi standardne barve. Namesto starih 16 barv je sedaj malo več barv (cca.70). Te se pojavljajo v dialogih, v SDMS basicu pa se jih seveda ne sme uporabljati (ker so v vsakem jeziku drugačne.
  • (97.1.09 ) Plast se vključi za iskanje z dvojnim klikom na imenu teme. Ob tem se vse ostale plasti izključijo iz iskanja. S ponovnim dvojnim klikom se plast izključi.
  • (97.1.08 ) Tematika zelo spremenjena. Prvi gumb je za vklop/izklop izrisa teme na ekran. Drugi gumb prikazuje način izrisa teme. S klikom na tem gumbu se nam pokaže meni, kjer nastavljamo posamezne atribute teme. Zraven sta še dva majhna gumba. Zgornji je za vklop/izklop legende. Vklopimo jo lahko le, kadar je na njem izpisana črka L, sicer pa legenda ni potrebna oz. ni možno dekodirati teme v smiselno legendo. Spodnji gumb pa je za vklop/izklop hintov. Vklopimo jih lahko le, če so hinti na določeni temi definirani (na gumbu izpisana črka H). Hinte se definira z desnim klikom na temi in se izbere iz menija Hints. Sledi pa še ime teme oz. plasti. Z desnim klikom na temi se pokaže meni, kjer izbiramo operacije nad plastjo (Približno isto kot prej).
  • (97.1.08 ) Editiranje atributa teme je spremenjeno. Določite lahko konstantno vrednost, vrednost polja, If vrednost, območno vrednost ali pa poljubno. Pri območni vrednosti lahko območja dodajamo z gumbom insert above. Premikajo se lahko z gumboma Move up oz. Move Down, brise pa se izbrani item z gumbom Delete. Gumb Clear Ranges zbriše vsa območje, Unike values pa avtomatsko doda različne vrednosti za vsako vrednost v polju.
  • (97.1.08 ) Insert draw item dialog spremenjen. Levo se določi plast, Desno pa teme, ki jih doda. Pri Temah Label, Symbol, Line, Hatch in map se določi še Barvo. Pri temi Label določimo polje za izpis, pri Symbol lahko izberemo simbol, pri Line lahko izberemo tip linije, pri Hatch lahko izberemo tip polnjenja in pri map določimo polje z imenom karte.
  • (97.1.05 ) Pri izbiri Zoom all objects se izvede še Zoom (0.9), tako da niso objekti čisto do roba.
  • (97.1.04 ) Pri urejanju draw itema se pri build expression pokaže poleg polj tudi vse CurRec.*
  • (97.1.03 ) na desni-klik na layer v tematiki aplikacije se pokaže meni, novost pa je opcija Zoom All.
  • (97.1.01 ) Polnjenje poligonov narejeno. Če šrafura ni izbrana, se polni z izbrano barvo. Če je šrafura izbrana, riše šrafuro, in sicer če je izbrana barva črna, se rise v barvah kot je definiran, sicer pa vse kar ni belo na šrafuri riše v definirani barvi. Transparenca dela na NT drugače, kot na 95.
    NT - Logično dela sicer pravilno, ker zlije
    Ozadje Šrafura Rezultat
    $XXXXXX (Karkoli) And $FFFFFF (Bela) = $XXXXXX (Karkoli)
    $808080 (Siva) And $800000 (temnejša) = $800000 (temnejša)
    $XXXXXX (Karkoli) And $000000 (Črna) = $000000 (črna)
    Torej če se polni s temnejšo barvo, se ozadje izgubi. Velja za R, G in B posebej.
    To se lahko reši tako, da se izrise poligonov pomakne na začetek, ali pa z uporabo svetlejših barv, ali pa z uporabo šrafur Fill25, Fill50 in Fill75.
  • (97.1.01 ) Pri Tematiki aplikacije je v popup meniju dodan se Optimize layer.
  • (97.1.01 ) V popup meniju za Draw Item Edit dodana se opcija ALL.
  • (97.1.01 ) Grafi pri izrisih. Lastnosti so več ali manj jasne. Pri MinValue in MaxValue pomeni 0 avtomatsko velikost, lahko pa se tudi omeji z MaxValue ali pa obema.
Filter
  • (97.1.15 ) Če prostorski pogoj v filtru ni definiran v celoti, sedaj sporoči napako in je treba popraviti definicijo filtra.
  • (97.1.02 ) Pri definiciji filtra se z dvojnim-klikom na želenem polju pokaže dialog, kjer za polje vneseš string, številko oz. datum, ki mu mora ustrezati polje. Za Lookup polja pa se izbere polje v tabeli in avtomatsko doda potrebne pogoje za ključe.
  • (97.1.01 ) Pri filtru dela tudi prostorski pogoj za polilinijo. Zaenkrat samo z dist = 0.
Sort
  • (97.1.16 ) Sortiranje je pohitreno za cca 20%.
Maska
  • (97.1.05 ) Pri spreminjanju tipa topologije, spremenjene kontrole za krog in lok.
  • (97.1.02 ) Popravljen bug pri Form browserju, ko je bil rekord spreminjan, in se je form skril za glavno okno in je bil program zaprt. Sedaj vpraša za update baze še preden se okno skrije.
  • (97.1.01 ) V Form browserju dodan meni item 'Record - Export', ki izvozi trenutni zapis v datoteko ali odložišče, kakor je pač nastavljeno.
  • (97.1.01 ) V Form browserju dodan popup meni Report, kjer lahko zažene poljubno poročilo.
  • (97.1.01 ) Pri kontrolah v Formu je dodan Hint, ki se lahko izpiše uporabniku kot dodatno navodilo. Če je prazen, se še vedno izpišejo podatki o polju oz. datasetu.
  • (97.1.01 ) Iz Data forma se pri startu poročila ne pokaže urejevalnik.
  • (97.1.01 ) Pri Browse formu dodano avtomatsko določanje velikosti, kadar je predefined form.
  • (97.1.01 ) Izpis Browse forma zelo pohitren. Prvič traja malenkost dlje, potem pa je hitro. Zmeraj pa je počasi, če hočete v listboxu sortirati 15000+ vrednosti.
Porocilo
  • (97.1.16 ) Popravljen bug v urejevalniku poročil, ko je pri prvem kliku na kontrolo le-to odneslo stran.
    Sedaj kontrola Image ne dela več samo s poljem, temveč podobno kot formula.
    Odpravljeni tudi neki bugi.
  • (97.1.10 ) Pri poročilih z multiple datasets, poročilo ni vedno delalo. Popravljeno.
  • (97.1.10 ) Poročilo za Curlyr.CurrentRecords (iz forma) ni delalo.
Uvoz
  • (97.1.09 ) Pri uvozu samo topologije iz SDMS 1.5 se Hidden linije ne uvozijo.
  • (97.1.08 ) Arc Info uvoz je razširjen še za uvoz Shapefile datotek (poleg Generate formata).
  • (97.1.02 ) DXF uvoz: sedaj se uvažajo tudi bloki in pa tudi njihovi atributi.
  • (97.1.01 ) Uvoz iz DXF malo dodelan. Sedaj se izbere polja, kam gre kakšna vrednost.
  • (97.1.01 ) Pri vseh uvozih se določi zamik in množenje koordinat. Torej za centroid in poli...
  • (97.1.01 ) Pri uvozu je narejen čarovnik namesto dialoga.
  • (97.1.01 ) Import wizard dela vse, tudi uvozi samo izbrane DXF plasti.
  • (97.1.01 ) Uvoz iz ArcInfa. Delale naj bi vse variante - točke, pline, poligon in pa tudi samo topologija (pline brez podatkov.)
  • (97.1.01 ) Uvozu iz ArcInfa za poligonske plasti končan.
Izvoz
  • (97.1.16 ) Dialog je spremenjen (v obliko čarovnika), tako da je nastavljanje preglednejše.
  • (97.1.14 ) Narejen izvoz v ArcInfo SHP datoteko.
  • (97.1.04 ) Izvoz v DXF delno narejen. Manjka še definicija velikosti texta.
  • (97.1.01 ) Pri Export dialogu narejene opcije Select all,...
  • (97.1.01 ) Pri izvozih dodan vrstni red izvoza polj, in sicer se določi z dragom.
  • (97.1.01 ) Pri izvozu v fixed length ukinjena začetna pozicija, ker se upošteva vrstni red.
  • (97.1.01 ) Izvoz v ArcInfo narejen.
  • (97.1.01 ) Izvozi multiple datasetov možni. Izvozi se vsak zapis večkrat z unikatnim multiple datasetom. To omogoča uvoz le teh podatkov z joinom.
  • (97.1.01 ) Pri izvozu v ArcInfo se imena polj določijo na osnovi aliasa, če obstaja in pa dodajo se 00, 01,... po potrebi, ker je ime polja v DBF omejeno na 10 mest.
Urejanje geometrije
  • (97.1.15 ) Dodani tudi kurzorji pri procedurah EnterPoint, EnterWindow,…
  • (97.1.14 ) Pri vnosu topografije, se kurzor spreminja glede na izbrano orodje.
  • (97.1.11 ) V merilu 1:10 so bili problemi s premikanjem, brisanjem in dodajanjem točk.
  • (97.1.11 ) Po topology buildu se deselectajo vsi izbrani objekti.
  • (97.1.08 ) Izbrani objekti so se označevali počasi, če jih je bilo veliko. Pohitreno.
  • (97.1.06 ) Vneseni objekt se avtomatsko označi kot izbrani. Predhodno izbrana selekcija se deselecta.
  • (97.1.02 ) Dodana operacija Break polyline, ki razbije izbrano linijo na kliknjenem nodu na dva dela.
  • (97.1.02 ) Dodana operacija Outline, ki naredi outline okoli izbranih polilinij. Nastavite tudi opcije Outline distance in Curve error.
  • (97.1.02 ) Dva nova tipa topologije in sicer Arc in Circle.
  • (97.1.01 ) Snap V geometrijskem urejanju. Izbere se plasti iz katerih snapa. Določi se v Opcijah grafičnega urejevalnika.
  • (97.1.01 ) Bildanje topologije: v Vhodni plasti se označi UsedByBuild.
  • (97.1.01 ) Spremenjeno risanje točk izbranih objektov v geometrijskem urejanju.
  • (97.1.01 ) Dodana operacija 'Rotate selected objects' v geometrijskem urejanju.
  • (97.1.01 ) Operacija Merge je razširjena tudi na Polilinije. Izbrane polilinije združi v eno oz. več polilinij, kakor pač lahko.

Urejevalniki

  • (97.1.16 ) Pri Toolbar, HotKey in Menu urejevalnikih je včasih javil napako ob zaprtju okna. Popravljeno
  • (97.1.02 ) Dodani moduli pri objektih Hotkeys, Menu in Toolbar. Modul se obnaša isto kot navaden modul, le da se naloži avtomatsko, ko se naloži objekt. Torej ima lahko OnCreate in OnDestroy event, globalne spremenljivke in poljubne rutine. Lahko ima v OnCreate tudi include za module, ki jih potrebuje.
  • (97.1.01 ) Gumbi na toolbarih editorjev in Edit menuji se sivijo glede na možnosti.
Aplikacija
  • (97.1.16 ) Aplikacija je spremenjena v obliko modula. Konverzija obstoječih aplikacij se zgodi avtomatsko.
    OnOpen je ekvivalent OnCreate proceduri v modulu, OnClose pa OnDestroy proceduri. Procedure, ki se kličejo avtomatsko ob nekem dogodku, imenujmo dogodki.
    Trenutno sta dodana še dogodka OnClick (Y, X As Float) in OnDoubleClick (Y, X As Float), ki se kličeta, ko kliknemo oz dvokliknemo na karti (če smo ju seveda definirali). Sledijo še kakšni drugi dogodki.
Podatkovna plast
  • (97.1.16 ) Implementirano iskanje po urejevalniku podatkovnih plasti.
  • (97.1.15 ) Pri izhodu iz urejevalnika, je včasih javljalo napako.
  • (97.1.15 ) Izvoz v DXF ima dodatno definicijo, ki pomeni velikost (višino) izvoženih tekstov.
  • (97.1.01 ) V Filter dialogu se pri area conditionu lahko izbere Only centroids, kar filtrira samo po centroidu, ne pa po celi topologiji.
    Uporabnost: Hitreje kot če se preverja cela topologija in pri presekih med plastmi, ki so bile generalizirane, so rezultati boljši.
  • (97.1.01 ) V Filter dialogu se lahko izpiše dodaten Caption, ki se nastavi z [xxx].Filter.Caption = 'Dodaj sdfvnv'. Po vsaki uporabi dialoga se nastavi na ''.
  • (97.1.01 ) Pri definiciji polja - Format. Se upošteva povsod po programu. Pravilni formati so:
    Byte, Integer, Long Integer
    #.##0.00,...
    999.99,... (devetke se avtomatsko spremenijo v #)
  • (97.1.01 ) V podatkovni datoteko plasti se zapiše tudi cel layer objekt, tako da bo možno iz datoteke rekonstruirati layer. V starih plasteh se bo ta informacija dodala pri optimizaciji ali konverziji.
Modul
  • (97.1.02 ) Sedaj poleg blanka #$20 lahko uporabimo tudi drug tip blanka #$A0. To omogoča direkten prenos iz mail editorjev.
  • (97.1.01 ) Možen je drag and drop izbranega besedila, Backspace zbriše tekst do prejšnje poravnave, Nova vrstica da besedilo na začetek teksta v prejšnji vrstici.
  • (97.1.01 ) Pri Iskanju dela tudi opcija WholeWords. Tudi Undo/Redo dela. Undo dela do začetka editiranja. Štarta se lahko iz menija, toolbara ali pa <ALT><BackSpace> -undo in <ALT><Shift><BackSpace> - Redo. Po novem gre lahko kurzor čez konec vrstice.
Predloga izrisa
  • (97.1.01 ) Za dinamično spreminjanje print layouta so naslednje spremembe: Dodan je nov class TPrintItem, ki predstavlja kontrolo na print layoutu. Zaenkrat ima samo en programski property, In sicer LabelText, ki pomeni tekst na labeli. Pač pa ima vsaka kontrola tudi nov property Name, ki je sicer prazen po defaultu, a če hočeš kontrolo spreminjati programsko, ga moraš dodeliti in to unikatno.
  • (97.1.01 ) Nov event, in sicer je poleg OnPrint še OnPreview. V ta dva eventa se napiše vse, kar naj se naredi pred tiskanjem oz. previewjem.
    Primer OnPrint:
    Dim S As String
    S = ''
    InputText ( 'Vnesi naslov izrisa' , 'Naslov:' , S )
    [prn1].GetItemByName('Label1').LabelText = S
    S = ''
    InputText ( 'Vnesi podnaslov izrisa' , 'Podnaslov:' , S )
    [prn1].GetItemByName('Label2').LabelText = S
    Primer OnPreview:
    [prn1].GetItemByName('Label1').LabelText = 'Here comes the title...'
    [prn1].GetItemByName('Label2').LabelText = 'Here comes the subtitle...'
    Ta dva primera sta na print layoutu [prn1], na njem pa dve labeli, imenovani(!) Label1 in Label2.
Tabela
  • (97.1.06 ) Dodana opcije Build, ki pokaže build experession dialog.
  • (97.1.01 ) Table se shranjuje v novem formatu. Velikosti tabel so zmanjšane od 20-50% odvisno od tipa podatkov. V novi obliki se shranijo avtomatsko, ko se shranijo v urejevalniku. (Če v urejevalniku ni sprememb ne shrani. Ročno pritisniti Save).
Orodjarna
  • (97.1.02 ) Ni več lastnosti Down in Group. Zamenjana sta z lastnostjo Variable, ki deluje isto kot pri meniju.

Splošno

  • (97.1.08 ) V vseh urejevalnikih basica lahko z pritiskom Alt-F1 prikažemo okno za build expression.
  • (97.1.03 ) Sedaj se brišejo vse začasne datoteke na temporary mapi narejene iz programa.
  • (97.1.03 ) Pisave v vseh expression builderjih so sedaj poenoteni.
  • (97.1.01 ) Formule se izračunavajo tudi če je dataset brez polja v bazi (vsa polja so formule).
  • (97.1.01 ) Ko ni nobena aplikacija odprta, sta v File menuju dodana itema Uvoz in Izvoz v SIF, tako da lahko to delajo tudi, če nimajo Raziskovalca.
  • (97.1.01 ) Ne upoštevajo se nastavitve v international settings za decimalno vejico in tisoč separator.
Odjemalec/strežnik
  • (97.1.11 ) Posamezen objekt je lahko večji od 65k.
  • (97.1.10 ) Popravljen problem pri navidezni zamrznitvi strežnika.
  • (97.1.02 ) SDMS Server ne dela več preko TCP/IP protokola, ampak uporablja pipe. Sedaj dela strežnik samo na NT serverju oz. NT workstationu.
Pomoc
  • (97.1.14 ) Pomoč je sedaj spet na spletu. Pozor, imena datotek pomoči so drugačna, zato bi bilo treba ročno pobrisati prejšnje pomoči.
  • (97.1.13 ) Narejene so povezave na on-line pomoč. Sedaj se povsod pri pritisku na gumb Pomoč odpre pomoč za dani dialog. Če ni gumba Pomoč, pa s pritiskom na tipko F1.
    Potrebno je seveda download-ati tudi novo pomoč!
Preverjanje napak
  • (97.1.16 ) Pri določenih napakah izboljšano iskanje le teh.
  • (97.1.11 ) Dodano preverjanje lookup key-ev na sebe.
  • (97.1.03 ) Auto correct dela tudi na mapi in popravi vse napake v skupini.
  • (97.1.02 ) Dodano preverjanje dvojnikov pri imenih rutin po modulih.
  • (97.1.02 ) Dodano iskanje neuporabljenih objektov v aplikacijah.
  • (97.1.01 ) Novo preverjanje za strukturo plasti. Preveri numeriča polja, če so lahko manjša. To delaj layer po layer, saj je zelo počasi.
  • (97.1.01 ) Dodan popup na desni gumb in dodana opcija AutoCorrect, ki popravi določene napake. Dela pri vseh napakah pri file organisation in pa za nepravilen link na objekt po ID. Pri tem se lahko popravi vse napake za določen ID naenkrat.
  • (97.1.01 ) Dodana sekcija File organisation, ki preverja Tabele, bo pa tudi plasti. Pri tabelah se preverja, če so kakšne odveč datoteke na mapi (Datoteke, ki niso tabele in tabele, ki so zbrisane), in pa za vse tabele preveri, če so shranjene v zadnji verziji.
Raziskovalec
  • (97.1.14 ) Sprememba gesla je sedaj možna tudi iz Raziskovalca (Explorerja).
  • (97.1.08 ) Iskanje je lahko ločeno in sicer na iskanje po basicu in po ostalih podatkih.
  • (97.1.03 ) Iskanje dela tudi po Tematikah in Vročih tipkah. Najde sicer samo item, v katerem se nahaja iskani string.
  • (97.1.01 ) Raziskovalec nima več spodnjega okna. ki je izpisoval podatke o objektih. Le to se prikaže v desnem oknu namesto previewa, kadar je v drevesu izbrana mapa.
  • (97.1.01 ) V raziskovalcu je pri plasteh na popup meniju še Statistika plasti.
  • (97.1.01 ) Pri uvozu definicije plasti iz starega SDMS lahko pogleda, če identičen lookup obstaja kot table, in ga ne uvozi, ampak uporabi obstoječega. Opcija se lahko izklopi na Options folderju pri importu.
Uvoz/izvoz v SIF
  • (97.1.15 ) Uvoz objektov iz SIF. Spremenjen dialog.
  • (97.1.02 ) Pohitreno Select application pri izvozu v SIF.
  • (97.1.02 ) Pri export to SIF se z select Application izberejo tudi podmape map, ki imajo definiran Used By.
  • (97.1.01 ) Pri uvozu plasti iz SIF, se pri ugotavljanju enakosti primerjajo tudi podatki, tako da se layer uvozi iz SIF tudi če je struktura ista, podatki pa ne.
Zagon programa
  • (97.1.02 ) Vizualna sprememba uvodne maske za logiranje ter prikaz statusa.
  • (97.1.02 ) Sporočila 'wrong username', 'wrong password', ... se sedaj pravilno izpišejo.
  • (97.1.02 ) Sedaj je lahko podan kot parameter programa tudi prazno geslo (-password=), kar potem omogoča avtomatsko prijavo.
  • (97.1.02 ) Zaradi novega strežnika so nekateri parametri odveč.
    Pri strežniku so ukinjeni port in address. Ostaja samo še path parameter.
    Pri odjemalcu ostaja samo še path, slot, username, password in start parameteri.

Basic

  • (97.1.08 ) Datum se sedaj lahko vnaša fiksno na naslednje načine:
    - pri vnosnih poljih tematike in filtra kot 1.1.1999
    - v basicu pa kot #1.1.1999#
    - če se želi dodati še čas, potem pa kot #1.1.1999 14:30#
  • (97.1.08 ) Select Case ukaz razširjien.
    Pri numeričnih primerjavah dodane možnosti >1, >=1, =1, <1, <=1 in <>1.
    Pri textnih primerjavah dodane možnosti 'a'..'b', >'a', >='a', ='a', <'a', <='a', <>'a' in Like 'A*'. Pri Like poeratorju so lahko vprašaji in zvezdice.
Konstante
  • (97.1.02 ) Dve novi konstanti za Topology type in sicer
    ttCircle = 12
    ttArc = 13
  • (97.1.02 ) Spremenjeno ime za konstanto pri Topology type in sicer
    ttMap -> ttRectangle
  • (97.1.01 ) Nove konstante za delo z HLS.
    hlsRed = 0 oz. 240
    hlsYellow = 40
    hlsGreen = 80
    hlsCyan = 120
    hlsBlue = 160
    hlsMagenta = 200
Spremenljivke
  • (97.1.13 ) ImageBufferSize As Long = 16
    ImageBufferCount As Long = -1
    ImageBufferTimeOut As Long = 3
    ImageBufferSize določa velikost bufferja v Mb za rasterske slike. ImageBufferCount doloca maksimalno število slik v bufferju. ImageBufferTimeOut pa določa število minut neuporabe slike, da gre ven iz bufferja.
    Vse spremenljivke se shranjujejo avtomatsko v registry na računalnik.
    Če je posamezna spremenljivka -1, se le-ta ignorira.
  • (97.1.02 ) PixelDimension as Float
    dodana spremenljivka, ki vrne velikost ekranskega pixla v metrih.
  • (97.1.02 ) Overlay As TOverlay
    dodana spremenljivka, ki je namenjena združevanju dveh poligonskih plasti v tretjo.
  • (97.1.01 ) LastClickY As Float
    LastClickX As Float
    Dodani sta variabli, ki vrneta zadnjo kliknjeno koordinato.
Procedure
  • (97.1.03 ) Help ( HelpFile, HelpTopic as string)
    nov ukaz: za prikaz strani iz helpa.
  • (97.1.02 ) UpdateState
    dodana funkcija, ki nastavi menu in toolbar glede na vrednosti variabel.
  • (97.1.02 ) DateTimeToStr (DateTime As TDateTime) As String,
    dodana funkcija, ki spremeni datum in uro v string.
  • (97.1.02 ) Dodane funkcije za kontrolo serverja:
    NetInfo As String
    NetMessage (From, To, Subject, Message As String)
    NetExecute (CommandLine As String)
    NetDisconnect (UserName As String)
    NetShutdown
    ki so namenjene kontroliranju serverja preko mreže.
  • (97.1.02 ) GlobalVarLoad (StoreName As String, DefaultValue As Variant) As Variant
    GlobalVarSave (StoreName As String, Value As Variant)
    Dodane funkcije za shranjevanje, ki shrani spremenljivke globalno za vse userje za vse applikacije. Sicer delata isto kot VarSave in VarLoad.
  • (97.1.01 ) ClickCoor (Y, X As Float)
    Nov ukaz, ki simulira klik na točni koordinati pri editiranju topologije.
  • (97.1.01 ) Dodan nov ukaz "Purge", ki zbriše vse varnostne kopije podatkov layerja, ki ostanejo po predelavah zaradi spremembe strukture, po importih in po optimizacijah. V bistvu "DEL *.~*" na Layers direktoriju. Ukaz je namenjen uporabi v menujih applikacij kot "Briši varnostne kopije". Mogoče bo kdaj še dodano brisanje po datumu ali pa zadnjih nekaj kopij. ...
  • (97.1.01 ) Dodana funkcija HLS, namenjena določanju barve. Je bolj razumljiva za uporabo.
    Function HLS (Hue, Lightness, Saturation As Long) As Long
    Hue je barva. Vrednost je lahko od 0 do 240. (Konstante) Recimo oranzna barva je med rdeco in rumeno torej 20.
    Saturation je živost barve. 0 je siva, 240 pa najbolj živa.
    Lightness je svetlost barve. 0 je črna, 240 je bela, 120 pa normalna.
    Delovanje si lahko ogledate tudi v vseh color dialogih.
Objekti
  • (97.1.13 ) TBitmap.Resize (Width, Height As Long)
    Dodana metoda, ki raztegne/skrči sliko. Vsebina ostane enaka, spremeni se samo resolucija.
  • (97.1.12 ) TBitmap.SaveAs (FileName As String, Format As Long)
    TBitmap.Scan As Boolean
    TBitmap.Rotate (Angle As Float)
    TBitmap.Crop (Left, Top, Right, Bottom As Long)
    Dodane metode. SaveAs posname bitmap v poljubnem formatu. Scan poskenira sliko, Rotate zarotira sliko za dolocen kot in Crop izreze dolocen del slike.
  • (97.1.04 ) TOvrelay.Execute As Boolean
    Nova metoda, ki pokaže dialog za nastavitev vseh lastnosti overlaya in ga tudi izvede.
  • (97.1.03 ) TField.ListAnalyze (RL As TRecordList, ByRef Min, Max, Sum As Float, ByRef Cnt As Long, ByRef IsFloat As Boolean)
    Dodana metoda, ki naenkrat poišče Minimalno in Maximalno vrednost, izračuna vsoto in število zapisov in vrne ali je polje decimalno oz. celoštevilčno. To združi metode ListMin, ListMax, ListSum in ListAvg. Traja pa približno isto kot vsaka posamezna metoda.
  • (97.1.02 ) Dodan Class TOverlay in metode
    TOverlay.Layer1 As TLayer - Prva vhodna plast. Nastaviti je treba le eno varianto (Ali layer ali pa Recordlisto)
    TOverlay.List1 As TRecordList - Lista elementov za prvo vhodno plast. Nastaviti je treba le eno valianto (Ali layer ali pa Recordlisto)
    TOverlay.MustExist1 As Boolean - Ali mora izhodni poligon obstajati v prvi vhodni plasti.
    TOverlay.Layer2 As TLayer- Druga vhodna plast. Nastaviti je treba le eno valianto (Ali layer ali pa Recordlisto)
    TOverlay.List2 As TRecordList- Lista elementov za drugo vhodno plast. Nastaviti je treba le eno valianto (Ali layer ali pa Recordlisto)
    TOverlay.MustExist2 As Boolean - Ali mora izhodni poligon obstajati v drugi vhodni plasti.
    TOverlay.OutputLayer As TLayer - Izhodni layer. Če je nedefiniran, se naredi sam, sicer pa se povozi.
    Clear - Zbriše vse nastavitve. Priporočljivo uporabiti pred nastavljanjem.
    Execute - Združi vhodne podatke v izhodno plast.
  • (97.1.01 ) TForm.Update - Ta izvede spremembe tekočega forma, recimo load novega forma...
    CurLyr.Form.Load ('Plače')
    CurLyr.Form.Update
    TForm.ShowMenu As Boolean
    TForm.ShowToolbar As Boolean
    Dodane nove metode in propertiji, ki prikažeta oz. skrijeta menu in toolbar na formu, npr:
    CurLyr.Form.ShowMenu = False
    CurLyr.Form.ShowToolbar = False
    CurLyr.Form.Update
  • (97.1.01 ) TFilter.OnlyCentroids as Boolean
    Pri AreaCondition dodan property. Če je true, se filter izvede kot da so vse entitete v layerju point in se vzame centroid pri Poly entitetah. To je uporabno pri Naseljih znotraj občine, če so občine generalizirane, saj so sicer tudi sosede znotraj poligona.
Objekt TTable
  • (97.1.16 ) TTable.GetAll (Value1, Value2 As Long, SL As TStringList)
    Dodana metoda, ki napolni Stringlisto SL z vrednostmi tabele. Value1 in Value2 sta indexa vrednosti. Value2 je lahko -1 in se v tem primeru ne doda v listo. Uporablja se lahko pri polnjenju listboxov.
  • (97.1.01 ) TTable.GetLine (I As Long) As String
    Nov ukaz, ki vrne I-ti record v tabeli kot comma delimited string
    TTable.Get (I As Long, Sl As TStringList)
    Nov ukaz, ki vrne I-ti record v tabeli v String Listo.
Objekt TDrawList
  • (97.1.03 ) TDrawList.Operation (L As TLayer, Operation As Long)
    Dokončana metoda, ki lahko izvede operacijo nad vsemi draw itemi nekega layerja. Za operacijo se lahko uporablja naslednje konstante (Njihovo vsoto ali Or operacijo med njimi.)
    Dodane konstante
    dlDrawOn As Long = $00000001, ki vključi izris za vse draw itme.
    dlDrawOff As Long = $00000002, ki izključi izris za vse draw itme.
    dlSearchOn As Long = $00000010, ki vključi iskanje po plasti.
    dlSearchOffAs Long = $00000020, ki izključi iskanje po plasti.
    dlHintsOff As Long = $00000020, ki izključi hint za vse draw itme.
    dlLayerOff As Long = $00000200, ki zbriše layer.
  • (97.1.01 ) TDrawList.Add As TDrawItem
    TDrawList.Insert (Index As Long) As TDrawItem
    V popravljeni metodi, ki vrnejo tudi novo narejeni item.
Objekt TLayer
  • (97.1.08 ) Poenoteno delovanje metod GetField In GetFieldID. Prej je GetField iskala samo po imenu in aliasu polja 'xx', GetFieldID pa samo po FullFieldName '[xx]' ali '[xx].[xx]'. Sedaj obe iščeta po obojem in sicer če se ime polja začne z [ išče kot full name sicer pa po imenu oz. aliasu.
  • (97.1.04 ) TLayer.TEdit (Show As Boolean)
    Nova metoda, ki je sicer identična GEdit, vendar je namenjena grafičnemu editiranju topologije. Izključene so vse entitete razen point in polyline.
  • (97.1.02 ) TLayer.TopologyCheck As Boolean
    dodana metoda, ki Izvrši preverjanje topologije za layer.
  • (97.1.02 ) TLayer.TopologyBuild (Output As TLayer) As Boolean
    sprenenjena metoda, ki sedaj vrne true, če ni topoloških napak.
  • (97.1.01 ) TLayer.AssignStructureFrom (Layer As TLayer, Confirm As Boolean)
    Nov ukaz, ki zbriše podatke in strukturo layerja in prekopira strukturo iz objekta Layer. Za njem mora biti tudi ukaz [].Store.
  • (97.1.01 ) TLayer.DeleteListData (List as TRecordList, Confirm As Boolean) As Boolean
    Nov ukaz, ki zbriše vse rekorde, ki so v listi.
  • (97.1.01 ) TLayer.IsSameStructure (Layer As TLayer) As Boolean
    Nov ukaz, ki vrne true, če je struktura obeh layerjev identična.
  • (97.1.01 ) TLayer.TopologyBuild (Output As TLayer)
    Nov ukaz, ki zbilda topologijo v izhodni layer
  • (97.1.01 ) TLayer.TopologyBreak ((Output As TLayer)
    Nov ukaz, ki razbije polygone v polylinije in centroide, v izhodni layer.
  • (97.1.01 ) TLayer.CopyDataFromList (RecordList As TRecordList) As Boolean
    Nov ukaz, ki vrne true, če je struktura obeh layerjev identična in v tem primeru lahko skopira vse recorde v recordlisti iz enega layerja v drugega. Recordlista je lahko iz drugega layerja (prenos podatkov iz enega v drugega), lahko pa je tudi iz istega (dupliciranje podatkov v istem layerju).
  • (97.1.01 ) TLayer.CurentRecords As TRecordList
    Now property, lista ki vsebuje record, ki je trenutno viden v Formu. Uporabno za report ali export trenutnega rekorda v dialogu.
  • (97.1.01 ) TLayer.BuildTopology
    Pri ukazu je lahko za izhodni layer parameter Nil. V tem primeru se izvede samo previrjanje topologije. Nič se ne zapiše v izhodni layer, označijo pa se napake v vhodnem layerju.
  • (97.1.01 ) TLayer.CurrentRecords As TRecordList
    Spremenjen property iz CurentRecords As TRecordList.
  • (97.1.01 ) TLayer.BeginMultipleUpdate
    TLayer.EndMultipleUpdate
    Dodani metodi, ki zelo pohitrita updatanje recordov, če jih je veliko.
    Primer:
    Sub DeleteEmptyDatasets (L As TLayer)
    Dim I As Long
    L.BeginMultipleUpdate
    For I = 0 To L.AllRecords.Count - 1
    Hint (IntToStr (I) + '/' + IntToStr (L.AllRecords.Count - 1))
    L.EditRecord.Edit (L.AllRecords.Items (I))
    L.EditRecord.SetCentroid (L.EditRecord.Record.Y, L.EditRecord.Record.X)
    L.EditRecord.Update
    Next
    L.EndMultipleUpdate
    L.Optimize
    EndSub
Objekt TRecord
  • (97.1.01 ) TRecord.TopologyEdited As Boolean
    Nov property, ki vrne true, če je record v topološkem editu.
  • (97.1.01 ) TRecord.UsedByBuild As Boolean
    Nov property, ki vrne true, če je bil rekord uporabljen pri zadnjem buildu. Draw If: Currec.UsedByBuild
Objekt TEditRecord
  • (97.1.01 ) TEditRecord.CountDataSet (DaSIndex As Long) As Long
    Nov ukaz, ki vrne število dataset zapisov.
  • (97.1.01 ) TEditRecord.IsChanged As Boolean
    Nov ukaz, ki vrne True, če je potrebno updateati record.
  • (97.1.01 ) TEditRecord.AppendCopy (P as TRecord)
    Dodana metoda, ki naredi kopijo rekorda v istem layerju. potem spremeniš kakšen podatek in update-aš.
Objekt TPointArray
  • (97.1.01 ) TPointArray.ProjectionDistance
    Funkcija preimenovana iz TPointArray.PointDistance.
  • (97.1.01 ) TPointArray.ProjectionPoint (Y, X as Float, ByRef Index As Long, ByRef Part As Float)
    Nova metoda, ki ...
Objekt TRecordList
  • (97.1.03 ) TRecordList.GetBounds
    nova metoda, ki vrne min/max meje vseh objektov v record listi.
  • (97.1.02 ) TRecordList.InList (R As TRecord) As Boolean
    Nova funkcija. Namesto 'Filtered' se lahko sedaj uporabi "CurLyr.FilteredRecords.InList (CurRec)". Poleg te pa se to lahko uporabi tudi na vseh ostalih record-listah.
  • (97.1.01 ) TRecordList.Merge
    Nova metoda, ki združi vse poligone oz. polilinije v listi.
Objekt TCustomForm
  • (97.1.04 ) TCustomForm.AddRadioBox (Name, Label, Items As String)
    Dodana metoda, ki omogoča dodajanje skupine radio butnov v form.
  • (97.1.01 ) TCustomForm.AddCheckListBox (Name, Label, Items As String)
    TCustomForm.CheckListBoxValue (Name As String, Index As Long) As Boolean
    Dodani metodi za CheckListBox.
  • (97.1.01 ) Predelan objekt.
    TCustomForm.Addxxxxxxxxxxx (Label As String, InitialValue As String) Nova sintaksa
    TCustomForm.Addxxxxxxxxxxx (Name, Label As String) Nova sintaksa
    TCustomForm.AddListBox (Name, Label As String, Items As String) Dodana kontrola
    TCustomForm.AddTreeBox (Name, Label As String, Tree As TCollection) Dodana kontrola. Klice se kot AddTreeBox ('T1', 'Izberi', Layers)
    TCustomForm.TreeValue (Name As String) As TClass, Dodana property za Tree.
  • (97.1.01 ) TCustomForm.ComboBoxList (Index as Long) As String
    Dodan property s katerim lahko spremenis itme v comboboxu.
  • (97.1.01 ) TCustomForm.OnChangeEvent
    Dodan event, ko se kakšna kontrola spremeni. Nastavi se z F.OnChangeEvent ('a3') = 'testFormUpdate', Ta rutina pa naj bi izbledala takole.
    sub testFormUpdate (F As TCustomForm, name as string)
    If F.CheckBoxValue ('a3') Then
    F.EditBoxValue ('a1') = 'Cekiran'
    Else
    F.EditBoxValue ('a1') = 'Necekiran'
    EndIf
    EndSub
  • (97.1.01 ) TCustomForm.TreeValue
    Vrnil se je tudi folder, če je bil leta selectan. Sedaj vrne Nil.
  • (97.1.01 ) TCustomForm.EditBoxValue
    Vrne izbran text tudi za combo box in list box.
Objekt TCollection
  • (97.1.01 ) TCollection.Duplicate (DuplicateData As Boolean) As TClass
    Nov ukaz pri vseh osnovnih objektih, ki Naredi kopijo objekta in podatkov (pri layerju in tableu), če je DuplicateData true. ID objekta je nov, Ime pa se spremeni v 'Copy of ' + Ime. Nov objekt je na istem folderju.
  • (97.1.01 ) TCollection.Count As Long
    TCollection.Items (Index As Long) As TClass
    Dodana propertija za operacije nad vsemi objekti.
Objekt TList
  • (97.1.04 ) TList.Replace (RemoveObj, InsertObj as TClass) As Boolean
    Dodana metoda, ki zamenja objekt (menu, toolbar, hotkey oz. modul). Vrne false, če v listi ne obstaja RemoveObj.
  • (97.1.01 ) TList.AddMask (Mask as String)
    Nov ukaz, ki doda objekte preko maske imena. Recimo ToolbarList.AddMask ('demo*') Doda vse toolbare z imenom ali aliasom demo+karkoli. TList tipa so MenuList, ModuleList, ToolbarList in HotkeyList.
Objekt TPrintLayout
  • (97.1.01 ) TPrintLayout.GetItemByName (Name As String) As TPrintItem
    Dodana funkcija, ki vrne kontrolo preko zgoraj omenjenega imena kontrole.